.cdk-overlay-container,.cdk-global-overlay-wrapper{pointer-events:none;top:0;left:0;height:100%;width:100%}.cdk-overlay-container{position:fixed;z-index:1000}.cdk-overlay-container:empty{display:none}.cdk-global-overlay-wrapper{display:flex;position:absolute;z-index:1000}.cdk-overlay-pane{position:absolute;pointer-events:auto;box-sizing:border-box;display:flex;max-width:100%;max-height:100%;z-index:1000}.cdk-overlay-backdrop{position:absolute;inset:0;pointer-events:auto;-webkit-tap-highlight-color:transparent;opacity:0;touch-action:manipulation;z-index:1000;transition:opacity .4s cubic-bezier(.25,.8,.25,1)}@media(prefers-reduced-motion){.cdk-overlay-backdrop{transition-duration:1ms}}.cdk-overlay-backdrop-showing{opacity:1}@media(forced-colors:active){.cdk-overlay-backdrop-showing{opacity:.6}}.cdk-overlay-dark-backdrop{background:#00000052}.cdk-overlay-transparent-backdrop{transition:visibility 1ms linear,opacity 1ms linear;visibility:hidden;opacity:1}.cdk-overlay-transparent-backdrop.cdk-overlay-backdrop-showing,.cdk-high-contrast-active .cdk-overlay-transparent-backdrop{opacity:0;visibility:visible}.cdk-overlay-backdrop-noop-animation{transition:none}.cdk-overlay-connected-position-bounding-box{position:absolute;display:flex;flex-direction:column;min-width:1px;min-height:1px;z-index:1000}.cdk-global-scrollblock{position:fixed;width:100%;overflow-y:scroll}.cdk-overlay-popover{background:none;border:none;padding:0;outline:0;overflow:visible;position:fixed;pointer-events:none;white-space:normal;color:inherit;text-decoration:none;width:100%;height:100%;inset:0 auto auto 0}.cdk-overlay-popover::backdrop{display:none}.cdk-overlay-popover .cdk-overlay-backdrop{position:fixed;z-index:auto}@font-face{font-family:Geist;font-style:normal;font-weight:300 600;font-display:swap;src:url(/fonts/geist-latin-ext.woff2) format("woff2");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-20C4,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Geist;font-style:normal;font-weight:300 600;font-display:swap;src:url(/fonts/geist-latin.woff2) format("woff2");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:Geist Mono;font-style:normal;font-weight:400 500;font-display:swap;src:url(/fonts/geist-mono-latin-ext.woff2) format("woff2");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-20C4,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Geist Mono;font-style:normal;font-weight:400 500;font-display:swap;src:url(/fonts/geist-mono-latin.woff2) format("woff2");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:"Instrument Serif";font-style:italic;font-weight:400;font-display:swap;src:url(/fonts/instrument-serif-italic-latin-ext.woff2) format("woff2");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-20C4,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:"Instrument Serif";font-style:italic;font-weight:400;font-display:swap;src:url(/fonts/instrument-serif-italic-latin.woff2) format("woff2");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:"Instrument Serif";font-style:normal;font-weight:400;font-display:swap;src:url(/fonts/instrument-serif-latin-ext.woff2) format("woff2");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-20C4,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:"Instrument Serif";font-style:normal;font-weight:400;font-display:swap;src:url(/fonts/instrument-serif-latin.woff2) format("woff2");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{color-scheme:dark;--color-bg: #0a0b0c;--color-sidebar: #0d0e10;--color-surface: #121416;--color-surface-2: #1a1d20;--color-surface-3: #23272b;--color-border: rgb(255 255 255 / .08);--color-border-strong: rgb(255 255 255 / .14);--color-divider: rgb(255 255 255 / .06);--color-highlight: rgb(255 255 255 / .06);--color-text: #f3f4f5;--color-text-soft: #c9cdd1;--color-text-muted: #a3a9af;--color-text-subtle: #7c838a;--color-primary: #f3f4f5;--color-primary-hover: #ffffff;--color-primary-soft: rgb(255 255 255 / .08);--color-on-primary: #0a0b0c;--color-better: #8ec5ff;--color-worse: #ffb27a;--color-success: var(--color-better);--color-warning: var(--color-worse);--color-danger: #ff8f7a;--color-danger-soft: rgb(255 143 122 / .12);--chart-1: #f3f4f5;--chart-2: #a3a9af;--chart-3: rgb(255 255 255 / .35);--chart-4: rgb(255 255 255 / .18);--chart-5: #7c838a;--chart-grid: rgb(255 255 255 / .06);--chart-heat-0: rgb(255 255 255 / .05);--chart-heat-1: rgb(255 255 255 / .3);--chart-heat-2: rgb(255 255 255 / .6);--chart-heat-3: #f3f4f5;--font-sans: "Geist", system-ui, -apple-system, "Segoe UI", sans-serif;--font-mono: "Geist Mono", ui-monospace, "SFMono-Regular", Menlo, monospace;--font-display: "Instrument Serif", Georgia, serif;--font-size-xs: .75rem;--font-size-sm: .8125rem;--font-size-md: .9375rem;--font-size-lg: 1.0625rem;--font-size-xl: 1.375rem;--font-size-2xl: 2.125rem;--font-size-label: .6875rem;--font-size-kpi-sm: 1.875rem;--font-size-kpi: 2.5rem;--font-size-kpi-lg: 3.25rem;--font-weight-light: 300;--font-weight-normal: 400;--font-weight-medium: 500;--font-weight-bold: 600;--letter-spacing-label: .12em;--letter-spacing-kpi: -.03em;--space-1: .25rem;--space-2: .5rem;--space-3: .75rem;--space-4: 1rem;--space-5: 1.25rem;--space-6: 1.5rem;--space-8: 2rem;--space-12: 3rem;--radius-sm: 8px;--radius-md: 14px;--radius-lg: 20px;--radius-full: 999px;--card-bg: linear-gradient(180deg, rgb(255 255 255 / .04), rgb(255 255 255 / .01)), var(--color-surface);--shadow-sm: inset 0 1px 0 var(--color-highlight);--shadow-md: inset 0 1px 0 var(--color-highlight);--glow-fab: 0 0 0 6px var(--color-bg), 0 0 24px rgb(255 255 255 / .2);--glow-figure: radial-gradient(circle, rgb(255 255 255 / .1), rgb(255 255 255 / 0) 65%);--glow-dot: 0 0 0 4px rgb(255 255 255 / .15), 0 0 12px rgb(255 255 255 / .6);--fab-bg: radial-gradient(circle at 50% 35%, #2a2e33, var(--color-bg));--fab-border: rgb(255 255 255 / .5);--shadow-float: 0 16px 48px rgb(0 0 0 / .55);--color-overlay: rgb(0 0 0 / .6);--color-handle: rgb(255 255 255 / .2);--color-line: rgb(255 255 255 / .35);--color-bar-track: rgb(255 255 255 / .08);--color-nav-bg: rgb(10 11 12 / .92);--content-max-width: 1180px;--sidebar-width: 240px;--bottom-nav-height: 72px;--touch-target: 44px;--breakpoint-desktop: 960px;--transition: .15s ease}*,*:before,*:after{box-sizing:border-box}html{-webkit-text-size-adjust:100%;-webkit-tap-highlight-color:transparent}body{margin:0;min-height:100dvh;background:var(--color-bg);color:var(--color-text);font-family:var(--font-sans);font-size:var(--font-size-md);line-height:1.5;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}h1,h2,h3{margin:0;line-height:1.2;font-weight:var(--font-weight-medium)}h1{font-family:var(--font-display);font-size:var(--font-size-2xl);font-weight:var(--font-weight-normal);line-height:1.05}h2{font-size:var(--font-size-lg)}h3{font-size:var(--font-size-md)}p{margin:0}a{color:var(--color-text);text-decoration:none}::selection{background:var(--color-primary-soft)}:focus-visible{outline:2px solid var(--color-text);outline-offset:2px}.muted{color:var(--color-text-muted)}.subtle{color:var(--color-text-subtle)}.soft{color:var(--color-text-soft)}.small{font-size:var(--font-size-sm)}.tabular{font-variant-numeric:tabular-nums}.better,.positive{color:var(--color-better)}.worse{color:var(--color-worse)}.negative{color:var(--color-danger)}.label{font-family:var(--font-mono);font-size:var(--font-size-label);font-weight:var(--font-weight-normal);letter-spacing:var(--letter-spacing-label);text-transform:uppercase;color:var(--color-text-muted)}.kpi{font-size:var(--font-size-kpi);font-weight:var(--font-weight-light);letter-spacing:var(--letter-spacing-kpi);line-height:1;font-variant-numeric:tabular-nums}.kpi .unit{margin-left:var(--space-1);font-size:.36em;letter-spacing:0;color:var(--color-text-muted)}.serif{font-family:var(--font-display);font-weight:var(--font-weight-normal)}.logo{font-family:var(--font-display);font-style:italic;font-weight:var(--font-weight-normal);color:var(--color-text)}.visually-hidden{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}.stack{display:flex;flex-direction:column;gap:var(--space-4)}.stack-sm{display:flex;flex-direction:column;gap:var(--space-2)}.row{display:flex;align-items:center;gap:var(--space-3)}.row-between{display:flex;align-items:center;justify-content:space-between;gap:var(--space-3)}.wrap{flex-wrap:wrap}.grow{flex:1;min-width:0}.grid-tiles{display:grid;gap:10px;grid-template-columns:repeat(2,minmax(0,1fr))}@media(min-width:960px){.grid-tiles{gap:var(--space-4);grid-template-columns:repeat(auto-fill,minmax(200px,1fr))}}.grid-2{display:grid;gap:var(--space-4);grid-template-columns:1fr}@media(min-width:960px){.grid-2{grid-template-columns:1fr 1fr}}.grid-cards{display:grid;gap:var(--space-4);grid-template-columns:repeat(auto-fit,minmax(min(100%,360px),1fr))}.section-title{margin:var(--space-2) 0 0;color:var(--color-text)}.card{padding:18px;border:1px solid var(--color-border);border-radius:var(--radius-lg);background:var(--card-bg);box-shadow:var(--shadow-sm);min-width:0}.btn{display:inline-flex;align-items:center;justify-content:center;gap:6px;min-height:var(--touch-target);padding:0 var(--space-4);border:1px solid var(--color-border-strong);border-radius:var(--radius-full);background:#ffffff0d;color:var(--color-text);font:inherit;font-size:var(--font-size-md);font-weight:var(--font-weight-medium);line-height:1;cursor:pointer;transition:background var(--transition),border-color var(--transition),color var(--transition);text-decoration:none;white-space:nowrap}.btn:hover:not(:disabled){background:var(--color-primary-soft)}.btn:disabled{opacity:.45;cursor:not-allowed}.btn-primary{border-color:transparent;background:var(--color-primary);color:var(--color-on-primary)}.btn-primary:hover:not(:disabled){background:var(--color-primary-hover)}.btn-text,.btn-ghost{border-color:transparent;background:transparent;color:var(--color-text-muted)}.btn-text:hover:not(:disabled),.btn-ghost:hover:not(:disabled){color:var(--color-text);background:var(--color-primary-soft)}.btn-danger{color:var(--color-danger)}.btn-danger:hover:not(:disabled){color:var(--color-danger);background:var(--color-danger-soft)}.btn-block{width:100%}.btn-sm{min-height:36px;padding:0 var(--space-3);font-size:var(--font-size-sm)}.btn-icon{flex-shrink:0;padding:0;width:var(--touch-target)}.btn-sm.btn-icon{width:36px}.chips{display:flex;flex-wrap:wrap;gap:var(--space-2)}.chip{display:inline-flex;align-items:center;height:32px;padding:0 var(--space-3);border:1px solid rgba(255,255,255,.12);border-radius:var(--radius-full);background:transparent;color:var(--color-text-muted);font:inherit;font-size:var(--font-size-sm);cursor:pointer;transition:border-color var(--transition),background var(--transition),color var(--transition)}.chip.active{border-color:var(--color-text);background:var(--color-primary-soft);color:var(--color-text)}.toggle-switch{appearance:none;position:relative;flex-shrink:0;width:44px;height:26px;margin:0;border:1px solid var(--color-border-strong);border-radius:var(--radius-full);background:var(--color-bg);cursor:pointer;transition:background var(--transition),border-color var(--transition)}.toggle-switch:after{content:"";position:absolute;top:3px;left:3px;width:18px;height:18px;border-radius:var(--radius-full);background:var(--color-text-muted);transition:transform var(--transition),background var(--transition)}.toggle-switch:checked{border-color:transparent;background:var(--color-primary)}.toggle-switch:checked:after{transform:translate(18px);background:var(--color-on-primary)}.toggle-switch:disabled{opacity:.45;cursor:not-allowed}.field{display:flex;flex-direction:column;gap:var(--space-2)}.field>label,.field>.label{font-family:var(--font-mono);font-size:var(--font-size-label);font-weight:var(--font-weight-normal);letter-spacing:var(--letter-spacing-label);text-transform:uppercase;color:var(--color-text-muted)}.field>label .muted,.field>.label .muted{text-transform:none;letter-spacing:0;font-family:var(--font-sans);color:var(--color-text-subtle)}.input,select.input,textarea.input{width:100%;min-height:52px;padding:var(--space-2) var(--space-4);border:1px solid var(--color-border-strong);border-radius:var(--radius-md);background:var(--color-bg);color:var(--color-text);font:inherit;font-size:var(--font-size-md);transition:border-color var(--transition)}.input:focus,select.input:focus,textarea.input:focus{outline:none;border-color:var(--color-text)}.input::placeholder,select.input::placeholder,textarea.input::placeholder{color:var(--color-text-subtle)}.input-number{font-size:var(--font-size-xl);font-weight:var(--font-weight-light);font-variant-numeric:tabular-nums}select.input{appearance:none;padding-right:var(--space-8);background-image:linear-gradient(45deg,transparent 50%,currentColor 50%),linear-gradient(135deg,currentColor 50%,transparent 50%);background-position:calc(100% - 20px) 50%,calc(100% - 15px) 50%;background-size:5px 5px;background-repeat:no-repeat}textarea.input{min-height:96px;padding-top:var(--space-3);resize:vertical}input[type=datetime-local].input,input[type=date].input{color-scheme:dark}.form-error{padding:var(--space-3) var(--space-4);border-radius:var(--radius-md);background:var(--color-danger-soft);color:var(--color-danger);font-size:var(--font-size-sm)}.list{margin:0;padding:0;list-style:none}.list>li+li{border-top:1px solid var(--color-divider)}.setting-row{display:flex;align-items:center;justify-content:space-between;gap:var(--space-3);min-height:52px;padding:var(--space-3) 0}.badge{display:inline-flex;align-items:center;height:20px;padding:0 6px;border-radius:6px;background:var(--color-highlight);color:var(--color-text-muted);font-family:var(--font-mono);font-size:.625rem;font-weight:var(--font-weight-medium);letter-spacing:.08em;text-transform:uppercase;line-height:1;white-space:nowrap}.bar-track{display:block;height:3px;border-radius:3px;background:var(--color-bar-track)}.bar-track>span{display:block;height:100%;border-radius:inherit;background:var(--color-text)}.icon-tile{display:grid;place-items:center;flex-shrink:0;width:40px;height:40px;border:1px solid var(--color-border);border-radius:12px;background:var(--color-surface-2);color:var(--color-text)}.sheet-panel{width:100%;max-width:560px!important}.sheet-panel .cdk-dialog-container{position:relative;max-height:85dvh;overflow:auto;padding-top:var(--space-3);border:1px solid var(--color-border);border-bottom:0;border-radius:var(--radius-lg) var(--radius-lg) 0 0;background:var(--color-surface);box-shadow:var(--shadow-float);outline:none}.sheet-panel .cdk-dialog-container:before{content:"";display:block;width:36px;height:4px;margin:0 auto var(--space-1);border-radius:var(--radius-full);background:var(--color-handle)}@media(min-width:960px){.sheet-panel .cdk-dialog-container{border-bottom:1px solid var(--color-border);border-radius:var(--radius-lg)}.sheet-panel .cdk-dialog-container:before{display:none}}.sheet-panel.sheet-wide{max-width:1160px!important}.sheet-panel.sheet-wide .cdk-dialog-container{display:flex;flex-direction:column;height:92dvh;max-height:none;overflow:hidden}@media(min-width:960px){.sheet-panel.sheet-wide{width:calc(100vw - 48px)}.sheet-panel.sheet-wide .cdk-dialog-container{height:min(800px,100dvh - 48px);padding-top:0}}.sheet-panel.sheet-text{max-width:720px!important}.sheet-panel.sheet-text .cdk-dialog-container{max-height:90dvh;padding-top:var(--space-2)}.sheet-backdrop{background:var(--color-overlay)}.tier-swatch{width:12px;height:12px;flex-shrink:0;border-radius:4px}.tier-swatch.t3{background:var(--color-better);box-shadow:0 0 8px color-mix(in srgb,var(--color-better) 70%,transparent)}.tier-swatch.t2{background:color-mix(in srgb,var(--color-better) 50%,transparent)}.tier-swatch.t1{background:color-mix(in srgb,var(--color-better) 22%,transparent);border:1px solid color-mix(in srgb,var(--color-better) 45%,transparent)}
