@font-face{font-family:Chakra Petch;font-style:normal;font-weight:500;font-display:swap;src:url(../fonts/chakra-petch-500-latin.woff2)format("woff2");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Chakra Petch;font-style:normal;font-weight:600;font-display:swap;src:url(../fonts/chakra-petch-600-latin.woff2)format("woff2");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Chakra Petch;font-style:normal;font-weight:700;font-display:swap;src:url(../fonts/chakra-petch-700-latin.woff2)format("woff2");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Inter;font-style:normal;font-weight:400 700;font-display:swap;src:url(../fonts/inter-var-latin.woff2)format("woff2");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Space Grotesk;font-style:normal;font-weight:500 700;font-display:swap;src:url(../fonts/space-grotesk-var-latin.woff2)format("woff2");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}:root{--ink-950:#05080d;--ink-900:#0a1018;--ink-800:#101a27;--ink-700:#182536;--ink-600:#263850;--brand:#2aa9f5;--brand-deep:#1b74d6;--brand-400:#6ecbff;--cyan:#22e6ff;--lime:#a6ef3c;--steel:#9fc4ea;--live:#ff3b4e;--gold:#ffd166;--text:#eaf2fa;--dim:#8ea3b8;--edge:#9fc4ea29;--plate:linear-gradient(180deg, #16263c, #0a121e);--font:"Inter", "Segoe UI Variable", "Segoe UI", system-ui, sans-serif;--display:"Chakra Petch", "Space Grotesk", "Bahnschrift", "Segoe UI Variable Display", system-ui, sans-serif}*{box-sizing:border-box}html,body{background:var(--ink-950);height:100%;color:var(--text);font-family:var(--font);-webkit-user-select:none;user-select:none;margin:0;overflow:hidden}button{color:inherit;font-family:inherit}::selection{color:#fff;background:#2aa9f580}#app{position:fixed;inset:0}#view,#view canvas{width:100%;height:100%;display:block;position:absolute;inset:0}#labels{pointer-events:none;position:absolute;inset:0;overflow:hidden}#vignette{pointer-events:none;background:radial-gradient(#0000 55%,#00040a99 100%);position:absolute;inset:0}.hidden{display:none!important}.muted{color:var(--dim);font-size:12.5px;line-height:1.45}.eyebrow{font:700 10px var(--display);letter-spacing:.28em;text-transform:uppercase;color:var(--cyan)}.gradient-text{background:linear-gradient(100deg,#9fc4ea 0%,#2aa9f5 16%,#22e6ff 33%,#a6ef3c 50%,#22e6ff 67%,#2aa9f5 84%,#9fc4ea 100%) 0 0/200% 100% repeat-x;color:#0000;-webkit-background-clip:text;background-clip:text;animation:9s linear infinite shine}@keyframes shine{0%{background-position:0 0}to{background-position:200% 0}}@media (prefers-reduced-motion:reduce){.gradient-text{animation:none}}.panel,.btn,.chip,.mbtn,.cards button,.gopt,.chips button,.act,.seg button,.back{clip-path:polygon(var(--cut) 0, 100% 0, 100% calc(100% - var(--cut)), calc(100% - var(--cut)) 100%, 0 100%, 0 var(--cut))}.panel{--cut:14px;isolation:isolate;background:linear-gradient(135deg, var(--brand), #2aa9f538 55%, var(--cyan));position:relative}.panel:before{content:"";z-index:-1;background:var(--plate);clip-path:polygon(calc(var(--cut) - 1px) 0, 100% 0, 100% calc(100% - var(--cut) + 1px), calc(100% - var(--cut) + 1px) 100%, 0 100%, 0 calc(var(--cut) - 1px));position:absolute;inset:2px}.panel:after{content:"";left:var(--cut);background:var(--cyan);width:34px;height:3px;box-shadow:0 0 10px var(--cyan);pointer-events:none;position:absolute;top:2px}.btn{--cut:9px;cursor:pointer;color:var(--text);font:700 14px var(--display);letter-spacing:.1em;text-transform:uppercase;background:linear-gradient(#25405f,#172a42);border:0;border-bottom:4px solid #00000080;padding:13px 24px 11px;transition:transform 80ms,filter .15s}.btn:hover:not(:disabled){filter:brightness(1.25);transform:translateY(-1px)}.btn:active:not(:disabled){border-bottom-width:1px;padding-bottom:14px;transform:translateY(3px)}.btn:disabled{opacity:.4;cursor:not-allowed}.btn.sm{border-bottom-width:3px;padding:8px 14px 6px;font-size:12px}.btn.big{letter-spacing:.16em;padding:18px 40px 15px;font-size:19px}.btn.primary{color:#03121d;background:linear-gradient(180deg, var(--brand-400), var(--brand) 60%, #1b8ee0);border-bottom-color:#0d5a99}.btn.primary.alt{background:linear-gradient(180deg, #d7ff7a, var(--lime) 55%, #6fc92a);border-bottom-color:#3d7d12}.btn.primary.pulse{animation:1.2s infinite glowpulse}.btn.ghost{background:linear-gradient(#1c2f48,#111e30)}@keyframes glowpulse{50%{filter:brightness(1.4)saturate(1.2)}}.chip{--cut:8px;cursor:pointer;font:700 13px var(--display);color:var(--text);background:linear-gradient(#1d3350,#101c2e);border:0;border-bottom:3px solid #00000080;align-items:center;gap:8px;padding:7px 14px 5px;transition:filter .15s,transform 80ms;display:inline-flex}.chip:hover{filter:brightness(1.3)}.chip:active{border-bottom-width:1px;transform:translateY(2px)}.chip.sq{justify-content:center;width:40px;height:38px;padding:0 0 2px;font-size:16px}.av{width:24px;height:24px;font:700 12px var(--display);color:#03121d;background:linear-gradient(135deg, var(--brand), var(--lime));clip-path:polygon(6px 0,100% 0,100% calc(100% - 6px),calc(100% - 6px) 100%,0 100%,0 6px);place-items:center;display:grid}.dot{background:#5b6b7d;width:9px;height:9px;transform:rotate(45deg)}.dot.synced{background:var(--lime);box-shadow:0 0 10px var(--lime)}.dot.saving{background:var(--gold);box-shadow:0 0 10px var(--gold);animation:.8s infinite blink}.dot.error,.dot.conflict{background:var(--live);box-shadow:0 0 10px var(--live)}@keyframes blink{50%{opacity:.3}}.tlabel{font:700 13px var(--display);color:#fff;border:2px solid color-mix(in srgb, var(--c,#888) 85%, transparent);text-shadow:0 1px 2px #000;will-change:transform;white-space:nowrap;box-shadow:0 0 14px color-mix(in srgb, var(--c,#888) 40%, transparent);background:#050a10c7;border-radius:4px;align-items:center;gap:4px;padding:1px 9px 1px 8px;display:flex;position:absolute;top:0;left:0}.tlabel.mine{background:#061624e6}.tlabel .pips{color:var(--gold);letter-spacing:1px;font-size:8px}.tlabel .pips:empty,.tlabel .comp:empty{display:none}.tlabel .comp{font:600 9.5px var(--font);color:var(--steel);letter-spacing:.04em}.rlabel{font:700 34px var(--display);letter-spacing:.35em;text-transform:uppercase;white-space:nowrap;text-shadow:0 2px 20px #000000b3;pointer-events:none;will-change:transform;position:absolute;top:0;left:0}.ftext{font:700 24px var(--display);text-shadow:0 2px #000,0 0 10px #000;pointer-events:none;animation:1.3s ease-out forwards rise;position:absolute;transform:translate(-50%,-50%)}.ftext.def{color:#ff7b86}.ftext.atk{color:#ffd166;font-size:18px}@keyframes rise{0%{opacity:0;transform:translate(-50%,-30%)scale(.6)}15%{opacity:1;transform:translate(-50%,-60%)scale(1.15)}to{opacity:0;transform:translate(-50%,-190%)scale(1)}}#hud>*{position:absolute}#left{flex-direction:column;gap:10px;width:250px;display:flex;top:14px;left:14px}#left>*{position:relative}#brandmini{--cut:12px;align-items:center;gap:10px;padding:9px 14px;display:flex}#brandmini img{width:30px;height:30px}#brandmini .eyebrow{font-size:8.5px;display:block}#brandmini b{font:700 17px var(--display);letter-spacing:.14em}#board{padding:12px 14px 10px}#board h3{font:700 11px var(--display);letter-spacing:.3em;color:var(--steel);margin:2px 0 8px}.row{font-size:13px;font-family:var(--display);grid-template-columns:12px 1fr auto auto;align-items:center;gap:8px;padding:5px 6px;font-weight:600;display:grid;position:relative}.row.turn{box-shadow:inset 3px 0 0 var(--cyan);background:linear-gradient(90deg,#22e6ff38,#0000)}.row.dead{opacity:.35;text-decoration:line-through}.row .dot2{background:var(--c);width:10px;height:10px;box-shadow:0 0 10px var(--c);transform:rotate(45deg)}.row .nm{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.row.me .nm{color:var(--lime);font-weight:700}.row .pc{font-variant-numeric:tabular-nums;color:var(--steel);font-size:12px}.row .meter{background:#ffffff14;grid-column:2/5;height:4px;margin-top:-2px}.row .meter i{background:var(--c);height:100%;box-shadow:0 0 6px var(--c);transition:width .4s;display:block}.row .ally{border:1px solid var(--edge);cursor:pointer;background:#14253a;padding:0 5px;font-size:12px}.row .ally:hover{background:#1f3855}.row .ally.on{border-color:var(--lime);background:#a6ef3c4d}.row .ally.hide{visibility:hidden}#turnbar{--cut:16px;align-items:center;gap:20px;padding:10px 20px;display:flex;top:14px;left:50%;transform:translate(-50%)}.round{flex-direction:column;align-items:center;min-width:46px;display:flex}.round b{font:700 26px var(--display);color:var(--gold);line-height:1}#order{gap:5px;display:flex}#order i{background:var(--c);opacity:.45;width:12px;height:12px;transition:all .25s;transform:rotate(45deg)scale(.85)}#order i.cur{opacity:1;box-shadow:0 0 12px var(--c);transform:rotate(45deg)scale(1.3)}#order i.dead{opacity:.12}#steps{font:700 11px var(--display);letter-spacing:.14em;text-transform:uppercase;align-items:center;display:flex}#steps i{display:none}#steps span{white-space:nowrap;color:var(--dim);clip-path:polygon(0 0,calc(100% - 11px) 0,100% 50%,calc(100% - 11px) 100%,0 100%,11px 50%);background:#121f31;margin-left:-8px;padding:8px 18px 8px 22px}#steps span:first-child{clip-path:polygon(0 0,calc(100% - 11px) 0,100% 50%,calc(100% - 11px) 100%,0 100%);margin-left:0;padding-left:16px}#steps span.on{color:#03121d;background:linear-gradient(180deg, var(--brand-400), var(--cyan))}#steps span.done{color:var(--steel);background:#1b3350}.res{gap:12px;display:flex}.res>div{white-space:nowrap;border-left:3px solid var(--gold);background:linear-gradient(90deg,#ffd1661a,#0000);flex-direction:column;min-width:70px;padding:3px 10px;display:flex}.res>div:last-child{border-left-color:var(--lime);background:linear-gradient(90deg,#a6ef3c1a,#0000)}.res .k{font:700 9px var(--display);letter-spacing:.22em;text-transform:uppercase;color:var(--dim)}.res b{font:700 22px var(--display);font-variant-numeric:tabular-nums;line-height:1.1}#gold{color:var(--gold)}#pool{color:var(--lime)}#pool.zero{color:var(--dim)}.res em{font:600 11px var(--display);color:#8fe3a6;font-style:normal}#nextBtn{white-space:nowrap;min-width:140px;line-height:1.15}#topright{align-items:center;gap:8px;display:flex;top:14px;right:14px}#info{width:266px;padding:14px 16px;top:64px;right:14px}.tname{font:700 20px var(--display);text-transform:uppercase;letter-spacing:.04em;align-items:center;gap:8px;display:flex}.tname i{background:var(--c,#888);width:11px;height:11px;box-shadow:0 0 10px var(--c,#888);transform:rotate(45deg)}.trow{font:600 12px var(--display);color:var(--dim);justify-content:space-between;margin-top:4px;display:flex}.units{gap:6px;margin-top:12px;display:flex}.units>div{border-bottom:3px solid var(--brand);background:#0b1624;flex:1;justify-content:center;align-items:center;gap:6px;padding:7px 4px;display:flex}.units span{font-size:16px}.units b{font:700 18px var(--display);font-variant-numeric:tabular-nums}.bpips{flex-wrap:wrap;gap:5px;margin-top:9px;display:flex}.bpips span{font:600 11px var(--display);border-left:3px solid var(--brand);color:var(--brand-400);background:#2aa9f529;padding:3px 8px}#actions .eyebrow{margin:12px 0 6px;display:block}#actions small{text-transform:none;letter-spacing:0;color:var(--dim);font-weight:400}.agrid{grid-template-columns:1fr 1fr;gap:6px;display:grid}.act{--cut:7px;text-align:left;cursor:pointer;background:linear-gradient(#1d3350,#112038);border:0;border-bottom:3px solid #00000080;grid-template-rows:auto auto;grid-template-columns:auto 1fr;align-items:center;column-gap:7px;padding:7px 9px 5px;transition:filter .15s,transform 80ms;display:grid}.act:hover:not(:disabled){filter:brightness(1.35);transform:translateY(-1px)}.act:active:not(:disabled){transform:translateY(2px)}.act:disabled{opacity:.38;cursor:not-allowed}.act .ico{grid-row:1/3;font-size:20px}.act .nm{font:700 12.5px var(--display);text-transform:uppercase}.act .cost{font:600 11px var(--display);color:var(--gold)}.act .cost:before{content:"◆ ";font-size:8px}#dock{--cut:16px;min-width:540px;padding:14px 20px;bottom:18px;left:50%;transform:translate(-50%)}.dsec{align-items:center;gap:16px;display:none}#dock[data-s=reinforce] #dReinforce,#dock[data-s=attack] #dAttack,#dock[data-s=fortify] #dFortify,#dock[data-s=ai] #dWait{display:flex}.dtitle{flex-direction:column;gap:2px;display:flex}.dtitle b{font:700 14px var(--display);letter-spacing:.03em}.chips{gap:4px;display:flex}.chips button{--cut:6px;cursor:pointer;font:700 12px var(--display);background:linear-gradient(#1d3350,#112038);border:0;border-bottom:3px solid #00000080;padding:7px 13px 5px}.chips button:hover{filter:brightness(1.3)}.chips button.on{background:linear-gradient(180deg, var(--brand-400), var(--brand));color:#03121d}.force{width:270px}.flabel{justify-content:space-between;align-items:baseline;display:flex}.flabel b{font:700 22px var(--display);color:var(--gold)}.fsub{color:var(--dim);max-width:280px;min-height:16px;margin-top:3px;font-size:12px}input[type=range]{width:100%;accent-color:var(--cyan);height:18px;margin:6px 0 0}.odds{width:150px}.odds b{font:700 26px var(--display);line-height:1.1;display:block}.odds small{color:var(--dim);font-size:11px}.obar{background:#ffffff1a;height:7px;margin:4px 0 3px;overflow:hidden;transform:skew(-20deg)}.obar i{background:linear-gradient(90deg, var(--live), var(--gold), var(--lime));width:0;height:100%;transition:width .2s;display:block}#btnMissile em{color:var(--gold);margin-left:4px;font-style:normal}#btnMissile.on{background:linear-gradient(#ff6b78,#c4202f)}#dWait b{font:700 15px var(--display)}#battle{z-index:4;--cut:18px;grid-template-columns:1fr auto 1fr;align-items:center;gap:20px;min-width:540px;padding:14px 24px;animation:.25s ease-out pop;display:grid;top:92px;left:50%;transform:translate(-50%)}@keyframes pop{0%{opacity:0;transform:translate(-50%)translateY(-10px)scale(.96)}}.bside b{font:700 16px var(--display);text-transform:uppercase;letter-spacing:.06em;display:block}.bside.r{text-align:right}.bside.r .dice{justify-content:flex-end}.bunits{color:var(--steel);margin:2px 0 6px;font-size:12px}.dice{gap:6px;min-height:44px;display:flex}.die{width:40px;height:40px;font:700 22px var(--display);color:#03121d;clip-path:polygon(7px 0,100% 0,100% calc(100% - 7px),calc(100% - 7px) 100%,0 100%,0 7px);background:linear-gradient(145deg,#fff,#c6d6e6);border-bottom:4px solid #00000059;place-items:center;display:grid}.die.atk{background:linear-gradient(145deg, #bfe8ff, var(--brand))}.die.def{background:linear-gradient(145deg,#ffd0d4,#ff6b78)}.die.win{filter:drop-shadow(0 0 6px var(--lime)) brightness(1.15);border-bottom-color:var(--lime)}.die.roll{animation:.12s infinite shake}@keyframes shake{25%{transform:rotate(-12deg)translateY(-2px)}75%{transform:rotate(12deg)translateY(2px)}}.bvs{text-align:center}.bvs span{font:700 18px var(--display);letter-spacing:.3em;color:var(--gold);font-style:italic}#bRes{font:700 15px var(--display);letter-spacing:.06em;min-height:20px;margin-top:6px}#bRes.cap{color:var(--lime)}#bRes.held{color:#ff8b95}#log{pointer-events:none;flex-direction:column;gap:4px;width:270px;display:flex;bottom:18px;left:14px}.msg{font:600 12.5px var(--display);border-left:4px solid var(--c,#888);background:linear-gradient(90deg,#060c14e0,#060c1480);padding:6px 10px;transition:opacity 1s;animation:.35s ease-out slide}.msg.warn{background:linear-gradient(90deg,#5a3408e6,#46280880)}.msg.bad{background:linear-gradient(90deg,#6e101ce6,#560e1680)}.msg.good{background:linear-gradient(90deg,#0a4a34e6,#0a3a2a80)}@keyframes slide{0%{opacity:0;transform:translate(-20px)}}#toast{border:2px solid var(--brand);font:600 13px var(--display);letter-spacing:.03em;opacity:0;pointer-events:none;white-space:nowrap;background:#08101af5;border-left-width:6px;padding:9px 20px;transition:opacity .3s;bottom:118px;left:50%;transform:translate(-50%)}#toast.show{opacity:1}#help{color:var(--dim);--cut:10px;max-width:250px;padding:10px 14px;font-size:11px;line-height:1.5;bottom:18px;right:14px}#fps{color:var(--lime);z-index:6;background:#0009;padding:3px 8px;font:600 11px Cascadia Mono,Consolas,monospace;position:absolute;bottom:76px;right:14px}#proposal{font:600 15px var(--display);z-index:6;align-items:center;gap:22px;padding:16px 24px;animation:1.4s infinite glowpulse;display:flex;position:absolute;top:96px;left:50%;transform:translate(-50%)}.pbtns{gap:8px;display:flex}#spawnBanner{text-align:center;--cut:18px;flex-direction:column;gap:4px;padding:16px 36px;animation:2s infinite glowpulse;display:flex;position:absolute;top:60px;left:50%;transform:translate(-50%)}#spawnBanner b{font:700 19px var(--display);letter-spacing:.3em;color:var(--cyan)}#spawnBanner span{color:var(--dim);font-size:13px}#gate{z-index:30;background:radial-gradient(#03080ec7,#020408f5);place-items:center;display:grid;position:absolute;inset:0;overflow:auto}.gate-box{--cut:22px;text-align:center;width:min(520px,92vw);padding:30px 32px 26px;animation:.45s cubic-bezier(.2,.9,.3,1.2) boxin}@keyframes boxin{0%{opacity:0;transform:translateY(24px)scale(.96)}}.gate-logo{opacity:.9;height:44px;margin-bottom:6px}.gate-box .logo{font-size:58px}.gate-box .eyebrow{margin:6px 0 20px}.gate-opts{flex-direction:column;gap:10px;display:flex}.gopt{--cut:14px;text-align:left;cursor:pointer;background:linear-gradient(#1f3652,#121f33);border:0;border-bottom:4px solid #00000080;align-items:center;gap:16px;padding:16px 20px 14px;transition:transform .1s,filter .15s;display:flex}.gopt i{font-size:28px;font-style:normal}.gopt b{font:700 18px var(--display);text-transform:uppercase;letter-spacing:.08em;display:block}.gopt small{font:500 12px var(--font);color:var(--dim);margin-top:3px;display:block}.gopt:hover{filter:brightness(1.25);transform:translateY(-2px)}.gopt:active{border-bottom-width:1px;transform:translateY(2px)}.gopt.primary{background:linear-gradient(180deg, var(--brand-400), var(--brand) 60%, #1b8ee0);color:#03121d;border-bottom-color:#0d5a99}.gopt.primary small{color:#0b3a5c}.gate-foot{color:var(--dim);min-height:14px;margin-top:14px;font-size:12px}#menu,#result{background:linear-gradient(90deg,#03060af5 0%,#03060ac7 40%,#0000 75%);align-items:center;padding-left:5vw;display:flex;position:absolute;inset:0;overflow:auto}#menu:after{content:"";background:linear-gradient(180deg, var(--cyan), var(--brand), var(--lime));width:6px;box-shadow:0 0 24px var(--cyan);position:absolute;top:0;bottom:0;left:0}#result{background:#03060ad1;justify-content:center;padding:0}.menu-card{width:min(560px,92vw);padding:24px 0}.arcade-link{opacity:.9;align-items:center;gap:12px;margin-bottom:8px;text-decoration:none;display:inline-flex}.arcade-link img{filter:drop-shadow(0 4px 18px #2aa9f559);height:52px}.arcade-link:hover{opacity:1}.logo{font:700 82px/1 var(--display);letter-spacing:.05em;filter:drop-shadow(0 6px 36px #2aa9f566);padding-right:.1em;font-style:italic}.tag{color:var(--steel);font:600 13px var(--display);letter-spacing:.22em;text-transform:uppercase;margin:8px 0 18px}.acct-row{--cut:12px;flex-wrap:wrap;align-items:center;gap:12px 16px;max-width:420px;margin-bottom:10px;padding:12px 18px;display:flex}.statline{font:600 11px var(--display);letter-spacing:.06em;text-transform:uppercase;color:var(--dim);flex-wrap:wrap;flex:160px;gap:4px 14px;display:flex}.statline b{color:var(--text);font:700 16px var(--display);margin-right:4px}.statline.big{justify-content:center;margin:4px 0 22px;font-size:13px}.daily{--cut:12px;max-width:420px;font:600 13.5px var(--display);justify-content:space-between;align-items:center;gap:12px;margin-bottom:12px;padding:12px 18px;display:flex}.daily b{color:var(--lime)}.mpanel{animation:.28s ease-out panelin}@keyframes panelin{0%{opacity:0;transform:translate(-22px)}}.mlist{flex-direction:column;gap:8px;max-width:420px;margin-top:14px;display:flex}.mbtn{--cut:14px;border:0;border-left:6px solid var(--ink-600);cursor:pointer;text-align:left;width:100%;font:700 20px var(--display);letter-spacing:.1em;text-transform:uppercase;background:linear-gradient(90deg,#172b44,#0c1624eb);align-items:center;gap:14px;padding:14px 20px 12px 18px;transition:transform .14s,border-color .14s,background .14s;display:flex}.mbtn i{text-align:center;width:28px;font-size:20px;font-style:normal}.mbtn em{font:600 10px var(--display);letter-spacing:.16em;color:var(--dim);margin-left:auto;font-style:normal}.mbtn:hover{border-left-color:var(--cyan);background:linear-gradient(90deg,#1f5f95,#0e1c2eeb);transform:translate(12px)}.mbtn:active{transform:translate(12px)scale(.98)}.mbtn.primary{border-left-color:var(--lime);background:linear-gradient(90deg, var(--brand), #1b74d6 75%, #1b74d680);color:#03121d}.mbtn.primary em{color:#07304f}.mbtn.primary:hover{background:linear-gradient(90deg, var(--brand-400), var(--brand) 75%, #2aa9f580)}.phead{align-items:center;gap:16px;margin:16px 0 8px;display:flex}.phead h2{font:700 32px var(--display);text-transform:uppercase;letter-spacing:.08em;margin:0;font-style:italic}.back{--cut:8px;cursor:pointer;font:700 12px var(--display);letter-spacing:.12em;text-transform:uppercase;background:linear-gradient(#1d3350,#112038);border:0;border-bottom:3px solid #00000080;padding:7px 14px 5px}.back:hover{filter:brightness(1.3)}.optblock{margin:14px 0 0}.optblock .eyebrow{margin-bottom:7px;display:block}.cards{gap:8px;max-width:520px;display:flex}.cards button{--cut:12px;text-align:left;cursor:pointer;background:linear-gradient(#1a2e48,#101c2e);border:0;border-bottom:4px solid #00000080;flex:1;padding:13px 14px 11px;transition:transform .1s,filter .15s}.cards button b{font:700 19px var(--display);text-transform:uppercase;letter-spacing:.06em;display:block}.cards button small{font:500 11px var(--font);color:var(--dim);margin-top:2px;display:block}.cards button:hover{filter:brightness(1.3);transform:translateY(-2px)}.cards button.on{background:linear-gradient(180deg, var(--brand-400), var(--brand) 60%, #1b8ee0);color:#03121d;border-bottom-color:#0d5a99}.cards button.on small{color:#0b3a5c}.cards button{position:relative}.cards button.on:after{content:"✓";font:700 18px var(--display);position:absolute;top:10px;right:12px}.btns{flex-wrap:wrap;align-items:center;gap:10px;margin:24px 0 20px;display:flex}.statline.tiles{grid-template-columns:repeat(4,1fr);gap:8px;max-width:420px;margin-bottom:10px;display:grid}.statline.tiles span{border-bottom:3px solid var(--brand);text-align:center;background:#0e1a2ae6;flex-direction:column;align-items:center;padding:10px 4px 8px;font-size:9.5px;display:flex}.statline.tiles b{margin:0 0 2px;font-size:22px}.statline.tiles span:only-child{grid-column:1/-1}#pProf .lvl{max-width:420px;margin-bottom:10px}.hw{flex-direction:column;gap:10px;max-width:520px;max-height:calc(100vh - 150px);margin-top:12px;padding-right:6px;display:flex;overflow:auto}.hcard{border-left:4px solid var(--brand);color:#b4c6d8;background:#0c1624eb;padding:14px 16px;font-size:12.5px;line-height:1.45}.hcard h4{font:700 12px var(--display);letter-spacing:.18em;text-transform:uppercase;color:var(--steel);margin:0 0 10px}.hcard p{margin:8px 0 0}.hcard b{color:var(--text)}.hcard.goal{border-left-color:var(--lime);align-items:center;gap:18px;display:flex}.hcard.goal h4{margin-bottom:4px}.hcard.goal p{margin:0}.ring{background:conic-gradient(var(--lime) 0 70%, #1a2e48 70% 100%);border-radius:50%;flex:none;place-items:center;width:82px;height:82px;display:grid;position:relative}.ring:before{content:"";background:#0c1624;border-radius:50%;position:absolute;inset:9px}.ring b{font:700 24px var(--display);color:var(--lime);position:relative}.flow{align-items:stretch;gap:6px;display:flex}.flow>span{color:var(--brand);align-self:center;font-size:18px}.flow>div,.build>div,.tips>div{text-align:center;background:#1a2e48b3;flex-direction:column;flex:1;align-items:center;padding:10px 6px;display:flex}.flow i,.build i,.tips i{margin-bottom:4px;font-size:26px;font-style:normal}.flow b,.build b,.tips b{font:700 13px var(--display);letter-spacing:.06em;text-transform:uppercase;color:var(--text)}.flow small,.build small,.tips small{color:var(--dim);margin-top:2px;font-size:10.5px}.build,.tips{grid-template-columns:repeat(4,1fr);gap:6px;display:grid}.tips{grid-template-columns:repeat(2,1fr)}.build em{font:700 12px var(--display);color:#ffc233;margin-top:6px;font-style:normal}.duel{justify-content:center;align-items:center;gap:18px;display:flex}.duel .side{flex-direction:column;align-items:center;gap:6px;display:flex}.duel small{color:var(--dim);font-size:10px}.dd{gap:5px;display:flex}.dd u{width:30px;height:30px;font:700 16px var(--display);color:#0a1520;background:#f2f6fa;border-radius:6px;place-items:center;text-decoration:none;display:grid;box-shadow:0 3px #00000073}.side.d .dd u{color:#fff;background:#ff6b78}.side.a .dd u{background:var(--brand-400);color:#03121d}.vs{font:700 18px var(--display);color:var(--dim);font-style:italic}.chipsrow{flex-wrap:wrap;gap:6px;margin-top:10px;display:flex}.tchip{font:700 11px var(--display);letter-spacing:.05em;text-transform:uppercase;color:var(--text);background:#1a2e48b3;padding:5px 9px}.tchip i{margin-right:4px;font-style:normal}.tchip em{font:500 10.5px var(--font);color:var(--dim);text-transform:none;letter-spacing:0;margin-left:4px;font-style:normal}@media (width<=760px){.build{grid-template-columns:repeat(2,1fr)}.hw{max-height:none}}.seg{gap:3px;display:flex}.seg button{--cut:6px;font:700 12px var(--display);letter-spacing:.06em;text-transform:uppercase;cursor:pointer;color:var(--text);background:linear-gradient(#1a2e48,#101c2e);border:0;border-bottom:3px solid #00000080;padding:8px 14px 6px}.seg button:hover{filter:brightness(1.3)}.seg button.on{background:linear-gradient(180deg, var(--brand-400), var(--brand));color:#03121d}.seg.wide{grid-template-columns:repeat(6,1fr);margin:8px 0;display:grid}.modal{z-index:20;background:#020509c7;justify-content:center;align-items:center;display:flex;position:absolute;inset:0}.modal-box{--cut:20px;width:min(640px,94vw);max-height:92vh;padding:26px 30px;overflow:auto}.modal-box h2{font:700 28px var(--display);text-transform:uppercase;letter-spacing:.1em;margin:0 0 14px;font-style:italic}.modal-box .x{color:var(--dim);cursor:pointer;background:0 0;border:0;font-size:18px;position:absolute;top:16px;right:22px}.modal-box .x:hover{color:var(--text)}.sgrid{grid-template-columns:1fr 1fr;gap:8px 22px;margin-top:10px;display:grid}.srow{font:600 13px var(--display);justify-content:space-between;align-items:center;gap:10px;display:flex}.srow select{background:var(--ink-800);color:var(--text);border:1px solid var(--ink-600);border-bottom:3px solid var(--brand);font:500 12.5px var(--font);padding:6px 8px}.srow input[type=range]{width:130px;margin:0}.srow input[type=checkbox]{width:18px;height:18px;accent-color:var(--cyan)}body .ra-ov{font-family:var(--font);z-index:60;background:#020509cc}body .ra-box{background:var(--plate);border:2px solid var(--brand);border-radius:0;box-shadow:0 30px 80px #000000b3,0 0 60px -20px #22e6ff66}body .ra-box h2{font-family:var(--display);text-transform:uppercase;letter-spacing:.06em;background:linear-gradient(100deg,#9fc4ea,#2aa9f5 40%,#22e6ff 70%,#a6ef3c);color:#0000;-webkit-background-clip:text;background-clip:text;font-style:italic}body .ra-box input{background:var(--ink-800);border-color:var(--ink-600);border-radius:0}body .ra-box input:focus{border-color:var(--cyan);outline:none;box-shadow:0 0 0 3px #22e6ff26}body .ra-go{background:linear-gradient(180deg, var(--brand-400), var(--brand));color:#03121d;font:700 14px var(--display);text-transform:uppercase;letter-spacing:.1em;border:0;border-bottom:4px solid #0d5a99;border-radius:0}body .ra-tabs button.on{border-color:var(--brand);background:#2aa9f540}body .ra-r b{color:var(--gold)}body .ra-r.me{background:#a6ef3c24}@media (width<=1150px){#help{display:none}#left{width:210px}#turnbar{gap:10px;transform:translate(-42%)scale(.88)}#info{width:230px}.logo{font-size:56px}}#menu:not([data-panel=main]) :is(.acct-row,.daily,.tag,.arcade-link){display:none}.lvl{align-items:center;gap:12px;margin:8px 0;padding:8px 14px;display:flex}.lvl .lv{font:700 15px var(--display);letter-spacing:.08em;color:var(--lime)}.xpbar{background:#ffffff17;flex:1;height:8px;overflow:hidden}.xpbar i{background:linear-gradient(90deg, var(--brand), var(--cyan));width:0;height:100%;transition:width .5s;display:block}.xptxt{font:600 10px var(--display);letter-spacing:.12em;color:var(--dim)}.cosgrid{grid-template-columns:repeat(auto-fill,minmax(150px,1fr));gap:8px;max-width:560px;display:grid}.cos{--cut:10px;text-align:left;cursor:pointer;color:var(--text);background:linear-gradient(#1a2e48,#101c2e);border:0;border-bottom:3px solid #00000080;flex-direction:column;gap:3px;padding:10px 12px 9px;transition:transform .1s,filter .15s;display:flex;position:relative}.cos:hover{filter:brightness(1.25);transform:translateY(-2px)}.cos .sw{clip-path:polygon(0 0,100% 0,100% 70%,94% 100%,0 100%);height:26px;margin-bottom:4px;display:block}.cos b{font:700 15px var(--display);text-transform:uppercase;letter-spacing:.06em}.cos small{font:500 11px var(--font);color:var(--dim)}.cos.on{background:linear-gradient(180deg, var(--brand-400), var(--brand) 60%, #1b8ee0);color:#03121d}.cos.on small{color:#0b3a5c}.cos.on:after{content:"✓";font:700 16px var(--display);position:absolute;top:8px;right:10px}.cos.locked{filter:grayscale(.8)brightness(.65)}.cos.locked:hover{filter:grayscale(.6)brightness(.8)}.resxp{text-align:center;font:600 14px var(--display);letter-spacing:.08em;color:var(--dim);margin:-10px 0 18px}.resxp b{color:var(--cyan)}.resxp .up{color:var(--lime);font-weight:700}.resxp .unl{flex-wrap:wrap;justify-content:center;gap:6px;margin-top:8px;display:flex}.resxp .unl span{color:var(--text);background:#a6ef3c1f;border:1px solid #a6ef3c66;padding:4px 10px}.resxp .unl em{color:var(--dim);text-transform:uppercase;margin-left:4px;font-size:10px;font-style:normal}html{-webkit-tap-highlight-color:transparent;-webkit-text-size-adjust:100%;overscroll-behavior:none}#view,#view canvas{touch-action:none}#hud{padding:env(safe-area-inset-top) env(safe-area-inset-right) env(safe-area-inset-bottom) env(safe-area-inset-left)}@media (hover:none){.btn:hover:not(:disabled),.act:hover:not(:disabled),.gopt:hover,.mbtn:hover,.cards button:hover,.cos:hover{filter:none;transform:none}}@media (pointer:coarse){.btn,.chip,.act,.seg button,.chips button,.back,.gopt{min-height:44px}.chip.sq{min-width:44px}#help{display:none}}@media (width<=760px),(height<=520px){#topright{gap:4px;top:6px;right:6px}#topright .chip.sq{width:40px;height:40px}#acctName,#syncDot{display:none}#acctChip{min-height:40px;padding:0 8px 2px}#turnbar{--cut:10px;justify-content:space-between;gap:8px;padding:6px 10px;top:52px;left:6px;right:6px;transform:none}#order,#steps i{display:none}#steps span{letter-spacing:.1em;margin:0;padding:6px 12px 6px 14px;font-size:10px}#steps span:not(.on){display:none}.round{flex-direction:row;align-items:baseline;gap:6px;min-width:0}.round b{font-size:20px}.round .eyebrow{letter-spacing:.12em;font-size:9px}#nextBtn{letter-spacing:.06em;white-space:nowrap;min-height:40px;padding:0 12px;font-size:12px}.res{gap:6px}.res>div{min-width:0;padding:2px 8px}.res b{font-size:18px}#left{gap:6px;width:168px;top:108px;left:6px}#brandmini{display:none}#board{padding:6px 8px 4px}#board h3{cursor:pointer;justify-content:space-between;margin:0 0 4px;padding:4px 0;display:flex}#board h3:after{content:"2";letter-spacing:0;font-size:16px;line-height:1}#board.min h3{margin:0}#board.min h3:after{content:"+"}#board.min #boardRows{display:none}.row{gap:6px;padding:3px 4px}#info{width:min(230px,46vw);max-height:calc(100dvh - 190px);padding:10px 12px;top:108px;right:6px;overflow-y:auto}#dock{--cut:10px;width:calc(100vw - 12px);min-width:0;padding:8px 10px;bottom:6px;overflow-x:auto}.dsec{flex-wrap:wrap;gap:8px 10px}.dtitle b{font-size:12px}.force{flex:200px;width:min(270px,100%)}#battle{gap:10px;width:calc(100vw - 12px);min-width:0;padding:10px 12px;top:108px}#log{display:none}#toast{white-space:normal;text-align:center;max-width:90vw;bottom:96px}#proposal{flex-wrap:wrap;gap:10px;max-width:94vw;padding:10px 14px;top:108px}#spawnBanner{--cut:10px;pointer-events:none;gap:2px;width:max-content;max-width:calc(100vw - 16px);padding:8px 16px;top:8px}#spawnBanner b{letter-spacing:.18em;font-size:13px}#spawnBanner span{font-size:11px}#menu{padding:16px}.logo{font-size:40px}.modal-box{max-width:96vw;max-height:92vh;overflow:auto}}@media (width<=560px),(orientation:landscape) and (height<=520px) and (width<=900px){#steps{display:none}.res>div{min-width:56px}}@media (orientation:landscape) and (height<=520px){#turnbar{justify-content:flex-start;top:6px;left:6px;right:auto}#left,#info,#battle,#proposal{top:76px}#info{max-height:calc(100dvh - 150px)}}:root{--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark}*{scrollbar-width:thin;scrollbar-color:var(--ink-600) transparent;-webkit-tap-highlight-color:transparent}::-webkit-scrollbar{width:10px;height:10px}::-webkit-scrollbar-track{background:#050a1099}::-webkit-scrollbar-thumb{background:linear-gradient(180deg, var(--brand), var(--brand-deep));clip-path:polygon(0 3px,3px 0,100% 0,100% calc(100% - 3px),calc(100% - 3px) 100%,0 100%);border:2px solid #0a121e;border-radius:0}::-webkit-scrollbar-thumb:hover{background:linear-gradient(180deg, var(--brand-400), var(--brand))}::-webkit-scrollbar-corner{background:0 0}img{-webkit-user-drag:none;user-drag:none}input[type=range]{appearance:none;cursor:pointer;background:0 0}input[type=range]::-webkit-slider-runnable-track{background:linear-gradient(90deg, var(--brand-deep), var(--ink-600));border-bottom:2px solid #00000080;height:6px}input[type=range]::-moz-range-track{background:var(--ink-600);height:6px}input[type=range]::-moz-range-progress{background:var(--brand);height:6px}input[type=range]::-webkit-slider-thumb{-webkit-appearance:none;background:linear-gradient(180deg, var(--brand-400), var(--brand));clip-path:polygon(3px 0,100% 0,100% calc(100% - 3px),calc(100% - 3px) 100%,0 100%,0 3px);border:0;border-bottom:3px solid #0d5a99;width:14px;height:20px;margin-top:-8px}input[type=range]::-moz-range-thumb{background:var(--brand-400);border:0;border-radius:0;width:14px;height:18px}input[type=range]:hover::-webkit-slider-thumb{filter:brightness(1.2)}select{appearance:none;cursor:pointer;background-image:linear-gradient(45deg, transparent 50%, var(--cyan) 50%), linear-gradient(135deg, var(--cyan) 50%, transparent 50%);background-position:calc(100% - 13px) 55%,calc(100% - 8px) 55%;background-repeat:no-repeat;background-size:5px 5px;padding-right:24px!important}select option{color:var(--text);background:#0a121e}input[type=checkbox]{appearance:none;cursor:pointer;background:var(--ink-800);border:2px solid var(--ink-600);place-content:center;width:18px;height:18px;margin:0;display:inline-grid}input[type=checkbox]:before{content:"";background:var(--cyan);width:8px;height:8px;transition:transform .12s;transform:scale(0)}input[type=checkbox]:checked{border-color:var(--cyan)}input[type=checkbox]:checked:before{transform:scale(1)}.hint{font:600 11px var(--display);letter-spacing:.16em;text-transform:uppercase;color:var(--cyan);margin:0 0 2px}.demo{cursor:help;transition:background .15s,box-shadow .15s}.demo:hover,.demo.play,.demo:focus-visible{box-shadow:inset 0 0 0 1px var(--brand);background-color:#2aa9f51f}.dm{width:100%;height:72px;margin-bottom:4px;display:block;overflow:visible}.dm .tb{fill:#1c6fae;stroke:var(--brand-400);stroke-width:2px}.dm .tr{fill:#a8323f;stroke:#ff7a86;stroke-width:2px}.dm .tg{fill:#5e9a20;stroke:var(--lime);stroke-width:2px}.dm .dim{opacity:.45}.dm .num{fill:#fff;font:700 15px var(--display);text-anchor:middle;paint-order:stroke;stroke:#00000080;stroke-width:3px}.dm .n2,.dm .m2{opacity:0}.dm .dot{fill:#fff;opacity:0}.dm .coin{fill:var(--gold);stroke:#b8860b;stroke-width:1.5px;opacity:0}.dm .arrow{stroke:var(--brand-400);stroke-width:3px;fill:none;stroke-dasharray:4 4}.dm .arrowhead{fill:var(--brand-400)}.dm .link,.dm .alink{stroke:var(--steel);stroke-width:2px;stroke-dasharray:3 4;fill:none}.dm .alink{stroke:var(--lime);stroke-dasharray:none;stroke-width:3px;opacity:.3}.dm .aatk{stroke:var(--live);stroke-width:2px;stroke-dasharray:4 4;fill:none;opacity:.8}.dm .boom,.dm .shake,.dm .boat,.dm .pop,.dm .cross{text-anchor:middle;font-size:16px}.dm .boom{opacity:0}.dm .shake{opacity:.35}.dm .pop{fill:var(--gold);font:700 12px var(--display);opacity:0}.dm .cross{fill:var(--live);font:700 14px var(--display);opacity:0}.dm .boat{text-anchor:start}.dm .wave{stroke:var(--brand);stroke-width:2px;fill:none;opacity:.5;stroke-dasharray:6 4}.dm text,.dm use,.dm circle,.dm path{transform-box:fill-box;transform-origin:50%}.demo:is(:hover,.play) .f1{animation:2.2s linear infinite move}.demo:is(:hover,.play) .f2{animation:2.2s linear .25s infinite move}.demo:is(:hover,.play) .f3{animation:2.2s linear .5s infinite move}@keyframes move{0%,5%{opacity:0;transform:translate(0)}15%{opacity:1}60%{opacity:1;transform:translate(48px)}70%,to{opacity:0;transform:translate(48px)}}.demo:is(:hover,.play) .n1{animation:2.2s infinite fadeout}.demo:is(:hover,.play) .n2{animation:2.2s infinite fadein}.demo:is(:hover,.play) .m1{animation:2.2s infinite fadeout}.demo:is(:hover,.play) .m2{animation:2.2s infinite fadein}@keyframes fadeout{0%,55%{opacity:1}65%,92%{opacity:0}to{opacity:1}}@keyframes fadein{0%,55%{opacity:0}65%,92%{opacity:1}to{opacity:0}}.f-reinforce:is(:hover,.play) .d1{animation:2.2s ease-in infinite drop}.f-reinforce:is(:hover,.play) .d2{animation:2.2s ease-in .2s infinite drop}.f-reinforce:is(:hover,.play) .d3{animation:2.2s ease-in .4s infinite drop}@keyframes drop{0%{opacity:0;transform:translateY(0)}10%{opacity:1}45%{opacity:1;transform:translateY(34px)}55%,to{opacity:0;transform:translateY(36px)}}.f-fortify:is(:hover,.play) .n1,.f-fortify:is(:hover,.play) .n2,.f-fortify:is(:hover,.play) .m1,.f-fortify:is(:hover,.play) .m2{animation-duration:2.2s}.f-fortify:is(:hover,.play) .n1{animation-name:fadeout}.f-fortify:is(:hover,.play) .n2{animation-name:fadein}.f-fortify:is(:hover,.play) .m1{animation-name:fadeout}.f-fortify:is(:hover,.play) .m2{animation-name:fadein}.f-attack:is(:hover,.play) .arrow{animation:.6s linear infinite dash}@keyframes dash{to{stroke-dashoffset:-8px}}.f-attack:is(:hover,.play) .arrowhead{animation:1s ease-in-out infinite nudge}@keyframes nudge{50%{transform:translate(3px)}}.f-attack:is(:hover,.play) .boom{animation:2.2s infinite boom}@keyframes boom{0%,40%{opacity:0;transform:scale(.4)}50%{opacity:1;transform:scale(1.3)}62%,to{opacity:0;transform:scale(1.6)}}.f-attack:is(:hover,.play) .b-flip{animation:2.2s infinite flip}@keyframes flip{0%,55%{fill:#a8323f;stroke:#ff7a86}65%,92%{fill:#1c6fae;stroke:#6ecbff}to{fill:#a8323f;stroke:#ff7a86}}.demo:is(:hover,.play) .reg{animation:1.6s ease-in-out infinite gold}@keyframes gold{50%{stroke:var(--gold);fill:#8a6a14}}.demo:is(:hover,.play) .pop{animation:1.8s ease-out infinite popup}@keyframes popup{0%{opacity:0;transform:translateY(6px)scale(.6)}25%,70%{opacity:1;transform:translateY(0)scale(1)}to{opacity:0;transform:translateY(-6px)}}.demo:is(:hover,.play) .alink{animation:1.8s ease-in-out infinite link}@keyframes link{0%{opacity:.1}40%,to{opacity:1}}.demo:is(:hover,.play) .shake{animation:1.8s ease-in-out infinite handshake}@keyframes handshake{0%,20%{opacity:.2;transform:scale(.6)}40%{opacity:1;transform:scale(1.25)rotate(-10deg)}55%{transform:scale(1.1)rotate(8deg)}70%,to{opacity:1;transform:scale(1)}}.demo:is(:hover,.play) .cross{animation:1.8s ease-out .5s infinite popup}.demo:is(:hover,.play) .boat{animation:2.6s ease-in-out infinite sail}@keyframes sail{0%{transform:translate(-10px)}to{transform:translate(20px)}}.demo:is(:hover,.play) .wave{animation:.8s linear infinite dash}.demo:is(:hover,.play) .w2{animation-direction:reverse}.demo:is(:hover,.play) .coin{animation:1.8s ease-out infinite coin}.demo:is(:hover,.play) .c2{animation-delay:.15s}.demo:is(:hover,.play) .c3{animation-delay:.3s}@keyframes coin{0%{opacity:0;transform:translateY(8px)}25%{opacity:1}80%{opacity:1;transform:translateY(-22px)}to{opacity:0;transform:translateY(-26px)}}.dd u{position:relative}.dd u:after{width:16px;height:16px;font:700 10px var(--display);color:#03121d;opacity:0;border-radius:50%;place-items:center;display:grid;position:absolute;top:-8px;right:-7px}.dd u[data-m=w]:after{content:"✓";background:var(--lime)}.dd u[data-m=l]:after{content:"✗";background:var(--live);color:#fff}.duel:is(:hover,.play) .dd u{animation:.7s ease-out roll}.duel:is(:hover,.play) .dd u:after{animation:.4s ease-out .75s forwards mark}.duel:is(:hover,.play) .dd u:not([data-m]){animation:.7s ease-out roll,.3s .75s forwards dimmed}@keyframes roll{0%{opacity:0;transform:translateY(-14px)rotate(-200deg)}60%{opacity:1;transform:translateY(2px)rotate(20deg)}to{opacity:1;transform:none}}@keyframes mark{0%{opacity:0;transform:scale(.3)}to{opacity:1;transform:scale(1)}}@keyframes dimmed{to{opacity:.35}}.build .demo{position:relative;overflow:hidden}.build .demo i{transition:transform .2s;display:inline-block}.build .demo:after{font:700 12px var(--display);color:var(--gold);opacity:0;pointer-events:none;position:absolute;top:6px;left:50%}.bd-city:after{content:"+8 gold"}.bd-fort:after{content:"+defense";color:var(--brand-400)!important}.bd-bar:after{content:"+troops";color:var(--lime)!important}.bd-silo:after{content:""}.bd-city:is(:hover,.play) i{animation:.9s ease-in-out infinite bob}@keyframes bob{50%{transform:translateY(-5px)scale(1.12)}}.bd-fort:is(:hover,.play) i{animation:1.2s ease-in-out infinite guard}@keyframes guard{50%{filter:drop-shadow(0 0 8px var(--brand-400));transform:scale(1.18)}}.bd-bar:is(:hover,.play) i{animation:.5s ease-in-out infinite wob}@keyframes wob{25%{transform:rotate(-8deg)}75%{transform:rotate(8deg)}}.bd-silo:is(:hover,.play) i{animation:1.6s ease-in infinite launch}@keyframes launch{0%,15%{opacity:1;transform:translate(0)}70%{opacity:0;transform:translate(26px,-46px)scale(.6)}71%,to{opacity:0;transform:translate(0)}90%{opacity:1}}.bd-city:is(:hover,.play):after,.bd-fort:is(:hover,.play):after,.bd-bar:is(:hover,.play):after{animation:1.4s ease-out infinite floatup}@keyframes floatup{0%{opacity:0;transform:translate(-50%,12px)}30%{opacity:1}to{opacity:0;transform:translate(-50%,-6px)}}@property --p{syntax:"<percentage>";inherits:false;initial-value:70%}.ring{background:conic-gradient(var(--lime) 0 var(--p), #1a2e48 var(--p) 100%)}.goal:is(:hover,.play) .ring{animation:2.4s ease-out infinite fill}@keyframes fill{0%{--p:0%}70%,to{--p:70%}}.steps{flex-direction:column;gap:7px;margin:0;padding:0;list-style:none;display:flex}.steps li{align-items:center;gap:10px;display:flex}.steps li b{background:var(--brand);color:#03121d;width:24px;height:24px;font:700 13px var(--display);clip-path:polygon(5px 0,100% 0,100% calc(100% - 5px),calc(100% - 5px) 100%,0 100%,0 5px);flex:none;place-items:center;display:grid}.steps em{color:var(--brand-400);font-style:normal;font-weight:600}.keys{color:var(--dim);flex-wrap:wrap;gap:6px 14px;margin-top:12px;font-size:11px;display:flex}kbd{font:700 10.5px var(--display);letter-spacing:.04em;color:var(--text);background:#1d3350;border-bottom:2px solid #0a1520;border-radius:3px;margin-right:4px;padding:2px 6px 1px;display:inline-block}.tips>div{padding-top:6px}@media (prefers-reduced-motion:reduce){.demo *{animation-duration:10ms!important}}#app{transition:opacity .25s}.pbox{--cut:20px;width:min(420px,94vw)}.pbox .mlist{max-width:none}.pbox .phead{margin-top:0}.pbox h2{margin-bottom:6px}.mbtn.danger{border-left-color:var(--live)}.mbtn.danger:hover{border-left-color:var(--live);background:linear-gradient(90deg,#7a2430,#0e1c2eeb)}.pview{animation:.2s ease-out panelin}.ctl{flex-direction:column;gap:6px;margin-top:8px;display:flex}.ctl>div{color:var(--dim);background:#1a2e4899;align-items:center;gap:6px;padding:7px 10px;font-size:12.5px;display:flex}.ctl kbd{margin-right:0}.ctl span{text-align:right;margin-left:auto}:focus-visible{outline:2px solid var(--cyan);outline-offset:2px}:is(.btn,.chip,.mbtn,.cards button,.gopt,.chips button,.act,.seg button,.back,.cos,.ally):focus-visible{outline:2px solid var(--cyan);outline-offset:-4px;filter:brightness(1.2);box-shadow:inset 0 0 0 5px #2aa9f559}.mbtn:focus-visible{border-left-color:var(--lime)}:is(input,select,textarea):focus-visible{outline:2px solid var(--cyan);outline-offset:2px;box-shadow:0 0 0 5px #2aa9f54d}input[type=range]:focus-visible::-webkit-slider-thumb{background:linear-gradient(180deg, var(--cyan), var(--brand))}a:focus-visible{outline:2px solid var(--cyan);outline-offset:3px}.modal-box .x:focus-visible{color:var(--cyan)}.reduce-motion *,.reduce-motion :before,.reduce-motion :after{scroll-behavior:auto!important;transition-duration:.01ms!important;transition-delay:0s!important;animation-duration:.01ms!important;animation-iteration-count:1!important;animation-delay:0s!important}.reduce-motion .ftext{animation:1.3s ease-out forwards ftfade!important}@keyframes ftfade{0%{opacity:0}12%,70%{opacity:1}to{opacity:0}}.reduce-motion .gradient-text{animation:none!important}.reduce-motion .spin{animation:2.4s linear infinite spin!important}#glRestore{z-index:80;background:#05080dd1;place-items:center;display:grid;position:absolute;inset:0}#glRestore .panel{font:700 14px var(--display);letter-spacing:.12em;text-transform:uppercase;align-items:center;gap:14px;padding:16px 26px;display:flex}.spin{border:3px solid #2aa9f540;border-top-color:var(--cyan);border-radius:50%;width:18px;height:18px;animation:.8s linear infinite spin}@keyframes spin{to{transform:rotate(360deg)}}#nogl{z-index:100;background:radial-gradient(ellipse at 50% 30%, #0d1b2c, var(--ink-950) 70%);color:var(--text);font-family:var(--font);-webkit-user-select:text;user-select:text;place-items:center;padding:20px;display:grid;position:fixed;inset:0;overflow:auto}.nogl-box{border:1px solid var(--edge);border-top:3px solid var(--brand);background:#0a1018eb;width:min(560px,100%);padding:30px 32px}.nogl-box img{width:200px;max-width:60%;height:auto;margin-bottom:16px;display:block}.nogl-box h1{font:700 30px var(--display);text-transform:uppercase;letter-spacing:.06em;color:var(--text);margin:6px 0 10px;font-style:italic}.nogl-box p{color:var(--steel);margin:0 0 12px;line-height:1.5}.nogl-box ul{color:var(--dim);margin:0 0 20px;padding-left:20px;font-size:14px;line-height:1.6}.nogl-box ul b{color:var(--lime);font-weight:600}.nogl-btns{flex-wrap:wrap;gap:10px;display:flex}.nogl-btns a{text-decoration:none}.cosgrid.colors{grid-template-columns:repeat(auto-fill,minmax(92px,1fr))}.cosgrid.colors .cos{padding:8px 10px}.cosgrid.colors .cos .sw{height:30px}.cos .tier{font:700 10px var(--display);letter-spacing:.18em;text-transform:uppercase;font-style:normal}.cos.on .tier{color:#03121d!important}.cos.t-rare:not(.on){box-shadow:inset 0 0 0 1px #4aa8ff8c}.cos.t-epic:not(.on){box-shadow:inset 0 0 0 1px #b77bffb3,0 0 12px #b77bff2e}.cos.t-legendary:not(.on){box-shadow:inset 0 0 0 1px #ffc233d9,0 0 16px #ffc23347}.cos.anim .sw{background-repeat:repeat-x;animation:4s linear infinite swflow;background-size:200% 100%!important}@keyframes swflow{to{background-position:200% 0}}@media (prefers-reduced-motion:reduce){.cos.anim .sw{animation:none}}.sitefoot{z-index:5;font:600 10.5px var(--display);letter-spacing:.16em;text-transform:uppercase;color:var(--dim);align-items:center;gap:10px;display:flex;position:fixed;bottom:14px;left:5vw}#gate .sitefoot{left:50%;transform:translate(-50%)}.sitefoot img{opacity:.75;width:auto;height:18px;transition:opacity .15s;display:block}.sitefoot a:hover img{opacity:1}#menu:not([data-panel=main]) .sitefoot{display:none}.tfx{vertical-align:top;max-width:100%;margin:-18px 0 -10px -14px;padding:18px 14px 30px;display:inline-block;position:relative}.tfx .logo{visibility:hidden;filter:none;margin:0;animation:none}.tfx canvas{width:100%;height:100%;image-rendering:pixelated;image-rendering:crisp-edges;pointer-events:none;filter:drop-shadow(0 0 18px #22e6ff47);position:absolute;inset:0}.gate-box .tfx{margin:0 0 -6px}#intel{pointer-events:none;opacity:0;font:600 11px/1.5 var(--display);letter-spacing:.14em;color:#8ff7d6;text-shadow:0 0 8px #22e6ffb3;transition:opacity .6s;position:absolute;inset:0;overflow:hidden}body.intel #intel{opacity:1}#view canvas{transition:filter .7s}body.intel #view canvas{filter:sepia()hue-rotate(118deg)saturate(2.1)contrast(1.18)brightness(.88)}body.intel #labels{opacity:.85;filter:sepia()hue-rotate(118deg)saturate(2)}.i-scan{mix-blend-mode:multiply;background:repeating-linear-gradient(0deg,#00000038 0 1px,#0000 1px 3px);position:absolute;inset:0}.i-bar{background:linear-gradient(#0000,#78ffdc17,#0000);height:90px;animation:6.5s linear infinite ibar;position:absolute;top:-90px;left:0;right:0}@keyframes ibar{to{transform:translateY(calc(100vh + 180px))}}.i-corner{filter:drop-shadow(0 0 5px #22e6ff);border:0 solid #8ff7d6cc;width:38px;height:38px;position:absolute}.i-corner.tl{border-width:2px 0 0 2px;top:14px;left:14px}.i-corner.tr{border-width:2px 2px 0 0;top:14px;right:14px}.i-corner.bl{border-width:0 0 2px 2px;bottom:14px;left:14px}.i-corner.br{border-width:0 2px 2px 0;bottom:14px;right:14px}.i-reticle{border:1px solid #8ff7d659;border-radius:50%;width:120px;height:120px;margin:-60px;animation:14s linear infinite ispin;position:absolute;top:50%;left:62%}.i-reticle:before,.i-reticle:after{content:"";background:#8ff7d680;position:absolute}.i-reticle:before{width:1px;top:-14px;bottom:-14px;left:50%}.i-reticle:after{height:1px;top:50%;left:-14px;right:-14px}.i-reticle i{border:1px dashed #8ff7d680;border-radius:50%;position:absolute;inset:34px}@keyframes ispin{to{transform:rotate(360deg)}}.i-hud{text-transform:uppercase;flex-direction:column;gap:2px;display:flex;position:absolute}.i-hud.tr{align-items:flex-end;top:30px;right:30px}.i-hud.br{align-items:flex-end;bottom:30px;right:30px}.i-hud .rec{color:#ff5a68;text-shadow:0 0 8px #ff3b4e;animation:1.1s steps(2,end) infinite blink}.i-hud .rec:before{content:"● "}#intelStatic{width:100%;height:100%;image-rendering:pixelated;opacity:0;mix-blend-mode:screen;position:absolute;inset:0}body.intel-glitch #view{animation:.42s steps(2,end) 2 ijolt}body.intel-glitch .i-hud{animation:.18s steps(2,end) 6 iflick}@keyframes ijolt{0%{transform:translate(0)scaleY(1)}25%{transform:translate(-6px,2px)scaleY(1.01)}50%{transform:translate(5px,-3px)}75%{transform:translate(-3px)scaleY(.99)}}@keyframes iflick{50%{opacity:.2}}.reduce-motion .i-bar,.reduce-motion .i-reticle,.reduce-motion .i-hud .rec,.reduce-motion body.intel-glitch #view,body.intel-glitch.reduce-motion #view{animation:none}@media (width<=760px){.i-reticle,.i-hud.br span:first-child{display:none}.i-hud{font-size:9px}.i-hud.tr{top:18px;right:18px}.i-hud.br{bottom:44px;right:18px}}
