:root{--bg:#090e14;--panel:#101822;--line:#223040;--text:#e5ecf5;--muted:#8a9db2;--green:#62dfb4;--red:#ff839a}body{background:radial-gradient(ellipse at 65% -5%,#142634 0,transparent 45%),var(--bg);color:var(--text)}.news-tape{height:38px;display:flex;align-items:center;gap:12px;border-bottom:1px solid #233143;background:#0b141e;overflow:hidden;padding:0 24px;font:11px 'DM Sans',system-ui}.news-label{display:flex;align-items:center;gap:7px;flex-shrink:0;color:#9bcaff;font-size:10px;font-weight:700;letter-spacing:.7px}.news-label i{width:6px;height:6px;background:#79adcd;border-radius:50%}.news-label small{font-size:9px;color:#8295a8;font-weight:400;letter-spacing:0;margin-left:8px}.news-window{flex:1;min-width:0;overflow:hidden;mask-image:linear-gradient(90deg,transparent,#000 12px,#000 calc(100% - 12px),transparent)}.news-track{display:flex;width:max-content;animation:news-flow var(--news-duration,120s) linear infinite;gap:0}.news-group{display:flex;align-items:center;flex-shrink:0;gap:32px;padding-right:32px}.news-group a{display:flex;align-items:center;gap:9px;white-space:nowrap;color:#d0dce7}.news-group b{font-size:9px;color:#81b6e8}.news-group time{color:#738ba0;font-size:9px}.news-tape button{font:10px system-ui;width:auto;min-height:24px;padding:3px 8px;border:1px solid #2b3d4f;border-radius:4px;color:#93a9bc;background:transparent}.news-cadence{font-size:10px;color:#8ba3b8;white-space:nowrap}.news-tape.paused .news-track,.news-tape:hover .news-track,.news-tape:focus-within .news-track{animation-play-state:paused}.news-tape[data-stale=true] .news-label i{background:#efbb71}@keyframes news-flow{to{transform:translateX(-50%)}}.terminal-header{position:relative;display:flex;height:78px;min-height:78px;gap:36px;padding:0 max(24px,calc((100vw - 1440px)/2));border-bottom:1px solid var(--line);background:#0b121ad9;backdrop-filter:blur(16px)}.terminal-brand{display:flex;gap:10px;align-items:center;flex-shrink:0}.terminal-brand>b{display:grid;place-items:center;height:34px;width:34px;border:1px solid #476776;border-radius:9px;background:linear-gradient(150deg,#263f51,#152d31);font:800 13px Manrope,system-ui;color:#b2f1df}.terminal-brand>span{font:800 12px Manrope,system-ui;letter-spacing:1px}.terminal-brand small{display:block;color:#738ea1;font:500 8px system-ui;letter-spacing:1.7px;margin-top:4px}.terminal-nav{display:flex;align-items:center;gap:5px;height:100%;flex:1}.terminal-nav a{display:flex;align-items:center;gap:8px;padding:11px 15px;color:#91a5b9;border-radius:8px;font-size:12px;border:1px solid transparent;height:auto;font-weight:500;white-space:nowrap}.terminal-nav .active{border:1px solid #314b58;background:#172a34;color:#91e5cf}.terminal-nav a:hover{background:#17232f;color:#e5edf5}svg{width:17px;height:17px;fill:none;stroke:currentColor;stroke-width:1.6;stroke-linecap:round;stroke-linejoin:round}#languageDock{margin-left:auto;flex-shrink:0}.language-picker{margin:0;background:#111e2b;border:1px solid #2c4054;padding:8px 10px;min-height:36px;font-size:11px;width:130px;max-width:150px}.intro{margin-bottom:22px}.intro h1{font-size:34px;letter-spacing:-1.2px}.intro h1 span{color:#9dcfdd}.intro .eyebrow{letter-spacing:1.4px}.experiencebar{margin-bottom:12px}.searchbar{background:#101b27;border-color:#2b4255}.searchbar button{background:#a4e1ce;color:#0c3028}.searchlabel input{font-family:ui-monospace,monospace;font-weight:600}.markethead{border-top:1px solid var(--line);padding-top:16px}.workbench-intro{display:flex;justify-content:space-between;align-items:center;gap:20px;margin:20px 0 12px}.workbench-intro h2{font-size:21px;margin-top:7px}.workbench-intro p{margin:8px 0}.learn-link{color:#a1c8e6;font-size:11px;white-space:nowrap}.scenario-cards{display:grid;grid-template-columns:1fr 1fr;gap:14px}.scenario-card{border:1px solid #28413e;background:linear-gradient(130deg,#102622,#101822 60%);border-radius:12px;padding:18px 20px}.scenario-card.bear{border-color:#45303f;background:linear-gradient(130deg,#271b25,#101822 60%)}.scenario-top{display:flex;justify-content:space-between;align-items:center}.scenario-top h3{font-size:22px;color:var(--green)}.bear .scenario-top h3{color:var(--red)}.scenario-top .eyebrow{font-size:9px}.scenario-reason{min-height:34px;font-size:12px;color:#a3b3c3;margin:12px 0}.scenario-prices,.scenario-stats{display:grid;grid-template-columns:repeat(3,1fr);gap:10px}.scenario-prices{border-top:1px solid #ffffff0b;border-bottom:1px solid #ffffff0b;padding:13px 0}.scenario-card small{display:block;font-size:10px;color:#92a5b6;line-height:1.5}.scenario-prices b{display:block;font:600 17px ui-monospace,monospace;margin-top:6px}.scenario-stats{padding:14px 0 2px}.scenario-stats strong{display:block;font-size:21px;margin-bottom:5px}.scenario-card .note{font-size:10px;min-height:28px}.scenario-card .scenario-foot{margin-top:10px;font-size:10px}.scenario-card button[aria-pressed=true]{background:#254346;border-color:#588879}.strategy-compare,.evidence-fold{padding:14px 18px;background:#101822;border:1px solid var(--line);border-radius:10px;margin:12px 0}.strategy-compare small{display:block;color:var(--muted);font-size:10px;margin-top:5px}.evidence-fold .qualitypanel{margin-top:16px;margin-bottom:0;background:transparent}.workspace{margin-top:18px;grid-template-columns:minmax(0,1fr) 300px}.decision .splitlabels b{font-size:20px}.decision{background:#101a25}.position-review{margin-top:18px;padding-bottom:20px}.position-fields{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:12px;padding:0 20px}.position-fields input,.position-fields select{width:100%}#positionResult{padding:14px 20px 0;color:#a7b8c9;font-size:12px;line-height:1.7}.position-summary{display:flex;align-items:baseline;gap:14px}.position-summary strong{font-size:24px}.position-summary span{font-size:11px}.position-metrics{display:grid;grid-template-columns:repeat(4,1fr);gap:14px;margin-top:15px}.position-metrics span{font-size:11px;color:#829aaf}.position-metrics b{display:block;color:#d1e0ec;font-size:15px;margin-top:4px}.position-review small{font-size:10px;color:#7e96ac}.academy{max-width:1240px}.academy-progress{display:flex;align-items:center;gap:20px;background:#111f2c;border:1px solid #2a4256;border-radius:10px;padding:15px 20px;margin-bottom:24px;font-size:12px}.academy-progress progress{height:7px;accent-color:#79d3b7;flex:1;max-width:300px}.academy-progress small{color:var(--muted);margin-left:auto}.lesson-grid{display:grid;grid-template-columns:1fr 1fr;gap:16px;margin-bottom:28px}.lesson{border:1px solid #2a394b;border-radius:12px;background:#101b27;padding:24px}.lesson.completed{border-color:#4e9e82}.lesson-number{color:#96bed9;font:600 10px system-ui;letter-spacing:1px}.lesson h2{font-size:21px;margin:15px 0 12px}.lesson p{font-size:13px;color:#9eafc2;line-height:1.8}.lesson details{padding:15px 0 0}.lesson button{margin:5px 5px 0 0}.lesson .quiz-feedback{color:#a1d9c5}.practice-case{padding-bottom:20px;margin:20px 0}.practice-case>p,.practice-case>button{margin-left:20px;margin-right:20px}.workspace-mobile{display:none}.sourcepanel{opacity:.85}@media(prefers-reduced-motion:reduce){.news-track{animation:none}.news-window{overflow:auto}.news-group[aria-hidden=true]{display:none}}
@media(max-width:1050px){.terminal-header{gap:20px;padding:0 20px}.terminal-nav a{padding:10px}.terminal-brand>span{font-size:10px}.terminal-brand small{font-size:7px}.news-label small{display:none}.workspace{grid-template-columns:minmax(0,1fr) 280px}.scenario-prices b{font-size:15px}}
@media(max-width:760px){.news-tape{padding:0 12px;gap:8px;height:33px}.news-label{font-size:8px;letter-spacing:.2px}.news-tape button{font-size:9px;padding:2px 5px}.news-cadence{display:none}.terminal-header{height:auto;min-height:110px;padding:12px 14px 8px;gap:12px;display:grid;grid-template-columns:1fr auto}.terminal-brand>span{font-size:11px}.terminal-brand small{font-size:7px}.terminal-brand>b{height:30px;width:30px}.terminal-nav{grid-column:1/-1;grid-row:2;height:auto;display:grid;grid-template-columns:repeat(4,1fr);gap:5px;width:100%}.terminal-nav a{font-size:10px;padding:9px 5px;justify-content:center;gap:5px}.terminal-nav svg{width:14px;height:14px}#languageDock{grid-column:2;grid-row:1}.language-picker{font-size:10px;width:114px;max-width:114px}.intro h1{font-size:29px}.intro p{font-size:11px}.intro{margin-bottom:16px}main{padding-top:20px}.workbench-intro{display:block;margin-top:15px}.workbench-intro h2{font-size:18px}.learn-link{display:inline-block;margin-bottom:7px}.scenario-cards{gap:10px;grid-template-columns:1fr}.scenario-card{padding:15px}.scenario-top h3{font-size:21px}.scenario-reason{min-height:0;font-size:11px}.scenario-prices b{font-size:17px}.scenario-stats strong{font-size:19px}.scenario-card .note{min-height:0}.workspace{grid-template-columns:1fr}.decision{order:0}.workspace .chartpanel{order:1}.position-fields{grid-template-columns:1fr 1fr;padding:0 15px;gap:10px}.position-fields label:first-child{grid-column:1/-1}.position-summary{display:block}.position-summary span{display:block;margin-top:5px}.position-metrics{grid-template-columns:1fr 1fr;gap:10px}.academy-progress{flex-wrap:wrap;gap:10px}.academy-progress small{margin-left:0;width:100%}.academy-progress progress{max-width:none}.lesson-grid{grid-template-columns:1fr;gap:12px}.lesson{padding:18px}.lesson h2{font-size:20px}.workspace-mobile{position:fixed;bottom:0;left:0;right:0;z-index:40;display:flex;height:calc(58px + env(safe-area-inset-bottom));background:#0e1924ed;backdrop-filter:blur(16px);border-top:1px solid #304153;justify-content:space-around;align-items:center;padding-bottom:env(safe-area-inset-bottom)}.workspace-mobile a{display:flex;flex-direction:column;gap:4px;align-items:center;height:auto;border:0;font-size:9px;padding:8px}.workspace-mobile a.active{background:none;border:0;color:#a0e3cb}.workspace-mobile svg{width:17px;height:17px}body{padding-bottom:70px}}
/* News remains readable while feeds are loading or unavailable. */
.news-tape:not(.has-news) .news-track{animation:none;font-size:11px;color:#94a3b8}.news-tape #newsOpen{flex-shrink:0;border:1px solid #365773;color:#bde8ff;background:#132e40;padding:4px 10px;border-radius:6px;min-height:28px;font-weight:650}.news-panel{box-sizing:border-box;width:min(760px,calc(100% - 24px));max-height:85dvh;overflow:auto;background:#101b29;color:#dce8f5;border:1px solid #33485f;border-radius:18px;padding:24px;box-shadow:0 30px 100px #0009}.news-panel::backdrop{background:#020812bb;backdrop-filter:blur(5px)}.news-panel header{display:flex;align-items:center;justify-content:space-between;gap:16px}.news-panel h2{font-size:24px;margin:8px 0}.news-panel small,.news-panel p,.news-panel footer{color:#9badc1;font-size:12px;line-height:1.6}.news-panel button,.news-panel select{background:#1b2c40;color:#e5effa;border:1px solid #3b5068;border-radius:8px;padding:10px;cursor:pointer}.news-panel button:disabled{opacity:.5}.news-panel #newsClose{font-size:22px;min-width:44px}.news-sources{display:grid;grid-template-columns:repeat(3,1fr);gap:10px;margin:20px 0}.news-sources>div{padding:14px 10px;border:1px solid #33485f;border-radius:10px;background:#142234}.news-sources a{color:#e5effa;text-decoration:none;font-weight:650;font-size:13px}.news-sources span{display:block;color:#f4bd70;font-size:11px;margin-top:8px}.news-sources [data-ok=true] span{color:#54d5ac}.news-toolbar{display:flex;align-items:center;justify-content:space-between;gap:10px}.news-toolbar label{font-size:12px}.news-list>a{display:grid;grid-template-columns:100px 1fr;gap:6px 12px;padding:17px 0;border-top:1px solid #293b50;color:#e5effa;text-decoration:none}.news-list>a:hover span{color:#70d3ff}.news-list b{font-size:11px;color:#7dcbf1}.news-list span{font-size:14px;line-height:1.5}.news-list time{grid-column:2;font-size:11px;color:#8fa3bb}.news-panel footer{margin-top:20px;border-top:1px solid #33485f;padding-top:16px}@media(max-width:600px){.news-panel{padding:18px 14px}.news-panel h2{font-size:21px}.news-list>a{grid-template-columns:1fr}.news-list time{grid-column:1}.news-sources{gap:6px}.news-sources>div{padding:12px 7px}.news-sources a{font-size:11px}.news-tape #newsOpen{font-size:10px;padding:4px 7px}}
.market-picker{width:min(1200px,calc(100% - 20px))}.market-controls{display:flex;gap:8px;flex-wrap:wrap;margin-top:15px}.market-controls input{flex:1;min-width:160px;background:#0c1623;border:1px solid #3b5068;color:#e5effa;border-radius:8px;padding:12px}.market-table-wrap{overflow:auto;max-height:54dvh}.market-table{width:100%;border-collapse:collapse;white-space:nowrap;font-size:12px}.market-table th{position:sticky;top:0;background:#152438;text-align:right;padding:13px 12px;color:#9badc1;z-index:1}.market-table td{padding:12px;border-bottom:1px solid #26374b;text-align:right;font-variant-numeric:tabular-nums}.market-table th:first-child,.market-table td:first-child{position:sticky;left:0;background:#111e2e;text-align:left;z-index:2}.market-table th:first-child{z-index:3}.market-table small{display:block;font-size:10px;color:#91a4bb;margin-top:6px}.market-table td:first-child button{padding:0;border:0;background:none;font-weight:750}.market-table tbody tr:hover td{background:#1b3048}.market-picker pre{white-space:pre-wrap;overflow-wrap:anywhere;font-size:11px;color:#a9c9dd;max-height:300px;overflow:auto}.market-picker #marketMore{margin:15px auto;display:block}.market-picker #marketMore[hidden]{display:none}.side-detail{border-top:1px solid #2c4055;padding:14px 0;margin-top:10px}.side-detail summary{font-size:13px;font-weight:650;cursor:pointer}.side-checks>div{padding:9px 0;border-bottom:1px solid #223448;font-size:12px}.side-checks small{display:block;color:#90a5bc;margin-top:4px}.side-detail p{font-size:12px;line-height:1.6;color:#afbed0}.side-detail>small{font-size:10px;color:#899eb5;line-height:1.6;display:block;margin:10px 0}.side-evidence{display:grid;grid-template-columns:repeat(3,1fr);gap:8px;font-size:10px;color:#91a4bb}.side-evidence b{display:block;color:#dae7f4;font-size:14px;margin-top:5px}#marketOpen{margin-top:5px;font-size:11px;padding:5px 10px}@media(max-width:600px){.market-controls select{max-width:48%;font-size:11px}.market-controls input{flex-basis:100%}.market-table td,.market-table th{padding:12px 9px}.market-picker{padding:16px 10px}}
/* Market selection: bounded rendering, stable scrolling and immediate row selection. */
body.market-picker-open{overflow:hidden}
.market-picker{max-height:90dvh;overflow:hidden;padding:20px;box-sizing:border-box;contain:layout style}
.market-picker[open]{display:flex;flex-direction:column;animation:market-enter .16s ease-out}
.market-picker header{flex-shrink:0;margin:0;min-height:0}
.market-picker .market-controls{flex-shrink:0}
.market-picker #marketState{flex-shrink:0;min-height:18px;font-size:12px;margin:10px 0;color:#9badc1}
.market-table-wrap{flex:1;min-height:120px;max-height:52dvh;overscroll-behavior:contain;-webkit-overflow-scrolling:touch;overflow-anchor:none;scrollbar-gutter:stable}
.market-table{table-layout:fixed;min-width:1100px}
.market-table th:first-child{width:140px}.market-table th{width:115px}
.market-table tbody tr{cursor:pointer;outline:none}.market-table tbody tr:focus-visible td{background:#243f57;box-shadow:inset 0 2px #70d3ff,inset 0 -2px #70d3ff}
.market-table tbody tr:active td{background:#28425b}
.market-table td:first-child button{min-height:24px;pointer-events:none}
.market-picker #marketMore{flex-shrink:0;margin:8px auto;min-height:36px}
.market-picker #marketRaw{flex-shrink:0;max-height:25dvh;overflow:auto}
.market-picker footer{flex-shrink:0;margin-top:10px;padding-top:10px;font-size:10px;line-height:1.5}
@keyframes market-enter{from{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}
@media(max-width:600px){.market-picker{width:100%;max-width:100%;height:92dvh;max-height:92dvh;margin:auto 0 0;border-radius:18px 18px 0 0;padding:16px 12px calc(12px + env(safe-area-inset-bottom));border-bottom:0}.market-picker .market-controls{display:grid;grid-template-columns:1fr 1fr;gap:8px}.market-picker .market-controls input{grid-column:1/-1;width:100%;min-width:0;box-sizing:border-box}.market-picker .market-controls select{max-width:100%;width:100%;min-width:0}.market-picker #marketRefresh{grid-column:1/-1;min-height:36px}.market-table-wrap{max-height:none}.market-table{min-width:1020px}.market-table th:first-child{width:104px}.market-table th:nth-child(2){width:108px}.market-table th:nth-child(3){width:76px}.market-picker #marketClose{width:44px;height:44px}.market-picker footer{font-size:9px}}
@media(prefers-reduced-motion:reduce){.market-picker[open]{animation:none}}
