#quizzzMusicSalon{ display:none; flex:1; min-height:0; padding:12px; overflow:auto; }
#paneChat.quizzz-music-mode .messages,
#paneChat.quizzz-music-mode .inputbar,
#paneChat.quizzz-music-mode .options-container,
#paneChat.quizzz-music-mode .mic-visual-wrap,
#paneChat.quizzz-music-mode #gamesPanel{ display:none !important; }
#paneChat.quizzz-music-mode #quizzzMusicSalon{ display:block; }

#quizzzMusicSalon .qm-shell{
  --qm-gold:#ffd76a;
  --qm-blue:#65d8ff;
  --qm-green:#70ffac;
  --qm-red:#ff8e8e;
  min-height:100%;
  display:flex;
  flex-direction:column;
  gap:14px;
  padding:14px;
  border-radius:20px;
  border:1px solid rgba(255,255,255,.10);
  background:
    radial-gradient(circle at 12% 0%, rgba(255,205,71,.18), transparent 28%),
    radial-gradient(circle at 100% 0%, rgba(101,216,255,.16), transparent 28%),
    radial-gradient(circle at 50% 100%, rgba(255,89,184,.10), transparent 24%),
    linear-gradient(180deg, rgba(20,23,31,.99), rgba(8,10,16,.99));
  box-shadow: inset 0 1px 0 rgba(255,255,255,.06), 0 28px 70px rgba(0,0,0,.38);
}
#quizzzMusicSalon .qm-shell.phase-playing{
  background:
    radial-gradient(circle at 12% 0%, rgba(255,205,71,.24), transparent 28%),
    radial-gradient(circle at 100% 0%, rgba(101,216,255,.22), transparent 28%),
    radial-gradient(circle at 50% 100%, rgba(118,255,190,.10), transparent 24%),
    linear-gradient(180deg, rgba(17,20,28,.99), rgba(6,8,13,.99));
}
#quizzzMusicSalon .qm-topbar{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:12px;
  padding:12px 14px;
  border-radius:16px;
  background:linear-gradient(180deg, rgba(255,255,255,.07), rgba(255,255,255,.03));
  border:1px solid rgba(255,255,255,.08);
}
#quizzzMusicSalon .qm-brand-main{
  font-size:28px;
  font-weight:900;
  letter-spacing:1.9px;
  color:#fbfbfb;
  text-shadow:0 0 20px rgba(255,205,71,.18);
}
#quizzzMusicSalon .qm-brand-sub{ font-size:13px; color:rgba(255,255,255,.72); margin-top:2px; }
#quizzzMusicSalon .qm-controls{ display:flex; align-items:center; gap:8px; flex-wrap:wrap; justify-content:flex-end; }
#quizzzMusicSalon .qm-controls select,
#quizzzMusicSalon .qm-btn{
  height:42px;
  border-radius:12px;
  border:1px solid rgba(255,255,255,.12);
  background:rgba(9,12,18,.92);
  color:#fff;
  padding:0 14px;
  font-weight:700;
  box-shadow: inset 0 1px 0 rgba(255,255,255,.04);
}
#quizzzMusicSalon .qm-btn{ cursor:pointer; }
#quizzzMusicSalon .qm-btn.primary{ background:linear-gradient(180deg, #ffe27f, #ffc100); color:#191300; border-color:#ffc400; }
#quizzzMusicSalon .qm-btn.danger{ background:linear-gradient(180deg, #ff7d7d, #d63a3a); color:#fff; border-color:#c52e2e; }
#quizzzMusicSalon .qm-btn.ghost{ background:linear-gradient(180deg, #1a2230, #111722); }
#quizzzMusicSalon .qm-btn.ghost.is-ready{ border-color:#3adf86; box-shadow:0 0 0 1px rgba(58,223,134,.25) inset, 0 0 20px rgba(58,223,134,.14); }

#quizzzMusicSalon .qm-main{ display:flex; flex-direction:column; gap:14px; min-height:0; }
#quizzzMusicSalon .qm-stage{ display:grid; grid-template-columns:minmax(0,1.35fr) minmax(320px,.65fr); gap:14px; }
#quizzzMusicSalon .qm-turntable,
#quizzzMusicSalon .qm-side,
#quizzzMusicSalon .qm-question-box{
  border-radius:18px;
  border:1px solid rgba(255,255,255,.08);
  background:linear-gradient(180deg, rgba(255,255,255,.05), rgba(255,255,255,.025));
  box-shadow: inset 0 1px 0 rgba(255,255,255,.04), 0 14px 30px rgba(0,0,0,.24);
}

#quizzzMusicSalon .qm-turntable{ padding:18px; display:flex; flex-direction:column; gap:12px; position:relative; overflow:hidden; }
#quizzzMusicSalon .qm-turntable-lights{ display:flex; justify-content:space-between; gap:10px; }
#quizzzMusicSalon .qm-light{
  flex:1; height:10px; border-radius:999px;
  background:linear-gradient(90deg, rgba(255,208,92,.3), rgba(101,216,255,.5));
  box-shadow:0 0 10px rgba(101,216,255,.22);
  opacity:.65;
}
#quizzzMusicSalon .phase-playing .qm-light,
#quizzzMusicSalon .phase-countdown .qm-light{ animation: qmBlink 1s infinite alternate; }
#quizzzMusicSalon .phase-playing .qm-light:nth-child(2){ animation-delay:.15s; }
#quizzzMusicSalon .phase-playing .qm-light:nth-child(3){ animation-delay:.3s; }
#quizzzMusicSalon .phase-playing .qm-light:nth-child(4){ animation-delay:.45s; }
@keyframes qmBlink{ from{ opacity:.45; transform:scaleX(.98); } to{ opacity:1; transform:scaleX(1); } }

#quizzzMusicSalon .qm-deck{
  position:relative;
  min-height:350px;
  border-radius:24px;
  overflow:hidden;
  border:1px solid rgba(255,255,255,.08);
  background:
    linear-gradient(180deg, rgba(56,63,76,.62), rgba(14,17,25,.98)),
    radial-gradient(circle at 20% 20%, rgba(255,255,255,.08), transparent 28%),
    radial-gradient(circle at 80% 80%, rgba(0,0,0,.45), transparent 30%);
}
#quizzzMusicSalon .qm-deck::before{
  content:""; position:absolute; inset:12px; border-radius:18px;
  background:linear-gradient(135deg, rgba(255,255,255,.04), transparent 52%);
  pointer-events:none;
}
#quizzzMusicSalon .qm-platter-shadow{
  position:absolute; left:52px; top:42px; width:286px; height:286px; border-radius:50%;
  background:radial-gradient(circle at center, rgba(0,0,0,.1), rgba(0,0,0,.45) 72%, rgba(0,0,0,.15) 100%);
  filter:blur(8px); opacity:.8;
}
#quizzzMusicSalon .qm-record{
  position:absolute; left:38px; top:28px; width:290px; height:290px; border-radius:50%;
  background:
    radial-gradient(circle at 50% 50%, #0f1116 0 18%, transparent 18.5%),
    radial-gradient(circle at 50% 50%, #21242b 0 24%, #0a0b0e 24.4%, #0a0b0e 68%, #020304 68.5%, #0d1015 100%);
  box-shadow: 0 12px 26px rgba(0,0,0,.44), inset 0 0 0 8px rgba(255,255,255,.035);
}
#quizzzMusicSalon .qm-record::before{
  content:""; position:absolute; inset:10px; border-radius:50%; opacity:.75;
  background:
    repeating-radial-gradient(circle at center, rgba(255,255,255,.055) 0 2px, rgba(0,0,0,0) 3px 8px),
    radial-gradient(circle at center, rgba(255,255,255,.12), rgba(255,255,255,0) 55%);
}
#quizzzMusicSalon .qm-record-highlight{
  position:absolute; width:140px; height:60px; left:26px; top:32px; border-radius:50%;
  background:linear-gradient(180deg, rgba(255,255,255,.16), rgba(255,255,255,0));
  transform:rotate(-24deg);
  filter:blur(2px); opacity:.5;
}
#quizzzMusicSalon .qm-turntable.is-playing .qm-record{ animation: qmSpin 2.1s linear infinite; }
#quizzzMusicSalon .qm-turntable.is-loading .qm-record,
#quizzzMusicSalon .qm-turntable.is-reveal .qm-record{ animation: qmPulseSpin 1.4s linear infinite; }
@keyframes qmSpin{ from{ transform:rotate(0deg); } to{ transform:rotate(360deg); } }
@keyframes qmPulseSpin{ 0%{ transform:rotate(0deg) scale(1); } 50%{ transform:rotate(180deg) scale(1.012); } 100%{ transform:rotate(360deg) scale(1); } }
#quizzzMusicSalon .qm-record-ring{ position:absolute; border-radius:50%; border:1px solid rgba(255,255,255,.08); }
#quizzzMusicSalon .qm-ring-1{ inset:28px; }
#quizzzMusicSalon .qm-ring-2{ inset:56px; }
#quizzzMusicSalon .qm-ring-3{ inset:84px; }
#quizzzMusicSalon .qm-record-label{
  position:absolute; width:92px; height:92px; left:50%; top:50%; transform:translate(-50%,-50%);
  border-radius:50%; overflow:hidden; text-align:center;
  display:flex; align-items:center; justify-content:center;
  color:#fff; font-weight:900; letter-spacing:1px; font-size:14px;
  background:radial-gradient(circle at 30% 30%, #ffdb74, #d34747 60%, #5a1325 100%);
  box-shadow: inset 0 0 0 5px rgba(255,255,255,.18), 0 3px 14px rgba(0,0,0,.28);
}
#quizzzMusicSalon .qm-record-label img{ width:100%; height:100%; object-fit:cover; display:block; }
#quizzzMusicSalon .qm-arm{
  position:absolute; right:26px; top:72px; width:172px; height:11px;
  border-radius:999px; transform-origin:92% 50%; transform:rotate(-24deg);
  background:linear-gradient(180deg, #dde1ea, #6e7383);
  box-shadow:0 2px 10px rgba(0,0,0,.28);
}
#quizzzMusicSalon .qm-turntable.is-playing .qm-arm{ transform:rotate(10deg); transition:transform .45s ease; }
#quizzzMusicSalon .qm-turntable.is-loading .qm-arm{ transform:rotate(-6deg); transition:transform .4s ease; }
#quizzzMusicSalon .qm-arm::before{
  content:""; position:absolute; left:-10px; top:50%; transform:translateY(-50%); width:26px; height:26px; border-radius:50%;
  background:radial-gradient(circle at 35% 35%, #f0f2f5, #8b909c 70%, #4a4e56 100%);
}
#quizzzMusicSalon .qm-arm-head{
  position:absolute; right:-2px; top:50%; transform:translateY(-50%) rotate(18deg);
  width:24px; height:16px; border-radius:3px;
  background:linear-gradient(180deg, #fac25a, #a36621);
  box-shadow:0 2px 6px rgba(0,0,0,.3);
}
#quizzzMusicSalon .qm-speaker{
  position:absolute; bottom:24px; width:88px; height:112px; border-radius:16px;
  background:linear-gradient(180deg, rgba(20,24,34,.92), rgba(8,10,16,.98));
  border:1px solid rgba(255,255,255,.08);
  box-shadow: inset 0 1px 0 rgba(255,255,255,.04), 0 8px 18px rgba(0,0,0,.24);
}
#quizzzMusicSalon .qm-speaker::before,
#quizzzMusicSalon .qm-speaker::after{
  content:""; position:absolute; left:50%; transform:translateX(-50%); border-radius:50%;
  background:radial-gradient(circle at center, #232833 0 28%, #0c0e14 29% 64%, #2c323f 65% 100%);
  box-shadow: inset 0 0 0 5px rgba(255,255,255,.03);
}
#quizzzMusicSalon .qm-speaker::before{ width:50px; height:50px; top:16px; }
#quizzzMusicSalon .qm-speaker::after{ width:62px; height:62px; bottom:14px; }
#quizzzMusicSalon .qm-speaker-left{ right:138px; }
#quizzzMusicSalon .qm-speaker-right{ right:30px; }

