.bp{margin-bottom:16px}.bp-header{align-items:center;gap:12px;display:flex}.bp-header h2{margin:0}.bp-stage{background:radial-gradient(circle at center, #241e19 0%, var(--bg) 70%);isolation:isolate;contain:paint;--arrow-offset:92px;border-radius:12px;height:560px;position:relative;overflow:hidden}.bp-arena{position:absolute;inset:0}.bp-ring{aspect-ratio:1;max-width:100%;height:100%;position:absolute;top:0;bottom:0;left:50%;transform:translate(-50%)}@media (width<=640px){.bp-stage{--arrow-offset:64px;height:420px}}.bp-player{text-align:center;flex-direction:column;align-items:center;gap:2px;width:96px;transition:transform .25s,opacity .4s,filter .4s;display:flex;position:absolute;transform:translate(-50%,-50%)}.bp-avatar{background:var(--card);border:2px solid var(--border);border-radius:50%;place-items:center;width:48px;height:48px;font-size:1.3rem;font-weight:700;transition:border-color .25s;display:grid;position:relative}.bp-avatar:after{content:"";box-shadow:0 0 22px var(--accent);opacity:0;pointer-events:none;border-radius:50%;transition:opacity .25s;position:absolute;inset:-2px}.bp-player.me .bp-avatar{border-color:var(--muted)}.bp-player.current{z-index:2;transform:translate(-50%,-50%)scale(1.15)}.bp-player.current .bp-avatar{border-color:var(--accent)}.bp-player.current .bp-avatar:after{animation:1s ease-in-out infinite alternate bp-glow}.bp-player.dead{opacity:.4;filter:grayscale()}.bp-name{text-overflow:ellipsis;white-space:nowrap;max-width:100%;font-size:.85rem;font-weight:600;overflow:hidden}.bp-lives{justify-content:center;gap:2px;display:flex}.bp-lives .heart{fill:#f43f5e;stroke:#f43f5e;stroke-width:1.5px;filter:drop-shadow(0 0 3px #f43f5e80);width:15px;height:15px;animation:.35s ease-out bp-pop}.bp-lives .heart.lost{fill:#0000;stroke:#ffffff8c;filter:none}.bp-flash{white-space:nowrap;pointer-events:none;border-radius:999px;padding:3px 8px;font-size:.85rem;font-weight:700;animation:1.5s ease-out forwards bp-float-up;position:absolute;bottom:100%;left:50%;transform:translate(-50%)}.bp-flash.accepted{background:var(--ok);color:#10301c}.bp-flash.life{color:#3b0a24;background:#f472b6}.bp-flash.exploded,.bp-flash.eliminated{background:var(--error);color:#3b0a0a}.bp-center{pointer-events:none;flex-direction:column;align-items:center;display:flex;position:absolute;top:50%;left:50%;transform:translate(-50%,-50%)}.bp-bomb{filter:drop-shadow(0 4px 10px #00000080);will-change:transform;font-size:4rem;line-height:1}.bp-bomb.ticking{animation:.5s ease-in-out infinite alternate bp-pulse}.bp-syllable{background:var(--text);color:var(--bg);letter-spacing:.08em;border-radius:10px;margin-top:6px;padding:4px 14px;font-size:1.6rem;font-weight:800;animation:.35s cubic-bezier(.34,1.56,.64,1) bp-pop-in}.bp-arrow{left:calc(50% + var(--arrow-offset));width:20px;height:4px;transform-origin:calc(-1 * var(--arrow-offset)) 50%;background:linear-gradient(90deg, transparent, var(--accent));will-change:transform;border-radius:2px;margin-top:-2px;transition:transform .35s cubic-bezier(.34,1.56,.64,1);position:absolute;top:32px}.bp-arrow:after{content:"";border-left:10px solid var(--accent);border-top:7px solid #0000;border-bottom:7px solid #0000;position:absolute;top:-5px;right:-8px}.bp-boom,.bp-countdown,.bp-go,.bp-finished{z-index:5}.bp-boom{pointer-events:none;opacity:0;font-size:6rem;position:absolute;top:50%;left:50%;transform:translate(-50%,-50%)}.bp-countdown,.bp-go{color:var(--accent);text-shadow:0 4px 20px #0009;pointer-events:none;place-items:center;font-weight:900;display:grid;position:absolute;inset:0}.bp-countdown{background:#0a090899;font-size:7rem;animation:1s ease-out forwards bp-zoom}.bp-go{font-size:3rem;animation:.9s ease-out forwards bp-go}.bp-finished{scrollbar-width:thin;background:#0a0908eb;flex-direction:column;justify-content:center;align-items:center;gap:8px;padding:12px;animation:.4s ease-out bp-fade-in;display:flex;position:absolute;inset:0;overflow:hidden auto}.bp-trophy{font-size:4.5rem;animation:.8s ease-in-out infinite alternate bp-bounce}.bp-winner{font-size:1.8rem;font-weight:800;animation:.5s cubic-bezier(.34,1.56,.64,1) bp-pop-in}.bp-scores{color:var(--muted);text-align:center;margin:0;padding:0;list-style:none}.end-actions{flex-direction:column;align-items:center;margin-top:8px;animation:.4s cubic-bezier(.34,1.56,.64,1) .3s both bp-pop-in;display:flex}.end-buttons{flex-wrap:wrap;justify-content:center;gap:10px;display:flex}.end-waiting{color:var(--muted);margin-top:8px;font-style:italic}.bp-typed{text-align:center;letter-spacing:.04em;overflow-wrap:anywhere;min-height:2.4rem;margin-top:12px;font-size:1.8rem;font-weight:700}.bp-typed mark{color:var(--accent);background:0 0}.bp-typed.reject{animation:.4s ease-out bp-reject}.bp-typed-empty{color:var(--border)}.bp-form input{text-align:center;font-size:1.1rem}.bp-form input:not([readonly]){border-color:var(--accent);box-shadow:0 0 0 3px rgba(var(--accent-rgb), .2)}.bp-form input[readonly]{opacity:.55;cursor:default}.bp-spectator{text-align:center}.bp-letters{flex-wrap:wrap;justify-content:center;gap:4px;margin-top:4px;display:flex}.bp-letters span{width:22px;height:22px;color:var(--muted);border:1px solid var(--border);border-radius:4px;place-items:center;font-size:.7rem;font-weight:700;transition:background .3s,color .3s;display:grid}.bp-letters span.used{background:var(--accent);border-color:var(--accent);color:var(--on-accent);animation:.3s ease-out bp-pop}@keyframes bp-pulse{0%{transform:scale(1)rotate(-4deg)}to{transform:scale(1.1)rotate(4deg)}}@keyframes bp-glow{0%{opacity:.4}to{opacity:1}}@keyframes bp-pop{0%{transform:scale(.4)}60%{transform:scale(1.35)}to{transform:scale(1)}}@keyframes bp-pop-in{0%{opacity:0;transform:scale(.3)}to{opacity:1;transform:scale(1)}}@keyframes bp-float-up{0%{opacity:0;transform:translate(-50%,6px)scale(.6)}15%{opacity:1;transform:translate(-50%)scale(1.1)}70%{opacity:1;transform:translate(-50%,-14px)scale(1)}to{opacity:0;transform:translate(-50%,-28px)scale(1)}}@keyframes bp-zoom{0%{opacity:0;transform:scale(1.8)}30%{opacity:1;transform:scale(1)}to{opacity:.9;transform:scale(.9)}}@keyframes bp-go{0%{opacity:0;transform:scale(.5)}30%{opacity:1;transform:scale(1.1)}to{opacity:0;transform:scale(1.4)}}@keyframes bp-reject{0%,to{color:var(--text);transform:translate(0)}20%{color:var(--error);transform:translate(-10px)}40%{color:var(--error);transform:translate(10px)}60%{color:var(--error);transform:translate(-6px)}80%{transform:translate(6px)}}@keyframes bp-bounce{0%{transform:translateY(0)rotate(-6deg)}to{transform:translateY(-12px)rotate(6deg)}}@keyframes bp-fade-in{0%{opacity:0}to{opacity:1}}@media (prefers-reduced-motion:reduce){.bp *{animation-duration:.01ms!important;animation-iteration-count:1!important}}.bp-avatar .avatar{width:100%;height:100%;box-shadow:none}.nc{--red:#f0506e;--red-dark:#7a1a32;--blue:#4f8df7;--blue-dark:#1c3a82;--neutral:#d9c9a3;--neutral-dark:#6e6347;--assassin:#0b0a10;--card-face:#f6e8d2;--card-band:#5b4330;--bounce:cubic-bezier(.34, 1.56, .64, 1);gap:14px;margin-bottom:16px}.nc-notice,.nc-error{text-align:center;margin:0}.nc-notice{animation:.4s ease-out nc-slide-in}.nc-status{text-align:center;flex-direction:column;justify-content:center;align-items:center;gap:6px;min-height:64px;display:flex}.nc-status-text{text-transform:uppercase;letter-spacing:.04em;animation:nc-slide-in .45s var(--bounce);font-size:clamp(1.1rem,2.4vw,1.6rem);font-weight:900}.nc-status-text.red{color:var(--red)}.nc-status-text.blue{color:var(--blue)}.nc-status-sub{color:var(--muted);animation:.45s ease-out .15s both nc-slide-in}.nc-clue{animation:nc-stamp .55s var(--bounce);border-radius:10px;flex-wrap:wrap;justify-content:center;align-items:center;gap:4px 0;display:flex;position:relative;overflow:hidden}.nc-clue:after{content:"";pointer-events:none;background:linear-gradient(100deg,#0000,#ffffff8c,#0000);width:40%;animation:.9s ease-out .5s both nc-shine;position:absolute;top:0;bottom:0;left:-60%;transform:skew(-20deg)}.nc-clue-word,.nc-clue-number{text-transform:uppercase;letter-spacing:.05em;padding:6px 16px;font-size:1.4rem;font-weight:900}.nc-clue-word{background:var(--card-face);color:#2a2418}.nc-clue.red .nc-clue-number{background:var(--red);color:#fff}.nc-clue.blue .nc-clue-number{background:var(--blue);color:#fff}.nc-clue small{width:100%;color:var(--muted);font-weight:600}.nc-timer{font-variant-numeric:tabular-nums;font-weight:700}.nc-timer.urgent{color:var(--error);animation:.5s ease-in-out infinite alternate nc-blink}.nc-layout{grid-template-columns:200px minmax(0,1fr) 200px;align-items:start;gap:16px;display:grid}.nc-center{flex-direction:column;gap:12px;min-width:0;display:flex}.nc-center>.nc-clue{animation:nc-stamp .55s var(--bounce) 1.7s both;align-self:center}.nc-panel{transition:transform .4s var(--bounce), filter .4s ease, opacity .4s ease;flex-direction:column;gap:10px;display:flex}.nc-panel.red{--team:var(--red);--team-dark:var(--red-dark);animation:nc-from-left .6s var(--bounce)}.nc-panel.blue{--team:var(--blue);--team-dark:var(--blue-dark);animation:nc-from-right .6s var(--bounce)}.nc-box{color:#fff;background:linear-gradient(160deg, var(--team) 0%, var(--team-dark) 100%);border-radius:14px;flex-direction:column;gap:6px;min-height:110px;padding:12px;transition:box-shadow .2s;display:flex;position:relative}.nc-box:after{content:"";border-radius:inherit;box-shadow:0 0 26px var(--team);opacity:0;pointer-events:none;transition:opacity .3s;position:absolute;inset:0}.nc-panel.active .nc-box:after{opacity:.6}.nc-panel.active{transform:scale(1.04)}.nc-panel.inactive{opacity:.85;transform:scale(.97)}.nc-box.mine{box-shadow:0 0 0 3px var(--bg), 0 0 0 6px var(--accent)}.nc-box h3{text-transform:uppercase;letter-spacing:.08em;opacity:.85;text-align:center;margin:0;font-size:.8rem}.nc-box ul{flex-direction:column;gap:6px;margin:0;padding:0;font-size:.95rem;font-weight:700;list-style:none;display:flex}.nc-player{background:#00000038;border-radius:999px;align-items:center;gap:10px;min-width:0;padding:4px 12px 4px 4px;display:flex}.nc-player.big{padding:5px 14px 5px 5px;font-size:1.1rem}.nc-player .avatar{box-shadow:0 0 0 2px #ffffffd9}.nc-player.me{background:#ffffff38}.nc-player-name{text-overflow:ellipsis;white-space:nowrap;min-width:0;overflow:hidden}.nc-box li{animation:nc-slide-in .35s var(--bounce)}.nc-empty{text-align:center;opacity:.7;font-style:italic;font-weight:400}.nc-join{color:#0a0908;transition:transform .15s var(--bounce);background:#fffffff2;margin-top:auto;padding:6px 10px;font-size:.85rem}.nc-join:hover:not(:disabled){background:#fff;transform:translateY(-2px)scale(1.03)}.nc-big-score{text-align:center;font-variant-numeric:tabular-nums;color:var(--team);font-size:3.2rem;font-weight:900;line-height:1}.nc-big-score span{animation:nc-bump .6s var(--bounce);display:inline-block}.nc-board-wrap{width:100%;max-width:max(640px,150vh - 345px);margin:0 auto;position:relative}.nc-board{grid-template-columns:repeat(5,minmax(0,1fr));gap:10px;display:grid}.nc-card{aspect-ratio:3/2;-webkit-user-select:none;user-select:none;perspective:900px;transform:perspective(700px) rotateX(var(--tilt-x,0deg)) rotateY(var(--tilt-y,0deg));transition:transform .2s ease-out;position:relative}.nc-card-inner{transform-style:preserve-3d;transition:transform .7s var(--bounce);position:absolute;inset:0}.nc-card.revealed .nc-card-inner{transition:none;transform:rotateY(180deg)}.nc-face{backface-visibility:hidden;border-radius:12px;flex-direction:column;justify-content:flex-end;padding:8px;transition:box-shadow .2s,border-color .2s;display:flex;position:absolute;inset:0;box-shadow:0 4px #00000059}.nc-face.front{background:var(--card-face);border:3px solid #0000}.nc-face.back{justify-content:space-between;align-items:center;transform:rotateY(180deg)}.nc-face.back.pattern{background:repeating-linear-gradient(45deg,#3a2f27 0 8px,#2a221c 8px 16px)}.nc-face.back.red{background:linear-gradient(160deg, var(--red) 0%, var(--red-dark) 100%)}.nc-face.back.blue{background:linear-gradient(160deg, var(--blue) 0%, var(--blue-dark) 100%)}.nc-face.back.neutral{background:linear-gradient(160deg, var(--neutral) 0%, var(--neutral-dark) 100%)}.nc-face.back.assassin{background:radial-gradient(circle at center, #3a3640 0%, var(--assassin) 80%)}.nc-label{background:var(--card-band);color:#fff;text-transform:uppercase;letter-spacing:.02em;text-align:center;overflow-wrap:anywhere;border-radius:6px;padding:7px 4px;font-size:clamp(.75rem,1.5vw,1.15rem);font-weight:900;line-height:1.15;transition:background .3s;display:block}.nc-face.back .nc-label{background:#00000059;width:100%;font-size:clamp(.7rem,1.3vw,1rem)}.nc-figure{flex:1;place-items:end center;min-height:0;margin-bottom:-2px;display:grid}.nc-figure svg{filter:drop-shadow(0 3px 2px #0000004d);width:auto;height:100%;max-height:72px;overflow:visible}.nc-figure .fig-body{fill:#000;opacity:.42}.nc-figure .fig-shade{fill:#00000040}.nc-figure .fig-dark{fill:#000000d1}.nc-figure .fig-band{fill:#ffffff4d}.nc-figure .fig-shirt{fill:#ffffffeb}.nc-figure .fig-glint,.nc-figure .fig-collar,.nc-figure .fig-smile{fill:none;stroke-width:1.6px;stroke-linecap:round}.nc-figure .fig-glint{stroke:#ffffffd9}.nc-figure .fig-collar{stroke:#00000059;stroke-width:2.5px}.nc-figure .fig-smile{stroke:#000000d1}.nc-figure .fig-hood{fill:#050407}.nc-figure .fig-hood-edge{fill:none;stroke:#ffffff24;stroke-width:1.2px}.nc-figure .fig-eyes{fill:#ff3047;filter:drop-shadow(0 0 2px #ff3047)drop-shadow(0 0 5px #ff3047cc)}.nc-figure .fig-clasp{fill:#b8a06a}.nc-card.revealed .nc-figure{animation:nc-figure-in .5s var(--bounce) 1.2s both}.nc-face.back.assassin .nc-figure{animation:nc-skull .8s var(--bounce) 1.2s both}.nc-card.clickable{cursor:pointer}.nc-card.clickable:hover{transform:perspective(700px) translateY(-5px) rotateX(var(--tilt-x,0deg)) rotateY(var(--tilt-y,0deg))}.nc-card.clickable:hover .nc-face.front{box-shadow:0 10px 18px #00000073}.nc-card.pointed{--point:var(--accent);z-index:2;transform:perspective(700px) translateY(-6px) scale(1.04) rotateX(var(--tilt-x,0deg)) rotateY(var(--tilt-y,0deg))}.nc-card.point-red{--point:var(--red)}.nc-card.point-blue{--point:var(--blue)}.nc-card.pointed.pointed .nc-face.front{border-width:4px;border-color:var(--point);box-shadow:0 0 0 3px color-mix(in srgb, var(--point) 40%, transparent), 0 12px 22px #00000073}.nc-card.pointed:before{content:"";box-shadow:0 0 24px 4px var(--point);pointer-events:none;border-radius:16px;animation:.9s ease-in-out infinite alternate nc-glow;position:absolute;inset:-6px}.nc-card.my-point{transform:perspective(700px) translateY(-8px) scale(1.07) rotateX(var(--tilt-x,0deg)) rotateY(var(--tilt-y,0deg))}.nc-card.key-red .nc-face.front{background:color-mix(in srgb, var(--red) 55%, var(--card-face));border-color:var(--red)}.nc-card.key-red .nc-face.front .nc-label{background:var(--red-dark)}.nc-card.key-blue .nc-face.front{background:color-mix(in srgb, var(--blue) 55%, var(--card-face));border-color:var(--blue)}.nc-card.key-blue .nc-face.front .nc-label{background:var(--blue-dark)}.nc-card.key-assassin .nc-face.front{background:#3a3640}.nc-card.key-assassin .nc-face.front .nc-label{background:#000}.nc-card.ghost{animation:.5s ease-out both nc-ghost;animation-delay:calc(var(--i) * 45ms)}.nc-card.ghost.red .nc-face.front .nc-label{background:var(--red)}.nc-card.ghost.blue .nc-face.front .nc-label{background:var(--blue)}.nc-card.ghost.assassin .nc-face.front{background:#3a3640}.nc-card.ghost.assassin .nc-face.front .nc-label{background:#000}.nc-board.dealing .nc-card{animation:nc-deal .55s var(--bounce) both;animation-delay:calc(var(--i) * 40ms)}.nc-board.dealing .nc-card-inner{animation:.55s ease-out both nc-deal-flip;animation-delay:calc(var(--wave) * .11s + 1s)}.nc-card.facedown{border:2px solid var(--border);background:repeating-linear-gradient(45deg, var(--card) 0 8px, var(--bg) 8px 16px);animation:nc-pop-in .4s var(--bounce) both;animation-delay:calc(var(--i) * 25ms);border-radius:12px;place-items:center;display:grid;overflow:hidden}.nc-card.facedown:after{content:"";animation:3s ease-in-out infinite nc-wave;animation-delay:calc(var(--i) * 70ms);background:linear-gradient(110deg,#0000 30%,#ffffff29 50%,#0000 70%);position:absolute;inset:0;transform:translate(-100%)}.nc-card.facedown .nc-label{color:var(--muted);background:0 0;font-size:1.4rem}.nc-burst{z-index:4;pointer-events:none;position:absolute;top:50%;left:50%}.nc-burst span{border-radius:50%;width:8px;height:8px;animation:.9s cubic-bezier(.1,.8,.3,1) both nc-spark;position:absolute}.nc-burst.red span{box-shadow:0 0 8px var(--red);background:#ffd1da}.nc-burst.blue span{box-shadow:0 0 8px var(--blue);background:#d6e5ff}.nc-pointers{z-index:3;gap:2px;display:flex;position:absolute;top:-8px;left:-6px}.nc-pointers span{background:var(--accent);width:22px;height:22px;color:var(--on-accent);animation:nc-pointer-in .45s var(--bounce);border:2px solid #fff;border-radius:50%;place-items:center;font-size:.75rem;font-weight:800;display:grid;box-shadow:0 2px 6px #0006}.nc-pointers.red span{background:var(--red)}.nc-pointers.blue span{background:var(--blue)}.nc-reveal{white-space:nowrap;z-index:3;animation:nc-pop-in .3s var(--bounce);padding:3px 10px;font-size:.75rem;position:absolute;top:6px;right:6px;box-shadow:0 4px 12px #00000073}.nc-reveal.red,.nc-reveal.red:hover:not(:disabled){background:var(--red)}.nc-reveal.blue,.nc-reveal.blue:hover:not(:disabled){background:var(--blue)}.nc-flash{opacity:0;pointer-events:none;z-index:5;background:radial-gradient(circle,#f03c5080 0%,#3c000af2 75%);border-radius:18px;position:absolute;inset:-10px}.nc-banner{z-index:6;pointer-events:none;background:linear-gradient(90deg, var(--team-dark), var(--team), var(--team-dark));place-items:center;height:112px;margin-top:-56px;padding:0 24px;animation:1.7s cubic-bezier(.7,0,.3,1) both nc-banner;display:grid;position:absolute;top:50%;left:-16px;right:-16px;box-shadow:0 12px 30px #00000080}.nc-banner.red{--team:var(--red);--team-dark:var(--red-dark)}.nc-banner.blue{--team:var(--blue);--team-dark:var(--blue-dark)}.nc-banner span{color:#fff;text-align:center;text-transform:uppercase;letter-spacing:.08em;text-shadow:0 3px 12px #0006;font-size:clamp(1.2rem,3vw,2.1rem);font-weight:900;line-height:1.2;animation:1.7s cubic-bezier(.2,.8,.2,1) both nc-banner-text}.nc-actions{text-align:center;flex-direction:column;align-items:center;gap:8px;min-height:40px;display:flex}.nc-actions>*{animation:.35s ease-out nc-slide-in}.nc-actions-row{flex-wrap:wrap;justify-content:center;align-items:center;gap:10px;display:flex}.nc-help{color:var(--muted)}.nc-link{color:var(--muted);background:0 0;padding:2px 6px;font-weight:600;text-decoration:underline}.nc-link:hover:not(:disabled){color:var(--text);background:0 0}.nc-clue-form{flex-wrap:wrap;justify-content:center;align-items:center;gap:8px;width:100%;display:flex}.nc-clue-form input{border-color:var(--accent);min-width:180px;max-width:280px;box-shadow:0 0 0 3px rgba(var(--accent-rgb), .2);flex:1}.nc-numbers{border:1px solid var(--border);border-radius:8px;display:flex;overflow:hidden}.nc-numbers button{color:var(--muted);background:0 0;border-radius:0;padding:8px 9px;font-size:.9rem;transition:background .15s,color .15s}.nc-numbers button:hover:not(:disabled){background:var(--bg);color:var(--text)}.nc-numbers button.active,.nc-numbers button.active:hover:not(:disabled){background:var(--accent);color:var(--on-accent)}.nc-history{border:1px solid var(--border);border-radius:12px;padding:12px 14px;animation:.4s ease-out nc-slide-in}.nc-history h3{text-transform:uppercase;letter-spacing:.08em;color:var(--muted);margin:0 0 8px;font-size:.8rem}.nc-history ol{scrollbar-width:thin;flex-direction:column;gap:6px;max-height:180px;margin:0;padding:0;list-style:none;display:flex;overflow-y:auto}.nc-history li{animation:nc-from-left .4s var(--bounce);border-left:4px solid;flex-wrap:wrap;align-items:center;gap:8px;padding-left:10px;display:flex}.nc-history li.red{border-color:var(--red)}.nc-history li.blue{border-color:var(--blue)}.nc-clue.mini{border-radius:6px;flex-wrap:nowrap;animation:none;display:inline-flex}.nc-clue.mini:after{display:none}.nc-clue.mini .nc-clue-word,.nc-clue.mini .nc-clue-number{padding:3px 8px;font-size:.85rem}.nc-history-guesses{flex-wrap:wrap;gap:4px;display:flex}.nc-history-guesses em{color:var(--muted)}.nc-chip{text-transform:uppercase;color:#fff;animation:nc-pop-in .35s var(--bounce);border-radius:999px;padding:1px 8px;font-size:.75rem;font-weight:700}.nc-chip.red{background:var(--red)}.nc-chip.blue{background:var(--blue)}.nc-chip.neutral{background:var(--neutral-dark)}.nc-chip.assassin{background:#000}@media (width<=860px){.nc-layout{grid-template-columns:repeat(2,minmax(0,1fr))}.nc-center{order:1;grid-column:1/-1}.nc-board{gap:5px}.nc-big-score{font-size:2.2rem}.nc-box{min-height:0}}@keyframes nc-slide-in{0%{opacity:0;filter:blur(3px);transform:translateY(12px)}to{opacity:1;filter:blur();transform:translateY(0)}}@keyframes nc-pop-in{0%{opacity:0;transform:scale(.6)}to{opacity:1;transform:scale(1)}}@keyframes nc-from-left{0%{opacity:0;transform:translate(-30px)}to{opacity:1;transform:translate(0)}}@keyframes nc-from-right{0%{opacity:0;transform:translate(30px)}to{opacity:1;transform:translate(0)}}@keyframes nc-stamp{0%{opacity:0;filter:blur(4px);transform:scale(2.4)rotate(-8deg)}55%{opacity:1;filter:blur();transform:scale(.92)rotate(1deg)}75%{transform:scale(1.04)rotate(0)}to{transform:scale(1)}}@keyframes nc-shine{0%{left:-60%}to{left:130%}}@keyframes nc-deal{0%{opacity:0;transform:perspective(700px)translateY(-80px)rotate(-14deg)scale(.4)}to{opacity:1;transform:perspective(700px)translateY(0)rotate(0)scale(1)}}@keyframes nc-deal-flip{0%{transform:rotateY(180deg)}to{transform:rotateY(0)}}@keyframes nc-figure-in{0%{opacity:0;transform:scale(.2)rotate(-30deg)}to{opacity:1;transform:scale(1)rotate(0)}}@keyframes nc-skull{0%{opacity:0;transform:scale(.2)}50%{opacity:1;transform:scale(1.8)rotate(-10deg)}to{transform:scale(1)rotate(0)}}@keyframes nc-spark{0%{opacity:1;transform:translate(-50%,-50%)scale(1.2)}to{opacity:0;transform:translate(calc(-50% + var(--dx)), calc(-50% + var(--dy))) scale(0)}}@keyframes nc-ghost{0%{opacity:1;transform:perspective(700px)rotateX(70deg)}to{opacity:.55;transform:perspective(700px)rotateX(0)}}@keyframes nc-wave{0%{transform:translate(-100%)}40%,to{transform:translate(100%)}}@keyframes nc-pointer-in{0%{opacity:0;transform:translateY(-14px)scale(.4)}to{opacity:1;transform:translateY(0)scale(1)}}@keyframes nc-banner{0%{clip-path:inset(0 100% 0 0)}22%{clip-path:inset(0)}78%{clip-path:inset(0)}to{clip-path:inset(0 0 0 100%)}}@keyframes nc-banner-text{0%{opacity:0;transform:translate(-60px)}25%{opacity:1;transform:translate(0)}75%{opacity:1;transform:translate(12px)}to{opacity:0;transform:translate(70px)}}.nc-clue-splash{z-index:60;pointer-events:none;background:#05040399;place-items:center;padding:16px;animation:2s both nc-splash-bg;display:grid;position:fixed;inset:0}.nc-clue.big{animation:nc-splash 2s var(--bounce) both;border-radius:16px;box-shadow:0 20px 60px #0009}.nc-clue.big .nc-clue-word,.nc-clue.big .nc-clue-number{padding:14px 30px;font-size:clamp(2rem,7vw,4.2rem)}@keyframes nc-splash-bg{0%{opacity:0}12%,75%{opacity:1}to{opacity:0}}@keyframes nc-splash{0%{opacity:0;filter:blur(6px);transform:scale(2.6)rotate(-8deg)}18%{opacity:1;filter:blur();transform:scale(.94)rotate(1deg)}26%{transform:scale(1.04)rotate(0)}32%,75%{opacity:1;transform:scale(1)}to{opacity:0;transform:translateY(35vh)scale(.35)}}@keyframes nc-bump{0%{color:#fff;transform:scale(1.7)rotate(-10deg)}to{transform:scale(1)rotate(0)}}@keyframes nc-glow{0%{opacity:.3}to{opacity:1}}@keyframes nc-blink{0%{opacity:1}to{opacity:.4}}@media (prefers-reduced-motion:reduce){.nc *,.nc :after{transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important;animation-delay:0s!important}}.sk{--bounce:cubic-bezier(.34, 1.56, .64, 1);--found:#2fb85a;--close:#f5b83d}.sk-layout{grid-template-columns:230px minmax(0,1fr) 280px;align-items:start;gap:16px;display:grid}.sk-players{flex-direction:column;gap:8px;margin:0;padding:0;list-style:none;display:flex}.sk-player{background:var(--bg);transition:background .3s ease, border-color .3s ease, transform .3s var(--bounce);animation:sk-slide-in .4s var(--bounce) both;border:2px solid #0000;border-radius:12px;align-items:center;gap:10px;padding:8px 10px;display:flex;position:relative}.sk-player.me{border-color:var(--border)}.sk-player.guessed{background:rgba(var(--accent-rgb), .18);border-color:var(--found)}.sk-player.drawer{border-color:var(--accent);transform:scale(1.03)}.sk-rank{width:26px;color:var(--muted);flex-shrink:0;font-size:.85rem;font-weight:800}.sk-player-info{flex-direction:column;flex:1;min-width:0;display:flex}.sk-player-name{text-overflow:ellipsis;white-space:nowrap;font-weight:700;overflow:hidden}.sk-player-score{color:var(--muted);font-variant-numeric:tabular-nums;font-size:.8rem}.sk-pencil{width:22px;height:22px;fill:var(--accent);flex-shrink:0;animation:1.2s ease-in-out infinite sk-wiggle}.sk-pencil .tip{fill:#f2c9a0}.sk-popup{color:var(--found);pointer-events:none;font-size:1.1rem;font-weight:900;animation:1.6s ease-out forwards sk-popup;position:absolute;top:4px;right:10px}.sk-center{flex-direction:column;gap:12px;min-width:0;display:flex}.sk-topbar{grid-template-columns:110px 1fr 110px;align-items:center;gap:8px;min-height:52px;display:grid}.sk-round{color:var(--muted);font-size:.9rem;font-weight:700}.sk-timer{font-variant-numeric:tabular-nums;justify-self:end;font-size:1.3rem;font-weight:800}.sk-timer.urgent{color:var(--error);animation:.5s ease-in-out infinite alternate sk-blink}.sk-word{flex-wrap:wrap;justify-content:center;justify-self:center;align-items:flex-end;gap:5px;display:flex}.sk-word.known{letter-spacing:.08em;text-transform:uppercase;color:var(--accent);animation:sk-stamp .5s var(--bounce);font-size:1.6rem;font-weight:900}.sk-letter{border-bottom:3px solid var(--text);text-transform:uppercase;place-items:end center;width:22px;height:30px;font-size:1.4rem;font-weight:900;line-height:1;display:grid}.sk-letter.shown{color:var(--accent);animation:sk-letter-in .5s var(--bounce)}.sk-space{width:14px}.sk-count{color:var(--muted);margin-left:6px;font-size:.8rem;font-weight:700}.sk-board{aspect-ratio:4/3;width:100%;max-width:max(480px,133.333vh - 533.333px);box-shadow:0 0 0 3px var(--border), 0 14px 34px #00000073;background:#fff;border-radius:14px;margin:0 auto;position:relative;overflow:hidden}.sk-canvas{touch-action:none;width:100%;height:100%;display:block}.sk-canvas.can-draw{cursor:crosshair}.sk-overlay{text-align:center;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);background:#0a0908d1;flex-direction:column;justify-content:center;align-items:center;gap:14px;padding:20px;animation:.3s ease-out sk-fade;display:flex;position:absolute;inset:0}.sk-overlay h3{margin:0;font-size:1.4rem}.sk-choices{flex-wrap:wrap;justify-content:center;gap:12px;display:flex}.sk-choices button{text-transform:uppercase;letter-spacing:.04em;animation:sk-pop .45s var(--bounce) both;animation-delay:calc(var(--i) * 90ms);transition:transform .15s var(--bounce);padding:14px 22px;font-size:1.15rem;font-weight:800}.sk-choices button:hover:not(:disabled){transform:translateY(-3px)scale(1.06)}.sk-waiting{flex-direction:column;align-items:center;gap:10px;font-size:1.1rem;display:flex}.sk-waiting .avatar{animation:1.4s ease-in-out infinite sk-bob}.sk .sk-waiting p{color:var(--text);margin:0}.sk-reveal-label{color:var(--muted);text-transform:uppercase;letter-spacing:.1em;margin:0;font-weight:700}.sk .sk-reveal-word{text-transform:uppercase;color:var(--accent);animation:sk-stamp .6s var(--bounce);margin:0;font-size:clamp(1.8rem,4vw,2.8rem);font-weight:900}.sk-nobody{color:var(--muted);margin:0}.sk-gains{flex-direction:column;gap:6px;min-width:220px;margin:0;padding:0;list-style:none;display:flex}.sk-gains li{animation:sk-slide-in .4s var(--bounce) both;animation-delay:calc(.3s + var(--i) * 80ms);background:#ffffff14;border-radius:999px;align-items:center;gap:10px;padding:4px 12px 4px 4px;display:flex}.sk-gains span{text-align:left;flex:1;font-weight:600}.sk-gains strong{color:var(--found)}.sk-final{justify-content:space-evenly}.sk-podium-wrap h3{margin-bottom:10px}.sk-podium{justify-content:center;align-items:flex-end;gap:10px;display:flex}.sk-step{width:120px;animation:sk-rise .7s var(--bounce) both;flex-direction:column;align-items:center;gap:4px;display:flex}.sk-step.place-1{animation-delay:.5s}.sk-step.place-2{animation-delay:.25s}.sk-step-name{text-overflow:ellipsis;white-space:nowrap;max-width:100%;font-weight:800;overflow:hidden}.sk-step-score{color:var(--muted);font-size:.85rem}.sk-step-block{width:100%;color:var(--on-accent);border-radius:10px 10px 0 0;place-items:center;font-size:1.6rem;font-weight:900;display:grid}.place-1 .sk-step-block{background:linear-gradient(#ffd54f,#c9a227);height:90px}.place-2 .sk-step-block{background:linear-gradient(#e0e0e0,#9e9e9e);height:64px}.place-3 .sk-step-block{background:linear-gradient(#e0a36b,#a0632f);height:44px}.place-1 .avatar{animation:1.6s ease-in-out infinite sk-bob}.sk-rest{color:var(--muted);text-align:left;margin:10px 0 0;font-size:.9rem}.sk-tools{animation:sk-slide-up .35s var(--bounce);flex-wrap:wrap;justify-content:center;align-items:center;gap:12px 18px;display:flex}.sk-palette{grid-template-columns:repeat(8,26px);gap:4px;display:grid}.sk-swatch{width:26px;height:26px;transition:transform .12s var(--bounce);border:2px solid #00000059;border-radius:6px;padding:0}.sk-swatch:hover:not(:disabled){transform:scale(1.15)}.sk-swatch.selected{box-shadow:0 0 0 2px var(--card), 0 0 0 4px var(--accent);transform:scale(1.15)}.sk-sizes{gap:6px;display:flex}.sk-size{background:var(--bg);border:2px solid var(--border);border-radius:10px;place-items:center;width:38px;height:38px;padding:0;display:grid}.sk-size:hover:not(:disabled){background:var(--border)}.sk-size.selected{border-color:var(--accent)}.sk-size span{border-radius:50%;box-shadow:0 0 0 1px #0006}.sk-actions{gap:6px;display:flex}.sk-actions .active{border-color:var(--accent);color:var(--accent)}.sk-tool{place-items:center;width:44px;padding:0;display:grid}.sk-tool svg{fill:currentColor;width:22px;height:22px}.sk-canvas.fill{cursor:cell}.sk-canvas.brush{cursor:none}.sk-cursor{pointer-events:none;opacity:0;transition:opacity .1s;position:absolute;top:0;left:0}.sk-cursor span{opacity:.75;border-radius:50%;display:block;position:absolute;transform:translate(-50%,-50%);box-shadow:0 0 0 1px #ffffffe6,0 0 0 2px #0009}.sk-cursor span.eraser{background:#ffffffd9;outline:1px dashed #000000b3}.sk-feed{flex-direction:column;gap:8px;height:max(320px,100vh - 330px);min-height:320px;display:flex}.sk-feed ol{scrollbar-width:thin;background:var(--bg);border-radius:12px;flex-direction:column;flex:1;gap:2px;margin:0;padding:8px;list-style:none;display:flex;overflow-y:auto}.sk-line{overflow-wrap:anywhere;border-radius:8px;padding:4px 8px;font-size:.92rem;animation:.25s ease-out sk-slide-in}.sk-line.mine{background:#ffffff0d}.sk-line.found{background:rgba(var(--accent-rgb), .2);color:var(--found);animation:sk-pop .4s var(--bounce);font-weight:600}.sk-line.close{color:var(--close);background:#f5b83d26;font-weight:600;animation:.4s ease-in-out sk-shake}.sk-line.info{color:var(--muted);font-style:italic}.sk-feed input{border-color:var(--accent);width:100%;box-shadow:0 0 0 3px rgba(var(--accent-rgb), .2)}.sk-feed input:disabled{border-color:var(--border);box-shadow:none;opacity:.7}@media (width<=1000px){.sk-layout{grid-template-columns:minmax(0,1fr)}.sk-players{flex-flow:wrap}.sk-player{flex:160px}.sk-feed{height:300px}}@keyframes sk-slide-in{0%{opacity:0;transform:translate(-12px)}to{opacity:1;transform:translate(0)}}@keyframes sk-slide-up{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}@keyframes sk-fade{0%{opacity:0}to{opacity:1}}@keyframes sk-pop{0%{opacity:0;transform:scale(.6)}to{opacity:1;transform:scale(1)}}@keyframes sk-stamp{0%{opacity:0;transform:scale(1.8)}60%{opacity:1;transform:scale(.95)}to{transform:scale(1)}}@keyframes sk-letter-in{0%{opacity:0;transform:translateY(-14px)scale(.4)}to{opacity:1;transform:translateY(0)scale(1)}}@keyframes sk-popup{0%{opacity:0;transform:translateY(6px)scale(.6)}20%{opacity:1;transform:translateY(-6px)scale(1.15)}to{opacity:0;transform:translateY(-34px)scale(1)}}@keyframes sk-wiggle{0%,to{transform:rotate(-8deg)}50%{transform:rotate(8deg)}}@keyframes sk-bob{0%,to{transform:translateY(0)}50%{transform:translateY(-6px)}}@keyframes sk-blink{0%{opacity:1}to{opacity:.45}}@keyframes sk-shake{0%,to{transform:translate(0)}25%{transform:translate(-5px)}75%{transform:translate(5px)}}@keyframes sk-rise{0%{opacity:0;transform:translateY(40px)}to{opacity:1;transform:translateY(0)}}@media (prefers-reduced-motion:reduce){.sk *,.sk :after{animation-duration:.01ms!important;animation-iteration-count:1!important;animation-delay:0s!important}}:root{--bg:#0a0908;--card:#171412;--border:#2f2a25;--text:#f2ede6;--muted:#a39a8f;--accent:#2fb85a;--accent-rgb:47, 184, 90;--accent-hover:#3fcc6b;--on-accent:#0b1f10;--ok:#a3e635;--error:#f87171;color:var(--text);background:var(--bg);font-family:system-ui,-apple-system,Segoe UI,sans-serif}*{box-sizing:border-box}body{background:var(--bg);margin:0}h1,h2{margin:0 0 12px}h2{font-size:1.1rem}button{font:inherit;background:var(--accent);color:var(--on-accent);cursor:pointer;border:none;border-radius:8px;padding:10px 16px;font-weight:600}button:hover:not(:disabled){background:var(--accent-hover)}button:disabled{opacity:.5;cursor:not-allowed}button.secondary{border:1px solid var(--border);color:var(--text);background:0 0}input{font:inherit;border:1px solid var(--border);background:var(--bg);color:var(--text);border-radius:8px;width:100%;padding:10px 12px}.app{max-width:1200px;margin:0 auto;padding:16px}.app:has(.room.in-game){max-width:1680px}.header{justify-content:space-between;align-items:center;margin-bottom:24px;display:flex}.header h1{color:var(--accent);margin:0}.header-right{align-items:center;gap:12px;display:flex}.icon-button{border:1px solid var(--border);background:0 0;padding:6px 10px;font-size:1.1rem;line-height:1}.icon-button:hover:not(:disabled){background:var(--card)}.music-control{align-items:center;gap:8px;display:flex}.music-control.silent .music-volume,.music-control.silent .icon-button{opacity:.45}.music-volume{appearance:none;background:linear-gradient(to right, var(--accent) var(--fill), var(--border) var(--fill));cursor:pointer;border:none;border-radius:999px;width:90px;height:6px;padding:0;transition:opacity .2s}.music-volume::-webkit-slider-thumb{appearance:none;background:#fff;border-radius:50%;width:14px;height:14px;box-shadow:0 1px 4px #00000080}.music-volume::-moz-range-thumb{background:#fff;border:none;border-radius:50%;width:14px;height:14px;box-shadow:0 1px 4px #00000080}.status{font-size:.85rem}.status.online{color:var(--accent)}.status.offline{color:var(--muted)}.card{background:var(--card);border:1px solid var(--border);border-radius:12px;flex-direction:column;gap:12px;padding:16px;display:flex}.card p{color:var(--muted);margin:0}.field{flex-direction:column;gap:6px;margin-bottom:16px;display:flex}.home{max-width:600px;margin:0 auto}.home-actions{grid-template-columns:repeat(2,minmax(0,1fr));align-items:stretch;gap:16px;display:grid}.home-actions .segmented,.home-actions .code-input{height:48px}.home-actions .segmented{align-self:stretch}.home-actions .segmented button{flex:1;font-size:.95rem}.home-actions .card>button:last-child{margin-top:auto}@media (width<=520px){.home-actions{grid-template-columns:1fr}}.code-input{text-transform:uppercase;letter-spacing:.4em;text-align:center;font-size:1.3rem}.error{color:var(--error);margin:12px 0 0}.notice{color:var(--muted);background:var(--card);border-radius:8px;padding:10px 12px}.room-header{justify-content:space-between;align-items:center;margin-bottom:16px;display:flex}.room-header-actions{gap:8px;display:flex}.label{color:var(--muted);font-size:.85rem;display:block}.room-code{letter-spacing:.2em;color:var(--text);background:0 0;padding:0;font-size:2.2rem}.room-code:hover:not(:disabled){color:var(--accent);background:0 0}.copied{color:var(--accent);margin-left:8px;font-size:.85rem}.games{margin-top:16px}.games-header{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:4px 12px;display:flex}.games-header h2{margin:0}.games-hint{color:var(--muted);font-size:.85rem}.games-grid{grid-template-columns:repeat(auto-fill,minmax(260px,1fr));gap:12px;margin:0;padding:0;list-style:none;display:grid}.game-card{border:1px solid var(--border);background:var(--bg);border-radius:10px;gap:12px;padding:12px;display:flex}.games-header h2{margin-right:12px;display:inline}.games-play{white-space:nowrap}.games-header-actions{flex-wrap:wrap;justify-content:flex-end;align-items:center;gap:12px;margin-left:auto;display:flex}.games-error{margin:0;font-size:.9rem;animation:.3s ease-out game-selected}button.game-card{text-align:left;width:100%;height:100%;color:var(--text);cursor:pointer;font-weight:400;transition:border-color .2s,transform .15s,box-shadow .2s}button.game-card:hover:not(:disabled){background:var(--bg);border-color:var(--muted);transform:translateY(-2px)}.game-card.selected,button.game-card.selected:hover:not(:disabled){border-color:var(--accent);box-shadow:0 0 0 2px var(--accent);animation:.35s ease-out game-selected}.game-card.soon.selected{opacity:1}@keyframes game-selected{0%{transform:scale(1)}40%{transform:scale(1.03)}to{transform:scale(1)}}.modal-backdrop{z-index:100;-webkit-backdrop-filter:blur(3px);backdrop-filter:blur(3px);background:#050403bf;place-items:center;padding:16px;animation:.15s ease-out modal-fade;display:grid;position:fixed;inset:0}.modal{width:100%;max-width:380px;animation:.2s cubic-bezier(.34,1.56,.64,1) modal-pop;box-shadow:0 20px 50px #00000080}.modal h2{margin:0}.modal .field{margin-bottom:0}.modal .error{margin:0}.modal-buttons{justify-content:flex-end;gap:8px;display:flex}@keyframes modal-fade{0%{opacity:0}to{opacity:1}}@keyframes modal-pop{0%{opacity:0;transform:scale(.92)}to{opacity:1;transform:scale(1)}}.visibility-choice{align-self:flex-start}.visibility-badge{border:1px solid var(--border);color:var(--muted);vertical-align:middle;background:0 0;border-radius:999px;margin-left:12px;padding:3px 10px;font-size:.8rem;font-weight:600;display:inline-block}button.visibility-badge:hover:not(:disabled){background:var(--card);color:var(--text)}.public-rooms{margin-top:24px}.room-list{flex-direction:column;gap:8px;margin:0;padding:0;list-style:none;display:flex}.room-row{border:1px solid var(--border);background:var(--bg);border-radius:10px;align-items:center;gap:12px;padding:10px 12px;animation:.3s ease-out game-selected;display:flex}.room-row-info{flex-direction:column;flex:1;min-width:0;display:flex}.room-row-info strong{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.room-row-info span,.room-row-players{color:var(--muted);font-size:.85rem}.room-row-players{white-space:nowrap}.room-row button{padding:6px 14px}@media (width<=480px){.room-row{flex-wrap:wrap}}.game-settings{margin-top:16px}.settings-list{grid-template-columns:repeat(auto-fill,minmax(300px,1fr));gap:8px 24px;margin:0;padding:0;list-style:none;display:grid}.setting{border-bottom:1px solid var(--border);justify-content:space-between;align-items:center;gap:12px;padding:8px 0;display:flex}.setting-label{flex-direction:column;gap:2px;display:flex}.setting-label small{color:var(--muted);font-size:.75rem}.setting-value{text-align:center;min-width:52px;font-weight:700;animation:.3s ease-out game-selected;display:inline-block}.setting-value.readonly{color:var(--accent);min-width:0}.stepper{align-items:center;gap:4px;display:flex}.stepper button{width:32px;height:32px;padding:0;font-size:1.1rem;line-height:1}.switch{background:var(--border);border-radius:999px;flex-shrink:0;width:48px;height:26px;padding:0;transition:background .2s;position:relative}.switch:hover:not(:disabled){background:var(--muted)}.switch.on,.switch.on:hover:not(:disabled){background:var(--accent)}.switch-knob{background:#fff;border-radius:50%;width:20px;height:20px;transition:transform .2s cubic-bezier(.34,1.56,.64,1);position:absolute;top:3px;left:3px}.switch.on .switch-knob{transform:translate(22px)}.segmented{border:1px solid var(--border);border-radius:8px;flex-shrink:0;display:flex;overflow:hidden}.segmented button{color:var(--muted);background:0 0;border-radius:0;padding:6px 10px;font-size:.85rem}.segmented button:hover:not(:disabled){background:var(--bg);color:var(--text)}.segmented button.active,.segmented button.active:hover:not(:disabled){background:var(--accent);color:var(--on-accent)}.game-check{background:var(--accent);width:20px;height:20px;color:var(--on-accent);border-radius:50%;place-items:center;margin-left:auto;font-size:.75rem;font-weight:700;display:grid}.game-card.soon{opacity:.7}.game-emoji{font-size:2rem;line-height:1}.game-info{flex-direction:column;flex:1;gap:4px;min-width:0;display:flex}.game-title{align-items:center;gap:8px;display:flex}.game-info p{font-size:.9rem}.game-players{color:var(--muted);font-size:.8rem}.badge{text-transform:uppercase;letter-spacing:.05em;border:1px solid var(--accent);color:var(--accent);border-radius:999px;padding:2px 6px;font-size:.7rem;font-weight:600}.room-body{grid-template-columns:240px 1fr;gap:16px;display:grid}@media (width<=640px){.room-body{grid-template-columns:1fr}}.player-list{flex-direction:column;gap:12px;margin:0;padding:0;list-style:none;display:flex}.player-list li{align-items:center;gap:10px;min-height:40px;display:flex}.avatar{border-radius:50%;flex-shrink:0;box-shadow:0 2px 6px #0006}.player-list li.me .avatar{box-shadow:0 0 0 2px var(--card), 0 0 0 4px var(--accent)}.player-list li.disconnected .avatar{filter:grayscale();opacity:.5}.player-name{text-overflow:ellipsis;white-space:nowrap;flex:1;min-width:0;overflow:hidden}.player-list li.me{font-weight:600}.kick-button{border:1px solid var(--border);color:var(--muted);opacity:0;background:0 0;flex-shrink:0;padding:2px 8px;font-size:.75rem;font-weight:600;transition:opacity .15s,background .15s}.player-list li:hover .kick-button,.kick-button:focus-visible,.kick-button.confirming{opacity:1}.kick-button:hover:not(:disabled){border-color:var(--error);color:var(--error);background:0 0}.kick-button.confirming,.kick-button.confirming:hover:not(:disabled){background:var(--error);border-color:var(--error);color:#fff}@media (hover:none){.kick-button{opacity:1}}.player-list li.disconnected{opacity:.45}.notice.reconnecting{text-align:center;width:fit-content;max-width:100%;color:var(--text);border:1px solid var(--accent);border-radius:999px;margin:0 auto 16px;padding:10px 20px}.host-badge{margin-right:6px}.you{color:var(--muted);font-weight:400}.chat-messages{overflow-wrap:anywhere;flex-direction:column;gap:4px;height:360px;display:flex;overflow-y:auto}.chat .chat-line{color:var(--text)}.chat .chat-line.mine strong{color:var(--accent)}.chat .chat-system{font-size:.9rem;font-style:italic}.room.in-game .chat-messages{height:160px}.chat-form{gap:8px;display:flex}.modal-message{color:var(--muted);margin:0;line-height:1.5}.avatar-button{background:0 0;border:none;border-radius:50%;flex-shrink:0;padding:0;line-height:0;transition:transform .15s cubic-bezier(.34,1.56,.64,1);position:relative}.avatar-button:hover:not(:disabled){background:0 0;transform:scale(1.1)rotate(-4deg)}.avatar-edit{background:var(--accent);width:18px;height:18px;color:var(--on-accent);box-shadow:0 0 0 2px var(--card);border-radius:50%;place-items:center;font-size:.7rem;line-height:1;display:grid;position:absolute;bottom:-4px;right:-4px}.avatar-modal{max-width:520px}.avatar-grid{grid-template-columns:repeat(auto-fill,minmax(96px,1fr));gap:10px;display:grid}.avatar-choice{background:var(--bg);color:var(--text);animation:.3s cubic-bezier(.34,1.56,.64,1) both modal-pop;animation-delay:calc(var(--i) * 25ms);border:2px solid #0000;border-radius:12px;flex-direction:column;align-items:center;gap:6px;padding:10px 6px;font-size:.8rem;font-weight:600;display:flex}.avatar-choice .avatar{transition:transform .2s cubic-bezier(.34,1.56,.64,1)}.avatar-choice:hover:not(:disabled){background:var(--border)}.avatar-choice:hover .avatar{transform:scale(1.12)rotate(-6deg)}.avatar-choice.selected{border-color:var(--accent);background:rgba(var(--accent-rgb), .12)}.rules h2{margin:0}.rules-list{counter-reset:rule;grid-template-columns:repeat(auto-fill,minmax(240px,1fr));gap:10px;margin:0;padding:0;list-style:none;display:grid}.rules-list li{background:var(--bg);counter-increment:rule;animation:.35s cubic-bezier(.34,1.56,.64,1) both modal-pop;animation-delay:calc(var(--i) * 60ms);border-radius:10px;flex-direction:column;gap:4px;padding:10px 12px 10px 44px;line-height:1.4;display:flex;position:relative}.rules-list li:before{content:counter(rule);background:var(--accent);width:24px;height:24px;color:var(--on-accent);border-radius:50%;place-items:center;font-size:.8rem;font-weight:800;display:grid;position:absolute;top:10px;left:10px}.rules-list strong{color:var(--text)}.rules-list span{color:var(--muted);font-size:.9rem}
