body.low-gfx-test *{-webkit-backdrop-filter:none!important}body.low-gfx-test .podium:after{filter:none!important}:root{--bg:#0b1533;--bg2:#16234a;--purple:#7c3aed;--purple-l:#a855f7;--purple-d:#5b21b6;--pink:#ff3df0;--cyan:#2ee6ff;--gold:#f5c542;--green:#22c55e;--red:#ef4444;--text:#f5f3ff;--muted:#bfcaf2;--font-heading:"Fredoka";--font-body:"Nunito";--c0:#2563eb;--c1:#f59e0b;--c2:#16a34a;--c3:#db2777;--shadow:0 10px 40px #00000073;--safe-x:3vw;--safe-y:3vh;--nuby-btn-scale:1;--logo-scale:1;--logo-base-h:clamp(56px, 11vh, 130px);--topbar-h:calc(var(--safe-y) + 44px + max(var(--logo-base-h) * var(--logo-scale,1), 36px * var(--nuby-btn-scale,1)))}*{box-sizing:border-box;-webkit-tap-highlight-color:transparent}html,body,#root{height:100%;margin:0}body{font-family:var(--font-body), "Segoe UI", system-ui, -apple-system, sans-serif;background:radial-gradient(circle at 50% 0%, #1b2f6e, var(--bg) 60%);color:var(--text);-webkit-user-select:none;user-select:none;overflow:hidden}button{cursor:pointer;border:none;font-family:inherit}.logo{font-family:"Montserrat", var(--font-heading), var(--font-body), system-ui, sans-serif;letter-spacing:.02em;text-shadow:0 0 22px #b45aff80;font-weight:800;line-height:1}.glow{text-shadow:0 0 34px #be6effb3}.brand-logo{object-fit:contain;filter:drop-shadow(0 0 22px #5ac8ff73);width:auto;display:block}.canvas-bg{z-index:1;position:fixed;inset:0}.screen{z-index:2;pointer-events:none;padding:var(--safe-y) var(--safe-x);flex-direction:column;display:flex;position:fixed;inset:0}.screen .panel{pointer-events:auto}.splash{z-index:50;background-image:url(/brand/nuby-splash-bg.webp);background-position:50%;background-size:cover;flex-direction:column;justify-content:flex-start;align-items:center;padding-top:6vh;display:flex;position:fixed;inset:0}.splash p{color:var(--muted);font-size:20px}.splash-hint{color:#e6e1ffd9;letter-spacing:.04em;text-shadow:0 2px 10px #000000a6;font-size:17px;animation:2.2s ease-in-out infinite pulse}.splash-hint b{color:#eafdff;font-weight:800}.topbar{z-index:2;pointer-events:auto;justify-content:space-between;align-items:center;gap:16px;padding:22px 36px;display:flex;position:relative}.exit-icon-btn{color:#e6e1ffcc;background:#ffffff0f;border:1px solid #ffffff29;border-radius:50%;flex-shrink:0;place-items:center;width:2.4em;height:2.4em;font-size:18px;transition:background .15s,border-color .15s;display:grid}.exit-icon-btn:hover,.exit-icon-btn:focus-visible{background:#ffffff29;border-color:#ffffff52;outline:none}.room-tag{left:var(--safe-x);bottom:var(--safe-y);z-index:2;font-family:"Montserrat", var(--font-heading), sans-serif;letter-spacing:.04em;color:#e1dcff99;text-shadow:0 2px 8px #00000080;font-size:14px;font-weight:600;position:fixed}.exit-confirm-overlay{z-index:60;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);background:#050814c7;justify-content:center;align-items:center;display:flex;position:fixed;inset:0}.exit-confirm-panel{text-align:center;background:#140a28eb;border:1px solid #ffffff1f;border-radius:20px;max-width:480px;padding:36px 42px;box-shadow:0 30px 80px #0009}.exit-confirm-text{color:#fff;margin:0 0 24px;font-size:19px;line-height:1.4}.badge{font-family:"Montserrat", var(--font-heading), sans-serif;color:#eafdff;letter-spacing:.03em;-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);background:linear-gradient(#7896ff4d,#3c5fcd5c 60%);border:1.5px solid #96b4ff8c;border-radius:999px;padding:9px 20px;font-size:15px;font-weight:800;box-shadow:inset 0 1px 1px #ffffff59,inset 0 -2px 4px #0000001f,0 2px 10px #5a78dc47}.badge .icon{margin-right:6px}.cat-icon-img{object-fit:cover;vertical-align:-.15em;border-radius:4px;width:1.1em;height:1.1em}.mode-badge{color:#ffe6c2;background:linear-gradient(#ffbe7852,#ff9a3d4d 60%);border-color:#ffb46499;box-shadow:inset 0 1px 1px #ffffff59,inset 0 -2px 4px #0000001f,0 2px 10px #ff9a3d4d}.diff-badge{color:#c9ffe0;background:linear-gradient(#78e6aa52,#2dc36b4d 60%);border-color:#50dc8c99;box-shadow:inset 0 1px 1px #ffffff59,inset 0 -2px 4px #0000001f,0 2px 10px #2dc36b4d}.timer-donut{background:conic-gradient(#ffd60a var(--pct,100%), #ffffff1f 0);border-radius:50%;place-items:center;width:86px;height:86px;display:grid;box-shadow:0 0 30px #ffd60a8c}.timer-donut .inner{width:70px;height:70px;font-family:"Montserrat", var(--font-heading), system-ui, sans-serif;color:#fff;background:#0a0f1e;border-radius:50%;place-items:center;font-size:34px;font-weight:800;display:grid}.timer-donut.low{background:conic-gradient(#ff2b44 var(--pct,100%), #ffffff1f 0);animation:.5s infinite pulse;box-shadow:0 0 30px #ff2b448c}.timer-donut.low .inner{color:#ff8a94}.center-area{flex-direction:column;flex:1;justify-content:center;align-items:flex-start;gap:22px;min-height:0;padding:0 30vw 11vh 6%;display:flex;overflow-y:auto}.center-area.with-presenter{padding-right:30vw}.center-area.lobby-phase{justify-content:flex-start;padding-top:4px}.center-area.with-presenter .question-card{max-width:60vw}.center-area.with-presenter .options-grid{width:min(820px,58vw)}.lobby{flex-wrap:wrap;align-items:flex-start;gap:42px;display:flex}.choice-screen{z-index:1;padding:var(--topbar-h) var(--safe-x) var(--safe-y);background-image:url(/brand/lobby-choice-bg.webp);background-position:50%;background-size:cover;position:fixed;inset:0}.nuby-btn.choice-btn{position:absolute;top:42%}.nuby-btn.choice-btn.left{left:4%}.nuby-btn.choice-btn.right{right:4%}.wizard-screen{z-index:1;padding:var(--topbar-h) var(--safe-x) max(40px, var(--safe-y));background-image:url(/brand/wizard-bg.webp);background-position:50%;background-size:cover;flex-direction:column;align-items:center;display:flex;position:fixed;inset:0;overflow-y:auto}.wizard-screen .lobby.panel{width:100%;max-width:1500px;margin:auto 0}.lobby-config{flex-direction:column;flex-basis:100%;gap:clamp(2px,min(.7vh,.7vw),14px);display:flex}.qr-panel{background:#fff;border-radius:20px;flex-direction:column;align-items:center;gap:10px;padding:18px;display:flex;box-shadow:0 18px 50px #00000080,0 0 0 1px #ffffff1a}.qr-code-wrap{width:120px;height:120px}.qr-code-wrap canvas{display:block;width:100%!important;height:100%!important}.qr-panel .code{font-family:"Montserrat", var(--font-heading), system-ui, sans-serif;color:#2c1556;letter-spacing:.28em;font-size:22px;font-weight:700}.join-info{max-width:460px}.join-info h1{font-family:"Montserrat", var(--font-heading), system-ui, sans-serif;color:#fff;text-shadow:0 0 34px #be6effb3;margin:0 0 16px;font-size:clamp(30px,4.4vw,58px);font-weight:800;line-height:1.02}.join-info .chips{margin-bottom:12px}.join-info ol{color:#e7ddff;margin:0;padding-left:22px;font-size:17px;font-weight:600;line-height:1.4}.join-info ol li{margin-bottom:8px}.join-info ol b{color:#fff}.url-pill{color:#9ad8ff;background:#6e5ac84d;border:1px solid #a082ff59;border-radius:7px;margin-left:6px;padding:4px 10px;font-family:ui-monospace,monospace;font-size:14px;display:inline-block}.join-info .waiting{color:#c8b4ffb3;letter-spacing:.02em;margin-top:16px;font-size:15px;font-weight:700}.lobby-continue-btn{font-size:calc(17px * var(--nuby-btn-scale,1));margin-top:14px}.players-row{flex-wrap:wrap;justify-content:center;gap:12px;max-width:1100px;margin-top:14px;display:flex}.player-chip{font-family:"Montserrat", var(--font-heading), sans-serif;background:linear-gradient(#a078ff42,#7c3aed52 60%);border:1px solid #a855f78c;border-radius:999px;align-items:center;gap:8px;padding:10px 18px;font-size:20px;font-weight:700;animation:.3s pop;display:flex;box-shadow:inset 0 1px 1px #ffffff59,inset 0 -2px 5px #00000026,0 2px 12px #7c3aed47}.player-chip .dot{background:var(--green);width:9px;height:9px;box-shadow:0 0 6px var(--green);border-radius:50%}.player-chip.off{opacity:.5}.player-chip.off .dot{box-shadow:none;background:#777}.player-chip .pts{color:var(--gold);background:#00000047;border-radius:999px;padding:2px 9px;font-size:.72em}.q-meta{align-items:center;gap:11px;display:flex}.question-card{text-align:left;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:#080e24b3;border:1.5px solid #82a5ff52;border-radius:24px;width:100%;padding:38px 42px;position:relative;box-shadow:0 22px 64px #00000080,inset 0 0 70px #4678e624}.question-text{font-family:"Montserrat", var(--font-heading), system-ui, sans-serif;color:#fff;text-shadow:0 0 30px #78aaff73;font-size:clamp(28px,3.4vw,46px);font-weight:700;line-height:1.08}.question-card .timer-donut{width:98px;height:98px;position:absolute;top:-28px;right:-26px}.question-card .timer-donut .inner{width:78px;height:78px;font-size:40px}.options-grid{grid-template-columns:1fr 1fr;gap:16px;width:100%;display:grid}.option{-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);background:#0a1128a8;border:1.5px solid #ffffff14;border-radius:18px;align-items:center;gap:16px;padding:16px 20px;transition:transform .2s,opacity .2s,box-shadow .2s;display:flex;box-shadow:0 8px 26px #00000061}.option .shape-badge{border-radius:14px;flex:none;place-items:center;width:52px;height:52px;display:grid}.option .shape-badge.c0{background:#2f7bff;box-shadow:0 0 20px #2f7bff8c}.option .shape-badge.c1{background:#ff3d9a;box-shadow:0 0 20px #ff3d9a8c}.option .shape-badge.c2{background:#ffb02e;box-shadow:0 0 20px #ffb02e8c}.option .shape-badge.c3{background:#2fc36b;box-shadow:0 0 20px #2fc36b8c}.option .shape{background:#fff;width:22px;height:22px}.option .shape.tri{background:0 0;border-bottom:21px solid #fff;border-left:13px solid #0000;border-right:13px solid #0000;width:0;height:0}.option .shape.dia{border-radius:4px;transform:rotate(45deg)}.option .shape.cir{border-radius:50%}.option .shape.sqr{border-radius:5px}.option .opt-text{font-family:"Montserrat", var(--font-heading), system-ui, sans-serif;color:#fff;font-size:clamp(20px,1.8vw,27px);font-weight:700}.option.correct{outline:4px solid #2fc36b;transform:scale(1.03);box-shadow:0 0 40px #2fc36b8c}.option.wrong{opacity:.35;filter:grayscale(.5)}.option.opt-eliminated,.quad.opt-eliminated{opacity:.32;filter:grayscale(.75);pointer-events:none}.option.reading{outline:3px solid var(--cyan,#5cd6ff);position:relative;transform:scale(1.04);box-shadow:0 0 30px #5cd6ff80}.option.reading:after{content:"";border-radius:inherit;opacity:0;pointer-events:none;animation:1s ease-in-out infinite readingPulse;position:absolute;inset:0;box-shadow:0 0 46px #5cd6ffd9}@keyframes readingPulse{0%,to{opacity:0}50%{opacity:1}}.buzz-big{background:radial-gradient(circle at 35% 30%, #ff6b6b, var(--red) 60%, #991b1b);color:#fff;text-shadow:0 2px 6px #00000080;border-radius:50%;place-items:center;width:280px;height:280px;font-size:44px;font-weight:900;animation:.7s infinite pulse;display:grid;box-shadow:0 0 60px #ef4444e6,inset 0 -14px 30px #0006}.buzz-winner{text-align:center;font-size:clamp(34px,5vw,70px);font-weight:900}.buzz-winner .name{color:var(--gold)}.leaderboard{bottom:calc(16px + var(--safe-y));left:calc(24px + var(--safe-x));right:calc(23vw + var(--safe-x));z-index:4;pointer-events:auto;flex-direction:row;justify-content:center;align-items:center;gap:10px;display:flex;position:fixed}.lb-row{-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);background:#091026b8;border:1.5px solid #78a0ff4d;border-radius:999px;align-items:center;gap:10px;min-width:0;padding:7px 16px 7px 8px;display:flex}.lb-row.lb-first{background:#0d142ed1;border-color:#ffd478a6;box-shadow:0 0 22px #ffc8644d}.lb-row .lb-av{color:#101c3a;border-radius:50%;flex:none;place-items:center;width:36px;height:36px;font-size:17px;font-weight:800;display:grid}.lb-row .lb-nm{color:#dde6ff;white-space:nowrap;text-overflow:ellipsis;flex:0 auto;max-width:150px;font-size:18px;font-weight:700;overflow:hidden}.lb-row.lb-first .lb-nm{color:#fff}.lb-row .lb-pts{color:#a9c4ff;flex:none;font-size:18px;font-weight:800}.lb-row.lb-first .lb-pts{color:#ffd36b}@keyframes slideUp{0%{opacity:0;transform:translateY(16px)}to{opacity:1;transform:translateY(0)}}@keyframes slideDown{0%{opacity:0;transform:translateY(-16px)}to{opacity:1;transform:translateY(0)}}.lb-row{animation:.4s ease-out slideUp}.lb-row.moving-up{animation:.5s cubic-bezier(.34,1.56,.64,1) slideUp}.lb-row.moving-down{animation:.5s cubic-bezier(.34,1.56,.64,1) slideDown}.answer-cards{flex-wrap:wrap;justify-content:center;gap:14px;max-width:60vw;margin-top:4px;display:flex}.answer-card{perspective:800px;width:104px;height:126px}.answer-card .ac-flip{width:100%;height:100%;transform-style:preserve-3d;transition:transform .7s cubic-bezier(.4,.8,.3,1);position:relative}.answer-card.revealed .ac-flip{transform:rotateY(180deg)}.ac-face{backface-visibility:hidden;border:2px solid #ffffff1f;border-radius:16px;flex-direction:column;justify-content:center;align-items:center;gap:8px;padding:8px;display:flex;position:absolute;inset:0;box-shadow:0 10px 26px #0000006b}.ac-front{background:linear-gradient(160deg,#1d3070,#101c42)}.ac-front .ac-lock{font-size:34px}.ac-back{background:#0a1026e6;transform:rotateY(180deg)}.ac-name{font-family:"Montserrat", var(--font-heading), system-ui, sans-serif;color:#dde6ff;text-align:center;white-space:nowrap;text-overflow:ellipsis;max-width:92px;font-size:15px;font-weight:700;overflow:hidden}.ac-icon{font-size:30px}.ac-shape-badge{border-radius:13px;place-items:center;width:46px;height:46px;display:grid}.ac-shape-badge.c0{background:#2f7bff;box-shadow:0 0 16px #2f7bff8c}.ac-shape-badge.c1{background:#ff3d9a;box-shadow:0 0 16px #ff3d9a8c}.ac-shape-badge.c2{background:#ffb02e;box-shadow:0 0 16px #ffb02e8c}.ac-shape-badge.c3{background:#2fc36b;box-shadow:0 0 16px #2fc36b8c}.ac-shape-badge .shape{background:#fff;width:20px;height:20px}.ac-shape-badge .shape.tri{background:0 0;border-bottom:19px solid #fff;border-left:12px solid #0000;border-right:12px solid #0000;width:0;height:0}.ac-shape-badge .shape.dia{border-radius:4px;transform:rotate(45deg)}.ac-shape-badge .shape.cir{border-radius:50%}.ac-shape-badge .shape.sqr{border-radius:5px}.ac-mark{font-size:18px;font-weight:900;position:absolute;top:6px;right:10px}.answer-card.is-correct .ac-back{background:#122e1ceb;border-color:#2fc36b;box-shadow:0 0 30px #2fc36b99}.answer-card.is-correct .ac-mark{color:#5cffa0}.answer-card.is-wrong .ac-back{opacity:.82;border-color:#ff507880}.answer-card.is-wrong .ac-mark{color:#ff6b8a}.answer-card.is-correct{animation:.55s ease-out cardPop}@keyframes cardPop{0%{transform:scale(1)}45%{transform:scale(1.09)}to{transform:scale(1)}}.answer-card.false .ac-flip{transform:none}.ac-false{background:linear-gradient(160deg,#5e1330,#3a0c1f);border-color:#ff5a7880}.ac-false .ac-tag{letter-spacing:.08em;text-transform:uppercase;color:#ff8aa3;font-size:11px;font-weight:800}.explain{color:var(--muted);max-width:60vw;font-size:18px}.podium-title{font-family:"Montserrat", var(--font-heading), system-ui, sans-serif;color:#fff;text-shadow:0 0 36px #ffc85a8c;text-align:center;margin:0;font-size:clamp(34px,4vw,46px);font-weight:800}.podium-sub{color:#cdb9ffbf;letter-spacing:.03em;text-align:center;margin-top:10px;font-size:17px;font-weight:700}.podium{justify-content:center;align-items:flex-end;gap:24px;margin-top:40px;display:flex}.podium-step{flex-direction:column;align-items:center;width:170px;display:flex}.podium-step.first{width:188px;animation:3.2s ease-in-out infinite rise}.podium-step .medal{margin-bottom:2px;font-size:26px}.podium-step.first .medal{margin-bottom:-2px;font-size:30px}.podium-av{width:58px;height:58px;font-family:"Montserrat", var(--font-heading), system-ui, sans-serif;color:#1a0a30;border:3px solid #d7e2ee;border-radius:50%;place-items:center;font-size:28px;font-weight:700;display:grid;box-shadow:0 0 22px #aac8e680}.podium-step.first .podium-av{border:4px solid #ffd86b;width:76px;height:76px;font-size:36px;box-shadow:0 0 34px #ffd478b3}.podium-step.third .podium-av{border-color:#e6c39a;box-shadow:0 0 22px #dcaa6e80}.podium-step .who{font-family:"Montserrat", var(--font-heading), system-ui, sans-serif;color:#fff;margin-top:9px;font-size:22px;font-weight:700}.podium-step.first .who{text-shadow:0 0 22px #ffc85a80;font-size:27px;font-weight:700}.podium-step .pts{color:#d7e2ee;font-size:19px;font-weight:800}.podium-step.first .pts{color:#ffd86b;font-size:22px}.podium-step.third .pts{color:#e6c39a}.podium-block{width:160px;font-family:"Montserrat", var(--font-heading), system-ui, sans-serif;border-radius:14px 14px 0 0;place-items:center;margin-top:12px;font-weight:800;display:grid;position:relative}.podium-block.p1{color:#8c55148c;background:linear-gradient(#ffe49a,#f3b43f 60%,#d8932a);width:172px;height:182px;font-size:88px;box-shadow:0 0 48px #ffc85a73,inset 0 4px #fff9}.podium-block.p2{color:#46506480;background:linear-gradient(#eef1f6,#c4cad6 60%,#9aa3b4);height:124px;font-size:62px;box-shadow:0 0 30px #b4c8e64d,inset 0 4px #ffffff8c}.podium-block.p3{color:#6e411980;background:linear-gradient(#f0c08a,#cf914f 60%,#a96f33);height:94px;font-size:54px;box-shadow:0 0 30px #d2965a4d,inset 0 4px #ffffff73}@keyframes spotlightFlicker{0%,to{opacity:.8}50%{opacity:1}}.podium:before,.podium:after{content:"";pointer-events:none;width:400px;height:400px;position:absolute;top:-200px}.podium:before{background:radial-gradient(circle,#ffc8504d 0%,#0000 70%);animation:2.5s ease-in-out infinite spotlightFlicker;left:-100px}.podium:after{filter:blur(40px);background:radial-gradient(circle,#ffb43c40 0%,#0000 70%);animation:2.8s ease-in-out infinite spotlightFlicker;right:-100px}.podium-step.first:before{content:"✨";font-size:40px;animation:1s ease-in-out infinite pulse;position:absolute;top:-60px;left:50%;transform:translate(-50%)}.confetti{pointer-events:none;z-index:21;position:fixed;inset:0;overflow:hidden}.confetti .c{border-radius:2px;animation:linear infinite fall;position:absolute;top:-30px}.phone{background:radial-gradient(circle at 50% 0%, #3b1370, var(--bg) 70%);flex-direction:column;padding:16px;display:flex;position:fixed;inset:0}.phone .head{justify-content:space-between;align-items:center;margin-bottom:12px;display:flex}.phone .head .logo{font-size:24px}.phone .me{color:var(--muted);font-size:13px}.phone .body{-webkit-overflow-scrolling:touch;flex-direction:column;flex:1;gap:14px;min-height:0;padding-bottom:8px;display:flex;overflow-y:auto}.phone .body.center{text-align:center;justify-content:center;align-items:center}.card{background:linear-gradient(#4b2a7d8c,#14062dc7 55%);border:1px solid #a855f766;border-radius:16px;padding:clamp(2px,min(.6vh,1.4vw),16px);box-shadow:inset 0 1px #ffffff14,inset 0 -1px #00000040,0 4px 20px #5028962e}.field label{color:var(--muted);margin-bottom:6px;font-size:13px;display:block}input[type=text]{width:100%;color:var(--text);text-align:center;background:#0000004d;border:2px solid #a855f780;border-radius:14px;padding:16px;font-size:20px}.btn{color:#fff;cursor:pointer;touch-action:manipulation;background:#7c3aed66;border:1px solid #a855f780;border-radius:14px;width:100%;padding:16px;font-size:18px;font-weight:800;transition:transform .1s,filter .2s}.btn:active{transform:scale(.97)}.btn-primary{background:linear-gradient(90deg, var(--pink), var(--purple))}.btn-gold{background:linear-gradient(90deg, var(--gold), #e0992f);color:#2a0a4a}.btn:disabled{opacity:.5}.nuby-btn{box-sizing:border-box;cursor:pointer;min-width:14.5em;height:6.36em;font-family:"Montserrat", var(--font-heading), sans-serif;font-weight:800;font-size:calc(22px * var(--nuby-btn-scale,1));letter-spacing:.05em;text-transform:uppercase;color:#eafdff;text-shadow:0 0 .14em #eafdfff2,0 0 .6em #afdeff99;--rim-img:url(/brand/buttons/normal.webp);--body:#000b2366;background:0 0;border:none;justify-content:center;align-items:center;padding:0 2.4em 1.27em;line-height:1;transition:transform 80ms;display:inline-flex;position:relative}.nuby-btn:before{content:"";border-style:solid;border-color:#0000;border-image-source:var(--rim-img);z-index:0;pointer-events:none;border-image-slice:27% 14% fill;border-image-width:1.85em 2.3em;border-image-outset:.3em .72em;border-image-repeat:stretch;border-radius:1.55em;position:absolute;inset:0}.nuby-btn:after{content:"";background:var(--body);z-index:1;border-radius:1.14em;position:absolute;inset:.5em .5em 1.73em}.nuby-btn>span{z-index:2;position:relative}.nuby-btn:focus-visible{outline:none}.nuby-btn:focus-visible:before{box-shadow:0 0 0 .18em #eafdffd9}.nuby-btn:active{--rim-img:url(/brand/buttons/selected.webp);--body:#a44ace66;transform:translateY(1px)}.nuby-btn--wrong{--rim-img:url(/brand/buttons/wrong.webp);--body:#fa272f66}.nuby-btn:disabled{opacity:.45;cursor:default}.nuby-btn:disabled:active{transform:none}.section-title{color:var(--muted);letter-spacing:1px;text-transform:uppercase;margin:clamp(1px,min(.3vh,.3vw),4px) 0 clamp(2px,min(.6vh,.6vw),8px);font-size:clamp(11px,min(1.4vh,1.4vw),14px)}.chips{flex-wrap:wrap;gap:8px;display:flex}.chip{font-family:"Montserrat", var(--font-heading), sans-serif;color:var(--text);cursor:pointer;touch-action:manipulation;background:linear-gradient(#a078ff3d,#7c3aed47 60%);border:1px solid #a855f773;border-radius:12px;padding:clamp(3px,min(.8vh,.8vw),10px) clamp(8px,min(1.4vh,1.4vw),14px);font-size:clamp(11px,min(1.5vh,1.5vw),15px);font-weight:700;box-shadow:inset 0 1px 1px #ffffff4d,inset 0 -2px 4px #00000024,0 2px 8px #7c3aed33}.chip.active{color:#fff;background:linear-gradient(#ff96dceb,#966ee6f2 55%,#5a74d6f2);border-color:#0000;box-shadow:inset 0 1px 2px #ffffff8c,inset 0 -3px 6px #0000002e,0 3px 14px #965adc73}.wizard-header{text-align:center;margin-bottom:clamp(2px,min(1.8vh,1.8vw),40px)}.wizard-title{font-family:"Montserrat", var(--font-heading), sans-serif;letter-spacing:normal;text-transform:uppercase;color:#fff;text-shadow:0 0 20px #eafdff66;margin:0;font-size:clamp(20px,min(3.2vh,3.2vw),34px);font-weight:800}.wizard-modes{flex-wrap:nowrap;justify-content:center;gap:min(3vw,4vh);display:flex}.wizard-nav{justify-content:center;gap:16px;margin-top:clamp(4px,min(2vh,2vw),48px);display:flex}.nuby-mode-card{cursor:pointer;background:0 0;border:none;flex-direction:column;align-items:center;gap:clamp(4px,min(1vh,1vw),12px);padding:clamp(2px,min(.6vh,.6vw),8px);display:flex}.nuby-mode-card img{filter:drop-shadow(0 10px 20px #0006);width:min(15vw,22vh,230px);height:auto;transition:transform .15s,filter .15s;display:block}.nuby-mode-card:hover img{transform:scale(1.05)}.nuby-mode-card--inactive img{filter:grayscale()drop-shadow(0 10px 20px #0006)}.nuby-mode-card:focus-visible{outline:none}.nuby-mode-card:focus-visible img{filter:drop-shadow(0 0 18px #5cd6ffe6)}.nuby-mode-card--inactive:focus-visible img{filter:grayscale()drop-shadow(0 0 18px #5cd6ffe6)}.wizard-categories{grid-template-columns:repeat(4,1fr);justify-items:center;gap:min(1vh,1vw) 0;display:grid}.nuby-category-card{cursor:pointer;background:0 0;border:none;flex-direction:column;align-items:center;gap:clamp(2px,min(.6vh,.6vw),10px);padding:clamp(2px,min(.4vh,.4vw),8px);display:flex}.nuby-category-card img{filter:drop-shadow(0 6px 14px #0006);width:min(7.4vw,11vh,140px);height:auto;transition:transform .15s,filter .15s;display:block}.nuby-category-card:hover img{transform:scale(1.05)}.nuby-category-card--inactive img{filter:grayscale()drop-shadow(0 6px 14px #0006)}.nuby-category-card:focus-visible{outline:none}.nuby-category-card:focus-visible img{filter:drop-shadow(0 0 14px #5cd6ffe6)}.nuby-category-card--inactive:focus-visible img{filter:grayscale()drop-shadow(0 0 14px #5cd6ffe6)}.nuby-category-card .cat-label{font-family:"Montserrat", var(--font-heading), sans-serif;color:#fff;font-size:15px;font-weight:700}.stepper{justify-content:center;align-items:center;gap:clamp(6px,min(1.2vh,1.2vw),12px);display:flex}.stepper button{color:#fff;cursor:pointer;touch-action:manipulation;background:#7c3aed66;border-radius:clamp(6px,min(1.2vh,1.2vw),14px);width:clamp(24px,min(4.6vh,4.6vw),54px);height:clamp(24px,min(4.6vh,4.6vw),54px);font-size:clamp(14px,min(2.2vh,2.2vw),26px);font-weight:900}.stepper .val{text-align:center;min-width:clamp(26px,min(3.8vh,3.8vw),50px);font-size:clamp(14px,min(2.6vh,2.6vw),30px);font-weight:900}.stepper-group{border-radius:14px}.mode-desc{color:var(--muted);margin-top:clamp(1px,min(.25vh,.25vw),4px);font-size:clamp(9px,min(1vh,1vw),12px)}.chip:focus,.btn:focus,.stepper-group:focus,.player-chip:focus{outline:3px solid var(--cyan,#5cd6ff);outline-offset:3px;box-shadow:0 0 0 6px #5cd6ff40}.wait{color:var(--muted);font-size:20px}.wait .big{color:var(--text);margin-bottom:8px;font-size:26px;font-weight:800}.opts{flex-direction:column;gap:12px;display:flex}.buzz-btn{color:#fff;background:radial-gradient(circle at 35% 30%, #ff6b6b, var(--red) 60%, #991b1b);text-shadow:0 2px 8px #00000080;border-radius:28px;flex:1;min-height:320px;font-size:40px;font-weight:900;animation:.7s infinite pulse;box-shadow:0 0 50px #ef4444cc,inset 0 -16px 30px #0006}.buzz-btn:active{transform:scale(.96)}.locked-box{text-align:center;color:var(--muted);flex:1;place-items:center;gap:8px;font-size:22px;display:grid}.locked-box .lock{font-size:56px}.locked-box.false{color:#ffd0da}.locked-box.false .lock{animation:.7s infinite pulse}.false-watch{cursor:pointer;-webkit-tap-highlight-color:transparent;-webkit-user-select:none;user-select:none}.false-warn{color:#ffb02e;margin-top:16px;font-size:13px;font-weight:800}.feedback{text-align:center;border-radius:18px;padding:26px;font-size:24px;font-weight:900}.feedback.correct{border:2px solid var(--green);background:#22c55e40}.feedback.wrong{border:2px solid var(--red);background:#ef444438}.feedback .gain{color:var(--gold);margin-top:6px;font-size:34px;display:block}.steal-list{flex-direction:column;gap:10px;display:flex}.steal-btn{color:#fff;background:linear-gradient(90deg,#b91c1c,#7f1d1d);border-radius:14px;justify-content:space-between;align-items:center;padding:18px;font-size:18px;font-weight:800;display:flex}.my-score{text-align:center}.my-score .pts{color:var(--gold);font-size:48px;font-weight:900}.placement{font-size:22px}.placement .rank{color:var(--gold);font-size:64px;font-weight:900}.toast{z-index:40;background:#000c;border-radius:12px;padding:10px 18px;font-weight:700;animation:.3s pop;position:fixed;top:12px;left:50%;transform:translate(-50%)}.quad-screen{z-index:30;position:fixed;inset:0}.quad-info{z-index:3;color:var(--text);pointer-events:none;white-space:nowrap;background:#00000073;border-radius:999px;padding:4px 14px;font-size:12px;font-weight:700;position:absolute;top:6px;left:50%;transform:translate(-50%)}.quad-grid{grid-template-rows:1fr 1fr;grid-template-columns:1fr 1fr;gap:8px;padding:8px;display:grid;position:absolute;inset:0}.quad{color:#fff;-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);background:#140a2ab8;border:1.5px solid #ffffff1a;border-radius:22px;flex-direction:column;justify-content:center;align-items:center;gap:14px;transition:transform .1s,opacity .2s,filter .2s;display:flex;position:relative;box-shadow:0 8px 26px #00000073}.quad:active{transform:scale(.97)}.quad .q-shape-badge{border-radius:18px;place-items:center;width:clamp(56px,14vmin,96px);height:clamp(56px,14vmin,96px);display:grid}.quad .q-shape-badge.c0{background:#2f7bff;box-shadow:0 0 24px #2f7bff99}.quad .q-shape-badge.c1{background:#ff3d9a;box-shadow:0 0 24px #ff3d9a99}.quad .q-shape-badge.c2{background:#ffb02e;box-shadow:0 0 24px #ffb02e99}.quad .q-shape-badge.c3{background:#2fc36b;box-shadow:0 0 24px #2fc36b99}.quad .q-shape-badge .shape{background:#fff;width:clamp(22px,5.4vmin,40px);height:clamp(22px,5.4vmin,40px)}.quad .q-shape-badge .shape.tri{background:0 0;border-bottom:clamp(21px,5vmin,36px) solid #fff;border-left:clamp(13px,3vmin,22px) solid #0000;border-right:clamp(13px,3vmin,22px) solid #0000;width:0;height:0}.quad .q-shape-badge .shape.dia{border-radius:5px;transform:rotate(45deg)}.quad .q-shape-badge .shape.cir{border-radius:50%}.quad .q-shape-badge .shape.sqr{border-radius:6px}.quad .q-text{font-family:var(--font-heading), system-ui, sans-serif;text-align:center;color:#fff;padding:0 12px;font-size:clamp(16px,3.8vmin,30px);font-weight:600}.quad .q-check{font-size:28px;position:absolute;top:10px;right:16px}.quad.dim{opacity:.28;filter:grayscale(.6)}.quad.picked{outline:4px solid #fff}.quad-sent{z-index:3;background:#0009;border-radius:999px;padding:6px 18px;font-size:14px;font-weight:700;position:absolute;bottom:8px;left:50%;transform:translate(-50%)}.rotate-hint{display:none}@media (orientation:portrait){.rotate-hint{z-index:4;pointer-events:none;background:#000000b8;border-radius:999px;padding:8px 16px;font-size:13px;font-weight:800;animation:1.4s infinite pulse;display:block;position:absolute;top:8px;left:50%;transform:translate(-50%)}.quad-info{top:42px}}@keyframes pulse{0%,to{transform:scale(1)}50%{transform:scale(1.06)}}.loading-pill{color:#ffffffd9;background:#7c3aed2e;border:1px solid #a855f74d;border-radius:14px;align-items:center;gap:10px;padding:16px;font-size:15px;font-weight:700;display:flex}.loading-dot{background:var(--pink,#ec4899);border-radius:50%;flex-shrink:0;width:10px;height:10px;animation:.9s ease-in-out infinite pulse}@keyframes pop{0%{opacity:0;transform:scale(.7)}to{opacity:1;transform:scale(1)}}@keyframes swayA{0%,to{transform:rotate(-7deg)}50%{transform:rotate(6deg)}}@keyframes swayB{0%,to{transform:rotate(6deg)}50%{transform:rotate(-9deg)}}@keyframes swayC{0%,to{transform:rotate(-4deg)}50%{transform:rotate(5deg)}}@keyframes swayKey{0%,to{transform:rotate(-1.5deg)}50%{transform:rotate(2deg)}}@keyframes flick{0%,to{opacity:1}43%{opacity:.74}46%{opacity:1}78%{opacity:.86}81%{opacity:1}}@keyframes ringPulse{0%,to{opacity:.92;box-shadow:0 0 22px 2px #ffd4788c,0 0 60px 8px #ffbe5a47,inset 0 0 24px #ffd27859}50%{opacity:1;box-shadow:0 0 34px 4px #ffde8cd9,0 0 96px 16px #ffc86473,inset 0 0 34px #ffdc8c80}}@keyframes burst{0%{opacity:.32;transform:translate(-50%,-50%)scale(.92)rotate(0)}50%{opacity:.62;transform:translate(-50%,-50%)scale(1.04)rotate(8deg)}to{opacity:.32;transform:translate(-50%,-50%)scale(.92)rotate(0)}}@keyframes scan{0%{background-position:0 0}to{background-position:0 140px}}@keyframes drift{0%{opacity:0;transform:translateY(10px)}15%{opacity:.7}85%{opacity:.7}to{opacity:0;transform:translateY(-120px)}}@keyframes glowP{0%,to{opacity:.45}50%{opacity:.8}}@keyframes eq{0%,to{transform:scaleY(.4)}50%{transform:scaleY(1)}}@keyframes stripScroll{0%{background-position:0 0}to{background-position:0 80px}}@keyframes twinkle{0%,to{opacity:.2;transform:scale(.7)}50%{opacity:1;transform:scale(1.25)}}@keyframes fall{0%{opacity:0;transform:translateY(-30px)rotate(0)}12%{opacity:1}88%{opacity:1}to{opacity:0;transform:translateY(560px)rotate(420deg)}}@keyframes rise{0%,to{transform:translateY(0)}50%{transform:translateY(-9px)}}@keyframes fadeInOut{0%{opacity:0;transform:scale(.92)}15%{opacity:1;transform:scale(1)}85%{opacity:1;transform:scale(1)}to{opacity:0;transform:scale(.92)}}@keyframes flashGreen{0%{opacity:0}10%{opacity:.65}50%{opacity:.65}to{opacity:0}}@keyframes flashRed{0%{opacity:0}10%{opacity:.55}50%{opacity:.55}to{opacity:0}}@keyframes shake{0%,to{transform:translate(0)}25%{transform:translate(-6px)}75%{transform:translate(6px)}}.screen.flash-correct:before{content:"";opacity:0;pointer-events:none;z-index:39;background:#22c55e99;animation:1.2s ease-out forwards flashGreen;position:fixed;inset:0}.screen.flash-wrong:before{content:"";opacity:0;pointer-events:none;z-index:39;background:#ef444480;animation:1.2s ease-out forwards flashRed;position:fixed;inset:0}.screen.shake{animation:.4s shake}@media (prefers-reduced-motion:reduce){.buzz-big,.buzz-btn,.timer.low{animation:none}}.final-bet-panel{text-align:center;flex-direction:column;align-items:center;gap:24px;display:flex}.final-bet-crown{font-size:clamp(48px,7vw,88px);animation:1.2s ease-in-out infinite pulse}.final-bet-title,.final-q-title{color:var(--gold);text-shadow:0 0 40px #f5c54299;font-size:clamp(44px,6vw,82px)}.final-bet-sub{color:#c8b4ffe6;font-size:clamp(18px,2vw,26px)}.final-bet-counter{color:var(--cyan);letter-spacing:.04em;background:#2ee6ff1f;border:1.5px solid #2ee6ff4d;border-radius:999px;padding:12px 32px;font-size:clamp(22px,2.6vw,38px);font-weight:900}.ac-bet{font-family:var(--font-heading), system-ui, sans-serif;color:var(--gold);letter-spacing:.04em;font-size:14px;font-weight:800}.bet-header{text-align:center}.bet-title{font-family:var(--font-heading), system-ui, sans-serif;color:var(--gold);font-size:32px;font-weight:700}.bet-sub{color:var(--muted);margin-top:4px;font-size:16px}.bet-score{color:var(--text);margin-top:10px;font-size:18px;font-weight:700}.bet-card{flex-direction:column;gap:16px;display:flex}.bet-amount-display{font-family:var(--font-heading), system-ui, sans-serif;color:var(--gold);text-align:center;text-shadow:0 0 22px #f5c54280;font-size:52px;font-weight:700}.bet-slider{cursor:pointer;width:100%;height:10px;accent-color:var(--gold);border-radius:999px}.bet-presets{flex-wrap:wrap;justify-content:center;gap:8px;display:flex}.bet-hint{text-align:center;color:var(--muted);font-size:13px}.feedback .gain.loss{color:var(--red)}@media (height<=620px){.topbar{padding:8px 20px}:root{--topbar-h:calc(var(--safe-y) + 16px + max(var(--logo-base-h) * var(--logo-scale,1), 36px * var(--nuby-btn-scale,1)))}.center-area{gap:10px;padding-bottom:12vh}.q-meta .badge{padding:5px 12px;font-size:12px}.question-card{border-radius:16px;padding:16px 22px}.question-text{font-size:clamp(18px,3vw,28px)}.question-card .timer-donut{width:62px;height:62px;top:-16px;right:-12px}.question-card .timer-donut .inner{width:48px;height:48px;font-size:24px}.options-grid{gap:9px}.option{border-radius:12px;gap:10px;padding:7px 12px}.option .shape-badge{border-radius:9px;width:32px;height:32px}.option .opt-text{font-size:16px}.leaderboard{gap:7px}.lb-row{gap:7px;padding:4px 10px 4px 5px}.lb-row .lb-av{width:25px;height:25px;font-size:12px}.lb-row .lb-nm{max-width:90px;font-size:13px}.lb-row .lb-pts{font-size:13px}.explain{font-size:14px}.answer-cards{gap:8px;margin-top:0}.answer-card{width:76px;height:92px}.ac-face{border-radius:12px;gap:5px;padding:5px}.ac-front .ac-lock{font-size:24px}.ac-name{max-width:66px;font-size:11px}.ac-icon{font-size:20px}.ac-shape-badge{border-radius:9px;width:32px;height:32px}.ac-shape-badge .shape{width:14px;height:14px}.ac-mark{font-size:13px;top:3px;right:6px}}@media (height<=820px){.lobby.waiting-screen{gap:10px}.qr-panel{gap:5px;padding:8px}.qr-code-wrap{width:80px;height:80px}.qr-panel .code{letter-spacing:.16em;font-size:14px}.join-info{max-width:400px}.join-info h1{margin-bottom:6px;font-size:clamp(18px,3.2vw,28px)}.join-info .chips{gap:6px;margin-bottom:4px}.join-info .chips .chip{padding:4px 10px;font-size:12px}.join-info ol{padding-left:18px;font-size:12px;line-height:1.2}.join-info ol li{margin-bottom:2px}.players-row{gap:6px;margin-top:4px}.player-chip{gap:5px;padding:4px 12px;font-size:13px}.player-chip .dot{width:7px;height:7px}.join-info .waiting{margin-top:4px;font-size:12px}.lobby-continue-btn{font-size:calc(13px * var(--nuby-btn-scale,1));margin-top:4px}}
