.app-logo[data-v-6eec7153]{--tb-trace: #8c99a6;--tb-chip: #12263a;--tb-chip-edge: transparent;--tb-pole-ring: #f5f2ed;--tb-word: #12263a;--tb-word-accent: #d6382f;--tb-tagline: #7a8794;display:inline-flex;align-items:center;gap:var(--space-3);text-decoration:none;color:var(--text);min-width:0}@media(prefers-color-scheme:dark){.app-logo[data-v-6eec7153]{--tb-trace: #46586a;--tb-chip: #16222e;--tb-chip-edge: #ede8df;--tb-pole-ring: #16222e;--tb-word: #f5f1e8;--tb-word-accent: #ee6a55;--tb-tagline: #8896a3}}:root[data-theme=light] .app-logo[data-v-6eec7153]{--tb-trace: #8c99a6;--tb-chip: #12263a;--tb-chip-edge: transparent;--tb-pole-ring: #f5f2ed;--tb-word: #12263a;--tb-word-accent: #d6382f;--tb-tagline: #7a8794}:root[data-theme=dark] .app-logo[data-v-6eec7153]{--tb-trace: #46586a;--tb-chip: #16222e;--tb-chip-edge: #ede8df;--tb-pole-ring: #16222e;--tb-word: #f5f1e8;--tb-word-accent: #ee6a55;--tb-tagline: #8896a3}.app-logo__crest[data-v-6eec7153]{display:inline-flex;flex:none;transition:transform var(--transition)}.app-logo__crest svg[data-v-6eec7153]{height:100%;width:auto;display:block;overflow:visible}.app-logo:hover .app-logo__crest[data-v-6eec7153]{transform:scale(1.04)}@media(prefers-reduced-motion:reduce){.app-logo__crest[data-v-6eec7153],.app-logo:hover .app-logo__crest[data-v-6eec7153]{transition:none;transform:none}}.app-logo--sm .app-logo__crest[data-v-6eec7153]{height:26px;width:58px}.app-logo--md .app-logo__crest[data-v-6eec7153]{height:34px;width:75px}.app-logo--lg .app-logo__crest[data-v-6eec7153]{height:68px;width:151px}.app-logo__wordmark[data-v-6eec7153]{display:flex;flex-direction:column;line-height:1.15;min-width:0}.app-logo__title[data-v-6eec7153]{font-weight:600;letter-spacing:.14em;margin-right:-.14em;color:var(--tb-word);white-space:nowrap}.app-logo__title em[data-v-6eec7153]{font-style:normal;color:var(--tb-word-accent)}.app-logo--sm .app-logo__title[data-v-6eec7153],.app-logo--md .app-logo__title[data-v-6eec7153]{font-size:var(--text-lg)}.app-logo--lg .app-logo__title[data-v-6eec7153]{font-size:var(--text-2xl)}.app-logo__tagline[data-v-6eec7153]{font-size:var(--text-xs);letter-spacing:.18em;margin-right:-.18em;color:var(--tb-tagline);margin-top:4px;white-space:nowrap}@media(max-width:420px){.app-logo__wordmark[data-v-6eec7153]{display:none}}@media(max-width:600px){.app-logo--lg .app-logo__wordmark[data-v-6eec7153]{display:none}}.app-logo--lg[data-v-6eec7153]{max-width:100%;min-width:0}.app-logo--lg .app-logo__crest[data-v-6eec7153]{flex:0 1 auto;min-width:0;max-width:100%;height:auto;aspect-ratio:151 / 68}.app-logo--lg .app-logo__crest svg[data-v-6eec7153]{width:100%;height:auto}.app-icon[data-v-0d7bc986]{display:block;flex:none}.bell[data-v-18ab9c2a]{position:relative}.bell__button[data-v-18ab9c2a]{position:relative;display:grid;place-items:center;width:2.25rem;height:2.25rem;padding:0;border:1px solid var(--border);border-radius:999px;background:var(--surface);color:inherit;cursor:pointer}.bell__badge[data-v-18ab9c2a]{position:absolute;top:-4px;right:-4px;min-width:1.15rem;height:1.15rem;padding:0 .25rem;display:grid;place-items:center;border-radius:999px;background:var(--danger-bg, #dc2626);color:var(--danger-fg, #fff);font-size:.7rem;font-weight:600;line-height:1}.bell__panel[data-v-18ab9c2a]{position:absolute;top:calc(100% + .5rem);right:0;z-index:50;width:min(22rem,calc(100vw - 2rem));max-height:26rem;display:flex;flex-direction:column;border:1px solid var(--border);border-radius:var(--radius-lg, 12px);background:var(--surface);box-shadow:var(--shadow);overflow:hidden}@media(max-width:640px){.bell__panel[data-v-18ab9c2a]{position:fixed;top:3.75rem;right:var(--space-4);left:var(--space-4);width:auto;max-height:calc(100vh - 5rem)}}.bell__panel-head[data-v-18ab9c2a]{display:flex;align-items:center;justify-content:space-between;gap:var(--space-2);padding:var(--space-3) var(--space-4);border-bottom:1px solid var(--border)}.bell__mark-all[data-v-18ab9c2a]{padding:0;border:none;background:none;color:var(--accent);font-size:.8rem;cursor:pointer;text-decoration:underline}.bell__state[data-v-18ab9c2a]{padding:var(--space-5) var(--space-4);text-align:center;color:var(--muted);font-size:.9rem}.bell__list[data-v-18ab9c2a]{list-style:none;margin:0;padding:0;overflow-y:auto}.bell__item[data-v-18ab9c2a]{display:flex;align-items:flex-start;gap:var(--space-2);width:100%;padding:var(--space-3) var(--space-4);border:none;border-bottom:1px solid var(--border);background:none;color:inherit;text-align:left;cursor:pointer}.bell__item[data-v-18ab9c2a]:hover{background:var(--surface-2, #f4f4f5)}.bell__item--unread[data-v-18ab9c2a]{background:var(--accent-subtle, rgb(0 0 0 / 3%))}.bell__dot[data-v-18ab9c2a]{flex:0 0 auto;width:.5rem;height:.5rem;margin-top:.4rem;border-radius:999px;background:var(--accent)}.bell__item-body[data-v-18ab9c2a]{display:flex;flex-direction:column;gap:.15rem;min-width:0}.bell__item-text[data-v-18ab9c2a]{font-size:.85rem;color:var(--muted)}.bell__item-time[data-v-18ab9c2a]{font-size:.75rem;color:var(--muted)}:root{color-scheme:light dark;--bg: #fbfbfd;--bg-subtle: #f2f3f7;--surface: #ffffff;--surface-raised: #ffffff;--border: #e2e5ec;--border-strong: #cdd2dd;--text: #16181d;--text-muted: #5f6673;--text-subtle: #8b93a1;--accent: #6d4aff;--accent-hover: #5c39f0;--accent-contrast: #ffffff;--accent-subtle: #f0ecff;--success-bg: #e7f7ee;--success-text: #0f6b3f;--warning-bg: #fff4e5;--warning-text: #8a5300;--danger-bg: #fdeceb;--danger-text: #a3231b;--danger-border: #f2c2be;--neutral-bg: #eef0f4;--neutral-text: #4a515e;--radius-sm: 6px;--radius: 10px;--radius-lg: 16px;--shadow-sm: 0 1px 2px rgb(16 18 29 / 6%);--shadow: 0 1px 2px rgb(16 18 29 / 6%), 0 4px 16px rgb(16 18 29 / 4%);--shadow-lg: 0 8px 32px rgb(16 18 29 / 12%);--font: ui-sans-serif, system-ui, -apple-system, "Segoe UI", Roboto, sans-serif;--font-mono: ui-monospace, "Cascadia Mono", "SF Mono", Menlo, Consolas, monospace;--text-xs: clamp(.72rem, .7rem + .1vw, .78rem);--text-sm: clamp(.82rem, .79rem + .14vw, .9rem);--text-base: clamp(.92rem, .88rem + .18vw, 1rem);--text-lg: clamp(1.05rem, .99rem + .28vw, 1.2rem);--text-xl: clamp(1.25rem, 1.13rem + .55vw, 1.6rem);--text-2xl: clamp(1.55rem, 1.33rem + 1vw, 2.2rem);--space-1: .25rem;--space-2: .5rem;--space-3: .75rem;--space-4: 1rem;--space-5: 1.5rem;--space-6: 2rem;--space-8: 3rem;--content-max: 1400px;--content-narrow: 480px;--gutter: clamp(1rem, .5rem + 2vw, 2.5rem);--ease: cubic-bezier(.4, 0, .2, 1);--duration: .15s;--duration-slow: .28s;--transition: var(--duration) var(--ease);--transition-slow: var(--duration-slow) var(--ease)}@media(prefers-color-scheme:dark){:root{--bg: #0f1116;--bg-subtle: #141821;--surface: #171a21;--surface-raised: #1d212a;--border: #272c37;--border-strong: #38404f;--text: #e9ecf2;--text-muted: #98a0af;--text-subtle: #6f7787;--accent: #9c86ff;--accent-hover: #ad9bff;--accent-contrast: #14121f;--accent-subtle: #221d3d;--success-bg: #10331f;--success-text: #7ee2ab;--warning-bg: #3a2a10;--warning-text: #f5c168;--danger-bg: #3a1714;--danger-text: #ffa79f;--danger-border: #5d2620;--neutral-bg: #232833;--neutral-text: #aab2c0;--shadow-sm: 0 1px 2px rgb(0 0 0 / 30%);--shadow: 0 1px 2px rgb(0 0 0 / 30%), 0 4px 16px rgb(0 0 0 / 24%);--shadow-lg: 0 8px 32px rgb(0 0 0 / 40%)}}:root[data-theme=light]{color-scheme:light;--bg: #fbfbfd;--bg-subtle: #f2f3f7;--surface: #ffffff;--surface-raised: #ffffff;--border: #e2e5ec;--border-strong: #cdd2dd;--text: #16181d;--text-muted: #5f6673;--text-subtle: #8b93a1;--accent: #6d4aff;--accent-hover: #5c39f0;--accent-contrast: #ffffff;--accent-subtle: #f0ecff;--success-bg: #e7f7ee;--success-text: #0f6b3f;--warning-bg: #fff4e5;--warning-text: #8a5300;--danger-bg: #fdeceb;--danger-text: #a3231b;--danger-border: #f2c2be;--neutral-bg: #eef0f4;--neutral-text: #4a515e}:root[data-theme=dark]{color-scheme:dark;--bg: #0f1116;--bg-subtle: #141821;--surface: #171a21;--surface-raised: #1d212a;--border: #272c37;--border-strong: #38404f;--text: #e9ecf2;--text-muted: #98a0af;--text-subtle: #6f7787;--accent: #9c86ff;--accent-hover: #ad9bff;--accent-contrast: #14121f;--accent-subtle: #221d3d;--success-bg: #10331f;--success-text: #7ee2ab;--warning-bg: #3a2a10;--warning-text: #f5c168;--danger-bg: #3a1714;--danger-text: #ffa79f;--danger-border: #5d2620;--neutral-bg: #232833;--neutral-text: #aab2c0}:root[data-preset=Emerald]{--accent: #047857;--accent-hover: #036049;--accent-contrast: #ffffff;--accent-subtle: #e3f5ee}:root[data-preset=Amber]{--accent: #92400e;--accent-hover: #78350c;--accent-contrast: #ffffff;--accent-subtle: #fdf1e3}:root[data-preset=Rose]{--accent: #be123c;--accent-hover: #9f1032;--accent-contrast: #ffffff;--accent-subtle: #fde3ea}:root[data-preset=Slate]{--accent: #334155;--accent-hover: #293548;--accent-contrast: #ffffff;--accent-subtle: #e7eaef}@media(prefers-color-scheme:dark){:root[data-preset=Emerald]{--accent: #34d399;--accent-hover: #5fdfae;--accent-contrast: #072016;--accent-subtle: #113a2c}:root[data-preset=Amber]{--accent: #fbbf24;--accent-hover: #fccb4d;--accent-contrast: #221904;--accent-subtle: #3a2c0c}:root[data-preset=Rose]{--accent: #fb7185;--accent-hover: #fc8fa0;--accent-contrast: #260a10;--accent-subtle: #401621}:root[data-preset=Slate]{--accent: #94a3b8;--accent-hover: #a9b6c7;--accent-contrast: #0f172a;--accent-subtle: #232d3d}}:root[data-theme=light][data-preset=Emerald]{--accent: #047857;--accent-hover: #036049;--accent-contrast: #ffffff;--accent-subtle: #e3f5ee}:root[data-theme=light][data-preset=Amber]{--accent: #92400e;--accent-hover: #78350c;--accent-contrast: #ffffff;--accent-subtle: #fdf1e3}:root[data-theme=light][data-preset=Rose]{--accent: #be123c;--accent-hover: #9f1032;--accent-contrast: #ffffff;--accent-subtle: #fde3ea}:root[data-theme=light][data-preset=Slate]{--accent: #334155;--accent-hover: #293548;--accent-contrast: #ffffff;--accent-subtle: #e7eaef}:root[data-theme=dark][data-preset=Emerald]{--accent: #34d399;--accent-hover: #5fdfae;--accent-contrast: #072016;--accent-subtle: #113a2c}:root[data-theme=dark][data-preset=Amber]{--accent: #fbbf24;--accent-hover: #fccb4d;--accent-contrast: #221904;--accent-subtle: #3a2c0c}:root[data-theme=dark][data-preset=Rose]{--accent: #fb7185;--accent-hover: #fc8fa0;--accent-contrast: #260a10;--accent-subtle: #401621}:root[data-theme=dark][data-preset=Slate]{--accent: #94a3b8;--accent-hover: #a9b6c7;--accent-contrast: #0f172a;--accent-subtle: #232d3d}:root[data-density=Compact]{--space-3: .6rem;--space-4: .8rem;--space-5: 1.1rem;--space-6: 1.5rem}*,*:before,*:after{box-sizing:border-box}html{overflow-x:hidden}body{margin:0;font-family:var(--font);font-size:var(--text-base);background:var(--bg);color:var(--text);line-height:1.55;-webkit-font-smoothing:antialiased;text-rendering:optimizeLegibility}:focus-visible{outline:2px solid var(--accent);outline-offset:2px;border-radius:var(--radius-sm)}@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important}}.skip-link{position:absolute;left:-9999px;top:0;background:var(--accent);color:var(--accent-contrast);padding:var(--space-3) var(--space-4);z-index:100;border-radius:0 0 var(--radius-sm) 0;font-weight:600}.skip-link:focus{left:0}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.shell{min-height:100dvh;display:flex;flex-direction:column}.topbar{display:flex;align-items:center;gap:var(--space-4);padding:var(--space-3) var(--gutter);background:var(--surface);border-bottom:1px solid var(--border);position:sticky;top:0;z-index:20;flex-wrap:nowrap;min-height:3.5rem}.brand{font-weight:700;font-size:var(--text-lg);letter-spacing:-.02em;color:var(--text);text-decoration:none;white-space:nowrap}.topbar nav{display:flex;gap:var(--space-4);flex-wrap:nowrap;align-items:center;min-width:0;overflow-x:auto;scrollbar-width:none;-ms-overflow-style:none}.topbar nav::-webkit-scrollbar{display:none}.nav-toggle{display:none}@media(min-width:80.0625rem)and (max-width:100rem){.topbar nav{gap:var(--space-3)}.topbar{gap:var(--space-3)}}.topbar nav a{color:var(--text-muted);text-decoration:none;font-size:var(--text-sm);padding:var(--space-1) 0;border-bottom:2px solid transparent;transition:color var(--transition);white-space:nowrap}.topbar nav a:hover{color:var(--text)}.topbar nav a.router-link-active{color:var(--text);border-bottom-color:var(--accent)}.topbar .spacer{margin-left:auto}.topbar .button-row{flex-wrap:nowrap;flex-shrink:0}@media(max-width:80rem){.nav-toggle{display:inline-flex;align-items:center;gap:var(--space-2);padding:var(--space-2) var(--space-3);font-size:var(--text-sm);font-weight:600;color:var(--text);background:transparent;border:1px solid var(--border-strong);border-radius:var(--radius-sm);cursor:pointer}.nav-toggle:hover:not(:disabled),.nav-toggle:focus-visible{color:var(--text);background:var(--surface-2, rgba(127, 127, 127, .14))}.topbar nav{display:none}.topbar nav.is-open{display:flex;order:10;flex-basis:100%;flex-wrap:wrap;overflow:visible;gap:var(--space-2) var(--space-4);padding:var(--space-3) 0 var(--space-1);border-top:1px solid var(--border);max-height:min(60vh,24rem);overflow-y:auto}.topbar{flex-wrap:wrap;row-gap:0}.topbar nav.is-open a{padding:var(--space-2) 0}}@media(max-width:80rem)and (pointer:coarse){.topbar nav.is-open a{padding:var(--space-3) 0}}@media(max-width:30rem){.topbar .badge{display:none}.nav-toggle__label{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.topbar{gap:var(--space-3)}}main{flex:1;width:100%;max-width:var(--content-max);margin-inline:auto;padding:var(--space-6) var(--gutter)}main:focus{outline:none}.centred-page{flex:1;display:grid;place-items:center;padding:var(--space-6) var(--gutter);position:relative;overflow:hidden;background:radial-gradient(circle at 15% 20%,var(--accent-subtle),transparent 45%),radial-gradient(circle at 85% 80%,var(--accent-subtle),transparent 45%),var(--bg);background-size:200% 200%;animation:drift 18s ease-in-out infinite alternate}@keyframes drift{0%{background-position:0% 0%}to{background-position:100% 100%}}.auth-card{width:100%;max-width:var(--content-narrow);min-width:0;background:var(--surface);border:1px solid var(--border);border-radius:var(--radius-lg);box-shadow:var(--shadow-lg);padding:var(--space-6);position:relative;animation:card-in var(--transition-slow) both}.auth-brand{display:flex;justify-content:center;margin-bottom:var(--space-5);min-width:0}@keyframes card-in{0%{opacity:0;transform:translateY(10px) scale(.98)}to{opacity:1;transform:none}}.footer{border-top:1px solid var(--border);padding:var(--space-4) var(--gutter);background:var(--surface)}.stack>*+*{margin-top:var(--space-5)}.stack-tight>*+*{margin-top:var(--space-3)}.page-header{display:flex;align-items:flex-start;justify-content:space-between;gap:var(--space-4);flex-wrap:wrap}h1{font-size:var(--text-2xl);margin:0 0 var(--space-1);letter-spacing:-.02em;line-height:1.2}h2{font-size:var(--text-lg);margin:0 0 var(--space-2);line-height:1.3}p{margin:0}.muted{color:var(--text-muted);font-size:var(--text-sm)}.strong{font-weight:600}.mono{font-family:var(--font-mono);font-size:var(--text-xs);word-break:break-all}a{color:var(--accent)}.controls{display:flex;gap:var(--space-4);flex-wrap:wrap}.field{display:flex;flex-direction:column;gap:var(--space-1);min-width:0}.field label{font-size:var(--text-sm);font-weight:600;color:var(--text-muted)}.field-error{color:var(--danger-text);font-size:var(--text-sm)}.field-hint{color:var(--text-subtle);font-size:var(--text-xs)}input,select,textarea{font:inherit;font-size:max(16px,var(--text-base));padding:var(--space-2) var(--space-3);border:1px solid var(--border-strong);border-radius:var(--radius-sm);background:var(--surface);color:var(--text);width:100%;min-width:0;transition:border-color var(--transition)}input[type=checkbox],input[type=radio]{width:auto;min-width:0;flex:none}input:focus,select:focus{border-color:var(--accent)}input[aria-invalid=true]{border-color:var(--danger-text)}button{font:inherit;font-size:var(--text-sm);font-weight:600;padding:var(--space-2) var(--space-4);min-height:44px;border:1px solid transparent;border-radius:var(--radius-sm);background:var(--accent);color:var(--accent-contrast);cursor:pointer;transition:background var(--transition)}button:hover:not(:disabled){background:var(--accent-hover)}button:active:not(:disabled){transform:scale(.98)}button:disabled{opacity:.55;cursor:not-allowed}button.secondary{background:transparent;color:var(--text);border-color:var(--border-strong)}button.secondary:hover:not(:disabled){background:var(--bg-subtle)}button.link{background:none;border:none;color:var(--accent);padding:0;min-height:auto;text-decoration:underline}.button-row{display:flex;gap:var(--space-3);flex-wrap:wrap;align-items:center}.table-wrap{overflow-x:auto;border-radius:var(--radius);border:1px solid var(--border);background:var(--surface);box-shadow:var(--shadow-sm)}table{width:100%;border-collapse:collapse}th,td{text-align:left;padding:var(--space-3) var(--space-4);border-bottom:1px solid var(--border);font-size:var(--text-sm)}th{background:var(--neutral-bg);font-size:var(--text-xs);text-transform:uppercase;letter-spacing:.05em;color:var(--text-muted);white-space:nowrap}tbody tr:last-child td{border-bottom:none}tbody tr:hover{background:var(--bg-subtle)}tbody tr.row--me{background:var(--accent-subtle)}tbody tr.row--me:hover{background:var(--accent-subtle);filter:brightness(.97)}@media(max-width:640px){.table-wrap{border:none;background:transparent;box-shadow:none;overflow-x:visible}table,thead,tbody,th,td,tr{display:block}thead{position:absolute;left:-9999px}tbody tr{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);margin-bottom:var(--space-3);padding:var(--space-2);box-shadow:var(--shadow-sm)}tbody td{display:flex;justify-content:space-between;gap:var(--space-4);border:none;padding:var(--space-2);text-align:right}tbody td:before{content:attr(data-label);font-weight:600;font-size:var(--text-xs);text-transform:uppercase;letter-spacing:.05em;color:var(--text-muted);text-align:left}}.status{display:inline-block;padding:2px var(--space-2);border-radius:999px;font-size:var(--text-xs);font-weight:600;white-space:nowrap}.status--active{background:var(--success-bg);color:var(--success-text)}.status--inactive{background:var(--neutral-bg);color:var(--neutral-text)}.status--warning{background:var(--warning-bg);color:var(--warning-text)}.status--danger{background:var(--danger-bg);color:var(--danger-text)}.badge{font-size:var(--text-xs);color:var(--text-muted);background:var(--neutral-bg);padding:2px var(--space-2);border-radius:999px;white-space:nowrap}.state{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);padding:var(--space-6);text-align:center}.state>*+*{margin-top:var(--space-2)}.state--error{background:var(--danger-bg);border-color:var(--danger-border);color:var(--danger-text);text-align:left}.state--error .muted{color:var(--danger-text);opacity:.85}.alert{padding:var(--space-3) var(--space-4);border-radius:var(--radius-sm);font-size:var(--text-sm);border:1px solid transparent}.alert--error{background:var(--danger-bg);color:var(--danger-text);border-color:var(--danger-border)}.alert--success{background:var(--success-bg);color:var(--success-text)}.alert--info{background:var(--accent-subtle);color:var(--text)}.skeleton-list{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);padding:var(--space-4)}.skeleton-row{height:2.4rem;border-radius:var(--radius-sm);background:linear-gradient(90deg,var(--neutral-bg) 25%,var(--border) 50%,var(--neutral-bg) 75%);background-size:200% 100%;animation:shimmer 1.4s infinite}.skeleton-row+.skeleton-row{margin-top:var(--space-2)}@keyframes shimmer{0%{background-position:200% 0}to{background-position:-200% 0}}.page-enter-active{transition:opacity var(--transition-slow),transform var(--transition-slow)}.page-leave-active{transition:opacity calc(var(--duration-slow) / 2) var(--ease)}.page-enter-from{opacity:0;transform:translateY(8px)}.page-leave-to{opacity:0}.card-hover{transition:transform var(--transition),box-shadow var(--transition)}.card-hover:hover{transform:translateY(-2px);box-shadow:var(--shadow-lg)}.hero-banner{display:flex;align-items:center;flex-wrap:wrap;gap:var(--space-4) var(--space-5);padding:var(--space-6);border-radius:var(--radius-lg);color:var(--accent-contrast);background:linear-gradient(135deg,var(--hero-from, var(--accent)),var(--hero-to, var(--accent-hover)));box-shadow:var(--shadow-lg);animation:card-in var(--transition-slow) both;position:relative;overflow:hidden;isolation:isolate}.hero-banner:before{content:"";position:absolute;top:0;right:0;bottom:0;left:0;z-index:-1;background-image:repeating-linear-gradient(45deg,rgb(255 255 255 / 7%) 0,rgb(255 255 255 / 7%) 2px,transparent 2px,transparent 14px)}.hero-banner>div{min-width:0;flex:1 1 220px}.hero-banner h1{overflow-wrap:break-word}.hero-banner__icon{flex:none;display:grid;place-items:center;width:56px;height:56px;border-radius:var(--radius);background:#ffffff2e;font-size:1.6rem}.hero-banner h1{color:inherit;margin:0 0 4px}.hero-banner p{color:inherit;opacity:.9}.quick-actions{display:grid;grid-template-columns:repeat(auto-fill,minmax(240px,300px));gap:var(--space-4)}.picker-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(260px,340px));gap:var(--space-4)}.picker-grid__item{min-width:0;display:block;padding:0;border:none;background:none;color:var(--text);text-align:left;cursor:pointer;border-radius:var(--radius-lg, 12px);transition:transform .12s ease,box-shadow .12s ease}.picker-grid__item:hover,.picker-grid__item:focus-visible{transform:translateY(-2px);box-shadow:var(--shadow-md, 0 4px 16px rgba(0, 0, 0, .12))}.quick-action{min-width:0;display:flex;flex-direction:column;gap:var(--space-3);background:var(--surface);border:1px solid var(--border);border-radius:var(--radius-lg);padding:var(--space-5);box-shadow:var(--shadow-sm);animation:card-in var(--transition-slow) both;position:relative;color:var(--text);text-align:left}.quick-action:has(form){grid-column:1 / -1;max-width:640px}.quick-action__icon{display:grid;place-items:center;flex:none;width:44px;height:44px;border-radius:var(--radius);background:var(--accent-subtle);color:var(--accent)}.quick-action__icon--photo{overflow:hidden;border-radius:999px}.quick-action__icon--photo img{width:100%;height:100%;object-fit:cover}.quick-action__body{min-width:0;flex:1}.quick-action h2{font-size:var(--text-base);margin:0 0 var(--space-1)}.quick-action__arrow{position:absolute;top:var(--space-5);right:var(--space-5);color:var(--text-subtle);opacity:0;transform:translate(-4px);transition:opacity var(--transition),transform var(--transition)}.quick-action.card-hover:hover .quick-action__arrow{opacity:1;transform:none}@media(max-width:640px){.topbar{gap:var(--space-3);padding:var(--space-3) var(--space-4)}.topbar nav{width:100%;overflow-x:auto;gap:var(--space-4);padding-bottom:2px;scrollbar-width:none}.topbar nav::-webkit-scrollbar{display:none}.topbar .spacer{margin-left:0}.page-header{flex-direction:column;align-items:stretch}.button-row button{flex:1}main{padding:var(--space-4) var(--space-4)}.quick-actions,.picker-grid{grid-template-columns:1fr}.quick-action{flex-direction:row;align-items:center;padding:var(--space-4)}.quick-action:has(form){flex-direction:column;align-items:stretch}.quick-action__arrow{position:static;opacity:1;transform:none;margin-left:auto}.salon-card,.style-card{flex-direction:row!important;align-items:center!important}.salon-card .carousel,.style-card .carousel{width:108px!important;flex:none!important;border-radius:var(--radius-lg, 12px) 0 0 var(--radius-lg, 12px)!important}.salon-card__body,.style-card__body{padding:var(--space-3) var(--space-4)}}@media(min-width:641px){.controls .field{min-width:15rem}}@media(min-width:1600px){:root{--gutter: 3rem}main{padding-block:var(--space-8)}}@media(max-height:560px){.centred-page{place-items:start center}}
