:root{color-scheme:light;--plane:#faf8f5;--surface:#fff;--surface-sunken:#f2eee8;--surface-hover:#f7f4ef;--border:#e6e0d6;--border-strong:#d6cec1;--ink:#23201d;--ink-secondary:#5f5a53;--ink-muted:#8a8379;--accent:#7a2e2e;--accent-hover:#692727;--accent-ink:#fbf1ec;--accent-soft:#f5e9e9;--accent-ring:rgba(122,46,46,.32);--good:#0ca30c;--warning:#fab219;--serious:#ec835a;--critical:#d03b3b;--good-ink:#006300;--series-1:#2a78d6;--series-2:#eb6834;--series-3:#1baf7a;--series-4:#eda100;--series-5:#e87ba4;--series-6:#008300;--series-7:#4a3aa7;--series-8:#e34948;--ramp-1:#e19b95;--ramp-2:#d07e79;--ramp-3:#bc5b58;--ramp-4:#a34240;--ramp-5:#87302f;--ramp-6:#6a2322;--grid:#ece7de;--axis:#c9c1b4;--de-emphasis:#ded7cb;--radius:10px;--radius-sm:6px;--radius-lg:14px;--shadow-card:0 1px 2px rgba(35,32,29,.04),0 1px 1px rgba(35,32,29,.03);--shadow-pop:0 8px 24px rgba(35,32,29,.12),0 2px 6px rgba(35,32,29,.06);--sidebar-w:232px;--topbar-h:56px;--font:system-ui,-apple-system,"Segoe UI",sans-serif;--mono:ui-monospace,SFMono-Regular,"SF Mono",Menlo,monospace}@media (prefers-color-scheme:dark){:root:where(:not([data-theme=light])){color-scheme:dark;--plane:#131210;--surface:#1c1a17;--surface-sunken:#232019;--surface-hover:#262219;--border:#2e2a24;--border-strong:#403a31;--ink:#f5f1ea;--ink-secondary:#b8b1a6;--ink-muted:#8f887d;--accent:#c4706c;--accent-hover:#d0817d;--accent-ink:#23100f;--accent-soft:#2e211f;--accent-ring:hsla(3,43%,60%,.38);--good-ink:#0ca30c;--series-1:#3987e5;--series-2:#d95926;--series-3:#199e70;--series-4:#c98500;--series-5:#d55181;--series-6:#008300;--series-7:#9085e9;--series-8:#e66767;--ramp-1:#8c3a38;--ramp-2:#a85350;--ramp-3:#c4706c;--ramp-4:#d9908b;--ramp-5:#e9afaa;--ramp-6:#f4cbc7;--grid:#2a2620;--axis:#464036;--de-emphasis:#3a352c;--shadow-card:0 1px 2px rgba(0,0,0,.4);--shadow-pop:0 8px 24px rgba(0,0,0,.55),0 2px 6px rgba(0,0,0,.35)}}:root[data-theme=dark]{color-scheme:dark;--plane:#131210;--surface:#1c1a17;--surface-sunken:#232019;--surface-hover:#262219;--border:#2e2a24;--border-strong:#403a31;--ink:#f5f1ea;--ink-secondary:#b8b1a6;--ink-muted:#8f887d;--accent:#c4706c;--accent-hover:#d0817d;--accent-ink:#23100f;--accent-soft:#2e211f;--accent-ring:hsla(3,43%,60%,.38);--good-ink:#0ca30c;--series-1:#3987e5;--series-2:#d95926;--series-3:#199e70;--series-4:#c98500;--series-5:#d55181;--series-6:#008300;--series-7:#9085e9;--series-8:#e66767;--ramp-1:#8c3a38;--ramp-2:#a85350;--ramp-3:#c4706c;--ramp-4:#d9908b;--ramp-5:#e9afaa;--ramp-6:#f4cbc7;--grid:#2a2620;--axis:#464036;--de-emphasis:#3a352c;--shadow-card:0 1px 2px rgba(0,0,0,.4);--shadow-pop:0 8px 24px rgba(0,0,0,.55),0 2px 6px rgba(0,0,0,.35)}*,:after,:before{box-sizing:border-box}body,html{margin:0;padding:0}body{background:var(--plane);color:var(--ink);font-family:var(--font);font-size:14px;line-height:1.5;-webkit-font-smoothing:antialiased}a{color:var(--accent);text-decoration:none}a:hover{text-decoration:underline}h1,h2,h3,h4{margin:0;font-weight:600;letter-spacing:-.011em;color:var(--ink)}h1{font-size:22px}h2{font-size:16px}h3{font-size:14px}p{margin:0}:focus-visible{outline:2px solid var(--accent);outline-offset:2px;border-radius:3px}@media (prefers-reduced-motion:reduce){*,:after,:before{animation-duration:.01ms!important;transition-duration:.01ms!important}}.shell{display:grid;grid-template-columns:var(--sidebar-w) minmax(0,1fr);min-height:100vh}.sidebar{background:var(--surface);border-right:1px solid var(--border);display:flex;flex-direction:column;position:-webkit-sticky;position:sticky;top:0;height:100vh;overflow-y:auto}.sidebar-brand{display:flex;align-items:center;gap:9px;padding:0 16px;height:var(--topbar-h);border-bottom:1px solid var(--border);font-weight:650;font-size:13.5px;letter-spacing:-.01em;flex-shrink:0}.sidebar-mark{width:22px;height:22px;border-radius:6px;background:var(--accent);color:var(--accent-ink);display:grid;place-items:center;font-size:11px;font-weight:700;flex-shrink:0}.sidebar-nav{padding:10px 8px;display:flex;flex-direction:column;gap:1px;flex:1 1}.nav-section{font-size:10.5px;font-weight:650;text-transform:uppercase;letter-spacing:.07em;color:var(--ink-muted);padding:14px 8px 5px}.nav-link{display:flex;align-items:center;gap:9px;padding:7px 8px;border-radius:var(--radius-sm);color:var(--ink-secondary);font-size:13px;text-decoration:none;transition:background-color .12s ease,color .12s ease}.nav-link:hover{background:var(--surface-hover);color:var(--ink);text-decoration:none}.nav-link[aria-current=page]{background:var(--accent-soft);color:var(--accent);font-weight:600}.nav-link svg{flex-shrink:0;opacity:.8}.sidebar-foot{border-top:1px solid var(--border);padding:10px 12px;font-size:11.5px;color:var(--ink-muted);gap:6px;flex-shrink:0}.main,.sidebar-foot{display:flex;flex-direction:column}.main{min-width:0}.topbar{height:var(--topbar-h);border-bottom:1px solid var(--border);background:color-mix(in srgb,var(--surface) 85%,transparent);-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);display:flex;align-items:center;justify-content:space-between;gap:16px;padding:0 20px;position:-webkit-sticky;position:sticky;top:0;z-index:20}.content{padding:20px;max-width:1440px;width:100%}@media (max-width:900px){.shell{grid-template-columns:1fr}.sidebar{position:static;height:auto;border-right:none;border-bottom:1px solid var(--border)}.sidebar-nav{flex-direction:row;flex-wrap:wrap;gap:4px}.nav-section{display:none}.content{padding:14px}}.card{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);box-shadow:var(--shadow-card);overflow:hidden}.card-head{display:flex;align-items:baseline;justify-content:space-between;gap:12px;padding:13px 16px;border-bottom:1px solid var(--border)}.card-title{font-size:13px;font-weight:650;letter-spacing:-.005em}.card-sub{font-size:11.5px;color:var(--ink-muted)}.card-body{padding:16px}.card-body--flush{padding:0}.grid{display:grid;grid-gap:14px;gap:14px}.grid--kpi{grid-template-columns:repeat(auto-fit,minmax(190px,1fr))}.grid--2{grid-template-columns:repeat(auto-fit,minmax(330px,1fr))}.stack{flex-direction:column;gap:14px}.row,.stack{display:flex}.row{align-items:center;gap:8px;flex-wrap:wrap}.row--between{justify-content:space-between}.spacer{flex:1 1}.page-head{display:flex;align-items:flex-start;justify-content:space-between;gap:16px;flex-wrap:wrap;margin-bottom:16px}.hero-figure{font-size:48px;font-weight:650;line-height:1.05;letter-spacing:-.025em}.hero-caption{font-size:12.5px;color:var(--ink-secondary);margin-top:2px}.stat{display:flex;flex-direction:column;gap:3px;padding:13px 15px}.stat-label{font-size:11.5px;color:var(--ink-secondary)}.stat-value{font-size:24px;font-weight:620;letter-spacing:-.02em;line-height:1.15}.stat-value--muted{color:var(--ink-muted);font-size:15px;font-style:italic;font-weight:500}.stat-detail{font-size:11.5px;color:var(--ink-muted)}.stat-spark{margin-top:5px;height:26px}.delta{font-size:11.5px;font-weight:600;font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.delta--up{color:var(--good-ink)}.delta--down{color:var(--critical)}.delta--flat{color:var(--ink-muted)}.badge{display:inline-flex;align-items:center;gap:5px;padding:2px 8px;border-radius:999px;border:1px solid var(--border-strong);background:var(--surface-sunken);color:var(--ink-secondary);font-size:11px;font-weight:600;line-height:1.6;white-space:nowrap}.badge--accent{background:var(--accent-soft);border-color:transparent;color:var(--accent)}.dot{width:7px;height:7px;border-radius:50%;flex-shrink:0}.btn{display:inline-flex;align-items:center;gap:6px;padding:6px 12px;border-radius:var(--radius-sm);border:1px solid var(--border-strong);background:var(--surface);color:var(--ink);font-size:12.5px;font-weight:550;font-family:inherit;cursor:pointer;transition:background-color .12s ease,border-color .12s ease}.btn,.btn:hover{text-decoration:none}.btn:hover{background:var(--surface-hover)}.btn--primary{background:var(--accent);border-color:var(--accent);color:var(--accent-ink)}.btn--primary:hover{background:var(--accent-hover)}.chip{display:inline-flex;align-items:center;gap:5px;padding:4px 10px;border-radius:999px;border:1px solid var(--border-strong);background:var(--surface);color:var(--ink-secondary);font-size:12px;font-weight:550;white-space:nowrap;transition:background-color .12s ease}.chip,.chip:hover{text-decoration:none}.chip:hover{background:var(--surface-hover)}.chip--on,.chip[aria-current=true]{background:var(--accent);border-color:var(--accent);color:var(--accent-ink)}.filter-bar{gap:8px;flex-wrap:wrap;padding:11px 14px;border-bottom:1px solid var(--border);background:var(--surface-sunken)}.filter-bar,.filter-group{display:flex;align-items:center}.filter-group{gap:5px}.rangebar{gap:10px 14px;padding:10px 14px;margin-bottom:14px;border:1px solid var(--border);border-radius:var(--radius);background:var(--surface-sunken)}.rangebar,.rangebar-group{display:flex;align-items:center;flex-wrap:wrap}.rangebar-group{gap:5px}.rangebar-period{font-size:12px;font-weight:600;color:var(--ink-secondary);white-space:nowrap}@media (max-width:720px){.rangebar-period{white-space:normal}}.filter-label{font-size:11px;font-weight:650;text-transform:uppercase;letter-spacing:.05em;color:var(--ink-muted);margin-right:2px}.input,.select{padding:6px 10px;border-radius:var(--radius-sm);border:1px solid var(--border-strong);background:var(--surface);color:var(--ink);font-size:12.5px;font-family:inherit;min-width:0}.input::placeholder{color:var(--ink-muted)}.input--search{min-width:210px}.input--date{color-scheme:light;min-width:134px;font-feature-settings:"tnum";font-variant-numeric:tabular-nums}:root[data-theme=dark] .input--date{color-scheme:dark}@media (prefers-color-scheme:dark){:root:not([data-theme=light]) .input--date{color-scheme:dark}}.table-wrap{overflow-x:auto}.table{width:100%;border-collapse:collapse;font-size:12.5px}.table th{text-align:left;font-size:10.5px;font-weight:650;text-transform:uppercase;letter-spacing:.05em;color:var(--ink-muted);background:var(--surface-sunken);position:-webkit-sticky;position:sticky;top:0;white-space:nowrap}.table td,.table th{padding:9px 14px;border-bottom:1px solid var(--border)}.table td{vertical-align:middle}.table tbody tr:last-child td{border-bottom:none}.table tbody tr:hover td{background:var(--surface-hover)}.table .num{text-align:right;font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.table a{color:var(--ink);font-weight:600}.table a:hover{color:var(--accent)}.table--compact td,.table--compact th{padding:6px 12px}.table-toggle{padding:10px 16px;border-top:1px solid var(--border);font-size:11.5px}.table-toggle summary{cursor:pointer;color:var(--ink-secondary);font-weight:550;list-style:none}.table-toggle summary::-webkit-details-marker{display:none}.table-toggle summary:before{content:"▸ ";color:var(--ink-muted)}.table-toggle[open] summary:before{content:"▾ "}.chart{display:block;width:100%;overflow:visible}.chart text{font-family:var(--font);fill:var(--ink-secondary)}.chart .tick{font-size:10px;fill:var(--ink-muted);font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.chart .lbl{font-size:11px;fill:var(--ink-secondary)}.chart .val{font-size:11px;font-weight:620;fill:var(--ink);font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.chart .grid-line{stroke:var(--grid);stroke-width:1}.chart .axis-line{stroke:var(--axis);stroke-width:1}.chart .hit{fill:transparent;cursor:default}.chart .hit:hover+.mark,.chart .mark:hover{opacity:.82}.legend{display:flex;flex-wrap:wrap;gap:6px 14px;padding:10px 16px 0;font-size:11.5px;color:var(--ink-secondary)}.legend-item{display:inline-flex;align-items:center;gap:6px}.legend-swatch{width:9px;height:9px;border-radius:2px;flex-shrink:0}.funnel-row{display:grid;grid-template-columns:132px minmax(0,1fr) 88px;align-items:center;grid-gap:10px;gap:10px;padding:5px 0}.funnel-label{font-size:12px;color:var(--ink-secondary);text-align:right;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.funnel-track{height:22px;background:var(--surface-sunken);border-radius:4px;overflow:hidden}.funnel-fill{height:100%;border-radius:0 4px 4px 0;min-width:2px}.funnel-meta{font-size:11.5px;font-feature-settings:"tnum";font-variant-numeric:tabular-nums;color:var(--ink-secondary);white-space:nowrap}.funnel-drop{color:var(--critical);font-weight:600}.barlist{display:flex;flex-direction:column;gap:2px}.barlist-row{display:grid;grid-template-columns:minmax(0,1fr) 78px;grid-gap:10px;gap:10px;padding:6px 0}.barlist-bar,.barlist-row{align-items:center;position:relative}.barlist-bar{height:20px;display:flex}.barlist-fill{position:absolute;inset-block:0;left:0;border-radius:0 4px 4px 0;opacity:.22}.barlist-name{position:relative;padding-left:8px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.barlist-name,.barlist-value{font-size:12px;color:var(--ink)}.barlist-value{font-weight:600;font-feature-settings:"tnum";font-variant-numeric:tabular-nums;text-align:right}.meter{height:8px;background:var(--surface-sunken);overflow:hidden}.meter,.meter-fill{border-radius:999px}.meter-fill{height:100%}.timeline{display:flex;flex-direction:column}.tl-row{display:grid;grid-template-columns:78px 18px minmax(0,1fr);grid-gap:10px;gap:10px;padding:7px 16px;border-bottom:1px solid var(--border);font-size:12.5px}.tl-row:last-child{border-bottom:none}.tl-row:hover{background:var(--surface-hover)}.tl-time{font-size:11px;color:var(--ink-muted);font-feature-settings:"tnum";font-variant-numeric:tabular-nums;white-space:nowrap;padding-top:1px}.tl-rail{display:flex;justify-content:center;position:relative}.tl-rail:before{content:"";position:absolute;top:0;bottom:-8px;width:1px;background:var(--border)}.tl-dot{width:8px;height:8px;border-radius:50%;margin-top:5px;position:relative;box-shadow:0 0 0 2px var(--surface)}.tl-body{min-width:0}.tl-title{color:var(--ink)}.tl-detail{color:var(--ink-muted);font-size:11.5px;overflow-wrap:anywhere}.tl-dwell{font-feature-settings:"tnum";font-variant-numeric:tabular-nums;color:var(--ink-secondary);font-weight:600}.empty{padding:26px 18px;text-align:center;color:var(--ink-muted);font-size:12.5px;display:flex;flex-direction:column;align-items:center;gap:5px}.empty-title{font-weight:620;color:var(--ink-secondary);font-size:13px}.empty-hint{max-width:46ch;line-height:1.55}.empty--wired{border:1px dashed var(--border-strong);border-radius:var(--radius-sm);background:var(--surface-sunken)}.freshness{font-size:10.5px;color:var(--ink-muted);line-height:1.5;margin-top:5px}.freshness strong{font-weight:620;color:var(--ink-secondary)}.freshness .err{color:var(--critical);font-weight:650}.mono{font-family:var(--mono);font-size:11.5px}.num{font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.muted{color:var(--ink-muted)}.secondary{color:var(--ink-secondary)}.small{font-size:11.5px}.truncate{white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.gallery{display:grid;grid-template-columns:repeat(auto-fill,minmax(132px,1fr));grid-gap:10px;gap:10px}.gallery-item{border:1px solid var(--border);border-radius:var(--radius-sm);overflow:hidden;background:var(--surface-sunken)}.gallery-item img{display:block;width:100%;height:108px;object-fit:cover}.gallery-cap{padding:5px 8px;font-size:11px;color:var(--ink-secondary);border-top:1px solid var(--border)}button.gallery-item{padding:0;font:inherit;text-align:left;cursor:zoom-in;transition:border-color .12s ease,transform .12s ease}button.gallery-item:hover{border-color:var(--accent);transform:translateY(-1px)}.lightbox{padding:0;border:none;background:transparent;max-width:100vw;max-height:100vh;width:100%;height:100%;overscroll-behavior:contain}.lightbox::-webkit-backdrop{background:rgba(10,9,8,.82);-webkit-backdrop-filter:blur(3px);backdrop-filter:blur(3px)}.lightbox::backdrop{background:rgba(10,9,8,.82);-webkit-backdrop-filter:blur(3px);backdrop-filter:blur(3px)}.lightbox-inner{display:flex;flex-direction:column;gap:10px;width:min(1100px,94vw);max-height:94vh;margin:auto;padding:14px;background:var(--surface);border:1px solid var(--border);border-radius:var(--radius-lg);box-shadow:var(--shadow-pop)}.lightbox-bar{justify-content:space-between;gap:12px;font-size:13px;color:var(--ink);flex-shrink:0}.lightbox-bar,.lightbox-stage{display:flex;align-items:center}.lightbox-stage{position:relative;justify-content:center;min-height:0;flex:1 1;background:var(--surface-sunken);border-radius:var(--radius);overflow:hidden}.lightbox-img{max-width:100%;max-height:min(72vh,780px);object-fit:contain;display:block}.lightbox-nav{position:absolute;top:50%;transform:translateY(-50%);width:40px;height:40px;border-radius:50%;border:1px solid var(--border-strong);background:var(--surface);color:var(--ink);font-size:22px;line-height:1;cursor:pointer;display:grid;place-items:center;box-shadow:var(--shadow-card);transition:background-color .12s ease}.lightbox-nav:hover{background:var(--surface-hover)}.lightbox-nav--prev{left:10px}.lightbox-nav--next{right:10px}.lightbox-thumbs{display:flex;gap:6px;overflow-x:auto;padding-bottom:2px;flex-shrink:0}.lightbox-thumb{flex:0 0 auto;width:62px;height:44px;padding:0;border-radius:var(--radius-sm);border:2px solid transparent;background:var(--surface-sunken);overflow:hidden;cursor:pointer;opacity:.6;transition:opacity .12s ease,border-color .12s ease}.lightbox-thumb:hover{opacity:1}.lightbox-thumb--on{border-color:var(--accent);opacity:1}.lightbox-thumb img{width:100%;height:100%;object-fit:cover;display:block}@media (max-width:620px){.lightbox-inner{width:100vw;max-height:100vh;border-radius:0;border:none}.lightbox-img{max-height:62vh}}.kv{display:grid;grid-template-columns:minmax(88px,auto) minmax(0,1fr);grid-gap:5px 14px;gap:5px 14px;font-size:12.5px}.kv dt{color:var(--ink-muted)}.kv dd{margin:0;color:var(--ink);overflow-wrap:anywhere}