/* Neon Higher or Lower */
.avatar{width:100%;height:auto;display:block;overflow:visible}
.avatar .neon{filter:drop-shadow(0 0 3px rgba(255,255,255,.25))}
.avatar path,.avatar rect,.avatar circle,.avatar ellipse{stroke-width:2.6;stroke-linejoin:round;stroke-linecap:round}
.avatar .limb{fill:none;stroke:#c9b8ff;stroke-width:9}
.avatar .limb.thin{stroke-width:7}
.avatar .head{fill:#2a1a4a}
.avatar .hair{fill:#3a1450}
.avatar .eye{fill:#f3ecff;stroke:none}
.avatar .ln{fill:none}
.avatar .thick{stroke-width:4}
.avatar .suit{fill:#3a1450}
.avatar .sarong{fill:#2b1150;stroke:#ffe48a}
.avatar .knot{fill:#ffe48a;stroke:none}
.avatar .stripe{fill:none;stroke:#c6ff4a;stroke-width:3}
.avatar .flip{fill:none;stroke:#ffe48a;stroke-width:3}
.avatar .cloth{fill:#1c1236}
.avatar .spark{fill:#ffe48a;stroke:none}
.avatar .sock{fill:#2a1a4a;stroke-width:2}
.avatar .shoe{fill:#120a24}
.avatar .jacket{fill:#20123e}
.avatar .shades{fill:#0a0516}
.avatar .hatc{fill:#20123e}
.avatar .layer{transition:transform .8s cubic-bezier(.5,-0.4,.7,1),opacity .8s ease;transform-box:fill-box;transform-origin:center}
.avatar .layer.gone{opacity:0;transform:translate(60px,-40px) rotate(35deg) scale(.6);pointer-events:none}
.avatar .layer.back-on{animation:pop .6s ease}
@keyframes pop{0%{opacity:0;transform:scale(1.4)}100%{opacity:1;transform:none}}
@media (prefers-reduced-motion:reduce){.avatar .layer{transition:none}}

.game{max-width:1000px}
.mode-pick{display:grid;grid-template-columns:1fr 1fr;gap:1.5rem}
.mode-pick .card{display:grid;gap:.8rem;align-content:start}
.style-pick{display:flex;gap:.5rem;flex-wrap:wrap;border:0;padding:0;margin:0}
.style-pick legend{font-weight:700;font-size:.9rem;margin-bottom:.3rem}
.style-pick label{display:flex;align-items:center;gap:.35rem;border:2px solid var(--divider);border-radius:999px;padding:.3rem .8rem;cursor:pointer}
.style-pick input{accent-color:#ff4fd8}
.board{display:grid;grid-template-columns:1fr auto 1fr;gap:1rem;align-items:center}
.player{text-align:center;border-radius:20px;padding:.6rem;border:2px solid transparent;transition:border-color .3s, box-shadow .3s}
.player.turn{border-color:#c6ff4a;box-shadow:0 0 18px rgba(198,255,74,.35)}
.player .pname{font-weight:800;overflow-wrap:anywhere}
.player .avatar-wrap{max-width:170px;margin:0 auto}
.pips{display:flex;justify-content:center;gap:4px;margin:.3rem 0}
.pips i{width:12px;height:12px;border-radius:50%;background:#ff4fd8;box-shadow:0 0 6px #ff4fd8}
.pips i.off{background:transparent;border:2px solid var(--divider);box-shadow:none}
.player .turn-tag{font-size:.8rem;font-weight:800;color:#c6ff4a;min-height:1.2em}
.table{display:grid;justify-items:center;gap:.8rem;min-width:180px}
.pcard{width:120px;height:168px;border-radius:14px;background:#0f0820;border:3px solid #39f3ff;box-shadow:0 0 16px rgba(57,243,255,.5),inset 0 0 12px rgba(57,243,255,.25);display:grid;place-items:center;position:relative;font-family:'Nunito',system-ui,sans-serif}
.pcard.red{border-color:#ff4fd8;box-shadow:0 0 16px rgba(255,79,216,.55),inset 0 0 12px rgba(255,79,216,.25)}
.pcard .big{font-size:3.4rem;font-weight:800;line-height:1}
.pcard .suit{font-size:2rem}
.pcard .corner{position:absolute;top:8px;left:10px;font-weight:800;font-size:1rem;line-height:1;text-align:center}
.pcard .corner.br{top:auto;left:auto;bottom:8px;right:10px;transform:rotate(180deg)}
.pcard.red{color:#ff9cf0}.pcard:not(.red){color:#7ef9ff}
.pcard.flip{animation:flipin .45s ease}
@keyframes flipin{0%{transform:rotateY(90deg)}100%{transform:none}}
.deck-info{font-size:.85rem;opacity:.85}
.guess-row{display:flex;gap:.6rem}
.guess-row .btn{min-width:7.2rem}
.btn-hi{background:#c6ff4a;color:#120a24}
.btn-lo{background:#39f3ff;color:#120a24}
button.btn[disabled]{opacity:.45;cursor:not-allowed;transform:none}
.result{min-height:3em;text-align:center;font-weight:800;margin:.8rem 0 0}
.result.bad{color:#ff9cf0}.result.good{color:#c6ff4a}.result.tie{color:#ffe48a}
.room-code{font-family:'Monoton',system-ui;font-size:2.4rem;letter-spacing:.15em;color:#ffe48a;text-shadow:0 0 12px rgba(255,228,138,.6)}
.game-bar{display:flex;justify-content:space-between;gap:.8rem;flex-wrap:wrap;align-items:center;margin-bottom:1rem}
.victory{position:fixed;inset:0;background:rgba(10,5,22,.88);display:grid;place-items:center;padding:1rem;z-index:20}
.victory[hidden]{display:none}
.victory .card{max-width:460px;text-align:center}
.victory h2{font-family:'Monoton',system-ui;font-size:clamp(2.4rem,9vw,3.6rem);font-weight:400;text-transform:none;letter-spacing:.02em;margin:.2rem 0}
.victory .avatars{display:grid;grid-template-columns:1fr 1fr;gap:1rem;max-width:300px;margin:0 auto}
.dare{border:2px dashed #ffe48a;border-radius:16px;padding:1rem;margin:1rem 0;color:#ffe48a;font-weight:800;font-size:1.1rem}
.dare small{display:block;font-weight:700;color:#d9ccff;letter-spacing:.1em;text-transform:uppercase;font-size:.75rem;margin-bottom:.3rem}
.rules{font-size:.95rem}
@media (max-width:760px){
  .mode-pick{grid-template-columns:1fr}
  .board{grid-template-columns:1fr 1fr;gap:.5rem}
  .table{grid-column:1 / -1;grid-row:1;min-width:0}
  .player .avatar-wrap{max-width:120px}
  .pcard{width:96px;height:134px}.pcard .big{font-size:2.6rem}
}
.vic-actions{justify-content:center}
