:root{color-scheme:dark;--surface-sunken:#081220;--surface-base:#0C1B2A;--surface-raised:#102236;--surface-overlay:#16293F;--surface-high:#1D3450;--scrim:rgba(8,18,32,0.72);--ink-primary:#F7F3EC;--ink-secondary:#C6CFD9;--ink-tertiary:#8FA1B3;--ink-disabled:#5A6B7C;--ink-inverse:#0C1B2A;--accent:#B9975B;--accent-strong:#D3B98A;--accent-press:#A5854C;--accent-muted:#96794A;--accent-wash:rgba(185,151,91,0.08);--accent-tint:rgba(185,151,91,0.16);--line:rgba(185,151,91,0.16);--line-strong:rgba(185,151,91,0.32);--line-neutral:rgba(247,243,236,0.10);--focus-ring:#D3B98A;--data-gain:#4C9E7E;--data-loss:#D0796E;--data-loss-chip:#D98A80;--data-neutral:#8FA1B3;--data-gain-wash:rgba(76,158,126,0.12);--data-loss-wash:rgba(208,121,110,0.12);--text-2xs:0.6875rem;--text-xs:0.8rem;--text-sm:0.875rem;--text-base:1rem;--text-lg:1.25rem;--text-xl:1.5625rem;--text-2xl:1.9375rem;--text-3xl:2.4375rem;--text-4xl:3.0625rem;--leading-tight:1.08;--leading-snug:1.3;--leading-body:1.6;--tracking-stamp:0.14em;--tracking-caps:0.08em;--tracking-wordmark:0.22em;--weight-regular:400;--weight-medium:500;--weight-semibold:600;--measure:68ch;--tap-min:44px;--radius-none:0;--radius-sm:4px;--dur-fast:150ms;--dur-base:200ms;--dur-slow:280ms;--ease-out:cubic-bezier(0.22,1,0.36,1);--ease-exit:cubic-bezier(0.4,0,1,1);--rise:8px;--z-sticky:100;--z-dropdown:200;--z-overlay:300;--shadow:0 24px 70px rgba(2,9,17,.22);--container:74rem;--sp-1:.35rem;--sp-2:.7rem;--sp-3:1rem;--sp-4:1.5rem;--sp-5:2.2rem;--sp-6:3.5rem;--r-md:10px;--r-pill:999px;--font-serif:"Source Serif 4",Georgia,"Times New Roman",serif;--font-sans:"Inter",ui-sans-serif,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;--font-mono:"IBM Plex Mono",ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,monospace;--r-module:var(--r-md);--r-control:var(--radius-sm);--r-structural:var(--radius-none);--shell-header-h:3.25rem;--shell-rail-w:14.5rem;--shell-rail-w-collapsed:3.25rem;--row-h:2.5rem;--row-h-tall:3.25rem;--table-head-h:2.25rem;--toolbar-h:2.5rem;--control-h:2rem;--urgency-steady:var(--data-neutral);--urgency-watch:var(--accent-muted);--urgency-soon:var(--accent-strong);--urgency-late:var(--data-loss-chip);--urgency-breached:var(--data-loss);--urgency-steady-wash:var(--accent-wash);--urgency-soon-wash:var(--accent-tint);--urgency-breached-wash:var(--data-loss-wash)}@font-face{font-family:Inter;font-style:normal;font-display:swap;font-weight:400;src:url(/fonts/inter-latin-ext-400-normal.woff2) format("woff2");unicode-range:u+0100-02ba,u+02bd-02c5,u+02c7-02cc,u+02ce-02d7,u+02dd-02ff,u+0304,u+0308,u+0329,u+1d00-1dbf,u+1e00-1e9f,u+1ef2-1eff,u+2020,u+20a0-20ab,u+20ad-20c0,u+2113,u+2c60-2c7f,u+a720-a7ff}@font-face{font-family:Inter;font-style:normal;font-display:swap;font-weight:400;src:url(/fonts/inter-latin-400-normal.woff2) format("woff2");unicode-range:u+00??,u+0131,u+0152-0153,u+02bb-02bc,u+02c6,u+02da,u+02dc,u+0304,u+0308,u+0329,u+2000-206f,u+20ac,u+2122,u+2191,u+2193,u+2212,u+2215,u+feff,u+fffd}@font-face{font-family:Inter;font-style:normal;font-display:swap;font-weight:500;src:url(/fonts/inter-latin-ext-500-normal.woff2) format("woff2");unicode-range:u+0100-02ba,u+02bd-02c5,u+02c7-02cc,u+02ce-02d7,u+02dd-02ff,u+0304,u+0308,u+0329,u+1d00-1dbf,u+1e00-1e9f,u+1ef2-1eff,u+2020,u+20a0-20ab,u+20ad-20c0,u+2113,u+2c60-2c7f,u+a720-a7ff}@font-face{font-family:Inter;font-style:normal;font-display:swap;font-weight:500;src:url(/fonts/inter-latin-500-normal.woff2) format("woff2");unicode-range:u+00??,u+0131,u+0152-0153,u+02bb-02bc,u+02c6,u+02da,u+02dc,u+0304,u+0308,u+0329,u+2000-206f,u+20ac,u+2122,u+2191,u+2193,u+2212,u+2215,u+feff,u+fffd}@font-face{font-family:Inter;font-style:normal;font-display:swap;font-weight:600;src:url(/fonts/inter-latin-ext-600-normal.woff2) format("woff2");unicode-range:u+0100-02ba,u+02bd-02c5,u+02c7-02cc,u+02ce-02d7,u+02dd-02ff,u+0304,u+0308,u+0329,u+1d00-1dbf,u+1e00-1e9f,u+1ef2-1eff,u+2020,u+20a0-20ab,u+20ad-20c0,u+2113,u+2c60-2c7f,u+a720-a7ff}@font-face{font-family:Inter;font-style:normal;font-display:swap;font-weight:600;src:url(/fonts/inter-latin-600-normal.woff2) format("woff2");unicode-range:u+00??,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:IBM Plex Mono;font-style:normal;font-display:swap;font-weight:400;src:url(/fonts/ibm-plex-mono-latin-ext-400-normal.woff2) format("woff2");unicode-range:u+0100-02ba,u+02bd-02c5,u+02c7-02cc,u+02ce-02d7,u+02dd-02ff,u+0304,u+0308,u+0329,u+1d00-1dbf,u+1e00-1e9f,u+1ef2-1eff,u+2020,u+20a0-20ab,u+20ad-20c0,u+2113,u+2c60-2c7f,u+a720-a7ff}@font-face{font-family:IBM Plex Mono;font-style:normal;font-display:swap;font-weight:400;src:url(/fonts/ibm-plex-mono-latin-400-normal.woff2) format("woff2");unicode-range:u+00??,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:IBM Plex Mono;font-style:normal;font-display:swap;font-weight:500;src:url(/fonts/ibm-plex-mono-latin-ext-500-normal.woff2) format("woff2");unicode-range:u+0100-02ba,u+02bd-02c5,u+02c7-02cc,u+02ce-02d7,u+02dd-02ff,u+0304,u+0308,u+0329,u+1d00-1dbf,u+1e00-1e9f,u+1ef2-1eff,u+2020,u+20a0-20ab,u+20ad-20c0,u+2113,u+2c60-2c7f,u+a720-a7ff}@font-face{font-family:IBM Plex Mono;font-style:normal;font-display:swap;font-weight:500;src:url(/fonts/ibm-plex-mono-latin-500-normal.woff2) format("woff2");unicode-range:u+00??,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:"Source Serif 4";font-style:normal;font-display:swap;font-weight:400;src:url(/fonts/source-serif-4-latin-ext-400-normal.woff2) format("woff2");unicode-range:u+0100-02ba,u+02bd-02c5,u+02c7-02cc,u+02ce-02d7,u+02dd-02ff,u+0304,u+0308,u+0329,u+1d00-1dbf,u+1e00-1e9f,u+1ef2-1eff,u+2020,u+20a0-20ab,u+20ad-20c0,u+2113,u+2c60-2c7f,u+a720-a7ff}@font-face{font-family:"Source Serif 4";font-style:normal;font-display:swap;font-weight:400;src:url(/fonts/source-serif-4-latin-400-normal.woff2) format("woff2");unicode-range:u+00??,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:"Source Serif 4";font-style:normal;font-display:swap;font-weight:600;src:url(/fonts/source-serif-4-latin-ext-600-normal.woff2) format("woff2");unicode-range:u+0100-02ba,u+02bd-02c5,u+02c7-02cc,u+02ce-02d7,u+02dd-02ff,u+0304,u+0308,u+0329,u+1d00-1dbf,u+1e00-1e9f,u+1ef2-1eff,u+2020,u+20a0-20ab,u+20ad-20c0,u+2113,u+2c60-2c7f,u+a720-a7ff}@font-face{font-family:"Source Serif 4";font-style:normal;font-display:swap;font-weight:600;src:url(/fonts/source-serif-4-latin-600-normal.woff2) format("woff2");unicode-range:u+00??,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}*,:after,:before{box-sizing:border-box}body,html{margin:0;padding:0;height:100%}html{overflow:hidden}body{background:var(--surface-sunken);color:var(--ink-primary);font-family:var(--font-sans);font-size:var(--text-sm);line-height:var(--leading-body);-webkit-font-smoothing:antialiased;text-rendering:optimizeLegibility}figure,h1,h2,h3,h4,ol,p,ul{margin:0}ol,ul{padding:0;list-style:none}button,input,select,textarea{font:inherit;color:inherit}a{color:inherit;text-decoration:none}:focus-visible{outline:2px solid var(--focus-ring);outline-offset:-2px;scroll-margin:6px;border-radius:var(--r-control)}@media (prefers-reduced-motion:reduce){*,:after,:before{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important;scroll-behavior:auto!important}}::selection{background:var(--accent-tint);color:var(--ink-primary)}*{scrollbar-width:thin;scrollbar-color:var(--surface-high) transparent}::-webkit-scrollbar{width:10px;height:10px}::-webkit-scrollbar-thumb{background:var(--surface-high);border-radius:var(--r-pill);border:3px solid transparent;background-clip:content-box}::-webkit-scrollbar-track{background:transparent}.shell{display:grid;grid-template-columns:var(--shell-rail-w) minmax(0,1fr);grid-template-rows:100%;height:100vh;height:100dvh}.skip-link{position:fixed;inset-block-start:var(--sp-2);inset-inline-start:var(--sp-2);z-index:var(--z-overlay);padding:var(--sp-2) var(--sp-3);background:var(--accent);color:var(--ink-inverse);font-weight:var(--weight-semibold);border-radius:var(--r-control);transform:translateY(-200%)}.skip-link:focus{transform:translateY(0)}.rail{display:flex;flex-direction:column;min-height:0;background:var(--surface-base);-webkit-border-end:1px solid var(--line-neutral);border-inline-end:1px solid var(--line-neutral)}.rail-brand{display:flex;align-items:center;gap:var(--sp-2);height:var(--shell-header-h);padding-inline:var(--sp-3);-webkit-border-after:1px solid var(--line-neutral);border-block-end:1px solid var(--line-neutral);flex:none}.rail-mark{display:grid;place-items:center;width:1.65rem;height:1.65rem;border:1px solid var(--accent);border-radius:var(--r-pill);color:var(--accent);font-family:var(--font-serif);font-size:var(--text-sm);font-weight:var(--weight-semibold);flex:none}.rail-wordmark{display:flex;flex-direction:column;min-width:0}.rail-wordmark b{font-family:var(--font-serif);font-size:var(--text-base);font-weight:var(--weight-semibold);letter-spacing:var(--tracking-wordmark);line-height:1.1}.rail-wordmark span{color:var(--ink-tertiary);font-size:var(--text-2xs);letter-spacing:var(--tracking-caps);text-transform:uppercase}.rail-nav{flex:1 1;min-height:0;overflow-y:auto;padding:var(--sp-3) var(--sp-2)}.rail-group+.rail-group{-webkit-margin-before:var(--sp-4);margin-block-start:var(--sp-4)}.rail-group-title{padding:0 var(--sp-2) var(--sp-1);color:var(--ink-tertiary);font-size:var(--text-2xs);font-weight:var(--weight-semibold);letter-spacing:var(--tracking-caps);text-transform:uppercase}.rail-item{display:flex;align-items:center;gap:var(--sp-2);min-height:2.15rem;padding-inline:var(--sp-2);border-radius:var(--r-control);color:var(--ink-secondary);font-size:var(--text-sm);transition:background var(--dur-fast) var(--ease-out),color var(--dur-fast) var(--ease-out)}.rail-item:hover{background:var(--surface-raised);color:var(--ink-primary)}.rail-item[aria-current=page]{background:var(--accent-wash);color:var(--accent-strong);font-weight:var(--weight-medium);box-shadow:inset 2px 0 0 var(--accent)}.rail-item svg{flex:none;width:1rem;height:1rem;opacity:.9}.rail-item-label{flex:1 1;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.rail-count{flex:none;min-width:1.35rem;padding:0 var(--sp-1);border-radius:var(--r-pill);font-family:var(--font-mono);font-size:var(--text-2xs);font-feature-settings:"tnum";font-variant-numeric:tabular-nums;text-align:center;background:var(--surface-high);color:var(--ink-secondary)}.rail-count[data-urgent=true]{background:var(--urgency-breached-wash);color:var(--data-loss-chip)}.rail-foot{flex:none;padding:var(--sp-2) var(--sp-3) var(--sp-3);-webkit-border-before:1px solid var(--line-neutral);border-block-start:1px solid var(--line-neutral)}.rail-operator{display:flex;align-items:center;gap:var(--sp-2)}.rail-operator-ref{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-family:var(--font-mono);font-size:var(--text-xs);color:var(--ink-secondary)}.rail-operator-role{flex:none;-webkit-margin-start:auto;margin-inline-start:auto}.content{display:flex;flex-direction:column;min-width:0;min-height:0}.topbar{display:flex;align-items:center;gap:var(--sp-3);height:var(--shell-header-h);flex:none;padding-inline:var(--sp-4);background:var(--surface-base);-webkit-border-after:1px solid var(--line-neutral);border-block-end:1px solid var(--line-neutral)}.topbar h1{font-size:var(--text-base);font-weight:var(--weight-semibold);letter-spacing:-.01em}.topbar-meta{display:flex;align-items:center;gap:var(--sp-3);-webkit-margin-start:auto;margin-inline-start:auto;color:var(--ink-tertiary);font-size:var(--text-xs)}.topbar-clock{font-family:var(--font-mono);font-feature-settings:"tnum";font-variant-numeric:tabular-nums;color:var(--ink-secondary)}.page{flex:1 1;min-height:0;overflow-y:auto;padding:var(--sp-4)}.page-wide{padding:var(--sp-3) var(--sp-4) var(--sp-5)}.sim-notice{display:flex;align-items:center;gap:var(--sp-2);padding:var(--sp-1) var(--sp-3);background:var(--accent-wash);-webkit-border-after:1px solid var(--line);border-block-end:1px solid var(--line);color:var(--accent-strong);font-size:var(--text-2xs);letter-spacing:.02em}.num{font-family:var(--font-mono);font-variant-numeric:tabular-nums;font-feature-settings:"tnum" 1,"tnum";letter-spacing:-.01em;white-space:nowrap}.num-gain{color:var(--data-gain)}.num-loss{color:var(--data-loss-chip)}.num-flat{color:var(--ink-secondary)}.num-strong{color:var(--ink-primary);font-weight:var(--weight-medium)}.num-quiet{color:var(--ink-tertiary)}.mono{font-family:var(--font-mono);font-size:var(--text-xs);letter-spacing:-.01em}.label{font-size:var(--text-2xs);font-weight:var(--weight-medium);letter-spacing:var(--tracking-caps);text-transform:uppercase}.label,.muted{color:var(--ink-tertiary)}.prose{color:var(--ink-secondary);font-size:var(--text-xs);line-height:var(--leading-body);max-width:60ch}.module{display:flex;flex-direction:column;min-width:0;background:var(--surface-raised);border:1px solid var(--line-neutral);border-radius:var(--r-module)}.module-head{display:flex;align-items:center;gap:var(--sp-2);min-height:2.5rem;padding:var(--sp-2) var(--sp-3);-webkit-border-after:1px solid var(--line-neutral);border-block-end:1px solid var(--line-neutral)}.module-head h2,.module-head h3{font-size:var(--text-sm);font-weight:var(--weight-semibold);letter-spacing:-.005em}.module-head-actions{display:flex;align-items:center;gap:var(--sp-2);-webkit-margin-start:auto;margin-inline-start:auto}.module-body{padding:var(--sp-3)}.module-body-flush{padding:0}.module-foot{-webkit-border-before:1px solid var(--line-neutral);border-block-start:1px solid var(--line-neutral);padding:var(--sp-2) var(--sp-3)}.board{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));grid-gap:var(--sp-3);gap:var(--sp-3);align-items:start}.board-column{display:flex;flex-direction:column;gap:var(--sp-3);min-width:0}@media (max-width:1180px){.board{grid-template-columns:minmax(0,1fr)}}.clock-strip{display:grid;grid-template-columns:repeat(auto-fit,minmax(13rem,1fr));grid-gap:var(--sp-3);gap:var(--sp-3);-webkit-margin-after:var(--sp-3);margin-block-end:var(--sp-3)}.clock-card{display:flex;flex-direction:column;gap:var(--sp-1);padding:var(--sp-3);background:var(--surface-raised);border:1px solid var(--line-neutral);border-radius:var(--r-module);min-height:6.75rem}.clock-card[data-urgency=soon]{border-color:var(--line-strong);background:linear-gradient(var(--accent-wash),var(--accent-wash)),var(--surface-raised)}.clock-card[data-urgency=breached],.clock-card[data-urgency=late]{border-color:var(--data-loss);background:linear-gradient(var(--urgency-breached-wash),var(--urgency-breached-wash)),var(--surface-raised)}.clock-card-value{font-family:var(--font-mono);font-feature-settings:"tnum";font-variant-numeric:tabular-nums;font-size:var(--text-3xl);font-weight:var(--weight-semibold);line-height:1;letter-spacing:-.03em}.clock-card-note{color:var(--ink-tertiary);font-size:var(--text-2xs);line-height:1.35}.clock-card-figure{-webkit-margin-before:auto;margin-block-start:auto;font-family:var(--font-mono);font-size:var(--text-xs);font-feature-settings:"tnum";font-variant-numeric:tabular-nums;color:var(--ink-secondary)}[data-urgency=steady] .clock-card-value{color:var(--ink-primary)}[data-urgency=watch] .clock-card-value{color:var(--urgency-watch)}[data-urgency=soon] .clock-card-value{color:var(--urgency-soon)}[data-urgency=late] .clock-card-value{color:var(--urgency-late)}[data-urgency=breached] .clock-card-value{color:var(--urgency-breached)}.stat-list{display:flex;flex-direction:column}.stat-row{display:flex;align-items:baseline;gap:var(--sp-2);padding-block:var(--sp-1)}.stat-row+.stat-row{-webkit-border-before:1px solid var(--line-neutral);border-block-start:1px solid var(--line-neutral)}.stat-row dt{color:var(--ink-secondary);font-size:var(--text-xs);min-width:0;flex:1 1}.stat-row dd{margin:0;font-family:var(--font-mono);font-size:var(--text-sm);font-feature-settings:"tnum";font-variant-numeric:tabular-nums;text-align:right}.ladder{display:flex;flex-direction:column;gap:var(--sp-2)}.ladder-row{display:grid;grid-template-columns:5.5rem minmax(0,1fr) 3.25rem;align-items:center;grid-gap:var(--sp-2);gap:var(--sp-2)}.ladder-label{font-size:var(--text-xs);color:var(--ink-secondary)}.ladder-track{height:.4rem;background:var(--surface-high);overflow:hidden}.ladder-fill,.ladder-track{border-radius:var(--r-pill)}.ladder-fill{height:100%;background:var(--data-neutral)}.ladder-row[data-band=critical] .ladder-fill{background:var(--data-loss)}.ladder-row[data-band=tight] .ladder-fill{background:var(--urgency-late)}.ladder-row[data-band=watch] .ladder-fill{background:var(--accent)}.ladder-row[data-band=comfortable] .ladder-fill{background:var(--data-gain)}.ladder-value{font-family:var(--font-mono);font-size:var(--text-xs);font-feature-settings:"tnum";font-variant-numeric:tabular-nums;text-align:right;color:var(--ink-secondary)}.spark{display:flex;align-items:flex-end;gap:2px;height:3.5rem}.spark-bar{flex:1 1;min-width:2px;border-radius:1px 1px 0 0;background:var(--accent-muted)}.spark-bar[data-zero=true]{background:var(--surface-high)}.spark-axis{display:flex;justify-content:space-between;-webkit-margin-before:var(--sp-1);margin-block-start:var(--sp-1);color:var(--ink-tertiary);font-size:var(--text-2xs)}.toolbar{padding:var(--sp-2) var(--sp-3);-webkit-border-after:1px solid var(--line-neutral);border-block-end:1px solid var(--line-neutral);min-height:var(--toolbar-h)}.toolbar,.toolbar-right{display:flex;align-items:center;gap:var(--sp-2)}.toolbar-right{-webkit-margin-start:auto;margin-inline-start:auto}.search{display:flex;align-items:center;gap:var(--sp-1);height:var(--control-h);padding-inline:var(--sp-2);background:var(--surface-overlay);border:1px solid var(--line-neutral);border-radius:var(--r-control);min-width:15rem}.search:focus-within{border-color:var(--accent-muted)}.search svg{width:.85rem;height:.85rem;color:var(--ink-tertiary);flex:none}.search input{flex:1 1;min-width:0;background:transparent;border:0;outline:none;font-family:var(--font-mono);font-size:var(--text-xs)}.search input::placeholder{color:var(--ink-disabled);font-family:var(--font-sans)}.chips{display:flex;align-items:center;flex-wrap:wrap;gap:var(--sp-1);padding:var(--sp-2) var(--sp-3);-webkit-border-after:1px solid var(--line-neutral);border-block-end:1px solid var(--line-neutral)}.chips-label{color:var(--ink-tertiary);letter-spacing:var(--tracking-caps);text-transform:uppercase;-webkit-margin-end:var(--sp-1);margin-inline-end:var(--sp-1)}.chip,.chips-label{font-size:var(--text-2xs)}.chip{display:inline-flex;align-items:center;gap:var(--sp-1);height:1.5rem;padding-inline:var(--sp-2);background:var(--accent-wash);border:1px solid var(--line);border-radius:var(--r-pill);color:var(--accent-strong);cursor:pointer}.chip:hover{background:var(--accent-tint)}.chip svg{width:.7rem;height:.7rem}.btn{display:inline-flex;align-items:center;justify-content:center;gap:var(--sp-1);height:var(--control-h);padding-inline:var(--sp-3);border:1px solid var(--line-neutral);border-radius:var(--r-control);background:var(--surface-overlay);color:var(--ink-secondary);font-size:var(--text-xs);font-weight:var(--weight-medium);cursor:pointer;white-space:nowrap;transition:background var(--dur-fast) var(--ease-out),border-color var(--dur-fast) var(--ease-out),color var(--dur-fast) var(--ease-out)}.btn:hover:not(:disabled){background:var(--surface-high);color:var(--ink-primary)}.btn:disabled{color:var(--ink-disabled);cursor:not-allowed;opacity:.65}.btn svg{width:.85rem;height:.85rem}.btn-primary{background:var(--accent);border-color:var(--accent);color:var(--ink-inverse);font-weight:var(--weight-semibold)}.btn-primary:hover:not(:disabled){background:var(--accent-strong);border-color:var(--accent-strong);color:var(--ink-inverse)}.btn-primary:active:not(:disabled){background:var(--accent-press)}.btn-danger{border-color:var(--data-loss);color:var(--data-loss-chip)}.btn-danger:hover:not(:disabled){background:var(--data-loss-wash);color:var(--data-loss-chip)}.btn-sm{height:1.6rem;padding-inline:var(--sp-2);font-size:var(--text-2xs)}.btn-ghost{background:transparent;border-color:transparent}.btn-ghost:hover:not(:disabled){background:var(--surface-overlay)}.badge{display:inline-flex;align-items:center;gap:var(--sp-1);height:1.35rem;padding-inline:var(--sp-2);border-radius:var(--r-control);background:var(--surface-high);color:var(--ink-secondary);font-size:var(--text-2xs);font-weight:var(--weight-medium);letter-spacing:.02em;white-space:nowrap}.badge-gain{background:var(--data-gain-wash);color:var(--data-gain)}.badge-loss{background:var(--data-loss-wash);color:var(--data-loss-chip)}.badge-accent{background:var(--accent-wash);color:var(--accent-strong)}.badge-outline{background:transparent;border:1px solid var(--line-neutral);color:var(--ink-tertiary)}.badge[data-band=critical]{background:var(--data-loss-wash);color:var(--data-loss-chip)}.badge[data-band=tight]{background:var(--accent-tint);color:var(--urgency-late)}.badge[data-band=watch]{background:var(--accent-wash);color:var(--accent-strong)}.badge[data-band=comfortable]{background:var(--data-gain-wash);color:var(--data-gain)}.badge[data-band=closed]{background:var(--surface-high);color:var(--ink-tertiary)}.table-scroll{overflow-x:auto;min-width:0}table.table{width:100%;border-collapse:collapse;table-layout:auto}.table thead th{position:-webkit-sticky;position:sticky;inset-block-start:0;z-index:var(--z-sticky);height:var(--table-head-h);padding:0 var(--sp-2);background:var(--surface-overlay);-webkit-border-after:1px solid var(--line-neutral);border-block-end:1px solid var(--line-neutral);color:var(--ink-tertiary);font-size:var(--text-2xs);font-weight:var(--weight-semibold);letter-spacing:var(--tracking-caps);text-transform:uppercase;text-align:left;white-space:nowrap}.table td.is-numeric,.table th.is-numeric{text-align:right}.table th.is-sortable{padding:0}.table th.is-sortable button{display:inline-flex;align-items:center;gap:var(--sp-1);width:100%;height:var(--table-head-h);padding:0 var(--sp-2);background:none;border:0;color:inherit;font:inherit;letter-spacing:inherit;text-transform:inherit;cursor:pointer}.table th.is-numeric.is-sortable button{justify-content:flex-end}.table th.is-sortable button:hover{color:var(--ink-secondary)}.table th[aria-sort]:not([aria-sort=none]) button{color:var(--accent-strong)}.sort-arrow{width:.7rem;height:.7rem;opacity:.5}.table th[aria-sort]:not([aria-sort=none]) .sort-arrow{opacity:1}.table tbody td{height:var(--row-h);padding:0 var(--sp-2);-webkit-border-after:1px solid var(--line-neutral);border-block-end:1px solid var(--line-neutral);color:var(--ink-secondary);font-size:var(--text-xs);white-space:nowrap}.table tbody tr:hover td{background:var(--surface-overlay)}.table tbody tr[data-clickable=true]{cursor:pointer}.table tbody tr[data-urgency=breached] td:first-child,.table tbody tr[data-urgency=late] td:first-child{box-shadow:inset 2px 0 0 var(--data-loss)}.table tbody tr[data-urgency=soon] td:first-child{box-shadow:inset 2px 0 0 var(--accent)}.cell-primary{color:var(--ink-primary);font-family:var(--font-mono);font-size:var(--text-xs)}.cell-stack{display:flex;flex-direction:column;gap:1px;line-height:1.25}.cell-stack small{color:var(--ink-tertiary);font-size:var(--text-2xs)}.pager{display:flex;align-items:center;gap:var(--sp-2);padding:var(--sp-2) var(--sp-3);-webkit-border-before:1px solid var(--line-neutral);border-block-start:1px solid var(--line-neutral)}.pager-count{color:var(--ink-tertiary);font-size:var(--text-xs)}.pager-count .num{color:var(--ink-secondary)}.pager-controls{display:flex;align-items:center;gap:var(--sp-1);-webkit-margin-start:auto;margin-inline-start:auto}.pager-page{min-width:5.5rem;text-align:center;font-family:var(--font-mono);font-size:var(--text-xs);font-feature-settings:"tnum";font-variant-numeric:tabular-nums;color:var(--ink-secondary)}.pager select{height:var(--control-h);padding-inline:var(--sp-1);background:var(--surface-overlay);border:1px solid var(--line-neutral);border-radius:var(--r-control);font-size:var(--text-xs);cursor:pointer}.clock-cell{display:flex;align-items:center;gap:var(--sp-2);min-width:11rem}.clock-figure{font-family:var(--font-mono);font-size:var(--text-sm);font-feature-settings:"tnum";font-variant-numeric:tabular-nums;font-weight:var(--weight-medium);min-width:5.25rem;text-align:right}.clock-bar{flex:1 1;min-width:3rem;height:.25rem;border-radius:var(--r-pill);background:var(--surface-high);overflow:hidden}.clock-bar-fill{height:100%;background:var(--urgency-steady)}[data-urgency=steady] .clock-figure{color:var(--ink-secondary)}[data-urgency=steady] .clock-bar-fill{background:var(--data-neutral)}[data-urgency=watch] .clock-figure{color:var(--urgency-watch)}[data-urgency=watch] .clock-bar-fill{background:var(--urgency-watch)}[data-urgency=soon] .clock-figure{color:var(--urgency-soon)}[data-urgency=soon] .clock-bar-fill{background:var(--urgency-soon)}[data-urgency=late] .clock-figure{color:var(--urgency-late)}[data-urgency=late] .clock-bar-fill{background:var(--urgency-late)}[data-urgency=breached] .clock-figure{color:var(--urgency-breached)}[data-urgency=breached] .clock-bar-fill{background:var(--urgency-breached)}.empty{display:flex;flex-direction:column;align-items:center;gap:var(--sp-2);padding:var(--sp-5) var(--sp-4);text-align:center}.empty-mark{display:grid;place-items:center;width:2.5rem;height:2.5rem;border-radius:var(--r-pill);background:var(--surface-overlay);color:var(--ink-tertiary)}.empty[data-tone=good] .empty-mark{background:var(--data-gain-wash);color:var(--data-gain)}.empty[data-tone=good] .empty-title{color:var(--data-gain)}.empty-title{color:var(--ink-primary);font-size:var(--text-sm);font-weight:var(--weight-medium)}.empty-note{color:var(--ink-tertiary);font-size:var(--text-xs);max-width:42ch;line-height:var(--leading-body)}.skeleton{background:linear-gradient(90deg,var(--surface-overlay),var(--surface-high),var(--surface-overlay));background-size:200% 100%;border-radius:var(--r-control);animation:shimmer 1.4s linear infinite}@keyframes shimmer{to{background-position:-200% 0}}.skeleton-row{height:var(--row-h);-webkit-border-after:1px solid var(--line-neutral);border-block-end:1px solid var(--line-neutral)}.alert{display:flex;align-items:flex-start;gap:var(--sp-2);padding:var(--sp-2) var(--sp-3);border:1px solid var(--line-neutral);border-radius:var(--r-control);background:var(--surface-overlay);color:var(--ink-secondary);font-size:var(--text-xs);line-height:var(--leading-body)}.alert svg{flex:none;width:.9rem;height:.9rem;-webkit-margin-before:.1rem;margin-block-start:.1rem}.alert-danger{border-color:var(--data-loss);background:var(--data-loss-wash);color:var(--data-loss-chip)}.alert-accent{border-color:var(--line);background:var(--accent-wash);color:var(--accent-strong)}.scrim{position:fixed;inset:0;z-index:var(--z-overlay);display:grid;place-items:center;padding:var(--sp-4);background:var(--scrim)}.dialog{width:min(34rem,100%);max-height:90dvh;overflow-y:auto;background:var(--surface-raised);border:1px solid var(--line-strong);border-radius:var(--r-module);box-shadow:var(--shadow)}.dialog-head{display:flex;align-items:center;gap:var(--sp-2);padding:var(--sp-3);-webkit-border-after:1px solid var(--line-neutral);border-block-end:1px solid var(--line-neutral)}.dialog-head h2{font-size:var(--text-base);font-weight:var(--weight-semibold)}.dialog-body{flex-direction:column;gap:var(--sp-3)}.dialog-body,.dialog-foot{display:flex;padding:var(--sp-3)}.dialog-foot{justify-content:flex-end;gap:var(--sp-2);-webkit-border-before:1px solid var(--line-neutral);border-block-start:1px solid var(--line-neutral)}.field{display:flex;flex-direction:column;gap:var(--sp-1)}.field>label{color:var(--ink-secondary);font-size:var(--text-xs);font-weight:var(--weight-medium)}.field input,.field select,.field textarea{padding:var(--sp-2);background:var(--surface-overlay);border:1px solid var(--line-neutral);border-radius:var(--r-control);outline:none;font-size:var(--text-xs);resize:vertical}.field input:focus,.field select:focus,.field textarea:focus{border-color:var(--accent-muted)}.field-hint{color:var(--ink-tertiary);font-size:var(--text-2xs);line-height:1.4}.login-page{min-height:100vh;display:flex;align-items:center;justify-content:center;background:var(--surface-sunken);padding:var(--sp-4)}.login-box{width:100%;max-width:320px;display:flex;flex-direction:column;gap:var(--sp-5);padding:var(--sp-5);background:var(--surface-raised);border:1px solid var(--line);border-radius:var(--radius-sm)}.login-brand{display:flex;align-items:center;gap:var(--sp-2)}.login-brand .rail-mark{display:flex;align-items:center;justify-content:center;width:2rem;height:2rem;border:1px solid var(--line-strong);border-radius:50%;color:var(--accent);font-family:var(--font-serif,serif)}.login-brand .rail-wordmark{display:flex;flex-direction:column;line-height:1.2}.login-brand .rail-wordmark b{font-family:var(--font-serif,serif);font-size:var(--text-lg);letter-spacing:.08em;color:var(--ink-primary)}.login-brand .rail-wordmark span{font-size:var(--text-2xs);letter-spacing:.16em;color:var(--ink-tertiary)}.login-form{display:flex;flex-direction:column;gap:var(--sp-3)}.login-error{margin:0;color:var(--data-loss);font-size:var(--text-xs)}.review{display:grid;grid-template-columns:auto 1fr;grid-gap:var(--sp-1) var(--sp-3);gap:var(--sp-1) var(--sp-3);padding:var(--sp-3);background:var(--surface-overlay);border-radius:var(--r-control)}.review dt{color:var(--ink-tertiary);font-size:var(--text-2xs);letter-spacing:var(--tracking-caps);text-transform:uppercase}.review dd{margin:0;font-family:var(--font-mono);font-size:var(--text-xs);text-align:right}.detail-grid{display:grid;grid-template-columns:minmax(0,2fr) minmax(0,1fr);grid-gap:var(--sp-3);gap:var(--sp-3);align-items:start}@media (max-width:1024px){.detail-grid{grid-template-columns:minmax(0,1fr)}}.kv{display:grid;grid-template-columns:repeat(auto-fit,minmax(9rem,1fr));grid-gap:var(--sp-3);gap:var(--sp-3)}.kv-item{display:flex;flex-direction:column;gap:2px;min-width:0}.kv-item dt{color:var(--ink-tertiary);font-size:var(--text-2xs);letter-spacing:var(--tracking-caps);text-transform:uppercase}.kv-item dd{margin:0;font-family:var(--font-mono);font-size:var(--text-base);font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.gauge{display:flex;flex-direction:column;gap:var(--sp-1)}.gauge-track{position:relative;height:.55rem;border-radius:var(--r-pill);background:var(--surface-high);overflow:hidden}.gauge-fill{height:100%;background:var(--data-gain)}.gauge[data-band=critical] .gauge-fill{background:var(--data-loss)}.gauge[data-band=tight] .gauge-fill{background:var(--urgency-late)}.gauge[data-band=watch] .gauge-fill{background:var(--accent)}.gauge-scale{justify-content:space-between;font-size:var(--text-2xs)}.crumb,.gauge-scale{display:flex;color:var(--ink-tertiary)}.crumb{align-items:center;gap:var(--sp-1);font-size:var(--text-xs)}.crumb a:hover{color:var(--accent-strong)}.stack{flex-direction:column;gap:var(--sp-3)}.row,.stack{display:flex}.row{align-items:center;gap:var(--sp-2)}.row-wrap{flex-wrap:wrap}.page-head{display:flex;align-items:flex-start;gap:var(--sp-3);-webkit-margin-after:var(--sp-3);margin-block-end:var(--sp-3)}.page-head-text h2{font-size:var(--text-lg);font-weight:var(--weight-semibold);letter-spacing:-.015em}.page-head-text p{-webkit-margin-before:2px;margin-block-start:2px;color:var(--ink-tertiary);font-size:var(--text-xs);max-width:68ch;line-height:var(--leading-body)}.page-head-actions{display:flex;align-items:center;gap:var(--sp-2);-webkit-margin-start:auto;margin-inline-start:auto}.menu{position:relative}.menu-panel{position:absolute;inset-inline-end:0;inset-block-start:calc(100% + var(--sp-1));z-index:var(--z-dropdown);min-width:13rem;max-height:20rem;overflow-y:auto;padding:var(--sp-1);background:var(--surface-overlay);border:1px solid var(--line-strong);border-radius:var(--r-control);box-shadow:var(--shadow)}.menu-item{display:flex;align-items:center;gap:var(--sp-2);width:100%;padding:var(--sp-1) var(--sp-2);background:none;border:0;border-radius:var(--r-control);color:var(--ink-secondary);font-size:var(--text-xs);text-align:left;cursor:pointer}.menu-item:hover{background:var(--surface-high);color:var(--ink-primary)}.menu-check{width:.8rem;height:.8rem;flex:none;color:var(--accent)}.menu-title{padding:var(--sp-1) var(--sp-2);letter-spacing:var(--tracking-caps);text-transform:uppercase}.live,.menu-title{color:var(--ink-tertiary);font-size:var(--text-2xs)}.live{display:inline-flex;align-items:center;gap:var(--sp-1)}.live-dot{width:.4rem;height:.4rem;border-radius:var(--r-pill);background:var(--data-gain)}.live[data-state=stale] .live-dot{background:var(--ink-disabled)}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;-webkit-clip-path:inset(50%);clip-path:inset(50%);white-space:nowrap;border:0}.board-bar{display:flex;align-items:center;gap:var(--sp-2);min-height:2rem;-webkit-margin-after:var(--sp-2);margin-block-end:var(--sp-2)}.board-bar .label{-webkit-margin-end:auto;margin-inline-end:auto;text-transform:none;letter-spacing:0}.widget-controls{display:flex;align-items:center;gap:2px}.board-add{min-height:3rem;padding:var(--sp-2);background:transparent;border:1px dashed var(--line-strong);border-radius:var(--r-module);color:var(--ink-tertiary);font-size:var(--text-xs);cursor:pointer;transition:border-color var(--dur-fast) var(--ease-out),color var(--dur-fast) var(--ease-out)}.board-add:hover:not(:disabled){border-color:var(--accent);color:var(--accent-strong)}.board-add:disabled{border-style:solid;border-color:var(--line-neutral);color:var(--ink-disabled);cursor:not-allowed}@media (max-width:700px){.shell{grid-template-columns:minmax(0,1fr);grid-template-rows:auto minmax(0,1fr)}.rail{min-width:0;-webkit-border-end:0;border-inline-end:0;-webkit-border-after:1px solid var(--line-neutral);border-block-end:1px solid var(--line-neutral)}.rail-brand{height:auto;padding:var(--sp-2) var(--sp-3)}.rail-nav{display:flex;flex:none;overflow-x:auto;padding:var(--sp-2)}.rail-group{display:contents}.rail-group-title{display:none}.rail-group ul{display:flex;flex:none;gap:var(--sp-1)}.rail-item{flex:none;white-space:nowrap}.rail-item-label{overflow:visible}.rail-foot{padding:var(--sp-1) var(--sp-3)}.topbar{height:auto;min-height:var(--shell-header-h);flex-wrap:wrap;padding:var(--sp-2) var(--sp-3)}.topbar-meta{flex-wrap:wrap;gap:var(--sp-1)}.page{padding:var(--sp-3)}.page-head{flex-wrap:wrap}.page-head-text{min-width:0;overflow-wrap:anywhere}.page-head-actions{flex-wrap:wrap;-webkit-margin-start:0;margin-inline-start:0}.content>.alert{flex:none}}