/* DIE INSTANZ Mixer UX — 1.0.63
   Capa d'interficie: no altera el motor d'audio ni el beatgrid. */
body.di-view-mixer .tool-route-intro{padding-bottom:clamp(22px,3vw,42px)}
body.di-view-mixer .tool-route-grid>div:first-child{max-width:820px}
body.di-view-mixer .tool-route-grid p{max-width:760px}

.di-mixer-guide{width:min(1180px,calc(100% - 40px));margin:0 auto clamp(28px,4vw,52px);border:1px solid rgba(255,255,255,.16);background:rgba(255,255,255,.018);padding:18px}
.di-mixer-guide-head{display:flex;align-items:flex-end;justify-content:space-between;gap:18px;margin-bottom:14px}
.di-mixer-guide-kicker{font:600 .68rem/1.2 ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;letter-spacing:.18em;color:#ea4b4e;text-transform:uppercase}
.di-mixer-guide-title{margin:5px 0 0;font-size:clamp(1rem,2vw,1.25rem);letter-spacing:.02em}
.di-mixer-guide-note{max-width:500px;margin:0;color:rgba(255,255,255,.66);font-size:.82rem;line-height:1.55}
.di-mixer-steps{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));border-top:1px solid rgba(255,255,255,.12);border-left:1px solid rgba(255,255,255,.12)}
.di-mixer-step{min-height:92px;padding:14px;border-right:1px solid rgba(255,255,255,.12);border-bottom:1px solid rgba(255,255,255,.12)}
.di-mixer-step b{display:block;margin-bottom:8px;font:700 .72rem/1 ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;letter-spacing:.15em;color:#ea4b4e}
.di-mixer-step strong{display:block;margin-bottom:5px;font-size:.9rem;letter-spacing:.04em;text-transform:uppercase}
.di-mixer-step span{display:block;color:rgba(255,255,255,.62);font-size:.78rem;line-height:1.45}

.di-mixer-tabs{display:none;width:min(1180px,calc(100% - 40px));margin:0 auto 14px;border:1px solid rgba(255,255,255,.16);background:#090909;padding:4px;gap:4px}
.di-mixer-tab{appearance:none;border:0;background:transparent;color:rgba(255,255,255,.58);font:700 .73rem/1 ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;letter-spacing:.15em;min-height:44px;cursor:pointer}
.di-mixer-tab[aria-selected="true"]{background:rgba(234,75,78,.12);color:#fff;box-shadow:inset 0 -2px #ea4b4e}

.di-mixer-deck{position:relative;isolation:isolate}
.di-mixer-statusbar{display:flex;align-items:center;justify-content:space-between;gap:12px;margin:0 0 12px;padding:9px 11px;border:1px solid rgba(255,255,255,.13);background:rgba(255,255,255,.025)}
.di-mixer-status-left{display:flex;align-items:center;gap:10px;min-width:0}
.di-mixer-status-deck{font:700 .68rem/1 ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;letter-spacing:.17em;color:rgba(255,255,255,.72)}
.di-mixer-status-pill{display:inline-flex;align-items:center;min-height:24px;padding:0 8px;border:1px solid rgba(255,255,255,.16);font:700 .62rem/1 ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;letter-spacing:.1em;color:rgba(255,255,255,.62);white-space:nowrap}
.di-mixer-status-pill[data-state="loading"]{color:#fff;border-color:rgba(255,255,255,.35)}
.di-mixer-status-pill[data-state="ready"]{color:#fff;border-color:rgba(234,75,78,.42)}
.di-mixer-status-pill[data-state="playing"]{color:#fff;background:rgba(234,75,78,.12);border-color:#ea4b4e}
.di-mixer-status-pill[data-state="paused"]{color:rgba(255,255,255,.82);border-color:rgba(255,255,255,.28)}
.di-mixer-bpm-readout{margin-left:auto;font:600 .62rem/1.2 ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;letter-spacing:.08em;color:rgba(255,255,255,.52);white-space:nowrap}
.di-mixer-bpm-readout strong{color:rgba(255,255,255,.86);font-weight:700}

body.di-view-mixer button:disabled,body.di-view-mixer input:disabled,body.di-view-mixer select:disabled{opacity:.38;cursor:not-allowed;filter:grayscale(.35)}
body.di-view-mixer button[aria-pressed="true"],body.di-view-mixer .is-active,body.di-view-mixer .active{--di-control-active:1}
body.di-view-mixer .di-sync-button{position:relative}
body.di-view-mixer .di-sync-state-label{display:inline-flex;align-items:center;justify-content:center;margin-left:7px;min-width:27px;height:18px;border:1px solid rgba(255,255,255,.2);font:700 .55rem/1 ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;letter-spacing:.08em;color:rgba(255,255,255,.52);vertical-align:middle}
body.di-view-mixer .di-sync-button.di-sync-on .di-sync-state-label{border-color:#ea4b4e;background:rgba(234,75,78,.13);color:#fff}

.di-mixer-crossfader-zone{padding:12px 14px!important;border:1px solid rgba(234,75,78,.32)!important;background:linear-gradient(180deg,rgba(234,75,78,.045),rgba(255,255,255,.015))!important}
body.di-view-mixer input[type="range"].di-mixer-crossfader{width:100%!important;min-height:30px;accent-color:#ea4b4e}
.di-mixer-master-zone{position:relative;border-top:1px solid rgba(234,75,78,.36)!important;background-color:rgba(9,9,9,.96)!important}
.di-mixer-master-zone:before{content:"MASTER";display:block;margin-bottom:8px;font:700 .61rem/1 ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;letter-spacing:.18em;color:#ea4b4e}
.di-mixer-master-zone.di-master-has-label:before{display:none}

@media(max-width:900px){
 .di-mixer-steps{grid-template-columns:repeat(2,minmax(0,1fr))}
}
@media(max-width:820px){
 .di-mixer-guide{width:calc(100% - 28px);margin-bottom:22px;padding:13px}
 .di-mixer-guide-head{display:block}
 .di-mixer-guide-note{margin-top:8px}
 .di-mixer-steps{grid-template-columns:1fr 1fr}
 .di-mixer-step{min-height:82px;padding:12px 10px}
 .di-mixer-tabs{display:grid;grid-template-columns:1fr 1fr;width:calc(100% - 28px)}
 .di-mixer-deck.di-mixer-mobile-hidden{display:none!important}
 .di-mixer-deck.di-mixer-mobile-active{display:block!important}
 .di-mixer-statusbar{position:sticky;top:72px;z-index:7;background:rgba(9,9,9,.96);backdrop-filter:blur(10px)}
 .di-mixer-statusbar .di-mixer-bpm-readout{font-size:.58rem}
 .di-mixer-master-zone.di-mixer-master-sticky{position:sticky!important;bottom:0;z-index:20;box-shadow:0 -14px 30px rgba(0,0,0,.55)}
 .di-mixer-crossfader-zone{padding:11px!important}
}
@media(max-width:520px){
 .di-mixer-steps{grid-template-columns:1fr}
 .di-mixer-step{min-height:0}
 .di-mixer-statusbar{align-items:flex-start;flex-wrap:wrap}
 .di-mixer-bpm-readout{width:100%;margin-left:0}
}
