@font-face{font-family:Geist;src:url('/assets/fonts/geist-sans.woff2') format('woff2');font-weight:100 900;font-display:swap}
@font-face{font-family:'Geist Mono';src:url('/assets/fonts/geist-mono.woff2') format('woff2');font-weight:100 900;font-display:swap}
:root{color-scheme:dark;--bg:#080c11;--surface:#0e151d;--surface2:#121c26;--hover:#172430;--line:#22303e;--line2:#34475a;--text:#e8eef5;--muted:#8493a4;--faint:#566575;--cyan:#65cdf5;--up:#31d5a9;--down:#f1717e;--warn:#f0b84c;--violet:#b997ff;--mono:'Geist Mono',ui-monospace,monospace;--sans:Geist,'PingFang SC','Microsoft YaHei',system-ui,sans-serif;--shadow:0 22px 55px rgba(0,0,0,.38)}
*{box-sizing:border-box}html{background:var(--bg);scrollbar-color:var(--line2) var(--bg)}body{margin:0;min-width:320px;background:var(--bg);color:var(--text);font:13px var(--sans);-webkit-font-smoothing:antialiased}button,input,select{font:inherit;color:inherit}button{cursor:pointer}button:focus-visible,input:focus-visible,select:focus-visible,a:focus-visible{outline:2px solid var(--cyan);outline-offset:2px}[hidden]{display:none!important}.app-shell{min-height:100vh}.text-button{border:0;background:none;color:var(--cyan);padding:0}.text-button:hover{color:var(--text)}
.topbar{position:sticky;top:0;z-index:50;display:grid;grid-template-columns:auto minmax(220px,1fr) auto auto auto auto auto;align-items:center;gap:14px;min-height:58px;padding:9px 17px;border-bottom:1px solid var(--line);background:rgba(8,12,17,.95);backdrop-filter:blur(18px)}.brand{display:flex;align-items:center;gap:8px;color:var(--text);text-decoration:none;white-space:nowrap}.brand img{display:block}.brand strong{font-size:14px}.brand span{color:var(--muted)}.window-control{position:relative;min-width:0}.window-button{display:flex;justify-content:space-between;gap:12px;width:100%;height:36px;padding:7px 10px;border:1px solid var(--line);border-radius:7px;background:var(--surface);text-align:left}.window-button:hover{border-color:var(--line2);background:var(--surface2)}.window-button span:first-child{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.window-menu{position:absolute;top:43px;left:0;z-index:70;width:min(440px,calc(100vw - 28px));padding:10px;border:1px solid var(--line2);border-radius:9px;background:var(--surface2);box-shadow:var(--shadow)}.window-menu-head{display:flex;justify-content:space-between;align-items:center;padding:3px 4px 9px;color:var(--muted);font-size:11px}.window-list{max-height:390px;overflow:auto}.window-row{display:grid;grid-template-columns:1fr auto;gap:10px;width:100%;padding:10px 7px;border:0;border-top:1px solid var(--line);background:none;text-align:left}.window-row:hover{background:var(--hover)}.window-row small{display:block;margin-top:3px;color:var(--muted)}.window-row em{align-self:center;color:var(--muted);font:10px var(--mono);font-style:normal}.top-clock{display:flex;align-items:baseline;gap:7px;white-space:nowrap}.top-clock span{color:var(--cyan);font:650 9px var(--mono);letter-spacing:.07em}.top-clock strong{font:650 15px var(--mono)}.quality-pill{display:flex;align-items:center;gap:7px;min-height:31px;padding:6px 9px;border:1px solid var(--line);border-radius:999px;background:none;font:600 9px var(--mono)}.quality-pill i,.quality-summary i{width:7px;height:7px;border-radius:50%;background:currentColor}.quality-verified{color:var(--up)}.quality-provisional,.quality-stale{color:var(--warn)}.quality-conflict{color:var(--violet)}.quality-unavailable{color:var(--faint)}.icon-button{width:31px;height:31px;border:1px solid var(--line);border-radius:7px;background:var(--surface);color:var(--muted)}.language-switch{display:flex;padding:2px;border:1px solid var(--line);border-radius:7px;background:var(--surface)}.language-switch button{min-width:35px;padding:4px 7px;border:0;border-radius:5px;background:none;color:var(--muted);font-size:10px}.language-switch button[aria-pressed=true]{background:var(--surface2);color:var(--text)}
.header-links{display:flex;align-items:center;gap:13px;white-space:nowrap}.account-link{color:var(--cyan);font:600 10px var(--mono);text-decoration:none}.account-link:hover{color:var(--text)}
.banner{position:sticky;top:58px;z-index:45;display:flex;align-items:center;justify-content:center;gap:12px;min-height:35px;padding:7px 14px;border-bottom:1px solid rgba(240,184,76,.3);background:#2a2214;color:var(--warn);font-size:11px}.banner.historical{border-color:rgba(101,205,245,.3);background:#0e222c;color:var(--cyan)}.banner button{padding:3px 8px;border:1px solid currentColor;border-radius:5px;background:none;color:inherit}
.window-strip{display:grid;grid-template-columns:repeat(5,minmax(125px,1fr)) minmax(180px,1.25fr);max-width:1720px;margin:0 auto;border-right:1px solid var(--line);border-left:1px solid var(--line);background:var(--surface)}.window-strip>div{min-width:0;padding:12px 14px;border-right:1px solid var(--line)}.window-strip>div:last-child{border-right:0}.window-strip span,.window-strip small{display:block;color:var(--muted);font-size:9px}.window-strip strong{display:block;margin-top:4px;font:650 clamp(15px,1.4vw,21px) var(--mono);letter-spacing:-.03em;white-space:nowrap}.window-strip small{min-height:12px;margin-top:3px;font-family:var(--mono);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.window-strip .up strong{color:var(--up)}.window-strip .down strong{color:var(--down)}.distance strong[data-direction=up]{color:var(--up)}.distance strong[data-direction=down]{color:var(--down)}.strip-actions{display:flex;flex-direction:column;justify-content:center;gap:5px}.strip-actions a{color:var(--cyan);font-size:11px;text-decoration:none}.strip-actions a:hover{text-decoration:underline}
.cockpit{display:grid;grid-template-columns:minmax(0,1.8fr) minmax(310px,.78fr) minmax(260px,.62fr);grid-template-areas:'timeline execution alerts' 'flow events context' 'cohort cohort cohort';gap:9px;max-width:1720px;margin:0 auto;padding:9px}.panel{min-width:0;border:1px solid var(--line);border-radius:9px;background:var(--surface);padding:14px}.timeline-panel{grid-area:timeline}.execution-panel{grid-area:execution}.alerts-panel{grid-area:alerts}.flow-panel{grid-area:flow}.events-panel{grid-area:events}.context-panel{grid-area:context}.cohort-panel{grid-area:cohort}.panel-head{display:flex;align-items:flex-start;justify-content:space-between;gap:12px;margin-bottom:12px}.panel-head h1,.panel-head h2{margin:0;font-size:14px;font-weight:650;letter-spacing:-.01em}.eyebrow{margin:0 0 3px;color:var(--faint);font:650 8px var(--mono);letter-spacing:.1em}.panel-head>span{color:var(--muted);font-size:9px}.panel-note{margin:10px 0 0;color:var(--muted);font-size:9px;line-height:1.55}
.legend{display:flex;align-items:center;gap:6px;color:var(--muted);font:9px var(--mono);white-space:nowrap}.legend span:nth-of-type(2),.legend span:nth-of-type(4){margin-right:5px}.ref-dot,.up-dot,.down-dot{width:7px;height:7px}.ref-dot{background:var(--cyan)}.up-dot{background:var(--up)}.down-dot{background:var(--down)}.timeline-chart{position:relative;height:360px;overflow:hidden;border:1px solid var(--line);border-radius:7px;background:linear-gradient(180deg,rgba(101,205,245,.025),transparent 55%,rgba(255,255,255,.01))}.timeline-chart svg{display:block;width:100%;height:100%}.timeline-grid-line{stroke:var(--line);stroke-width:1}.timeline-grid-label{fill:var(--faint);font:9px var(--mono)}.timeline-zone-label{fill:var(--muted);font:9px var(--mono);letter-spacing:.08em}.target-line{stroke:var(--warn);stroke-width:1;stroke-dasharray:5 5}.reference-path,.up-path,.down-path{fill:none;stroke-width:2;vector-effect:non-scaling-stroke}.reference-path{stroke:var(--cyan)}.up-path{stroke:var(--up)}.down-path{stroke:var(--down)}.cursor-line{stroke:rgba(255,255,255,.32);stroke-width:1}.event-marker{stroke-width:1.5}.event-marker.notice{fill:var(--warn);stroke:var(--bg)}.event-marker.warning{fill:var(--down);stroke:var(--bg)}.chart-empty{position:absolute;inset:0;display:grid;place-items:center;color:var(--faint);font-size:11px}.timeline-foot{display:flex;justify-content:space-between;gap:10px;margin-top:9px;color:var(--muted);font:9px var(--mono)}.replay-controls{display:grid;grid-template-columns:34px 1fr auto auto;align-items:center;gap:9px;margin-top:9px}.replay-controls>button{height:30px;border:1px solid var(--line);border-radius:6px;background:var(--surface2)}.replay-controls input{width:100%;accent-color:var(--cyan)}.replay-controls>strong{font:10px var(--mono)}.speed-control{display:flex}.speed-control button{padding:4px 7px;border:1px solid var(--line);background:none;color:var(--muted);font:9px var(--mono)}.speed-control button[aria-pressed=true]{background:var(--surface2);color:var(--text)}
.amount-input{display:grid;grid-template-columns:auto 1fr auto;align-items:center;gap:7px;padding:8px 10px;border:1px solid var(--line);border-radius:7px;background:var(--bg)}.amount-input span{color:var(--muted);font-size:10px}.amount-input input{min-width:0;border:0;background:none;text-align:right;font:600 13px var(--mono);outline:0}.amount-input b{color:var(--muted);font:10px var(--mono)}.presets{display:grid;grid-template-columns:repeat(4,1fr);gap:5px;margin:7px 0 10px}.presets button{padding:5px;border:1px solid var(--line);border-radius:5px;background:none;color:var(--muted);font:10px var(--mono)}.presets button[aria-pressed=true]{border-color:var(--line2);background:var(--surface2);color:var(--text)}.quote-grid{display:grid;grid-template-columns:1fr 1fr;gap:7px}.quote-card{padding:10px;border:1px solid var(--line);border-radius:7px;background:var(--bg)}.quote-card header{display:flex;justify-content:space-between;align-items:baseline;margin-bottom:8px}.quote-card header span{font:650 10px var(--mono)}.quote-card header strong{font:650 19px var(--mono)}.quote-card.up header{color:var(--up)}.quote-card.down header{color:var(--down)}.quote-card dl{margin:0}.quote-card dl>div{display:flex;justify-content:space-between;gap:6px;padding:5px 0;border-top:1px solid var(--line)}.quote-card dt{color:var(--muted);font-size:9px}.quote-card dd{margin:0;font:500 9px var(--mono)}.execution-total{display:flex;justify-content:space-between;margin-top:10px;padding:8px 10px;border-radius:6px;background:var(--surface2);color:var(--muted);font-size:10px}.execution-total strong{color:var(--text);font-family:var(--mono)}
.counter{display:grid!important;place-items:center;min-width:24px;height:22px;border-radius:999px;background:var(--surface2);font:10px var(--mono)!important}.alert-list{display:grid;max-height:253px;overflow:auto}.alert-row{display:grid;grid-template-columns:7px 1fr auto;gap:8px;padding:9px 0;border-top:1px solid var(--line);text-align:left}.alert-row:first-child{border-top:0}.alert-row i{width:7px;height:7px;margin-top:3px;border-radius:50%;background:var(--warn)}.alert-row.warning i{background:var(--down)}.alert-row.info i{background:var(--cyan)}.alert-row strong{display:block;font-size:10px}.alert-row small{display:block;margin-top:3px;color:var(--muted);font:9px var(--mono);line-height:1.4}.alert-row time{color:var(--faint);font:8px var(--mono)}.empty{display:grid;min-height:92px;place-items:center;color:var(--faint);font-size:10px}.quality-summary{display:flex;justify-content:space-between;align-items:center;width:100%;margin-top:10px;padding:9px;border:1px solid var(--line);border-radius:6px;background:var(--bg);text-align:left}.quality-summary span{display:flex;align-items:center;gap:7px}.quality-summary b{font:600 9px var(--mono)}.quality-summary em{color:var(--muted);font:9px var(--mono);font-style:normal}
.flow-head,.flow-row{display:grid;grid-template-columns:32px repeat(4,minmax(44px,1fr)) 78px;gap:5px;align-items:center}.flow-head{margin-bottom:7px;color:var(--faint);font:7px var(--mono);text-align:center}.flow-row{margin:7px 0}.flow-row>strong{font:600 9px var(--mono)}.flow-cell{height:21px;background:var(--bg);display:flex;align-items:center}.flow-cell i{display:block;height:8px;min-width:1px}.flow-cell.down i{background:var(--down)}.flow-cell.up i{background:var(--up)}.flow-row em{text-align:right;color:var(--muted);font:9px var(--mono);font-style:normal}.up-text{color:var(--up)}.down-text{color:var(--down)}
.event-list{display:grid}.event-row{display:grid;grid-template-columns:46px auto auto 1fr;gap:7px;align-items:center;padding:9px 0;border-top:1px solid var(--line);font-size:9px}.event-row:first-child{border-top:0}.event-row time{color:var(--faint);font-family:var(--mono)}.event-row b{font:650 9px var(--mono)}.event-row span{color:var(--muted)}.event-row strong{text-align:right;font:600 10px var(--mono)}.breadth-strip{display:grid;grid-template-columns:repeat(5,1fr);gap:5px}.asset-chip{padding:9px 5px;border:1px solid var(--line);border-radius:6px;background:var(--bg);text-align:center}.asset-chip strong{display:block;font:600 10px var(--mono)}.asset-chip span{display:block;margin-top:5px;font:9px var(--mono)}.asset-chip.positive span{color:var(--up)}.asset-chip.negative span{color:var(--down)}
.cohort-head{align-items:center}.cohort-controls{display:flex;gap:9px}.cohort-controls label{display:flex;align-items:center;gap:6px;color:var(--muted);font-size:9px}.cohort-controls select{padding:5px 22px 5px 7px;border:1px solid var(--line);border-radius:6px;background:var(--surface2);font:9px var(--mono)}.cohort-summary{display:grid;grid-template-columns:.7fr 1fr 1.2fr 1.35fr;border:1px solid var(--line);border-radius:7px;overflow:hidden;background:var(--line)}.cohort-summary>div{padding:11px;background:var(--bg)}.cohort-summary span,.cohort-summary small{display:block;color:var(--muted);font-size:9px}.cohort-summary strong{display:block;margin:5px 0 3px;font:600 11px var(--mono)}.cohort-summary small{font:8px var(--mono)}.table-scroll{overflow:auto;margin-top:9px}.participant-table{width:100%;border-collapse:collapse;font-size:9px}.participant-table th,.participant-table td{padding:8px 7px;border-bottom:1px solid var(--line);text-align:right;white-space:nowrap}.participant-table th{color:var(--muted);font-weight:500}.participant-table th:first-child,.participant-table td:first-child{text-align:left}.participant-table button{padding:0;border:0;background:none;color:var(--cyan);font:9px var(--mono)}.participant-table .up-value{color:var(--up)}.participant-table .down-value{color:var(--down)}.participant-table .muted{color:var(--faint)}
.settings-popover{position:fixed;top:54px;right:80px;z-index:80;width:min(340px,calc(100vw - 24px));padding:13px;border:1px solid var(--line2);border-radius:9px;background:var(--surface2);box-shadow:var(--shadow)}.popover-head{display:flex;justify-content:space-between;align-items:center;margin-bottom:8px}.popover-head button{border:0;background:none;font-size:20px}.settings-popover>label{display:flex;align-items:center;gap:8px;padding:7px 0;border-top:1px solid var(--line);color:var(--muted);font-size:10px}.settings-popover input[type=checkbox]{accent-color:var(--cyan)}.threshold-setting input{width:74px;margin-left:auto;padding:4px;border:1px solid var(--line);border-radius:5px;background:var(--bg);font:10px var(--mono)}.threshold-setting b{font:9px var(--mono)}.drawer-backdrop{position:fixed;inset:0;z-index:89;background:rgba(0,0,0,.4)}.drawer{position:fixed;top:0;right:0;z-index:90;width:min(480px,100vw);height:100vh;overflow:auto;border-left:1px solid var(--line2);background:var(--surface);box-shadow:var(--shadow);transform:translateX(102%);transition:transform .18s ease}.drawer[aria-hidden=false]{transform:translateX(0)}.drawer>header{position:sticky;top:0;display:flex;justify-content:space-between;align-items:flex-start;padding:16px;border-bottom:1px solid var(--line);background:rgba(14,21,29,.96)}.drawer h2{margin:0;font-size:16px}.drawer>header button{width:31px;height:31px;border:1px solid var(--line);border-radius:6px;background:none;font-size:18px}.drawer-content{padding:16px 16px 32px}.detail-list{margin:0}.detail-list>div{display:grid;grid-template-columns:1fr 1.3fr;gap:10px;padding:8px 0;border-bottom:1px solid var(--line)}.detail-list dt{color:var(--muted);font-size:10px}.detail-list dd{margin:0;text-align:right;font:9px var(--mono);overflow-wrap:anywhere}.drawer-section{margin-bottom:20px}.drawer-section h3{font-size:11px}.drawer-note{padding:10px;border-left:2px solid var(--warn);background:#211b11;color:var(--muted);font-size:10px;line-height:1.6}.toast{position:fixed;left:50%;bottom:20px;z-index:100;transform:translateX(-50%);padding:9px 12px;border:1px solid var(--line2);border-radius:7px;background:var(--surface2);box-shadow:var(--shadow);font-size:10px}
@media(max-width:1280px){.cockpit{grid-template-columns:minmax(0,1.5fr) minmax(300px,.8fr);grid-template-areas:'timeline execution' 'alerts context' 'flow events' 'cohort cohort'}.window-strip{grid-template-columns:repeat(5,1fr)}.strip-actions{grid-column:1/-1;border-top:1px solid var(--line);flex-direction:row;justify-content:space-between}.topbar{grid-template-columns:auto minmax(190px,1fr) auto auto auto auto}.topbar>.text-button{display:none}}
@media(max-width:820px){.topbar{position:relative;grid-template-columns:1fr auto auto auto;gap:9px;padding:9px 11px}.brand{grid-column:1}.window-control{grid-column:1/-1;grid-row:2}.top-clock{grid-column:1;grid-row:3}.quality-pill{grid-column:2;grid-row:3}.icon-button{grid-column:3;grid-row:3}.language-switch{grid-column:4;grid-row:3}.banner{top:0}.window-strip{grid-template-columns:repeat(2,1fr);border:0}.window-strip>div{border-bottom:1px solid var(--line)}.window-strip .strip-actions{grid-column:1/-1}.cockpit{display:block;padding:7px}.panel{margin-bottom:7px}.timeline-chart{height:300px}.quote-grid{grid-template-columns:1fr 1fr}.cohort-summary{grid-template-columns:1fr 1fr}.cohort-head{display:block}.cohort-controls{margin-top:10px}.settings-popover{top:145px;right:12px}}
@media(max-width:520px){.brand span{display:none}.window-strip strong{font-size:17px}.timeline-chart{height:270px}.legend{display:none}.quote-grid{grid-template-columns:1fr}.flow-head,.flow-row{grid-template-columns:28px repeat(4,minmax(32px,1fr)) 58px}.flow-head{font-size:6px}.breadth-strip{grid-template-columns:repeat(5,1fr)}.asset-chip{padding:7px 2px}.cohort-summary{grid-template-columns:1fr}.replay-controls{grid-template-columns:34px 1fr auto}.speed-control{grid-column:2/-1;justify-self:end}.drawer-backdrop{display:none!important}}
@media(max-width:1280px){.header-links .text-button{display:none}}
@media(max-width:820px){.header-links{grid-column:2/5;grid-row:1;justify-self:end}}
@media(prefers-reduced-motion:reduce){*,*::before,*::after{animation-duration:.01ms!important;transition-duration:.01ms!important}}
