:root{--bg: #07101a;--panel: #0e1b29;--panel-2: #142537;--sea: #0c2740;--sea-2: #0a3354;--accent: #36c6e0;--accent-dim: #1d6f86;--text: #e6f1f8;--muted: #84a0b6;--player: #36c6e0;--player-2: #1d7e96;--enemy: #e8635a;--enemy-2: #9a3a36;--slot: rgba(255, 255, 255, .04);--slot-line: rgba(255, 255, 255, .13);--shadow: rgba(0, 0, 0, .5);--gold: #e8c45a}*{box-sizing:border-box}html,body{margin:0;padding:0;background:var(--bg);color:var(--text);font-family:system-ui,-apple-system,Segoe UI,Roboto,sans-serif;-webkit-font-smoothing:antialiased}#app{max-width:1060px;margin:0 auto;padding:14px 14px 48px}header.t-header{display:flex;align-items:baseline;justify-content:space-between;flex-wrap:wrap;gap:8px 16px;margin-bottom:10px}header.t-header h1{margin:0;font-size:clamp(22px,4vw,34px);letter-spacing:.14em;font-weight:800;background:linear-gradient(90deg,var(--accent),#8fe7f6);-webkit-background-clip:text;background-clip:text;color:transparent}.t-sub{color:var(--muted);font-size:13px}.t-toolbar{display:flex;align-items:center;flex-wrap:wrap;gap:8px;margin-bottom:12px}.t-toolbar .spacer{flex:1}button.t-btn{background:var(--panel-2);color:var(--text);border:1px solid var(--slot-line);border-radius:8px;padding:8px 13px;font-size:14px;font-weight:600;cursor:pointer;transition:background .12s,border-color .12s,transform .05s}button.t-btn:hover:not(:disabled){background:#1d3247;border-color:var(--accent-dim)}button.t-btn:active:not(:disabled){transform:translateY(1px)}button.t-btn:disabled{opacity:.4;cursor:default}button.t-btn.primary{background:var(--accent-dim);border-color:var(--accent)}button.t-btn.primary:hover:not(:disabled){background:var(--accent);color:#04140d}.t-stat{background:var(--panel);border:1px solid var(--slot-line);border-radius:8px;padding:6px 12px;font-size:13px;color:var(--muted)}.t-stat b{color:var(--text);font-variant-numeric:tabular-nums}.t-stat.hp b{color:var(--player)}.t-tide{display:flex;align-items:center;gap:14px;background:linear-gradient(90deg,var(--sea),var(--sea-2));border:1px solid var(--accent-dim);border-radius:10px;padding:9px 14px;margin-bottom:12px;flex-wrap:wrap}.t-tide .arrow{font-size:26px;color:var(--accent);font-weight:800;text-shadow:0 0 12px rgba(54,198,224,.6)}.t-tide .label{font-size:14px}.t-tide .label b{color:var(--accent)}.t-tide .next{color:var(--muted);font-size:12.5px}.t-field-wrap{position:relative}.t-home-tag,.t-foe-tag{position:absolute;top:50%;transform:translateY(-50%) rotate(-90deg);font-size:11px;letter-spacing:.2em;color:var(--muted);text-transform:uppercase}.t-home-tag{left:-26px;color:var(--player-2)}.t-foe-tag{right:-22px;color:var(--enemy-2)}.t-field{display:grid;gap:6px;background:radial-gradient(circle at 0% 50%,var(--sea-2),var(--sea) 70%);border:1px solid #0a2236;border-radius:14px;padding:12px;box-shadow:inset 0 1px #ffffff0d,0 8px 30px var(--shadow)}.t-cell{position:relative;aspect-ratio:1 / 1;border-radius:8px;background:var(--slot);border:1px solid var(--slot-line);display:flex;align-items:center;justify-content:center;cursor:default;transition:background .1s,border-color .1s}.t-cell.home{background:#36c6e00f;border-color:#36c6e02e}.t-cell.deploy{border-color:#36c6e040}.t-cell.target-ok{outline:2px solid var(--accent);outline-offset:-2px;cursor:pointer;background:#36c6e024}.t-cell.place-ok{cursor:pointer}.t-cell.place-ok:hover{background:#36c6e029;border-color:var(--accent)}.t-ent{width:86%;height:86%;border-radius:7px;display:flex;flex-direction:column;align-items:center;justify-content:center;color:#04121a;font-weight:700;position:relative;box-shadow:0 2px 6px #0006;user-select:none}.t-ent.player{background:linear-gradient(160deg,var(--player),var(--player-2))}.t-ent.enemy{background:linear-gradient(160deg,var(--enemy),var(--enemy-2));color:#1a0605}.t-ent .e-name{font-size:clamp(8px,1.4vw,11px);line-height:1;text-align:center;padding:0 2px}.t-ent .e-stats{font-size:clamp(9px,1.6vw,12px);margin-top:3px;font-variant-numeric:tabular-nums}.t-ent .e-hpbar{position:absolute;left:6%;right:6%;bottom:5%;height:4px;border-radius:2px;background:#00000059;overflow:hidden}.t-ent .e-hpbar>span{display:block;height:100%;background:#ffffffd9}.t-handbar{display:flex;align-items:center;gap:10px;margin-top:14px;flex-wrap:wrap}.t-energy{background:var(--panel);border:1px solid var(--gold);color:var(--gold);border-radius:8px;padding:8px 12px;font-weight:700;font-size:14px}.t-deckcounts{color:var(--muted);font-size:12.5px}.t-hand{display:flex;gap:8px;flex-wrap:wrap;margin-top:10px}.t-card{width:104px;background:var(--panel-2);border:1px solid var(--slot-line);border-radius:10px;padding:8px;cursor:pointer;position:relative;transition:transform .08s,border-color .1s,background .1s}.t-card:hover:not(.disabled){transform:translateY(-3px);border-color:var(--accent)}.t-card.selected{border-color:var(--accent);box-shadow:0 0 0 2px #36c6e066;transform:translateY(-3px)}.t-card.disabled{opacity:.45;cursor:default}.t-card .c-cost{position:absolute;top:-8px;left:-8px;width:24px;height:24px;border-radius:50%;background:var(--gold);color:#1a1300;font-weight:800;font-size:13px;display:flex;align-items:center;justify-content:center}.t-card .c-name{font-weight:700;font-size:13px;margin-bottom:4px}.t-card .c-kind{font-size:10px;text-transform:uppercase;letter-spacing:.08em;color:var(--muted)}.t-card.unit .c-kind{color:var(--player)}.t-card.spell .c-kind{color:var(--gold)}.t-card .c-desc{font-size:10.5px;color:var(--muted);line-height:1.35;margin-top:5px;min-height:42px}.t-overlay{position:fixed;inset:0;background:#040c14d1;display:none;align-items:center;justify-content:center;z-index:100;padding:16px}.t-overlay.show{display:flex}.t-modal{background:var(--panel);border:1px solid var(--accent-dim);border-radius:14px;padding:22px;max-width:560px;width:100%;box-shadow:0 16px 50px #0009}.t-modal h2{margin:0 0 6px;font-size:22px}.t-modal p{color:var(--muted);margin:0 0 16px;line-height:1.5}.t-modal .t-draftrow{display:flex;gap:10px;flex-wrap:wrap;justify-content:center}.t-modal .t-draftrow .t-card{width:120px;cursor:pointer}.t-modal .t-actions{margin-top:16px;display:flex;gap:10px;justify-content:center;flex-wrap:wrap}.t-modal.win h2{color:var(--accent)}.t-modal.lose h2{color:var(--enemy)}.t-hint{color:var(--muted);font-size:12.5px;margin-top:14px;line-height:1.6}@media(max-width:560px){#app{padding:8px}.t-field{padding:7px;gap:4px}.t-card{width:86px}.t-home-tag,.t-foe-tag{display:none}}
