:root{--bg: #0b0e13;--panel: #121720;--panel-2: #181f2a;--border: #232c3a;--text: #e3e8ef;--muted: #7c8798;--up: #26a69a;--down: #ef5350;--liq: #ff8a00;--accent: #4c8dff;--radius: 8px;color-scheme:dark}*{box-sizing:border-box}html,body{margin:0;height:100%}body{background:var(--bg);color:var(--text);font:13px/1.4 Inter,system-ui,-apple-system,Segoe UI,Roboto,sans-serif;font-variant-numeric:tabular-nums}button,input{font:inherit;color:inherit}[hidden]{display:none!important}.muted{color:var(--muted);font-weight:400}.up{color:var(--up)}.down{color:var(--down)}.app{display:flex;flex-direction:column;height:100vh}.topbar{display:flex;align-items:center;gap:20px;flex-wrap:wrap;padding:10px 16px;border-bottom:1px solid var(--border);background:var(--panel)}.brand,dialog h1{font-weight:800;font-size:18px;letter-spacing:-.02em}.brand span,dialog h1 span{color:var(--accent)}.kpis{display:flex;gap:22px;flex-wrap:wrap}.kpi label{display:block;font-size:11px;color:var(--muted)}.kpi b{font-size:15px}.clock{min-width:150px}.clock-label{font-size:12px;color:var(--muted);margin-bottom:4px}.clock-label b{color:var(--text);font-size:15px}.progress{height:4px;background:var(--panel-2);border-radius:2px;overflow:hidden}#progress-bar{height:100%;width:0;background:var(--accent);transition:width .2s}.controls{display:flex;gap:8px;align-items:center;margin-left:auto}.layout{flex:1;min-height:0;display:grid;gap:8px;padding:8px;grid-template-columns:minmax(0,1fr) 300px;grid-template-rows:minmax(0,1fr) 240px;grid-template-areas:"chart ticket" "bottom ticket"}.panel{background:var(--panel);border:1px solid var(--border);border-radius:var(--radius);min-width:0;min-height:0}.chart-area{grid-area:chart;display:flex;flex-direction:column}.ticket{grid-area:ticket;padding:14px;overflow-y:auto}.bottom{grid-area:bottom;display:flex;flex-direction:column}.chart-head{display:flex;gap:16px;align-items:center;flex-wrap:wrap;padding:8px 12px;border-bottom:1px solid var(--border)}.asset{font-weight:600}.ohlc{color:var(--muted)}.ohlc b{color:var(--text);font-weight:500;margin-right:6px}.toggles{margin-left:auto;display:flex;gap:12px;color:var(--muted)}.toggles label{display:flex;align-items:center;gap:4px;cursor:pointer}.sw{display:inline-block;width:12px;height:2px}.sw.sma20{background:#f5c542}.sw.sma50{background:#7e8cff}#chart{flex:1;min-height:0}button{cursor:pointer;border:1px solid var(--border);background:var(--panel-2);border-radius:6px;padding:6px 10px}button:hover:not(:disabled){border-color:#3a4658}button:disabled{opacity:.4;cursor:not-allowed}button.ghost{background:transparent}button.small{padding:3px 8px;font-size:12px}button.primary{background:var(--accent);border-color:var(--accent);color:#fff;font-weight:600;padding:9px 18px}button:focus-visible,input:focus-visible{outline:2px solid var(--accent);outline-offset:1px}.ctrl{width:36px;height:32px;padding:0;display:inline-grid;place-items:center}.ctrl.active{background:var(--accent);border-color:var(--accent)}.seg{display:inline-flex;border:1px solid var(--border);border-radius:6px;overflow:hidden}.seg button{border:0;border-radius:0;background:transparent;color:var(--muted)}.seg button+button{border-left:1px solid var(--border)}.seg button.active{background:var(--panel-2);color:var(--text);font-weight:600;box-shadow:inset 0 -2px var(--accent)}.seg.wide{display:flex}.seg.wide button{flex:1;padding:6px 0}.ticket h2{font-size:14px;margin:0 0 4px}.price-now{color:var(--muted);margin-bottom:14px}.price-now b{color:var(--text);font-size:16px}.field{margin-bottom:12px}.field>label,.field.two label{display:block;font-size:12px;color:var(--muted);margin-bottom:4px}.field.two{display:grid;grid-template-columns:1fr 1fr;gap:8px}input[type=number],input[type=text]{width:100%;padding:7px 9px;border-radius:6px;background:var(--bg);border:1px solid var(--border)}.chips{display:flex;gap:4px;margin-top:6px}.chips button{flex:1;padding:3px 0;font-size:12px;background:transparent;color:var(--muted)}.summary{font-size:12px;margin:4px 0 12px}.summary div{display:flex;justify-content:space-between;padding:2px 0;color:var(--muted)}.summary b{color:var(--text);font-weight:500}.actions{display:grid;grid-template-columns:1fr 1fr;gap:8px}.actions button{padding:10px 0;font-weight:700;font-size:14px;border:0;color:#fff;display:flex;flex-direction:column;align-items:center}.actions small{font-weight:400;font-size:11px;opacity:.85}.buy{background:var(--up)}.sell{background:var(--down)}.error{color:var(--down);min-height:1.4em;margin:8px 0 0;font-size:12px}.tabs{display:flex;gap:2px;align-items:center;padding:0 8px;overflow-x:auto;white-space:nowrap;border-bottom:1px solid var(--border)}.tabs button[data-tab]{border:0;background:transparent;border-radius:0;padding:9px 10px;color:var(--muted)}.tabs button[data-tab].active{color:var(--text);box-shadow:inset 0 -2px var(--accent)}.tabs #btn-close-all{margin-left:auto}.tab-body{flex:1;min-height:0;overflow:auto}table{width:100%;border-collapse:collapse}th{text-align:left;font-weight:500;color:var(--muted);font-size:11px;padding:6px 10px;position:sticky;top:0;background:var(--panel)}td{padding:5px 10px;border-top:1px solid var(--border);white-space:nowrap}td input{width:90px!important;padding:3px 6px!important}.row-actions{display:flex;gap:4px}.badge{font-size:11px;font-weight:600;padding:2px 6px;border-radius:4px}.badge.long{background:#26a69a26;color:var(--up)}.badge.short{background:#ef535026;color:var(--down)}.empty{color:var(--muted);text-align:center;margin:24px 0}.journal{list-style:none;margin:0;padding:6px 12px}.journal li{padding:3px 0}.toasts{position:fixed;top:64px;right:16px;display:flex;flex-direction:column;gap:6px;z-index:10;max-width:calc(100vw - 32px)}.toast{background:var(--panel-2);border:1px solid var(--border);border-left:3px solid var(--accent);padding:8px 12px;border-radius:6px;box-shadow:0 6px 20px #0006;transition:opacity .5s}.toast.up{border-left-color:var(--up)}.toast.down{border-left-color:var(--down)}.toast.liq{border-left-color:var(--liq)}.toast.out{opacity:0}dialog{background:var(--panel);color:var(--text);border:1px solid var(--border);border-radius:12px;padding:28px;width:min(560px,calc(100vw - 32px));max-height:calc(100vh - 32px)}dialog::backdrop{background:#05070abf}dialog h1{font-size:26px;margin:0 0 8px}.lead{color:var(--muted);margin:0 0 16px;font-size:14px}.rules{padding-left:18px;margin:0 0 20px}.rules li{margin-bottom:6px}.start-actions{display:flex;gap:8px;flex-wrap:wrap;align-items:center}.seed-form{display:flex;gap:6px}.seed-form input{width:140px}.hint{color:var(--muted);font-size:12px;margin:14px 0 0}dialog h3{font-size:13px;margin:20px 0 8px;color:var(--muted);font-weight:500}.scores{margin:0;padding-left:22px}.scores li{padding:3px 0}.scores b{margin-right:6px}.end-rank{color:var(--accent);font-weight:600;margin:0 0 12px;min-height:1em}.reveal{background:var(--panel-2);border-radius:var(--radius);padding:14px 16px;margin-bottom:16px}.reveal-name{font-size:20px;font-weight:700;margin:2px 0}.stats{display:grid;grid-template-columns:1fr 1fr;gap:0 20px;margin-bottom:20px}.stat{display:flex;justify-content:space-between;padding:5px 0;border-bottom:1px solid var(--border)}.stat span{color:var(--muted)}.fatal{padding:40px;text-align:center;color:var(--muted)}@media (max-width: 900px){.app{height:auto;min-height:100vh}.topbar{padding:10px 16px;gap:12px}.kpis{gap:14px}.controls{margin-left:0;width:100%}.layout{grid-template-columns:minmax(0,1fr);grid-template-rows:60vh auto 280px;grid-template-areas:"chart" "ticket" "bottom"}.stats{grid-template-columns:1fr}.toggles{margin-left:0}}
