.card-game{--color-red: #e53935;--color-yellow: #fdd835;--color-green: #43a047;--color-blue: #1e88e5;--color-wild: #1a1a2e;--card-bg: #fff;--card-border: rgba(0, 0, 0, .14);--card-shadow: 0 6px 14px rgba(0, 0, 0, .35);--card-w: 76px;--card-h: 110px;--card-w-pile: 120px;--card-h-pile: 170px;--card-w-active: 180px;--card-h-active: 258px;display:flex;flex-direction:column;gap:16px;padding:4px 0 96px;max-width:900px;margin:0 auto;width:100%;transition:background .35s ease}.card-game.my-turn{padding:12px;background:radial-gradient(ellipse at 50% 40%,rgba(124,108,255,.28),transparent 65%);border-radius:var(--radius-lg);animation:cg-turn-pulse 1.8s ease-in-out infinite}@keyframes cg-turn-pulse{0%,to{box-shadow:inset 0 0 0 2px #7c6cff00}50%{box-shadow:inset 0 0 0 2px #7c6cff73}}.cg-topbar{display:flex;justify-content:flex-end;padding:0 8px}.cg-mute{background:var(--bg-elev-2);border:1px solid var(--border);color:var(--text);width:38px;height:38px;border-radius:999px;font-size:1.05rem;line-height:1;cursor:pointer;transition:background .15s ease}.cg-mute:hover{background:var(--bg-elev)}.cg-mute[aria-pressed=true]{opacity:.55}.cg-players{display:flex;flex-wrap:wrap;gap:8px;padding:0 8px}.cg-player{display:flex;align-items:center;gap:8px;padding:8px 12px;background:var(--bg-elev-2);border:1px solid var(--border);border-radius:999px;font-size:.9rem}.cg-player.active{border-color:var(--accent);background:var(--accent-soft);box-shadow:0 0 0 2px var(--accent-soft)}.cg-player.disconnected{opacity:.4}.cg-player.one-card{border-color:var(--warn)}.cg-player .hand-count{background:var(--bg);border:1px solid var(--border);border-radius:999px;padding:1px 8px;font-weight:600;font-size:.8rem}.cg-player .name{font-weight:500}.cg-player .you{font-size:.7rem;background:var(--accent);color:#fff;padding:1px 6px;border-radius:999px}.cg-play-arrow{display:flex;justify-content:center;color:var(--muted);opacity:.7;margin:8px auto 12px;font-size:1.2rem}.cg-play-arrow.flip{transform:scaleX(-1)}.cg-feedback-slot{display:flex;justify-content:center;align-items:center;min-height:44px;padding:4px 8px 0}.cg-turn-wrap{text-align:center}.cg-turn{display:inline-flex;align-items:center;gap:4px;color:var(--muted);font-size:.9rem;padding:6px 12px;border-radius:999px;transition:all .25s ease}.cg-turn strong{color:var(--text)}.cg-turn .dir{margin:0 6px}.cg-turn.is-me{background:var(--accent);color:#fff;font-size:1rem;letter-spacing:.04em;padding:8px 16px;box-shadow:0 6px 20px #7c6cff80;animation:cg-turn-badge-pulse 1.6s ease-in-out infinite}.cg-turn.is-me strong{color:#fff}@keyframes cg-turn-badge-pulse{0%,to{transform:scale(1)}50%{transform:scale(1.04)}}.cg-table{display:flex;align-items:center;justify-content:center;gap:48px;padding:40px 16px;background:radial-gradient(ellipse at center,rgba(61,214,140,.12),transparent 70%);border-radius:var(--radius-lg);min-height:300px}.cg-pile-discard .cg-card{box-shadow:0 20px 50px #00000080,0 0 0 3px #ffffff0d}.cg-active-color{margin-top:8px;font-size:.8rem;color:var(--muted);text-align:center;display:flex;gap:6px;align-items:center;justify-content:center}.cg-active-color .swatch{width:14px;height:14px;border-radius:3px;display:inline-block;box-shadow:inset 0 0 0 1px #ffffff14}.cg-card{width:var(--card-w);height:var(--card-h);border-radius:10px;border:3px solid #fff;background:var(--card-bg);color:#111;position:relative;box-shadow:var(--card-shadow);display:flex;align-items:center;justify-content:center;overflow:hidden;flex-shrink:0;transition:transform .12s ease,box-shadow .2s ease;isolation:isolate}.cg-card.size-pile{width:var(--card-w-pile);height:var(--card-h-pile);border-radius:14px;border-width:4px}.cg-card.size-pile .face{font-size:3rem}.cg-card.size-pile .corner{font-size:1rem}.cg-card.size-active{width:var(--card-w-active);height:var(--card-h-active);border-radius:18px;border-width:6px;box-shadow:0 18px 40px #00000073}.cg-card.size-active .face{font-size:4.6rem}.cg-card.size-active .corner{font-size:1.35rem}.cg-card.size-active .corner.tl{top:10px;left:14px}.cg-card.size-active .corner.br{bottom:10px;right:14px}.cg-card .face.face-stacked{display:inline-flex;flex-direction:column;align-items:center;gap:6px;line-height:1}.cg-card .face-icon:has(svg[viewBox="0 0 66.76 80.98"]){margin-bottom:4px}.cg-card .face-icon{font-size:1.4rem;font-weight:800;opacity:.9}.cg-card .face-label{font-size:.7rem;font-weight:800;letter-spacing:0;text-shadow:0 1px 2px rgba(0,0,0,.3);white-space:nowrap}.cg-card.size-pile .face-icon{font-size:2.2rem}.cg-card.size-pile .face-label{font-size:1rem}.cg-card.size-active .face-icon{font-size:3.6rem}.cg-card.size-active .face-label{font-size:1.5rem}.cg-card.color-red{background:var(--color-red);color:#fff}.cg-card.color-yellow{background:var(--color-yellow);color:#222}.cg-card.color-green{background:var(--color-green);color:#fff}.cg-card.color-blue{background:var(--color-blue);color:#fff}.cg-card.color-wild{background:conic-gradient(from 45deg,var(--color-red) 0 25%,var(--color-yellow) 25% 50%,var(--color-green) 50% 75%,var(--color-blue) 75% 100%);color:#fff}.cg-card .face{font-size:1.9rem;font-weight:800;text-shadow:0 1px 2px rgba(0,0,0,.25);z-index:1}.cg-card .corner{position:absolute;font-size:.75rem;font-weight:700;opacity:.9}.cg-card .corner.tl{top:5px;left:7px}.cg-card .corner.br{bottom:5px;right:7px;transform:rotate(180deg)}.cg-card.back{background:repeating-linear-gradient(45deg,#2a2b52 0,#2a2b52 8px,#1a1a3a 8px,#1a1a3a 16px);color:transparent;border-color:#ffffff1a}.cg-card.back:after{content:"★";position:absolute;color:#ffffff26;font-size:2.8rem}.cg-pile{display:flex;flex-direction:column;align-items:center;gap:6px}.cg-pile .label{font-size:.7rem;letter-spacing:.08em;text-transform:uppercase;color:var(--muted)}.cg-pile .count{color:var(--muted);font-size:.75rem}.cg-pile .cg-card.draw{cursor:pointer;transition:transform .1s ease}.cg-pile .cg-card.draw:hover{transform:translateY(-4px)}.cg-pile .cg-card.draw.disabled{cursor:not-allowed;opacity:.6;transform:none}.cg-pile .cg-card.draw.must-draw{animation:cg-draw-pulse 1.2s ease-in-out infinite}@keyframes cg-draw-pulse{0%,to{transform:translateY(0) scale(1);box-shadow:0 0 #f2b24b00,0 8px 18px #0006}50%{transform:translateY(-6px) scale(1.06);box-shadow:0 0 0 8px #f2b24b38,0 14px 30px #f2b24b73}}.cg-hand-wrap{flex:1;min-width:0}.cg-sort-wrap{display:flex;justify-content:center;align-items:center;gap:8px;margin-top:6px}.cg-sort-label{font-size:.72rem;color:var(--muted);text-transform:uppercase;letter-spacing:.04em;font-weight:600}.cg-sort{display:inline-flex;padding:3px;gap:2px;background:var(--bg-elev-2);border:1px solid var(--border);border-radius:999px}.cg-sort button{background:transparent;border:none;color:var(--muted);font-size:.75rem;font-weight:600;padding:5px 12px;border-radius:999px;cursor:pointer;transition:background .15s ease,color .15s ease}.cg-sort button:hover{color:var(--text)}.cg-sort button.active{background:#ffffff24;color:var(--text)}.cg-hand{display:flex;justify-content:center;padding:24px 16px 28px;flex-wrap:nowrap;max-width:100%;overflow-x:auto;overflow-y:visible;scrollbar-width:thin}.cg-hand .cg-card-slot{position:relative;width:var(--card-w);height:var(--card-h);flex-shrink:0;--overlap: clamp( .45, calc(.45 + (var(--hand-count, 7) - 7) * .033), .72 );margin-left:calc(var(--card-w) * var(--overlap) * -1);transition:margin-left .15s ease}.cg-hand .cg-card-slot:first-child{margin-left:0}.cg-hand .cg-card-slot:hover{z-index:5}.cg-hand .cg-card-slot:hover+.cg-card-slot{margin-left:calc(var(--card-w) * -.3)}.cg-hand .cg-card-slot .cg-card{cursor:pointer;transition:transform .15s ease,box-shadow .15s ease,filter .15s ease;box-shadow:0 6px 14px #00000073,-3px 0 #0000001f}.cg-hand .cg-card-slot:hover .cg-card{transform:translateY(-18px);box-shadow:0 18px 30px #0000008c}.cg-hand .cg-card.unplayable{filter:brightness(.48) saturate(.9);cursor:not-allowed}.cg-hand .cg-card-slot:hover .cg-card.unplayable{filter:brightness(.55) saturate(.9)}.cg-hand .cg-card.drawn-highlight{box-shadow:0 0 0 3px var(--warn),0 6px 14px #00000073}.cg-color-grid{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin:16px 0}.cg-color-btn{padding:18px;border:none;border-radius:var(--radius);color:#fff;font-weight:700;font-size:1.05rem;cursor:pointer;text-transform:capitalize;transition:transform .1s ease}.cg-color-btn:hover{transform:translateY(-2px)}.cg-color-btn.red{background:var(--color-red)}.cg-color-btn.yellow{background:var(--color-yellow);color:#222}.cg-color-btn.green{background:var(--color-green)}.cg-color-btn.blue{background:var(--color-blue)}.cg-notice{display:inline-flex;align-items:center;justify-content:center;gap:10px;padding:8px 16px;border-radius:999px;background:var(--accent);color:#fff;font-size:.95rem;font-weight:500;box-shadow:0 6px 20px #7c6cff73;max-width:100%;margin:0 auto;width:fit-content;align-self:center}.cg-notice.accent{background:var(--accent);box-shadow:0 6px 20px #7c6cff73}.cg-notice.warn{background:var(--warn);color:#1a1a1a;box-shadow:0 6px 20px #f2b24b73}.cg-notice strong{color:inherit}.cg-notice button{background:#fff3;color:#fff;border:1px solid rgba(255,255,255,.3);padding:5px 12px;border-radius:999px;font-weight:600;font-size:.85rem;cursor:pointer;transition:background .15s ease}.cg-notice button:hover{background:#ffffff52}.cg-notice.warn button{background:#1a1a1a26;color:#1a1a1a;border-color:#1a1a1a33}.cg-notice.warn button:hover{background:#1a1a1a40}.cg-notice button.danger{background:var(--danger);color:#fff;border-color:transparent}.cg-notice button.danger:hover{filter:brightness(1.1)}.cg-notice button.ghost{background:var(--bg);border-radius:999px;padding:5px 12px;border:1px solid rgba(255,255,255,.2);color:#fff;font-weight:600}.cg-notice button.ghost:hover{background:var(--bg-elev)}.cg-round-over .scores{list-style:none;padding:0;margin:12px 0;display:flex;flex-direction:column;gap:6px}.cg-round-over .scores li{display:flex;justify-content:space-between;padding:10px 14px;background:var(--bg-elev-2);border:1px solid var(--border);border-radius:var(--radius)}.cg-round-over .scores li.winner{border-color:var(--success);background:#3dd68c1a}.cg-round-over h2{font-size:1.4rem;margin:0 0 6px}.cg-round-over .winner-line{color:var(--success);font-weight:700;margin-bottom:14px}.cg-avatar{display:inline-flex;align-items:center;justify-content:center;border-radius:999px;color:#fff;font-weight:700;font-family:inherit;line-height:1;box-shadow:inset 0 0 0 2px #ffffff26,0 2px 8px #00000059;-webkit-user-select:none;user-select:none}.cg-avatar-img{object-fit:cover;background:var(--bg-elev-2)}.cg-avatar-wrap{position:relative;display:inline-block;line-height:0}.cg-count-badge{position:absolute;top:-4px;right:-6px;min-width:22px;height:22px;padding:0 6px;border-radius:999px;background:var(--danger);color:#fff;font-size:.78rem;font-weight:800;line-height:22px;text-align:center;box-shadow:0 0 0 2px var(--bg),0 2px 6px #0006;font-variant-numeric:tabular-nums}.cg-arena{position:relative;padding-top:140px;min-height:460px}.cg-others-row{position:absolute;left:0;right:0;top:12px;display:flex;gap:18px;justify-content:center;flex-wrap:wrap;padding:0 16px;pointer-events:none}.cg-arc-slot{pointer-events:auto;transition:transform .25s ease}.cg-arc-inner{display:flex;flex-direction:column;align-items:center;gap:6px;padding:8px 10px;background:var(--bg-elev-2);border:1px solid var(--border);border-radius:16px;min-width:88px;pointer-events:auto;transition:all .25s ease}.cg-arc-slot.active .cg-arc-inner{border-color:var(--accent);background:var(--accent-soft);animation:cg-chip-pulse 1.6s ease-in-out infinite}.cg-arc-slot.one-card .cg-arc-inner{border-color:var(--warn)}.cg-arc-slot.disconnected .cg-arc-inner{opacity:.4}.cg-arc-inner .name{font-size:.85rem;font-weight:500;max-width:120px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.cg-bottom-row{display:grid;grid-template-columns:1fr auto 1fr;align-items:center;column-gap:16px;position:sticky;bottom:0;padding:12px 8px 8px;z-index:20}.cg-bottom-row .cg-me{justify-self:end}.cg-bottom-row .cg-hand-wrap{grid-column:2;justify-self:center;min-width:0;max-width:min(100%,900px)}.cg-me{display:flex;flex-direction:column;align-items:center;gap:6px;padding:8px 10px;background:var(--bg-elev-2);border:1px solid var(--border);border-radius:16px;min-width:88px;flex-shrink:0;transition:all .25s ease}.cg-me.is-me-turn{border-color:var(--accent);background:var(--accent-soft);animation:cg-chip-pulse 1.6s ease-in-out infinite}@keyframes cg-chip-pulse{0%,to{transform:translateY(-4px) scale(1.04);box-shadow:0 0 0 2px var(--accent-soft),0 10px 24px #7c6cff66}50%{transform:translateY(-6px) scale(1.08);box-shadow:0 0 0 5px #7c6cff47,0 14px 32px #7c6cffa6}}.cg-me .name{font-size:.85rem;font-weight:500;max-width:120px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.cg-flying{--card-w: 76px;--card-h: 110px;--card-w-pile: 120px;--card-h-pile: 170px;--card-w-active: 180px;--card-h-active: 258px;--color-red: #e53935;--color-yellow: #fdd835;--color-green: #43a047;--color-blue: #1e88e5;--color-wild: #1a1a2e;--card-bg: #fff;--card-border: rgba(0, 0, 0, .14);--card-shadow: 0 6px 14px rgba(0, 0, 0, .35);position:fixed;top:0;left:0;pointer-events:none;z-index:1000}.cg-flying .cg-card{box-shadow:0 30px 60px #0009,0 0 0 3px #ffffff14}@media (max-width: 520px){.card-game{--card-w: 56px;--card-h: 82px;--card-w-pile: 86px;--card-h-pile: 124px;--card-w-active: 134px;--card-h-active: 192px}.cg-card .face{font-size:1.4rem}.cg-card.size-pile .face{font-size:2.2rem}.cg-card.size-active .face{font-size:3.4rem}.cg-table{gap:20px;padding:24px 8px;min-height:220px}.cg-arena{padding-top:120px;min-height:380px}.cg-others-row{gap:10px;padding:0 8px;top:8px}.cg-arc-inner{min-width:64px;padding:6px 8px}.cg-arc-inner .name{font-size:.75rem;max-width:72px}.cg-hand{padding:18px 8px 20px}}.cg-feedback-countdown{display:flex;justify-content:center;margin-top:-2px}.cg-countdown{font-size:.95rem;font-weight:700;color:var(--muted);font-variant-numeric:tabular-nums;line-height:1}.cg-countdown.urgent{color:var(--danger);font-size:1.15rem;animation:cg-countdown-tick .8s ease-in-out infinite}@keyframes cg-countdown-tick{0%,to{transform:scale(1)}50%{transform:scale(1.15)}}.cg-paused-banner{text-align:center;padding:10px 14px;margin:0 auto;width:fit-content;border-radius:999px;background:var(--warn);color:#1a1a1a;font-weight:700;letter-spacing:.02em;box-shadow:0 6px 20px #f2b24b73}.card-game.is-paused{filter:saturate(.75) brightness(.88)}.card-game.is-paused .cg-paused-banner{filter:none}.trivia .trivia-header{display:flex;align-items:flex-start;justify-content:space-between;gap:16px}.trivia-header-right{display:flex;align-items:flex-start;gap:12px}.trivia-mute-button{background:var(--bg-elev-2);border:1px solid var(--border);color:var(--text);width:36px;height:36px;border-radius:999px;cursor:pointer;font-size:1rem;display:inline-flex;align-items:center;justify-content:center;padding:0}.trivia-mute-button:hover{border-color:var(--accent)}.trivia-meta{font-size:1.15rem;font-weight:600;display:flex;align-items:center;gap:10px}.trivia-meta .difficulty{font-size:.7rem;text-transform:uppercase;letter-spacing:.08em;padding:3px 8px;border-radius:999px;background:var(--bg-elev-2);color:var(--muted);border:1px solid var(--border)}.diff-easy{color:var(--success);border-color:#3dd68c66}.diff-medium{color:var(--warn);border-color:#f2b24b66}.diff-hard{color:var(--danger);border-color:#ff6b7a66}.trivia .timer{min-width:110px;display:flex;flex-direction:column;align-items:flex-end;gap:6px}.trivia .timer-bar-track{width:110px;height:8px;border-radius:999px;background:var(--bg-elev-2);overflow:hidden;border:1px solid var(--border)}.trivia .timer-bar-fill{height:100%;background:linear-gradient(90deg,var(--success),var(--accent));transition:width .12s linear}.trivia .timer.urgent .timer-bar-fill{background:linear-gradient(90deg,var(--warn),var(--danger))}.trivia .timer-seconds{font-variant-numeric:tabular-nums;font-weight:600;color:var(--muted)}.trivia .timer.urgent .timer-seconds{color:var(--danger)}.question-card{display:flex;flex-direction:column;gap:18px}.question-text{font-size:1.5rem;line-height:1.35;margin:0;font-weight:600}.options{display:grid;grid-template-columns:1fr 1fr;gap:12px}@media (max-width: 540px){.options{grid-template-columns:1fr}}.option{display:flex;align-items:center;justify-content:space-between;gap:12px;text-align:left;padding:16px 18px;border-radius:var(--radius);background:var(--bg-elev-2);color:var(--text);border:2px solid var(--border);font-size:1rem;font-weight:500;cursor:pointer;transition:transform .1s ease,border-color .12s ease,background .12s ease}.option:hover:not(:disabled){border-color:var(--accent);background:var(--accent-soft);transform:translateY(-1px)}.option:disabled{cursor:default}.option.chosen{border-color:var(--accent);background:var(--accent-soft)}.option.waiting{opacity:.55}.option.correct{border-color:var(--success);background:#3dd68c29;color:var(--text)}.option.wrong{border-color:var(--danger);background:#ff6b7a24}.option.neutral{opacity:.55}.option-text{flex:1}.option-badge{font-size:.7rem;text-transform:uppercase;letter-spacing:.08em;padding:3px 8px;border-radius:999px;background:var(--success);color:#052e1c;font-weight:700}.option-badge.wrong-badge{background:var(--danger);color:#2e0508}.answered-note{margin:0;text-align:center;font-style:italic}.scoreboard .scoreboard-head{display:flex;align-items:baseline;justify-content:space-between;gap:12px;margin-bottom:12px}.scoreboard .scoreboard-head h2{margin:0}.scoreboard .reveal-correct{font-weight:600;color:var(--success)}.score-list{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:6px}.score-row{display:grid;grid-template-columns:1fr auto auto;gap:12px;align-items:center;padding:10px 12px;border-radius:var(--radius);background:var(--bg-elev-2);border:1px solid transparent}.score-row.me{border-color:var(--accent)}.score-row.hit{background:#3dd68c1a}.score-row.miss{background:#ff6b7a0f}.score-name{display:flex;align-items:center;gap:8px;font-weight:500}.score-name .badge{font-size:.6rem;padding:2px 6px;border-radius:6px;background:var(--accent);color:#fff;font-weight:700;letter-spacing:.05em}.tag{font-size:.75rem;text-transform:uppercase;letter-spacing:.08em;padding:2px 8px;border-radius:999px}.tag.submitted{background:#3dd68c2e;color:var(--success)}.tag.waiting{background:var(--bg-elev);color:var(--muted)}.reveal-pick{font-size:.85rem;color:var(--muted);max-width:200px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.score-points{font-variant-numeric:tabular-nums;font-weight:600;display:flex;align-items:baseline;gap:6px}.points-delta{color:var(--success);font-size:.85rem}.points-total{color:var(--text)}.trivia-final-card{text-align:center;display:flex;flex-direction:column;gap:16px;align-items:stretch}.trivia-final-title{margin:0;font-size:2rem}.trivia-leaderboard{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:8px;text-align:left}.trivia-leaderboard li{display:grid;grid-template-columns:auto 1fr auto;gap:12px;align-items:center;padding:12px 14px;border-radius:var(--radius);background:var(--bg-elev-2);border:1px solid var(--border)}.trivia-leaderboard li.first{border-color:var(--warn);background:#f2b24b14}.trivia-leaderboard .rank{font-weight:700;color:var(--muted);font-variant-numeric:tabular-nums;min-width:24px}.trivia-leaderboard .name{font-weight:600}.trivia-leaderboard .points{font-variant-numeric:tabular-nums;font-weight:600}.trivia-config{display:flex;flex-direction:column;gap:14px;margin-top:16px;padding:16px;background:var(--bg-elev-2);border-radius:var(--radius);border:1px solid var(--border)}.trivia-config h3{margin:0;font-size:.9rem;text-transform:uppercase;letter-spacing:.08em;color:var(--muted)}.trivia-config-field{display:flex;flex-direction:column;gap:6px}.trivia-config-field label{font-size:.85rem;color:var(--muted)}.trivia-config-field select{background:var(--bg-elev);color:var(--text);border:1px solid var(--border);border-radius:var(--radius);padding:10px 12px;font-size:1rem;font-family:inherit}.trivia-config-summary{margin:8px 0 0;color:var(--muted);font-size:.9rem}.trivia-config-error{color:var(--danger);font-size:.85rem;margin:4px 0 0}.trivia-config-divider{height:1px;background:var(--border);margin:4px 0 0}.trivia-config-toggle label{display:grid;grid-template-columns:auto 1fr;grid-template-rows:auto auto;column-gap:10px;align-items:center;cursor:pointer;-webkit-user-select:none;user-select:none}.trivia-config-toggle input[type=checkbox]{grid-row:1 / 3;width:18px;height:18px;accent-color:var(--accent);cursor:pointer}.trivia-config-toggle input[type=checkbox]:disabled{cursor:not-allowed;opacity:.5}.trivia-config-toggle label>span:first-of-type{font-weight:500;color:var(--text);grid-column:2;grid-row:1}.trivia-config-hint{font-size:.8rem;color:var(--muted);grid-column:2;grid-row:2}.trivia-config-toggle:has(input:disabled) label>span{opacity:.5}.buzz-button{width:100%;padding:22px 24px;font-size:1.4rem;font-weight:800;letter-spacing:.18em;text-transform:uppercase;border:2px solid var(--danger);border-radius:var(--radius);background:linear-gradient(180deg,#ff7a87,#d94656);color:#fff;cursor:pointer;box-shadow:0 6px 20px #ff6b7a59,inset 0 -3px #0000002e;transition:transform 80ms ease,box-shadow .1s ease,filter .12s ease}.buzz-button:hover:not(:disabled){transform:translateY(-2px);filter:brightness(1.05)}.buzz-button:active:not(:disabled){transform:translateY(1px);box-shadow:0 2px 8px #ff6b7a40,inset 0 2px 4px #0003}.buzz-button:disabled{cursor:default;opacity:.4;filter:grayscale(.4)}.buzz-banner{display:flex;flex-direction:column;gap:4px;padding:14px 16px;border-radius:var(--radius);border:1px solid var(--border);background:var(--bg-elev-2)}.buzz-banner strong{font-size:1.05rem}.buzz-banner.mine{border-color:var(--accent);background:var(--accent-soft)}.buzz-banner.others{border-color:var(--warn);background:#f2b24b1a}.buzz-banner.locked{border-color:var(--danger);background:#ff6b7a1a}.options-hidden{padding:24px;text-align:center;background:var(--bg-elev-2);border:1px dashed var(--border);border-radius:var(--radius)}.options-hidden p{margin:0}.timer-stack{display:flex;flex-direction:column;gap:6px;align-items:flex-end}.trivia .timer.paused .timer-bar-fill{background:var(--muted);transition:none}.trivia .timer.paused .timer-seconds{color:var(--muted)}.trivia .timer.buzz-timer .timer-bar-track{width:110px;height:6px}.trivia .timer-bar-fill.buzz{background:linear-gradient(90deg,var(--warn),var(--danger))}.trivia .timer-seconds.buzz{color:var(--danger);font-weight:700;font-size:.9rem}.score-name .badge.locked{background:var(--danger);color:#fff}.score-name .badge.answering{background:var(--warn);color:#2e1a05}.score-row.answering{border-color:var(--warn);background:#f2b24b0f}.tag.locked{background:#ff6b7a2e;color:var(--danger)}.points-delta.negative{color:var(--danger)}.reveal-countdown{text-align:center;color:var(--muted);font-size:.95rem;font-style:italic;padding:8px 12px}.reveal-advance{display:flex;flex-direction:column;align-items:center;gap:8px;padding:8px 12px}.reveal-next-btn{width:auto;min-width:200px;padding:12px 24px}.paused-banner{display:flex;align-items:center;justify-content:center;gap:12px;padding:14px 18px;border-radius:var(--radius);background:var(--accent-soft);border:1px solid var(--accent);color:var(--text)}.paused-banner strong{font-size:1.1rem;letter-spacing:.04em}.trivia-player-row{display:flex;gap:14px;justify-content:center;flex-wrap:wrap;padding:4px 8px 8px}.trivia-player{display:flex;flex-direction:column;align-items:center;gap:4px;padding:8px 10px;min-width:76px;background:var(--bg-elev-2);border:1px solid var(--border);border-radius:16px;transition:all .25s ease}.trivia-player.me{border-color:var(--accent);background:var(--accent-soft)}.trivia-player.disconnected{opacity:.45}.trivia-player.answering{border-color:var(--warn);box-shadow:0 0 0 2px #f2b24b40,0 8px 18px #f2b24b59;transform:translateY(-3px) scale(1.03)}.trivia-player.hit{border-color:var(--success);background:#3dd68c26}.trivia-player.miss{border-color:var(--danger);background:#ff6b7a1f}.trivia-player.locked{opacity:.55}.trivia-player-wrap{display:flex;flex-direction:column;align-items:center;gap:4px}.trivia-score{display:block;text-align:center;font-size:1.1rem;font-weight:800;color:var(--text);font-variant-numeric:tabular-nums;line-height:1}.trivia-player-name{font-size:.85rem;font-weight:500;max-width:100px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.trivia-avatar-slot{position:relative;display:inline-block;line-height:0}.trivia-overlay{position:absolute;bottom:-4px;right:-4px;min-width:20px;height:20px;padding:0 4px;border-radius:999px;color:#fff;font-size:.8rem;font-weight:900;line-height:20px;text-align:center;box-shadow:0 0 0 2px var(--bg),0 2px 6px #0006}.trivia-overlay.check{background:var(--success)}.trivia-overlay.wrong{background:var(--danger)}.trivia-player.no-answer{opacity:.38}@media (max-width: 520px){.trivia-player-row{gap:8px}.trivia-player{min-width:64px;padding:6px 8px}.trivia-player-name{font-size:.75rem;max-width:72px}}.trivia-final{position:relative;padding:24px 16px 32px}.trivia-final-heading{text-align:center;margin-bottom:24px}.trivia-final-title{font-size:2rem;margin:6px 0 4px;background:linear-gradient(120deg,#fdd835,#fb8c00 40%,#7c6cff);-webkit-background-clip:text;background-clip:text;color:transparent;animation:trivia-title-pop .6s cubic-bezier(.34,1.56,.64,1)}@keyframes trivia-title-pop{0%{opacity:0;transform:translateY(20px) scale(.9)}to{opacity:1;transform:translateY(0) scale(1)}}.trivia-podium{display:flex;justify-content:center;align-items:flex-end;gap:14px;padding:0 8px 16px;max-width:560px;margin:0 auto 24px}.trivia-podium-col{flex:1;max-width:170px;display:flex;flex-direction:column;align-items:center;gap:10px;animation:trivia-podium-rise .55s cubic-bezier(.34,1.56,.64,1) both}.trivia-podium-col.rank-1{animation-delay:.35s}.trivia-podium-col.rank-2{animation-delay:.1s}.trivia-podium-col.rank-3{animation-delay:.55s}.trivia-podium-col.empty{opacity:.35}.trivia-podium-meta{display:flex;flex-direction:column;align-items:center;gap:2px}.trivia-podium-medal{font-size:2.2rem;line-height:1;filter:drop-shadow(0 4px 10px rgba(0,0,0,.4))}.trivia-podium-name{font-weight:700;font-size:1rem;max-width:100%;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.trivia-podium-points{font-size:.85rem;color:var(--muted);font-variant-numeric:tabular-nums}.trivia-podium-block{width:100%;display:flex;align-items:flex-start;justify-content:center;padding-top:12px;border-radius:12px 12px 0 0;background:var(--bg-elev-2);border:1px solid var(--border);border-bottom:none}.trivia-podium-col.rank-1 .trivia-podium-block{height:160px;background:linear-gradient(180deg,#fdd83559,#fdd83514);border-color:#fdd835;box-shadow:0 0 40px #fdd83559}.trivia-podium-col.rank-2 .trivia-podium-block{height:110px;background:linear-gradient(180deg,#b4b4c847,#b4b4c80f);border-color:#b4b4c880}.trivia-podium-col.rank-3 .trivia-podium-block{height:78px;background:linear-gradient(180deg,#cd7f324d,#cd7f320f);border-color:#cd7f328c}.trivia-podium-rank{font-size:1.5rem;font-weight:900;color:#ffffff73;font-variant-numeric:tabular-nums}.trivia-podium-col.rank-1 .trivia-podium-rank{color:#fdd835;font-size:1.8rem}.trivia-podium-col.rank-2 .trivia-podium-rank{color:#dcdcebcc}.trivia-podium-col.rank-3 .trivia-podium-rank{color:#cd7f32e6}@keyframes trivia-podium-rise{0%{opacity:0;transform:translateY(60px)}to{opacity:1;transform:translateY(0)}}.trivia-leaderboard.rest{max-width:420px;margin:0 auto 20px;padding:0;list-style:none;display:flex;flex-direction:column;gap:6px}.trivia-leaderboard.rest li{display:grid;grid-template-columns:32px 1fr auto;align-items:center;padding:8px 14px;background:var(--bg-elev-2);border:1px solid var(--border);border-radius:var(--radius);font-size:.9rem}.trivia-leaderboard.rest .rank{font-weight:700;color:var(--muted)}.trivia-leaderboard.rest .points{color:var(--accent);font-weight:600}.trivia-final-actions{display:flex;justify-content:center;padding-top:12px}.trivia-final-actions .primary{min-width:200px;width:auto;padding:12px 24px}.trivia-confetti{position:absolute;top:0;right:0;bottom:0;left:0;pointer-events:none;overflow:hidden;z-index:0}.trivia-confetti-bit{position:absolute;top:-20px;width:10px;height:14px;border-radius:2px;animation:trivia-confetti-fall linear forwards;opacity:.9}@keyframes trivia-confetti-fall{0%{transform:translate(0) rotate(0);opacity:.9}95%{opacity:.9}to{transform:translate(var(--drift),120vh) rotate(var(--spin));opacity:0}}.trivia-final-heading,.trivia-podium,.trivia-leaderboard.rest,.trivia-final-actions{position:relative;z-index:1}@media (max-width: 520px){.trivia-podium{gap:8px}.trivia-podium-col.rank-1 .trivia-podium-block{height:120px}.trivia-podium-col.rank-2 .trivia-podium-block{height:86px}.trivia-podium-col.rank-3 .trivia-podium-block{height:62px}.trivia-podium-medal{font-size:1.8rem}.trivia-podium-name{font-size:.9rem}}.screen.game.cp{gap:1rem;padding-bottom:3rem}.cp-header{display:flex;justify-content:space-between;align-items:flex-start;gap:1rem;flex-wrap:wrap}.cp-header-meta{font-size:.95rem;color:var(--text-muted, #8a8a8a)}.cp-header-meta strong{color:var(--text, #eee)}.cp-you-judge{color:#f5d061;margin-left:.25rem}.cp-deck-count{margin-left:.5rem;opacity:.8}.cp-scoreboard-compact{display:flex;flex-wrap:wrap;gap:.5rem;justify-content:flex-end}.cp-score-chip{display:inline-flex;align-items:center;gap:.4rem;padding:.25rem .65rem;border-radius:999px;background:#ffffff14;font-size:.85rem}.cp-score-chip.judge{background:#f5d06140;color:#f5d061}.cp-score-chip.me{outline:1px solid rgba(255,255,255,.35)}.cp-score-chip-points{font-weight:600}.cp-prompt-row{display:flex;flex-direction:column;align-items:center;gap:.75rem}.cp-prompt-combo{display:flex;align-items:center;justify-content:center;gap:1rem;flex-wrap:nowrap}.cp-submission-counter{color:var(--text-muted, #aaa);font-size:.95rem}.cp-card{position:relative;display:flex;flex-direction:column;justify-content:space-between;border-radius:14px;padding:1.1rem 1.1rem 2.4rem;box-shadow:0 4px 14px #00000059;border:1px solid rgba(255,255,255,.04);font-family:Helvetica Neue,Arial,sans-serif;font-weight:600;line-height:1.25;word-wrap:break-word;transition:transform .12s ease,box-shadow .12s ease,border-color .12s ease;text-align:left}.cp-card-lg{width:240px;min-height:320px;font-size:1.25rem}.cp-card-md{width:190px;min-height:260px;font-size:1.05rem}.cp-card-sm{width:150px;min-height:200px;font-size:.9rem}.cp-card-text{margin:0;white-space:pre-wrap}.cp-card-footer{position:absolute;left:1.1rem;right:1.1rem;bottom:.8rem;font-size:.7rem;font-weight:500;letter-spacing:.05em;text-transform:uppercase;opacity:.55}.cp-prompt{background:#111;color:#fff}.cp-blank{display:inline-block;border-bottom:2px solid rgba(255,255,255,.6);min-width:2.2em;margin:0 .15em;vertical-align:baseline}.cp-response{background:#f4f1ea;color:#141414;border-color:#0000001a}button.cp-response{-webkit-appearance:none;-moz-appearance:none;appearance:none;font:inherit;cursor:pointer;outline:none;text-align:left}.cp-response.clickable:hover{transform:translateY(-3px);box-shadow:0 10px 24px #00000080}.cp-response.selected{transform:translateY(-6px);border-color:#f5d061;box-shadow:0 14px 28px #f5d06159}.cp-response.disabled{opacity:.45;cursor:default}.cp-response.highlighted{border-color:#f5d061;box-shadow:0 10px 24px #f5d06173}.cp-instruction{margin:.5rem 0;font-size:1.1rem;color:var(--text-muted, #aaa);text-align:center}.cp-stage{--cp-card-w: 190px;--cp-card-h: 260px;--cp-peek: 90px;display:flex;flex-direction:column;align-items:stretch;gap:.5rem}.cp-hand{display:flex;flex-direction:column;align-items:center;padding:1rem .5rem 1.5rem;overflow:visible;max-width:calc(var(--cp-card-w) + 2rem);margin:0 auto}.cp-hand-cell{width:var(--cp-card-w);height:var(--cp-card-h);flex-shrink:0;position:relative;margin-bottom:calc(-1 * (var(--cp-card-h) - var(--cp-peek)));transition:margin-bottom .28s ease,transform .2s ease}.cp-hand-cell:last-child{margin-bottom:0}.cp-hand-cell:hover:not(.is-selected){transform:translateY(-14px)}.cp-hand-cell.is-selected{margin-bottom:16px;transform:scale(1.015);z-index:5}.cp-hand-cell.is-selected:last-child{margin-bottom:0}.cp-judge-columns{display:flex;gap:1.5rem;justify-content:center;align-items:flex-start;flex-wrap:wrap;padding:1rem .5rem 1.5rem}.cp-judge-columns .cp-hand-col{display:flex;flex-direction:column;align-items:center;padding:0;margin:0;max-width:var(--cp-card-w)}.cp-timer{width:100%;max-width:320px;display:flex;flex-direction:column;gap:4px;margin:.25rem auto 0}.cp-timer-track{position:relative;height:6px;border-radius:99px;background:#ffffff14;overflow:hidden}.cp-timer-fill{position:absolute;top:0;right:0;bottom:0;left:0;background:var(--accent, #7c6cff);border-radius:99px;transition:width 80ms linear,background .2s ease}.cp-timer.urgent .cp-timer-fill{background:#ff6b7a}.cp-timer-meta{display:flex;justify-content:space-between;font-size:.8rem;color:var(--muted, #aaa);font-variant-numeric:tabular-nums}.cp-timer.urgent .cp-timer-seconds{color:#ff6b7a;font-weight:600}.cp-win-target{margin:.25rem 0 0;font-size:.85rem;color:var(--muted, #aaa)}.cp-mine-inline{margin:0;padding:.5rem .75rem;background:#f5d06114;border:1px solid rgba(245,208,97,.25);border-radius:8px;display:flex;align-items:center;gap:.75rem}.cp-mine-inline .cp-mine-label{margin:0;font-size:.8rem;color:var(--muted, #aaa)}.cp-actions{display:flex;justify-content:center;margin-top:1rem}.cp-player-wait,.cp-judge-wait{text-align:center;padding:1rem;color:var(--text-muted, #aaa)}.cp-mine{margin-top:1rem;display:flex;flex-direction:column;align-items:center;gap:.5rem}.cp-mine-label{font-size:.85rem;color:var(--text-muted, #aaa);margin:0}.cp-judge-progress{font-size:1rem;color:var(--text, #eee)}.cp-submit-status{list-style:none;padding:0;margin:.75rem auto;max-width:320px;display:grid;gap:.35rem}.cp-submit-status li{display:flex;justify-content:space-between;padding:.4rem .75rem;background:#ffffff0d;border-radius:8px}.cp-submit-status .done{color:#7ed389}.cp-submit-status .pending{color:var(--text-muted, #aaa)}.cp-reveal{display:flex;flex-direction:column;align-items:center;gap:1.25rem;padding:.5rem 0 2rem}.cp-reveal-combo{display:flex;gap:1rem;flex-wrap:nowrap;align-items:center;justify-content:center}.cp-reveal-title{margin:0;font-size:1.4rem;text-align:center}.cp-reveal-others{width:100%;max-width:900px}.cp-reveal-label{text-align:center;color:var(--text-muted, #aaa);font-size:.9rem;margin:0 0 .5rem}.cp-reveal-others-grid{display:flex;gap:.75rem;flex-wrap:wrap;justify-content:center}.cp-scoreboard{display:flex;flex-direction:column;gap:.25rem;width:100%;max-width:360px;margin:0 auto;background:#ffffff0d;border-radius:10px;padding:.5rem}.cp-scorerow{display:flex;justify-content:space-between;padding:.35rem .6rem;border-radius:6px}.cp-scorerow.leader{background:#f5d0612e}.cp-score-points{font-variant-numeric:tabular-nums;font-weight:600}.cp-final{padding:2rem 1rem;display:flex;justify-content:center}.cp-final-card{max-width:560px;width:100%;text-align:center}.cp-final-title{margin:.25rem 0 1rem;font-size:2rem}.cp-final-list{list-style:none;padding:0;margin:0 0 1rem;display:flex;flex-direction:column;gap:.4rem}.cp-final-list li{display:flex;gap:.75rem;padding:.5rem .75rem;background:#ffffff0d;border-radius:8px;align-items:baseline}.cp-final-list li.first{background:#f5d06133}.cp-final-list .rank{width:1.5rem;opacity:.7}.cp-final-list .name{flex:1;text-align:left;font-weight:600}.cp-final-list .points{font-variant-numeric:tabular-nums}.cp-final-trophies{display:flex;flex-direction:column;gap:1rem;margin:1.5rem 0}.cp-trophy-stack{text-align:left}.cp-trophy-name{font-size:.9rem;color:var(--text-muted, #aaa);margin:0 0 .4rem}.cp-trophy-cards{display:flex;flex-wrap:wrap;gap:.5rem}.cp-lobby-config{margin-top:.75rem;display:flex;flex-direction:column;gap:.75rem}.cp-lobby-config h3{margin:.5rem 0 0;font-size:1rem;letter-spacing:.02em}.cp-lobby-error{color:#e07878;margin:0}.cp-lobby-head{display:flex;justify-content:space-between;align-items:center;gap:.75rem;flex-wrap:wrap}.cp-lobby-head h3{margin:0}.cp-pack-filter{flex:1;min-width:140px;max-width:240px;padding:.35rem .65rem;background:#0000004d;color:var(--text, #eee);border:1px solid rgba(255,255,255,.1);border-radius:6px;font:inherit}.cp-preset-row{display:flex;flex-wrap:wrap;gap:.4rem}.cp-preset-row .ghost.sm{padding:.3rem .65rem;font-size:.85rem}.cp-pack-sections{display:flex;flex-direction:column;gap:.4rem;max-height:360px;overflow-y:auto;padding:.25rem;border:1px solid rgba(255,255,255,.08);border-radius:8px;background:#0000002e}.cp-pack-section{display:flex;flex-direction:column;border-radius:6px;background:#ffffff08}.cp-pack-section-head{display:flex;justify-content:space-between;align-items:center;gap:.5rem;padding:.25rem .4rem}.cp-pack-toggle{flex:1;display:flex;align-items:center;gap:.5rem;background:transparent;border:none;color:inherit;font:inherit;text-align:left;padding:.4rem .5rem;cursor:pointer;border-radius:4px}.cp-pack-toggle:hover:not([disabled]){background:#ffffff0a}.cp-pack-toggle[disabled]{cursor:default}.cp-pack-chevron{width:1em;color:var(--text-muted, #aaa)}.cp-pack-section-title{font-weight:600;flex:1}.cp-pack-section-count{font-size:.8rem;color:var(--text-muted, #aaa);font-variant-numeric:tabular-nums}.cp-pack-all{background:transparent;border:1px solid rgba(255,255,255,.15);color:var(--text-muted, #aaa);padding:.25rem .6rem;border-radius:4px;font-size:.75rem;cursor:pointer}.cp-pack-all:hover{color:var(--text, #eee);border-color:#ffffff59}.cp-pack-list{list-style:none;padding:0 0 .25rem;margin:0;display:flex;flex-direction:column;gap:2px}.cp-pack-toggle-row{display:grid;grid-template-columns:auto 1fr auto;gap:.7rem;align-items:center;width:100%;padding:.4rem .9rem .4rem 1.6rem;background:transparent;border:1px solid transparent;border-radius:6px;color:inherit;font:inherit;font-size:.9rem;text-align:left;cursor:pointer;transition:background .12s ease,border-color .12s ease}.cp-pack-toggle-row:hover:not(:disabled){background:#ffffff0a}.cp-pack-toggle-row:disabled{cursor:default}.cp-pack-name{font-weight:500}.cp-pack-counts{font-size:.8rem;color:var(--muted, #aaa);font-variant-numeric:tabular-nums}.cp-lobby-totals{margin:0;font-size:.9rem;color:var(--text-muted, #aaa)}.cp-warn{color:#e0a878;margin-left:.25rem}.cp-scoring-options{display:flex;flex-direction:column;gap:.35rem}.cp-scoring-opt{display:grid;grid-template-columns:auto auto 1fr;gap:.5rem;align-items:baseline;padding:.5rem .75rem;background:#ffffff0a;border:1px solid transparent;border-radius:8px;cursor:pointer}.cp-scoring-opt.readonly{cursor:default}.cp-scoring-opt.selected{border-color:#f5d06199;background:#f5d0611f}.cp-scoring-label{font-weight:600}.cp-scoring-hint{color:var(--text-muted, #aaa);font-size:.85rem}.cp-custom-btn{align-self:flex-start}.cp-custom-form{margin-top:.5rem;display:flex;flex-direction:column;gap:.5rem;padding:.75rem;background:#0000002e;border:1px solid rgba(255,255,255,.06);border-radius:8px}.cp-custom-row{display:flex;gap:1rem}.cp-custom-field{display:flex;flex-direction:column;gap:.25rem}.cp-custom-field span{font-size:.85rem;color:var(--text-muted, #aaa)}.cp-custom-field textarea,.cp-custom-field input[type=text],.cp-custom-field select{width:100%;padding:.5rem .65rem;background:#0000004d;color:var(--text, #eee);border:1px solid rgba(255,255,255,.1);border-radius:6px;font:inherit}.cp-custom-error{color:#e07878;margin:0}.cp-custom-recent{margin-top:.5rem}.cp-custom-recent-label{font-size:.8rem;color:var(--text-muted, #aaa);margin:0 0 .25rem}.cp-custom-recent ul{list-style:none;padding:0;margin:0;display:flex;flex-direction:column;gap:.2rem;font-size:.85rem}.cp-custom-recent li{display:flex;gap:.5rem;align-items:baseline}.cp-custom-tag{display:inline-block;font-size:.65rem;text-transform:uppercase;letter-spacing:.08em;padding:.1rem .4rem;border-radius:4px}.cp-custom-tag-prompt{background:#111;color:#f4f1ea}.cp-custom-tag-response{background:#f4f1ea;color:#141414}@media (max-width: 720px){.cp-card-lg{width:200px;min-height:280px;font-size:1.1rem}.cp-card-md{width:160px;min-height:220px;font-size:.95rem}.cp-card-sm{width:130px;min-height:180px;font-size:.85rem}.cp-hand,.cp-submissions{gap:.6rem}.cp-header{flex-direction:column}.cp-scoreboard-compact{justify-content:flex-start}}.screen.game.em{gap:1rem;padding-bottom:3rem;border-radius:var(--radius-lg);transition:background .35s ease}.screen.game.em.my-turn{padding:12px;border-radius:var(--radius-lg);background:radial-gradient(ellipse at 50% 40%,rgba(124,108,255,.22),transparent 65%);animation:em-turn-pulse 1.8s ease-in-out infinite}@keyframes em-turn-pulse{0%,to{box-shadow:inset 0 0 0 2px #7c6cff00}50%{box-shadow:inset 0 0 0 2px #7c6cff73}}.em-board-stage{position:relative}.em-peek-overlay{position:absolute;top:0;right:0;bottom:0;left:0;z-index:10;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:12px;background:#000000bf;border-radius:var(--radius);-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px)}.em-peek-overlay-text{font-size:1.2rem;font-weight:700;color:#fff;text-align:center;padding:0 16px}.em-peek-overlay-countdown{font-size:3.5rem;font-weight:900;color:var(--accent);line-height:1}.em-header{display:flex;flex-direction:column;gap:.75rem;align-items:stretch}.em-turn-banner{width:100%;max-width:var(--em-board-max, 560px);margin:1rem auto 0;text-align:center;padding:.75rem 1.25rem;border-radius:var(--radius);background:var(--bg-elev-2);border:1px solid var(--border);font-weight:600;font-size:1.1rem;color:var(--muted);transition:background .2s ease,color .2s ease,border-color .2s ease}.em-turn-banner.is-mine{color:var(--text);border-color:var(--success);background:#3dd68c1f}.em-scorepanel{display:flex;flex-direction:column;gap:.5rem}.em-scorelist{list-style:none;margin:0;padding:0;display:flex;flex-wrap:wrap;gap:.5rem;justify-content:center}.em-scorerow{display:inline-flex;align-items:center;gap:.5rem;padding:.4rem .8rem;border-radius:999px;background:var(--bg-elev-2);border:1px solid var(--border);transition:transform .18s ease,border-color .18s ease,box-shadow .18s ease,background .18s ease}.em-scorerow .em-name{font-weight:500;font-size:.9rem;max-width:120px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.em-scorerow .em-score{font-variant-numeric:tabular-nums;font-weight:700;background:var(--bg);padding:2px 8px;border-radius:999px;min-width:24px;text-align:center}.em-scorerow.is-active{border-color:var(--warn);box-shadow:0 0 0 2px #f2b24b33;transform:translateY(-2px)}.em-scorerow.is-me{outline:1px solid var(--accent);outline-offset:1px}.em-scorerow.is-leader .em-score{background:#fdd83540;color:#fdd835}.em-scorerow.is-offline{opacity:.5}.em-pairs-left{margin:0;text-align:center;font-size:.85rem;color:var(--muted)}.em-board-stage{position:relative;width:100%;max-width:var(--em-board-max, 560px);margin:0 auto}.em-board{display:grid;gap:10px;width:100%}@media (max-width: 480px){.em-board-stage{max-width:100%}}.em-celebration-layer{position:absolute;top:0;right:0;bottom:0;left:0;pointer-events:none;overflow:visible;z-index:10}.em-celebration{position:absolute;bottom:30%;left:50%;transform:translate(-50%);line-height:1;filter:drop-shadow(0 4px 8px rgba(0,0,0,.35));animation-name:em-float-up;animation-timing-function:cubic-bezier(.22,.61,.36,1);animation-fill-mode:forwards;opacity:0}@keyframes em-float-up{0%{opacity:0;transform:translate(-50%) scale(.4) rotate(0)}20%{opacity:1;transform:translate(-50%,-20px) scale(1.1) rotate(0)}to{opacity:0;transform:translate(calc(-50% + var(--drift, 0px)),-260px) scale(.7) rotate(var(--rotate, 0deg))}}@media (max-width: 480px){.em-board{gap:6px}}.em-card{aspect-ratio:1;perspective:800px;-webkit-user-select:none;user-select:none;outline:none;container-type:inline-size}.em-card--clickable{cursor:pointer}.em-card--clickable:hover .em-card__inner{transform:rotateY(15deg)}.em-card--dim:not(.em-card--matched) .em-card__inner{opacity:.55;filter:saturate(.7)}.em-card__inner{position:relative;width:100%;height:100%;transform-style:preserve-3d;transition:transform .42s cubic-bezier(.32,.72,.24,1),opacity .2s ease,filter .2s ease;border-radius:14px}.em-card--flipped .em-card__inner,.em-card--matched .em-card__inner{transform:rotateY(180deg)}.em-card__front,.em-card__back{position:absolute;top:0;right:0;bottom:0;left:0;backface-visibility:hidden;-webkit-backface-visibility:hidden;border-radius:14px;display:flex;align-items:center;justify-content:center;border:1px solid transparent;line-height:1}.em-card__back{font-size:70cqw}.em-card__front{background:linear-gradient(135deg,#4f46e5,#7c3aed);color:#ffffffd9;font-weight:800;font-size:45cqw;border-color:#ffffff14;box-shadow:0 4px 14px #00000059,inset 0 0 0 4px #ffffff0f}.em-card__back{background:#f6f4ee;color:#141414;border-color:#0000001a;transform:rotateY(180deg);box-shadow:0 4px 14px #00000059}.em-card--matched .em-card__back{background:linear-gradient(135deg,#d8f4e2,#c3eed3);border-color:#86efac}.em-card--matched{cursor:default}.em-final{padding:2rem 1rem;display:flex;justify-content:center}.em-final-card{max-width:480px;width:100%;text-align:center}.em-final-title{margin:.25rem 0 1rem;font-size:2rem}.em-final-list{list-style:none;padding:0;margin:0 0 1rem;display:flex;flex-direction:column;gap:.4rem}.em-final-list li{display:flex;gap:.75rem;padding:.5rem .75rem;background:var(--bg-elev-2);border-radius:var(--radius);align-items:baseline;border:1px solid var(--border)}.em-final-list li.first{background:#fdd8352e;border-color:#fdd83566}.em-final-list .rank{width:1.5rem;opacity:.7}.em-final-list .name{flex:1;text-align:left;font-weight:600}.em-final-list .score{font-variant-numeric:tabular-nums;color:var(--accent);font-weight:600}.em-lobby-config{display:flex;flex-direction:column;gap:.75rem}.em-lobby-config h3{margin:.5rem 0 0;font-size:1rem;letter-spacing:.02em}.em-grid-label{display:block;font-weight:700;font-size:1rem;line-height:1.1}.em-grid-sub{display:block;font-size:.7rem;font-weight:500;color:var(--muted);margin-top:2px}.chip.selected .em-grid-sub{color:var(--text)}.em-set-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(120px,1fr));gap:8px}.em-set-tile{display:flex;flex-direction:column;align-items:center;gap:4px;padding:12px 8px;background:var(--bg-elev-2);border:1px solid var(--border);border-radius:var(--radius);cursor:pointer;transition:border-color .15s ease,background .15s ease,transform .15s ease}.em-set-tile:hover:not(:disabled){border-color:var(--accent);transform:translateY(-1px)}.em-set-tile.selected{background:var(--accent-soft);border-color:var(--accent)}.em-set-tile:disabled{cursor:default}.em-set-preview{font-size:1.5rem;letter-spacing:.05em;line-height:1}.em-set-name{font-size:.85rem;font-weight:500;color:var(--text)}.em-custom{display:flex;flex-direction:column;gap:.4rem;padding:.75rem;background:var(--bg-elev-2);border:1px solid var(--border);border-radius:var(--radius)}.em-custom-label{font-size:.85rem;color:var(--muted)}.em-custom-input{width:100%;resize:vertical;padding:8px 10px;background:var(--bg);color:var(--text);border:1px solid var(--border);border-radius:8px;font-family:inherit;font-size:1.1rem;letter-spacing:.05em}.em-custom-input:focus{outline:none;border-color:var(--accent);box-shadow:0 0 0 3px var(--accent-soft)}.em-custom-count{margin:0;font-size:.85rem}.em-custom-count.ok{color:var(--success)}.em-custom-count.short{color:var(--warn)}.d4{display:flex;flex-direction:column;gap:16px;align-items:stretch}.d4-header{display:flex;justify-content:space-between;align-items:flex-start;gap:16px}.d4-meta{font-size:.95rem;color:var(--muted)}.d4-chain-hit{color:var(--warn);font-weight:700;text-transform:uppercase;letter-spacing:.05em;font-size:.85rem}.d4-turn{font-size:.95rem;color:var(--muted)}.d4-turn-mine{font-weight:700;font-size:1.05rem}.d4-turn-timer{display:flex;align-items:center;gap:6px;margin-top:4px;justify-content:flex-end}.d4-turn-timer__bar{width:90px;height:6px;background:var(--bg-elev-2);border-radius:999px;border:1px solid var(--border);overflow:hidden}.d4-turn-timer__fill{height:100%;background:linear-gradient(90deg,var(--success),var(--accent));transition:width .25s linear}.d4-turn-timer.urgent .d4-turn-timer__fill{background:linear-gradient(90deg,var(--warn),var(--danger))}.d4-turn-timer__seconds{font-variant-numeric:tabular-nums;font-weight:700;color:var(--muted);min-width:2.5em;text-align:right}.d4-turn-timer.urgent .d4-turn-timer__seconds{color:var(--danger)}.d4-scores{display:flex;flex-wrap:wrap;gap:8px;justify-content:center}.d4-score{display:inline-flex;align-items:center;gap:8px;padding:8px 12px;background:var(--bg-elev-2);border:1px solid var(--border);border-radius:999px;font-size:.95rem;transition:transform .12s ease,border-color .12s ease}.d4-score--me{border-color:var(--accent)}.d4-score--turn{border-color:var(--warn);box-shadow:0 0 0 2px #f2b24b2e;transform:translateY(-2px)}.d4-score--winner{border-color:var(--success);background:#3dd68c1a}.d4-score__chip{width:14px;height:14px;border-radius:50%;border:2px solid rgba(255,255,255,.15);flex:0 0 auto}.d4-score__name{display:inline-flex;align-items:center;gap:6px;font-weight:500}.d4-score__points{font-variant-numeric:tabular-nums;font-weight:700}.d4-score__limit{color:var(--muted);font-weight:500}.d4-board{display:flex;flex-direction:column;align-items:center;gap:6px;margin:0 auto;width:100%}.d4-col-headers{display:grid;width:min(100%,560px);height:36px;gap:6px;padding:0 8px}.d4-col-drop{display:flex;align-items:center;justify-content:center;background:transparent;border:0;cursor:default;border-radius:6px;transition:background .12s ease;padding:0}.d4-col-drop--active{cursor:pointer}.d4-col-drop--active:hover{background:#ffffff14}.d4-col-drop--full{opacity:.3}.d4-col-drop__arrow{font-size:1.2rem;font-weight:900;line-height:1;filter:drop-shadow(0 1px 2px rgba(0,0,0,.4))}.d4-grid{display:grid;gap:6px;background:#1e3a5f;padding:8px;border-radius:14px;width:min(100%,560px);box-shadow:0 8px 24px #0006,inset 0 0 0 1px #ffffff0f}.d4-cell{aspect-ratio:1 / 1;border-radius:50%;background:#0f2744;display:flex;align-items:center;justify-content:center;overflow:hidden;box-shadow:inset 0 2px 6px #0009}.d4-cell__piece{width:86%;height:86%;border-radius:50%;background:transparent;box-shadow:inset 0 -3px 6px #0000004d,inset 0 3px 4px #ffffff26}.d4-cell--last-drop .d4-cell__piece{animation:d4-drop-in .32s cubic-bezier(.4,.7,.4,1.05)}@keyframes d4-drop-in{0%{transform:translateY(-650%);opacity:0}60%{transform:translateY(0);opacity:1}75%{transform:translateY(-12%)}to{transform:translateY(0)}}.d4-cell--pulse .d4-cell__piece{animation:d4-pulse .7s ease-in-out;box-shadow:0 0 0 3px #ffffffd9,0 0 24px 6px #ffffff80,inset 0 -3px 6px #0000004d;filter:brightness(1.4) saturate(1.3)}@keyframes d4-pulse{0%{transform:scale(1)}30%{transform:scale(1.2)}60%{transform:scale(1.1)}to{transform:scale(1.12)}}.d4-cell--fade .d4-cell__piece{animation:d4-fade .6s ease-in forwards}@keyframes d4-fade{0%{transform:scale(1.12);opacity:1;filter:brightness(1.4)}60%{transform:scale(.55);opacity:.7}to{transform:scale(0);opacity:0;filter:brightness(.6)}}.d4-cell--falling .d4-cell__piece{animation:d4-fall .6s cubic-bezier(.45,.05,.4,1.05) both}@keyframes d4-fall{0%{transform:translateY(var(--d4-fall-from, -100%))}60%{transform:translateY(0)}72%{transform:translateY(-7%)}to{transform:translateY(0)}}.d4-final{align-items:center;justify-content:center}.d4-final-card{text-align:center;max-width:480px;display:flex;flex-direction:column;gap:14px}.d4-final-title{margin:4px 0 0;font-size:2rem}.d4-final-list{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:6px;text-align:left}.d4-final-row{display:grid;grid-template-columns:28px 22px 1fr auto;align-items:center;gap:10px;padding:10px 14px;background:var(--bg-elev-2);border:1px solid var(--border);border-radius:var(--radius);font-size:.95rem}.d4-final-row.winner{border-color:var(--success);background:#3dd68c14}.d4-final-rank{font-weight:800;color:var(--muted);font-variant-numeric:tabular-nums}.d4-final-name{font-weight:600}.d4-final-points{font-variant-numeric:tabular-nums;font-weight:800}@media (max-width: 540px){.d4-grid,.d4-col-headers{width:100%}.d4-cell__piece{width:84%;height:84%}}:root{--bg: #0f1020;--bg-elev: #191a33;--bg-elev-2: #232448;--border: #2c2e5a;--text: #f1f2ff;--muted: #9497c7;--accent: #7c6cff;--accent-hover: #9485ff;--accent-soft: rgba(124, 108, 255, .16);--success: #3dd68c;--danger: #ff6b7a;--warn: #f2b24b;--radius: 14px;--radius-lg: 20px;--shadow: 0 10px 30px rgba(0, 0, 0, .35);font-family:system-ui,-apple-system,Segoe UI,Roboto,Inter,sans-serif}*{box-sizing:border-box}html,body,#root{margin:0;height:100%;background:var(--bg);color:var(--text)}body{background:radial-gradient(1200px 600px at 20% -10%,rgba(124,108,255,.18),transparent 60%),radial-gradient(900px 500px at 100% 120%,rgba(61,214,140,.12),transparent 60%),var(--bg)}.app{min-height:100%;display:flex;flex-direction:column;padding:24px 16px 48px;gap:16px}.screen{max-width:720px;margin:0 auto;width:100%;display:flex;flex-direction:column;gap:16px}.card{background:var(--bg-elev);border:1px solid var(--border);border-radius:var(--radius-lg);padding:24px;box-shadow:var(--shadow)}.card h1,.card h2{margin:0 0 8px}.card h2{font-size:1.05rem;letter-spacing:.04em;text-transform:uppercase;color:var(--muted)}.card h1{font-size:1.8rem}.subtitle{color:var(--muted);margin:0 0 20px}.join-screen{max-width:440px;margin-top:8vh}.tabs{display:flex;gap:8px;margin-bottom:20px}.tab{flex:1;padding:10px 12px;border-radius:var(--radius);background:var(--bg-elev-2);color:var(--muted);border:1px solid var(--border);cursor:pointer;font-weight:500}.tab.active{background:var(--accent-soft);color:var(--text);border-color:var(--accent)}.tab:disabled{opacity:.4;cursor:not-allowed}label{display:block;color:var(--muted);font-size:.85rem;margin-bottom:14px}input[type=text]{display:block;width:100%;margin-top:6px;padding:12px 14px;background:var(--bg-elev-2);border:1px solid var(--border);border-radius:var(--radius);color:var(--text);font-size:1rem;font-family:inherit}input[type=text]:focus{outline:none;border-color:var(--accent);box-shadow:0 0 0 3px var(--accent-soft)}button{font-family:inherit;font-size:1rem;cursor:pointer}button.primary{width:100%;padding:14px 18px;background:var(--accent);color:#fff;border:none;border-radius:var(--radius);font-weight:600;transition:background .15s ease,transform .1s ease}button.primary:hover:not(:disabled){background:var(--accent-hover)}button.primary:disabled{background:var(--bg-elev-2);color:var(--muted);cursor:not-allowed}button.primary.active{background:var(--success)}button.ghost{padding:12px 16px;background:transparent;color:var(--text);border:1px solid var(--border);border-radius:var(--radius);font-weight:500}button.ghost:hover{background:var(--bg-elev-2)}button.ghost.active{border-color:var(--warn);color:var(--warn)}button.link{background:transparent;border:none;color:var(--muted);text-decoration:underline;padding:6px 0}.lobby-header{display:flex;align-items:center;justify-content:space-between;padding:0 8px}.label{font-size:.75rem;text-transform:uppercase;letter-spacing:.1em;color:var(--muted)}.room-code{font-size:2rem;font-weight:700;letter-spacing:.15em}.player-list{list-style:none;padding:0;margin:0;display:flex;flex-direction:column;gap:8px}.player-list li{display:flex;align-items:center;justify-content:space-between;padding:12px 14px;background:var(--bg-elev-2);border:1px solid var(--border);border-radius:var(--radius)}.player-list li.disconnected{opacity:.5}.player-name{font-weight:500;display:flex;align-items:center;gap:8px}.badge{font-size:.65rem;padding:2px 6px;border-radius:999px;background:var(--accent);color:#fff;font-weight:700;letter-spacing:.05em}.badge.you{background:var(--bg);color:var(--muted);border:1px solid var(--border)}.status{font-size:.8rem;color:var(--muted)}.status-joined{color:var(--success)}.status-skipped{color:var(--warn)}.game-picker{display:grid;grid-template-columns:repeat(auto-fill,minmax(160px,1fr));gap:10px;margin-bottom:16px}.game-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(220px,1fr));gap:14px}.game-tile{--game-accent: var(--accent);display:flex;flex-direction:column;padding:0;background:var(--bg-elev-2);border:1px solid var(--border);border-radius:var(--radius);overflow:hidden;text-align:left;color:inherit;font:inherit;transition:transform .12s ease,border-color .15s ease,box-shadow .15s ease}.game-tile.clickable{cursor:pointer}.game-tile.clickable:hover{transform:translateY(-2px);border-color:var(--game-accent);box-shadow:0 8px 22px #0000004d}.game-tile.selected{border-color:var(--accent);box-shadow:0 0 0 2px var(--accent-soft)}.game-tile.disabled{opacity:.6;cursor:not-allowed}.game-tile-thumb{aspect-ratio:16 / 9;position:relative;overflow:hidden;background:var(--bg-elev)}.game-tile-thumb img{width:100%;height:100%;object-fit:cover;display:block}.game-tile-placeholder{position:absolute;top:0;right:0;bottom:0;left:0;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,color-mix(in srgb,var(--game-accent) 50%,var(--bg-elev)),color-mix(in srgb,var(--game-accent) 20%,var(--bg-elev)));color:#ffffffd9;font-weight:800;font-size:2.5rem;letter-spacing:.05em;text-shadow:0 2px 10px rgba(0,0,0,.4)}.game-tile-body{padding:12px 14px 14px}.game-tile-name{font-weight:600;font-size:1rem;margin-bottom:2px}.game-tile-tagline{font-size:.8rem;color:var(--muted);line-height:1.3}.game-tile-meta{font-size:.75rem;color:var(--muted);opacity:.7}.game-tile-hero{border:none;background:transparent;border-radius:var(--radius);margin-bottom:4px}.game-tile-hero .game-tile-thumb{border-radius:var(--radius)}.game-option{padding:16px;background:var(--bg-elev-2);border:1px solid var(--border);border-radius:var(--radius);color:var(--text);text-align:left}.game-option.selected{border-color:var(--accent);background:var(--accent-soft)}.game-name{font-weight:600;margin-bottom:4px}.game-meta{font-size:.8rem;color:var(--muted)}.opt-in-row{display:flex;gap:10px;margin-top:16px}.opt-in-row button{flex:1}.start-button{margin-top:16px}.game-settings-button{margin-top:14px;width:100%;display:flex;align-items:center;justify-content:center;gap:6px}.join-rooms{margin-top:16px}.join-rooms h2{margin:0 0 12px}.join-room-list{list-style:none;padding:0;margin:0;display:flex;flex-direction:column;gap:8px}.join-room-row{width:100%;display:grid;grid-template-columns:auto 1fr auto;gap:12px;align-items:center;padding:12px 14px;background:var(--bg-elev-2);border:1px solid var(--border);border-radius:var(--radius);color:var(--text);text-align:left;cursor:pointer;transition:border-color .15s ease,background .15s ease,transform .1s ease}.join-room-row:hover{border-color:var(--accent);background:var(--accent-soft)}.join-room-row:active{transform:translateY(1px)}.join-room-code{font-weight:700;font-size:1.05rem;letter-spacing:.12em;font-variant-numeric:tabular-nums}.join-room-meta{display:flex;flex-direction:column;gap:2px;min-width:0}.join-room-host{font-weight:500;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.join-room-status{font-size:.8rem;color:var(--muted)}.join-room-count{font-size:.85rem;color:var(--muted);background:var(--bg);border:1px solid var(--border);border-radius:999px;padding:2px 10px;font-variant-numeric:tabular-nums}.game-in-progress{display:flex;flex-direction:column;gap:12px}.game-in-progress h2{margin:0}.game-in-progress-meta{font-size:.95rem;color:var(--text)}.game-in-progress-end{align-self:flex-start;margin-top:4px;border-color:var(--danger);color:var(--danger)}.game-in-progress-end:hover{background:#ff6b7a14}.player-chip-row{display:flex;gap:14px;justify-content:center;align-items:center;flex-wrap:wrap;padding:20px 8px 8px}.player-chip-wrap{display:flex;flex-direction:column;align-items:center;gap:4px}.player-chip-score{display:inline-flex;align-items:center;justify-content:center;min-width:32px;padding:3px 10px;border-radius:999px;background:var(--bg-elev-2);border:1px solid var(--border);font-size:.95rem;font-weight:800;color:var(--text);font-variant-numeric:tabular-nums;line-height:1}.player-chip-wrap:has(.player-chip.leader) .player-chip-score{background:#fdd8352e;border-color:#fdd83580;color:#fdd835}.player-chip{display:flex;flex-direction:column;align-items:center;gap:4px;padding:8px 10px;min-width:76px;background:var(--bg-elev-2);border:1px solid var(--border);border-radius:16px;transition:all .25s ease}.player-chip.me{border-color:var(--accent);background:var(--accent-soft)}.player-chip.disconnected{opacity:.45}.player-chip.dim{opacity:.6}.player-chip.active{border-color:var(--warn);box-shadow:0 0 0 2px #f2b24b40,0 8px 18px #f2b24b59;transform:translateY(-3px) scale(1.03)}.player-chip.leader .player-chip-score{color:#fdd835}.player-chip-name{display:flex;align-items:center;gap:4px;font-size:.85rem;font-weight:500;max-width:100px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.player-chip-color{display:inline-block;width:10px;height:10px;border-radius:50%;flex-shrink:0}.player-chip-sublabel{font-size:.7rem;color:var(--muted);letter-spacing:.04em;text-transform:uppercase;font-weight:600;line-height:1.1}.player-chip-sublabel.ready{color:var(--success)}.player-chip-sublabel.skipped{color:var(--warn)}.player-chip-sublabel.host{color:var(--accent)}.player-chip-avatar{position:relative;display:inline-block;line-height:0}.player-chip-badge{position:absolute;bottom:-4px;right:-4px;display:inline-flex;align-items:center;justify-content:center;pointer-events:none}.player-chip-badge>span{min-width:20px;height:20px;padding:0 4px;border-radius:999px;color:#fff;font-size:.8rem;font-weight:900;line-height:20px;text-align:center;box-shadow:0 0 0 2px var(--bg),0 2px 6px #0006;background:var(--accent)}.trivia-badge.check{background:var(--success)}.trivia-badge.wrong{background:var(--danger)}@media (max-width: 520px){.player-chip-row{gap:8px}.player-chip{min-width:64px;padding:6px 8px}.player-chip-name{font-size:.75rem;max-width:72px}}.podium{display:flex;flex-direction:column;align-items:center;gap:14px;padding:0 8px 16px;max-width:400px;margin:0 auto 24px}.podium-col{width:100%;display:flex;flex-direction:row;align-items:center;gap:12px;padding:12px 16px;border-radius:var(--radius);background:var(--bg-elev-2);border:1px solid var(--border);animation:podium-rise .55s cubic-bezier(.34,1.56,.64,1) both}.podium-col.rank-1{animation-delay:.35s}.podium-col.rank-2{animation-delay:.1s}.podium-col.rank-3{animation-delay:.55s}.podium-col.empty{opacity:.35}.podium-meta{display:flex;flex-direction:row;align-items:center;gap:10px;flex:1}.podium-medal{font-size:1.8rem;line-height:1;flex-shrink:0}.podium-name{font-weight:700;font-size:1rem;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.podium-points{font-size:.9rem;color:var(--accent);font-weight:600;font-variant-numeric:tabular-nums;margin-left:auto;flex-shrink:0}.podium-block{display:none;border-bottom:none}.podium-col.rank-1{border-color:#fdd835;background:linear-gradient(90deg,rgba(253,216,53,.15) 0%,var(--bg-elev-2) 100%)}.podium-col.rank-2{border-color:#b4b4c880}.podium-col.rank-3{border-color:#cd7f328c}.podium-rank{display:none}@keyframes podium-rise{0%{opacity:0;transform:translateY(60px)}to{opacity:1;transform:translateY(0)}}.podium-rest{list-style:none;max-width:420px;margin:0 auto 20px;padding:0;display:flex;flex-direction:column;gap:6px}.podium-rest li{display:grid;grid-template-columns:32px auto 1fr auto;align-items:center;gap:10px;padding:8px 14px;background:var(--bg-elev-2);border:1px solid var(--border);border-radius:var(--radius);font-size:.9rem}.podium-rest li.winner{border-color:#fdd83566}.podium-rest .rank{font-weight:700;color:var(--muted)}.podium-rest .name{font-weight:500}.podium-rest .score{color:var(--accent);font-weight:600}.phase-timer{width:100%;max-width:320px;display:flex;flex-direction:column;gap:4px;margin:4px auto 0}.phase-timer-track{position:relative;height:4px;border-radius:99px;background:#ffffff0f;overflow:hidden}.phase-timer-fill{position:absolute;top:0;right:0;bottom:0;left:0;background:#ffffff59;border-radius:99px;width:100%}.phase-timer.urgent .phase-timer-fill{background:var(--danger)}.phase-timer-meta{display:flex;justify-content:space-between;font-size:.8rem;color:var(--muted);font-variant-numeric:tabular-nums}.phase-timer.urgent .phase-timer-seconds{color:var(--danger);font-weight:600}.chip-row{display:flex;flex-wrap:wrap;gap:8px}.chip{padding:8px 14px;background:var(--bg-elev-2);color:var(--text);border:1px solid var(--border);border-radius:999px;font:inherit;font-size:.9rem;font-weight:500;cursor:pointer;transition:border-color .15s ease,background .15s ease,color .15s ease}.chip:hover:not(:disabled){border-color:var(--accent)}.chip.selected{background:var(--accent-soft);border-color:var(--accent);color:var(--text)}.chip:disabled{opacity:.4;cursor:not-allowed}.toggle-row{width:100%}.cg-overlay{position:fixed;top:0;right:0;bottom:0;left:0;background:#0009;display:flex;align-items:center;justify-content:center;z-index:200;padding:16px}.cg-modal{background:var(--bg-elev);border:1px solid var(--border);border-radius:var(--radius-lg);padding:24px;max-width:420px;width:100%;box-shadow:var(--shadow);text-align:center}.setup-modal{max-width:640px;text-align:left;position:relative;max-height:90vh;overflow-y:auto;padding:20px}.setup-close{position:absolute;top:8px;right:8px;width:32px;height:32px;border-radius:999px;border:none;background:transparent;color:var(--muted);font-size:1.1rem;cursor:pointer;z-index:1}.setup-close:hover{color:var(--text);background:#ffffff0f}.setup-header{padding:12px 4px 4px}.setup-header h2{margin:0 0 4px;font-size:1.4rem;text-transform:none;letter-spacing:normal;color:var(--text)}.setup-invite{margin:0 0 4px;font-size:.9rem;color:var(--accent);font-weight:600}.setup-tagline{margin:0 0 6px;color:var(--muted);font-size:.95rem;line-height:1.4}.setup-players{margin:0;font-size:.85rem;color:var(--muted)}.setup-body{margin:16px 0}.setup-section h3{margin:0 0 8px;font-size:.95rem;letter-spacing:.04em;text-transform:uppercase;color:var(--muted)}.setup-section+.setup-section{margin-top:18px}.setup-rules{list-style:none;padding:0;margin:0;display:flex;flex-direction:column;gap:8px}.setup-rules li{position:relative;padding:8px 12px 8px 28px;background:var(--bg-elev-2);border:1px solid var(--border);border-radius:var(--radius);line-height:1.45}.setup-rules li:before{content:"";position:absolute;left:12px;top:14px;width:6px;height:6px;border-radius:999px;background:var(--accent)}.setup-primary{margin-top:8px;width:100%}.primary.go:not(:disabled){background:var(--success)}.primary.go:not(:disabled):hover{background:color-mix(in srgb,var(--success) 88%,white)}.setup-joined-state{display:flex;flex-direction:column;align-items:stretch;gap:10px;margin-top:8px}.setup-joined-badge{display:inline-flex;align-items:center;justify-content:center;gap:10px;padding:14px 18px;background:#000;color:#fff;border-radius:var(--radius);font-weight:700;font-size:1rem;letter-spacing:.04em}.setup-joined-check{display:inline-flex;align-items:center;justify-content:center;width:22px;height:22px;border-radius:999px;background:var(--success);color:#000;font-weight:900;font-size:.85rem}.setup-leave{align-self:center;min-width:120px}.setup-waiting-msg{margin:0;text-align:center}.setup-joined{list-style:none;padding:0;margin:0;display:flex;flex-direction:column;gap:6px}.setup-joined li{display:grid;grid-template-columns:24px 1fr auto;gap:10px;align-items:center;padding:8px 12px;background:var(--bg-elev-2);border:1px solid var(--border);border-radius:var(--radius)}.setup-joined li.status-joined{border-color:#3dd68c66;background:#3dd68c14}.setup-joined li.status-skipped{opacity:.6}.setup-joined-dot{width:22px;height:22px;border-radius:999px;background:var(--bg);border:1px solid var(--border);display:inline-flex;align-items:center;justify-content:center;font-size:.85rem;color:var(--muted)}.setup-joined li.status-joined .setup-joined-dot{background:var(--success);border-color:var(--success);color:#fff}.setup-joined-name{display:flex;align-items:center;gap:8px;font-weight:500}.setup-joined-status{font-size:.85rem;color:var(--muted)}.confirm-dialog{max-width:420px}.confirm-dialog h2{margin:0 0 10px;text-align:center}.confirm-message{color:var(--muted);margin:0 0 18px;line-height:1.45;text-align:center}.confirm-actions{display:flex;gap:10px;justify-content:flex-end}.confirm-actions button{flex:1}.cg-overlay .cg-modal .primary.danger{background:var(--danger)}.cg-overlay .cg-modal .primary.danger:hover:not(:disabled){filter:brightness(1.1)}.leaderboard-list{list-style:none;padding:0;margin:0;display:flex;flex-direction:column;gap:6px}.leaderboard-list li{display:grid;grid-template-columns:32px 1fr auto;align-items:center;padding:10px 14px;background:var(--bg-elev-2);border:1px solid var(--border);border-radius:var(--radius)}.leaderboard-list .rank{font-weight:700;color:var(--muted)}.leaderboard-list .name{font-weight:500}.leaderboard-list .points{font-variant-numeric:tabular-nums;font-weight:600;color:var(--accent)}.muted{color:var(--muted)}.muted.small{font-size:.75rem;margin-top:12px}.game-header{padding:0 8px 8px}.round-title{font-size:1.4rem;font-weight:700}.number-grid{display:grid;grid-template-columns:repeat(5,1fr);gap:10px;margin:18px 0}@media (max-width: 480px){.number-grid{grid-template-columns:repeat(3,1fr)}}.number-tile{aspect-ratio:1;font-size:2rem;font-weight:700;background:var(--bg-elev-2);color:var(--text);border:1px solid var(--border);border-radius:var(--radius);transition:transform .08s ease,border-color .15s ease,background .15s ease}.number-tile:hover{border-color:var(--accent);background:var(--accent-soft);transform:translateY(-2px)}.number-tile:active{transform:translateY(0)}.progress{color:var(--muted);text-align:center;margin-top:8px;font-size:.9rem}.reveal-card{padding:32px;text-align:center}.reveal-headline{margin-bottom:20px}.big-number{font-size:5rem;font-weight:800;line-height:1;color:var(--accent);margin:6px 0}.reveal-list{list-style:none;padding:0;margin:18px 0;display:flex;flex-direction:column;gap:6px}.reveal-list li{display:grid;grid-template-columns:1fr auto auto;gap:12px;align-items:center;padding:10px 14px;background:var(--bg-elev-2);border:1px solid var(--border);border-radius:var(--radius);text-align:left}.reveal-list li.hit{border-color:var(--success);background:#3dd68c1f}.reveal-list .guess{color:var(--muted)}.reveal-list .points{font-weight:600;color:var(--accent)}.reveal-list li.miss .points{color:var(--muted)}.reveal-gameover{font-size:1.1rem;margin:16px 0;color:var(--success);font-weight:600}.toast{position:fixed;top:16px;left:50%;transform:translate(-50%);padding:10px 16px;border-radius:var(--radius);background:var(--bg-elev);border:1px solid var(--border);box-shadow:var(--shadow);z-index:100;font-size:.9rem}.toast.error{border-color:var(--danger);color:var(--danger)}.toast.warn{border-color:var(--warn);color:var(--warn)}.app-footer{margin:auto auto 0;text-align:center;display:flex;justify-content:center;align-items:center;gap:6px;flex-wrap:wrap}.app-footer-sep{color:var(--muted)}.spectator-banner{text-align:center;padding:6px 12px;font-size:.8rem;font-weight:600;text-transform:uppercase;letter-spacing:.05em;color:var(--muted);opacity:.8}.spectator-view{pointer-events:none}.spectator-view .spectator-banner{pointer-events:auto}button.link.danger{color:var(--danger)}.change-name-field{display:flex;flex-direction:column;gap:6px;margin:12px 0 16px}.change-name-field input{padding:12px 14px;border-radius:var(--radius);border:1px solid var(--border);background:var(--bg-elev-2);color:var(--text);font-size:1rem;font-family:inherit}.change-name-field input:focus{border-color:var(--accent);outline:none}.error{color:var(--danger);background:#ff6b7a1a;border:1px solid var(--danger);padding:10px 12px;border-radius:var(--radius);margin-bottom:12px;font-size:.9rem}.house-rules{max-width:520px;text-align:left}.house-rules h2{text-align:center;margin:0 0 4px}.house-rules .muted.small{text-align:center;margin:0 0 14px}.rules-list{list-style:none;padding:0;margin:16px 0 20px;display:flex;flex-direction:column;gap:10px}.rule-toggle{width:100%;display:flex;align-items:flex-start;gap:14px;padding:12px 14px;background:var(--bg-elev-2);border:1px solid var(--border);border-radius:var(--radius);color:var(--text);cursor:pointer;text-align:left;transition:background .15s ease,border-color .15s ease}.rule-toggle:hover:not(:disabled){border-color:var(--accent)}.rule-toggle:disabled{cursor:not-allowed;opacity:.8}.rule-body{display:flex;flex-direction:column;gap:4px;flex:1}.rule-label{font-weight:600;font-size:.98rem}.rule-hint{color:var(--muted);font-size:.82rem;line-height:1.4}.switch{flex-shrink:0;width:38px;height:22px;border-radius:999px;background:var(--bg);border:1px solid var(--border);position:relative;transition:background .18s ease,border-color .18s ease;margin-top:2px}.switch .knob{position:absolute;top:2px;left:2px;width:16px;height:16px;border-radius:999px;background:var(--muted);transition:transform .18s ease,background .18s ease}.rule.on .switch,.on>.switch,[aria-checked=true]>.switch{background:var(--accent);border-color:var(--accent)}.rule.on .switch .knob,.on>.switch .knob,[aria-checked=true]>.switch .knob{transform:translate(16px);background:#fff}.rule-numeric{margin-top:14px;padding:12px 14px;background:var(--bg-elev-2);border:1px solid var(--border);border-radius:var(--radius)}.rule-numeric.disabled{opacity:.55}.rule-numeric-head{display:flex;flex-direction:column;gap:4px;margin-bottom:10px}.rule-pill-row{display:flex;gap:6px;flex-wrap:wrap}.rule-pill{flex:1 1 auto;min-width:54px;padding:6px 12px;border-radius:999px;border:1px solid var(--border);background:var(--bg);color:var(--muted);font-weight:600;font-size:.85rem;cursor:pointer;transition:background .15s ease,color .15s ease,border-color .15s ease}.rule-pill:hover:not(:disabled):not(.active){color:var(--text);border-color:var(--accent)}.rule-pill.active{background:var(--accent);color:#fff;border-color:var(--accent)}.rule-pill:disabled{cursor:not-allowed;opacity:.6}
