:root{--bg:#0b0f1a;--bg-panel:#141b2d;--bg-panel-2:#1d2740;--line:#2c3a5c;--text:#e6ecff;--text-dim:#97a3c4;--accent:#6ee7ff;--accent-2:#c084fc;--danger:#ff5d73;--good:#4ade80;--gold:#f5c451;--arcane:#c084fc;--chrome:#6ee7ff;--neutral:#9aa7c7;--radius:10px;--shadow:0 6px 20px #00000073;--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark}*{box-sizing:border-box}html,body,#root{height:100%}body{background:radial-gradient(1200px 600px at 15% -10%, #6ee7ff17, transparent 60%), radial-gradient(1000px 500px at 100% 0%, #c084fc14, transparent 55%), var(--bg);color:var(--text);-webkit-tap-highlight-color:transparent;margin:0;font-family:Rajdhani,Segoe UI,system-ui,-apple-system,sans-serif;font-size:16px}h1,h2,h3{letter-spacing:.06em;margin:0 0 .4em;font-family:Orbitron,Rajdhani,system-ui,sans-serif}button{font:inherit;color:var(--text);background:var(--bg-panel-2);border:1px solid var(--line);border-radius:var(--radius);cursor:pointer;padding:.55em 1em;transition:transform 80ms,border-color .15s,background .15s}button:hover:not(:disabled){border-color:var(--accent)}button:active:not(:disabled){transform:translateY(1px)}button:disabled{opacity:.4;cursor:not-allowed}button.primary{background:linear-gradient(180deg, var(--accent), #3aa8c8);color:#052027;border-color:#0000;font-weight:700}button.ghost{background:0 0}button.danger{border-color:var(--danger);color:var(--danger)}.app{flex-direction:column;min-height:100%;display:flex}.wrap{padding:16px;width:100%;max-width:1100px;margin:0 auto;padding-block:24px}.menu{text-align:center;flex-direction:column;align-items:center;gap:18px;display:flex}.menu .logo{letter-spacing:.2em;background:linear-gradient(90deg, var(--chrome), var(--arcane));color:#0000;-webkit-background-clip:text;background-clip:text;font-family:Orbitron,sans-serif;font-size:clamp(2.4rem,9vw,4rem);font-weight:800}.menu .tagline{color:var(--text-dim);margin-top:-8px}.menu-actions{flex-direction:column;gap:10px;width:min(320px,90vw);display:flex}.menu-actions button{padding:.9em 1em;font-size:1.05rem}.panel{background:var(--bg-panel);border:1px solid var(--line);border-radius:var(--radius);box-shadow:var(--shadow);padding:16px}.row{flex-wrap:wrap;align-items:center;gap:10px;display:flex}.spread{justify-content:space-between}.stack{flex-direction:column;gap:12px;display:flex}.muted{color:var(--text-dim)}.topbar{border-bottom:1px solid var(--line);-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);z-index:20;background:#141b2d99;align-items:center;gap:12px;padding:10px 16px;display:flex;position:sticky;top:0}.topbar .brand{letter-spacing:.18em;color:var(--text);font-family:Orbitron,sans-serif;font-weight:800}.card{width:var(--card-w,132px);aspect-ratio:63/88;border:1px solid var(--line);background:linear-gradient(180deg, var(--bg-panel-2), var(--bg-panel));-webkit-user-select:none;user-select:none;border-radius:12px;outline:2px solid #0000;flex:none;transition:transform .12s,box-shadow .12s,outline-color .12s;position:relative;overflow:hidden}.card.faction-arcane{border-color:color-mix(in srgb, var(--arcane) 55%, var(--line))}.card.faction-chrome{border-color:color-mix(in srgb, var(--chrome) 55%, var(--line))}.card .art{opacity:.9;background-position:50%;background-size:cover;position:absolute;inset:0}.card .art.placeholder{background:repeating-linear-gradient(135deg, #ffffff08 0 8px, transparent 8px 16px), radial-gradient(circle at 50% 35%, color-mix(in srgb, var(--fac,var(--neutral)) 45%, transparent), transparent 60%), var(--bg-panel)}.card .scrim{background:linear-gradient(#0b0f1a26 40%,#0b0f1aeb 100%);position:absolute;inset:0}.card .cost{color:#04121f;background:radial-gradient(circle at 35% 30%,#7dd3fc,#1d4ed8);border:1px solid #fff6;border-radius:50%;place-items:center;width:26px;height:26px;font-size:.95rem;font-weight:800;display:grid;position:absolute;top:6px;left:6px}.card .lvl{color:var(--gold);letter-spacing:.05em;font-size:.7rem;position:absolute;top:6px;right:6px}.card .name{text-shadow:0 2px 6px #000;font-family:Orbitron,sans-serif;font-size:.72rem;font-weight:700;line-height:1.15;position:absolute;bottom:34px;left:8px;right:8px}.card .type{text-transform:uppercase;letter-spacing:.12em;color:var(--text-dim);font-size:.6rem;position:absolute;bottom:22px;left:8px}.card .stats{justify-content:space-between;font-weight:800;display:flex;position:absolute;bottom:6px;left:6px;right:6px}.card .atk{color:#ffd7a0}.card .hp{color:#ff9db0}.card .kw{color:var(--accent);text-align:right;max-width:60%;font-size:.58rem;position:absolute;bottom:26px;right:6px}.card.small{--card-w:96px}.card.tiny{--card-w:66px}.card.selectable{cursor:pointer}.card.selectable:hover{transform:translateY(-6px);box-shadow:0 12px 26px #00000080}.card.selected{outline-color:var(--accent);transform:translateY(-10px)}.card.targetable{outline-color:var(--good);cursor:crosshair}.card.attacker-ready:after{content:"";box-shadow:inset 0 0 0 2px var(--gold);pointer-events:none;border-radius:12px;position:absolute;inset:0}.card.sick{filter:grayscale(.5)brightness(.8)}.card.defense{transform:rotate(6deg)}.card.dead{opacity:.35}.game{grid-template-rows:auto auto 1fr auto auto;gap:10px;max-width:1100px;min-height:100dvh;margin:0 auto;padding:10px;display:grid}.hero-bar{border:1px solid var(--line);border-radius:var(--radius);background:var(--bg-panel);align-items:center;gap:12px;padding:8px 12px;display:flex}.hero-bar.enemy{border-color:color-mix(in srgb, var(--danger) 40%, var(--line))}.hero-bar.you{border-color:color-mix(in srgb, var(--good) 30%, var(--line))}.hero-portrait{background:var(--bg-panel-2);border:2px solid var(--line);border-radius:50%;place-items:center;width:46px;height:46px;font-weight:800;display:grid}.hp-badge{color:#ff9db0;font-size:1.2rem;font-weight:800}.hero-bar.targetable{outline:2px solid var(--good);cursor:crosshair}.mana-pips{flex-wrap:wrap;gap:3px;display:flex}.pip{background:var(--bg-panel-2);border:1px solid var(--line);border-radius:3px;width:12px;height:12px}.pip.full{background:linear-gradient(#7dd3fc,#2563eb);border-color:#7dd3fc}.pip.temp{background:linear-gradient(180deg, var(--gold), #b8860b);border-color:var(--gold)}.board-row{border:1px dashed var(--line);border-radius:var(--radius);background:#141b2d59;justify-content:center;align-items:center;gap:8px;min-height:150px;padding:6px;display:flex;overflow-x:auto}.slot{aspect-ratio:63/88;border:1px dashed #0000;border-radius:12px;flex:none;place-items:center;width:96px;display:grid}.slot.drop{border-color:var(--good);cursor:pointer;background:#4ade8014}.hand{justify-content:center;gap:8px;min-height:190px;padding:8px 6px 2px;display:flex;overflow-x:auto}.hand .card{--card-w:118px}.controls{justify-content:space-between;align-items:center;gap:10px;display:flex}.turn-flag{letter-spacing:.14em;font-family:Orbitron,sans-serif;font-size:.85rem}.turn-flag.you{color:var(--good)}.turn-flag.enemy{color:var(--danger)}.log{max-height:120px;color:var(--text-dim);border-top:1px solid var(--line);padding-top:6px;font-size:.82rem;overflow-y:auto}.log div{padding:1px 0}.log .kind-damage{color:#ffb3a0}.log .kind-destroy{color:var(--danger)}.log .kind-trap{color:var(--accent-2)}.log .kind-gameover{color:var(--gold);font-weight:700}.overlay{z-index:50;background:#04060cc7;place-items:center;padding:16px;display:grid;position:fixed;inset:0}.overlay .panel{text-align:center;width:100%;max-width:560px}.mulligan-cards{flex-wrap:wrap;justify-content:center;gap:8px;margin:14px 0;display:flex}.toast{background:var(--danger);color:#1a0308;z-index:60;box-shadow:var(--shadow);border-radius:8px;padding:8px 14px;font-weight:700;position:fixed;bottom:16px;left:50%;transform:translate(-50%)}.grid-cards{grid-template-columns:repeat(auto-fill,minmax(112px,1fr));gap:10px;display:grid}.grid-cards .card{--card-w:100%;width:100%}.deck-list{flex-direction:column;gap:4px;display:flex}.deck-line{background:var(--bg-panel-2);border:1px solid var(--line);cursor:pointer;border-radius:8px;justify-content:space-between;gap:8px;padding:6px 10px;display:flex}.deck-line:hover{border-color:var(--accent)}.deck-line .cnt{color:var(--text-dim)}.count-pill{background:var(--bg-panel-2);border:1px solid var(--line);border-radius:999px;padding:1px 6px;font-size:.7rem}.tag{text-transform:uppercase;letter-spacing:.1em;border:1px solid var(--line);border-radius:999px;padding:2px 7px;font-size:.7rem}.tag.arcane{color:var(--arcane);border-color:color-mix(in srgb, var(--arcane) 50%, var(--line))}.tag.chrome{color:var(--chrome);border-color:color-mix(in srgb, var(--chrome) 50%, var(--line))}.tag.neutral{color:var(--neutral)}@media (width<=640px){.game{gap:6px;padding:6px}.hand .card{--card-w:92px}.board-row{justify-content:flex-start;min-height:120px}.slot{width:74px}.hero-bar .mana-pips{display:none}}
