:root{
  --bg:#061733;
  --bg2:#092a61;
  --panel:rgba(9,24,54,.78);
  --panel2:rgba(255,255,255,.09);
  --text:#ffffff;
  --muted:rgba(255,255,255,.72);
  --line:rgba(255,255,255,.16);
  --yellow:#ffd644;
  --orange:#ff7a1a;
  --cyan:#19c7ff;
  --blue:#10a8ff;
  --red:#ff404f;
  --green:#27e58b;
  --shadow:0 22px 70px rgba(0,0,0,.35);
  --radius:28px;
  font-family:Inter,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",Arial,sans-serif;
}
*{box-sizing:border-box}
html,body{margin:0;min-height:100%;background:var(--bg);color:var(--text)}
body{background:
  radial-gradient(circle at 20% 10%,rgba(25,199,255,.22),transparent 28%),
  radial-gradient(circle at 80% 15%,rgba(255,122,26,.18),transparent 30%),
  radial-gradient(circle at 50% 90%,rgba(255,214,68,.15),transparent 34%),
  linear-gradient(135deg,#041025,#0a2d6a 55%,#07152f);
}
button,input,select{font:inherit}
button{border:0;cursor:pointer;color:var(--text);font-weight:900;transition:.18s ease;box-shadow:0 12px 28px rgba(0,0,0,.18)}
button:active{transform:scale(.98)}
button:disabled{opacity:.48;cursor:not-allowed;transform:none}
a{color:inherit;text-decoration:none}.hidden{display:none!important}.muted{color:var(--muted)}.tiny-note{font-size:.82rem;color:var(--muted);line-height:1.35}.eyebrow{margin:0;color:var(--yellow);text-transform:uppercase;letter-spacing:.14em;font-size:.75rem;font-weight:900}.badge{display:inline-flex;align-items:center;justify-content:center;border-radius:999px;padding:.45rem .8rem;background:linear-gradient(135deg,var(--yellow),var(--orange));color:#17213b;font-weight:1000;font-size:.78rem;letter-spacing:.05em;text-transform:uppercase}.field-label{display:block;margin:.9rem 0 .4rem;font-size:.82rem;color:var(--muted);font-weight:800;text-transform:uppercase;letter-spacing:.06em}.text-input,.select-input{width:100%;border:1px solid var(--line);border-radius:18px;background:rgba(255,255,255,.12);color:white;padding:1rem;outline:0;font-weight:800}.select-input option{color:#111}.alert-line{background:rgba(255,64,79,.16);border:1px solid rgba(255,64,79,.25);padding:.75rem;border-radius:14px}

/* JUGADOR */
.player-page{min-height:100svh;display:grid;place-items:center;padding:18px;overflow-x:hidden}.phone-shell{width:min(440px,100%)}.phone-card{background:linear-gradient(180deg,rgba(255,255,255,.14),rgba(255,255,255,.06));border:1px solid var(--line);border-radius:32px;padding:22px;box-shadow:var(--shadow);backdrop-filter:blur(18px)}.hero-card{text-align:center}.phone-logo{width:100%;border-radius:22px;box-shadow:0 18px 48px rgba(0,0,0,.3);margin-bottom:10px}.phone-card h1{font-size:clamp(2rem,10vw,3rem);line-height:.9;margin:.35rem 0;color:#fff;text-shadow:0 5px 0 rgba(0,0,0,.18),0 0 24px rgba(25,199,255,.5)}.team-picker{display:grid;grid-template-columns:1fr 1fr;gap:10px}.team-option{padding:1rem;border-radius:18px;background:rgba(255,255,255,.13);border:2px solid transparent}.team-option[data-team="AZUL"].active{background:linear-gradient(135deg,#0477ff,#16d2ff);border-color:#b9f3ff}.team-option[data-team="ROJO"].active{background:linear-gradient(135deg,#e51a38,#ff7a1a);border-color:#ffd4b0}.primary-action{width:100%;margin-top:16px;padding:1.05rem;border-radius:20px;background:linear-gradient(135deg,var(--yellow),var(--orange));color:#142040;font-size:1.05rem}.player-topbar{display:flex;justify-content:space-between;align-items:center;gap:12px}.player-topbar small{display:block;color:var(--muted);font-size:.75rem}.player-topbar strong{display:block;font-size:1.05rem}.ghost-btn{background:rgba(255,255,255,.12);border:1px solid var(--line);border-radius:14px;padding:.7rem .8rem;font-size:.8rem}.mini-score-row{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin:18px 0}.score-mini{border-radius:22px;padding:14px;background:rgba(255,255,255,.1);display:flex;justify-content:space-between;align-items:center}.score-mini span{font-weight:1000;font-size:.82rem}.score-mini b{font-size:2rem}.score-mini.blue{border:2px solid rgba(25,199,255,.55)}.score-mini.red{border:2px solid rgba(255,64,79,.6)}.song-status{text-align:center;background:rgba(0,0,0,.18);border:1px solid var(--line);border-radius:24px;padding:18px;margin-bottom:16px}.song-status h2{font-size:clamp(1.35rem,8vw,2.2rem);line-height:1.05;margin:12px 0}.buzz-button{width:100%;min-height:190px;border-radius:32px;background:radial-gradient(circle at 35% 20%,#fff3aa,transparent 22%),linear-gradient(135deg,#ffda45,#ff6c14 56%,#e92935);color:#151d36;text-shadow:0 1px rgba(255,255,255,.3);border:5px solid rgba(255,255,255,.7);box-shadow:0 18px 0 #9f3112,0 28px 60px rgba(255,122,26,.34)}.buzz-button span{display:block;font-size:clamp(2.15rem,12vw,3.5rem);line-height:.9}.buzz-button small{display:block;margin-top:10px;font-size:.86rem;color:rgba(20,32,64,.8)}.buzz-button:disabled{filter:grayscale(.2);box-shadow:0 8px 0 rgba(0,0,0,.2);background:linear-gradient(135deg,#79839a,#3c4a6d);color:white}.status-box{margin-top:18px;padding:15px;border-radius:18px;background:rgba(255,255,255,.1);border:1px solid var(--line);text-align:center;font-weight:800}.answer-box{margin-top:14px;padding:14px;border-radius:18px;background:rgba(39,229,139,.16);border:1px solid rgba(39,229,139,.35);text-align:center}.answer-box small{display:block;color:var(--muted)}.answer-box strong{font-size:1.3rem;color:#b8ffd9}.team-red .buzz-button{background:radial-gradient(circle at 35% 20%,#fff3aa,transparent 22%),linear-gradient(135deg,#ff7a1a,#ff4050 60%,#b50b2c);box-shadow:0 18px 0 #6d1021,0 28px 60px rgba(255,64,79,.34)}

/* PANTALLA */
.screen-page{height:100svh;overflow:hidden}.stage{width:100vw;height:100svh;display:grid;grid-template-rows:auto auto 1fr auto auto;gap:1.1vh;padding:2vh 2.2vw;background:radial-gradient(circle at 50% 45%,rgba(25,199,255,.18),transparent 32%)}.stage-header{display:flex;align-items:center;justify-content:space-between}.brand-box{display:flex;align-items:center;gap:1.2vw}.stage-logo{height:12vh;max-height:115px;border-radius:22px;box-shadow:0 16px 44px rgba(0,0,0,.38)}.stage-header h1{font-size:clamp(2rem,4.8vw,5.4rem);margin:0;line-height:.82;text-transform:uppercase;text-shadow:0 .35vw 0 rgba(0,0,0,.25),0 0 28px rgba(25,199,255,.48)}.round-pill{border-radius:999px;padding:.7rem 1.1rem;background:rgba(255,255,255,.13);border:1px solid var(--line);font-weight:1000;font-size:clamp(1rem,1.5vw,1.5rem)}.scoreboard{display:grid;grid-template-columns:1fr 1.2fr 1fr;gap:1vw;align-items:stretch}.team-score{border-radius:24px;padding:1vh 1.5vw;display:flex;justify-content:space-between;align-items:center;border:2px solid rgba(255,255,255,.22);background:rgba(0,0,0,.25)}.team-score span{text-transform:uppercase;font-size:clamp(1rem,1.6vw,1.55rem);font-weight:1000}.team-score strong{font-size:clamp(3rem,5.2vw,6.6rem);line-height:.8}.team-blue{box-shadow:inset 0 0 35px rgba(25,199,255,.35);border-color:rgba(25,199,255,.55)}.team-red{box-shadow:inset 0 0 35px rgba(255,64,79,.35);border-color:rgba(255,64,79,.55)}.center-status{border-radius:24px;background:rgba(255,255,255,.1);border:1px solid var(--line);display:grid;place-items:center;text-align:center;padding:0 1vw;color:var(--yellow);font-size:clamp(1.05rem,1.8vw,2rem);font-weight:1000}.song-board{position:relative;display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;border-radius:36px;padding:2vh 3vw;background:linear-gradient(180deg,rgba(255,255,255,.15),rgba(255,255,255,.06));border:1px solid var(--line);box-shadow:var(--shadow);overflow:hidden}.song-board:before{content:"♪ ♫ ♪ ♬";position:absolute;inset:auto 0 -5vh 0;font-size:18vw;line-height:1;color:rgba(255,255,255,.04);font-weight:1000;letter-spacing:.1em}.song-board.is-active{animation:pulseBoard 1.3s ease-in-out infinite}.song-board.is-revealed{box-shadow:0 0 0 4px rgba(39,229,139,.28),var(--shadow)}@keyframes pulseBoard{0%,100%{box-shadow:0 0 0 0 rgba(255,214,68,.0),var(--shadow)}50%{box-shadow:0 0 0 10px rgba(255,214,68,.14),var(--shadow)}}.category-line{position:relative;z-index:1}.category-line span{display:inline-flex;border-radius:999px;background:linear-gradient(135deg,var(--cyan),#70e7ff);color:#06264f;padding:.6rem 1.3rem;font-size:clamp(.9rem,1.5vw,1.45rem);font-weight:1000;text-transform:uppercase}.song-meta{position:relative;z-index:1;margin:1.2vh 0 0;color:var(--muted);font-size:clamp(.9rem,1.4vw,1.4rem);font-weight:800}.song-board h2{position:relative;z-index:1;margin:1.6vh 0;font-size:clamp(2.4rem,5.8vw,7rem);line-height:.98;max-width:95%;text-shadow:0 .25vw 0 rgba(0,0,0,.22)}.hint-line{position:relative;z-index:1;margin:.5vh 0;color:var(--yellow);font-weight:900;font-size:clamp(1rem,1.8vw,2rem)}.answer-reveal{position:relative;z-index:1;margin-top:2vh;border-radius:24px;background:rgba(39,229,139,.18);border:2px solid rgba(39,229,139,.5);padding:1.4vh 2vw}.answer-reveal small{display:block;color:rgba(255,255,255,.72);font-weight:900;text-transform:uppercase}.answer-reveal strong{display:block;font-size:clamp(2rem,4.2vw,5rem);line-height:.95;color:#c3ffde}.responder-panel{display:flex;justify-content:center;align-items:center;gap:1rem;border-radius:24px;padding:1vh 1.6vw;background:rgba(255,255,255,.1);border:1px solid var(--line);min-height:7vh}.responder-panel span{color:var(--muted);font-weight:900;text-transform:uppercase;letter-spacing:.07em}.responder-panel strong{font-size:clamp(1.3rem,2.4vw,3rem);line-height:1}.responder-panel.has-responder{background:linear-gradient(135deg,rgba(25,199,255,.28),rgba(255,255,255,.1));border-color:rgba(25,199,255,.65);animation:popIn .4s ease}.responder-panel.has-responder.red{background:linear-gradient(135deg,rgba(255,64,79,.28),rgba(255,255,255,.1));border-color:rgba(255,64,79,.65)}@keyframes popIn{0%{transform:scale(.96)}100%{transform:scale(1)}}.players-strip{display:grid;grid-template-columns:auto 1fr;gap:1vw;align-items:center;border-radius:24px;background:rgba(0,0,0,.18);border:1px solid var(--line);padding:1vh 1vw;min-height:8vh}.players-strip h3{margin:0;font-size:clamp(.9rem,1.1vw,1.2rem)}.players-strip p{margin:.2rem 0 0;color:var(--muted)}.players-list{display:flex;flex-wrap:wrap;gap:.45rem;justify-content:flex-end}.player-chip{border-radius:999px;padding:.48rem .8rem;font-size:clamp(.75rem,.95vw,1rem);font-weight:900;background:rgba(255,255,255,.12);border:1px solid var(--line)}.player-chip.blue{border-color:rgba(25,199,255,.5)}.player-chip.red{border-color:rgba(255,64,79,.5)}.player-chip.offline{opacity:.45}.empty-mini{color:var(--muted)}.audio-unlock{position:fixed;z-index:10;top:18px;right:18px;border-radius:999px;background:linear-gradient(135deg,var(--yellow),var(--orange));color:#15213b;padding:.85rem 1rem}

/* ADMIN */
.admin-page{min-height:100svh;padding:18px}.admin-layout{max-width:1440px;margin:auto}.admin-header{display:flex;align-items:center;justify-content:space-between;gap:18px;margin-bottom:18px}.admin-brand{display:flex;align-items:center;gap:14px}.admin-brand img{width:138px;border-radius:18px;box-shadow:0 15px 35px rgba(0,0,0,.3)}.admin-brand h1{margin:0;font-size:clamp(1.8rem,4vw,3.8rem);line-height:.9;text-transform:uppercase}.quick-links{display:flex;gap:10px;flex-wrap:wrap}.quick-links a{border-radius:999px;background:rgba(255,255,255,.12);border:1px solid var(--line);padding:.75rem 1rem;font-weight:900}.admin-grid{display:grid;grid-template-columns:1.25fr .9fr;gap:16px}.admin-card{background:linear-gradient(180deg,rgba(255,255,255,.13),rgba(255,255,255,.06));border:1px solid var(--line);border-radius:26px;padding:18px;box-shadow:0 18px 50px rgba(0,0,0,.22)}.card-head{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:12px}.card-head h2{margin:0;font-size:1.2rem}.current-song strong{color:var(--yellow);font-size:.9rem;text-transform:uppercase;letter-spacing:.08em}.current-song h3{font-size:clamp(1.6rem,3vw,3rem);line-height:1.02;margin:.55rem 0}.hint-admin{color:var(--cyan);font-weight:800}.admin-answer{border-radius:18px;background:rgba(39,229,139,.12);border:1px solid rgba(39,229,139,.34);padding:12px;margin-top:12px}.admin-answer small{display:block;color:var(--muted)}.admin-answer b{font-size:1.25rem}.responder-admin{margin-top:12px;border-radius:18px;background:rgba(255,255,255,.1);border:1px solid var(--line);padding:14px;font-weight:900}.responder-admin.active.blue{border-color:rgba(25,199,255,.6);background:rgba(25,199,255,.15)}.responder-admin.active.red{border-color:rgba(255,64,79,.6);background:rgba(255,64,79,.15)}.score-control-grid{display:grid;grid-template-columns:1fr 1fr;gap:12px}.score-control{border-radius:22px;padding:16px;background:rgba(255,255,255,.1);border:2px solid var(--line);text-align:center}.score-control.blue{border-color:rgba(25,199,255,.55)}.score-control.red{border-color:rgba(255,64,79,.55)}.score-control span{font-weight:1000}.score-control strong{display:block;font-size:4rem;line-height:.9;margin:8px 0}.score-control button,.small-btn{border-radius:14px;background:rgba(255,255,255,.14);padding:.75rem .9rem;margin:3px}.admin-buttons{display:grid;gap:10px}.main-actions{grid-template-columns:repeat(2,minmax(0,1fr));margin-top:14px}.sound-actions{grid-template-columns:repeat(3,minmax(0,1fr))}.system-actions{grid-template-columns:1fr 1fr}.admin-buttons button{border-radius:18px;background:rgba(255,255,255,.13);border:1px solid var(--line);padding:1rem}.btn-start{background:linear-gradient(135deg,var(--yellow),var(--orange))!important;color:#142040!important}.btn-blue{background:linear-gradient(135deg,#0477ff,#16d2ff)!important}.btn-red,.danger{background:linear-gradient(135deg,#e51a38,#ff7a1a)!important}.btn-wrong{background:linear-gradient(135deg,#5d657c,#242d46)!important}.players-card,.system-card{grid-column:auto}.admin-players-list{display:grid;gap:8px;max-height:280px;overflow:auto}.admin-player-row{display:flex;justify-content:space-between;gap:8px;border-radius:16px;padding:10px 12px;background:rgba(255,255,255,.1);border:1px solid var(--line)}.admin-player-row.blue{border-color:rgba(25,199,255,.4)}.admin-player-row.red{border-color:rgba(255,64,79,.4)}.admin-player-row span{color:var(--muted)}.instructions-box{margin-top:12px;border-radius:18px;background:rgba(0,0,0,.18);border:1px solid var(--line);padding:14px;color:var(--muted);line-height:1.45}.instructions-box code{color:var(--yellow)}

/* ADMIN MOVIL */
.admin-mobile-page{min-height:100svh;padding:12px}.mobile-admin-shell{max-width:520px;margin:auto}.mobile-admin-header{display:flex;align-items:center;gap:10px;margin-bottom:12px}.mobile-admin-header img{width:96px;border-radius:16px}.mobile-admin-header small{color:var(--yellow);font-weight:900;text-transform:uppercase}.mobile-admin-header h1{margin:0;font-size:1.7rem;line-height:.9;text-transform:uppercase}.mobile-score-line{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin-bottom:10px}.mobile-score-line div{border-radius:20px;padding:12px;display:flex;justify-content:space-between;align-items:center;background:rgba(255,255,255,.1);border:1px solid var(--line)}.mobile-score-line .blue{border-color:rgba(25,199,255,.55)}.mobile-score-line .red{border-color:rgba(255,64,79,.55)}.mobile-score-line b{font-size:2.5rem;line-height:.8}.mobile-current-card{border-radius:24px;background:rgba(255,255,255,.11);border:1px solid var(--line);padding:14px;margin-bottom:10px}.mobile-current-card h2{font-size:1.45rem;line-height:1.05;margin:10px 0}.mobile-current-card p{color:var(--muted);font-weight:800}.mobile-responder{border-radius:16px;background:rgba(255,255,255,.1);border:1px solid var(--line);padding:12px;font-weight:900}.mobile-responder.active.blue{border-color:rgba(25,199,255,.65)}.mobile-responder.active.red{border-color:rgba(255,64,79,.65)}.mobile-control-grid,.mobile-extra-grid{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin-bottom:10px}.mobile-control-grid button,.mobile-extra-grid button,.mobile-details button{border-radius:18px;background:rgba(255,255,255,.13);border:1px solid var(--line);padding:1rem;min-height:58px}.mobile-details{border-radius:20px;background:rgba(255,255,255,.08);border:1px solid var(--line);padding:12px}.mobile-details summary{font-weight:1000;margin-bottom:8px;cursor:pointer}.mobile-details button{width:100%;margin:5px 0}.mobile-message{text-align:center;color:var(--yellow);font-weight:900}

@media (max-width:900px){.admin-header{align-items:flex-start;flex-direction:column}.admin-grid{grid-template-columns:1fr}.main-actions,.sound-actions,.system-actions{grid-template-columns:1fr 1fr}.admin-brand img{width:112px}.scoreboard{grid-template-columns:1fr}.screen-page{overflow:auto}.stage{height:auto;min-height:100svh}.players-strip{grid-template-columns:1fr}.players-list{justify-content:flex-start}.stage-header{align-items:flex-start}.stage-logo{height:80px}.stage-header h1{font-size:2rem}.song-board h2{font-size:2.6rem}.team-score strong{font-size:3.3rem}}

/* ADMIN FULL SCREEN COMPACTO · v1.1 */
.admin-full-page{height:100svh;min-height:100svh;overflow:hidden;padding:8px}
.admin-full-layout{max-width:none;height:calc(100svh - 16px);display:flex;flex-direction:column;min-height:0}
.admin-header-compact{flex:0 0 auto;margin-bottom:8px;min-height:64px}
.admin-brand-compact img{width:72px;border-radius:14px}
.admin-brand-compact h1{font-size:clamp(1.25rem,2.7vw,2.6rem);line-height:.9}
.admin-brand-compact .eyebrow{font-size:.72rem;margin-bottom:.1rem}.quick-links-compact a{padding:.55rem .8rem;font-size:.86rem}
.admin-dashboard{flex:1;min-height:0;display:grid;grid-template-columns:1.15fr .95fr .9fr;grid-template-rows:minmax(0,1.08fr) minmax(0,.68fr) minmax(0,.72fr);gap:8px;grid-template-areas:"current current score" "controls controls controls" "sounds players system"}
.admin-panel-current{grid-area:current}.admin-panel-score{grid-area:score}.admin-panel-controls{grid-area:controls}.admin-panel-sounds{grid-area:sounds}.admin-panel-players{grid-area:players}.admin-panel-system{grid-area:system}
.admin-full-page .admin-card{padding:10px;border-radius:18px;overflow:hidden;min-height:0;box-shadow:0 10px 28px rgba(0,0,0,.2)}
.compact-head{margin-bottom:7px}.compact-head h2{font-size:.98rem}.admin-badges-line{display:flex;align-items:center;gap:6px;flex-wrap:wrap}.mini-pill{display:inline-flex;align-items:center;justify-content:center;border-radius:999px;background:rgba(255,255,255,.12);border:1px solid var(--line);padding:.35rem .62rem;font-size:.76rem;font-weight:900;color:var(--muted)}
.current-song-compact strong{font-size:.82rem}.current-song-compact h3{font-size:clamp(1.15rem,2.6vw,2.75rem);line-height:1.02;margin:.35rem 0;max-height:18svh;overflow:auto}.current-song-compact p{margin:.25rem 0}.current-song-compact .hint-admin{font-size:.95rem}.admin-full-page .admin-answer{padding:8px 10px;margin-top:7px;border-radius:13px}.admin-full-page .admin-answer b{font-size:1rem}.admin-current-footer{display:grid;grid-template-columns:minmax(220px,.75fr) 1.25fr;gap:8px;align-items:stretch;margin-top:8px}.admin-current-footer .responder-admin{margin:0;padding:10px;border-radius:14px;min-height:54px;display:flex;align-items:center}
.spotify-panel{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:5px;align-items:center;border-radius:14px;background:rgba(255,255,255,.08);border:1px solid var(--line);padding:7px}.spotify-panel .small-btn{margin:0;padding:.52rem .45rem;font-size:.78rem;white-space:nowrap}.spotify-panel small{grid-column:1/-1;color:var(--muted);font-size:.72rem;line-height:1.2}.spotify-embed-box{margin-top:8px;border-radius:14px;overflow:hidden;background:rgba(0,0,0,.25)}
.score-control-grid-compact{gap:8px}.admin-full-page .score-control{padding:10px;border-radius:16px}.admin-full-page .score-control strong{font-size:clamp(2.4rem,5.5vw,4.8rem);margin:4px 0}.admin-full-page .score-control button{padding:.55rem .75rem;border-radius:11px;margin:2px}.control-top-row{display:grid;grid-template-columns:minmax(240px,.35fr) 1fr;gap:8px;align-items:end;margin-bottom:7px}.control-top-row .field-label{margin:0 0 3px}.control-top-row .select-input{height:38px;padding:.35rem .75rem}.status-line{height:38px;display:flex;align-items:center;border-radius:12px;background:rgba(0,0,0,.18);border:1px solid var(--line);padding:0 12px;color:var(--yellow);font-weight:900;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.main-actions-wide{grid-template-columns:repeat(8,minmax(0,1fr));gap:6px}.admin-full-page .admin-buttons button{padding:.6rem .55rem;min-height:44px;border-radius:13px;font-size:.86rem;line-height:1.05}.sound-actions-compact{grid-template-columns:repeat(3,minmax(0,1fr));gap:6px}.system-actions-compact{grid-template-columns:1fr 1fr;gap:6px}.admin-players-list-compact{max-height:calc(100% - 40px);overflow:auto;gap:6px}.admin-full-page .admin-player-row{padding:7px 9px;border-radius:12px}.admin-full-page .instructions-box{margin-top:7px}.instructions-box-compact{font-size:.78rem;line-height:1.28;padding:9px;border-radius:13px}.admin-full-page .tiny-note{font-size:.76rem;margin:.55rem 0 0;color:var(--muted)}
@media (max-width:1100px){.admin-full-page{overflow:auto}.admin-dashboard{grid-template-columns:1fr;grid-template-rows:auto;grid-template-areas:"current" "score" "controls" "sounds" "players" "system"}.admin-full-layout{height:auto}.main-actions-wide{grid-template-columns:repeat(2,minmax(0,1fr))}.admin-current-footer{grid-template-columns:1fr}.control-top-row{grid-template-columns:1fr}.spotify-panel{grid-template-columns:repeat(2,minmax(0,1fr))}}


/* ADMIN FULL SCREEN · selección por categoría o canción específica · v1.2 */
.control-top-row{grid-template-columns:minmax(150px,.20fr) minmax(360px,1fr) minmax(125px,.14fr) minmax(125px,.14fr) minmax(200px,.32fr)}
.control-top-row .song-select{font-size:.78rem}
.load-song-btn{height:38px;align-self:end;border-radius:12px;background:linear-gradient(135deg,var(--yellow),var(--orange));color:#142040;padding:0 .75rem;white-space:nowrap;font-size:.82rem;font-weight:1000}.random-song-btn{height:38px;align-self:end;border-radius:12px;background:linear-gradient(135deg,#27e58b,#19c7ff);color:#10223b;padding:0 .85rem;white-space:nowrap;font-size:.82rem;font-weight:1000;box-shadow:0 10px 22px rgba(25,199,255,.18)}
@media (max-width:1100px){.control-top-row{grid-template-columns:1fr}.load-song-btn,.random-song-btn{width:100%}}


/* RESPONDIENTE / EQUIPO EN JUEGO · v1.3 */
.team-score.team-playing,
.score-control.team-playing,
.mobile-score-line .team-playing{
  transform:translateY(-2px) scale(1.02);
  border-width:3px!important;
  box-shadow:0 0 0 4px rgba(255,214,68,.24),0 0 34px rgba(255,214,68,.24),inset 0 0 34px rgba(255,255,255,.12)!important;
  animation:teamPlayingPulse 1s ease-in-out infinite;
}
.team-score.team-blue.team-playing,
.score-control.blue.team-playing,
.mobile-score-line .blue.team-playing{
  background:linear-gradient(135deg,rgba(25,199,255,.42),rgba(255,255,255,.10));
  border-color:rgba(25,199,255,.95)!important;
}
.team-score.team-red.team-playing,
.score-control.red.team-playing,
.mobile-score-line .red.team-playing{
  background:linear-gradient(135deg,rgba(255,64,79,.42),rgba(255,122,26,.16));
  border-color:rgba(255,64,79,.95)!important;
}
@keyframes teamPlayingPulse{0%,100%{filter:brightness(1)}50%{filter:brightness(1.22)}}
.center-status.team-blue-active{background:linear-gradient(135deg,rgba(25,199,255,.35),rgba(255,255,255,.08));border-color:rgba(25,199,255,.75);color:#dcf8ff}
.center-status.team-red-active{background:linear-gradient(135deg,rgba(255,64,79,.35),rgba(255,122,26,.12));border-color:rgba(255,64,79,.75);color:#ffe6e9}
.responder-panel.has-responder{min-height:8.8vh;border-width:3px;box-shadow:0 0 0 4px rgba(255,214,68,.16),0 18px 44px rgba(0,0,0,.28)}
.responder-panel.has-responder.blue{background:linear-gradient(135deg,rgba(25,199,255,.48),rgba(255,255,255,.1));border-color:rgba(25,199,255,.95)}
.responder-panel.has-responder.red{background:linear-gradient(135deg,rgba(255,64,79,.48),rgba(255,122,26,.12));border-color:rgba(255,64,79,.95)}
.responder-panel.has-responder span{color:#fff;font-size:clamp(1rem,1.55vw,1.7rem)}
.responder-panel.has-responder strong{text-transform:uppercase;font-size:clamp(1.65rem,3vw,3.6rem)}
.responder-admin.active,.mobile-responder.active{border-width:2px;box-shadow:0 0 0 4px rgba(255,214,68,.14),0 14px 34px rgba(0,0,0,.2)}
.responder-admin .team-big,.mobile-responder .team-big{display:block;width:100%;font-size:clamp(1rem,2vw,1.55rem);line-height:1;text-transform:uppercase;letter-spacing:.04em;margin-bottom:4px;color:var(--yellow);font-weight:1000}
.mobile-responder .team-big{font-size:1.08rem}
.responder-admin.active.blue .team-big,.mobile-responder.active.blue .team-big{color:#97eeff}
.responder-admin.active.red .team-big,.mobile-responder.active.red .team-big{color:#ffd1d5}
.responder-admin .team-big.waiting,.mobile-responder .team-big.waiting{color:var(--yellow)}
button.active-responder-team{position:relative;outline:3px solid var(--yellow);box-shadow:0 0 0 5px rgba(255,214,68,.18),0 14px 30px rgba(0,0,0,.28)!important;transform:translateY(-1px)}
button.active-responder-team::after{content:"RESPONDIÓ";position:absolute;right:6px;top:-10px;border-radius:999px;background:var(--yellow);color:#142040;font-size:.62rem;font-weight:1000;padding:.18rem .38rem;letter-spacing:.04em}
.status-box.team-active-blue{border-color:rgba(25,199,255,.85);background:rgba(25,199,255,.16);box-shadow:0 0 0 4px rgba(25,199,255,.12)}
.status-box.team-active-red{border-color:rgba(255,64,79,.85);background:rgba(255,64,79,.16);box-shadow:0 0 0 4px rgba(255,64,79,.12)}
.buzz-button.team-responding-blue:disabled{background:linear-gradient(135deg,#0477ff,#16d2ff)!important;color:#fff;border-color:#b9f3ff;box-shadow:0 8px 0 #075eac,0 24px 50px rgba(25,199,255,.35)}
.buzz-button.team-responding-red:disabled{background:linear-gradient(135deg,#e51a38,#ff7a1a)!important;color:#fff;border-color:#ffd4b0;box-shadow:0 8px 0 #7c1022,0 24px 50px rgba(255,64,79,.35)}

/* v1.5 - Panel compacto de sonidos en admin */
.sound-actions-many{grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:6px}
.sound-actions-many button{white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.sound-actions-many .sound-stop{background:linear-gradient(135deg,#333b50,#121827)!important;border-color:rgba(255,255,255,.2)!important}
@media (max-width:1100px){.sound-actions-many{grid-template-columns:repeat(2,minmax(0,1fr))!important}}

/* v1.7 - Frases largas adaptables y paneles contraíbles en admin */
.song-board h2,
.current-song-compact h3{
  overflow:visible!important;
  overflow-wrap:anywhere;
  word-break:normal;
  hyphens:auto;
  text-wrap:balance;
}
.song-board h2.phrase-medium{font-size:clamp(2rem,4.8vw,5.8rem);line-height:1.02}
.song-board h2.phrase-long{font-size:clamp(1.75rem,3.85vw,4.85rem);line-height:1.05;max-width:98%}
.song-board h2.phrase-xl{font-size:clamp(1.35rem,3.05vw,3.75rem);line-height:1.08;max-width:99%}
.song-board h2.phrase-xxl{font-size:clamp(1.1rem,2.45vw,3rem);line-height:1.1;max-width:99%}
.answer-reveal strong.answer-long{font-size:clamp(1.45rem,3.05vw,3.65rem);line-height:1.05}
.answer-reveal strong.answer-xl{font-size:clamp(1.1rem,2.45vw,2.95rem);line-height:1.08}
.current-song-compact h3.phrase-medium{font-size:clamp(1.05rem,2.25vw,2.35rem);line-height:1.05}
.current-song-compact h3.phrase-long{font-size:clamp(.95rem,1.9vw,1.95rem);line-height:1.08;max-height:none}
.current-song-compact h3.phrase-xl{font-size:clamp(.86rem,1.55vw,1.58rem);line-height:1.1;max-height:none}
.current-song-compact h3.phrase-xxl{font-size:clamp(.78rem,1.25vw,1.32rem);line-height:1.12;max-height:none}
.admin-panel-current{display:flex;flex-direction:column}
.current-song-compact{min-height:0}
.head-actions{display:flex;align-items:center;gap:6px;flex-wrap:wrap;justify-content:flex-end}
.collapse-toggle{border-radius:999px;background:rgba(255,255,255,.12);border:1px solid var(--line);color:#fff;padding:.34rem .58rem;font-size:.72rem;font-weight:1000;line-height:1;white-space:nowrap}
.collapse-toggle:hover{background:rgba(255,255,255,.2)}
.collapsible-card{display:flex;flex-direction:column;min-height:0}
.collapsible-card .collapsible-body{min-height:0;overflow:auto;flex:1}
.collapsible-card.collapsed{padding-bottom:10px;align-self:start;min-height:44px}
.collapsible-card.collapsed .collapsible-body{display:none}
.collapsible-card.collapsed .card-head{margin-bottom:0}
.collapsible-card.collapsed h2::after{content:" oculto";margin-left:8px;color:var(--muted);font-size:.72rem;font-weight:800;text-transform:none;letter-spacing:0}
.admin-panel-players .players-collapse-body{display:flex;flex-direction:column}
.admin-panel-players.collapsed .players-collapse-body{display:none}
.admin-panel-players .admin-players-list-compact{max-height:none;flex:1;min-height:0}
.admin-dashboard.has-collapsed-bottom{grid-template-rows:minmax(0,1.16fr) minmax(0,.7fr) minmax(46px,.52fr)}
.admin-dashboard.all-bottom-collapsed{grid-template-rows:minmax(0,1.25fr) minmax(0,.75fr) 50px}
@media (max-width:1100px){
  .collapsible-card.collapsed{align-self:stretch}
  .admin-dashboard.has-collapsed-bottom,
  .admin-dashboard.all-bottom-collapsed{grid-template-rows:auto}
}

/* v1.8 - Pistas progresivas por botón */
.hints-admin-block{
  display:grid;
  grid-template-columns:minmax(180px,.65fr) minmax(260px,1fr);
  gap:8px;
  align-items:stretch;
  margin:8px 0 10px;
  padding:8px;
  border-radius:18px;
  border:1px solid rgba(255,214,68,.22);
  background:rgba(0,0,0,.13);
}
.hints-admin-head{grid-column:1/-1;display:flex;align-items:center;justify-content:space-between;gap:10px;color:var(--yellow);font-weight:1000;text-transform:uppercase;letter-spacing:.04em;font-size:.86rem}
.hints-admin-head small{color:var(--muted);font-size:.75rem;text-transform:none;letter-spacing:0}
.hint-buttons-admin{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:6px}
.hint-btn{min-height:44px;border-radius:14px!important;padding:.46rem .55rem!important;text-align:left;background:linear-gradient(135deg,rgba(255,214,68,.95),rgba(255,146,31,.95))!important;color:#142040!important;border:0!important;box-shadow:0 8px 18px rgba(0,0,0,.16);line-height:1.05}
.hint-btn b{display:block;font-size:.82rem;white-space:nowrap}
.hint-btn span{display:block;font-size:.68rem;font-weight:900;opacity:.85;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.hint-btn.used{background:rgba(255,255,255,.12)!important;color:rgba(255,255,255,.62)!important;border:1px solid var(--line)!important;box-shadow:none!important;cursor:not-allowed}
.hint-shown-admin{border-radius:14px;border:1px solid var(--line);background:rgba(255,255,255,.07);padding:8px 10px;color:#fff;font-size:.82rem;line-height:1.25;max-height:74px;overflow:auto}
.hint-shown-admin span{display:block;margin:0 0 4px;color:#fff}.hint-shown-admin b{color:var(--yellow)}
.screen-hint-chip{display:inline-block;margin:.2rem .35rem;padding:.42rem .72rem;border-radius:999px;background:rgba(255,214,68,.16);border:1px solid rgba(255,214,68,.46);color:#fff;box-shadow:0 8px 18px rgba(0,0,0,.14)}
.screen-hint-chip b{color:var(--yellow)}
.mobile-hints-box{margin-top:10px;border-radius:18px;background:rgba(255,255,255,.08);border:1px solid var(--line);padding:10px}
.mobile-hints-title{font-weight:1000;color:var(--yellow);text-transform:uppercase;font-size:.8rem;margin-bottom:7px;letter-spacing:.05em}
.mobile-hints-buttons{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:7px}
.mobile-hint-btn{border-radius:14px;background:linear-gradient(135deg,var(--yellow),var(--orange));color:#142040;padding:.72rem .6rem;font-weight:1000;line-height:1.05;text-align:left;border:0}
.mobile-hint-btn small{display:block;font-size:.65rem;opacity:.85;margin-top:3px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.mobile-hint-btn.used{background:rgba(255,255,255,.12);color:rgba(255,255,255,.6);border:1px solid var(--line)}
.mobile-hints-shown{margin-top:8px;font-size:.8rem;line-height:1.25;color:#fff;max-height:80px;overflow:auto}
.mobile-hints-shown span,#phoneHint span{display:block;margin:.25rem 0;padding:.35rem .55rem;border-radius:12px;background:rgba(255,214,68,.11);border:1px solid rgba(255,214,68,.22);color:#fff}
.mobile-hints-shown b,#phoneHint b{color:var(--yellow)}
#phoneHint{line-height:1.25}
@media (max-width:1100px){.hints-admin-block{grid-template-columns:1fr}.hint-buttons-admin{grid-template-columns:repeat(2,minmax(0,1fr))}.hint-shown-admin{max-height:110px}}
@media (max-height:740px) and (min-width:900px){.hints-admin-block{padding:6px;margin:6px 0}.hint-btn{min-height:38px}.hint-shown-admin{max-height:56px}.hint-buttons-admin{grid-template-columns:repeat(5,minmax(0,1fr))}}

/* v2.0 - verificación manual de letras */
.verify-line{margin:4px 0 7px;font-size:.9rem;font-weight:900;letter-spacing:.02em;text-transform:uppercase}
.verify-line.pending{color:#ffd34f}.verify-line.ok{color:#43ffb3}.verify-line.bad{color:#ff6868}
.danger-soft{background:linear-gradient(135deg,#7d4150,#442333)!important;border-color:rgba(255,110,110,.55)!important}
.spotify-panel .danger-soft{color:#fff}

/* v2.3 - Nombres y colores editables por equipo */
:root{
  --team-azul-color:#0477ff;
  --team-rojo-color:#e51a38;
  --player-team-color:#0477ff;
  --player-team-text:#ffffff;
}

/* Admin full layout con panel de equipos */
.admin-dashboard{
  grid-template-areas:"current current score" "controls controls teams" "sounds players system";
  grid-template-rows:minmax(0,1.05fr) minmax(0,.78fr) minmax(0,.62fr);
}
.admin-panel-teams{grid-area:teams}
@media (max-width:1100px){.admin-dashboard{grid-template-areas:"current" "score" "teams" "controls" "sounds" "players" "system"}}

.team-settings-grid{display:grid;gap:8px;margin-bottom:8px}
.team-edit-row{display:grid;grid-template-columns:1fr 58px;gap:6px;align-items:end;border:2px solid rgba(255,255,255,.18);border-radius:16px;padding:8px;background:rgba(0,0,0,.15)}
.team-edit-row label{font-size:.68rem;color:var(--muted);font-weight:1000;text-transform:uppercase;letter-spacing:.05em;grid-column:1/-1;margin:0}
.team-edit-row .compact-input{height:36px;padding:.4rem .65rem;border-radius:10px}
.color-input{height:36px;width:58px;border:0;border-radius:10px;background:transparent;padding:0;cursor:pointer}
.primary-small{border-radius:14px;background:linear-gradient(135deg,var(--yellow),var(--orange));color:#142040;font-weight:1000;border:0;padding:.7rem .85rem;box-shadow:0 10px 24px rgba(255,122,26,.18)}
.full-width{width:100%}

/* Colores dinámicos en paneles */
.score-control.blue,.mobile-score-line .blue,.team-score.team-blue,.score-mini.blue{border-color:color-mix(in srgb,var(--team-azul-color) 78%,white 10%)!important;box-shadow:inset 0 0 35px color-mix(in srgb,var(--team-azul-color) 34%,transparent)!important}
.score-control.red,.mobile-score-line .red,.team-score.team-red,.score-mini.red{border-color:color-mix(in srgb,var(--team-rojo-color) 78%,white 10%)!important;box-shadow:inset 0 0 35px color-mix(in srgb,var(--team-rojo-color) 34%,transparent)!important}
.btn-blue{background:linear-gradient(135deg,var(--team-azul-color),color-mix(in srgb,var(--team-azul-color) 72%,white 28%))!important;color:#fff!important}
.btn-red{background:linear-gradient(135deg,var(--team-rojo-color),color-mix(in srgb,var(--team-rojo-color) 72%,#ffbe40 28%))!important;color:#fff!important}
.score-control.blue.team-playing,.mobile-score-line .blue.team-playing,.team-score.team-blue.team-playing{background:linear-gradient(135deg,color-mix(in srgb,var(--team-azul-color) 48%,transparent),rgba(255,255,255,.08))!important;border-color:var(--team-azul-color)!important}
.score-control.red.team-playing,.mobile-score-line .red.team-playing,.team-score.team-red.team-playing{background:linear-gradient(135deg,color-mix(in srgb,var(--team-rojo-color) 48%,transparent),rgba(255,255,255,.08))!important;border-color:var(--team-rojo-color)!important}
.responder-panel.has-responder.blue,.responder-admin.active.blue,.mobile-responder.active.blue{background:linear-gradient(135deg,color-mix(in srgb,var(--team-azul-color) 48%,transparent),rgba(255,255,255,.1))!important;border-color:var(--team-azul-color)!important}
.responder-panel.has-responder.red,.responder-admin.active.red,.mobile-responder.active.red{background:linear-gradient(135deg,color-mix(in srgb,var(--team-rojo-color) 48%,transparent),rgba(255,255,255,.1))!important;border-color:var(--team-rojo-color)!important}

/* Celular del jugador se pinta del color seleccionado */
.player-page.team-selected{background:radial-gradient(circle at 50% 0,color-mix(in srgb,var(--player-team-color) 55%,transparent),transparent 46%),linear-gradient(180deg,color-mix(in srgb,var(--player-team-color) 22%,#111827),#080b18 68%)!important}
.player-page.team-selected .phone-card{border-color:color-mix(in srgb,var(--player-team-color) 72%,white 12%);box-shadow:0 0 0 4px color-mix(in srgb,var(--player-team-color) 22%,transparent),0 24px 70px rgba(0,0,0,.42)}
.player-page.team-selected .game-card{background:linear-gradient(180deg,color-mix(in srgb,var(--player-team-color) 32%,rgba(255,255,255,.12)),rgba(0,0,0,.18))}
.player-page.team-selected .player-topbar{border-bottom:1px solid color-mix(in srgb,var(--player-team-color) 45%,transparent);padding-bottom:10px}
.player-page.team-selected .buzz-button:not(:disabled){background:radial-gradient(circle at 35% 20%,#fff3aa,transparent 22%),linear-gradient(135deg,color-mix(in srgb,var(--player-team-color) 72%,#ffda45),var(--player-team-color) 58%,color-mix(in srgb,var(--player-team-color) 74%,black));color:var(--player-team-text);box-shadow:0 18px 0 color-mix(in srgb,var(--player-team-color) 55%,black),0 28px 60px color-mix(in srgb,var(--player-team-color) 38%,transparent)}
.team-option.active{background:var(--player-team-color)!important;color:#fff!important;border-color:rgba(255,255,255,.82)!important;box-shadow:0 0 0 4px color-mix(in srgb,var(--player-team-color) 22%,transparent)}
.team-option{border-width:2px!important;font-weight:1000;color:#fff}
.status-box.team-active-blue{border-color:var(--team-azul-color)!important;background:color-mix(in srgb,var(--team-azul-color) 20%,transparent)!important}
.status-box.team-active-red{border-color:var(--team-rojo-color)!important;background:color-mix(in srgb,var(--team-rojo-color) 20%,transparent)!important}
.buzz-button.team-responding-blue:disabled{background:linear-gradient(135deg,var(--team-azul-color),color-mix(in srgb,var(--team-azul-color) 70%,white 30%))!important;box-shadow:0 8px 0 color-mix(in srgb,var(--team-azul-color) 55%,black),0 24px 50px color-mix(in srgb,var(--team-azul-color) 35%,transparent)!important}
.buzz-button.team-responding-red:disabled{background:linear-gradient(135deg,var(--team-rojo-color),color-mix(in srgb,var(--team-rojo-color) 70%,#ffbe40 30%))!important;box-shadow:0 8px 0 color-mix(in srgb,var(--team-rojo-color) 55%,black),0 24px 50px color-mix(in srgb,var(--team-rojo-color) 35%,transparent)!important}

@supports not (color: color-mix(in srgb, red, blue)){
  .score-control.blue,.mobile-score-line .blue,.team-score.team-blue,.score-mini.blue{border-color:var(--team-azul-color)!important}
  .score-control.red,.mobile-score-line .red,.team-score.team-red,.score-mini.red{border-color:var(--team-rojo-color)!important}
  .player-page.team-selected .phone-card{border-color:var(--player-team-color)}
}


/* v2.5 - Pantalla más limpia, defaults AZUL/ROJO y pistas reveladas apagadas */
.screen-page .stage{
  grid-template-rows:auto minmax(74px,9vh) minmax(0,1fr) minmax(58px,7vh) minmax(54px,7vh);
  gap:.8vh;
  padding:1.5vh 1.7vw;
}
.screen-page .stage-logo{height:10.5vh;max-height:102px;border-radius:20px}
.screen-page .stage-header h1{font-size:clamp(2.1rem,4.35vw,4.9rem);letter-spacing:-.035em;line-height:.86}
.screen-page .eyebrow{font-size:clamp(.65rem,.92vw,.9rem)}
.screen-page .round-pill{padding:.62rem 1rem;font-size:clamp(.95rem,1.35vw,1.35rem)}
.scoreboard{
  grid-template-columns:minmax(245px,.84fr) minmax(360px,1.22fr) minmax(245px,.84fr);
  gap:1.05vw;
  align-items:stretch;
}
.team-score{
  min-height:74px;
  border-radius:24px;
  padding:.75vh 1.5vw;
  gap:1rem;
}
.team-score.team-red{flex-direction:row-reverse;text-align:right}
.team-score span{font-size:clamp(1rem,1.45vw,1.42rem);letter-spacing:.015em;line-height:1.05;max-width:68%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.team-score strong{font-size:clamp(3rem,4.85vw,5.7rem);line-height:.82;min-width:1.2em;text-align:center}
.center-status{
  min-height:74px;
  border-radius:24px;
  padding:.7vh 1.25vw;
  font-size:clamp(.98rem,1.45vw,1.72rem);
  line-height:1.06;
}
.song-board{
  justify-content:center;
  gap:.55vh;
  border-radius:32px;
  padding:2vh 3.3vw 1.8vh;
}
.song-board:before{font-size:16vw;opacity:.82;bottom:-6.2vh}
.category-line span{padding:.48rem 1.1rem;font-size:clamp(.82rem,1.25vw,1.2rem)}
.song-meta{margin:.65vh 0 0;font-size:clamp(.82rem,1.08vw,1.08rem);line-height:1.15;max-width:92%}
.song-board h2{
  margin:.85vh 0 .35vh;
  font-size:clamp(2.7rem,5.2vw,6rem);
  line-height:.98;
  max-width:90%;
  letter-spacing:-.025em;
}
.song-board h2.phrase-medium{font-size:clamp(2.15rem,4.25vw,5rem);line-height:1.0;max-width:92%}
.song-board h2.phrase-long{font-size:clamp(1.75rem,3.45vw,4.05rem);line-height:1.05;max-width:95%}
.song-board h2.phrase-xl{font-size:clamp(1.45rem,2.8vw,3.25rem);line-height:1.08;max-width:97%}
.song-board h2.phrase-xxl{font-size:clamp(1.15rem,2.25vw,2.65rem);line-height:1.1;max-width:98%}
.hint-line{
  width:100%;
  max-width:92%;
  display:flex;
  flex-wrap:wrap;
  align-items:center;
  justify-content:center;
  gap:.45rem .6rem;
  margin:.6vh auto 0;
  font-size:clamp(.8rem,1.05vw,1.05rem);
  line-height:1.12;
}
.screen-hint-chip{
  display:inline-flex;
  align-items:center;
  gap:.42rem;
  max-width:min(560px,46%);
  min-width:min(310px,42%);
  padding:.42rem .72rem;
  border-radius:999px;
  text-align:left;
  white-space:normal;
  color:rgba(255,255,255,.78);
  background:rgba(255,255,255,.075);
  border:1px solid rgba(255,255,255,.18);
  box-shadow:none;
  opacity:.74;
  filter:saturate(.55);
}
.screen-hint-chip b{color:rgba(255,214,68,.78);white-space:nowrap;flex:0 0 auto}
.screen-hint-chip em{font-style:normal;overflow:hidden;text-overflow:ellipsis;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical}
.screen-hint-chip.empty{justify-content:center;min-width:auto;max-width:360px;color:rgba(255,255,255,.52);font-weight:800}
.answer-reveal{margin-top:.8vh;padding:1vh 1.65vw;border-radius:20px}
.answer-reveal strong{font-size:clamp(1.6rem,3.25vw,3.8rem);line-height:1.0}
.responder-panel{min-height:5.9vh;border-radius:22px;padding:.8vh 1.3vw}.responder-panel strong{font-size:clamp(1.15rem,2vw,2.4rem)}
.players-strip{min-height:5.8vh;border-radius:20px;padding:.75vh .9vw}.players-strip h3{font-size:clamp(.78rem,.95vw,1rem)}.players-strip p{font-size:clamp(.78rem,.95vw,1rem)}
.hint-btn.used,.mobile-hint-btn.used{opacity:.56;filter:saturate(.45);}
.hint-shown-admin span.used,.mobile-hints-shown span.used,#phoneHint span.used{opacity:.62;filter:saturate(.5);background:rgba(255,255,255,.08);border-color:rgba(255,255,255,.18)}
#phoneHint span.used{display:block;margin:.25rem 0;padding:.35rem .55rem;border-radius:12px;color:rgba(255,255,255,.78)}
@media (max-height:760px) and (min-width:901px){
  .screen-page .stage{grid-template-rows:auto minmax(62px,8.2vh) minmax(0,1fr) minmax(48px,6.2vh) minmax(46px,6vh);gap:.55vh;padding:1vh 1.5vw}
  .screen-page .stage-logo{height:8.8vh}.screen-page .stage-header h1{font-size:clamp(1.8rem,3.8vw,4.1rem)}
  .team-score,.center-status{min-height:62px;border-radius:20px}.team-score strong{font-size:clamp(2.4rem,4.2vw,4.7rem)}
  .song-board{border-radius:28px;padding:1.5vh 3vw}.song-board h2{margin:.55vh 0 .2vh}
  .screen-hint-chip{padding:.32rem .58rem;font-size:clamp(.72rem,.9vw,.95rem)}
  .answer-reveal{padding:.7vh 1.3vw}
}
@media (max-width:900px){.team-score.team-red{flex-direction:row}.screen-hint-chip{max-width:100%;min-width:0}.scoreboard{grid-template-columns:1fr}}


/* v2.5 · Valor dinámico por pistas */
.points-badge-admin,
.screen-points-pill,
.mobile-points-pill,
.phone-points-pill{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  border-radius:999px;
  background:linear-gradient(135deg, rgba(255,214,68,.95), rgba(255,122,26,.9));
  color:#142040;
  border:1px solid rgba(255,255,255,.35);
  font-weight:1000;
  text-transform:uppercase;
  letter-spacing:.03em;
  box-shadow:0 10px 28px rgba(255,122,26,.16);
}
.screen-points-pill{position:relative;z-index:1;margin:.7vh 0 0;padding:.5rem 1.1rem;font-size:clamp(.9rem,1.25vw,1.35rem)}
.mobile-points-pill{width:max-content;margin:.55rem 0;padding:.42rem .8rem;font-size:.82rem}
.phone-points-pill{margin:.6rem auto 0;padding:.45rem .75rem;font-size:.78rem}
.points-badge-admin{color:#142040;background:linear-gradient(135deg,var(--yellow),var(--orange));}