#quizzzMusicSalon .qm-stage-bottom{ display:flex; flex-direction:column; gap:10px; }
#quizzzMusicSalon .qm-message{ font-size:20px; font-weight:800; color:#fff3c6; min-height:26px; }
#quizzzMusicSalon .qm-submessage{ font-size:14px; color:rgba(255,255,255,.82); min-height:18px; }
#quizzzMusicSalon .qm-vumeter{
  display:grid; grid-template-columns:repeat(16, minmax(0,1fr)); gap:6px;
  align-items:end; min-height:48px; padding:10px 12px; border-radius:14px;
  background:linear-gradient(180deg, rgba(10,12,17,.8), rgba(10,12,17,.65));
  border:1px solid rgba(255,255,255,.06);
}
#quizzzMusicSalon .qm-vu-bar{
  height:10px; border-radius:999px;
  background:linear-gradient(180deg, #52e7ff, #1656cc);
  box-shadow:0 0 10px rgba(82,231,255,.18);
  opacity:.7; transform-origin:bottom center;
}
#quizzzMusicSalon .qm-vumeter.is-idle .qm-vu-bar:nth-child(odd){ height:10px; }
#quizzzMusicSalon .qm-vumeter.is-loading .qm-vu-bar{ animation: qmVuLoad 1.2s infinite ease-in-out; }
#quizzzMusicSalon .qm-vumeter.is-countdown .qm-vu-bar{ animation: qmVuCount 0.8s infinite ease-in-out; }
#quizzzMusicSalon .qm-vumeter.is-playing .qm-vu-bar{ animation: qmVuPlay 0.6s infinite ease-in-out; }
#quizzzMusicSalon .qm-vumeter.is-reveal .qm-vu-bar{ animation: qmVuReveal 0.9s infinite ease-in-out; }
#quizzzMusicSalon .qm-vumeter .qm-vu-bar:nth-child(2n){ animation-delay:.05s; }
#quizzzMusicSalon .qm-vumeter .qm-vu-bar:nth-child(3n){ animation-delay:.1s; }
#quizzzMusicSalon .qm-vumeter .qm-vu-bar:nth-child(4n){ animation-delay:.15s; }
@keyframes qmVuLoad{ 0%,100%{ height:8px; opacity:.45; } 50%{ height:22px; opacity:.8; } }
@keyframes qmVuCount{ 0%,100%{ height:12px; } 50%{ height:30px; } }
@keyframes qmVuPlay{ 0%{ height:12px; } 25%{ height:34px; } 50%{ height:18px; } 75%{ height:42px; } 100%{ height:14px; } }
@keyframes qmVuReveal{ 0%,100%{ height:16px; background:linear-gradient(180deg, #ffe57f, #ff7a00); } 50%{ height:38px; background:linear-gradient(180deg, #70ffac, #0fa65f); } }

#quizzzMusicSalon .qm-side{ padding:14px; display:flex; flex-direction:column; gap:14px; }
#quizzzMusicSalon .qm-counters{ display:grid; grid-template-columns:repeat(2, minmax(0,1fr)); gap:12px; }
#quizzzMusicSalon .qm-counter{
  padding:12px; border-radius:16px;
  background:linear-gradient(180deg, rgba(9,12,18,.95), rgba(16,19,28,.92));
  border:1px solid rgba(255,255,255,.08);
  box-shadow: inset 0 0 0 1px rgba(255,255,255,.03), 0 8px 20px rgba(0,0,0,.25);
}
#quizzzMusicSalon .qm-counter-label{ display:block; font-size:11px; letter-spacing:1.5px; color:#8ea0be; margin-bottom:8px; }
#quizzzMusicSalon .qm-counter strong{ display:block; font:800 28px/1.1 "Courier New", monospace; color:#ddf5ff; text-shadow:0 0 18px rgba(93,201,255,.22); }
#quizzzMusicSalon .qm-counter.time strong{ color:#ffe78f; text-shadow:0 0 20px rgba(255,231,143,.22); }
#quizzzMusicSalon .qm-counter.danger strong{ color:#ff8d8d; text-shadow:0 0 22px rgba(255,141,141,.26); }
#quizzzMusicSalon .qm-results-strip{ display:grid; grid-template-columns:1fr 1fr; gap:10px; }
#quizzzMusicSalon .qm-mini-result{
  padding:10px 12px; border-radius:14px;
  border:1px solid rgba(255,255,255,.08);
  background:linear-gradient(180deg, rgba(15,18,25,.92), rgba(11,13,18,.92));
}
#quizzzMusicSalon .qm-mini-result span{ display:block; color:#9fb3d6; font-size:12px; margin-bottom:6px; }
#quizzzMusicSalon .qm-mini-result strong{ font:800 22px/1 "Courier New", monospace; color:#fff; }
#quizzzMusicSalon .qm-scoreboard{ flex:1; min-height:180px; padding:14px; border-radius:16px; background:rgba(10,12,18,.72); border:1px solid rgba(255,255,255,.08); }
#quizzzMusicSalon .qm-box-title{ font-size:14px; font-weight:800; letter-spacing:1.2px; color:#ffd774; text-transform:uppercase; margin-bottom:10px; }
#quizzzMusicSalon .qm-scores{ display:flex; flex-direction:column; gap:8px; }
#quizzzMusicSalon .qm-score-row{
  display:grid; grid-template-columns:32px minmax(0,1fr) auto; gap:10px; align-items:center;
  padding:10px 12px; border-radius:12px;
  background:linear-gradient(180deg, rgba(255,255,255,.04), rgba(255,255,255,.02));
  border:1px solid rgba(255,255,255,.06);
}
#quizzzMusicSalon .qm-score-rank{ width:28px; height:28px; border-radius:50%; display:flex; align-items:center; justify-content:center; background:linear-gradient(180deg, #f6cb63, #cd8d00); color:#1a1500; font-weight:900; }
#quizzzMusicSalon .qm-score-name{ min-width:0; overflow:hidden; text-overflow:ellipsis; white-space:nowrap; font-weight:700; }
#quizzzMusicSalon .qm-score-points{ color:#afffb4; font-weight:800; }
#quizzzMusicSalon .qm-score-empty{ color:rgba(255,255,255,.68); font-style:italic; }

#quizzzMusicSalon .qm-question-box{ padding:14px 16px; }
#quizzzMusicSalon .qm-question-hint{ color:#dbe6ff; font-size:18px; font-weight:700; margin-bottom:10px; }
#quizzzMusicSalon .qm-feedback{
  min-height:50px; border-radius:14px; border:1px solid rgba(255,255,255,.08);
  background:linear-gradient(180deg, rgba(13,15,21,.85), rgba(13,15,21,.72));
  padding:12px 14px; color:#fff; font-size:18px; font-weight:800; display:flex; align-items:center;
}
#quizzzMusicSalon .qm-answer-details{
  margin-top:10px; min-height:22px; font-size:14px; color:rgba(255,255,255,.8);
}

#quizzzMusicSalon .qm-options{ display:grid; grid-template-columns:repeat(2, minmax(0,1fr)); gap:14px; }
#quizzzMusicSalon .qm-option,
#quizzzMusicSalon .qm-option-placeholder{
  min-height:96px; border-radius:16px; border:1px solid rgba(255,255,255,.08);
  background:linear-gradient(180deg, rgba(255,255,255,.055), rgba(255,255,255,.025));
  box-shadow: inset 0 1px 0 rgba(255,255,255,.04), 0 14px 24px rgba(0,0,0,.18);
}
#quizzzMusicSalon .qm-option{
  cursor:pointer; display:grid; grid-template-columns:54px minmax(0,1fr); gap:12px; align-items:center;
  padding:16px; color:#fff; text-align:left;
  transition:transform .12s ease, border-color .12s ease, box-shadow .12s ease, background .12s ease;
}
#quizzzMusicSalon .qm-option:hover{ transform:translateY(-1px); border-color:rgba(255,219,109,.45); box-shadow:0 16px 26px rgba(0,0,0,.22); }
#quizzzMusicSalon .qm-option.disabled{ opacity:.9; cursor:default; }
#quizzzMusicSalon .qm-option.selected{ border-color:#72c8ff; box-shadow:0 0 0 1px rgba(114,200,255,.28) inset, 0 0 24px rgba(114,200,255,.10); }
#quizzzMusicSalon .qm-option.correct{ border-color:#4de08a; background:linear-gradient(180deg, rgba(50,148,92,.22), rgba(16,52,31,.48)); }
#quizzzMusicSalon .qm-option.wrong{ border-color:#ff7b7b; background:linear-gradient(180deg, rgba(160,46,46,.24), rgba(66,16,16,.48)); }
#quizzzMusicSalon .qm-option-letter{
  width:42px; height:42px; border-radius:12px; display:flex; align-items:center; justify-content:center;
  background:linear-gradient(180deg, #f9d777, #d89500); color:#1e1700; font-weight:900; font-size:18px;
  box-shadow:0 8px 18px rgba(0,0,0,.22);
}
#quizzzMusicSalon .qm-option-text{ min-width:0; font-size:20px; font-weight:800; line-height:1.25; }
#quizzzMusicSalon .qm-option-placeholder{
  grid-column:1 / -1; display:flex; align-items:center; justify-content:center;
  color:rgba(255,255,255,.72); font-style:italic;
}

@media (max-width: 1080px){
  #quizzzMusicSalon{ padding:8px; }
  #quizzzMusicSalon .qm-stage{ grid-template-columns:1fr; }
}
@media (max-width: 860px){
  #quizzzMusicSalon .qm-topbar{ flex-direction:column; align-items:flex-start; }
  #quizzzMusicSalon .qm-controls{ justify-content:flex-start; }
  #quizzzMusicSalon .qm-deck{ min-height:320px; }
  #quizzzMusicSalon .qm-platter-shadow{ left:36px; width:246px; height:246px; }
  #quizzzMusicSalon .qm-record{ left:24px; top:24px; width:250px; height:250px; }
  #quizzzMusicSalon .qm-speaker{ width:72px; height:100px; }
  #quizzzMusicSalon .qm-speaker-left{ right:118px; }
}
@media (max-width: 700px){
  #quizzzMusicSalon .qm-brand-main{ font-size:22px; }
  #quizzzMusicSalon .qm-question-hint,
  #quizzzMusicSalon .qm-option-text,
  #quizzzMusicSalon .qm-feedback{ font-size:17px; }
  #quizzzMusicSalon .qm-counters,
  #quizzzMusicSalon .qm-results-strip,
  #quizzzMusicSalon .qm-options{ grid-template-columns:1fr; }
  #quizzzMusicSalon .qm-deck{ min-height:300px; }
  #quizzzMusicSalon .qm-record{ width:220px; height:220px; }
  #quizzzMusicSalon .qm-platter-shadow{ width:216px; height:216px; }
  #quizzzMusicSalon .qm-arm{ width:140px; right:18px; top:68px; }
  #quizzzMusicSalon .qm-speaker{ display:none; }
}


/* === Quizzz Music V2.1 : cadrage vertical PC / tablette paysage ============
   Le jeu conserve son aspect complet mais utilise mieux la hauteur du panneau
   central afin que les 4 propositions restent visibles sans gros scroll. */
@media (min-width: 701px){
  #quizzzMusicSalon{
    padding:6px;
    overflow:hidden;
  }
  #paneChat.quizzz-music-mode #quizzzMusicSalon{
    flex:1 1 auto;
    min-height:0;
  }
  #quizzzMusicSalon .qm-shell{
    height:100%;
    min-height:0;
    box-sizing:border-box;
    gap:8px;
    padding:8px;
    overflow:hidden;
  }
  #quizzzMusicSalon .qm-topbar{
    min-height:44px;
    padding:6px 9px;
    gap:8px;
  }
  #quizzzMusicSalon .qm-brand-main{
    font-size:22px;
    line-height:1;
  }
  #quizzzMusicSalon .qm-brand-sub{
    font-size:11px;
    margin-top:1px;
  }
  #quizzzMusicSalon .qm-controls{
    gap:3px;
  }
  #quizzzMusicSalon .qm-controls select,
  #quizzzMusicSalon .qm-btn{
    height:32px;
    padding:0 9px;
    border-radius:9px;
    font-size:12px;
  }
  #quizzzMusicSalon .qm-main{
    flex:1 1 auto;
    min-height:0;
    gap:8px;
    display:grid;
    grid-template-rows:minmax(248px, 1fr) auto auto;
  }
  #quizzzMusicSalon .qm-stage{
    min-height:0;
    gap:8px;
    grid-template-columns:minmax(0,1.38fr) minmax(280px,.62fr);
  }
  #quizzzMusicSalon .qm-turntable{
    min-height:0;
    padding:8px;
    gap:6px;
  }
  #quizzzMusicSalon .qm-turntable-lights{
    gap:6px;
  }
  #quizzzMusicSalon .qm-light{
    height:6px;
  }
  #quizzzMusicSalon .qm-deck{
    min-height:190px;
    height:190px;
    border-radius:17px;
  }
  #quizzzMusicSalon .qm-platter-shadow{
    width:168px;
    height:168px;
    left:27px;
    top:15px;
  }
  #quizzzMusicSalon .qm-record{
    width:172px;
    height:172px;
    left:20px;
    top:9px;
  }
  #quizzzMusicSalon .qm-ring-1{ inset:18px; }
  #quizzzMusicSalon .qm-ring-2{ inset:34px; }
  #quizzzMusicSalon .qm-ring-3{ inset:50px; }
  #quizzzMusicSalon .qm-record-label{
    width:58px;
    height:58px;
    font-size:9px;
  }
  #quizzzMusicSalon .qm-arm{
    width:118px;
    height:8px;
    right:23px;
    top:44px;
  }
  #quizzzMusicSalon .qm-arm::before{
    width:19px;
    height:19px;
  }
  #quizzzMusicSalon .qm-arm-head{
    width:18px;
    height:12px;
  }
  #quizzzMusicSalon .qm-speaker{
    bottom:13px;
    width:54px;
    height:73px;
    border-radius:11px;
  }
  #quizzzMusicSalon .qm-speaker::before{
    width:31px;
    height:31px;
    top:8px;
  }
  #quizzzMusicSalon .qm-speaker::after{
    width:38px;
    height:38px;
    bottom:7px;
  }
  #quizzzMusicSalon .qm-speaker-left{ right:86px; }
  #quizzzMusicSalon .qm-speaker-right{ right:20px; }
  #quizzzMusicSalon .qm-stage-bottom{
    gap:3px;
  }
  #quizzzMusicSalon .qm-message{
    min-height:18px;
    font-size:15px;
    line-height:1.15;
  }
  #quizzzMusicSalon .qm-submessage{
    min-height:14px;
    font-size:11px;
    line-height:1.15;
  }
  #quizzzMusicSalon .qm-vumeter{
    min-height:28px;
    height:28px;
    padding:4px 7px;
    gap:4px;
  }
  #quizzzMusicSalon .qm-vu-bar{
    height:6px;
  }
  @keyframes qmVuLoad{ 0%,100%{ height:5px; opacity:.45; } 50%{ height:14px; opacity:.8; } }
  @keyframes qmVuCount{ 0%,100%{ height:6px; } 50%{ height:18px; } }
  @keyframes qmVuPlay{ 0%{ height:6px; } 25%{ height:18px; } 50%{ height:10px; } 75%{ height:22px; } 100%{ height:7px; } }
  @keyframes qmVuReveal{ 0%,100%{ height:8px; } 50%{ height:20px; } }

  #quizzzMusicSalon .qm-side{
    min-height:0;
    padding:7px;
    gap:7px;
  }
  #quizzzMusicSalon .qm-counters{
    gap:6px;
  }
  #quizzzMusicSalon .qm-counter{
    padding:6px 7px;
    border-radius:10px;
  }
  #quizzzMusicSalon .qm-counter-label{
    font-size:8px;
    margin-bottom:3px;
    letter-spacing:1px;
  }
  #quizzzMusicSalon .qm-counter strong{
    font-size:19px;
  }
  #quizzzMusicSalon .qm-results-strip{
    gap:6px;
  }
  #quizzzMusicSalon .qm-mini-result{
    padding:6px 7px;
    border-radius:10px;
  }
  #quizzzMusicSalon .qm-mini-result span{
    font-size:9px;
    margin-bottom:2px;
  }
  #quizzzMusicSalon .qm-mini-result strong{
    font-size:16px;
  }
  #quizzzMusicSalon .qm-scoreboard{
    min-height:0;
    padding:7px;
    border-radius:11px;
    overflow:hidden;
  }
  #quizzzMusicSalon .qm-box-title{
    font-size:10px;
    margin-bottom:5px;
  }
  #quizzzMusicSalon .qm-scores{
    gap:3px;
  }
  #quizzzMusicSalon .qm-score-row{
    grid-template-columns:22px minmax(0,1fr) auto;
    gap:6px;
    padding:4px 6px;
    border-radius:8px;
    font-size:11px;
  }
  #quizzzMusicSalon .qm-score-rank{
    width:20px;
    height:20px;
    font-size:10px;
  }
  #quizzzMusicSalon .qm-question-box{
    padding:6px 10px;
    border-radius:12px;
  }
  #quizzzMusicSalon .qm-question-box .qm-box-title{
    margin-bottom:3px;
  }
  #quizzzMusicSalon .qm-question-hint{
    font-size:14px;
    margin-bottom:4px;
    line-height:1.15;
  }
  #quizzzMusicSalon .qm-feedback{
    min-height:30px;
    padding:5px 9px;
    border-radius:9px;
    font-size:13px;
  }
  #quizzzMusicSalon .qm-answer-details{
    min-height:14px;
    margin-top:3px;
    font-size:10px;
    line-height:1.1;
  }
  #quizzzMusicSalon .qm-options{
    gap:7px;
  }
  #quizzzMusicSalon .qm-option,
  #quizzzMusicSalon .qm-option-placeholder{
    min-height:55px;
    border-radius:11px;
  }
  #quizzzMusicSalon .qm-option{
    grid-template-columns:36px minmax(0,1fr);
    gap:8px;
    padding:7px 10px;
  }
  #quizzzMusicSalon .qm-option-letter{
    width:30px;
    height:30px;
    border-radius:8px;
    font-size:13px;
  }
  #quizzzMusicSalon .qm-option-text{
    font-size:14px;
    line-height:1.1;
  }
}

