/*
 * SoulOne Live · sistema tipográfico v22
 * Capa exclusivamente visual. No altera rutas, audio, estados ni distribución.
 * Inter / SF Pro; mayúsculas deliberadas solo en la marca y abreviaturas
 * técnicas como LIVE, BPM, L/R, MIDI y dB.
 * Mantener el modo clásico de iPad 2 sin cambios.
 */
html:not(.soulone-ipad-classic) body>.app {
  --sl-type-title: 21px;
  --sl-type-section: 17px;
  --sl-type-panel: 13px;
  --sl-type-body: 12px;
  --sl-type-meta: 11px;
  font-family: Inter, "SF Pro Text", -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;
  font-optical-sizing: auto;
  -webkit-font-smoothing: antialiased;
  text-rendering: optimizeLegibility;
}
html:not(.soulone-ipad-classic) body>.app :is(button,input,select,textarea) {
  font-family: inherit;
}
html:not(.soulone-ipad-classic) body>.app :is(
  .stage-field .field-label,.stage-menu .menu-caption,.sl-view-label,
  .timeline .heading .eyebrow,.timeline .heading .section-label,
  .clean-group h3,.top .stat small,.download-eyebrow,
  .sl-np-state,.sl-pro-context [data-sl-count]
) {
  text-transform: none !important;
  letter-spacing: .01em !important;
}
html:not(.soulone-ipad-classic) body>.app .stage-header .brand {
  font-weight: 790;
  letter-spacing: -.045em;
}
html:not(.soulone-ipad-classic) body>.app .stage-header .brand .live {
  font-size: 11px;
  font-weight: 760;
  letter-spacing: .045em;
}
html:not(.soulone-ipad-classic) body>.app .stage-header .song-head strong {
  font-size: var(--sl-type-title);
  font-weight: 740;
  letter-spacing: -.035em;
  line-height: 1.12;
}
html:not(.soulone-ipad-classic) body>.app .stage-header .song-head small {
  font-size: 12px;
  font-weight: 480;
  line-height: 1.35;
  letter-spacing: 0;
}
html:not(.soulone-ipad-classic) body>.app .stage-header .stage-field .field-label {
  font-size: var(--sl-type-meta);
  font-weight: 630 !important;
  line-height: 1.25;
  letter-spacing: .008em !important;
}
html:not(.soulone-ipad-classic) body>.app .stage-header .stage-field :is(.value-row strong,.ctl-group .val,.stage-field--key strong) {
  font-variant-numeric: tabular-nums;
  font-weight: 730;
  letter-spacing: -.025em;
}
html:not(.soulone-ipad-classic) body>.app .stage-header #status {
  font-size: 11px;
  font-weight: 680;
  letter-spacing: 0 !important;
  text-transform: none !important;
}
html:not(.soulone-ipad-classic) body>.app .stage-header .stage-icon .short-label,
html:not(.soulone-ipad-classic) body>.app .stage-menu .tools button {
  font-size: 12px;
  font-weight: 620 !important;
  letter-spacing: 0;
}
html:not(.soulone-ipad-classic) body>.app .stage-footer-note {
  font-size: 11px;
  line-height: 1.35;
  font-weight: 510;
  letter-spacing: 0;
}
html:not(.soulone-ipad-classic) body>.app .stage-footer-note .protected {
  font-weight: 590;
}
html:not(.soulone-ipad-classic) body>.app :is(.sl-mode-btn,.sl-desktop-views .sl-repertoire-view,
  .sl-mobile-view-nav .sl-mobile-preset,.sl-mobile-view-nav .sl-mobile-repertoire-trigger) {
  font-size: 12px;
  font-weight: 630 !important;
  letter-spacing: 0 !important;
  text-transform: none !important;
}
/* Navegación y lectura musical. */
html:not(.soulone-ipad-classic) body>.app .live-workspace .timeline .heading .eyebrow {
  font-size: 13px;
  font-weight: 680 !important;
  line-height: 1.25;
  letter-spacing: 0 !important;
}
html:not(.soulone-ipad-classic) body>.app .live-workspace .timeline #songNote {
  font-size: 11.5px;
  font-weight: 490;
  line-height: 1.35;
}
html:not(.soulone-ipad-classic) body>.app .live-workspace .timeline .section-nav .section-label {
  font-size: 11.5px;
  font-weight: 690;
  letter-spacing: .005em !important;
}
html:not(.soulone-ipad-classic) body>.app .live-workspace .timeline .section-nav #loopBtn {
  font-size: 11.5px;
  font-weight: 610;
  letter-spacing: 0;
}
html:not(.soulone-ipad-classic) body>.app .live-workspace .timeline .wave-name {
  font-size: 11.5px;
  font-weight: 650;
  letter-spacing: -.01em;
  text-transform: none;
}
html:not(.soulone-ipad-classic) body>.app .live-workspace .timeline .time-numbers {
  font-size: 11px;
  font-weight: 520;
  font-variant-numeric: tabular-nums;
}
html:not(.soulone-ipad-classic) body>.app .live-workspace .progress-panel .clock {
  font-weight: 740 !important;
  font-variant-numeric: tabular-nums;
  letter-spacing: -.04em;
}
html:not(.soulone-ipad-classic) body>.app .live-workspace .progress-panel .clock small {
  font-weight: 530;
  letter-spacing: -.015em;
}
/* Repertorio y estados: legibles también en el panel compacto. */
html:not(.soulone-ipad-classic) body>.app .right.live-library-panel .live-library-header strong {
  font-size: 15px !important;
  font-weight: 720 !important;
  letter-spacing: -.02em;
}
html:not(.soulone-ipad-classic) body>.app .right.live-library-panel .live-library-header small,
html:not(.soulone-ipad-classic) body>.app .right.live-library-panel .cloud-toolbar strong {
  font-size: 10.5px !important;
  font-weight: 560;
  line-height: 1.35;
}
html:not(.soulone-ipad-classic) body>.app .right.live-library-panel .sl-np-state {
  font-size: 10.5px !important;
  font-weight: 620 !important;
  letter-spacing: 0 !important;
  line-height: 1.3;
}
html:not(.soulone-ipad-classic) body>.app:not(.sl-mode-repertoire) .right.live-library-panel .sl-np-title {
  font-size: 14px !important;
  font-weight: 710 !important;
  letter-spacing: -.025em;
}
html:not(.soulone-ipad-classic) body>.app.sl-mode-repertoire .right.live-library-panel .sl-np-title {
  font-weight: 730 !important;
}
html:not(.soulone-ipad-classic) body>.app .right.live-library-panel .sl-np-time {
  font-variant-numeric: tabular-nums;
  font-weight: 630;
}
html:not(.soulone-ipad-classic) body>.app .right.live-library-panel .tabs button {
  font-size: 11.5px !important;
  font-weight: 610 !important;
  line-height: 1.25;
  letter-spacing: 0 !important;
  text-transform: none !important;
}
html:not(.soulone-ipad-classic) body>.app .right.live-library-panel .tabs button.active {
  font-weight: 730 !important;
}
html:not(.soulone-ipad-classic) body>.app .right.live-library-panel .songitem .name b {
  font-size: 12.5px !important;
  font-weight: 680 !important;
  line-height: 1.25;
  letter-spacing: -.01em;
  text-transform: none !important;
}
html:not(.soulone-ipad-classic) body>.app .right.live-library-panel .songitem .name small,
html:not(.soulone-ipad-classic) body>.app .right.live-library-panel .songitem .song-meta {
  font-size: 10.5px !important;
  font-weight: 510;
  line-height: 1.3;
  letter-spacing: 0;
}
html:not(.soulone-ipad-classic) body>.app .right.live-library-panel .search {
  font-size: 12px !important;
  font-weight: 470;
}
html:not(.soulone-ipad-classic) body>.app .sl-leveler .sl-leveler-line>strong,
html:not(.soulone-ipad-classic) body>.app .sl-leveler .sl-leveler-fine>span,
html:not(.soulone-ipad-classic) body>.app .sl-leveler small {
  font-size: 10.5px;
  font-weight: 560;
  letter-spacing: 0;
}
html:not(.soulone-ipad-classic) body>.app .sl-leveler .sl-leveler-fine output {
  font-size: 11.5px;
  font-weight: 630;
  font-variant-numeric: tabular-nums;
}
/* Mezclador compacto: conservar canales, altura de faders y salidas. */
html:not(.soulone-ipad-classic) body>.app>.meter-title strong {
  font-size: var(--sl-type-section);
  font-weight: 730 !important;
  letter-spacing: -.025em;
  line-height: 1.25;
}
html:not(.soulone-ipad-classic) body>.app>.meter-title .small-note {
  font-size: 11px;
  font-weight: 510;
}
html:not(.soulone-ipad-classic) body>.app>#mixer.clean-mixer .clean-group h3 {
  font-size: 11.5px !important;
  font-weight: 640 !important;
  letter-spacing: .005em !important;
  line-height: 1.2;
  text-transform: none !important;
}
html:not(.soulone-ipad-classic) body>.app>#mixer.clean-mixer .striphead .track-title {
  font-size: 12px !important;
  font-weight: 660 !important;
  line-height: 1.17;
  letter-spacing: -.015em !important;
  text-transform: none !important;
  overflow-wrap: normal;
  word-break: normal;
  hyphens: none;
}
html:not(.soulone-ipad-classic) body>.app>#mixer.clean-mixer .striphead .route-chip {
  font-size: 10px;
  font-weight: 690;
  line-height: 1.1;
  letter-spacing: 0;
  flex-shrink: 0;
  font-variant-numeric: tabular-nums;
}
html:not(.soulone-ipad-classic) body>.app>#mixer.clean-mixer .strip .db {
  font-size: 11px;
  font-weight: 640 !important;
  letter-spacing: 0;
  font-variant-numeric: tabular-nums;
}
html:not(.soulone-ipad-classic) body>.app>#mixer.clean-mixer .strip .role,
html:not(.soulone-ipad-classic) body>.app>#mixer.clean-mixer .strip .master-status {
  font-size: 10px;
  font-weight: 530 !important;
  letter-spacing: 0 !important;
  line-height: 1.25;
  text-transform: none !important;
}
html:not(.soulone-ipad-classic) body>.app>#mixer.clean-mixer .strip .dual button {
  font-weight: 660;
  font-size: 11px;
}
/* Avisos, botones de texto, modales y configuración. */
html:not(.soulone-ipad-classic) body>.app .download-panel h3,
html:not(.soulone-ipad-classic) body>.app .modal h2 {
  font-size: 19px;
  font-weight: 720;
  letter-spacing: -.025em;
}
html:not(.soulone-ipad-classic) body>.app :is(.download-panel p,.download-info,
  .modal p,.modal .field label,.config label,.config small,
  .bottomline,.small-note) {
  letter-spacing: 0;
  line-height: 1.4;
}
html:not(.soulone-ipad-classic) body>.app :is(.side-actions button,.download-button,
  .stage-menu button,.modal button,.route button,.config button) {
  font-weight: 620;
  text-transform: none;
  letter-spacing: 0;
}
/* Escritorio: reforzar información secundaria sin ampliar los paneles. */
@media(min-width:1000px) and (pointer:fine) {
  html:not(.soulone-ipad-classic) body>.app:not(.sl-mode-repertoire) .right.live-library-panel .tabs button {
    font-size: 11.5px !important;
  }
  html:not(.soulone-ipad-classic) body>.app:not(.sl-mode-repertoire) .right.live-library-panel .songitem .name b {
    font-size: 12.5px !important;
  }
}
/* Móvil/tablet: mismas reglas tipográficas, pero sin exigir scroll adicional. */
@media(max-width:1100px) and (pointer:coarse) {
  html:not(.soulone-ipad-classic) body>.app .stage-header .song-head strong {
    font-size: 19px;
  }
  html:not(.soulone-ipad-classic) body>.app .stage-header .stage-field .field-label {
    font-size: 10.5px;
  }
  html:not(.soulone-ipad-classic) body>.app .sl-mobile-view-nav :is(
    .sl-mobile-preset,.sl-mobile-repertoire-trigger,.sl-mobile-audio-trigger,.sl-mobile-windows-trigger
  ) {
    font-size: 11px !important;
    font-weight: 640 !important;
    letter-spacing: 0 !important;
    text-transform: none !important;
  }
  html:not(.soulone-ipad-classic) body>.app .right.live-library-panel .songitem .name b {
    font-size: 12px !important;
  }
  html:not(.soulone-ipad-classic) body>.app>#mixer.clean-mixer .striphead .track-title {
    font-size: 11.5px !important;
  }
  html:not(.soulone-ipad-classic) body>.app .live-workspace .timeline .wave-name {
    font-size: 11px;
  }
}
@media(max-width:540px) and (pointer:coarse) {
  html:not(.soulone-ipad-classic) body>.app .stage-header .song-head strong {
    font-size: 18px;
  }
  html:not(.soulone-ipad-classic) body>.app .sl-mobile-view-nav :is(
    .sl-mobile-preset,.sl-mobile-repertoire-trigger,.sl-mobile-audio-trigger,.sl-mobile-windows-trigger
  ) {
    font-size: 10.5px !important;
  }
}
