:root{--color-bright-snow:#f7f9f9;--color-ash-grey:#bed8d4;--color-pearl-aqua:#78d5d7;--color-frozen-lake:#63d2ff;--color-steel-blue:#2081c3;--color-steel-dark:#186aa3;--color-steel-deep:#12496f;--color-steel-deeper:#0c3452;--ink:var(--color-steel-deep);--paper:var(--color-bright-snow);--aged:var(--color-ash-grey);--teal:var(--color-pearl-aqua);--teal-dark:var(--color-steel-blue);--circuit-teal:var(--color-pearl-aqua);--mustard:#e8c547;--orange:#c4782a;--rust:#9c5c1a;--burnt-orange:#d89555;--cream:var(--color-bright-snow);--ring-1:var(--color-frozen-lake);--ring-2:var(--color-pearl-aqua);--ring-3:var(--color-steel-blue);--board-dark:var(--color-steel-deep);--board-mid:var(--color-steel-blue);--sidebar:var(--color-steel-deeper);--text-on-light:var(--color-steel-deep);--text-on-dark:var(--color-bright-snow);--muted-on-dark:var(--color-ash-grey);--surface-light:var(--color-bright-snow);--surface-mid:var(--color-ash-grey);--accent-bright:var(--color-frozen-lake);--accent-mid:var(--color-pearl-aqua);--accent-strong:var(--color-steel-blue);--disabled-bg:#94b4c4;--shadow-ink:#0c34528c;--shell-width:min(92vw, 1100px);--shell-width-narrow:min(80vw, 960px);--board-width:min(96vw, 1180px);--game-width:min(100%, calc(var(--board-width) + min(240px, 28vw)));--shell-pad:clamp(.75rem, 2.5vw, 1.5rem);--viewport-height:100dvh}html{width:100%;min-height:100%;margin:0}body{width:100%;min-height:100dvh;margin:0;overflow-x:hidden}#root{flex-direction:column;min-height:100dvh;display:flex}.app-shell{width:100%;min-height:100dvh;padding:var(--shell-pad);padding-top:max(var(--shell-pad), env(safe-area-inset-top,0px));padding-bottom:max(1.5rem, env(safe-area-inset-bottom,0px));box-sizing:border-box;-webkit-overflow-scrolling:touch;overscroll-behavior-y:contain;flex-direction:column;flex:auto;align-items:center;display:flex;overflow:hidden auto}.app-panel{z-index:1;width:var(--shell-width-narrow);max-width:100%;position:relative}.app-panel-wide{width:var(--shell-width);max-width:100%}.app-shell-game{width:100%;height:var(--viewport-height,100dvh);max-height:var(--viewport-height,100dvh);box-sizing:border-box;min-height:0;padding-top:env(safe-area-inset-top,0px);padding-bottom:env(safe-area-inset-bottom,0px);flex-direction:column;flex:auto;display:flex;overflow:hidden}.error-boundary-screen{background:radial-gradient(ellipse at 50% 0%, #2081c333, transparent 55%), var(--board-dark)}.error-boundary-panel{text-align:center;border:3px solid var(--ink);box-shadow:6px 6px 0 var(--ink);background:#0c3452eb;border-radius:14px;padding:1.5rem 1.25rem}.error-boundary-tag{letter-spacing:.1em;text-transform:uppercase;color:var(--mustard);margin:0 0 .5rem;font-family:Bangers,sans-serif}.error-boundary-panel h1{color:var(--pearl);margin:0 0 .75rem;font-family:Bangers,sans-serif}.error-boundary-msg{color:#e8f4f2e6;word-break:break-word;margin:0 0 1rem;font-family:Bangers,sans-serif;font-size:.9rem;line-height:1.4}*{box-sizing:border-box}.deck-card img,.champion-portrait,.support-panel-portrait,.support-menu-portrait,.support-card-portrait,.deck-portrait,.fighter-art{object-fit:cover;object-position:center 18%}.champion-portrait,.support-card-portrait{width:100%;height:100%;display:block}.fighter-art{max-width:100%}button{letter-spacing:.05em;cursor:pointer;font-family:Bangers,Impact,sans-serif}body{color:var(--ink);background:var(--board-dark);font-family:Rye,Georgia,serif}.title-screen{background:radial-gradient(ellipse 80% 45% at 50% 0%, #2081c338 0%, transparent 55%), radial-gradient(ellipse 100% 60% at 50% 100%, #061018e6 0%, transparent 60%), linear-gradient(180deg, #061018 0%, var(--color-steel-deeper) 38%, #061018 100%);position:relative}.title-arena-bg{pointer-events:none;position:absolute;inset:0;overflow:hidden}.title-arena-grid{opacity:.35;background:repeating-linear-gradient(90deg,#ffffff08 0 1px,#0000 1px 28px),repeating-linear-gradient(0deg,#ffffff05 0 1px,#0000 1px 28px);position:absolute;inset:0}.title-ring-floor{border:2px solid #78d5d72e;border-radius:50%;width:min(150vw,980px);height:min(150vw,980px);animation:7s ease-in-out infinite title-ring-pulse;position:absolute;bottom:-22%;left:50%;transform:translate(-50%);box-shadow:inset 0 0 0 10px #00000040,inset 0 0 60px #63d2ff0f,0 0 0 20px #f7f9f908}@keyframes title-ring-pulse{0%,to{opacity:.7;transform:translate(-50%)scale(1)}50%{opacity:1;transform:translate(-50%)scale(1.015)}}.title-spotlight{filter:blur(10px);background:radial-gradient(#e8c5471a 0%,#0000 72%);width:42vw;max-width:420px;height:65vh;animation:8s ease-in-out infinite title-spotlight-sway;position:absolute;top:-8%}.title-spotlight-a{left:0;transform:rotate(-10deg)}.title-spotlight-b{animation-delay:-4s;right:0;transform:rotate(10deg)}@keyframes title-spotlight-sway{0%,to{opacity:.45}50%{opacity:.85}}.title-star{color:var(--mustard);text-shadow:0 0 16px #e8c5478c;font-family:Bangers,sans-serif;animation:3s ease-in-out infinite title-star-twinkle;position:absolute}.title-star-1{font-size:1.2rem;top:12%;left:10%}.title-star-2{font-size:1.65rem;animation-delay:-1s;top:6%;right:12%}.title-star-3{font-size:1rem;animation-delay:-2s;bottom:18%;right:8%}@keyframes title-star-twinkle{0%,to{opacity:.35;transform:scale(.92)}50%{opacity:1;transform:scale(1.1)}}.title-layout{z-index:1;flex-direction:column;align-items:stretch;gap:clamp(1rem,2.5vw,1.5rem);display:flex;position:relative}.title-hero-panel{border:4px solid var(--ink);box-shadow:0 0 0 2px #78d5d733, 0 18px 48px #00000080, 8px 8px 0 var(--ink);background:linear-gradient(#186aa3f0 0%,#0c3452fa 100%);border-radius:16px;grid-template-columns:minmax(140px,230px) minmax(0,1fr) minmax(140px,230px);align-items:stretch;gap:clamp(.85rem,2.2vw,1.6rem);padding:clamp(1.1rem,3vw,1.65rem);display:grid;position:relative;overflow:hidden}.title-hero-panel-glow{pointer-events:none;background:radial-gradient(circle,#e8c54738,#0000 68%);height:75%;position:absolute;inset:-30% -10% auto}.title-hero-art{z-index:1;border:3px solid var(--ink);min-height:320px;box-shadow:5px 5px 0 var(--ink);border-radius:12px;margin:0;animation:9s ease-in-out infinite title-hero-drift;position:relative;overflow:hidden;transform:rotate(-2deg)}.title-hero-art-right{animation-delay:-4.5s;transform:rotate(2deg)}@keyframes title-hero-drift{0%,to{translate:0}50%{translate:0 -7px}}.title-hero-art img{object-fit:cover;object-position:center top;width:100%;height:100%;position:absolute;inset:0}.title-hero-art-name{letter-spacing:.06em;color:var(--cream);text-shadow:2px 2px #061018d9;background:linear-gradient(#0000 0%,#061018e0 62%);flex-direction:column;padding:1.2rem .6rem .45rem;font-family:Bangers,sans-serif;font-size:.9rem;display:flex;position:absolute;bottom:0;left:0;right:0}.title-hero-art-name span{letter-spacing:.12em;text-transform:uppercase;color:var(--mustard);font-size:.68rem}.title-hero-copy{z-index:1;text-align:center;flex-direction:column;justify-content:center;align-items:center;padding:.5rem clamp(.25rem,2vw,1.25rem);display:flex;position:relative}.title-league{letter-spacing:.16em;text-transform:uppercase;color:#bed8d4e6;margin:0 0 .35rem;font-family:Bangers,sans-serif;font-size:.78rem}.title-scrap-debris{opacity:.55;background:#c45c2633;border:2px solid #f7f9f91f;border-radius:3px;width:48px;height:12px;position:absolute;transform:rotate(-18deg)}.title-scrap-debris-1{top:24%;right:10%}.title-scrap-debris-2{width:64px;bottom:20%;left:14%;transform:rotate(12deg)}.title-tag{color:var(--mustard);letter-spacing:.1em;text-transform:uppercase;align-items:center;gap:.5rem;margin:0 0 .55rem;font-family:Bangers,sans-serif;font-size:clamp(.82rem,2.2vw,1rem);display:flex}.title-tag-star{color:var(--color-frozen-lake);font-size:1.05em;animation:2.5s ease-in-out infinite title-star-twinkle}.title-hero-copy h1{flex-wrap:wrap;justify-content:center;gap:.12em .3em;margin:0;line-height:.9;display:flex}.title-word{color:var(--cream);text-shadow:4px 4px 0 var(--ink), 0 0 32px #63d2ff47;font-family:Rye,serif;font-size:clamp(2.6rem,7.5vw,4.6rem)}.title-word-accent{color:var(--color-frozen-lake);text-shadow:4px 4px 0 var(--ink), 0 0 40px #78d5d773}.title-beta-chip{border:2px solid var(--ink);letter-spacing:.1em;text-transform:uppercase;color:var(--color-steel-deep);background:var(--mustard);box-shadow:2px 2px 0 var(--ink);border-radius:999px;margin-bottom:.6rem;padding:.18rem .7rem;font-family:Bangers,sans-serif;font-size:.72rem;display:inline-block}.title-hook{color:#eef6f5f0;max-width:32rem;margin:.85rem auto 1rem;font-family:Barlow Semi Condensed,Segoe UI,sans-serif;font-size:clamp(.95rem,2.2vw,1.08rem);font-weight:500;line-height:1.5}.title-cta-stack{flex-direction:column;align-items:center;gap:.55rem;display:flex}.title-cta-row{flex-wrap:wrap;justify-content:center;gap:.55rem;display:flex}.title-play-note{letter-spacing:.02em;color:#bed8d4bf;margin:.8rem 0 0;font-family:Barlow Semi Condensed,Segoe UI,sans-serif;font-size:.82rem}.title-cta{letter-spacing:.05em;text-transform:uppercase;background:linear-gradient(180deg, var(--mustard) 0%, #d4a82e 100%);color:var(--ink);box-shadow:4px 4px 0 var(--ink), 0 0 24px #e8c54747;border-radius:10px;padding:.75rem 2.2rem;font-size:clamp(1.1rem,2.8vw,1.4rem);animation:2.8s ease-in-out infinite title-cta-glow}@keyframes title-cta-glow{0%,to{box-shadow:4px 4px 0 var(--ink), 0 0 18px #e8c54738}50%{box-shadow:4px 4px 0 var(--ink), 0 0 32px #e8c5476b}}.title-cta:hover{background:linear-gradient(180deg, #f0d060 0%, var(--mustard) 100%);animation:none}.title-cta-secondary{letter-spacing:.04em;text-transform:uppercase;border-radius:10px;padding:.6rem 1.4rem;font-size:clamp(.95rem,2.2vw,1.1rem)}.title-section{border:3px solid var(--ink);-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);width:100%;box-shadow:6px 6px 0 var(--ink);background:#061018b8;border-radius:14px;padding:clamp(.95rem,2.2vw,1.35rem)}.title-section-header{text-align:center;margin-bottom:.85rem}.title-section-header h2{color:var(--mustard);letter-spacing:.1em;text-transform:uppercase;text-shadow:2px 2px 0 var(--ink);margin:0;font-family:Bangers,sans-serif;font-size:1.15rem}.title-section-header p{color:#bed8d4d9;max-width:34rem;margin:.3rem auto 0;font-family:Barlow Semi Condensed,Segoe UI,sans-serif;font-size:.9rem;line-height:1.45}.title-steps{text-align:left;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:.65rem;margin:0;padding:0;list-style:none;display:grid}.title-step{border:2px solid var(--ink);background:#081420e0;border-radius:10px;gap:.65rem;padding:.7rem .75rem;display:flex;box-shadow:inset 0 1px #ffffff0f}.title-step-num{border:2px solid var(--ink);width:1.9rem;height:1.9rem;color:var(--color-steel-deep);background:var(--mustard);box-shadow:2px 2px 0 var(--ink);border-radius:50%;flex:none;place-items:center;font-family:Bangers,sans-serif;font-size:1.05rem;display:grid}.title-step-label{color:var(--color-frozen-lake);letter-spacing:.06em;text-transform:uppercase;margin-bottom:.2rem;font-family:Bangers,sans-serif;font-size:.92rem;display:block}.title-step p{color:#e8f4f2eb;margin:0;font-family:Barlow Semi Condensed,Segoe UI,sans-serif;font-size:.86rem;line-height:1.45}.title-roster-grid{grid-template-columns:repeat(auto-fit,minmax(140px,1fr));gap:.65rem;margin:0;padding:0;list-style:none;display:grid}.title-roster-card{border:2px solid var(--ink);box-shadow:3px 3px 0 var(--ink);background:#081420e0;border-radius:12px;transition:transform .15s,border-color .15s;overflow:hidden}.title-roster-card:hover,.title-roster-card:focus-within{border-color:var(--mustard);transform:translateY(-4px)}.title-roster-btn{width:100%;color:inherit;text-align:left;cursor:pointer;letter-spacing:normal;background:0 0;border:none;margin:0;padding:0;font-family:inherit;display:block}.title-roster-btn:focus-visible{outline:none}.title-roster-cta{letter-spacing:.06em;color:var(--mustard);opacity:0;margin-top:.35rem;font-family:Bangers,sans-serif;font-size:.72rem;transition:opacity .15s}.title-roster-card:hover .title-roster-cta,.title-roster-card:focus-within .title-roster-cta{opacity:1}.title-roster-portrait{aspect-ratio:4/5;border-bottom:2px solid var(--ink);overflow:hidden}.title-roster-portrait img{object-fit:cover;object-position:center 12%;width:100%;height:100%;transition:transform .25s}.title-roster-card:hover .title-roster-portrait img{transform:scale(1.05)}.title-roster-meta{text-align:left;flex-direction:column;gap:.1rem;padding:.5rem .6rem .6rem;display:flex}.title-roster-name{letter-spacing:.05em;color:var(--cream);font-family:Bangers,sans-serif;font-size:.95rem}.title-roster-role{color:#bed8d4d9;font-family:Barlow Semi Condensed,Segoe UI,sans-serif;font-size:.78rem}.title-roster-faction{letter-spacing:.1em;text-transform:uppercase;border-radius:999px;align-self:flex-start;margin-top:.3rem;padding:.08rem .5rem;font-family:Bangers,sans-serif;font-size:.62rem}.title-roster-faction-crew{color:var(--color-steel-deep);background:var(--color-frozen-lake);border:1.5px solid var(--ink)}.title-roster-faction-rival{color:var(--color-steel-deep);background:var(--mustard);border:1.5px solid var(--ink)}.title-section-header p.title-stakes-copy{max-width:40rem;margin-bottom:.85rem}.title-faction-row{grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:.65rem;display:grid}.title-faction-chip{border:2px solid var(--ink);text-align:left;background:#081420e0;border-radius:10px;flex-direction:column;gap:.15rem;padding:.6rem .75rem;display:flex}.title-faction-name{letter-spacing:.07em;text-transform:uppercase;color:var(--color-frozen-lake);font-family:Bangers,sans-serif;font-size:.88rem}.title-faction-motto{color:#e8f4f2d9;font-family:Barlow Semi Condensed,Segoe UI,sans-serif;font-size:.82rem;font-style:italic}.title-rule-label{color:var(--color-frozen-lake);letter-spacing:.06em;text-transform:uppercase;margin-bottom:.15rem;font-family:Bangers,sans-serif;font-size:.82rem;display:block}.title-rules-links{border-top:2px dashed #78d5d740;margin-top:.85rem;padding-top:.75rem}.title-rules-link-grid{grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:.55rem;display:grid}.title-rule-link{text-align:left;cursor:pointer;border:2px solid var(--circuit-teal);width:100%;box-shadow:3px 3px 0 var(--ink);color:inherit;background:linear-gradient(160deg,#12303af2,#081420f2);border-radius:10px;flex-direction:column;align-items:flex-start;gap:.2rem;padding:.6rem .7rem;transition:transform .15s,border-color .15s,box-shadow .15s;display:flex}.title-rule-link:hover,.title-rule-link:focus-visible{border-color:var(--mustard);box-shadow:4px 4px 0 var(--ink);outline:none;transform:translateY(-2px)}.title-rule-link p{color:#e8f4f2eb;margin:0;font-family:Barlow Semi Condensed,Segoe UI,sans-serif;font-size:.84rem;line-height:1.4}.title-rule-link-cta{letter-spacing:.06em;color:var(--mustard);margin-top:.2rem;font-family:Bangers,sans-serif;font-size:.72rem}.title-legal-footer{letter-spacing:.04em;border-top:2px dashed #78d5d733;flex-wrap:wrap;justify-content:center;align-items:center;gap:.45rem .65rem;margin-top:1rem;padding-top:.85rem;font-family:Bangers,sans-serif;font-size:.78rem;display:flex}.title-legal-footer a{color:#bed8d4e6;text-underline-offset:.15em;text-decoration:underline}.title-legal-footer a:hover,.title-legal-footer a:focus-visible{color:var(--circuit-teal);outline:none}.title-legal-sep{color:#bed8d473}.title-legal-studio{color:#bed8d48c}.title-settings-btn{top:max(.75rem, env(safe-area-inset-top,0px));right:max(.75rem, env(safe-area-inset-right,0px));z-index:15;border:3px solid var(--ink);width:2.65rem;height:2.65rem;color:var(--mustard);box-shadow:3px 3px 0 var(--ink);cursor:pointer;background:linear-gradient(#186aa3f2,#0c3452fa);border-radius:50%;place-items:center;padding:0;transition:transform .15s,background .15s;display:grid;position:fixed}.title-settings-btn:hover,.title-settings-btn:focus-visible{box-shadow:4px 4px 0 var(--ink);background:linear-gradient(#2081c3fa,#124466fa);outline:none;transform:translate(-1px,-1px)}.settings-icon-svg{width:1.35rem;height:1.35rem}.settings-drawer-root{z-index:80;pointer-events:none;position:fixed;inset:0}.settings-drawer-backdrop{cursor:pointer;pointer-events:auto;background:#0000009e;border:none;animation:.2s settings-backdrop-in;position:absolute;inset:0}.settings-drawer{border-left:4px solid var(--ink);pointer-events:auto;width:min(340px,90vw);padding-top:env(safe-area-inset-top,0px);padding-bottom:env(safe-area-inset-bottom,0px);box-sizing:border-box;background:linear-gradient(#0c3452fa 0%,#061018fc 100%);flex-direction:column;animation:.25s settings-drawer-in;display:flex;position:absolute;top:0;bottom:0;right:0;box-shadow:-8px 0 24px #00000073}@keyframes settings-backdrop-in{0%{opacity:0}to{opacity:1}}@keyframes settings-drawer-in{0%{transform:translate(100%)}to{transform:translate(0)}}.settings-drawer-header{border-bottom:2px solid #63d2ff38;justify-content:space-between;align-items:center;gap:.75rem;padding:1rem 1rem .85rem;display:flex}.settings-drawer-header h2{letter-spacing:.04em;color:var(--mustard);margin:0;font-family:Bangers,sans-serif;font-size:1.45rem}.settings-drawer-close{border:3px solid var(--ink);background:var(--mustard);width:2rem;height:2rem;color:var(--ink);cursor:pointer;box-shadow:2px 2px 0 var(--ink);border-radius:50%;font-size:1.35rem;line-height:1}.settings-drawer-close:hover,.settings-drawer-close:focus-visible{background:var(--circuit-teal);outline:none}.settings-drawer-body{-webkit-overflow-scrolling:touch;flex-direction:column;flex:1;gap:1.25rem;padding:1rem;display:flex;overflow-y:auto}.settings-section{flex-direction:column;gap:.55rem;display:flex}.settings-section-label{letter-spacing:.12em;text-transform:uppercase;color:#78d5d7d9;margin:0;font-family:Bangers,sans-serif;font-size:.72rem}.settings-install-card{border:2px solid var(--circuit-teal);box-shadow:3px 3px 0 var(--ink);background:#00000047;border-radius:10px;padding:.85rem .9rem}.settings-install-card-done{border-color:#78d5d773}.settings-install-title{letter-spacing:.03em;color:var(--mustard);margin-bottom:.35rem;font-family:Bangers,sans-serif;font-size:1rem;display:block}.settings-install-card p,.settings-about-text{color:#e8f4f2eb;margin:0;font-family:Bangers,sans-serif;font-size:.82rem;line-height:1.4}.settings-about-studio{letter-spacing:.03em;color:#bed8d4b3;margin:.45rem 0 0;font-family:Bangers,sans-serif;font-size:.74rem;line-height:1.35}.settings-about-sep{color:#bed8d466}.settings-install-steps{color:#e8f4f2eb;margin:.5rem 0 0;padding-left:1.15rem;font-family:Bangers,sans-serif;font-size:.82rem;line-height:1.45}.settings-install-steps li+li{margin-top:.35rem}.settings-install-btn{width:100%;margin-top:.75rem;padding:.55rem .75rem;font-size:1rem}.settings-audio-card{box-shadow:3px 3px 0 var(--ink);background:#00000047;border:2px solid #78d5d78c;border-radius:10px;flex-direction:column;gap:.75rem;padding:.85rem .9rem;display:flex}.settings-audio-row{justify-content:space-between;align-items:center;gap:.75rem;margin:0;display:flex}.settings-audio-row-label{color:var(--pearl);font-family:Bangers,sans-serif;font-size:.9rem}.settings-audio-toggle{border:2px solid var(--circuit-teal);min-width:4.5rem;color:var(--pearl);cursor:pointer;box-shadow:2px 2px 0 var(--ink);background:#78d5d733;border-radius:999px;align-items:center;gap:.45rem;padding:.25rem .45rem .25rem .3rem;display:inline-flex}.settings-audio-toggle-off{background:#00000059;border-color:#78d5d759}.settings-audio-toggle-thumb{background:var(--mustard);width:1.1rem;height:1.1rem;box-shadow:1px 1px 0 var(--ink);border-radius:50%;transition:transform .15s}.settings-audio-toggle-off .settings-audio-toggle-thumb{background:#e8f4f28c;transform:translate(-2px)}.settings-audio-toggle-text{letter-spacing:.06em;text-transform:uppercase;font-family:Bangers,sans-serif;font-size:.75rem}.settings-audio-volume-row{flex-wrap:wrap}.settings-audio-slider{min-width:6rem;accent-color:var(--circuit-teal);flex:8rem}.settings-audio-slider:disabled{opacity:.45}.settings-audio-volume-value{color:#e8f4f2d9;text-align:right;min-width:2.5rem;font-family:Bangers,sans-serif;font-size:.78rem}.settings-audio-hint{color:#e8f4f2b3;margin:0;font-family:Bangers,sans-serif;font-size:.72rem;line-height:1.35}.audio-mute-btn{width:2rem;height:2rem;color:var(--pearl);cursor:pointer;box-shadow:2px 2px 0 var(--ink);background:#00000059;border:2px solid #78d5d773;border-radius:8px;flex-shrink:0;padding:0;font-size:.95rem;line-height:1}.audio-mute-btn:hover,.audio-mute-btn:focus-visible{border-color:var(--circuit-teal);outline:none}.rules-page{color:var(--pearl);background:0 0;position:relative}.rules-page-bg{pointer-events:none;z-index:0;background:radial-gradient(at 20% 0,#78d5d71f,#0000 45%),radial-gradient(at 80% 100%,#f0b04014,#0000 40%),#061018;position:fixed;inset:0}.rules-page-grid{opacity:.12;background-image:linear-gradient(#78d5d759 1px,#0000 1px),linear-gradient(90deg,#78d5d759 1px,#0000 1px);background-size:28px 28px;position:absolute;inset:0}.rules-page-layout{z-index:1;position:relative}.rules-page-header{grid-template-columns:auto 1fr;align-items:start;gap:.75rem 1rem;margin-bottom:1rem;display:grid}.rules-page-heading{text-align:center}.rules-page-league{letter-spacing:.14em;text-transform:uppercase;color:var(--circuit-teal);margin:0;font-family:Bangers,sans-serif;font-size:.78rem}.rules-page-heading h1{letter-spacing:.06em;color:var(--mustard);text-shadow:2px 2px 0 var(--ink);margin:.15rem 0 0;font-family:Bangers,sans-serif;font-size:clamp(1.6rem,4vw,2.2rem)}.rules-page-sub{color:#bed8d4d9;margin:.25rem 0 0;font-family:Bangers,sans-serif;font-size:.85rem}.legal-page .rules-page-header{grid-template-columns:1fr}@media (width>=520px){.legal-page .rules-page-header{grid-template-columns:auto 1fr}}.legal-back-link{white-space:nowrap;justify-self:start;align-items:center;text-decoration:none;display:inline-flex}.legal-prose{border:3px solid var(--ink);box-shadow:6px 6px 0 var(--ink);color:#e8f4f2f0;background:#061018c7;border-radius:14px;padding:clamp(.85rem,2.5vw,1.25rem);font-family:system-ui,-apple-system,Segoe UI,Roboto,sans-serif;font-size:clamp(.92rem,2.4vw,1rem);line-height:1.6}.legal-prose section+section{margin-top:1.35rem}.legal-prose h2{letter-spacing:.06em;text-transform:uppercase;color:var(--mustard);text-shadow:1px 1px 0 var(--ink);margin:0 0 .5rem;font-family:Bangers,sans-serif;font-size:clamp(1.05rem,2.8vw,1.2rem)}.legal-prose p{margin:0 0 .75rem}.legal-prose p:last-child{margin-bottom:0}.legal-prose ul{margin:0 0 .75rem;padding-left:1.25rem}.legal-prose li{margin-bottom:.35rem}.legal-prose li strong{color:var(--circuit-teal)}.legal-prose code{background:#081420e6;border:1px solid #78d5d740;border-radius:4px;padding:.1em .35em;font-size:.88em}.legal-prose a{color:var(--circuit-teal)}.legal-notice{border-left:3px solid var(--mustard);background:#f0b04014;padding:.65rem .75rem;font-size:.9em;margin-bottom:1rem!important}.legal-updated{color:#bed8d4d9;border-top:1px dashed #78d5d740;padding-top:.85rem;font-size:.88em;margin-top:1.25rem!important}.legal-page-footer{text-align:center;border-top:2px dashed #78d5d733;margin-top:1rem;padding-top:.85rem}.legal-page-footer p{letter-spacing:.04em;color:#bed8d499;margin:0;font-family:Bangers,sans-serif;font-size:.78rem}.rules-filters{border:3px solid var(--ink);box-shadow:4px 4px 0 var(--ink);background:#061018b8;border-radius:12px;flex-direction:column;gap:.45rem;margin-bottom:1rem;padding:.75rem;display:flex}.rules-filter-row{flex-wrap:wrap;gap:.4rem;display:flex}.rules-filter-chip{letter-spacing:.05em;text-transform:uppercase;color:#e8f4f2e6;border:2px solid var(--ink);cursor:pointer;background:#081420e6;border-radius:999px;padding:.35rem .7rem;font-family:Bangers,sans-serif;font-size:.78rem}.rules-filter-chip:hover,.rules-filter-chip:focus-visible{border-color:var(--circuit-teal);outline:none}.rules-filter-chip.active{color:var(--ink);background:var(--circuit-teal);border-color:var(--ink)}.rules-filter-chip-tier.active{background:var(--mustard)}.rules-filter-count{color:#bed8d4bf;margin:.15rem 0 0;font-family:Bangers,sans-serif;font-size:.72rem}.rules-empty{text-align:center;color:#bed8d4cc;grid-column:1/-1;margin:1rem 0;font-family:Bangers,sans-serif}.card-library-grid{grid-template-columns:repeat(auto-fill,minmax(260px,1fr));gap:.75rem;display:grid}.card-library-item{border:3px solid var(--ink);box-shadow:4px 4px 0 var(--ink);background:#061018c7;border-radius:12px;grid-template-columns:auto 1fr;align-items:start;gap:.65rem;padding:.65rem;display:grid}.card-library-item-btn{text-align:left;width:100%;color:inherit;cursor:pointer;font:inherit;transition:transform .12s,border-color .12s,box-shadow .12s}.card-library-item-btn:hover,.card-library-item-btn:focus-visible{border-color:var(--circuit-teal);box-shadow:5px 5px 0 var(--ink);outline:none;transform:translateY(-2px)}.card-library-open-hint{letter-spacing:.06em;color:var(--mustard);margin-top:.4rem;font-family:Bangers,sans-serif;font-size:.72rem;display:inline-block}.card-library-meta h3{letter-spacing:.04em;color:var(--pearl);margin:0;font-family:Bangers,sans-serif;font-size:1rem}.card-library-cost{letter-spacing:.04em;color:var(--circuit-teal);margin:.15rem 0 .35rem;font-family:Bangers,sans-serif;font-size:.72rem}.card-library-desc{color:#e8f4f2e0;margin:0;font-size:.78rem;line-height:1.35}.card-library-desc+.card-library-desc{margin-top:.35rem}.card-library-desc strong{color:var(--circuit-teal);font-weight:600}.card-library-synergy{color:#bed8d4cc;font-style:italic}.card-library-roster{align-items:stretch}.card-library-portrait-wrap{border:2px solid var(--ink);background:#081420f2;border-radius:10px;flex-shrink:0;width:88px;position:relative;overflow:hidden;box-shadow:inset 0 0 0 1px #78d5d733}.card-library-portrait{object-fit:cover;object-position:top center;width:100%;height:100%;min-height:120px;display:block}.card-library-role-chip{letter-spacing:.06em;text-transform:uppercase;text-align:center;color:var(--ink);background:var(--circuit-teal);border:1px solid var(--ink);border-radius:4px;padding:.15rem .2rem;font-family:Bangers,sans-serif;font-size:.58rem;position:absolute;bottom:.25rem;left:.25rem;right:.25rem}.card-library-role-chip-crew{background:var(--mustard)}.glossary-list{gap:.65rem;margin:0;display:grid}.glossary-entry{border:3px solid var(--ink);box-shadow:4px 4px 0 var(--ink);background:#061018c7;border-radius:12px;padding:.75rem .85rem}.glossary-entry dt{flex-wrap:wrap;align-items:baseline;gap:.4rem .65rem;margin-bottom:.3rem;display:flex}.glossary-term{letter-spacing:.05em;color:var(--mustard);font-family:Bangers,sans-serif;font-size:1.05rem}.glossary-category{letter-spacing:.1em;text-transform:uppercase;color:var(--circuit-teal);font-family:Bangers,sans-serif;font-size:.68rem}.glossary-entry dd{color:#e8f4f2eb;margin:0;font-size:.88rem;line-height:1.4}.btn-primary,.btn-secondary,.btn-target,.btn-end-turn{border:3px solid var(--ink);box-shadow:3px 3px 0 var(--ink);transition:transform .1s,box-shadow .1s}.btn-primary{background:var(--color-frozen-lake);color:var(--color-steel-deep);padding:.75rem 2rem;font-size:1.5rem}.btn-primary:hover{background:var(--color-pearl-aqua)}.btn-secondary{background:var(--color-ash-grey);color:var(--color-steel-deep);padding:.5rem 1rem;font-size:1rem}.btn-target{background:var(--color-steel-blue);color:var(--color-bright-snow);margin:0 .25rem;padding:.4rem 1rem;font-size:1rem}.btn-end-turn{background:linear-gradient(180deg, var(--color-frozen-lake), var(--color-steel-blue));color:var(--ink);border-radius:8px;padding:.6rem 1.8rem;font-size:1.4rem}.btn-primary:hover,.btn-target:hover,.btn-end-turn:hover{box-shadow:5px 5px 0 var(--ink);transform:translate(-2px,-2px)}.game-layout{background:var(--board-dark);box-sizing:border-box;flex-direction:column;flex:auto;width:100%;min-height:0;display:flex;position:relative;overflow:hidden}.sidebar-column{background:var(--sidebar);border-left:4px solid var(--ink);flex-direction:column;height:100vh;max-height:100vh;display:flex}.sidebar-column .dialogue-panel{border-left:none;flex:1;height:auto}.turn-controls{border-top:3px solid #63d2ff4d;flex-direction:column;gap:.5rem;padding:1rem;display:flex}.btn-end-turn-large{background:linear-gradient(180deg, var(--color-frozen-lake), var(--color-steel-blue));color:var(--ink);border:4px solid var(--ink);box-shadow:4px 4px 0 var(--ink);width:100%;padding:.85rem 1rem;font-family:Bangers,sans-serif;font-size:1.6rem}.btn-end-turn-large:hover{box-shadow:6px 6px 0 var(--ink);transform:translate(-2px,-2px)}.btn-cancel,.btn-cancel-wide{background:var(--disabled-bg);color:var(--cream);border:3px solid var(--ink);padding:.4rem 1rem;font-family:Bangers,sans-serif}.btn-cancel-wide{width:100%;font-size:1rem}.top-hud{z-index:2;flex-direction:column;align-items:center;gap:.35rem;margin-bottom:.5rem;padding:.5rem 1rem;display:flex}.match-act-banner{letter-spacing:.04em;border:2px solid var(--ink);border-radius:6px;padding:.25rem 1rem;font-family:Bangers,sans-serif;font-size:.95rem}.match-act-prep{background:var(--cream);color:var(--ink)}.match-act-main-event{background:var(--gold);color:var(--ink);animation:1.4s ease-in-out infinite finale-glow}.act-label{color:var(--rust);font-family:Bangers,sans-serif;font-size:.75rem}.act-label.act-main-event{color:var(--gold);filter:drop-shadow(0 0 2px #ffd250cc)}.token-tracker{border:3px solid var(--ink);background:#00000080;border-radius:8px;max-width:420px;padding:.5rem .85rem}.token-tracker-header{justify-content:space-between;align-items:baseline;margin-bottom:.4rem;display:flex}.token-tracker-title{color:var(--mustard);font-family:Bangers,sans-serif;font-size:1rem}.token-tracker-count{color:#f7f9f9bf;font-family:Bangers,sans-serif;font-size:.8rem}.token-tracker-count strong{color:var(--cream);font-size:1.1rem}.token-tracker-gems{flex-wrap:wrap;gap:.35rem;display:flex}.token-gem-active{clip-path:polygon(50% 0%,61% 35%,98% 35%,68% 57%,79% 91%,50% 70%,21% 91%,32% 57%,2% 35%,39% 35%);background:radial-gradient(circle at 35% 30%, #fff8d0, var(--mustard) 55%, var(--orange));border:2px solid var(--ink);border-radius:0;width:22px;height:22px;animation:2s infinite token-pulse;box-shadow:0 0 10px #e8c547a6}.token-gem-spent{clip-path:polygon(50% 0%,61% 35%,98% 35%,68% 57%,79% 91%,50% 70%,21% 91%,32% 57%,2% 35%,39% 35%);background:var(--color-steel-deep);border:2px solid var(--color-steel-deeper);opacity:.45;border-radius:0;width:22px;height:22px;position:relative}.token-gem-spent:after{content:"";clip-path:polygon(50% 0%,61% 35%,98% 35%,68% 57%,79% 91%,50% 70%,21% 91%,32% 57%,2% 35%,39% 35%);background:var(--disabled-bg);position:absolute;inset:5px}@keyframes token-pulse{0%,to{box-shadow:0 0 8px #e8c54766}50%{box-shadow:0 0 16px #e8c547d9}}.deck-info-bar{color:#f7f9f98c;justify-content:center;gap:1.25rem;padding:.25rem;font-family:Bangers,sans-serif;font-size:.8rem;display:flex}.support-trigger{border:3px solid var(--mustard);color:var(--mustard);background:#0006;border-radius:8px;flex-direction:column;align-items:center;gap:.2rem;padding:.35rem;font-family:Bangers,sans-serif;font-size:.75rem;display:flex}.support-trigger img{object-fit:cover;border:2px solid var(--ink);border-radius:50%;width:48px;height:48px}.support-trigger:disabled{opacity:.35}.support-menu-overlay{z-index:50;background:#000000b8;place-items:center;padding:1rem;display:grid;position:fixed;inset:0}.support-menu-card-wrap{flex-direction:column;align-items:center;gap:.5rem;display:flex;position:relative}.support-menu-card-close{z-index:5;border:3px solid var(--ink);background:var(--mustard);width:2rem;height:2rem;color:var(--ink);cursor:pointer;box-shadow:3px 3px 0 var(--ink);border-radius:50%;font-size:1.35rem;line-height:1;position:absolute;top:-.35rem;right:-.35rem}.support-menu-card-close:hover,.support-menu-card-close:focus-visible{background:var(--circuit-teal);outline:none}.support-menu-card.card-full-art{aspect-ratio:5/7.4;width:min(340px,88vw);max-height:min(82vh,560px)}.support-menu-card-art{object-position:top center}.support-menu-card-scrim{background:linear-gradient(#061018c7 0%,#0610181f 22%,#0610181a 34%,#061018ad 48%,#061018e0 66%,#061018f5 100%)}.support-menu-card .card-full-art-name{letter-spacing:.04em;text-shadow:2px 2px #061018f2,-1px -1px #061018e6,1px -1px #061018e6,-1px 1px #061018e6,0 0 14px #000000e6;font-size:1.5rem}.support-menu-card-header{justify-content:space-between}.support-menu-card-status{letter-spacing:.08em;text-transform:uppercase;color:var(--ink);border:2px solid var(--ink);background:#f0a060;border-radius:999px;padding:.15rem .45rem;font-family:Bangers,sans-serif;font-size:.72rem}.support-menu-card-body{gap:.35rem;padding-bottom:.65rem}.support-menu-card-title{letter-spacing:.08em;text-transform:uppercase;color:var(--color-frozen-lake);text-shadow:1px 1px 0 var(--ink), 0 0 8px #061018e6;margin:0;font-family:Bangers,sans-serif;font-size:.82rem}.support-menu-card-passive{color:#f0f8f6f5;text-shadow:0 1px 2px #000000d9,0 0 10px #061018b3;margin:0 0 .2rem;font-family:Barlow Semi Condensed,Segoe UI,sans-serif;font-size:.86rem;font-weight:500;line-height:1.45}.support-menu-card-silenced{color:#f0a060;text-shadow:1px 1px 0 var(--ink);margin:0;font-family:Bangers,sans-serif;font-size:.78rem}.support-menu-card-abilities{flex-direction:column;gap:.4rem;display:flex}.support-menu-card-ability{text-align:left;cursor:pointer;width:100%;color:inherit;border:2px solid var(--ink);-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);background:#081420eb;border-radius:10px;align-items:flex-start;gap:.55rem;padding:.5rem .55rem;transition:transform .12s,border-color .12s,background .12s;display:flex;box-shadow:inset 0 1px #ffffff14,2px 2px #00000073}.support-menu-card-ability:not(.readonly):not(:disabled):hover,.support-menu-card-ability:not(.readonly):not(:disabled):focus-visible{border-color:var(--circuit-teal);background:#0c2430f5;outline:none;transform:translateY(-1px)}.support-menu-card-ability:disabled{opacity:.45;cursor:not-allowed}.support-menu-card-ability.used{opacity:.7}.support-menu-card-ability.readonly{cursor:default}.support-menu-card-ability-cost{border:2px solid var(--ink);background:radial-gradient(circle at 35% 30%, var(--color-frozen-lake), var(--color-steel-blue));color:#fff;width:30px;height:30px;text-shadow:1px 1px 0 var(--ink);border-radius:50%;flex-shrink:0;place-items:center;font-family:Bangers,sans-serif;font-size:.95rem;display:grid}.support-menu-card-ability-copy{min-width:0}.support-menu-card-ability-copy strong{letter-spacing:.06em;text-transform:uppercase;color:#fff4dc;text-shadow:0 1px 2px #0009;font-family:Barlow Semi Condensed,Segoe UI,sans-serif;font-size:.92rem;font-weight:700;display:block}.support-menu-card-ability-copy p{color:#eef6f4;text-shadow:0 1px 2px #000c;margin:.15rem 0 0;font-family:Barlow Semi Condensed,Segoe UI,sans-serif;font-size:.84rem;font-weight:500;line-height:1.4}.support-menu-card-ability .support-used-tag{color:#f0a060;margin:.2rem 0 0;display:inline-block}.support-menu{background:var(--paper);border:5px solid var(--ink);box-shadow:8px 8px 0 var(--ink);width:min(420px,90vw);max-height:80vh;padding:1rem;overflow-y:auto}.support-menu header{align-items:center;gap:.75rem;margin-bottom:.75rem;display:flex}.support-menu-portrait{object-fit:cover;border:3px solid var(--ink);border-radius:8px;width:64px;height:64px}.support-menu header h3{margin:0;font-family:Bangers,sans-serif}.support-menu header p{color:var(--teal-dark);margin:0;font-family:Bangers,sans-serif;font-size:.85rem}.support-menu-close{color:var(--ink);background:0 0;border:none;margin-left:auto;font-size:1.5rem}.support-menu-hint{color:var(--color-steel-dark);margin:0 0 .75rem;font-family:Bangers,sans-serif;font-size:.85rem}.support-menu-silenced{text-align:center;margin:0 0 .75rem}.support-abilities{flex-direction:column;gap:.5rem;display:flex}.support-ability-btn{text-align:left;border:3px solid var(--ink);box-shadow:3px 3px 0 var(--ink);background:#fff;align-items:flex-start;gap:.75rem;padding:.6rem;display:flex}.support-ability-btn:disabled{opacity:.45}.support-ability-btn.used{background:var(--color-ash-grey)}.support-ability-readonly{cursor:default}.support-ability-cost{background:radial-gradient(circle at 35% 30%, var(--color-frozen-lake), var(--color-steel-blue));border:2px solid var(--ink);color:#fff;border-radius:50%;flex-shrink:0;place-items:center;width:32px;height:32px;font-family:Bangers,sans-serif;display:grid}.support-ability-btn strong{font-family:Bangers,sans-serif;display:block}.support-ability-btn p{color:var(--text-on-light);margin:.15rem 0 0;font-family:Bangers,sans-serif;font-size:.8rem}.support-used-tag{color:var(--rust);margin-left:auto;font-family:Bangers,sans-serif;font-size:.7rem}.fighter-idle{animation:2.5s ease-in-out infinite fighter-bob}@keyframes fighter-bob{0%,to{transform:translateY(0)}50%{transform:translateY(-4px)}}.fighter-selectable .fighter-frame{animation:1s infinite target-pulse}.fighter-effects{gap:2px;display:flex;position:absolute;top:4px;left:4px}.effect-chip{border:1px solid var(--ink);border-radius:4px;padding:.1rem .3rem;font-family:Bangers,sans-serif;font-size:.65rem}.effect-buff{background:var(--color-pearl-aqua);color:#fff}.effect-curse{background:var(--color-steel-blue);color:#fff}.fighter-support-hint{color:var(--mustard);margin-top:.2rem;font-family:Bangers,sans-serif;font-size:.6rem;display:block}.hand-fan .card-playable:active{animation:.35s card-play}@keyframes card-play{0%{transform:rotate(var(--fan-rotate,0deg)) translateY(-40px) scale(1.08)}50%{opacity:.7;transform:rotate(0)translateY(-120px)scale(.9)}to{transform:rotate(var(--fan-rotate,0deg)) translateY(var(--fan-lift,0px));opacity:1}}.fx-layer{pointer-events:none;z-index:40;position:fixed;inset:0}.fx-burst{color:var(--mustard);text-shadow:3px 3px 0 var(--ink);white-space:nowrap;font-family:Bangers,sans-serif;font-size:2rem;animation:.9s forwards fx-pop;position:absolute;top:45%;left:50%;transform:translate(-50%,-50%)}.fx-draw{color:var(--color-frozen-lake)}.fx-strike{color:var(--color-steel-blue);font-size:2.5rem}.fx-buff{color:var(--color-pearl-aqua)}.fx-curse{color:var(--color-steel-dark)}.fx-support{color:var(--mustard)}@keyframes fx-pop{0%{opacity:0;transform:translate(-50%,-50%)scale(.5)}20%{opacity:1;transform:translate(-50%,-60%)scale(1.2)}to{opacity:0;transform:translate(-50%,-90%)scale(1)}}.player-hand-zone{animation:.3s hand-ready}@keyframes hand-ready{0%{opacity:.6;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}.animation-layer{pointer-events:none;z-index:45;position:fixed;inset:0}.flying-card{border:3px solid var(--ink);width:90px;height:120px;box-shadow:0 8px 24px #0000008c, 4px 4px 0 var(--ink);z-index:46;border-radius:8px;position:fixed;overflow:hidden}.flying-card-inner{background:linear-gradient(180deg, var(--paper), var(--aged));width:100%;height:100%}.flying-card-draw{background:linear-gradient(135deg, var(--color-steel-blue), var(--color-steel-deep));width:64px;height:84px}.flying-card-draw .flying-card-inner{background:0 0}.flying-card-strike .flying-card-inner,.card-type-strike .flying-card-inner{background:linear-gradient(135deg, var(--orange), var(--mustard))}.flying-card-buff .flying-card-inner,.card-type-block .flying-card-inner{background:linear-gradient(135deg, var(--color-pearl-aqua), var(--color-ash-grey))}.flying-card-curse .flying-card-inner,.card-type-spell .flying-card-inner{background:linear-gradient(135deg, var(--color-steel-blue), var(--color-frozen-lake))}.flying-strike-icon,.flying-draw-icon{text-shadow:2px 2px 0 var(--ink);place-items:center;font-size:2rem;display:grid;position:absolute;inset:0}.impact-ring{border:4px solid var(--mustard);z-index:44;border-radius:50%;width:20px;height:20px;animation:.55s ease-out forwards impact-expand;position:fixed;transform:translate(-50%,-50%)}.impact-strike{border-color:var(--color-steel-blue);box-shadow:0 0 20px #ff6432cc}.impact-curse{border-color:var(--color-steel-dark);box-shadow:0 0 20px #9a4abab3}.impact-buff{border-color:var(--color-pearl-aqua);box-shadow:0 0 20px #4a9e96b3}.impact-draw{border-color:var(--mustard)}@keyframes impact-expand{0%{opacity:1;width:20px;height:20px}to{opacity:0;width:140px;height:140px}}.impact-text{text-shadow:3px 3px 0 var(--ink);z-index:47;white-space:nowrap;font-family:Bangers,sans-serif;font-size:1.8rem;animation:.65s forwards impact-text-pop;position:fixed;transform:translate(-50%,-50%)}.impact-text-strike{color:var(--color-steel-blue);font-size:2.2rem}.impact-text-buff{color:var(--color-pearl-aqua)}.impact-text-curse{color:var(--color-frozen-lake)}.impact-text-draw,.impact-text-support{color:var(--mustard)}@keyframes impact-text-pop{0%{opacity:0;transform:translate(-50%,-50%)scale(.4)}25%{opacity:1;transform:translate(-50%,-70%)scale(1.25)}to{opacity:0;transform:translate(-50%,-100%)scale(1)}}.fighter-hit{animation:.5s fighter-shake!important}@keyframes fighter-shake{0%,to{transform:translate(0)rotate(0)}15%{transform:translate(-10px)rotate(-4deg)}30%{transform:translate(10px)rotate(4deg)}45%{transform:translate(-8px)rotate(-3deg)}60%{transform:translate(8px)rotate(3deg)}75%{transform:translate(-4px)rotate(-1deg)}}.hand-draw-pulse{animation:.55s hand-pulse}@keyframes hand-pulse{0%,to{transform:scale(1)}40%{filter:brightness(1.15);transform:scale(1.04)}}.draw-sparkles{z-index:44;position:fixed;transform:translate(-50%,-50%)}.draw-spark{background:var(--mustard);border-radius:50%;width:8px;height:8px;animation:.6s forwards spark-fly;position:absolute}.draw-spark:first-child{--angle:0deg;animation-delay:0s}.draw-spark:nth-child(2){--angle:72deg;animation-delay:50ms}.draw-spark:nth-child(3){--angle:144deg;animation-delay:.1s}.draw-spark:nth-child(4){--angle:216deg;animation-delay:.15s}.draw-spark:nth-child(5){--angle:288deg;animation-delay:.2s}@keyframes spark-fly{0%{transform:rotate(var(--angle)) translateX(0);opacity:1}to{transform:rotate(var(--angle)) translateX(40px);opacity:0}}.support-burst{color:var(--mustard);text-shadow:3px 3px 0 var(--ink);z-index:47;font-size:2.5rem;animation:.6s forwards support-burst-pop;position:fixed;transform:translate(-50%,-50%)}@keyframes support-burst-pop{0%{opacity:0;transform:translate(-50%,-50%)scale(.3)}30%{opacity:1;transform:translate(-50%,-60%)scale(1.3)}to{opacity:0;transform:translate(-50%,-90%)scale(.8)}}.battlefield{background:radial-gradient(ellipse 70% 45% at 50% 48%, #e8c54714 0%, transparent 55%), radial-gradient(ellipse 80% 60% at 50% 45%, #63d2ff24 0%, transparent 70%), linear-gradient(180deg, #081420 0%, var(--color-steel-deep) 42%, #081420 100%);flex-direction:column;height:100%;min-height:0;display:flex;position:relative;overflow:hidden}.battlefield:before{content:"";pointer-events:none;background:radial-gradient(circle at 50% 40%,#0000 15%,#0003 16%,#0000 17%),radial-gradient(circle at 50% 40%,#0000 30%,#00000026 31%,#0000 32%),radial-gradient(circle at 50% 40%,#0000 45%,#0000001a 46%,#0000 47%);position:absolute;inset:0}.opponent-zone{z-index:2;flex-direction:column;flex:none;padding:.5rem 1.5rem .25rem;display:flex;position:relative}.opponent-hand{flex-shrink:0;justify-content:center;gap:0;min-height:56px;margin-bottom:.35rem;display:flex}.zone-header{color:#f7f9f9a6;flex-shrink:0;gap:1rem;margin-bottom:.35rem;font-family:Bangers,sans-serif;font-size:.85rem;display:flex}.opponent-hand .card-small{margin-left:-28px}.opponent-hand .card-small:first-child{margin-left:0}.field-row{justify-content:center;align-items:flex-end;gap:2rem;padding:.5rem 0;display:flex}.field-opponent{flex-shrink:0;align-items:center;padding:.25rem 0}.fighter-opponent.fighter-hero .fighter-frame{width:140px;height:175px}.fighter-opponent.fighter-sidekick .fighter-frame{width:105px;height:130px}.fighter-opponent .fighter-hp-badge{z-index:3;min-width:40px;height:40px;font-size:1.35rem;bottom:8px}.fighter-opponent .fighter-plate h3{font-size:1rem}.fighter-hp-text{color:var(--color-pearl-aqua);text-shadow:1px 1px 0 var(--ink);margin:.15rem 0 0;font-family:Bangers,sans-serif;font-size:.8rem}.fighter-player .fighter-hp-text{color:var(--color-frozen-lake)}.field-player{align-items:flex-end;padding-bottom:.5rem}.player-center-gap{width:120px}.fighter-token{background:0 0;border:none;flex-direction:column;align-items:center;gap:.35rem;padding:0;transition:transform .15s,filter .15s;display:flex}.fighter-frame{border:4px solid var(--ink);background:var(--paper);box-shadow:0 6px 20px #00000080, 4px 4px 0 var(--ink);position:relative;overflow:hidden}.fighter-opponent .fighter-frame{border-color:var(--color-steel-dark);box-shadow:0 6px 20px var(--shadow-ink), 4px 4px 0 var(--color-steel-deeper)}.fighter-hero .fighter-frame{width:160px;height:200px}.fighter-sidekick .fighter-frame{width:120px;height:150px}.fighter-player.fighter-hero .fighter-frame{width:180px;height:220px}.fighter-art{object-fit:cover;object-position:top center;filter:saturate(1.1)contrast(1.05);width:100%;height:100%;display:block}.fighter-hp-badge{background:radial-gradient(circle at 35% 30%, var(--color-bright-snow), var(--color-steel-blue));border:3px solid var(--ink);color:#fff;min-width:36px;height:36px;text-shadow:1px 1px 0 var(--ink);border-radius:50%;place-items:center;font-family:Bangers,sans-serif;font-size:1.2rem;display:grid;position:absolute;bottom:6px;left:50%;transform:translate(-50%);box-shadow:0 2px 6px #00000080}.fighter-shield-badge{background:var(--teal);border:2px solid var(--ink);color:#fff;border-radius:50%;place-items:center;width:28px;height:28px;font-family:Bangers,sans-serif;font-size:.9rem;display:grid;position:absolute;top:6px;right:6px}.fighter-plate{text-align:center;max-width:180px}.fighter-plate h3{color:var(--cream);text-shadow:2px 2px 0 var(--ink);margin:0;font-family:Bangers,sans-serif;font-size:1.1rem}.fighter-plate p{color:#f7f9f9b3;margin:0;font-family:Bangers,sans-serif;font-size:.75rem}.fighter-role-tag{color:var(--mustard);text-transform:uppercase;letter-spacing:.1em;font-family:Bangers,sans-serif;font-size:.65rem}.fighter-hp-bar{background:#0006;border:1px solid #fff3;border-radius:3px;width:100%;height:6px;margin-top:.25rem;overflow:hidden}.fighter-hp-fill{background:linear-gradient(90deg, var(--color-steel-blue), var(--color-frozen-lake));height:100%;transition:width .3s}.fighter-gear-tag{color:var(--mustard);background:#0006;border-radius:4px;margin-top:.2rem;padding:.1rem .4rem;font-family:Bangers,sans-serif;font-size:.65rem;display:inline-block}.fighter-selectable{cursor:pointer;animation:1s infinite target-pulse}.fighter-selectable .fighter-frame{outline:3px solid var(--mustard);outline-offset:3px}.fighter-selected .fighter-frame{outline:4px solid var(--color-bright-snow);outline-offset:4px}.fighter-down{opacity:.35;filter:grayscale(.9)}.fighter-down .fighter-art{filter:grayscale()}@keyframes target-pulse{0%,to{transform:scale(1)}50%{transform:scale(1.03)}}.scene-slot{flex-direction:column;align-items:center;gap:.25rem;display:flex}.scene-empty{color:#f7f9f966;border:2px dashed #f7f9f94d;border-radius:8px;place-items:center;width:90px;height:120px;font-family:Bangers,sans-serif;font-size:.85rem;display:grid}.scene-timer{color:var(--mustard);font-family:Bangers,sans-serif;font-size:.75rem}.target-banner{text-align:center;border-top:3px solid var(--ink);border-bottom:3px solid var(--ink);z-index:2;background:#63d2ffe6;padding:.5rem}.target-banner p{margin:0 0 .35rem;font-family:Bangers,sans-serif;font-size:1.1rem}.player-zone{flex-direction:column;flex:none;justify-content:flex-end;padding:0 1rem .5rem;display:flex;position:relative}.player-hand-zone{z-index:10;flex-direction:column;flex:none;justify-content:flex-end;align-items:center;min-height:190px;padding:.25rem 0 .5rem;display:flex;position:relative}.hand-fan{justify-content:center;align-items:flex-end;gap:0;padding:0 1rem;display:flex}.hand-fan .card-in-hand{transform:rotate(var(--fan-rotate,0deg)) translateY(var(--fan-lift,0px));z-index:1;transform-origin:bottom;margin-left:-28px;transition:transform .2s,box-shadow .2s}.hand-fan .card-in-hand:first-child{margin-left:0}.hand-fan .card-in-hand:hover{transform:rotate(var(--fan-rotate,0deg)) translateY(-18px) scale(1.06);z-index:20;box-shadow:0 10px 24px #0000008c, 4px 4px 0 var(--ink)}.hand-fan .card-in-hand.card-playable:hover{cursor:pointer}.hand-fan .card-in-hand.card-unplayable{opacity:.8}.card-hover-preview{z-index:350;pointer-events:none;animation:.15s preview-pop;position:absolute;bottom:calc(100% + 12px);left:50%;transform:translate(-50%)}@media (hover:none),(pointer:coarse){.card-hover-preview{display:none!important}}.card-hover-preview .card-full-art{width:240px;box-shadow:0 20px 50px #000000d9, 6px 6px 0 var(--ink)}.card-hover-preview .card{width:200px;min-height:270px;box-shadow:0 20px 50px #000000d9, 6px 6px 0 var(--ink);padding:.55rem;opacity:1!important;filter:none!important}.card-hover-preview .card-name{margin:.35rem 0;font-size:1.05rem}.card-hover-preview .card-text{-webkit-line-clamp:unset;font-size:.82rem;line-height:1.4;display:block;overflow:visible}.card-hover-preview .card-art-panel{height:80px}.card-hover-preview .card-type-ribbon{font-size:.7rem}.card-preview-hint{text-align:center;color:var(--color-steel-deep);background:var(--color-ash-grey);border:2px solid var(--ink);border-radius:6px;max-width:180px;margin:.35rem 0 0;padding:.25rem .45rem;font-family:Bangers,sans-serif;font-size:.78rem}@keyframes preview-pop{0%{opacity:0;transform:translate(-50%)translateY(8px)scale(.95)}to{opacity:1;transform:translate(-50%)translateY(0)scale(1)}}.action-bar{background:#00000073;border-top:2px solid #f7f9f926;border-radius:8px 8px 0 0;justify-content:space-between;align-items:center;padding:.5rem 1rem;display:flex}.deck-info{color:#f7f9f9a6;gap:1rem;font-family:Bangers,sans-serif;font-size:.85rem;display:flex}.token-tray{align-items:center;gap:.5rem;display:flex}.token-tray-label{color:var(--mustard);font-family:Bangers,sans-serif;font-size:1rem}.token-gems{align-items:center;gap:.3rem;display:flex}.token-gem{background:radial-gradient(circle at 30% 30%, var(--color-bright-snow), var(--color-frozen-lake));border:3px solid var(--ink);border-radius:50%;width:28px;height:28px;box-shadow:0 0 10px #63d2ff80}.token-zero{color:#fff4dc80;font-family:Bangers,sans-serif}.card{background:linear-gradient(180deg, var(--paper) 0%, var(--aged) 100%);border:3px solid var(--ink);text-align:center;width:130px;min-height:180px;box-shadow:3px 3px 0 var(--ink);border-radius:10px;flex-direction:column;flex-shrink:0;padding:.4rem;display:flex;position:relative;overflow:hidden}.card-small{border-radius:6px;width:72px;min-height:96px;padding:.2rem}.card-tiny{width:48px;min-height:64px}.card-small .card-name,.card-small .card-text,.card-small .card-stats,.card-small .card-art-panel,.card-small .card-type-ribbon{display:none}.card-unplayable:not(.card-in-hand){opacity:.55;cursor:default}.hand-fan .card-unplayable{opacity:.52;filter:grayscale(.4)}.card:disabled{opacity:.5;cursor:not-allowed}.card-playable:not(:disabled){cursor:pointer}.hand-strip .card-in-hand,.hand-strip .card-in-hand *,.hand-card-anchor{-webkit-user-select:none;user-select:none;-webkit-touch-callout:none}.card-selected{outline:3px solid var(--mustard)}.card-cost-gem{background:radial-gradient(circle at 35% 30%, var(--color-frozen-lake), var(--color-steel-blue));border:3px solid var(--ink);color:#fff;width:32px;height:32px;text-shadow:1px 1px 0 var(--ink);z-index:2;border-radius:50%;place-items:center;font-family:Bangers,sans-serif;font-size:1.1rem;display:grid;position:absolute;top:-4px;left:-4px;box-shadow:0 2px 6px #0006}.card-small .card-cost-gem{width:22px;height:22px;font-size:.8rem}.card-tier-badge{border:2px solid var(--ink);z-index:2;color:#fff;width:22px;height:22px;text-shadow:1px 1px 0 var(--ink);border-radius:50%;place-items:center;font-family:Bangers,sans-serif;font-size:.75rem;display:grid;position:absolute;top:-4px;right:-4px}.card-tier-badge-common,.card-tier-badge-rare{background:var(--color-steel-blue)}.card-tier-badge-legendary{background:var(--mustard);color:var(--ink);text-shadow:none}.card-role-badge{border:2px solid var(--ink);z-index:2;color:#fff;width:20px;height:20px;text-shadow:1px 1px 0 var(--ink);border-radius:50%;place-items:center;font-family:Bangers,sans-serif;font-size:.72rem;display:grid;position:absolute;bottom:-4px;right:-4px;box-shadow:0 2px 4px #00000059}.card-role-badge-guardian{background:linear-gradient(135deg,#7ec4bc,#3a7d74)}.card-role-badge-striker{background:linear-gradient(135deg,#ffd9a8,#9c5c1a)}.card-role-badge-catalyst{background:linear-gradient(135deg,#d4b8f5,#6b3fa0)}.card-slot .card-role-badge{border-width:1px;width:14px;height:14px;font-size:.58rem;bottom:2px;right:2px}.card-tier-common{background-image:repeating-linear-gradient(-12deg,#0000,#0000 6px,#ffffff08 6px 7px);box-shadow:inset 0 0 0 2px #ffffff1f,inset 0 0 12px #00000040}.card-tier-rare{box-shadow:inset 0 0 0 2px #78d5d78c,0 0 12px #63d2ff33}.card-tier-legendary{animation:3s ease-in-out infinite legendary-card-glow;box-shadow:inset 0 0 0 2px #ffc850a6,0 0 14px #e8c54747}@keyframes legendary-card-glow{0%,to{filter:brightness()}50%{filter:brightness(1.06)}}.card-type-ribbon{text-transform:uppercase;color:var(--rust);margin-top:.5rem;font-family:Bangers,sans-serif;font-size:.6rem}.card-art-panel{border:2px solid var(--ink);background:var(--color-steel-deep);border-radius:4px;height:60px;margin:.3rem 0;position:relative;overflow:hidden}.card-art-image{object-fit:cover;object-position:center;width:100%;height:100%;display:block}.card-art-panel-placeholder{background:linear-gradient(145deg,#0c345259,#186aa333)}.card-art-panel-generated{background:#061018}.card-art-panel-weapon.card-art-panel-placeholder{box-shadow:inset 0 0 0 1px #78d5d740}.card-art-panel-hull.card-art-panel-placeholder{box-shadow:inset 0 0 0 1px #bed8d433}.card-art-panel-gear.card-art-panel-placeholder{box-shadow:inset 0 0 0 1px #e8c54733}.card-art-panel-crew-gear.card-art-panel-placeholder{box-shadow:inset 0 0 0 1px #3a7d7459}.card-art-panel-trick.card-art-panel-placeholder{box-shadow:inset 0 0 0 1px #63d2ff40}.card-type-strike .card-art-panel{background:linear-gradient(135deg, var(--color-frozen-lake), var(--color-steel-blue))}.card-type-block .card-art-panel{background:linear-gradient(135deg, var(--color-pearl-aqua), var(--color-ash-grey))}.card-type-spell .card-art-panel{background:linear-gradient(135deg, var(--color-steel-blue), var(--color-frozen-lake))}.card-type-equipment .card-art-panel{background:linear-gradient(135deg, var(--color-ash-grey), var(--color-pearl-aqua))}.card-type-weapon .card-art-panel{background:linear-gradient(135deg, var(--color-steel-dark), var(--color-pearl-aqua))}.card-type-ability .card-art-panel{background:linear-gradient(135deg, var(--color-pearl-aqua), var(--color-frozen-lake))}.card-type-strip .card-art-panel{background:linear-gradient(135deg, var(--color-steel-blue), var(--color-steel-dark))}.card-type-scene .card-art-panel{background:linear-gradient(135deg, var(--ring-1), var(--ring-3))}.card-name{margin:0;font-family:Bangers,sans-serif;font-size:.85rem;line-height:1.1}.card-text{color:var(--text-on-light);-webkit-line-clamp:4;-webkit-box-orient:vertical;flex:1;margin:.2rem 0 0;font-family:Bangers,sans-serif;font-size:.58rem;line-height:1.2;display:-webkit-box;overflow:hidden}.card-in-hand .card-name{font-size:.72rem}.card-in-hand .card-text{-webkit-line-clamp:2;font-size:.52rem}.card-stats{justify-content:center;gap:.5rem;margin-top:.2rem;display:flex}.stat-damage,.stat-shield,.stat-heal{border:2px solid var(--ink);border-radius:4px;padding:.1rem .4rem;font-family:Bangers,sans-serif;font-size:.85rem}.stat-damage{background:var(--orange);color:#fff}.stat-shield{background:var(--teal);color:#fff}.stat-heal{background:var(--color-steel-blue);color:var(--color-bright-snow)}.card-back{background:linear-gradient(135deg, var(--color-steel-blue), var(--color-steel-deep));color:var(--mustard);place-items:center;display:grid}.card-back-rings{border:2px solid var(--mustard);opacity:.4;border-radius:50%;position:absolute;inset:6px}.card-back-star{z-index:1;font-size:1.4rem}.dialogue-panel{background:var(--sidebar);flex-direction:column;display:flex;overflow:hidden}.dialogue-header{background:#0000004d;border-bottom:2px solid #63d2ff40;padding:.45rem .65rem}.dialogue-toggle{width:100%;color:inherit;text-align:left;cursor:pointer;background:0 0;border:none;justify-content:space-between;align-items:center;gap:.5rem;margin:0 0 .25rem;padding:0;display:flex}.dialogue-toggle:hover .dialogue-toggle-hint{color:var(--color-frozen-lake)}.dialogue-toggle-hint{letter-spacing:.04em;color:#f7f9f973;flex-shrink:0;font-family:Bangers,sans-serif;font-size:.65rem}.dialogue-header h2{color:var(--mustard);text-shadow:1px 1px 0 var(--ink);margin:0;font-family:Bangers,sans-serif;font-size:1rem}.dialogue-meta{color:#f7f9f9b3;flex-wrap:wrap;justify-content:space-between;align-items:center;gap:.5rem;font-family:Bangers,sans-serif;font-size:.72rem;display:flex}.phase-pill{border:2px solid var(--ink);border-radius:4px;padding:.08rem .4rem;font-size:.62rem}.phase-player_turn{background:var(--teal);color:var(--cream)}.phase-cpu_turn{background:var(--rust);color:var(--cream)}.phase-game_over{background:var(--mustard);color:var(--ink)}.dialogue-latest-compact{color:#f7f9f9bf;white-space:nowrap;text-overflow:ellipsis;margin:0;padding:.3rem .65rem .4rem;font-family:Bangers,sans-serif;font-size:.68rem;line-height:1.25;overflow:hidden}.dialogue-collapsed{flex:none}.dialogue-expanded{flex:1;min-height:0}.dialogue-feed{flex-direction:column;flex:1;gap:.35rem;min-height:0;max-height:28vh;padding:.4rem .55rem;display:flex;overflow-y:auto}.dialogue-line{background:#f7f9f90f;border-left:2px solid #63d2ff4d;border-radius:0 4px 4px 0;align-items:flex-start;gap:.35rem;padding:.35rem .5rem;display:flex}.dialogue-latest{border-left-color:var(--mustard);background:#63d2ff26}.dialogue-bullet{color:var(--mustard);flex-shrink:0;font-size:.7rem}.dialogue-line p{color:#f7f9f9d9;margin:0;font-family:Bangers,sans-serif;font-size:.68rem;line-height:1.25}.dialogue-empty{color:#f7f9f966;font-family:Bangers,sans-serif;font-style:italic}.game-over-overlay{z-index:100;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);background:radial-gradient(circle at 50% 35%,#2081c32e,#0000 55%),#061018d6;place-items:center;padding:1rem;display:grid;position:fixed;inset:0}.game-over-panel{text-align:center;border:4px solid var(--ink);width:min(92vw,380px);box-shadow:0 0 0 2px #78d5d740, 0 16px 48px #0000008c, 8px 8px 0 var(--ink);background:linear-gradient(#186aa3f5 0%,#0c3452fa 100%);border-radius:16px;flex-direction:column;align-items:center;gap:.55rem;padding:1.15rem 1.25rem 1.25rem;animation:.38s cubic-bezier(.22,.95,.32,1) game-over-pop;display:flex;position:relative;overflow:hidden}.game-over-panel-glow{pointer-events:none;opacity:.55;background:radial-gradient(circle,#e8c54759,#0000 68%);height:70%;position:absolute;inset:-40% -20% auto}.game-over-panel-lose .game-over-panel-glow{opacity:.45;background:radial-gradient(circle,#c45c2652,#0000 68%)}.game-over-panel-win{box-shadow:0 0 0 2px #e8c54759, 0 0 28px #e8c5472e, 0 16px 48px #0000008c, 8px 8px 0 var(--ink)}.game-over-panel-lose{box-shadow:0 0 0 2px #c45c2647, 0 16px 48px #0000008c, 8px 8px 0 var(--ink)}@keyframes game-over-pop{0%{opacity:0;transform:scale(.82)translateY(18px)}to{opacity:1;transform:scale(1)translateY(0)}}.game-over-league{letter-spacing:.14em;text-transform:uppercase;color:#bed8d4e0;margin:0;font-family:Bangers,sans-serif;font-size:.72rem}.game-over-round{border:2px solid var(--ink);letter-spacing:.06em;text-transform:uppercase;color:var(--color-steel-deep);background:var(--mustard);border-radius:999px;padding:.12rem .55rem;font-family:Bangers,sans-serif;font-size:.78rem;display:inline-block}.game-over-headline{letter-spacing:.03em;text-transform:uppercase;color:var(--cream);text-shadow:0 0 18px #e8c54759, 3px 3px 0 var(--ink);margin:.15rem 0 0;font-family:Bangers,sans-serif;font-size:clamp(2rem,8vw,2.65rem);line-height:.95}.game-over-panel-lose .game-over-headline{color:#ffe8d4;text-shadow:0 0 14px #c45c2659, 3px 3px 0 var(--ink)}.game-over-flavor{color:#f4e4c8eb;max-width:30ch;margin:0;font-family:Bangers,sans-serif;font-size:.92rem;line-height:1.35}.game-over-matchup{background:#06101859;border:2px solid #00000059;border-radius:10px;flex-wrap:wrap;justify-content:center;align-items:center;gap:.35rem .5rem;width:100%;padding:.45rem .55rem;display:flex}.game-over-roster{letter-spacing:.03em;text-transform:uppercase;font-family:Bangers,sans-serif;font-size:.88rem}.game-over-roster-player{color:var(--color-frozen-lake)}.game-over-roster-cpu{color:#ffb08a}.game-over-vs{letter-spacing:.08em;color:#f4e4c8a6;font-family:Bangers,sans-serif;font-size:.72rem}.game-over-scoreboard{grid-template-columns:1fr 1fr;gap:.45rem;width:100%;display:grid}.game-over-fighter{text-align:left;background:#0814208c;border:2px solid #00000059;border-radius:10px;flex-direction:column;gap:.08rem;padding:.45rem .5rem;display:flex}.game-over-fighter-winner{border-color:#e8c5478c;box-shadow:inset 0 0 0 1px #e8c5472e}.game-over-panel-lose .game-over-fighter-winner{border-color:#c45c268c;box-shadow:inset 0 0 0 1px #c45c262e}.game-over-fighter-label{letter-spacing:.08em;text-transform:uppercase;color:#bed8d4bf;font-family:Bangers,sans-serif;font-size:.58rem}.game-over-fighter strong{color:var(--cream);font-family:Bangers,sans-serif;font-size:.95rem;line-height:1.05}.game-over-hp{color:#f4e4c8d1;font-family:Bangers,sans-serif;font-size:.78rem}.game-over-cta{letter-spacing:.04em;text-transform:uppercase;background:linear-gradient(180deg, var(--mustard) 0%, #d4a82e 100%);width:100%;color:var(--ink);margin-top:.25rem;font-size:1.25rem}.game-over-cta:hover{background:linear-gradient(180deg, #f0d060 0%, var(--mustard) 100%)}@media (width<=1000px){.game-layout{grid-template-columns:1fr 240px}.fighter-hero .fighter-frame{width:120px;height:150px}.fighter-player.fighter-hero .fighter-frame{width:140px;height:175px}.hand-fan .card{margin-left:-60px}}.online-match-screen{background:radial-gradient(ellipse 80% 40% at 50% 0%, #2081c333 0%, transparent 55%), linear-gradient(180deg, #061018 0%, var(--color-steel-deeper) 42%, #061018 100%)}.online-match-panel{flex-direction:column;gap:1rem;padding:clamp(1rem,3vw,1.5rem);display:flex}.online-match-header h1{color:var(--cream);text-shadow:2px 2px 0 var(--ink);margin:.15rem 0 0;font-family:Bangers,sans-serif;font-size:clamp(1.8rem,5vw,2.4rem)}.online-match-league{letter-spacing:.14em;text-transform:uppercase;color:var(--mustard);margin:0;font-size:.78rem}.online-match-sub{color:#f4e4c8d9;margin:.35rem 0 0;font-size:.92rem}.online-match-back{margin-bottom:.75rem}.online-match-status,.online-match-hint{color:#f4e4c8d1;margin:0;font-size:.9rem}.online-match-error{border:2px solid var(--orange);color:var(--cream);background:#c45c2626;border-radius:10px;padding:.75rem .9rem}.online-match-error-hint{opacity:.9;margin:.5rem 0 0;font-size:.82rem}.online-match-retry{margin-top:.65rem}.online-match-notice{border:2px solid var(--mustard);color:var(--cream);background:#e8c5471f;border-radius:8px;padding:.65rem .85rem}.online-match-notice-warn{border-color:var(--orange);background:#c45c262e}.online-match-lobby-dim{opacity:.55}.online-reconnect-banner{z-index:60;border:2px solid var(--color-pearl-aqua);color:var(--cream);pointer-events:none;background:#0c3458f0;border-radius:999px;padding:.5rem 1rem;font-size:.88rem;position:fixed;top:.65rem;left:50%;transform:translate(-50%);box-shadow:0 6px 24px #00000073}.online-reconnect-banner-opponent{border-color:var(--mustard);background:#5c2412f0}.online-match-copy-hint{color:var(--mustard);margin:0;font-size:.85rem}.online-match-actions{flex-direction:column;gap:.65rem;display:flex}.online-match-action{width:100%;padding:.75rem 1rem;font-size:1rem}.online-match-join{flex-direction:column;gap:.55rem;display:flex}.online-match-label{letter-spacing:.12em;text-transform:uppercase;color:var(--mustard);margin:0;font-size:.78rem}.online-match-input{border:3px solid var(--ink);color:var(--cream);letter-spacing:.08em;text-transform:uppercase;background:#081826eb;border-radius:8px;padding:.65rem .75rem;font-family:Bangers,sans-serif;font-size:1.35rem}.online-match-lobby{border:3px solid var(--ink);text-align:center;background:#081826bf;border-radius:12px;flex-direction:column;align-items:center;gap:.65rem;padding:1rem;display:flex}.online-match-code{letter-spacing:.12em;color:var(--cream);text-shadow:3px 3px 0 var(--ink);margin:0;font-family:Bangers,sans-serif;font-size:clamp(2rem,8vw,2.75rem)}.online-match-copy-row{flex-wrap:wrap;justify-content:center;gap:.5rem;display:flex}.online-match-waiting{color:var(--color-frozen-lake);align-items:center;gap:.5rem;font-size:.95rem;display:flex}.online-match-pulse{background:var(--mustard);border-radius:50%;width:.55rem;height:.55rem;animation:1.2s ease-in-out infinite online-pulse}@keyframes online-pulse{0%,to{opacity:.35;transform:scale(.9)}50%{opacity:1;transform:scale(1.1)}}.online-match-ready{border:2px solid var(--color-pearl-aqua);color:var(--cream);background:#78d5d71f;border-radius:10px;flex-direction:column;align-items:center;gap:.35rem;padding:.65rem;display:flex}.online-match-ready-icon{color:var(--mustard);font-size:1.5rem}.online-match-ready p{margin:0;font-size:.92rem;line-height:1.4}.deck-select-screen{background:radial-gradient(ellipse 80% 40% at 50% 0%, #2081c333 0%, transparent 55%), linear-gradient(180deg, #061018 0%, var(--color-steel-deeper) 42%, #061018 100%);position:relative}.deck-select-bg{pointer-events:none;z-index:0;position:fixed;inset:0;overflow:hidden}.deck-select-grid{opacity:.32;background:repeating-linear-gradient(90deg,#ffffff08 0 1px,#0000 1px 28px),repeating-linear-gradient(0deg,#ffffff05 0 1px,#0000 1px 28px);position:absolute;inset:0}.deck-select-ring{border:2px solid #78d5d71f;border-radius:50%;width:min(140vw,900px);height:min(140vw,900px);position:absolute;bottom:-35%;left:50%;transform:translate(-50%);box-shadow:inset 0 0 50px #63d2ff0d}.deck-select-layout{z-index:1;position:relative}.deck-select-header{grid-template-columns:1fr auto;gap:.75rem 1rem;margin-bottom:1rem;display:grid}.deck-select-back{letter-spacing:.04em;color:var(--cream);border-color:var(--ink);background:#081420bf;flex-shrink:0;justify-self:start;font-family:Bangers,sans-serif}.deck-select-builder{letter-spacing:.04em;color:var(--mustard);border-color:var(--ink);background:#081420bf;grid-area:1/2;justify-self:end;font-family:Bangers,sans-serif}.deck-select-heading{border:3px solid var(--ink);min-width:min(100%,280px);box-shadow:4px 4px 0 var(--ink);background:linear-gradient(#186aa3eb,#0c3452f5);border-radius:12px;grid-column:1/-1;padding:.75rem 1rem}.deck-select-league{letter-spacing:.14em;text-transform:uppercase;color:#bed8d4e0;margin:0 0 .2rem;font-family:Bangers,sans-serif;font-size:.72rem}.deck-select-header h1{color:var(--cream);text-shadow:3px 3px 0 var(--ink);margin:0;font-family:Rye,serif;font-size:clamp(1.65rem,4.5vw,2.15rem);line-height:1.05}.deck-select-sub{letter-spacing:.04em;text-transform:uppercase;color:var(--mustard);margin:.35rem 0 0;font-family:Bangers,sans-serif;font-size:.82rem}.deck-grid{grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:.85rem;padding-bottom:1rem;display:grid}.deck-card{text-align:left;border:3px solid var(--ink);min-height:220px;box-shadow:5px 5px 0 var(--ink);cursor:pointer;color:var(--cream);background:#081420eb;border-radius:14px;flex-direction:column;padding:0;transition:transform .15s,box-shadow .15s,border-color .15s;display:flex;position:relative;overflow:hidden}.deck-card:hover{box-shadow:7px 7px 0 var(--ink);border-color:#e8c5478c;transform:translateY(-3px)}.deck-card-art{background-image:var(--deck-art);opacity:.42;background-position:top;background-size:cover;position:absolute;inset:0}.deck-card-scrim{background:linear-gradient(#06101859 0%,#0610188c 38%,#061018f0 100%);position:absolute;inset:0}.deck-card-body{z-index:1;flex-direction:column;gap:.65rem;height:100%;padding:.85rem;display:flex;position:relative}.deck-card-roster{gap:.55rem;display:flex}.deck-card-fighter{border:2px solid var(--ink);-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);background:#081420d1;border-radius:10px;flex:1;align-items:center;gap:.45rem;min-width:0;padding:.35rem .45rem;display:flex}.deck-card-fighter-support{flex:.92}.deck-card-fighter-meta{flex-direction:column;gap:.05rem;min-width:0;display:flex}.deck-card-role{letter-spacing:.08em;text-transform:uppercase;color:var(--color-frozen-lake);font-family:Bangers,sans-serif;font-size:.56rem}.deck-card-fighter-name{color:var(--cream);text-overflow:ellipsis;white-space:nowrap;font-family:Bangers,sans-serif;font-size:.72rem;line-height:1.1;overflow:hidden}.deck-portrait{object-fit:cover;object-position:top center;border:2px solid var(--ink);background:var(--color-steel-deep);border-radius:50%;flex-shrink:0;width:48px;height:48px;display:block;box-shadow:0 2px 6px #00000073}.deck-portrait-support{width:42px;height:42px}.deck-card-copy h2{letter-spacing:.03em;text-transform:uppercase;color:var(--cream);text-shadow:2px 2px 0 var(--ink);margin:0 0 .2rem;font-family:Bangers,sans-serif;font-size:1.35rem;line-height:1.05}.deck-tagline{color:#e8f4f2e6;margin:0;font-family:Bangers,sans-serif;font-size:.82rem;line-height:1.35}.deck-clock{color:var(--circuit-teal);margin:.35rem 0 0;font-size:.72rem;font-style:italic;line-height:1.35}.deck-goal{color:#ffffffb8;margin:.25rem 0 0;font-size:.68rem;line-height:1.35}.deck-card-footer{justify-content:space-between;align-items:center;gap:.5rem;margin-top:auto;padding-top:.15rem;display:flex}.deck-pack-chip{border:1.5px solid var(--ink);letter-spacing:.05em;text-transform:uppercase;color:var(--color-steel-deep);background:var(--mustard);border-radius:999px;padding:.15rem .5rem;font-family:Bangers,sans-serif;font-size:.62rem}.deck-play-cta{letter-spacing:.04em;text-transform:uppercase;color:var(--mustard);text-shadow:1px 1px 0 var(--ink);font-family:Bangers,sans-serif;font-size:.88rem}.deck-card-selected{border-color:var(--mustard);box-shadow:0 0 0 2px #e8c54759, 7px 7px 0 var(--ink);transform:translateY(-2px)}.deck-card-selected .deck-play-cta{color:var(--cream)}.deck-card-dimmed{opacity:.55;transform:none}.deck-card-dimmed:hover{box-shadow:5px 5px 0 var(--ink);transform:none}.online-deck-ready-bar{z-index:2;border:3px solid var(--ink);box-shadow:5px 5px 0 var(--ink);background:#081420f5;border-radius:14px;flex-direction:column;align-items:center;gap:.65rem;margin-top:.5rem;padding:1rem 1.1rem 1.15rem;display:flex;position:sticky;bottom:0}.online-deck-room{letter-spacing:.06em;text-transform:uppercase;color:#e8f4f2d9;margin:0;font-family:Bangers,sans-serif;font-size:.78rem}.online-deck-ready-chips{flex-wrap:wrap;justify-content:center;gap:.5rem;display:flex}.online-deck-chip{border:2px solid var(--ink);letter-spacing:.05em;text-transform:uppercase;color:var(--cream);background:#ffffff14;border-radius:999px;padding:.25rem .65rem;font-family:Bangers,sans-serif;font-size:.72rem}.online-deck-chip-ready{color:var(--color-steel-deep);background:var(--mustard)}.online-deck-ready-btn{min-width:min(100%,320px);font-size:1rem}.online-deck-wait-hint{letter-spacing:.04em;text-transform:uppercase;color:var(--mustard);align-items:center;gap:.5rem;margin:0;font-family:Bangers,sans-serif;font-size:.95rem;display:flex}.online-deck-wait-col{flex-direction:column;align-items:center;gap:.55rem;display:flex}.online-deck-retry{font-size:.82rem}.online-deck-error{border:2px solid var(--burnt-orange);color:#ffd4c4;background:#50180c8c;border-radius:8px;margin:0;padding:.45rem .65rem;font-size:.82rem}.deck-card-portraits,.deck-card-fighters{flex-shrink:0;gap:.5rem;margin-bottom:.65rem;display:flex}.deck-card-portraits img,.deck-card-fighters img{object-fit:cover;object-position:top center;border:2px solid var(--ink);background:var(--color-ash-grey);border-radius:8px;flex-shrink:0;width:56px;max-width:56px;height:56px;max-height:56px;display:block}.deck-card-meta{color:var(--color-steel-dark);font-family:Bangers,sans-serif;font-size:.78rem}.deck-card-custom{cursor:default;background:linear-gradient(#123048fa,#081826fa);min-height:0;overflow:visible}.deck-card-main{width:100%;min-height:200px;color:inherit;text-align:left;cursor:pointer;background:0 0;border:0;flex-direction:column;flex:0 auto;padding:0;display:flex}.deck-card-custom.deck-card-locked .deck-card-main{cursor:pointer}.deck-card-main:disabled{cursor:not-allowed}.deck-card-locked{border-color:#bed8d459}.deck-card-locked .deck-card-main{opacity:.78}.deck-card-scrim-custom{background:linear-gradient(#08142026,#081420e0)}.deck-portrait-empty{color:#bed8d4a6;border:2px dashed #bed8d473;border-radius:999px;justify-content:center;align-items:center;width:44px;height:44px;font-family:Bangers,sans-serif;display:inline-flex}.deck-pack-chip-warn{color:#ffd8c8;background:#783020d9}.deck-card-edit{z-index:2;color:var(--mustard);letter-spacing:.08em;text-transform:uppercase;cursor:pointer;background:#081420f5;border:0;border-top:2px solid #bed8d433;flex-shrink:0;margin:0;padding:.55rem .75rem;font-family:Bangers,sans-serif;font-size:.82rem;position:relative}.deck-card-edit:hover{color:var(--cream);background:#186aa38c}.deck-builder-screen{position:relative}.deck-builder-layout{z-index:1;position:relative}.deck-builder-header{grid-template-columns:1fr;gap:.75rem;margin-bottom:1rem;display:grid}.deck-builder-meta{grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:.75rem;margin-bottom:.85rem;display:grid}.deck-builder-name-field{letter-spacing:.06em;text-transform:uppercase;color:var(--mustard);flex-direction:column;gap:.25rem;font-family:Bangers,sans-serif;font-size:.78rem;display:flex}.deck-builder-name-field input{border:2px solid var(--ink);color:var(--cream);background:#081420e0;border-radius:8px;padding:.55rem .65rem;font-family:Rye,serif;font-size:1rem}.deck-builder-status{border:2px solid var(--ink);background:#081420d1;border-radius:10px;flex-wrap:wrap;justify-content:space-between;align-items:center;gap:.65rem 1rem;margin-bottom:.75rem;padding:.65rem .75rem;display:flex}.deck-builder-counts{letter-spacing:.04em;color:#bed8d4d9;flex-wrap:wrap;gap:.45rem .75rem;font-family:Bangers,sans-serif;font-size:.78rem;display:flex}.deck-builder-counts .ok{color:var(--mustard)}.deck-builder-tier-info{opacity:.75;font-size:.72rem}.deck-builder-ready{letter-spacing:.05em;text-transform:uppercase;font-family:Bangers,sans-serif;font-size:.82rem}.deck-builder-ready.ready{color:#9ef0c8}.deck-builder-ready.incomplete{color:#ffb4a8}.deck-builder-errors{color:#ffd0c8;background:#40100c73;border:2px solid #ff786073;border-radius:8px;margin:0 0 .85rem;padding:.65rem .85rem;font-size:.82rem}.deck-builder-errors li+li{margin-top:.25rem}.builder-section{margin-bottom:1rem}.builder-section-title{letter-spacing:.08em;text-transform:uppercase;color:var(--mustard);margin:0 0 .45rem;font-family:Bangers,sans-serif;font-size:.88rem}.builder-slot-grid-alts{margin-top:.5rem}.builder-section-hint{color:var(--text-muted,#dce6ff9e);margin:0 0 .65rem;font-size:.78rem;line-height:1.45}.builder-alt-bay{margin-top:.85rem}.builder-slot-grid{grid-template-columns:repeat(auto-fit,minmax(140px,1fr));gap:.55rem;display:grid}.builder-slot-grid-roster{grid-template-columns:repeat(auto-fit,minmax(180px,1fr))}.builder-slot-grid-single{grid-template-columns:minmax(180px,280px)}.builder-slot{position:relative}.builder-slot-btn{width:100%;min-height:92px;color:var(--cream);text-align:left;cursor:pointer;background:#081420b8;border:2px dashed #bed8d459;border-radius:10px;padding:.55rem .65rem;transition:border-color .15s,background .15s}.builder-slot-filled .builder-slot-btn{border-style:solid;border-color:var(--ink);box-shadow:3px 3px 0 var(--ink);background:linear-gradient(#186aa38c,#081420eb)}.builder-slot-btn:hover{border-color:var(--mustard)}.builder-slot-label{letter-spacing:.08em;text-transform:uppercase;color:var(--mustard);font-family:Bangers,sans-serif;font-size:.72rem;display:block}.builder-slot-sublabel{opacity:.65;margin-top:.35rem;font-size:.68rem;display:block}.builder-slot-hint{color:#bed8d4b3;margin-top:.35rem;font-family:Bangers,sans-serif;font-size:.78rem;display:block}.builder-slot-card-name{margin-top:.35rem;font-family:Rye,serif;font-size:.92rem;line-height:1.15;display:block}.builder-slot-portrait{border:2px solid var(--ink);object-fit:cover;object-position:top center;border-radius:999px;width:44px;height:44px;margin-top:.35rem;display:block}.builder-slot-clear{border:2px solid var(--ink);width:1.5rem;height:1.5rem;color:var(--cream);cursor:pointer;background:#081420eb;border-radius:999px;line-height:1;position:absolute;top:.25rem;right:.25rem}.deck-builder-actions{flex-wrap:wrap;align-items:center;gap:.65rem;margin-top:1.25rem;padding-bottom:1rem;display:flex}.deck-builder-save-notice{color:#9ef0c8;letter-spacing:.04em;margin:0;font-family:Bangers,sans-serif}.builder-picker-overlay{z-index:120;background:#040a12b8;justify-content:center;align-items:center;padding:1rem;display:flex;position:fixed;inset:0}.builder-picker{border:3px solid var(--ink);width:min(720px,100%);max-height:min(88dvh,820px);box-shadow:6px 6px 0 var(--ink);background:linear-gradient(#186aa3f5,#081420fa);border-radius:14px;flex-direction:column;display:flex;overflow:hidden}.builder-picker-header{border-bottom:2px solid #bed8d426;justify-content:space-between;align-items:flex-start;gap:.75rem;padding:.85rem 1rem;display:flex}.builder-picker-header h2{color:var(--cream);margin:.15rem 0 0;font-family:Rye,serif}.builder-picker-league{letter-spacing:.12em;text-transform:uppercase;color:#bed8d4bf;margin:0;font-family:Bangers,sans-serif;font-size:.72rem}.builder-picker-close{color:var(--cream);cursor:pointer;background:0 0;border:0;font-size:1.5rem;line-height:1}.builder-picker-roster,.builder-picker-cards{gap:.55rem;padding:.75rem;display:grid;overflow-y:auto}.builder-picker-cards{grid-template-columns:repeat(auto-fill,minmax(120px,1fr))}.builder-roster-option{border:2px solid var(--ink);color:var(--cream);text-align:left;cursor:pointer;background:#081420b8;border-radius:10px;align-items:flex-start;gap:.65rem;padding:.65rem;display:flex}.builder-roster-option.selected,.builder-roster-option:hover{border-color:var(--mustard);background:#186aa373}.builder-roster-portrait{border:2px solid var(--ink);object-fit:cover;object-position:top center;border-radius:999px;flex-shrink:0;width:56px;height:56px}.builder-roster-role{letter-spacing:.08em;text-transform:uppercase;color:var(--mustard);font-family:Bangers,sans-serif;font-size:.68rem;display:block}.builder-roster-flavor{opacity:.8;margin:.25rem 0 0;font-size:.78rem}.builder-picker-card-btn{border:2px solid var(--ink);cursor:pointer;background:#081420b8;border-radius:10px;flex-direction:column;align-items:center;gap:.35rem;padding:.35rem;display:flex}.builder-picker-card-btn:hover{border-color:var(--mustard)}.builder-picker-card-name{text-align:center;color:var(--cream);font-family:Bangers,sans-serif;font-size:.68rem}.builder-picker-hint{color:#bed8d4cc;margin:0;padding:.75rem 1rem;font-size:.85rem}.builder-picker-footer{border-top:2px solid #bed8d426;padding:.65rem .85rem}.deck-meta{opacity:.75;margin:0;font-size:.75rem}.deck-matchup{flex-wrap:wrap;align-items:center;gap:.5rem;margin-bottom:.5rem;display:flex}.deck-label{color:var(--mustard);text-overflow:ellipsis;white-space:nowrap;max-width:140px;font-family:Bangers,sans-serif;font-size:.85rem;overflow:hidden}.deck-label-cpu{color:var(--orange)}.deck-vs{opacity:.6;font-family:Bangers,sans-serif;font-size:.75rem}.fighter-kill-zone .fighter-frame{animation:1.2s ease-in-out infinite kill-zone-pulse}.kill-zone-badge{z-index:5;background:var(--rust);color:var(--cream);white-space:nowrap;border-radius:4px;padding:2px 8px;font-family:Bangers,sans-serif;font-size:.65rem;position:absolute;top:-8px;left:50%;transform:translate(-50%)}@keyframes kill-zone-pulse{0%,to{box-shadow:0 0 #d4622a80}50%{box-shadow:0 0 16px 4px #d4622acc}}.fighter-finale .fighter-frame{animation:1.4s ease-in-out infinite finale-glow}.finale-badge{z-index:5;background:var(--gold);color:var(--ink);white-space:nowrap;border-radius:4px;padding:2px 8px;font-family:Bangers,sans-serif;font-size:.65rem;position:absolute;top:-8px;right:-4px}@keyframes finale-glow{0%,to{box-shadow:0 0 #ffd25073}50%{box-shadow:0 0 18px 5px #ffd250bf}}.fighter-equipment-list{color:var(--rust);margin:.35rem 0 0;padding:0;font-family:Bangers,sans-serif;font-size:.65rem;list-style:none}.fighter-equipment-list li{padding:1px 0}.scene-slot.scene-active{animation:2s ease-in-out infinite scene-glow}.scene-bonus-tag{color:var(--mustard);text-align:center;font-family:Bangers,sans-serif;font-size:.7rem;display:block}@keyframes scene-glow{0%,to{filter:drop-shadow(0 0 4px #63d2ff66)}50%{filter:drop-shadow(0 0 12px #63d2ffe6)}}.support-panel{border:2px solid var(--aged);background:#00000059;border-radius:10px;margin-bottom:.75rem;padding:.75rem}.support-panel-down{opacity:.7}.support-panel-header{align-items:center;gap:.5rem;margin-bottom:.5rem;display:flex}.support-panel-header img{object-fit:cover;border:2px solid var(--ink);border-radius:6px;width:40px;height:48px}.support-panel-header h3{color:var(--cream);margin:0;font-size:.95rem}.support-panel-header p{color:var(--mustard);margin:0;font-size:.7rem}.support-panel-passive{color:var(--aged);margin:0 0 .5rem;font-size:.7rem}.support-panel-down-msg{color:var(--orange);margin:0;font-family:Bangers,sans-serif;font-size:.8rem}.support-panel-abilities{flex-direction:column;gap:.35rem;display:flex}.support-panel-btn{text-align:left;background:var(--paper);border:2px solid var(--ink);border-radius:6px;align-items:center;gap:.5rem;padding:.35rem .5rem;font-family:Bangers,sans-serif;font-size:.85rem;display:flex}.support-panel-btn.used,.support-panel-btn:disabled{opacity:.45}.discard-picker-overlay{z-index:200;background:#000000bf;justify-content:center;align-items:center;display:flex;position:fixed;inset:0}.discard-picker{background:var(--paper);border:4px solid var(--ink);border-radius:12px;width:90%;max-width:520px;padding:1.5rem}.discard-picker h2{margin:0 0 .5rem}.discard-picker-cards{flex-wrap:wrap;gap:.5rem;margin-top:1rem;display:flex}.discard-picker-card{text-align:left;border:2px solid var(--ink);cursor:pointer;background:#fff;border-radius:8px;flex:140px;padding:.5rem}.discard-picker-card:hover{background:var(--mustard)}.discard-card-cost{background:var(--teal);color:#fff;text-align:center;border-radius:50%;width:22px;height:22px;margin-right:.35rem;font-size:.75rem;line-height:22px;display:inline-block}.champion-attack-damage{color:var(--rust);white-space:nowrap;font-family:Bangers,sans-serif;font-size:1rem}.champion-menu-card.card-full-art{aspect-ratio:5/7.6}.champion-menu-card-hp{letter-spacing:.04em;color:#fff4dc;text-shadow:1px 1px 0 var(--ink);border:2px solid var(--ink);background:#081420d9;border-radius:999px;padding:.12rem .45rem;font-family:Bangers,sans-serif;font-size:.78rem}.champion-menu-trait{border:2px solid var(--circuit-teal);background:#082430eb;border-radius:10px;padding:.45rem .55rem;box-shadow:inset 0 1px #ffffff14}.champion-menu-trait-header{justify-content:space-between;align-items:center;gap:.4rem;margin-bottom:.15rem;display:flex}.champion-menu-trait-label{letter-spacing:.1em;text-transform:uppercase;color:var(--circuit-teal);font-family:Bangers,sans-serif;font-size:.68rem}.champion-menu-trait-status{letter-spacing:.06em;text-transform:uppercase;border:1px solid var(--ink);border-radius:999px;padding:.08rem .35rem;font-family:Bangers,sans-serif;font-size:.65rem}.champion-menu-trait-status.ready{color:var(--ink);background:var(--circuit-teal)}.champion-menu-trait-status.used{color:#fff4dc;background:#503c28e6}.champion-menu-trait-name{letter-spacing:.06em;text-transform:uppercase;color:#fff4dc;text-shadow:0 1px 2px #0009;font-family:Barlow Semi Condensed,Segoe UI,sans-serif;font-size:.95rem;font-weight:700;display:block}.champion-menu-trait-desc{color:#eef6f4;text-shadow:0 1px 2px #000c;margin:.15rem 0 0;font-family:Barlow Semi Condensed,Segoe UI,sans-serif;font-size:.84rem;font-weight:500;line-height:1.4}.champion-menu-weapon-line{letter-spacing:.04em;color:#bed8d4e6;text-shadow:1px 1px #000000b3;margin:0;font-family:Bangers,sans-serif;font-size:.72rem}.champion-menu-empty{color:#e8f4f2d9;text-align:center;background:#081420b3;border:2px dashed #78d5d759;border-radius:10px;margin:0;padding:.45rem .5rem;font-family:Bangers,sans-serif;font-size:.78rem;line-height:1.3}.champion-menu-attack{align-items:center}.champion-menu-attack-dmg{color:#fff4dc;text-shadow:1px 1px 0 var(--ink);flex-shrink:0;font-family:Bangers,sans-serif;font-size:1.05rem}.champion-menu-attack-dmg:after{content:" dmg";letter-spacing:.04em;color:#e8f4f2cc;font-size:.68rem}.beta-gate-screen{background:radial-gradient(ellipse 120% 80% at 50% 100%, #63d2ff38 0%, transparent 55%), radial-gradient(circle at 50% 40%, var(--ring-2) 0%, var(--ring-3) 42%, var(--color-steel-deeper) 100%)}.beta-gate-panel{text-align:center;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);background:#0c34528c;border:3px solid #63d2ff59;border-radius:14px;padding:1.5rem 1.35rem;box-shadow:0 12px 40px #00000059}.beta-gate-tag{color:var(--color-pearl-aqua);letter-spacing:.1em;text-transform:uppercase;margin:0 0 .5rem;font-family:Bangers,sans-serif;font-size:.95rem}.beta-gate-panel h1{color:var(--cream);text-shadow:3px 3px 0 var(--ink);margin:0 0 .5rem;font-family:Rye,serif;font-size:2.25rem}.beta-gate-sub{color:#f7f9f9c7;margin:0 0 .65rem;font-family:Bangers,sans-serif;font-size:.95rem;line-height:1.35}.beta-gate-world{color:#f7f9f9ad;max-width:22rem;margin:0 0 1.15rem;font-family:Rye,serif;font-size:.82rem;line-height:1.45}.beta-gate-form{flex-direction:column;gap:.55rem;display:flex}.beta-gate-input{letter-spacing:.08em;text-align:center;border:3px solid var(--ink);background:var(--paper);width:100%;color:var(--text-on-light);box-sizing:border-box;border-radius:8px;padding:.65rem .75rem;font-family:Bangers,sans-serif;font-size:1.05rem}.beta-gate-input:focus{outline:2px solid var(--color-pearl-aqua);outline-offset:2px}.beta-gate-error{color:#ffb4b4;margin:0;font-family:Bangers,sans-serif;font-size:.82rem}.beta-gate-submit{width:100%;margin-top:.25rem;font-size:1.15rem}.opponent-action-flash{z-index:55;pointer-events:none;place-items:center;padding:1rem;display:grid;position:fixed;inset:0}.opponent-action-flash-backdrop{opacity:0;background:#0812208c;transition:opacity .25s;position:absolute;inset:0}.opponent-action-flash-enter .opponent-action-flash-backdrop,.opponent-action-flash-hold .opponent-action-flash-backdrop{opacity:1}.opponent-action-flash-exit .opponent-action-flash-backdrop{opacity:0;transition:opacity .32s}.opponent-action-flash-panel{z-index:1;border:4px solid var(--color-steel-dark);width:min(94vw,380px);box-shadow:0 0 0 3px var(--ink), 0 12px 40px #0000008c, 6px 6px 0 #00000073;opacity:0;background:linear-gradient(#186aa3f2,#0c3458fa);border-radius:14px;flex-direction:column;align-items:center;gap:.65rem;padding:.85rem 1rem 1rem;transition:transform .28s cubic-bezier(.22,.95,.32,1),opacity .28s;display:flex;position:relative;transform:scale(.72)translateY(24px)}.opponent-action-flash-hold .opponent-action-flash-panel{opacity:1;transform:scale(1)translateY(0)}.opponent-action-flash-exit .opponent-action-flash-panel{opacity:0;transition:transform .32s,opacity .32s;transform:scale(.92)translateY(-12px)}.opponent-action-flash-label{letter-spacing:.03em;text-transform:none;color:var(--mustard);text-shadow:0 1px 0 var(--ink), 0 2px 4px #0000008c;margin:0;font-family:Rye,Georgia,serif;font-size:1.05rem;font-weight:400}.opponent-action-flash-card{filter:drop-shadow(0 10px 22px #0000008c);width:100%}.opponent-action-flash-card .card-full-art{pointer-events:none;width:100%;max-width:none;box-shadow:0 8px 0 var(--ink);aspect-ratio:5/7.2;margin:0 auto}.opponent-action-flash-card .card-full-art-name{text-transform:none;letter-spacing:.02em;color:var(--cream);text-shadow:0 1px 0 var(--ink), 0 2px 6px #000000bf;font-family:Rye,Georgia,serif;font-size:1.45rem;font-weight:400;line-height:1.15}.opponent-action-flash-card .card-full-art-type,.opponent-action-flash-card .card-full-art-stage{letter-spacing:.05em;font-family:Barlow Semi Condensed,Segoe UI,sans-serif;font-size:.72rem;font-weight:700}.opponent-action-flash-card .card-full-art-rules{background:#061018f0;padding:.65rem .7rem}.opponent-action-flash-card .card-full-art-rules-text{color:#f0f8f6;text-shadow:0 1px 2px #000000d9;font-family:Barlow Semi Condensed,Segoe UI,sans-serif;font-size:.95rem;font-weight:500;line-height:1.45}.opponent-action-flash-action{border:3px solid var(--ink);text-align:center;background:#f4e4c81f;border-radius:10px;flex-direction:column;align-items:center;gap:.35rem;min-width:200px;padding:.75rem 1rem;display:flex}.opponent-action-flash-action-attack{border-color:var(--orange);background:linear-gradient(135deg,#ff8c3c59,#c8502840)}.opponent-action-flash-action-support{border-color:var(--color-pearl-aqua);background:linear-gradient(135deg,#78d5d740,#50a0b433)}.opponent-action-flash-icon{filter:drop-shadow(2px 2px 0 var(--ink));font-size:2.4rem;line-height:1}.opponent-action-flash-title{text-transform:none;color:var(--cream);text-shadow:0 1px 0 var(--ink), 0 2px 4px #0000008c;margin:0;font-family:Rye,Georgia,serif;font-size:1.5rem;font-weight:400;line-height:1.15}.opponent-action-flash-subtitle{color:#eef6f4;text-align:center;text-shadow:0 1px 2px #000000bf;max-width:320px;margin:0;font-family:Barlow Semi Condensed,Segoe UI,sans-serif;font-size:.92rem;font-weight:600;line-height:1.4}.champion-card.fighter-hit{animation:.5s fighter-shake!important}.turn-notice-flash{z-index:54;pointer-events:none;place-items:center;padding:1rem;display:grid;position:fixed;inset:0}.turn-notice-flash-backdrop{opacity:0;background:#0812209e;transition:opacity .25s;position:absolute;inset:0}.turn-notice-flash-enter .turn-notice-flash-backdrop,.turn-notice-flash-hold .turn-notice-flash-backdrop{opacity:1}.turn-notice-flash-exit .turn-notice-flash-backdrop{opacity:0;transition:opacity .32s}.turn-notice-flash-panel{z-index:1;border:4px solid var(--color-steel-dark);width:min(94vw,360px);box-shadow:0 0 0 3px var(--ink), 0 12px 40px #0000008c, 6px 6px 0 #00000073;opacity:0;border-radius:14px;flex-direction:column;align-items:center;gap:.55rem;padding:1rem 1.15rem 1.1rem;transition:transform .28s cubic-bezier(.22,.95,.32,1),opacity .28s;display:flex;position:relative;transform:scale(.78)translateY(20px)}.turn-notice-flash-side-player .turn-notice-flash-panel{background:linear-gradient(#186aa3f5,#0c3458fa)}.turn-notice-flash-side-cpu .turn-notice-flash-panel{border-color:var(--orange);background:linear-gradient(#a84820f0,#5c2412fa)}.turn-notice-flash-match_start .turn-notice-flash-panel{width:min(94vw,400px);padding:1.15rem 1.25rem 1.2rem}.turn-notice-flash-hold .turn-notice-flash-panel{opacity:1;transform:scale(1)translateY(0)}.turn-notice-flash-exit .turn-notice-flash-panel{opacity:0;transition:transform .32s,opacity .32s;transform:scale(.94)translateY(-10px)}.turn-notice-flash-label{letter-spacing:.14em;text-transform:uppercase;color:var(--mustard);text-shadow:2px 2px 0 var(--ink);margin:0;font-family:Bangers,sans-serif;font-size:.95rem}.turn-notice-flash-body{text-align:center;flex-direction:column;align-items:center;gap:.35rem;display:flex}.turn-notice-flash-icon{filter:drop-shadow(2px 2px 0 var(--ink));font-size:2.2rem;line-height:1}.turn-notice-flash-title{color:var(--cream);text-shadow:3px 3px 0 var(--ink);margin:0;font-family:Bangers,sans-serif;font-size:clamp(1.75rem,6vw,2.35rem);line-height:1.05}.turn-notice-flash-match_start .turn-notice-flash-title{font-size:clamp(2rem,7vw,2.75rem)}.turn-notice-flash-subtitle{color:#f4e4c8e6;text-align:center;max-width:300px;margin:0;font-size:.85rem;line-height:1.35}.sidebar-actions-locked .btn-end-turn,.sidebar-actions-locked .btn-scrap-hand,.sidebar-actions-locked .btn-forfeit{opacity:.45;cursor:not-allowed}.tutorial-scrim{z-index:120;pointer-events:none;background:#0610181f;position:fixed;inset:0}.tutorial-scrim-ack{background:#06101838}.tutorial-overlay{z-index:130;pointer-events:none;max-height:min(34vh,11.5rem);position:fixed}.tutorial-overlay-top{top:max(3.15rem, calc(env(safe-area-inset-top) + 2.85rem));width:min(32rem,100vw - 1rem);bottom:auto;left:50%;right:auto;transform:translate(-50%)}.tutorial-overlay-top-left{top:max(3.15rem, calc(env(safe-area-inset-top) + 2.85rem));left:max(.45rem, env(safe-area-inset-left));width:min(22rem,100vw - 5.75rem);bottom:auto;right:auto;transform:none}.tutorial-overlay-panel{pointer-events:auto;color:var(--cream);border:3px solid var(--ink);-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);max-height:inherit;background:linear-gradient(165deg,#0c3452f7 0%,#186aa3f7 100%);border-radius:12px;padding:.55rem .7rem .65rem;overflow:auto;box-shadow:0 8px 22px #00000052}.tutorial-overlay-head{justify-content:space-between;align-items:center;gap:.5rem;margin-bottom:.2rem;display:flex}.tutorial-overlay-step{letter-spacing:.05em;text-transform:uppercase;opacity:.82;margin:0;font-size:.62rem;line-height:1.25}.tutorial-overlay-skip-link{color:var(--aqua);cursor:pointer;background:0 0;border:none;flex-shrink:0;padding:.15rem .2rem;font-size:.72rem;text-decoration:underline}.tutorial-overlay-title{color:var(--mustard);margin:0 0 .25rem;font-family:Bangers,sans-serif;font-size:1.15rem;line-height:1.05}.tutorial-overlay-body{margin:0;font-size:.82rem;line-height:1.4}.tutorial-overlay-blocked{color:#ffe9a8;background:#e8c54729;border:1px solid #e8c54773;border-radius:8px;margin:.4rem 0 0;padding:.35rem .45rem;font-size:.78rem}.tutorial-overlay-actions{margin-top:.45rem;display:flex}.tutorial-overlay-continue{width:100%;padding:.38rem .65rem;font-size:.88rem}.title-replay-tutorial{color:var(--color-frozen-lake);cursor:pointer;background:0 0;border:none;margin-top:.35rem;padding:.25rem 0;font-size:.88rem;text-decoration:underline}.deck-card-tutorial-pick{box-shadow:0 0 0 3px var(--mustard), 0 0 18px #e8c54773}.deck-card-tutorial-locked{opacity:.38;filter:grayscale(.35)}.deck-select-tutorial .deck-card-tutorial-pick{animation:1.6s ease-in-out infinite tutorial-pulse}@keyframes tutorial-pulse{0%,to{box-shadow:0 0 0 3px var(--mustard), 0 0 12px #e8c54759}50%{box-shadow:0 0 0 4px var(--frost), 0 0 20px #63d2ff73}}.tutorial-active.tutorial-anchor-player-hp .champion-card,.tutorial-active.tutorial-anchor-rival-hp .champion-card,.tutorial-active.tutorial-anchor-scrapper-attacks .champion-player{outline:3px solid var(--mustard);outline-offset:3px;box-shadow:0 0 16px #e8c54773}.tutorial-active.tutorial-anchor-scrap-tokens .token-bar,.tutorial-active.tutorial-anchor-weapon-bay .player-field [data-drop-zone=weapon],.tutorial-active.tutorial-anchor-hull-bay .player-field [data-drop-zone=equipment_0],.tutorial-active.tutorial-anchor-trick-bay .player-field [data-drop-zone=ability_zone],.tutorial-active.tutorial-anchor-salvage-hand .hand-dock,.tutorial-active.tutorial-anchor-end-turn .btn-end-turn{outline:3px solid var(--mustard);outline-offset:3px;z-index:125;position:relative;box-shadow:0 0 16px #e8c54773}@media (width<=720px){.tutorial-overlay{max-height:min(30vh,10rem)}.tutorial-overlay-top{width:calc(100vw - .65rem)}.tutorial-overlay-top-left{width:min(19rem,100vw - 5.25rem)}.tutorial-overlay-title{font-size:1.05rem}.tutorial-overlay-body{font-size:.78rem}}.tutorial-overlay-surface-deck{top:max(.55rem, env(safe-area-inset-top))}.game-layout{--hand-card-size:clamp(52px, 8vw, 80px);--hand-card-overlap:clamp(-20px, -2vw, -12px);--opponent-hand-card-w:36px;--opponent-hand-card-h:48px;--equip-slot-size:clamp(56px, 9vh, 92px);flex-direction:column;align-items:center;display:flex}.arena-body{min-height:0;width:var(--game-width);max-width:var(--game-width);flex:1;margin:0 auto;display:flex;overflow:hidden}.battlefield{flex-direction:column;flex:1;min-width:0;min-height:0;display:flex;overflow:hidden}.game-sidebar{background:var(--sidebar);border-left:4px solid var(--ink);flex-direction:column;flex:0 0 min(240px,28vw);min-height:0;display:flex;overflow:hidden}.game-sidebar .dialogue-panel{min-height:0;box-shadow:none;border:none;border-radius:0;flex-direction:column;flex:1;display:flex}.game-sidebar .dialogue-expanded .dialogue-feed{flex:1;min-height:0;max-height:none;overflow-y:auto}.sidebar-actions{background:#0000004d;border-top:2px solid #63d2ff47;flex-direction:column;flex-shrink:0;gap:.4rem;margin-top:auto;padding:.55rem .65rem;display:flex}.sidebar-actions .btn-end-turn{width:100%;padding:.5rem .75rem;font-size:1.05rem}.sidebar-actions .btn-forfeit{width:100%;padding:.3rem .5rem;font-size:.78rem}.top-bar{z-index:5;width:var(--game-width);max-width:var(--game-width);background:#00000059;border-bottom:2px solid #63d2ff33;flex-shrink:0;justify-content:space-between;align-items:center;gap:.75rem;margin:0 auto;padding:.35rem .75rem;display:flex}.top-bar .deck-matchup{min-width:0}.token-bar{border:2px solid var(--ink);background:#00000073;border-radius:999px;flex-shrink:0;align-items:center;gap:.45rem;padding:.2rem .5rem;display:flex}.token-bar-label{letter-spacing:.08em;text-transform:uppercase;color:var(--mustard);font-family:Bangers,sans-serif;font-size:.62rem;line-height:1}.token-bar-gems{align-items:center;gap:.2rem;display:flex}.token-bar-count{color:var(--color-bright-snow);font-family:Bangers,sans-serif;font-size:.85rem;line-height:1}.token-bar-sep{opacity:.45;margin:0 .1rem}.token-bar-opponent{border-color:#ff8a7a8c}.board-stage{flex-direction:column;flex:1;justify-content:space-between;align-items:center;gap:clamp(.08rem,.8vh,.2rem);width:100%;min-height:0;padding:0 clamp(.35rem,2vw,.75rem);display:flex;position:relative;overflow:hidden}.opponent-field,.player-field{width:100%;min-height:0;max-width:var(--board-width);flex-direction:column;flex:1 1 0;display:flex;overflow:hidden}.battle-half{flex-flow:wrap;flex:auto;justify-content:center;align-items:center;gap:.4rem .65rem;width:100%;max-width:100%;min-height:0;margin:0 auto;padding:.1rem 0;display:flex;position:relative}.battle-hand-band{flex:none;justify-content:center;width:100%;display:flex;overflow:visible}.battle-equip-band{border-right:2px solid #63d2ff47;flex:none;justify-content:center;align-items:center;width:auto;padding:0 .3rem;display:flex}.battle-fighter-band{flex-direction:column;flex:0 auto;align-items:stretch;gap:.28rem;width:min(100%,300px);max-width:300px;display:flex}.battle-half-player .battle-fighter-band{width:min(100%,300px);max-width:300px}.battle-half-opponent .battle-fighter-band{flex-direction:column-reverse;width:min(100%,240px);max-width:240px}.battle-deck-corner{z-index:4;border:none;flex:none;padding:0 .2rem;position:relative;top:auto;right:auto}.battle-half-opponent{flex-flow:row-reverse wrap;justify-content:center}.battle-half-opponent .battle-equip-band{border-left:2px solid #63d2ff47;border-right:none;margin:0}.battle-half-player .battle-equip-band{border-top:none;margin:0}.equip-slot-row-vertical{justify-content:center;flex-direction:row!important;gap:.32rem!important}.bay-dock{width:auto;min-width:min(100%,420px)}@media (width>=769px){.battle-fighter-band .champion-card{gap:.26rem;padding:.26rem .32rem}.battle-fighter-band .support-card-fighter-bar{gap:.2rem;padding:.2rem .28rem}.battle-fighter-band .champion-portrait-wrap{flex:0 0 50px;width:50px;height:50px}.battle-fighter-band .support-card-portrait-wrap{flex:0 0 38px;width:38px;height:38px}.battle-fighter-band .champion-info h3{font-size:.95rem}.battle-fighter-band .support-card-info h3{font-size:.88rem}.battle-fighter-band .champion-attack-list,.battle-fighter-band .support-ability-list{display:none}.opponent-field,.player-field{padding-top:.65rem}}.hand-dock{z-index:12;box-sizing:border-box;background:#081826eb;border-top:2px solid #63d2ff59;flex-direction:column;flex-shrink:0;justify-content:center;align-items:center;gap:.15rem;width:100%;padding:.35rem .5rem .45rem;display:flex}.hand-dock .hand-strip-player{justify-content:center;width:100%}.hand-dock-dragging .hand-strip .card-in-hand:not(.card-dragging-source){opacity:.55}.hand-dock-dragging .card-dragging-source{opacity:.2;pointer-events:none}.play-mat{flex-shrink:0;justify-content:center;align-items:center;padding:.2rem .25rem;display:flex}.field-row{flex-wrap:nowrap;justify-content:center;align-items:center;gap:.75rem;max-width:720px;margin:0 auto;padding:.2rem 0;display:flex}.fighter-pair{flex-direction:column;flex-shrink:0;align-items:stretch;gap:.35rem;display:flex}.field-row-player .fighter-pair{width:min(100%,320px)}.field-row-opponent .fighter-pair{width:min(100%,228px)}.equip-rack-left{border-right:2px solid #63d2ff47;flex-direction:column;flex-shrink:0;justify-content:center;align-items:center;padding-right:.35rem;display:flex}.field-side-slot{border-left:2px solid #63d2ff33;flex-shrink:0;padding-left:.35rem}.opponent-field{z-index:2}.field-row-opponent{flex-direction:row-reverse}.field-row-opponent .fighter-pair{flex-direction:column-reverse}.field-row-opponent .equip-rack-left{border-left:2px solid #63d2ff47;border-right:none;padding-left:.35rem;padding-right:0}.field-row-opponent .field-side-slot{border-left:none;border-right:2px solid #63d2ff33;padding-left:0;padding-right:.35rem}.field-row-opponent .champion-card{flex:none;width:100%;max-width:none;padding:.3rem .4rem}.field-row-opponent .champion-portrait-wrap{flex:0 0 48px;width:48px;height:48px}.field-row-opponent .support-card{flex-direction:row;flex:none;align-items:center;width:100%;max-width:none;padding:.22rem .32rem}.player-field{z-index:8;position:relative}.field-row-player .champion-card{flex:none;gap:.55rem;width:100%;max-width:none;padding:.5rem .55rem}.field-row-player .champion-portrait-wrap{flex:0 0 76px;width:76px;height:76px}.field-row-player .champion-info h3{font-size:1.05rem}.field-row-player .champion-hp-bar{height:10px}.field-row-player .support-card{flex-direction:row;flex:none;align-items:center;width:100%;max-width:none;padding:.28rem .4rem}.equip-slot-row-vertical{flex-direction:column;align-items:center;gap:.3rem}.equip-slot-row-vertical.equip-slot-row-large .equip-slot{width:var(--equip-slot-size)}.equip-slot-row-vertical.equip-slot-row-large .equip-slot-empty,.equip-slot-row-vertical.equip-slot-row-large .card-slot,.equip-slot-row-vertical.equip-slot-row-large .card-slot.card-full-art{aspect-ratio:1;width:100%!important;height:auto!important;min-height:0!important}.equip-slot-row-vertical.equip-slot-row-compact .equip-slot{width:44px}.equip-slot-row-vertical.equip-slot-row-compact .equip-slot-empty,.equip-slot-row-vertical.equip-slot-row-compact .card-slot{height:40px!important;min-height:40px!important}.equip-slot-row-vertical.equip-slot-row-compact .equip-slot-empty-label{font-size:.5rem}.deck-pile{flex-direction:column;align-items:center;gap:.15rem;min-width:52px;display:flex}.deck-pile-stack{width:44px;height:58px;position:relative}.deck-pile-card{border:2px solid var(--ink);background:linear-gradient(135deg, var(--color-steel-blue), var(--color-steel-deep));border-radius:6px;position:absolute;inset:0}.deck-pile-card:nth-child(2){transform:translate(2px,-2px)}.deck-pile-card:nth-child(3){transform:translate(4px,-4px)}.deck-pile-label{color:#f7f9f973;text-transform:uppercase;font-family:Bangers,sans-serif;font-size:.55rem}.deck-pile-count{color:var(--color-frozen-lake);font-family:Bangers,sans-serif;font-size:.9rem}.hand-strip{z-index:15;justify-content:center;align-items:flex-end;gap:0;min-height:52px;padding:0 .5rem;display:flex;overflow:visible}.hand-strip-opponent{min-height:var(--opponent-hand-card-h);pointer-events:auto;align-items:flex-start;max-height:none;padding-top:.1rem}.hand-strip-opponent .card-in-hand{transform-origin:top;width:var(--opponent-hand-card-w)!important;height:var(--opponent-hand-card-h)!important;max-height:var(--opponent-hand-card-h)!important;aspect-ratio:auto!important;min-height:0!important;margin-left:-10px!important;padding:.1rem!important}.hand-strip-opponent .card-in-hand:first-child{margin-left:0!important}.hand-strip-opponent .card-back-star{font-size:.72rem}.hand-strip-opponent .card-back-rings{inset:4px}.hand-float.hand-float-player{flex-direction:column;justify-content:flex-end;align-items:center;min-height:72px;display:flex;transform:translateY(-20px)}.hand-strip-player{min-height:calc(var(--hand-card-size) * 1.4);align-items:flex-end}.hand-strip .card-in-hand{width:var(--hand-card-size);height:var(--hand-card-size);min-height:0;max-height:var(--hand-card-size);aspect-ratio:1;margin-left:var(--hand-card-overlap);transform:rotate(var(--fan-rotate,0deg));transform-origin:bottom;z-index:1;filter:drop-shadow(0 4px 10px #00000080);cursor:default;padding:.12rem;transition:transform .18s,box-shadow .18s,z-index;overflow:hidden}.hand-strip .card-in-hand.card-full-art{width:var(--hand-card-size);aspect-ratio:5/7;background:var(--color-steel-deep);height:auto;min-height:0;max-height:none;box-shadow:2px 2px 0 var(--ink);border-width:2px;flex-direction:column;padding:0;display:flex}.hand-strip .card-in-hand.card-full-art.card-type-equipment,.hand-strip .card-in-hand.card-full-art.card-type-weapon,.hand-strip .card-in-hand.card-full-art.card-type-ability{background:var(--color-steel-deep)}.hand-strip-player .card-in-hand{margin-left:var(--hand-card-overlap);transform:none}.hand-strip-player .card-in-hand .card-art-panel{flex-shrink:0;height:30px;margin:.1rem 0}.hand-strip-player .card-in-hand .card-type-ribbon{margin-top:.12rem;font-size:.5rem;line-height:1}.hand-strip-player .card-in-hand .card-name{font-size:.56rem}.hand-strip .card-in-hand .card-name{-webkit-line-clamp:2;-webkit-box-orient:vertical;margin-top:.05rem;font-size:.48rem;line-height:1.05;display:-webkit-box;overflow:hidden}.hand-strip .card-in-hand .card-text{display:none}.hand-strip .card-in-hand .card-cost-gem{border-width:2px;width:18px;height:18px;font-size:.62rem;top:-3px;left:-3px}.hand-strip .card-in-hand .card-tier-badge{width:16px;height:16px;font-size:.58rem;top:-3px;right:-3px}.hand-card-anchor{flex-shrink:0;position:relative}.hand-card-anchor .card-in-hand{margin-left:-14px}.hand-card-anchor:first-child .card-in-hand{margin-left:0}@media (width>=769px){.battle-half-opponent .battle-hand-band{z-index:6;pointer-events:none;flex:none;width:100%;position:absolute;top:0;left:0;right:0}.opponent-field{overflow:visible}}.hand-strip .card-in-hand:first-child{margin-left:0}.card.card-type-equipment{background:linear-gradient(165deg, #ecf7f5 0%, var(--color-ash-grey) 55%, #9ecbc5 100%);border-color:#3a7d74}.card.card-type-weapon{background:linear-gradient(165deg,#fff4e8 0%,#f0c896 52%,#d89555 100%);border-color:#9c5c1a}.card.card-type-ability{background:linear-gradient(165deg,#f3ecff 0%,#d4b8f5 50%,#a875e8 100%);border-color:#6b3fa0}.card.card-type-equipment .card-type-ribbon{color:#2a6b64}.card.card-type-weapon .card-type-ribbon{color:#8b4a12}.card.card-type-ability .card-type-ribbon{color:#5a2d8a}.card.card-type-equipment .card-cost-gem{background:radial-gradient(circle at 35% 30%,#b8e8df,#3a7d74)}.card.card-type-weapon .card-cost-gem{background:radial-gradient(circle at 35% 30%,#ffd9a8,#9c5c1a)}.card.card-type-ability .card-cost-gem{background:radial-gradient(circle at 35% 30%,#d4b8f5,#6b3fa0)}@media (hover:hover) and (pointer:fine){.hand-strip-player .card-in-hand:hover{transform:rotate(var(--fan-rotate,0deg)) translateY(-10px);z-index:20;box-shadow:0 10px 22px #0000008c, 3px 3px 0 var(--ink)}.hand-strip-player .card-in-hand.card-playable:hover{cursor:grab}.hand-card-anchor:hover{z-index:25}}.hand-strip .card-in-hand.card-playable:hover{cursor:grab}.hand-float{z-index:15;pointer-events:none;padding-bottom:max(.25rem, env(safe-area-inset-bottom,0px));position:relative}.hand-float>*{pointer-events:auto}.hand-float-dragging .hand-strip .card-in-hand:not(.card-dragging-source){opacity:.55}.hand-float-dragging .card-dragging-source{opacity:.2;pointer-events:none}body.card-dragging .hand-strip-player .card-in-hand:hover{transform:rotate(var(--fan-rotate,0deg))!important;z-index:1!important;box-shadow:0 4px 10px #00000080!important}.ability-cast-lane-hidden{opacity:0;visibility:hidden;pointer-events:none}.ability-cast-lane-visible{opacity:1;visibility:visible;pointer-events:auto}.hand-play-hint{text-align:center;max-width:420px;color:var(--color-steel-deep);background:var(--color-ash-grey);border:2px solid var(--ink);border-radius:8px;margin:0 auto .15rem;padding:.28rem .5rem;font-family:Bangers,sans-serif;font-size:.78rem}.ability-cast-lane{color:#f7f9f98c;z-index:2;background:#63d2ff14;border:2px dashed #f7f9f959;border-radius:8px;place-items:center;min-height:2rem;font-family:Bangers,sans-serif;font-size:.75rem;display:grid;position:absolute;inset:.25rem .5rem auto}.ability-cast-lane.play-drop-zone-active{border-style:solid;border-color:var(--color-pearl-aqua);color:var(--color-pearl-aqua)}body.card-dragging .player-field{z-index:20}body.card-dragging .play-drop-zone{z-index:21}body.card-dragging .hand-dock{z-index:5}.game-layout-dragging .play-drop-zone-active{box-shadow:0 0 0 3px var(--color-frozen-lake), 0 0 24px #63d2ff80}.game-layout-dragging .play-drop-zone-hover{box-shadow:0 0 0 4px var(--color-bright-snow), 0 0 28px #78d5d7a6}.play-zone-picker{border:2px solid var(--ink);background:#122a3af5;border-radius:10px;max-width:min(96vw,420px);margin:0 auto .35rem;padding:.45rem .55rem;box-shadow:0 6px 20px #00000073}.play-zone-picker-title{text-align:center;color:var(--color-frozen-lake);margin:0 0 .35rem;font-family:Bangers,sans-serif;font-size:.82rem}.play-zone-picker-actions{flex-wrap:wrap;justify-content:center;gap:.35rem;display:flex}.play-zone-picker-btn,.play-zone-picker-cancel{border:2px solid var(--ink);cursor:pointer;border-radius:8px;min-height:2rem;padding:.3rem .65rem;font-family:Bangers,sans-serif;font-size:.9rem}.play-zone-picker-btn{color:var(--color-bright-snow);border-color:var(--color-pearl-aqua);background:#63d2ff33}.play-zone-picker-cancel{color:var(--color-steel-deep);background:var(--color-ash-grey)}.hand-strip-player .card-in-hand.card-selected{box-shadow:0 0 0 2px var(--color-bright-snow), 0 0 12px #78d5d78c;z-index:12}body.card-dragging .card-hover-preview{display:none!important}.equip-slot-drop.play-drop-zone{width:100%;min-height:100%}.arena-vs{letter-spacing:.15em;color:var(--mustard);text-shadow:0 0 12px #e8c54780;font-family:Bangers,sans-serif;font-size:1.1rem}.target-prompt{text-align:center;background:var(--color-ash-grey);border:2px solid var(--ink);border-radius:8px;max-width:100%;padding:.35rem .65rem}.target-prompt p{color:var(--ink);margin:0 0 .3rem;font-family:Bangers,sans-serif;font-size:.9rem}.target-prompt-actions{flex-wrap:wrap;justify-content:center;gap:.35rem;display:flex}.champion-card{border:3px solid var(--ink);text-align:left;color:var(--cream);cursor:default;background:#f4e4c814;border-radius:10px;align-items:stretch;gap:.5rem;padding:.35rem .45rem;display:flex;box-shadow:3px 3px #00000073}.champion-opponent{border-color:var(--color-steel-dark);background:#186aa338}.champion-inspectable{cursor:pointer}.champion-selectable{cursor:pointer;outline:2px solid var(--color-frozen-lake);outline-offset:2px}.champion-player{border-color:var(--color-pearl-aqua);cursor:pointer;background:#78d5d726}.champion-portrait-wrap{border:2px solid var(--ink);background:var(--paper);border-radius:8px;flex:0 0 56px;width:56px;height:56px;position:relative;overflow:visible}.champion-portrait{object-fit:cover;object-position:top center;border-radius:6px;width:100%;height:100%;display:block}.champion-hp-pip{min-width:1.35rem;color:var(--cream);background:var(--color-steel-blue);border:2px solid var(--ink);text-align:center;z-index:1;border-radius:999px;padding:.08rem .28rem;font-family:Bangers,sans-serif;font-size:.68rem;line-height:1;position:absolute;bottom:-5px;right:-5px}.debt-ledger-strip-borrowed{border-color:#c9a227;box-shadow:0 0 12px #c9a22759}.debt-borrowed-counter{color:#f0d060}.champion-borrowed-pip{min-width:1.35rem;color:var(--ink);border:2px solid var(--ink);text-align:center;z-index:2;background:linear-gradient(#ffe08a,#e8b830);border-radius:999px;padding:.08rem .28rem;font-family:Bangers,sans-serif;font-size:.58rem;line-height:1;position:absolute;bottom:-5px;left:-5px;box-shadow:0 0 8px #e8b8308c}.champion-borrowed-pending{box-shadow:0 0 0 2px #c9a22773,0 0 14px #e8b83033}.status-borrowed{color:var(--ink);background:linear-gradient(#ffe08a,#e8b830)}.champion-debt-pip{min-width:1.35rem;color:var(--ink);border:2px solid var(--ink);text-align:center;z-index:2;background:linear-gradient(#f0d060,#c9a227);border-radius:999px;padding:.08rem .28rem;font-family:Bangers,sans-serif;font-size:.62rem;line-height:1;position:absolute;top:-5px;left:-5px;box-shadow:0 0 8px #c9a2278c}.champion-debt-due-pip{width:1.1rem;height:1.1rem;color:var(--cream);border:2px solid var(--ink);text-align:center;z-index:3;background:#b83232;border-radius:999px;font-family:Bangers,sans-serif;font-size:.72rem;line-height:1;animation:1.2s ease-in-out infinite debt-due-pulse;position:absolute;top:-5px;right:-5px;box-shadow:0 0 10px #b83232a6}.champion-debt-bill-pending{box-shadow:0 0 0 2px #b8323273,0 0 18px #c9a22740}@keyframes debt-due-pulse{0%,to{opacity:1;transform:scale(1)}50%{opacity:.88;transform:scale(1.08)}}.champion-info{text-align:left;flex-direction:column;flex:1;gap:.1rem;min-width:0;display:flex}.champion-role{color:var(--color-pearl-aqua);letter-spacing:.05em;font-family:Bangers,sans-serif;font-size:.58rem}.champion-info h3{text-transform:none;letter-spacing:.01em;color:var(--cream);text-shadow:0 1px 0 var(--ink), 0 2px 4px #0000008c;text-overflow:ellipsis;white-space:nowrap;margin:0;font-family:Rye,Georgia,serif;font-size:.88rem;font-weight:400;line-height:1.15;overflow:hidden}.champion-title{opacity:.75;text-overflow:ellipsis;white-space:nowrap;margin:0;font-family:Bangers,sans-serif;font-size:.58rem;overflow:hidden}.champion-hp-bar{border:2px solid var(--ink);background:#00000059;border-radius:4px;width:100%;height:8px;margin:.12rem 0 .05rem;position:relative;overflow:hidden}.champion-hp-bar-text{color:var(--cream);text-shadow:0 0 2px var(--ink), 0 1px 2px #000000d9;pointer-events:none;z-index:1;justify-content:center;align-items:center;font-family:Bangers,sans-serif;font-size:.58rem;line-height:1;display:flex;position:absolute;inset:0}.champion-hp-fill{background:linear-gradient(90deg,#e74c3c,#f39c12);height:100%;transition:width .25s}.champion-hp-label{color:var(--color-pearl-aqua);margin:0;font-family:Bangers,sans-serif;font-size:.62rem;line-height:1.1}.champion-base-hp-note{opacity:.7;font-size:.52rem}.champion-equip-bonus{color:var(--mustard);letter-spacing:.02em;margin:.1rem 0 0;font-family:Bangers,sans-serif;font-size:.56rem;line-height:1.15}.champion-tags{flex-wrap:wrap;gap:.12rem;margin-top:.05rem;display:flex}.champion-attack-list{flex-direction:column;gap:.14rem;width:100%;margin:.22rem 0 0;padding:0;list-style:none;display:flex}.champion-attack-row{align-items:center;gap:.36rem;min-width:0;font-family:Bangers,sans-serif;font-size:.68rem;line-height:1.2;display:flex}.champion-attack-cost{border:1px solid var(--ink);min-width:1.2rem;color:var(--mustard);text-align:center;background:#00000059;border-radius:999px;flex:none;padding:.06rem .26rem}.champion-attack-name{text-overflow:ellipsis;white-space:nowrap;min-width:0;color:var(--cream);letter-spacing:.02em;flex:1;overflow:hidden}.champion-attack-damage{color:var(--color-pearl-aqua);white-space:nowrap;flex:none;font-size:.66rem}.champion-attack-row-used{opacity:.42}.support-ability-list-muted .champion-attack-row{opacity:.45}.support-ability-list .champion-attack-name{flex:1}.status-tag{border:1px solid var(--ink);border-radius:4px;padding:.06rem .28rem;font-family:Bangers,sans-serif;font-size:.52rem;line-height:1.1}.status-shield{background:var(--color-steel-blue);color:var(--cream)}.status-marked{background:var(--rust);color:var(--cream)}.status-debt{color:var(--ink);background:linear-gradient(#f0d060,#c9a227)}.status-debt-due{color:var(--cream);background:#b83232;animation:1.2s ease-in-out infinite debt-due-pulse}.debt-ledger-strip{width:100%;max-width:var(--board-width);border:1px solid var(--ink);color:var(--color-bright-snow);background:#0c121cb8;border-radius:6px;flex-wrap:wrap;justify-content:center;align-items:center;gap:.35rem .55rem;margin:0 auto;padding:.12rem .45rem;font-family:Bangers,sans-serif;font-size:.62rem;line-height:1.2;display:flex}.debt-ledger-strip-due{border-color:#b83232;box-shadow:0 0 12px #b8323259}.debt-ledger-pending{color:#ffe08a}.debt-ledger-counter{color:#f0d060}.debt-ledger-due{color:#ff8a8a}.debt-ledger-settled{color:var(--color-ash-grey);font-size:.56rem}.status-hit{color:var(--color-ash-grey);background:#00000059}.status-action{background:var(--color-frozen-lake);color:var(--color-steel-deep)}.status-jammed{color:#fff4dc;background:#8b3a3a}.status-frozen{color:#e8f7ff;background:#2a6e9e}.status-overheated{color:#fff4dc;background:#c45c1a}.status-unstable{color:#f0e4ff;background:#6b4a8a}.status-mail-guard{color:#e8f4f2;background:#3a7d74}.status-trait-ready{background:var(--mustard);color:var(--ink)}.status-trait-used{color:#bed8d4bf;background:#283038e6;text-decoration:line-through}.status-silenced{background:var(--rust);color:var(--cream)}.status-trick-tax{color:#e8f4f2;background:#2a5a6a}.status-set-armed{color:#f3e8ff;background:#5a3a8a;animation:1.8s ease-in-out infinite set-armed-pulse}@keyframes set-armed-pulse{0%,to{box-shadow:0 0 #9a6ad259}50%{box-shadow:0 0 0 3px #9a6ad233}}.armed-set-strip{flex-wrap:wrap;gap:.35rem;max-width:960px;margin:0 auto;padding:.25rem .65rem .35rem;display:flex}.armed-set-chip{border:1px solid var(--ink);border-radius:6px;flex-wrap:wrap;flex:220px;align-items:center;gap:.35rem;padding:.2rem .45rem;font-size:.62rem;line-height:1.2;display:flex}.armed-set-chip-player{color:#2f1f45;background:#5a3a8a2e}.armed-set-chip-opponent{color:#4a2418;background:#b448301f}.armed-set-chip-tag{letter-spacing:.04em;font-family:Bangers,sans-serif;font-size:.72rem}.armed-set-chip-body{font-weight:600}.armed-set-chip-expiry{opacity:.75;font-style:italic}.equip-slot-status-chips{z-index:3;pointer-events:none;flex-wrap:wrap;justify-content:center;gap:2px;display:flex;position:absolute;bottom:2px;left:2px;right:2px}.equip-slot-status-chips .status-tag{padding:.04rem .22rem;font-size:.48rem;box-shadow:0 1px 2px #00000073}.equip-slot-has-status .equip-slot-empty{position:relative}.equip-slot-card-wrap{width:100%;position:relative}.btn-clear-silence{border-color:var(--rust);color:var(--rust)}.btn-clear-silence.btn-scrap-hand-active{background:var(--rust);color:var(--cream)}.equip-slot-inspect-btn{cursor:pointer;background:0 0;border:none;border-radius:8px;width:100%;margin:0;padding:0;display:block}.equip-slot-inspect-btn:focus-visible{outline:2px solid var(--color-pearl-aqua);outline-offset:2px}.equip-slot-unequip{z-index:2;border:2px solid var(--ink);background:var(--color-ash-grey);width:1.15rem;height:1.15rem;color:var(--ink);cursor:pointer;border-radius:4px;padding:0;font-size:.85rem;line-height:1;position:absolute;top:-6px;right:-6px}.card-detail-overlay{z-index:60;background:#000000a6;place-items:center;padding:1rem;display:grid;position:fixed;inset:0}.card-detail-panel{width:min(340px,94vw);box-shadow:none;background:0 0;border:none;border-radius:0;flex-direction:column;align-items:center;gap:.75rem;padding:.85rem;display:flex}.card-detail-close-btn{width:100%;max-width:340px}.card-full-art{aspect-ratio:5/7;border:4px solid var(--ink);width:min(320px,90vw);box-shadow:8px 8px 0 var(--ink);background:var(--color-steel-deep);border-radius:14px;flex-direction:column;display:flex;position:relative;overflow:hidden}.card-full-art-bg{z-index:0;position:absolute;inset:0}.card-full-art-image{object-fit:cover;object-position:center;width:100%;height:100%}.card-full-art-placeholder .card-full-art-image{object-fit:contain;opacity:.85;padding:1.5rem}.card-full-art-scrim{z-index:1;pointer-events:none;background:linear-gradient(#061018b8 0%,#06101814 28%,#0610180d 45%,#0610188c 72%,#061018eb 100%);position:absolute;inset:0}.card-full-art-header,.card-full-art-body{z-index:2;position:relative}.card-full-art-header{border:2px solid var(--ink);-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);background:#f7f9f9eb;border-radius:10px;grid-template-columns:auto 1fr auto;align-items:center;gap:.45rem;margin:.45rem;padding:.35rem .5rem;display:grid;box-shadow:0 2px 8px #00000059}.card-full-art-cost{border:2px solid var(--ink);background:radial-gradient(circle at 35% 30%, var(--color-frozen-lake), var(--color-steel-blue));color:#fff;width:34px;height:34px;text-shadow:1px 1px 0 var(--ink);border-radius:50%;flex-shrink:0;place-items:center;font-family:Bangers,sans-serif;font-size:1.15rem;display:grid}.card-full-art-header-center{flex-direction:column;align-items:center;gap:.05rem;min-width:0;display:flex}.card-full-art-stage{letter-spacing:.04em;text-transform:uppercase;color:var(--color-steel-deep);opacity:.85;font-family:Bangers,sans-serif;font-size:.62rem}.card-full-art-type{letter-spacing:.06em;text-transform:uppercase;color:var(--rust);font-family:Bangers,sans-serif;font-size:.78rem}.card-full-art-tier{border:2px solid var(--ink);color:#fff;width:28px;height:28px;text-shadow:1px 1px 0 var(--ink);border-radius:50%;flex-shrink:0;place-items:center;font-family:Bangers,sans-serif;font-size:.85rem;display:grid}.card-full-art-tier-common,.card-full-art-tier-rare{background:var(--color-steel-blue)}.card-full-art-tier-legendary{background:var(--mustard);color:var(--ink);text-shadow:none}.card-full-art-body{flex-direction:column;gap:.45rem;margin-top:auto;padding:0 .55rem .55rem;display:flex}.card-full-art-title-row{justify-content:space-between;align-items:flex-end;gap:.5rem;display:flex}.card-full-art-name{color:#fff4dc;text-shadow:0 0 8px #000000d9, 2px 2px 0 var(--ink);margin:0;font-family:Bangers,sans-serif;font-size:1.35rem;line-height:1.05}.card-full-art-power{color:#fff;text-shadow:2px 2px 0 var(--ink);flex-shrink:0;font-family:Bangers,sans-serif;font-size:1.5rem;line-height:1}.card-full-art-role{border:2px solid var(--ink);color:#fff;width:26px;height:26px;text-shadow:1px 1px 0 var(--ink);border-radius:50%;align-self:flex-start;place-items:center;font-family:Bangers,sans-serif;font-size:.82rem;display:grid;box-shadow:0 2px 6px #00000073}.card-full-art-role-guardian{background:linear-gradient(135deg,#7ec4bc,#3a7d74)}.card-full-art-role-striker{background:linear-gradient(135deg,#ffd9a8,#9c5c1a)}.card-full-art-role-catalyst{background:linear-gradient(135deg,#d4b8f5,#6b3fa0)}.card-full-art-rules{border:2px solid var(--ink);-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);background:#081420e6;border-radius:10px;padding:.55rem .65rem;box-shadow:inset 0 1px #ffffff14}.card-full-art-rules-text{color:#e8f4f2;text-shadow:1px 1px #000000a6;margin:0;font-family:Bangers,sans-serif;font-size:.92rem;line-height:1.35}.card-full-art.card-full-art-tier-legendary{box-shadow:8px 8px 0 var(--ink), 0 0 18px #e8c54759}.card-full-art-compact{box-shadow:2px 2px 0 var(--ink)}.card-full-art-compact.card-full-art-tier-legendary{box-shadow:2px 2px 0 var(--ink), 0 0 10px #e8c54747}.card-full-art-scrim-compact{background:linear-gradient(#061018d1 0%,#0610181f 22%,#0610180a 50%,#061018b8 78%,#061018f2 100%)}.card-full-art-compact .card-full-art-header{border-width:1.5px;border-radius:6px;gap:.2rem;margin:.2rem .22rem 0;padding:.12rem .22rem}.card-full-art-compact .card-full-art-cost{border-width:1.5px;width:20px;height:20px;font-size:.72rem}.card-full-art-compact .card-full-art-tier{border-width:1.5px;width:16px;height:16px;font-size:.58rem}.card-full-art-compact .card-full-art-type{letter-spacing:.04em;font-size:.46rem;line-height:1}.card-full-art-compact .card-full-art-body{gap:0;padding:0 .22rem .22rem}.card-full-art-nameplate{border:1.5px solid var(--ink);-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);background:#081420eb;border-radius:6px;align-items:center;gap:.22rem;padding:.18rem .28rem;display:flex}.card-full-art-compact .card-full-art-name{text-align:left;-webkit-line-clamp:2;text-shadow:1px 1px #000000d9;-webkit-box-orient:vertical;flex:1;min-width:0;margin:0;font-size:.52rem;line-height:1.05;display:-webkit-box;overflow:hidden}.card-full-art-compact .card-full-art-role{border-width:1.5px;flex-shrink:0;align-self:center;width:16px;height:16px;font-size:.58rem}.card-full-art-compact .card-full-art-placeholder .card-full-art-image{padding:.35rem}.card.card-slot.card-full-art{aspect-ratio:1;background:var(--color-steel-deep);pointer-events:none;border-radius:8px;flex-direction:column;display:flex;overflow:hidden;box-shadow:inset 0 0 0 1px #ffffff14;width:100%!important;height:auto!important;min-height:0!important;padding:0!important}.card.card-slot.card-full-art.card-type-equipment,.card.card-slot.card-full-art.card-type-weapon,.card.card-slot.card-full-art.card-type-ability{background:var(--color-steel-deep)}.card-full-art-scrim-slot{background:linear-gradient(#06101859 0%,#06101805 42%,#061018c7 100%)}.card-full-art-slot .card-full-art-body{gap:0;margin-top:auto;padding:.18rem}.card-full-art-slot .card-full-art-nameplate{border-width:1.5px;border-radius:5px;align-items:flex-start;padding:.14rem .18rem}.card-full-art-slot .card-full-art-name{text-align:left;-webkit-line-clamp:2;font-size:.48rem;line-height:1.05}.card-full-art-slot .card-full-art-role{border-width:1.5px;width:14px;height:14px;font-size:.52rem}.card-full-art-tier-pin{z-index:3;border:1.5px solid var(--ink);color:#fff;width:16px;height:16px;text-shadow:1px 1px 0 var(--ink);border-radius:50%;place-items:center;font-family:Bangers,sans-serif;font-size:.58rem;display:grid;position:absolute;top:.18rem;right:.18rem;box-shadow:0 1px 4px #00000073}.card-full-art-tier-pin.card-full-art-tier-common,.card-full-art-tier-pin.card-full-art-tier-rare{background:var(--color-steel-blue)}.card-full-art-tier-pin.card-full-art-tier-legendary{background:var(--mustard);color:var(--ink);text-shadow:none}.card-full-art-slot.card-full-art-placeholder .card-full-art-image{padding:.25rem}.card-detail-desc{text-align:center;color:var(--text-on-light);margin:0;font-family:Bangers,sans-serif;font-size:.85rem;line-height:1.35}.card-detail-close-btn{width:100%}.signal-runner-overlay{z-index:70}.signal-runner-panel{width:min(360px,94vw)}.signal-runner-header{text-align:center;color:var(--ink)}.signal-runner-header h3{margin:0 0 .25rem;font-size:1.1rem}.signal-runner-header p{opacity:.85;margin:0;font-size:.85rem}.signal-runner-actions{gap:.5rem;width:100%;display:flex}.signal-runner-actions button{flex:1}.support-card{border:2px solid var(--ink);text-align:center;background:#f7f9f914;border-radius:10px;flex-direction:column;align-items:center;padding:.35rem;display:flex}.fighter-pair .support-card{text-align:left;color:var(--cream);flex-direction:row;align-items:center}.fighter-pair .support-card-main{text-align:left;color:var(--cream);flex-direction:row;align-items:center;gap:.4rem}.fighter-pair .support-card-portrait-wrap{border:2px solid var(--ink);background:var(--paper);border-radius:6px;flex:none;width:40px;height:40px;overflow:hidden}.field-row-opponent .fighter-pair .support-card-portrait-wrap{width:32px;height:32px}.fighter-pair .support-card-portrait{object-fit:cover;object-position:top center;width:100%;height:100%}.fighter-pair .support-card-info{flex-direction:column;flex:1;align-items:flex-start;gap:.05rem;min-width:0;display:flex}.fighter-pair .support-card-role{color:var(--color-pearl-aqua);letter-spacing:.06em;text-transform:uppercase;font-family:Bangers,sans-serif;font-size:.52rem}.fighter-pair .support-card-info h3{text-transform:none;letter-spacing:.01em;color:var(--cream);text-shadow:0 1px 0 var(--ink), 0 2px 4px #0000008c;text-overflow:ellipsis;white-space:nowrap;max-width:100%;margin:0;font-family:Rye,Georgia,serif;font-size:.88rem;font-weight:400;line-height:1.15;overflow:hidden}.field-row-player .fighter-pair .support-card-info h3{font-size:.88rem}.field-row-opponent .fighter-pair .support-card-info h3{font-size:.76rem}.fighter-pair .support-card-info>p{display:none}.fighter-pair .support-card-info .status-tag{padding:.05rem .22rem;font-size:.48rem}.battle-fighter-band .champion-card,.battle-fighter-band .support-card-fighter-bar{border:3px solid var(--ink);text-align:left;width:100%;color:var(--cream);box-sizing:border-box;border-radius:10px;flex-direction:row;align-items:stretch;gap:.5rem;padding:.35rem .45rem;display:flex;box-shadow:3px 3px #00000073}.battle-fighter-band .champion-card{flex:1.2 auto;min-height:5.75rem}.battle-fighter-band .champion-portrait-wrap{flex:0 0 62px;width:62px;height:62px;overflow:visible}.battle-fighter-band .champion-portrait{border-radius:50%}.battle-fighter-band .champion-hp-pip{min-width:1.4rem;padding:.1rem .32rem;font-size:.72rem}.battle-fighter-band .champion-info{gap:.16rem}.battle-fighter-band .champion-role{font-size:.66rem}.battle-fighter-band .champion-info h3{font-size:1.1rem;line-height:1.2}.battle-fighter-band .champion-hp-bar{height:11px;margin:.1rem 0 .06rem}.battle-fighter-band .champion-hp-bar-text{font-size:.62rem}.battle-fighter-band .champion-hp-label{display:none}.battle-fighter-band .champion-tags{gap:.16rem;margin-top:.08rem}.battle-fighter-band .champion-tags .status-tag{padding:.08rem .32rem;font-size:.62rem}.battle-fighter-band .champion-attack-list{gap:.14rem;margin-top:.16rem}.battle-fighter-band .champion-attack-row{gap:.32rem;font-size:.66rem}.battle-fighter-band .champion-attack-cost{min-width:1.15rem;padding:.06rem .24rem;font-size:.62rem}.battle-fighter-band .champion-attack-damage{font-size:.62rem}.battle-fighter-band .support-card-fighter-bar{background:#f7f9f914;border:none;flex:auto;min-height:4rem;padding:0}.battle-fighter-band .support-card-fighter-bar.support-player{border:3px solid var(--color-pearl-aqua);background:#78d5d71f}.battle-fighter-band .support-card-fighter-bar.support-opponent{border:3px solid var(--color-steel-dark);background:#186aa338}.battle-fighter-band .support-card-fighter-bar.support-card-clickable{cursor:pointer}.battle-fighter-band .support-card-portrait-wrap{border:2px solid var(--ink);background:linear-gradient(#3d5a72 0%,#1a2838 100%);border-radius:8px;flex:0 0 56px;width:56px;height:56px;position:relative;overflow:hidden}.battle-fighter-band .support-card-portrait-wrap:after{content:"";border-radius:inherit;pointer-events:none;position:absolute;inset:0;box-shadow:inset 0 0 14px #e8c54738}.battle-fighter-band .support-card-portrait{object-fit:cover;object-position:center 20%;width:100%;height:100%;display:block}.battle-fighter-band .support-card-info{text-align:left;flex-direction:column;flex:1;align-items:flex-start;gap:.1rem;min-width:0;display:flex}.battle-fighter-band .support-card-role{color:var(--color-pearl-aqua);letter-spacing:.05em;font-family:Bangers,sans-serif;font-size:.58rem}.battle-fighter-band .support-card-info h3{text-transform:none;letter-spacing:.01em;color:var(--cream);text-shadow:0 1px 0 var(--ink), 0 2px 4px #0000008c;text-overflow:ellipsis;white-space:nowrap;max-width:100%;margin:0;font-family:Rye,Georgia,serif;font-size:.95rem;font-weight:400;line-height:1.2;overflow:hidden}.battle-fighter-band .support-card-title{opacity:.75;text-overflow:ellipsis;white-space:nowrap;max-width:100%;margin:0;font-family:Bangers,sans-serif;font-size:.58rem;overflow:hidden}.battle-fighter-band .support-tags{flex-wrap:wrap;gap:.08rem;margin-top:.04rem;display:flex}.battle-fighter-band .support-tags .status-tag{padding:.05rem .22rem;font-size:.48rem}.battle-fighter-band .support-ability-list{gap:.06rem;margin-top:.1rem}.support-player{border-color:var(--color-pearl-aqua);background:#78d5d71f}.support-opponent{border-color:var(--color-steel-dark);background:#186aa338}.support-card-clickable .support-card-main{cursor:pointer}.support-card-main{width:100%;color:inherit;background:0 0;border:none;flex-direction:column;align-items:center;padding:0;display:flex}.equip-slot-row{justify-content:center;align-items:flex-end;gap:.55rem;display:flex}.equip-slot{flex-direction:column;flex-shrink:0;align-items:center;gap:.15rem;display:flex}.equip-slot-label{color:var(--color-frozen-lake);font-family:Bangers,sans-serif;font-size:.78rem}.equip-slot-empty-label{text-transform:uppercase;letter-spacing:.04em;text-align:center;color:#f7f9f98c;-webkit-user-select:none;user-select:none;padding:.15rem;font-family:Bangers,sans-serif;font-size:.72rem;line-height:1.05}.equip-slot-kind-weapon .equip-slot-empty-label{color:#d89555d9}.equip-slot-kind-equipment .equip-slot-empty-label,.equip-slot-kind-support .equip-slot-empty-label{color:#6db5acd9}.play-drop-zone-active .equip-slot-kind-weapon .equip-slot-empty-label{color:#f0c896f2}.play-drop-zone-active .equip-slot-kind-equipment .equip-slot-empty-label,.play-drop-zone-active .equip-slot-kind-support .equip-slot-empty-label{color:#9ecbc5f2}.play-drop-zone-hover .equip-slot-kind-weapon .equip-slot-empty-label{color:#f0c896}.play-drop-zone-hover .equip-slot-kind-equipment .equip-slot-empty-label,.play-drop-zone-hover .equip-slot-kind-support .equip-slot-empty-label{color:#9ecbc5}.equip-stage-pips{justify-content:center;gap:3px;display:flex}.equip-stage-dot{background:#fff3;border-radius:50%;width:6px;height:6px}.equip-stage-dot-on{background:#e8c547;box-shadow:0 0 4px #e8c54799}.equip-slot-stage-badge{color:#e8c547;background:#0000008c;border-radius:3px;padding:0 3px;font-family:Bangers,sans-serif;font-size:.55rem;position:absolute;bottom:2px;right:2px}.card-stage-badge{color:#e8c547;z-index:2;background:#00000080;border-radius:4px;padding:0 4px;font-family:Bangers,sans-serif;font-size:.65rem;position:absolute;top:22px;left:4px}.equip-slot-kind-weapon .equip-slot-label{color:#d89555}.equip-slot-kind-equipment .equip-slot-label,.equip-slot-kind-support .equip-slot-label{color:#6db5ac}.equip-slot-empty{box-sizing:border-box;background:repeating-linear-gradient(90deg,#ffffff08 0 2px,#0000 2px 6px),#00000047;border:2px dashed #f7f9f947;border-radius:6px;justify-content:center;align-items:center;width:100%;display:flex;box-shadow:inset 0 0 0 1px #e8c54714,inset 0 2px 8px #00000059}.equip-slot-kind-weapon .equip-slot-empty{background-color:#d895551f;border-color:#c45c2680}.equip-slot-kind-equipment .equip-slot-empty,.equip-slot-kind-support .equip-slot-empty{background:#9ecbc51a;border-color:#3a7d7473}.equip-slot-empty-icon{color:#f7f9f959;font-family:Bangers,sans-serif;font-size:1.75rem}.play-drop-zone-active .equip-slot-kind-weapon .equip-slot-empty{background:#f0c89638;border-color:#c4782a}.play-drop-zone-active .equip-slot-kind-equipment .equip-slot-empty,.play-drop-zone-active .equip-slot-kind-support .equip-slot-empty{background:#9ecbc538;border-color:#3a7d74}.play-drop-zone-hover .equip-slot-kind-weapon .equip-slot-empty{background:#f0c89652;border-style:solid;border-color:#9c5c1a}.play-drop-zone-hover .equip-slot-kind-equipment .equip-slot-empty,.play-drop-zone-hover .equip-slot-kind-support .equip-slot-empty{background:#9ecbc552;border-style:solid;border-color:#3a7d74}.equip-slot-drop-filled.play-drop-zone{width:100%}.play-drop-zone-active .equip-slot-kind-weapon .equip-slot-drop-filled .equip-slot-card-wrap{outline-offset:2px;border-radius:8px;outline:2px dashed #c4782a}.play-drop-zone-active .equip-slot-kind-equipment .equip-slot-drop-filled .equip-slot-card-wrap,.play-drop-zone-active .equip-slot-kind-support .equip-slot-drop-filled .equip-slot-card-wrap{outline-offset:2px;border-radius:8px;outline:2px dashed #3a7d74}.play-drop-zone-hover .equip-slot-kind-weapon .equip-slot-drop-filled .equip-slot-card-wrap{outline-offset:2px;outline:2px solid #9c5c1a;box-shadow:0 0 12px #f0c89659}.play-drop-zone-hover .equip-slot-kind-equipment .equip-slot-drop-filled .equip-slot-card-wrap,.play-drop-zone-hover .equip-slot-kind-support .equip-slot-drop-filled .equip-slot-card-wrap{outline-offset:2px;outline:2px solid #3a7d74;box-shadow:0 0 12px #9ecbc559}.card-drag-ghost{z-index:500;pointer-events:none;filter:drop-shadow(0 12px 22px #0000008c);position:fixed;transform:rotate(-2deg)}.hand-card-peek{z-index:420;pointer-events:none;filter:drop-shadow(0 18px 36px #000000b8);position:fixed;transform:translate(-50%,calc(-100% - 10px))}.hand-card-peek .card.card-full-art,.hand-card-peek .card-peek-face{aspect-ratio:5/7;width:160px;min-height:0;max-height:none;box-shadow:4px 4px 0 var(--ink);padding:0;overflow:hidden}.hand-card-peek .card-full-art .card-full-art-header{margin:.3rem;padding:.25rem .35rem}.hand-card-peek .card-full-art .card-full-art-cost{width:26px;height:26px;font-size:.9rem}.hand-card-peek .card-full-art .card-full-art-tier{width:22px;height:22px;font-size:.72rem}.hand-card-peek .card-full-art .card-full-art-type{font-size:.62rem}.hand-card-peek .card-full-art .card-full-art-name{font-size:.95rem}.hand-card-peek .card-full-art .card-full-art-rules-text{font-size:.72rem;line-height:1.25}.card-drag-ghost .card.card-full-art{width:var(--hand-card-size);aspect-ratio:5/7;height:auto;min-height:0;max-height:none;padding:0;overflow:hidden}.card-drag-ghost .card-art-panel{height:36px;margin:.15rem 0}.card-drag-ghost .card-name{font-size:.72rem;line-height:1.05}.card-drag-ghost .card-text{display:none}.card-drag-ghost .card-type-ribbon{margin-top:.15rem;font-size:.52rem}.card-slot{pointer-events:none;text-align:center;justify-content:center;align-items:center;display:flex;overflow:hidden;width:100%!important;padding:.2rem .15rem!important}.card-slot.card-full-art{justify-content:stretch;align-items:stretch;padding:0!important}.card-slot-name{letter-spacing:.02em;-webkit-line-clamp:4;word-break:break-word;-webkit-hyphens:auto;hyphens:auto;-webkit-box-orient:vertical;width:100%;margin:0;font-family:Bangers,sans-serif;font-size:.72rem;line-height:1.08;display:-webkit-box;overflow:hidden}@media (width>=769px) and (height<=780px){.game-layout{--hand-card-size:min(68px, 10vh);--hand-card-overlap:-12px;--equip-slot-size:clamp(58px, 9vh, 76px)}.top-bar{padding:.25rem .6rem}.hand-dock{padding:.25rem .45rem .32rem}.game-sidebar{flex:0 0 min(210px,26vw)}.sidebar-actions .btn-end-turn{min-height:2.4rem;font-size:1rem}}@media (width>=769px) and (height<=640px){.game-layout{--hand-card-size:min(62px, 10vh);--equip-slot-size:min(76px, 11vh)}.battle-half{gap:.4rem .55rem}.champion-portrait-wrap{flex:0 0 52px;width:52px;height:52px}}@media (width<=768px){.game-layout{--hand-card-size:min(50px, 11svh, calc((100vw - 1.25rem) / 6.5));--hand-card-size-drawer:min(76px, 18vw, 96px);--hand-card-overlap:-5px;--equip-slot-size:min(72px, 15svh, calc((100vw - 1rem) / 4.35));--mobile-action-bar:3.35rem;overflow:hidden}.arena-body{flex-direction:column;flex:auto;width:100%;max-width:100%;min-height:0;overflow:hidden}.top-bar{width:100%;max-width:100%}.battlefield{flex-direction:column;flex:auto;min-height:0;display:flex;overflow:hidden}.board-stage{flex-direction:column;flex:auto;justify-content:space-between;gap:.12rem;min-height:0;padding:.1rem .35rem;display:flex;overflow:hidden}.opponent-field,.player-field{flex-direction:column;flex:1 1 0;min-height:0;display:flex;overflow:hidden}.game-sidebar{z-index:50;border-top:none;border-left:none;flex:none;width:100%;max-height:none;position:relative}.game-sidebar .dialogue-header,.game-sidebar .dialogue-feed,.game-sidebar .dialogue-latest-compact{display:none!important}.game-sidebar .dialogue-panel{background:0 0;max-height:none}.game-sidebar:not(:has(.sidebar-actions)){display:none}.sidebar-actions{border-top:3px solid var(--ink);background:linear-gradient(180deg, var(--color-steel-deeper) 0%, #061018 100%);flex-direction:row;gap:.3rem;margin-top:0;padding:.32rem .45rem .38rem}.sidebar-actions .btn-end-turn{flex:1;padding:.38rem .45rem;font-size:.88rem}.sidebar-actions .btn-forfeit{flex:none;width:auto;padding:.32rem .5rem;font-size:.72rem}.top-bar{gap:.3rem;padding:.18rem .35rem}.deck-matchup{flex:1;min-width:0;margin-bottom:0}.deck-label{max-width:5.5rem;font-size:.62rem}.deck-vs{font-size:.6rem}.token-bar{gap:.3rem;padding:.12rem .35rem}.token-bar-count{font-size:.72rem}.token-bar-count strong{font-size:.85rem}.play-mat{border-top:1px solid #63d2ff1f;border-bottom:1px solid #63d2ff1f;flex:none;padding:.04rem 0;line-height:1}.arena-vs{letter-spacing:.14em;opacity:.75;font-size:.58rem}.battle-half{flex-flow:column;flex:1 1 0;justify-content:center;align-items:center;gap:.22rem;width:100%;max-width:100%;min-height:0;padding:.08rem 0}.battle-half-opponent{flex-direction:column;justify-content:flex-end}.battle-half-player{justify-content:flex-start}.battle-hand-band{flex:none;order:1;padding:0;overflow:visible}.battle-half-opponent .battle-equip-band{border:none;border-bottom:1px solid #63d2ff2e;flex:none;order:2;width:100%;margin-bottom:.06rem;padding:.1rem 0 .14rem}.battle-half-opponent .battle-fighter-band{flex-direction:column-reverse;flex:0 auto;order:3;justify-content:flex-end;gap:.28rem;width:min(100%,92vw);max-width:320px;min-height:min-content;padding-bottom:.06rem}.battle-half-player .battle-fighter-band{flex-direction:column;flex:0 auto;order:1;justify-content:flex-start;gap:.28rem;width:min(100%,92vw);max-width:320px;min-height:min-content;padding-bottom:.1rem}.battle-half-player .battle-equip-band{border:none;border-top:1px solid #63d2ff2e;flex:none;order:2;width:100%;margin-top:.06rem;padding:.18rem 0 .12rem}.bay-dock{padding:.22rem .35rem .28rem}.equip-slot-empty-label{font-size:.52rem}.battle-equip-band{justify-content:center}.battle-deck-corner{z-index:4;border:none;padding:0;position:absolute;top:.1rem;right:.1rem}.equip-slot-row{justify-content:center;width:100%}.equip-slot-row-vertical{justify-content:center;flex-direction:row!important;gap:.22rem!important}.equip-slot-row-vertical.equip-slot-row-large .equip-slot{width:var(--equip-slot-size)}.equip-slot-row-vertical.equip-slot-row-large .equip-slot-empty,.equip-slot-row-vertical.equip-slot-row-large .card-slot{aspect-ratio:1;width:100%!important;height:auto!important;min-height:0!important}.equip-slot-empty-label{letter-spacing:.02em;padding:.1rem;font-size:.48rem;line-height:1.05}.equip-stage-pips{gap:2px}.equip-stage-dot{width:4px;height:4px}.equip-slot-row-vertical.equip-slot-row-large .card-slot-name{-webkit-line-clamp:3;font-size:.52rem}.battle-fighter-band .champion-card{touch-action:manipulation;-webkit-tap-highlight-color:transparent;flex:none;gap:.3rem;min-height:auto;padding:.24rem .3rem;overflow:hidden}.battle-fighter-band .support-card-fighter-bar{touch-action:manipulation;-webkit-tap-highlight-color:transparent;flex:none;gap:.22rem;min-height:auto;padding:.18rem .26rem;overflow:hidden}.battle-fighter-band .champion-portrait-wrap{flex:0 0 48px;width:48px;height:48px;overflow:visible}.battle-fighter-band .champion-portrait{border-radius:50%}.battle-fighter-band .support-card-portrait-wrap{flex:0 0 34px;width:34px;height:34px}.battle-fighter-band .champion-hp-pip{min-width:1.2rem;padding:.06rem .24rem;font-size:.58rem}.battle-fighter-band .champion-borrowed-pip{min-width:1.15rem;padding:.05rem .2rem;font-size:.5rem}.battle-fighter-band .champion-debt-pip{min-width:1.15rem;padding:.05rem .2rem;font-size:.52rem}.battle-fighter-band .champion-debt-due-pip{width:.95rem;height:.95rem;font-size:.58rem}.debt-ledger-strip{padding:.08rem .35rem;font-size:.54rem}.battle-fighter-band .champion-info{gap:.08rem;min-width:0}.battle-fighter-band .support-card-info{gap:.06rem;min-width:0}.battle-fighter-band .champion-info h3{font-size:.98rem;line-height:1.2}.battle-fighter-band .support-card-info h3{font-size:.88rem;line-height:1.2}.battle-fighter-band .champion-role{font-size:.56rem}.battle-fighter-band .support-card-role{font-size:.42rem}.battle-fighter-band .champion-hp-bar{height:12px;margin:.06rem 0 0}.battle-fighter-band .champion-hp-bar-text{font-size:.58rem}.battle-fighter-band .champion-hp-label,.battle-fighter-band .champion-tags .status-action,.battle-fighter-band .support-tags .status-action,.battle-fighter-band .champion-tags:empty,.battle-fighter-band .support-tags:empty,.battle-fighter-band .support-card-title,.champion-title,.champion-base-hp-note,.champion-equip-bonus{display:none}.battle-fighter-band .champion-tags .status-tag,.battle-fighter-band .support-tags .status-tag{padding:.06rem .2rem;font-size:.54rem}.battle-fighter-band .champion-attack-list,.battle-fighter-band .support-ability-list{gap:.08rem;width:100%;margin-top:.06rem}.battle-fighter-band .champion-attack-row{gap:.24rem;font-size:.64rem}.battle-fighter-band .champion-attack-cost{min-width:1.05rem;padding:.05rem .2rem;font-size:.6rem}.battle-fighter-band .champion-attack-damage{font-size:.6rem}.hand-strip-opponent{min-height:0;max-height:none;padding:.1rem 0 0}.hand-strip-opponent .card-in-hand{width:30px!important;height:40px!important;max-height:40px!important;margin-left:-9px!important;padding:.06rem!important}.hand-strip-opponent .card-in-hand:first-child{margin-left:0!important}.hand-strip-opponent .card-back-star{font-size:.62rem}.hand-dock-mobile{z-index:25;touch-action:auto;background:0 0;border:none;flex:none;max-height:none;margin:0;padding:0;position:relative;overflow:visible}.hand-dock-mobile.hand-dock-open{flex:0 0 0;height:0}.hand-dock-trigger{border:none;border-top:2px solid var(--ink);width:100%;color:var(--cream);text-align:left;touch-action:manipulation;background:linear-gradient(#0a1826fa,#06101cfa);align-items:center;gap:.45rem;margin:0;padding:.38rem .55rem;display:flex}.hand-dock-trigger-scrap{box-shadow:inset 0 0 0 2px #e8c54773}.hand-dock-trigger-label{letter-spacing:.08em;color:var(--mustard);flex-shrink:0;font-family:Bangers,sans-serif;font-size:.72rem}.hand-dock-trigger-meta{color:#f7f9f9bf;flex-direction:column;flex-shrink:0;gap:.05rem;font-family:Bangers,sans-serif;font-size:.62rem;display:flex}.hand-dock-trigger-meta strong{color:var(--cream);font-size:.85rem}.hand-dock-trigger-playable{color:var(--color-pearl-aqua);font-size:.56rem}.hand-dock-trigger-fan{flex:1;align-items:center;min-width:0;height:1.35rem;padding-left:.15rem;display:flex}.hand-dock-trigger-chip{border:2px solid var(--ink);width:.72rem;height:1.05rem;margin-left:calc(var(--chip-i,0) * -.28rem);border-radius:3px;box-shadow:1px 1px #00000073}.hand-dock-trigger-chip-weapon{background:linear-gradient(#e89555,#c45c26)}.hand-dock-trigger-chip-equipment{background:linear-gradient(#78d5d7,#3a9a9c)}.hand-dock-trigger-chip-ability{background:linear-gradient(#b58cff,#7a52c4)}.hand-dock-trigger-chevron{letter-spacing:.06em;color:var(--color-pearl-aqua);background:#00000059;border:2px solid #78d5d773;border-radius:999px;flex-shrink:0;padding:.18rem .42rem;font-family:Bangers,sans-serif;font-size:.62rem}.hand-drawer-root{z-index:130;pointer-events:none;position:fixed;inset:0}.hand-drawer-scrim{pointer-events:none;background:#040a128c;position:absolute;inset:0}.hand-drawer-panel{pointer-events:auto;left:0;right:0;bottom:calc(var(--mobile-action-bar) + env(safe-area-inset-bottom,0px));border-top:3px solid var(--ink);background:linear-gradient(#0f2438 0%,#061018 100%);border-radius:14px 14px 0 0;flex-direction:column;max-height:min(56dvh,440px);padding:.45rem .45rem .55rem;animation:.22s ease-out hand-drawer-slide;display:flex;position:absolute;box-shadow:0 -10px 28px #0000008c}@keyframes hand-drawer-slide{0%{opacity:.6;transform:translateY(100%)}to{opacity:1;transform:translateY(0)}}.hand-drawer-header{justify-content:space-between;align-items:flex-start;gap:.5rem;margin-bottom:.25rem;display:flex}.hand-drawer-label{color:var(--mustard);letter-spacing:.06em;font-family:Bangers,sans-serif;font-size:.88rem}.hand-drawer-count{color:#f7f9f98c;margin-top:.08rem;font-family:Bangers,sans-serif;font-size:.58rem;display:block}.hand-drawer-close{letter-spacing:.04em;border:2px solid var(--ink);color:var(--cream);background:#0006;border-radius:6px;flex-shrink:0;padding:.22rem .55rem;font-family:Bangers,sans-serif;font-size:.68rem}.hand-drawer-hint{text-align:center;color:#78d5d7bf;margin:0 0 .35rem;font-size:.58rem}.hand-strip-drawer{--hand-card-size:var(--hand-card-size-drawer);touch-action:pan-y;-webkit-overflow-scrolling:touch;flex-wrap:wrap;flex:auto;place-content:flex-start center;gap:.5rem;min-height:0;padding:.2rem .15rem .35rem;display:flex;overflow:hidden auto}.hand-strip-drawer .hand-card-anchor{z-index:1;isolation:isolate;touch-action:none;flex-shrink:0;position:relative}.hand-strip-drawer .hand-card-anchor .card-in-hand,.hand-strip-drawer .card-in-hand{margin:0!important}.hand-strip-drawer .hand-card-anchor:first-child .card-in-hand{margin-left:0!important}.hand-strip-drawer .card-in-hand.card-full-art{aspect-ratio:5/7;z-index:1;position:relative;width:var(--hand-card-size-drawer)!important;height:auto!important;min-height:0!important;max-height:none!important;padding:0!important;transform:none!important}.hand-strip-drawer .card-in-hand{z-index:1;position:relative;width:var(--hand-card-size-drawer)!important;height:calc(var(--hand-card-size-drawer) * 1.38)!important;min-height:0!important;max-height:none!important;padding:.18rem .14rem .12rem!important;transform:none!important}.hand-strip-drawer .card-in-hand .card-art-panel{height:34px}.hand-strip-drawer .card-in-hand .card-name{white-space:normal;-webkit-line-clamp:2;-webkit-box-orient:vertical;font-size:.62rem;line-height:1.08;display:-webkit-box;overflow:hidden}.hand-strip-drawer .card-in-hand .card-type-ribbon{font-size:.5rem}.hand-strip-drawer .card-in-hand .card-cost-gem{width:26px;height:26px;font-size:.78rem}.hand-dock .hand-strip-drawer.hand-strip-player{touch-action:pan-y;gap:.5rem}.hand-strip-drawer .card-in-hand.card-playable{touch-action:none}.hand-strip-drawer.hand-strip-player .hand-card-anchor .card-in-hand,.hand-strip-drawer.hand-strip-player .card-in-hand{margin:0!important}.hand-dock-mobile:not(.hand-dock-open) .hand-strip-player:not(.hand-strip-drawer){display:none}.hand-dock:not(.hand-dock-mobile){z-index:20;border-top:2px solid var(--ink);touch-action:none;background:#081826fa;flex:none;max-height:14svh;padding:.22rem .2rem .28rem;position:relative;overflow:hidden}.hand-dock .hand-strip-player{min-height:var(--hand-card-size);touch-action:none}.hand-strip .card-in-hand.card-playable{touch-action:none}.hand-strip-player{justify-content:center;gap:.12rem;padding:0 .15rem}.hand-strip-player .hand-card-anchor .card-in-hand{margin-left:0!important}.hand-strip .card-in-hand{margin-left:var(--hand-card-overlap)}.hand-strip-player .card-in-hand:first-child{margin-left:0}.hand-strip-player .card-in-hand.card-full-art{width:var(--hand-card-size);aspect-ratio:5/7;height:auto;max-height:none;margin-left:var(--hand-card-overlap);box-shadow:2px 2px 0 var(--ink);border-width:2px;padding:0;overflow:hidden;min-height:0!important;transform:none!important}.hand-strip-player .card-in-hand{width:var(--hand-card-size);height:var(--hand-card-size);max-height:var(--hand-card-size);margin-left:var(--hand-card-overlap);box-shadow:2px 2px 0 var(--ink);border-width:2px;padding:.12rem .1rem .08rem;overflow:hidden;min-height:0!important;transform:none!important}.hand-strip-player .card-in-hand .card-art-panel{height:22px;margin:.06rem 0;display:block}.hand-strip-player .card-in-hand .card-type-ribbon{text-overflow:ellipsis;white-space:nowrap;margin-top:.1rem;font-size:.46rem;line-height:1;display:block;overflow:hidden}.hand-strip-player .card-in-hand .card-name{text-overflow:ellipsis;white-space:nowrap;margin:.1rem 0 0;font-size:.54rem;line-height:1.05;display:block;overflow:hidden}.hand-strip-player .card-in-hand .card-cost-gem{width:22px;height:22px;font-size:.68rem;top:-4px;left:-4px}.hand-play-hint{max-width:92%;padding:.2rem .4rem;font-size:.68rem}.card-drag-ghost .card.card-full-art{width:var(--hand-card-size);aspect-ratio:5/7;height:auto;max-height:none;padding:0}.card-drag-ghost .card{width:var(--hand-card-size);height:var(--hand-card-size);max-height:var(--hand-card-size)}body.card-dragging{touch-action:none;overscroll-behavior:none}body.card-dragging .hand-drawer-root{pointer-events:none}body.card-dragging .battlefield,body.card-dragging .board-stage,body.card-dragging .play-drop-zone{touch-action:none}body.card-dragging .player-field{z-index:140}.target-prompt{padding:.25rem .45rem;font-size:.85rem}.target-prompt p{font-size:.78rem}.deck-pile{min-width:32px}.deck-pile-stack{width:24px;height:32px}.deck-pile-label{display:none}.deck-pile-count{font-size:.62rem}.support-menu,.champion-menu{width:min(92vw,360px);max-height:80dvh;overflow-y:auto}.support-menu-card.card-full-art,.champion-menu-card.card-full-art{width:min(92vw,340px);max-height:min(82dvh,560px)}.support-menu-card-close{top:.25rem;right:.25rem}.game-over-panel{gap:.45rem;width:min(92vw,360px);padding:1rem 1rem 1.1rem}.game-over-headline{font-size:2rem}.game-over-flavor{font-size:.85rem}.game-over-cta{padding:.65rem 1rem;font-size:1.1rem}}@media (width<=768px) and (height<=820px){.game-layout{--hand-card-size:min(48px, 10.5svh, calc((100vw - 1.25rem) / 6.5));--equip-slot-size:min(64px, 13.5svh, calc((100vw - 1rem) / 4.5))}.board-stage{gap:.06rem;padding:.06rem .3rem}.battle-half{gap:.16rem;padding:.04rem 0}.battle-half-player .battle-equip-band{margin-top:.04rem;padding:.1rem 0 .08rem}.battle-fighter-band .champion-portrait-wrap{flex:0 0 44px;width:44px;height:44px}.battle-fighter-band .support-card-portrait-wrap{flex:0 0 32px;width:32px;height:32px}.hand-dock-trigger{padding:.3rem .5rem}.sidebar-actions{padding:.28rem .4rem .32rem}.sidebar-actions .btn-end-turn{min-height:2.35rem;font-size:.85rem}}@media (width<=768px) and (height<=740px){.game-layout{--hand-card-size:min(46px, 10.5svh);--hand-card-overlap:-4px;--equip-slot-size:min(54px, 11.5svh, calc((100vw - 1rem) / 4.5))}.battle-fighter-band .champion-portrait-wrap{flex:0 0 42px;width:42px;height:42px}.battle-fighter-band .support-card-portrait-wrap{flex:0 0 30px;width:30px;height:30px}.hand-dock{max-height:13svh;padding:.15rem .15rem .2rem}}@media (width<=768px) and (hover:none) and (pointer:coarse){.hand-strip-player .card-in-hand.card-full-art:active,.hand-strip-player .card-in-hand.card-full-art.card-dragging-source:active{aspect-ratio:5/7;width:var(--hand-card-size)!important;z-index:auto!important;height:auto!important;max-height:none!important;box-shadow:2px 2px 0 var(--ink)!important;padding:0!important;overflow:hidden!important;transform:none!important}.hand-strip-player .card-in-hand:active,.hand-strip-player .card-in-hand.card-dragging-source:active{width:var(--hand-card-size)!important;height:var(--hand-card-size)!important;max-height:var(--hand-card-size)!important;z-index:auto!important;min-height:0!important;box-shadow:2px 2px 0 var(--ink)!important;padding:.12rem .1rem .08rem!important;overflow:hidden!important;transform:none!important}.hand-card-peek .card.card-full-art,.hand-card-peek .card-peek-face{aspect-ratio:5/7;width:min(160px,42vw);min-height:0}.hand-card-peek .card{width:min(148px,42vw);min-height:190px}.hand-card-peek-drawer{max-width:calc(100vw - 1.5rem);transform:translate(-50%)}}@media (width<=768px){.title-screen{align-items:center;padding:.85rem .75rem 1.1rem}.title-layout{gap:.85rem;width:100%;max-width:100%}.title-hero-panel{grid-template-columns:1fr;padding:1rem .75rem 1.1rem}.title-hero-copy{padding:0 .25rem}.title-hero-art{display:none}.title-steps{grid-template-columns:1fr}.title-roster-grid{grid-template-columns:repeat(2,1fr)}.title-roster-portrait{aspect-ratio:5/4}.title-roster-cta{opacity:1}.title-rules-link-grid{grid-template-columns:1fr}.rules-page{-webkit-overflow-scrolling:touch;height:100%;max-height:100svh;overflow:hidden auto}.rules-page-header{grid-template-columns:1fr}.rules-page-header .btn-secondary{justify-self:start}.card-library-grid{grid-template-columns:1fr}.card-library-item{grid-template-columns:auto 1fr}.deck-select-screen{padding:.75rem .7rem max(2rem, env(safe-area-inset-bottom,0px));-webkit-overflow-scrolling:touch;height:100%;max-height:100dvh;overflow-y:auto}.deck-select-header{flex-direction:column;gap:.65rem}.deck-select-heading{width:100%}.deck-grid{grid-template-columns:1fr}.deck-card{min-height:200px}.deck-card-roster{flex-direction:column}.deck-card-fighter-support{flex:1}}.top-bar{border-bottom:3px solid var(--ink);background:linear-gradient(#122a44f7 0%,#08121efa 100%);gap:.5rem;padding:.35rem .65rem;box-shadow:0 4px 14px #0006}.hud-left{flex-direction:column;flex:1;gap:.12rem;min-width:0;display:flex}.top-bar-brand{letter-spacing:.14em;text-transform:uppercase;color:var(--mustard);opacity:.88;font-family:Bangers,sans-serif;font-size:.52rem;line-height:1}.hud-right{flex-shrink:0;align-items:center;gap:.45rem;display:flex}.hud-round-badge{border:2px solid var(--ink);color:var(--cream);white-space:nowrap;background:#00000073;border-radius:6px;padding:.22rem .45rem;font-family:Bangers,sans-serif;font-size:.72rem;line-height:1}.hud-round-badge strong{color:var(--mustard)}.top-bar .deck-matchup{gap:.35rem;margin-bottom:0}.deck-label{text-shadow:0 1px #00000059;max-width:min(42vw,9.5rem);font-size:.78rem}.deck-label-player{color:var(--color-pearl-aqua)}.token-bar{border:2px solid var(--mustard);background:linear-gradient(#0000008c,#000000b8);padding:.25rem .55rem;box-shadow:0 0 10px #e8c5472e,inset 0 1px #ffffff14}.token-bar-label{font-size:.58rem;font-weight:700}.token-bar-count strong{color:var(--mustard);font-size:1.05rem}.token-bar-label-short{display:none}@media (width<=768px){.token-bar-label-full{display:none}.token-bar-label-short{display:block}.token-bar-gems{display:none}}.token-bar-opponent{border-color:#ff8a7abf;box-shadow:0 0 10px #ff8a7a26,inset 0 1px #ffffff14}.token-bar-opponent .token-bar-label{color:#ffb4a5f2}.token-bar-opponent .token-bar-count strong{color:#ff9a8b}.token-bar-opponent .token-gem-active{background:linear-gradient(#ffb4a8 0%,#e86a5a 100%);box-shadow:0 0 4px #ff8a7a73}.play-mat{min-height:1.75rem;position:relative}.play-mat:before{content:"";pointer-events:none;border:2px solid #e8c54747;border-radius:50%;width:2.4rem;height:2.4rem;position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);box-shadow:0 0 0 4px #63d2ff0f,inset 0 0 12px #e8c54714}.arena-vs{z-index:1;background:#00000073;border:2px solid #e8c54773;border-radius:999px;padding:.15rem .55rem;font-size:.72rem;position:relative}.player-field,.opponent-field{padding-top:.55rem;position:relative}.pit-zone-label{letter-spacing:.14em;text-transform:uppercase;text-align:center;color:#f7f9f961;z-index:3;pointer-events:none;white-space:nowrap;margin:0;font-family:Bangers,sans-serif;font-size:.48rem;line-height:1;display:block;position:absolute;top:.1rem;left:50%;transform:translate(-50%)}.pit-zone-label-opponent{color:#d895558c}.pit-zone-label-player{color:#78d5d78c}.bay-dock{background:repeating-linear-gradient(90deg,#ffffff05 0 1px,#0000 1px 5px),#00000052;border:2px solid #ffffff1a;border-radius:8px;width:100%;max-width:100%;margin-top:.06rem;padding:.22rem .35rem .28rem;box-shadow:inset 0 1px #ffffff12,0 2px 6px #00000040}.bay-dock-label{letter-spacing:.12em;text-transform:uppercase;text-align:center;color:#e8c547a6;margin-bottom:.14rem;font-family:Bangers,sans-serif;font-size:.46rem;display:block}.battle-fighter-band{gap:.32rem}.battle-fighter-band .champion-card,.battle-fighter-band .support-card-fighter-bar{isolation:isolate}.battle-fighter-band .champion-card{z-index:2;border-width:3px;position:relative;box-shadow:0 0 0 1px #e8c54733,0 0 18px #e8c5471f,4px 4px #00000080}.battle-fighter-band .champion-player{background:linear-gradient(135deg,#78d5d738 0%,#186aa31f 100%)}.battle-fighter-band .champion-opponent{background:linear-gradient(135deg,#c45c262e 0%,#186aa324 100%)}.battle-fighter-band .support-card-fighter-bar{z-index:1;opacity:.96;border-width:2px;box-shadow:2px 2px #0006}.battle-fighter-band .champion-portrait-wrap,.battle-fighter-band .support-card-portrait-wrap{box-shadow:0 0 0 2px var(--ink);border-radius:50%}.battle-fighter-band .champion-portrait-wrap{border-color:var(--mustard);box-shadow:0 0 0 2px var(--ink), 0 0 10px #e8c54759}.battle-fighter-band .support-card-portrait-wrap{box-shadow:0 0 0 2px var(--ink), 0 0 8px #78d5d747;border-color:#78d5d7a6}.battle-fighter-band .support-opponent .support-card-portrait-wrap{box-shadow:0 0 0 2px var(--ink), 0 0 8px #e8c54733;border-color:#e8c54773}.battle-fighter-band .champion-portrait,.battle-fighter-band .support-card-portrait{object-position:center 18%}.battle-fighter-band .support-card-portrait{filter:brightness(1.14)contrast(1.05)saturate(1.08)}.battle-fighter-band .champion-role,.battle-fighter-band .support-card-role{letter-spacing:.1em;text-transform:uppercase;opacity:.85;font-size:.5rem}.battle-fighter-band .champion-info h3,.battle-fighter-band .support-card-info h3{letter-spacing:.01em;text-transform:none;color:var(--cream);text-shadow:0 1px 0 var(--ink), 0 2px 4px #0000008c;margin:0;font-family:Rye,Georgia,serif;font-weight:400;line-height:1.2}.battle-fighter-band .support-card-info{gap:.08rem}.battle-fighter-band .support-tags,.battle-fighter-band .champion-tags{gap:.1rem;margin-top:0}.battle-fighter-band .champion-hp-bar{border-color:var(--ink);background:#00000080}.battle-fighter-band .champion-attack-row,.battle-fighter-band .support-ability-list .champion-attack-row{background:#00000047;border:1px solid #ffffff0f;border-radius:5px;padding:.1rem .24rem;line-height:1.2}.battle-fighter-band .status-tag.status-action{background:linear-gradient(180deg, var(--color-frozen-lake), var(--color-steel-blue));color:var(--ink);font-weight:700}.hand-dock{border-top:3px solid var(--ink);background:linear-gradient(#06101cfa,#0a1826f2);gap:.28rem;padding:.32rem .5rem .42rem;box-shadow:0 -6px 16px #00000059}.hand-dock-label{letter-spacing:.14em;text-transform:uppercase;color:#e8c547b3;align-self:flex-start;padding-left:.15rem;font-family:Bangers,sans-serif;font-size:.5rem}.hand-play-hint{color:var(--color-pearl-aqua);text-align:center;margin:0;font-size:.62rem}.deck-pile{background:#00000059;border:2px solid #ffffff1a;border-radius:8px;padding:.15rem}.deck-pile-label{color:#f7f9f980;letter-spacing:.08em;font-size:.48rem}.deck-pile-count{color:var(--mustard);font-size:.85rem}.game-sidebar{background:linear-gradient(180deg, var(--color-steel-deeper) 0%, #061018 100%);border-left:4px solid var(--ink)}.sidebar-actions{border-top:3px solid var(--ink);background:#00000073;padding:.5rem .65rem}.sidebar-actions .btn-end-turn{background:linear-gradient(180deg, var(--mustard) 0%, var(--orange) 100%);color:var(--ink);border:3px solid var(--ink);box-shadow:4px 4px 0 var(--ink);letter-spacing:.04em;min-height:2.75rem;font-size:1.1rem}.sidebar-actions .btn-end-turn:hover{box-shadow:6px 6px 0 var(--ink);transform:translate(-2px,-2px)}.sidebar-actions .btn-forfeit{opacity:.75;min-height:2.25rem}.sidebar-actions .btn-scrap-hand{letter-spacing:.04em;border:2px solid var(--ink);color:var(--mustard);background:#e8c54733;border-radius:6px;flex:none;min-height:2.25rem;padding:.32rem .55rem;font-family:Bangers,sans-serif;font-size:.78rem}.sidebar-actions .btn-scrap-hand-active{background:var(--mustard);color:var(--ink)}.hand-dock-scrap-pick .card-in-hand{outline:2px dashed var(--mustard);outline-offset:2px}.hand-scrap-pick-hint{color:var(--mustard);text-align:center;margin:0;font-size:.62rem}.dialogue-header h2{letter-spacing:.06em;font-size:.82rem}.phase-pill.phase-player_turn{background:var(--mustard);color:var(--ink);border:2px solid var(--ink);font-weight:700;animation:2.2s ease-in-out infinite hud-turn-pulse}@keyframes hud-turn-pulse{0%,to{box-shadow:0 0 #e8c54759}50%{box-shadow:0 0 10px 2px #e8c54773}}.ability-cast-lane-visible{color:var(--mustard);letter-spacing:.08em;font-family:Bangers,sans-serif;border-color:var(--mustard)!important;background:#e8c5471f!important}@media (width<=768px){.top-bar-brand{display:none}.hud-round-badge{padding:.16rem .35rem;font-size:.62rem}.deck-label{max-width:5.8rem;font-size:.64rem}.battle-fighter-band .champion-portrait-wrap{flex:0 0 46px;width:46px;height:46px}.battle-fighter-band .support-card-portrait-wrap{flex:0 0 40px;width:40px;height:40px}.battle-fighter-band .champion-info h3{font-size:.95rem}.battle-fighter-band .support-card-info h3{font-size:.88rem;line-height:1.2}.pit-zone-label{font-size:.4rem;top:.06rem}.player-field,.opponent-field{padding-top:.48rem}.bay-dock{margin-top:.04rem;padding:.16rem .28rem .22rem}.bay-dock-label{margin-bottom:.12rem}.battle-fighter-band{gap:.26rem}.hand-dock-label{font-size:.44rem}.play-mat:before{width:2rem;height:2rem}.arena-vs{padding:.1rem .4rem;font-size:.58rem}.sidebar-actions .btn-end-turn{min-height:2.5rem;font-size:.95rem}}@media (width<=768px) and (height<=740px){.battle-fighter-band .champion-portrait-wrap{flex:0 0 40px;width:40px;height:40px}.battle-fighter-band .support-card-portrait-wrap{flex:0 0 36px;width:36px;height:36px}}.profile-open-btn{top:max(.75rem, env(safe-area-inset-top,0px));left:max(.75rem, env(safe-area-inset-left,0px));z-index:15;border:3px solid var(--ink);color:var(--cream);letter-spacing:.05em;cursor:pointer;box-shadow:3px 3px 0 var(--ink);background:linear-gradient(#186aa3f2,#0c3452fa);border-radius:999px;align-items:center;gap:.45rem;padding:.35rem .8rem .35rem .5rem;font-family:Bangers,sans-serif;font-size:.95rem;transition:transform .12s,box-shadow .12s;display:flex;position:fixed}.profile-open-btn:hover,.profile-open-btn:focus-visible{box-shadow:4px 4px 0 var(--ink);background:linear-gradient(#2081c3fa,#124466fa);outline:none;transform:translate(-1px,-1px)}.profile-btn-icon{width:1.35rem;height:1.35rem}.profile-btn-label{text-overflow:ellipsis;white-space:nowrap;letter-spacing:.02em;text-transform:none;max-width:9rem;font-family:Rye,serif;font-size:.88rem;overflow:hidden}.auth-gate-panel{width:min(24rem,94vw)}.auth-gate-panel .profile-signin{text-align:left}.profile-panel-root{z-index:85;place-items:center;padding:1rem;display:grid;position:fixed;inset:0}.profile-panel-backdrop{cursor:pointer;background:#0000009e;border:none;animation:.2s settings-backdrop-in;position:absolute;inset:0}.profile-panel{-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);background:#0c3452eb;border:3px solid #63d2ff59;border-radius:14px;width:min(26rem,94vw);max-height:min(34rem,90vh);padding:1.35rem 1.35rem 1.5rem;position:relative;overflow-y:auto;box-shadow:0 12px 40px #00000073}.profile-panel-header{justify-content:space-between;align-items:center;gap:.75rem;margin-bottom:.85rem;display:flex}.profile-panel-header h2{color:var(--mustard);text-shadow:2px 2px 0 var(--ink);margin:0;font-family:Rye,serif;font-size:1.5rem}.profile-panel-close{border:3px solid var(--ink);background:var(--mustard);width:2rem;height:2rem;color:var(--ink);cursor:pointer;box-shadow:2px 2px 0 var(--ink);border-radius:50%;flex-shrink:0;font-size:1.35rem;line-height:1}.profile-panel-close:hover,.profile-panel-close:focus-visible{background:var(--circuit-teal,var(--teal));outline:none}.profile-panel-note{color:#f7f9f9d1;margin:0 0 1rem;font-size:.92rem;line-height:1.45}.profile-provider-stack{flex-direction:column;gap:.6rem;display:flex}.profile-provider-btn{border:3px solid var(--ink);background:var(--paper);width:100%;color:var(--text-on-light);letter-spacing:.05em;cursor:pointer;box-shadow:3px 3px 0 var(--ink);border-radius:10px;justify-content:center;align-items:center;gap:.6rem;padding:.65rem .9rem;font-family:Bangers,sans-serif;font-size:1.05rem;transition:transform .12s,box-shadow .12s;display:flex}.profile-provider-btn:hover:not(:disabled),.profile-provider-btn:focus-visible{box-shadow:4px 4px 0 var(--ink);outline:none;transform:translate(-1px,-1px)}.profile-provider-btn:disabled{opacity:.65;cursor:wait}.profile-provider-icon{flex-shrink:0;width:1.25rem;height:1.25rem}.profile-divider{color:#bed8d48c;letter-spacing:.1em;text-transform:uppercase;align-items:center;gap:.65rem;margin:.9rem 0;font-family:Bangers,sans-serif;font-size:.8rem;display:flex}.profile-divider:before,.profile-divider:after{content:"";background:#63d2ff38;flex:1;height:2px}.profile-email-form{flex-direction:column;gap:.5rem;display:flex}.profile-email-input{border:3px solid var(--ink);background:var(--paper);width:100%;color:var(--text-on-light);box-sizing:border-box;border-radius:8px;padding:.6rem .75rem;font-family:Barlow Semi Condensed,sans-serif;font-size:.98rem}.profile-email-input:focus{outline:2px solid var(--color-pearl-aqua);outline-offset:2px}.profile-email-submit{width:100%;font-size:.98rem}.profile-email-submit:disabled{opacity:.65;cursor:wait}.profile-email-sent{background:#06101859;border:2px solid #63d2ff59;border-radius:10px;flex-direction:column;gap:.35rem;padding:.85rem .9rem;display:flex}.profile-email-sent-title{letter-spacing:.06em;color:var(--mustard);font-family:Bangers,sans-serif;font-size:1rem}.profile-email-sent p{color:#f7f9f9d1;margin:0;font-size:.88rem;line-height:1.45}.profile-panel-error{color:#ffb4b4;margin:.85rem 0 0;font-family:Bangers,sans-serif;font-size:.85rem}.profile-panel-fineprint{color:#bed8d4a6;margin:1rem 0 0;font-size:.75rem;line-height:1.4}.profile-details{flex-direction:column;gap:1rem;display:flex}.profile-identity{align-items:center;gap:.85rem;display:flex}.profile-avatar{border:3px solid var(--color-pearl-aqua);object-fit:cover;width:3.4rem;height:3.4rem;box-shadow:2px 2px 0 var(--ink);border-radius:50%;flex-shrink:0}.profile-avatar-fallback{background:linear-gradient(180deg, var(--teal-dark), var(--ink));color:var(--cream);place-items:center;font-family:Rye,serif;font-size:1.5rem;display:grid}.profile-name-block{flex-direction:column;gap:.15rem;min-width:0;display:flex}.profile-display-name{color:var(--cream);text-overflow:ellipsis;white-space:nowrap;font-family:Rye,serif;font-size:1.25rem;overflow:hidden}.profile-rename-link{color:var(--color-frozen-lake);letter-spacing:.06em;cursor:pointer;background:0 0;border:none;align-self:flex-start;padding:0;font-family:Bangers,sans-serif;font-size:.82rem;text-decoration:underline}.profile-rename-form{flex-direction:column;flex:1;gap:.5rem;min-width:0;display:flex}.profile-rename-input{letter-spacing:.05em;border:3px solid var(--ink);background:var(--paper);width:100%;color:var(--text-on-light);box-sizing:border-box;border-radius:8px;padding:.5rem .65rem;font-family:Bangers,sans-serif;font-size:1rem}.profile-rename-input:focus{outline:2px solid var(--color-pearl-aqua);outline-offset:2px}.profile-rename-actions{gap:.5rem;display:flex}.profile-rename-save,.profile-rename-cancel{padding:.4rem .9rem;font-size:.9rem}.profile-meta{background:#06101859;border:2px solid #63d2ff38;border-radius:10px;flex-direction:column;gap:.4rem;margin:0;padding:.75rem .85rem;display:flex}.profile-meta-row{justify-content:space-between;gap:.75rem;font-size:.85rem;display:flex}.profile-meta-row dt{color:#bed8d4bf}.profile-meta-row dd{color:var(--cream);margin:0;font-weight:600}.profile-meta-provider{text-transform:capitalize}.profile-leaderboard-teaser{color:#e8c547d9;margin:0;font-size:.82rem}.profile-signout-btn{align-self:flex-start}.profile-stats{flex-direction:column;gap:.5rem;display:flex}.profile-stats-title{letter-spacing:.08em;color:var(--color-pearl-aqua,#63d2ff);text-transform:uppercase;margin:0;font-family:Bangers,sans-serif;font-size:1.05rem}.profile-stats-sub{color:#e8f4f2d1;margin:-.15rem 0 0;font-family:Barlow Semi Condensed,Segoe UI,sans-serif;font-size:.82rem;font-weight:500;line-height:1.35}.profile-stats-grid{grid-template-columns:repeat(3,1fr);gap:.5rem;display:grid}.profile-stat{text-align:center;background:#06101859;border:2px solid #63d2ff38;border-radius:10px;flex-direction:column;align-items:center;gap:.15rem;padding:.55rem .35rem;display:flex}.profile-stat-value{letter-spacing:.04em;color:var(--cream,#f4ead4);font-family:Bangers,sans-serif;font-size:1.25rem;line-height:1}.profile-stat-label{text-transform:uppercase;letter-spacing:.08em;color:#bed8d4bf;font-size:.68rem}.mode-picker-root{z-index:90;justify-content:center;align-items:center;padding:1rem;display:flex;position:fixed;inset:0}.mode-picker-backdrop{cursor:pointer;background:#040a10b8;border:none;position:absolute;inset:0}.mode-picker-panel{-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);background:#0c3452eb;border:3px solid #63d2ff59;border-radius:14px;flex-direction:column;gap:.85rem;width:min(420px,100%);max-height:calc(100dvh - 2rem);padding:1.15rem 1.25rem 1.35rem;display:flex;position:relative;overflow-y:auto;box-shadow:0 12px 40px #00000073}.mode-picker-header h2{color:var(--cream,#f4ead4)}.mode-picker-header{justify-content:space-between;align-items:center;gap:.75rem;display:flex}.mode-picker-header h2{letter-spacing:.06em;margin:0;font-family:Bangers,sans-serif;font-size:1.5rem}.mode-picker-options{flex-direction:column;gap:.6rem;display:flex}.mode-picker-option{border:3px solid var(--ink,#1c1c28);background:var(--paper,#f4ead4);color:var(--text-on-light,#1c1c28);cursor:pointer;text-align:left;border-radius:12px;flex-direction:column;align-items:flex-start;gap:.25rem;padding:.75rem .9rem;transition:transform .12s,box-shadow .12s;display:flex}.mode-picker-option:hover,.mode-picker-option:focus-visible{transform:translateY(-2px);box-shadow:0 4px #00000059}.mode-picker-label{letter-spacing:.05em;font-family:Bangers,sans-serif;font-size:1.15rem}.mode-picker-option p{opacity:.85;margin:0;font-size:.82rem}.online-match-queue{flex-direction:column;align-items:flex-start;gap:.85rem;display:flex}.leaderboard-panel{flex-direction:column;gap:1rem;display:flex}.leaderboard-header{align-items:flex-start;gap:1rem;display:flex}.leaderboard-header h1{letter-spacing:.05em;color:var(--cream,#f4ead4);text-shadow:2px 2px 0 var(--ink,#1c1c28);margin:.15rem 0 0;font-family:Bangers,sans-serif;font-size:clamp(1.8rem,5vw,2.4rem)}.leaderboard-league{text-transform:uppercase;letter-spacing:.14em;color:var(--color-pearl-aqua,#63d2ff);margin:0 0 .15rem;font-size:.75rem}.leaderboard-sub{color:#f4e4c8d9;margin:.35rem 0 0;font-size:.9rem}.leaderboard-your-tier{color:#f4e4c8e6;margin:.45rem 0 0;font-family:Barlow Semi Condensed,Segoe UI,sans-serif;font-size:.88rem}.leaderboard-tier-progress{color:#f4e4c8b8}.leaderboard-tier-legend{flex-wrap:wrap;gap:.35rem;display:flex}.leaderboard-tier-badge{vertical-align:middle;margin-right:.35rem}.circuit-tier-chip{border:1px solid color-mix(in srgb, var(--tier-color) 70%, #000 30%);background:color-mix(in srgb, var(--tier-color) 22%, #061018e6 78%);letter-spacing:.05em;text-transform:uppercase;color:var(--tier-color);text-shadow:0 1px 2px #000000a6;white-space:nowrap;border-radius:999px;justify-content:center;align-items:center;padding:.1rem .45rem;font-family:Barlow Semi Condensed,Segoe UI,sans-serif;font-size:.68rem;font-weight:700;display:inline-flex}.circuit-tier-unranked{color:#9eb8b4;--tier-color:#9eb8b4}.profile-tier-banner{background:#06101866;border:2px solid #63d2ff33;border-radius:10px;flex-wrap:wrap;align-items:center;gap:.45rem .65rem;padding:.45rem .55rem;display:flex}.profile-tier-chip{padding:.18rem .55rem;font-size:.78rem}.profile-tier-meta{color:#e8f4f2db;font-family:Barlow Semi Condensed,Segoe UI,sans-serif;font-size:.82rem;font-weight:500}.leaderboard-back{flex-shrink:0}.leaderboard-status{color:#f4e4c8d9;margin:0;font-size:.95rem}.leaderboard-list{flex-direction:column;gap:.4rem;margin:0;padding:0;list-style:none;display:flex;overflow-y:auto}.leaderboard-row{background:#06101859;border:2px solid #63d2ff38;border-radius:10px;grid-template-columns:2rem 2.25rem 1fr auto auto auto;align-items:center;gap:.6rem;padding:.5rem .75rem;display:grid}.leaderboard-row-top-1{border-color:#e8c547d9}.leaderboard-row-top-2{border-color:#c8cdd7bf}.leaderboard-row-top-3{border-color:#cd853fbf}.leaderboard-row-you{background:#63d2ff1f}.leaderboard-rank{text-align:center;color:var(--cream,#f4ead4);font-family:Bangers,sans-serif;font-size:1.1rem}.leaderboard-avatar{object-fit:cover;border:2px solid #63d2ff66;border-radius:50%;width:2.25rem;height:2.25rem}.leaderboard-avatar-fallback{color:var(--cream,#f4ead4);background:#63d2ff2e;justify-content:center;align-items:center;font-family:Bangers,sans-serif;font-size:1.05rem;display:flex}.leaderboard-name{text-overflow:ellipsis;white-space:nowrap;min-width:0;color:var(--cream,#f4ead4);align-items:center;gap:.5rem;font-weight:600;display:flex;overflow:hidden}.leaderboard-you-chip{text-transform:uppercase;letter-spacing:.08em;color:var(--color-pearl-aqua,#63d2ff);background:#63d2ff40;border-radius:999px;flex-shrink:0;padding:.1rem .45rem;font-size:.65rem}.leaderboard-stat{font-variant-numeric:tabular-nums;color:#bed8d4d9;font-size:.85rem}.leaderboard-wins{color:var(--cream,#f4ead4);font-weight:700}.leaderboard-ratio{text-align:right;min-width:2.75rem}.profile-tag,.leaderboard-tag,.friends-tag{color:#bed8d4a6;font-variant-numeric:tabular-nums;margin-left:.15rem;font-size:.8em}.profile-meta-tag{font-variant-numeric:tabular-nums;color:var(--color-pearl-aqua,#63d2ff)}.claim-form{text-align:left;flex-direction:column;gap:.55rem;margin-top:1rem;display:flex}.claim-input{letter-spacing:.04em;width:100%;font-size:1.05rem}.claim-rules{color:#f7f9f999;margin:0;font-size:.78rem}.claim-submit{align-self:stretch}.claim-signout{color:#bed8d4b3;cursor:pointer;background:0 0;border:none;margin-top:1rem;font-size:.82rem;text-decoration:underline}.claim-signout:hover,.claim-signout:focus-visible{color:var(--cream,#f4ead4);outline:none}.title-corner-buttons{top:max(.75rem, env(safe-area-inset-top,0px));left:max(.75rem, env(safe-area-inset-left,0px));z-index:15;flex-direction:column;align-items:flex-start;gap:.5rem;display:flex;position:fixed}.title-corner-buttons .profile-open-btn{position:static;top:auto;left:auto}.friends-open-btn{position:relative}.friends-badge{border:2px solid var(--ink);background:var(--brick,#c0392b);min-width:1.3rem;height:1.3rem;color:var(--cream,#f4ead4);letter-spacing:.03em;border-radius:999px;place-items:center;padding:0 .25rem;font-family:Bangers,sans-serif;font-size:.72rem;display:grid;position:absolute;top:-.4rem;right:-.4rem}.friends-panel{width:min(28rem,94vw)}.friends-section{margin-bottom:1.1rem}.friends-section-title{letter-spacing:.06em;color:var(--color-pearl-aqua,#63d2ff);text-transform:uppercase;margin:0 0 .5rem;font-family:Bangers,sans-serif;font-size:1rem}.friends-section-invites .friends-section-title{color:var(--mustard,#e8c547)}.friends-add-form{gap:.5rem;display:flex}.friends-add-input{flex:1;min-width:0}.friends-add-btn{white-space:nowrap;flex-shrink:0}.friends-hint{color:#f7f9f999;margin:.45rem 0 0;font-size:.78rem}.friends-notice{color:var(--color-pearl-aqua,#63d2ff);margin:.45rem 0 0;font-size:.82rem}.friends-list{flex-direction:column;gap:.45rem;margin:0;padding:0;list-style:none;display:flex}.friends-row{background:#061e308c;border:2px solid #63d2ff33;border-radius:10px;justify-content:space-between;align-items:center;gap:.6rem;padding:.5rem .65rem;display:flex}.friends-row-invite{background:#3c2c0859;border-color:#e8c54773}.friends-row-muted{opacity:.75}.friends-name{text-overflow:ellipsis;white-space:nowrap;min-width:0;color:var(--cream,#f4ead4);font-size:.95rem;overflow:hidden}.friends-invite-note{color:#e8c547d9;margin-left:.45rem;font-size:.78rem}.friends-actions{flex-shrink:0;gap:.4rem;display:flex}.friends-action-btn{padding:.3rem .65rem;font-size:.8rem}@media (width<=520px){.profile-stats-grid{grid-template-columns:repeat(2,1fr)}.leaderboard-row{grid-template-columns:1.5rem 1.9rem 1fr auto auto auto;gap:.4rem;padding:.45rem .5rem}.leaderboard-avatar{width:1.9rem;height:1.9rem}.friends-row{flex-direction:column;align-items:stretch}.friends-actions{justify-content:flex-end}}