/* Très petits écrans : on garde volontairement le scroll vertical plutôt que
   d'écraser les boutons de réponse au point de les rendre difficiles à cliquer. */
@media (max-height: 720px) and (min-width: 701px){
  #quizzzMusicSalon .qm-main{ grid-template-rows:minmax(218px, 1fr) auto auto; }
  #quizzzMusicSalon .qm-deck{ min-height:166px; height:166px; }
  #quizzzMusicSalon .qm-record{ width:148px; height:148px; left:18px; top:8px; }
  #quizzzMusicSalon .qm-platter-shadow{ width:145px; height:145px; left:24px; top:12px; }
  #quizzzMusicSalon .qm-record-label{ width:50px; height:50px; }
  #quizzzMusicSalon .qm-speaker{ height:62px; width:48px; }
  #quizzzMusicSalon .qm-vumeter{ min-height:24px; height:24px; }
  #quizzzMusicSalon .qm-option,
  #quizzzMusicSalon .qm-option-placeholder{ min-height:48px; }
}


/* === Quizzz Music V2.3 : platine réaliste + pause ====================== */
#quizzzMusicSalon .qm-btn.pause{
  background:linear-gradient(180deg,#6a77ff,#3946b8);
  border-color:#5663e6;
  color:#fff;
}
#quizzzMusicSalon .qm-deck-controls{
  position:absolute;
  left:215px;
  top:105px;
  width:118px;
  bottom:14px;
  display:grid;
  grid-template-columns:1fr 1fr;
  gap:8px;
  align-content:end;
  padding:8px;
  border-radius:14px;
  border:1px solid rgba(255,255,255,.09);
  background:linear-gradient(180deg,rgba(18,22,31,.88),rgba(7,9,14,.96));
  box-shadow:inset 0 1px 0 rgba(255,255,255,.04),0 8px 20px rgba(0,0,0,.25);
}
#quizzzMusicSalon .qm-deck-controls small{
  display:block;
  margin-top:4px;
  font-size:7px;
  letter-spacing:.7px;
  text-align:center;
  color:#9ba8bd;
}
#quizzzMusicSalon .qm-startstop span{
  display:block;
  width:28px;
  height:28px;
  margin:auto;
  border-radius:50%;
  background:radial-gradient(circle at 35% 30%,#f5f7fa,#7b818c 68%,#343841 100%);
  box-shadow:0 2px 6px rgba(0,0,0,.35),inset 0 0 0 3px rgba(255,255,255,.08);
}
#quizzzMusicSalon .qm-rpm{ text-align:center; }
#quizzzMusicSalon .qm-rpm b{
  display:inline-flex;
  width:25px;
  height:22px;
  margin:2px 1px 0;
  border-radius:5px;
  align-items:center;
  justify-content:center;
  font:700 9px/1 "Courier New",monospace;
  color:#f9e8a8;
  background:#141821;
  border:1px solid rgba(255,255,255,.08);
}
#quizzzMusicSalon .qm-pitch{ grid-column:1/-1; }
#quizzzMusicSalon .qm-pitch-slot{
  position:relative;
  display:block;
  width:86%;
  height:6px;
  margin:4px auto 0;
  border-radius:999px;
  background:#07090d;
  box-shadow:inset 0 1px 3px rgba(0,0,0,.8);
}
#quizzzMusicSalon .qm-pitch-slot i{
  position:absolute;
  width:22px;
  height:12px;
  left:48%;
  top:50%;
  transform:translate(-50%,-50%);
  border-radius:3px;
  background:linear-gradient(180deg,#d9dde5,#707681);
  box-shadow:0 1px 4px rgba(0,0,0,.35);
}
#quizzzMusicSalon .qm-power-led{ grid-column:1/-1; text-align:center; }
#quizzzMusicSalon .qm-power-led span{
  display:block;
  width:8px;
  height:8px;
  margin:0 auto;
  border-radius:50%;
  background:#ff4d4d;
  box-shadow:0 0 10px rgba(255,77,77,.9);
}
#quizzzMusicSalon .phase-playing .qm-power-led span,
#quizzzMusicSalon .phase-countdown .qm-power-led span{ background:#63ff94; box-shadow:0 0 12px rgba(99,255,148,.9); }

/* Le pivot est à droite, la cellule vient réellement se poser vers le vinyle. */
#quizzzMusicSalon .qm-arm{
  left:205px !important;
  right:auto !important;
  top:48px !important;
  width:112px !important;
  transform-origin:100% 50% !important;
  transform:rotate(18deg) !important;
}
#quizzzMusicSalon .qm-arm::before{
  left:auto !important;
  right:-10px !important;
}
#quizzzMusicSalon .qm-arm-head{
  left:-5px !important;
  right:auto !important;
  transform:translateY(-50%) rotate(-12deg) !important;
}
#quizzzMusicSalon .qm-turntable.is-playing .qm-arm{ transform:rotate(40deg) !important; transition:transform .45s ease; }
#quizzzMusicSalon .qm-turntable.is-loading .qm-arm{ transform:rotate(22deg) !important; transition:transform .4s ease; }
#quizzzMusicSalon .qm-turntable.is-paused .qm-record{ animation-play-state:paused !important; }
#quizzzMusicSalon .qm-turntable.is-paused .qm-arm{ transform:rotate(40deg) !important; }
#quizzzMusicSalon .qm-vumeter.is-paused .qm-vu-bar{ height:7px !important; opacity:.4; animation:none !important; }

@media (min-width:701px){
  #quizzzMusicSalon .qm-deck-controls{
    left:204px;
    top:94px;
    width:106px;
    bottom:10px;
    gap:5px;
    padding:6px;
  }
  #quizzzMusicSalon .qm-arm{
    left:190px !important;
    top:38px !important;
    width:100px !important;
    height:7px !important;
  }
}
@media (max-height:720px) and (min-width:701px){
  #quizzzMusicSalon .qm-deck-controls{
    left:174px;
    top:83px;
    width:94px;
    bottom:8px;
    padding:5px;
  }
  #quizzzMusicSalon .qm-arm{
    left:164px !important;
    top:39px !important;
    width:90px !important;
  }
}
@media (max-width:700px){
  #quizzzMusicSalon .qm-deck-controls{ display:none; }
  #quizzzMusicSalon .qm-arm{
    left:190px !important;
    top:44px !important;
    width:98px !important;
  }
}



/* === Quizzz Music V2.3b : simple pochette à droite, sans toucher au reste === */
#quizzzMusicSalon .qm-cover-panel{
  position:absolute;
  right:10px;
  top:10px;
  width:134px;
  height:134px;
  display:flex;
  align-items:center;
  justify-content:center;
  pointer-events:none;
}
#quizzzMusicSalon .qm-cover-frame{
  position:relative;
  width:100%;
  height:100%;
  border-radius:10px;
  overflow:hidden;
  border:1px solid rgba(255,255,255,.14);
  background:
    linear-gradient(135deg, rgba(255,222,120,.45), rgba(123,79,255,.28) 48%, rgba(12,14,20,.98) 100%),
    linear-gradient(180deg, rgba(255,255,255,.08), rgba(255,255,255,.03));
  box-shadow:inset 0 1px 0 rgba(255,255,255,.05), 0 10px 18px rgba(0,0,0,.24);
}
#quizzzMusicSalon .qm-cover-frame img{
  display:block;
  width:100%;
  height:100%;
  object-fit:cover;
}
#quizzzMusicSalon .qm-cover-default{
  position:relative;
  width:100%;
  height:100%;
  display:flex;
  align-items:center;
  justify-content:center;
  flex-direction:column;
  color:#fff;
  font-size:18px;
  font-weight:900;
  letter-spacing:1.2px;
  line-height:1.05;
  text-shadow:0 2px 8px rgba(0,0,0,.35);
}
#quizzzMusicSalon .qm-cover-default::before{
  content:"";
  position:absolute;
  inset:7px;
  border-radius:6px;
  border:1px solid rgba(255,255,255,.12);
}
#quizzzMusicSalon .phase-playing .qm-cover-frame,
#quizzzMusicSalon .phase-countdown .qm-cover-frame{
  animation: qmCoverPulse 2.2s ease-in-out infinite;
}
@keyframes qmCoverPulse{
  0%,100%{ transform:scale(1); box-shadow:inset 0 1px 0 rgba(255,255,255,.05), 0 10px 18px rgba(0,0,0,.24); }
  50%{ transform:scale(1.035); box-shadow:inset 0 1px 0 rgba(255,255,255,.08), 0 12px 24px rgba(0,0,0,.28), 0 0 16px rgba(255,210,117,.18); }
}

/* Même bras, même place : seul le sens du mouvement change vers le bas sur le disque. */
#quizzzMusicSalon .qm-turntable.is-playing .qm-arm{ transform:rotate(-2deg) !important; transition:transform .45s ease; }
#quizzzMusicSalon .qm-turntable.is-loading .qm-arm{ transform:rotate(10deg) !important; transition:transform .4s ease; }
#quizzzMusicSalon .qm-turntable.is-paused .qm-arm{ transform:rotate(-2deg) !important; }

@media (max-height:720px) and (min-width:701px){
  #quizzzMusicSalon .qm-cover-panel{ right:8px; top:8px; width:118px; height:118px; }
}
@media (max-width:700px){
  #quizzzMusicSalon .qm-cover-panel{ right:8px; top:8px; width:104px; height:104px; }
}


/* === Quizzz Music : liste des participants (version stable) === */
#quizzzMusicSalon .qm-participants-box{
  padding:7px;
  border-radius:11px;
  border:1px solid rgba(255,255,255,.08);
  background:rgba(10,12,18,.72);
}
#quizzzMusicSalon .qm-participants-head{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:8px;
  margin-bottom:6px;
  color:#ffd774;
  font-size:10px;
  font-weight:800;
  letter-spacing:.8px;
  text-transform:uppercase;
}
#quizzzMusicSalon .qm-participants-head strong{
  min-width:22px;
  height:20px;
  padding:0 5px;
  border-radius:999px;
  display:inline-flex;
  align-items:center;
  justify-content:center;
  background:#141a24;
  color:#9fffc4;
  border:1px solid rgba(255,255,255,.08);
}
#quizzzMusicSalon .qm-participants-actions{
  display:grid;
  grid-template-columns:1fr 1fr;
  gap:5px;
  margin-bottom:6px;
}
#quizzzMusicSalon .qm-player-btn{
  min-height:28px;
  border-radius:8px;
  border:1px solid rgba(255,255,255,.10);
  color:#fff;
  font-size:10px;
  font-weight:800;
  cursor:pointer;
}
#quizzzMusicSalon .qm-player-btn.join{ background:linear-gradient(180deg,#3ebd70,#237744); }
#quizzzMusicSalon .qm-player-btn.leave{ background:linear-gradient(180deg,#6c7484,#343944); }
#quizzzMusicSalon .qm-player-btn:disabled{ opacity:.45; cursor:default; }
#quizzzMusicSalon .qm-player-btn.join.active{ background:linear-gradient(180deg,#58d889,#2d8d52); }
#quizzzMusicSalon .qm-participants-list{
  display:flex;
  flex-wrap:wrap;
  gap:4px;
  max-height:48px;
  overflow:auto;
}
#quizzzMusicSalon .qm-player-chip{
  display:inline-flex;
  align-items:center;
  max-width:120px;
  min-height:21px;
  padding:2px 7px;
  border-radius:999px;
  overflow:hidden;
  text-overflow:ellipsis;
  white-space:nowrap;
  background:linear-gradient(180deg,rgba(74,118,255,.24),rgba(38,58,121,.28));
  border:1px solid rgba(119,156,255,.25);
  color:#e7efff;
  font-size:10px;
  font-weight:700;
}
#quizzzMusicSalon .qm-no-player{ color:rgba(255,255,255,.55); font-size:10px; font-style:italic; }
#quizzzMusicSalon #qmStart:disabled{ opacity:.45; cursor:not-allowed; filter:grayscale(.25); }
@media (max-width:700px){
  #quizzzMusicSalon .qm-participants-actions{ grid-template-columns:1fr; }
  #quizzzMusicSalon .qm-participants-list{ max-height:60px; }
}

