body{margin:0}:root{--bg:#0b1220;--panel:#111827;--border:#1f2937;--text:#e5e7eb;--muted:#9ca3af;--accent:#3b82f6;--good:#10b981;--bad:#ef4444}*{box-sizing:border-box}html,body{height:100%}body{background:var(--bg);color:var(--text);margin:0;font:14px/1.5 -apple-system,BlinkMacSystemFont,Segoe UI,system-ui,sans-serif}.view{display:none}.view.on{display:block}#landing{background:radial-gradient(at top,#0f1b3a 0%,#0b1220 55%);place-items:center;min-height:100vh;padding:40px 20px;display:none}#landing.on{display:grid}.hero{text-align:center;width:100%;max-width:640px}.logo{flex-direction:column;align-items:center;gap:12px;margin:0 0 18px;display:inline-flex}.logo .mark{display:block}.logo .wm{letter-spacing:-.02em;color:#f1f5f9;font:700 42px/1 Inter,-apple-system,BlinkMacSystemFont,system-ui,sans-serif}.logo .wm em{color:var(--accent);font-style:normal;font-weight:500}.brand{cursor:pointer;font:inherit;background:0 0;border:none;border-radius:6px;align-items:center;gap:8px;padding:4px 14px 4px 4px;display:inline-flex}.brand:hover{background:#1e293b}.brand .wm{letter-spacing:-.01em;color:var(--text);font:600 13px/1 Inter,-apple-system,BlinkMacSystemFont,system-ui,sans-serif}.brand .wm em{color:var(--accent);font-style:normal;font-weight:500}.flightbtn{font:inherit;color:#cbd5e1;border:1px solid var(--border);cursor:pointer;letter-spacing:-.005em;background:#1e293b;border-radius:6px;align-items:center;gap:8px;margin-left:14px;padding:6px 12px;font-size:12px;font-weight:500;transition:background .15s,border-color .15s,color .15s;display:inline-flex}.flightbtn:hover{color:#dbeafe;background:#3b82f61f;border-color:#3b82f680}.flightbtn:hover svg{transform:translate(2px)translateY(-1px)}.flightbtn svg{color:#60a5fa;flex-shrink:0;width:15px;height:15px;transition:transform .2s}.flightbtn .kbd{color:#93c5fd;letter-spacing:.04em;border:1px solid #3b82f64d;border-radius:3px;padding:2px 7px;font-family:IBM Plex Mono,ui-monospace,monospace;font-size:10px}.hero .tag{color:var(--muted);margin:0 0 36px;font-size:15px;font-style:italic;line-height:1.6}.beginbtn{font:inherit;color:#dbeafe;cursor:pointer;background:#3b82f614;border:1px solid #3b82f659;border-radius:10px;align-items:center;gap:10px;padding:13px 28px;font-size:15px;font-weight:500;transition:all .15s;display:inline-flex}.beginbtn:hover{background:#3b82f629;border-color:#3b82f699}.beginbtn svg{opacity:.9;width:16px;height:16px}.hint{color:#64748b;margin-top:18px;font-size:12px}.hint b{color:var(--muted);font-weight:500}#overlay{z-index:100;-webkit-backdrop-filter:blur(4px);background:#030610c7;padding:40px 20px;display:none;position:fixed;inset:0;overflow-y:auto}#overlay.on{animation:.15s fadeIn;display:block}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}.term{background:var(--panel);max-width:720px;color:var(--text);border:1px solid var(--border);border-radius:8px;margin:8vh auto 0;font-family:IBM Plex Mono,ui-monospace,SF Mono,Menlo,monospace;font-size:13px;line-height:1.5;animation:.18s termIn;overflow:hidden;box-shadow:0 40px 100px #0009}@keyframes termIn{0%{opacity:0;transform:translateY(-10px)}to{opacity:1;transform:none}}.term .hdr{border-bottom:1px solid var(--border);letter-spacing:.08em;text-transform:uppercase;color:var(--muted);background:#0f172a;justify-content:space-between;align-items:center;padding:11px 16px;font-size:11px;display:flex}.term .hdr .b{color:var(--accent);font-weight:600}.term .hdr .r{color:#64748b;border:1px solid var(--border);cursor:pointer;letter-spacing:.1em;font-size:10px;font:inherit;background:0 0;border-radius:3px;padding:3px 8px;font-family:inherit}.term .hdr .r:hover{color:var(--text);border-color:#334155}.term .sline{border-bottom:1px solid var(--border);background:#0f172a;align-items:center;padding:12px 16px;display:flex}.term .sline .pr{color:var(--accent);margin-right:10px;font-weight:600}#searchInput{color:var(--text);font:inherit;background:0 0;border:none;outline:none;flex:1;font-family:inherit}#searchInput::placeholder{color:#475569}.term .cursor{color:var(--accent);margin-left:2px;animation:1s steps(2,end) infinite cursBlink}@keyframes cursBlink{50%{opacity:0}}.term .fx{border-bottom:1px solid var(--border);background:#0b1220;gap:6px;padding:10px 16px;font-size:11px;display:flex}.fpill{font:inherit;color:var(--muted);border:1px solid var(--border);cursor:pointer;letter-spacing:.04em;background:#1e293b;border-radius:4px;padding:4px 10px;font-family:inherit}.fpill:hover{color:var(--text);background:#334155}.fsep{background:var(--border);align-self:stretch;width:1px;margin:0 4px}.fpill.on{color:#bfdbfe;background:#3b82f61f;border-color:#3b82f680}.fpill .key{color:#64748b;margin-right:4px}.fpill.on .key{color:#60a5fa}#searchResults{max-height:52vh;margin:0;padding:4px 0 8px;list-style:none;overflow-y:auto}.sgroup{text-transform:uppercase;letter-spacing:.1em;color:#64748b;justify-content:space-between;align-items:baseline;padding:12px 16px 6px;font-size:10px;font-weight:600;display:flex}.sgroup .cnt{color:#475569;font-weight:400}.sitem{cursor:pointer;grid-template-columns:24px 120px 1fr 72px 80px;align-items:baseline;gap:10px;padding:7px 16px;display:grid}.sitem:hover{background:#0f172a}.sitem.hl{background:#3b82f614}.sitem .idx{color:#475569;font-size:11px}.sitem .sym{color:var(--text);font-weight:500}.sitem .dots{color:var(--border);white-space:nowrap;align-self:center;font-size:12px;overflow:hidden}.sitem .num{color:var(--muted);text-align:right;font-variant-numeric:tabular-nums}.sitem .num.v{color:var(--text)}.sempty{text-align:center;color:#475569;letter-spacing:.1em;text-transform:uppercase;padding:40px 16px;font-size:12px}.modalFoot{border-top:1px solid var(--border);letter-spacing:.08em;text-transform:uppercase;color:#64748b;background:#0f172a;justify-content:space-between;gap:16px;padding:9px 16px;font-size:10px;display:flex}.modalFoot kbd{border:1px solid var(--border);color:var(--muted);border-radius:3px;margin-right:4px;padding:1px 6px;font-family:inherit;font-size:10px;display:inline-block}.modalFoot .r{color:var(--muted)}header{background:var(--panel);border-bottom:1px solid var(--border);z-index:10;box-sizing:border-box;grid-template-columns:1fr auto 1fr;align-items:center;column-gap:18px;height:50px;padding:8px 20px;display:grid;position:sticky;top:0}header .brand{justify-self:start}header .flightbtn{justify-self:center;margin-left:0}h1{letter-spacing:-.01em;margin:0;font-size:18px;font-weight:600}.sub{color:var(--muted);font-size:12px}main{grid-template-columns:300px 1fr;gap:0;display:grid}aside{border-right:1px solid var(--border);background:var(--panel);flex-direction:column;height:calc(100vh - 50px);display:flex;position:sticky;top:50px;overflow:hidden}.sidebarTop{scrollbar-width:thin;scrollbar-color:#334155 transparent;flex:1;min-height:0;padding:16px 20px;overflow-y:auto}.sidebarTop::-webkit-scrollbar{width:8px}.sidebarTop::-webkit-scrollbar-track{border-left:1px solid var(--border);background:0 0}.sidebarTop::-webkit-scrollbar-thumb{border:1px solid var(--border);background:#1e293b;border-radius:4px}.sidebarTop::-webkit-scrollbar-thumb:hover{background:#334155}.sidebarTop::-webkit-scrollbar-thumb:active{background:#475569}.sidebarFooter{border-top:1px solid var(--border);text-align:right;background:#0f172a;padding:10px 20px}.sidebarFooter h1{letter-spacing:-.01em;color:var(--text);margin:0;font-size:15px;font-weight:600}.sidebarFooter .sub{color:var(--muted);text-transform:uppercase;letter-spacing:.08em;margin-top:2px;font-size:10px}.controls{flex-wrap:wrap;gap:6px;display:flex}.controls button{font:inherit;color:var(--text);border:1px solid var(--border);cursor:pointer;background:#1e293b;border-radius:5px;padding:5px 10px;font-size:12px}.controls button:hover{background:#334155}.filterGroup{margin-bottom:18px}.filterGroup>h3{color:var(--muted);text-transform:uppercase;letter-spacing:.08em;margin:0 0 8px;font-size:10px;font-weight:600}.skipStack{flex-direction:column;gap:6px;display:flex}.stepper{border:1px solid var(--border);color:var(--muted);background:#1e293b;border-radius:5px;align-items:center;gap:6px;padding:4px 6px 4px 10px;font-size:12px;display:flex}.stepper .stepperLbl{flex:1}.stepper input[type=number]{width:28px;color:var(--text);font:inherit;font-variant-numeric:tabular-nums;text-align:center;-moz-appearance:textfield;background:0 0;border:none;padding:0}.stepper input[type=number]::-webkit-outer-spin-button{-webkit-appearance:none;margin:0}.stepper input[type=number]::-webkit-inner-spin-button{-webkit-appearance:none;margin:0}.stepper input[type=number]:focus{color:var(--accent);outline:none}.stepper .unit{color:var(--muted);margin-left:-2px;font-size:11px}.stepBtn{font:inherit;width:22px;height:22px;color:var(--text);border:1px solid var(--border);cursor:pointer;background:#0f172a;border-radius:4px;justify-content:center;align-items:center;padding:0;font-size:14px;line-height:1;display:inline-flex}.stepBtn:hover{background:#334155;border-color:#475569}.stepBtn:active{background:#475569}.filterHint{color:#64748b;margin:6px 0 0;font-size:11px;line-height:1.4}.chips{flex-wrap:wrap;gap:5px;display:flex}.chip{font:inherit;cursor:pointer;color:var(--muted);border:1px solid var(--border);font-variant-numeric:tabular-nums;background:#1e293b;border-radius:999px;padding:4px 9px;font-size:12px}.chip:hover{color:var(--text);background:#334155}.chip.on{color:var(--accent);background:#38bdf824;border-color:#38bdf873}.chipTrend{align-items:center;gap:3px;padding:4px 9px;display:inline-flex}.chipTrend.off{opacity:.32}.tdot{border-radius:50%;width:7px;height:7px;display:inline-block}.tdot.green{background:#10b981}.tdot.blue{background:#3b82f6}.tdot.red{background:#ef4444}.cohort{margin-bottom:18px}.cohort h3{color:var(--muted);text-transform:uppercase;letter-spacing:.08em;margin:0 0 8px;font-size:11px;font-weight:600}label.row{cursor:pointer;-webkit-user-select:none;user-select:none;border-radius:5px;align-items:center;gap:8px;padding:5px 8px;font-size:13px;display:flex}label.row:hover{background:#1e293b}label.row.hl{background:#1e293b;outline:1px solid #334155}label.row input{accent-color:var(--accent);cursor:pointer}.swatch{border-radius:50%;flex-shrink:0;width:10px;height:10px}.mlabel{font-variant-numeric:tabular-nums;flex:1}.fantom{opacity:.55}.chartWrap{padding:16px 28px 8px}.genInfoSplit.layoutSplit{grid-template-columns:minmax(0,1.2fr) minmax(0,1fr);align-items:start;gap:0;display:grid}.genInfoSplit.layoutSplit .chartWrap{padding:16px 20px 8px 28px}.genInfoSplit.layoutSplit .tableWrap{max-height:calc(100vh - 120px);padding:16px 28px 8px 12px;overflow-y:auto}.genInfoSplit.layoutSplit .canvasBox{height:calc(100vh - 200px);min-height:340px}.chartHead{flex-wrap:wrap;justify-content:space-between;align-items:baseline;gap:12px;margin-bottom:10px;display:flex}.chartHead h3{color:var(--muted);text-transform:uppercase;letter-spacing:.08em;margin:0;font-size:12px;font-weight:500}.chartHead .hint{color:#64748b;font-size:11px}.rangeFoot{color:var(--muted);justify-content:space-between;align-items:center;margin-top:4px;font-size:11px;display:flex}.rangeFoot .rangeVals{font-variant-numeric:tabular-nums;color:var(--text);white-space:nowrap;font-size:11px}.rangeFoot .rangeReset{font:inherit;cursor:pointer;color:var(--muted);border:1px solid var(--border);background:#1e293b;border-radius:4px;padding:2px 7px;font-size:10px}.rangeFoot .rangeReset:hover{color:var(--text);background:#334155}.dualRange{width:100%;height:18px;position:relative}.dualRange .track{background:#1e293b;border-radius:2px;height:4px;position:absolute;top:7px;left:0;right:0}.dualRange .fill{background:var(--accent);pointer-events:none;border-radius:2px;height:4px;position:absolute;top:7px}.dualRange input[type=range]{pointer-events:none;appearance:none;background:0 0;width:100%;height:18px;margin:0;position:absolute;top:0;left:0}.dualRange input[type=range]:focus{outline:none}.dualRange input[type=range]::-webkit-slider-runnable-track{background:0 0;border:none;height:18px}.dualRange input[type=range]::-moz-range-track{background:0 0;border:none;height:18px}.dualRange input[type=range]::-webkit-slider-thumb{appearance:none;background:var(--accent);cursor:grab;pointer-events:auto;border-radius:50%;width:10px;height:10px;transition:box-shadow .12s,transform .12s;box-shadow:0 0 0 3px #38bdf82e}.dualRange input[type=range]::-webkit-slider-thumb:hover{transform:scale(1.1);box-shadow:0 0 0 5px #38bdf838}.dualRange input[type=range]::-webkit-slider-thumb:active{cursor:grabbing;box-shadow:0 0 0 6px #38bdf847}.dualRange input[type=range]::-moz-range-thumb{background:var(--accent);cursor:grab;pointer-events:auto;border:none;border-radius:50%;width:10px;height:10px;box-shadow:0 0 0 3px #38bdf82e}.sectionTitle{z-index:5;-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);border-bottom:1px solid var(--border);background:#0b1220f0;padding:10px 28px;position:sticky;top:50px}.sectionTitle h2{color:var(--muted);text-transform:uppercase;letter-spacing:.12em;margin:0;font-size:11px;font-weight:600}.ddSection>.sectionTitle{margin:-36px -28px 20px}.canvasBox{height:calc(100vh - 140px);min-height:400px;position:relative}.tableWrap{background:var(--bg);padding:8px 28px 32px}.tableHeader{align-items:baseline;gap:12px;margin:14px 0 8px;display:flex}.tableHeader h2{color:var(--muted);text-transform:uppercase;letter-spacing:.08em;margin:0;font-size:14px;font-weight:600}.tableHeader .hint{color:var(--muted);margin-top:0;font-size:11px}table{border-collapse:collapse;background:var(--panel);border:1px solid var(--border);border-radius:8px;width:100%;font-size:13px;overflow:hidden}th,td{text-align:right;border-bottom:1px solid var(--border);font-variant-numeric:tabular-nums;white-space:nowrap;padding:10px 12px}th:first-child,td:first-child,th:nth-child(2),td:nth-child(2){text-align:left}th{color:var(--muted);text-transform:uppercase;letter-spacing:.06em;cursor:pointer;-webkit-user-select:none;user-select:none;box-shadow:inset 0 -1px 0 var(--border);background:#0f172a;font-size:11px;font-weight:500}.pill{border-radius:10px;align-items:center;gap:3px;padding:3px 8px;display:inline-flex}.pill .dot{border-radius:50%;width:8px;height:8px}.pill.bull{color:#34d399;background:#10b9811f}.pill.bull .dot{background:#10b981}.pill.bear{color:#fca5a5;background:#ef44441f}.pill.bear .dot{background:#ef4444}.pill.neutral{color:#93c5fd;background:#3b82f61f}.pill.neutral .dot{background:#3b82f6}.daytag{color:var(--muted);margin-left:4px;font-size:11px}.live{color:#f59e0b;margin-left:6px;font-size:11px;font-weight:500}.ddSection{border-top:1px solid var(--border);background:linear-gradient(180deg, #0b1220 0%, var(--bg) 60%);padding:36px 28px 20px}.ddHead{margin-bottom:20px}.ddHead .tag{color:var(--muted);max-width:720px;margin:0;font-size:13px;line-height:1.55}.ddKpis{flex-wrap:wrap;gap:10px;margin-bottom:20px;display:flex}.ddKpi{border:1px solid var(--border);background:var(--panel);border-radius:8px;flex:1;min-width:150px;padding:10px 14px}.ddKpi .lbl{color:var(--muted);text-transform:uppercase;letter-spacing:.06em;font-size:10px}.ddKpi .val{font-variant-numeric:tabular-nums;margin-top:3px;font-size:22px;font-weight:600}.ddKpi .val.bad{color:var(--bad)}.ddKpi .sub{color:#64748b;margin-top:2px;font-size:11px}.regimeTiles{grid-template-columns:repeat(5,1fr);gap:10px;padding:14px 28px 4px;display:grid}.regimeTile{border:1px solid var(--border);background:var(--panel);border-radius:8px;flex-direction:column;padding:10px 12px;display:flex}.regimeTile .tileHead{align-items:center;gap:5px;margin-bottom:4px;display:flex}.regimeTile .tileLbl{color:var(--muted);text-transform:uppercase;letter-spacing:.05em;font-size:10px}.regimeTile .tileVal{color:var(--text);font-variant-numeric:tabular-nums;margin-top:2px;font-size:22px;font-weight:600}.regimeTile .tileVal.dim{color:var(--muted)}.regimeTile .tileSub{color:#64748b;margin-top:2px;font-size:11px}.ddGridCard{background:var(--panel);border:1px solid var(--border);border-radius:8px;padding:14px 16px}.ddCardHead{flex-wrap:wrap;justify-content:space-between;align-items:baseline;gap:12px;margin-bottom:10px;display:flex}.ddCardHead h3{color:var(--muted);text-transform:uppercase;letter-spacing:.08em;margin:0;font-size:12px;font-weight:500}.ddCardHead .hint{color:#64748b;font-size:11px}.ddCardHead .dot-rec{color:var(--good)}.ddHeroBox{height:480px;position:relative}.ddGrid{grid-template-columns:1fr 1fr;align-items:start;gap:16px;margin-bottom:20px;display:grid}@media (width<=1100px){.ddGrid{grid-template-columns:1fr}}.ddGridBox{height:480px;position:relative}#ddTable th:nth-child(n+2),#ddTable td:nth-child(n+2){text-align:right}#ddTable .recYes{color:var(--good)}#ddTable .recNo{color:var(--bad)}.liveDot{vertical-align:middle;background:#f59e0b;border-radius:50%;width:6px;height:6px;margin-left:6px;display:inline-block;box-shadow:0 0 6px #f59e0b8c}.methodo{color:var(--muted);padding:0 28px 12px;font-size:12px}.methodo input[type=number]{width:48px;color:var(--text);border:1px solid var(--border);font:inherit;font-variant-numeric:tabular-nums;text-align:center;background:#1e293b;border-radius:4px;padding:2px 4px}.methodo input[type=number]:focus{outline:1px solid var(--accent);border-color:var(--accent)}th:hover{color:var(--text);background:#1e293b}th .arr{width:10px;color:var(--accent);display:inline-block}tbody tr{cursor:pointer;transition:background .1s}tbody tr:hover,tbody tr.hl{background:#0f172a}tbody tr.off td:not(.chk){opacity:.35}td.chk{padding:0 0 0 12px}td.chk input{accent-color:var(--accent);cursor:pointer}td.name{font-weight:500}td .swatch{vertical-align:middle;margin-right:6px;display:inline-block}.bad{color:var(--bad)}.good{color:var(--good)}tfoot td{color:var(--text);background:#0f172a;border-top:2px solid #334155;font-weight:600}.loading{height:calc(100vh - 65px);color:var(--muted);place-items:center;font-size:14px;display:grid}
