:root{--yellow:#ffe348;--muted:#ded8ff}body{background:#21134f;background-image:radial-gradient(circle at 20% 10%,#6125b9 0,transparent 40%),radial-gradient(circle at 100% 60%,#165485,transparent 45%);color:#fff5e5;font-family:'Trebuchet MS',Arial,sans-serif}.topbar{border-bottom:3px solid #ffffff30}.topbar .wordmark{color:#ffe348;font-size:38px;text-shadow:3px 3px #100b2b}.topbar>span{color:#b9fff0;letter-spacing:1px}.hero{min-height:440px;padding:28px 0}.hero h1{font-size:clamp(80px,10vw,136px);letter-spacing:-7px;transform:rotate(-4deg);text-shadow:5px 6px 0 #140b30,8px 9px 0 #ed4584}.hero h1 em{color:#ffe348}.heroCopy>p{color:#fff0fd;font-weight:bold}.heroArt{background:repeating-conic-gradient(from 20deg,#7f49d233 0deg 15deg,transparent 15deg 30deg);border-radius:50%}.orbit{border-color:#aefce280}.burst{background:#ffdb38;color:#221139;font-size:27px}.heroCta,#createPublic,#startGame,#joinByCode{background:#ffe348!important;color:#251344!important;border:3px solid #170d35!important;border-bottom:7px solid #b57225!important;text-shadow:none;box-shadow:0 5px 0 #160d3080!important;font-size:15px!important}.heroCta:hover,#createPublic:hover,#startGame:hover,#joinByCode:hover{background:#fff58b!important;transform:translateY(-3px)}button{transition:transform .12s,filter .12s}button:hover{filter:brightness(1.12)}button:active{transform:translateY(3px)!important}.ticker{background:#ed4584;color:#fff;border:3px solid #170d35;transform:rotate(-1deg);border-radius:10px;padding:16px 8px}.ticker span{color:#ffe348}.playHeading{margin:35px 0 20px}.playHeading h2{font-size:38px;font-weight:1000;text-shadow:3px 3px #0e0929}.eyebrow,.card label{color:#aefce2;font-weight:bold}.card{background:#392268;border:3px solid #9671d9;border-bottom:8px solid #160c37;border-radius:22px;box-shadow:6px 7px 0 #120a2f55;padding:24px}.card input{background:#211440;border:2px solid #8960ce;color:#fff;border-radius:12px}.card input::placeholder{color:#c3b3df}.card h3{color:#fff6c5;font-size:16px}.card .characterChoice{position:relative;background:#49317b;border:2px solid #ad87db!important;border-bottom:6px solid #21113f!important;overflow:hidden}.characterChoice img{height:115px;filter:drop-shadow(0 5px 0 #160f3b70)}.characterChoice small{color:#e1d3ff}.card .characterChoice[aria-pressed=true]{background:#087f82;border-color:#fff16a!important;box-shadow:0 0 0 2px #fff16a!important;transform:translateY(-4px)}.characterChoice strong{font-size:13px!important;color:white}.characterChoice::before{content:'';position:absolute;inset:0;background:repeating-conic-gradient(from 0deg at 50% 40%,#ffffff08 0deg 20deg,transparent 20deg 40deg);pointer-events:none}.newFighters{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin-top:14px}.newFighters button{margin:0}.newFighters img{height:100px;width:100%;object-fit:contain}.newBadge{position:absolute;top:7px;left:7px;font-size:9px;background:#ff4e86;color:white;padding:4px 7px;border-radius:5px;z-index:1;transform:rotate(-5deg)}.skillPreview{border:2px solid #11c5af;background:#152f51;box-shadow:3px 4px #170e33;border-radius:14px}.skillPreview strong{color:#ffe348}.skillPreview p,.skillPreview small{color:#e8e7ff}.secondary{background:#5d3d92!important;color:#fff!important;border-color:#9973cb!important}.hint,.howTo p,.heroNote,.controls,.playHeading>span{color:#e2d4ff}.howTo{background:#241640;border:2px dashed #8e69bd;border-radius:16px;padding:15px!important}.howTo kbd,.lobbyTips kbd{background:#7551b2;color:#fff;border-color:#bb96f2}.lobbyShell .lobbyTop,.gameHeader{background:#31205c;border:2px solid #9470c7;border-bottom:6px solid #170d33;border-radius:16px;padding:16px}.lobbyBanner{background:repeating-conic-gradient(from 0deg at 75% 50%,#7840c0 0deg 20deg,#6132a1 20deg 40deg)!important;border:3px solid #c095fa;border-bottom:7px solid #180d35}.lobbyBanner h2{text-shadow:3px 4px #241144}.lobbyBanner em{color:#ffe348!important}.lobbyBanner p{color:#f9edff}.bannerStar{color:#fadd3b!important}.fighterCard{background:#241647;border:2px solid #674790}.fighterCard.me{background:#145367;border-color:#3de4c5}.fighterBadge{background:#7146af;color:#fff26d}.fighterCard small,.arenaCard p,.hostCard p,.emptySlot{color:#e0cff8}.emptySlot{border-color:#8e69bd}.lobbyShell .hostCard{background:#392268}.lobbyTips{background:#342158;color:#f3eaff;border-radius:14px;padding:14px}#arenaPreview{grid-template-columns:repeat(21,1fr);aspect-ratio:21/15;border-color:#a889d5}.playerStats{background:#372364;border:2px solid #9d7ad0}.playerStats strong{color:#fff259}.abilityButton{background:#ffe348!important;color:#281547;border-color:#eec545!important}.abilityButton:disabled{background:#67498b!important;color:#ddd0ef}.abilityButton:enabled{outline-color:#38ebcf;animation:ultiReady 1s ease-in-out infinite}.gameHeader{flex-wrap:wrap;gap:10px}.gameHeader strong{color:#ffe348}.gameHeader #matchClock,.gameHeader #aliveCount{background:#170d35;border:2px solid #7756ad;border-radius:10px;padding:8px 12px;font-weight:bold}#arenaWrap{border:5px solid #9161cf;border-bottom:9px solid #170d35;box-shadow:0 0 0 2px #32c9c0,0 15px 40px #08032280}.victoryCard{background:#583393;border:4px solid #ffe348}.empty{color:#dec9f5;border-color:#976ccb}#gameToast{position:fixed;top:22px;left:50%;transform:translateX(-50%) translateY(-120px);z-index:100;background:#ffe348;color:#25133f;border:3px solid #170d35;border-bottom-width:6px;border-radius:12px;padding:14px 22px;font-size:18px;font-weight:900;transition:transform .2s;pointer-events:none;text-align:center;max-width:90vw}#gameToast.visible{transform:translateX(-50%) translateY(0)}footer{color:#c8b5e6}.artLabel{color:#b9fff0}.arenaChoice{filter:brightness(1.5)}@keyframes ultiReady{50%{outline-offset:6px}}@media(prefers-reduced-motion:reduce){*{animation:none!important;transition:none!important}}@media(max-width:760px){.hero h1{font-size:88px}.playHeading h2{font-size:29px}.characterChoice img{height:77px}.newFighters img{height:90px}.card{padding:16px}.gameHeader{font-size:12px}#gameToast{font-size:14px}.hero{min-height:0}.newFighters{gap:8px}}