/* === Quizzz Music étape 2 : retours privés des participants === */
#quizzzMusicSalon .qm-turntable{ position:relative; }
#quizzzMusicSalon .qm-personal-overlay{
  position:absolute;
  inset:42px 18px auto 18px;
  z-index:30;
  display:none;
  align-items:flex-start;
  justify-content:center;
  pointer-events:none;
}
#quizzzMusicSalon .qm-personal-overlay.is-visible{ display:flex; }
#quizzzMusicSalon .qm-personal-card{
  width:min(520px, 92%);
  max-height:320px;
  overflow:auto;
  padding:16px 18px;
  border-radius:20px;
  text-align:center;
  border:1px solid rgba(255,255,255,.18);
  box-shadow:0 18px 44px rgba(0,0,0,.42), inset 0 1px 0 rgba(255,255,255,.08);
  backdrop-filter:blur(4px);
  animation:qmPersonalPop .24s ease both;
}
#quizzzMusicSalon .qm-personal-overlay.is-correct .qm-personal-card{
  background:linear-gradient(180deg, rgba(26,117,63,.96), rgba(8,47,24,.97));
}
#quizzzMusicSalon .qm-personal-overlay.is-wrong .qm-personal-card{
  background:linear-gradient(180deg, rgba(138,41,41,.96), rgba(58,12,12,.97));
}
#quizzzMusicSalon .qm-personal-overlay.is-winner .qm-personal-card{
  background:linear-gradient(180deg, rgba(136,101,17,.97), rgba(63,42,4,.98));
}
#quizzzMusicSalon .qm-personal-overlay.is-finished .qm-personal-card{
  background:linear-gradient(180deg, rgba(34,48,72,.97), rgba(13,20,34,.98));
}
#quizzzMusicSalon .qm-personal-icon{
  min-height:56px;
  display:flex;
  align-items:center;
  justify-content:center;
  margin-bottom:4px;
}
#quizzzMusicSalon .qm-personal-title{
  font-size:30px;
  line-height:1.05;
  font-weight:1000;
  letter-spacing:1px;
  color:#fff;
  text-shadow:0 2px 12px rgba(0,0,0,.32);
}
#quizzzMusicSalon .qm-personal-sub{
  margin-top:7px;
  font-size:16px;
  line-height:1.3;
  font-weight:800;
  color:#fff3cb;
}
#quizzzMusicSalon .qm-clap-hands{
  display:flex;
  align-items:center;
  justify-content:center;
  gap:10px;
}
#quizzzMusicSalon .qm-clap-hands span{
  display:inline-block;
  font-size:52px;
  line-height:1;
  filter:drop-shadow(0 4px 9px rgba(0,0,0,.28));
}
#quizzzMusicSalon .qm-clap-hands span:first-child{ animation:qmClapA .48s ease-in-out infinite alternate; }
#quizzzMusicSalon .qm-clap-hands span:last-child{ animation:qmClapB .48s ease-in-out infinite alternate; }
#quizzzMusicSalon .qm-error-visual,
#quizzzMusicSalon .qm-winner-visual{
  display:flex;
  align-items:center;
  justify-content:center;
  gap:12px;
}
#quizzzMusicSalon .qm-error-cross{ font-size:44px; color:#ffd6d6; font-weight:1000; }
#quizzzMusicSalon .qm-error-face{ font-size:52px; line-height:1; animation:qmSadBob .9s ease-in-out infinite; }
#quizzzMusicSalon .qm-winner-visual span{ font-size:44px; animation:qmClapA .48s ease-in-out infinite alternate; }
#quizzzMusicSalon .qm-winner-visual span:last-child{ animation-name:qmClapB; }
#quizzzMusicSalon .qm-winner-visual b{ font-size:54px; line-height:1; filter:drop-shadow(0 4px 10px rgba(0,0,0,.28)); }
#quizzzMusicSalon .qm-finish-visual{ font-size:54px; line-height:1; }
#quizzzMusicSalon .qm-personal-ranking{
  margin-top:12px;
  border-top:1px solid rgba(255,255,255,.13);
  padding-top:10px;
}
#quizzzMusicSalon .qm-final-rank-title{
  margin-bottom:7px;
  font-size:12px;
  font-weight:900;
  letter-spacing:1.1px;
  text-transform:uppercase;
  color:#ffe39a;
}
#quizzzMusicSalon .qm-final-rank-row{
  display:grid;
  grid-template-columns:28px minmax(0,1fr) auto;
  gap:8px;
  align-items:center;
  padding:5px 8px;
  border-radius:9px;
  color:#eef5ff;
  font-size:13px;
  text-align:left;
}
#quizzzMusicSalon .qm-final-rank-row:nth-child(even){ background:rgba(255,255,255,.035); }
#quizzzMusicSalon .qm-final-rank-row.is-me{
  background:rgba(255,224,126,.14);
  box-shadow:inset 0 0 0 1px rgba(255,224,126,.22);
}
#quizzzMusicSalon .qm-final-pos{ text-align:center; font-weight:900; color:#ffd774; }
#quizzzMusicSalon .qm-final-name{ overflow:hidden; text-overflow:ellipsis; white-space:nowrap; font-weight:800; }
#quizzzMusicSalon .qm-final-points{ color:#b9ffc7; }
@keyframes qmPersonalPop{ from{ opacity:0; transform:translateY(8px) scale(.96); } to{ opacity:1; transform:translateY(0) scale(1); } }
@keyframes qmClapA{ from{ transform:translateX(5px) rotate(8deg); } to{ transform:translateX(-5px) rotate(-8deg); } }
@keyframes qmClapB{ from{ transform:translateX(-5px) rotate(-8deg); } to{ transform:translateX(5px) rotate(8deg); } }
@keyframes qmSadBob{ 0%,100%{ transform:translateY(0); } 50%{ transform:translateY(-4px); } }

@media (max-width:700px){
  #quizzzMusicSalon .qm-personal-overlay{ inset:34px 8px auto 8px; }
  #quizzzMusicSalon .qm-personal-card{ width:94%; max-height:280px; padding:12px 13px; }
  #quizzzMusicSalon .qm-personal-title{ font-size:24px; }
  #quizzzMusicSalon .qm-personal-sub{ font-size:14px; }
  #quizzzMusicSalon .qm-clap-hands span{ font-size:42px; }
  #quizzzMusicSalon .qm-winner-visual b{ font-size:46px; }
}


/* === Quizzz Music étape 4 : échelonnement, top 3 et classement de manche === */
#quizzzMusicSalon .qm-top3-box{
  padding:6px 7px;
  border-radius:11px;
  border:1px solid rgba(255,215,116,.18);
  background:linear-gradient(180deg,rgba(58,42,10,.45),rgba(12,14,19,.74));
}
#quizzzMusicSalon .qm-top3-head{
  margin-bottom:5px;
  color:#ffd774;
  font-size:9px;
  font-weight:900;
  letter-spacing:.8px;
}
#quizzzMusicSalon .qm-top3-list{ display:flex; flex-direction:column; gap:3px; }
#quizzzMusicSalon .qm-top3-row{
  display:grid;
  grid-template-columns:22px minmax(0,1fr) auto;
  align-items:center;
  gap:5px;
  min-height:22px;
  padding:2px 5px;
  border-radius:7px;
  background:rgba(255,255,255,.035);
  border:1px solid rgba(255,255,255,.045);
  font-size:10px;
}
#quizzzMusicSalon .qm-top3-medal{ font-size:14px; text-align:center; }
#quizzzMusicSalon .qm-top3-name{ overflow:hidden; text-overflow:ellipsis; white-space:nowrap; font-weight:800; color:#f2f5ff; }
#quizzzMusicSalon .qm-top3-row strong{ color:#afffb4; font-size:10px; }

#quizzzMusicSalon .qm-round-ranking{
  display:none;
  margin-top:5px;
  padding:5px 7px;
  border-radius:9px;
  border:1px solid rgba(101,216,255,.14);
  background:rgba(7,12,20,.66);
}
#quizzzMusicSalon .qm-round-ranking.is-visible{ display:block; }
#quizzzMusicSalon .qm-round-ranking-title{
  margin-bottom:4px;
  color:#91dfff;
  font-size:9px;
  font-weight:900;
  letter-spacing:.7px;
  text-transform:uppercase;
}
#quizzzMusicSalon .qm-round-rank-row{
  display:grid;
  grid-template-columns:22px minmax(0,1fr) 52px 58px;
  gap:5px;
  align-items:center;
  min-height:20px;
  padding:2px 4px;
  border-top:1px solid rgba(255,255,255,.04);
  font-size:10px;
}
#quizzzMusicSalon .qm-round-rank-row:first-of-type{ border-top:0; }
#quizzzMusicSalon .qm-round-pos{
  width:19px; height:19px; border-radius:50%;
  display:flex; align-items:center; justify-content:center;
  background:rgba(255,215,116,.16); color:#ffe39a; font-weight:900;
}
#quizzzMusicSalon .qm-round-name{ overflow:hidden; text-overflow:ellipsis; white-space:nowrap; font-weight:800; color:#fff; }
#quizzzMusicSalon .qm-round-time{ color:#aac2e6; text-align:right; }
#quizzzMusicSalon .qm-round-rank-row strong{ color:#7dffac; text-align:right; }

@media (max-width:700px){
  #quizzzMusicSalon .qm-round-rank-row{ grid-template-columns:22px minmax(0,1fr) 48px 54px; font-size:9px; }
  #quizzzMusicSalon .qm-top3-row{ font-size:9px; }
}


/* === Quizzz Music V4.1 : classement de manche en direct au centre de la platine === */
#quizzzMusicSalon .qm-live-rank-panel{
  position:absolute;
  z-index:3;
  left:322px;
  right:154px;
  top:12px;
  bottom:12px;
  min-width:150px;
  padding:8px;
  border-radius:13px;
  border:1px solid rgba(101,216,255,.16);
  background:linear-gradient(180deg,rgba(8,13,22,.88),rgba(5,8,14,.78));
  box-shadow:inset 0 1px 0 rgba(255,255,255,.04),0 8px 18px rgba(0,0,0,.20);
  overflow:hidden;
  pointer-events:none;
}
#quizzzMusicSalon .qm-live-rank-head{
  display:flex;
  align-items:baseline;
  justify-content:space-between;
  gap:6px;
  padding-bottom:6px;
  margin-bottom:4px;
  border-bottom:1px solid rgba(255,255,255,.06);
}
#quizzzMusicSalon .qm-live-rank-head span{
  color:#98e1ff;
  font-size:10px;
  font-weight:1000;
  letter-spacing:.9px;
}
#quizzzMusicSalon .qm-live-rank-head small{
  color:#7dffac;
  font-size:7px;
  font-weight:900;
  letter-spacing:.8px;
}
#quizzzMusicSalon .qm-live-rank-list{
  display:flex;
  flex-direction:column;
  gap:3px;
  max-height:calc(100% - 24px);
  overflow:hidden;
}
#quizzzMusicSalon .qm-live-rank-empty{
  display:flex;
  align-items:center;
  justify-content:center;
  min-height:58px;
  color:rgba(255,255,255,.50);
  font-size:9px;
  line-height:1.25;
  text-align:center;
  font-style:italic;
}
#quizzzMusicSalon .qm-live-rank-row{
  display:grid;
  grid-template-columns:18px 22px minmax(0,1fr) 37px 32px;
  gap:4px;
  align-items:center;
  min-height:24px;
  padding:2px 3px;
  border-radius:7px;
  background:rgba(255,255,255,.035);
  border:1px solid rgba(255,255,255,.04);
  animation:qmLiveRankIn .22s ease;
}
#quizzzMusicSalon .qm-live-rank-pos{
  width:17px;height:17px;border-radius:50%;
  display:flex;align-items:center;justify-content:center;
  background:rgba(255,215,116,.18);color:#ffe39a;font-size:8px;font-weight:1000;
}
#quizzzMusicSalon .qm-live-rank-avatar{
  width:21px;height:21px;border-radius:50%;
  display:flex;align-items:center;justify-content:center;
  background:linear-gradient(180deg,#283b5e,#15223a);
  color:#dff6ff;font-size:9px;font-weight:1000;
  border:1px solid rgba(101,216,255,.18);
}
#quizzzMusicSalon .qm-live-rank-name{
  overflow:hidden;text-overflow:ellipsis;white-space:nowrap;
  color:#fff;font-size:9px;font-weight:850;
}
#quizzzMusicSalon .qm-live-rank-time{ color:#a9bedf;font-size:8px;text-align:right; }
#quizzzMusicSalon .qm-live-rank-row strong{ color:#7dffac;font-size:9px;text-align:right; }
#quizzzMusicSalon .qm-live-rank-row:first-child{
  background:linear-gradient(90deg,rgba(255,215,116,.12),rgba(255,255,255,.035));
  border-color:rgba(255,215,116,.14);
}
@keyframes qmLiveRankIn{ from{opacity:0;transform:translateY(5px)} to{opacity:1;transform:translateY(0)} }

@media (max-height:720px) and (min-width:701px){
  #quizzzMusicSalon .qm-live-rank-panel{ left:275px; right:136px; top:8px; bottom:8px; padding:5px; }
  #quizzzMusicSalon .qm-live-rank-row{ min-height:18px; grid-template-columns:15px 18px minmax(0,1fr) 32px 28px; gap:3px; }
  #quizzzMusicSalon .qm-live-rank-avatar{ width:17px;height:17px;font-size:7px; }
  #quizzzMusicSalon .qm-live-rank-name,#quizzzMusicSalon .qm-live-rank-time,#quizzzMusicSalon .qm-live-rank-row strong{ font-size:7px; }
}
@media (max-width:700px){
  #quizzzMusicSalon .qm-live-rank-panel{ display:none; }
}


