/* Arcade presentation: bold silhouettes, tactile controls, readable game stakes. */
:root{--panel:rgba(19,35,62,.96);--gold:#ffd56b;--mint:#7af2d2}
button{transition:transform .16s,box-shadow .16s,background .16s}button:not(:disabled):active{transform:translateY(3px)}.primary{background:linear-gradient(145deg,#adffe6,#63e7c5);box-shadow:0 5px 0 #238b81,0 10px 24px #031e3f38;border:2px solid #c1fff0;text-shadow:0 1px #e6fff3}.primary:not(:disabled):hover{transform:translateY(-2px);box-shadow:0 7px 0 #238b81,0 14px 24px #031e3f48}.panel{border:2px solid #c1edff36;box-shadow:0 10px 0 #11294545,0 22px 55px #08213c45}.eyebrow{font-weight:850;font-size:12px;letter-spacing:2px;color:var(--mint)}.brand{font-style:italic;text-shadow:2px 3px #244c79}.mini-label{font-size:11px;letter-spacing:1.8px;color:var(--muted);margin:0 0 5px}.lobby-panel h1.room-title{font-size:43px;margin:12px 0 22px;line-height:1.03}.invite-row{display:flex;justify-content:space-between;align-items:center;gap:16px}.invite-row .room-code{font-size:34px;letter-spacing:4px}.qr-mini{background:#fff;border:4px solid white;border-radius:15px;padding:2px;color:#183750;flex:0 0 134px;box-shadow:0 4px #9fc4d4}.qr-mini img{width:120px;height:120px;display:block}.qr-mini span{font-size:10px;letter-spacing:1px;font-weight:900;display:block;padding-bottom:5px}.qr-mini:hover{transform:rotate(2deg) scale(1.03)}.join-url{font-size:12px;padding:8px 10px}select{width:100%;padding:9px;background:#1b3657;color:#fff;border:1px solid #7497ac;border-radius:8px}.lobby-callout{position:absolute;right:6%;top:29%;max-width:570px;text-align:right;text-shadow:0 3px 15px #294c7740}.lobby-callout .eyebrow{color:#1c5270;background:#dffff2de;padding:8px 12px;border-radius:7px}.lobby-callout h2{font-size:clamp(40px,5.5vw,82px);line-height:.98;letter-spacing:-3px;margin:24px 0;color:white;text-shadow:3px 5px 0 #315c8a;font-weight:950;font-style:italic}.lobby-callout p{color:#173f60;font-size:18px;font-weight:750}.feature-pills{display:flex;gap:8px;justify-content:flex-end;flex-wrap:wrap}.feature-pills span{background:#183354e8;border:1px solid #ffffff55;padding:9px 12px;border-radius:20px;font-size:12px;font-weight:750}.qr-panel{text-align:center;max-width:440px}.qr-large{display:block;width:min(100%,280px);height:auto;margin:15px auto;border:6px solid #fff;border-radius:18px}.qr-panel h2{margin:14px 0}.qr-panel .room-code{font-size:36px}.sound-btn{min-width:55px}
.hud{border:2px solid #c1edff55;box-shadow:0 6px 0 #18324b33;padding:19px;background:linear-gradient(145deg,#172c4def,#1d3f5eef)}.hud .eyebrow{font-size:10px;margin-bottom:5px}.health-meta{display:flex;align-items:center;justify-content:space-between;font-size:12px;margin-top:16px}.health-meta>span{font-weight:850;letter-spacing:1px;color:#9ff9df}.health-meta strong{font-variant-numeric:tabular-nums}.health-bar{position:relative;height:20px;background:#071e35;border:2px solid #ffffff80;border-radius:8px;overflow:hidden;margin-top:7px;box-shadow:0 3px 0 #0002}.health-bar>div{height:100%;background:linear-gradient(#a4ffd8,#3bc9a3);transition:width .35s cubic-bezier(.2,.8,.2,1)}.health-bar>span{position:absolute;inset:0;background:repeating-linear-gradient(90deg,transparent 0,transparent calc(10% - 2px),#102a3b55 calc(10% - 2px),#102a3b55 10%)}.health-bar.critical>div{background:linear-gradient(#ffbd8b,#ff5379)}.health-state{font-size:10px;font-weight:750;color:#c7d8e7;margin-top:7px;min-height:15px}.health-state.danger{color:#ffc06b}.hud .progress{margin-top:12px}.scoreboard h3{letter-spacing:2px;font-size:11px;color:var(--mint)}.machine-tip{border:2px solid #ffc969;box-shadow:0 4px #7b533e55}
.game-veil{background:radial-gradient(ellipse at center,#173b6855,#0a1a3f99);backdrop-filter:blur(3px);overflow:hidden}.comic-rays{position:absolute;inset:-100%;pointer-events:none;background:repeating-conic-gradient(from 15deg,#b1edff12 0deg 12deg,transparent 12deg 30deg);animation:rays-in .6s both}.game-pop{position:relative;width:650px;border:3px solid #c6f8ff;border-radius:30px;background:linear-gradient(150deg,#294b75,#192e50 65%);box-shadow:0 9px 0 #0c1c36,0 25px 70px #07172a88;padding:29px 32px 24px;animation:card-pop .55s cubic-bezier(.16,.85,.26,1.18) both}.comic-badge{width:66px;height:66px;background:var(--gold);color:#342e4d;border:4px solid #fff5d2;border-radius:21px;box-shadow:0 5px 0 #b77741;display:flex;align-items:center;justify-content:center;font-size:44px;font-weight:950;transform:rotate(-10deg);margin:0 auto 16px;animation:badge-pop .65s cubic-bezier(.2,.85,.3,1.35) both}.challenge-heading{font-size:32px;font-style:italic;font-weight:950;letter-spacing:-1px;color:var(--gold);text-shadow:2px 3px #10223e;text-align:center;margin-bottom:19px}.challenge-meta{display:flex;justify-content:space-between;gap:10px;margin-bottom:18px;font-size:10px;letter-spacing:1.5px;font-weight:850;text-transform:uppercase;color:#9beedc}.game-pop h2{font-size:23px;line-height:1.35;letter-spacing:-.3px;margin-bottom:18px}.game-pop .answer{border:2px solid #7696bb;border-bottom-width:4px;background:#203b62;border-radius:15px;min-height:60px;padding:11px 14px;gap:14px;animation:answer-in .3s backwards;animation-delay:calc(.15s + var(--choice)*.055s)}.game-pop .answer:hover{background:#325581;border-color:#b1ffeb;transform:translateX(4px)}.game-pop .answer-number{border:0;color:#16304b;background:#8cf1d8;box-shadow:0 3px 0 #2eaa9c;padding:6px 11px;border-radius:9px;font-size:18px}.game-pop .answer:nth-child(2) .answer-number{background:#ffc4d5;box-shadow:0 3px #be789c}.game-pop .answer:nth-child(3) .answer-number{background:#ffd983;box-shadow:0 3px #ba964d}.game-pop .answer:nth-child(4) .answer-number{background:#c5bbff;box-shadow:0 3px #8371bc}.game-pop .quiz-note{font-size:12px;margin:18px 0 10px;line-height:1.5;color:#e1eaf5}.stasis-note{font-size:11px;color:#9beedc;text-align:center;border-top:1px solid #ffffff20;padding-top:11px}.victory .game-pop{border-color:#a3ffdd}.comeback .game-pop{border-color:#ffce8c}.feedback-pop h2{text-align:center;font-size:21px}.explanation{border:1px solid #adc7ea2a;font-size:14px;margin:0;background:#10264266}.loot-title{text-align:center;letter-spacing:2px;font-size:12px;color:#98ffe0;font-weight:850;margin:20px 0 14px}.item-options{margin:0}.item-option{display:flex;gap:16px;align-items:center;background:linear-gradient(120deg,#2c5677,#1b3559);border:2px solid #6d98ad;border-bottom-width:4px;padding:13px;transition:transform .18s,border-color .18s}.item-option:hover{transform:translateY(-3px) rotate(-.5deg);border-color:var(--gold)}.item-icon{font-size:38px;font-style:normal;width:56px;height:56px;display:flex;justify-content:center;align-items:center;background:#ffcf72;color:#203955;border-radius:15px;flex-shrink:0;box-shadow:inset 0 2px 0 #fff8,0 3px #936737}.item-option:nth-child(2) .item-icon{background:#ffa7c5}.item-option:nth-child(3) .item-icon{background:#bab7ff}.item-option span{font-size:12px}.item-option b{color:var(--gold);font-size:23px}.feedback-pop .primary{font-size:21px}
#screen-fx,#health-vignette{position:fixed;inset:0;pointer-events:none;z-index:5}#screen-fx.hit{box-shadow:inset 0 0 130px #ff386b;animation:impact-flash .65s both}#screen-fx.heal{box-shadow:inset 0 0 90px #56ffb6;animation:impact-flash .65s both}#health-vignette{opacity:0;box-shadow:inset 0 0 90px #e93c6d77;transition:opacity .3s;z-index:1}.low-health #health-vignette{opacity:1}#impact-callout{position:fixed;left:50%;top:22%;transform:translateX(-50%);pointer-events:none;z-index:6;color:#fff;font-size:28px;font-weight:950;font-style:italic;text-shadow:2px 3px #7b2845;white-space:nowrap}#impact-callout.hit,#impact-callout.heal{animation:callout-pop .85s both}#impact-callout.heal{color:#a5ffd6;text-shadow:2px 3px #256655}
@keyframes card-pop{0%{opacity:0;transform:translateY(70px) scale(.65) rotate(-6deg)}65%{opacity:1;transform:translateY(-9px) scale(1.025) rotate(1deg)}100%{opacity:1;transform:none}}@keyframes badge-pop{0%{transform:scale(0) rotate(-80deg)}100%{transform:scale(1) rotate(-10deg)}}@keyframes answer-in{from{opacity:0;transform:translateX(-22px)}to{opacity:1;transform:none}}@keyframes rays-in{from{opacity:0;transform:rotate(-8deg)}to{opacity:1;transform:none}}@keyframes impact-flash{0%{opacity:1}100%{opacity:0}}@keyframes callout-pop{0%{opacity:0;transform:translate(-50%,20px) scale(.65) rotate(-8deg)}20%,65%{opacity:1;transform:translate(-50%,0) scale(1) rotate(-4deg)}100%{opacity:0;transform:translate(-50%,-22px) scale(1.1) rotate(-4deg)}}
@media(max-width:1100px){.lobby-callout{right:4%;max-width:400px}.lobby-callout h2{font-size:48px}.feature-pills{max-width:260px;margin-left:auto}.lobby-callout p{max-width:260px;margin-left:auto}}
@media(max-width:900px){.lobby-callout{display:none}}
@media(max-height:800px){.game-pop{padding:20px 26px;max-height:calc(100dvh - 32px)}.comic-badge{width:48px;height:48px;font-size:31px;border-radius:15px;margin-bottom:10px}.challenge-heading{font-size:26px;margin-bottom:12px}.challenge-meta{margin-bottom:12px}.game-pop .answer{min-height:50px;padding:8px 12px}.game-pop h2{font-size:20px;margin-bottom:12px}.game-pop .quiz-note{margin-top:12px}.lobby-panel h1.room-title{font-size:34px;margin-bottom:15px}.qr-mini{flex-basis:114px}.qr-mini img{width:100px;height:100px}}
@media(max-width:700px){.header{flex-wrap:wrap;gap:6px}.header-actions{margin-left:auto}.brand{font-size:23px}.brand svg{width:28px;height:28px}.sound-btn{min-width:43px;padding:8px!important}.header-actions .soft-btn{font-size:11px;padding:8px}.hud{top:92px;width:205px;padding:12px}.health-meta{margin-top:10px;font-size:10px}.health-bar{height:17px}.health-state{font-size:9px}.hud h2{font-size:16px}.game-pop{padding:20px 18px;border-radius:23px;margin-top:36px;max-height:calc(100dvh - 110px)}.challenge-heading{font-size:24px;margin-bottom:14px}.game-pop h2{font-size:19px}.game-pop .answer{font-size:13px;min-height:53px;gap:10px;padding:9px 10px}.game-pop .answer-number{font-size:15px;padding:6px 9px}.game-pop .quiz-note{font-size:11px}.stasis-note{font-size:10px}.challenge-meta{font-size:9px;letter-spacing:.7px}.comic-badge{width:48px;height:48px;font-size:32px;border-radius:15px;margin-bottom:12px}.item-option{gap:10px;padding:10px}.item-icon{width:42px;height:46px;font-size:29px}.item-option strong{font-size:14px}.item-option span{font-size:11px}.explanation{font-size:13px;padding:12px}#impact-callout{font-size:19px;top:40%}.lobby-panel h1.room-title{font-size:36px}.invite-row .room-code{font-size:29px;letter-spacing:3px}.qr-mini{flex-basis:112px}.qr-mini img{width:98px;height:98px}.qr-mini span{font-size:8px}.lobby-panel{padding:22px}.entry{top:90px}.qr-panel{margin-top:35px;max-height:calc(100dvh - 115px)}.qr-large{width:230px}.qr-panel .primary{font-size:18px;padding:14px}.pause-banner{top:auto;bottom:145px;max-width:90%;white-space:nowrap;font-size:12px}}
.network-picker{font-size:11px;color:#bdd4e9;margin:8px 0}.network-picker summary{cursor:pointer}.network-picker label{margin-top:10px}.lobby-panel>.primary{position:sticky;bottom:0;z-index:1}.lobby-panel .players{margin-top:10px}.lobby-panel .primary{margin-top:16px}.lobby-panel .entry-foot{font-size:12px}.header-actions>.small-btn{background:#173857d9;border-color:#c5efff55}
@media(prefers-reduced-motion:reduce){*,*::before,*::after{animation:none!important;transition:none!important}.comic-rays{display:none}#screen-fx{display:none}}
