/* Shared UI corrections — shared components only.
   Charity Shop visual rules are owned by systems/charity-shop/css/. */
/* Binaural panel: wider, compact and without an internal scrollbar. */
html body[data-app] #bl-beats-flyout.bl-flyout{
  width:min(560px,calc(100vw - 24px))!important;
  max-width:min(560px,calc(100vw - 24px))!important;
  max-height:none!important;
  overflow:visible!important;
}
html body[data-app] #bl-beats-flyout.bl-flyout .card.bl-player{
  width:100%!important;
  max-width:none!important;
  min-width:0!important;
  height:auto!important;
  min-height:0!important;
  max-height:none!important;
  padding:14px 16px 16px!important;
  overflow-x:hidden!important;
  overflow-y:visible!important;
}
html body[data-app] #bl-beats-flyout.bl-flyout .card.bl-player>p:first-of-type{
  margin:0 0 8px!important;
  font-size:14px!important;
  line-height:1.35!important;
}
html body[data-app] #bl-beats-flyout.bl-flyout .card.bl-player>label{
  display:block!important;
  margin:8px 0 3px!important;
  line-height:1.2!important;
}
html body[data-app] #bl-beats-flyout.bl-flyout .card.bl-player>.row{
  margin-top:4px!important;
  gap:8px!important;
}
html body[data-app] #bl-beats-flyout.bl-flyout #bl-user-presets{margin-top:8px!important;}
html body[data-app] #bl-beats-flyout.bl-flyout #bl-beats-status{
  min-height:0!important;
  margin-top:6px!important;
}

/* Fitness voice settings: the settings dialog must sit above the active
   workout dialog. The ordinary site banner is deliberately untouched. */
html body.voice-workout-active #voiceWorkoutModal{
  z-index:20000!important;
}
html body.voice-workout-active #bl-voice-flyout.bl-flyout:not([hidden]){
  display:grid!important;
  position:fixed!important;
  transform:none!important;
  inset:0!important;
  left:0!important;
  right:0!important;
  top:0!important;
  bottom:0!important;
  width:100vw!important;
  max-width:none!important;
  height:100svh!important;
  max-height:none!important;
  padding:24px!important;
  place-items:center!important;
  overflow:hidden!important;
  overscroll-behavior:contain!important;
  background:rgba(4,2,3,.76)!important;
  z-index:30000!important;
  isolation:isolate!important;
}
html body.voice-workout-active #bl-voice-flyout .bl-voice-settings-card{
  width:min(820px,calc(100vw - 48px))!important;
  max-width:820px!important;
  height:auto!important;
  min-height:0!important;
  max-height:none!important;
  margin:0!important;
  padding:16px 18px 18px!important;
  overflow:visible!important;
  overscroll-behavior:auto!important;
}
html body.voice-workout-active #bl-voice-flyout .bl-voice-settings-head{
  justify-content:space-between!important;
  gap:16px!important;
  margin:0 0 4px!important;
}
html body.voice-workout-active #bl-voice-flyout .bl-voice-settings-head h3{
  margin:0!important;
  font-size:1.45rem!important;
  line-height:1.15!important;
}
html body.voice-workout-active #bl-voice-flyout #bl-voice-close{
  display:inline-flex!important;
  flex:0 0 auto!important;
}
html body.voice-workout-active #bl-voice-flyout .bl-voice-settings-card>p{
  margin:0 0 7px!important;
  font-size:.86rem!important;
  line-height:1.3!important;
}
html body.voice-workout-active #bl-voice-flyout .bl-voice-support{
  margin:7px 0 9px!important;
  padding:7px 10px!important;
  font-size:.8rem!important;
  line-height:1.28!important;
}
html body.voice-workout-active #bl-voice-flyout .bl-voice-settings-card>.bl-voice-check{
  display:inline-flex!important;
  width:calc(50% - 6px)!important;
  min-height:42px!important;
  margin:0 0 7px!important;
  padding:6px 8px!important;
  vertical-align:top!important;
  border:1px solid rgba(255,255,255,.12)!important;
  border-radius:10px!important;
  background:#1a1115!important;
}
html body.voice-workout-active #bl-voice-flyout .bl-voice-settings-card>.bl-voice-check+ .bl-voice-check{
  margin-left:8px!important;
}
html body.voice-workout-active #bl-voice-flyout .bl-voice-check input{
  margin-top:1px!important;
}
html body.voice-workout-active #bl-voice-flyout .bl-voice-check span{
  gap:1px!important;
  font-size:.88rem!important;
  line-height:1.22!important;
}
html body.voice-workout-active #bl-voice-flyout .bl-voice-check small{
  font-size:.76rem!important;
  line-height:1.2!important;
}
html body.voice-workout-active #bl-voice-flyout .bl-voice-grid{
  grid-template-columns:repeat(3,minmax(0,1fr))!important;
  gap:8px 10px!important;
  margin:2px 0 9px!important;
}
html body.voice-workout-active #bl-voice-flyout .bl-voice-grid label{
  gap:4px!important;
  font-size:.82rem!important;
  line-height:1.2!important;
}
html body.voice-workout-active #bl-voice-flyout input:not([type="checkbox"]):not([type="range"]),
html body.voice-workout-active #bl-voice-flyout select{
  min-height:36px!important;
  height:36px!important;
  padding:6px 9px!important;
  font-size:.86rem!important;
}
html body.voice-workout-active #bl-voice-flyout .bl-voice-check-grid{
  grid-template-columns:repeat(2,minmax(0,1fr))!important;
  gap:4px 12px!important;
  margin:0!important;
}
html body.voice-workout-active #bl-voice-flyout .bl-voice-check-grid .bl-voice-check{
  min-height:36px!important;
  padding:5px 2px!important;
}
html body.voice-workout-active #bl-voice-flyout .bl-voice-actions{
  flex-wrap:nowrap!important;
  margin-top:8px!important;
  padding-top:9px!important;
}
html body.voice-workout-active #bl-voice-flyout .bl-voice-actions .bl-mini-btn{
  min-height:36px!important;
  padding:7px 11px!important;
}
html body.voice-workout-active #bl-voice-flyout #bl-voice-status{
  min-height:0!important;
  margin-top:5px!important;
  font-size:.8rem!important;
  line-height:1.25!important;
}

