/* V99 — dedicated Carmichael Special Reserve soundtrack player. */
#siteMusic{display:none}

#roomMusicPlayer.music-player{
  --reserve-player-width:clamp(285px,20vw,405px);
  position:fixed!important;
  z-index:82!important;
  left:max(.35rem,env(safe-area-inset-left))!important;
  right:auto!important;
  top:auto!important;
  bottom:max(.3rem,env(safe-area-inset-bottom))!important;
  width:min(var(--reserve-player-width),calc(100vw - .7rem))!important;
  aspect-ratio:1983/793!important;
  transform:none!important;
  margin:0!important;
  padding:0!important;
  border:0!important;
  border-radius:0!important;
  background:transparent!important;
  box-shadow:none!important;
  backdrop-filter:none!important;
  overflow:visible!important;
  color:inherit!important;
  container-type:inline-size;
  isolation:isolate;
  filter:drop-shadow(0 .42rem .82rem rgba(0,0,0,.82));
  transition:filter .25s ease,opacity .25s ease!important;
}
#roomMusicPlayer.is-playing{
  filter:drop-shadow(0 .42rem .82rem rgba(0,0,0,.82)) drop-shadow(0 0 .46rem rgba(220,170,70,.30));
}
#roomMusicPlayer.is-starting{
  filter:drop-shadow(0 .42rem .82rem rgba(0,0,0,.82)) drop-shadow(0 0 .42rem rgba(177,47,38,.30));
}
#roomMusicPlayer:hover{
  filter:drop-shadow(0 .48rem .92rem rgba(0,0,0,.84)) drop-shadow(0 0 .56rem rgba(220,170,70,.34));
}
#roomMusicPlayer .music-art{
  position:absolute;
  inset:0;
  width:100%;
  height:100%;
  object-fit:contain;
  pointer-events:none;
  user-select:none;
  -webkit-user-drag:none;
}
#roomMusicPlayer .track-copy{
  position:absolute;
  left:40%;
  top:32.6%;
  width:49%;
  height:18.5%;
  display:grid;
  align-content:center;
  justify-items:center;
  overflow:hidden;
  padding:0 4%;
  color:#f3d78b;
  text-align:center;
  line-height:1.03;
  text-shadow:0 1px 1px #000,0 0 .45rem rgba(220,169,67,.34);
  pointer-events:none;
}
#roomMusicPlayer .track-title{
  max-width:100%;
  overflow:hidden;
  white-space:nowrap;
  text-overflow:ellipsis;
  font:700 clamp(7px,3.45cqw,12px)/1.05 Georgia,serif;
  letter-spacing:.035em;
}
#roomMusicPlayer .track-artist{
  max-width:100%;
  margin-top:.25em;
  overflow:hidden;
  white-space:nowrap;
  text-overflow:ellipsis;
  color:#d7bb77;
  font:italic clamp(5px,2.3cqw,8px)/1 Georgia,serif;
}
#roomMusicPlayer .player-control{
  position:absolute;
  margin:0;
  padding:0;
  border:0;
  border-radius:50%;
  background:transparent;
  cursor:pointer;
  color:transparent;
  touch-action:manipulation;
  -webkit-tap-highlight-color:transparent;
}
#roomMusicPlayer .player-control::after{
  content:"";
  position:absolute;
  inset:7%;
  border-radius:50%;
  background:radial-gradient(circle,rgba(255,222,143,.22),transparent 66%);
  box-shadow:0 0 0 1px rgba(255,224,151,0),0 0 .55cqw rgba(233,184,80,0);
  opacity:0;
  transition:opacity .2s ease,box-shadow .2s ease;
}
#roomMusicPlayer .player-control:hover::after,
#roomMusicPlayer .player-control:focus-visible::after{
  opacity:1;
  box-shadow:0 0 0 1px rgba(255,224,151,.52),0 0 .6cqw rgba(233,184,80,.48);
}
#roomMusicPlayer .player-control:focus-visible{
  outline:1px solid #fff0a8;
  outline-offset:1px;
}
#roomMusicPlayer .player-control:disabled{cursor:not-allowed;opacity:.45}
#roomMusicPlayer .player-back{left:44.2%;top:54%;width:6.2%;height:14%}
#roomMusicPlayer .player-toggle{left:50.5%;top:49.4%;width:9.6%;height:23%}
#roomMusicPlayer .player-forward{left:60.3%;top:54%;width:6.2%;height:14%}
#roomMusicPlayer .player-mute{left:67.3%;top:54%;width:6.2%;height:14%}
#roomMusicPlayer .player-toggle[data-state="resume"]::after{
  opacity:.78;
  box-shadow:0 0 0 1px rgba(219,78,58,.72),0 0 .9cqw rgba(169,37,31,.62);
}
#roomMusicPlayer .player-toggle[data-state="starting"]::after{
  opacity:.55;
  animation:reserve-player-pulse 1.2s ease-in-out infinite;
}
#roomMusicPlayer .volume-control{
  --volume:18%;
  position:absolute;
  left:74.4%;
  top:57.1%;
  width:16.2%;
  height:8.5%;
  margin:0;
  appearance:none;
  -webkit-appearance:none;
  background:transparent;
  cursor:pointer;
  accent-color:#d5a84d;
}
#roomMusicPlayer .volume-control::-webkit-slider-runnable-track{
  height:22%;
  border-radius:999px;
  background:linear-gradient(to right,#d6a64b 0 var(--volume),rgba(76,57,22,.72) var(--volume) 100%);
  box-shadow:0 0 2px rgba(240,196,96,.42);
}
#roomMusicPlayer .volume-control::-webkit-slider-thumb{
  -webkit-appearance:none;
  width:clamp(6px,3.2cqw,11px);
  height:clamp(6px,3.2cqw,11px);
  margin-top:calc((clamp(6px,3.2cqw,11px) - 22%)/-2);
  border:1px solid #8d6428;
  border-radius:50%;
  background:radial-gradient(circle at 35% 30%,#ffe2a1 0 14%,#d9a74d 44%,#8c5f23 100%);
  box-shadow:0 0 4px rgba(246,196,91,.48);
}
#roomMusicPlayer .volume-control::-moz-range-track{
  height:22%;
  border-radius:999px;
  background:rgba(76,57,22,.72);
}
#roomMusicPlayer .volume-control::-moz-range-progress{
  height:22%;
  border-radius:999px;
  background:#d6a64b;
}
#roomMusicPlayer .volume-control::-moz-range-thumb{
  width:clamp(6px,3.2cqw,11px);
  height:clamp(6px,3.2cqw,11px);
  border:1px solid #8d6428;
  border-radius:50%;
  background:#d9a74d;
  box-shadow:0 0 4px rgba(246,196,91,.48);
}
#roomMusicPlayer .volume-control:focus-visible{
  outline:1px solid #f1d589;
  outline-offset:2px;
  border-radius:999px;
}
#roomMusicPlayer .music-status{
  display:block!important;
  position:absolute;
  left:39.5%;
  right:9%;
  top:70.5%;
  margin:0;
  padding:0;
  border:0;
  background:transparent;
  color:#f0dca7;
  font-size:clamp(6px,2.05cqw,8px);
  line-height:1.1;
  text-align:center;
  opacity:0;
  pointer-events:none;
  text-shadow:0 1px 2px #000;
  transition:opacity .2s ease;
}
#roomMusicPlayer.needs-resume .music-status,
#roomMusicPlayer.media-error .music-status,
#roomMusicPlayer.is-starting .music-status{opacity:1}

@keyframes reserve-player-pulse{
  0%,100%{box-shadow:0 0 0 1px rgba(219,78,58,.38),0 0 .45cqw rgba(169,37,31,.28)}
  50%{box-shadow:0 0 0 1px rgba(241,191,91,.66),0 0 1cqw rgba(197,62,41,.62)}
}
@media(max-width:760px){
  #roomMusicPlayer.music-player{--reserve-player-width:clamp(245px,60vw,340px)}
}
@media(max-width:520px){
  #roomMusicPlayer.music-player{
    --reserve-player-width:min(78vw,300px);
    left:max(.12rem,env(safe-area-inset-left))!important;
    bottom:max(.12rem,env(safe-area-inset-bottom))!important;
  }
}
@media(max-height:520px) and (orientation:landscape){
  #roomMusicPlayer.music-player{--reserve-player-width:min(43vw,330px)}
}
@media(prefers-reduced-motion:reduce){
  #roomMusicPlayer.music-player,
  #roomMusicPlayer .player-control::after{transition:none!important}
  #roomMusicPlayer .player-toggle[data-state="starting"]::after{animation:none}
}
