:root{--bg:#14121a;--panel:#1e1b28;--border:#322d40;--text:#f2f0f7;--text-dim:#a89fc0;--accent:#8b5cf6;--accent-hover:#7c3aed;--eliminated:#2a2733;--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark}*{box-sizing:border-box}.sound-toggle{background:var(--panel);border:1px solid var(--border);width:40px;height:40px;color:var(--text);cursor:pointer;z-index:60;border-radius:50%;justify-content:center;align-items:center;font-size:1.1rem;transition:border-color .15s;display:flex;position:fixed;top:1rem;right:1rem}.sound-toggle:hover{border-color:var(--accent)}body{background:var(--bg);min-height:100vh;color:var(--text);margin:0;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;transition:background .6s}body[data-turn=red]{background:radial-gradient(circle at 50% -10%, #f8717138, transparent 60%), var(--bg)}body[data-turn=blue]{background:radial-gradient(circle at 50% -10%, #60a5fa38, transparent 60%), var(--bg)}body[data-turn=red] .questions,body[data-turn=red] .board,body[data-turn=red] .cat-btn,body[data-turn=red] .category-modal,body[data-turn=red] .value-btn,body[data-turn=red] .card:not(.eliminated):not(.self-crossed):not(.picked){border-color:#f8717180}body[data-turn=blue] .questions,body[data-turn=blue] .board,body[data-turn=blue] .cat-btn,body[data-turn=blue] .category-modal,body[data-turn=blue] .value-btn,body[data-turn=blue] .card:not(.eliminated):not(.self-crossed):not(.picked){border-color:#60a5fa80}.game{max-width:960px;margin:0 auto;padding:2rem 1.25rem 4rem}header{text-align:center;margin-bottom:2rem}h1{margin:0 0 .5rem;font-size:2rem}.subtitle{color:var(--text-dim);margin:0 0 .75rem}.counter{color:var(--accent);margin:0;font-weight:600}h2{color:var(--text-dim);text-transform:uppercase;letter-spacing:.05em;margin:0 0 .75rem;font-size:1.1rem}.questions{background:var(--panel);border:1px solid var(--border);border-radius:12px;margin-bottom:2rem;padding:1.25rem}.category-grid{grid-template-columns:repeat(auto-fill,minmax(120px,1fr));gap:.6rem;display:grid}.cat-btn{background:var(--bg);border:1px solid var(--border);color:var(--text);cursor:pointer;border-radius:10px;flex-direction:column;align-items:center;gap:.3rem;padding:.75rem .5rem;font-size:.8rem;font-weight:600;transition:border-color .15s,transform .1s;display:flex}.cat-icon{font-size:1.5rem}.cat-btn:not(:disabled):hover{border-color:var(--accent);transform:translateY(-2px)}.cat-btn:disabled{opacity:.35;cursor:not-allowed}.cat-btn.cat-dead{opacity:.55;border-style:dashed}.cat-dead-badge{text-transform:none;letter-spacing:normal;color:var(--text-dim);text-align:center;font-size:.6rem;font-weight:500;line-height:1.1}.pack-picker{margin-bottom:1.5rem}.pack-grid{grid-template-columns:repeat(auto-fill,minmax(140px,1fr));gap:.6rem;display:grid}.pack-btn{background:var(--bg);border:1px solid var(--border);color:var(--text);cursor:pointer;border-radius:10px;flex-direction:column;align-items:center;gap:.3rem;padding:.75rem .5rem;font-size:.8rem;font-weight:600;transition:border-color .15s,transform .1s;display:flex}.pack-icon{font-size:1.5rem}.pack-btn:not(:disabled):hover{border-color:var(--accent);transform:translateY(-2px)}.pack-btn:disabled{cursor:not-allowed}.pack-btn.selected{border-color:var(--accent);background:#8b5cf626}.board{background:var(--panel);border:1px solid var(--border);border-radius:12px;margin-bottom:2rem;padding:1.25rem}.board .grid{grid-template-columns:repeat(auto-fill,minmax(130px,1fr));gap:.75rem;display:grid}.card{background:var(--panel);border:1px solid var(--border);cursor:default;color:var(--text);border-radius:10px;flex-direction:column;align-items:center;gap:.25rem;padding:.9rem .5rem;transition:border-color .15s,transform .1s;display:flex;position:relative}button.card:not(:disabled):not(.eliminated),.card.interactive:not(.eliminated){cursor:pointer}button.card:not(:disabled):not(.eliminated):hover,.card.interactive:not(.eliminated):hover{border-color:var(--accent);transform:translateY(-2px)}.avatar{border:1px solid #ffffff26;border-radius:50%;flex-shrink:0;width:64px;height:64px;margin-bottom:.15rem;overflow:hidden}.avatar svg{width:100%;height:100%;display:block}.card .name{text-align:center;font-size:.85rem;font-weight:600}.card .source{color:var(--text-dim);text-align:center;font-size:.7rem}.card.eliminated{opacity:.3;filter:grayscale();cursor:not-allowed}.restart{background:var(--accent);color:#fff;cursor:pointer;border:none;border-radius:999px;margin:2rem auto 0;padding:.75rem 1.5rem;font-size:1rem;font-weight:600;display:block}.restart:hover:not(:disabled){background:var(--accent-hover)}.restart:disabled{opacity:.5;cursor:not-allowed}.lobby{max-width:640px}.panel{background:var(--panel);border:1px solid var(--border);border-radius:12px;padding:1.5rem}.field{flex-direction:column;gap:.4rem;margin-bottom:1.5rem;display:flex}.field span{color:var(--text-dim);font-size:.85rem}.field input,.join-row input{background:var(--bg);border:1px solid var(--border);color:var(--text);border-radius:8px;padding:.6rem .8rem;font-size:1rem}.lobby-actions{flex-direction:column;gap:1rem;display:flex}.mode-buttons{gap:.5rem;display:flex}.mode-btn{background:var(--accent);color:#fff;cursor:pointer;border:none;border-radius:8px;flex:1;padding:.7rem 1rem;font-weight:600}.mode-btn:hover{background:var(--accent-hover)}.mode-btn.wide{width:100%}.divider{text-align:center;color:var(--text-dim);font-size:.85rem}.join-row{gap:.5rem;display:flex}.join-row input{text-transform:uppercase;flex:1}.error{color:#f87171;margin-top:1rem;font-weight:600}.room-code{justify-content:center;align-items:center;gap:.5rem;margin:0 0 .25rem;font-size:1.2rem;display:flex}.copy-btn{color:var(--accent);cursor:pointer;background:#8b5cf626;border:none;border-radius:50%;justify-content:center;align-items:center;width:28px;height:28px;font-size:.9rem;transition:background .15s;display:inline-flex}.copy-btn:hover{background:#8b5cf64d}.copy-btn.copied{background:#22c55e40}.share-link-btn{border:1px solid var(--accent);width:100%;color:var(--accent);cursor:pointer;background:0 0;border-radius:999px;margin:0 0 1.25rem;padding:.55rem 1rem;font-size:.85rem;font-weight:600;transition:background .15s,color .15s,border-color .15s;display:block}.share-link-btn:hover{background:#8b5cf626}.share-link-btn.copied{color:#22c55e;background:#22c55e1f;border-color:#22c55e}.hint{color:var(--text-dim);margin:0 0 1.25rem;font-size:.85rem}.hint.warning{color:#f87171;font-weight:600}.teams-preview{grid-template-columns:1fr 1fr;gap:1rem;margin-bottom:1.5rem;display:grid}.team-col ul{margin:0;padding:0;list-style:none}.team-col li{background:var(--bg);border:1px solid var(--border);border-radius:6px;margin-bottom:.4rem;padding:.4rem .6rem;font-size:.9rem}.team-col li.empty{color:var(--text-dim);font-style:italic}.team-col.team-red h2{color:#f87171}.team-col.team-blue h2{color:#60a5fa}.switch-btn{border:1px solid var(--border);width:100%;color:var(--text-dim);cursor:pointer;background:0 0;border-radius:6px;margin-top:.4rem;padding:.4rem .6rem;font-size:.8rem}.switch-btn:hover{border-color:var(--accent);color:var(--text)}.leave{color:var(--text-dim);border:1px solid var(--border);cursor:pointer;background:0 0;border-radius:999px;margin:1.5rem auto 0;padding:.5rem 1.25rem;display:block}.leave:hover{color:#f87171;border-color:#f87171}.teams-bar{gap:.75rem;margin-bottom:1.5rem;display:flex}.team-chip{background:var(--panel);border:1px solid var(--border);border-radius:8px;flex:1;padding:.6rem .9rem;font-size:.85rem}.team-chip.team-red{border-color:#f8717166}.team-chip.team-blue{border-color:#60a5fa66}.team-chip.active{border-color:var(--accent);box-shadow:0 0 0 1px var(--accent)}.log{flex-direction:column;gap:.35rem;margin-top:1rem;display:flex}.log-entry{color:var(--text-dim);font-size:.85rem}.log-entry strong{color:var(--text)}.answer-badge{margin-left:.2rem;font-weight:700}.answer-badge.answer-yes{color:#4ade80}.answer-badge.answer-no{color:#f87171}.card.picked{border-color:var(--accent);background:#8b5cf61f}.card.self-crossed{opacity:.55;border-width:2px;border-color:#f87171;box-shadow:0 0 0 1px #f871714d}.card.self-crossed .avatar{filter:grayscale(.5)}.risk-badge{color:#fff;border:2px solid var(--bg);background:#ef4444;border-radius:50%;justify-content:center;align-items:center;width:22px;height:22px;font-size:.7rem;font-weight:900;display:flex;position:absolute;top:-8px;right:-8px}.guess-btn{color:#08170d;cursor:pointer;background:#22c55e;border:none;border-radius:999px;width:100%;margin-top:1.5rem;padding:.9rem 1rem;font-size:1rem;font-weight:700;transition:background .15s,box-shadow .15s;display:block}.guess-btn:hover:not(:disabled){background:#16a34a}.guess-btn:disabled{opacity:.35;cursor:not-allowed;background:var(--border);color:var(--text-dim)}.guess-btn.highlight{animation:1.1s ease-in-out infinite guess-pulse}@keyframes guess-pulse{0%,to{box-shadow:0 0 #22c55e8c}50%{box-shadow:0 0 0 10px #22c55e00}}.category-modal{max-width:380px;position:relative}.modal-close{color:#f87171;cursor:pointer;background:#f8717126;border:none;border-radius:50%;width:28px;height:28px;font-size:.9rem;font-weight:700;position:absolute;top:.75rem;right:.75rem}.modal-close:hover{background:#f871714d}.value-grid{grid-template-columns:repeat(auto-fill,minmax(130px,1fr));gap:.6rem;margin-top:1rem;display:grid}.value-btn{background:var(--bg);border:1px solid var(--border);color:var(--text);cursor:pointer;border-radius:10px;flex-direction:column;align-items:center;gap:.4rem;padding:1rem .5rem;font-size:.8rem;font-weight:600;transition:border-color .15s,transform .1s;display:flex}.value-icon{font-size:1.75rem}.value-btn:hover{border-color:var(--accent);background:#8b5cf61a;transform:translateY(-2px)}.picked-badge{color:var(--accent);text-transform:uppercase;letter-spacing:.03em;font-size:.65rem;font-weight:700}.modal-backdrop{z-index:50;background:#08060eb8;justify-content:center;align-items:center;padding:1rem;display:flex;position:fixed;inset:0}.modal-card{background:var(--panel);border:1px solid var(--border);text-align:center;border-radius:16px;width:100%;max-width:420px;padding:2rem}.modal-card.team-red{box-shadow:0 0 0 1px #f8717166,0 20px 60px #f871711f}.modal-card.team-blue{box-shadow:0 0 0 1px #60a5fa66,0 20px 60px #60a5fa1f}.modal-emoji{margin-bottom:.5rem;font-size:3rem}.modal-card h2{color:var(--text);text-transform:none;letter-spacing:normal;margin:0 0 .4rem;font-size:1.5rem}.modal-sub{color:var(--text-dim);margin:0 0 1.5rem}.winner-banner{letter-spacing:.03em;border-radius:999px;margin-bottom:.75rem;padding:.4rem 1rem;font-size:1.1rem;font-weight:800;display:inline-block}.winner-banner.banner-red{color:#f87171;background:#f8717126}.winner-banner.banner-blue{color:#60a5fa;background:#60a5fa26}.reveal-portraits{grid-template-columns:1fr 1fr;gap:.75rem;margin-bottom:1.5rem;display:grid}.reveal-portrait-item{background:var(--bg);border:2px solid var(--border);border-radius:12px;flex-direction:column;align-items:center;gap:.35rem;padding:.9rem .5rem;display:flex}.reveal-portrait-item.frame-red{border-color:#f8717180}.reveal-portrait-item.frame-blue{border-color:#60a5fa80}.reveal-portrait-item .avatar.large{width:72px;height:72px}.reveal-name{font-size:.9rem;font-weight:700}.reveal-caption{color:var(--text-dim);font-size:.7rem}.modal-actions{flex-direction:column;gap:.5rem;display:flex}.modal-actions .restart,.modal-actions .share-link-btn,.modal-actions .leave{width:100%;margin:0}#auth-widget{z-index:60;position:fixed;top:1rem;left:1rem}.auth-unconfigured{color:var(--text-dim);background:var(--panel);border:1px solid var(--border);border-radius:999px;padding:.5rem .75rem;font-size:.75rem;display:inline-block}.auth-error{color:#f87171;max-width:220px;margin:.4rem 0 0;font-size:.7rem}.user-chip{align-items:center;gap:.4rem;display:flex}.friends-btn{background:var(--panel);border:1px solid var(--border);color:var(--text);cursor:pointer;border-radius:999px;padding:.5rem .9rem;font-size:.85rem;font-weight:600;transition:border-color .15s;position:relative}.friends-btn:hover{border-color:var(--accent)}.notif-badge{color:#2a0a0a;background:#f87171;border-radius:999px;justify-content:center;align-items:center;min-width:18px;height:18px;padding:0 4px;font-size:.65rem;font-weight:800;display:flex;position:absolute;top:-6px;right:-6px}.sign-out-btn{background:var(--panel);border:1px solid var(--border);width:32px;height:32px;color:var(--text-dim);cursor:pointer;border-radius:50%;transition:border-color .15s,color .15s}.sign-out-btn:hover{color:#f87171;border-color:#f87171}.friends-backdrop{z-index:70;background:#08060eb8;justify-content:center;align-items:flex-start;padding:5rem 1rem 1rem;display:flex;position:fixed;inset:0}.friends-panel{background:var(--panel);border:1px solid var(--border);text-align:left;border-radius:16px;width:100%;max-width:380px;max-height:80vh;padding:1.75rem;position:relative;overflow-y:auto}.friends-panel h2{text-align:center;margin:0 0 1rem}.friends-panel h3{text-transform:uppercase;letter-spacing:.04em;color:var(--text-dim);margin:1.25rem 0 .5rem;font-size:.8rem}.add-friend-row{gap:.5rem;display:flex}.add-friend-row input{background:var(--bg);border:1px solid var(--border);color:var(--text);border-radius:8px;flex:1;padding:.55rem .7rem;font-size:.85rem}.friend-row,.request-row,.invite-row{background:var(--bg);border:1px solid var(--border);border-radius:8px;align-items:center;gap:.5rem;margin-bottom:.4rem;padding:.5rem .6rem;font-size:.85rem;display:flex}.invite-row span:first-child,.request-row span,.friend-row span:nth-child(2){flex:1}.friend-status{font-size:.7rem}.friend-status.online{color:#22c55e}.friend-status.offline{color:var(--text-dim)}.request-actions,.invite-actions{gap:.4rem;display:flex}.request-accept-btn,.invite-accept-btn{color:#22c55e;cursor:pointer;background:#22c55e26;border:none;border-radius:6px;padding:.3rem .6rem;font-size:.8rem;font-weight:600}.request-decline-btn,.invite-decline-btn,.friend-remove-btn{color:#f87171;cursor:pointer;background:#f871711f;border:none;border-radius:6px;padding:.3rem .55rem;font-size:.8rem}.invite-friends{margin-bottom:1.5rem}.invite-friend-row{background:var(--bg);border:1px solid var(--border);border-radius:8px;align-items:center;gap:.5rem;margin-bottom:.4rem;padding:.5rem .6rem;font-size:.85rem;display:flex}.invite-friend-row span:nth-child(2){flex:1}.invite-friend-btn{color:var(--accent);cursor:pointer;background:#8b5cf626;border:none;border-radius:6px;padding:.3rem .7rem;font-size:.8rem;font-weight:600}.invite-friend-btn:hover:not(:disabled){background:#8b5cf64d}.invite-friend-btn:disabled{opacity:.6;cursor:default}
