:root{--stone-900: #14161d;--stone-800: #1c202a;--stone-700: #262b38;--stone-600: #39404f;--ink: #eceef4;--muted: #9aa2b4;--amber: #f0b24a;--amber-deep: #c8862a;--blood: #e2554f;--moss: #67b26f;--glow: 0 0 0 2px rgba(240, 178, 74, .75), 0 0 14px rgba(240, 178, 74, .35);--fast: .14s ease}*{box-sizing:border-box}html,body,#root{height:100%;margin:0}body{background:radial-gradient(circle at 50% 0%,#232838 0%,var(--stone-900) 60%);color:var(--ink);font-family:Segoe UI,system-ui,-apple-system,Helvetica,Arial,sans-serif;-webkit-font-smoothing:antialiased}.table{min-height:100%;display:flex;flex-direction:column;gap:8px;padding:12px 14px 10px;max-width:1080px;margin:0 auto}.topbar{display:flex;align-items:flex-start;justify-content:space-between;gap:12px;flex-wrap:wrap}h1{margin:0;font-size:22px;letter-spacing:.08em;text-transform:uppercase;color:var(--amber)}.tag{margin:2px 0 0;font-size:12px;color:var(--muted)}.turnbox{display:flex;align-items:center;gap:10px;font-size:12px;color:var(--muted)}.turnpill{padding:4px 12px;border-radius:999px;font-weight:600;letter-spacing:.04em;background:var(--stone-700);border:1px solid var(--stone-600)}.turnpill.you{background:#f0b24a29;border-color:var(--amber-deep);color:var(--amber)}.turnpill.them{background:#e2554f24;border-color:#e2554f8c;color:#f09a96}.side{background:linear-gradient(180deg,var(--stone-800),var(--stone-900));border:1px solid var(--stone-700);border-radius:14px;padding:10px;display:flex;flex-direction:column;gap:8px}.enemy-side{border-color:#3a2b2b}.mine-side{border-color:#3b3524}.side-row{display:flex;align-items:center;gap:12px;flex-wrap:wrap}.hero{display:grid;grid-template-columns:auto auto;grid-template-areas:"label hp" "meta hp";align-items:center;gap:0 12px;background:linear-gradient(160deg,#33313c,#22242e);border:1px solid var(--stone-600);border-radius:12px;padding:8px 14px;color:var(--ink);cursor:pointer;transition:box-shadow var(--fast),transform var(--fast)}.hero.player{border-color:var(--amber-deep)}.hero.enemy{border-color:#e2554f80}.hero.target{box-shadow:var(--glow);transform:translateY(-2px)}.hero-label{grid-area:label;font-size:11px;letter-spacing:.12em;text-transform:uppercase;color:var(--muted)}.hero-hp{grid-area:hp;font-size:30px;font-weight:700;color:var(--blood);min-width:42px;text-align:right}.hero-meta{grid-area:meta;font-size:11px;color:var(--muted)}.board{display:flex;gap:8px;min-height:104px}.slot{width:86px;height:100px;border-radius:10px;border:1px dashed #333849;background:#ffffff04}.minion{position:relative;width:86px;height:100px;border-radius:10px;border:1px solid var(--stone-600);background:linear-gradient(180deg,#2b3040,#20242f);color:var(--ink);display:flex;flex-direction:column;align-items:center;justify-content:center;gap:4px;padding:6px;cursor:pointer;transition:transform var(--fast),box-shadow var(--fast),border-color var(--fast)}.minion.mine{border-color:#5a5032}.minion:hover{transform:translateY(-2px)}.minion.waiting{opacity:.62}.minion.selected{box-shadow:var(--glow);border-color:var(--amber)}.minion.target{box-shadow:var(--glow);transform:translateY(-2px)}.m-cost{position:absolute;top:4px;left:5px;font-size:11px;font-weight:700;color:#8fb6ff}.m-name{font-size:10px;line-height:1.15;text-align:center;color:#dfe3ee}.m-attack,.m-health{position:absolute;bottom:4px;font-size:14px;font-weight:700}.m-attack{left:6px;color:var(--amber)}.m-health{right:6px;color:var(--moss)}.m-tag{position:absolute;top:4px;right:5px;font-size:8px;letter-spacing:.06em;text-transform:uppercase;color:#b9c2d6;border:1px solid #4a5162;border-radius:4px;padding:0 3px}.mana-note{font-size:12px;color:var(--muted);display:flex;flex-direction:column;gap:4px}.pips{display:flex;gap:4px}.pip{width:12px;height:12px;border-radius:50%;background:#2a2f3c;border:1px solid #444c5e}.pip.on{background:radial-gradient(circle at 35% 30%,#9ecbff,#3d7dd8);border-color:#6fa7ea}.hand-row{flex:1;display:flex;align-items:flex-end}.hand{display:flex;gap:8px;overflow-x:auto;padding:6px 2px 2px;width:100%}.card{flex:0 0 132px;min-height:104px;border-radius:10px;border:1px solid #4a5170;background:linear-gradient(180deg,#2e3550,#232838);color:var(--ink);text-align:left;padding:8px;display:flex;flex-direction:column;gap:5px;cursor:pointer;transition:transform var(--fast),box-shadow var(--fast)}.card:hover{transform:translateY(-4px)}.card.dim{opacity:.5;cursor:default}.card.selected{box-shadow:var(--glow);border-color:var(--amber);transform:translateY(-4px)}.c-cost{align-self:flex-start;font-size:13px;font-weight:700;color:#9ecbff}.c-name{font-size:12px;font-weight:600}.c-text{font-size:10px;color:var(--muted);line-height:1.3}.c-hint{margin-top:auto;font-size:9px;letter-spacing:.08em;text-transform:uppercase;color:var(--amber)}.empty-hand{color:var(--muted);font-size:12px;align-self:center}.bottombar{display:flex;justify-content:space-between;gap:12px;font-size:11px;color:var(--muted);border-top:1px solid var(--stone-700);padding-top:6px;min-height:26px;flex-wrap:wrap}.hint{color:#cfd5e4}.log{flex:1;text-align:right}button.primary,button.ghost{font:inherit;border-radius:9px;padding:8px 16px;cursor:pointer;transition:background var(--fast),border-color var(--fast),transform var(--fast)}button.primary{background:linear-gradient(180deg,var(--amber),var(--amber-deep));border:1px solid var(--amber-deep);color:#241a06;font-weight:700}button.primary:hover:not(:disabled){transform:translateY(-1px)}button.primary:disabled{opacity:.4;cursor:default}button.primary.big{padding:10px 22px;font-size:15px}button.ghost{background:transparent;border:1px solid var(--stone-600);color:var(--muted)}button.ghost:hover{color:var(--ink);border-color:var(--amber-deep)}.overlay{position:fixed;top:0;right:0;bottom:0;left:0;background:#0a0b10c7;display:flex;align-items:center;justify-content:center;padding:20px}.overlay-box{background:linear-gradient(180deg,#262b38,#1a1d26);border:1px solid var(--amber-deep);border-radius:16px;padding:24px 28px;text-align:center;max-width:340px}.overlay-box h2{margin:0 0 6px;color:var(--amber);font-size:24px}.overlay-box p{margin:0 0 16px;color:var(--muted);font-size:13px}@media (max-width: 620px){.slot,.minion{width:66px;height:84px}.card{flex:0 0 116px;min-height:96px}.hero-hp{font-size:24px}}