@media (max-width:760px){
  html body.voice-workout-active #bl-voice-flyout.bl-flyout:not([hidden]){
    padding:12px!important;
    overflow-y:auto!important;
    place-items:start center!important;
  }
  html body.voice-workout-active #bl-voice-flyout .bl-voice-settings-card{
    width:min(100%,620px)!important;
  }
  html body.voice-workout-active #bl-voice-flyout .bl-voice-grid{
    grid-template-columns:repeat(2,minmax(0,1fr))!important;
  }
}
@media (max-width:520px){
  html body.voice-workout-active #bl-voice-flyout .bl-voice-settings-card>.bl-voice-check{
    display:flex!important;
    width:100%!important;
    margin-left:0!important;
  }
  html body.voice-workout-active #bl-voice-flyout .bl-voice-grid,
  html body.voice-workout-active #bl-voice-flyout .bl-voice-check-grid{
    grid-template-columns:1fr!important;
  }
  html body.voice-workout-active #bl-voice-flyout .bl-voice-actions{
    flex-wrap:wrap!important;
  }
}
@media (max-height:680px) and (min-width:761px){
  html body.voice-workout-active #bl-voice-flyout.bl-flyout:not([hidden]){
    padding:10px 24px!important;
    overflow-y:auto!important;
    place-items:start center!important;
  }
  html body.voice-workout-active #bl-voice-flyout .bl-voice-settings-card{
    margin:auto 0!important;
  }
}


/* FITNESS-VOICE-SETTINGS-REFINEMENT-20260803
   One clear type hierarchy, aligned controls and a compact dismiss action. */
