:root{--bg:#070d19;--panel:#0e1729;--panel2:#111c33;--line:#1e293b;--text:#e2e8f0;--dim:#94a3b8;--up:#22c55e;--down:#ef4444;--acc:#38bdf8;color-scheme:dark}*{box-sizing:border-box}html,body{margin:0;background:var(--bg);color:var(--text);font:14px/1.45 Inter,system-ui,-apple-system,Segoe UI,Roboto,sans-serif;-webkit-tap-highlight-color:transparent}a{color:var(--acc)}button{font:inherit;color:var(--text);background:var(--panel2);border:1px solid var(--line);border-radius:8px;padding:7px 12px;cursor:pointer;transition:background .12s,border-color .12s;white-space:nowrap}button:hover:not(:disabled){border-color:#334155;background:#16233f}button:disabled{opacity:.4;cursor:not-allowed}button.primary{background:linear-gradient(180deg,#2563eb,#1d4ed8);border-color:#2563eb;font-weight:600}button.primary:hover:not(:disabled){background:#2563eb}button.ghost{background:transparent}button.warn{border-color:#7c2d12;background:#2a140b;color:#fdba74}button.on{border-color:var(--acc);background:#0c2a44;color:#bae6fd}input,select,textarea{font:inherit;color:var(--text);background:#0a1222;border:1px solid var(--line);border-radius:8px;padding:7px 9px;min-width:0}input:focus,select:focus,textarea:focus{outline:none;border-color:var(--acc)}kbd{font:11px ui-monospace,Menlo,monospace;padding:1px 5px;border:1px solid #334155;border-bottom-width:2px;border-radius:4px;color:var(--dim);background:#0a1222}.pos{color:var(--up)}.neg{color:var(--down)}.top{display:flex;align-items:center;gap:18px;padding:10px 16px;border-bottom:1px solid var(--line);background:#081022;position:sticky;top:0;z-index:20}.short{display:none}.brand{white-space:nowrap;font-weight:800;font-size:17px;color:var(--text);text-decoration:none;letter-spacing:.2px}.logo{color:var(--up);font-size:12px;letter-spacing:-2px;margin-right:4px}.top nav{display:flex;gap:4px;overflow-x:auto}.top nav a{color:var(--dim);text-decoration:none;padding:6px 10px;border-radius:7px;white-space:nowrap}.top nav a.on{color:var(--text);background:var(--panel2)}.center{display:grid;place-items:center;height:70vh;color:var(--dim)}.error{color:#fca5a5;background:#2a0f12;border:1px solid #7f1d1d;padding:8px 12px;border-radius:8px;margin:8px 0}.practice{display:grid;grid-template-columns:minmax(0,1fr) 340px;gap:12px;padding:12px}.chartcol{min-width:0}.toolbar{display:flex;flex-wrap:wrap;gap:8px;align-items:center;margin-bottom:8px}.meta{display:flex;gap:6px;flex-wrap:wrap}.pill{background:var(--panel2);border:1px solid var(--line);border-radius:999px;padding:4px 10px;font-size:12.5px}.pill.dim{color:var(--dim);text-transform:capitalize}.inds{display:flex;gap:4px;flex-wrap:wrap;margin-left:auto}.chip{padding:4px 9px;font-size:12.5px;border-radius:999px}.chartwrap{position:relative;border:1px solid var(--line);border-radius:12px;overflow:hidden;background:#0b1220}.chart.picking{cursor:crosshair}.pickhint,.toast{position:absolute;left:50%;transform:translate(-50%);background:#0c2a44;border:1px solid var(--acc);padding:6px 12px;border-radius:8px;z-index:5;font-size:13px}.pickhint{top:10px}.toast{bottom:40px;background:#1f2937;border-color:#475569}.reopen{position:absolute;top:10px;left:10px;z-index:5}.replay{display:flex;gap:8px;align-items:center;margin-top:8px;flex-wrap:wrap}.speed{display:flex;gap:6px;align-items:center;color:var(--dim)}.progress{position:relative;flex:1;min-width:120px;height:26px;background:var(--panel);border:1px solid var(--line);border-radius:8px;overflow:hidden}.progress div{height:100%;background:linear-gradient(90deg,#1e3a8a,#2563eb)}.progress span{position:absolute;top:0;right:0;bottom:0;left:0;display:grid;place-items:center;font-size:12px;color:var(--dim)}.panel{display:flex;flex-direction:column;gap:10px;min-width:0}.acct{display:grid;grid-template-columns:1fr 1fr;gap:8px;background:var(--panel);border:1px solid var(--line);border-radius:12px;padding:12px}.acct label,.stat label{display:block;font-size:11.5px;color:var(--dim);text-transform:uppercase;letter-spacing:.4px}.acct b{font-size:15px;font-variant-numeric:tabular-nums}.ticket{background:var(--panel);border:1px solid var(--line);border-radius:12px;padding:12px;display:flex;flex-direction:column;gap:8px}.row{display:flex;justify-content:space-between;align-items:center;gap:10px;color:var(--dim)}.row input{width:55%;text-align:right;font-variant-numeric:tabular-nums}.presets{display:grid;grid-template-columns:repeat(4,1fr);gap:6px}.presets button{padding:5px}.notional{font-size:12px;color:var(--dim)}.bigbtns{display:grid;grid-template-columns:1fr 1fr;gap:8px}.bigbtns button{padding:12px;font-weight:700;font-size:15px}.bigbtns.small button{padding:8px;font-size:13.5px;font-weight:500}button.buy{background:#064e2b;border-color:#15803d;color:#bbf7d0}button.buy:hover:not(:disabled){background:#0a6b3b}button.sell{background:#5a1216;border-color:#b91c1c;color:#fecaca}button.sell:hover:not(:disabled){background:#7a1a20}.bigbtns kbd{margin-left:6px}.bracket{border-top:1px solid var(--line);padding-top:8px;display:flex;flex-direction:column;gap:6px}.bh{color:var(--dim);font-size:12.5px}.bh em{color:#64748b;font-style:normal}.brow{display:grid;grid-template-columns:1fr auto auto;gap:6px}.brow button{padding:6px 9px}.atrrow{display:flex;gap:6px;align-items:center;font-size:12px;color:var(--dim);flex-wrap:wrap}.atrrow button{padding:3px 8px;font-size:12px}.check{display:flex;gap:8px;align-items:flex-start;font-size:12.5px;color:var(--dim)}.check input{margin-top:2px}.rr{font-size:12.5px;color:#cbd5e1}.trips{background:var(--panel);border:1px solid var(--line);border-radius:12px;padding:8px;max-height:260px;overflow:auto}.trips.empty{color:var(--dim);font-size:13px;padding:12px}table{width:100%;border-collapse:collapse;font-variant-numeric:tabular-nums}th,td{text-align:left;padding:5px 6px;border-bottom:1px solid var(--line);font-size:12.5px}th{color:var(--dim);font-weight:500}.keys{font-size:12px;color:var(--dim);line-height:2}.setup{background:var(--panel);border:1px solid var(--line);border-radius:12px;padding:12px;margin-bottom:8px}.setup .grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(200px,1fr));gap:10px}.setup label{display:flex;flex-direction:column;gap:4px;color:var(--dim);font-size:12.5px}.setup label.check{flex-direction:row;grid-column:1 / -1}.inline{display:flex;gap:6px}.inline select,.inline input{flex:1}.hint{color:var(--dim);font-size:12.5px}.modal{position:fixed;top:0;right:0;bottom:0;left:0;background:#020617b8;display:grid;place-items:center;z-index:50;padding:12px}.card{width:min(760px,100%);max-height:92vh;overflow:auto;background:var(--panel);border:1px solid #334155;border-radius:16px;padding:18px;box-shadow:0 20px 60px #00000080}.reveal{display:flex;gap:14px;align-items:center;margin-bottom:12px}.sym{font-size:26px;font-weight:800;background:#0c2a44;border:1px solid var(--acc);border-radius:12px;padding:8px 14px}.nm{font-weight:600}.dates{color:var(--dim);font-size:13px}.scores{display:grid;grid-template-columns:repeat(4,1fr);gap:8px}.scores.wide{grid-template-columns:repeat(auto-fill,minmax(150px,1fr))}.stat{background:var(--panel2);border:1px solid var(--line);border-radius:10px;padding:9px 10px}.stat b{font-size:17px;font-variant-numeric:tabular-nums}.journal{display:flex;flex-direction:column;gap:6px;margin:10px 0}.jrow{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1.2fr);gap:8px;align-items:center;font-size:13px;margin:4px 0}textarea{width:100%;min-height:70px;margin-top:8px;resize:vertical}.cardbtns{display:flex;justify-content:flex-end;gap:8px;margin-top:12px}.page{padding:16px;max-width:1200px;margin:0 auto}.page h1{margin:4px 0 12px;font-size:22px}.page h2{font-size:16px;margin:20px 0 8px}.pagehead{display:flex;justify-content:space-between;align-items:center;gap:10px;flex-wrap:wrap}.seg{display:flex;gap:4px}.seg button{text-transform:capitalize}.eqchart{height:300px;border:1px solid var(--line);border-radius:12px;overflow:hidden}.splits{display:grid;grid-template-columns:repeat(auto-fit,minmax(260px,1fr));gap:10px;margin-top:14px}.split{background:var(--panel);border:1px solid var(--line);border-radius:12px;padding:10px}.split td{text-transform:capitalize}.log{overflow-x:auto;background:var(--panel);border:1px solid var(--line);border-radius:12px}.clickable{cursor:pointer}.clickable:hover{background:var(--panel2)}.detail td{background:#0a1222}.empty{color:var(--dim)}.help .cols{display:grid;grid-template-columns:1.1fr 1fr;gap:24px}.help li{margin:5px 0}.help details{background:var(--panel);border:1px solid var(--line);border-radius:10px;padding:8px 12px;margin:6px 0}.help summary{cursor:pointer;font-weight:600}.tick{font-size:12.5px;color:var(--dim);line-height:1.7}.mobilebar{display:none}.mstrip{grid-column:1 / -1;display:flex;justify-content:space-between;font-size:12.5px;color:var(--dim);padding:0 2px 2px;font-variant-numeric:tabular-nums}.spinner{animation:pulse 1.2s infinite}@keyframes pulse{50%{opacity:.4}}@media (max-width: 900px){.practice{grid-template-columns:1fr;padding:8px 8px 110px}.inds{margin-left:0}.keys{display:none}.scores{grid-template-columns:repeat(2,1fr)}.help .cols,.jrow{grid-template-columns:1fr}.full{display:none}.short{display:inline}.top{gap:10px;padding:8px 10px}.brand{font-size:15px}.mobilebar{display:grid;grid-template-columns:1fr 1fr 1fr 1.3fr;gap:6px;position:fixed;left:0;right:0;bottom:0;padding:8px 8px calc(8px + env(safe-area-inset-bottom));background:#081022ee;border-top:1px solid var(--line);z-index:30;-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px)}.mobilebar button{padding:13px 6px;font-weight:700;font-size:15px}.mobilebar .next{background:#1d4ed8;border-color:#2563eb}.replay button{padding:8px 10px}}.brow.three{grid-template-columns:1.1fr 1fr auto auto}.ord{display:flex;align-items:center;gap:6px;font-size:12.5px}.ord button{margin-left:auto;padding:2px 8px}.ord span{text-transform:capitalize}.session{grid-column:1 / -1;font-size:12.5px;color:var(--dim);border-top:1px solid var(--line);padding-top:6px}
