/* SOULONE Live — premium stage redesign v67.
   Skin only. Repertoire, multitracks, play/stop, cue, meters, audio routing and
   device-specific sizing are intentionally controlled by their existing scripts. */
html:not(.soulone-ipad-classic) body {
  background:#040913;
  color:#eef4ff;
}
html:not(.soulone-ipad-classic) body>.app{
  --sl49-bg:#060c15;
  --sl49-card:#0d1a2b;
  --sl49-line:#29405c;
  --sl49-text:#f4f8fe;
  --sl49-muted:#a7b9d0;
  --sl49-accent:#238aff;
  --sl50-edge:#29405c;
  --sl50-canvas:#070e19;
  --sl50-panel:#101c30;
  --soul-live-edition:#188dff;
  color:#f2f6fd!important;
  background:linear-gradient(145deg,#050a13,#0a1424 55%,#050914)!important;
}
html:not(.soulone-ipad-classic) body>.app>.top.stage-header{
  background:linear-gradient(100deg,#07111f,#0b1d35 70%,#081221)!important;
  border-bottom:1px solid #315077!important;
  box-shadow:inset 0 1px rgba(255,255,255,.05),0 4px 18px rgba(0,0,0,.14)!important;
}
body>.app .stage-identity .brand.soulone-family-brand .soulone-family-emblem{
  object-fit:contain!important;background:none!important;border:none!important;
  padding:0!important;box-shadow:none!important;filter:none!important;
}
body>.app .stage-identity .brand.soulone-family-brand .soulone-family-wordmark-asset{
  width:clamp(115px,13vw,175px);height:auto;max-height:49px;
  display:block;object-fit:contain;flex:0 1 auto;min-width:0;
}
body>.app .stage-identity .brand.soulone-family-brand .soulone-live-edition{
  background:#0d315a!important;color:#d1e8ff!important;
  border:1px solid #367ed1!important;border-radius:7px!important;
  box-shadow:inset 0 1px rgba(255,255,255,.12)!important;
}
body>.app .stage-center .stage-field{
  background:#0c1c30!important;border-color:#2e4a69!important;
}
body>.app .stage-center :is(.value-row,.ctl-group) button{
  background:#152b44!important;color:#d7e8ff!important;
  border:1px solid #35557a!important;border-radius:7px!important;
}
body>.app .stage-center :is(.value-row,.ctl-group) button:hover{
  background:#214571!important;color:white!important;
}
body>.app .stage-actions .stage-more,
body>.app .stage-actions .stage-icon{
  background:#10243c!important;color:#d6e8ff!important;
  border-color:#315179!important;
}
body>.app :is(.panel,.timeline,.progress-panel,.download-panel,.right){
  background:linear-gradient(160deg,#101d30,#0b1524)!important;
  color:#eaf1fb!important;border-color:#2a415c!important;
  box-shadow:inset 0 1px rgba(255,255,255,.035),0 5px 15px rgba(0,0,0,.12)!important;
}
body>.app :is(.heading,.eyebrow,.meter-title,.panel strong){
  color:#eaf1fa;
}
body>.app .heading .eyebrow,
body>.app .meter-title strong{
  letter-spacing:.13em;font-weight:800;
}
body>.app .small-note{color:#91a8c6}
body>.app :is(.segment,.segments button,.section-nav button){
  border-color:#345477!important;
}
body>.app :is(.segment,.segments button).active,
body>.app :is(.segment,.segments button)[aria-current="true"],
body>.app .section-nav button[aria-pressed="true"]{
  background:linear-gradient(180deg,#126bdb,#084d9f)!important;
  color:#fff!important;border-color:#4cafff!important;
  box-shadow:0 0 0 1px rgba(66,148,243,.2),0 0 14px rgba(0,116,255,.15)!important;
}
body>.app .stems-visual{
  background:#071323!important;border-color:#264261!important;
}
body>.app .progress-panel .transport button{
  border-color:#345474!important;background:#10233b!important;color:#eff6ff!important;
  transition:background-color .15s,border-color .15s,box-shadow .15s;
}
body>.app .progress-panel .transport button:hover{
  background:#183d6e!important;border-color:#5dabff!important;
}
body>.app .progress-panel .transport #play{
  background:linear-gradient(155deg,#0e85ff,#0555c6)!important;
  color:#fff!important;border:1px solid #69bdff!important;
  box-shadow:0 0 0 3px rgba(18,111,244,.11),0 0 19px rgba(0,124,255,.22)!important;
}
body>.app input[type=range]{accent-color:#218fff}
body>.app .right .tabs{
  border-color:#2c4765!important;
}
body>.app .right .tabs button{
  color:#9fb4d0;
}
body>.app .right .tabs button.active{
  color:#e7f3ff!important;background:#163c68!important;
  border-bottom-color:#39a3ff!important;
}
body>.app :is(.songitem.selected,.songitem[aria-selected="true"]){
  border-color:#399cff!important;
  background:linear-gradient(90deg,#143c6c,#0c2647)!important;
  box-shadow:inset 3px 0 #299fff!important;
}
body>.app .mixer{
  background:#07111e!important;border-color:#28405e!important;
}
body>.app .mixer :is(.channel,.strip,.mixer-channel,.stem-channel){
  border-color:#29435e!important;
}
body>.app :is(button,[role="button"],input,select):focus-visible{
  outline:2px solid #64b8ff!important;outline-offset:2px!important;
}
body>.app :is(input,select):not([type="range"]){
  border-color:#36516c;color:#ecf3fc;
}
#soulone-live-startup{
  background:radial-gradient(ellipse 52% 70% at 60% 43%,rgba(18,88,197,.19),transparent 77%),#050a13!important;
}
#soulone-live-startup .sl-live-intro{
  border-color:#2d4564!important;
  background:linear-gradient(145deg,#081324,#0a182b 60%,#070f1c)!important;
}
#soulone-live-startup .sl-live-intro__logo-source{
  mix-blend-mode:normal!important;mask-image:none!important;-webkit-mask-image:none!important;
  object-fit:contain!important;filter:none!important;
}
#soulone-live-startup .sl-live-intro__progress{background:#1b3049!important}
#soulone-live-startup .sl-live-intro__progress span{background:#168eff!important}
@media(max-width:1100px) and (pointer:coarse){
  html:not(.soulone-ipad-classic) body>.app.soul-mobile-console{
    background:#060c16!important;
  }
  html:not(.soulone-ipad-classic) body>.app.soul-mobile-console>.top.stage-header{
    background:#081627!important;border-color:#29496a!important;
  }
  body>.app.soul-mobile-console :is(.panel,.timeline,.progress-panel,.right){
    box-shadow:none!important;
  }
  body>.app.soul-mobile-console .stage-identity .brand.soulone-family-brand .soulone-family-wordmark-asset{
    width:clamp(75px,12vw,130px);max-height:27px;
  }
  body>.app.soul-mobile-console :is(button,[role="button"]){
    touch-action:manipulation;
  }
}
@media(max-width:650px) and (pointer:coarse){
  body>.app.soul-mobile-console .stage-identity .brand.soulone-family-brand .soulone-family-wordmark-asset{
    width:78px;max-height:24px;
  }
}
@media(prefers-reduced-motion:reduce){
  body>.app :is(button,input,select){transition:none!important}
}

/* v67.1: override legacy v65 390px card — one full-viewport stage opening.
   CSS is appended last, without changing loader event handlers or engine. */
#soulone-live-startup {
  display:grid!important;place-items:stretch!important;
  padding:0!important;
  background:radial-gradient(ellipse 60% 70% at 70% 40%,rgba(5,92,202,.17),transparent 77%),#050a13!important;
  backdrop-filter:none!important;-webkit-backdrop-filter:none!important;
}
#soulone-live-startup .sl-live-intro {
  width:100%!important;height:100dvh!important;max-width:none!important;max-height:none!important;
  min-height:0!important;margin:0!important;padding:clamp(18px,4vw,52px)!important;
  border:0!important;border-radius:0!important;box-shadow:none!important;
  overflow:hidden!important;grid-template-rows:auto minmax(0,1fr) auto!important;
  background:transparent!important;color:#f5f9ff!important;
}
#soulone-live-startup .sl-live-intro::before,
#soulone-live-startup .sl-live-intro::after {display:none!important}
#soulone-live-startup .sl-live-intro__header {
  padding:0 0 14px!important;align-items:center!important;
  border-bottom:1px solid #294463!important;gap:18px!important;
}
#soulone-live-startup .sl-live-intro__brand {
  display:flex!important;align-items:center!important;gap:0!important;
  font-size:0!important;letter-spacing:0!important;
}
#soulone-live-startup .sl-live-intro__brand::after {content:none!important;display:none!important}
#soulone-live-startup .sl-live-intro__brand-line{display:none!important}
#soulone-live-startup .sl-live-intro__brand-logo {
  display:block!important;width:clamp(170px,22vw,270px)!important;
  max-height:58px!important;height:auto!important;object-fit:contain!important;
}
#soulone-live-startup .sl-live-intro__mode{
  display:inline-flex!important;align-items:center;gap:8px!important;
  border:1px solid #2e78c9!important;border-radius:9px!important;
  padding:9px 13px!important;font-size:10px!important;line-height:1!important;
  color:#c9e4ff!important;background:#102b4b!important;
}
#soulone-live-startup .sl-live-intro__main{
  display:grid!important;grid-template-columns:minmax(0,.83fr) minmax(0,1fr)!important;
  align-items:center!important;justify-content:center!important;
  flex-direction:initial!important;gap:clamp(18px,5vw,84px)!important;
  padding:18px 0!important;min-width:0!important;
}
#soulone-live-startup .sl-live-intro__art-zone{
  position:relative!important;display:flex!important;align-items:center!important;justify-content:center!important;
  width:100%!important;height:min(48dvh,420px)!important;max-height:none!important;
  min-height:0!important;overflow:visible!important;flex:initial!important;
}
#soulone-live-startup .sl-live-intro__logo-source{
  display:block!important;position:relative!important;inset:auto!important;
  width:min(100%,350px)!important;max-width:100%!important;
  height:100%!important;max-height:100%!important;object-fit:contain!important;
  margin:auto!important;opacity:1!important;transform:none!important;
  filter:drop-shadow(0 14px 26px rgba(0,76,185,.2))!important;
}
#soulone-live-startup .sl-live-intro__logo-canvas{display:none!important}
#soulone-live-startup .sl-live-intro__title-zone{
  display:flex!important;flex-direction:column!important;align-items:flex-start!important;
  justify-self:start!important;align-self:center!important;text-align:left!important;
  gap:10px!important;padding:0!important;min-width:0!important;
}
#soulone-live-startup .sl-live-intro__title{
  font-size:clamp(60px,10vw,144px)!important;line-height:.9!important;
  font-weight:850!important;letter-spacing:-.07em!important;
  text-shadow:none!important;color:#f5f9ff!important;
}
#soulone-live-startup .sl-live-intro__title-dot{color:#178cff!important}
#soulone-live-startup .sl-live-intro__subtitle{
  color:#a8bdd9!important;font-size:clamp(12px,1.45vw,17px)!important;
  line-height:1.6!important;letter-spacing:.04em!important;margin:0!important;
}
#soulone-live-startup .sl-live-intro__level-bars{
  margin:12px 0 0!important;height:42px!important;transform:none!important;opacity:.6!important;
}
#soulone-live-startup .sl-live-intro__footer{
  padding:15px 0 0!important;border-top:1px solid #294463!important;gap:11px!important;
}
#soulone-live-startup .sl-live-intro__status{
  color:#d4e5fa!important;font-size:11px!important;
}
#soulone-live-startup .sl-live-intro__meta{color:#9cb4d2!important}
@media(max-width:720px) and (orientation:portrait){
  #soulone-live-startup .sl-live-intro{padding:20px!important}
  #soulone-live-startup .sl-live-intro__header{padding-bottom:10px!important}
  #soulone-live-startup .sl-live-intro__brand-logo{width:170px!important}
  #soulone-live-startup .sl-live-intro__main{
    grid-template-columns:1fr!important;align-content:center!important;
    justify-items:center!important;gap:12px!important;padding:10px 0!important;
  }
  #soulone-live-startup .sl-live-intro__art-zone{
    height:min(27dvh,220px)!important;
  }
  #soulone-live-startup .sl-live-intro__logo-source{width:min(60vw,200px)!important}
  #soulone-live-startup .sl-live-intro__title-zone{
    align-items:center!important;justify-self:center!important;text-align:center!important;
  }
  #soulone-live-startup .sl-live-intro__title{font-size:clamp(46px,16vw,83px)!important}
  #soulone-live-startup .sl-live-intro__level-bars{height:22px!important}
}
@media(max-height:510px){
  #soulone-live-startup .sl-live-intro{padding:12px 22px!important}
  #soulone-live-startup .sl-live-intro__header{padding:0 0 7px!important}
  #soulone-live-startup .sl-live-intro__brand-logo{width:165px!important;max-height:34px!important}
  #soulone-live-startup .sl-live-intro__mode{padding:6px 9px!important}
  #soulone-live-startup .sl-live-intro__main{
    grid-template-columns:minmax(0,.7fr) minmax(0,1fr)!important;
    padding:6px 0!important;gap:16px!important;
  }
  #soulone-live-startup .sl-live-intro__art-zone{
    height:min(43dvh,165px)!important;
  }
  #soulone-live-startup .sl-live-intro__title-zone{align-items:flex-start!important;text-align:left!important}
  #soulone-live-startup .sl-live-intro__title{font-size:clamp(45px,10vw,79px)!important}
  #soulone-live-startup .sl-live-intro__subtitle{font-size:11px!important}
  #soulone-live-startup .sl-live-intro__level-bars{display:none!important}
  #soulone-live-startup .sl-live-intro__footer{padding-top:7px!important;gap:5px!important}
}

/* Keep one readable brand mark per viewport, never a nested duplicated badge. */
@media(min-width:1101px){
  body>.app .stage-identity .brand.soulone-family-brand .soulone-family-emblem{display:none!important}
  body>.app .stage-identity .brand.soulone-family-brand .soulone-family-wordmark-asset{
    display:block!important;width:clamp(138px,12vw,184px)!important;max-height:35px!important;
  }
}
@media(max-width:1100px){
  body>.app.soul-mobile-console .stage-identity .brand.soulone-family-brand .soulone-family-emblem{
    display:block!important;width:30px!important;height:30px!important;flex:0 0 30px!important;
  }
  body>.app.soul-mobile-console .stage-identity .brand.soulone-family-brand .soulone-family-wordmark-asset{
    display:none!important;
  }
}
