:root{--fuchsia: #25d9eb;--fuchsia-2: #79e9f2;--violet: #7566ff;--violet-2: #4836b4;--gold: #f5c86b;--plum: #091323;--plum-2: #14233d;--ink: #f2f8ff;--muted: #a9bdd7;--good: #3ee08f;--bad: #ff4f6d;--card: rgba(255, 255, 255, .07);--line: rgba(255, 255, 255, .14);--title: "Luckiest Guy", "Poppins", system-ui, sans-serif;color-scheme:dark}*{box-sizing:border-box}html,body{margin:0;min-height:100%}body{font-family:Poppins,system-ui,sans-serif;color:var(--ink);background:radial-gradient(1200px 700px at 10% -10%,rgba(37,217,235,.35),transparent 60%),radial-gradient(900px 600px at 110% 10%,rgba(117,102,255,.35),transparent 60%),radial-gradient(800px 600px at 50% 120%,rgba(37,217,235,.25),transparent 60%),var(--plum);background-attachment:fixed;-webkit-font-smoothing:antialiased}button,input,select,textarea{font:inherit;color:inherit}a{color:var(--gold)}code{background:#0000004d;padding:1px 6px;border-radius:6px;font-size:.9em}.logo{font-family:var(--title);font-size:3rem;line-height:1;margin:0;letter-spacing:1px;color:#fff;text-shadow:0 0 18px rgba(37,217,235,.8),0 4px 0 var(--violet-2)}.logo span{color:var(--fuchsia);text-shadow:0 0 22px rgba(37,217,235,.9),0 4px 0 #146376}.logo.small{font-size:1.5rem}.logo.huge{font-size:clamp(3rem,9vw,9rem)}.sub{color:var(--muted);margin:6px 0 18px}.muted{color:var(--muted)}.small{font-size:.85rem}.center{min-height:100vh;display:grid;place-content:center;text-align:center;gap:16px}.center-txt{text-align:center}.row{display:flex;gap:8px;align-items:center;flex-wrap:wrap}.nowrap{flex-wrap:nowrap}.grow{flex:1}.gold-txt{color:var(--gold)}.error{background:#ff4f6d2e;border:1px solid var(--bad);padding:10px 14px;border-radius:12px;margin:8px 0}.warn{background:#f5c86b24;border:1px solid var(--gold);padding:10px 14px;border-radius:12px;margin:8px 0}.btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;border:0;cursor:pointer;text-decoration:none;font-weight:800;padding:12px 20px;border-radius:999px;color:#fff;background:linear-gradient(135deg,var(--fuchsia),var(--violet));box-shadow:0 6px 20px #25d9eb59,inset 0 1px #ffffff59;transition:transform .12s,filter .12s,opacity .2s}.btn:hover{filter:brightness(1.1)}.btn:active{transform:scale(.97)}.btn:disabled{opacity:.45;cursor:not-allowed}.btn.alt{background:linear-gradient(135deg,var(--gold),#ff9d5c);color:var(--plum)}.btn.ghost{background:#ffffff14;box-shadow:inset 0 0 0 1px var(--line)}.btn.danger{background:var(--bad)}.btn.big{font-size:1.15rem;padding:16px 26px;width:100%}.btn.small{padding:7px 12px;font-size:.85rem}.tag{display:inline-block;padding:4px 12px;border-radius:999px;background:#ffffff1f;font-weight:600;font-size:.85rem}.tag.big{font-size:clamp(1rem,1.6vw,1.6rem);padding:8px 22px;background:linear-gradient(135deg,var(--fuchsia),var(--violet))}.big-emoji{font-size:4rem;line-height:1.1}.mega-emoji{font-size:clamp(4rem,9vw,9rem);line-height:1.1}.float{animation:float 3s ease-in-out infinite}.pulse{animation:pulse 1.8s ease-in-out infinite}.pop{animation:pop .5s cubic-bezier(.2,1.6,.4,1) both}.spin{animation:spin 3s linear infinite}@keyframes float{50%{transform:translateY(-10px) rotate(-3deg)}}@keyframes pulse{50%{opacity:.55}}@keyframes pop{0%{transform:scale(.3);opacity:0}}@keyframes spin{to{transform:rotate(360deg)}}@keyframes shine{to{background-position:200% center}}.countdown{position:relative;display:grid;place-items:center;flex-shrink:0}.countdown svg{position:absolute;top:0;right:0;bottom:0;left:0;transform:rotate(-90deg)}.countdown circle{fill:none;stroke-width:9}.countdown .track{stroke:#ffffff1f}.countdown .bar{stroke:var(--gold);stroke-linecap:round;transition:stroke-dashoffset .1s linear;filter:drop-shadow(0 0 6px var(--gold))}.countdown span{font-family:var(--title);position:relative}.countdown.hurry .bar{stroke:var(--fuchsia);filter:drop-shadow(0 0 8px var(--fuchsia))}.countdown.hurry span{color:var(--fuchsia-2);animation:pulse .5s infinite}.toasts{position:fixed;bottom:16px;left:50%;transform:translate(-50%);display:grid;gap:8px;z-index:50;width:min(92vw,420px)}.toast{background:var(--plum-2);border:1px solid var(--fuchsia);padding:12px 16px;border-radius:14px;box-shadow:0 10px 30px #0006;animation:pop .3s both;text-align:center}.toast.error{border-color:var(--bad)}.team-chip{display:inline-flex;align-items:center;gap:8px;padding:8px 16px;border-radius:999px;background:#ffffff14;border:2px solid var(--team, var(--fuchsia));font-weight:600}.team-chip small{background:var(--team, var(--fuchsia));color:var(--plum);border-radius:999px;padding:0 8px;font-weight:800}.team-cloud{display:flex;flex-wrap:wrap;gap:10px}.home{min-height:100vh;display:grid;place-content:center;text-align:center;padding:24px}.home-links{display:grid;gap:12px;width:min(360px,90vw);margin:0 auto}.play{min-height:100dvh;display:flex;flex-direction:column;max-width:560px;margin:0 auto;padding:env(safe-area-inset-top) 16px calc(16px + env(safe-area-inset-bottom))}.offline{position:sticky;top:0;z-index:10;background:var(--bad);text-align:center;padding:6px;border-radius:0 0 12px 12px;font-size:.85rem}.play-head{display:flex;justify-content:space-between;align-items:center;padding:14px 4px;border-bottom:2px solid var(--team)}.play-head .who{display:flex;gap:10px;align-items:center}.play-head .avatar{font-size:2rem}.play-head b{display:block}.play-head small{color:var(--muted)}.play-head .score{text-align:right}.play-head .score b{font-family:var(--title);font-size:1.8rem;color:var(--gold);line-height:1}.play-main{flex:1;display:flex;flex-direction:column;justify-content:center;padding:20px 0}.join{display:flex;flex-direction:column;gap:16px;padding:28px 0;text-align:center}.field{display:grid;gap:6px;text-align:left;font-weight:600;font-size:.9rem;color:var(--muted)}.field input,.field textarea,.field select,.admin input,.admin select{background:#ffffff14;border:2px solid var(--line);border-radius:14px;padding:13px 14px;font-size:1.05rem;color:var(--ink);outline:none;width:100%}.field input:focus,.field textarea:focus,.admin input:focus{border-color:var(--fuchsia);box-shadow:0 0 0 4px #25d9eb33}.emoji-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(46px,1fr));gap:6px}.emoji-grid button{font-size:1.6rem;padding:6px;border-radius:12px;background:#ffffff0f;border:2px solid transparent;cursor:pointer}.emoji-grid button.on{border-color:var(--fuchsia);background:#25d9eb40;transform:scale(1.08)}.tabs{display:grid;grid-template-columns:1fr 1fr;background:#ffffff0f;border-radius:999px;padding:4px}.tabs button{border:0;background:none;padding:10px;border-radius:999px;font-weight:600;cursor:pointer;font-size:.9rem}.tabs button.on{background:var(--fuchsia)}.tabs button:disabled{opacity:.4}.team-pick{display:grid;gap:8px;max-height:40vh;overflow:auto}.team-pick button{display:flex;align-items:center;gap:10px;padding:12px 16px;border-radius:16px;border:2px solid var(--line);background:#ffffff0d;cursor:pointer;text-align:left;font-weight:600}.team-pick button span{font-size:1.5rem}.team-pick button small{margin-left:auto;color:var(--muted)}.team-pick button.on{border-color:var(--team);background:color-mix(in srgb,var(--team) 25%,transparent)}.waiting,.sent,.result{text-align:center;display:grid;gap:10px;justify-items:center}.waiting h2,.result h2{font-family:var(--title);font-size:2rem;margin:0;letter-spacing:.5px}.result.win h2{color:var(--gold)}.result .cover{width:160px;border-radius:16px;box-shadow:0 10px 30px #00000080}.q-top{display:flex;justify-content:space-between;align-items:center;margin-bottom:8px}.q-text{font-size:1.35rem;line-height:1.3;margin:8px 0 18px}.choices{display:grid;gap:12px}.choice{position:relative;overflow:hidden;display:flex;align-items:center;gap:14px;text-align:left;padding:18px;border-radius:18px;border:0;cursor:pointer;font-weight:600;font-size:1.05rem;color:#fff;box-shadow:inset 0 -4px #00000040}.choice b{font-family:var(--title);font-size:1.5rem;width:1.6em;height:1.6em;display:grid;place-items:center;background:#00000038;border-radius:50%;flex-shrink:0}.choice.c0{background:linear-gradient(135deg,#25d9eb,#d4166f)}.choice.c1{background:linear-gradient(135deg,#7566ff,#4836b4)}.choice.c2{background:linear-gradient(135deg,#f5a623,#e07b00)}.choice.c3{background:linear-gradient(135deg,#18c7b8,#0b8f84)}.choice:disabled{cursor:default;opacity:.45}.choice.picked{opacity:1;outline:4px solid var(--gold);outline-offset:2px}.answer-form{display:grid;gap:14px}.answer-form h2{margin:0;font-family:var(--title);font-size:1.8rem;text-align:center}.prev-line{color:var(--muted);font-style:italic;text-align:center;margin:0}.hidden-line{font-size:1.3rem;font-weight:800;text-align:center;line-height:1.6;margin:0}.hidden-line .blank{color:var(--fuchsia-2);letter-spacing:2px}.hidden-line .gold{color:var(--gold)}.vote-btn{display:grid;justify-items:center;gap:4px;padding:22px;border-radius:22px;border:3px solid var(--team);background:color-mix(in srgb,var(--team) 18%,transparent);cursor:pointer}.vote-btn b{font-size:1.3rem}.vote-btn em{color:var(--gold);font-style:normal;font-weight:800}.vote-btn.picked{background:color-mix(in srgb,var(--team) 45%,transparent);box-shadow:0 0 30px var(--team)}body[data-page=tv]{overflow:hidden}.tv{height:100vh;display:flex;flex-direction:column;padding:2vh 3vw;position:relative}.sparkles{position:fixed;top:0;right:0;bottom:0;left:0;pointer-events:none;opacity:.55;background-image:radial-gradient(2px 2px at 20% 30%,#fff,transparent),radial-gradient(2px 2px at 70% 20%,var(--gold),transparent),radial-gradient(1.5px 1.5px at 40% 80%,#fff,transparent),radial-gradient(2px 2px at 85% 65%,var(--fuchsia-2),transparent),radial-gradient(1.5px 1.5px at 10% 70%,var(--gold),transparent),radial-gradient(2px 2px at 55% 50%,#fff,transparent);background-size:400px 400px;animation:twinkle 6s linear infinite}@keyframes twinkle{50%{opacity:.25}to{background-position:400px 400px}}.tv-head{display:flex;justify-content:space-between;align-items:center;position:relative;z-index:1}.tv-meta{color:var(--muted);font-size:1.3vw;display:flex;align-items:center;gap:8px}.tv-main{flex:1;display:flex;flex-direction:column;justify-content:center;position:relative;z-index:1;animation:pop .6s both;min-height:0}.neon{font-family:var(--title);font-size:clamp(2.5rem,5vw,6rem);margin:0;line-height:1.05;color:#fff;text-shadow:0 0 20px var(--fuchsia),0 0 50px rgba(37,217,235,.6)}.round-intro{text-align:center;display:grid;gap:2vh;justify-items:center}.round-intro p{font-size:2.2vw;color:var(--muted);margin:0}.lobby{display:grid;grid-template-columns:1fr auto;gap:4vw;align-items:center}.lobby-left .logo{margin-bottom:4vh}.lobby .team-chip{font-size:1.5vw}.qr-card{background:#fff;color:var(--plum);padding:2vw;border-radius:2vw;display:grid;justify-items:center;gap:1vh;box-shadow:0 0 60px #25d9eb99;transform:rotate(2deg)}.qr-card img{width:26vw;max-width:46vh}.qr-card b{font-family:var(--title);font-size:2.2vw;color:var(--fuchsia)}.qr-card small{font-size:1.2vw;font-weight:600}.tv-top{display:flex;justify-content:space-between;align-items:center;min-height:150px}.question{font-size:clamp(2rem,3.6vw,4.5rem);line-height:1.2;margin:2vh 0 4vh;text-align:center}.choices-tv{grid-template-columns:1fr 1fr;gap:2vw}.choices-tv .choice{font-size:2.2vw;padding:2.4vh 2vw;cursor:default}.choices-tv .choice span,.choices-tv .choice b{position:relative;z-index:1}.choices-tv .choice em{margin-left:auto;font-style:normal;font-family:var(--title);position:relative;z-index:1}.choice .fill{position:absolute;left:0;top:0;bottom:0;background:#ffffff2e;transition:width 1s ease}.choice.good{outline:6px solid var(--good);box-shadow:0 0 40px var(--good);transform:scale(1.03)}.choice.bad{opacity:.35;filter:grayscale(.6)}.answered{display:flex;align-items:center;gap:2vw;margin-top:4vh;font-size:1.6vw}.answered-bar{flex:1;height:14px;background:#ffffff1f;border-radius:999px;overflow:hidden}.answered-bar i{display:block;height:100%;background:linear-gradient(90deg,var(--fuchsia),var(--gold));transition:width .5s}.winners{display:flex;flex-wrap:wrap;gap:12px;justify-content:center;margin-top:3vh}.winners .team-chip{font-size:1.4vw}.winners-none{text-align:center;font-size:2vw;margin-top:3vh}.bt-tv{display:grid;justify-items:center;gap:2vh;text-align:center}.bt-tv h1{font-family:var(--title);font-size:3.4vw;margin:0}.bt-row{display:flex;align-items:center;gap:3vw}.bt-row.center{justify-content:center}.vinyl-wrap{display:grid;place-items:center}.vinyl{width:28vh;height:28vh;border-radius:50%;background:radial-gradient(circle,var(--fuchsia) 0 14%,#111 15% 17%,#222 18% 30%,#111 31% 33%,#222 34% 48%,#111 49% 51%,#1a1a1a 52%);box-shadow:0 0 60px #25d9eb80}.eq{display:flex;gap:6px;align-items:flex-end;height:8vh}.eq i{width:1.2vw;background:linear-gradient(var(--gold),var(--fuchsia));border-radius:6px;animation:eq .9s ease-in-out infinite alternate}@keyframes eq{0%{height:15%}to{height:100%}}.bt-reveal{display:grid;grid-template-columns:auto 1fr;gap:4vw;align-items:center}.bt-reveal h2{font-size:3vw;margin:1vh 0;color:var(--gold)}.cover-xl{width:40vh;height:40vh;border-radius:3vh;box-shadow:0 0 80px #25d9eb99;animation:pop .8s both}.bt-reveal .winners{justify-content:flex-start}.paroles-tv{display:grid;gap:3vh}.pa-head{display:flex;align-items:center;gap:2vw}.pa-head img{width:10vh;height:10vh;border-radius:1.5vh}.pa-head h2{margin:0;font-size:2.4vw}.pa-head p{margin:0;color:var(--muted);font-size:1.6vw}.pa-head .countdown{margin-left:auto}.lyrics{display:grid;gap:2.5vh;text-align:center}.lyric{margin:0;font-weight:800;transition:all .3s}.lyric.past{font-size:2.2vw;opacity:.4}.lyric.current{font-size:4vw;color:#fff;text-shadow:0 0 25px var(--fuchsia)}.lyric.next{font-size:2.4vw;opacity:.65}.lyric.next2{font-size:2vw;opacity:.35}.lyric .blank{color:var(--fuchsia-2);letter-spacing:.3vw}.lyric .gold{color:var(--gold);text-shadow:0 0 25px var(--gold)}.lyrics.stopped .lyric.current{font-size:4.6vw}.scores-tv{display:grid;gap:3vh;min-height:0}.scores-tv .neon{text-align:center}.score-list{display:grid;gap:1vh;overflow:hidden}.score-list.two-cols{grid-template-columns:1fr 1fr;column-gap:3vw;grid-auto-flow:column;grid-template-rows:repeat(var(--rows, 20),auto)}.score-row{display:grid;grid-template-columns:3vw 3vw 1.2fr 1fr 5vw;align-items:center;gap:1vw;font-size:1.5vw;background:#ffffff0d;border-left:6px solid var(--team);padding:.8vh 1vw;border-radius:12px;animation:pop .5s both}.score-list.two-cols .score-row{font-size:1.1vw;padding:.4vh .8vw}.score-row .rank{font-family:var(--title);color:var(--gold)}.score-row .nm{white-space:nowrap;overflow:hidden;text-overflow:ellipsis;font-weight:600}.score-row .bar{height:1.2vh;background:#ffffff14;border-radius:999px;overflow:hidden}.score-row .bar i{display:block;height:100%;background:var(--team);transition:width 1s}.score-row .pts{text-align:right;font-family:var(--title)}.podium-tv{display:grid;gap:2vh;height:100%;grid-template-rows:auto 1fr;text-align:center}.podium{display:grid;grid-template-columns:1fr 1.2fr 1fr;gap:2vw;align-items:end;height:100%}.spot{display:flex;flex-direction:column;justify-content:flex-end;height:100%}.spot-team{display:grid;justify-items:center;padding-bottom:2vh}.spot-team b{font-family:var(--title);font-size:2.4vw}.spot-team small{font-size:1.6vw;color:var(--gold)}.spot-team.hide{opacity:.4}.step{border-radius:2vw 2vw 0 0;display:grid;place-items:start center;padding-top:2vh;font-family:var(--title);font-size:6vw}.p1 .step{background:linear-gradient(var(--gold),#c28e2b);color:var(--plum);box-shadow:0 0 60px #f5c86b99}.p2 .step{background:linear-gradient(#e9e9f5,#a5a5be);color:var(--plum)}.p3 .step{background:linear-gradient(#e59a5f,#a8622d);color:var(--plum)}.dot{width:10px;height:10px;border-radius:50%;display:inline-block}.dot.on{background:var(--good);box-shadow:0 0 8px var(--good)}.dot.off{background:var(--bad)}.admin{min-height:100vh}.admin.login{display:grid;place-content:center;gap:14px;text-align:center;width:min(360px,90vw);margin:0 auto}.admin-top{position:sticky;top:0;z-index:5;display:flex;align-items:center;gap:20px;padding:12px 20px;background:#2a0a24eb;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);border-bottom:1px solid var(--line);flex-wrap:wrap}.admin-top .live{display:flex;align-items:center;gap:10px;flex:1}.admin-top .live b{color:var(--gold)}.top-right{display:flex;align-items:center;gap:12px;font-size:.9rem}.chip{padding:4px 10px;border-radius:999px;font-size:.8rem;background:#ffffff14}.chip.ok{background:#3ee08f33}.admin-body{display:grid;grid-template-columns:220px 1fr}.admin-nav{display:grid;align-content:start;gap:4px;padding:16px;position:sticky;top:64px;height:calc(100vh - 64px)}.admin-nav button{display:flex;gap:10px;align-items:center;text-align:left;padding:11px 14px;border-radius:12px;border:0;background:none;cursor:pointer;font-weight:600;position:relative}.admin-nav button:hover{background:#ffffff0f}.admin-nav button.on{background:linear-gradient(135deg,#25d9eb59,#7566ff59)}.admin-nav button.live:after{content:"LIVE";position:absolute;right:10px;font-size:.6rem;background:var(--bad);padding:2px 6px;border-radius:6px}.admin-panel{padding:16px 24px 80px 8px;display:grid;gap:16px;align-content:start;min-width:0}.card{background:var(--card);border:1px solid var(--line);border-radius:20px;padding:18px 20px}.card-head{display:flex;justify-content:space-between;align-items:center;gap:12px;flex-wrap:wrap;margin-bottom:10px}.card-head h2{margin:0;font-size:1.2rem}.card h3{margin:6px 0}.admin input,.admin select{padding:9px 12px;font-size:.95rem;border-radius:10px}.admin form.row input{flex:1;min-width:200px}.admin .field{margin:10px 0}.list{list-style:none;padding:0;margin:10px 0 0;display:grid;gap:4px}.list li{display:flex;align-items:center;gap:10px;padding:8px 10px;border-radius:10px;background:#ffffff0a}.list li>span{flex:1;min-width:0}.list li.on{background:#25d9eb38;outline:1px solid var(--fuchsia)}.list li img,.search-results img{width:40px;height:40px;border-radius:6px}.list li span b,.search-results span b{display:block;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.list li span small,.search-results span small{color:var(--muted)}.tracks .start{display:flex;align-items:center;gap:4px;font-size:.8rem;color:var(--muted)}.tracks .start input{width:64px;padding:5px 6px}.ledger li{justify-content:space-between}.search-results{list-style:none;padding:0;display:grid;gap:4px;margin:8px 0}.search-results li{display:flex;align-items:center;gap:10px;padding:6px 8px;border-radius:10px;background:#7566ff1f}.search-results li span{flex:1;min-width:0}.answers{width:100%;border-collapse:collapse;margin-top:10px;font-size:.92rem}.answers td{padding:8px 10px;border-bottom:1px solid var(--line);vertical-align:middle}.answers tr.missing{opacity:.5}.answers .tm{font-weight:600;white-space:nowrap}.answers .tm span{margin-right:6px}.answers .members{display:block;font-weight:400;color:var(--muted);white-space:normal}.tgl{border:1px solid var(--line);background:#ffffff0f;border-radius:8px;padding:4px 9px;cursor:pointer;font-size:.85rem}.tgl.on{background:var(--fuchsia);border-color:var(--fuchsia)}.tgl:hover{border-color:var(--fuchsia)}.mini{width:64px!important;padding:4px 6px!important}.big-num{font-family:var(--title);font-size:2.6rem;color:var(--gold)}.big-num.small{font-size:1.5rem}.now-track{display:flex;gap:14px;align-items:center}.now-track img{width:80px;height:80px;border-radius:10px}.song-tabs{display:flex;flex-wrap:wrap;gap:6px;margin:12px 0}.song-tabs button{border:1px solid var(--line);background:#ffffff0d;padding:6px 12px;border-radius:999px;cursor:pointer;font-size:.85rem}.song-tabs button.on{background:var(--violet);border-color:var(--violet)}.song-tabs button.live{outline:2px solid var(--bad)}.song-editor{display:grid;gap:8px}.lyrics-edit{max-height:420px;overflow:auto;border:1px solid var(--line);border-radius:12px;padding:6px}.le{display:flex;align-items:center;gap:10px;padding:5px 8px;border-radius:8px}.le small{color:var(--muted);width:40px;flex-shrink:0}.le>span:nth-of-type(1){flex:1}.le.dim{opacity:.45}.le.start{background:#7566ff4d}.le.hidden{background:#f5c86b2e;outline:1px solid var(--gold)}.le-actions{display:flex;gap:2px;opacity:.4}.le:hover .le-actions{opacity:1}.le-actions button{border:0;background:none;cursor:pointer;padding:2px}.words{display:flex;flex-wrap:wrap;gap:4px}.words button{border:1px dashed var(--gold);background:none;border-radius:6px;padding:2px 6px;cursor:pointer}.words button.on{background:var(--gold);color:var(--plum);font-weight:800;border-style:solid}.steps li{margin:6px 0}@media (max-width: 800px){.admin-body{grid-template-columns:1fr}.admin-nav{position:static;height:auto;grid-auto-flow:column;overflow-x:auto}.admin-panel{padding:12px}}.emoji-grid.big{grid-template-columns:repeat(5,1fr)}.emoji-grid.big button{font-size:2rem;padding:10px}.play-head .who b{font-size:1.15rem}.blind-play{display:grid;gap:14px;text-align:center;border-radius:24px;transition:background .3s;padding:4px}.blind-play.good{background:#3ee08f2e}.blind-play.bad{background:#ff4f6d26}.found-badges{display:grid;grid-template-columns:1fr 1fr;gap:10px}.found-badges div{padding:12px;border-radius:16px;background:#ffffff12;border:2px solid var(--line);font-weight:800}.found-badges div.ok{border-color:var(--good);background:#3ee08f2e;animation:pop .4s both}.mic-zone{display:grid;justify-items:center;gap:12px;padding:10px 0}.mic{width:168px;height:168px;border-radius:50%;border:0;font-size:4.5rem;cursor:pointer;color:#fff;background:radial-gradient(circle at 35% 30%,var(--fuchsia-2),var(--fuchsia) 45%,var(--violet-2));box-shadow:0 0 0 10px #25d9eb26,0 14px 40px #25d9eb80;transition:transform .15s;-webkit-tap-highlight-color:transparent}.mic:active{transform:scale(.95)}.mic.on{animation:mic-pulse 1s ease-in-out infinite;background:radial-gradient(circle at 35% 30%,#ffe3a3,var(--gold) 45%,#e07b00)}@keyframes mic-pulse{50%{box-shadow:0 0 0 26px #f5c86b26,0 0 60px #f5c86bb3}}.mic-hint{margin:0;color:var(--muted);font-weight:600}.heard{margin:0;font-size:1.2rem;font-weight:800}.type-answer{background:#ffffff14;border:2px solid var(--line);border-radius:14px;padding:16px;font-size:1.2rem;width:100%;outline:none}.type-answer:focus{border-color:var(--fuchsia)}.flash-msg{font-family:var(--title);font-size:2rem;animation:pop .3s both}.flash-msg.good{color:var(--good)}.flash-msg.bad{color:var(--bad)}.tries{margin:0;color:var(--muted);font-size:.9rem}.attempts{list-style:none;padding:0;margin:0;display:grid;gap:4px;font-size:.9rem;color:var(--muted)}.found-feed{display:flex;flex-wrap:wrap;gap:10px;justify-content:center;max-width:90vw}.found-feed .team-chip{font-size:1.4vw}.found-feed .team-chip.full{box-shadow:0 0 20px var(--team)}.found-empty{font-size:1.6vw}.bloopers{margin-top:2vh}.bloopers h3{font-family:var(--title);font-size:2vw;margin:0 0 1vh;color:var(--gold);letter-spacing:1px}.blooper-list{display:flex;flex-wrap:wrap;gap:1.2vw}.blooper{background:#fff6c9;color:var(--plum);padding:1.2vh 1.4vw;border-radius:6px;font-weight:800;font-size:1.5vw;transform:rotate(var(--rot));box-shadow:0 8px 20px #0006;border-top:6px solid var(--team);max-width:26vw}.blooper small{display:block;font-weight:600;font-size:.75em;opacity:.7;margin-top:4px}.paroles-tv .bloopers{text-align:center}.paroles-tv .blooper-list{justify-content:center}.sound-btn{position:fixed;right:1.5vw;bottom:1.5vh;z-index:20;border:0;border-radius:999px;padding:10px 14px;background:#ffffff1a;cursor:pointer;font-size:1.2rem}.sound-btn.big{background:var(--gold);color:var(--plum);font-weight:800;font-size:1rem;animation:pulse 1.6s infinite}.attempt-list{list-style:none;margin:0;padding:0;display:grid;gap:2px}.attempt-list .tgl{margin-left:6px;padding:1px 6px}.player-bar{display:flex;align-items:center;gap:8px;flex-wrap:wrap;padding:10px 12px;margin:6px 0 12px;border-radius:14px;background:#7566ff24;border:1px solid rgba(117,102,255,.4)}.player-bar input[type=range]{flex:1;min-width:140px;padding:0;accent-color:var(--fuchsia);background:none;border:0}.player-bar .time{font-variant-numeric:tabular-nums;font-size:.85rem;color:var(--muted)}.player-bar .play-toggle{min-width:104px}.player-bar .now-name{width:100%;font-size:.8rem;color:var(--muted)}.mic-zone.small{gap:6px;padding:0}.mic.small{width:104px;height:104px;font-size:2.8rem}.sync-tools{display:flex;align-items:center;gap:6px;flex-wrap:wrap;padding:8px 10px;border-radius:12px;background:#f5c86b1a;border:1px solid rgba(245,200,107,.35);font-size:.9rem}.le.now{background:#3ee08f47!important;outline:2px solid var(--good)}.jokers{display:grid;grid-template-columns:1fr 1fr;gap:10px}.joker{display:grid;justify-items:center;gap:2px;padding:10px 8px;border-radius:16px;cursor:pointer;text-align:center;border:2px dashed var(--gold);background:#f5c86b1f}.joker .j-emoji{font-size:1.6rem}.joker b{font-size:.9rem}.joker small{font-size:.72rem;color:var(--muted)}.joker.confirm{background:var(--gold);color:var(--plum);border-style:solid;animation:pulse .8s infinite}.joker.confirm small{color:var(--plum)}.joker.used,.joker:disabled{opacity:.4;cursor:default;border-style:solid;border-color:var(--line);background:#ffffff0a}.joker-feed{display:flex;flex-wrap:wrap;gap:10px;justify-content:center}.joker-feed .team-chip{font-size:1.3vw}.joker-off{opacity:.25;filter:grayscale(1)}.show-eyebrow{color:var(--fuchsia);font-weight:800;letter-spacing:.15em;font-size:.8rem}.show-control{border:1px solid rgba(37,217,235,.4);background:linear-gradient(135deg,#25d9eb1a,#7566ff1a)}.show-control h1{font-family:var(--title);font-size:clamp(1.8rem,4vw,3rem);margin:16px 0;overflow-wrap:anywhere}.show-track{display:flex;align-items:center;justify-content:space-between;gap:20px;padding:20px 0}.show-track h2{font-size:1.8rem;margin:12px 0 6px}.show-actions{display:flex;flex-wrap:wrap;gap:14px;margin:16px 0}.show-actions .btn{min-height:64px;min-width:180px}.up-next{border-top:1px solid var(--line);padding:18px 0;margin-top:20px;color:var(--muted)}.up-next b{color:var(--ink)}.set-grid,.live-answers{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,240px),1fr));gap:16px}.set-card{border:1px solid var(--line);border-radius:18px;padding:22px;background:#ffffff0a}.set-card h3{font-size:1.4rem;overflow-wrap:anywhere}.set-card>span{color:var(--muted);font-size:.85rem}.selection-library{max-height:370px;overflow-y:auto;margin:18px 0;border:1px solid var(--line);border-radius:12px}.selection-row{display:flex;align-items:center;gap:14px;padding:12px;border-bottom:1px solid var(--line);cursor:pointer}.selection-row>span{flex:1}.selection-row small{display:block;color:var(--muted);font-size:.75rem}.selection-row input{width:20px;height:20px;flex-shrink:0;accent-color:var(--fuchsia)}.archive{padding:18px 0;border-bottom:1px solid var(--line)}summary{cursor:pointer;padding:12px 0;font-weight:600}.archive li{padding:5px 0}.recovery-code{margin:0 18px;padding:8px 12px;border:1px solid var(--line);border-radius:14px;font-size:.8rem}.recovery-code>b{display:block;font-size:2rem;letter-spacing:.2em;color:var(--gold)}.recovery-code p{color:var(--muted)}.theme-intro{min-height:70vh;display:flex;align-items:center;justify-content:center;flex-direction:column;text-align:center;gap:1.5vh}.theme-intro h1{font-family:var(--title);font-size:clamp(2rem,7vw,7rem);line-height:1.15;margin:1vh 0;color:var(--gold);max-width:90vw;overflow-wrap:anywhere;text-shadow:0 0 30px rgba(245,200,107,.35);animation:pop .5s ease-out}.theme-intro>p{font-size:2vw;margin:0}.theme-intro .mega-emoji{font-size:7vw}.pause-tv h1{color:var(--gold)}.pause-tv strong{font-size:2vw}.ranking-theme{text-align:center;font-size:1.7vw;color:var(--muted)}.rank-up{color:var(--good);font-size:1.1vw;display:inline-block;padding-left:12px}.rank-down{color:var(--muted);font-size:1.1vw;padding-left:12px}.reveal-show{animation:reveal-show .65s ease-out both}.reveal-show .cover-xl{box-shadow:0 0 70px #25d9eb4d}@keyframes reveal-show{0%{opacity:0;transform:scale(.9) translateY(18px)}to{opacity:1;transform:scale(1) translateY(0)}}@media (max-width: 750px){.show-track{flex-wrap:wrap}.show-actions .btn{width:100%}.selection-row{flex-wrap:wrap}.selection-row>small{width:100%;padding-left:34px}}@media (prefers-reduced-motion: reduce){.reveal-show,.theme-intro h1{animation:none}}.tv-join-qr{position:fixed;left:max(16px,env(safe-area-inset-left));bottom:max(16px,env(safe-area-inset-bottom));z-index:25;width:clamp(140px,12vw,230px);padding:10px;background:#fff;color:#132333;border-radius:14px;display:grid;gap:6px;text-align:center;box-shadow:0 4px 24px #0005}.tv-join-qr img{display:block;width:100%;height:auto}.tv-join-qr strong{font-size:clamp(12px,1vw,18px)}.tv-main{margin-left:calc(clamp(140px,12vw,230px) + 20px)}.lobby{grid-template-columns:1fr}@font-face{font-family:Creepster;src:url(/themes/halloween/creepster.ttf) format("truetype");font-display:swap}html[data-theme=halloween]{--fuchsia: #ff922e;--fuchsia-2: #ffc17c;--violet: #9d5eea;--violet-2: #54258a;--gold: #ffcf83;--plum: #100a1c;--plum-2: #251336;--ink: #fff4e9;--muted: #d0bedf;--line: #b88cdd40;--card: #1a1029e8;--good: #80f0a6;--bad: #ff7e75}html[data-theme=halloween] body{background:#100a1c}.hw-decor{position:fixed;top:0;right:0;bottom:0;left:0;pointer-events:none;overflow:hidden;z-index:-1;background:#100a1c}html[data-theme=halloween] #root{position:relative;isolation:isolate;min-height:100vh}.hw-landscape,.hw-shade{position:absolute;top:0;right:0;bottom:0;left:0}.hw-landscape{background:url(/themes/halloween/manor.jpg) center / cover no-repeat}.hw-shade{background:radial-gradient(ellipse at 52% 45%,#130b2520,#130b2500 45%,#08051065)}.hw-fog{position:absolute;bottom:-12%;left:-20%;width:140%;height:40%;background:radial-gradient(ellipse at 30% 65%,#bc98f32b,transparent 60%),radial-gradient(ellipse at 75% 60%,#c9afef20,transparent 65%);animation:hw-drift 24s ease-in-out infinite alternate}.hw-fog-two{bottom:-20%;animation-direction:alternate-reverse;animation-duration:32s;opacity:.7}.hw-bat{position:absolute;width:clamp(35px,4vw,85px);fill:#090510;top:16%;left:-12%;animation:hw-flight 29s linear infinite}.hw-bat-1{animation-delay:-9s;top:23%;width:45px}.hw-bat-2{animation-delay:-18s;top:9%;width:30px}.hw-ghost{position:absolute;width:clamp(40px,5vw,85px);right:2%;bottom:15%;opacity:.6;animation:hw-float 7s ease-in-out infinite}.hw-ember{position:absolute;width:22vw;height:24vh;bottom:0;border-radius:50%;background:radial-gradient(ellipse,#ff6a0024,transparent 65%);animation:hw-glow 6s ease-in-out infinite alternate}.hw-ember-left{left:0}.hw-ember-right{right:0;animation-delay:-3s}@keyframes hw-flight{0%,75%{transform:translate(-15vw) scale(.6);opacity:0}77%{opacity:.8}86%{transform:translate(65vw,-6vh) scale(1);opacity:.9}98%,to{transform:translate(125vw,4vh) scale(.7);opacity:0}}@keyframes hw-drift{0%{transform:translate(-5%) scale(1)}to{transform:translate(6%) scale(1.12)}}@keyframes hw-float{50%{transform:translateY(-18px) rotate(5deg);opacity:.8}}@keyframes hw-glow{to{opacity:.35;transform:scale(.94)}}@keyframes hw-arrive{0%{opacity:0;transform:translateY(14px) scale(.985)}to{opacity:1;transform:none}}@keyframes hw-reveal{0%{opacity:0;transform:scale(.95);filter:brightness(1.6)}to{opacity:1;transform:none;filter:brightness(1)}}@keyframes hw-count{50%{filter:drop-shadow(0 0 22px #ff771c);transform:scale(1.04)}}.hw-title{text-align:center;text-shadow:0 4px 24px #08020f}.hw-kicker{display:block;color:#e1c4fa;font-size:clamp(12px,1.1vw,22px);letter-spacing:.3em;font-weight:800;margin-bottom:2vh}.hw-title h1{font-family:Creepster,fantasy;font-weight:400;font-size:clamp(60px,8.2vw,165px);line-height:.95;letter-spacing:.025em;margin:0;color:#fff3e4;text-shadow:0 5px 0 #261138,0 0 44px #b989eb30}.hw-title h1 strong{display:block;font-size:.75em;font-weight:400;color:#ff922e;margin-top:.12em;text-shadow:0 4px 0 #5c230f,0 0 35px #ff680045}.hw-title p{font-size:clamp(14px,1.3vw,25px);color:#e4d6ed;margin:2.5vh 0}.hw-title-small h1{font-size:clamp(44px,8vw,72px)}.hw-title-small p{font-size:14px}.hw-title-small .hw-kicker{font-size:11px}html[data-theme=halloween] .logo{color:#fff4e9;text-shadow:0 0 16px #c78cff55,0 3px 0 #4d2364}html[data-theme=halloween] .logo span{color:#ff9a38;text-shadow:0 0 20px #ff782e44}html[data-theme=halloween] .btn{background:linear-gradient(135deg,#ffb13d,#ff791b);color:#241105;box-shadow:0 5px 22px #ff7c142e,inset 0 1px #ffe6ba90}html[data-theme=halloween] .btn.ghost{background:#251634dc;color:#fff4e9;box-shadow:inset 0 0 0 1px #b38ad052}html[data-theme=halloween] .btn.alt{background:linear-gradient(135deg,#c49bff,#8e55dc);color:#180a28}html[data-theme=halloween] :is(button,a,input,select,textarea):focus-visible{outline:3px solid #ffd6a0;outline-offset:4px}html[data-theme=halloween] :is(input,textarea,select){background:#130d20;border-color:#ac80d05c;color:#fff5eb}html[data-theme=halloween] input::placeholder,html[data-theme=halloween] textarea::placeholder{color:#b9a8c5}html[data-theme=halloween] :is(.card,.join,.answer-form,.waiting,.result){background:#160f23e8;border:1px solid #ac80d04d;border-radius:22px;box-shadow:0 18px 48px #07030c4a}html[data-theme=halloween] :is(.tag,.chip,.team-chip){border:1px solid #c08be54a;background-color:#170f24e8;color:#ffeddb}html[data-theme=halloween] .neon{font-family:Creepster,fantasy;font-weight:400;letter-spacing:.035em;color:#fff0df;text-shadow:0 0 25px #ff8b2540,0 4px 0 #321039}html[data-theme=halloween] .tv{padding:2.6vh 3vw}html[data-theme=halloween] .tv .sparkles{display:none}html[data-theme=halloween] .tv-head{padding:12px 18px;border:1px solid #b889d633;border-radius:16px;background:#110a1cbd}html[data-theme=halloween] .tv-meta{color:#efddff}html[data-theme=halloween] .tv-main{margin-left:calc(clamp(140px,12vw,230px) + 32px);margin-right:2vw;padding:3vh 1vw;animation:hw-arrive .55s ease-out both}html[data-theme=halloween] .tv-main>:is(.bt-tv,.bt-reveal,.paroles-tv,.scores-tv,.podium-tv,.round-intro,.theme-intro){background:linear-gradient(130deg,#170c29e8,#160d25d9);border:1px solid #b687d94a;padding:3vh 2vw;border-radius:26px;box-shadow:0 12px 70px #04010965,inset 0 1px #e3bdff16}html[data-theme=halloween] .tv-join-qr{box-shadow:0 0 0 3px #ffc58d,0 0 32px #ff8a2260;color:#281333;border-radius:18px}html[data-theme=halloween] .tv-join-qr img{padding:4px;background:#fff}html[data-theme=halloween] .hw-qr-large{width:clamp(195px,21vw,380px);bottom:5vh;left:3vw;padding:16px;gap:8px}html[data-theme=halloween] .hw-qr-large strong{font-size:clamp(17px,1.6vw,29px)}.hw-room-label{font-size:11px;letter-spacing:.2em;margin-top:4px}.hw-room-code{font:800 clamp(24px,2.8vw,48px)/1.1 "Poppins",sans-serif;letter-spacing:.18em;color:#5b287c}html[data-theme=halloween] .hw-tv-lobby .tv-main{margin-left:25vw;margin-right:6vw}html[data-theme=halloween] .hw-tv-lobby .team-cloud{justify-content:center;max-height:22vh;overflow:auto;margin-top:3vh}html[data-theme=halloween] .hw-tv-lobby .team-chip{font-size:clamp(13px,1.2vw,22px)}html[data-theme=halloween] .tv .countdown{color:#ffdcae;filter:drop-shadow(0 0 12px #ff740057)}html[data-theme=halloween] .tv .countdown span,html[data-theme=halloween] .play .countdown span,html[data-theme=halloween] .spot-team b{font-family:Poppins,sans-serif;font-weight:800}html[data-theme=halloween] .tv .countdown.hurry{animation:hw-count 1s ease-in-out infinite}html[data-theme=halloween] .countdown .bar{stroke:#ff9b3e}html[data-theme=halloween] .bt-tv{gap:1.7vh}html[data-theme=halloween] .bt-tv .vinyl-wrap{display:none}html[data-theme=halloween] .bt-tv h1{font-family:Poppins,sans-serif;font-size:clamp(23px,2.8vw,48px)}html[data-theme=halloween] .eq{height:10vh;gap:.6vw}html[data-theme=halloween] .eq i{width:.7vw;background:linear-gradient(#d2a6ff,#a563ee 45%,#ff922e);border-radius:10px;box-shadow:0 0 15px #c072e733}html[data-theme=halloween] .bt-row .countdown{width:clamp(145px,15vw,250px)!important;height:clamp(145px,15vw,250px)!important}html[data-theme=halloween] .bt-row .countdown span{font-size:clamp(52px,5vw,92px)!important}html[data-theme=halloween] .reveal-show{animation:hw-reveal .65s ease-out both}html[data-theme=halloween] .cover-xl{border:2px solid #ffc17b;box-shadow:0 0 40px #ff8b2533}html[data-theme=halloween] .found-feed{max-height:17vh;overflow:auto}html[data-theme=halloween] .team-chip.full{box-shadow:0 0 22px #8ce3a82b;border-color:#8ce3a8}html[data-theme=halloween] .lyrics{background:#0f0918a6;border:1px solid #af86d02b;border-radius:20px;padding:2vh 1vw}html[data-theme=halloween] .lyric.current{color:#ffdda7;text-shadow:0 0 18px #ff8d2738}html[data-theme=halloween] .blank{color:#cfabf7}html[data-theme=halloween] .score-row{background:#21122fe8;border:1px solid #ae7ed14f;border-left:4px solid var(--team);animation:hw-arrive .5s both}html[data-theme=halloween] .score-row .rank,html[data-theme=halloween] .score-row .pts{font-family:Poppins,sans-serif;font-weight:800}html[data-theme=halloween] .score-row:first-child{background:linear-gradient(100deg,#51301d,#2c173a);border-color:#ffa43d88;box-shadow:0 0 20px #ff84231a}html[data-theme=halloween] .score-row .bar i{background:linear-gradient(90deg,#9863db,#ff9b36)}html[data-theme=halloween] .podium-tv.hw-podium-finale{grid-template-rows:auto auto 1fr}html[data-theme=halloween] .podium .step{background:linear-gradient(180deg,#733f9a,#28123f);border:1px solid #d1a5ff65;box-shadow:inset 0 4px #d0a5ff60,0 0 25px #9c5ee926}html[data-theme=halloween] .podium .p1 .step{background:linear-gradient(180deg,#d77822,#542444);border-color:#ffd698;box-shadow:0 0 40px #ff932c30}html[data-theme=halloween] .podium .step{flex-shrink:0}html[data-theme=halloween] .podium .p1 .step{height:30vh!important}html[data-theme=halloween] .podium .p2 .step{height:22vh!important}html[data-theme=halloween] .podium .p3 .step{height:15vh!important}html[data-theme=halloween] .podium .mega-emoji{font-size:10vh;line-height:1.1}html[data-theme=halloween] .podium .spot-team b{font-size:clamp(16px,1.8vw,36px);overflow-wrap:anywhere}.hw-finale{margin:0;color:#ffdca9;letter-spacing:.1em;font-size:clamp(14px,1.4vw,26px)}html[data-theme=halloween] body[data-page=play] .hw-landscape{background-position:65% center}html[data-theme=halloween] body[data-page=play] .hw-shade{background:linear-gradient(#16092420,#10091de6 50%)}html[data-theme=halloween] .play{position:relative}html[data-theme=halloween] .join{padding:24px 18px;margin:18px 0}html[data-theme=halloween] .join .hw-title{margin:5px 0 8px}html[data-theme=halloween] .play-head{background:#180d27ed;border-bottom-color:#a378cc55}html[data-theme=halloween] :is(.waiting,.result,.answer-form){padding:24px 18px}html[data-theme=halloween] .play .btn,html[data-theme=halloween] .play .tgl{min-height:48px}html[data-theme=halloween] .mic{background:radial-gradient(circle at 30% 20%,#ffbd5c,#f47615);color:#29100b;box-shadow:0 0 0 8px #ff9b2420,0 0 35px #ff791c33}html[data-theme=halloween] .mic.on{background:radial-gradient(circle at 30% 20%,#dfb4ff,#9357dd);box-shadow:0 0 0 10px #b578ec22,0 0 40px #9d63e64d}html[data-theme=halloween] .result{border-color:#ffb64c80;animation:hw-reveal .5s ease-out both}html[data-theme=halloween] .home{position:relative}html[data-theme=halloween] .home-links{margin-top:20px}html[data-theme=halloween] .admin-top{background:#160d22f5;border-color:#af80ce44}html[data-theme=halloween] .admin-nav{background:#170d23ed}html[data-theme=halloween] .admin-nav button.on{background:linear-gradient(100deg,#653327,#39204b);color:#ffce8c}html[data-theme=halloween] body[data-page=admin] .hw-landscape{opacity:.22}html[data-theme=halloween] body[data-page=admin] :is(.hw-fog,.hw-ghost,.hw-bat,.hw-ember){display:none}.theme-options{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:18px;margin:24px 0}.theme-option{display:grid;gap:12px;text-align:left;padding:24px;background:#121a2d;color:#fff;border:2px solid #ffffff25;border-radius:20px;cursor:pointer}.theme-option b{font-size:25px}.theme-option small{line-height:1.6;color:#d5d2df}.theme-option>span:last-child{font-weight:800}.theme-option[aria-pressed=true]{border-color:#ffd18a;box-shadow:0 0 0 3px #ffd18a18}.theme-swatch{display:grid;place-content:center;font-size:46px;height:130px;border-radius:12px;background:radial-gradient(ellipse,var(--swatch),#141022 80%)}.theme-option-halloween .theme-swatch{background:linear-gradient(#160b2230,#160b2270),url(/themes/halloween/manor-mobile.jpg) center / cover}@media (max-width: 650px){.hw-landscape{background-image:url(/themes/halloween/manor-mobile.jpg)}.hw-fog-two,.hw-bat-1,.hw-bat-2,.hw-ghost,.hw-ember{display:none}.hw-fog-one{animation:none;opacity:.35}.hw-bat-0{animation-duration:40s}html[data-theme=halloween] .hw-title-small h1{font-size:clamp(42px,12vw,66px)}html[data-theme=halloween] .play{padding-left:12px;padding-right:12px}html[data-theme=halloween] .answer-form .mic{width:118px;height:118px;font-size:3rem}html[data-theme=halloween] .answer-form .mic-zone{padding:4px 0;gap:10px}html[data-theme=halloween] .answer-form .field{margin:4px 0}html[data-theme=halloween] .join{padding:20px 14px}.theme-options{grid-template-columns:1fr}}@media (prefers-reduced-motion: reduce){html[data-theme=halloween] *,html[data-theme=halloween] *:before,html[data-theme=halloween] *:after{animation:none!important;transition:none!important;scroll-behavior:auto!important}.hw-bat{display:none}}
