:root{--mono: ui-monospace, "SF Mono", SFMono-Regular, "JetBrains Mono", "IBM Plex Mono", Menlo, Consolas, "DejaVu Sans Mono", "Liberation Mono", monospace;--ground: #07080a;--ground-2: #0b0d11;--panel: #0e1015;--panel-2: #13161d;--panel-3: #191d26;--rule: #1d222b;--rule-2: #2b3240;--rule-3: #3c4553;--ink: #e7eaf0;--ink-2: #99a2b2;--ink-3: #5e6775;--ink-4: #3f4753;--pos: #2fd39b;--neg: #ff5164;--warn: #ffb02e;--info: #58a6ff;--mint: #6ee7b7;--live: #ff3b30;--paper: #4da3ff;--backtest: #a78bfa;--shadow: 0 12px 34px rgba(0, 0, 0, .55);--gap: 14px;--rail: 214px;color-scheme:dark}*,*:before,*:after{box-sizing:border-box}html,body,#root{height:100%}body{margin:0;background:var(--ground);color:var(--ink);font-family:var(--mono);font-size:13px;line-height:1.45;font-variant-numeric:tabular-nums;-webkit-font-smoothing:antialiased;text-rendering:optimizeLegibility}body:after{content:"";position:fixed;inset:0;pointer-events:none;z-index:9999;background:repeating-linear-gradient(to bottom,rgba(255,255,255,.014) 0 1px,transparent 1px 3px);mix-blend-mode:screen}h1,h2,h3,h4,p,figure,ul,ol{margin:0;padding:0}ul,ol{list-style:none}button,input,select,textarea{font:inherit;color:inherit}a{color:inherit;text-decoration:none}::-webkit-scrollbar{width:10px;height:10px}::-webkit-scrollbar-track{background:var(--ground-2)}::-webkit-scrollbar-thumb{background:var(--rule-2);border:2px solid var(--ground-2)}::-webkit-scrollbar-thumb:hover{background:var(--rule-3)}:focus-visible{outline:1px solid var(--mint);outline-offset:2px}.eyebrow{font-size:9.5px;letter-spacing:.18em;text-transform:uppercase;color:var(--ink-3);font-weight:500}.num{font-variant-numeric:tabular-nums;letter-spacing:-.01em}.pos{color:var(--pos)}.neg{color:var(--neg)}.flat{color:var(--ink-2)}.warn{color:var(--warn)}.dim{color:var(--ink-3)}.truncate{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.shell{display:grid;grid-template-columns:var(--rail) minmax(0,1fr);min-height:100%}.rail{position:sticky;top:0;align-self:start;height:100vh;display:flex;flex-direction:column;background:linear-gradient(180deg,var(--ground-2),var(--ground));border-right:1px solid var(--rule);overflow:hidden}.rail:before{content:"";position:absolute;inset:0 auto 0 0;width:3px;background:var(--paper);opacity:.55}body[data-mode=live] .rail:before{width:4px;opacity:1;background:repeating-linear-gradient(-45deg,var(--live) 0 6px,#2a0603 6px 12px)}body[data-mode=backtest] .rail:before{background:var(--backtest)}.brand{padding:18px 16px 14px;border-bottom:1px solid var(--rule)}.brand__mark{font-size:19px;letter-spacing:-.04em;font-weight:600;color:var(--ink)}.brand__mark em{font-style:normal;color:var(--mint)}.brand__sub{margin-top:3px;font-size:9.5px;letter-spacing:.16em;text-transform:uppercase;color:var(--ink-4)}.nav{padding:10px 8px;display:flex;flex-direction:column;gap:1px;flex:1;overflow-y:auto}.nav__link{display:flex;align-items:center;gap:10px;padding:7px 10px;color:var(--ink-2);border:1px solid transparent;font-size:12px;letter-spacing:.02em;transition:background .12s ease,color .12s ease}.nav__link:hover{background:var(--panel-2);color:var(--ink)}.nav__link--active{background:var(--panel-2);border-color:var(--rule-2);color:var(--ink)}.nav__link--active .nav__key{color:var(--mint)}.nav__key{color:var(--ink-4);font-size:10px;width:14px;flex:none}.nav__badge{margin-left:auto;font-size:10px;padding:0 5px;border:1px solid var(--rule-2);color:var(--ink-2);background:var(--panel)}.nav__badge--alert{color:var(--neg);border-color:color-mix(in srgb,var(--neg) 40%,transparent);background:color-mix(in srgb,var(--neg) 10%,transparent)}.rail__foot{border-top:1px solid var(--rule);padding:10px 12px 12px;display:flex;flex-direction:column;gap:8px}.main{min-width:0;display:flex;flex-direction:column}.page{padding:var(--gap) 18px 40px;display:flex;flex-direction:column;gap:var(--gap);min-width:0;animation:rise .22s ease both}@keyframes rise{0%{opacity:0;transform:translateY(4px)}to{opacity:1;transform:none}}.page__head{display:flex;align-items:flex-end;justify-content:space-between;gap:16px;flex-wrap:wrap;padding-bottom:2px}.page__title{font-size:17px;font-weight:600;letter-spacing:-.02em}.page__note{font-size:11px;color:var(--ink-3);max-width:62ch;margin-top:3px}.transport{display:flex;align-items:center;gap:10px;padding:6px 18px;border-bottom:1px solid var(--rule);background:var(--ground-2);font-size:11px;color:var(--ink-3);position:sticky;top:0;z-index:40}.transport--degraded{background:color-mix(in srgb,var(--warn) 12%,var(--ground-2));border-bottom-color:color-mix(in srgb,var(--warn) 40%,transparent);color:var(--warn)}.transport--stale{background:color-mix(in srgb,var(--neg) 16%,var(--ground-2));border-bottom-color:var(--neg);color:#ffd4d8;animation:pulse-bg 2.2s ease-in-out infinite}@keyframes pulse-bg{0%,to{background:color-mix(in srgb,var(--neg) 16%,var(--ground-2))}50%{background:color-mix(in srgb,var(--neg) 30%,var(--ground-2))}}.transport__dot{width:7px;height:7px;flex:none;border-radius:50%;background:var(--pos);box-shadow:0 0 0 3px color-mix(in srgb,var(--pos) 18%,transparent)}.transport--connecting .transport__dot{background:var(--info);animation:blink 1s steps(2) infinite}.transport--degraded .transport__dot{background:var(--warn);box-shadow:0 0 0 3px color-mix(in srgb,var(--warn) 20%,transparent)}.transport--stale .transport__dot{background:var(--neg);box-shadow:0 0 0 3px color-mix(in srgb,var(--neg) 25%,transparent)}@keyframes blink{50%{opacity:.25}}.transport__spacer{margin-left:auto}body[data-feed=stale] .livevalue{position:relative;color:var(--ink-2)}body[data-feed=stale] .livevalue:after{content:"";position:absolute;inset:-1px -3px;pointer-events:none;background:repeating-linear-gradient(-45deg,color-mix(in srgb,var(--neg) 22%,transparent) 0 1px,transparent 1px 6px)}.panel{background:var(--panel);border:1px solid var(--rule);box-shadow:inset 0 1px #ffffff06;min-width:0;display:flex;flex-direction:column}.panel__head{display:flex;align-items:center;gap:10px;padding:8px 12px;border-bottom:1px solid var(--rule);background:linear-gradient(180deg,rgba(255,255,255,.018),transparent)}.panel__title{font-size:10px;letter-spacing:.17em;text-transform:uppercase;color:var(--ink-2);font-weight:600}.panel__tools{margin-left:auto;display:flex;align-items:center;gap:8px;font-size:10.5px;color:var(--ink-3)}.panel__body{padding:12px;min-width:0;flex:1}.panel__body--flush{padding:0}.panel--framed{position:relative}.panel--framed:before,.panel--framed:after{content:"";position:absolute;width:9px;height:9px;border:1px solid var(--rule-3);pointer-events:none}.panel--framed:before{top:-1px;left:-1px;border-right:0;border-bottom:0}.panel--framed:after{bottom:-1px;right:-1px;border-left:0;border-top:0}.grid{display:grid;gap:var(--gap);min-width:0}.grid--overview{grid-template-columns:minmax(0,1.35fr) minmax(0,1fr)}.grid--3{grid-template-columns:repeat(3,minmax(0,1fr))}.grid--2{grid-template-columns:repeat(2,minmax(0,1fr))}.stack{display:flex;flex-direction:column;gap:var(--gap);min-width:0}.row{display:flex;align-items:center;gap:10px;min-width:0}.state{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:16px;align-items:center;border:1px solid var(--rule-2);background:radial-gradient(120% 180% at 0% 0%,rgba(255,255,255,.035),transparent 60%),var(--panel-2);padding:0;position:relative;overflow:hidden}.state__bar{position:absolute;inset:0 0 auto;height:3px}.state__body{padding:16px 18px;display:flex;align-items:center;gap:20px;flex-wrap:wrap;min-width:0}.state__lamp{width:12px;height:12px;border-radius:50%;flex:none}.state__word{font-size:30px;font-weight:700;letter-spacing:-.03em;line-height:1}.state__detail{font-size:11px;color:var(--ink-2);margin-top:5px;max-width:52ch}.state__facts{display:flex;gap:22px;flex-wrap:wrap;padding:16px 18px;border-left:1px solid var(--rule);align-self:stretch;align-items:center}.state--running{--state-colour: var(--pos)}.state--halted{--state-colour: var(--warn)}.state--killed{--state-colour: var(--neg)}.state--neutral{--state-colour: var(--info)}.state .state__lamp{background:var(--state-colour);box-shadow:0 0 12px color-mix(in srgb,var(--state-colour) 70%,transparent)}.state--running .state__lamp{animation:heartbeat 2.4s ease-in-out infinite}.state--killed .state__lamp{animation:alarm .9s steps(2) infinite}@keyframes heartbeat{0%,to{transform:scale(1);opacity:1}50%{transform:scale(.82);opacity:.6}}@keyframes alarm{50%{opacity:.15}}.state .state__word{color:var(--state-colour)}.state .state__bar{background:var(--state-colour)}.state--killed{border-color:var(--neg);background:radial-gradient(120% 180% at 0% 0%,color-mix(in srgb,var(--neg) 18%,transparent),transparent 65%),var(--panel-2)}.mode{display:inline-flex;align-items:center;gap:8px;padding:5px 10px 5px 8px;border:1px solid;font-size:11px;letter-spacing:.14em;text-transform:uppercase;font-weight:700;white-space:nowrap}.mode--paper{color:var(--paper);border-color:color-mix(in srgb,var(--paper) 45%,transparent);background:color-mix(in srgb,var(--paper) 10%,transparent)}.mode--backtest{color:var(--backtest);border-color:color-mix(in srgb,var(--backtest) 45%,transparent);background:color-mix(in srgb,var(--backtest) 10%,transparent)}.mode--live{color:#fff;border-color:var(--live);background:repeating-linear-gradient(-45deg,rgba(0,0,0,.45) 0 6px,transparent 6px 12px),var(--live);box-shadow:0 0 0 1px #ff3b3059,0 0 18px #ff3b3047}.mode__dot{width:6px;height:6px;border-radius:50%;background:currentColor;flex:none}.mode__note{font-size:9px;letter-spacing:.1em;opacity:.85;font-weight:500}.hazard-rail{height:4px;background:repeating-linear-gradient(-45deg,var(--live) 0 10px,#240402 10px 20px);background-size:28px 28px;animation:crawl 1.4s linear infinite}@keyframes crawl{to{background-position:28px 0}}.tile{padding:11px 12px;border:1px solid var(--rule);background:var(--panel-2);min-width:0;display:flex;flex-direction:column;gap:5px}.tile__label{font-size:9.5px;letter-spacing:.16em;text-transform:uppercase;color:var(--ink-3)}.tile__value{font-size:20px;font-weight:600;letter-spacing:-.025em;line-height:1.1}.tile__value--sm{font-size:15px}.tile__foot{font-size:10.5px;color:var(--ink-3)}.fact__label{font-size:9.5px;letter-spacing:.16em;text-transform:uppercase;color:var(--ink-3)}.fact__value{font-size:14px;font-weight:600;margin-top:2px}.funnel{display:flex;flex-direction:column;gap:2px}.funnel__row{display:grid;grid-template-columns:130px minmax(0,1fr) 64px;align-items:center;gap:12px;padding:6px 0;position:relative}.funnel__name{font-size:10.5px;letter-spacing:.1em;text-transform:uppercase;color:var(--ink-2);display:flex;align-items:baseline;gap:7px}.funnel__stage{color:var(--ink-4);font-size:9px}.funnel__track{height:20px;background:repeating-linear-gradient(90deg,var(--rule) 0 1px,transparent 1px 10%),var(--ground-2);border:1px solid var(--rule);position:relative;overflow:hidden}.funnel__fill{position:absolute;inset:0 auto 0 0;background:linear-gradient(90deg,color-mix(in srgb,var(--stage-colour) 70%,transparent),var(--stage-colour));transition:width .48s cubic-bezier(.22,1,.36,1)}.funnel__loss{position:absolute;top:0;bottom:0;background:repeating-linear-gradient(-45deg,rgba(255,81,100,.16) 0 1px,transparent 1px 5px);transition:left .48s cubic-bezier(.22,1,.36,1),width .48s cubic-bezier(.22,1,.36,1)}.funnel__count{text-align:right;font-size:14px;font-weight:600;color:var(--ink)}.funnel__drop{grid-column:2 / 3;font-size:9.5px;color:var(--ink-4);padding:0 0 4px;display:flex;justify-content:space-between}.funnel__zero{color:var(--warn)}.meter{display:flex;flex-direction:column;gap:6px}.meter__head{display:flex;align-items:baseline;justify-content:space-between;gap:8px}.meter__value{font-size:16px;font-weight:600}.meter__track{height:10px;background:var(--ground-2);border:1px solid var(--rule);position:relative;overflow:hidden}.meter__fill{position:absolute;inset:0 auto 0 0;background:var(--meter-colour, var(--info));transition:width .4s ease,background .4s ease}.meter__ticks{position:absolute;inset:0;background:repeating-linear-gradient(90deg,transparent 0 24.5%,rgba(0,0,0,.6) 24.5% 25%);pointer-events:none}.meter__limit{position:absolute;top:-3px;bottom:-3px;width:2px;background:var(--neg)}.meter__foot{display:flex;justify-content:space-between;font-size:10px;color:var(--ink-3)}.timebar{height:6px;background:var(--ground-2);border:1px solid var(--rule);position:relative;overflow:hidden;min-width:90px}.timebar__fill{position:absolute;inset:0 auto 0 0;background:var(--info)}.timebar--warn .timebar__fill{background:var(--warn)}.timebar--danger .timebar__fill{background:var(--neg)}.timebar--danger{border-color:color-mix(in srgb,var(--neg) 50%,transparent)}.pill{display:inline-flex;align-items:center;gap:5px;padding:1px 7px;border:1px solid var(--rule-2);background:var(--panel-2);font-size:10px;letter-spacing:.08em;text-transform:uppercase;color:var(--ink-2);white-space:nowrap}.pill--pos{color:var(--pos);border-color:color-mix(in srgb,var(--pos) 40%,transparent);background:color-mix(in srgb,var(--pos) 10%,transparent)}.pill--neg{color:var(--neg);border-color:color-mix(in srgb,var(--neg) 40%,transparent);background:color-mix(in srgb,var(--neg) 10%,transparent)}.pill--warn{color:var(--warn);border-color:color-mix(in srgb,var(--warn) 40%,transparent);background:color-mix(in srgb,var(--warn) 10%,transparent)}.pill--info{color:var(--info);border-color:color-mix(in srgb,var(--info) 40%,transparent);background:color-mix(in srgb,var(--info) 10%,transparent)}.pill--mute{color:var(--ink-3)}.btn{display:inline-flex;align-items:center;justify-content:center;gap:7px;padding:6px 12px;border:1px solid var(--rule-2);background:var(--panel-2);color:var(--ink);font-size:11px;letter-spacing:.08em;text-transform:uppercase;cursor:pointer;transition:background .12s ease,border-color .12s ease,color .12s ease;white-space:nowrap}.btn:hover:not(:disabled){background:var(--panel-3);border-color:var(--rule-3)}.btn:disabled{opacity:.4;cursor:not-allowed}.btn--sm{padding:3px 8px;font-size:10px}.btn--danger{color:#fff;border-color:var(--neg);background:color-mix(in srgb,var(--neg) 22%,transparent)}.btn--danger:hover:not(:disabled){background:var(--neg)}.btn--ghost{background:transparent}.btn--kill{width:100%;padding:12px;font-size:13px;font-weight:700;letter-spacing:.22em;color:#ffdada;border:1px solid var(--neg);background:repeating-linear-gradient(-45deg,rgba(255,59,48,.14) 0 8px,transparent 8px 16px),color-mix(in srgb,var(--neg) 12%,transparent)}.btn--kill:hover:not(:disabled){color:#fff;background:repeating-linear-gradient(-45deg,rgba(0,0,0,.35) 0 8px,transparent 8px 16px),var(--neg)}.btn--release{width:100%;padding:10px;border-color:var(--pos);color:var(--pos);background:color-mix(in srgb,var(--pos) 10%,transparent)}.field{display:flex;flex-direction:column;gap:5px}.field__label{font-size:9.5px;letter-spacing:.16em;text-transform:uppercase;color:var(--ink-3)}.input{background:var(--ground-2);border:1px solid var(--rule-2);padding:8px 10px;color:var(--ink);font-size:12.5px;width:100%}.input:focus{border-color:var(--rule-3);outline:1px solid color-mix(in srgb,var(--mint) 60%,transparent);outline-offset:-1px}.input::placeholder{color:var(--ink-4)}.select{appearance:none;cursor:pointer}.tablewrap{overflow-x:auto;min-width:0}.table{width:100%;border-collapse:collapse;font-size:12px;white-space:nowrap}.table th{text-align:left;font-size:9.5px;letter-spacing:.14em;text-transform:uppercase;color:var(--ink-3);font-weight:600;padding:8px 12px;border-bottom:1px solid var(--rule-2);background:var(--panel);position:sticky;top:0;z-index:1}.table th.sortable{cursor:pointer;user-select:none}.table th.sortable:hover{color:var(--ink)}.table th .sortmark{color:var(--mint);margin-left:4px}.table td{padding:8px 12px;border-bottom:1px solid var(--rule);color:var(--ink-2)}.table tbody tr:hover td{background:var(--panel-2)}.table td.strong{color:var(--ink);font-weight:600}.table .right{text-align:right}.table tr.clickable{cursor:pointer}.table tr.expanded td{background:var(--panel-2);border-bottom-color:transparent}.table .detail td{background:var(--ground-2);padding:0;white-space:normal;border-bottom:1px solid var(--rule-2)}.placeholder{padding:34px 18px;display:flex;flex-direction:column;align-items:center;gap:8px;text-align:center;color:var(--ink-3)}.placeholder__mark{font-size:11px;letter-spacing:.28em;text-transform:uppercase;color:var(--ink-4);border:1px solid var(--rule);padding:8px 14px}.placeholder__title{color:var(--ink);font-size:13px}.placeholder__body{font-size:11.5px;max-width:46ch;line-height:1.6}.placeholder--error .placeholder__mark{color:var(--neg);border-color:color-mix(in srgb,var(--neg) 45%,transparent)}.skeleton{display:block;height:10px;background:linear-gradient(90deg,var(--panel-2) 0%,var(--panel-3) 50%,var(--panel-2) 100%);background-size:200% 100%;animation:sweep 1.3s linear infinite}@keyframes sweep{to{background-position:-200% 0}}.skeleton-rows{display:flex;flex-direction:column;gap:10px;padding:14px 0}.halt{display:flex;gap:10px;align-items:flex-start;padding:9px 12px;border:1px solid color-mix(in srgb,var(--warn) 35%,transparent);background:color-mix(in srgb,var(--warn) 8%,transparent)}.halt__reason{color:var(--warn);font-weight:600;font-size:12px;letter-spacing:.04em}.halt__detail{font-size:11px;color:var(--ink-2);margin-top:2px;white-space:normal}.chain{display:flex;flex-direction:column;position:relative;padding:4px 0 0}.chain__step{display:grid;grid-template-columns:30px minmax(0,1fr);gap:14px;position:relative;padding-bottom:10px}.chain__spine{position:relative;display:flex;justify-content:center}.chain__spine:before{content:"";position:absolute;top:0;bottom:-10px;width:1px;background:var(--rule-2)}.chain__step:last-child .chain__spine:before{bottom:50%}.chain__node{width:22px;height:22px;border-radius:50%;border:1px solid var(--node-colour, var(--rule-3));background:var(--ground);color:var(--node-colour, var(--ink-3));display:flex;align-items:center;justify-content:center;font-size:10px;font-weight:700;position:relative;z-index:1;margin-top:8px;flex:none}.chain__step--pass{--node-colour: var(--pos)}.chain__step--stop{--node-colour: var(--neg)}.chain__step--info{--node-colour: var(--info)}.chain__step--warn{--node-colour: var(--warn)}.chain__step--pass .chain__node{box-shadow:0 0 0 3px color-mix(in srgb,var(--pos) 12%,transparent)}.chain__step--stop .chain__node{box-shadow:0 0 0 4px color-mix(in srgb,var(--neg) 18%,transparent)}.chain__step--stop .chain__spine:before{background:repeating-linear-gradient(to bottom,var(--neg) 0 3px,transparent 3px 7px)}.chain__card{border:1px solid var(--rule);background:var(--panel-2);padding:10px 12px;min-width:0}.chain__step--stop .chain__card{border-color:color-mix(in srgb,var(--neg) 45%,transparent);background:color-mix(in srgb,var(--neg) 7%,transparent)}.chain__top{display:flex;align-items:center;gap:10px;flex-wrap:wrap}.chain__agent{font-size:12.5px;font-weight:600;color:var(--ink);letter-spacing:.02em}.chain__verdict{font-size:10.5px;letter-spacing:.14em;text-transform:uppercase;font-weight:700;color:var(--node-colour, var(--ink-2))}.chain__score{margin-left:auto;display:flex;align-items:center;gap:8px}.chain__scorebar{width:74px;height:4px;background:var(--ground-2);border:1px solid var(--rule);position:relative;overflow:hidden}.chain__scorefill{position:absolute;inset:0 auto 0 0;background:var(--node-colour, var(--info))}.chain__reasons{margin-top:8px;display:flex;flex-direction:column;gap:4px}.chain__reason{font-size:11.5px;color:var(--ink-2);white-space:normal;display:flex;gap:8px;line-height:1.5}.chain__reason:before{content:"▸";color:var(--ink-4);flex:none}.chain__detail{margin-top:9px;display:grid;grid-template-columns:repeat(auto-fit,minmax(112px,1fr));background:var(--panel);border:1px solid var(--rule)}.chain__detailcell{padding:7px 9px;box-shadow:inset -1px 0 0 var(--rule),inset 0 -1px 0 var(--rule)}.chain__terminated{border:1px dashed color-mix(in srgb,var(--neg) 50%,transparent);background:color-mix(in srgb,var(--neg) 6%,transparent);padding:12px 14px;margin-left:44px;margin-top:2px}.chain__notreached{margin-left:44px;margin-top:10px;padding:10px 14px;border:1px dashed var(--rule-2);color:var(--ink-4);font-size:11px;white-space:normal}.chain__notreached ol{display:flex;flex-wrap:wrap;gap:6px;margin-top:7px}.chain__notreached li{border:1px solid var(--rule);padding:1px 7px;font-size:10px;letter-spacing:.08em;text-transform:uppercase}.scrim{position:fixed;inset:0;background:#030406c7;backdrop-filter:blur(2px);display:flex;align-items:center;justify-content:center;padding:20px;z-index:200;animation:fade .14s ease both}@keyframes fade{0%{opacity:0}to{opacity:1}}.modal{width:min(520px,100%);background:var(--panel);border:1px solid var(--rule-3);box-shadow:var(--shadow);animation:rise .18s cubic-bezier(.22,1,.36,1) both}.modal--danger{border-color:var(--neg)}.modal--danger .modal__head{background:repeating-linear-gradient(-45deg,rgba(255,59,48,.16) 0 8px,transparent 8px 16px);border-bottom-color:color-mix(in srgb,var(--neg) 45%,transparent)}.modal__head{padding:12px 16px;border-bottom:1px solid var(--rule);display:flex;align-items:center;gap:10px}.modal__title{font-size:12px;letter-spacing:.16em;text-transform:uppercase;font-weight:700}.modal__body{padding:16px;display:flex;flex-direction:column;gap:14px;font-size:12px;color:var(--ink-2);line-height:1.6}.modal__foot{padding:12px 16px;border-top:1px solid var(--rule);display:flex;gap:10px;justify-content:flex-end}.modal__facts{display:grid;grid-template-columns:repeat(auto-fit,minmax(120px,1fr));background:var(--panel-2);border:1px solid var(--rule)}.modal__fact{padding:8px 10px;box-shadow:inset -1px 0 0 var(--rule),inset 0 -1px 0 var(--rule)}.modal__error{border:1px solid var(--neg);background:color-mix(in srgb,var(--neg) 12%,transparent);color:#ffd0d4;padding:8px 10px;font-size:11.5px}.login{min-height:100%;display:grid;place-items:center;padding:24px;background:radial-gradient(90% 70% at 50% 0%,rgba(110,231,183,.05),transparent 70%),var(--ground)}.login__card{width:min(400px,100%);border:1px solid var(--rule-2);background:var(--panel);box-shadow:var(--shadow)}.login__head{padding:26px 24px 20px;border-bottom:1px solid var(--rule);text-align:center}.login__mark{font-size:30px;letter-spacing:-.05em;font-weight:700}.login__mark em{font-style:normal;color:var(--mint)}.login__sub{margin-top:6px;font-size:9.5px;letter-spacing:.24em;text-transform:uppercase;color:var(--ink-4)}.login__form{padding:22px 24px 24px;display:flex;flex-direction:column;gap:14px}.login__note{font-size:10.5px;color:var(--ink-4);line-height:1.6;border-top:1px solid var(--rule);padding-top:12px}.spark{display:block;width:100%;height:44px;overflow:visible}.spark__line{fill:none;stroke:var(--spark-colour, var(--mint));stroke-width:1.25;vector-effect:non-scaling-stroke}.spark__area{fill:var(--spark-colour, var(--mint));opacity:.1}.spark__base{stroke:var(--rule-2);stroke-width:1;stroke-dasharray:2 3;vector-effect:non-scaling-stroke}.spark__dot{fill:var(--spark-colour, var(--mint))}.kv{display:grid;grid-template-columns:repeat(auto-fit,minmax(150px,1fr));background:var(--panel);border:1px solid var(--rule)}.kv__cell{padding:9px 11px;min-width:0;box-shadow:inset -1px 0 0 var(--rule),inset 0 -1px 0 var(--rule)}.kv__key{font-size:9.5px;letter-spacing:.14em;text-transform:uppercase;color:var(--ink-3)}.kv__val{font-size:13px;font-weight:600;margin-top:3px}.kv__note{font-size:10px;color:var(--ink-4);margin-top:2px;white-space:normal}.readonly-banner{display:flex;gap:10px;align-items:flex-start;border:1px solid var(--rule-2);border-left:3px solid var(--info);background:var(--panel-2);padding:11px 14px;font-size:11.5px;color:var(--ink-2);line-height:1.6}.readonly-banner strong{color:var(--ink);font-weight:600}.toolbar{display:flex;align-items:center;gap:8px;flex-wrap:wrap}.marketpicker{display:flex;flex-direction:column;max-height:560px;overflow-y:auto}.marketpicker__item{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:8px;align-items:center;padding:8px 12px;border-bottom:1px solid var(--rule);cursor:pointer;text-align:left;background:none;border-left:2px solid transparent;width:100%}.marketpicker__item:hover{background:var(--panel-2)}.marketpicker__item--active{background:var(--panel-2);border-left-color:var(--mint)}.marketpicker__label{display:block;min-width:0}.marketpicker__name{display:block;font-size:12.5px;font-weight:600;color:var(--ink)}.marketpicker__meta{display:block;font-size:10px;color:var(--ink-3);margin-top:1px}.legend{display:flex;gap:14px;flex-wrap:wrap;font-size:10px;color:var(--ink-3)}.legend__item{display:flex;align-items:center;gap:5px}.legend__swatch{width:8px;height:8px;border:1px solid currentColor}.predicted{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:14px;padding:14px}@media(max-width:780px){.predicted{grid-template-columns:minmax(0,1fr)}}.predicted__col{border:1px solid var(--rule);background:var(--panel)}.predicted__colhead{padding:6px 11px;border-bottom:1px solid var(--rule);font-size:9.5px;letter-spacing:.16em;text-transform:uppercase;color:var(--ink-3)}.predicted__col--actual .predicted__colhead{color:var(--mint)}.predicted__rows{padding:4px 0}.predicted__row{display:flex;justify-content:space-between;gap:12px;padding:5px 11px;font-size:11.5px}.predicted__row span:first-child{color:var(--ink-3)}.predicted__row span:last-child{color:var(--ink);font-weight:600}@media(max-width:1180px){.grid--overview{grid-template-columns:minmax(0,1fr)}.grid--3{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:900px){.shell{grid-template-columns:minmax(0,1fr);grid-template-rows:auto minmax(0,1fr)}.rail{position:static;height:auto;border-right:0;border-bottom:1px solid var(--rule)}.rail:before{inset:0 0 auto;width:auto;height:3px}body[data-mode=live] .rail:before{width:auto;height:4px}.nav{flex-direction:row;overflow-x:auto;padding:8px}.nav__key{display:none}.rail__foot{flex-direction:row;align-items:center;flex-wrap:wrap}.rail__foot>.mode,.rail__foot>.pill{flex:0 0 auto}.rail__foot>.row{flex:1 1 auto}.state{grid-template-columns:minmax(0,1fr)}.state__facts{border-left:0;border-top:1px solid var(--rule)}.grid--3,.grid--2{grid-template-columns:minmax(0,1fr)}.page{padding:12px 12px 32px}.transport{padding:6px 12px}.funnel__row{grid-template-columns:96px minmax(0,1fr) 48px;gap:8px}.state__word{font-size:24px}}@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important}}.table tr.tone-pos td:first-child{box-shadow:inset 2px 0 color-mix(in srgb,var(--pos) 70%,transparent)}.table tr.tone-neg td:first-child{box-shadow:inset 2px 0 color-mix(in srgb,var(--neg) 70%,transparent)}.table tr.excluded td{color:var(--ink-4)}.table tr.excluded td:first-child{box-shadow:inset 2px 0 0 var(--rule-3)}.boot{display:flex;flex-direction:column;align-items:center;justify-content:center;min-height:100vh;gap:.75rem}.boot__mark{font-size:1.5rem;letter-spacing:.18em;color:var(--fg-strong, #e8e8e8)}.boot__body{color:var(--fg-dim, #8a8a8a);font-size:.85rem}
