.screen{color:#f5f5fa;font-variant-numeric:lining-nums;background:radial-gradient(80% 60% at 50% -10%,#7c5cff40,#0000 60%),radial-gradient(60% 50% at 100% 100%,#ff5caa1f,#0000 60%),#08080f;flex-direction:column;justify-content:center;align-items:center;width:100%;min-height:100dvh;padding:clamp(16px,3vw,48px);display:flex;position:relative;overflow:hidden}.screen *{font-variant-numeric:lining-nums}.topbar{z-index:5;justify-content:space-between;align-items:center;gap:16px;display:flex;position:absolute;top:clamp(12px,2vw,28px);left:clamp(12px,2vw,28px);right:clamp(12px,2vw,28px)}.topbar-code{letter-spacing:.08em;color:#f5f5fa99;background:#ffffff0f;border:1px solid #ffffff1a;border-radius:999px;padding:6px 18px;font-size:clamp(16px,1.6vw,24px);font-weight:600}.round-pill{color:#f5f5fabf;background:#ffffff0f;border:1px solid #ffffff1a;border-radius:999px;padding:6px 18px;font-size:clamp(14px,1.4vw,20px);font-weight:600}.conn-dots{gap:10px;display:flex}.conn-dot-wrap{background:#ffffff0d;border-radius:999px;align-items:center;gap:6px;padding:4px 10px 4px 4px;display:flex}.conn-dot{border-radius:50%;flex-shrink:0;width:10px;height:10px}.conn-dot.connected{background:#34d399;box-shadow:0 0 8px #34d399b3}.conn-dot.disconnected{background:#6b6b7a;animation:1.6s ease-in-out infinite pulse-dim}@keyframes pulse-dim{0%,to{opacity:.4}50%{opacity:1}}.conn-name{color:#f5f5fab3;font-size:clamp(11px,1vw,14px)}.lobby{text-align:center;flex-direction:column;align-items:center;gap:clamp(24px,4vw,48px);animation:.5s both fade-in;display:flex}.lobby-title{letter-spacing:-.01em;font-size:clamp(28px,4vw,56px);font-weight:800}.lobby-code-label{color:#f5f5faa6;margin-bottom:4px;font-size:clamp(16px,2vw,26px)}.lobby-code{letter-spacing:.12em;background:linear-gradient(#fff 0%,#c9c3ff 100%);color:#0000;filter:drop-shadow(0 8px 40px #7c5cff73);direction:ltr;unicode-bidi:isolate;-webkit-background-clip:text;background-clip:text;font-size:clamp(72px,14vw,180px);font-weight:900;line-height:1}.lobby-waiting{color:#f5f5fab3;font-size:clamp(18px,2vw,28px)}.chip-row{flex-wrap:wrap;justify-content:center;gap:clamp(10px,1.5vw,18px);max-width:90vw;min-height:64px;display:flex}.player-chip{border:2px solid var(--chip-color,#7c5cff);background:#ffffff12;border-radius:999px;align-items:center;gap:10px;padding:10px 20px;font-size:clamp(16px,1.6vw,24px);font-weight:700;animation:.45s cubic-bezier(.34,1.56,.64,1) both chip-pop;display:flex}.player-chip .dot{background:var(--chip-color,#7c5cff);border-radius:50%;flex-shrink:0;width:14px;height:14px}@keyframes chip-pop{0%{opacity:0;transform:scale(.3)}70%{opacity:1;transform:scale(1.08)}to{opacity:1;transform:scale(1)}}.host-start-btn{color:#fff;cursor:pointer;background:linear-gradient(135deg,#7c5cff,#ff5caa);border:none;border-radius:999px;margin-top:8px;padding:18px 56px;font-size:clamp(20px,2.2vw,30px);font-weight:800;transition:transform .15s,box-shadow .15s;box-shadow:0 10px 40px #7c5cff80}.host-start-btn:hover:not(:disabled){transform:translateY(-2px)scale(1.02);box-shadow:0 14px 50px #7c5cffa6}.host-start-btn:disabled{opacity:.4;cursor:not-allowed;box-shadow:none}.lobby-hint{color:#f5f5fa73;font-size:clamp(13px,1.1vw,17px)}.round-intro{text-align:center;flex-direction:column;align-items:center;gap:16px;animation:.55s cubic-bezier(.22,1,.36,1) both intro-sweep;display:flex}@keyframes intro-sweep{0%{opacity:0;transform:translateY(24px)scale(.92)}to{opacity:1;transform:translateY(0)scale(1)}}.round-intro-number{background:linear-gradient(135deg,#ffe08a,#ff5caa 60%,#7c5cff);color:#0000;-webkit-background-clip:text;background-clip:text;font-size:clamp(48px,9vw,140px);font-weight:900}.round-intro-category{color:#f5f5facc;font-size:clamp(20px,2.4vw,34px);font-weight:600}.stage{flex-direction:column;align-items:center;gap:clamp(20px,3vw,36px);width:min(1100px,92vw);display:flex}.clue-meta{flex-wrap:wrap;justify-content:center;align-items:center;gap:clamp(16px,3vw,40px);display:flex}.clue-counter{color:#f5f5fab3;font-variant-numeric:tabular-nums;background:#ffffff0f;border:1px solid #ffffff1f;border-radius:999px;padding:8px 22px;font-size:clamp(16px,1.8vw,26px);font-weight:700}.value-badge{color:#ffe08a;text-shadow:0 0 24px #ffe08a80;align-items:baseline;gap:8px;font-size:clamp(28px,3.4vw,52px);font-weight:900;display:flex}.value-badge .unit{color:#f5f5fa99;font-size:.4em;font-weight:700}.clue-list{flex-direction:column;gap:clamp(12px,1.6vw,20px);width:100%;display:flex}.clue-card{background:#ffffff0f;border:1px solid #ffffff1f;border-radius:20px;width:100%;padding:clamp(18px,2.4vw,30px) clamp(22px,3vw,40px);font-size:clamp(24px,3.2vw,44px);font-weight:700;line-height:1.5;animation:.42s cubic-bezier(.22,1,.36,1) both clue-in;box-shadow:0 6px 30px #0000004d}.clue-card.latest{background:#7c5cff1a;border-color:#7c5cff99}.clue-card.prior{opacity:.6;padding:clamp(14px,1.8vw,22px) clamp(20px,2.6vw,34px);font-size:clamp(20px,2.6vw,34px)}@keyframes clue-in{0%{opacity:0;transform:translateY(-18px)}to{opacity:1;transform:translateY(0)}}.clue-index{color:#f5f5fa73;margin-inline-end:12px;font-size:.5em;font-weight:700}.answering-strip{flex-wrap:wrap;justify-content:center;gap:clamp(8px,1.2vw,16px);width:100%;display:flex}.answering-chip{text-align:center;background:var(--chip-color,#7c5cff);color:#08080f;box-shadow:0 0 0 3px #ffffff26, 0 8px 40px var(--chip-color,#7c5cff);border-radius:999px;padding:clamp(10px,1.3vw,18px) clamp(20px,2.4vw,34px);font-size:clamp(20px,2.4vw,34px);font-weight:800;animation:.3s cubic-bezier(.22,1,.36,1) both chip-in,1.2s ease-in-out infinite chip-pulse}@keyframes chip-in{0%{opacity:0;transform:scale(.9)}to{opacity:1;transform:scale(1)}}@keyframes chip-pulse{0%,to{filter:brightness()}50%{filter:brightness(1.14)}}.wrong-bubbles{pointer-events:none;z-index:40;flex-direction:column-reverse;align-items:center;gap:clamp(6px,.9vw,12px);display:flex;position:fixed;bottom:clamp(120px,22vh,260px);left:50%;transform:translate(-50%)}.wrong-bubble{background:linear-gradient(180deg, #ffffff14, #fff0), color-mix(in srgb, var(--bubble-color,#ff5a5a) 32%, #14141f);border:2px solid var(--bubble-color,#ff5a5a);max-width:min(80vw,760px);box-shadow:0 10px 44px color-mix(in srgb, var(--bubble-color,#ff5a5a) 45%, transparent);color:#fff;white-space:nowrap;transform:translateY(var(--stack-offset,0));border-radius:999px;align-items:baseline;gap:clamp(8px,1vw,14px);padding:clamp(12px,1.4vw,20px) clamp(20px,2.4vw,34px);animation:2.55s cubic-bezier(.22,1,.36,1) both wrong-bubble-life;display:inline-flex}.wrong-bubble.leaving{animation:.6s both wrong-bubble-out}.wrong-bubble-x{color:var(--bubble-color,#ff5a5a);filter:brightness(1.4);opacity:.9;font-size:clamp(20px,2.2vw,30px);font-weight:900}.wrong-bubble-name{color:color-mix(in srgb, var(--bubble-color,#ff5a5a) 45%, #fff);font-size:clamp(20px,2.2vw,30px);font-weight:900}.wrong-bubble-name:after{content:":";color:#f5f5fa80;margin-inline-start:2px}.wrong-bubble-guess{color:#fff;text-overflow:ellipsis;font-size:clamp(28px,3.2vw,44px);font-weight:800;overflow:hidden}@keyframes wrong-bubble-life{0%{transform:translateY(calc(var(--stack-offset,0px) + 16px)) scale(.85);opacity:0}6%{transform:translateY(var(--stack-offset,0)) scale(1.04);opacity:1}10%{transform:translateY(var(--stack-offset,0)) scale(1);opacity:1}76%{transform:translateY(var(--stack-offset,0)) scale(1);opacity:1}to{transform:translateY(calc(var(--stack-offset,0px) - 12px)) scale(.96);opacity:0}}@keyframes wrong-bubble-out{0%{opacity:1}to{transform:translateY(calc(var(--stack-offset,0px) - 12px)) scale(.96);opacity:0}}@media (prefers-reduced-motion:reduce){.wrong-bubble,.wrong-bubble.leaving{animation-timing-function:linear}}.moderator-btn{color:#fff;cursor:pointer;letter-spacing:.01em;background:linear-gradient(135deg,#7c5cff,#ff5caa);border:none;border-radius:999px;margin-top:clamp(8px,1.5vw,20px);padding:clamp(16px,1.8vw,24px) clamp(40px,6vw,84px);font-size:clamp(22px,2.6vw,38px);font-weight:800;transition:transform .15s,box-shadow .15s,opacity .15s;box-shadow:0 10px 44px #7c5cff8c}.moderator-btn:hover:not(:disabled){transform:translateY(-2px)scale(1.02);box-shadow:0 14px 54px #7c5cffb3}.moderator-btn:active:not(:disabled){transform:translateY(0)scale(.98)}.moderator-btn.reveal{background:linear-gradient(135deg,#ffb84d,#ff5caa);box-shadow:0 10px 44px #ffb84d80}.moderator-btn.reveal:hover:not(:disabled){box-shadow:0 14px 54px #ffb84da6}.moderator-btn:disabled{opacity:.45;cursor:not-allowed;box-shadow:none;transform:none}.verdict-banner{text-align:center;border-radius:20px;width:100%;padding:clamp(16px,2vw,26px) clamp(24px,3vw,40px);font-size:clamp(26px,3.4vw,44px);font-weight:900}.verdict-banner.correct{color:#b9f8d8;background:#34d3992e;border:2px solid #34d399;animation:.35s cubic-bezier(.34,1.56,.64,1) both pop-in}.verdict-banner.wrong{color:#ffc7c7;background:#ff5a5a26;border:2px solid #ff5a5a;animation:.45s both shake}.verdict-banner.timeout{color:#f5f5fad9;background:#ffffff0f;border:2px solid #ffffff40;animation:.35s both pop-in}@keyframes pop-in{0%{opacity:0;transform:scale(.85)}to{opacity:1;transform:scale(1)}}@keyframes shake{0%,to{transform:translate(0)}20%{transform:translate(-10px)}40%{transform:translate(9px)}60%{transform:translate(-6px)}80%{transform:translate(4px)}}.reveal-line{color:#f5f5fa99;text-align:center;font-size:clamp(18px,1.8vw,26px)}.reveal-line b{color:#fff}.score-pop{color:#ffe08a;align-items:baseline;gap:6px;font-size:clamp(20px,2vw,28px);font-weight:800;display:inline-flex}.scoreboard{flex-direction:column;gap:10px;width:min(900px,92vw);display:flex}.scoreboard-row{background:#ffffff0d;border:1px solid #ffffff14;border-radius:14px;grid-template-columns:44px 1fr auto;align-items:center;gap:14px;padding:12px 20px;font-size:clamp(16px,1.6vw,24px);font-weight:700;transition:transform .5s cubic-bezier(.22,1,.36,1);display:grid}.scoreboard-rank{color:#f5f5fa73;text-align:center;font-size:clamp(16px,1.6vw,22px);font-weight:800}.scoreboard-name{align-items:center;gap:10px;display:flex}.scoreboard-name .dot{background:var(--chip-color,#7c5cff);border-radius:50%;flex-shrink:0;width:12px;height:12px}.scoreboard-score{font-variant-numeric:tabular-nums;color:#ffe08a}.scoreboard.compact{gap:6px}.scoreboard.compact .scoreboard-row{grid-template-columns:36px 1fr auto;gap:10px;padding:7px 16px;font-size:clamp(14px,1.25vw,20px)}.scoreboard.compact .scoreboard-rank{font-size:clamp(13px,1.15vw,18px)}.scoreboard.compact .scoreboard-name .dot{width:10px;height:10px}.between-rounds-title{text-align:center;margin-bottom:8px;font-size:clamp(24px,3vw,40px);font-weight:800}.next-round-btn{color:#fff;cursor:pointer;background:#ffffff14;border:1px solid #fff3;border-radius:999px;margin-top:20px;padding:12px 32px;font-size:clamp(16px,1.6vw,22px);font-weight:700}.next-round-btn:hover{background:#ffffff24}.podium-wrap{text-align:center;flex-direction:column;align-items:center;gap:clamp(20px,3vw,36px);animation:.6s both fade-in;display:flex}.podium-headline{background:linear-gradient(135deg,#ffe08a,#ff5caa 60%,#7c5cff);color:#0000;-webkit-background-clip:text;background-clip:text;font-size:clamp(32px,5vw,64px);font-weight:900}.podium-stands{justify-content:center;align-items:flex-end;gap:clamp(10px,2vw,24px);display:flex}.podium-stand{flex-direction:column;align-items:center;gap:10px;animation:.6s cubic-bezier(.22,1,.36,1) both podium-rise;display:flex}@keyframes podium-rise{0%{opacity:0;transform:translateY(40px)}to{opacity:1;transform:translateY(0)}}.podium-block{background:linear-gradient(#ffffff24,#ffffff0a);border:1px solid #ffffff26;border-radius:12px 12px 0 0;justify-content:center;align-items:flex-start;width:clamp(90px,12vw,160px);padding-top:14px;font-size:clamp(24px,3vw,40px);font-weight:900;display:flex}.podium-stand.place-1 .podium-block{order:2;height:clamp(140px,16vw,220px)}.podium-stand.place-2 .podium-block{height:clamp(100px,12vw,160px)}.podium-stand.place-3 .podium-block{height:clamp(72px,9vw,120px)}.podium-name{font-size:clamp(16px,1.8vw,26px);font-weight:800}.podium-score{color:#f5f5fa99;font-size:clamp(13px,1.3vw,18px)}.rematch-btn{color:#fff;cursor:pointer;background:linear-gradient(135deg,#7c5cff,#ff5caa);border:none;border-radius:999px;margin-top:8px;padding:18px 56px;font-size:clamp(20px,2.2vw,30px);font-weight:800;box-shadow:0 10px 40px #7c5cff80}.rematch-btn:hover{transform:translateY(-2px)scale(1.02)}@keyframes fade-in{0%{opacity:0}to{opacity:1}}.status-banner{color:#ffc7c7;z-index:10;background:#ff5a5a26;border:1px solid #ff5a5a66;border-radius:999px;padding:10px 24px;font-size:clamp(14px,1.3vw,18px);font-weight:700;position:absolute;bottom:20px;left:50%;transform:translate(-50%)}
