@font-face{font-family:Archivo Black;src:url(./archivo-black-400-BxoSh3FT.woff2) format("woff2");font-weight:400;font-display:swap}@font-face{font-family:Space Grotesk;src:url(./space-grotesk-DPT1xrvW.woff2) format("woff2");font-weight:300 700;font-display:swap}:root{color-scheme:dark;--bg: #0c0d11;--panel: #14151a;--panel-alt: #16171d;--ink: #f5f3ec;--text: #f5f3ec;--dim: #9aa3b8;--shadow: #000;--accent: #ff2e88;--up: #00e676;--down: #ff4d4d;--trade: #29b6f6;--synergy: #b388ff;--gold: #ffd400;--gap-border: #3a3d47;--gap-a: #101116;--gap-b: #16171d;--chart-bg: #000;--card-ink: #0a0b0f}:root[data-theme=light]{color-scheme:light;--bg: #e9e6dc;--panel: #fff;--panel-alt: #f3f1ea;--ink: #0a0b0f;--text: #0a0b0f;--dim: #6b7488;--shadow: #0a0b0f;--accent: #ff2e88;--up: #00e676;--down: #ff5252;--trade: #2196f3;--synergy: #c084fc;--gold: #ffd400;--gap-border: #9aa3b8;--gap-a: #f3f1ea;--gap-b: #e6e3da;--chart-bg: #fff;--card-ink: #0a0b0f}*{box-sizing:border-box}body{margin:0;background:var(--bg);color:var(--text);font-family:Space Grotesk,system-ui,sans-serif;font-size:14px}#app{max-width:1440px;margin:0 auto;padding:12px;display:grid;grid-template-columns:minmax(0,1fr) 270px;grid-template-areas:"mast mast" "main side";column-gap:14px;align-items:start}.main-col{grid-area:main;min-width:0}.side-col{grid-area:side;display:flex;flex-direction:column;gap:10px;min-width:0}@media(max-width:1000px){#app{grid-template-columns:1fr;grid-template-areas:"mast" "main" "side"}.hud-blocks{flex-direction:row}.hud-blocks .stat{flex:1}}html[data-fontsize=s] #app{zoom:.9}html[data-fontsize=l] #app{zoom:1.1}.masthead{grid-area:mast;display:flex;align-items:flex-end;justify-content:space-between;margin-bottom:12px}.logo{font-family:Archivo Black,sans-serif;font-size:26px;line-height:.9;letter-spacing:-.02em;position:relative;display:inline-block}.logo .logo-accent{color:var(--accent)}.demo-badge{position:absolute;top:-8px;right:-36px;transform:rotate(8deg);background:var(--gold);color:var(--card-ink);border:2px solid var(--ink);box-shadow:2px 2px 0 var(--shadow);font-family:Space Grotesk,sans-serif;font-weight:800;font-size:9px;letter-spacing:.06em;padding:2px 5px}.wk{font-weight:700;font-size:12px;text-transform:uppercase;letter-spacing:.1em;margin-top:4px;color:var(--dim)}.rent-tape{background:var(--accent);color:#fff;border:3px solid var(--ink);padding:8px 14px;font-family:Archivo Black,sans-serif;font-size:14px;transform:rotate(3deg);box-shadow:4px 4px 0 var(--shadow)}.headline{border:2px solid var(--ink);box-shadow:3px 3px 0 var(--shadow);background:var(--gold);color:var(--card-ink);font-weight:800;font-size:11px;letter-spacing:.02em;padding:4px 10px;text-transform:uppercase;max-width:46%}.hud-blocks{display:flex;flex-direction:column;gap:10px}.stat{border:3px solid var(--ink);padding:8px 12px;box-shadow:4px 4px 0 var(--shadow);color:var(--card-ink)}.stat.cash{background:var(--up)}.stat.tokens{background:var(--gold)}.stat.worth{background:var(--panel-alt);color:var(--text);box-shadow:4px 4px 0 var(--up)}.stat.worth .label{color:var(--dim)}.stat .label{display:block;font-weight:800;font-size:11px;text-transform:uppercase;letter-spacing:.08em}.stat .value{display:block;font-family:Archivo Black,sans-serif;font-size:20px;margin-top:2px}.chart-wrap{background:var(--chart-bg);border:3px solid var(--ink);padding:10px;margin-bottom:10px;box-shadow:4px 4px 0 var(--shadow)}.legend{display:flex;gap:12px;margin-bottom:6px;font-weight:800;font-size:12px;text-transform:uppercase}.legend .chip{color:var(--card-ink);padding:2px 6px}.legend .chip.dead{opacity:.45;text-decoration:line-through}#chart{width:100%;display:block}.lanes{display:flex;flex-direction:column;gap:10px}.lane{background:var(--panel);border:3px solid var(--ink);padding:8px;box-shadow:4px 4px 0 var(--shadow)}.lane.dead{opacity:.35;filter:grayscale(1)}.lane-head{display:flex;gap:10px;align-items:center;margin-bottom:6px}.ticker{font-family:Archivo Black,sans-serif;font-size:14px;padding:2px 8px;border:2px solid var(--ink);color:var(--card-ink)}.price{font-weight:800;font-size:14px}.holding{margin-left:auto;background:var(--gold);border:2px solid var(--ink);color:var(--card-ink);font-weight:800;font-size:12px;padding:2px 8px}.slots{display:grid;grid-template-columns:repeat(8,1fr);gap:6px}.slot{min-height:46px;padding:4px 6px;cursor:pointer;border:2px solid var(--ink);color:var(--card-ink)}.slot.gap{border:2px dashed var(--gap-border);background:repeating-linear-gradient(45deg,var(--gap-a),var(--gap-a) 5px,var(--gap-b) 5px,var(--gap-b) 10px)}.slot.filled.event{background:var(--up)}.slot.filled.event.neg{background:var(--down);color:#fff}.slot.filled.trade{background:var(--trade);color:#fff;transform:rotate(-1.5deg)}.slot.filled.synergy{background:var(--synergy)}.slot.filled.event.def-RUG{background:#000;color:var(--down);border-color:var(--down)}.slot.filled.def-MOON{background:var(--gold);color:var(--card-ink)}.slot.filled.def-WHALE_BUY{background:#00c853}.slot.sel{outline:3px solid var(--gold);outline-offset:1px}.slot.fired{opacity:.55}.card-name{font-weight:800;font-size:11.5px;text-transform:uppercase}.card-sub{font-size:10px;font-weight:700;margin-top:2px}.actionbar{display:flex;gap:10px;align-items:center;flex-wrap:wrap;margin:10px 0 0;min-height:40px}button.act{background:var(--panel-alt);color:var(--text);border:3px solid var(--ink);padding:8px 14px;font:inherit;font-weight:800;font-size:13px;box-shadow:3px 3px 0 var(--shadow);cursor:pointer}button.act:disabled{opacity:.4;cursor:default;box-shadow:none}button.act.ghost{background:transparent;box-shadow:none;border-style:dashed}button.act.primary{background:var(--accent);color:#fff;font-family:Archivo Black,sans-serif;font-size:14px;padding:8px 18px;box-shadow:4px 4px 0 var(--shadow)}.hint{color:var(--dim);font-weight:600;font-size:13px}.hint.flash{color:var(--down)}button.menu-fab{position:fixed;right:14px;bottom:14px;z-index:20;background:var(--panel-alt);color:var(--text);border:2px solid var(--ink);padding:5px 10px;font:inherit;font-weight:800;font-size:11px;box-shadow:2px 2px 0 var(--shadow);cursor:pointer;text-transform:uppercase}body:has(.overlay) button.menu-fab{display:none}.menu-screen{grid-column:1 / -1;max-width:620px;margin:48px auto;padding:8px;display:flex;flex-direction:column;gap:18px}.menu-screen h2{font-family:Archivo Black,sans-serif;letter-spacing:-.01em;margin:0}.menu-title{text-align:center;margin-bottom:8px}.menu-logo{font-size:52px;margin:0 auto}.menu-buttons{display:flex;flex-direction:column;gap:12px;width:280px;margin:0 auto}button.menu-btn,.menu-buttons button.act.primary{width:100%;box-sizing:border-box;font-size:15px;padding:12px 18px;text-align:center;line-height:1.3}button.menu-btn.sel{outline:3px solid var(--gold);outline-offset:1px}button.menu-btn.danger{background:var(--down);color:#fff}.option-group{display:flex;flex-direction:column;gap:6px;align-items:center}.option-label{font-weight:800;font-size:11px;text-transform:uppercase;letter-spacing:.08em;color:var(--dim)}.tutorial-section h3{font-family:Archivo Black,sans-serif;font-size:14px;margin:0 0 4px}.tutorial-section p{font-size:13px;line-height:1.4;margin:0 0 8px;color:var(--text)}.log{flex:1;min-height:60px;max-height:460px;overflow-y:auto;font-size:11px;color:var(--dim);border:2px dashed var(--gap-border);padding:6px 8px}.log-line{padding:1px 0}button.log-more{font-size:11px;padding:4px 8px;margin-top:6px;align-self:flex-start}.log-modal{max-height:60vh;overflow-y:auto;text-align:left;font-size:12px;color:var(--dim);min-width:380px;border:2px dashed var(--gap-border);padding:8px 10px;margin:10px 0}.overlay{position:fixed;top:0;right:0;bottom:0;left:0;background:#04060ccc;display:flex;align-items:center;justify-content:center;z-index:10}.overlay-box{background:var(--panel);border:4px solid var(--ink);box-shadow:12px 12px 0 var(--accent);padding:24px;max-width:560px;text-align:center}.overlay-box h2{font-family:Archivo Black,sans-serif;letter-spacing:-.01em}.peek-row{text-align:left;font-size:12px;margin:4px 0}.shop{background:var(--panel);border:3px solid var(--ink);box-shadow:4px 4px 0 var(--shadow);padding:16px}.shop-cash{color:var(--gold);font-weight:800;margin-bottom:8px}.shop-rent{color:var(--dim);margin-bottom:8px;font-size:12px}.shop-section{margin:14px 0}.shop-section h3{margin:0 0 8px;font-weight:800;color:var(--dim);font-size:12px;text-transform:uppercase;letter-spacing:.08em}.shop-item,.deck-card{background:var(--panel-alt);color:var(--text);border:2px solid var(--ink);box-shadow:2px 2px 0 var(--shadow);padding:8px;margin:0 6px 6px 0;font:inherit;cursor:pointer;text-align:left;vertical-align:top;width:160px}.shop-item:disabled{opacity:.4;cursor:default;box-shadow:none}.shop-item.sold{text-decoration:line-through;border-style:dashed}.shop-item.owned{border-color:var(--gold)}.shop-item .price{color:var(--gold);font-weight:800;margin-top:4px}.deck-grid{display:flex;flex-wrap:wrap}.deck-card{width:110px;padding:5px;font-size:11px}.deck-card.trade{border-color:var(--trade)}button.continue{display:block;margin:16px auto 0;background:var(--up);color:var(--card-ink);border:3px solid var(--ink);box-shadow:4px 4px 0 var(--shadow);padding:10px 22px;font:inherit;font-family:Archivo Black,sans-serif;font-size:14px;cursor:pointer}.hand-row{display:flex;gap:8px;align-items:center;margin-top:10px;flex-wrap:wrap;border-top:3px dashed var(--gap-border);padding-top:10px}.hand-label{font-family:Archivo Black,sans-serif;font-size:12px}button.hand-card{background:var(--trade);color:#fff;border:2px solid var(--ink);box-shadow:2px 2px 0 var(--shadow);padding:5px 10px;font:inherit;font-weight:800;font-size:12px;cursor:pointer;text-align:left}button.hand-card .card-sub{color:#eaf6ff}button.hand-card.used{background:transparent;color:var(--gap-border);border:2px dashed var(--gap-border);box-shadow:none;cursor:default;text-decoration:line-through}button.hand-card.used .card-sub{color:var(--gap-border)}button.hand-card.sel{outline:3px solid var(--gold);outline-offset:1px}.slot[draggable=true],button.hand-card[draggable=true]{cursor:grab}.slot.drop-hint{outline:3px dashed var(--gold);outline-offset:-2px}@keyframes cardShake{0%,to{transform:translate(0) rotate(0)}20%{transform:translate(-2px,1px) rotate(-1.2deg)}40%{transform:translate(2px,-1px) rotate(1.2deg)}60%{transform:translate(-2px,-1px) rotate(-.8deg)}80%{transform:translate(2px,1px) rotate(.8deg)}}.slot{position:relative}.slot.firing{animation:cardShake .4s ease}.money-float{position:absolute;left:50%;top:0;transform:translate(-50%);font-weight:800;font-size:13px;pointer-events:none;z-index:5;animation:floatUp .9s ease-out forwards;text-shadow:1px 1px 0 var(--shadow)}.money-float.up{color:var(--up)}.money-float.down{color:var(--down);animation-name:floatDown}@keyframes floatUp{0%{opacity:1;top:-4px}to{opacity:0;top:-32px}}@keyframes floatDown{0%{opacity:1;top:-4px}to{opacity:0;top:24px}}
