@font-face{font-family:DM Sans;font-style:normal;font-display:swap;font-weight:100 1000;src:url(/fonts/dm-sans-latin-wght-normal.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:DM Sans;font-style:normal;font-display:swap;font-weight:100 1000;src:url(/fonts/dm-sans-latin-ext-wght-normal.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:Space Grotesk;font-style:normal;font-display:swap;font-weight:300 700;src:url(/fonts/space-grotesk-latin-wght-normal.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:Space Grotesk;font-style:normal;font-display:swap;font-weight:300 700;src:url(/fonts/space-grotesk-latin-ext-wght-normal.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}:root{color-scheme:dark;--bg: #0c1013;--bg-sidebar: #0f1417;--surface-1: #141a1e;--surface-2: #192025;--surface-3: #20282e;--surface-sunken: #10151a;--border-subtle: #1d252a;--border: #252f35;--border-strong: #34414a;--text: #e8eef1;--text-secondary: #b6c2c9;--text-muted: #8f9ea7;--text-faint: #6f7d86;--accent: #b9ed8b;--accent-strong: #d2f6b1;--accent-soft: rgba(185, 237, 139, .1);--accent-border: rgba(185, 237, 139, .3);--on-accent: #0f1d08;--positive-fg: #bfe99a;--positive-bg: rgba(160, 222, 110, .12);--positive-border: rgba(160, 222, 110, .32);--success-fg: #8fdcc4;--success-bg: rgba(94, 204, 170, .12);--success-border: rgba(94, 204, 170, .3);--info-fg: #9dbdf5;--info-bg: rgba(110, 152, 235, .13);--info-border: rgba(110, 152, 235, .32);--shadow-fg: #c7b2f4;--shadow-bg: rgba(160, 128, 235, .13);--shadow-border: rgba(160, 128, 235, .32);--warning-fg: #ebc57f;--warning-bg: rgba(226, 176, 84, .12);--warning-border: rgba(226, 176, 84, .32);--attention-fg: #e4ae93;--attention-bg: rgba(214, 142, 104, .12);--attention-border: rgba(214, 142, 104, .3);--danger-fg: #f0a0a6;--danger-bg: rgba(229, 105, 115, .12);--danger-border: rgba(229, 105, 115, .32);--neutral-fg: #b3bfc7;--neutral-bg: rgba(160, 176, 186, .09);--neutral-border: rgba(160, 176, 186, .24);--chart-1: #b9ed8b;--chart-2: #7fa6ee;--chart-3: #e2b054;--chart-4: #b196ee;--chart-5: #5eccaa;--chart-grid: #232c32;--chart-axis: #8f9ea7;--font-sans: "DM Sans", ui-sans-serif, system-ui, -apple-system, "Segoe UI", sans-serif;--font-display: "Space Grotesk", "DM Sans", ui-sans-serif, system-ui, sans-serif;--font-mono: ui-monospace, "SFMono-Regular", "Cascadia Mono", Consolas, monospace;--text-2xs: 11px;--text-xs: 12px;--text-sm: 13px;--text-md: 14px;--text-lg: 16px;--text-xl: 20px;--text-2xl: 26px;--text-3xl: 32px;--weight-regular: 400;--weight-medium: 500;--weight-semibold: 600;--weight-bold: 700;--space-1: 4px;--space-2: 8px;--space-3: 12px;--space-4: 16px;--space-5: 20px;--space-6: 24px;--space-8: 32px;--space-10: 40px;--radius-sm: 4px;--radius-md: 6px;--radius-lg: 10px;--radius-pill: 999px;--shadow-panel: 0 1px 0 rgba(255, 255, 255, .025) inset, 0 12px 32px -24px rgba(0, 0, 0, .8);--shadow-overlay: 0 24px 64px -24px rgba(0, 0, 0, .85);--ease: cubic-bezier(.2, .7, .2, 1);--duration-fast: .12s;--duration: .2s;--sidebar-width: 236px;--topbar-height: 56px;--content-max: 1600px;--panel: var(--surface-1);--muted: var(--text-muted);--green: var(--accent)}*{box-sizing:border-box}html{-webkit-text-size-adjust:100%}body{margin:0;background:var(--bg);color:var(--text);font-family:var(--font-sans);font-size:var(--text-md);line-height:1.5;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}button,input,select{font:inherit}button,a,input,select,summary{-webkit-tap-highlight-color:transparent}a{color:inherit;text-decoration:none}button,select,input{background:var(--surface-1);border:1px solid var(--border);border-radius:var(--radius-md);color:var(--text)}button{cursor:pointer;padding:7px 12px;display:inline-flex;align-items:center;gap:var(--space-2);font-size:var(--text-sm);font-weight:var(--weight-medium);white-space:nowrap;transition:border-color var(--duration-fast) var(--ease),background-color var(--duration-fast) var(--ease),color var(--duration-fast) var(--ease)}button:hover:not(:disabled){border-color:var(--border-strong);background:var(--surface-2)}button:disabled{opacity:.45;cursor:not-allowed}a:hover{color:var(--accent-strong)}:focus-visible{outline:2px solid var(--accent);outline-offset:2px}h1,h2,h3,p{margin:0}h1{font-family:var(--font-display);font-size:var(--text-2xl);font-weight:var(--weight-semibold);letter-spacing:-.02em;line-height:1.2}h2{font-size:var(--text-md);font-weight:var(--weight-semibold);letter-spacing:-.005em}h3{font-size:var(--text-sm);font-weight:var(--weight-medium);color:var(--text-secondary)}p{color:var(--text-secondary)}code{font-family:var(--font-mono);font-size:var(--text-xs);color:var(--text-secondary)}strong{font-weight:var(--weight-semibold)}small{display:block;font-size:var(--text-xs);color:var(--text-muted)}.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:fixed;left:16px;top:-60px;background:var(--accent);color:var(--on-accent);padding:10px;border-radius:var(--radius-md);z-index:10}.skip-link:focus{top:10px;color:var(--on-accent)}.button-primary{background:var(--accent);border-color:var(--accent);color:var(--on-accent);font-weight:var(--weight-semibold);justify-content:center}.button-primary:hover:not(:disabled){background:var(--accent-strong);border-color:var(--accent-strong);color:var(--on-accent)}.button-quiet{background:transparent;border-color:transparent;color:var(--text-secondary)}.button-quiet:hover:not(:disabled){background:var(--surface-2);border-color:var(--border);color:var(--text)}.link-button{background:transparent;border:0;color:var(--accent);padding:0;font-weight:var(--weight-medium)}.link-button:hover:not(:disabled){background:transparent;color:var(--accent-strong);text-decoration:underline}.spin{animation:spin .9s linear infinite}@keyframes spin{to{transform:rotate(360deg)}}.brand-lockup{display:inline-flex;align-items:center;gap:10px;color:var(--text)}.brand-mark{display:block;width:26px;height:26px;flex:0 0 auto}.brand-wordmark{display:block;height:17px;width:auto}.brand-product{font-family:var(--font-display);font-size:var(--text-2xs);font-weight:var(--weight-semibold);letter-spacing:.14em;text-transform:uppercase;color:var(--accent);border:1px solid var(--accent-border);background:var(--accent-soft);border-radius:var(--radius-sm);padding:1px 6px;line-height:1.5}.app-shell{display:flex;min-height:100vh}.sidebar{width:var(--sidebar-width);flex:0 0 var(--sidebar-width);background:var(--bg-sidebar);border-right:1px solid var(--border-subtle);padding:var(--space-5) var(--space-3) 0;position:sticky;top:0;height:100vh;display:flex;flex-direction:column}.brand{display:flex;align-items:center;padding:var(--space-1) var(--space-3) var(--space-6)}.brand:hover{color:inherit}.nav-heading{font-size:var(--text-2xs);font-weight:var(--weight-semibold);letter-spacing:.1em;text-transform:uppercase;color:var(--text-faint);padding:0 var(--space-3) var(--space-2)}.sidebar nav{display:grid;gap:2px}.nav-item{display:flex;align-items:center;gap:var(--space-3);padding:9px var(--space-3);border-radius:var(--radius-md);color:var(--text-secondary);font-size:var(--text-sm);font-weight:var(--weight-medium);transition:background-color var(--duration-fast) var(--ease),color var(--duration-fast) var(--ease)}.nav-item svg{color:var(--text-muted);flex:0 0 auto}.nav-item:hover{background:var(--surface-1);color:var(--text)}.nav-item.active{background:var(--accent-soft);color:var(--accent-strong);box-shadow:inset 2px 0 var(--accent)}.nav-item.active svg{color:var(--accent)}.system-nav{margin-top:var(--space-4);position:relative}.system-nav:before{content:"";position:absolute;left:var(--space-3);right:var(--space-3);top:calc(-1 * var(--space-2));border-top:1px solid var(--border-subtle)}.sidebar-bottom{margin-top:auto;padding-top:var(--space-6);display:grid;gap:var(--space-2)}.access-card{border:1px solid var(--border-subtle);background:var(--surface-sunken);border-radius:var(--radius-md);display:flex;gap:var(--space-3);align-items:flex-start;padding:var(--space-3);font-size:var(--text-xs);font-weight:var(--weight-medium);color:var(--text-secondary)}.access-card svg{color:var(--accent);flex:0 0 auto;margin-top:1px}.access-card small{font-weight:var(--weight-regular);margin-top:1px}.sidebar-link{display:flex;align-items:center;gap:var(--space-2);color:var(--text-muted);font-size:var(--text-xs);padding:var(--space-2) var(--space-3);border-radius:var(--radius-md)}.sidebar-link svg:last-child{margin-left:auto}.profile{border-top:1px solid var(--border-subtle);padding:var(--space-4) var(--space-1);display:flex;align-items:center;gap:var(--space-3);font-size:var(--text-sm);font-weight:var(--weight-medium);min-width:0}.profile>div{min-width:0;flex:1}.profile small{white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.avatar{background:var(--accent-soft);border:1px solid var(--accent-border);color:var(--accent);border-radius:50%;width:32px;height:32px;flex:0 0 32px;display:grid;place-items:center;font-size:var(--text-sm);font-weight:var(--weight-semibold)}.profile>svg{color:var(--text-muted)}.profile{flex-wrap:wrap;row-gap:var(--space-3)}.profile>.logout{flex:1 1 100%;justify-content:center}.logout{flex:0 0 auto;padding:6px 9px;font-size:var(--text-xs);gap:6px;background:transparent;color:var(--text-secondary)}.main-shell{flex:1;min-width:0;display:flex;flex-direction:column}.topbar{height:var(--topbar-height);border-bottom:1px solid var(--border-subtle);padding:0 var(--space-8);display:flex;justify-content:space-between;align-items:center;gap:var(--space-4);font-size:var(--text-sm);background:color-mix(in srgb,var(--bg) 88%,transparent);position:sticky;top:0;z-index:5;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px)}.breadcrumb{display:flex;align-items:center;gap:var(--space-2);min-width:0}.breadcrumb>span{color:var(--text-muted)}.breadcrumb strong{font-weight:var(--weight-semibold)}.slash{color:var(--text-faint)}.topbar-actions{display:flex;align-items:center;gap:var(--space-2)}.environment{display:inline-flex;gap:var(--space-2);align-items:center;font-size:var(--text-xs);font-weight:var(--weight-medium);color:var(--text-secondary);border:1px solid var(--border);border-radius:var(--radius-pill);padding:3px 10px 3px 8px;white-space:nowrap}.environment-dot{width:7px;height:7px;border-radius:50%;background:var(--positive-fg);box-shadow:0 0 0 3px var(--positive-bg)}.environment.tone-warning .environment-dot{background:var(--warning-fg);box-shadow:0 0 0 3px var(--warning-bg)}.mobile-only{display:none}.demo-banner{margin:var(--space-5) var(--space-8) 0;background:var(--warning-bg);border:1px solid var(--warning-border);border-radius:var(--radius-md);display:flex;align-items:center;gap:var(--space-3);padding:var(--space-2) var(--space-3);color:var(--warning-fg);font-size:var(--text-xs)}.demo-banner strong{letter-spacing:.08em}.snapshot{margin-left:auto}main{padding:var(--space-8) var(--space-8) var(--space-10);flex:1;width:100%}footer{display:flex;justify-content:space-between;gap:var(--space-4);border-top:1px solid var(--border-subtle);padding:var(--space-4) var(--space-8);font-size:var(--text-xs);color:var(--text-faint)}footer strong{font-weight:var(--weight-semibold);color:var(--text-muted)}.page-heading{display:flex;justify-content:space-between;align-items:flex-end;gap:var(--space-5);margin-bottom:var(--space-6)}.page-heading p{font-size:var(--text-md);margin-top:var(--space-1)}.page-actions{display:flex;align-items:center;gap:var(--space-3);flex-wrap:wrap}.freshness{display:inline-flex;align-items:center;gap:var(--space-2);font-size:var(--text-xs);color:var(--text-muted);white-space:nowrap}.freshness time{color:var(--text-secondary);font-weight:var(--weight-medium);font-variant-numeric:tabular-nums}.freshness-dot{width:6px;height:6px;border-radius:50%;background:var(--positive-fg)}.date-chip{display:inline-flex;align-items:center;gap:var(--space-2);color:var(--text-muted);font-size:var(--text-xs)}.dashboard{display:grid;gap:var(--space-8)}.dashboard-section{display:grid;gap:var(--space-3)}.section-heading{display:flex;align-items:baseline;justify-content:space-between;gap:var(--space-4)}.section-heading h2{font-size:var(--text-xs);font-weight:var(--weight-semibold);letter-spacing:.1em;text-transform:uppercase;color:var(--text-muted)}.section-heading p{font-size:var(--text-xs);color:var(--text-faint)}.dashboard-row{display:grid;grid-template-columns:repeat(12,minmax(0,1fr));gap:var(--space-4)}.span-3{grid-column:span 3}.span-4{grid-column:span 4}.span-6{grid-column:span 6}.span-8{grid-column:span 8}.span-12{grid-column:1 / -1}.section-label{display:flex;gap:var(--space-4);align-items:baseline;letter-spacing:.1em;font-size:var(--text-xs);font-weight:var(--weight-semibold);color:var(--text-muted);margin-bottom:var(--space-3)}.section-label span{letter-spacing:0;font-weight:var(--weight-regular);color:var(--text-faint)}.metrics{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:var(--space-3)}.metrics+.metrics,.metrics+.overview-charts,.overview-charts+.metrics{margin-top:var(--space-4)}.metric{background:var(--surface-1);border:1px solid var(--border);border-radius:var(--radius-lg);padding:var(--space-4) var(--space-5);box-shadow:var(--shadow-panel);display:flex;flex-direction:column;min-width:0}.metric h3{font-size:var(--text-sm);font-weight:var(--weight-medium);color:var(--text-secondary)}.metric strong{display:block;font-family:var(--font-display);font-size:var(--text-3xl);letter-spacing:-.02em;font-weight:var(--weight-medium);font-variant-numeric:tabular-nums;line-height:1.15;margin:var(--space-2) 0 var(--space-2);color:var(--text)}.metric p{font-size:var(--text-xs);color:var(--text-muted);margin-top:auto}.metric.accent{border-color:var(--accent-border);background:linear-gradient(180deg,var(--accent-soft),transparent 70%),var(--surface-1)}.metric.accent strong{color:var(--accent)}.metric.compact,.secondary-metrics .metric{background:var(--surface-sunken);box-shadow:none;padding:var(--space-3) var(--space-4)}.metric.compact strong,.secondary-metrics .metric strong{font-size:var(--text-2xl);margin:var(--space-1) 0}.panel{background:var(--surface-1);border:1px solid var(--border);border-radius:var(--radius-lg);box-shadow:var(--shadow-panel);overflow:hidden;min-width:0}.panel-heading{display:flex;align-items:center;justify-content:space-between;padding:var(--space-4) var(--space-5);gap:var(--space-4)}.panel-heading p{font-size:var(--text-xs);color:var(--text-muted);margin-top:2px}.panel-status{display:inline-flex;align-items:center;gap:6px;font-size:var(--text-xs);color:var(--text-muted);white-space:nowrap}.text-link{display:flex;align-items:center;gap:var(--space-1);font-size:var(--text-xs);color:var(--text-secondary);white-space:nowrap}table{width:100%;border-collapse:collapse;text-align:left;white-space:nowrap;font-size:var(--text-sm)}th{font-size:var(--text-2xs);font-weight:var(--weight-semibold);color:var(--text-muted);letter-spacing:.06em;text-transform:uppercase;background:var(--surface-2);padding:8px 10px;border-top:1px solid var(--border);border-bottom:1px solid var(--border)}td{padding:6px 10px;line-height:1.35;border-bottom:1px solid var(--border-subtle);color:var(--text-secondary);font-variant-numeric:tabular-nums;vertical-align:middle}td strong{color:var(--text);font-weight:var(--weight-medium)}td small{font-size:var(--text-2xs);margin-top:1px}tbody tr:last-child td{border-bottom:0}tbody tr{transition:background-color var(--duration-fast) var(--ease)}tbody tr:hover{background:var(--surface-2)}.table-scroll{overflow:auto;position:relative;transition:opacity var(--duration) var(--ease)}.table-scroll.is-updating{opacity:.55}.panel>.table-scroll:first-child th{border-top:0}.badge{display:inline-flex;align-items:center;gap:6px;border-radius:var(--radius-pill);padding:1px 8px 1px 7px;font-size:var(--text-2xs);font-weight:var(--weight-medium);line-height:1.6;white-space:nowrap;border:1px solid var(--neutral-border);color:var(--neutral-fg);background:var(--neutral-bg)}.badge-dot{width:6px;height:6px;border-radius:50%;background:currentColor;flex:0 0 auto}.badge.tone-positive{color:var(--positive-fg);border-color:var(--positive-border);background:var(--positive-bg)}.badge.tone-success{color:var(--success-fg);border-color:var(--success-border);background:var(--success-bg)}.badge.tone-info{color:var(--info-fg);border-color:var(--info-border);background:var(--info-bg)}.badge.tone-shadow{color:var(--shadow-fg);border-color:var(--shadow-border);background:var(--shadow-bg)}.badge.tone-warning{color:var(--warning-fg);border-color:var(--warning-border);background:var(--warning-bg)}.badge.tone-attention{color:var(--attention-fg);border-color:var(--attention-border);background:var(--attention-bg)}.badge.tone-danger{color:var(--danger-fg);border-color:var(--danger-border);background:var(--danger-bg)}.badge.tone-neutral .badge-dot,.badge.tone-info .badge-dot{background:transparent;box-shadow:inset 0 0 0 1.5px currentColor}.toolbar{display:flex;align-items:center;flex-wrap:wrap;gap:var(--space-2);margin-bottom:var(--space-4)}.search{display:flex;align-items:center;gap:var(--space-2);flex:1;min-width:220px;max-width:420px;height:38px;border:1px solid var(--border);border-radius:var(--radius-md);padding:0 var(--space-3);color:var(--text-muted);background:var(--surface-1);transition:border-color var(--duration-fast) var(--ease)}.search:focus-within{border-color:var(--accent-border)}.search input{border:0;background:transparent;padding:0;height:100%;width:100%;font-size:var(--text-sm);outline:none}.search input::placeholder{color:var(--text-faint)}.filter{display:inline-flex;align-items:center;height:38px;border:1px solid var(--border);border-radius:var(--radius-md);background:var(--surface-1);padding-left:var(--space-3);max-width:260px;transition:border-color var(--duration-fast) var(--ease)}.filter:focus-within{border-color:var(--accent-border)}.filter-label{font-size:var(--text-xs);font-weight:var(--weight-medium);color:var(--text-muted);white-space:nowrap}.filter-label:after{content:":"}.filter select{border:0;background:transparent;height:100%;padding:0 var(--space-3) 0 6px;font-size:var(--text-sm);font-weight:var(--weight-medium);min-width:0;max-width:200px;cursor:pointer}.filter select:focus-visible{outline:none}select{padding:9px 30px 9px 12px;max-width:220px}select option{background:var(--surface-2);color:var(--text)}.pagination{display:flex;justify-content:space-between;align-items:center;border-top:1px solid var(--border);padding:10px var(--space-4);color:var(--text-muted);font-size:var(--text-xs);font-variant-numeric:tabular-nums}.pagination-summary,.pagination-controls{display:flex;align-items:center;gap:var(--space-3)}.pagination-controls{gap:6px}.pagination-range{color:var(--text-faint)}.page-size{display:inline-flex;align-items:center;gap:var(--space-2);margin-right:var(--space-2);white-space:nowrap}.page-size select{padding:4px 24px 4px 8px;font-size:var(--text-xs)}.pagination button{padding:5px}.state{text-align:center;padding:var(--space-10) var(--space-6);color:var(--text-muted)}.state p{margin:var(--space-3) 0}.state-error{display:grid;justify-items:start;gap:var(--space-2);text-align:left;margin:var(--space-4);padding:var(--space-5);border:1px solid var(--danger-border);background:var(--danger-bg);border-radius:var(--radius-lg)}.state-error-title{display:flex;align-items:center;gap:var(--space-2);color:var(--text);font-size:var(--text-md)}.state-error-title svg{color:var(--danger-fg)}.state-error p{margin:0;color:var(--text-secondary);font-size:var(--text-sm)}.reference{display:inline-flex;flex-wrap:wrap;align-items:center;gap:var(--space-2);font-size:var(--text-xs);color:var(--text-muted)}.reference code{-webkit-user-select:all;user-select:all;background:var(--surface-sunken);border:1px solid var(--border);border-radius:var(--radius-sm);padding:1px 6px}.reference button{padding:3px 8px;font-size:var(--text-2xs)}.state-error-actions{margin-top:var(--space-2)}.empty{display:grid;justify-items:center;gap:var(--space-2);text-align:center;padding:var(--space-8) var(--space-6);color:var(--text-muted);font-size:var(--text-sm);white-space:normal}.empty strong{color:var(--text-secondary);font-weight:var(--weight-medium)}.empty button{margin-top:var(--space-1)}.skeleton{display:block;height:12px;border-radius:var(--radius-sm);background:linear-gradient(90deg,var(--surface-2) 0%,var(--surface-3) 45%,var(--surface-2) 90%);background-size:220% 100%;animation:shimmer 1.4s ease-in-out infinite}.skeleton-value{height:30px;width:42%;margin:var(--space-3) 0 var(--space-2)}.skeleton-title{width:55%}.skeleton-note{width:70%;height:10px}.metric-skeleton{min-height:118px}.table-skeleton td{padding-top:14px;padding-bottom:14px}.table-skeleton .skeleton{min-width:48px;width:72%}.table-skeleton td:nth-child(3n+2) .skeleton{width:88%}.table-skeleton td:nth-child(3n) .skeleton{width:56%}.table-skeleton tr:nth-child(2n) td:nth-child(odd) .skeleton{width:64%}@keyframes shimmer{0%{background-position:100% 0}to{background-position:-100% 0}}@media(prefers-reduced-motion:reduce){.skeleton,.spin{animation:none}*{transition-duration:.01ms!important}}.auth-screen{min-height:100vh;display:grid;place-items:center;align-content:center;gap:var(--space-5);padding:var(--space-8) var(--space-4);background:radial-gradient(900px 420px at 50% -10%,rgba(185,237,139,.07),transparent 70%),var(--bg)}.auth-card{width:min(100%,420px);background:var(--surface-1);border:1px solid var(--border);border-radius:14px;box-shadow:var(--shadow-overlay);padding:var(--space-8)}.auth-brand{display:flex;align-items:center;justify-content:space-between;gap:var(--space-3);padding-bottom:var(--space-6);margin-bottom:var(--space-6);border-bottom:1px solid var(--border-subtle)}.auth-brand .brand-mark{width:30px;height:30px}.auth-brand .brand-wordmark{height:19px}.auth-card h1{font-size:var(--text-xl);letter-spacing:-.01em}.auth-card>p,.auth-card form>p:not([role=alert]){margin:var(--space-2) 0 0;font-size:var(--text-sm);color:var(--text-muted)}.auth-card>svg{color:var(--accent);margin-bottom:var(--space-4)}.auth-card code{color:var(--accent-strong)}.auth-card a{display:inline-block;margin-top:var(--space-4);color:var(--accent);font-weight:var(--weight-medium)}.auth-card>button{margin-top:var(--space-5)}.auth-footnote{display:inline-flex;align-items:center;gap:var(--space-2);font-size:var(--text-xs);color:var(--text-faint)}.auth-footnote svg{color:var(--text-muted)}.login-form{display:grid;gap:var(--space-4);width:100%;margin-top:var(--space-5);text-align:left}.login-form label{display:grid;gap:6px;font-size:var(--text-xs);font-weight:var(--weight-semibold);color:var(--text-secondary)}.login-form input{height:40px;border:1px solid var(--border-strong);border-radius:var(--radius-md);background:var(--surface-sunken);color:var(--text);padding:0 var(--space-3);font-size:var(--text-md);font-weight:var(--weight-regular);transition:border-color var(--duration-fast) var(--ease)}.login-form input:focus-visible{outline:none;border-color:var(--accent);box-shadow:0 0 0 3px var(--accent-soft)}.login-form button:not(.link-button){height:40px;width:100%;justify-content:center;background:var(--accent);border-color:var(--accent);color:var(--on-accent);font-weight:var(--weight-semibold);font-size:var(--text-sm)}.login-form button:not(.link-button):hover:not(:disabled){background:var(--accent-strong);border-color:var(--accent-strong)}.login-form .link-button{justify-self:start;font-size:var(--text-sm)}.login-form [role=alert],.auth-card>[role=alert]{margin:0;padding:var(--space-2) var(--space-3);border:1px solid var(--danger-border);background:var(--danger-bg);border-radius:var(--radius-md);color:var(--danger-fg);font-size:var(--text-sm)}.mfa-qr{width:200px;height:200px;background:#fff;padding:8px;border-radius:var(--radius-md);display:block;margin:var(--space-5) auto}.overview-charts{display:grid;grid-template-columns:minmax(0,1.8fr) minmax(250px,1fr);gap:var(--space-4)}.chart{padding:0 var(--space-5) var(--space-4)}.chart>svg{width:100%;display:block}.legend{display:flex;gap:var(--space-5);margin:0 0 var(--space-3);color:var(--text-muted);font-size:var(--text-xs)}.legend span{display:flex;align-items:center;gap:6px}.chart details{font-size:var(--text-xs);color:var(--text-muted);margin-top:var(--space-1)}summary{cursor:pointer;width:fit-content}.coverage-number{font-family:var(--font-display);font-size:44px;letter-spacing:-.03em;padding:0 var(--space-5);line-height:1.2;color:var(--accent);margin-top:var(--space-1)}.coverage-number>span{font-size:var(--text-xl);margin-left:10px;color:var(--text-muted);letter-spacing:0}.bars{padding:var(--space-1) var(--space-5) var(--space-5);display:grid;gap:var(--space-3)}.bar-item>div{display:flex;justify-content:space-between;gap:var(--space-4);font-size:var(--text-xs);margin-bottom:6px}.bar-item>div>span{color:var(--text-secondary)}.bar-item>svg{display:block;height:5px;width:100%;border-radius:2px}.coverage-number+.bars{margin-top:var(--space-5)}.coverage-foot{display:grid;gap:var(--space-3);border-top:1px solid var(--border);padding:var(--space-4) var(--space-5);font-size:var(--text-xs);color:var(--text-muted)}.coverage-foot a{display:flex;gap:5px;align-items:center;color:var(--accent)}.secondary-metrics{margin-bottom:var(--space-6)}.analytics-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:var(--space-5)}.analytics-grid>.wide{grid-column:1/-1}.chart-note{font-size:var(--text-xs);margin:0 0 var(--space-5);padding:var(--space-3) var(--space-4);border-left:2px solid var(--accent-border);background:var(--accent-soft)}.system-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:var(--space-5)}.definition-list{padding:0 var(--space-5) var(--space-5);margin:0}.definition-list>div{display:flex;justify-content:space-between;align-items:center;gap:var(--space-5);padding:var(--space-3) 0;border-bottom:1px solid var(--border)}dt{color:var(--text-muted);font-size:var(--text-xs)}dd{margin:0;font-size:var(--text-xs);text-align:right}.architecture{padding:0 var(--space-5) var(--space-5);display:grid;gap:var(--space-3)}.architecture>div{border:1px solid var(--border);border-radius:var(--radius-md);padding:var(--space-3);color:var(--text-secondary);font-size:var(--text-sm)}.architecture small{margin-top:var(--space-1)}.readiness{padding:0 var(--space-5) var(--space-5);color:var(--text-secondary);font-size:var(--text-sm)}.readiness p{margin:var(--space-2) 0 var(--space-3)}.readiness ol{padding-left:18px;margin:0}.readiness li{padding:var(--space-1) 0}.evidence{padding:0 var(--space-5) var(--space-5);display:flex;flex-wrap:wrap;gap:var(--space-2)}.evidence-key{margin:var(--space-4) 0;font-size:var(--text-xs);color:var(--text-muted)}@media(min-width:1680px){main{max-width:var(--content-max);margin:0 auto;padding-left:var(--space-10);padding-right:var(--space-10)}}@media(max-width:1200px){:root{--sidebar-width: 208px}main{padding:var(--space-6)}.topbar{padding:0 var(--space-6)}footer{padding-left:var(--space-6);padding-right:var(--space-6)}.demo-banner{margin-left:var(--space-6);margin-right:var(--space-6)}.snapshot{display:none}.metric{padding:var(--space-4)}.metric strong{font-size:28px}.overview-charts{grid-template-columns:minmax(0,1.6fr) minmax(230px,1fr)}.span-3{grid-column:span 6}.span-4,.span-8{grid-column:span 12}}@media(max-width:1024px){.metrics{grid-template-columns:repeat(2,minmax(0,1fr))}.overview-charts,.analytics-grid,.system-grid{grid-template-columns:1fr}.page-heading{align-items:flex-start;flex-direction:column;gap:var(--space-3)}.span-6{grid-column:span 12}.coverage-foot{display:flex;justify-content:space-between}}@media(max-width:640px){.app-shell{display:block}.sidebar{position:static;width:100%;height:auto;padding:var(--space-3) var(--space-3) var(--space-2);border-right:0;border-bottom:1px solid var(--border-subtle)}.brand{padding:var(--space-1) var(--space-2) var(--space-3)}.nav-heading,.sidebar-bottom{display:none}.sidebar nav{display:flex;overflow-x:auto;gap:var(--space-1)}.nav-item{white-space:nowrap;font-size:var(--text-xs);padding:7px 10px}.nav-item.active{box-shadow:inset 0 -2px var(--accent)}.nav-item svg{width:15px}.system-nav{margin-top:0}.system-nav:before{display:none}.mobile-only{display:inline-flex}.topbar{position:static;height:48px;padding:0 var(--space-4)}.environment{padding:2px 8px 2px 6px}.demo-banner{margin:var(--space-3) var(--space-4) 0;flex-wrap:wrap;gap:6px}.demo-banner>span:not(.snapshot){width:100%}main{padding:var(--space-5) var(--space-4)}h1,.page-heading h1{font-size:23px}.metrics{gap:var(--space-2)}.metric strong{font-size:26px}.metric.compact strong,.secondary-metrics .metric strong{font-size:22px}.section-label{display:block}.section-label span{margin-left:10px}.panel-heading{padding:var(--space-3) var(--space-4)}footer{padding:var(--space-3) var(--space-4);flex-direction:column;gap:2px}.toolbar>.search{max-width:none;flex-basis:100%}.toolbar>.filter{flex:1 1 140px;max-width:none}.filter select{flex:1;max-width:none}.auth-card{padding:var(--space-6) var(--space-5)}}@media(max-width:420px){.metrics{grid-template-columns:1fr}}.dashboard .secondary-metrics{margin-bottom:0}th:first-child,td:first-child{padding-left:var(--space-4)}th:last-child,td:last-child{padding-right:var(--space-4)}th.align-end,td.align-end{text-align:right}th.align-end .sort-button{margin-left:auto}.sort-button{display:inline-flex;align-items:center;gap:4px;padding:0;border:0;background:transparent;color:inherit;font:inherit;letter-spacing:inherit;text-transform:inherit;font-weight:inherit;border-radius:var(--radius-sm)}.sort-button:hover:not(:disabled){background:transparent;color:var(--text)}.sort-button.active{color:var(--accent)}.sort-icon.idle{opacity:.45}.sort-button:hover .sort-icon.idle{opacity:.9}.table-scroll.sticky-header{max-height:max(420px,calc(100vh - 290px));overscroll-behavior:contain}.table-scroll.sticky-header thead th{position:sticky;top:0;z-index:1;box-shadow:0 1px 0 var(--border)}.cell-stack{display:grid;gap:0;min-width:0}.cell-stack>*,td time>*{line-height:1.3}.cell-stack small,td time small{font-size:var(--text-2xs);color:var(--text-faint)}td time{display:grid;gap:1px}td time strong{font-weight:var(--weight-medium)}.truncate{display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;max-width:100%}td.col-name,th.col-name{min-width:200px}td.col-learner,th.col-learner{min-width:150px}td.col-simulation,th.col-simulation{min-width:170px}td.col-outcome,th.col-outcome{min-width:120px}td.col-build,th.col-build{min-width:140px}td.col-category{white-space:normal;max-width:150px;min-width:120px}.col-name .truncate{max-width:300px}.col-learner .truncate{max-width:200px}.col-simulation .truncate{max-width:240px}.col-outcome .truncate{max-width:180px}.build{max-width:170px;font-family:var(--font-mono)}.muted{color:var(--text-faint)}.id-value{display:inline-flex;align-items:center;gap:4px;min-width:0;max-width:100%}.id-value code,.id-value small{color:var(--text-faint);font-size:var(--text-2xs)}.copy-button{flex:0 0 auto;display:inline-grid;place-items:center;width:20px;height:16px;margin:-1px 0;padding:0;border-color:transparent;background:transparent;color:var(--text-faint);opacity:.7}tr:hover .copy-button,.copy-button:focus-visible{opacity:1}.copy-button:hover:not(:disabled){color:var(--text);border-color:var(--border)}.score-cell{display:grid;gap:1px}.score-value{font-family:var(--font-display);font-size:15px;font-weight:var(--weight-semibold);color:var(--text);line-height:1.2}.score-value.is-empty{color:var(--text-faint);font-weight:var(--weight-regular)}.score-cell small{font-size:var(--text-2xs);color:var(--text-faint)}.outcome{color:var(--text-secondary)}.mode-line{display:inline-flex;align-items:center;gap:6px}.rate-cell{display:inline-grid;grid-template-columns:34px 40px;align-items:center;gap:var(--space-2)}.rate-value{text-align:right;color:var(--text)}.rate-cell svg{width:40px;height:4px;display:block;border-radius:2px}.rate-track{fill:var(--surface-3)}.rate-fill{fill:var(--accent);opacity:.75}.flag-list{display:inline-flex;flex-wrap:wrap;gap:4px}.stage{color:var(--text-secondary)}.filter.is-active{border-color:var(--accent-border);background:var(--accent-soft)}.clear-filters{height:38px}.table-notice{margin:0;padding:var(--space-2) var(--space-4);font-size:var(--text-xs);color:var(--warning-fg);background:var(--warning-bg);border-top:1px solid var(--warning-border)}@media(max-width:640px){.col-low{display:none}.table-scroll.sticky-header{max-height:none}.pagination{flex-wrap:wrap;gap:var(--space-2)}.pagination-range,.page-size>span{display:none}.copy-button{width:28px;height:28px;opacity:1}}.span-5{grid-column:span 5}.span-7{grid-column:span 7}.dashboard-row>.panel{display:flex;flex-direction:column}.dashboard-row.is-updating{opacity:.6;transition:opacity var(--duration) var(--ease)}.panel-body{padding:0 var(--space-5) var(--space-5)}.panel-subheading{margin:var(--space-5) 0 var(--space-3);font-size:var(--text-xs);font-weight:var(--weight-semibold);letter-spacing:.08em;text-transform:uppercase;color:var(--text-muted)}.panel-footnote{margin:0;padding:0 var(--space-5) var(--space-4);font-size:var(--text-xs);color:var(--text-faint)}.segmented-control{display:inline-flex;padding:2px;border:1px solid var(--border);border-radius:var(--radius-md);background:var(--surface-sunken)}.segmented-control button{border:0;background:transparent;color:var(--text-muted);padding:5px 12px;font-size:var(--text-xs);font-weight:var(--weight-semibold);border-radius:var(--radius-sm)}.segmented-control button:hover:not(:disabled){background:var(--surface-2);color:var(--text)}.segmented-control button.is-selected{background:var(--accent-soft);color:var(--accent-strong);box-shadow:inset 0 0 0 1px var(--accent-border)}.kpi-strip{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:var(--space-3)}.kpi{background:var(--surface-1);border:1px solid var(--border);border-radius:var(--radius-lg);box-shadow:var(--shadow-panel);padding:var(--space-4);display:flex;flex-direction:column;gap:var(--space-1);min-width:0}.kpi h3{font-size:var(--text-xs);font-weight:var(--weight-medium);color:var(--text-secondary)}.kpi strong{font-family:var(--font-display);font-size:var(--text-2xl);font-weight:var(--weight-medium);letter-spacing:-.02em;font-variant-numeric:tabular-nums;line-height:1.15;color:var(--text)}.kpi.accent{border-color:var(--accent-border)}.kpi.accent strong{color:var(--accent)}.kpi-of{font-size:var(--text-md);color:var(--text-muted);letter-spacing:0}.kpi-foot{margin-top:auto;font-size:var(--text-2xs);color:var(--text-muted);line-height:1.4}.delta-row{display:flex;flex-wrap:wrap;gap:4px}.delta{padding:1px 6px;border-radius:var(--radius-pill);background:var(--positive-bg);color:var(--positive-fg);font-weight:var(--weight-medium);white-space:nowrap}.stat-row{display:flex;flex-wrap:wrap;gap:var(--space-2) var(--space-6);margin:0;padding:0 var(--space-5) var(--space-3)}.stat-row>div{display:grid;gap:1px}.stat-row dt{font-size:var(--text-2xs);color:var(--text-muted);text-transform:uppercase;letter-spacing:.06em}.stat-row dd{margin:0;text-align:left;font-size:var(--text-lg);font-weight:var(--weight-semibold);color:var(--text-secondary);font-variant-numeric:tabular-nums}.stat-row .is-primary dd{font-family:var(--font-display);font-size:var(--text-xl);color:var(--text)}.metric-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:var(--space-3);margin:0}.metric-grid>div{background:var(--surface-sunken);border:1px solid var(--border-subtle);border-radius:var(--radius-md);padding:var(--space-3);display:grid;gap:2px}.metric-grid dt{font-size:var(--text-xs);color:var(--text-secondary)}.metric-grid dd{margin:0;text-align:left;font-family:var(--font-display);font-size:var(--text-2xl);font-weight:var(--weight-medium);color:var(--text);font-variant-numeric:tabular-nums}.chart{padding:0 var(--space-5) var(--space-4);min-width:0}.chart-svg{display:block;width:100%;height:auto;overflow:visible;border-radius:var(--radius-sm)}.chart-svg:focus-visible{outline-offset:4px}.chart-grid line{stroke:var(--chart-grid);stroke-dasharray:2 4}.chart-axis{fill:var(--chart-axis);font-size:11px;font-family:var(--font-sans);font-variant-numeric:tabular-nums}.chart-line{fill:none;stroke-width:2;stroke-linejoin:round;stroke-linecap:round}.chart-area{opacity:.1}.chart-guide{stroke:var(--border-strong);stroke-dasharray:3 3}.chart-dot{stroke:var(--surface-1);stroke-width:2}.chart-bar{opacity:.8;transition:opacity var(--duration-fast) var(--ease)}.chart-bar.is-active{opacity:1}.chart-hit{fill:transparent}.chart-uncovered rect{fill:var(--surface-2);opacity:.6}.chart-uncovered text{fill:var(--text-faint);font-size:11px;font-family:var(--font-sans)}.chart-tooltip rect{fill:var(--surface-3);stroke:var(--border-strong)}.chart-tooltip text{fill:var(--text-secondary);font-size:12px;font-family:var(--font-sans);font-variant-numeric:tabular-nums}.chart-tooltip text.strong{fill:var(--text);font-weight:var(--weight-semibold)}.fill-tone-1{fill:var(--chart-1);background:var(--chart-1)}.fill-tone-2{fill:var(--chart-2);background:var(--chart-2)}.fill-tone-3{fill:var(--chart-3);background:var(--chart-3)}.fill-tone-4{fill:var(--chart-4);background:var(--chart-4)}.fill-tone-5{fill:var(--chart-5);background:var(--chart-5)}.stroke-tone-1{stroke:var(--chart-1)}.stroke-tone-2{stroke:var(--chart-2)}.stroke-tone-3{stroke:var(--chart-3)}.stroke-tone-4{stroke:var(--chart-4)}.stroke-tone-5{stroke:var(--chart-5)}.legend-swatch{display:inline-block;width:10px;height:10px;border-radius:3px;flex:0 0 auto}.chart-data{margin-top:var(--space-2);font-size:var(--text-xs);color:var(--text-muted)}.chart-data .table-scroll{max-height:240px;margin-top:var(--space-2);border:1px solid var(--border-subtle);border-radius:var(--radius-md)}.chart-empty{display:grid;place-items:center;min-height:150px;padding:var(--space-6);text-align:center;color:var(--text-muted);font-size:var(--text-sm)}.chart-skeleton{margin:0 var(--space-5) var(--space-5);min-height:170px;border-radius:var(--radius-md);background:linear-gradient(90deg,var(--surface-2) 0%,var(--surface-3) 45%,var(--surface-2) 90%);background-size:220% 100%;animation:shimmer 1.4s ease-in-out infinite}.partial-tag{font-size:var(--text-2xs);font-weight:var(--weight-semibold);color:var(--warning-fg);border:1px solid var(--warning-border);background:var(--warning-bg);border-radius:var(--radius-pill);padding:1px 8px}.coverage-notice{display:flex;gap:var(--space-2);align-items:flex-start;margin:0;padding:var(--space-2) var(--space-3);border:1px solid var(--warning-border);background:var(--warning-bg);border-radius:var(--radius-md);color:var(--warning-fg);font-size:var(--text-xs)}.coverage-notice svg{flex:0 0 auto;margin-top:2px}.bar-list{list-style:none;margin:0;padding:0;display:grid;gap:var(--space-3)}.bar-list li{display:grid;gap:5px;min-width:0}.bar-list-text{display:flex;justify-content:space-between;gap:var(--space-3);font-size:var(--text-sm);min-width:0}.bar-list-label{display:grid;min-width:0}.bar-list-label a,.bar-list-label>span{color:var(--text);font-weight:var(--weight-medium)}.bar-list-label small,.bar-list-value small{font-size:var(--text-2xs);color:var(--text-faint)}.bar-list-value{display:grid;justify-items:end;text-align:right;white-space:nowrap;color:var(--text-secondary);font-variant-numeric:tabular-nums}.bar-list svg{display:block;width:100%;height:4px;border-radius:2px}.bar-track{fill:var(--surface-3)}.coverage-headline{margin:0 0 var(--space-3);font-size:var(--text-sm);color:var(--text-secondary)}.coverage-headline strong{font-family:var(--font-display);font-size:var(--text-2xl);color:var(--accent)}.segmented svg{display:block;width:100%;height:10px;border-radius:3px;overflow:hidden}.segment-positive{fill:var(--positive-fg);background:var(--positive-fg)}.segment-warning{fill:var(--warning-fg);background:var(--warning-fg)}.segment-shadow{fill:var(--shadow-fg);background:var(--shadow-fg)}.segment-info{fill:var(--info-fg);background:var(--info-fg)}.segment-neutral{fill:var(--neutral-border);background:var(--neutral-border)}.segment-legend{list-style:none;margin:var(--space-4) 0 0;padding:0;display:grid;gap:var(--space-2)}.segment-legend li{display:flex;align-items:center;gap:var(--space-2);font-size:var(--text-sm);color:var(--text-secondary)}.segment-legend strong{margin-left:auto;color:var(--text);font-variant-numeric:tabular-nums}.segment-legend li.is-zero{color:var(--text-faint)}.attention-list{list-style:none;margin:0;padding:0 var(--space-3) var(--space-3);display:grid;gap:var(--space-1)}.attention-list li{display:grid;grid-template-columns:auto minmax(0,1fr) auto;gap:var(--space-3);align-items:center;padding:var(--space-2) var(--space-3);border-radius:var(--radius-md);border:1px solid var(--border-subtle)}.attention-list li>div{display:grid;min-width:0}.attention-list a{color:var(--text);font-weight:var(--weight-medium);font-size:var(--text-sm)}.attention-list small{font-size:var(--text-2xs);color:var(--text-faint)}.attention-icon{display:grid;place-items:center;width:26px;height:26px;border-radius:50%}.severity-attention .attention-icon{color:var(--warning-fg);background:var(--warning-bg)}.severity-review .attention-icon{color:var(--info-fg);background:var(--info-bg)}.attention-meta{display:grid;justify-items:end}.attention-meta strong{font-family:var(--font-display);font-size:var(--text-lg);color:var(--text);font-variant-numeric:tabular-nums}.attention-severity{font-size:var(--text-2xs);color:var(--text-faint);text-transform:uppercase;letter-spacing:.06em}@media(max-width:1440px){.kpi-strip{grid-template-columns:repeat(3,minmax(0,1fr))}}@media(max-width:1200px){.span-5,.span-7{grid-column:1 / -1}}@media(max-width:640px){.kpi-strip{grid-template-columns:repeat(2,minmax(0,1fr))}.kpi strong{font-size:var(--text-xl)}.chart,.panel-body,.stat-row{padding-left:var(--space-3);padding-right:var(--space-3)}.metric-grid{gap:var(--space-2)}.metric-grid dd{font-size:var(--text-xl)}.page-actions{width:100%}}.coverage-notice>div{display:grid;gap:2px}.coverage-notice p{margin:0;color:inherit}.partial-inline{color:var(--warning-fg);font-weight:var(--weight-semibold)}
