@property --spot{syntax: "<color>"; inherits: true; initial-value: transparent;}:root{color-scheme:dark;--bg-0: #070a0e;--bg-1: #0b1016;--bg-2: #10161e;--bg: var(--bg-0);--bg-elevated: var(--bg-2);--surface: rgba(16, 23, 31, .68);--surface-raised: rgba(22, 31, 41, .76);--surface-solid: #0e141b;--glass-blur: blur(18px) saturate(150%);--chrome-rail: rgba(11, 16, 22, .72);--chrome-bar: rgba(7, 10, 14, .7);--surface-inset: rgba(255, 255, 255, .028);--surface-hover: rgba(255, 255, 255, .055);--surface-sunken: rgba(0, 0, 0, .32);--border: rgba(148, 179, 200, .14);--border-strong: rgba(148, 179, 200, .24);--border-hover: rgba(148, 179, 200, .4);--text: #e8f0f5;--text-muted: #91a3b4;--text-subtle: #6d7f90;--accent: #00e0a4;--accent-strong: #3bf0bd;--accent-soft: rgba(0, 224, 164, .12);--accent-ring: rgba(0, 224, 164, .45);--accent-text: #4df0c4;--on-accent: #04241c;--positive: #34c98a;--positive-soft: rgba(52, 201, 138, .13);--negative: #ff5c7a;--negative-soft: rgba(255, 92, 122, .13);--warning: #ffb547;--warning-soft: rgba(255, 181, 71, .13);--info: #4cc4ff;--info-soft: rgba(76, 196, 255, .13);--success: var(--positive);--danger: var(--negative);--series-1: #35b6ff;--series-2: #ff8f4d;--series-3: #00d6a3;--series-4: #ffc94d;--series-5: #b98cff;--series-6: #7d93a8;--seq-100: #2d5f6b;--seq-300: #3f93a0;--seq-500: #4ac4b4;--seq-700: #8ff7dc;--risk-1: #4aa3d8;--risk-2: #35b39c;--risk-3: #c2a63c;--risk-4: #e08a44;--risk-5: #e0625f;--grid: rgba(148, 179, 200, .1);--glow-a: rgba(0, 224, 164, .13);--glow-b: rgba(53, 182, 255, .1);--glow-c: rgba(139, 110, 255, .07);--space-1: 4px;--space-2: 8px;--space-3: 12px;--space-4: 16px;--space-5: 24px;--space-6: 32px;--space-7: 48px;--page-pad: clamp(16px, 1.1vw + 12px, 28px);--section-gap: clamp(12px, .35vw + 10px, 16px);--card-pad: var(--space-4);--grid-gap: var(--space-3);--radius-sm: 6px;--radius-md: 9px;--radius-lg: 12px;--radius-xl: 18px;--radius-pill: 999px;--radius: var(--radius-lg);--edge: inset 0 1px 0 rgba(255, 255, 255, .09);--shadow-1: 0 1px 2px rgb(0 0 0 / .4);--shadow-2: 0 1px 2px rgb(0 0 0 / .35), 0 8px 24px -16px rgb(0 0 0 / .9);--shadow-3: 0 2px 6px rgb(0 0 0 / .45), 0 24px 48px -24px rgb(0 0 0 / .95);--shadow-4: 0 4px 12px rgb(0 0 0 / .5), 0 40px 80px -32px rgb(0 0 0 / 1);--shadow: var(--shadow-2);--shadow-lg: var(--shadow-3);--ring-accent: 0 0 0 1px var(--accent-ring), 0 0 24px -6px var(--accent-ring);--dur-1: .14s;--dur-2: .2s;--dur-3: .28s;--dur-4: .42s;--ease-out: cubic-bezier(.22, 1, .36, 1);--ease-panel: cubic-bezier(.32, .72, 0, 1);--font: "Inter", ui-sans-serif, system-ui, -apple-system, "Segoe UI", sans-serif;--font-display: "Space Grotesk", "Inter", ui-sans-serif, system-ui, sans-serif;--font-num: "Inter", ui-sans-serif, system-ui, sans-serif;--font-mono: "JetBrains Mono", ui-monospace, "SF Mono", Menlo, monospace;--fs-page: clamp(1.6rem, 1.2rem + 1.5vw, 2.25rem);--fs-section: 1.125rem;--fs-card: 1rem;--fs-body: .9375rem;--fs-small: .8125rem;--fs-caption: .75rem;--fs-label: .6875rem;--fs-stat: clamp(1.65rem, 1.2rem + 1.3vw, 2.15rem);--fs-stat-sm: 1.35rem;--lh-tight: 1.15;--lh-body: 1.6;--icon-sm: 16px;--icon-md: 18px;--nav-width: 248px;--header-height: 60px;--content-max: 1360px;--touch: 44px;--z-topbar: 20;--z-backdrop: 55;--z-drawer: 60;--z-dock: 70;--z-fab: 75;--z-palette: 90}:root[data-theme=light]{color-scheme:light;--bg-0: #e9eef4;--bg-1: #e2e9f1;--bg-2: #ffffff;--surface: rgba(255, 255, 255, .94);--surface-raised: #ffffff;--surface-solid: #ffffff;--chrome-rail: rgba(230, 236, 244, .86);--chrome-bar: rgba(233, 238, 244, .82);--surface-inset: rgba(13, 38, 59, .038);--surface-hover: rgba(13, 38, 59, .06);--surface-sunken: rgba(13, 38, 59, .07);--border: rgba(13, 38, 59, .11);--border-strong: rgba(13, 38, 59, .18);--border-hover: rgba(13, 38, 59, .3);--text: #0a1822;--text-muted: #46596a;--text-subtle: #617386;--accent: #007a62;--accent-strong: #00614e;--accent-soft: rgba(0, 122, 98, .11);--accent-ring: rgba(0, 122, 98, .4);--accent-text: #00614e;--on-accent: #ffffff;--positive: #0f7a52;--positive-soft: rgba(15, 122, 82, .1);--negative: #c02d4c;--negative-soft: rgba(192, 45, 76, .09);--warning: #9a6008;--warning-soft: rgba(154, 96, 8, .1);--info: #0b6f9e;--info-soft: rgba(11, 111, 158, .1);--series-1: #1557a0;--series-2: #b8541c;--series-3: #00806a;--series-4: #9a7508;--series-5: #6b45b0;--series-6: #4f6273;--seq-100: #cfe6e0;--seq-300: #85c3b5;--seq-500: #2f9584;--seq-700: #0d5b4e;--risk-1: #2d7fae;--risk-2: #1b8d78;--risk-3: #967b14;--risk-4: #b36624;--risk-5: #b5423d;--grid: rgba(11, 33, 46, .09);--glow-a: rgba(0, 150, 120, .16);--glow-b: rgba(40, 110, 190, .13);--glow-c: rgba(120, 80, 190, .09);--edge: inset 0 1px 0 rgba(255, 255, 255, .9);--shadow-1: 0 1px 2px rgb(13 38 59 / .08);--shadow-2: 0 1px 2px rgb(13 38 59 / .07), 0 6px 16px -10px rgb(13 38 59 / .22);--shadow-3: 0 2px 6px rgb(13 38 59 / .09), 0 18px 36px -16px rgb(13 38 59 / .28);--shadow-4: 0 6px 16px rgb(13 38 59 / .12), 0 34px 68px -26px rgb(13 38 59 / .34)}@media(min-width:1024px){:root{--card-pad: var(--space-5)}}*,*:before,*:after{box-sizing:border-box}html{background:var(--bg-0);-webkit-text-size-adjust:100%}html,body{margin:0;padding:0}body{min-height:100vh;min-height:100dvh;color:var(--text);font-family:var(--font);font-size:var(--fs-body);line-height:var(--lh-body);-webkit-font-smoothing:antialiased;text-rendering:optimizeLegibility}body:before{content:"";position:fixed;top:0;right:0;bottom:0;left:0;z-index:-1;pointer-events:none;background:radial-gradient(58rem 36rem at 86% -10%,var(--glow-a),transparent 62%),radial-gradient(54rem 38rem at -10% 34%,var(--glow-b),transparent 62%),radial-gradient(46rem 32rem at 46% 108%,var(--glow-c),transparent 60%)}h1,h2,h3,h4{margin:0;font-family:var(--font-display);line-height:var(--lh-tight);letter-spacing:-.022em;font-weight:600}h1{font-size:var(--fs-page);font-weight:700;letter-spacing:-.035em}h2{font-size:var(--fs-section)}h3{font-size:var(--fs-card)}p{margin:0 0 var(--space-3)}p:last-child{margin-bottom:0}a{color:var(--accent-text);text-decoration:none;text-underline-offset:3px;transition:color var(--dur-1) var(--ease-out)}a:hover{color:var(--accent-strong);text-decoration:underline}a.btn,a.btn:hover{color:var(--btn-fg);text-decoration:none}button,input,select,textarea{font:inherit;color:inherit}ul{margin:0;padding-left:var(--space-5)}dl,dd{margin:0}:focus-visible{outline:2px solid var(--accent);outline-offset:2px}::selection{background:var(--accent-soft)}*{scrollbar-width:thin;scrollbar-color:var(--border-strong) transparent}::-webkit-scrollbar{width:10px;height:10px}::-webkit-scrollbar-track{background:transparent}::-webkit-scrollbar-thumb{background:var(--border-strong);border-radius:var(--radius-pill);border:3px solid transparent;background-clip:content-box}::-webkit-scrollbar-thumb:hover{background:var(--border-hover);background-clip:content-box}::-webkit-scrollbar-corner{background:transparent}.num{font-family:var(--font-num);font-variant-numeric:tabular-nums;font-feature-settings:"tnum" 1;letter-spacing:-.02em}.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}.icon{width:var(--icon-size, var(--icon-sm));height:var(--icon-size, var(--icon-sm));flex-shrink:0}.app-shell{min-height:100vh;min-height:100dvh}.main{display:flex;flex-direction:column;min-width:0;min-height:100vh;min-height:100dvh}.sidebar{position:fixed;inset:0 auto 0 0;z-index:var(--z-drawer);width:min(var(--nav-width),84vw);display:flex;flex-direction:column;gap:var(--space-5);padding:calc(var(--space-5) + env(safe-area-inset-top)) var(--space-3) calc(var(--space-4) + env(safe-area-inset-bottom)) max(var(--space-3),env(safe-area-inset-left));overflow-y:auto;overscroll-behavior:contain;background:var(--chrome-rail);border-right:1px solid var(--border);box-shadow:var(--shadow-3);transform:translate(-100%);visibility:hidden;transition:transform var(--dur-3) var(--ease-out),visibility 0s linear var(--dur-3);-webkit-backdrop-filter:var(--glass-blur);backdrop-filter:var(--glass-blur)}.sidebar.open{transform:none;visibility:visible;transition:transform var(--dur-3) var(--ease-out)}.sidebar-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;z-index:var(--z-backdrop);border:0;padding:0;background:#02061799;animation:fade-in var(--dur-2) var(--ease-out)}.brand{display:flex;align-items:center;gap:var(--space-3);padding:0 var(--space-2) var(--space-4);border-bottom:1px solid var(--border)}.brand-mark{width:34px;height:34px;border-radius:var(--radius-md);background:linear-gradient(140deg,var(--accent-strong),var(--accent));color:var(--on-accent);display:grid;place-items:center;flex-shrink:0;box-shadow:0 0 18px -6px var(--accent-ring)}.brand-name{font-family:var(--font-display);font-weight:700;font-size:1.0625rem;letter-spacing:-.03em;line-height:1.15}.brand-sub{font-size:var(--fs-label);color:var(--text-subtle);text-transform:uppercase;letter-spacing:.07em;font-weight:600;white-space:nowrap}.nav-group{display:flex;flex-direction:column;gap:2px}.nav-label{font-size:var(--fs-label);text-transform:uppercase;letter-spacing:.1em;color:var(--text-subtle);font-weight:600;padding:0 var(--space-3) var(--space-1)}.nav-item{position:relative;display:flex;align-items:center;gap:var(--space-3);min-height:40px;padding:0 var(--space-3);border-radius:var(--radius-md);color:var(--text-muted);font-weight:500;font-size:var(--fs-small);border:1px solid transparent;transition:background-color var(--dur-1) var(--ease-out),color var(--dur-1) var(--ease-out),border-color var(--dur-1) var(--ease-out)}.nav-item:before{content:"";position:absolute;left:0;top:50%;width:3px;height:0;border-radius:0 var(--radius-pill) var(--radius-pill) 0;background:var(--accent);box-shadow:0 0 12px -2px var(--accent-ring);transform:translateY(-50%);transition:height var(--dur-2) var(--ease-out)}.nav-item:hover{background:var(--surface-hover);color:var(--text);text-decoration:none}.nav-item.active{background:var(--accent-soft);color:var(--text);font-weight:600}.nav-item.active .icon{color:var(--accent)}.nav-item.active:before{height:60%}.nav-badge{margin-left:auto;min-width:20px;text-align:center;background:var(--negative-soft);color:var(--negative);font-size:var(--fs-label);font-weight:700;padding:1px var(--space-2);border-radius:var(--radius-pill)}.sidebar-foot{margin-top:auto;display:flex;flex-direction:column;gap:var(--space-2)}.status-card{padding:var(--space-3);border-radius:var(--radius-md);background:var(--surface-inset);border:1px solid var(--border);display:flex;flex-direction:column;gap:var(--space-2)}.status-row{display:flex;align-items:center;gap:var(--space-2);min-width:0}.status-live{width:7px;height:7px;border-radius:50%;flex-shrink:0;background:var(--positive);box-shadow:0 0 color-mix(in srgb,var(--positive) 60%,transparent);animation:live-pulse 2.4s var(--ease-out) infinite}.status-live-text{font-size:var(--fs-label);font-weight:700;letter-spacing:.12em;text-transform:uppercase;color:var(--positive)}.status-engine{margin-left:auto;min-width:0;font-size:var(--fs-label);color:var(--text-subtle);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.status-score{display:flex;align-items:baseline;gap:var(--space-2)}.status-score-value{font-family:var(--font-display);font-size:1.75rem;font-weight:700;line-height:1;letter-spacing:-.04em;font-variant-numeric:tabular-nums}.status-score-grade{font-size:var(--fs-caption);color:var(--text-muted);display:flex;flex-direction:column;min-width:0}.status-score-label{font-size:var(--fs-label);color:var(--text-subtle);text-transform:uppercase;letter-spacing:.08em;font-weight:600}.status-meter{height:4px;border-radius:var(--radius-pill);background:var(--surface-sunken);overflow:hidden}.status-meter-fill{display:block;height:100%;border-radius:inherit;background:linear-gradient(90deg,var(--accent),var(--accent-strong));box-shadow:0 0 12px -2px var(--accent-ring);transform-origin:left center;animation:grow-x var(--dur-4) var(--ease-out) both;transition:width var(--dur-3) var(--ease-out)}.status-foot{font-size:var(--fs-caption);color:var(--text-subtle)}@keyframes live-pulse{0%{box-shadow:0 0 color-mix(in srgb,var(--positive) 55%,transparent)}70%,to{box-shadow:0 0 0 7px transparent}}.topbar{position:sticky;top:0;z-index:var(--z-topbar);display:flex;align-items:center;gap:var(--space-3);min-height:var(--header-height);padding:env(safe-area-inset-top) max(var(--page-pad),env(safe-area-inset-right)) 0 max(var(--page-pad),env(safe-area-inset-left));background:var(--chrome-bar);border-bottom:1px solid var(--border);-webkit-backdrop-filter:var(--glass-blur);backdrop-filter:var(--glass-blur)}.topbar-title{font-family:var(--font-display);font-weight:600;font-size:var(--fs-body);letter-spacing:-.01em;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.topbar-spacer{flex:1}.save-state{display:inline-flex;align-items:center;gap:var(--space-1);font-size:var(--fs-caption);color:var(--text-subtle);white-space:nowrap}.page{width:100%;max-width:var(--content-max);margin-inline:auto;padding:var(--space-5) max(var(--page-pad),env(safe-area-inset-right)) calc(var(--space-7) + env(safe-area-inset-bottom)) max(var(--page-pad),env(safe-area-inset-left))}.page>.stack{--gap: var(--section-gap)}.page-head p{color:var(--text-muted);max-width:66ch;margin-top:var(--space-2)}.page-head>.row-between{flex-wrap:wrap;align-items:flex-start}.page-head>.row-between>:first-child{flex:1 1 24rem;min-width:0}.page-head-aside{display:flex;flex-direction:column;align-items:flex-start;gap:var(--space-1)}@media(min-width:640px){.page-head-aside{align-items:flex-end;text-align:right}}@media(min-width:900px){.app-shell{display:grid;grid-template-columns:var(--nav-width) minmax(0,1fr)}.sidebar{position:sticky;top:0;z-index:auto;width:auto;height:100vh;height:100dvh;transform:none;visibility:visible;transition:none;box-shadow:none}.sidebar-backdrop,.topbar .nav-toggle{display:none}}.page,.card-body{container-type:inline-size}.grid{display:grid;gap:var(--gap, var(--grid-gap));align-items:stretch}.grid>*{min-width:0}.grid-2{grid-template-columns:repeat(auto-fit,minmax(min(100%,22rem),1fr))}.grid-3,.form-grid{grid-template-columns:minmax(0,1fr)}.form-grid{display:grid;gap:var(--space-4);align-items:start}.grid-4{grid-template-columns:repeat(2,minmax(0,1fr));align-items:stretch;gap:0;border:1px solid var(--border);border-radius:var(--radius-lg);overflow:hidden;background:var(--surface);-webkit-backdrop-filter:var(--glass-blur);backdrop-filter:var(--glass-blur);box-shadow:var(--edge),var(--shadow-2)}.grid-4>*{position:relative;min-width:0;padding:var(--card-pad);overflow:hidden;transition:background-color var(--dur-1) var(--ease-out)}.grid-4>.card{border:0;border-radius:0;background:transparent;-webkit-backdrop-filter:none;backdrop-filter:none;box-shadow:none}.grid-4>*:hover{background:var(--surface-hover);box-shadow:none;transform:none}.grid-4>*:after{content:"";position:absolute;inset:0 0 auto 0;height:2px;background:var(--accent);transform:scaleX(0);transform-origin:left center;transition:transform var(--dur-3) var(--ease-out)}.grid-4>*:hover:after{transform:none}.grid-4>*:nth-child(2n){border-left:1px solid var(--border)}.grid-4>*:nth-child(n+3){border-top:1px solid var(--border)}.grid-sidebar,.grid-sidebar-left{grid-template-columns:minmax(0,1fr)}.grid-pair{grid-template-columns:repeat(2,minmax(0,1fr))}@container (min-width: 26rem){.grid-3{grid-template-columns:repeat(3,minmax(0,1fr))}}@container (min-width: 30rem){.form-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@container (min-width: 44rem){.grid-4{grid-template-columns:repeat(4,minmax(0,1fr))}.grid-4>*:nth-child(n){border-top:0;border-left:1px solid var(--border)}.grid-4>*:first-child{border-left:0}}@media(min-width:1180px){.grid-sidebar{grid-template-columns:minmax(0,1.65fr) minmax(0,1fr)}.grid-sidebar-left{grid-template-columns:minmax(0,1fr) minmax(0,1.65fr)}.sticky-aside{position:sticky;align-self:start;top:calc(var(--header-height) + var(--space-4));max-height:calc(100dvh - var(--header-height) - var(--space-6));overflow-y:auto;overscroll-behavior:contain}.onboarding .sticky-aside{top:var(--space-3)}}.self-start{align-self:start}.stack{display:flex;flex-direction:column;gap:var(--gap, var(--grid-gap));min-width:0}.stack-sm{display:flex;flex-direction:column;gap:var(--space-2);min-width:0}.row{display:flex;align-items:center;gap:var(--space-3);min-width:0}.row-wrap{display:flex;align-items:center;gap:var(--space-3);flex-wrap:wrap}.row-between{display:flex;align-items:center;justify-content:space-between;gap:var(--space-3);min-width:0}.gap-1{gap:var(--space-1)}.gap-2{gap:var(--space-2)}.gap-3{gap:var(--space-3)}.gap-4{gap:var(--space-4)}.gap-5{gap:var(--space-5)}.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)}.mt-5{margin-top:var(--space-5)}.mb-1{margin-bottom:var(--space-1)}.mb-2{margin-bottom:var(--space-2)}.mb-3{margin-bottom:var(--space-3)}.flex-1{flex:1 1 0}.min-w-0{min-width:0}.input-short{max-width:14rem}.input-title{max-width:16rem;font-weight:600}.m-0{margin:0}.items-start{align-items:flex-start}.items-center{align-items:center}.justify-start{justify-content:flex-start}.justify-end{justify-content:flex-end}.capitalize{text-transform:capitalize}.list-plain{list-style:none;margin:0;padding:0}.wrap{flex-wrap:wrap}.text-left{text-align:left}.text-right{text-align:right}.text-center{text-align:center}.w-full{width:100%}.shrink-0{flex-shrink:0}.nowrap{white-space:nowrap}.pre-wrap{white-space:pre-wrap}.measure{max-width:68ch}.card{position:relative;min-width:0;display:flex;flex-direction:column;padding:var(--card-pad);border-radius:var(--radius-lg);background:var(--surface);-webkit-backdrop-filter:var(--glass-blur);backdrop-filter:var(--glass-blur);border:1px solid var(--border);box-shadow:var(--edge),var(--shadow-2);isolation:isolate;transition:border-color var(--dur-2) var(--ease-out),box-shadow var(--dur-2) var(--ease-out),transform var(--dur-2) var(--ease-out)}.card,.action,.chat-panel,.trace,.onboarding-card,.assistant-dock{--spot: var(--accent);position:relative;isolation:isolate}.card:before,.action:before,.chat-panel:before,.trace:before,.onboarding-card:before,.assistant-dock:before{content:"";position:absolute;top:0;right:0;bottom:0;left:0;z-index:-1;border-radius:inherit;pointer-events:none;opacity:0;background:radial-gradient(22rem 22rem at var(--mx, 50%) var(--my, 50%),color-mix(in srgb,var(--spot) 22%,transparent),transparent 68%);transition:opacity var(--dur-3) var(--ease-out),--spot var(--dur-2) var(--ease-out)}.card.is-lit:before,.action.is-lit:before,.chat-panel.is-lit:before,.trace.is-lit:before,.onboarding-card.is-lit:before,.assistant-dock.is-lit:before{opacity:1}.chat-panel,.trace,.onboarding-card,.assistant-dock{transition:border-color var(--dur-2) var(--ease-out)}.chat-panel:hover,.trace:hover,.onboarding-card:hover,.assistant-dock:hover{border-color:color-mix(in srgb,var(--spot) 30%,var(--border-hover))}.card:hover{transform:translateY(-3px);border-color:color-mix(in srgb,var(--spot) 42%,var(--border-hover));box-shadow:var(--edge),0 0 0 1px color-mix(in srgb,var(--spot) 18%,transparent),0 0 28px -12px color-mix(in srgb,var(--spot) 55%,transparent),var(--shadow-3)}.card-primary{background:linear-gradient(180deg,var(--accent-soft),transparent 42%),var(--surface-raised);border-color:color-mix(in srgb,var(--accent) 34%,transparent);box-shadow:var(--edge),var(--ring-accent),var(--shadow-3)}.card-primary:hover{border-color:color-mix(in srgb,var(--accent) 48%,transparent)}.card-primary>.card-head .card-title{font-size:var(--fs-section)}.card .card,.chat-panel .card,.sidebar .card,.onboarding-card .card{background:var(--surface-inset);-webkit-backdrop-filter:none;backdrop-filter:none;box-shadow:none}.card .card:hover,.chat-panel .card:hover,.sidebar .card:hover,.onboarding-card .card:hover{box-shadow:none;transform:none}.card .card:before,.chat-panel .card:before,.sidebar .card:before,.onboarding-card .card:before{content:none}.card .card,.chat-panel .card,.onboarding-card .card{border-radius:var(--radius-md);padding:var(--space-4)}.card-flush{padding:0;overflow:hidden}.card-flush>.card-head{padding:var(--card-pad) var(--card-pad) 0}.card-head{display:flex;flex-wrap:wrap;align-items:flex-start;justify-content:space-between;gap:var(--space-2) var(--space-3);margin-bottom:var(--space-4)}.card-heading{flex:1 1 12rem;min-width:0}.card-actions{display:flex;flex-wrap:wrap;align-items:center;gap:var(--space-2)}.card-title{font-family:var(--font-display);font-size:var(--fs-card);font-weight:600;letter-spacing:-.025em}.card-sub{font-size:var(--fs-small);color:var(--text-muted);margin-top:var(--space-1)}.card-section-body{margin-top:var(--space-3)}.subhead{font-size:var(--fs-small);font-weight:600;letter-spacing:0;margin-bottom:var(--space-2)}.card-fill>.card-body{display:flex;flex-direction:column}.card-fill .fill-rest{flex:1 1 auto;display:flex;flex-direction:column}.card-fill .fill-rest>.stack-sm{flex:1 1 auto;justify-content:space-between}.card-body{flex:1 1 auto;min-width:0}.card-body>*+*{margin-top:var(--space-3)}.stat{display:flex;flex-direction:column;min-width:0}.card-body>.stat:only-child{height:100%}.card-body>.stat:only-child .stat-meta{margin-top:auto;padding-top:var(--space-1)}.stat-label{font-size:var(--fs-label);text-transform:uppercase;letter-spacing:.085em;color:var(--text-subtle);font-weight:700}.stat-value{font-family:var(--font-display);font-size:var(--fs-stat);font-weight:700;letter-spacing:-.03em;margin-top:var(--space-2);line-height:1.05;font-variant-numeric:tabular-nums}.stat-value.sm{font-size:var(--fs-stat-sm)}.stat-value .num{font-family:inherit;letter-spacing:inherit}.delta-stack{display:flex;flex-direction:column;min-width:0}.delta-from{font-family:var(--font);font-size:var(--fs-caption);font-weight:500;letter-spacing:0;color:var(--text-subtle);margin-top:2px}.stat-meta{font-size:var(--fs-small);color:var(--text-muted);margin-top:var(--space-1)}.delta{font-size:var(--fs-small);font-weight:600;display:inline-flex;align-items:center;gap:var(--space-1);margin-top:var(--space-1)}.delta.up{color:var(--positive)}.delta.down{color:var(--negative)}.delta.flat{color:var(--text-subtle)}.text-positive{color:var(--positive)}.text-negative{color:var(--negative)}.text-warning{color:var(--warning)}.text-accent{color:var(--accent-text)}.text-muted{color:var(--text-muted)}.text-subtle{color:var(--text-subtle)}.text-body{color:var(--text)}.text-sm{font-size:var(--fs-small)}.text-xs{font-size:var(--fs-caption)}.text-lg{font-size:var(--fs-section)}.strong{font-weight:600}.truncate{display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;min-width:0}.bullets{margin:0;padding-left:var(--space-4);display:flex;flex-direction:column;gap:var(--space-1)}.bullets li::marker{color:var(--text-subtle)}.btn{--btn-bg: var(--surface-hover);--btn-border: var(--border-strong);--btn-fg: var(--text);display:inline-flex;align-items:center;justify-content:center;gap:var(--space-2);min-height:36px;padding:0 var(--space-4);border-radius:var(--radius-md);border:1px solid var(--btn-border);background:var(--btn-bg);color:var(--btn-fg);font-size:var(--fs-small);font-weight:600;line-height:1.2;white-space:nowrap;text-decoration:none;cursor:pointer;transition:transform var(--dur-1) var(--ease-out),background-color var(--dur-1) var(--ease-out),border-color var(--dur-1) var(--ease-out),color var(--dur-1) var(--ease-out),box-shadow var(--dur-2) var(--ease-out)}.btn:hover:not(:disabled){transform:translateY(-1px);border-color:var(--border-hover);text-decoration:none}.btn:active:not(:disabled){transform:translateY(0)}.btn:disabled{opacity:.45;cursor:not-allowed}.btn-primary{--btn-bg: var(--accent);--btn-border: var(--accent);--btn-fg: var(--on-accent);font-weight:700;position:relative;overflow:hidden}.btn-primary:after{content:"";position:absolute;inset:0 auto 0 0;width:55%;transform:translate(-160%) skew(-18deg);background:linear-gradient(90deg,transparent,rgb(255 255 255 / .38),transparent);pointer-events:none}.btn-primary:hover:not(:disabled){background:var(--accent-strong);border-color:var(--accent-strong);box-shadow:0 10px 28px -10px var(--accent-ring)}.btn-primary:hover:not(:disabled):after{animation:sweep .62s var(--ease-out)}.btn-primary:active:not(:disabled){box-shadow:none}@keyframes sweep{to{transform:translate(320%) skew(-18deg)}}.btn-ghost{--btn-bg: transparent;--btn-border: transparent;--btn-fg: var(--text-muted)}.btn-ghost:hover:not(:disabled){transform:none;background:var(--surface-hover);border-color:transparent;color:var(--text)}.btn-danger{--btn-bg: transparent;--btn-border: color-mix(in srgb, var(--negative) 40%, transparent);--btn-fg: var(--negative)}.btn-danger:hover:not(:disabled){background:var(--negative-soft);border-color:color-mix(in srgb,var(--negative) 65%,transparent)}.btn-sm{min-height:30px;padding:0 var(--space-3);font-size:var(--fs-caption);border-radius:var(--radius-sm)}.btn-icon{min-width:36px;padding:0}.btn-icon.btn-sm{min-width:30px}.field{display:flex;flex-direction:column;gap:var(--space-1);min-width:0}.field label,.field-label{font-size:var(--fs-small);font-weight:500;color:var(--text-muted)}.field-hint{font-size:var(--fs-caption);color:var(--text-subtle)}.input,.select,.textarea{width:100%;min-height:40px;padding:0 var(--space-3);border-radius:var(--radius-md);border:1px solid var(--border-strong);background:var(--surface-sunken);color:var(--text);font-size:var(--fs-body);transition:border-color var(--dur-1) var(--ease-out),box-shadow var(--dur-2) var(--ease-out),background-color var(--dur-1) var(--ease-out)}.input:hover,.select:hover{border-color:var(--border-hover)}.input:focus,.select:focus,.textarea:focus{outline:none;border-color:var(--accent);box-shadow:0 0 0 3px var(--accent-soft)}.input:disabled,.select:disabled{opacity:.55;cursor:not-allowed}.input.num,.input[type=number]{font-family:var(--font-num);font-variant-numeric:tabular-nums}.select{-webkit-appearance:none;-moz-appearance:none;appearance:none;padding-right:var(--space-7);background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='16' height='16' fill='none' stroke='%238391b2' stroke-width='1.75' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='m4 6 4 4 4-4'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right var(--space-3) center}.input-prefix{position:relative;display:flex;align-items:center}.input-prefix>span{position:absolute;left:var(--space-3);color:var(--text-subtle);font-size:var(--fs-small);pointer-events:none}.input-prefix .input{padding-left:28px}.slider{--fill: 0%;-webkit-appearance:none;-moz-appearance:none;appearance:none;width:100%;height:28px;background:transparent;cursor:pointer;margin:0}.slider::-webkit-slider-runnable-track{height:6px;border-radius:var(--radius-pill);background:linear-gradient(to right,var(--accent) var(--fill),var(--surface-sunken) var(--fill));box-shadow:inset 0 0 0 1px var(--border)}.slider::-webkit-slider-thumb{-webkit-appearance:none;-moz-appearance:none;appearance:none;width:20px;height:20px;margin-top:-7px;border-radius:50%;background:var(--accent);border:3px solid var(--bg-1);box-shadow:0 0 0 1px var(--accent),var(--shadow-1);transition:transform var(--dur-1) var(--ease-out),box-shadow var(--dur-2) var(--ease-out)}.slider:hover::-webkit-slider-thumb{transform:scale(1.08)}.slider:focus-visible{outline:none}.slider:focus-visible::-webkit-slider-thumb{box-shadow:0 0 0 1px var(--accent),0 0 0 6px var(--accent-soft)}.slider::-moz-range-track{height:6px;border-radius:var(--radius-pill);background:var(--surface-sunken);box-shadow:inset 0 0 0 1px var(--border)}.slider::-moz-range-progress{height:6px;border-radius:var(--radius-pill);background:var(--accent)}.slider::-moz-range-thumb{width:14px;height:14px;border-radius:50%;background:var(--accent);border:3px solid var(--bg-1);box-shadow:0 0 0 1px var(--accent)}.slider:focus-visible::-moz-range-thumb{box-shadow:0 0 0 1px var(--accent),0 0 0 6px var(--accent-soft)}.slider-row{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:var(--space-3);align-items:center}.slider-value-edit{border:1px solid transparent;border-radius:var(--radius-sm);background:none;padding:2px var(--space-2);cursor:text;transition:border-color var(--dur-1) var(--ease-out),background-color var(--dur-1) var(--ease-out)}.slider-value-edit:hover,.slider-value-edit:focus-visible{border-color:var(--border-strong);background:var(--surface-inset)}.slider-edit{min-height:30px;width:8.5rem;padding:0 var(--space-2);text-align:right;font-size:var(--fs-small)}.slider-value{font-family:var(--font-num);font-variant-numeric:tabular-nums;font-size:var(--fs-small);font-weight:600;min-width:6ch;text-align:right;color:var(--accent-text)}.switch{display:inline-flex;background:var(--surface-sunken);border:1px solid var(--border);border-radius:var(--radius-pill);padding:2px;gap:2px}.switch button{border:none;background:transparent;color:var(--text-muted);min-height:30px;padding:0 var(--space-3);border-radius:var(--radius-pill);cursor:pointer;font-size:var(--fs-caption);font-weight:600;transition:background-color var(--dur-1) var(--ease-out),color var(--dur-1) var(--ease-out)}.switch button[aria-pressed=true]{background:var(--accent);color:var(--on-accent)}.checkbox,.persona,.goal-item{border:1px solid var(--border);background:var(--surface-inset);border-radius:var(--radius-md);color:var(--text);cursor:pointer;transition:border-color var(--dur-1) var(--ease-out),background-color var(--dur-1) var(--ease-out),box-shadow var(--dur-2) var(--ease-out),transform var(--dur-1) var(--ease-out)}.checkbox:hover,.persona:hover,.goal-item:hover{border-color:color-mix(in srgb,var(--accent) 38%,var(--border-hover));background:var(--surface-hover);box-shadow:0 0 20px -10px var(--accent-ring);transform:translateY(-1px)}.checkbox.checked,.persona.selected,.goal-item.selected{border-color:color-mix(in srgb,var(--accent) 40%,transparent);background:var(--accent-soft);box-shadow:inset 3px 0 0 var(--accent),0 0 20px -8px var(--accent-ring)}.checkbox{display:flex;align-items:flex-start;gap:var(--space-2);padding:var(--space-3)}.checkbox input{margin-top:3px;accent-color:var(--accent);flex-shrink:0}.persona{text-align:left;padding:var(--space-4)}.goal-item{display:flex;flex-direction:column;gap:var(--space-2);width:100%;text-align:left;padding:var(--space-3) var(--space-4)}.goal-list{display:flex;flex-direction:column;gap:var(--space-2);margin:0;padding:0;list-style:none}.badge{display:inline-flex;align-items:center;gap:var(--space-1);padding:2px var(--space-2);border-radius:var(--radius-pill);font-size:var(--fs-caption);font-weight:600;background:var(--surface-inset);color:var(--text-muted);border:1px solid var(--border);white-space:nowrap}.chip{display:inline-flex;align-items:center;padding:var(--space-1) var(--space-3);border-radius:var(--radius-md);font-size:var(--fs-caption);color:var(--text-muted);background:var(--surface-inset);border:1px solid var(--border);max-width:100%;overflow-wrap:anywhere}.badge-positive{background:var(--positive-soft);color:var(--positive);border-color:transparent}.badge-negative{background:var(--negative-soft);color:var(--negative);border-color:transparent}.badge-warning{background:var(--warning-soft);color:var(--warning);border-color:transparent}.badge-info{background:var(--info-soft);color:var(--info);border-color:transparent}.badge-accent{background:var(--accent-soft);color:var(--accent-text);border-color:transparent}.dot{width:8px;height:8px;border-radius:50%;flex-shrink:0}.bar{display:block;height:6px;border-radius:var(--radius-pill);background:var(--surface-sunken);overflow:hidden;box-shadow:inset 0 0 0 1px var(--border)}.bar-fill{display:block;height:100%;border-radius:inherit;background:var(--accent);transform-origin:left center;animation:grow-x var(--dur-3) var(--ease-out) both;transition:width var(--dur-3) var(--ease-out)}.bar-fill.positive{background:var(--positive)}.bar-fill.warning{background:var(--warning)}.bar-fill.negative{background:var(--negative)}.bar-fill.lead{background:var(--series-1)}.bar-fill.rest{background:var(--seq-300)}.gauge{position:relative;width:var(--gauge-size, 208px);height:var(--gauge-size, 208px);flex-shrink:0}.gauge-seg{cursor:pointer;transition:transform var(--dur-2) var(--ease-out),filter var(--dur-2) var(--ease-out)}.gauge:hover .gauge-seg{filter:saturate(.5) brightness(.72)}.gauge .gauge-seg.is-hovered{filter:saturate(1.2) brightness(1.15) drop-shadow(0 0 10px color-mix(in srgb,currentColor 40%,transparent))}.gauge-fill{animation:gauge-draw var(--dur-4) var(--ease-out) both}@keyframes gauge-draw{0%{stroke-dashoffset:var(--fill-len)}to{stroke-dashoffset:0}}.gauge-center{position:absolute;top:0;right:0;bottom:0;left:0;display:grid;place-items:center;text-align:center;pointer-events:none}.gauge-total-value,.gauge-detail-score{font-family:var(--font-display);font-weight:700;line-height:1;letter-spacing:-.045em;font-variant-numeric:tabular-nums}.gauge-total-value{font-size:2.6rem}.gauge-total-grade{font-size:var(--fs-label);color:var(--text-subtle);text-transform:uppercase;letter-spacing:.12em;font-weight:700;margin-top:var(--space-2)}.gauge-detail{animation:fade-in var(--dur-2) var(--ease-out);padding:0 var(--space-5)}.gauge-detail-name{font-size:var(--fs-caption);font-weight:600;color:var(--text-muted)}.gauge-detail-score{font-size:2.1rem;margin-top:var(--space-1)}.gauge-detail-weight{font-size:var(--fs-label);color:var(--text-subtle);text-transform:uppercase;letter-spacing:.08em;font-weight:700;margin-top:var(--space-2)}.quick-compare{display:flex;flex-direction:column;gap:var(--space-4)}.quick-compare-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,13rem),1fr));gap:var(--space-2)}.quick-compare-item{display:flex;align-items:center;gap:var(--space-2);min-height:40px;padding:0 var(--space-3);border:1px dashed var(--border-strong);border-radius:var(--radius-md);background:var(--surface-inset);color:var(--text-muted);font-size:var(--fs-small);font-weight:500;text-align:left;cursor:pointer;transition:border-color var(--dur-1) var(--ease-out),background-color var(--dur-1) var(--ease-out),color var(--dur-1) var(--ease-out)}.quick-compare-item:hover{border-style:solid;border-color:color-mix(in srgb,var(--accent) 45%,transparent);background:var(--accent-soft);color:var(--text)}.quick-compare-item .icon{color:var(--accent)}.facts{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:var(--space-4)}.fact{display:flex;flex-direction:column;gap:var(--space-1);padding-left:var(--space-3);border-left:2px solid color-mix(in srgb,var(--accent) 40%,transparent)}.fact-figure{font-family:var(--font-display);font-size:1.35rem;font-weight:700;letter-spacing:-.03em;line-height:1.1;color:var(--accent-text)}.fact-body{font-size:var(--fs-small);color:var(--text-muted);line-height:1.5}.odds{display:flex;flex-direction:column}.odds-head{display:flex;align-items:flex-start;justify-content:space-between;gap:var(--space-3)}.odds-figure{font-family:var(--font-display);font-size:2rem;font-weight:700;letter-spacing:-.035em;line-height:1}.odds-caption{font-size:var(--fs-caption);color:var(--text-subtle);margin-top:var(--space-2)}.odds-rows{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,8rem),1fr));gap:var(--space-3);margin:0}.odds-rows dt{font-size:var(--fs-label);text-transform:uppercase;letter-spacing:.08em;font-weight:700;color:var(--text-subtle)}.odds-rows dd{margin:var(--space-1) 0 0;font-size:var(--fs-small);font-weight:600}.odds-note{font-size:var(--fs-caption);color:var(--text-muted);line-height:1.5;margin:var(--space-4) 0 0}.dial{position:relative;width:min(var(--dial-size, 260px),100%);margin-inline:auto}.dial svg{display:block;width:100%;height:auto}.dial-seg{cursor:pointer;transition:transform var(--dur-2) var(--ease-out),filter var(--dur-2) var(--ease-out),opacity var(--dur-2) var(--ease-out)}.dial-seg:not(.is-active){opacity:.4}.dial:hover .dial-seg{opacity:.32}.dial .dial-seg.is-hovered{opacity:1;filter:brightness(1.12) drop-shadow(0 0 10px color-mix(in srgb,currentColor 45%,transparent))}.dial-mark circle{fill:var(--surface);stroke:var(--text-subtle);stroke-width:2.5}.dial-mark.is-binding circle{fill:var(--text);stroke:var(--surface);stroke-width:3}.dial-mark-value{fill:var(--text-muted);stroke:none;font-family:var(--font-num);font-size:13px;font-weight:700;font-variant-numeric:tabular-nums}.dial-mark-label{fill:var(--text-subtle);stroke:none;font-size:9px;font-weight:600;letter-spacing:.06em;text-transform:uppercase}.dial-mark.is-binding .dial-mark-value{fill:var(--text)}.dial-center{position:absolute;top:calc(var(--dial-size, 260px) / 2);left:50%;max-width:52%;transform:translate(-50%,-50%);text-align:center;pointer-events:none}.dial-bucket{font-family:var(--font-display);font-size:1.45rem;font-weight:700;letter-spacing:-.03em;line-height:1.1;animation:fade-in var(--dur-2) var(--ease-out)}.dial-detail{font-size:var(--fs-caption);color:var(--text-muted);line-height:1.5;text-align:center;margin-top:var(--space-2);min-height:2.4em}.dial-detail strong{color:var(--text)}.dial-legend{display:flex;justify-content:center;gap:var(--space-5);margin:var(--space-3) 0 0}.dial-legend div{display:flex;align-items:baseline;gap:var(--space-2)}.dial-legend dt{display:inline-flex;align-items:center;gap:var(--space-2);font-size:var(--fs-caption);color:var(--text-subtle)}.dial-legend dd{font-size:var(--fs-small);font-weight:700}.dial-legend .is-binding dt,.dial-legend .is-binding dd{color:var(--text)}.dial-key{width:10px;height:10px;border-radius:50%;border:2px solid var(--text-subtle)}.dial-key.is-binding{background:var(--text);border-color:var(--text)}.bullets-chart{display:flex;flex-direction:column;gap:var(--space-1)}.bullet-row{display:grid;grid-template-columns:minmax(7rem,13rem) minmax(0,1fr) 3.25rem minmax(0,12rem);align-items:center;gap:var(--space-3);padding:var(--space-2) var(--space-2);border-radius:var(--radius-sm);transition:background-color var(--dur-1) var(--ease-out)}.bullet-row:hover{background:var(--surface-inset)}@container (max-width: 40rem){.bullet-row{grid-template-columns:minmax(0,1fr) 3.25rem;row-gap:var(--space-1)}.bullet-track{grid-column:1 / -1;order:2}.bullet-note{grid-column:1 / -1;order:3;text-align:left}}.bullet-label{display:flex;flex-direction:column;min-width:0}.bullet-name{font-size:var(--fs-small);font-weight:600}.bullet-when{font-size:var(--fs-caption);color:var(--text-subtle);white-space:nowrap}.bullet-track{position:relative;height:16px;border-radius:var(--radius-sm);background:var(--surface-sunken);overflow:hidden}.bullet-band{position:absolute;inset:0 auto 0 0;background:var(--surface-hover)}.bullet-band-mid{opacity:.55}.bullet-fill{position:absolute;inset:3px auto 3px 0;border-radius:3px;transform-origin:left center;animation:grow-x var(--dur-4) var(--ease-out) both;transition:width var(--dur-3) var(--ease-out)}.bullet-fill.is-on-track{background:var(--positive)}.bullet-fill.is-short{background:var(--negative)}.bullet-target{position:absolute;top:0;bottom:0;width:2px;margin-left:-1px;background:var(--text);opacity:.75}.bullet-pct{font-size:var(--fs-small);font-weight:700;text-align:right}.bullet-note{font-size:var(--fs-caption);color:var(--text-subtle);text-align:right;min-width:0}.ring{--ring-size: 132px;width:var(--ring-size);height:var(--ring-size);position:relative;flex-shrink:0}.ring svg{transform:rotate(-90deg)}.ring-arc{transition:stroke-dashoffset var(--dur-3) var(--ease-out);animation:draw-arc var(--dur-4) var(--ease-out) both}.ring-center{position:absolute;top:0;right:0;bottom:0;left:0;display:grid;place-items:center;text-align:center}.ring-score{font-family:var(--font-display);font-size:2.1rem;font-weight:700;letter-spacing:-.045em;line-height:1}.ring-grade{font-size:var(--fs-label);color:var(--text-subtle);text-transform:uppercase;letter-spacing:.1em;font-weight:600;margin-top:var(--space-1)}.wellness-summary{display:flex;flex-wrap:wrap;align-items:center;gap:var(--space-4)}.wellness-summary>.wellness-score{align-items:center;flex:0 0 auto;margin-inline:auto}.wellness-shape{flex:1 1 16rem;min-width:0}.table-wrap{position:relative;overflow-x:auto;-webkit-overflow-scrolling:touch;border-radius:var(--radius-md)}table.data{width:100%;border-collapse:collapse;font-size:var(--fs-small)}table.data th{text-align:left;font-size:var(--fs-label);text-transform:uppercase;letter-spacing:.07em;color:var(--text-subtle);font-weight:600;padding:var(--space-2) var(--space-3);border-bottom:1px solid var(--border);white-space:nowrap;background:var(--surface-inset)}table.data td{padding:var(--space-3);border-bottom:1px solid var(--border);vertical-align:middle}table.data tbody tr:last-child td{border-bottom:none}table.data tbody tr{position:relative;transition:background-color var(--dur-1) var(--ease-out),box-shadow var(--dur-2) var(--ease-out),transform var(--dur-2) var(--ease-out)}table.data tbody tr:hover{background:var(--surface-hover);transform:translateY(-2px) scale(1.006);box-shadow:inset 3px 0 0 var(--spot, var(--accent)),0 0 0 1px color-mix(in srgb,var(--spot, var(--accent)) 22%,transparent),var(--shadow-3)}table.data tbody tr:hover>td{background:var(--surface-raised)}table.data tbody tr.is-highlighted{background:var(--accent-soft)}table.data tbody tr.is-selected{background:var(--accent-soft);box-shadow:inset 0 0 0 1px color-mix(in srgb,var(--accent) 55%,transparent)}table.data .right{text-align:right}table.data td.right,table.data th.right{font-variant-numeric:tabular-nums}table.data td.num{white-space:nowrap}.cell-input{min-width:7.5rem}.cell-input-sm{width:5rem}.cell-wide{min-width:12rem}.action{border:1px solid var(--border);border-radius:var(--radius-lg);background:var(--surface);box-shadow:var(--shadow-2);overflow:hidden;transition:border-color var(--dur-2) var(--ease-out),box-shadow var(--dur-2) var(--ease-out),transform var(--dur-2) var(--ease-out);-webkit-backdrop-filter:var(--glass-blur);backdrop-filter:var(--glass-blur)}.action:hover{transform:translateY(-3px);border-color:color-mix(in srgb,var(--spot) 42%,var(--border-hover));box-shadow:var(--edge),0 0 0 1px color-mix(in srgb,var(--spot) 18%,transparent),0 0 28px -12px color-mix(in srgb,var(--spot) 55%,transparent),var(--shadow-3)}.action-top{display:flex;flex-wrap:wrap;gap:var(--space-3);padding:var(--space-4);align-items:flex-start}.action-rank{width:28px;height:28px;border-radius:var(--radius-sm);background:var(--accent-soft);color:var(--accent-text);display:grid;place-items:center;font-weight:700;font-size:var(--fs-small);flex-shrink:0;font-variant-numeric:tabular-nums}.action-body{flex:1 1 18rem;min-width:0}.action-kicker{display:block;font-size:var(--fs-label);font-weight:700;letter-spacing:.1em;text-transform:uppercase;color:var(--accent-text);margin-bottom:var(--space-1)}.action-title{font-weight:600;font-size:var(--fs-card);margin-bottom:var(--space-1)}.action-why{color:var(--text-muted);font-size:var(--fs-small)}.action-why-lead{color:var(--text-subtle);font-weight:600}.action-impact{flex-shrink:0;min-width:7rem}.action-impact-value{font-family:var(--font-num);font-variant-numeric:tabular-nums;font-weight:600;font-size:var(--fs-card);color:var(--positive)}.action-impact-label{font-size:var(--fs-caption);color:var(--text-subtle);max-width:11rem;line-height:1.3;margin-top:2px}.action-detail{border-top:1px solid var(--border);padding:var(--space-3) var(--space-4);background:var(--surface-inset)}.action-steps{margin:0;padding-left:var(--space-5);color:var(--text-muted);font-size:var(--fs-small)}.action-steps li+li{margin-top:var(--space-1)}@media(min-width:640px){.action-impact{text-align:right}}.assumptions{display:flex;flex-direction:column;gap:var(--space-2)}.assumption{display:grid;grid-template-columns:minmax(0,1fr);gap:2px;font-size:var(--fs-small);padding-bottom:var(--space-2);border-bottom:1px dashed var(--border)}.assumption:last-child{border-bottom:none;padding-bottom:0}@media(min-width:640px){.assumption{grid-template-columns:minmax(8rem,10rem) minmax(0,1fr);gap:var(--space-3)}}.assumption-label{color:var(--text-subtle);font-weight:500}.assumption-value{color:var(--text-muted)}.source-tag{font-size:.625rem;text-transform:uppercase;letter-spacing:.06em;font-weight:700;padding:1px var(--space-1);border-radius:4px;margin-left:var(--space-2);vertical-align:1px;white-space:nowrap}.source-user_input{background:var(--info-soft);color:var(--info)}.source-market_assumption{background:var(--warning-soft);color:var(--warning)}.source-model_default{background:var(--surface-hover);color:var(--text-subtle)}.source-derived{background:var(--accent-soft);color:var(--accent-text)}.chat{display:grid;grid-template-columns:minmax(0,1fr);gap:var(--space-4);align-items:start}.chat-panel{display:flex;flex-direction:column;height:calc(100vh - var(--header-height) - 7rem);height:calc(100dvh - var(--header-height) - 7rem);min-height:28rem;border-radius:var(--radius-lg);background:var(--surface);border:1px solid var(--border);box-shadow:var(--shadow-2);overflow:hidden;-webkit-backdrop-filter:var(--glass-blur);backdrop-filter:var(--glass-blur)}.chat-log{position:relative;flex:1;overflow-y:auto;padding:var(--space-4);display:flex;flex-direction:column;gap:var(--space-4);scroll-behavior:smooth}.msg{display:flex;gap:var(--space-3);max-width:100%;animation:rise var(--dur-3) var(--ease-out) both}.msg-avatar{width:28px;height:28px;border-radius:var(--radius-sm);display:grid;place-items:center;flex-shrink:0;font-size:var(--fs-label);font-weight:700}.msg.user .msg-avatar{background:var(--surface-hover);color:var(--text-muted)}.msg.assistant .msg-avatar{background:var(--accent);color:var(--on-accent)}.msg-body{flex:1;min-width:0}.msg-bubble{background:var(--surface-inset);border:1px solid var(--border);border-radius:var(--radius-md);padding:var(--space-3);font-size:var(--fs-body);white-space:pre-wrap;overflow-wrap:break-word}.msg.user .msg-bubble{background:var(--accent-soft);border-color:transparent}.msg-bubble strong{font-weight:600;color:var(--text)}.msg-meta{display:flex;gap:var(--space-2);flex-wrap:wrap;margin-top:var(--space-2)}.chat-input{border-top:1px solid var(--border);padding:var(--space-3);background:var(--surface-inset)}.chat-form{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:var(--space-2)}.suggestions{display:flex;gap:var(--space-2);flex-wrap:wrap;margin-bottom:var(--space-2)}.suggestion{display:inline-flex;align-items:center;gap:var(--space-1);border:1px solid var(--border);background:var(--surface-inset);color:var(--text-muted);min-height:30px;padding:var(--space-1) var(--space-3);border-radius:var(--radius-pill);font-size:var(--fs-caption);text-align:left;cursor:pointer;transition:border-color var(--dur-1) var(--ease-out),color var(--dur-1) var(--ease-out)}.suggestion:hover{border-color:var(--accent);color:var(--text)}.trace{border-radius:var(--radius-lg);background:var(--surface);border:1px solid var(--border);box-shadow:var(--shadow-2);overflow:hidden;-webkit-backdrop-filter:var(--glass-blur);backdrop-filter:var(--glass-blur)}.trace-head{padding:var(--space-3) var(--space-4);border-bottom:1px solid var(--border);display:flex;align-items:center;gap:var(--space-2)}.trace-body{position:relative;padding:var(--space-3) var(--space-4);overflow-y:auto}.trace-step{display:grid;grid-template-columns:20px minmax(0,1fr);gap:var(--space-3);padding-bottom:var(--space-3);position:relative}.trace-step:not(:last-child):before{content:"";position:absolute;left:9px;top:22px;bottom:0;width:1px;background:var(--border)}.trace-icon{width:20px;height:20px;border-radius:50%;display:grid;place-items:center;background:var(--surface-inset);border:1px solid var(--border);color:var(--text-subtle);z-index:1;flex-shrink:0;--icon-size: 12px}.trace-icon.done{background:var(--positive-soft);border-color:transparent;color:var(--positive)}.trace-icon.running{background:var(--accent-soft);border-color:transparent;color:var(--accent-text)}.trace-icon.failed{background:var(--negative-soft);border-color:transparent;color:var(--negative)}.trace-title{font-size:var(--fs-small);font-weight:600}.trace-detail{font-size:var(--fs-caption);color:var(--text-subtle);margin-top:2px;overflow-wrap:break-word}.trace-timing{font-family:var(--font-mono);font-size:var(--fs-label);color:var(--text-subtle)}@media(min-width:1180px){.chat{grid-template-columns:minmax(0,1fr) minmax(18rem,22rem)}.trace{position:sticky;top:calc(var(--header-height) + var(--space-4))}.trace-body{max-height:calc(100vh - var(--header-height) - 12rem);max-height:calc(100dvh - var(--header-height) - 12rem)}}.session-row{gap:var(--space-2);padding:var(--space-1) var(--space-2);border:1px solid transparent;border-radius:var(--radius-sm)}.session-row:hover{border-color:var(--border)}.session-row.is-current{background:var(--surface-hover)}.session-open{flex:1 1 12rem;justify-content:flex-start;text-align:left;min-width:0}.chat-empty{padding:var(--space-4) var(--space-1)}.msg-attachment{margin-top:var(--space-3)}.trace-body>.divider{margin-block:var(--space-3)}.trace-dot{width:6px;height:6px;border-radius:50%;background:currentColor}.grounding-row{display:flex;align-items:flex-start;gap:var(--space-2)}.grounding-dot{margin-top:6px}.grounding-dot.grounded{background:var(--positive)}.grounding-dot.unmatched{background:var(--warning)}.spinner{width:14px;height:14px;border:2px solid var(--border-strong);border-top-color:var(--accent);border-radius:50%;animation:spin .7s linear infinite;flex-shrink:0}.pulse{animation:pulse 1.6s ease-in-out infinite}.typing-caret:after{content:"";display:inline-block;width:.5em;height:1em;margin-left:2px;vertical-align:-.15em;background:var(--accent);animation:blink 1s step-start infinite}.assistant-hero{position:relative;display:flex;flex-wrap:wrap;align-items:center;gap:var(--space-5);padding:var(--space-6) var(--space-5);border-radius:var(--radius-lg);border:1px solid var(--border);background:radial-gradient(38rem 20rem at 8% -40%,var(--accent-soft),transparent 70%),var(--surface);-webkit-backdrop-filter:var(--glass-blur);backdrop-filter:var(--glass-blur);box-shadow:var(--edge),var(--shadow-2);overflow:hidden}.assistant-hero-main{flex:1 1 24rem;min-width:0}.assistant-hero h1{margin-top:var(--space-3)}.assistant-hero-em{color:var(--accent-text)}.assistant-hero p{color:var(--text-muted);max-width:54ch;margin-top:var(--space-3)}.assistant-hero-badge{display:inline-flex;align-items:center;gap:var(--space-2);padding:var(--space-1) var(--space-3);border-radius:var(--radius-pill);border:1px solid color-mix(in srgb,var(--accent) 28%,transparent);background:var(--accent-soft);color:var(--accent-text);font-size:var(--fs-label);font-weight:700;letter-spacing:.1em;text-transform:uppercase}.assistant-hero-pulse{width:6px;height:6px;border-radius:50%;background:var(--accent);animation:live-pulse 2.4s var(--ease-out) infinite}.assistant-hero-stats{flex:0 1 auto;display:flex;flex-wrap:wrap;gap:var(--space-5);margin:0;padding-left:var(--space-5);border-left:1px solid var(--border)}@media(max-width:720px){.assistant-hero-stats{padding-left:0;border-left:0;gap:var(--space-4)}}.assistant-hero-stats dt{font-size:var(--fs-label);text-transform:uppercase;letter-spacing:.085em;font-weight:700;color:var(--text-subtle)}.assistant-hero-stats dd{font-family:var(--font-display);font-size:1.75rem;font-weight:700;letter-spacing:-.03em;line-height:1.1;margin-top:var(--space-1);font-variant-numeric:tabular-nums}.assistant-hero-engine{font-family:var(--font);font-size:var(--fs-small);font-weight:600;letter-spacing:0;color:var(--accent-text);max-width:11rem}.palette-trigger{display:inline-flex;align-items:center;gap:var(--space-2);min-height:32px;padding:0 var(--space-2) 0 var(--space-3);border:1px solid var(--border);border-radius:var(--radius-md);background:var(--surface-inset);color:var(--text-subtle);font-size:var(--fs-small);cursor:pointer;transition:border-color var(--dur-1) var(--ease-out),color var(--dur-1) var(--ease-out),background-color var(--dur-1) var(--ease-out)}.palette-trigger:hover{border-color:color-mix(in srgb,var(--accent) 40%,var(--border-hover));background:var(--surface-hover);color:var(--text)}.palette-trigger-text{white-space:nowrap}@media(max-width:720px){.palette-trigger-text,.palette-trigger .kbd{display:none}.palette-trigger{padding:0 var(--space-2)}}.palette-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;z-index:var(--z-palette);display:flex;justify-content:center;align-items:flex-start;padding:max(12vh,var(--space-6)) var(--space-4) var(--space-4);background:#0000008c;-webkit-backdrop-filter:blur(3px);backdrop-filter:blur(3px);animation:fade-in var(--dur-2) var(--ease-out)}.palette{width:min(38rem,100%);display:flex;flex-direction:column;max-height:min(30rem,70vh);border-radius:var(--radius-xl);background:var(--surface-raised);-webkit-backdrop-filter:var(--glass-blur);backdrop-filter:var(--glass-blur);border:1px solid var(--border-strong);box-shadow:var(--edge),var(--shadow-4);overflow:hidden;animation:palette-in var(--dur-3) var(--ease-panel) both}.palette-input-row{display:flex;align-items:center;gap:var(--space-3);padding:var(--space-4);border-bottom:1px solid var(--border);color:var(--text-subtle)}.palette-input{flex:1;min-width:0;border:0;background:none;outline:none;font-size:1rem;color:var(--text)}.palette-input::placeholder{color:var(--text-subtle)}.palette-list{flex:1;min-height:0;overflow-y:auto;padding:var(--space-2)}.palette-group{font-size:var(--fs-label);text-transform:uppercase;letter-spacing:.1em;font-weight:700;color:var(--text-subtle);padding:var(--space-3) var(--space-3) var(--space-1)}.palette-item{display:flex;align-items:center;gap:var(--space-3);width:100%;min-height:44px;padding:var(--space-2) var(--space-3);border:0;border-radius:var(--radius-md);background:none;color:var(--text-muted);text-align:left;cursor:pointer;transition:background-color var(--dur-1) var(--ease-out),color var(--dur-1) var(--ease-out)}.palette-item[data-active=true]{background:var(--accent-soft);color:var(--text);box-shadow:inset 2px 0 0 var(--accent)}.palette-item[data-active=true] .palette-item-label{color:var(--text)}.palette-item-text{flex:1;min-width:0;display:flex;flex-direction:column}.palette-item-label{font-size:var(--fs-small);font-weight:600;color:var(--text)}.palette-item-hint{font-size:var(--fs-caption);color:var(--text-subtle);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.palette-foot{display:flex;gap:var(--space-4);padding:var(--space-2) var(--space-4);border-top:1px solid var(--border);background:var(--surface-inset);font-size:var(--fs-caption);color:var(--text-subtle)}.kbd{display:inline-block;min-width:1.5em;padding:1px var(--space-1);border:1px solid var(--border-strong);border-bottom-width:2px;border-radius:4px;background:var(--surface-inset);font-family:var(--font-mono);font-size:.6875rem;line-height:1.5;text-align:center;color:var(--text-muted)}@keyframes palette-in{0%{opacity:0;transform:translateY(-8px) scale(.985)}}.assistant-fab{position:fixed;right:max(var(--space-5),env(safe-area-inset-right));bottom:max(var(--space-5),env(safe-area-inset-bottom));z-index:var(--z-fab);display:inline-flex;align-items:center;gap:var(--space-2);height:52px;padding:0;width:52px;border:1px solid var(--accent);border-radius:var(--radius-pill);background:var(--accent);color:var(--on-accent);cursor:pointer;overflow:hidden;white-space:nowrap;box-shadow:var(--shadow-3);transition:width var(--dur-3) var(--ease-panel),transform var(--dur-2) var(--ease-out),box-shadow var(--dur-2) var(--ease-out),opacity var(--dur-2) var(--ease-out)}.assistant-fab-icon{display:grid;place-items:center;width:50px;flex:0 0 50px;height:100%}.assistant-fab-label{font-size:var(--fs-small);font-weight:600;letter-spacing:-.01em;padding-right:var(--space-4);opacity:0;transform:translate(-4px);transition:opacity var(--dur-2) var(--ease-out),transform var(--dur-3) var(--ease-panel)}.assistant-fab:hover,.assistant-fab:focus-visible{width:168px;transform:translateY(-1px);box-shadow:var(--shadow-4)}.assistant-fab:hover .assistant-fab-label,.assistant-fab:focus-visible .assistant-fab-label{opacity:1;transform:none}.assistant-fab:active{transform:translateY(0)}.assistant-fab.is-hidden{opacity:0;transform:scale(.85);pointer-events:none}.assistant-fab-dot{position:absolute;top:9px;right:9px;width:9px;height:9px;border-radius:50%;background:var(--warning);box-shadow:0 0 0 2px var(--accent);transition:opacity var(--dur-2) var(--ease-out)}.assistant-fab:hover .assistant-fab-dot,.assistant-fab:focus-visible .assistant-fab-dot{opacity:0}.assistant-dock{position:fixed;right:max(var(--space-5),env(safe-area-inset-right));bottom:max(var(--space-5),env(safe-area-inset-bottom));z-index:var(--z-dock);display:flex;flex-direction:column;width:min(30rem,calc(100vw - var(--space-5) * 2));height:min(38rem,calc(100dvh - var(--space-7)));border-radius:var(--radius-lg);background:var(--surface);border:1px solid var(--border-strong);box-shadow:var(--shadow-4);overflow:hidden;transform-origin:bottom right;animation:dock-in var(--dur-4) var(--ease-panel) both;-webkit-backdrop-filter:var(--glass-blur);backdrop-filter:var(--glass-blur)}.assistant-dock-head{display:flex;align-items:center;gap:var(--space-3);padding:var(--space-3) var(--space-3) var(--space-3) var(--space-4);border-bottom:1px solid var(--border);background:var(--surface-inset)}.assistant-dock-mark{width:32px;height:32px;border-radius:var(--radius-sm);display:grid;place-items:center;flex-shrink:0;background:var(--accent);color:var(--on-accent)}.assistant-dock-title{font-size:var(--fs-small);font-weight:600;line-height:1.25}.assistant-dock-sub{font-size:var(--fs-label);color:var(--text-subtle);letter-spacing:.04em;text-transform:uppercase;font-weight:600;margin-top:1px}.assistant-dock-log{flex:1;min-height:0;overflow-y:auto;overscroll-behavior:contain;padding:var(--space-4);display:flex;flex-direction:column;gap:var(--space-4);scroll-behavior:smooth}.assistant-dock-foot{border-top:1px solid var(--border);padding:var(--space-3);background:var(--surface-inset)}.assistant-dock .suggestions{flex-direction:column;flex-wrap:nowrap;align-items:stretch;gap:var(--space-2)}.assistant-dock .suggestion{justify-content:flex-start;border-radius:var(--radius-md);padding:var(--space-2) var(--space-3)}@media(max-width:640px){.assistant-dock{right:0;left:0;bottom:0;width:auto;height:min(85dvh,44rem);border-radius:var(--radius-xl) var(--radius-xl) 0 0;border-bottom:0}.assistant-fab:hover,.assistant-fab:focus-visible{width:52px}.assistant-fab-label{display:none}}@keyframes dock-in{0%{opacity:0;transform:translateY(12px) scale(.97)}to{opacity:1;transform:none}}.onboarding{min-height:100vh;min-height:100dvh;display:grid;place-items:center;padding:max(var(--space-6),env(safe-area-inset-top)) var(--page-pad) max(var(--space-6),env(safe-area-inset-bottom))}.onboarding-card{width:100%;max-width:880px;border-radius:var(--radius-xl);background:var(--surface);border:1px solid var(--border);box-shadow:var(--shadow-3);overflow:hidden;animation:rise var(--dur-3) var(--ease-out) both;-webkit-backdrop-filter:var(--glass-blur);backdrop-filter:var(--glass-blur)}.onboarding-head{padding:var(--space-5) var(--page-pad) var(--space-4);border-bottom:1px solid var(--border)}.onboarding-body{padding:var(--space-5) var(--page-pad);min-height:18rem;container-type:inline-size}.onboarding-title{font-size:clamp(1.15rem,1rem + .5vw,1.3rem)}.onboarding-foot{padding:var(--space-4) var(--page-pad);border-top:1px solid var(--border);display:flex;flex-wrap:wrap;justify-content:space-between;align-items:center;gap:var(--space-3);background:var(--surface-inset)}.steps{display:flex;gap:var(--space-2);margin-top:var(--space-4)}.step-pip{flex:1;height:4px;border-radius:var(--radius-pill);background:var(--surface-sunken);overflow:hidden}.step-pip .bar-fill{width:0}.step-pip.done .bar-fill,.step-pip.active .bar-fill{width:100%;background:var(--accent)}.entry-row{display:flex;flex-wrap:wrap;align-items:flex-start;gap:var(--space-2)}.entry-name{flex:2 1 9rem}.entry-field{flex:1 1 7.5rem;min-width:0}.entry-narrow{flex:0 1 7rem}.entry-rate{flex:0 1 5.5rem}.persona-name,.persona-tagline,.persona-challenge{display:block}.persona-name{font-size:var(--fs-small);font-weight:600}.persona-tagline{font-size:var(--fs-caption);color:var(--text-muted);margin-top:2px}.persona-challenge{font-size:var(--fs-caption);color:var(--text-subtle);margin-top:var(--space-2);line-height:1.45}.persona-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,14rem),1fr));gap:var(--space-3)}.expense-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,11rem),1fr));gap:var(--space-3)}.empty{text-align:center;padding:var(--space-7) var(--space-4);color:var(--text-muted)}.empty-title{font-size:var(--fs-card);font-weight:600;color:var(--text)}.empty-message{max-width:46ch;margin:var(--space-2) auto var(--space-4)}.callout{border-radius:var(--radius-md);padding:var(--space-3);font-size:var(--fs-small);border:1px solid transparent;display:flex;gap:var(--space-2);align-items:flex-start;color:var(--text)}.callout>.icon{margin-top:2px}.callout-info{background:var(--info-soft);border-color:color-mix(in srgb,var(--info) 26%,transparent)}.callout-info>.icon{color:var(--info)}.callout-warning{background:var(--warning-soft);border-color:color-mix(in srgb,var(--warning) 26%,transparent)}.callout-warning>.icon{color:var(--warning)}.callout-negative{background:var(--negative-soft);border-color:color-mix(in srgb,var(--negative) 26%,transparent)}.callout-negative>.icon{color:var(--negative)}.callout-positive{background:var(--positive-soft);border-color:color-mix(in srgb,var(--positive) 26%,transparent)}.callout-positive>.icon{color:var(--positive)}.skeleton{display:block;border-radius:var(--radius-sm);background:linear-gradient(90deg,var(--surface-inset) 25%,var(--surface-hover) 40%,var(--surface-inset) 60%);background-size:300% 100%;animation:shimmer 1.4s ease-in-out infinite}.skeleton-line{height:.8rem}.skeleton-title{height:1.1rem;width:40%}.skeleton-value{height:1.6rem;width:60%}.skeleton-block{height:7.5rem}.divider{height:1px;background:var(--border);border:0;margin:var(--space-1) 0}.card-body>.divider,.divider-spaced{margin-block:var(--space-4)}.disclosure{border:1px solid var(--border);border-radius:var(--radius-md);overflow:hidden}.disclosure summary{display:flex;align-items:center;gap:var(--space-2);min-height:40px;padding:0 var(--space-3);cursor:pointer;font-size:var(--fs-small);font-weight:500;color:var(--text-muted);background:var(--surface-inset);list-style:none;transition:color var(--dur-1) var(--ease-out)}.disclosure summary:hover{color:var(--text)}.disclosure summary::-webkit-details-marker{display:none}.disclosure summary:before{content:"";width:6px;height:6px;border-right:1.5px solid currentColor;border-bottom:1.5px solid currentColor;transform:rotate(-45deg);transition:transform var(--dur-2) var(--ease-out);flex-shrink:0}.disclosure[open] summary:before{transform:rotate(45deg)}.disclosure-body{padding:var(--space-3)}.legend{display:flex;gap:var(--space-2) var(--space-4);flex-wrap:wrap;font-size:var(--fs-caption);color:var(--text-muted)}.legend-item{display:inline-flex;align-items:center;gap:var(--space-2);cursor:default;transition:color var(--dur-1) var(--ease-out),transform var(--dur-2) var(--ease-out)}.legend-item:hover{color:var(--text);transform:translateY(-1px)}.legend-item:hover .dot,.legend-item:hover .legend-line{box-shadow:0 0 10px -1px currentColor}.legend-line{width:12px;height:2px;display:inline-block}.chart-frame{width:100%;min-width:0;min-height:0}.composition{display:flex;width:100%;height:30px;border-radius:var(--radius-sm);overflow:hidden;background:var(--surface-sunken);gap:2px;animation:wipe-x var(--dur-4) var(--ease-out) var(--chart-delay, 0ms) both}table.data tbody tr:nth-child(1) .composition{--chart-delay: 60ms}table.data tbody tr:nth-child(2) .composition{--chart-delay: .14s}table.data tbody tr:nth-child(3) .composition{--chart-delay: .22s}table.data tbody tr:nth-child(4) .composition{--chart-delay: .3s}table.data tbody tr:nth-child(n+5) .composition{--chart-delay: .38s}.composition-inline{height:20px}.composition-inline .composition-label{font-size:.625rem}.composition-segment{height:100%;min-width:2px;position:relative;cursor:pointer;transition:flex-basis var(--dur-3) var(--ease-out),transform var(--dur-2) var(--ease-out),filter var(--dur-2) var(--ease-out)}.composition:hover .composition-segment{filter:saturate(.55) brightness(.8)}.composition .composition-segment:hover{transform:scaleY(1.22);filter:saturate(1.15) brightness(1.12);z-index:1}.composition-label{position:absolute;top:0;right:0;bottom:0;left:0;display:grid;place-items:center;font-size:var(--fs-label);font-weight:700;color:#fff;text-shadow:0 1px 2px rgb(0 0 0 / .45);pointer-events:none}.drift-row{display:grid;grid-template-columns:minmax(6.5rem,8.25rem) minmax(0,1fr) minmax(3.5rem,4.5rem);gap:var(--space-3);align-items:center;font-size:var(--fs-small)}.drift-track{position:relative;height:18px;background:var(--surface-sunken);border-radius:var(--radius-sm);overflow:hidden}.drift-bar{animation:grow-x var(--dur-4) var(--ease-out) both}.drift-bar.over{transform-origin:left center}.drift-bar.under{transform-origin:right center}.drift-zero{position:absolute;left:50%;top:0;bottom:0;width:1px;background:var(--border-strong)}.drift-bar{position:absolute;top:3px;bottom:3px;border-radius:4px;transition:width var(--dur-3) var(--ease-out),left var(--dur-3) var(--ease-out)}.drift-bar.over{background:var(--warning)}.drift-bar.under{background:var(--info)}.expense-row{display:grid;grid-template-columns:minmax(5.5rem,8rem) minmax(0,1fr) 4.5rem 2.5rem;gap:var(--space-3);align-items:center;font-size:var(--fs-small)}.expense-track{height:8px}@container (max-width: 24rem){.expense-row{grid-template-columns:minmax(0,1fr) 4.5rem 2.5rem;row-gap:var(--space-1)}.expense-row>:first-child{grid-column:1 / -1}.drift-row{grid-template-columns:minmax(5rem,6.5rem) minmax(0,1fr) 3.5rem;gap:var(--space-2)}}.tooltip{background:var(--surface);border:1px solid var(--border-strong);border-radius:var(--radius-md);padding:var(--space-3);box-shadow:var(--shadow-3);font-size:var(--fs-small);min-width:11rem;-webkit-backdrop-filter:var(--glass-blur);backdrop-filter:var(--glass-blur)}.tooltip-label{font-weight:600;margin-bottom:var(--space-2);font-size:var(--fs-small)}.tooltip-row{display:flex;align-items:center;justify-content:space-between;gap:var(--space-4)}.tooltip-row+.tooltip-row{margin-top:2px}.alloc-bar{display:flex;width:100%;height:14px;border-radius:var(--radius-pill);overflow:hidden;background:var(--surface-sunken);animation:wipe-x var(--dur-4) var(--ease-out) both}.alloc-seg{height:100%;min-width:2px;cursor:pointer;transition:width var(--dur-3) var(--ease-out),transform var(--dur-2) var(--ease-out),filter var(--dur-2) var(--ease-out)}.alloc-bar:hover .alloc-seg{filter:saturate(.55) brightness(.8)}.alloc-bar .alloc-seg:hover{transform:scaleY(1.5);filter:saturate(1.15) brightness(1.15)}.alloc-seg+.alloc-seg{border-left:1px solid var(--bg-0)}.alloc-seg-free{background:var(--surface-hover)}.page>.stack>:nth-child(2){--stagger: 50ms}.page>.stack>:nth-child(3){--stagger: .1s}.page>.stack>:nth-child(4){--stagger: .15s}.page>.stack>:nth-child(n+5){--stagger: .2s}.page>.stack>:not(.grid,.stagger){animation:rise var(--dur-3) var(--ease-out) var(--stagger, 0ms) both}.page>.stack>.grid>*,.stagger>*{animation:rise var(--dur-3) var(--ease-out) calc(var(--stagger, 0ms) + var(--item-delay, 0ms)) both}.page>.stack>.grid>:nth-child(2),.stagger>:nth-child(2){--item-delay: 40ms}.page>.stack>.grid>:nth-child(3),.stagger>:nth-child(3){--item-delay: 80ms}.page>.stack>.grid>:nth-child(n+4),.stagger>:nth-child(n+4){--item-delay: .12s}@keyframes rise{0%{opacity:0;transform:translateY(6px)}to{opacity:1;transform:none}}@keyframes fade-in{0%{opacity:0}}@keyframes grow-x{0%{transform:scaleX(0)}}@keyframes wipe-x{0%{clip-path:inset(0 100% 0 0)}to{clip-path:inset(0 0 0 0)}}@keyframes draw-arc{0%{stroke-dashoffset:var(--arc-len)}}@keyframes shimmer{0%{background-position:100% 0}to{background-position:0 0}}@keyframes spin{to{transform:rotate(360deg)}}@keyframes pulse{50%{opacity:.45}}@keyframes blink{50%{opacity:0}}@media(max-width:767px),(pointer:coarse){.btn,.btn-sm,.nav-item,.input,.select,.disclosure summary,.suggestion,.switch button{min-height:var(--touch)}.btn-icon,.btn-icon.btn-sm{min-width:var(--touch)}.slider{height:var(--touch)}}@supports not ((-webkit-backdrop-filter: blur(1px)) or (backdrop-filter: blur(1px))){.card,.grid-4,.action,.sidebar,.topbar,.tooltip,.onboarding-card,.chat-panel,.assistant-dock,.trace{background:var(--surface-solid)}}@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation-duration:.01ms!important;animation-iteration-count:1!important;animation-delay:0ms!important;transition-duration:.01ms!important;scroll-behavior:auto!important}.skeleton{animation:none}}