/* === Quizzz Music V4.4 : Classement général compact en bouton RECORD === */
#quizzzMusicSalon .qm-scoreboard.qm-records-compact{
  flex:0 0 auto;
  min-height:0;
  padding:0;
  border:0;
  background:transparent;
  box-shadow:none;
  overflow:visible;
}
#quizzzMusicSalon .qm-record-btn{
  width:100%;
  height:36px;
  border-radius:11px;
  border:1px solid rgba(255,215,116,.28);
  background:linear-gradient(180deg, rgba(104,75,13,.90), rgba(45,31,5,.96));
  color:#ffe39a;
  font-weight:900;
  font-size:12px;
  letter-spacing:1px;
  cursor:pointer;
  box-shadow:inset 0 1px 0 rgba(255,255,255,.07),0 6px 14px rgba(0,0,0,.22);
}
#quizzzMusicSalon .qm-record-btn:hover{ filter:brightness(1.12); }
#quizzzMusicSalon .qm-record-popup{
  position:fixed;
  inset:0;
  z-index:10040;
  display:none;
  align-items:center;
  justify-content:center;
  padding:20px;
  background:rgba(0,0,0,.42);
}
#quizzzMusicSalon .qm-record-popup.is-open{ display:flex; }
#quizzzMusicSalon .qm-record-dialog{
  position:relative;
  width:min(360px,92vw);
  padding:16px;
  border-radius:18px;
  border:1px solid rgba(255,215,116,.24);
  background:linear-gradient(180deg,#1a1d26,#0b0d12);
  box-shadow:0 22px 55px rgba(0,0,0,.55),inset 0 1px 0 rgba(255,255,255,.05);
}
#quizzzMusicSalon .qm-record-title{
  margin-bottom:12px;
  padding-right:34px;
  color:#ffd774;
  font-size:15px;
  font-weight:900;
  letter-spacing:1px;
}
#quizzzMusicSalon .qm-record-close{
  position:absolute;
  top:8px;
  right:9px;
  width:30px;
  height:30px;
  border:0;
  border-radius:50%;
  background:rgba(255,255,255,.08);
  color:#fff;
  font-size:20px;
  line-height:30px;
  cursor:pointer;
}
#quizzzMusicSalon .qm-record-dialog .qm-scores{ display:flex; flex-direction:column; gap:8px; }
#quizzzMusicSalon .qm-record-dialog .qm-score-row{
  display:grid;
  grid-template-columns:34px minmax(0,1fr) auto;
  gap:9px;
  align-items:center;
  padding:9px 10px;
  border-radius:11px;
  background:rgba(255,255,255,.045);
  border:1px solid rgba(255,255,255,.055);
}
#quizzzMusicSalon .qm-record-dialog .qm-score-rank{
  width:30px;
  height:30px;
  background:transparent;
  font-size:21px;
}
#quizzzMusicSalon .qm-record-dialog .qm-score-name{ font-size:13px; font-weight:800; }
#quizzzMusicSalon .qm-record-dialog .qm-score-points{ font-size:13px; color:#afffb4; font-weight:900; }
#quizzzMusicSalon .qm-record-dialog .qm-score-empty{ padding:12px 4px; text-align:center; }


/* === Quizzz Music V4.5 : RECORD permanent dans la colonne droite ===
   Sur PC/tablette paysage, la colonne de droite descend jusqu'au bas du bloc question.
   Le bloc question est raccourci uniquement sur sa droite. Les réponses restent pleine largeur. */
@media (min-width:701px){
  #quizzzMusicSalon .qm-main{
    grid-template-columns:minmax(0,1.38fr) minmax(280px,.62fr);
    grid-template-rows:minmax(248px,1fr) auto auto;
    column-gap:8px;
    row-gap:8px;
  }

  #quizzzMusicSalon .qm-stage{
    display:contents;
  }

  #quizzzMusicSalon .qm-turntable{
    grid-column:1;
    grid-row:1;
  }

  #quizzzMusicSalon .qm-side{
    grid-column:2;
    grid-row:1 / span 2;
    min-height:0;
    height:auto;
  }

  #quizzzMusicSalon .qm-question-box{
    grid-column:1;
    grid-row:2;
    min-width:0;
  }

  #quizzzMusicSalon .qm-options{
    grid-column:1 / -1;
    grid-row:3;
  }

  /* Le bloc RECORD devient le prolongement naturel de la colonne de droite. */
  #quizzzMusicSalon .qm-scoreboard.qm-records-compact{
    flex:1 1 118px;
    min-height:118px;
    display:flex;
    flex-direction:column;
    padding:0;
    overflow:hidden;
    border:1px solid rgba(255,215,116,.20);
    border-radius:11px;
    background:linear-gradient(180deg,rgba(58,42,10,.34),rgba(10,12,18,.80));
    box-shadow:inset 0 1px 0 rgba(255,255,255,.04);
  }

  #quizzzMusicSalon .qm-record-btn{
    flex:0 0 27px;
    height:27px;
    border:0;
    border-radius:10px 10px 0 0;
    border-bottom:0;
    cursor:default;
    box-shadow:none;
  }
  #quizzzMusicSalon .qm-record-btn:hover{ filter:none; }

  /* L'ancienne popup est réutilisée directement sous RECORD : plus de fenêtre flottante. */
  #quizzzMusicSalon .qm-record-popup,
  #quizzzMusicSalon .qm-record-popup.is-open{
    position:static;
    inset:auto;
    z-index:auto;
    display:block !important;
    flex:1 1 auto;
    min-height:0;
    padding:0;
    background:transparent;
  }

  #quizzzMusicSalon .qm-record-dialog{
    width:100%;
    height:100%;
    min-height:0;
    padding:3px 5px 4px;
    border:0;
    border-radius:0 0 10px 10px;
    background:transparent;
    box-shadow:none;
  }

  #quizzzMusicSalon .qm-record-title,
  #quizzzMusicSalon .qm-record-close{
    display:none !important;
  }

  #quizzzMusicSalon .qm-record-dialog .qm-scores{
    height:100%;
    display:flex;
    flex-direction:column;
    justify-content:flex-start;
    gap:5px;
  }

  #quizzzMusicSalon .qm-record-dialog .qm-score-row{
    grid-template-columns:24px minmax(0,1fr) auto;
    min-height:23px;
    padding:2px 5px;
    gap:4px;
    border-radius:7px;
    background:rgba(255,255,255,.045);
    border:1px solid rgba(255,255,255,.055);
  }

  #quizzzMusicSalon .qm-record-dialog .qm-score-rank{
    width:21px;
    height:21px;
    font-size:14px;
  }
  #quizzzMusicSalon .qm-record-dialog .qm-score-name{
    font-size:10px;
    line-height:1.05;
    font-weight:850;
  }
  #quizzzMusicSalon .qm-record-dialog .qm-score-points{
    font-size:10px;
    line-height:1.05;
    font-weight:900;
  }
  #quizzzMusicSalon .qm-record-dialog .qm-score-empty{
    display:flex;
    align-items:center;
    justify-content:center;
    flex:1;
    padding:8px;
    text-align:center;
  }
}


/* === Quizzz Music V4.6 : menus colorés + bordures vert fluo === */
#quizzzMusicSalon .qm-controls .qm-select{
  border-width:1px;
  border-style:solid;
  color:#fff;
  text-shadow:0 1px 2px rgba(0,0,0,.55);
  box-shadow:inset 0 1px 0 rgba(255,255,255,.10), 0 3px 9px rgba(0,0,0,.20);
  cursor:pointer;
}
#quizzzMusicSalon .qm-controls .qm-select-rounds{
  background:linear-gradient(180deg,#325bc7,#1d3477);
  border-color:#6f93ff;
}
#quizzzMusicSalon .qm-controls .qm-select-time{
  background:linear-gradient(180deg,#d07b2e,#854313);
  border-color:#ffb15e;
}
#quizzzMusicSalon .qm-controls .qm-select-between{
  background:linear-gradient(180deg,#7b4fc7,#48247f);
  border-color:#b68bff;
}
#quizzzMusicSalon .qm-controls .qm-select-style{
  background:linear-gradient(180deg,#269457,#126036);
  border-color:#62df91;
}
#quizzzMusicSalon .qm-controls .qm-select-mode{
  background:linear-gradient(180deg,#238ca9,#12556b);
  border-color:#64d8f3;
}
#quizzzMusicSalon .qm-controls .qm-select:hover,
#quizzzMusicSalon .qm-controls .qm-select:focus{
  filter:brightness(1.12);
  outline:none;
  box-shadow:inset 0 1px 0 rgba(255,255,255,.14), 0 0 0 1px rgba(255,255,255,.12), 0 0 13px rgba(255,255,255,.08);
}
#quizzzMusicSalon .qm-controls .qm-select option{
  background:#121722;
  color:#fff;
}

/* Bordures principales du salon, proches du vert fluo du skin par défaut. */
#quizzzMusicSalon .qm-shell,
#quizzzMusicSalon .qm-topbar,
#quizzzMusicSalon .qm-turntable,
#quizzzMusicSalon .qm-side,
#quizzzMusicSalon .qm-question-box,
#quizzzMusicSalon .qm-participants-box,
#quizzzMusicSalon .qm-live-rank-panel,
#quizzzMusicSalon .qm-scoreboard.qm-records-compact{
  border-color:rgba(0,255,0,.72) !important;
  box-shadow:inset 0 0 0 1px rgba(0,255,0,.055), 0 0 8px rgba(0,255,0,.13);
}
#quizzzMusicSalon .qm-option,
#quizzzMusicSalon .qm-option-placeholder{
  border-color:rgba(0,255,0,.42);
}
#quizzzMusicSalon .qm-vumeter{
  border-color:rgba(0,255,0,.42);
}
#quizzzMusicSalon .qm-counter,
#quizzzMusicSalon .qm-mini-result{
  border-color:rgba(0,255,0,.30);
}


/* === Quizzz Music V4.7 : réorganisation commandes / classements + infobulles chat === */
/* Les title natifs ont été retirés du markup ; ces infobulles reprennent le style du chat. */
#quizzzMusicSalon .qm-tip{
  position:relative;
  display:inline-flex;
  align-items:center;
  justify-content:center;
}
#quizzzMusicSalon .qm-tip:hover::after,
#quizzzMusicSalon .qm-tip:focus-within::after{
  content:attr(data-tip);
  position:absolute;
  left:50%;
  bottom:calc(100% + 10px);
  transform:translateX(-50%);
  width:max-content;
  min-width:170px;
  max-width:260px;
  z-index:1000001;
  padding:7px 10px;
  border-radius:12px;
  background:linear-gradient(180deg, rgba(2,12,20,.96), rgba(0,0,0,.94));
  border:1px solid rgba(0,255,170,.72);
  color:#eafff8;
  font-size:12px;
  font-weight:900;
  line-height:1.18;
  text-align:left;
  text-shadow:0 1px 2px rgba(0,0,0,.8);
  box-shadow:0 0 14px rgba(0,255,170,.24), 0 10px 24px rgba(0,0,0,.55);
  pointer-events:none;
  white-space:normal;
}
#quizzzMusicSalon .qm-tip:hover::before,
#quizzzMusicSalon .qm-tip:focus-within::before{
  content:"";
  position:absolute;
  left:50%;
  bottom:calc(100% + 5px);
  transform:translateX(-50%) rotate(45deg);
  width:10px;
  height:10px;
  background:#020c14;
  border-right:1px solid rgba(0,255,170,.72);
  border-bottom:1px solid rgba(0,255,170,.72);
  z-index:1000002;
  pointer-events:none;
}
#quizzzMusicSalon .qm-tip-side:hover::after,
#quizzzMusicSalon .qm-tip-side:focus-within::after{
  left:calc(100% + 9px);
  bottom:50%;
  transform:translateY(50%);
}
#quizzzMusicSalon .qm-tip-side:hover::before,
#quizzzMusicSalon .qm-tip-side:focus-within::before{
  left:calc(100% + 4px);
  bottom:50%;
  transform:translateY(50%) rotate(135deg);
}

/* En haut : uniquement les choix + le son, centrés. */
#quizzzMusicSalon .qm-topbar{ position:relative; }
#quizzzMusicSalon .qm-controls{
  flex:1 1 auto;
  justify-content:center !important;
  align-content:center;
}
#quizzzMusicSalon .qm-controls .qm-tip > .qm-select,
#quizzzMusicSalon .qm-controls .qm-tip > .qm-btn{ width:auto; }

/* La pochette occupe maintenant le vide libéré par l'ancien classement central :
   largeur doublée, hauteur et coin supérieur droit inchangés. */
#quizzzMusicSalon .qm-cover-panel{
  width:268px !important;
  height:161px !important;
  right:10px !important;
  top:10px !important;
}

/* Nouvelle rangée placée sous le VU-mètre bleu. */
#quizzzMusicSalon .qm-lower-dashboard{
  display:grid;
  grid-template-columns:92px minmax(0,1fr) minmax(0,1fr);
  gap:8px;
  min-height:94px;
  height:94px;
  margin-top:2px;
  align-items:stretch;
}
#quizzzMusicSalon .qm-action-stack{
  display:grid;
  grid-template-rows:repeat(3, 1fr);
  gap:5px;
  min-width:0;
}
#quizzzMusicSalon .qm-action-stack .qm-tip{ width:100%; min-width:0; }
#quizzzMusicSalon .qm-action-stack .qm-btn{
  width:100%;
  height:28px;
  min-height:28px;
  padding:0 6px;
  border-radius:8px;
  font-size:10px;
  font-weight:900;
}

