.battle{--gap:calc(var(--u) * 6);isolation:isolate;width:100%;height:100vh;height:100svh;color:var(--ivory);font-family:var(--font-body);-webkit-user-select:none;user-select:none;-webkit-touch-callout:none;-webkit-tap-highlight-color:transparent;touch-action:manipulation;--avail-w:calc(100vw - var(--sal) - var(--sar));--avail-h:calc(100svh - var(--sat) - var(--sab));background:#07090d;position:relative;overflow:hidden}.battle[data-layout=landscape]{--u:min(calc(var(--avail-h) / 720), calc(var(--avail-w) / 960));--tile-max:calc(var(--u) * 138);--hand-w:calc(var(--u) * 122);--hand-row:calc(var(--u) * 200);--hand-lift:calc(var(--u) * 24);--cmdr-w:calc(var(--u) * 190)}.battle[data-layout=portrait]{--u:min(calc(var(--avail-w) / 400), calc(var(--avail-h) / 640));--tile-max:calc(var(--u) * 96);--hand-w:calc(var(--u) * 92);--hand-row:calc(var(--u) * 150);--hand-lift:calc(var(--u) * 18);--cmdr-w:calc(var(--u) * 136)}.battle__bg{z-index:-1;background:#07090d;position:absolute;inset:0}.battle__bg img{object-fit:cover;object-position:50% 45%;filter:brightness(.6)saturate(.9)contrast(1.05);width:100%;height:100%}.battle__bg:after{content:"";background:radial-gradient(90% 70%,#0000 30%,#030509c7 100%),linear-gradient(#3c0e1447 0%,#0000 38% 62%,#0e1c3452 100%);position:absolute;inset:0}.stage{padding:var(--sat) var(--sar) var(--sab) var(--sal);display:grid;position:absolute;inset:0}.battle[data-layout=landscape] .stage{grid-template-columns:var(--cmdr-w) minmax(0, 1fr) calc(var(--u) * 150);grid-template-rows:calc(var(--u) * 52) minmax(0, 1fr) calc(var(--u) * 38) minmax(0, 1fr) var(--hand-row);column-gap:calc(var(--u) * 8);padding-inline:calc(var(--sal) + var(--u) * 8) calc(var(--sar) + var(--u) * 8);grid-template-areas:"ocmd ohand oinfo""ocmd oboard end""ocmd mid end""mcmd mboard end""mcmd hand minfo"}.battle[data-layout=portrait] .stage{width:min(100%, calc(var(--u) * 470));padding-inline:calc(var(--sal) + var(--u) * 6) calc(var(--sar) + var(--u) * 6);grid-template-columns:calc(var(--u) * 136) minmax(0, 1fr) calc(var(--u) * 96);grid-template-rows:auto calc(var(--u) * 96) minmax(0, 1fr) calc(var(--u) * 30) minmax(0, 1fr) calc(var(--u) * 96) var(--hand-row);grid-template-areas:"top top top""ocmd ohand oinfo""oboard oboard oboard""mid mid mid""mboard mboard mboard""mcmd end minfo""hand hand hand";margin-inline:auto;inset-inline:0}.a-top{grid-area:top}.a-ocmd{grid-area:ocmd;align-self:start}.a-ohand{grid-area:ohand;min-width:0;position:relative}.a-oinfo{grid-area:oinfo}.a-oboard{grid-area:oboard;min-height:0;container-type:size}.a-mid{grid-area:mid;min-width:0}.a-mboard{grid-area:mboard;min-height:0;container-type:size}.a-mcmd{grid-area:mcmd;align-self:end}.a-end{grid-area:end;place-self:center}.a-minfo{grid-area:minfo;align-self:end}.a-hand{grid-area:hand;min-width:0;position:relative}.battle[data-layout=landscape] .a-top{top:calc(var(--sat) + var(--u) * 6);left:calc(var(--sal) + var(--cmdr-w) + var(--u) * 22);z-index:30;position:absolute}.battle[data-layout=portrait] .a-top{justify-self:end;margin:2px 8px 0 0}.battle[data-layout=portrait] .a-ocmd{align-self:end}.battle[data-locked=true] .tile,.battle[data-locked=true] .hand-card,.battle[data-locked=true] .endturn,.battle[data-locked=true] .sigil{pointer-events:none}.board{--tile-w:min(var(--tile-max), calc((100cqw - var(--u) * 8 - (var(--slots) - 1) * var(--gap)) / var(--slots)), calc((100cqh - var(--u) * 10) / 1.28));justify-content:center;align-items:center;gap:var(--gap);height:100%;display:flex}.battle[data-layout=landscape] .board{gap:calc(var(--u) * 10)}.tile{--ring:transparent;width:var(--tile-w);aspect-ratio:1/1.28;touch-action:none;cursor:default;outline:none;flex:none;transition:width .25s;position:relative;container-type:inline-size}.tile[data-owner=me]{cursor:pointer}.tile__frame{background:linear-gradient(145deg, #ffffff52, transparent 30%, transparent 70%, #ffffff1a), linear-gradient(155deg, var(--frame-a) 0%, var(--frame-b) 52%, var(--frame-a) 100%);box-shadow:0 0 0 .6cqw #000000e6, 0 3cqw 6cqw #000000a6, 0 0 6cqw var(--frame-glow);border-radius:10cqw;padding:3.4cqw;transition:transform .16s,filter .4s;position:absolute;inset:0;overflow:hidden}.tile__art{background:#10141c;border-radius:7cqw;position:absolute;inset:3.4cqw;overflow:hidden}.tile__art img{object-fit:cover;object-position:50% 30%;width:100%;height:100%;display:block}.tile__shade{background:linear-gradient(#05070a2e 0%,#0000 28% 52%,#05070ad9 100%);border-radius:7cqw;position:absolute;inset:3.4cqw}.tile__name{-webkit-line-clamp:2;line-clamp:2;font:600 6.8cqw/1.08 var(--font-display);letter-spacing:0;text-align:center;color:#fbf4de;text-shadow:0 .4cqw .8cqw #000000f2,0 0 2cqw #000000e6;overflow-wrap:anywhere;-webkit-box-orient:vertical;display:-webkit-box;position:absolute;bottom:5.5cqw;left:26cqw;right:26cqw;overflow:hidden}@container (width<=92px){.tile__name{display:none}}.tile__stat{width:25cqw;height:25cqw;font:700 14.5cqw/1 var(--font-display);color:#fff;text-shadow:0 .5cqw .7cqw #000000f2;border:1.7cqw solid #f3d98d;border-radius:50%;place-items:center;display:grid;position:absolute;bottom:2.2cqw;box-shadow:0 1cqw 2cqw #000c,inset 0 0 3cqw #00000080}.tile__stat:before{content:attr(data-v)}.tile__atk{background:radial-gradient(circle at 35% 28%,#f1cf78,#8a5a14 85%);left:2.4cqw}.tile__hp{background:radial-gradient(circle at 35% 28%,#ec6468,#6c1017 85%);border-color:#e9b7b9;right:2.4cqw}.tile__stat.up{color:#9dffac}.tile__stat.down{color:#ffb0b0}.tile__kw{gap:1.6cqw;display:grid;position:absolute;top:4.4cqw;left:4.4cqw}.kw{border:.9cqw solid var(--kw,#c9ced6);width:16.5cqw;height:16.5cqw;color:var(--kw,#c9ced6);background:#05070ac7;border-radius:50%;place-items:center;font-size:10cqw;display:grid;box-shadow:0 .6cqw 1.2cqw #000000b3}.kw--protection{--kw:#d6dbe3}.kw--assault{--kw:#ffd46a}.kw--shield{--kw:#8fd0ff}.kw--poison{--kw:#9be85a}.kw--frenzy{--kw:#ff8a4a}.tile.is-taunt .tile__frame{background:linear-gradient(145deg,#ffffff73,#0000 30% 70%,#ffffff26),linear-gradient(155deg,#e4e8ee 0%,#5b6474 48%,#b3bac6 100%);padding:6.4cqw;box-shadow:0 0 0 .8cqw #12161d,0 3cqw 6cqw #000000b3,0 0 6cqw #becde659}.tile.is-taunt .tile__art,.tile.is-taunt .tile__shade{border-radius:5cqw;inset:6.4cqw}.tile.is-taunt .tile__frame:before{content:"";z-index:2;pointer-events:none;background:radial-gradient(circle at 3.6cqw 3.6cqw,#fff 0 .9cqw,#6d7585 1.2cqw 1.9cqw,#0000 2.1cqw),radial-gradient(circle at calc(100% - 3.6cqw) 3.6cqw,#fff 0 .9cqw,#6d7585 1.2cqw 1.9cqw,#0000 2.1cqw),radial-gradient(circle at 3.6cqw calc(100% - 3.6cqw),#fff 0 .9cqw,#6d7585 1.2cqw 1.9cqw,#0000 2.1cqw),radial-gradient(circle at calc(100% - 3.6cqw) calc(100% - 3.6cqw),#fff 0 .9cqw,#6d7585 1.2cqw 1.9cqw,#0000 2.1cqw);position:absolute;inset:0}.tile__bubble,.tile__ice{opacity:0;pointer-events:none;border-radius:10cqw;transition:opacity .25s;position:absolute;inset:0}.tile__bubble{z-index:3;background:radial-gradient(circle at 30% 22%,#d2eeff47,#50a0ff12 58%,#8cd2ff3d);border:.8cqw solid #a5deffd9;box-shadow:inset 0 0 5cqw #8cd2ff66,0 0 4cqw #6ebeff80}.tile.is-shield .tile__bubble{opacity:1;animation:2.8s ease-in-out infinite bubble}.tile__ice{z-index:3;mix-blend-mode:screen;background:repeating-linear-gradient(115deg,#0000 0 9cqw,#ffffff38 9cqw 9.6cqw),linear-gradient(#aae6ff8c,#50a0ff4d);box-shadow:inset 0 0 8cqw #d2f5fff2}.tile.is-frozen .tile__ice{opacity:1}.tile.is-frozen .tile__frame{filter:saturate(.6)brightness(1.08)}.tile.is-dying .tile__frame{filter:grayscale()brightness(.5)}.flash{z-index:4;border-radius:inherit;opacity:0;pointer-events:none;background:#fff;position:absolute;inset:0}.is-hit>.tile__frame>.flash,.is-hit>.cmdr__portrait>.flash,.cmdr__portrait.is-hit>.flash{animation:.3s ease-out hitflash}.tile__ring{z-index:5;pointer-events:none;opacity:0;box-shadow:0 0 0 1.2cqw var(--ring), 0 0 7cqw 1.6cqw var(--ring);border-radius:11cqw;transition:opacity .15s;position:absolute;inset:-1.2cqw}.tile.is-ready{--ring:#7dff9a}.tile.is-ready .tile__ring{opacity:.85;animation:1.5s ease-in-out infinite ready-pulse}.tile.is-selected{--ring:#ffd46a}.tile.is-selected .tile__ring{opacity:1;animation:none}.tile.is-selected .tile__frame{transform:translateY(-5%)scale(1.05)}.tile.is-target{--ring:#6fd0ff;cursor:pointer}.tile.is-target[data-owner=opp]{--ring:#ff6a5a}.tile.is-target .tile__ring{opacity:1;animation:.9s ease-in-out infinite target-pulse}.tile.is-over{--ring:#fff3b0}.tile.is-over .tile__frame{transform:scale(1.07)}.tile.is-over .tile__ring{opacity:1;animation:none}.tile.is-targeted{--ring:#6fd0ff}.tile.is-targeted .tile__ring,.tile.is-triggered .tile__ring{opacity:1}.tile.is-triggered{--ring:#ffd46a}.tile.is-pop .tile__stat{animation:.45s ease-out statpop}.tile:focus-visible .tile__ring{--ring:#fff;opacity:1}.cmdr{width:var(--cmdr-w);justify-items:center;gap:calc(var(--u) * 6);display:grid;position:relative}.cmdr__portrait{width:calc(var(--cmdr-w) * .86);aspect-ratio:1/1.08;border-radius:calc(var(--u) * 18);border:calc(var(--u) * 3) solid var(--accent-faction,var(--gold));box-shadow:0 calc(var(--u) * 8) calc(var(--u) * 18) #000000b3, 0 0 calc(var(--u) * 20) color-mix(in srgb, var(--accent-faction,var(--gold)) 38%, transparent);cursor:pointer;touch-action:none;background:#10141c;outline:none;position:relative;overflow:hidden}.cmdr__portrait img{object-fit:cover;object-position:50% 12%;width:100%;height:100%;display:block}.cmdr__ring{z-index:5;border-radius:inherit;pointer-events:none;opacity:0;box-shadow:inset 0 0 0 calc(var(--u) * 4) var(--ring,transparent), inset 0 0 calc(var(--u) * 24) var(--ring,transparent);position:absolute;inset:0}.cmdr.is-ready{--ring:#7dff9a}.cmdr.is-ready .cmdr__ring{opacity:.9;animation:1.5s ease-in-out infinite ready-pulse}.cmdr.is-selected{--ring:#ffd46a}.cmdr.is-selected .cmdr__ring{opacity:1;animation:none}.cmdr.is-target{--ring:#6fd0ff}.cmdr--opp.is-target{--ring:#ff6a5a}.cmdr.is-target .cmdr__ring{opacity:1;animation:.9s ease-in-out infinite target-pulse}.cmdr__portrait.is-over,.cmdr.is-target .cmdr__portrait.is-over{transform:scale(1.04)}.cmdr.is-target .cmdr__portrait{outline:calc(var(--u) * 3) solid var(--ring,#fff)}.cmdr__hp,.cmdr__atk{z-index:6;width:calc(var(--u) * 54);height:calc(var(--u) * 54);font:700 calc(var(--u) * 24) / 1 var(--font-display);color:#fff;text-shadow:0 calc(var(--u) * 1.5) calc(var(--u) * 2) #000000f2;border:calc(var(--u) * 3) solid #e9b7b9;box-shadow:0 calc(var(--u) * 4) calc(var(--u) * 8) #000c, inset 0 0 calc(var(--u) * 8) #00000080;background:radial-gradient(circle at 35% 28%,#ec6468,#6c1017 85%);border-radius:50%;place-items:center;display:grid;position:absolute}.cmdr__hp{right:calc(var(--cmdr-w) * 0);top:calc(var(--cmdr-w) * .86 * 1.08 - var(--u) * 40)}.cmdr__atk{left:calc(var(--cmdr-w) * 0);top:calc(var(--cmdr-w) * .86 * 1.08 - var(--u) * 40);background:radial-gradient(circle at 35% 28%,#f1cf78,#8a5a14 85%);border-color:#f3d98d}.cmdr__hp-icon,.cmdr__atk-icon{opacity:.16;width:56%;height:56%;position:absolute;inset:22%}.cmdr__hp b,.cmdr__atk b{position:relative}.cmdr.is-low .cmdr__hp{animation:1s ease-in-out infinite hp-alarm}.cmdr__label{margin-top:calc(var(--u) * 6);text-align:center;gap:1px;line-height:1.1;display:grid}.cmdr__label b{font:600 calc(var(--u) * 15) / 1.1 var(--font-display);letter-spacing:.04em;color:var(--ivory);text-shadow:0 calc(var(--u) * 1.5) calc(var(--u) * 3) #000}.cmdr__label small{font:500 calc(var(--u) * 12) / 1.1 var(--font-body);color:var(--silver);text-shadow:0 1px 3px #000}.sigil{width:calc(var(--cmdr-w) * .94);min-height:calc(var(--u) * 52);grid-template-columns:calc(var(--u) * 34) 1fr;align-items:center;column-gap:calc(var(--u) * 6);padding:calc(var(--u) * 4) calc(var(--u) * 8) calc(var(--u) * 4) calc(var(--u) * 6);border-radius:calc(var(--u) * 26);border:calc(var(--u) * 2) solid #c9ced659;color:var(--silver);text-align:left;cursor:pointer;box-shadow:0 calc(var(--u) * 4) calc(var(--u) * 10) #0009;background:linear-gradient(#28303eeb,#0a0d13f2);grid-template-areas:"icon name""icon pips";display:grid;position:relative}.sigil__icon{width:calc(var(--u) * 34);height:calc(var(--u) * 34);font-size:calc(var(--u) * 20);color:#8a93a3;border:calc(var(--u) * 2) solid #c9ced659;background:radial-gradient(circle at 35% 28%,#2f3748,#0c0f15);border-radius:50%;grid-area:icon;place-items:center;display:grid}.sigil__name{font:600 calc(var(--u) * 11.5) / 1.1 var(--font-display);letter-spacing:.02em;-webkit-line-clamp:2;line-clamp:2;-webkit-box-orient:vertical;grid-area:name;display:-webkit-box;overflow:hidden}.sigil__pips{gap:calc(var(--u) * 5);grid-area:pips;display:flex}.sigil__pips i{width:calc(var(--u) * 11);height:calc(var(--u) * 11);border:calc(var(--u) * 1.6) solid #c9ced673;background:#00000080;border-radius:50%}.sigil__pips i.on{background:radial-gradient(circle at 35% 30%, #fff, var(--arcane) 55%, #0b3d8a);box-shadow:0 0 calc(var(--u) * 8) var(--arcane);border-color:#bfe3ff}.sigil.is-charged .sigil__icon{color:var(--gold-bright);border-color:var(--gold)}.sigil.is-usable{border-color:var(--gold-bright);color:var(--ivory);animation:1.4s ease-in-out infinite sigil-ready}.sigil.is-selected{background:linear-gradient(#6b5320,#2a1f08);border-color:#fff3b0}.sigil.is-pop .sigil__pips{animation:.6s ease-out statpop}.cmdr__relics{left:calc(var(--u) * 8);top:calc(var(--u) * 8);z-index:6;gap:calc(var(--u) * 6);display:grid;position:absolute}.relic{width:calc(var(--u) * 40);height:calc(var(--u) * 40);border-radius:calc(var(--u) * 9);border:calc(var(--u) * 2.4) solid var(--gold);box-shadow:0 calc(var(--u) * 3) calc(var(--u) * 8) #000000b3;position:relative;overflow:hidden}.relic img{object-fit:cover;width:100%;height:100%}.relic em{padding:0 calc(var(--u) * 4);border-radius:calc(var(--u) * 6) 0 0 0;font:700 calc(var(--u) * 11) / 1.3 var(--font-display);color:var(--gold-bright);background:#05070ae6;font-style:normal;position:absolute;bottom:0;right:0}.battle[data-layout=portrait] .cmdr{--cmdr-w:calc(var(--u) * 136);width:var(--cmdr-w);grid-template-columns:calc(var(--u) * 78) 1fr;place-items:center start;column-gap:calc(var(--u) * 6);gap:0 calc(var(--u) * 6)}.battle[data-layout=portrait] .cmdr__portrait{width:calc(var(--u) * 74);aspect-ratio:1;border-width:calc(var(--u) * 2.6);border-radius:50%}.battle[data-layout=portrait] .cmdr__label{display:none}.battle[data-layout=portrait] .cmdr__hp,.battle[data-layout=portrait] .cmdr__atk{width:calc(var(--u) * 34);height:calc(var(--u) * 34);font-size:calc(var(--u) * 16);border-width:calc(var(--u) * 2);top:calc(var(--u) * 48)}.battle[data-layout=portrait] .cmdr__hp{left:calc(var(--u) * 50);right:auto}.battle[data-layout=portrait] .cmdr__atk{left:calc(var(--u) * 0)}.battle[data-layout=portrait] .sigil{width:max(44px, calc(var(--u) * 44));min-height:max(44px, calc(var(--u) * 44));height:max(44px, calc(var(--u) * 44));border-radius:50%;grid-template-columns:1fr;grid-template-areas:"icon";place-items:center;padding:0;display:grid}.battle[data-layout=portrait] .sigil__name{display:none}.battle[data-layout=portrait] .sigil__pips{bottom:calc(var(--u) * -9);gap:calc(var(--u) * 3);position:absolute;left:50%;translate:-50%}.battle[data-layout=portrait] .sigil__pips i{width:calc(var(--u) * 9);height:calc(var(--u) * 9)}.battle[data-layout=portrait] .sigil__icon{width:calc(var(--u) * 32);height:calc(var(--u) * 32)}.battle[data-layout=portrait] .cmdr__relics{left:calc(var(--u) * 84);top:calc(var(--u) * -4);position:absolute}.battle[data-layout=portrait] .relic{width:calc(var(--u) * 28);height:calc(var(--u) * 28)}.mana{gap:calc(var(--u) * 4);justify-items:center;display:grid}.mana__num{align-items:baseline;gap:calc(var(--u) * 4);font:700 calc(var(--u) * 24) / 1 var(--font-display);color:#cfe6ff;text-shadow:0 0 calc(var(--u) * 10) #3aa0ffcc, 0 calc(var(--u) * 2) calc(var(--u) * 3) #000;display:flex}.mana__num span{font-size:calc(var(--u) * 14);color:var(--silver)}.mana__icon{width:calc(var(--u) * 22);height:calc(var(--u) * 22);color:#2f7bff;filter:drop-shadow(0 0 calc(var(--u) * 6) #3c8cffe6);align-self:center}.mana__gems{grid-template-columns:repeat(10, calc(var(--u) * 11));gap:calc(var(--u) * 2);display:grid}.mana__gems i{height:calc(var(--u) * 16);clip-path:polygon(50% 0,100% 35%,50% 100%,0 35%);background:#ffffff14}.mana__gems i.full{filter:drop-shadow(0 0 calc(var(--u) * 3) #3aa0ffe6);background:linear-gradient(160deg,#dff0ff,#3aa0ff 55%,#0b3d8a)}.mana__gems i.spent{background:linear-gradient(160deg,#3a4a66,#18202e)}.mana__gems i.locked{background:#ffffff12}.battle[data-layout=portrait] .mana__gems{grid-template-columns:repeat(5, calc(var(--u) * 12))}.battle[data-layout=portrait] .mana__num{font-size:calc(var(--u) * 20)}.mana--opp{padding-top:calc(var(--u) * 6)}.a-oinfo,.a-minfo{gap:calc(var(--u) * 8);align-content:start;justify-items:center;min-width:0;display:grid}.a-minfo{padding-bottom:calc(var(--u) * 10);align-content:end}.deckinfo{justify-content:center;gap:calc(var(--u) * 10);font:600 calc(var(--u) * 13) / 1 var(--font-display);color:var(--silver);flex-wrap:wrap;display:flex}.deckinfo span{align-items:center;gap:calc(var(--u) * 4);display:inline-flex}.deckinfo .is-empty b,.deckinfo__fatigue{color:#ff8d93}.hand{z-index:1;isolation:isolate;pointer-events:none;position:absolute;inset:0;container-type:inline-size}.hand-slot{--step:min(calc(var(--hand-w) * .8), calc((100cqw - var(--hand-w) - var(--u) * 24) / var(--nm1)));left:50%;bottom:var(--hand-lift);width:var(--hand-w);margin-left:calc(var(--hand-w) / -2);transform-origin:50% 190%;transform:translateX(calc(var(--off) * var(--step))) translateY(calc(var(--drop) * var(--u))) rotate(calc(var(--rot) * 1deg));pointer-events:none;transition:transform .2s;position:absolute}.hand-slot:hover{z-index:70!important}.hand-card{pointer-events:auto;touch-action:none;cursor:pointer;transform-origin:50% 100%;outline:none;transition:transform .18s ease-out,filter .2s;position:relative}.hand-card.is-locked{filter:brightness(.62)saturate(.75)}.hand-card.is-playable .card__body{box-shadow:0 0 0 .8cqw #9dffb0,0 1.4cqw 3.2cqw #000000b3,0 0 5cqw #7dff9aa6}.hand-card.is-selected{transform:translateY(-34%)scale(1.14)}.hand-card.is-selected .card__body{box-shadow:0 0 0 1cqw #ffd46a,0 1.4cqw 3.2cqw #000000b3,0 0 7cqw #ffd46ad9}.hand-card.is-dragging{opacity:.25}@media (hover:hover){.hand-card:hover{filter:none;transform:translateY(-30%)scale(1.14)}.hand-card.is-locked:hover{filter:brightness(.85)}}.hand-card:focus-visible{outline-offset:2px;outline:2px solid #fff}.hand-slot.is-new{animation:.6s cubic-bezier(.2,.8,.2,1) both hand-in;animation-delay:calc(var(--nr,0) * .11s)}.ohand{pointer-events:none;position:absolute;inset:0}.ohand__card{left:50%;top:calc(var(--u) * -20);width:calc(var(--u) * 52);margin-left:calc(var(--u) * -26);transform-origin:50% -60%;transform:translateX(calc(var(--off) * min(calc(var(--u) * 30), calc(var(--u) * 190 / var(--nm1))))) rotate(calc(var(--rot) * 1deg));animation:.4s ease-out both ohand-in;position:absolute}.battle[data-layout=portrait] .ohand__card{top:calc(var(--u) * 6);width:calc(var(--u) * 36);margin-left:calc(var(--u) * -18);transform-origin:50% 160%;transform:translateX(calc(var(--off) * min(calc(var(--u) * 18), calc(var(--u) * 110 / var(--nm1))))) rotate(calc(var(--rot) * -1deg))}.endturn{align-content:center;place-items:center;gap:calc(var(--u) * 2);width:calc(var(--u) * 138);min-height:calc(var(--u) * 86);padding:calc(var(--u) * 8) calc(var(--u) * 10) calc(var(--u) * 14);border-radius:calc(var(--u) * 22);border:calc(var(--u) * 3) solid #3d4658;color:#7e8797;font:700 calc(var(--u) * 16) / 1.1 var(--font-display);letter-spacing:.1em;text-align:center;text-transform:uppercase;cursor:not-allowed;box-shadow:0 calc(var(--u) * 6) calc(var(--u) * 14) #000000b3, inset 0 1px 0 #ffffff1a;background:linear-gradient(#2a3140,#131822);display:grid;position:relative;overflow:hidden}.endturn.is-active{cursor:pointer;color:#1a1206;border-color:var(--bronze);background:linear-gradient(180deg, var(--gold-bright), var(--gold) 55%, var(--gold-dark));text-shadow:0 1px #fff0c880}.endturn.is-active:active{transform:translateY(1px)}.endturn.is-hint{animation:1.1s ease-in-out infinite endturn-hint}.endturn.is-hurry{color:#fff;background:linear-gradient(#ff8d93,#b3222c 55%,#6e1217);animation:.7s ease-in-out infinite endturn-hurry}.endturn__time{font-size:calc(var(--u) * 15);font-variant-numeric:tabular-nums;opacity:.85}.endturn__fuse{left:calc(var(--u) * 10);right:calc(var(--u) * 10);bottom:calc(var(--u) * 6);height:calc(var(--u) * 5);opacity:0;background:#00000059;border-radius:99px;position:absolute;overflow:hidden}.endturn__fuse:after{content:"";width:calc(var(--p,0) * 100%);border-radius:inherit;background:linear-gradient(90deg,#7a4a10,#ff9a3c);transition:width .3s linear;position:absolute;inset:0 auto 0 0}.endturn.is-active .endturn__fuse{opacity:1}.battle[data-layout=portrait] .endturn{width:min(100%, calc(var(--u) * 190));min-height:max(44px, calc(var(--u) * 56));border-radius:calc(var(--u) * 16);gap:calc(var(--u) * 10);font-size:calc(var(--u) * 15);grid-auto-flow:column}.midline{justify-content:center;align-items:center;gap:calc(var(--u) * 12);height:100%;padding-inline:calc(var(--u) * 10);font:600 calc(var(--u) * 11.5) / 1 var(--font-display);letter-spacing:.14em;text-transform:uppercase;color:var(--silver);text-shadow:0 1px 4px #000;white-space:nowrap;display:flex;position:relative;overflow:hidden}.midline:before{content:"";z-index:-1;background:linear-gradient(90deg,#0000,#c9a24b8c,#0000);height:1px;position:absolute;top:50%;left:4%;right:4%}.midline>span{padding:0 calc(var(--u) * 8);line-height:calc(var(--u) * 22);text-overflow:ellipsis;background:#05070ab8;border-radius:99px;overflow:hidden}.midline__gem{display:none}.midline__log{font-family:var(--font-body);letter-spacing:.02em;text-transform:none;color:#d8dde6;min-width:0;font-weight:500}.midline__log:empty{display:none}.midline.is-me .midline__turn{color:var(--gold-bright)}.midline.is-opp .midline__turn{color:#ff8d93}.selbar{z-index:40;align-items:center;gap:calc(var(--u) * 10);padding:calc(var(--u) * 5) calc(var(--u) * 8) calc(var(--u) * 5) calc(var(--u) * 18);border:1px solid var(--gold);max-width:98%;box-shadow:0 calc(var(--u) * 8) calc(var(--u) * 22) #000000b3;font:600 calc(var(--u) * 14) / 1.1 var(--font-display);letter-spacing:.04em;white-space:nowrap;background:#080b11f2;border-radius:99px;animation:.2s ease-out selbar-in;display:flex;position:absolute;top:50%;left:50%;translate:-50% -50%}.selbar>span{text-overflow:ellipsis;min-width:0;overflow:hidden}.selbar .btn{flex:none}.a-mid{z-index:35;position:relative}.a-mid:has(.selbar) .midline{visibility:hidden}.zoom{z-index:60;width:min(calc(var(--u) * 260), 70vw);gap:calc(var(--u) * 8);pointer-events:none;animation:.16s ease-out zoom-in;display:grid;position:absolute;top:50%;translate:0 -50%}.zoom--left{left:calc(var(--sal) + var(--u) * 12)}.zoom--right{right:calc(var(--sar) + var(--u) * 12)}.battle[data-layout=portrait] .zoom{width:min(calc(var(--u) * 250), 66vw);top:44%;left:50%;right:auto;translate:-50% -50%}.zoom__card{filter:drop-shadow(0 calc(var(--u) * 14) calc(var(--u) * 22) #000000d9)}.zoom__help,.zoom__panel{padding:calc(var(--u) * 9) calc(var(--u) * 12);border-radius:calc(var(--u) * 10);font-size:max(12px, calc(var(--u) * 13.5));color:var(--silver);box-shadow:0 calc(var(--u) * 8) calc(var(--u) * 20) #000000b3;background:#070a10f0;border:1px solid #c9a24b80;margin:0;line-height:1.25;list-style:none}.zoom__help li+li{margin-top:calc(var(--u) * 4)}.zoom__help b{color:var(--gold-bright)}.zoom__panel h3{margin:0 0 calc(var(--u) * 4);font-size:calc(var(--u) * 17);color:var(--gold-bright)}.zoom__panel h3 span{color:var(--silver);font-size:.8em;font-weight:500}.zoom__panel p{margin:0 0 calc(var(--u) * 5)}.zoom__charges b{color:var(--ivory)}.zoom__panel--cmdr{gap:calc(var(--u) * 8);display:grid}.zoom__panel--cmdr img{aspect-ratio:1;object-fit:cover;object-position:50% 12%;border-radius:calc(var(--u) * 8);width:100%}.reveal{z-index:70;place-content:center;justify-items:center;gap:calc(var(--u) * 10);pointer-events:none;background:radial-gradient(circle at 50% 46%,#0203068c,#0000 68%);animation:.2s ease-out both fade-in;display:grid;position:absolute;inset:0}.reveal__who{font:600 calc(var(--u) * 15) / 1 var(--font-display);letter-spacing:.22em;text-transform:uppercase;color:var(--gold-bright);text-shadow:0 2px 8px #000;margin:0}.reveal--opp .reveal__who{color:#ff8d93}.reveal__card{width:min(calc(var(--u) * 230), 54vw);filter:drop-shadow(0 calc(var(--u) * 16) calc(var(--u) * 30) #000000e6);animation:.42s cubic-bezier(.2,1.15,.3,1) both reveal-in}.reveal--opp .reveal__card{--from-y:calc(var(--u) * -140)}.reveal--me .reveal__card{--from-y:calc(var(--u) * 180)}.reveal--burn .reveal__card{animation:.42s cubic-bezier(.2,1.15,.3,1) both reveal-in,.9s ease-in .1s forwards burn}.reveal.rarity-mythic .reveal__card{filter:drop-shadow(0 0 calc(var(--u) * 30) #ff283cd9) drop-shadow(0 calc(var(--u) * 16) calc(var(--u) * 30) #000000e6)}.reveal.rarity-legendary .reveal__card{filter:drop-shadow(0 0 calc(var(--u) * 24) #f0be50b3) drop-shadow(0 calc(var(--u) * 16) calc(var(--u) * 30) #000000e6)}.banner{z-index:75;padding:calc(var(--u) * 16) 0;text-align:center;pointer-events:none;background:linear-gradient(90deg,#0000,#030509d1 18% 82%,#0000);animation:1.3s both banner;position:absolute;top:38%;left:0;right:0}.banner__text{font:700 clamp(22px, calc(var(--u) * 40), 64px) / 1.05 var(--font-display);letter-spacing:.12em;text-transform:uppercase;color:var(--ivory);text-shadow:0 0 calc(var(--u) * 24) currentColor, 0 calc(var(--u) * 3) calc(var(--u) * 5) #000}.banner__sub{margin-top:calc(var(--u) * 4);font:600 calc(var(--u) * 14) / 1 var(--font-display);letter-spacing:.3em;text-transform:uppercase;color:var(--silver)}.banner--me .banner__text{color:var(--gold-bright)}.banner--opp .banner__text{color:#ff8d93}.fxcanvas{z-index:80;pointer-events:none;width:100%;height:100%;position:absolute;inset:0}.fxlayer{z-index:85;pointer-events:none;position:absolute;inset:0;overflow:hidden}.float{font:700 max(18px, calc(var(--u) * 26)) / 1 var(--font-display);white-space:nowrap;text-shadow:0 2px 4px #000,0 0 12px;animation:1.25s ease-out forwards float-up;position:absolute;translate:-50% -50%}.float--dmg{color:#ff5a5a;font-size:max(22px, calc(var(--u) * 32))}.float--heal{color:#6dffa6}.float--shield{color:#9fd8ff}.float--poison{color:#a7f26a}.float--info{color:#ffe9a8;font-size:max(12px, calc(var(--u) * 13));letter-spacing:.08em;text-transform:uppercase}.float--buff{color:#ffd46a}.ghost{z-index:90;width:var(--hand-w);pointer-events:none;filter:drop-shadow(0 calc(var(--u) * 14) calc(var(--u) * 18) #000c);position:absolute;translate:-50% -58%;rotate:-5deg;scale:1.08}.ghost.is-over{scale:1.16}.dropglow{z-index:20;left:calc(var(--cmdr-w) * .5);right:calc(var(--u) * 20);top:20%;bottom:calc(var(--hand-row) * .7);border-radius:calc(var(--u) * 20);pointer-events:none;background:radial-gradient(#ffd46a24,#0000 70%);border:2px dashed #ffd46abf;animation:.15s both fade-in;position:absolute}.aim{z-index:90;pointer-events:none;color:#ffd46a;width:100%;height:100%;position:absolute;inset:0}.aim.is-valid{color:#ff6a5a}.aim path{fill:none;stroke:currentColor;stroke-linecap:round}.aim__glow{stroke-width:16px;opacity:.22}.aim__line{stroke-width:6px;stroke-dasharray:2 13;animation:.5s linear infinite dash}.aim__origin{fill:currentColor}.skipbtn{z-index:95;background:#080b11eb;position:absolute}.battle[data-layout=landscape] .skipbtn{right:calc(var(--sar) + var(--u) * 26);top:calc(50% + var(--u) * 60)}.battle[data-layout=portrait] .skipbtn{right:calc(var(--sar) + 10px);top:calc(50% - 22px)}.overlay{z-index:100;padding:calc(var(--sat) + 12px) 12px calc(var(--sab) + 12px);background:radial-gradient(at 50% 40%,#0a0e16db,#030509f2);place-items:center;animation:.3s ease-out both fade-in;display:grid;position:absolute;inset:0;overflow:auto}.mulligan__box,.end__box{text-align:center;justify-items:center;gap:.8rem;width:min(100%,860px);display:grid}.mulligan__box h2,.end__box h2{margin:0}.mulligan__box h2{color:var(--gold-bright);font-size:clamp(1.4rem,5vw,2.2rem)}.mulligan__box p{margin:0}.mulligan__cards{flex-wrap:wrap;justify-content:center;gap:.9rem;width:100%;display:flex}.mulligan__card{cursor:pointer;background:0 0;border:0;width:min(190px,50% - .45rem,71.4svh - 171.36px);padding:0;transition:transform .15s,filter .2s;position:relative}.mulligan__card.is-out{filter:grayscale(.7)brightness(.55);transform:translateY(8px)scale(.96)}.mulligan__tag{border:1px solid var(--gold);color:var(--gold-bright);font:600 .85rem/1.4 var(--font-display);letter-spacing:.1em;text-transform:uppercase;background:#0a0d13;border-radius:99px;padding:.15rem .9rem;position:absolute;bottom:-.3rem;left:50%;translate:-50%}.mulligan__card.is-out .mulligan__tag{color:#ff8d93;border-color:#e0545c}.intro{cursor:pointer;padding:0;overflow:hidden}.intro__scena{object-fit:cover;filter:brightness(.4)saturate(.9);width:100%;height:100%;position:absolute;inset:0}.intro__ombra{background:radial-gradient(#0000 20%,#030509d9 100%);position:absolute;inset:0}.intro__lato{align-content:end;justify-items:center;gap:.4rem;display:grid;position:absolute}.intro__lato img{object-fit:cover;object-position:50% 14%;width:100%;height:100%;-webkit-mask-image:linear-gradient(#000 55%,#0000);mask-image:linear-gradient(#000 55%,#0000)}.intro__nome{text-shadow:0 2px 10px #000;justify-items:center;gap:2px;padding:0 .5rem;display:grid;position:absolute;inset:auto 0 6%}.intro__nome b{font:700 clamp(1.3rem, 4.4vw, 2.4rem) / 1 var(--font-display);letter-spacing:.08em;text-transform:uppercase}.intro__nome span{font:500 clamp(.95rem, 2.4vw, 1.2rem) / 1.1 var(--font-body);color:var(--silver)}.intro__nome em{font:600 .8rem/1.2 var(--font-display);letter-spacing:.16em;text-transform:uppercase;color:var(--gold)}.intro__lato--opp .intro__nome b{color:#ff8d93}.intro__lato--me .intro__nome b{color:var(--gold-bright)}.intro__vs{z-index:3;font:700 clamp(3rem, 12vw, 7rem) / 1 var(--font-display);letter-spacing:.1em;animation:.7s cubic-bezier(.2,1.4,.3,1) .5s both vs-in;position:absolute;top:50%;left:50%;translate:-50% -50%}@media (orientation:landscape){.intro__lato{width:50%;top:0;bottom:0}.intro__lato--opp{animation:.8s cubic-bezier(.2,.9,.3,1) both slide-l;left:0}.intro__lato--me{animation:.8s cubic-bezier(.2,.9,.3,1) both slide-r;right:0}}@media (orientation:portrait){.intro__lato{height:50%;left:0;right:0}.intro__lato--opp{animation:.8s cubic-bezier(.2,.9,.3,1) both slide-t;top:0}.intro__lato--me{animation:.8s cubic-bezier(.2,.9,.3,1) both slide-b;bottom:0}}.end{background:radial-gradient(at 50% 40%,#0a0e16eb,#030509f7)}.end__titolo{letter-spacing:.1em;text-transform:uppercase;padding-left:.1em;font-size:clamp(2.2rem,10.5vw,6.5rem);line-height:1;animation:.9s cubic-bezier(.2,1.2,.3,1) both end-in}.end--win .end__titolo{background:linear-gradient(180deg, #fff2c4, var(--gold-bright) 40%, var(--gold) 65%, var(--bronze));color:#0000;-webkit-text-fill-color:transparent;filter:drop-shadow(0 0 28px #ecc96f8c);-webkit-background-clip:text;background-clip:text}.end--loss .end__titolo{color:#c9565c;text-shadow:0 0 30px #b41e2899}.end--draw .end__titolo{color:var(--silver)}.end__testo{color:var(--ivory);margin:0;font-size:1.25rem}.end__azioni{flex-wrap:wrap;justify-content:center;gap:.7rem;margin-top:.6rem;display:flex}dialog.finestra--menu{width:min(560px,100vw - 1.5rem)}.finestra__sez{letter-spacing:.18em;text-transform:uppercase;color:var(--gold);margin:0 0 .5rem;font-size:.95rem}.registro{border-radius:var(--radius-m);background:#0006;gap:2px;max-height:24svh;margin:0;padding:.5rem .7rem;font-size:.98rem;line-height:1.25;list-style:none;display:grid;overflow:auto}.registro__me{color:var(--gold-bright)}.registro__opp{color:#ff9ea3}.registro__sys{color:var(--silver)}@keyframes fade-in{0%{opacity:0}}@keyframes ready-pulse{0%,to{opacity:.55}50%{opacity:1}}@keyframes target-pulse{0%,to{opacity:.6;scale:1}50%{opacity:1;scale:1.03}}@keyframes bubble{0%,to{filter:brightness()}50%{filter:brightness(1.35)}}@keyframes hitflash{0%{opacity:.85}to{opacity:0}}@keyframes statpop{0%{transform:scale(1)}40%{transform:scale(1.5)}to{transform:scale(1)}}@keyframes hp-alarm{0%,to{box-shadow:0 0 #ff3c3cb3,0 4px 8px #000c}50%{box-shadow:0 0 0 10px #ff3c3c00,0 4px 8px #000c}}@keyframes sigil-ready{0%,to{box-shadow:0 0 #ecc96fa6,0 4px 10px #0009}50%{box-shadow:0 0 0 8px #ecc96f00,0 4px 10px #0009}}@keyframes endturn-hint{0%,to{box-shadow:0 0 #ecc96fcc,0 6px 14px #000000b3}50%{box-shadow:0 0 0 14px #ecc96f00,0 6px 14px #000000b3}}@keyframes endturn-hurry{0%,to{transform:scale(1)}50%{transform:scale(1.05)}}@keyframes hand-in{0%{opacity:0;transform:translate(calc(var(--u) * 260), calc(var(--u) * -260)) rotate(40deg) scale(.4)}}@keyframes ohand-in{0%{opacity:0;translate:calc(var(--u) * 80) calc(var(--u) * 10)}}@keyframes selbar-in{0%{opacity:0;scale:.92}}@keyframes zoom-in{0%{opacity:0;scale:.94}}@keyframes reveal-in{0%{opacity:0;transform:translateY(var(--from-y,0)) scale(.55) rotate(-6deg)}}@keyframes burn{to{opacity:0;filter:sepia()brightness(.3)blur(2px);transform:scale(.9)translateY(-20px)}}@keyframes banner{0%{opacity:0;transform:scaleY(.2)}14%{opacity:1;transform:scaleY(1)}80%{opacity:1}to{opacity:0}}@keyframes float-up{0%{opacity:0;transform:translateY(8px)scale(.6)}14%{opacity:1;transform:translateY(-4px)scale(1.18)}30%{transform:translateY(-14px)scale(1)}to{opacity:0;transform:translateY(-70px)scale(1)}}@keyframes dash{to{stroke-dashoffset:-30px}}@keyframes slide-l{0%{opacity:0;transform:translate(-60%)}}@keyframes slide-r{0%{opacity:0;transform:translate(60%)}}@keyframes slide-t{0%{opacity:0;transform:translateY(-60%)}}@keyframes slide-b{0%{opacity:0;transform:translateY(60%)}}@keyframes vs-in{0%{opacity:0;scale:3}}@keyframes end-in{0%{opacity:0;transform:scale(1.8)}}:root[data-reduce=true] .tile.is-ready .tile__ring,:root[data-reduce=true] .tile.is-target .tile__ring,:root[data-reduce=true] .endturn.is-hint,:root[data-reduce=true] .endturn.is-hurry,:root[data-reduce=true] .sigil.is-usable,:root[data-reduce=true] .tile.is-shield .tile__bubble,:root[data-reduce=true] .cmdr.is-low .cmdr__hp,:root[data-reduce=true] .hero__img{animation:none}
