:root{--s:1;--bg:#070514;--glass:#140d2abd;--glass-strong:#180f32eb;--line:#b8a6ff2e;--line-strong:#b8a6ff5c;--text:#f3eeff;--muted:#a99cc9;--gold:#ffd36b;--gold-deep:#ff9a3a;--heart:#ff4d6d;--atk:#ff9a2e;--hp:#f0405f;--ok:#7dffb0;--ember:#ff7a30;--tide:#38d6ff;--grove:#74e86a;--storm:#ffd84a;--umbra:#b46bff;--astral:#ff8fd4;--t1:#9aa4c7;--t2:#74e8a0;--t3:#6fb8ff;--t4:#ffb84a;--radius:calc(16px * var(--s));--font:"Nunito", system-ui, -apple-system, "Segoe UI", sans-serif;--display:"Cinzel", Georgia, serif;--snow-mask:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath d='M12 2v20M3.3 7l17.4 10M3.3 17 20.7 7M9 3.5l3 2.5 3-2.5M9 20.5l3-2.5 3 2.5' stroke='black' stroke-width='2.4' fill='none' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E")}@media (min-width:700px) and (min-height:600px){:root{--s:1.1}}@media (min-width:980px) and (min-height:700px){:root{--s:1.18}}@media (min-width:1500px) and (min-height:820px){:root{--s:1.3}}@media (min-width:1850px) and (min-height:980px){:root{--s:1.45}}*{box-sizing:border-box;-webkit-tap-highlight-color:transparent}html,body{background:var(--bg);height:100%;color:var(--text);font-family:var(--font);overscroll-behavior:none;-webkit-user-select:none;user-select:none;margin:0;overflow:hidden}button{color:inherit;font-family:inherit}#app{position:fixed;inset:0;overflow:hidden}#stage{touch-action:none;position:absolute;inset:0}#stage canvas{width:100%;height:100%;display:block}#loading{z-index:50;background:radial-gradient(at 50% 60%,#2a1745 0%,#070514 70%);place-items:center;transition:opacity .6s;display:grid;position:absolute;inset:0}#loading span{font-family:var(--display);letter-spacing:.3em;font-weight:800;font-size:calc(22px * var(--s));color:var(--gold);text-shadow:0 0 calc(24px * var(--s)) #ffb450b3;animation:1.6s ease-in-out infinite breathe}#loading.gone{opacity:0;pointer-events:none}@keyframes breathe{50%{opacity:.5}}#hud{z-index:10;justify-content:space-between;align-items:center;gap:calc(8px * var(--s));padding:calc(calc(8px * var(--s)) + env(safe-area-inset-top)) calc(12px * var(--s)) calc(8px * var(--s));pointer-events:none;transition:opacity .3s;display:flex;position:absolute;top:0;left:0;right:0}#hud>*{pointer-events:auto}#hud.hidden{opacity:0;pointer-events:none}#hud.hidden>*{pointer-events:none}.pill{align-items:center;gap:calc(6px * var(--s));background:var(--glass);border:1px solid var(--line);padding:calc(6px * var(--s)) calc(12px * var(--s));height:calc(40px * var(--s));-webkit-backdrop-filter:blur(calc(10px * var(--s)));font-weight:900;font-size:calc(16px * var(--s));white-space:nowrap;border-radius:999px;display:inline-flex}.hearts{gap:calc(3px * var(--s));display:inline-flex}.hearts svg{width:calc(20px * var(--s));height:calc(20px * var(--s))}.hearts .lost{opacity:.22;filter:grayscale()}.hearts .pulse{animation:.9s heartloss}@keyframes heartloss{30%{transform:scale(1.6)}to{transform:scale(1)}}.hud-mid{gap:calc(8px * var(--s));align-items:center;display:flex}.round-label{font-family:var(--display);letter-spacing:.08em;font-size:calc(15px * var(--s));color:#cbb8ff}.wins-round{font-family:var(--display);color:#cbb8ff;padding-left:calc(6px * var(--s));margin-left:calc(1px * var(--s));border-left:1px solid var(--line-strong);font-size:.82em;font-weight:800;display:none}.wins svg{width:calc(21px * var(--s));height:calc(21px * var(--s))}.hud-right{gap:calc(6px * var(--s));align-items:center;display:flex}.relics{gap:calc(4px * var(--s));display:flex}.relic-icon{width:calc(36px * var(--s));height:calc(36px * var(--s));border-radius:calc(10px * var(--s));background:var(--glass);border:1px solid var(--line);font-size:calc(19px * var(--s));cursor:pointer;text-shadow:0 0 calc(10px * var(--s)) currentColor;-webkit-backdrop-filter:blur(calc(8px * var(--s)));backdrop-filter:blur(calc(8px * var(--s)));place-items:center;display:grid}.icon-btn{width:calc(40px * var(--s));height:calc(40px * var(--s));border-radius:calc(12px * var(--s));cursor:pointer;background:var(--glass);border:1px solid var(--line);-webkit-backdrop-filter:blur(calc(8px * var(--s)));backdrop-filter:blur(calc(8px * var(--s)));place-items:center;display:grid}.icon-btn svg{width:calc(20px * var(--s));height:calc(20px * var(--s))}.icon-btn:hover{border-color:var(--line-strong)}#panel{z-index:10;width:min(100%, calc(660px * var(--s)));padding:calc(8px * var(--s)) calc(10px * var(--s)) calc(calc(10px * var(--s)) + env(safe-area-inset-bottom));gap:calc(8px * var(--s));flex-direction:column;transition:transform .35s cubic-bezier(.2,.9,.3,1.2),opacity .3s;display:flex;position:absolute;bottom:0;left:50%;transform:translate(-50%)}#panel.hidden{opacity:0;pointer-events:none;transform:translate(-50%,110%)}.synergies{gap:calc(6px * var(--s));min-height:calc(28px * var(--s));flex-wrap:wrap;justify-content:center;display:flex}.syn{align-items:center;gap:calc(5px * var(--s));height:calc(28px * var(--s));padding:0 calc(9px * var(--s)) 0 calc(6px * var(--s));background:var(--glass);border:1px solid var(--line);font-weight:900;font-size:calc(13px * var(--s));cursor:pointer;-webkit-backdrop-filter:blur(calc(8px * var(--s)));backdrop-filter:blur(calc(8px * var(--s)));border-radius:999px;display:inline-flex}.syn svg{width:calc(16px * var(--s));height:calc(16px * var(--s))}.syn .ticks{gap:2px;margin-left:2px;display:inline-flex}.syn .ticks i{width:calc(5px * var(--s));height:calc(10px * var(--s));background:#ffffff24;border-radius:2px}.syn .ticks i.on{background:var(--c);box-shadow:0 0 calc(6px * var(--s)) var(--c)}.syn.active{border-color:color-mix(in srgb, var(--c) 60%, transparent);box-shadow:0 0 calc(14px * var(--s)) calc(-4px * var(--s)) var(--c) inset}.syn-hint{color:var(--muted);font-size:calc(12px * var(--s));opacity:.8;align-self:center;font-weight:700}.shop-wrap{background:var(--glass);border:1px solid var(--line);border-radius:calc(20px * var(--s));padding:calc(8px * var(--s));-webkit-backdrop-filter:blur(calc(12px * var(--s)));box-shadow:0 calc(10px * var(--s)) calc(40px * var(--s)) #00000073;position:relative}.cards{grid-template-columns:repeat(5, minmax(0, calc(104px * var(--s))));justify-content:center;gap:calc(7px * var(--s));display:grid}.card.locked{color:var(--muted);font-size:calc(11px * var(--s));opacity:.7;justify-content:center;font-weight:800}.card{--tc:var(--t1);aspect-ratio:.78;border-radius:calc(14px * var(--s));cursor:grab;background:radial-gradient(ellipse at 50% 38%, color-mix(in srgb, var(--c) 28%, transparent) 0%, transparent 62%), linear-gradient(180deg, #281c4ef2, #120b26f2);border:1.5px solid color-mix(in srgb, var(--tc) 55%, transparent);box-shadow:0 0 0 1px #0006, 0 calc(6px * var(--s)) calc(16px * var(--s)) #00000059;touch-action:none;flex-direction:column;justify-content:flex-end;align-items:center;transition:transform .15s,box-shadow .2s,opacity .2s,border-color .2s;display:flex;position:relative;overflow:hidden}.card.t2{--tc:var(--t2)}.card.t3{--tc:var(--t3)}.card.t4{--tc:var(--t4)}.card:hover{transform:translateY(calc(-3px * var(--s)))}.card.selected{transform:translateY(calc(-6px * var(--s)));border-color:var(--gold);box-shadow:0 0 0 2px #ffd36b80, 0 0 calc(26px * var(--s)) #ffbe5a73}.card.poor{opacity:.55}.card.dragging{opacity:.3}.card.empty{box-shadow:none;cursor:default;background:#ffffff06;border:1.5px dashed #b8a6ff24}.card.empty:hover{transform:none}.card img{top:calc(4px * var(--s));height:calc(100% - calc(40px * var(--s)));aspect-ratio:1;object-fit:contain;pointer-events:none;max-width:96%;filter:drop-shadow(0 calc(4px * var(--s)) calc(6px * var(--s)) #0006);position:absolute;left:50%;transform:translate(-50%)}.card .tierbar{height:calc(3px * var(--s));background:var(--tc);opacity:.8;position:absolute;top:0;left:0;right:0}.card .cost{top:calc(5px * var(--s));left:calc(5px * var(--s));width:calc(20px * var(--s));height:calc(20px * var(--s));background:radial-gradient(circle at 35% 30%, #fff1b0, var(--gold) 45%, #c47a12);color:#3a2200;font-size:calc(11px * var(--s));box-shadow:0 1px calc(3px * var(--s)) #00000080;z-index:1;border-radius:50%;place-items:center;font-weight:900;display:grid;position:absolute}.card .tribe{z-index:1;top:calc(5px * var(--s));right:calc(5px * var(--s));width:calc(18px * var(--s));height:calc(18px * var(--s));color:var(--c);filter:drop-shadow(0 0 calc(4px * var(--s)) var(--c));position:absolute}.card .range{z-index:1;top:calc(28px * var(--s));left:calc(5px * var(--s));width:calc(20px * var(--s));height:calc(20px * var(--s));background:#0b0716d9;border:1px solid;border-radius:50%;place-items:center;display:grid;position:absolute}.card .range svg{width:calc(15px * var(--s));height:calc(15px * var(--s))}.r1{color:#ffb36b}.r2{color:#9fe4ff}.r3{color:#d8b8ff}.range-tag{align-items:center;gap:calc(2px * var(--s));display:inline-flex}.range-tag svg{width:calc(13px * var(--s));height:calc(13px * var(--s))}.card .name{font-size:clamp(calc(9px * var(--s)), 2.4vw, calc(11.5px * var(--s)));text-align:center;padding:0 calc(3px * var(--s));margin-bottom:calc(3px * var(--s));text-shadow:0 1px 2px #000;font-weight:800;line-height:1.1;position:relative}.card .stats{gap:calc(4px * var(--s));margin-bottom:calc(6px * var(--s));display:flex;position:relative}.stat{min-width:calc(22px * var(--s));height:calc(18px * var(--s));border-radius:calc(9px * var(--s));padding:0 calc(5px * var(--s));font-size:calc(11px * var(--s));text-shadow:0 1px 1px #0009;place-items:center;font-weight:900;display:inline-grid;box-shadow:0 1px 2px #00000080}.stat.atk{background:var(--atk)}.stat.hp{background:var(--hp)}.card .freeze{bottom:30%;right:calc(3px * var(--s));width:calc(24px * var(--s));height:calc(24px * var(--s));border-radius:calc(8px * var(--s));cursor:pointer;opacity:0;background:#0a061899;border:none;place-items:center;padding:0;transition:opacity .15s;display:grid;position:absolute}.card .freeze svg{width:calc(15px * var(--s));height:calc(15px * var(--s))}.card:hover .freeze,.card.selected .freeze,.card.frozen .freeze{opacity:1}.card.frozen{box-shadow:0 0 0 1px #9fe8ff99, 0 0 calc(18px * var(--s)) #78dcff59;border-color:#9fe8ff}.card.frozen:after{content:"";pointer-events:none;background:linear-gradient(160deg,#b4f0ff47,#78c8ff0f 45%,#c8f5ff38);position:absolute;inset:0}.card.flip{animation:.35s both flip}@keyframes flip{0%{opacity:0;transform:rotateY(90deg)scale(.9)}to{opacity:1;transform:none}}.sell-zone{border-radius:calc(20px * var(--s));font-weight:900;font-size:calc(18px * var(--s));color:#ffd3dc;letter-spacing:.04em;background:#3c121ed1;border:2px dashed #ff788c99;place-items:center;display:none;position:absolute;inset:0}.selling .sell-zone{display:grid}.selling .sell-zone.hot{background:#6e182ce6;border-color:#ff8aa0}.actions{gap:calc(8px * var(--s));align-items:stretch;display:flex}.btn{height:calc(50px * var(--s));border-radius:calc(15px * var(--s));border:1px solid var(--line-strong);cursor:pointer;background:var(--glass-strong);font-weight:900;font-size:calc(15px * var(--s));letter-spacing:.02em;justify-content:center;align-items:center;gap:calc(8px * var(--s));padding:0 calc(16px * var(--s));-webkit-backdrop-filter:blur(calc(10px * var(--s)));backdrop-filter:blur(calc(10px * var(--s)));transition:transform .1s,filter .2s,opacity .2s;display:inline-flex}.btn:active{transform:scale(.96)}.btn:disabled{opacity:.45;cursor:not-allowed}.btn svg{width:calc(19px * var(--s));height:calc(19px * var(--s))}.btn .coin{width:calc(20px * var(--s));height:calc(20px * var(--s));font-size:calc(11px * var(--s));color:#3a2200;background:radial-gradient(circle at 35% 30%, #fff1b0, var(--gold) 45%, #c47a12);border-radius:50%;place-items:center;display:inline-grid}.btn.reroll{flex:none}.gold-pill{justify-content:center;align-items:center;gap:calc(8px * var(--s));height:calc(50px * var(--s));border-radius:calc(15px * var(--s));background:var(--glass);border:1px solid var(--line);font-weight:900;font-size:calc(22px * var(--s));color:var(--gold);text-shadow:0 0 calc(14px * var(--s)) #ffbe5080;-webkit-backdrop-filter:blur(calc(10px * var(--s)));backdrop-filter:blur(calc(10px * var(--s)));flex:1;display:flex}.gold-pill .coin-lg{width:calc(24px * var(--s));height:calc(24px * var(--s));background:radial-gradient(circle at 35% 30%, #fff1b0, var(--gold) 45%, #c47a12);box-shadow:0 0 calc(12px * var(--s)) #ffbe5099;border-radius:50%}.gold-pill small{color:var(--muted);font-size:calc(12px * var(--s));text-shadow:none;font-weight:800}.gold-pill.bump{animation:.3s bump}@keyframes bump{40%{transform:scale(1.08)}}.btn.fight{min-width:calc(128px * var(--s));color:#2a1400;font-size:calc(17px * var(--s));letter-spacing:.08em;font-family:var(--display);box-shadow:0 0 0 1px #ffdc8c99 inset, 0 calc(6px * var(--s)) calc(24px * var(--s)) #ff8c2873;background:linear-gradient(#ffe08a,#ffb341 55%,#ff8a2a);border:none;flex:none;font-weight:800;animation:2.4s ease-in-out infinite glowpulse}@keyframes glowpulse{50%{box-shadow:0 0 0 1px #ffdc8c99 inset, 0 calc(6px * var(--s)) calc(34px * var(--s)) #ffa03cbf}}.battle-bar{gap:calc(8px * var(--s));justify-content:center;display:flex}.seg{background:var(--glass-strong);border:1px solid var(--line-strong);border-radius:calc(15px * var(--s));height:calc(46px * var(--s));display:inline-flex;overflow:hidden}.seg button{padding:0 calc(16px * var(--s));cursor:pointer;font-weight:900;font-size:calc(15px * var(--s));background:0 0;border:none}.seg button.on{color:var(--gold);background:#ffd36b2e}.side{display:none}@media (min-width:980px) and (min-height:560px){.side{z-index:9;top:calc(64px * var(--s) + env(safe-area-inset-top));width:calc(206px * var(--s));gap:calc(6px * var(--s));max-height:calc(100% - calc(64px * var(--s)) - calc(24px * var(--s)));scrollbar-width:none;flex-direction:column;transition:opacity .3s;display:flex;position:absolute;overflow-y:auto}.side::-webkit-scrollbar{display:none}.side.hidden{opacity:0;pointer-events:none}#traits{left:calc(12px * var(--s));width:calc(226px * var(--s))}#relics{right:calc(12px * var(--s));width:calc(236px * var(--s))}#panel .synergies,#hud .relics{display:none}}.side-title{font-family:var(--display);letter-spacing:.18em;text-transform:uppercase;font-weight:800;font-size:calc(11px * var(--s));color:var(--muted);padding:0 calc(4px * var(--s));text-shadow:0 0 calc(6px * var(--s)) #070514, 0 0 calc(14px * var(--s)) #070514, 0 1px 2px #000;z-index:1;position:relative}.side-empty{color:var(--muted);font-size:calc(12px * var(--s));padding:calc(8px * var(--s)) calc(10px * var(--s));border-radius:calc(12px * var(--s));border:1px dashed var(--line);font-weight:700;line-height:1.35}.trait{--rim:linear-gradient(160deg, #4a3f70, #241b40);gap:calc(9px * var(--s));cursor:pointer;padding:calc(8px * var(--s)) calc(10px * var(--s)) calc(8px * var(--s)) calc(8px * var(--s));border-radius:calc(14px * var(--s));background:linear-gradient(105deg, color-mix(in srgb, var(--c) 9%, transparent), transparent 55%), var(--glass);border:1px solid var(--line);-webkit-backdrop-filter:blur(calc(8px * var(--s)));backdrop-filter:blur(calc(8px * var(--s)));align-items:flex-start;transition:border-color .2s,box-shadow .2s,transform .2s;display:flex;position:relative;overflow:hidden}.trait:hover{border-color:var(--line-strong);transform:translateX(calc(2px * var(--s)))}.trait.tier1{--rim:linear-gradient(160deg, #ffd0a6, #c07a45 45%, #6e3a1c)}.trait.tier2{--rim:linear-gradient(160deg, #fff, #b9c4dd 45%, #5f6b8a)}.trait.tier3{--rim:linear-gradient(160deg, #fff6c4, #ffcf4a 40%, #b06a10)}.trait.tier1,.trait.tier2,.trait.tier3{border-color:color-mix(in srgb, var(--c) 42%, transparent);background:linear-gradient(105deg, color-mix(in srgb, var(--c) 20%, transparent), transparent 60%), var(--glass);box-shadow:0 0 calc(18px * var(--s)) calc(-8px * var(--s)) var(--c) inset, 0 calc(4px * var(--s)) calc(14px * var(--s)) #00000040}.trait.tier3:after{content:"";pointer-events:none;border-radius:inherit;background:linear-gradient(110deg,#0000 35%,#fff0be24 50%,#0000 65%) 200% 0/250% 100% no-repeat;animation:5s ease-in-out infinite trait-shine;position:absolute;inset:0}@keyframes trait-shine{0%,55%{background-position:200% 0}to{background-position:-120% 0}}.trait .tmedal{flex:none;transition:filter .3s}.trait.tier1 .tmedal,.trait.tier2 .tmedal,.trait.tier3 .tmedal{filter:drop-shadow(0 0 calc(7px * var(--s)) color-mix(in srgb, var(--c) 75%, transparent))}.trait .trim,.trait .tcore{clip-path:polygon(50% 0,100% 25%,100% 75%,50% 100%,0 75%,0 25%)}.trait .trim{width:calc(40px * var(--s));height:calc(45px * var(--s));padding:calc(2.5px * var(--s));background:var(--rim)}.trait .tcore{background:radial-gradient(circle at 50% 38%, color-mix(in srgb, var(--c) 42%, #1b1236) 0%, #150d2c 62%, #0d0820 100%);place-items:center;width:100%;height:100%;display:grid}.trait .tcore svg{width:calc(24px * var(--s));height:calc(24px * var(--s));filter:drop-shadow(0 0 calc(4px * var(--s)) color-mix(in srgb, var(--c) 60%, transparent))}.trait.tier0 .tcore svg{filter:saturate(.55)brightness(.85)}.trait.tier0{opacity:.86}.trait .tbody{gap:calc(3px * var(--s));flex-direction:column;flex:1;min-width:0;display:flex}.trait .tname{justify-content:space-between;align-items:baseline;gap:calc(6px * var(--s));display:flex}.trait .tname span:first-child{font-family:var(--display);letter-spacing:.05em;font-weight:800;font-size:calc(14px * var(--s));color:var(--c);text-shadow:0 0 calc(10px * var(--s)) color-mix(in srgb, var(--c) 45%, transparent)}.trait.tier0 .tname span:first-child{color:#cfc4ea;text-shadow:none}.trait .tcount{font-weight:900;font-size:calc(13px * var(--s))}.trait .tcount small{color:var(--muted);margin-left:1px;font-size:.85em;font-weight:800}.trait .tpips{align-items:center;gap:calc(5px * var(--s));display:flex}.trait .tseg{align-items:center;gap:calc(2px * var(--s));display:inline-flex}.trait .tseg i{width:calc(11px * var(--s));height:calc(6px * var(--s));background:#ffffff1f;border-radius:3px;box-shadow:inset 0 0 0 1px #ffffff0f}.trait .tseg i.on{background:var(--c);box-shadow:0 0 calc(6px * var(--s)) color-mix(in srgb, var(--c) 70%, transparent)}.trait .tseg i.prism{box-shadow:0 0 calc(6px * var(--s)) #ff9ae699;background:repeating-linear-gradient(135deg,#ff9ae6 0 2px,#ff9ae659 2px 4px)}.trait .tseg em{font-style:normal;font-weight:900;font-size:calc(10.5px * var(--s));color:var(--muted);margin-left:calc(2px * var(--s))}.trait .tseg.hit em{color:var(--gold);text-shadow:0 0 calc(6px * var(--s)) #ffd36b99}.trait .teffect{font-size:calc(11.5px * var(--s));color:#d9cff5;font-weight:700;line-height:1.3}.trait .teffect b{color:var(--gold);font-weight:900}.trait.tier0 .teffect{color:var(--muted)}.trait .tfaces{gap:calc(3px * var(--s));margin-top:calc(1px * var(--s));display:flex}.trait .tfaces img{width:calc(23px * var(--s));height:calc(23px * var(--s));filter:grayscale()brightness(.7);opacity:.4;background:#00000040;border-radius:50%}.trait .tfaces img.have{filter:none;opacity:1;background:color-mix(in srgb, var(--c) 16%, #0003);box-shadow:0 0 0 1.5px color-mix(in srgb, var(--c) 70%, transparent)}.relic-row{gap:calc(9px * var(--s));padding:calc(7px * var(--s)) calc(10px * var(--s)) calc(7px * var(--s)) calc(7px * var(--s));border-radius:calc(13px * var(--s));background:var(--glass);border:1px solid color-mix(in srgb, var(--c) 35%, transparent);-webkit-backdrop-filter:blur(calc(8px * var(--s)));backdrop-filter:blur(calc(8px * var(--s)));align-items:flex-start;display:flex}.relic-row .rglyph{flex:0 0 calc(32px * var(--s));height:calc(32px * var(--s));border-radius:calc(10px * var(--s));font-size:calc(18px * var(--s));color:var(--c);text-shadow:0 0 calc(10px * var(--s)) var(--c);background:radial-gradient(circle at 50% 40%, color-mix(in srgb, var(--c) 25%, transparent), #ffffff08);place-items:center;display:grid}.relic-row .rbody{gap:calc(1px * var(--s));flex-direction:column;min-width:0;display:flex}.relic-row b{font-size:calc(13px * var(--s));color:var(--c);font-weight:900}.relic-row span{font-size:calc(11.5px * var(--s));color:#ddd3f7;font-weight:700;line-height:1.32}.relic-row .rglyph svg{width:62%;height:62%}.side-title.rival-title{margin-top:calc(10px * var(--s));color:#ffb3c8;white-space:nowrap;text-overflow:ellipsis;overflow:hidden}.battle-bar .btn.rival-btn{gap:calc(6px * var(--s));padding:0 calc(12px * var(--s));color:#ffd0dc;border-color:#ff96b973}.battle-bar .btn.rival-btn.on{background:#ff96b929}.rival-btn .rglyphs{gap:calc(2px * var(--s));font-style:normal;display:inline-flex}.rival-btn .rglyphs i{font-style:normal;font-size:calc(14px * var(--s));text-shadow:0 0 calc(8px * var(--s)) currentColor}.inspect-hint{color:var(--muted);font-weight:800;font-size:calc(13px * var(--s));text-align:center;align-self:center}.rival-card .rival-sec{margin:calc(8px * var(--s)) 0 calc(3px * var(--s));font-family:var(--display);letter-spacing:.16em;text-transform:uppercase;font-weight:800;font-size:calc(10.5px * var(--s));color:var(--muted)}.rival-line{gap:calc(8px * var(--s));font-size:calc(12.5px * var(--s));color:#ddd3f7;padding:calc(2px * var(--s)) 0;align-items:flex-start;font-weight:700;line-height:1.35;display:flex}.rival-line b{color:var(--c);font-weight:900}.rival-line .rl-glyph{flex:0 0 calc(20px * var(--s));height:calc(20px * var(--s));color:var(--c);font-size:calc(15px * var(--s));text-shadow:0 0 calc(8px * var(--s)) var(--c);place-items:center;display:grid}.rival-line .rl-glyph svg{width:100%;height:100%}@media (max-width:420px){.battle-bar{gap:6px}.battle-bar .seg button{padding:0 11px}.battle-bar .btn{padding:0 12px}.inspect-hint{font-size:12px}}.chip.side-chip.you{--c:#cbb8ff}.chip.side-chip.rival{--c:#ffb3c8}.members{gap:calc(4px * var(--s));margin-top:calc(6px * var(--s));flex-wrap:wrap;display:flex}.member{width:calc(54px * var(--s));opacity:.45;flex-direction:column;align-items:center;display:flex}.member.have{opacity:1}.member img{width:calc(40px * var(--s));height:calc(40px * var(--s));border-radius:calc(10px * var(--s));border:1.5px solid var(--tc);background:#ffffff0a}.member span{font-size:calc(9.5px * var(--s));text-align:center;margin-top:calc(2px * var(--s));font-weight:800;line-height:1.1}#info{z-index:12;transform:translate(-50%, calc(8px * var(--s)));width:min(94%, calc(520px * var(--s)));opacity:0;pointer-events:none;transition:opacity .18s,transform .18s;position:absolute;left:50%}#info.show{opacity:1;pointer-events:auto;transform:translate(-50%)}#info.anchored{width:min(calc(420px * var(--s)), 40vw);transform:none}.info-card{gap:calc(12px * var(--s));background:var(--glass-strong);border:1px solid var(--line-strong);border-radius:calc(18px * var(--s));padding:calc(10px * var(--s)) calc(12px * var(--s));box-shadow:0 calc(12px * var(--s)) calc(40px * var(--s)) #0000008c;-webkit-backdrop-filter:blur(calc(14px * var(--s)));backdrop-filter:blur(calc(14px * var(--s)));align-items:flex-start;display:flex}.info-card .portrait{flex:0 0 calc(64px * var(--s));height:calc(64px * var(--s));border-radius:calc(14px * var(--s));background:radial-gradient(circle at 50% 45%, color-mix(in srgb, var(--c) 35%, transparent), transparent 70%), #ffffff08;place-items:center;display:grid}.info-card .portrait img{width:calc(64px * var(--s));height:calc(64px * var(--s))}.info-card .portrait.glyph{font-size:calc(30px * var(--s));color:var(--c);text-shadow:0 0 calc(16px * var(--s)) var(--c)}.info-body{flex:1;min-width:0}.info-title{align-items:center;gap:calc(8px * var(--s));flex-wrap:wrap;display:flex}.info-title h3{font-size:calc(16px * var(--s));margin:0;font-weight:900}.chip{align-items:center;gap:calc(4px * var(--s));font-size:calc(11px * var(--s));padding:2px calc(7px * var(--s));background:color-mix(in srgb, var(--c) 18%, transparent);color:var(--c);border-radius:999px;font-weight:900;display:inline-flex}.chip svg{width:calc(12px * var(--s));height:calc(12px * var(--s))}.stars{color:var(--gold);font-size:calc(13px * var(--s));letter-spacing:-1px}.info-meta{color:var(--muted);font-size:calc(12px * var(--s));margin:2px 0 calc(4px * var(--s));gap:calc(10px * var(--s));flex-wrap:wrap;font-weight:700;display:flex}.info-desc{font-size:calc(13.5px * var(--s));font-weight:700;line-height:1.35}.info-desc b{color:var(--gold)}.info-desc .dim{color:var(--muted);font-weight:700}.info-actions{gap:calc(6px * var(--s));flex-direction:column;display:flex}.info-actions .btn{height:calc(40px * var(--s));font-size:calc(13px * var(--s));padding:0 calc(12px * var(--s));border-radius:calc(12px * var(--s))}.btn.danger{background:#6e182cd9;border-color:#ff788c80}.btn.ice{background:#1e466ed9;border-color:#9fe8ff80}#overlay{z-index:20;pointer-events:none;position:absolute;inset:0}#overlay>*{pointer-events:auto}.scrim{padding:calc(16px * var(--s));background:radial-gradient(#07051480,#070514d9);grid-template-columns:minmax(0,1fr);place-items:center;animation:.3s both fadein;display:grid;position:absolute;inset:0;overflow-y:auto}.scrim.clear{background:radial-gradient(#070514b8 0%,#07051459 60%,#07051426 100%)}@keyframes fadein{0%{opacity:0}}.modal{width:min(100%, calc(560px * var(--s)));background:var(--glass-strong);border:1px solid var(--line-strong);border-radius:calc(24px * var(--s));padding:calc(22px * var(--s)) calc(20px * var(--s));box-shadow:0 calc(20px * var(--s)) calc(80px * var(--s)) #0009;-webkit-backdrop-filter:blur(calc(16px * var(--s)));backdrop-filter:blur(calc(16px * var(--s)));text-align:center;animation:.4s cubic-bezier(.2,.9,.3,1.2) both rise}@keyframes rise{0%{transform:translateY(calc(20px * var(--s))) scale(.96);opacity:0}}.modal h2{font-family:var(--display);letter-spacing:.06em;margin:0 0 calc(6px * var(--s));font-weight:800;font-size:calc(24px * var(--s))}.modal p{color:var(--muted);margin:0 0 calc(14px * var(--s));font-weight:700;line-height:1.4}.modal .row{gap:calc(10px * var(--s));margin-top:calc(16px * var(--s));flex-wrap:wrap;justify-content:center;display:flex}.title-screen{padding:calc(9vh + env(safe-area-inset-top)) calc(16px * var(--s)) calc(16px * var(--s));text-align:center;flex-direction:column;justify-content:flex-start;align-items:center;display:flex;position:absolute;inset:0}.logo{font-family:var(--display);font-weight:800;font-size:clamp(calc(40px * var(--s)), 11vw, calc(92px * var(--s)));letter-spacing:.08em;background:linear-gradient(#fff6d8 10%,#ffd36b 45%,#ff8a3a 90%);color:#0000;filter:drop-shadow(0 0 calc(24px * var(--s)) #ffa03c73) drop-shadow(0 calc(4px * var(--s)) 0 #3c140080);-webkit-background-clip:text;background-clip:text;margin:0;line-height:1;animation:.9s cubic-bezier(.2,.9,.3,1.1) both rise}.tagline{margin:calc(12px * var(--s)) 0 calc(28px * var(--s));color:#cbb8ff;letter-spacing:.22em;font-weight:800;font-size:clamp(calc(11px * var(--s)), 2.8vw, calc(14px * var(--s)));text-transform:uppercase;animation:1.4s both fadein}.menu{gap:calc(10px * var(--s));width:min(100%, calc(340px * var(--s)));flex-direction:column;animation:.8s cubic-bezier(.2,.9,.3,1.1) .15s both rise;display:flex}.menu .btn{height:calc(56px * var(--s));font-size:calc(16px * var(--s));width:100%}.menu .btn.primary{color:#2a1400;font-family:var(--display);letter-spacing:.06em;font-weight:800;font-size:calc(17px * var(--s));box-shadow:0 calc(6px * var(--s)) calc(30px * var(--s)) #ff8c2866;background:linear-gradient(#ffe08a,#ffb341 55%,#ff8a2a);border:none}.menu .btn small{font-family:var(--font);font-weight:800;font-size:calc(11px * var(--s));opacity:.75;letter-spacing:0}.menu .btn .stack{flex-direction:column;line-height:1.15;display:flex}.daily-timer{margin-top:calc(14px * var(--s));align-items:center;gap:calc(8px * var(--s));padding:calc(7px * var(--s)) calc(14px * var(--s));background:var(--glass-strong);border:1px solid var(--line-strong);box-shadow:0 calc(6px * var(--s)) calc(24px * var(--s)) #00000073;-webkit-backdrop-filter:blur(calc(10px * var(--s)));font-size:calc(13px * var(--s));letter-spacing:.03em;border-radius:999px;font-weight:800;animation:1.4s both fadein;display:inline-flex}.daily-timer .dt-label{color:#d8cff5}.daily-timer b{color:var(--gold);font-variant-numeric:tabular-nums;letter-spacing:.06em;text-shadow:0 0 calc(12px * var(--s)) #ffbe5073;font-size:1.08em}.title-sound{top:calc(12px * var(--s) + env(safe-area-inset-top));right:calc(12px * var(--s));position:absolute}.title-note{left:50%;bottom:calc(12px * var(--s) + env(safe-area-inset-bottom));width:max-content;max-width:92vw;padding:calc(5px * var(--s)) calc(12px * var(--s));color:#cbbfe8;font-size:calc(11.5px * var(--s));letter-spacing:.02em;background:#07051499;border-radius:999px;font-weight:700;position:absolute;transform:translate(-50%)}.relic-choices{gap:calc(10px * var(--s));margin-top:calc(8px * var(--s));grid-template-columns:repeat(3,minmax(0,1fr));display:grid}.relic-card{border-radius:calc(18px * var(--s));padding:calc(16px * var(--s)) calc(10px * var(--s)) calc(14px * var(--s));cursor:pointer;border:1px solid var(--line-strong);background:radial-gradient(circle at 50% 22%, color-mix(in srgb, var(--c) 30%, transparent), transparent 55%), #1e143ce6;align-items:center;gap:calc(6px * var(--s));flex-direction:column;transition:transform .15s,box-shadow .2s;animation:.5s cubic-bezier(.2,.9,.3,1.2) both rise;display:flex}.relic-card:nth-child(2){animation-delay:80ms}.relic-card:nth-child(3){animation-delay:.16s}.relic-card:hover{transform:translateY(calc(-4px * var(--s)));box-shadow:0 0 calc(30px * var(--s)) calc(-6px * var(--s)) var(--c);border-color:var(--c)}.relic-card .glyph{font-size:calc(38px * var(--s));color:var(--c);text-shadow:0 0 calc(18px * var(--s)) var(--c);line-height:1.1}.relic-card h4{font-size:calc(14px * var(--s));margin:0;font-weight:900}.relic-card p{font-size:calc(12.5px * var(--s));color:#d9cff5;margin:0;font-weight:700;line-height:1.35}@media (max-width:480px){.relic-choices{grid-template-columns:1fr}.relic-card{text-align:left;padding:calc(12px * var(--s)) calc(14px * var(--s));flex-direction:row}.relic-card .glyph{font-size:calc(30px * var(--s));width:calc(40px * var(--s));text-align:center}.relic-card .txt{flex:1}}.result{text-align:center;width:min(100%, calc(520px * var(--s)));padding:calc(22px * var(--s)) calc(18px * var(--s)) calc(20px * var(--s));border-radius:calc(26px * var(--s));border:1px solid var(--line-strong);box-shadow:0 calc(20px * var(--s)) calc(60px * var(--s)) #0000008c;-webkit-backdrop-filter:blur(calc(10px * var(--s)));background:radial-gradient(at 50% 0,#281a50db,#0c081cd6 70%);animation:.5s cubic-bezier(.2,.9,.3,1.3) both rise}.result h1{font-family:var(--display);font-weight:800;font-size:clamp(calc(44px * var(--s)), 12vw, calc(84px * var(--s)));letter-spacing:.08em;margin:0;line-height:1}.result.win h1{background:linear-gradient(#fff6d8,#ffd36b 50%,#ff9a3a);color:#0000;filter:drop-shadow(0 0 calc(30px * var(--s)) #ffb44699);-webkit-background-clip:text;background-clip:text}.result.loss h1{color:#ff8aa0;text-shadow:0 0 calc(30px * var(--s)) #ff3c648c}.result.draw h1{color:#cbb8ff;text-shadow:0 0 calc(30px * var(--s)) #a078ff8c}.result .sub{color:#e0d6ff;margin:calc(10px * var(--s)) 0 calc(18px * var(--s));font-weight:800;font-size:calc(15px * var(--s))}.result .row{gap:calc(10px * var(--s));flex-wrap:wrap;justify-content:center;display:flex}.modal.help{width:min(100%, calc(1040px * var(--s)));padding:calc(22px * var(--s)) calc(22px * var(--s)) calc(18px * var(--s))}.help-goal{justify-content:center;align-items:center;gap:calc(10px * var(--s));font-size:calc(14.5px * var(--s));display:flex;color:#e6defc!important}.help-goal svg{flex:0 0 calc(26px * var(--s));width:calc(26px * var(--s));height:calc(26px * var(--s))}.help-goal b,.hcard b,.help-async b{color:var(--gold)}.help-async{align-items:center;gap:calc(10px * var(--s));text-align:left;padding:calc(10px * var(--s)) calc(12px * var(--s));border-radius:calc(14px * var(--s));font-size:calc(13.5px * var(--s));background:#ffd36b12;border:1px solid #ffd36b40;display:flex;margin:0 0 calc(12px * var(--s))!important;color:#e6defc!important}.title-async{margin:calc(-16px * var(--s)) 0 calc(18px * var(--s));color:#d8cff5;font-size:calc(12.5px * var(--s));letter-spacing:.04em;font-weight:800;animation:1.6s both fadein}.opp-note{margin:calc(-8px * var(--s)) auto calc(16px * var(--s));width:max-content;max-width:100%;padding:calc(5px * var(--s)) calc(12px * var(--s));border-radius:calc(14px * var(--s));font-size:calc(12.5px * var(--s));color:#ffe7a8;background:#0705148c;border:1px solid #ffd36b66;font-weight:800}.vs-banner small i{opacity:.6;margin:0 .25em;font-style:normal}.vs-banner small{margin-top:calc(6px * var(--s));font-family:var(--font);font-size:calc(14px * var(--s));letter-spacing:.04em;color:#e6defc;text-shadow:0 2px 8px #000000b3;font-weight:800;display:block}.btn.fight .finding{font-size:calc(12px * var(--s));letter-spacing:.04em}.help-grid{gap:calc(10px * var(--s));text-align:left;grid-template-columns:repeat(3,minmax(0,1fr));display:grid}@media (max-width:979px){.help-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (max-width:640px){.help-grid{grid-template-columns:1fr}}.hcard{gap:calc(10px * var(--s));padding:calc(12px * var(--s));border-radius:calc(16px * var(--s));border:1px solid var(--line);background:#ffffff09;flex-direction:column;align-items:stretch;display:flex}.hcard h4{margin:0 0 calc(3px * var(--s));font-family:var(--display);letter-spacing:.06em;font-weight:800;font-size:calc(14px * var(--s));color:var(--text)}.hcard p{font-size:calc(13px * var(--s));font-weight:700;line-height:1.45;color:#ddd3f7!important;margin:0!important}.hcard p svg{width:calc(14px * var(--s));height:calc(14px * var(--s));vertical-align:-2px}.help-keys{margin-top:calc(12px * var(--s));color:var(--muted);font-size:calc(12px * var(--s));justify-content:center;align-items:center;gap:calc(6px * var(--s));flex-wrap:wrap;font-weight:700;display:flex}.help-keys kbd{font-family:var(--font);color:var(--text);padding:calc(1px * var(--s)) calc(6px * var(--s));border-radius:calc(6px * var(--s));border:1px solid var(--line-strong);margin-left:calc(6px * var(--s));background:#ffffff12;border-bottom-width:2px;font-size:.92em;font-weight:900}.sound-toggle{gap:calc(8px * var(--s))}.sound-toggle .sicon{color:var(--muted);place-items:center;transition:color .2s;display:grid}.sound-toggle .sicon svg{width:calc(20px * var(--s));height:calc(20px * var(--s))}.sound-toggle.on .sicon{color:var(--gold)}.help-list{text-align:left;margin:calc(8px * var(--s)) 0 0;gap:calc(10px * var(--s));flex-direction:column;padding:0;list-style:none;display:flex}.help-list li{gap:calc(12px * var(--s));font-weight:700;font-size:calc(14px * var(--s));color:#e6defc;align-items:flex-start;line-height:1.4;display:flex}.help-list .n{flex:0 0 calc(26px * var(--s));height:calc(26px * var(--s));color:var(--gold);font-weight:900;font-size:calc(13px * var(--s));background:#ffd36b26;border-radius:50%;place-items:center;display:grid}.help-list b{color:var(--gold)}.team-strip{margin:calc(6px * var(--s)) 0 calc(4px * var(--s));flex-wrap:wrap;justify-content:center;gap:2px;display:flex}.team-strip img{width:calc(44px * var(--s));height:calc(44px * var(--s))}.big-stat{justify-content:center;gap:calc(22px * var(--s));margin:calc(10px * var(--s)) 0 calc(4px * var(--s));display:flex}.big-stat div{flex-direction:column;display:flex}.big-stat b{font-size:calc(28px * var(--s));color:var(--gold);font-weight:900}.big-stat span{font-size:calc(11px * var(--s));color:var(--muted);letter-spacing:.1em;text-transform:uppercase;font-weight:800}.vs-banner{pointer-events:none;font-family:var(--display);font-weight:800;font-size:clamp(calc(30px * var(--s)), 8vw, calc(54px * var(--s)));letter-spacing:.15em;color:#fff1d0;text-shadow:0 0 calc(30px * var(--s)) #ffaa50cc;white-space:nowrap;animation:1.1s both vs;position:absolute;top:50%;left:50%;transform:translate(-50%,-50%)}@keyframes vs{0%{opacity:0;transform:translate(-50%,-50%)scale(1.6)}25%{opacity:1;transform:translate(-50%,-50%)scale(1)}75%{opacity:1}to{opacity:0;transform:translate(-50%,-50%)scale(.9)}}#toast{z-index:30;left:50%;top:calc(calc(64px * var(--s)) + env(safe-area-inset-top));transform:translate(-50%, calc(-10px * var(--s)));background:var(--glass-strong);border:1px solid var(--line-strong);padding:calc(9px * var(--s)) calc(16px * var(--s));font-weight:800;font-size:calc(14px * var(--s));opacity:0;pointer-events:none;white-space:nowrap;border-radius:999px;transition:opacity .2s,transform .2s;position:absolute}#toast.show{opacity:1;transform:translate(-50%)}#drag{z-index:40;width:calc(96px * var(--s));height:calc(96px * var(--s));pointer-events:none;filter:drop-shadow(0 calc(10px * var(--s)) calc(18px * var(--s)) #00000080) drop-shadow(0 0 calc(16px * var(--s)) #ffc87859);display:none;position:fixed;transform:translate(-50%,-60%)scale(1.1)}#drag.on{display:block}@media (max-width:420px){.pill{height:calc(32px * var(--s));padding:calc(4px * var(--s)) calc(9px * var(--s));font-size:calc(13px * var(--s))}.hearts svg{width:calc(14px * var(--s));height:calc(14px * var(--s))}.icon-btn{width:calc(32px * var(--s));height:calc(32px * var(--s))}.btn.fight{min-width:calc(104px * var(--s));font-size:calc(15px * var(--s))}.btn{height:calc(46px * var(--s))}.gold-pill{height:calc(46px * var(--s));font-size:calc(19px * var(--s))}.round-label{display:none}.wins-round{display:inline}.relics{gap:calc(3px * var(--s))}.relic-icon{width:calc(26px * var(--s));height:calc(26px * var(--s));font-size:calc(14px * var(--s))}.card{aspect-ratio:.72}.card .cost,.card .freeze{display:none}.card .range{top:calc(4px * var(--s));left:calc(4px * var(--s));width:calc(17px * var(--s));height:calc(17px * var(--s))}.card .range svg{width:calc(12px * var(--s));height:calc(12px * var(--s))}.card .tribe{top:calc(4px * var(--s));right:calc(4px * var(--s));width:calc(15px * var(--s));height:calc(15px * var(--s))}.card img{top:calc(7px * var(--s));height:calc(100% - calc(45px * var(--s)))}.card .name{font-size:calc(9.5px * var(--s));-webkit-line-clamp:2;-webkit-box-orient:vertical;line-height:1.05;display:-webkit-box;overflow:hidden}.card .stats{gap:calc(2px * var(--s));margin-bottom:calc(5px * var(--s))}.card .stat{min-width:calc(19px * var(--s));height:calc(16px * var(--s));padding:0 calc(3px * var(--s));font-size:calc(10px * var(--s))}.card.frozen:before{content:"";z-index:2;top:calc(5px * var(--s));width:calc(13px * var(--s));height:calc(13px * var(--s));-webkit-mask:var(--snow-mask) center / contain no-repeat;-webkit-mask:var(--snow-mask) center / contain no-repeat;mask:var(--snow-mask) center / contain no-repeat;filter:drop-shadow(0 0 3px #96e6ffe6);background:#bff2ff;position:absolute;left:50%;transform:translate(-50%)}.synergies{gap:calc(4px * var(--s))}.syn{height:calc(26px * var(--s));padding:0 calc(6px * var(--s)) 0 calc(4px * var(--s));gap:calc(3px * var(--s));font-size:calc(12px * var(--s))}.syn svg{width:calc(14px * var(--s));height:calc(14px * var(--s))}.syn .ticks i{width:calc(4px * var(--s));height:calc(9px * var(--s))}}@media (max-width:380px){.gold-pill small{display:none}.pill{padding:calc(4px * var(--s)) calc(7px * var(--s))}.hearts{gap:calc(2px * var(--s))}.hearts svg{width:calc(12px * var(--s));height:calc(12px * var(--s))}.hud-mid{gap:calc(5px * var(--s))}.relic-icon{width:calc(24px * var(--s));height:calc(24px * var(--s))}}@media (max-height:640px){.cards{max-width:calc(470px * var(--s));margin:0 auto}}.menu-pair{gap:calc(10px * var(--s));grid-template-columns:1fr 1fr;display:grid}.menu-pair .btn{font-size:calc(15px * var(--s));padding:0 calc(10px * var(--s))}.modal.rules{text-align:left;width:min(100%, calc(760px * var(--s)))}.rules-head{min-height:calc(40px * var(--s));justify-content:center;align-items:center;display:flex;position:relative}.rules-head h2{text-align:center;margin:0}.rules-back{position:absolute;top:50%;left:0;transform:translateY(-50%)}.rules-nav{top:calc(-16px * var(--s));z-index:2;gap:calc(6px * var(--s));scrollbar-width:none;margin:calc(10px * var(--s)) calc(-22px * var(--s)) calc(4px * var(--s));padding:calc(10px * var(--s)) calc(22px * var(--s));border-bottom:1px solid var(--line);box-shadow:0 calc(6px * var(--s)) calc(12px * var(--s)) #07051480;background:#170f31;display:flex;position:sticky;overflow-x:auto}.rules-nav::-webkit-scrollbar{display:none}@media (min-width:700px){.rules-nav{flex-wrap:wrap;justify-content:center;overflow-x:visible}.rules-topic{scroll-margin-top:calc(108px * var(--s))}}@media (max-width:699px){.rules-nav{-webkit-mask-image:linear-gradient(90deg,#000 88%,#0000);mask-image:linear-gradient(90deg,#000 88%,#0000)}}.rules-nav button{font:inherit;font-weight:800;font-size:calc(12.5px * var(--s));color:var(--text);cursor:pointer;padding:calc(6px * var(--s)) calc(11px * var(--s));border:1px solid var(--line-strong);background:#ffffff0d;border-radius:999px;flex:none}.rules-nav button:hover{border-color:var(--gold);color:var(--gold)}.rules-topic{scroll-margin-top:calc(64px * var(--s));padding-top:calc(14px * var(--s))}.rules-topic h3{margin:0 0 calc(8px * var(--s));font-family:var(--display);letter-spacing:.08em;font-weight:800;font-size:calc(16px * var(--s));color:var(--gold)}.rq{padding:calc(10px * var(--s)) calc(12px * var(--s));border-radius:calc(14px * var(--s));border:1px solid var(--line);margin-bottom:calc(8px * var(--s));background:#ffffff09}.rq h4{margin:0 0 calc(3px * var(--s));font-size:calc(14px * var(--s));color:var(--text);font-weight:900}.modal .rq p{font-size:calc(13px * var(--s));color:#ddd3f7;margin:0;line-height:1.5}.rq p b{color:var(--text)}.rk-row{gap:calc(4px * var(--s));vertical-align:middle;margin:0 calc(2px * var(--s));flex-wrap:wrap;display:inline-flex}.rk{font-size:calc(12px * var(--s));padding:0 calc(6px * var(--s));border-radius:calc(6px * var(--s));color:#f1e6c4;background:#ffd36b1a;border:1px solid #ffd36b4d}.rk b{margin-right:2px;color:var(--gold)!important}.rules-tribes,.rules-relics{gap:calc(6px * var(--s));margin-top:calc(6px * var(--s));flex-direction:column;display:flex}.rt{padding-left:calc(10px * var(--s));border-left:3px solid var(--c);display:block}.rt svg{width:calc(15px * var(--s));height:calc(15px * var(--s));vertical-align:-3px;margin-right:calc(4px * var(--s))}.rt b{color:var(--c)!important}.rr{gap:calc(10px * var(--s));align-items:baseline;display:flex}.rr i{flex:0 0 calc(20px * var(--s));text-align:center;font-style:normal;font-size:calc(16px * var(--s))}.rr small{color:var(--muted);font-size:calc(11.5px * var(--s));display:block}@media (max-height:900px){.title-screen{padding-top:calc(5vh + env(safe-area-inset-top))}.logo{font-size:clamp(calc(40px * var(--s)), min(11vw, 10vh), calc(92px * var(--s)))}.tagline{margin:calc(8px * var(--s)) 0 calc(22px * var(--s))}.menu{gap:clamp(6px, 1vh, calc(10px * var(--s)))}.menu .btn{height:clamp(44px, 6.4vh, calc(56px * var(--s)))}.menu .ranked-pair .btn.ladder-btn{width:clamp(44px, 6.4vh, calc(56px * var(--s)))}.daily-timer{margin-top:calc(10px * var(--s))}}@media (max-width:700px) and (orientation:portrait){.title-screen:has(.acct-chip){padding-top:calc(max(5vh, 66px) + env(safe-area-inset-top))}}.replay-names{justify-content:center;align-items:baseline;gap:calc(8px * var(--s));font-weight:900;font-size:calc(13px * var(--s));margin-bottom:calc(6px * var(--s));text-shadow:0 1px 3px #000;display:flex}.replay-names .team-name{align-items:center;gap:calc(5px * var(--s));max-width:42vw;padding:calc(3px * var(--s)) calc(9px * var(--s));border:1px solid color-mix(in srgb, currentColor 40%, transparent);font:inherit;cursor:pointer;white-space:nowrap;text-overflow:ellipsis;background:#0a061a8c;border-radius:999px;display:inline-flex;overflow:hidden}.replay-names .team-name.on{background:color-mix(in srgb, currentColor 18%, #0a061a8c)}.replay-names .team-name .rglyphs{gap:1px;font-size:.9em;display:inline-flex}.replay-names .team-name .rglyphs i{text-shadow:0 0 calc(6px * var(--s)) currentColor;font-style:normal}.replay-names .you{color:#cbb8ff}.replay-names .opp{color:#ffb3c8}.replay-names i{color:var(--muted);font-size:.85em;font-style:normal}.replay-names .you:after{content:" ▼";opacity:.7;font-size:.7em}.replay-names .opp:after{content:" ▲";opacity:.7;font-size:.7em}@media (max-height:520px) and (orientation:landscape){.title-screen{padding:calc(10px + env(safe-area-inset-top)) calc(16px + env(safe-area-inset-right)) calc(10px + env(safe-area-inset-bottom)) calc(16px + env(safe-area-inset-left));overflow-y:auto}.logo{font-size:clamp(30px,13vh,60px)}.tagline{margin:calc(4px * var(--s)) 0 calc(6px * var(--s));font-size:11px}.title-async{margin:0 0 calc(10px * var(--s));font-size:11.5px}.title-screen .menu{grid-template-columns:1fr 1fr;gap:8px;width:min(100%,640px);display:grid}.title-screen .menu .btn{height:46px;font-size:14px}.title-screen .menu .btn small{font-size:10.5px}.daily-timer{margin-top:8px;padding:4px 12px;font-size:12px}.title-note{margin-top:8px;font-size:10.5px;position:static;transform:none}#panel{left:auto;right:calc(8px + env(safe-area-inset-right));width:min(48vw,420px);padding:0 0 calc(8px + env(safe-area-inset-bottom));gap:6px;max-height:calc(100% - 60px);top:auto;bottom:0;transform:none}#panel.hidden{transform:translate(115%)}.synergies{min-height:0}.syn{height:24px;font-size:12px}.actions .btn,.gold-pill{height:42px}.btn.fight{min-width:96px;font-size:15px}.battle-bar{margin-top:auto}#info{width:min(46vw,380px);transform:translateY(8px);left:calc(8px + env(safe-area-inset-left))!important;right:auto!important}#info.show{transform:none}.card{aspect-ratio:.72}.card .cost,.card .freeze{display:none}.card .range{top:calc(4px * var(--s));left:calc(4px * var(--s));width:calc(17px * var(--s));height:calc(17px * var(--s))}.card .range svg{width:calc(12px * var(--s));height:calc(12px * var(--s))}.card .tribe{top:calc(4px * var(--s));right:calc(4px * var(--s));width:calc(15px * var(--s));height:calc(15px * var(--s))}.card img{top:calc(7px * var(--s));height:calc(100% - calc(45px * var(--s)))}.card .name{font-size:calc(9.5px * var(--s));-webkit-line-clamp:2;-webkit-box-orient:vertical;line-height:1.05;display:-webkit-box;overflow:hidden}.card .stats{gap:calc(2px * var(--s));margin-bottom:calc(5px * var(--s))}.card .stat{min-width:calc(19px * var(--s));height:calc(16px * var(--s));padding:0 calc(3px * var(--s));font-size:calc(10px * var(--s))}.card.frozen:before{content:"";z-index:2;top:calc(5px * var(--s));width:calc(13px * var(--s));height:calc(13px * var(--s));-webkit-mask:var(--snow-mask) center / contain no-repeat;-webkit-mask:var(--snow-mask) center / contain no-repeat;mask:var(--snow-mask) center / contain no-repeat;filter:drop-shadow(0 0 3px #96e6ffe6);background:#bff2ff;position:absolute;left:50%;transform:translate(-50%)}}.hart{--c:#9d8cff;width:100%;height:calc(124px * var(--s));border-radius:calc(12px * var(--s));isolation:isolate;background:radial-gradient(1.2px 1.2px at 12% 22%, #ffffffbf, transparent 60%), radial-gradient(1px 1px at 78% 14%, #fff9, transparent 60%), radial-gradient(1.4px 1.4px at 58% 72%, #ffffff59, transparent 60%), radial-gradient(1px 1px at 30% 84%, #fff6, transparent 60%), radial-gradient(1px 1px at 92% 58%, #ffffff80, transparent 60%), radial-gradient(1px 1px at 44% 10%, #ffffff73, transparent 60%), radial-gradient(90% 80% at 50% 118%, color-mix(in srgb, var(--c) 36%, transparent), transparent 66%), linear-gradient(180deg, #211748, #0e0922);border:1px solid color-mix(in srgb, var(--c) 30%, #b8a6ff2e);flex:none;position:relative;overflow:hidden;box-shadow:inset 0 1px #ffffff0f}.hart img{pointer-events:none;filter:drop-shadow(0 calc(3px * var(--s)) calc(5px * var(--s)) #00000073)}.hart .coin-lg,.ha-gold .coin-lg{background:radial-gradient(circle at 35% 30%, #fff1b0, var(--gold) 45%, #c47a12);box-shadow:0 0 calc(14px * var(--s)) #ffbe50a6;border-radius:50%;display:block}.ha-cards{justify-content:center;align-items:center;gap:5%;display:flex;position:absolute;inset:0 22% 0 5%}.ha-card{aspect-ratio:.78;border-radius:calc(9px * var(--s));background:radial-gradient(ellipse at 50% 38%, color-mix(in srgb, var(--c) 32%, transparent), transparent 62%), linear-gradient(180deg, #2a1e50f7, #120b26f7);border:1.5px solid color-mix(in srgb, var(--c) 60%, transparent);height:76%;box-shadow:0 calc(6px * var(--s)) calc(14px * var(--s)) #00000073;position:relative}.ha-card:first-child{transform:rotate(-8deg)translateY(5%)}.ha-card:last-child{transform:rotate(8deg)translateY(5%)}.ha-card.lift{border-color:var(--gold);box-shadow:0 0 0 2px #ffd36b73, 0 0 calc(22px * var(--s)) #ffbe5a80;animation:3s ease-in-out infinite ha-bob;transform:translateY(-9%)scale(1.07)}@keyframes ha-bob{50%{transform:translateY(-14%)scale(1.07)}}.ha-card img{object-fit:contain;width:116%;height:82%;position:absolute;top:4%;left:-8%}.ha-card b{background:linear-gradient(90deg, var(--atk) 0 46%, transparent 46% 54%, var(--hp) 54%);border-radius:99px;height:9%;position:absolute;bottom:8%;left:16%;right:16%}.ha-cost{z-index:1;aspect-ratio:1;width:24%;font-style:normal;font-weight:900;font-size:calc(8.5px * var(--s));color:#3a2200;background:radial-gradient(circle at 35% 30%, #fff1b0, var(--gold) 45%, #c47a12);border-radius:50%;place-items:center;display:grid;position:absolute;top:5%;left:6%}.ha-card.frozen:after{content:"";border-radius:inherit;box-shadow:0 0 calc(14px * var(--s)) #78dcff73;background:linear-gradient(160deg,#b4f0ff57,#78c8ff0f 45%,#c8f5ff42);border:1.5px solid #9fe8ff;position:absolute;inset:-1.5px}.ha-gold{align-items:center;gap:calc(4px * var(--s));flex-direction:column;display:flex;position:absolute;top:50%;right:7%;transform:translateY(-50%)}.ha-gold .coin-lg{width:calc(30px * var(--s));height:calc(30px * var(--s))}.ha-gold b{font-weight:900;font-size:calc(17px * var(--s));text-shadow:0 0 calc(10px * var(--s)) #ffbe5099;line-height:1;color:var(--gold)!important}.ha-front{font-family:var(--display);letter-spacing:.32em;font-weight:800;font-size:calc(8px * var(--s));color:#ffe7a8;text-shadow:0 0 calc(8px * var(--s)) #ffd36b99;position:absolute;top:3%;left:50%;transform:translate(-50%)}.ha-board{aspect-ratio:4/3;gap:calc(3px * var(--s));grid-template-rows:repeat(3,1fr);grid-template-columns:repeat(4,1fr);height:82%;display:grid;position:absolute;top:56%;left:50%;transform:translate(-50%,-50%)}.ha-tile{border-radius:calc(5px * var(--s));background:#1a1438e0;border:1px solid #9d8cff47;position:relative}.ha-tile.front{background:#34244ae6;border-color:#ffd36b80}.ha-tile.gone{background:#ffffff05;border-style:dashed}.ha-tile img{object-fit:contain;width:144%;height:144%;position:absolute;top:-26%;left:-22%}.ha-tile.step{z-index:1}.ha-tile.step img{animation:3.2s ease-in-out infinite ha-step}@keyframes ha-step{0%,30%{opacity:1;transform:none}55%,82%{opacity:1;transform:translateY(calc(-100% - 3px))}92%{opacity:0;transform:translateY(calc(-100% - 3px))}93%{opacity:0;transform:none}to{opacity:1}}.ha-step{width:9%;height:28%;color:var(--gold);filter:drop-shadow(0 0 calc(4px * var(--s)) #ffd36be6);pointer-events:none;z-index:2;position:absolute;top:20%;left:62.5%;transform:translate(-50%)}.ha-range{justify-content:space-around;display:flex;position:absolute;inset:6% 14% 6% 8%}.ha-rcol{height:100%;position:relative}.ha-rrows{gap:calc(3px * var(--s));aspect-ratio:1/3;grid-template-rows:repeat(3,1fr);height:100%;display:grid}.ha-rt{border-radius:calc(5px * var(--s));background:#1a1438e0;border:1px solid #9d8cff38;position:relative}.ha-rt.lit{background:color-mix(in srgb, currentColor 20%, #1a1438eb);border-color:color-mix(in srgb, currentColor 70%, transparent);box-shadow:inset 0 0 calc(8px * var(--s)) color-mix(in srgb, currentColor 35%, transparent)}.ha-rt img{object-fit:contain;width:160%;height:160%;position:absolute;top:-34%;left:-30%}.ha-chev{left:calc(100% + 4px);top:calc(var(--r) * 33.3% + 8%);width:calc(19px * var(--s));height:calc(19px * var(--s));box-shadow:0 0 calc(8px * var(--s)) color-mix(in srgb, currentColor 50%, transparent);background:#0b0716e0;border:1px solid;border-radius:50%;place-items:center;display:grid;position:absolute}.ha-chev svg{width:calc(13px * var(--s));height:calc(13px * var(--s))}.ha-stack{justify-content:center;align-items:center;gap:1.5%;display:flex;position:absolute;inset:0}.ha-copy img{height:calc(48px * var(--s));width:auto;margin:0 calc(-6px * var(--s));display:block}.ha-stack>i{color:var(--muted);font-style:normal;font-weight:900;font-size:calc(13px * var(--s))}.ha-arrow{width:calc(26px * var(--s));height:calc(16px * var(--s));color:var(--gold);filter:drop-shadow(0 0 calc(4px * var(--s)) #ffd36bb3);margin:0 2%}.ha-grown{animation:2.6s ease-in-out infinite ha-glow;position:relative}.ha-grown img{height:calc(92px * var(--s));width:auto;filter:drop-shadow(0 0 calc(12px * var(--s)) #ff9ad8b3) drop-shadow(0 calc(3px * var(--s)) calc(5px * var(--s)) #00000073);display:block}.ha-stars{z-index:1;color:var(--gold);font-size:calc(14px * var(--s));letter-spacing:-1px;text-shadow:0 0 calc(8px * var(--s)) #ffd36be6, 0 1px 2px #000;white-space:nowrap;position:absolute;top:4%;left:50%;transform:translate(-50%)}@keyframes ha-glow{50%{transform:scale(1.05)}}.ha-medals{justify-content:center;gap:3%;display:flex;position:absolute;top:13%;left:0;right:0}.ha-medal{transform:translateY(calc((var(--i) - 2.5) * (var(--i) - 2.5) * 2.4px));filter:drop-shadow(0 0 calc(6px * var(--s)) color-mix(in srgb, var(--c) 75%, transparent))}.ha-rim,.ha-core{clip-path:polygon(50% 0,100% 25%,100% 75%,50% 100%,0 75%,0 25%)}.ha-rim{width:calc(31px * var(--s));height:calc(35px * var(--s));padding:calc(2px * var(--s));background:linear-gradient(160deg,#fff6c4,#ffcf4a 40%,#b06a10);display:block}.ha-medal:nth-child(3n+1) .ha-rim{background:linear-gradient(160deg,#ffd0a6,#c07a45 45%,#6e3a1c)}.ha-medal:nth-child(3n+2) .ha-rim{background:linear-gradient(160deg,#fff,#b9c4dd 45%,#5f6b8a)}.ha-core{background:radial-gradient(circle at 50% 38%, color-mix(in srgb, var(--c) 42%, #1b1236) 0%, #150d2c 62%, #0d0820 100%);place-items:center;width:100%;height:100%;display:grid}.ha-core svg{width:62%;height:62%}.ha-track{gap:calc(7px * var(--s));display:flex;position:absolute;bottom:12%;left:50%;transform:translate(-50%)}.ha-track span{align-items:center;gap:calc(2px * var(--s));display:inline-flex}.ha-track i{width:calc(12px * var(--s));height:calc(6px * var(--s));background:#ffffff24;border-radius:3px}.ha-track i.on{box-shadow:0 0 calc(6px * var(--s)) #74e86ab3;background:#74e86a}.ha-track em{font-style:normal;font-weight:900;font-size:calc(10px * var(--s));color:var(--gold);margin-left:calc(2px * var(--s))}.hart.dawn{background:radial-gradient(1px 1px at 18% 18%,#ffffffb3,#0000 60%),radial-gradient(1px 1px at 40% 30%,#ffffff80,#0000 60%),radial-gradient(1px 1px at 12% 52%,#fff6,#0000 60%),linear-gradient(#1c1342 0%,#3b1f55 52%,#75324f 80%,#c85d3e 100%)}.ha-sun{aspect-ratio:1;background:radial-gradient(circle,#fff6d0 0%,#ffd36b 28%,#ff9a3a 52%,#ff783c00 71%);border-radius:50%;width:62%;animation:6s ease-in-out infinite ha-rise;position:absolute;bottom:-44%;left:56%}@keyframes ha-rise{0%,to{transform:translateY(8%)}50%{transform:translateY(-4%)}}.ha-hills{background:radial-gradient(70% 120% at 25% 100%,#130b28 70%,#0000 71%),radial-gradient(60% 100% at 85% 100%,#1a1033 70%,#0000 71%);height:32%;position:absolute;bottom:0;left:0;right:0}.ha-relic{--c:#ff7a30;filter:drop-shadow(0 0 calc(12px * var(--s)) #ff7a30d9);animation:3.4s ease-in-out infinite ha-float;position:absolute;top:48%;left:24%;transform:translate(-50%,-50%)}.ha-relic .ha-rim{width:calc(46px * var(--s));height:calc(52px * var(--s))}.ha-relic .ha-core{font-size:calc(24px * var(--s));color:#ffb07a;text-shadow:0 0 calc(10px * var(--s)) #ff7a30}@keyframes ha-float{50%{transform:translate(-50%,-58%)}}.ha-clock{font-family:var(--display);font-weight:800;font-size:calc(12px * var(--s));color:#ffe7a8;padding:calc(2px * var(--s)) calc(8px * var(--s));background:#140a288c;border:1px solid #ffd36b73;border-radius:99px;position:absolute;top:11%;right:7%}.ha-async{align-items:center;gap:calc(6px * var(--s));flex:none;display:flex}.ha-mini{grid-template-columns:repeat(3, calc(20px * var(--s)));grid-auto-rows:calc(20px * var(--s));border-radius:calc(7px * var(--s));background:#1a1438e6;gap:2px;padding:3px;display:grid}.ha-mini.you{border:1px solid #9d8cff8c}.ha-mini.them{border:1px solid #ff7aa88c}.ha-mini span{background:#ffffff0a;border-radius:4px;position:relative}.ha-mini img{object-fit:contain;width:150%;height:150%;position:absolute;top:-28%;left:-25%}.ha-vs{font-family:var(--display);color:var(--gold);font-weight:800;font-size:calc(12px * var(--s));text-shadow:0 0 calc(8px * var(--s)) #ffbe50b3}@media (max-width:640px){.hart{height:calc(108px * var(--s))}.ha-mini{grid-template-columns:repeat(3, calc(15px * var(--s)));grid-auto-rows:calc(15px * var(--s))}.help-async{text-align:center;flex-direction:column}}@media (prefers-reduced-motion:reduce){.ha-card.lift,.ha-tile.step img,.ha-grown,.ha-sun,.ha-relic{animation:none}}.rules-topic h3{align-items:center;gap:calc(10px * var(--s));display:flex}.rmedal{filter:drop-shadow(0 0 calc(6px * var(--s)) color-mix(in srgb, var(--c) 65%, transparent));flex:none}.rmedal .ha-rim{width:calc(28px * var(--s));height:calc(32px * var(--s))}.rmedal .ha-core{color:var(--c)}.rmedal .ha-core svg{width:58%;height:58%}.rmedal .rglyph{font-family:var(--font);font-weight:900;font-size:calc(10.5px * var(--s));letter-spacing:-.5px;color:var(--c);text-shadow:0 0 calc(6px * var(--s)) var(--c)}.rmedal .rcoin{background:radial-gradient(circle at 35% 30%, #fff1b0, var(--gold) 45%, #c47a12);width:46%;height:46%;box-shadow:0 0 calc(8px * var(--s)) #ffbe5099;border-radius:50%}.acct-medal{--c:#ffb341;filter:drop-shadow(0 0 calc(10px * var(--s)) #ffaa468c);display:inline-block}.acct-medal .ha-rim{width:calc(30px * var(--s));height:calc(34px * var(--s))}.acct-medal .ha-core svg{width:64%;height:64%}.acct-medal.lg{margin:0 auto calc(8px * var(--s))}.acct-medal.lg .ha-rim{width:calc(54px * var(--s));height:calc(61px * var(--s));padding:calc(3px * var(--s))}.acct-medal.danger{--c:#ff5f7e;filter:drop-shadow(0 0 calc(10px * var(--s)) #ff506e80)}.acct-medal.danger .ha-rim{background:linear-gradient(160deg,#ffd0da,#ff5f7e 45%,#6e1c2c)}.title-account{top:calc(12px * var(--s) + env(safe-area-inset-top));left:calc(12px * var(--s) + env(safe-area-inset-left));position:absolute}.acct-chip{align-items:center;gap:calc(8px * var(--s));max-width:min(60vw, calc(260px * var(--s)));height:calc(44px * var(--s));padding:0 calc(14px * var(--s)) 0 calc(7px * var(--s));cursor:pointer;background:var(--glass-strong);border:1px solid var(--line-strong);-webkit-backdrop-filter:blur(calc(10px * var(--s)));backdrop-filter:blur(calc(10px * var(--s)));box-shadow:0 calc(6px * var(--s)) calc(24px * var(--s)) #0006;text-align:left;border-radius:999px;animation:1s both fadein;display:inline-flex}.acct-chip:hover{border-color:#ffd36b99}.acct-chip .acct-medal .ha-rim{width:calc(26px * var(--s));height:calc(30px * var(--s))}.acct-chip-txt{flex-direction:column;min-width:0;line-height:1.15;display:flex}.acct-chip-txt b{font-weight:900;font-size:calc(13.5px * var(--s));white-space:nowrap;text-overflow:ellipsis;overflow:hidden}.acct-chip-txt small{font-weight:800;font-size:calc(10.5px * var(--s));color:var(--muted);white-space:nowrap;text-overflow:ellipsis;overflow:hidden}.acct-chip.guest b{color:var(--gold)}.title-note a{color:#e8dcff}.modal.account{width:min(100%, calc(440px * var(--s)))}.modal.account.busy{cursor:progress}.modal.account .acct-sub{margin-top:calc(-2px * var(--s));font-size:calc(13px * var(--s))}.acct-providers{gap:calc(8px * var(--s));flex-direction:column;display:flex}.acct-provider{color:#1d1636;background:#f8f6ff;border-color:#fff;width:100%}.acct-provider.apple{color:#fff;background:#050508;border-color:#ffffff59}.acct-provider svg{width:calc(20px * var(--s));height:calc(20px * var(--s))}.acct-or{align-items:center;gap:calc(10px * var(--s));margin:calc(14px * var(--s)) 0;color:var(--muted);font-weight:800;font-size:calc(12px * var(--s));text-transform:uppercase;letter-spacing:.14em;display:flex}.acct-or:before,.acct-or:after{content:"";background:var(--line-strong);flex:1;height:1px}.acct-form{gap:calc(6px * var(--s));text-align:left;flex-direction:column;display:flex}.acct-form label{font-weight:900;font-size:calc(13px * var(--s));color:#e4dbff}.acct-form small{color:var(--muted);font-weight:700;font-size:calc(11.5px * var(--s))}.acct-field{gap:calc(8px * var(--s));display:flex}.acct-field input{min-width:0;height:calc(50px * var(--s));border-radius:calc(15px * var(--s));padding:0 calc(14px * var(--s));border:1px solid var(--line-strong);color:var(--text);font:800 calc(16px * var(--s)) var(--font);-webkit-user-select:text;user-select:text;background:#080516bf;outline:none;flex:1;transition:border-color .2s,box-shadow .2s}.acct-field input::placeholder{color:#a99cc98c}.acct-field input:focus{box-shadow:0 0 0 calc(3px * var(--s)) #ffbe502e;border-color:#ffd36bbf}img.flag{vertical-align:-.1em;object-fit:cover;border-radius:2px;width:1.25em;height:.94em;margin-right:.35em;display:inline-block;box-shadow:0 0 0 1px #ffffff2e}.keeper-form{margin:calc(4px * var(--s)) 0 calc(12px * var(--s))}.keeper-form .acct-field{align-items:center}.keeper-form label+.acct-field{margin-bottom:calc(6px * var(--s))}.country-field select{min-width:0;height:calc(50px * var(--s));border-radius:calc(15px * var(--s));padding:0 calc(12px * var(--s));border:1px solid var(--line-strong);color:var(--text);font:800 calc(15px * var(--s)) var(--font);background:#080516bf;flex:1}.country-field select:focus{border-color:#ffd36bbf;outline:none}.country-flag{width:calc(40px * var(--s));flex:none;place-items:center;display:grid}.country-flag img.flag{width:calc(34px * var(--s));height:calc(25px * var(--s));margin:0}.country-flag .no-flag{width:calc(34px * var(--s));height:calc(25px * var(--s));border:1px dashed var(--line-strong);border-radius:3px}.keeper-actions{gap:calc(8px * var(--s));margin-top:calc(8px * var(--s));justify-content:flex-end;display:flex}.keeper-actions .btn{height:calc(46px * var(--s));padding:0 calc(18px * var(--s))}.keeper-actions .btn.primary{color:#2a1400;font-family:var(--display);letter-spacing:.04em;background:linear-gradient(#ffe08a,#ffb341 55%,#ff8a2a);border:none;font-weight:800}.name-tag{opacity:.55;font-weight:inherit;letter-spacing:.01em;margin-left:1px;font-size:.86em}.keeper-form .nick-tag{color:var(--muted);font-variant-numeric:tabular-nums;font-weight:900;font-size:calc(15px * var(--s));flex:none}.acct-field input.code{text-align:center;letter-spacing:.4em;font-size:calc(20px * var(--s));font-variant-numeric:tabular-nums}.acct-field .btn.primary{color:#2a1400;font-family:var(--display);letter-spacing:.04em;box-shadow:0 calc(4px * var(--s)) calc(20px * var(--s)) #ff8c2859;background:linear-gradient(#ffe08a,#ffb341 55%,#ff8a2a);border:none;flex:none;font-weight:800}.acct-carry{font-size:calc(12px * var(--s));margin:calc(14px * var(--s)) 0 0!important}.acct-links{justify-content:center;gap:calc(18px * var(--s));margin-top:calc(10px * var(--s));flex-wrap:wrap;display:flex}button.link{padding:calc(4px * var(--s));cursor:pointer;color:#d9ccff;font-weight:800;font-size:calc(13px * var(--s));text-underline-offset:3px;background:0 0;border:none;text-decoration:underline}.acct-msg{padding:calc(8px * var(--s)) calc(12px * var(--s));border-radius:calc(12px * var(--s));font-size:calc(13px * var(--s));background:#ffd36b1a;border:1px solid #ffd36b4d;margin:calc(12px * var(--s)) 0 0!important;color:#ffe7b0!important}.acct-stats{gap:calc(16px * var(--s));margin-bottom:calc(10px * var(--s));flex-wrap:wrap}.acct-sync{align-items:center;gap:calc(7px * var(--s));font-size:calc(12.5px * var(--s));display:inline-flex;margin:0 0 calc(12px * var(--s))!important}.acct-sync .dot{width:calc(8px * var(--s));height:calc(8px * var(--s));background:var(--ok);box-shadow:0 0 calc(8px * var(--s)) var(--ok);border-radius:50%}.acct-sync.saving .dot{background:var(--gold);box-shadow:0 0 calc(8px * var(--s)) var(--gold);animation:1s ease-in-out infinite breathe}.acct-sync.offline .dot{box-shadow:none;background:#ff8aa0}.acct-actions{gap:calc(8px * var(--s));grid-template-columns:1fr 1fr;display:grid}.acct-actions .btn.danger{grid-column:1/-1}.acct-actions.stacked{grid-template-columns:1fr}.acct-actions .btn{height:calc(46px * var(--s));font-size:calc(14px * var(--s))}.acct-foot{margin-top:calc(14px * var(--s));justify-content:center;display:flex}.acct-foot .btn{min-width:calc(140px * var(--s));height:calc(44px * var(--s))}.acct-legal{margin-top:calc(10px * var(--s));font-size:calc(11.5px * var(--s));color:var(--muted);font-weight:700}.acct-legal a{color:#cbbfe8}@media (max-width:420px){.acct-field{flex-direction:column}.acct-field .btn.primary{width:100%}.acct-chip-txt small{display:none}}@media (max-height:520px) and (orientation:landscape){.title-account{top:calc(8px + env(safe-area-inset-top));left:calc(8px + env(safe-area-inset-left))}.acct-chip{height:36px;padding-right:12px}.acct-chip-txt small{display:none}.modal.account{width:min(100%,560px);padding:14px 16px}.modal.account p{margin-bottom:10px;font-size:13px}.acct-medal.lg{display:none}.acct-providers{flex-direction:row}.acct-provider,.acct-field input,.acct-field .btn.primary,.acct-foot .btn{height:42px}.acct-or{margin:8px 0}}.tier-medal{align-items:center;gap:calc(2px * var(--s));filter:drop-shadow(0 0 calc(6px * var(--s)) color-mix(in srgb, var(--c) 60%, transparent));flex-direction:column;flex:none;display:inline-flex;position:relative}.tier-medal .ha-rim{width:calc(26px * var(--s));height:calc(30px * var(--s));background:linear-gradient(160deg, #fff, var(--c) 45%, color-mix(in srgb, var(--c) 35%, #120a26))}.tier-medal .ha-core{color:var(--c)}.tier-medal .ha-core svg{width:60%;height:60%}.tier-medal .tq{font-weight:900;font-size:calc(13px * var(--s));color:var(--c);text-shadow:0 0 calc(6px * var(--s)) var(--c)}.tier-medal.lg .ha-rim{width:calc(52px * var(--s));height:calc(60px * var(--s));padding:calc(3px * var(--s))}.tier-medal.lg .tq{font-size:calc(24px * var(--s))}.tier-medal .tpip{gap:calc(2px * var(--s));display:flex}.tier-medal .tpip i{width:calc(5px * var(--s));height:calc(5px * var(--s));background:#ffffff29;border-radius:50%}.tier-medal .tpip i.on{background:var(--c);box-shadow:0 0 calc(4px * var(--s)) var(--c)}.tier-medal.lg .tpip i{width:calc(7px * var(--s));height:calc(7px * var(--s))}.tier-medal.tm-moonlit .ha-core{background:radial-gradient(circle at 50% 38%,#3d3470 0%,#150d2c 62%,#0d0820 100%)}.tier-medal.placing{filter:drop-shadow(0 0 calc(5px * var(--s)) #cbb8ff73)}.ranked-pair{gap:calc(10px * var(--s));grid-template-columns:minmax(0,1fr) auto;display:grid}.menu .btn.ranked{justify-content:flex-start;gap:calc(12px * var(--s));padding:0 calc(14px * var(--s));text-align:left;background:linear-gradient(100deg,#402678eb,#180f32eb 70%);border-color:#c79bff73}.menu .btn.ranked .stack{min-width:0}.menu .btn.ranked small{white-space:nowrap;text-overflow:ellipsis;overflow:hidden}.rk-slot{min-width:calc(26px * var(--s));place-items:center;display:grid}.menu .btn.ladder-btn{width:calc(56px * var(--s));color:var(--gold);padding:0}.btn.ladder-btn svg{width:calc(22px * var(--s));height:calc(22px * var(--s))}.rank-card{align-items:center;gap:calc(14px * var(--s));text-align:left;margin:calc(12px * var(--s)) auto calc(6px * var(--s));max-width:calc(420px * var(--s));padding:calc(12px * var(--s)) calc(16px * var(--s));border-radius:calc(18px * var(--s));border:1px solid color-mix(in srgb, var(--c) 45%, transparent);background:radial-gradient(120% 140% at 0% 50%, color-mix(in srgb, var(--c) 18%, transparent), #0705148c 65%);animation:.6s cubic-bezier(.2,.9,.3,1.2) .2s both rise;display:flex}.rk-body{flex:1;min-width:0}.rk-head{font-family:var(--display);letter-spacing:.05em;font-weight:800;font-size:calc(16px * var(--s))}.rk-head b{color:var(--c)}.rk-why{color:var(--muted);font-weight:700;font-size:calc(12.5px * var(--s));margin-top:calc(2px * var(--s))}.rk-delta{font-weight:900;font-size:calc(26px * var(--s));font-variant-numeric:tabular-nums;color:var(--muted)}.rank-card.up .rk-delta{color:var(--ok);text-shadow:0 0 calc(12px * var(--s)) #7dffb073}.rank-card.down .rk-delta{color:#ff8a9e}.ri-medals{justify-content:center;gap:calc(8px * var(--s));margin-bottom:calc(10px * var(--s));display:flex}.ri-medals>span{animation:.6s cubic-bezier(.2,.9,.3,1.2) both rise;animation-delay:calc(var(--i) * 60ms);transform:translateY(calc((var(--i) - 2.5) * (var(--i) - 2.5) * 1.6px))}.ri-medals .tier-medal .ha-rim{width:calc(34px * var(--s));height:calc(39px * var(--s))}.ranked-intro p b{color:var(--gold)}.ri-note{font-size:calc(12px * var(--s));margin-top:calc(10px * var(--s))!important}.ranked-busy{width:auto;padding:calc(22px * var(--s)) calc(30px * var(--s))}.ranked-busy p{margin:calc(8px * var(--s)) 0 0}.rb-glow{color:var(--gold);animation:1.6s ease-in-out infinite ha-glow}.rb-glow svg{width:calc(40px * var(--s));height:calc(40px * var(--s));filter:drop-shadow(0 0 calc(10px * var(--s)) #ffbe50b3)}@media (max-width:420px){.ladder li{grid-template-columns:calc(22px * var(--s)) auto minmax(0, 1fr) auto;gap:8px;padding:7px 10px;font-size:13px}.ladder .lruns{display:none}.rank-card{gap:10px;padding:10px 12px}.rk-delta{font-size:22px}}@media (max-height:520px) and (orientation:landscape){.title-screen .menu .btn.ladder-btn{width:46px}.ladder-modal{padding:14px 18px}.ladder-modal h2{font-size:20px}.ladder-modal>p:not(.ladder-you):not(.ladder-empty){display:none}.ladder-modal .row{margin-top:10px}.ladder-modal .row .btn{height:42px}.ladder{max-height:calc(100vh - 190px)}.ladder li{padding:5px 12px}}@media (prefers-reduced-motion:reduce){.rank-card,.ri-medals>span,.rb-glow{animation:none}}.ri-medals .tier-medal .tpip,.title-boards{display:none}@media (min-width:1100px) and (min-height:620px){.title-boards{right:calc(24px * var(--s) + env(safe-area-inset-right));width:calc(286px * var(--s));gap:calc(8px * var(--s));text-align:left;padding:calc(14px * var(--s));border-radius:calc(20px * var(--s));background:var(--glass);border:1px solid var(--line-strong);-webkit-backdrop-filter:blur(calc(10px * var(--s)));box-shadow:0 calc(10px * var(--s)) calc(36px * var(--s)) #00000073;flex-direction:column;animation:1.2s .3s both fadein;display:flex;position:absolute;top:50%;transform:translateY(-56%)}.title-boards .board-list,.title-boards .board-empty{min-height:calc(8 * 34px * var(--s))}}.board-tabs{gap:calc(3px * var(--s));padding:calc(3px * var(--s));border-radius:calc(12px * var(--s));border:1px solid var(--line);background:#07051473;grid-template-columns:1fr 1fr;display:grid}.board-tabs button{font:inherit;font-weight:900;font-size:calc(12px * var(--s));color:var(--muted);padding:calc(7px * var(--s)) calc(6px * var(--s));border-radius:calc(9px * var(--s));cursor:pointer;white-space:nowrap;text-overflow:ellipsis;background:0 0;border:none;overflow:hidden}.board-tabs button.on{color:var(--gold);background:#ffd36b29}.board-list{flex-direction:column;margin:0;padding:0;list-style:none;display:flex}.board-list li{grid-template-columns:calc(22px * var(--s)) minmax(0, 1fr) auto;align-items:center;gap:calc(8px * var(--s));min-height:calc(34px * var(--s));padding:0 calc(6px * var(--s));border-bottom:1px solid var(--line);font-weight:800;font-size:calc(13px * var(--s));display:grid}.board-list li:last-child{border-bottom:none}.board-list li.you{border-radius:calc(8px * var(--s));background:#ffd36b1a}.board-list .bpos{text-align:right;color:var(--muted);font-variant-numeric:tabular-nums;font-weight:900}.board-list li:nth-child(-n+3) .bpos{color:var(--gold);text-shadow:0 0 calc(8px * var(--s)) #ffd36b99}.board-list .bname{align-items:center;gap:calc(6px * var(--s));white-space:nowrap;text-overflow:ellipsis;min-width:0;display:flex;overflow:hidden}.board-list .bname img.flag{flex:none;margin-right:0}.board-list .bname em{color:var(--gold);font-size:.8em;font-style:normal}.board-list .bname .tier-medal{margin:-4px 0;transform:scale(.8)}.board-list .bval{align-items:baseline;gap:calc(3px * var(--s));font-variant-numeric:tabular-nums;display:flex}.board-list .bval b{color:var(--gold);font-size:calc(14px * var(--s))}.board-list .bval small{color:var(--muted);font-size:calc(11px * var(--s))}.board-list .bhearts{color:#ff8aa0;font-size:calc(11.5px * var(--s));margin-left:calc(5px * var(--s))}.board-list .btier{font-size:calc(12px * var(--s))}.board-list li.skel span{height:calc(10px * var(--s));border-radius:calc(6px * var(--s));background:linear-gradient(90deg,#ffffff0a,#ffffff1c,#ffffff0a) 0 0/200% 100%;grid-column:1/-1;animation:1.4s linear infinite shimmer;display:block}@keyframes shimmer{0%{background-position:200% 0}to{background-position:-200% 0}}.board-empty{text-align:center;padding:calc(14px * var(--s)) calc(8px * var(--s));color:var(--muted);font-weight:700;font-size:calc(12.5px * var(--s));justify-content:center;align-items:center;margin:0;line-height:1.4;display:flex}.board-more{font:inherit;padding:calc(4px * var(--s));cursor:pointer;color:#d9ccff;font-weight:800;font-size:calc(12.5px * var(--s));text-underline-offset:3px;background:0 0;border:none;align-self:center;text-decoration:underline}.boards-modal{width:min(100%, calc(540px * var(--s)))}.boards-modal .board-tabs{max-width:calc(400px * var(--s));margin:0 auto calc(10px * var(--s))}.board-about{font-size:calc(13px * var(--s))}.board-you{font-weight:800;font-size:calc(13px * var(--s));color:var(--gold)!important}.board-scroll{min-height:calc(8 * 34px * var(--s) + 10px);max-height:min(52vh, calc(440px * var(--s)));scrollbar-width:thin;scrollbar-color:var(--line-strong) transparent;text-align:left;margin-bottom:calc(12px * var(--s));padding:calc(4px * var(--s)) calc(6px * var(--s));border-radius:calc(14px * var(--s));border:1px solid var(--line);background:#07051459;flex-direction:column;display:flex;overflow-y:auto}.board-scroll .board-empty{flex:1}