/* Le classement live devient un vrai cadre statique sous le VU-mètre. */
#quizzzMusicSalon .qm-lower-dashboard .qm-live-rank-panel{
  position:relative !important;
  inset:auto !important;
  left:auto !important;
  right:auto !important;
  top:auto !important;
  bottom:auto !important;
  min-width:0 !important;
  width:auto !important;
  height:94px !important;
  min-height:94px !important;
  padding:6px !important;
  border-radius:11px !important;
  overflow:hidden !important;
  pointer-events:none;
}
#quizzzMusicSalon .qm-lower-dashboard .qm-live-rank-head{
  padding-bottom:4px;
  margin-bottom:3px;
}
#quizzzMusicSalon .qm-lower-dashboard .qm-live-rank-list{
  max-height:66px;
  gap:2px;
}
#quizzzMusicSalon .qm-lower-dashboard .qm-live-rank-row{
  min-height:18px;
  grid-template-columns:15px 18px minmax(0,1fr) 31px 29px;
  gap:3px;
  padding:1px 3px;
}
#quizzzMusicSalon .qm-lower-dashboard .qm-live-rank-avatar{ width:17px; height:17px; font-size:7px; }
#quizzzMusicSalon .qm-lower-dashboard .qm-live-rank-name,
#quizzzMusicSalon .qm-lower-dashboard .qm-live-rank-time,
#quizzzMusicSalon .qm-lower-dashboard .qm-live-rank-row strong{ font-size:7px; }
#quizzzMusicSalon .qm-lower-dashboard .qm-live-rank-empty{ min-height:48px; font-size:8px; }

/* TOP 3 : même gabarit que le classement live pour un ensemble symétrique. */
#quizzzMusicSalon .qm-top3-dashboard{
  height:94px;
  min-height:94px;
  padding:6px;
  border-radius:11px;
  border:1px solid rgba(0,255,0,.72) !important;
  background:linear-gradient(180deg,rgba(8,13,22,.88),rgba(5,8,14,.78));
  box-shadow:inset 0 0 0 1px rgba(0,255,0,.055), 0 0 8px rgba(0,255,0,.13);
  overflow:hidden;
}
#quizzzMusicSalon .qm-top3-dashboard .qm-top3-head{
  min-height:17px;
  margin-bottom:3px;
  padding-bottom:4px;
  border-bottom:1px solid rgba(255,255,255,.06);
  color:#ffd774;
  font-size:9px;
  line-height:1;
}
#quizzzMusicSalon .qm-top3-dashboard .qm-top3-list{ gap:2px; }
#quizzzMusicSalon .qm-top3-dashboard .qm-top3-row{
  min-height:18px;
  grid-template-columns:18px minmax(0,1fr) auto;
  gap:3px;
  padding:1px 4px;
  font-size:8px;
}
#quizzzMusicSalon .qm-top3-dashboard .qm-top3-medal{ font-size:11px; }
#quizzzMusicSalon .qm-top3-dashboard .qm-top3-row strong{ font-size:8px; }
#quizzzMusicSalon .qm-top3-dashboard .qm-no-player{ font-size:8px; }

/* Le contenu ajouté remplit l'espace noir existant, sans laisser le flex étirer la zone. */
#quizzzMusicSalon .qm-stage-bottom{ flex:1 1 auto; min-height:0; }

@media (max-height:720px) and (min-width:701px){
  #quizzzMusicSalon .qm-cover-panel{
    width:236px !important;
    height:145px !important;
    right:8px !important;
    top:8px !important;
  }
  #quizzzMusicSalon .qm-lower-dashboard{
    grid-template-columns:82px minmax(0,1fr) minmax(0,1fr);
    min-height:82px;
    height:82px;
    gap:6px;
  }
  #quizzzMusicSalon .qm-action-stack .qm-btn{ height:24px; min-height:24px; font-size:9px; }
  #quizzzMusicSalon .qm-lower-dashboard .qm-live-rank-panel,
  #quizzzMusicSalon .qm-top3-dashboard{ height:82px !important; min-height:82px !important; padding:5px !important; }
  #quizzzMusicSalon .qm-lower-dashboard .qm-live-rank-list{ max-height:56px; }
}

/* On ne refait pas encore le responsive téléphone : on garde son comportement actuel. */
@media (max-width:700px){
  #quizzzMusicSalon .qm-cover-panel{
    width:208px !important;
    height:112px !important;
    right:8px !important;
    top:8px !important;
  }
  #quizzzMusicSalon .qm-lower-dashboard{
    grid-template-columns:1fr;
    height:auto;
    min-height:0;
  }
  #quizzzMusicSalon .qm-action-stack{ grid-template-columns:repeat(3,1fr); grid-template-rows:none; }
  #quizzzMusicSalon .qm-lower-dashboard .qm-live-rank-panel{ display:none !important; }
  #quizzzMusicSalon .qm-top3-dashboard{ height:auto; min-height:0; }
  #quizzzMusicSalon .qm-tip::before,
  #quizzzMusicSalon .qm-tip::after{ display:none !important; }
}

/* V4.7b : les infobulles du bandeau s'ouvrent vers le bas pour rester dans le bloc. */
#quizzzMusicSalon .qm-topbar{ z-index:20; overflow:visible; }
#quizzzMusicSalon .qm-controls{ overflow:visible; }
#quizzzMusicSalon .qm-controls > .qm-tip:hover::after,
#quizzzMusicSalon .qm-controls > .qm-tip:focus-within::after{
  top:calc(100% + 10px);
  bottom:auto;
}
#quizzzMusicSalon .qm-controls > .qm-tip:hover::before,
#quizzzMusicSalon .qm-controls > .qm-tip:focus-within::before{
  top:calc(100% + 5px);
  bottom:auto;
  transform:translateX(-50%) rotate(225deg);
}
/* La demande est un agrandissement horizontal réel de la pochette, sans changer sa hauteur. */
#quizzzMusicSalon .qm-cover-frame img{ object-fit:fill; }


/* === V4.7c : rangée basse agrandie, 3 joueurs visibles sans scroll === */
@media (min-width:701px){
  #quizzzMusicSalon .qm-lower-dashboard{
    min-height:116px !important;
    height:116px !important;
    gap:8px;
  }
  #quizzzMusicSalon .qm-action-stack{
    grid-template-rows:repeat(3, minmax(0,1fr));
    gap:6px;
    height:116px;
  }
  #quizzzMusicSalon .qm-action-stack .qm-tip{
    height:100%;
    min-height:0;
  }
  #quizzzMusicSalon .qm-action-stack .qm-btn{
    height:100% !important;
    min-height:0 !important;
    font-size:11px;
    border-radius:9px;
  }
  #quizzzMusicSalon .qm-lower-dashboard .qm-live-rank-panel,
  #quizzzMusicSalon .qm-top3-dashboard{
    height:116px !important;
    min-height:116px !important;
    padding:7px !important;
  }
  #quizzzMusicSalon .qm-lower-dashboard .qm-live-rank-head,
  #quizzzMusicSalon .qm-top3-dashboard .qm-top3-head{
    min-height:18px;
    padding-bottom:4px;
    margin-bottom:4px;
  }
  #quizzzMusicSalon .qm-lower-dashboard .qm-live-rank-list{
    max-height:84px !important;
    overflow-y:auto !important;
    overflow-x:hidden !important;
    padding-right:2px;
    gap:3px;
  }
  #quizzzMusicSalon .qm-lower-dashboard .qm-live-rank-row{
    min-height:24px !important;
    grid-template-columns:18px 22px minmax(0,1fr) 38px 34px !important;
    gap:4px !important;
    padding:2px 4px !important;
  }
  #quizzzMusicSalon .qm-top3-dashboard .qm-top3-list{
    gap:3px !important;
    overflow:hidden !important;
  }
  #quizzzMusicSalon .qm-top3-dashboard .qm-top3-row{
    min-height:24px !important;
    grid-template-columns:18px 22px minmax(0,1fr) auto !important;
    gap:4px !important;
    padding:2px 4px !important;
    font-size:9px !important;
  }
  #quizzzMusicSalon .qm-top3-dashboard .qm-top3-medal{ font-size:12px !important; }
  #quizzzMusicSalon .qm-top3-dashboard .qm-top3-row strong{ font-size:9px !important; }

  #quizzzMusicSalon .qm-player-avatar{
    width:22px;
    height:22px;
    border-radius:50%;
    overflow:hidden;
    display:inline-flex;
    align-items:center;
    justify-content:center;
    flex:0 0 22px;
    background:rgba(255,255,255,.09);
    border:1px solid rgba(255,255,255,.18);
    color:#fff;
    font-size:8px;
    font-weight:900;
  }
  #quizzzMusicSalon .qm-player-avatar img{
    width:100%;
    height:100%;
    display:block;
    object-fit:cover;
  }
  #quizzzMusicSalon .qm-live-rank-avatar{
    width:22px !important;
    height:22px !important;
    font-size:8px !important;
  }
  #quizzzMusicSalon .qm-live-rank-name,
  #quizzzMusicSalon .qm-top3-name{
    font-size:9px !important;
    font-weight:900;
  }
  #quizzzMusicSalon .qm-live-rank-time,
  #quizzzMusicSalon .qm-live-rank-row strong{
    font-size:8px !important;
  }

  #quizzzMusicSalon .qm-player-role-admin .qm-live-rank-name,
  #quizzzMusicSalon .qm-player-role-admin .qm-top3-name{ color:#ff4d4d !important; }
  #quizzzMusicSalon .qm-player-role-moderator .qm-live-rank-name,
  #quizzzMusicSalon .qm-player-role-moderator .qm-top3-name{ color:#2ecc71 !important; }
  #quizzzMusicSalon .qm-player-gender-male .qm-live-rank-name,
  #quizzzMusicSalon .qm-player-gender-male .qm-top3-name{ color:#4da3ff !important; }
  #quizzzMusicSalon .qm-player-gender-female .qm-live-rank-name,
  #quizzzMusicSalon .qm-player-gender-female .qm-top3-name{ color:#ff66b3 !important; }
  #quizzzMusicSalon .qm-player-gender-other .qm-live-rank-name,
  #quizzzMusicSalon .qm-player-gender-other .qm-top3-name{ color:#ffad42 !important; }

  #quizzzMusicSalon .qm-lower-dashboard .qm-live-rank-list::-webkit-scrollbar{ width:5px; }
  #quizzzMusicSalon .qm-lower-dashboard .qm-live-rank-list::-webkit-scrollbar-thumb{
    background:rgba(0,255,0,.5);
    border-radius:999px;
  }
}

@media (max-height:720px) and (min-width:701px){
  #quizzzMusicSalon .qm-lower-dashboard,
  #quizzzMusicSalon .qm-action-stack{
    min-height:100px !important;
    height:100px !important;
  }
  #quizzzMusicSalon .qm-lower-dashboard .qm-live-rank-panel,
  #quizzzMusicSalon .qm-top3-dashboard{
    min-height:100px !important;
    height:100px !important;
  }
  #quizzzMusicSalon .qm-lower-dashboard .qm-live-rank-list{ max-height:68px !important; }
  #quizzzMusicSalon .qm-lower-dashboard .qm-live-rank-row,
  #quizzzMusicSalon .qm-top3-dashboard .qm-top3-row{ min-height:20px !important; }
  #quizzzMusicSalon .qm-player-avatar,
  #quizzzMusicSalon .qm-live-rank-avatar{ width:18px !important; height:18px !important; flex-basis:18px; }
}


/* === V4.7d : infobulles actions uniquement au survol === */
#quizzzMusicSalon .qm-action-stack .qm-tip:focus-within::after,
#quizzzMusicSalon .qm-action-stack .qm-tip:focus-within::before{
  content:none !important;
  display:none !important;
}
#quizzzMusicSalon .qm-action-stack .qm-tip:hover::after{
  display:block;
}


/* === V4.7h : hauteur dédiée aux utilisateurs, Sadmin inchangé ===
   Le Sadmin garde exactement la rangée actuelle. Les autres rôles profitent
   de l'espace vertical libre et gagnent environ 1 cm sans modifier le reste. */
@media (min-width:701px){
  #quizzzMusicSalon.qm-user-layout .qm-lower-dashboard,
  #quizzzMusicSalon.qm-user-layout .qm-action-stack{
    min-height:154px !important;
    height:154px !important;
  }
  #quizzzMusicSalon.qm-user-layout .qm-lower-dashboard .qm-live-rank-panel,
  #quizzzMusicSalon.qm-user-layout .qm-top3-dashboard{
    min-height:154px !important;
    height:154px !important;
  }
  #quizzzMusicSalon.qm-user-layout .qm-action-stack{
    gap:7px !important;
  }
  #quizzzMusicSalon.qm-user-layout .qm-action-stack .qm-btn{
    font-size:12px !important;
    border-radius:10px !important;
  }

  /* Trois joueurs tiennent largement sans scroll. Le 4e déclenche le scroll
     dans le classement en direct. */
  #quizzzMusicSalon.qm-user-layout .qm-lower-dashboard .qm-live-rank-list{
    max-height:112px !important;
    overflow-y:auto !important;
    overflow-x:hidden !important;
  }
  #quizzzMusicSalon.qm-user-layout .qm-lower-dashboard .qm-live-rank-row{
    min-height:32px !important;
    grid-template-columns:20px 28px minmax(0,1fr) 42px 40px !important;
    padding:3px 5px !important;
  }
  #quizzzMusicSalon.qm-user-layout .qm-top3-dashboard .qm-top3-list{
    gap:4px !important;
    overflow:hidden !important;
  }
  #quizzzMusicSalon.qm-user-layout .qm-top3-dashboard .qm-top3-row{
    min-height:32px !important;
    grid-template-columns:20px 28px minmax(0,1fr) auto !important;
    padding:3px 5px !important;
  }
  #quizzzMusicSalon.qm-user-layout .qm-player-avatar,
  #quizzzMusicSalon.qm-user-layout .qm-live-rank-avatar{
    width:26px !important;
    height:26px !important;
    flex-basis:26px !important;
    font-size:9px !important;
  }
  #quizzzMusicSalon.qm-user-layout .qm-live-rank-name,
  #quizzzMusicSalon.qm-user-layout .qm-top3-name{
    font-size:10px !important;
  }
  #quizzzMusicSalon.qm-user-layout .qm-live-rank-time,
  #quizzzMusicSalon.qm-user-layout .qm-live-rank-row strong,
  #quizzzMusicSalon.qm-user-layout .qm-top3-dashboard .qm-top3-row strong{
    font-size:9px !important;
  }
}


