@font-face{font-family:Fraunces Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(/assets/fraunces-vietnamese-full-normal-7BpKI3vF.woff2) format("woff2-variations");unicode-range:U+0102-0103,U+0110-0111,U+0128-0129,U+0168-0169,U+01A0-01A1,U+01AF-01B0,U+0300-0301,U+0303-0304,U+0308-0309,U+0323,U+0329,U+1EA0-1EF9,U+20AB}@font-face{font-family:Fraunces Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(/assets/fraunces-latin-ext-full-normal-YHFkNujK.woff2) format("woff2-variations");unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Fraunces Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(/assets/fraunces-latin-full-normal-CFFu7zhK.woff2) format("woff2-variations");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Inter Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(/assets/inter-cyrillic-ext-wght-normal-B2xhLi22.woff2) format("woff2-variations");unicode-range:U+0460-052F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:Inter Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(/assets/inter-cyrillic-wght-normal-CMZtQduZ.woff2) format("woff2-variations");unicode-range:U+0301,U+0400-045F,U+0490-0491,U+04B0-04B1,U+2116}@font-face{font-family:Inter Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(/assets/inter-greek-ext-wght-normal-CGAr0uHJ.woff2) format("woff2-variations");unicode-range:U+1F00-1FFF}@font-face{font-family:Inter Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(/assets/inter-greek-wght-normal-CaVNZxsx.woff2) format("woff2-variations");unicode-range:U+0370-0377,U+037A-037F,U+0384-038A,U+038C,U+038E-03A1,U+03A3-03FF}@font-face{font-family:Inter Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(/assets/inter-vietnamese-wght-normal-CBcvBZtf.woff2) format("woff2-variations");unicode-range:U+0102-0103,U+0110-0111,U+0128-0129,U+0168-0169,U+01A0-01A1,U+01AF-01B0,U+0300-0301,U+0303-0304,U+0308-0309,U+0323,U+0329,U+1EA0-1EF9,U+20AB}@font-face{font-family:Inter Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(/assets/inter-latin-ext-wght-normal-DO1Apj_S.woff2) format("woff2-variations");unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Inter Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(/assets/inter-latin-wght-normal-Dx4kXJAl.woff2) format("woff2-variations");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}:root{--palette-ink-300: #B4BAC6;--palette-ink-400: #8A92A3;--palette-ink-500: #5B6475;--palette-ink-600: #3A4252;--palette-ink-700: #262D3A;--palette-ink-800: #1B212C;--palette-ink-850: #141922;--palette-ink-900: #0E1218;--palette-ink-950: #090C11;--palette-paper-50: #FBF8F3;--palette-paper-100: #F6F1E8;--palette-paper-200: #ECE5D8;--palette-paper-300: #DDD4C4;--palette-paper-900: #15181F;--palette-amber-200: #FCE2A8;--palette-amber-300: #F9CF73;--palette-amber-400: #F4B740;--palette-amber-500: #E39A1E;--palette-amber-700: #8F5A00;--palette-amber-800: #6E4400;--palette-violet-300: #B9A6FF;--palette-violet-400: #9A80FF;--palette-violet-500: #7C5CFA;--palette-violet-600: #6440E8;--palette-violet-700: #5230CC;--palette-green-400: #4AD19A;--palette-green-700: #0E7A4C;--palette-orange-400: #FF9F43;--palette-orange-700: #A34E00;--palette-red-400: #FF6B6B;--palette-red-700: #BE2B2B;--palette-blue-300: #B3C8FF;--palette-blue-350: #8EAEFF;--palette-blue-400: #62AEFF;--palette-blue-650: #1F4FD1;--palette-blue-700: #1F63BF;--palette-blue-750: #1A3FA8;--palette-yellow-400: #FFD84D;--palette-yellow-700: #7A6000;--palette-neutral-0: #FFFFFF;--palette-neutral-50: #F7F7F6;--palette-neutral-100: #F1F2F3;--palette-neutral-200: #E7E8EA;--palette-neutral-400: #868B94;--palette-neutral-500: #6E737D;--palette-neutral-600: #545A66;--palette-neutral-700: #353943;--palette-neutral-850: #2A2E35;--palette-neutral-875: #23262C;--palette-neutral-900: #1C1F24;--palette-neutral-925: #16191D;--palette-neutral-950: #111316;--palette-neutral-ink: #16181D;--palette-neutral-snow: #ECECEA;--cat-pk1: #F4B740;--cat-pk2: #E9677B;--cat-pk3: #4FB3D9;--cat-pk4: #8BC34A;--cat-pk5: #B28DFF;--cat-wheelchair: #62AEFF;--cat-restricted: #9AA3B2;--gradient-scrim: linear-gradient(180deg, rgba(0, 0, 0, 0) 0%, rgba(0, 0, 0, .55) 100%);--font-display: "Inter Variable", Inter, "Segoe UI", system-ui, sans-serif;--font-sans: Inter, "Segoe UI", system-ui, sans-serif;--font-mono: "JetBrains Mono", "Cascadia Mono", ui-monospace, monospace;--text-xs: 12px;--text-sm: 14px;--text-md: 16px;--text-lg: 20px;--text-xl: 28px;--text-2xl: 40px;--text-3xl: 64px;--text-4xl: 96px;--leading-tight: 1.05;--leading-snug: 1.2;--leading-normal: 1.5;--leading-relaxed: 1.65;--weight-regular: 400;--weight-medium: 500;--weight-semibold: 600;--weight-bold: 700;--tracking-display: -.02em;--tracking-body: 0;--tracking-caps: .08em;--space-0: 0px;--space-1: 8px;--space-2: 16px;--space-3: 24px;--space-4: 32px;--space-5: 40px;--space-6: 48px;--space-8: 64px;--space-10: 80px;--space-12: 96px;--space-16: 128px;--space-0-5: 4px;--space-1-5: 12px;--size-content-max: 1280px;--size-prose-max: 680px;--size-touch-min: 44px;--size-touch-scanner: 72px;--size-nav-height: 64px;--radius-xs: 3px;--radius-sm: 4px;--radius-md: 6px;--radius-lg: 8px;--radius-xl: 12px;--radius-pill: 999px;--border-width-hairline: 1px;--border-width-focus: 2px;--shadow-float: 0 12px 32px -12px rgba(0, 0, 0, .45);--shadow-ticket: 0 40px 80px -24px rgba(0, 0, 0, .6), 0 2px 0 rgba(255, 255, 255, .04) inset;--blur-glass: 20px;--dur-instant: .1s;--dur-fast: .15s;--dur-base: .2s;--dur-moderate: .25s;--dur-slow: .4s;--dur-slower: .55s;--dur-slowest: .7s;--ease-standard: cubic-bezier(.2, 0, 0, 1);--ease-enter: cubic-bezier(.05, .7, .1, 1);--ease-exit: cubic-bezier(.3, 0, .8, .15);--ease-spring: cubic-bezier(.34, 1.56, .64, 1);--ease-linear: cubic-bezier(0, 0, 1, 1);--z-base: 0;--z-sticky: 100;--z-nav: 200;--z-sheet: 300;--z-modal: 400;--z-toast: 500;--bp-sm: 480px;--bp-md: 768px;--bp-lg: 1024px;--bp-xl: 1280px}:root,[data-theme=dark]{color-scheme:dark;--bg: #111316;--surface-1: #16191D;--surface-2: #1C1F24;--surface-3: #23262C;--surface-raised: #2A2E35;--text: #ECECEA;--text-muted: #A4A9B2;--text-subtle: #8A8F99;--border: rgba(236, 236, 234, .1);--border-strong: rgba(236, 236, 234, .18);--border-control: #666B75;--accent: #ECECEA;--accent-hover: #FFFFFF;--on-accent: #111316;--accent-text: #ECECEA;--interactive: #8EAEFF;--interactive-hover: #B3C8FF;--on-interactive: #0B1530;--focus: #8EAEFF;--success: #6FD39A;--warning: #F2B259;--danger: #FF8A80;--info: #62AEFF;--notice: #FFD84D;--overlay: rgba(0, 0, 0, .62);--glass: #16191D}[data-theme=light]{color-scheme:light;--bg: #F7F7F6;--surface-1: #FFFFFF;--surface-2: #F1F2F3;--surface-3: #E7E8EA;--surface-raised: #FFFFFF;--text: #16181D;--text-muted: #545A66;--text-subtle: #6E737D;--border: rgba(22, 24, 29, .12);--border-strong: rgba(22, 24, 29, .22);--border-control: #868B94;--accent: #16181D;--accent-hover: #353943;--on-accent: #FFFFFF;--accent-text: #16181D;--interactive: #1F4FD1;--interactive-hover: #1A3FA8;--on-interactive: #FFFFFF;--focus: #1F4FD1;--success: #1D6B3A;--warning: #8A4B00;--danger: #B42318;--info: #1F63BF;--notice: #7A6000;--overlay: rgba(22, 24, 29, .45);--glass: #FFFFFF}@media(prefers-reduced-motion:reduce){:root{--dur-instant: 0ms;--dur-fast: 0ms;--dur-base: 0ms;--dur-moderate: 0ms;--dur-slow: 0ms;--dur-slower: 0ms;--dur-slowest: 0ms}}*,*:before,*:after{box-sizing:border-box}html{-webkit-text-size-adjust:100%;scroll-padding-top:calc(var(--size-nav-height) + var(--space-2))}body{margin:0;background:var(--bg);color:var(--text);font-family:var(--font-sans);font-size:var(--text-md);line-height:var(--leading-normal);font-feature-settings:"cv11","ss01";-webkit-font-smoothing:antialiased;text-rendering:optimizeLegibility}img,svg,video,canvas{display:block;max-width:100%}button,input,select,textarea{font:inherit;color:inherit}button{cursor:pointer}a{color:inherit;text-decoration:none}p{margin:0 0 var(--space-2)}h1,h2,h3,h4{margin:0;font-weight:var(--weight-semibold)}ul,ol{margin:0;padding:0;list-style:none}table{border-collapse:collapse}[hidden]{display:none!important}:focus-visible{outline:var(--border-width-focus) solid var(--focus);outline-offset:2px;border-radius:var(--radius-xs)}.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}.skip-link{position:absolute;left:var(--space-2);top:-100px;z-index:var(--z-toast);background:var(--interactive);color:var(--on-interactive);padding:var(--space-1) var(--space-2);border-radius:var(--radius-sm)}.skip-link:focus{top:var(--space-2)}.display-xl,.display-lg,.display-md,.heading{font-family:var(--font-display);letter-spacing:var(--tracking-display);font-optical-sizing:auto;text-wrap:balance}.display-xl{font-size:clamp(40px,7vw,80px);line-height:1.02;font-weight:700;letter-spacing:-.03em}.display-lg{font-size:clamp(34px,5vw,56px);line-height:var(--leading-tight);font-weight:700;letter-spacing:-.025em}.display-md{font-size:clamp(26px,3.5vw,36px);line-height:1.15;font-weight:700}.heading{font-size:24px;line-height:var(--leading-snug);font-weight:650;letter-spacing:-.015em}.title{font-size:var(--text-lg);line-height:1.3;font-weight:var(--weight-semibold)}.ui{font-size:var(--text-sm);line-height:1.45;font-weight:var(--weight-medium)}.meta{font-size:var(--text-xs);line-height:1.4;font-weight:var(--weight-semibold);text-transform:uppercase;letter-spacing:var(--tracking-caps)}.muted{color:var(--text-muted)}.subtle{color:var(--text-subtle)}.accent-text{color:var(--accent-text)}.num{font-variant-numeric:tabular-nums}.mono{font-family:var(--font-mono)}.prose{max-width:var(--size-prose-max);color:var(--text-muted);line-height:var(--leading-relaxed)}.prose p{margin-bottom:var(--space-2)}.container{width:100%;max-width:calc(var(--size-content-max) + 2 * var(--gutter));margin-inline:auto;padding-inline:var(--gutter)}:root{--gutter: var(--space-2)}@media(min-width:768px){:root{--gutter: var(--space-4)}}@media(min-width:1024px){:root{--gutter: var(--space-6)}}.stack{display:flex;flex-direction:column;gap:var(--gap, var(--space-2))}.row{display:flex;align-items:center;gap:var(--gap, var(--space-1))}.wrap{flex-wrap:wrap}.between{justify-content:space-between}.grow{flex:1 1 auto;min-width:0}.section{padding-block:var(--space-8)}.section-head{display:flex;align-items:end;justify-content:space-between;gap:var(--space-2);margin-bottom:var(--space-3)}.nav{position:sticky;top:0;z-index:var(--z-nav);height:var(--size-nav-height);background:var(--glass);border-bottom:1px solid var(--border)}.nav .container{height:100%;display:flex;align-items:center;gap:var(--space-3)}.brand{display:inline-flex;align-items:center;gap:10px;font-family:var(--font-display);font-weight:600;font-size:22px;letter-spacing:-.02em}.brand-mark{width:28px;height:28px;flex:none;display:block}.nav-links{display:none;gap:var(--space-3)}.nav-links a{white-space:nowrap;color:var(--text-muted);font-size:var(--text-sm);font-weight:500;transition:color var(--dur-fast) var(--ease-standard)}.nav-links a{display:inline-flex;align-items:center;min-height:44px}.nav-links a:hover,.nav-links a[aria-current=page]{color:var(--text)}.nav-links a[aria-current=page]{box-shadow:inset 0 -2px 0 var(--text)}@media(min-width:1024px){.nav-links{display:flex}}.app-shell{display:grid;grid-template-columns:1fr;min-height:100vh}@media(min-width:1024px){.app-shell{grid-template-columns:248px 1fr}}.sidebar{display:none;flex-direction:column;gap:var(--space-0-5);padding:var(--space-2);border-right:1px solid var(--border);background:var(--surface-1);position:sticky;top:0;height:100vh;overflow-y:auto}@media(min-width:1024px){.sidebar{display:flex}}.sidebar .brand{padding:var(--space-1) var(--space-1) var(--space-2);font-size:20px}.tenant-switch{display:flex;align-items:center;gap:var(--space-1);padding:10px var(--space-1-5);border:1px solid var(--border);border-radius:var(--radius-md);margin-bottom:var(--space-2);background:var(--surface-2);text-align:left;width:100%}.side-link{display:flex;align-items:center;gap:var(--space-1-5);min-height:40px;padding:0 var(--space-1-5);border-radius:var(--radius-sm);color:var(--text-muted);font-size:var(--text-sm);font-weight:500;transition:background var(--dur-fast) var(--ease-standard),color var(--dur-fast) var(--ease-standard)}.side-link:hover{background:var(--surface-3);color:var(--text)}.side-link[aria-current=page]{background:var(--surface-3);color:var(--text);font-weight:600;box-shadow:inset 2px 0 0 var(--text)}.side-link .count{margin-left:auto;font-size:var(--text-xs);color:var(--text-subtle)}.side-link .nav-count{min-width:20px;height:20px;padding:0 6px;border-radius:var(--radius-xs);display:inline-flex;align-items:center;justify-content:center;background:color-mix(in srgb,var(--warning) 18%,transparent);color:var(--warning);font-weight:600;font-variant-numeric:tabular-nums}.topbar{position:sticky;top:0;z-index:var(--z-nav);height:var(--size-nav-height);display:flex;align-items:center;gap:var(--space-2);padding:0 var(--gutter);background:var(--glass);border-bottom:1px solid var(--border)}.page{padding:var(--space-4) var(--gutter) var(--space-8);max-width:1440px}.lucide,.icon{width:20px;height:20px;stroke-width:1.5;flex:none}.icon-sm{width:16px;height:16px}html[data-reduced-motion]{--dur-instant: 0ms;--dur-fast: 0ms;--dur-base: 0ms;--dur-moderate: 0ms;--dur-slow: 0ms;--dur-slower: 0ms;--dur-slowest: 0ms}html[data-reduced-motion] *,html[data-reduced-motion] *:before,html[data-reduced-motion] *:after{animation-duration:.01ms!important;animation-iteration-count:1!important}.btn{--h: 44px;display:inline-flex;align-items:center;justify-content:center;gap:var(--space-1);height:var(--h);padding:0 calc(var(--h) / 2.4);border-radius:var(--radius-sm);border:1px solid transparent;background:transparent;color:var(--text);font-size:var(--text-sm);font-weight:600;white-space:nowrap;letter-spacing:.005em;transition:background-color var(--dur-fast) linear,border-color var(--dur-fast) linear,color var(--dur-fast) linear}.btn[disabled],.btn[aria-disabled=true]{background:var(--surface-3);color:var(--text-subtle);border-color:var(--surface-3);pointer-events:none}.btn-ghost[disabled],.btn-ghost[aria-disabled=true]{background:transparent;border-color:transparent}.btn-sm{--h: 36px;font-size:13px}.btn-lg{--h: 52px;font-size:var(--text-md)}.btn-block{width:100%}.btn-primary{background:var(--accent);color:var(--on-accent)}.btn-primary:hover{background:var(--accent-hover)}.btn-secondary{border-color:var(--border-strong);background:var(--surface-1)}.btn-secondary:hover,.btn-ghost:hover{background:var(--surface-3)}.btn-interactive{background:var(--accent);color:var(--on-accent)}.btn-interactive:hover{background:var(--accent-hover)}.btn-destructive{background:transparent;color:var(--danger);border-color:color-mix(in srgb,var(--danger) 45%,transparent)}.btn-destructive:hover{background:var(--danger);border-color:var(--danger);color:var(--bg)}.btn .spinner{width:16px;height:16px;border-radius:50%;border:2px solid currentColor;border-right-color:transparent;animation:spin .8s linear infinite}@keyframes spin{to{transform:rotate(360deg)}}.icon-btn{width:44px;height:44px;display:inline-grid;place-items:center;border-radius:var(--radius-sm);border:1px solid transparent;background:transparent;color:var(--text-muted);transition:background var(--dur-fast) var(--ease-standard),color var(--dur-fast) var(--ease-standard)}.icon-btn:hover{background:var(--surface-3);color:var(--text)}.icon-btn.bordered{border-color:var(--border-strong)}.icon-btn.on-image{background:#111316c7;color:#ececea}.icon-btn.on-image:hover{background:#111316eb;color:#fff}.icon-btn[aria-pressed=true]{color:var(--accent)}.icon-btn[aria-pressed=true] .lucide{fill:currentColor}.chip{display:inline-flex;align-items:center;gap:6px;height:36px;padding:0 14px;border-radius:var(--radius-sm);border:1px solid var(--border-strong);background:var(--surface-1);color:var(--text-muted);font-size:13px;font-weight:500;white-space:nowrap;transition:background-color var(--dur-fast) linear,border-color var(--dur-fast) linear,color var(--dur-fast) linear}.chip:hover{color:var(--text);border-color:var(--text-subtle)}.chip[aria-pressed=true]{background:var(--text);color:var(--bg);border-color:var(--text)}.chip .lucide{width:16px;height:16px}.chip-check{display:none}.chip[aria-pressed=true] .chip-check{display:inline-block}.tag{display:inline-flex;align-items:center;gap:5px;height:26px;padding:0 10px;border-radius:var(--radius-xs);background:var(--surface-3);color:var(--text-muted);font-size:12px;font-weight:600;white-space:nowrap}.tag .lucide{width:14px;height:14px}@keyframes pop{0%{transform:scale(.4);opacity:0}to{transform:scale(1);opacity:1}}.badge{display:inline-flex;align-items:center;gap:4px;height:22px;padding:0 8px;border-radius:var(--radius-xs);font-size:11px;font-weight:700;letter-spacing:.06em;text-transform:uppercase;border:1px solid transparent;white-space:nowrap}.badge .lucide{width:12px;height:12px;stroke-width:2}.badge-soldout{background:var(--surface-3);color:var(--text-muted);text-decoration:line-through;text-decoration-thickness:1px}.badge-few{background:color-mix(in srgb,var(--warning) 16%,transparent);color:var(--warning)}.badge-new{background:color-mix(in srgb,var(--interactive) 18%,transparent);color:var(--interactive)}.badge-age{border-color:color-mix(in srgb,var(--danger) 60%,transparent);color:var(--danger)}.badge-free{background:color-mix(in srgb,var(--success) 16%,transparent);color:var(--success)}.badge-edition{background:color-mix(in srgb,var(--accent) 16%,transparent);color:var(--accent-text)}.badge-solid{background:#111316d9;color:#ececea}.date-badge{display:inline-flex;flex-direction:column;align-items:center;justify-content:center;width:52px;padding:6px 0 7px;border-radius:var(--radius-sm);background:#fff;color:#16181d;border:0;line-height:1}.date-badge .m{font-size:10px;font-weight:700;letter-spacing:.1em;text-transform:uppercase}.date-badge .d{font-family:var(--font-display);font-size:22px;font-weight:700;letter-spacing:-.02em;margin-top:3px;font-variant-numeric:tabular-nums}.date-badge .w{font-size:10px;font-weight:600;margin-top:3px;color:#545a66}.card{background:var(--surface-1);border:1px solid var(--border);border-radius:var(--radius-md)}.card-pad{padding:var(--space-3)}.event-card{position:relative;display:flex;flex-direction:column;gap:var(--space-1-5)}.event-card .media{position:relative;aspect-ratio:16 / 10;border-radius:var(--radius-md);overflow:hidden;background:var(--surface-2);isolation:isolate}.event-card .media>.art,.event-card .media>img{position:absolute;top:0;right:0;bottom:0;left:0;width:100%;height:100%;object-fit:cover}.event-card .media .date-badge{position:absolute;left:12px;top:12px}.event-card .media .fav{position:absolute;right:8px;top:8px}.event-card .media .status{position:absolute;left:12px;bottom:12px}.event-card .title{font-size:18px;line-height:1.3}.event-card .title a:after{content:"";position:absolute;top:0;right:0;bottom:0;left:0;border-radius:var(--radius-md)}.event-card .title a:focus-visible{outline:none}.event-card:has(.title a:focus-visible) .media{outline:2px solid var(--focus);outline-offset:3px}.event-card .fav{z-index:1}.event-card .price{font-weight:700;color:var(--accent-text);font-variant-numeric:tabular-nums}.availability{height:3px;border-radius:2px;background:var(--surface-3);overflow:hidden}.availability>span{display:block;height:100%;background:var(--text-subtle);border-radius:inherit}.availability.low>span{background:var(--warning)}.kpi{padding:var(--space-2) var(--space-3) var(--space-3);display:flex;flex-direction:column;gap:6px}.kpi .value{font-size:32px;font-weight:600;letter-spacing:-.02em;font-variant-numeric:tabular-nums;line-height:1.1}.kpi .delta{font-size:12px;font-weight:600;display:inline-flex;align-items:center;gap:2px}.kpi .delta.up{color:var(--success)}.kpi .delta.down{color:var(--danger)}.field{position:relative;display:flex;flex-direction:column;gap:6px}.field .control{height:52px;width:100%;padding:22px 14px 6px;border-radius:var(--radius-sm);background:var(--surface-1);border:1px solid var(--border-control);color:var(--text);font-size:var(--text-md);transition:border-color var(--dur-fast) linear,box-shadow var(--dur-fast) linear;-webkit-appearance:none;-moz-appearance:none;appearance:none}.field select.control{padding-right:40px;background-image:linear-gradient(45deg,transparent 50%,var(--text-muted) 50%),linear-gradient(135deg,var(--text-muted) 50%,transparent 50%);background-position:calc(100% - 20px) 24px,calc(100% - 15px) 24px;background-size:5px 5px;background-repeat:no-repeat}.field label{position:absolute;left:15px;top:16px;color:var(--text-muted);font-size:var(--text-md);pointer-events:none;transform-origin:left top;transition:transform var(--dur-fast) var(--ease-standard),color var(--dur-fast) var(--ease-standard)}.field .control:focus{outline:none;border-color:var(--focus);box-shadow:0 0 0 1px var(--focus)}.field .control:focus+label,.field .control:not(:placeholder-shown)+label,.field select.control+label,.field .control[type=date]+label{transform:translateY(-9px) scale(.75)}.field .control:focus+label{color:var(--text)}.field .hint{font-size:12px;color:var(--text-muted);padding-left:2px}.field.invalid .control{border-color:var(--danger)}.field.invalid .control:focus{box-shadow:0 0 0 1px var(--danger)}.field .error{display:flex;gap:6px;align-items:center;font-size:12px;font-weight:500;color:var(--danger)}.field .error .lucide{width:14px;height:14px}.check{display:flex;gap:var(--space-1-5);align-items:flex-start;font-size:var(--text-sm);color:var(--text-muted);cursor:pointer}.check input{width:20px;height:20px;margin:1px 0 0;accent-color:var(--interactive);flex:none}.check a{color:var(--interactive);text-decoration:underline;text-underline-offset:2px}.option{display:flex;align-items:center;gap:var(--space-1-5);padding:var(--space-2);border:1px solid var(--border-strong);border-radius:var(--radius-md);background:var(--surface-1);cursor:pointer;transition:border-color var(--dur-fast) var(--ease-standard),background var(--dur-fast) var(--ease-standard)}.option:hover{background:var(--surface-2)}.option:has(input:checked){border-color:var(--text);box-shadow:0 0 0 1px var(--text)}.option input{accent-color:var(--interactive);width:18px;height:18px;margin:0}.qty{display:inline-flex;align-items:center;border:1px solid var(--border-control);border-radius:var(--radius-sm);height:44px}.qty button{width:44px;height:100%;border:0;background:transparent;display:grid;place-items:center;color:var(--text-muted);border-radius:var(--radius-sm)}.qty button:hover{color:var(--text);background:var(--surface-3)}.qty output{min-width:28px;text-align:center;font-weight:600;font-variant-numeric:tabular-nums}.steps{display:flex;align-items:center;gap:var(--space-1);counter-reset:step}.steps li{display:flex;align-items:center;gap:var(--space-1);color:var(--text-subtle);font-size:var(--text-sm);font-weight:500}.steps li:before{counter-increment:step;content:counter(step);width:26px;height:26px;border-radius:50%;display:grid;place-items:center;border:1px solid var(--border-strong);font-size:12px;font-weight:700}.steps li+li:after{content:none}.steps .sep{width:32px;height:1px;background:var(--border-strong)}.steps li[aria-current=step]{color:var(--text)}.steps li[aria-current=step]:before{background:var(--accent);color:var(--on-accent);border-color:var(--accent)}.steps li.done{color:var(--text-muted)}.steps li.done:before{content:"✓";background:var(--surface-3);color:var(--success)}.tabs{display:flex;gap:var(--space-3);border-bottom:1px solid var(--border);overflow-x:auto;scrollbar-width:none}.tabs [role=tab]{position:relative;height:44px;padding:0 2px;border:0;background:none;color:var(--text-muted);font-size:var(--text-sm);font-weight:600;white-space:nowrap}.tabs [role=tab]:hover{color:var(--text)}.tabs a[role=tab]{display:inline-flex;align-items:center;gap:6px;text-decoration:none}.tabs [role=tab][aria-selected=true]{color:var(--text)}.tabs [role=tab][aria-selected=true]:after{content:"";position:absolute;left:0;right:0;bottom:-1px;height:2px;background:var(--text)}.segmented{display:inline-flex;padding:3px;border-radius:var(--radius-sm);background:var(--surface-2);border:1px solid var(--border)}.segmented button{height:34px;padding:0 12px;border:1px solid transparent;border-radius:var(--radius-xs);background:transparent;color:var(--text-muted);font-size:13px;font-weight:600;display:inline-flex;align-items:center;gap:6px}.segmented button[aria-pressed=true]{background:var(--surface-raised);color:var(--text);border-color:var(--border-strong)}.segmented .lucide{width:16px;height:16px}.scrim{position:fixed;top:0;right:0;bottom:0;left:0;background:var(--overlay);z-index:var(--z-modal);opacity:0;animation:fade-in var(--dur-slow) var(--ease-standard) forwards}.modal{position:fixed;z-index:calc(var(--z-modal) + 1);left:50%;top:50%;transform:translate(-50%,-48%);width:min(560px,calc(100vw - 32px));max-height:calc(100vh - 64px);overflow:auto;background:var(--surface-1);border:1px solid var(--border-strong);border-radius:var(--radius-lg);padding:var(--space-4);box-shadow:var(--shadow-float);opacity:0;animation:modal-in var(--dur-slow) var(--ease-enter) forwards}@keyframes modal-in{to{opacity:1;transform:translate(-50%,-50%)}}@keyframes fade-in{to{opacity:1}}.sheet{position:fixed;z-index:calc(var(--z-modal) + 1);left:0;right:0;bottom:0;max-height:92vh;background:var(--surface-1);border-top-left-radius:var(--radius-lg);border-top-right-radius:var(--radius-lg);border:1px solid var(--border-strong);border-bottom:0;box-shadow:0 -20px 60px -20px #00000080;transition:transform var(--dur-slow) var(--ease-enter)}.sheet-handle{width:40px;height:4px;border-radius:2px;background:var(--border-strong);margin:10px auto 6px}.toast-region{position:fixed;z-index:var(--z-toast);left:50%;bottom:var(--space-3);transform:translate(-50%);display:flex;flex-direction:column;gap:var(--space-1)}@media(min-width:768px){.toast-region{left:auto;right:var(--space-3);transform:none}}.toast{display:flex;align-items:center;gap:var(--space-1-5);min-width:280px;max-width:420px;padding:12px 14px;border-radius:var(--radius-md);background:var(--surface-raised);border:1px solid var(--border-strong);box-shadow:var(--shadow-float);font-size:var(--text-sm);animation:toast-in var(--dur-moderate) var(--ease-enter)}.toast .lucide{color:var(--success)}@keyframes toast-in{0%{opacity:0;transform:translateY(12px) scale(.98)}}.skeleton{background:linear-gradient(90deg,var(--surface-2) 25%,var(--surface-3) 50%,var(--surface-2) 75%);background-size:200% 100%;border-radius:var(--radius-sm);animation:shimmer 1.6s linear infinite}@keyframes shimmer{to{background-position:-200% 0}}@media(prefers-reduced-motion:reduce){.skeleton{animation:none}}.table-wrap{overflow-x:auto;border:1px solid var(--border);border-radius:var(--radius-md);background:var(--surface-1)}.table{width:100%;font-size:var(--text-sm)}.table th{position:sticky;top:0;background:var(--surface-1);text-align:left;padding:0 var(--space-2);height:40px;font-size:11px;font-weight:700;letter-spacing:var(--tracking-caps);text-transform:uppercase;color:var(--text-subtle);border-bottom:1px solid var(--border);white-space:nowrap}.table td{padding:0 var(--space-2);height:48px;border-bottom:1px solid var(--border);white-space:nowrap}.table tr:last-child td{border-bottom:0}.table tbody tr{transition:background var(--dur-fast) var(--ease-standard)}.table tbody tr:hover{background:var(--surface-2)}.table .r{text-align:right;font-variant-numeric:tabular-nums}.table .row-actions{opacity:0;transition:opacity var(--dur-fast) var(--ease-standard);display:inline-flex;gap:2px}.table tr:hover .row-actions,.table tr:focus-within .row-actions{opacity:1}.table .row-actions .icon-btn{width:32px;height:32px}.table input[type=checkbox]{width:16px;height:16px;accent-color:var(--interactive)}.status{display:inline-flex;align-items:center;gap:6px;font-size:13px;font-weight:500}.status:before{content:"";width:7px;height:7px;border-radius:50%;background:currentColor}.status.ok{color:var(--success)}.status.warn{color:var(--warning)}.status.err{color:var(--danger)}.status.info{color:var(--info)}.status.neutral{color:var(--text-muted)}.empty{display:flex;flex-direction:column;align-items:center;text-align:center;gap:var(--space-1);padding:var(--space-6) var(--space-3)}.empty svg{width:160px;height:120px;margin-bottom:var(--space-1)}.empty p{max-width:360px;color:var(--text-muted);font-size:var(--text-sm)}.countdown{display:inline-flex;align-items:center;gap:var(--space-1);font-size:var(--text-sm);font-weight:600;font-variant-numeric:tabular-nums}.countdown svg{width:28px;height:28px;transform:rotate(-90deg)}.countdown .track{stroke:var(--surface-3)}.countdown .bar{stroke:var(--interactive);stroke-linecap:round;transition:stroke-dashoffset 1s linear,stroke var(--dur-base)}.countdown.warn .bar{stroke:var(--warning)}.countdown.warn{color:var(--warning)}.countdown.critical svg{animation:breathe 1s var(--ease-standard) infinite}@keyframes breathe{50%{transform:rotate(-90deg) scale(1.12)}}.art{display:block;width:100%;height:100%}.summary-line{display:flex;justify-content:space-between;gap:var(--space-2);font-size:var(--text-sm);color:var(--text-muted);padding:4px 0}.summary-line span:last-child{font-variant-numeric:tabular-nums;color:var(--text)}.summary-total{display:flex;justify-content:space-between;align-items:baseline;padding-top:var(--space-1-5);margin-top:var(--space-1);border-top:1px solid var(--border);font-weight:600}.summary-total .amount{font-size:24px;font-variant-numeric:tabular-nums;letter-spacing:-.01em}.callout{display:flex;gap:var(--space-1-5);padding:var(--space-2);border-radius:var(--radius-md);font-size:var(--text-sm);background:color-mix(in srgb,var(--info) 10%,transparent);border:1px solid color-mix(in srgb,var(--info) 30%,transparent)}.callout .lucide{color:var(--info);margin-top:1px}.callout.warn{background:color-mix(in srgb,var(--warning) 10%,transparent);border-color:color-mix(in srgb,var(--warning) 30%,transparent)}.callout.warn .lucide{color:var(--warning)}.callout.ok{background:color-mix(in srgb,var(--success) 10%,transparent);border-color:color-mix(in srgb,var(--success) 30%,transparent)}.callout.ok .lucide{color:var(--success)}:root{--font-sans: "Inter Variable", Inter, "Segoe UI", system-ui, sans-serif}html,body,#root{min-height:100%}body{min-height:100vh}main:focus{outline:none}.link{color:var(--interactive);text-decoration:underline;text-underline-offset:2px;font-weight:500}.link:hover{text-decoration-thickness:2px}button.link{background:none;border:0;padding:0;font:inherit;font-weight:500}.text-sm{font-size:var(--text-sm)}.text-xs{font-size:var(--text-xs)}.mt-1{margin-top:var(--space-1)}.mt-2{margin-top:var(--space-2)}.mt-3{margin-top:var(--space-3)}.mt-4{margin-top:var(--space-4)}.full-center{min-height:60vh;display:grid;place-items:center}.danger-text{color:var(--danger)}.success-text{color:var(--success)}fieldset.plain{border:0;padding:0;margin:0;min-width:0}fieldset.plain legend{padding:0;margin-bottom:var(--space-1)}.nav-actions{margin-left:auto;display:flex;align-items:center;gap:var(--space-1)}.auth-page{min-height:100vh;display:flex;flex-direction:column;background:var(--bg)}.auth-main{flex:1;display:flex;justify-content:center;padding:var(--space-4) var(--gutter) var(--space-8)}.auth-card{width:100%;max-width:460px;display:flex;flex-direction:column;gap:var(--space-3)}.auth-card.wide{max-width:640px}.auth-head{display:flex;flex-direction:column;gap:var(--space-1)}.auth-head .display-md{margin-top:4px}.auth-head p{color:var(--text-muted);margin:0}.auth-form{display:flex;flex-direction:column;gap:var(--space-2)}.auth-alt{display:flex;flex-direction:column;gap:var(--space-1);font-size:var(--text-sm);color:var(--text-muted)}.auth-footer{padding:var(--space-3) var(--gutter);color:var(--text-subtle);font-size:var(--text-xs);display:flex;gap:var(--space-2);justify-content:center;flex-wrap:wrap}.or{display:flex;align-items:center;gap:var(--space-2);color:var(--text-subtle);font-size:var(--text-xs);text-transform:uppercase;letter-spacing:var(--tracking-caps)}.or:before,.or:after{content:"";flex:1;height:1px;background:var(--border)}.sent-icon{width:56px;height:56px;border-radius:50%;display:grid;place-items:center;background:var(--surface-3);color:var(--text)}.sent-icon .lucide{width:28px;height:28px}.strength{display:grid;grid-template-columns:repeat(4,1fr);gap:4px;margin-top:2px}.strength span{height:4px;border-radius:2px;background:var(--surface-3);transition:background var(--dur-base) var(--ease-standard)}.strength[data-score="1"] span:nth-child(-n+1){background:var(--danger)}.strength[data-score="2"] span:nth-child(-n+2){background:var(--warning)}.strength[data-score="3"] span:nth-child(-n+3){background:var(--interactive)}.strength[data-score="4"] span{background:var(--success)}.code-input{font-family:var(--font-mono);letter-spacing:.4em;font-size:22px!important;text-align:center}.hero{position:relative;overflow:hidden;padding-block:var(--space-12) var(--space-10)}.hero .container{position:relative;display:flex;flex-direction:column;gap:var(--space-3)}.hero .lede{font-size:var(--text-lg);color:var(--text-muted);max-width:620px;line-height:var(--leading-relaxed)}.hero-actions{display:flex;gap:var(--space-1-5);flex-wrap:wrap}.pillars{display:grid;gap:var(--space-3);grid-template-columns:1fr;padding-bottom:var(--space-10)}@media(min-width:768px){.pillars{grid-template-columns:repeat(3,1fr)}}.pillar{border-top:1px solid var(--border-strong);padding-top:var(--space-2)}.pillar h2{font-family:var(--font-display);font-size:var(--text-lg);font-weight:650;margin-bottom:var(--space-1)}.pillar p{color:var(--text-muted);font-size:var(--text-sm)}.imp-banner{position:sticky;top:0;z-index:calc(var(--z-modal) + 2);color:#1a1204;background:var(--palette-amber-400);border-bottom:2px solid var(--palette-amber-700)}.imp-banner .inner{display:flex;align-items:center;gap:var(--space-1-5);flex-wrap:wrap;padding:8px var(--gutter);font-size:var(--text-sm)}.imp-banner .who{font-weight:700;display:inline-flex;align-items:center;gap:8px}.imp-banner .reason{opacity:.9}.imp-banner .time{font-variant-numeric:tabular-nums;font-weight:700;padding:2px 8px;border-radius:var(--radius-xs);background:#1a120424}.imp-banner .btn{margin-left:auto;--h: 36px;background:#1a1204;color:var(--palette-amber-200)}.imp-banner .btn:hover{background:#000}.imp-banner :focus-visible{outline-color:#1a1204}.demo-banner{display:flex;align-items:flex-start;gap:10px;padding:8px var(--gutter);font-size:var(--text-sm);line-height:1.4;color:#1a1204;background:repeating-linear-gradient(135deg,#ffd966 0,#ffd966 14px,#f6c744 14px,#f6c744 28px);border-bottom:2px solid #8A6100}.demo-banner .lucide{width:18px;height:18px;flex:none;margin-top:1px}.demo-banner p{margin:0}.maint-staff{display:flex;align-items:flex-start;flex-wrap:wrap;gap:6px 10px;padding:8px var(--gutter);font-size:var(--text-sm);line-height:1.4;color:#fff;background:#7a1020;border-bottom:1px solid #4A0812}.maint-staff .lucide{width:18px;height:18px;flex:none;margin-top:1px}.maint-staff p{margin:0;flex:1 1 220px}.maint-staff a{color:#fff;font-weight:700;text-decoration:underline;text-underline-offset:3px;min-height:24px}.maint-staff a:focus-visible{outline-color:#fff}.restricted-staff{background:#1e2d52;border-bottom-color:#121c36}.curtain{position:relative;min-height:100dvh;display:grid;place-items:center;padding:72px var(--gutter);overflow:hidden;isolation:isolate;background:#08090b;outline:none;touch-action:pan-y}.curtain:before{content:"";position:absolute;inset:0 0 auto 0;height:12px;z-index:1;background:linear-gradient(180deg,#2a2d33,#121417 70%,#08090b);box-shadow:0 6px 14px #000000b3}.curtain-drape{position:absolute;top:0;height:calc(100% - 20px);width:53%;overflow:visible}.curtain-drape.left{left:0;z-index:-1;translate:-100% 0;filter:drop-shadow(8px 0 12px rgba(0,0,0,.85))}.curtain-drape.right{right:0;z-index:-2;translate:100% 0;transform:scaleX(-1)}.curtain-fold{stroke:#0009;stroke-width:1}.curtain-light{position:absolute;top:0;right:0;bottom:0;left:0;z-index:-1;pointer-events:none;background:radial-gradient(ellipse 70% 55% at 50% 0%,rgba(255,255,255,.1),transparent 70%),radial-gradient(ellipse 45% 40% at 50% 55%,rgba(255,255,255,.06),transparent 75%),linear-gradient(180deg,transparent 88%,rgba(0,0,0,.35))}.curtain:after{content:"";position:absolute;inset:auto 0 0 0;height:40px;z-index:-3;background:linear-gradient(180deg,#1a1c20,#0d0e10);border-top:1px solid #24272C}.curtain-card{position:relative;z-index:2;width:min(100%,480px);padding:var(--space-6) var(--space-5);text-align:center;background:var(--surface-1);color:var(--text);border-radius:var(--radius-xl);border:1px solid var(--border);box-shadow:0 30px 80px -20px #000000e6,0 0 0 1px #ffffff0a}.curtain-brand{margin:0 auto var(--space-4);display:block}.curtain-eyebrow{margin:0 0 8px;font-size:12px;font-weight:600;letter-spacing:.14em;text-transform:uppercase;color:var(--text-muted)}.curtain-card h1{margin:0 0 var(--space-3);font-family:var(--font-display);font-size:clamp(1.6rem,6vw,2.1rem);line-height:1.15;letter-spacing:-.01em;text-wrap:balance}.curtain-message{margin:0 auto;max-width:42ch;white-space:pre-line;overflow-wrap:anywhere;font-size:var(--text-md);color:var(--text-muted)}.curtain-end{display:inline-block;margin:var(--space-4) 0 0;padding:6px 14px;border-radius:999px;font-weight:600;font-size:var(--text-sm);border:1px solid var(--border);color:var(--text)}.curtain-links{display:flex;flex-wrap:wrap;justify-content:center;gap:4px 18px;margin-top:var(--space-5);padding-top:var(--space-3);border-top:1px solid var(--border);font-size:var(--text-sm)}.curtain-links a{display:inline-flex;align-items:center;min-height:44px;color:var(--text-muted)}.curtain-form{display:flex;flex-direction:column;gap:var(--space-2);margin-top:var(--space-5);text-align:left}.curtain-form .curtain-code{text-transform:uppercase;letter-spacing:.12em;font-family:var(--font-mono)}.curtain-form .curtain-submit{width:100%}.access-code-value{margin:0;padding:var(--space-2);text-align:center;font-size:clamp(1.15rem,5.5vw,1.6rem);font-weight:700;letter-spacing:.08em;border:1px solid var(--border);border-radius:var(--radius-sm);background:var(--surface-2);overflow-wrap:anywhere;-webkit-user-select:all;user-select:all}@media(prefers-reduced-motion:reduce){.curtain-drape.left,.curtain-drape.right{translate:0 0}}@media(prefers-reduced-motion:no-preference){.curtain-card{animation:curtain-card-in .8s cubic-bezier(.2,.8,.2,1) 1.3s both}}@keyframes curtain-card-in{0%{opacity:0;transform:translateY(12px)}to{opacity:1;transform:none}}.main-col{min-width:0;display:flex;flex-direction:column}.sidebar{z-index:calc(var(--z-modal) + 1)}.sidebar nav{display:flex;flex-direction:column;gap:2px}.side-link .lucide{width:18px;height:18px}.sidebar nav{gap:var(--space-1-5)}.side-group{display:flex;flex-direction:column;gap:2px}.side-list{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:2px}.side-group-label{margin:0;padding:0 var(--space-1-5) 2px;font-size:11px;font-weight:700;letter-spacing:.08em;text-transform:uppercase;color:var(--text-muted)}.side-link{min-height:44px}.sidebar{scrollbar-gutter:stable}.side-list>li{display:flex;min-width:0}.side-link{flex:1 1 auto;width:100%;min-width:0;box-sizing:border-box;padding-block:6px;line-height:1.3}.side-link .lucide{flex:none}.side-link-label{flex:1 1 auto;min-width:0;overflow-wrap:anywhere;-webkit-hyphens:auto;hyphens:auto}.side-group-toggle{display:flex;align-items:center;gap:var(--space-1);width:100%;min-height:44px;box-sizing:border-box;padding:0 var(--space-1-5);border:0;border-radius:var(--radius-sm);background:none;color:var(--text-muted);font:inherit;text-align:left;cursor:pointer;transition:background var(--dur-fast) var(--ease-standard),color var(--dur-fast) var(--ease-standard)}.side-group-toggle:hover{background:var(--surface-3);color:var(--text)}.side-group-toggle:focus-visible{outline:2px solid var(--focus, var(--text));outline-offset:-2px}.side-group-toggle .side-group-label{flex:1 1 auto;padding:0;min-width:0;overflow-wrap:anywhere}.side-group-toggle .nav-count{min-width:20px;height:20px;padding:0 6px;border-radius:var(--radius-xs);display:inline-flex;align-items:center;justify-content:center;background:color-mix(in srgb,var(--warning) 18%,transparent);color:var(--warning);font-size:var(--text-xs);font-weight:600;font-variant-numeric:tabular-nums}.side-group-chevron{flex:none;width:16px;height:16px;transition:transform var(--dur-fast) var(--ease-standard)}.side-group-toggle[aria-expanded=false] .side-group-chevron{transform:rotate(-90deg)}.side-nav.is-collapsible{gap:var(--space-0-5)}@media(prefers-reduced-motion:reduce){.side-group-chevron{transition:none}}.sidebar-foot{margin-top:auto;padding-top:var(--space-2);border-top:1px solid var(--border);display:flex;flex-direction:column;gap:2px}@media(max-width:1023px){.sidebar.is-open{display:flex;position:fixed;inset:0 auto 0 0;width:min(300px,86vw);box-shadow:var(--shadow-float);animation:drawer-in var(--dur-slow) var(--ease-enter)}}@keyframes drawer-in{0%{transform:translate(-100%)}}.menu-btn{display:inline-grid}@media(min-width:1024px){.menu-btn{display:none}}.tenant-logo{width:32px;height:32px;border-radius:8px;display:grid;place-items:center;flex:none;background:var(--accent);color:var(--on-accent);font-weight:700;font-size:13px}.tenant-logo .lucide{width:18px;height:18px}.tenant-switch{cursor:pointer;min-height:52px;color:var(--text)}.tenant-switch:hover{background:var(--surface-3)}.tenant-switch .lucide.chev{margin-left:auto;color:var(--text-subtle);width:16px;height:16px}.tenant-menu{position:relative}.menu{position:absolute;z-index:calc(var(--z-modal) + 2);min-width:240px;padding:6px;background:var(--surface-raised);border:1px solid var(--border-strong);border-radius:var(--radius-md);box-shadow:var(--shadow-float);display:flex;flex-direction:column;gap:2px}.menu.below{top:calc(100% - 8px);left:0;right:0}.menu.below-right{top:calc(100% + 6px);right:0}.menu [role=menuitem],.menu [role=menuitemradio]{display:flex;align-items:center;gap:10px;min-height:44px;padding:0 10px;border-radius:var(--radius-sm);border:0;background:transparent;text-align:left;font-size:var(--text-sm);font-weight:500;color:var(--text);width:100%}.menu [role=menuitem]:hover,.menu [role=menuitemradio]:hover,.menu [role=menuitem]:focus-visible,.menu [role=menuitemradio]:focus-visible{background:var(--surface-3);outline-offset:-2px}.menu [aria-checked=true]{font-weight:700}.menu .menu-sep{height:1px;background:var(--border);margin:4px 0}.menu .menu-label{padding:6px 10px 2px}.topbar-title{font-weight:600;font-size:var(--text-sm);min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.topbar-actions{margin-left:auto;display:flex;align-items:center;gap:8px}.avatar{width:36px;height:36px;border-radius:50%;display:grid;place-items:center;font-size:12px;font-weight:700;background:var(--surface-3);border:1px solid var(--border-strong);color:var(--text)}.avatar-btn{border:0;background:none;padding:4px;border-radius:50%;min-width:44px;min-height:44px;display:grid;place-items:center}.area-switch-wrap{position:relative;flex:none}.area-switch{display:inline-flex;align-items:center;gap:6px;min-height:44px;min-width:44px;padding:0 10px;border:1px solid var(--border-strong);border-radius:var(--radius-sm);background:transparent;color:var(--text);font-size:var(--text-sm);font-weight:600;white-space:nowrap}.area-switch:hover{background:var(--surface-3)}.area-switch .lucide{width:18px;height:18px;flex:none}.area-switch .lucide.chev{width:14px;height:14px;color:var(--text-subtle)}.area-switch-label{display:none}@media(min-width:600px){.area-switch-label{display:inline}}.area-switch-wrap .menu{min-width:240px}.menu .area-check{width:16px;height:16px;color:var(--text)}.menu .area-org{padding-left:22px}.menu .area-org .tenant-logo{width:24px;height:24px;font-size:10px;flex:none}.menu .area-org-name{display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.env{font-size:11px;font-weight:700;letter-spacing:.08em;text-transform:uppercase;color:var(--text-muted);border:1px solid var(--border-strong);border-radius:var(--radius-xs);padding:3px 8px;white-space:nowrap}@media(max-width:599px){.env{display:none}}.page-head{display:flex;flex-wrap:wrap;justify-content:space-between;align-items:end;gap:var(--space-2);margin-bottom:var(--space-3)}.page-head .display-md{margin-top:4px}.page-head p.lead{margin:6px 0 0;color:var(--text-muted);max-width:680px}.page-head .actions{display:flex;gap:var(--space-1);flex-wrap:wrap}.section-title{font-size:16px;font-weight:600;margin-bottom:var(--space-1-5);display:flex;align-items:center;gap:var(--space-1)}.card-h{display:flex;align-items:center;justify-content:space-between;gap:12px;flex-wrap:wrap;margin-bottom:12px}.card-h h2,.card-h h3{font-size:16px;font-weight:600}.card-h p{margin:2px 0 0;font-size:13px;color:var(--text-muted)}.grid-2{display:grid;gap:var(--space-2);grid-template-columns:1fr}@media(min-width:640px){.grid-2{grid-template-columns:1fr 1fr}}.grid-3{display:grid;gap:var(--space-2);grid-template-columns:1fr}@media(min-width:768px){.grid-3{grid-template-columns:repeat(3,1fr)}}.span-2{grid-column:1 / -1}.quick-link{display:flex;flex-direction:column;gap:6px;padding:var(--space-3);min-height:132px;transition:border-color var(--dur-fast) var(--ease-standard),background var(--dur-fast) var(--ease-standard)}.quick-link:hover{border-color:var(--border-strong);background:var(--surface-2)}.quick-link .lucide{color:var(--text);width:24px;height:24px;margin-bottom:6px}.quick-link strong{font-size:16px}.quick-link span{font-size:13px;color:var(--text-muted)}.form-actions{display:flex;gap:var(--space-1);justify-content:flex-end;flex-wrap:wrap;margin-top:var(--space-1)}.form-card{padding:var(--space-3);display:flex;flex-direction:column;gap:var(--space-2)}@media(max-width:479px){.form-card{padding:var(--space-2)}}.mini-field{display:flex;flex-direction:column;gap:5px;min-width:0}.mini-field label{font-size:12px;font-weight:600;color:var(--text-muted)}.mini-field input,.mini-field select{height:44px;width:100%;padding:0 12px;border-radius:var(--radius-sm);border:1px solid var(--border-control);background:var(--surface-1);font-size:14px}.mini-field input:focus,.mini-field select:focus{outline:none;border-color:var(--focus);box-shadow:0 0 0 1px var(--focus)}.toolbar{display:flex;flex-wrap:wrap;gap:12px;align-items:end;margin-bottom:var(--space-2)}.toolbar .mini-field{flex:1 1 180px}.toolbar .mini-field.wide{flex:2 1 260px}.table td.wrap-cell{white-space:normal;padding-block:10px}.table td small,.table td .sub{display:block;font-size:12px;color:var(--text-muted)}.table tbody tr.clickable{cursor:pointer}.table tbody tr[aria-selected=true] td{background:var(--surface-3)}.table .row-actions.always{opacity:1}.table .row-actions .btn{--h: 36px}.table-foot{display:flex;justify-content:center;padding:var(--space-2);border-top:1px solid var(--border)}.chips{display:flex;flex-wrap:wrap;gap:6px}.chip.static{height:28px;padding:0 10px;font-size:12px;cursor:default}.chip.static:hover{color:var(--text-muted);border-color:var(--border-strong)}@media(max-width:767px){.table.responsive thead{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0)}.table.responsive,.table.responsive tbody,.table.responsive tr,.table.responsive td{display:block;width:100%}.table.responsive tr{padding:12px var(--space-2);border-bottom:1px solid var(--border)}.table.responsive tr:last-child{border-bottom:0}.table.responsive td{height:auto;padding:3px 0;border:0;white-space:normal}.table.responsive td[data-label]:before{content:attr(data-label);display:block;font-size:11px;font-weight:700;letter-spacing:var(--tracking-caps);text-transform:uppercase;color:var(--text-muted)}.table.responsive td.r{text-align:left}.table.responsive .row-actions{opacity:1;margin-top:6px}}.callout p{margin:0}.callout .callout-body{display:flex;flex-direction:column;gap:6px;min-width:0}.callout .callout-title{font-weight:600}.callout .callout-actions{display:flex;gap:var(--space-1);flex-wrap:wrap;margin-top:4px}.callout.danger{background:color-mix(in srgb,var(--danger) 10%,transparent);border-color:color-mix(in srgb,var(--danger) 30%,transparent)}.callout.danger .lucide{color:var(--danger)}.callout.notice{background:color-mix(in srgb,var(--notice) 12%,transparent);border-color:color-mix(in srgb,var(--notice) 35%,transparent)}.callout.notice .lucide{color:var(--notice)}.form-error-summary:focus{outline:2px solid var(--focus);outline-offset:2px}.modal h2{font-size:20px;margin-bottom:8px;padding-right:40px}.modal .modal-close{position:absolute;top:12px;right:12px}.modal .modal-desc{color:var(--text-muted);font-size:var(--text-sm);margin-bottom:var(--space-2)}.modal-actions{display:flex;justify-content:flex-end;gap:8px;margin-top:var(--space-3);flex-wrap:wrap}.modal.wide{width:min(760px,calc(100vw - 32px))}.drawer{position:fixed;top:0;right:0;bottom:0;width:min(560px,100vw);z-index:calc(var(--z-modal) + 1);background:var(--surface-1);border-left:1px solid var(--border-strong);box-shadow:var(--shadow-float);display:flex;flex-direction:column;animation:slide-in var(--dur-slow) var(--ease-enter)}@keyframes slide-in{0%{transform:translate(100%)}}.drawer-head{display:flex;align-items:flex-start;gap:12px;padding:16px 16px 14px 24px;border-bottom:1px solid var(--border)}.drawer-head h2{font-size:18px;font-weight:600}.drawer-head p{margin:2px 0 0;font-size:13px;color:var(--text-muted)}.drawer-body{overflow-y:auto;padding:16px 24px 32px;display:flex;flex-direction:column;gap:20px}.drawer h3{font-size:12px;font-weight:700;letter-spacing:var(--tracking-caps);text-transform:uppercase;color:var(--text-subtle);margin-bottom:8px}.sheet .sheet-body{padding:8px var(--space-3) var(--space-3);overflow-y:auto;max-height:calc(92vh - 40px)}.kv{display:grid;grid-template-columns:120px minmax(0,1fr);gap:6px 12px;font-size:13px;margin:0}.kv dt{color:var(--text-muted)}.kv dd{margin:0;font-weight:500;overflow-wrap:anywhere}.audit-wrap{max-height:640px;overflow:auto}.audit-table th{z-index:2}.audit-table td{height:44px}.audit-table .actor small{display:block;font-size:12px;color:var(--text-muted)}.audit-table td.actor{line-height:1.25}.act-tag{display:inline-flex;align-items:center;gap:6px;height:24px;padding:0 8px;border-radius:var(--radius-xs);background:var(--surface-3);font-size:12px;font-weight:600}.act-tag .lucide{width:14px;height:14px}.act-tag.imp{background:color-mix(in srgb,var(--warning) 14%,transparent);color:var(--warning)}.imp-actor{color:var(--warning);font-weight:600}.count-line{font-size:13px;color:var(--text-muted);margin-bottom:8px;display:flex;justify-content:space-between;gap:12px;flex-wrap:wrap;align-items:center}.chain-ok{color:var(--success);font-weight:600;display:inline-flex;gap:6px;align-items:center}.chain-bad{color:var(--danger);font-weight:600;display:inline-flex;gap:6px;align-items:center}.chain-ok .lucide,.chain-bad .lucide{width:16px;height:16px}.diff{border:1px solid var(--border);border-radius:var(--radius-md);overflow:auto;font-family:var(--font-mono);font-size:12px;line-height:1.6;background:var(--surface-2)}.diff-head{display:flex;gap:16px;padding:8px 12px;font-family:var(--font-sans);font-size:12px;font-weight:600;color:var(--text-muted);border-bottom:1px solid var(--border);background:var(--surface-1);position:sticky;top:0}.diff-head .add{color:var(--success)}.diff-head .del{color:var(--danger)}.diff li{display:grid;grid-template-columns:18px minmax(0,1fr);padding:0 12px 0 8px;white-space:pre}.diff li .sig{color:var(--text-subtle);-webkit-user-select:none;user-select:none}.diff li.add{background:color-mix(in srgb,var(--success) 13%,transparent)}.diff li.add .sig{color:var(--success);font-weight:700}.diff li.del{background:color-mix(in srgb,var(--danger) 12%,transparent)}.diff li.del .sig{color:var(--danger);font-weight:700}.chain{border:1px solid var(--border);border-radius:var(--radius-md);padding:12px 14px;font-size:13px}.chain .kv{grid-template-columns:90px minmax(0,1fr)}.chain .kv dd{font-family:var(--font-mono);font-size:12px}.account-page{padding-block:var(--space-4) var(--space-10)}.account-page .tabs{margin:var(--space-3) 0 var(--space-4)}.settings-section{display:grid;gap:var(--space-2);grid-template-columns:1fr;padding-block:var(--space-3);border-top:1px solid var(--border)}.settings-section:first-child{border-top:0;padding-top:0}@media(min-width:1024px){.settings-section{grid-template-columns:300px minmax(0,1fr);gap:var(--space-4)}}.settings-section>header h2{font-size:var(--text-lg);font-weight:600}.settings-section>header p{color:var(--text-muted);font-size:var(--text-sm);margin-top:4px}.settings-body{display:flex;flex-direction:column;gap:var(--space-2);max-width:640px}.push-devices{list-style:none;margin:0;padding:0;display:flex;flex-direction:column}.push-device{display:flex;align-items:center;justify-content:space-between;gap:var(--space-2);padding-block:10px;border-bottom:1px solid var(--border)}.push-device:last-child{border-bottom:0}.push-device-text{display:flex;flex-direction:column;gap:2px;min-width:0}.push-device-text strong{overflow-wrap:anywhere}.qr-box{display:grid;gap:var(--space-3);grid-template-columns:1fr;align-items:start}@media(min-width:640px){.qr-box{grid-template-columns:200px minmax(0,1fr)}}.qr-img{width:200px;height:200px;padding:12px;background:#fff;border-radius:var(--radius-md)}.qr-img img{width:100%;height:100%;image-rendering:pixelated}.secret{font-family:var(--font-mono);font-size:15px;letter-spacing:.06em;padding:10px 12px;border-radius:var(--radius-sm);background:var(--surface-2);border:1px solid var(--border);word-break:break-all;-webkit-user-select:all;user-select:all}.recovery-codes{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px 16px;padding:var(--space-2);border-radius:var(--radius-md);background:var(--surface-2);border:1px solid var(--border);font-family:var(--font-mono);font-size:15px}.recovery-codes li{font-variant-numeric:tabular-nums}.switch-row{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:4px var(--space-2);padding:var(--space-2) 0;border-top:1px solid var(--border);align-items:start}.switch-row:first-child{border-top:0}.switch-row .switch-text strong{display:block;font-weight:600}.switch-row .switch-text span{color:var(--text-muted);font-size:var(--text-sm)}.switch{position:relative;display:inline-flex;width:52px;height:44px;align-items:center;cursor:pointer;flex:none}.switch input{position:absolute;top:0;right:0;bottom:0;left:0;opacity:0;margin:0;cursor:pointer;z-index:1}.switch .track{pointer-events:none}.switch-row label.switch-text{display:block;cursor:pointer}.switch-row .switch-text .switch-effect,.effect-line{display:flex;gap:6px;margin-top:4px;color:var(--text);font-size:var(--text-sm)}.switch-row .switch-text .switch-effect:before,.effect-line:before{content:"→" / "";color:var(--interactive);font-weight:700;flex:none}.switch-row:has(input:disabled) label.switch-text{cursor:default}.switch .track{width:44px;height:26px;border-radius:13px;background:var(--surface-3);border:1px solid var(--border-strong);position:relative;transition:background var(--dur-fast) var(--ease-standard)}.switch .track:after{content:"";position:absolute;top:3px;left:3px;width:18px;height:18px;border-radius:50%;background:var(--text-muted);transition:transform var(--dur-fast) var(--ease-standard),background var(--dur-fast)}.switch input:checked+.track{background:var(--accent);border-color:var(--accent)}.switch input:checked+.track:after{transform:translate(18px);background:var(--on-accent)}.switch input:focus-visible+.track{outline:2px solid var(--focus);outline-offset:2px}.switch input:disabled+.track{opacity:.5}.perm-groups{display:grid;gap:var(--space-2);grid-template-columns:1fr}@media(min-width:640px){.perm-groups{grid-template-columns:1fr 1fr}}.perm-group{border:1px solid var(--border);border-radius:var(--radius-md);padding:12px 14px;display:flex;flex-direction:column;gap:6px}.perm-group legend{font-size:12px;font-weight:700;letter-spacing:var(--tracking-caps);text-transform:uppercase;color:var(--text-subtle);padding:0 4px}.perm-group .check{min-height:32px;align-items:center}.role-list{display:grid;gap:var(--space-2)}.role-card{padding:var(--space-2) var(--space-3);display:grid;gap:6px 16px;grid-template-columns:minmax(0,1fr) auto;align-items:start}.role-card h3{font-size:16px;font-weight:600;display:flex;gap:8px;align-items:center;flex-wrap:wrap}.role-card p{margin:0;color:var(--text-muted);font-size:13px}.role-card .role-actions{display:flex;gap:4px}.role-card details{grid-column:1 / -1;font-size:13px}.role-card summary{cursor:pointer;color:var(--interactive);font-weight:500;min-height:32px;display:inline-flex;align-items:center}.role-card details ul{display:flex;flex-wrap:wrap;gap:6px;margin-top:6px}.status-banner{margin-bottom:var(--space-3)}.inline-status{display:inline-flex;align-items:center;gap:6px;font-size:12px;font-weight:500}.inline-status .lucide{width:14px;height:14px}.inline-status.ok{color:var(--success)}.inline-status.err{color:var(--danger)}.inline-status.pending{color:var(--text-muted)}.nf{text-align:left;display:flex;flex-direction:column;gap:var(--space-2);padding-block:var(--space-12)}.nf .code{font-family:var(--font-display);font-size:clamp(80px,16vw,160px);line-height:.9;color:var(--text-subtle)}.spinner-lg{width:28px;height:28px;border-radius:50%;border:2px solid var(--border-strong);border-top-color:var(--text);animation:spin .8s linear infinite}@media(prefers-reduced-motion:reduce){.spinner-lg,.btn .spinner{animation-duration:2.4s}}.field.has-adornment .control{padding-right:52px}.field .adornment{position:absolute;right:4px;top:4px}.field .adornment .icon-btn{width:44px;height:44px}.field .control[readonly]{color:var(--text-muted);background:transparent}.field .control:disabled{opacity:.6;cursor:not-allowed}.checkbox{display:flex;flex-direction:column;gap:4px}.checkbox .check{min-height:44px;align-items:center}.checkbox .check>span{display:flex;flex-direction:column;gap:2px;padding-block:10px}.checkbox .check-label{color:var(--text)}.checkbox .check-desc{font-size:12px;color:var(--text-muted)}.check input[aria-invalid=true]{outline:2px solid var(--danger);outline-offset:1px}.field-error{display:flex;gap:6px;align-items:center;font-size:12px;font-weight:500;color:var(--danger);margin:0}.field-error .lucide{width:14px;height:14px}.option-text{display:flex;flex-direction:column;gap:2px;min-width:0}.option-text strong{font-weight:600;font-size:var(--text-sm)}.option-text small{color:var(--text-muted);font-size:12.5px}.option{min-height:56px}.stretched:after{content:"";position:absolute;top:0;right:0;bottom:0;left:0;border-radius:inherit}.stretched:focus-visible{outline:none}.quick-link:has(.stretched:focus-visible){outline:2px solid var(--focus);outline-offset:2px}.inline-status.pending .lucide{animation:spin 1s linear infinite}.toast-error .lucide:first-child{color:var(--danger)}.toast-info .lucide:first-child{color:var(--info)}.toast .toast-close{width:36px;height:36px;margin:-6px -6px -6px 0}.toast .toast-close .lucide{color:var(--text-muted)}.empty .lucide{width:20px;height:20px;margin-bottom:0}.empty .btn-sm .lucide{width:16px;height:16px}.field textarea.control{height:auto;min-height:104px;padding-top:26px;line-height:1.5;resize:vertical}.brand{gap:0;line-height:0;color:var(--text)}.brand-wordmark{display:block;flex:none;fill:currentColor}.sidebar .brand-wordmark{height:22px;width:auto}.sup-narrow{max-width:760px}.sup-page .back-link{margin:0 0 var(--space-1);font-size:14px}.sup-page .back-link .link{text-decoration:none}.sup-page .back-link .link:hover{text-decoration:underline}.sup-title{font-size:var(--text-lg);font-weight:600;margin:0 0 4px;overflow-wrap:anywhere}.sup-h2{font-size:var(--text-md);font-weight:600;margin:0 0 var(--space-1-5)}.sup-h3{font-size:var(--text-md);font-weight:600;margin:0;overflow-wrap:anywhere}.sup-strong{font-weight:600}.sup-actions{display:flex;flex-wrap:wrap;gap:8px;margin-top:var(--space-2)}.sup-row{display:grid;gap:var(--space-2);grid-template-columns:minmax(0,1fr)}@media(min-width:560px){.sup-row{grid-template-columns:repeat(2,minmax(0,1fr))}}.sup-form{margin-top:var(--space-3)}.sup-hp{position:absolute!important;left:-10000px;top:auto;width:1px;height:1px;overflow:hidden}.sup-missing{color:var(--warning);font-weight:400;font-size:var(--text-sm)}.icon-xs{display:inline-block;width:14px;height:14px;vertical-align:-2px}.sup-faq-tools{display:flex;flex-direction:column;gap:var(--space-2);margin:var(--space-3) 0}.sup-search{position:relative}@media(min-width:720px){.sup-faq-tools{flex-direction:row;align-items:center;justify-content:space-between}.sup-search{flex:1 1 280px;max-width:480px}}.sup-search svg{position:absolute;left:12px;top:50%;transform:translateY(-50%);color:var(--text-subtle);pointer-events:none}.sup-search .control{padding-left:38px;min-height:var(--size-touch-min);width:100%}.sup-faq-cat{margin-bottom:var(--space-4)}.sup-faq-list{display:flex;flex-direction:column;border-top:1px solid var(--border)}.sup-faq-item{border-bottom:1px solid var(--border)}.sup-faq-item>summary{cursor:pointer;padding:14px 32px 14px 0;font-weight:600;min-height:var(--size-touch-min);position:relative;list-style:none;overflow-wrap:anywhere}.sup-faq-item>summary::-webkit-details-marker{display:none}.sup-faq-item>summary:after{content:"+";position:absolute;right:4px;top:12px;font-size:20px;line-height:1;color:var(--text-subtle)}.sup-faq-item[open]>summary:after{content:"–"}.sup-faq-item>summary:focus-visible{outline:var(--border-width-focus) solid var(--focus);outline-offset:2px}.sup-faq-answer{padding:0 0 var(--space-2)}.sup-faq-answer>:last-child{margin-bottom:0}.sup-faq-more{margin-top:var(--space-4)}.sup-facts{display:flex;flex-wrap:wrap;align-items:center;gap:2px 4px;margin:0 0 var(--space-2)}.sup-conv{display:flex;flex-direction:column;overflow:hidden}.sup-thread{list-style:none;margin:0;padding:var(--space-2);display:flex;flex-direction:column;gap:10px;max-height:min(60vh,560px);overflow-y:auto}.sup-thread-end{height:1px}.sup-msg{max-width:88%;padding:8px 12px;border-radius:var(--radius-lg);border:1px solid var(--border);background:var(--surface-2)}.sup-mine{align-self:flex-end;background:var(--surface-3)}.sup-theirs{align-self:flex-start}.sup-internal{border-style:dashed;background:transparent;align-self:stretch;max-width:none}.sup-msg-head{display:flex;flex-wrap:wrap;gap:2px 8px;align-items:baseline;justify-content:space-between;font-size:12px;color:var(--text-muted);margin-bottom:2px}.sup-msg-who{font-weight:600;display:inline-flex;align-items:center;gap:4px}.sup-msg-text{margin:0;white-space:pre-line;overflow-wrap:anywhere}.sup-msg-flag{display:inline-flex;align-items:center;gap:4px;font-size:12px;color:var(--text-subtle);margin-top:4px}.sup-composer{display:flex;flex-direction:column;gap:8px;padding:var(--space-1-5) var(--space-2);border-top:1px solid var(--border)}.sup-composer-row{display:flex;gap:8px;align-items:flex-end}.sup-composer-input{flex:1 1 auto;min-width:0;min-height:var(--size-touch-min);resize:vertical}@media(max-width:479px){.sup-send-label{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0)}}.sup-list{list-style:none;margin:var(--space-2) 0 0;padding:0;display:flex;flex-direction:column;gap:8px}.sup-list-item{display:flex;flex-direction:column;gap:4px;padding:12px 14px;border:1px solid var(--border);border-radius:var(--radius-md);background:var(--surface-1);color:inherit;text-decoration:none}.sup-list-item:hover{border-color:var(--border-strong)}.sup-list-item:focus-visible{outline:var(--border-width-focus) solid var(--focus);outline-offset:2px}.sup-list-head{display:flex;align-items:baseline;justify-content:space-between;gap:8px}.sup-list-subject{font-weight:600;overflow-wrap:anywhere}.sup-unread .sup-list-subject{color:var(--accent-text)}.sup-dot{flex:none;font-size:12px;font-weight:600;color:var(--accent-text)}.sup-list-meta{display:flex;flex-wrap:wrap;gap:2px 12px;font-size:13px;color:var(--text-muted)}.sup-fab{position:fixed;right:16px;bottom:calc(16px + env(safe-area-inset-bottom,0px));z-index:var(--z-sticky);display:inline-flex;align-items:center;gap:8px;min-height:48px;min-width:48px;padding:0 14px;border-radius:var(--radius-pill);border:0;background:var(--accent);color:var(--on-accent);font:inherit;font-weight:600;cursor:pointer;box-shadow:var(--shadow-float)}.sup-fab:hover{background:var(--accent-hover)}.sup-fab[hidden]{display:none}@media(max-width:1023px){body:has(.buy-bar,.sh-buybar) .sup-fab{bottom:calc(96px + env(safe-area-inset-bottom,0px))}}.sup-fab:focus-visible{outline:var(--border-width-focus) solid var(--focus);outline-offset:3px}.sup-fab svg{width:22px;height:22px}@media(max-width:479px){.sup-fab{padding:0;justify-content:center}.sup-fab-label{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0)}}.sup-fab-dot{position:absolute;top:4px;right:4px;width:12px;height:12px;border-radius:50%;background:var(--danger);border:2px solid var(--bg)}.sup-panel{position:fixed;top:0;right:0;bottom:0;left:0;z-index:var(--z-sheet);display:flex;flex-direction:column;background:var(--surface-1);padding-bottom:env(safe-area-inset-bottom,0px)}@media(min-width:560px){.sup-panel{inset:auto 16px 16px auto;width:380px;height:min(620px,calc(100vh - 32px));border:1px solid var(--border);border-radius:var(--radius-xl);box-shadow:var(--shadow-float);overflow:hidden}}.sup-panel-head{display:flex;align-items:center;gap:4px;padding:10px 8px 10px 16px;border-bottom:1px solid var(--border)}.sup-panel-title{font-size:var(--text-md);font-weight:600;margin:0}.sup-panel-sub{margin:0;font-size:12px;color:var(--text-muted);display:flex;flex-wrap:wrap;align-items:center;gap:0 6px}.sup-panel-body{flex:1 1 auto;overflow-y:auto;display:flex;flex-direction:column;min-height:0}.sup-start{display:flex;flex-direction:column;gap:var(--space-1-5);padding:var(--space-2)}.sup-chat{display:flex;flex-direction:column;flex:1 1 auto;min-height:0}.sup-chat .sup-thread{flex:1 1 auto;max-height:none}.sup-chat-hint{padding:0 var(--space-2);margin:0 0 8px}.sup-suggest{border:1px solid var(--border);border-radius:var(--radius-md);padding:8px 12px;background:var(--surface-2)}.sup-suggest-title{display:flex;align-items:center;gap:6px;margin:0 0 4px;font-size:13px;font-weight:600}.sup-suggest .sup-faq-item:last-child{border-bottom:0}.toolbar .sup-filter{flex:1 1 150px;min-width:0}.sup-counts{list-style:none;margin:0 0 var(--space-2);padding:0;display:flex;flex-wrap:wrap;gap:6px 16px;font-size:var(--text-sm);color:var(--text-muted)}.sup-counts strong{color:var(--text);font-size:var(--text-md)}.sup-awaiting{color:var(--warning);font-weight:600}.sup-tags{display:inline-flex;flex-wrap:wrap;gap:4px}.sup-tag{display:inline-flex;align-items:center;gap:2px;padding:1px 8px;border-radius:var(--radius-pill);font-size:12px;font-weight:600;border:1px solid var(--border-strong);white-space:nowrap}.sup-tag-technical{border-color:var(--info);color:var(--info)}.sup-tag-business{border-color:var(--notice);color:var(--notice)}.sup-tag-organization{background:var(--surface-3)}.sup-layout{display:grid;gap:var(--space-2);grid-template-columns:minmax(0,1fr);margin-top:var(--space-2)}@media(min-width:960px){.sup-layout{grid-template-columns:minmax(0,3fr) minmax(280px,2fr);align-items:start}}.sup-kv{grid-template-columns:minmax(96px,38%) minmax(0,1fr)}.sup-kv .sub{display:block;font-size:12px;color:var(--text-muted);overflow-wrap:anywhere}.sup-reply-note{border-style:dashed}.sup-faq-admin{margin-bottom:var(--space-4)}.sup-faq-admin-head{display:flex;align-items:center;justify-content:space-between;gap:8px;margin-bottom:8px}.sup-faq-admin-cat{margin-bottom:var(--space-2)}.sup-faq-admin-list{list-style:none;margin:0 0 8px;padding:0}.sup-faq-admin-list li{display:flex;align-items:center;gap:8px;padding:8px 0;border-bottom:1px solid var(--border)}.sup-faq-admin-list li:last-child{border-bottom:0}.sup-faq-admin-list .grow{min-width:0;overflow-wrap:anywhere}.sup-faq-admin-list .sub{display:block;font-size:12px;color:var(--text-muted)}.sup-row-actions{display:inline-flex;flex:none}.sup-page .status.info,.sup-panel .status.info{display:inline-flex;grid-template-columns:none;gap:6px;padding:0;border-bottom:0}.public-page{min-height:100vh;display:flex;flex-direction:column;overflow-x:clip}.public-page>main{flex:1 0 auto}.nav .nav-links a{display:inline-flex;align-items:center;min-height:44px}.nav .nav-links a.active{color:var(--text)}.nav-mobile-menu{position:relative}@media(min-width:1024px){.nav-mobile-menu{display:none}}.nav-mobile-menu .menu{min-width:220px}.nav-register{display:none}@media(min-width:480px){.nav-register{display:inline-flex}}.nav .container{gap:var(--space-2)}@media(min-width:768px){.nav .container{gap:var(--space-3)}}.site-footer{border-top:1px solid var(--border);padding-block:var(--space-6) var(--space-4);color:var(--text-muted);font-size:var(--text-sm);margin-top:var(--space-6)}.site-footer .cols{display:grid;gap:var(--space-4);grid-template-columns:repeat(2,minmax(0,1fr))}.site-footer .cols>:first-child{grid-column:1 / -1}@media(min-width:768px){.site-footer .cols{grid-template-columns:2fr repeat(4,minmax(0,1fr))}.site-footer .cols>:first-child{grid-column:auto}}.site-footer-claim{margin-top:var(--space-2);max-width:36ch}.site-footer-h{color:var(--text);font-size:var(--text-sm);font-weight:600;font-family:var(--font-sans);margin-bottom:var(--space-1-5)}.site-footer ul{list-style:none;padding:0;margin:0}.site-footer li{margin-bottom:var(--space-1)}.site-footer a{display:inline-flex;min-height:32px;align-items:center}.site-footer a:hover{color:var(--text);text-decoration:underline;text-underline-offset:3px}.site-footer-legal li{color:var(--text-subtle)}.site-footer-bottom{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:var(--space-2);margin-top:var(--space-6);padding-top:var(--space-3);border-top:1px solid var(--border);color:var(--text-subtle);font-size:var(--text-xs)}
