/* Visual system v3: poster-like saturated arcade show, preserving original live game controls. */
:root{--hot:#ff178c;--violet:#7f20ff;--ultra:#231060;--electric:#00d9ff;--sun:#ffe100}
body{background:#090725;background-image:radial-gradient(ellipse 120% 43% at 50% -7%,#7830e9 0%,transparent 77%), radial-gradient(ellipse 65% 34% at 100% 64%,#ea007e50 0%,transparent 85%),linear-gradient(#120a44,#080824)}
body:before{background:radial-gradient(circle at 8% 55%,#fc1d9850,transparent 36%),radial-gradient(circle at 91% 15%,#154dff55,transparent 45%)}
.ambient-a{background:#a600ff}.ambient-b{background:#ff009d}
.brand-type{font-weight:1000;filter:drop-shadow(2px 3px 0 #e4008f)}
.brand-symbol{border-radius:50%;background:linear-gradient(135deg,#fffb60,#ff9d00);box-shadow:3px 5px 0 #ff158f,0 0 19px #ff3a9d88}
.topbar{border-bottom:2px solid #ffffff1b}
.landing{align-items:start;padding-top:36px}
.landing-copy{position:relative}
.hero-sparkles{position:absolute;inset:0;pointer-events:none;z-index:-1}
.hero-sparkles span{position:absolute;color:#00e9ff;font-size:55px;filter:drop-shadow(0 0 13px #00e5ff)}
.hero-sparkles span:nth-child(1){top:8%;right:17%}.hero-sparkles span:nth-child(2){top:48%;right:8%;transform:rotate(21deg);color:#ffeb2a}.hero-sparkles span:nth-child(3){top:68%;left:-7%;color:#ff339f}
.landing-copy h1{font-weight:1000;line-height:.84;transform:rotate(-2deg);margin:22px 0 18px;filter:drop-shadow(0 10px 0 #050323)}
.landing-copy .hero-white{color:#ffb900;-webkit-text-stroke:3px #4d157d;text-shadow:3px 5px 0 #fff69d,7px 9px 0 #ff248f,11px 14px 0 #3c0f96}
.landing-copy .gradient-text{color:#ffe026;-webkit-text-stroke:3px #3c0c7c;text-shadow:4px 6px 0 #ff56a9,10px 11px 0 #530d97,14px 16px 0 #130529}
.hero-ribbon{background:#f72d9c;box-shadow:5px 6px 0 #331076;display:inline-block;font-weight:1000;letter-spacing:.5px;color:#140433;font-size:13px;padding:12px 19px;transform:rotate(-3deg);border-radius:3px;margin:7px 0 8px}
.hero-tagline{background:#ffe41e;box-shadow:4px 5px 0 #e500a0;font-size:14px;border-radius:4px}
.lede{font-size:17px;color:#f7eaff;text-shadow:0 1px 2px #09031f}
.feature-line span{background:#3820a0;border:2px solid #8f58ff;box-shadow:0 3px 0 #080622}
.pop-art{height:270px;max-width:490px}
.tv-mascot{filter:drop-shadow(4px 10px 0 #070628) drop-shadow(0 0 15px #11d7f8aa)}
.pop-sticker{border:3px solid #0f0841;border-radius:11px;box-shadow:5px 6px 0 #070622}
.sticker-top{background:white;color:#21144f;top:4%;left:1%;transform:rotate(-12deg)}
.sticker-bottom{background:#ffe31e;right:0;bottom:5%;color:#21104e}
.entry-card{background:linear-gradient(145deg,#ffdb41 0%,#ff9e42 35%,#ff429c 80%,#b328e8 100%);border:4px solid #190944;box-shadow:9px 11px 0 #09032b,14px 16px 0 #00dbff,0 0 40px #ff0c8e52;transform:none;margin-top:15px}
.entry-kicker{background:#300c71;color:#fff02c;box-shadow:3px 4px 0 #e636a1}
.entry-card h2{color:#230b5f;text-shadow:1px 2px 0 #fff6a5}
.entry-form input{border-color:#3c1170}.primary-button{background:linear-gradient(180deg,#fff34a,#ffc000);box-shadow:3px 5px 0 #2a0d60}
.entry-card .primary-button{background:linear-gradient(180deg,#ff39b9,#ed0085);color:white;text-shadow:0 2px 0 #8a095c;font-size:18px;border-color:#300a66;box-shadow:3px 5px 0 #300a66,0 0 20px #ff38b883}
.entry-card .primary-button:hover:not(:disabled){background:#f500a0}
.mode-preview{display:flex;flex-wrap:wrap;gap:8px;margin-top:18px}
.mode-preview span{font-size:10px;font-weight:1000;white-space:nowrap;padding:9px;border-radius:10px;background:#37165d;color:#d9c8ec;border:2px solid #ffffff66}
.mode-preview span.mode-active{background:#ffe332;color:#30145a;box-shadow:2px 3px 0 #270b58}
.entry-bottom{padding-top:18px}
.game{--scene-main:#9c32ec;--scene-bright:#ff2da9;--scene-second:#19d9ff}
.game[data-scene='case']{--scene-main:#d4398e;--scene-bright:#ff9e32;--scene-second:#fff064}
.game[data-scene='draw'],.game[data-scene='draw_vote']{--scene-main:#0787ff;--scene-bright:#32caff;--scene-second:#ffed39}
.game[data-scene='pitch'],.game[data-scene='pitch_vote']{--scene-main:#f33c8e;--scene-bright:#fba733;--scene-second:#fff24f}
.game[data-scene='mission']{--scene-main:#bd5a20;--scene-bright:#f5b23e;--scene-second:#ffef53}
.game[data-scene='finale'],.game[data-scene='results']{--scene-main:#7621d4;--scene-bright:#ff40ad;--scene-second:#ffdf2d}
.stage-shell{background:radial-gradient(circle at 52% 26%,color-mix(in srgb,var(--scene-bright),transparent 36%),transparent 44%),radial-gradient(circle at 5% 80%,#0957b8,transparent 67%),linear-gradient(145deg,var(--scene-main),#261080 65%,#100738);border:4px solid #10052f;box-shadow:7px 9px 0 #08051b,0 0 22px #6d21dd7a}
.stage-shell:after{content:'✦';font-size:64px;color:var(--scene-second);text-shadow:0 0 24px var(--scene-second)}
.stage-content{position:relative;z-index:2}
.phase-theatre{height:190px;position:relative;display:grid;place-items:center;margin:7px auto 10px;max-width:340px}
.phase-backdrop{position:absolute;width:220px;height:165px;border-radius:50%;background:radial-gradient(ellipse,#ffffff6b 0%,#fffc 5%,#ffffff00 60%);filter:blur(27px);opacity:.35}
.phase-theatre .hero-icon{margin:0;width:140px;height:140px;border-radius:34%;transform:rotate(-7deg);background:linear-gradient(135deg,#fff152,#ff912a,#ff318a);border:5px solid #321074;box-shadow:0 0 0 13px #fff3,0 0 0 29px #fff1,9px 12px 0 #140b4b,0 0 40px #ffd50070;position:relative;z-index:2}
.phase-theatre .hero-icon span{font-size:85px;color:#260966;text-shadow:2px 3px 0 #ffefb0}
.stage-spark{position:absolute;font-size:35px;color:var(--scene-second);text-shadow:0 0 9px #ffffffaf;animation:mascot-bop 3s ease-in-out infinite}
.sp-one{top:5px;left:12%}.sp-two{right:6%;top:14%;transform:rotate(14deg)}.sp-three{bottom:0;left:18%}
.stage-caption{background:#f4d92e;color:#220d65;display:table;padding:7px 13px;transform:rotate(-2deg);box-shadow:3px 4px 0 #120943;border-radius:5px;letter-spacing:1px;margin:0 auto 15px}
.stage-title{text-align:center;font-size:clamp(34px,4.5vw,60px);color:#fff;text-shadow:3px 5px 0 #300759,0 0 22px #ff42b577}
.stage-description{text-align:center;max-width:630px;margin-left:auto;margin-right:auto;font-size:16px}
.stage-message{border-left:5px solid var(--scene-second);background:#190a6096}
.live-pill{background:#ff0c8c;box-shadow:0 0 10px #ff0c8c70}
.side-panel{border-width:3px}.room-panel{background:linear-gradient(145deg,#64e9fb,#22b6f0)}
.players-panel{background:linear-gradient(160deg,#fff3fd,#ffe0ff)}.director-panel{background:linear-gradient(160deg,#ead6ff,#d3b4ff)}
.room-pill{background:linear-gradient(120deg,#ffe83f,#ffb82b)}
.session-header .gradient-text{text-shadow:3px 4px 0 #f02596}
#game[data-scene='results'] .stage-shell{box-shadow:0 0 0 4px #e8d441,0 0 35px #efbb4b}
@media(max-width:650px){.page-shell{padding:0 13px 40px}.topbar{min-height:67px}.brand{font-size:18px}.landing{padding-top:20px}.landing-copy h1{font-size:clamp(62px,15.5vw,99px);margin:17px 0 18px}.landing-copy .hero-white,.landing-copy .gradient-text{-webkit-text-stroke:2px #401075}.hero-ribbon{font-size:10px;padding:9px 11px}.hero-tagline{font-size:11px}.lede{font-size:14px}.pop-art{height:202px;max-width:380px}.entry-card{padding:22px;border-radius:22px;margin-top:12px}.mode-preview{gap:5px}.mode-preview span{font-size:9px;padding:7px 8px}.stage-shell,.stage-content{min-height:590px}.stage-content{padding:16px}.phase-theatre{height:157px;margin:8px auto 9px}.phase-theatre .hero-icon{width:112px;height:112px}.phase-theatre .hero-icon span{font-size:65px}.stage-caption{font-size:10px}.stage-title{font-size:clamp(34px,9vw,44px)}.stage-description{font-size:14px}.hero-sparkles span{font-size:30px}.entry-card .primary-button{font-size:16px}}
@media(prefers-reduced-motion:reduce){.stage-spark{animation:none}}