/* Pochette par défaut plus jolie : patchwork d'années/styles */
#quizzzMusicSalon .qm-cover-collage{
  position:relative;
  width:100%;
  height:100%;
  overflow:hidden;
  background:
    radial-gradient(circle at 22% 18%, rgba(255,255,255,.16), transparent 22%),
    linear-gradient(135deg, #201126 0%, #302453 28%, #151925 58%, #0d1018 100%);
}
#quizzzMusicSalon .qm-cover-collage .piece{
  position:absolute;
  display:flex;
  align-items:center;
  justify-content:center;
  color:#fff;
  font-weight:900;
  letter-spacing:1px;
  text-shadow:0 1px 5px rgba(0,0,0,.35);
  border:1px solid rgba(255,255,255,.14);
  box-shadow:0 6px 14px rgba(0,0,0,.24);
  transform:rotate(var(--rot, 0deg));
  clip-path:polygon(6% 0, 100% 0, 100% 88%, 92% 100%, 0 100%, 0 10%);
}
#quizzzMusicSalon .qm-cover-collage .p1{ left:8px; top:10px; width:31%; height:24%; background:linear-gradient(135deg,#ff6a6a,#f1a436); --rot:-4deg; font-size:17px; }
#quizzzMusicSalon .qm-cover-collage .p2{ left:37%; top:8px; width:29%; height:20%; background:linear-gradient(135deg,#7a5cff,#ab7dff); --rot:3deg; font-size:15px; }
#quizzzMusicSalon .qm-cover-collage .p3{ right:8px; top:12px; width:26%; height:24%; background:linear-gradient(135deg,#00b7ff,#0075ff); --rot:-3deg; font-size:14px; }
#quizzzMusicSalon .qm-cover-collage .p4{ left:10px; top:37%; width:28%; height:23%; background:linear-gradient(135deg,#f4ce46,#ff8d2c); --rot:5deg; font-size:14px; }
#quizzzMusicSalon .qm-cover-collage .p5{ left:34%; top:31%; width:34%; height:24%; background:linear-gradient(135deg,#ff4d8d,#fd80cb); --rot:-5deg; font-size:15px; }
#quizzzMusicSalon .qm-cover-collage .p6{ right:9px; top:40%; width:24%; height:18%; background:linear-gradient(135deg,#29c980,#0fa968); --rot:4deg; font-size:13px; }
#quizzzMusicSalon .qm-cover-collage .p7{ left:16px; bottom:12px; width:30%; height:18%; background:linear-gradient(135deg,#0ecde0,#238bc6); --rot:-2deg; font-size:14px; }
#quizzzMusicSalon .qm-cover-collage .p8{ right:14px; bottom:13px; width:34%; height:18%; background:linear-gradient(135deg,#6b5cf7,#8a83ff); --rot:2deg; font-size:14px; }
#quizzzMusicSalon .qm-cover-collage-title{
  position:absolute;
  left:50%; top:61%; transform:translate(-50%, -50%);
  padding:7px 12px;
  border-radius:999px;
  background:rgba(8,10,15,.72);
  border:1px solid rgba(255,255,255,.18);
  color:#fff9d2;
  font-size:15px;
  letter-spacing:1.2px;
  box-shadow:0 8px 18px rgba(0,0,0,.28);
}


/* V4.7j : finitions titres centrés et nouvelle pochette par défaut */
#quizzzMusicSalon .qm-participants-head{
  position:relative;
  justify-content:center;
  text-align:center;
  padding-right:28px;
}
#quizzzMusicSalon .qm-participants-head span{
  flex:1 1 auto;
  display:block;
  width:100%;
  text-align:center;
  font-size:11px;
  letter-spacing:1px;
}
#quizzzMusicSalon .qm-participants-head strong{
  position:absolute;
  right:0;
  top:50%;
  transform:translateY(-50%);
}
#quizzzMusicSalon .qm-lower-dashboard .qm-live-rank-head{
  flex-direction:column;
  align-items:center;
  justify-content:center;
  text-align:center;
  gap:1px;
}
#quizzzMusicSalon .qm-lower-dashboard .qm-live-rank-head span{
  width:100%;
  text-align:center;
  font-size:12px;
  letter-spacing:1.1px;
}
#quizzzMusicSalon .qm-lower-dashboard .qm-live-rank-head small{
  display:block;
  width:100%;
  text-align:center;
  font-size:8px;
  letter-spacing:1.1px;
}
#quizzzMusicSalon .qm-top3-dashboard .qm-top3-head{
  text-align:center;
  font-size:12px;
  letter-spacing:1px;
}
#quizzzMusicSalon .qm-record-btn{
  text-align:center;
  letter-spacing:1px;
}

#quizzzMusicSalon .qm-cover-collage{
  background:
    radial-gradient(circle at 24% 22%, rgba(255,255,255,.14), transparent 24%),
    linear-gradient(135deg, #4c1d95 0%, #1d4ed8 22%, #0f766e 46%, #ca8a04 72%, #b91c1c 100%);
}
#quizzzMusicSalon .qm-cover-collage::after{
  content:'';
  position:absolute;
  inset:0;
  background:linear-gradient(180deg, rgba(255,255,255,.08), rgba(255,255,255,0) 24%, rgba(0,0,0,.14) 100%);
  pointer-events:none;
}
#quizzzMusicSalon .qm-cover-sleeve-bg{
  position:absolute;
  inset:12px;
  border-radius:14px;
  background:
    linear-gradient(128deg, rgba(255,255,255,.12) 0 15%, transparent 15% 100%),
    linear-gradient(38deg, rgba(255,255,255,.06) 0 18%, transparent 18% 100%),
    linear-gradient(135deg, rgba(25,30,45,.72), rgba(11,14,22,.42));
  border:1px solid rgba(255,255,255,.16);
  box-shadow:inset 0 1px 0 rgba(255,255,255,.10), 0 10px 22px rgba(0,0,0,.22);
}
#quizzzMusicSalon .qm-cover-collage .piece{
  z-index:2;
}
#quizzzMusicSalon .qm-cover-collage .p1{ left:14px; top:14px; }
#quizzzMusicSalon .qm-cover-collage .p2{ left:39%; top:14px; }
#quizzzMusicSalon .qm-cover-collage .p3{ right:14px; top:16px; }
#quizzzMusicSalon .qm-cover-collage .p4{ left:16px; top:39%; }
#quizzzMusicSalon .qm-cover-collage .p5{ left:35%; top:33%; }
#quizzzMusicSalon .qm-cover-collage .p6{ right:14px; top:42%; }
#quizzzMusicSalon .qm-cover-collage .p7{ left:18px; bottom:18px; }
#quizzzMusicSalon .qm-cover-collage .p8{ right:16px; bottom:19px; }
#quizzzMusicSalon .qm-cover-collage-signature{
  position:absolute;
  right:16px;
  bottom:8px;
  z-index:3;
  color:#fff4c6;
  font-size:10px;
  font-style:italic;
  letter-spacing:.9px;
  text-shadow:0 1px 4px rgba(0,0,0,.55);
}

#quizzzMusicSalon .qm-cover-collage-title{ display:none !important; }


/* V4.7m : couleurs RECORD persistantes, identiques au chat */
#quizzzMusicSalon .qm-player-role-admin .qm-score-name{ color:#ff4d4d !important; }
#quizzzMusicSalon .qm-player-role-moderator .qm-score-name{ color:#2ecc71 !important; }
#quizzzMusicSalon .qm-player-gender-male .qm-score-name{ color:#4da3ff !important; }
#quizzzMusicSalon .qm-player-gender-female .qm-score-name{ color:#ff66b3 !important; }
#quizzzMusicSalon .qm-player-gender-other .qm-score-name{ color:#ffad42 !important; }


/* V4.7n : bloc RECORD découpé en deux avec grosse coupe or en bas */
#quizzzMusicSalon .qm-record-dialog{
  display:flex;
  flex-direction:column;
  min-height:468px;
}
#quizzzMusicSalon .qm-record-dialog .qm-scores{
  display:flex;
  flex-direction:column;
  gap:8px;
  min-height:182px;
}
#quizzzMusicSalon .qm-record-trophy-panel{
  margin-top:14px;
  padding:14px 12px 12px;
  min-height:188px;
  border-radius:16px;
  border:1px solid rgba(255,215,116,.18);
  background:
    radial-gradient(circle at 50% 22%, rgba(255,232,157,.20), transparent 34%),
    linear-gradient(180deg, rgba(255,255,255,.05), rgba(255,255,255,.015));
  box-shadow:inset 0 1px 0 rgba(255,255,255,.05);
  display:flex;
  align-items:center;
  justify-content:center;
  flex-direction:column;
  gap:8px;
}
#quizzzMusicSalon .qm-record-trophy-icon{
  font-size:92px;
  line-height:1;
  filter:drop-shadow(0 8px 14px rgba(0,0,0,.35));
  background:linear-gradient(180deg,#fff0a9 0%,#ffd84f 30%,#f5b81f 62%,#d88e08 100%);
  -webkit-background-clip:text;
  background-clip:text;
  color:transparent;
}
#quizzzMusicSalon .qm-record-trophy-text{
  font-size:26px;
  line-height:1;
  font-weight:1000;
  letter-spacing:2px;
  color:#ffd774;
  text-shadow:0 2px 8px rgba(0,0,0,.35);
}
@media (max-width:700px){
  #quizzzMusicSalon .qm-record-dialog{
    min-height:0;
  }
  #quizzzMusicSalon .qm-record-trophy-panel{
    min-height:132px;
    margin-top:12px;
  }
  #quizzzMusicSalon .qm-record-trophy-icon{ font-size:70px; }
  #quizzzMusicSalon .qm-record-trophy-text{ font-size:20px; }
}


/* V4.7o : RECORD scindé visiblement en deux, avec couronne or toujours visible */
#quizzzMusicSalon .qm-record-dialog{
  display:grid !important;
  grid-template-rows:auto 176px 190px;
  row-gap:12px;
  min-height:auto !important;
}
#quizzzMusicSalon .qm-record-dialog .qm-scores{
  display:flex;
  flex-direction:column;
  gap:6px;
  min-height:0 !important;
  max-height:176px;
  overflow:hidden;
}
#quizzzMusicSalon .qm-record-dialog .qm-score-row{
  padding:8px 10px;
}
#quizzzMusicSalon .qm-record-trophy-panel{
  position:relative;
  margin-top:0 !important;
  min-height:190px !important;
  overflow:hidden;
  border:1px solid rgba(255,215,116,.24);
  background:
    radial-gradient(circle at 50% 24%, rgba(255,236,165,.28), transparent 36%),
    linear-gradient(180deg, rgba(255,219,93,.08), rgba(255,255,255,.015));
}
#quizzzMusicSalon .qm-record-trophy-icon{
  position:absolute;
  inset:16px 0 auto 0;
  text-align:center;
  font-size:116px;
  line-height:1;
  filter:drop-shadow(0 10px 18px rgba(0,0,0,.36));
  background:linear-gradient(180deg,#fff4b9 0%,#ffe47b 30%,#f8c93f 58%,#db9707 100%);
  -webkit-background-clip:text;
  background-clip:text;
  color:transparent;
}
#quizzzMusicSalon .qm-record-trophy-text{
  position:absolute;
  left:0;
  right:0;
  top:50%;
  transform:translateY(-50%);
  text-align:center;
  font-size:30px;
  line-height:1;
  font-weight:1000;
  letter-spacing:3px;
  color:#fff0a8;
  text-shadow:0 2px 10px rgba(0,0,0,.42);
  padding:10px 0;
  background:linear-gradient(90deg, transparent 0%, rgba(60,31,0,.24) 10%, rgba(60,31,0,.38) 50%, rgba(60,31,0,.24) 90%, transparent 100%);
  border-top:1px solid rgba(255,215,116,.18);
  border-bottom:1px solid rgba(255,215,116,.18);
}
@media (max-width:700px){
  #quizzzMusicSalon .qm-record-dialog{
    grid-template-rows:auto auto 136px;
  }
  #quizzzMusicSalon .qm-record-dialog .qm-scores{
    max-height:none;
    overflow:visible;
  }
  #quizzzMusicSalon .qm-record-trophy-panel{
    min-height:136px !important;
  }
  #quizzzMusicSalon .qm-record-trophy-icon{ font-size:82px; top:12px; }
  #quizzzMusicSalon .qm-record-trophy-text{ font-size:22px; }
}


