.stage{max-width:880px;margin:16px auto;padding:12px}.turnbar{--tb-msg-lines:2}#message{font-size:16px;line-height:24px;height:48px;min-height:48px;margin:4px 0 10px}
.steps{display:flex;list-style:none;padding:0;gap:8px;margin:8px 0;font-size:16px}.steps li{flex:1;border-bottom:2px solid var(--line);padding:5px 0}.steps .current{border-color:var(--accent);font-weight:700}.steps .done:before{content:'✓ ';color:var(--ok)}
#summary{grid-template-columns:1fr 1fr;margin:8px 0 12px;gap:12px}#summary div{display:grid;grid-template-columns:32px 1fr;gap:0 8px;align-items:center}#summary svg{width:30px;height:30px;grid-row:1/3}#summary dt{font-size:14px}#summary dd{font-size:24px}
.lab-layout{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:16px;align-items:start}.market,.workbench{min-width:0}.cards{gap:6px}.card{padding:6px;box-shadow:0 2px 0 var(--line);border-radius:4px}.card.selected{outline:3px solid var(--accent);outline-offset:-2px}.card h3{display:flex;align-items:center;gap:4px;font-size:22px}.card h3 svg{width:24px;height:24px;fill:var(--accent)}.card .quote,.card .held{font-size:14px}.price-change{display:block;font-size:14px;color:var(--ink-sub)}.lots{display:flex;flex-wrap:wrap;gap:3px;min-height:46px;margin:8px 0}.lot{display:flex;align-items:center;border:1px solid var(--line-strong);background:var(--surface);padding:2px;gap:2px;min-width:44px;font-size:14px;box-shadow:0 1px 0 var(--line)}.lot svg{width:16px;height:20px;fill:var(--accent)}.lot small{display:block;font-size:14px}.empty-lots{font-size:14px;color:var(--ink-sub)}.card .btn{font-size:17px;margin:4px 0 0;min-height:44px}.card .btn[aria-pressed=true],#hold[aria-pressed=true]{outline:3px solid var(--accent);outline-offset:-3px;background:var(--surface);color:var(--ink)}
#hold{width:100%;min-height:44px;margin:10px 0 4px}.preparation{border:1px solid var(--line);padding:8px;margin-top:6px;border-radius:4px}#preview{font-size:16px;line-height:24px;margin:0;min-height:72px;display:flex;align-items:center;gap:8px}#preview svg{width:24px;height:24px;fill:var(--accent);flex:none}.trade-actions{display:grid;grid-template-columns:1.4fr 1fr;gap:6px;margin-top:8px}.trade-actions .btn{min-height:44px;font-size:17px;padding:8px 2px}
.quiz{border:0;margin:0;padding:0}.quiz h2{font-size:18px;margin:0 0 8px}#counts{font-size:16px;line-height:24px;margin:0 0 8px;padding:8px;background:var(--bg);border:1px solid var(--line)}#number{width:100%;font-size:20px}.quiz fieldset{margin:10px 0;padding:6px;min-width:0;border:1px solid var(--line)}.quiz legend{font-size:16px}.quiz .reasons{gap:5px}.quiz .reasons label{min-height:44px;padding:6px;font-size:16px}.quiz .btn{min-height:44px;font-size:17px}.quiz [type=submit],#next{width:100%}.answer-result{border:1px solid var(--line);padding:8px;margin:8px 0;font-size:16px}.answer-result span{display:block;font-size:14px;margin-top:5px}.answer-result p{margin:6px 0}.answer-result small{font-size:14px}.equation{font-size:20px;font-weight:700}
#result{margin:0;padding:10px}#result h2{font-size:20px;margin-top:0}#score{font-size:18px}#result .btn{min-height:44px}#result .ledger{margin:8px 0}.aux-details{margin-top:12px}.aux-details>summary,.ledger>summary{min-height:44px;display:flex;align-items:center;font-size:16px;cursor:pointer}.aux-details #settings-btn{min-height:44px}#setup select{font-size:16px;width:100%;min-height:44px}.field label{font-size:16px}#setup .field{margin:6px}button:focus-visible,input:focus-visible,select:focus-visible{outline:3px solid var(--accent);outline-offset:2px}
[hidden]{display:none!important}.trade-motion{position:fixed;inset:0;pointer-events:none;z-index:80}.moving-unit{position:absolute;width:36px;height:36px;color:var(--accent)}.moving-unit svg{width:100%;height:100%;fill:var(--accent)}
.guide-screen{position:relative;width:100%;max-width:358px}.guide-screen img{display:block;width:100%;height:auto}.guide-annotation{position:absolute;inset:0;width:100%;height:100%;pointer-events:none}.article figcaption{font-size:16px;line-height:1.6;margin-top:10px}
@media(max-width:700px){.stage{padding:8px}.lab-layout{grid-template-columns:minmax(0,1fr);gap:12px}.turnbar{--tb-msg-lines:3}#message{height:72px;min-height:72px}.card h3{font-size:21px}.card .price{font-size:26px}.preparation[hidden]{display:none}.steps{font-size:16px;gap:6px}}
@media(prefers-reduced-motion:reduce){.trade-motion{display:none}}