html body.voice-workout-active #bl-voice-flyout .bl-voice-settings-card{
  position:relative!important;
  width:min(920px,calc(100vw - 48px))!important;
  max-width:920px!important;
  padding:20px 22px 20px!important;
}
html body.voice-workout-active #bl-voice-flyout .bl-voice-settings-head{
  min-height:42px!important;
  margin:0 0 2px!important;
  padding-right:52px!important;
  align-items:center!important;
}
html body.voice-workout-active #bl-voice-flyout .bl-voice-settings-head h3{
  font-size:1.55rem!important;
  line-height:1.15!important;
}
html body.voice-workout-active #bl-voice-flyout #bl-voice-close.bl-voice-close-icon{
  position:absolute!important;
  top:14px!important;
  right:16px!important;
  display:inline-grid!important;
  place-items:center!important;
  width:42px!important;
  height:42px!important;
  min-width:42px!important;
  min-height:42px!important;
  padding:0!important;
  border:1px solid rgba(255,255,255,.34)!important;
  border-radius:50%!important;
  background:#21161b!important;
  color:#fff!important;
  font:800 1.65rem/1 system-ui,sans-serif!important;
  cursor:pointer!important;
}
html body.voice-workout-active #bl-voice-flyout #bl-voice-close.bl-voice-close-icon:hover,
html body.voice-workout-active #bl-voice-flyout #bl-voice-close.bl-voice-close-icon:focus-visible{
  border-color:#c81431!important;
  background:#34151d!important;
}
html body.voice-workout-active #bl-voice-flyout .bl-voice-intro{
  margin:0 0 8px!important;
  font-size:.88rem!important;
  line-height:1.3!important;
}
html body.voice-workout-active #bl-voice-flyout .bl-voice-support{
  margin:0 0 10px!important;
  min-height:40px!important;
  display:flex!important;
  align-items:center!important;
  font-size:.82rem!important;
  line-height:1.3!important;
}
html body.voice-workout-active #bl-voice-flyout .bl-voice-primary-grid{
  display:grid!important;
  grid-template-columns:repeat(2,minmax(0,1fr))!important;
  gap:12px!important;
  margin:0 0 12px!important;
}
html body.voice-workout-active #bl-voice-flyout .bl-voice-primary-grid>.bl-voice-check{
  display:flex!important;
  width:100%!important;
  min-height:76px!important;
  margin:0!important;
  padding:11px 12px!important;
  align-items:flex-start!important;
  border:1px solid rgba(255,255,255,.14)!important;
  border-radius:12px!important;
  background:#1a1115!important;
}
html body.voice-workout-active #bl-voice-flyout .bl-voice-primary-grid .bl-voice-check input{
  flex:0 0 auto!important;
  margin:2px 9px 0 0!important;
}
html body.voice-workout-active #bl-voice-flyout .bl-voice-primary-grid .bl-voice-check span{
  display:flex!important;
  min-width:0!important;
  flex-direction:column!important;
  align-items:flex-start!important;
  gap:3px!important;
  font-size:.9rem!important;
  line-height:1.25!important;
}
html body.voice-workout-active #bl-voice-flyout .bl-voice-primary-grid .bl-voice-check strong{
  font:800 .9rem/1.25 system-ui,sans-serif!important;
}
html body.voice-workout-active #bl-voice-flyout .bl-voice-primary-grid .bl-voice-check small{
  color:rgba(255,255,255,.72)!important;
  font:500 .78rem/1.3 system-ui,sans-serif!important;
}
html body.voice-workout-active #bl-voice-flyout .bl-voice-grid{
  align-items:stretch!important;
  gap:10px 12px!important;
  margin:0 0 12px!important;
}
html body.voice-workout-active #bl-voice-flyout .bl-voice-grid label{
  display:grid!important;
  grid-template-rows:auto 40px!important;
  align-content:start!important;
  gap:5px!important;
  margin:0!important;
  font:750 .86rem/1.2 system-ui,sans-serif!important;
}
html body.voice-workout-active #bl-voice-flyout input:not([type="checkbox"]):not([type="range"]),
html body.voice-workout-active #bl-voice-flyout select{
  width:100%!important;
  min-width:0!important;
  height:40px!important;
  min-height:40px!important;
  font-size:.88rem!important;
}
html body.voice-workout-active #bl-voice-flyout .bl-voice-check-grid{
  grid-template-columns:repeat(2,minmax(0,1fr))!important;
  gap:8px 12px!important;
  padding:2px 0 12px!important;
  border-bottom:1px solid rgba(255,255,255,.14)!important;
}
html body.voice-workout-active #bl-voice-flyout .bl-voice-check-grid .bl-voice-check{
  display:flex!important;
  min-height:42px!important;
  margin:0!important;
  padding:8px 10px!important;
  align-items:center!important;
  border:1px solid rgba(255,255,255,.1)!important;
  border-radius:10px!important;
  background:rgba(255,255,255,.025)!important;
}
html body.voice-workout-active #bl-voice-flyout .bl-voice-check-grid .bl-voice-check input{
  flex:0 0 auto!important;
  margin:0 9px 0 0!important;
}
html body.voice-workout-active #bl-voice-flyout .bl-voice-check-grid .bl-voice-check span{
  font:700 .86rem/1.25 system-ui,sans-serif!important;
}
html body.voice-workout-active #bl-voice-flyout .bl-voice-actions{
  display:grid!important;
  grid-template-columns:repeat(3,max-content)!important;
  justify-content:start!important;
  gap:10px!important;
  margin:12px 0 0!important;
  padding:0!important;
  border:0!important;
}
html body.voice-workout-active #bl-voice-flyout .bl-voice-actions .bl-mini-btn{
  min-height:40px!important;
  padding:8px 14px!important;
  font-size:.88rem!important;
  line-height:1.15!important;
}
html body.voice-workout-active #bl-voice-flyout .bl-voice-save-close{
  border-color:#c81431!important;
  background:linear-gradient(100deg,#6d1522,#b80f2d 56%,#42141c)!important;
  color:#fff!important;
}
html body.voice-workout-active #bl-voice-flyout #bl-voice-status:empty{
  display:none!important;
}
@media (max-width:760px){
  html body.voice-workout-active #bl-voice-flyout .bl-voice-primary-grid,
  html body.voice-workout-active #bl-voice-flyout .bl-voice-grid,
  html body.voice-workout-active #bl-voice-flyout .bl-voice-check-grid{
    grid-template-columns:1fr!important;
  }
  html body.voice-workout-active #bl-voice-flyout .bl-voice-actions{
    grid-template-columns:1fr!important;
  }
  html body.voice-workout-active #bl-voice-flyout .bl-voice-actions .bl-mini-btn{
    width:100%!important;
  }
}