/* V4.7p : RECORD = moitié haute 3 pseudos, moitié basse trophée fixe */
@media (min-width:701px){
  #quizzzMusicSalon .qm-record-dialog{
    display:grid !important;
    grid-template-rows:minmax(0,1fr) minmax(0,1fr) !important;
    row-gap:0 !important;
    height:100% !important;
    min-height:0 !important;
    padding:0 !important;
    overflow:hidden !important;
  }
  #quizzzMusicSalon .qm-record-dialog .qm-scores{
    grid-row:1 !important;
    height:auto !important;
    min-height:0 !important;
    max-height:none !important;
    padding:5px 5px 3px !important;
    display:flex !important;
    flex-direction:column !important;
    justify-content:flex-start !important;
    gap:4px !important;
    overflow:hidden !important;
  }
  #quizzzMusicSalon .qm-record-dialog .qm-score-row{
    flex:0 0 auto;
    min-height:23px !important;
    padding:2px 5px !important;
  }
  #quizzzMusicSalon .qm-record-trophy-panel{
    grid-row:2 !important;
    position:relative !important;
    margin:0 !important;
    padding:0 !important;
    min-height:0 !important;
    height:auto !important;
    border:0 !important;
    border-top:1px solid rgba(255,215,116,.30) !important;
    border-radius:0 0 10px 10px !important;
    background:
      radial-gradient(circle at 50% 42%, rgba(255,219,90,.14), transparent 46%),
      linear-gradient(180deg,rgba(36,25,5,.12),rgba(12,10,5,.30)) !important;
    box-shadow:inset 0 1px 0 rgba(255,244,190,.04) !important;
    overflow:hidden !important;
    display:flex !important;
    align-items:center !important;
    justify-content:center !important;
  }
  #quizzzMusicSalon .qm-record-cup{
    position:relative;
    width:146px;
    height:112px;
    transform:translateY(1px);
    transform-origin:center center;
    filter:drop-shadow(0 7px 8px rgba(0,0,0,.42));
  }
  #quizzzMusicSalon .qm-record-cup-bowl{
    position:absolute;
    left:29px;
    top:4px;
    width:86px;
    height:56px;
    z-index:3;
    background:linear-gradient(90deg,#b87905 0%,#f0b51f 15%,#fff0a3 44%,#ffd34b 62%,#a76703 100%);
    border:1px solid rgba(255,244,180,.62);
    border-radius:8px 8px 34px 34px / 7px 7px 28px 28px;
    box-shadow:inset 7px 0 10px rgba(255,255,255,.15), inset -9px -7px 12px rgba(103,55,0,.25);
  }
  #quizzzMusicSalon .qm-record-cup-bowl::after{
    content:'';
    position:absolute;
    left:10px;
    right:10px;
    top:6px;
    height:5px;
    border-radius:50%;
    background:rgba(255,250,200,.55);
  }
  #quizzzMusicSalon .qm-record-cup-handle{
    position:absolute;
    top:14px;
    width:38px;
    height:35px;
    z-index:1;
    border:7px solid #e9ad17;
    border-top-width:6px;
    border-radius:50%;
    box-sizing:border-box;
  }
  #quizzzMusicSalon .qm-record-cup-handle.left{ left:9px; }
  #quizzzMusicSalon .qm-record-cup-handle.right{ right:9px; }
  #quizzzMusicSalon .qm-record-cup-stem{
    position:absolute;
    left:63px;
    top:56px;
    width:18px;
    height:26px;
    z-index:2;
    background:linear-gradient(90deg,#b06d05,#ffe46f 46%,#b36d05);
    border-radius:0 0 4px 4px;
  }
  #quizzzMusicSalon .qm-record-cup-base{
    position:absolute;
    left:36px;
    bottom:8px;
    width:72px;
    height:16px;
    z-index:3;
    background:linear-gradient(180deg,#ffe88a,#d99b0b 58%,#965900);
    border:1px solid rgba(255,234,140,.65);
    border-radius:6px 6px 4px 4px;
    box-shadow:0 3px 5px rgba(0,0,0,.28);
  }
  #quizzzMusicSalon .qm-record-trophy-text{
    position:absolute !important;
    left:-6px !important;
    right:-6px !important;
    top:33px !important;
    transform:none !important;
    z-index:5 !important;
    display:block !important;
    padding:5px 0 !important;
    text-align:center !important;
    white-space:nowrap !important;
    font-family:Georgia, 'Times New Roman', serif !important;
    font-size:24px !important;
    line-height:1 !important;
    font-weight:900 !important;
    font-style:italic !important;
    letter-spacing:3px !important;
    color:#fff4b1 !important;
    background:linear-gradient(90deg,transparent 0%,rgba(90,48,0,.38) 12%,rgba(72,36,0,.62) 50%,rgba(90,48,0,.38) 88%,transparent 100%) !important;
    border:0 !important;
    text-shadow:0 2px 3px #6d3d00,0 0 8px rgba(255,219,85,.45) !important;
  }
}

@media (max-width:700px){
  #quizzzMusicSalon .qm-record-trophy-panel{ display:none !important; }
}

/* V4.7q : coupe record légèrement étirée verticalement pour éviter l'effet écrasé */

/* V4.7r : coupe record réunifiée en un seul ensemble visuel, sans espace entre le haut et le pied */


/* V4.7s : étoiles/confettis or autour de la coupe Record */
#quizzzMusicSalon .qm-record-trophy-panel::before,
#quizzzMusicSalon .qm-record-trophy-panel::after{
  content:'✦';
  position:absolute;
  top:18px;
  z-index:1;
  font-size:26px;
  line-height:1;
  color:#ffe88d;
  text-shadow:
    0 0 10px rgba(255,224,120,.28),
    12px 22px 0 #ffd45f,
    28px 6px 0 #fff0b0,
    18px 48px 0 #f7be32,
    6px 74px 0 #fff4ca,
    34px 84px 0 #e7a90b;
  pointer-events:none;
  opacity:.96;
}
#quizzzMusicSalon .qm-record-trophy-panel::before{
  left:10px;
}
#quizzzMusicSalon .qm-record-trophy-panel::after{
  right:44px;
  transform:scale(1.05);
  text-shadow:
    0 0 10px rgba(255,224,120,.28),
    -12px 22px 0 #ffd45f,
    -28px 6px 0 #fff0b0,
    -18px 48px 0 #f7be32,
    -6px 74px 0 #fff4ca,
    -34px 84px 0 #e7a90b;
}


/* V4.8a : correction Top 3 / Record + panneau STYLE à droite du bloc question */
#quizzzMusicSalon .qm-question-layout{
  display:grid;
  grid-template-columns:minmax(0,2.15fr) minmax(170px,.95fr);
  gap:14px;
  align-items:stretch;
}
#quizzzMusicSalon .qm-question-main{
  min-width:0;
}
#quizzzMusicSalon .qm-question-side{
  min-width:0;
  display:flex;
}
#quizzzMusicSalon .qm-style-badge-wrap{
  flex:1 1 auto;
  min-height:0;
  height:100%;
}
#quizzzMusicSalon .qm-style-badge{
  position:relative;
  width:100%;
  height:100%;
  min-height:0;
  border-radius:18px;
  overflow:hidden;
  border:1px solid rgba(255,255,255,.08);
  box-shadow: inset 0 1px 0 rgba(255,255,255,.05), 0 10px 22px rgba(0,0,0,.18);
  display:flex;
  align-items:center;
  justify-content:center;
}
#quizzzMusicSalon .qm-style-badge-idle{
  background:
    radial-gradient(circle at 50% 20%, rgba(255,238,166,.18), transparent 34%),
    linear-gradient(135deg, rgba(82,36,0,.95) 0%, rgba(122,74,9,.95) 32%, rgba(30,18,7,.96) 100%);
}
#quizzzMusicSalon .qm-style-badge-idle::before{
  content:'';
  position:absolute;
  inset:10px;
  border-radius:14px;
  background:linear-gradient(135deg, rgba(255,255,255,.08), transparent 46%);
  pointer-events:none;
}
#quizzzMusicSalon .qm-style-star{
  position:absolute;
  left:50%;
  top:50%;
  transform:translate(-50%, -50%);
  font-size:72px;
  line-height:1;
  background:linear-gradient(180deg, #fff5c9 0%, #ffe078 34%, #f5bf2b 66%, #c98306 100%);
  -webkit-background-clip:text;
  background-clip:text;
  color:transparent;
  text-shadow:0 8px 18px rgba(0,0,0,.26);
  filter:drop-shadow(0 8px 18px rgba(0,0,0,.22));
}
#quizzzMusicSalon .qm-style-word{
  position:relative;
  z-index:2;
  font-size:21px;
  font-weight:1000;
  letter-spacing:2.6px;
  color:#fff5ca;
  text-shadow:0 2px 10px rgba(0,0,0,.38);
}
#quizzzMusicSalon .qm-style-badge-live{
  background:
    linear-gradient(135deg, rgba(36,86,176,.92) 0%, rgba(108,46,176,.92) 45%, rgba(208,121,23,.92) 100%);
}
#quizzzMusicSalon .qm-style-badge-live::before{
  content:'';
  position:absolute;
  inset:10px;
  border-radius:14px;
  background:linear-gradient(135deg, rgba(255,255,255,.1), transparent 50%);
  pointer-events:none;
}
#quizzzMusicSalon .qm-style-live-glow{
  position:absolute;
  inset:auto;
  width:190px;
  height:190px;
  border-radius:50%;
  background:radial-gradient(circle, rgba(255,255,255,.18) 0%, rgba(255,255,255,0) 68%);
}
#quizzzMusicSalon .qm-style-live-text{
  position:relative;
  z-index:2;
  padding:0 14px;
  text-align:center;
  font-size:23px;
  line-height:1.18;
  font-weight:1000;
  color:#fff5df;
  text-transform:uppercase;
  text-shadow:0 2px 12px rgba(0,0,0,.36);
}
#quizzzMusicSalon .qm-style-live-sub{
  position:absolute;
  left:10px;
  right:10px;
  bottom:10px;
  z-index:2;
  text-align:center;
  font-size:11px;
  letter-spacing:.8px;
  color:#f7edd5;
  opacity:.94;
}
@media (max-width: 900px){
  #quizzzMusicSalon .qm-question-layout{
    grid-template-columns:1fr;
  }
  #quizzzMusicSalon .qm-style-badge,
  #quizzzMusicSalon .qm-style-badge-wrap{
    min-height:0;
  }
  #quizzzMusicSalon .qm-style-star{ font-size:60px; }
  #quizzzMusicSalon .qm-style-word{ font-size:18px; }
  #quizzzMusicSalon .qm-style-live-text{ font-size:17px; }
}

/* V4.8b : étoile STYLE réduite, le bloc reprend sa hauteur d'origine */


/* V4.8c : sous-titre STYLE lisible + classement en direct sans clignotement gênant */
#quizzzMusicSalon .qm-style-badge-live{
  justify-content:flex-start;
}
#quizzzMusicSalon .qm-style-live-text{
  margin-top:20px;
  padding:0 12px 16px;
  font-size:18px;
  line-height:1.08;
  max-width:100%;
}
#quizzzMusicSalon .qm-style-live-sub{
  bottom:8px;
  font-size:10px;
  line-height:1.12;
}
#quizzzMusicSalon .qm-live-rank-row,
#quizzzMusicSalon .qm-lower-dashboard .qm-live-rank-row,
#quizzzMusicSalon.qm-user-layout .qm-lower-dashboard .qm-live-rank-row{
  animation:none !important;
  transition:none !important;
}
#quizzzMusicSalon .qm-live-rank-list,
#quizzzMusicSalon .qm-lower-dashboard .qm-live-rank-list{
  will-change:auto;
}
@media (max-width: 900px){
  #quizzzMusicSalon .qm-style-live-text{
    margin-top:14px;
    padding:0 10px 14px;
    font-size:16px;
  }
  #quizzzMusicSalon .qm-style-live-sub{
    bottom:7px;
    font-size:9px;
  }
}


/* V4.8d : centrage strict du grand titre du panneau STYLE */
#quizzzMusicSalon .qm-style-badge-live{
  justify-content:center !important;
}
#quizzzMusicSalon .qm-style-live-text{
  width:100% !important;
  box-sizing:border-box;
  text-align:center !important;
  margin-left:0 !important;
  margin-right:0 !important;
}


/* V4.9a : Mode Rapidité — seulement le nouveau sélecteur et les retours associés */
#quizzzMusicSalon .qm-select-playmode{
  min-width:136px;
  cursor:pointer;
}
#quizzzMusicSalon .qm-personal-overlay.is-timeout .qm-personal-card{
  background:linear-gradient(180deg, rgba(117,86,24,.97), rgba(48,31,6,.98));
}
#quizzzMusicSalon .qm-timeout-visual{
  font-size:52px;
  line-height:1;
  filter:drop-shadow(0 4px 10px rgba(0,0,0,.28));
}
/* Demande visuelle : ne pas redimensionner les pop-up BRAVO / ERREUR,
   uniquement les remonter d'environ 5 mm (~19 px) sur PC. */
@media (min-width:701px){
  #quizzzMusicSalon .qm-personal-overlay.is-correct,
  #quizzzMusicSalon .qm-personal-overlay.is-wrong{
    transform:translateY(-19px);
  }
}


/* V4.9b : grandes infobulles tutoriel du bandeau supérieur.
   Elles vivent hors du bloc du jeu afin de ne jamais être coupées par la liste des connectés. */
#quizzzMusicSalon .qm-controls > .qm-tip::before,
#quizzzMusicSalon .qm-controls > .qm-tip::after{
  display:none !important;
}
.qm-tutorial-tooltip{
  position:fixed;
  z-index:2147483647;
  width:min(460px, calc(100vw - 24px));
  min-width:min(360px, calc(100vw - 24px));
  box-sizing:border-box;
  padding:15px 18px 16px;
  border-radius:15px;
  border:1px solid rgba(0,255,170,.88);
  background:linear-gradient(180deg, rgba(5,20,28,.99), rgba(0,6,10,.985));
  color:#effff9;
  box-shadow:0 0 0 1px rgba(0,255,170,.08) inset,0 0 24px rgba(0,255,170,.28),0 16px 42px rgba(0,0,0,.72);
  pointer-events:none;
  opacity:0;
  visibility:hidden;
  transform:translateY(-4px);
  transition:opacity .12s ease,transform .12s ease,visibility .12s ease;
  font-family:inherit;
  text-align:left;
}
.qm-tutorial-tooltip.is-visible{ opacity:1; visibility:visible; transform:translateY(0); }
.qm-tutorial-tooltip-title{
  margin:0 0 8px;
  padding:0 0 7px;
  border-bottom:1px solid rgba(0,255,170,.24);
  color:#ffd96f;
  font-size:17px;
  line-height:1.15;
  font-weight:1000;
  letter-spacing:.4px;
  text-transform:uppercase;
  text-shadow:0 1px 3px rgba(0,0,0,.9);
}
.qm-tutorial-tooltip-text{
  color:#f1fff9;
  font-size:15px;
  line-height:1.46;
  font-weight:700;
  text-shadow:0 1px 2px rgba(0,0,0,.85);
}
@media (max-width:700px){ .qm-tutorial-tooltip{ display:none !important; } }
