.nav a {
    color: inherit;
    text-decoration: none;
    display: block;
}
*{box-sizing:border-box}body{margin:0;background:radial-gradient(circle at 72% 0,#17284d,transparent 32%),#06090e;color:#edf5ff;font:14px Segoe UI,Arial;user-select:none}.app{display:grid;grid-template-columns:225px 1fr;min-height:100vh}aside{padding:24px 16px;background:#080c12e8;border-right:1px solid #26364b}.brand{font-size:19px;font-weight:900;letter-spacing:2px}.brand b,h1 b,.cyan{color:#36d9ff}.sub{font-size:10px;color:#7b8aa0;letter-spacing:2px;margin:4px 0 27px}.nav{padding:11px;color:#a8b6c9;border-radius:8px}.nav.on{background:#142033;color:#fff}main{padding:25px 28px;max-width:1500px;width:100%}header{display:flex;justify-content:space-between;align-items:center}.sys{border:1px solid #293d56;border-radius:20px;padding:8px 12px;font-size:11px}.drop,.console{margin-top:16px;border:1px solid #293e57;border-radius:15px;background:linear-gradient(145deg,#111a27,#090e16);padding:20px}.drop{min-height:115px;border-style:dashed;display:flex;align-items:center;justify-content:center;text-align:center;cursor:pointer}.drop.drag{background:#102638}.plus{font-size:37px;color:#36d9ff}.console{display:none}.track{display:flex;justify-content:space-between;align-items:center}.muted{color:#7e8da3}.wave{height:150px;background:#05090e;border:1px solid #263a51;border-radius:10px;margin:14px 0;position:relative;overflow:hidden;cursor:crosshair}.wave canvas{width:100%;height:100%}.playhead{position:absolute;top:0;bottom:0;width:1px;background:#fff;pointer-events:none;left:0}.selection{position:absolute;top:0;bottom:0;background:#36d9ff22;border-left:1px solid #36d9ff;border-right:1px solid #36d9ff;pointer-events:none;display:none}.row{display:flex;gap:8px;align-items:center;flex-wrap:wrap}button,.select,input{background:#101a27;color:#fff;border:1px solid #304760;border-radius:8px;padding:9px 11px}button{cursor:pointer}.smallbtn{width:auto}.rack{margin-top:17px;border-top:1px solid #24354a;padding-top:17px}.racktitle{display:flex;justify-content:space-between;align-items:center}.presets{display:flex;gap:6px;flex-wrap:wrap;margin:12px 0}.preset{font-size:11px;padding:7px 10px;width:auto}.knobs{display:grid;grid-template-columns:repeat(9,minmax(80px,1fr));gap:9px}.knobbox{background:#0a111a;border:1px solid #22364d;border-radius:11px;padding:10px;text-align:center}.knob{--p:50%;width:57px;height:57px;border-radius:50%;margin:3px auto 8px;background:conic-gradient(#36d9ff 0 var(--p),#26394e var(--p) 75%,#0b1017 75%);position:relative;box-shadow:inset 0 0 0 7px #101824}.knob:after{content:"";position:absolute;width:3px;height:20px;background:#eaf7ff;left:27px;top:7px;transform-origin:1.5px 21.5px;transform:rotate(var(--rot,-135deg));border-radius:3px}.knobbox input[type=range]{width:100%;height:4px;padding:0;accent-color:#36d9ff}.val{font-size:11px;color:#b9c8da}.lab{font-size:10px;color:#71839b;letter-spacing:.5px}.fx{display:grid;grid-template-columns:repeat(3,1fr);gap:10px;margin-top:12px}.fxbox,.export{background:#0a111a;border:1px solid #23374e;border-radius:11px;padding:13px}.fxbox h4{margin:0 0 10px}.export{margin-top:13px}.select{appearance:none;background-image:linear-gradient(45deg,transparent 50%,#36d9ff 50%),linear-gradient(135deg,#36d9ff 50%,transparent 50%);background-position:calc(100% - 16px) 14px,calc(100% - 11px) 14px;background-size:5px 5px;background-repeat:no-repeat;padding-right:31px}.primary{background:#102a39;border-color:#2c91ae;font-weight:700}.dl{color:#4aefa7;text-decoration:none}.err{color:#ff8196;white-space:pre-wrap}.stats{display:flex;gap:7px;flex-wrap:wrap;margin:10px 0}.badge{background:#0b131e;border:1px solid #26394e;border-radius:15px;padding:6px 9px;font-size:10px;color:#9eb0c6}@media(max-width:1100px){.knobs{grid-template-columns:repeat(5,1fr)}}@media(max-width:800px){.app{display:block}aside{display:none}main{padding:13px}.knobs{grid-template-columns:repeat(3,1fr)}.fx{grid-template-columns:1fr}}

.upload-progress{height:7px;background:#101824;border:1px solid #26394e;border-radius:8px;overflow:hidden;margin-top:12px;display:none}.upload-progress i{display:block;height:100%;width:0;background:linear-gradient(90deg,#36d9ff,#9b70ff);transition:width .15s}
.wave-status{position:absolute;inset:0;display:none;align-items:center;justify-content:center;background:#05090ed9;z-index:5;color:#b9dff0}.wave-status.on{display:flex}.spinner{width:18px;height:18px;border:2px solid #31506b;border-top-color:#36d9ff;border-radius:50%;animation:spin .8s linear infinite;margin-right:9px}@keyframes spin{to{transform:rotate(360deg)}}.modebar{display:flex;gap:7px;flex-wrap:wrap;margin:10px 0}.modebar button.active{background:#163449;border-color:#36d9ff}.console-meter{height:8px;background:#091019;border:1px solid #26394e;border-radius:8px;overflow:hidden;min-width:160px}.console-meter i{display:block;height:100%;width:0;background:linear-gradient(90deg,#49efa7,#e9e24c,#ff7188)}.monitor{display:flex;align-items:center;gap:8px;margin-left:auto}.livehint{padding:9px 11px;border:1px solid #254057;border-radius:8px;background:#0a151f;color:#93a8be;font-size:11px}.selection{z-index:2}.playhead{z-index:3}

.liveboard{margin-top:14px;display:grid;grid-template-columns:1.45fr .55fr;gap:12px}
.spectrum-wrap,.live-controls{background:#070d14;border:1px solid #263b53;border-radius:12px;padding:12px}
#spectrum{width:100%;height:170px;display:block;background:linear-gradient(#07101a,#05090e)}
.meters{display:grid;grid-template-columns:1fr 1fr;gap:8px;margin-top:9px}.meterline{height:9px;background:#101824;border-radius:8px;overflow:hidden;border:1px solid #25384e}.meterline i{display:block;height:100%;width:0;background:linear-gradient(90deg,#49efa7,#e9e24c,#ff7188)}
.ab{display:grid;grid-template-columns:1fr 1fr;gap:8px}.ab button.active{border-color:#36d9ff;background:#163449}.live-controls h4{margin:12px 0 8px}.live-controls input[type=range]{width:100%;accent-color:#36d9ff}
.livegrid{display:grid;grid-template-columns:repeat(4,1fr);gap:8px;margin-top:12px}.mini{background:#0a111a;border:1px solid #22364d;border-radius:10px;padding:9px}.mini label{display:block;color:#788aa1;font-size:10px;margin-bottom:5px}.mini output{float:right;color:#ccecff}
@media(max-width:950px){.liveboard{grid-template-columns:1fr}.livegrid{grid-template-columns:repeat(2,1fr)}}

.spectrum-stage{position:relative;height:190px;margin-top:8px}.spec-grid{position:absolute;left:45px;right:5px;top:0;height:160px;border-left:1px solid #294057;border-bottom:1px solid #294057;background-image:linear-gradient(#26394e55 1px,transparent 1px),linear-gradient(90deg,#26394e44 1px,transparent 1px);background-size:100% 25%,12.5% 100%}#spectrum{position:absolute;left:45px;top:0;width:calc(100% - 50px);height:160px;background:transparent}.spec-db{position:absolute;width:40px;height:160px;font-size:9px;color:#71859e}.spec-db span{position:absolute;right:2px}.spec-hz{position:absolute;left:45px;right:5px;top:165px;font-size:9px;color:#71859e}.spec-hz span{position:absolute;transform:translateX(-50%)}.vu-scale{display:flex;justify-content:space-between;font-size:8px;color:#657991;margin-top:3px}.eq24-wrap{margin-top:14px;background:#070d14;border:1px solid #263b53;border-radius:13px;padding:14px;overflow-x:auto}.eq24-head{display:flex;justify-content:space-between;align-items:center}.eq24-actions{display:flex;gap:6px}.eq24-actions button{width:auto}.eq-channel{min-width:1080px;margin-top:12px}.eq24{display:grid;grid-template-columns:repeat(24,1fr);gap:3px;height:230px}.eqband{display:flex;flex-direction:column;align-items:center;justify-content:flex-end}.eqband input{writing-mode:vertical-lr;direction:rtl;appearance:slider-vertical;width:22px;height:175px;padding:0;accent-color:#36d9ff}.right .eqband input{accent-color:#a779ff}.eqband .db,.eqband .hz{font-size:8px;color:#8195ad}.link-led{display:inline-block;width:8px;height:8px;border-radius:50%;background:#555}.linked .link-led{background:#49efa7;box-shadow:0 0 7px #49efa7}

/* ===== V0.6.1 corrective UI ===== */
.spectrum-stage{position:relative!important;height:205px!important;margin-top:10px!important;padding-left:48px!important;padding-bottom:28px!important}
.spec-grid{position:absolute!important;left:48px!important;right:8px!important;top:0!important;height:165px!important;
 background-image:linear-gradient(to bottom,rgba(50,75,98,.55) 1px,transparent 1px),linear-gradient(to right,rgba(50,75,98,.38) 1px,transparent 1px)!important;
 background-size:100% 25%,12.5% 100%!important;border:1px solid #294057!important}
#spectrum{position:absolute!important;left:48px!important;top:0!important;width:calc(100% - 56px)!important;height:165px!important;z-index:2!important}
.spec-db{position:absolute!important;left:0!important;top:0!important;width:42px!important;height:165px!important;font-size:9px!important;color:#8095ad!important}
.spec-db span{position:absolute!important;right:4px!important;white-space:nowrap!important}
.spec-hz{position:absolute!important;left:48px!important;right:8px!important;top:173px!important;height:20px!important;font-size:9px!important;color:#8095ad!important}
.spec-hz span{position:absolute!important;transform:translateX(-50%)!important;white-space:nowrap!important}
.vu-scale{display:grid!important;grid-template-columns:repeat(6,1fr)!important;width:100%!important;margin-top:4px!important;font-size:8px!important;color:#71869f!important}
.vu-scale span{text-align:center!important;white-space:nowrap!important}.vu-scale span:first-child{text-align:left!important}.vu-scale span:last-child{text-align:right!important;color:#ff8b99!important}
.eq24-wrap{display:block!important;margin-top:16px!important;padding:15px!important;overflow-x:auto!important;background:#070d14!important;border:1px solid #263b53!important;border-radius:13px!important}
.eq24-head{min-width:1120px!important;display:flex!important;justify-content:space-between!important;align-items:center!important}
.eq-channel{display:block!important;min-width:1120px!important;margin:16px 0 0!important}
.eq24{display:grid!important;grid-template-columns:repeat(24,42px)!important;gap:4px!important;width:max-content!important;height:248px!important;padding:8px 4px!important;border:1px solid #17283a!important;border-radius:8px!important;background:linear-gradient(to bottom,#0a121c,#060b11)!important}
.eqband{position:relative!important;width:42px!important;height:230px!important;display:flex!important;flex-direction:column!important;align-items:center!important}
.eqband .db{height:18px!important;font-size:9px!important;color:#a9bdd2!important}
.eqband .hz{height:18px!important;font-size:8px!important;color:#8296ad!important;margin-top:4px!important}
.eqband input[type=range]{-webkit-appearance:none!important;appearance:none!important;writing-mode:initial!important;direction:initial!important;
 position:relative!important;width:172px!important;height:6px!important;margin:86px -65px 78px!important;transform:rotate(-90deg)!important;
 background:linear-gradient(to right,#24384d,#36526d)!important;border:0!important;border-radius:5px!important;padding:0!important}
.eqband input[type=range]::-webkit-slider-thumb{-webkit-appearance:none!important;width:17px!important;height:24px!important;border-radius:4px!important;background:#36d9ff!important;border:2px solid #b8f3ff!important;box-shadow:0 0 8px #36d9ff88!important;cursor:ns-resize!important}
.eq-channel.right .eqband input[type=range]::-webkit-slider-thumb{background:#a779ff!important;border-color:#e0ceff!important;box-shadow:0 0 8px #a779ff88!important}
.eqband input[type=range]::-moz-range-thumb{width:17px!important;height:24px!important;border-radius:4px!important;background:#36d9ff!important;border:2px solid #b8f3ff!important}
.eq24-actions button{display:inline-block!important;width:auto!important}
.eq-channel>small{display:block!important;margin-bottom:6px!important;color:#a7bbd0!important;font-weight:700!important;letter-spacing:1px!important}

/* V0.6.2 calibrated spectrum / meters */
.spec-grid{
 background-image:
   linear-gradient(to bottom,rgba(255,105,125,.35) 1px,transparent 1px),
   linear-gradient(to right,rgba(50,75,98,.38) 1px,transparent 1px)!important;
 background-size:100% 11.111%,10% 100%!important;
}
.spec-db span{transform:translateY(-50%)}.spec-db span:first-child{transform:none;color:#ff8997}
.vu-scale{grid-template-columns:repeat(6,1fr)!important}
.vu-scale span:nth-last-child(2){color:#e9e24c!important}.vu-scale span:last-child{color:#ff7188!important;font-weight:700}

/* V0.6.3 precision dB scale */
.spec-grid{
 background-image:
   linear-gradient(to bottom,
     rgba(255,92,112,.48) 0 1px, transparent 1px 3.704%,
     rgba(255,122,102,.38) 3.704% calc(3.704% + 1px), transparent calc(3.704% + 1px) 7.407%,
     rgba(255,177,88,.38) 7.407% calc(7.407% + 1px), transparent calc(7.407% + 1px) 11.111%,
     rgba(255,222,92,.72) 11.111% calc(11.111% + 1px), transparent calc(11.111% + 1px) 18.519%,
     rgba(55,83,108,.50) 18.519% calc(18.519% + 1px), transparent calc(18.519% + 1px) 25.926%,
     rgba(55,83,108,.50) 25.926% calc(25.926% + 1px), transparent calc(25.926% + 1px) 33.333%,
     rgba(55,83,108,.50) 33.333% calc(33.333% + 1px), transparent calc(33.333% + 1px) 55.556%,
     rgba(55,83,108,.50) 55.556% calc(55.556% + 1px), transparent calc(55.556% + 1px) 77.778%,
     rgba(55,83,108,.50) 77.778% calc(77.778% + 1px), transparent calc(77.778% + 1px) 100%),
   linear-gradient(to right,rgba(50,75,98,.38) 1px,transparent 1px)!important;
 background-size:100% 100%,10% 100%!important;
}
.spec-db .zero{color:#ffe05c!important;font-weight:700}.spec-db span[style*="0%"]{color:#ff7188}
.vu-scale{display:flex!important;justify-content:space-between!important;align-items:center!important;gap:0!important;width:100%!important}
.vu-scale span{flex:0 0 auto!important;font-size:8px!important;color:#71869f!important;white-space:nowrap!important}
.vu-scale .zero{color:#ffe05c!important;font-weight:700!important}
.vu-scale .pos{color:#ffad68!important}.vu-scale .hot{color:#ff7188!important;font-weight:700!important}

/* V0.6.4 — taller calibrated spectrum */
.spectrum-stage{height:270px!important;padding-left:52px!important;padding-bottom:34px!important;margin-top:12px!important}
.spec-grid{left:52px!important;right:8px!important;top:0!important;height:230px!important;border:1px solid #294057!important;
background-image:linear-gradient(to right,rgba(50,75,98,.40) 1px,transparent 1px)!important;background-size:10% 100%!important}
#spectrum{left:52px!important;top:0!important;width:calc(100% - 60px)!important;height:230px!important}
.spec-db{left:0!important;top:0!important;width:47px!important;height:230px!important}
.spec-hz{left:52px!important;right:8px!important;top:239px!important;height:22px!important}
.dbline{position:absolute;left:52px;right:8px;height:1px;background:#354e65;z-index:1;pointer-events:none}
.dbline.zero{height:2px;background:#ffe05c}.dbline.pos{background:#8a5155}

.master-complete{margin:15px 0;background:#070d14;border:1px solid #2b425b;border-radius:13px;padding:14px}.master-head{display:flex;justify-content:space-between;align-items:center}.mastermods{display:grid;grid-template-columns:repeat(3,1fr);gap:9px;margin-top:12px}.mastermod{background:#0a121c;border:1px solid #22364d;border-radius:9px;padding:10px}.mastermod label,.mastermod span{display:block;font-size:10px;color:#91a6bf;margin-bottom:7px}.mastermod b{float:right;color:#d7efff}.mastermod input[type=range]{width:100%;accent-color:#36d9ff}.cliprow{display:grid;grid-template-columns:auto 1fr auto;align-items:center;gap:10px;margin-top:11px;font-size:10px}.mastermeter{height:9px;background:#0b1118;border:1px solid #26394e;border-radius:8px;overflow:hidden}.mastermeter i{display:block;height:100%;width:0;background:linear-gradient(90deg,#49efa7,#e9e24c,#ff7188)}#clipLed{padding:4px 8px;border-radius:5px;background:#29151a;color:#76434d}#clipLed.on{background:#ff3151;color:white;box-shadow:0 0 12px #ff3151}.rackfx-on{box-shadow:inset 0 0 0 1px #36d9ff55}@media(max-width:900px){.mastermods{grid-template-columns:1fr 1fr}}

/* V0.7.1 unified final chain */
.knob-bank{display:grid;grid-template-columns:repeat(7,1fr);gap:10px;margin:15px 0;padding:13px;background:#080f17;border:1px solid #22364d;border-radius:11px}
.knobunit{text-align:center;min-width:88px}.knobunit label{display:block;font-size:10px;letter-spacing:1px;color:#8fa6bf;margin-bottom:7px}.knobunit b{display:block;font-size:10px;color:#d7efff;margin-top:7px}
.roundctl{-webkit-appearance:none;appearance:none;width:66px!important;height:66px!important;border-radius:50%!important;padding:0!important;background:radial-gradient(circle at 45% 40%,#26394c 0 28%,#101923 30% 52%,#05090e 54% 100%)!important;border:2px solid #344d65!important;box-shadow:inset 0 0 12px #000,0 0 0 2px #09111a!important;cursor:pointer}
.roundctl::-webkit-slider-runnable-track{height:4px;background:transparent}.roundctl::-webkit-slider-thumb{-webkit-appearance:none;width:12px;height:12px;border-radius:50%;background:#36d9ff;border:2px solid #d5f8ff;box-shadow:0 0 8px #36d9ff;margin-top:-4px}
@media(max-width:1050px){.knob-bank{grid-template-columns:repeat(4,1fr)}} 

/* V0.7.2 FULL FADER RACK */
.knob-bank{display:none!important}.fxfaders{display:grid;grid-template-columns:repeat(3,1fr);gap:9px;margin-top:14px}.faderbox{background:#09121b;border:1px solid #263b51;border-radius:9px;padding:10px 12px}.faderbox label{display:block;font-size:10px;color:#8fb0cc;letter-spacing:.35px;margin-bottom:9px}.faderbox label b{float:right;color:#e0f7ff}.faderbox input[type=range]{width:100%;accent-color:#36d9ff}.faderbox.output{border-color:#3a6c83;background:#0a1720}.faderbox input[type=checkbox]{vertical-align:middle;margin-left:5px}@media(max-width:900px){.fxfaders{grid-template-columns:1fr 1fr}}@media(max-width:580px){.fxfaders{grid-template-columns:1fr}}

/* ===== V0.7.7 EQ REBUILD FROM CLEAN V0.7.4 =====
   30 bands fit inside the SAME panel width: no internal scrollbar, no wrap.
*/
.eq24-wrap{overflow:hidden!important}
.eq24-head{min-width:0!important;width:100%!important}
.eq-channel{min-width:0!important;width:100%!important;overflow:hidden!important}
.eq24{
 display:grid!important;
 grid-template-columns:repeat(30,minmax(0,1fr))!important;
 gap:0!important;
 width:100%!important;
 max-width:100%!important;
 min-width:0!important;
 height:248px!important;
 padding:8px 2px!important;
 box-sizing:border-box!important;
 overflow:hidden!important
}
.eqband{
 width:100%!important;
 min-width:0!important;
 max-width:none!important;
 height:230px!important;
 overflow:visible!important
}
.eqband input[type=range]{
 width:172px!important;
 height:4px!important;
 margin:86px calc((100% - 172px)/2) 78px!important;
}
.eqband input[type=range]::-webkit-slider-thumb{
 width:13px!important;height:13px!important;border-radius:50%!important;
 background:#36d9ff!important;border:2px solid #d7f8ff!important;
 box-shadow:0 0 7px #36d9ff!important
}
.eq-channel.right .eqband input[type=range]::-webkit-slider-thumb{
 background:#a779ff!important;border-color:#eadfff!important;box-shadow:0 0 7px #a779ff!important
}
.eqband input[type=range]::-moz-range-thumb{
 width:11px!important;height:11px!important;border-radius:50%!important
}
.eqband .db{font-size:7px!important}
.eqband .hz{font-size:7px!important;letter-spacing:-.35px!important;white-space:nowrap!important}
.eqband.freq-peak input[type=range]::-webkit-slider-thumb{
 background:#ff334f!important;border-color:#ffe3e7!important;box-shadow:0 0 12px #ff334f!important
}
.eqband.freq-peak input[type=range]::-moz-range-thumb{
 background:#ff334f!important;border-color:#ffe3e7!important;box-shadow:0 0 12px #ff334f!important
}
.eqband.freq-peak .hz,.eqband.freq-peak .db{color:#ff5369!important;text-shadow:0 0 6px #ff334f}

/* V0.8.0 — rack session JSON */
.rack-session{margin-top:10px;border:1px solid #25364a;background:linear-gradient(180deg,#111923,#0b1119);
display:grid;grid-template-columns:1fr auto auto;gap:14px;align-items:center;padding:12px 14px;border-radius:6px}
.rack-session-copy{display:flex;flex-direction:column;gap:3px}.rack-session-copy small{color:#38d9ff;letter-spacing:1.5px;font-size:9px}
.rack-session-copy strong{font-size:11px;color:#d8e3ef;font-weight:600}
.rack-session-actions{display:flex;gap:8px}.rack-session-actions button{border:1px solid #34506a;background:#111e2b;color:#dcecff;
padding:9px 12px;border-radius:4px;font-size:10px;font-weight:700;cursor:pointer}
.rack-session-actions button:hover{border-color:#3bdcff;box-shadow:0 0 10px #18bfe833}
#rackSessionStatus{min-width:92px;text-align:right;font-size:9px;color:#7e91a5}
#rackSessionStatus.ok{color:#62e6a7}#rackSessionStatus.err{color:#ff6078}
@media(max-width:900px){.rack-session{grid-template-columns:1fr}.rack-session-actions{flex-wrap:wrap}#rackSessionStatus{text-align:left}}

/* ===== V0.8.1 PROJECT BUILDER ===== */
.project-builder{margin-top:14px}.project-head{display:grid;grid-template-columns:minmax(220px,1fr) repeat(4,auto);gap:12px;align-items:end;padding:12px}
.project-head>div{display:flex;flex-direction:column;gap:5px}.project-head small{font-size:8px;color:#55dfff;letter-spacing:1.4px}
.project-head input[type=text],#projectName{background:#09111a;border:1px solid #2c4054;color:#e7f4ff;padding:9px;border-radius:4px}
.project-head label{font-size:9px;color:#9eb0c2;padding-bottom:9px}
.format-grid{display:grid;grid-template-columns:repeat(7,minmax(110px,1fr));gap:8px;padding:0 12px 12px}
.format-card{border:1px solid #26384a;background:#0b121a;border-radius:6px;padding:10px;opacity:.58;transition:.15s}
.format-card.active{opacity:1;border-color:#37cce9;box-shadow:inset 0 0 16px #20bdda12}
.format-card label{display:flex;gap:6px;align-items:center;color:#e9f7ff;font-size:11px}.format-card small{display:block;color:#6f8294;font-size:8px;margin:4px 0 9px}
.format-card select{width:100%;background:#111c27;border:1px solid #30465c;color:#cfe5f5;font-size:9px;padding:6px;border-radius:3px}
.build-console{margin:0 12px 12px;border:1px solid #27394a;background:#080e14;border-radius:6px;overflow:hidden}
.build-title,.build-foot{display:flex;justify-content:space-between;align-items:center;padding:10px 12px;background:#0d151e}
.build-title span{font-size:10px;font-weight:800;letter-spacing:1.2px;color:#d9edf8}.build-title b{font-size:9px;color:#55dfff}
#jobRows{padding:8px 12px}.empty-jobs{padding:18px;color:#66798b;font-size:9px;text-align:center}
.jobrow{display:grid;grid-template-columns:145px 1fr 48px 90px;gap:10px;align-items:center;padding:6px 0;font-size:9px}
.jobname{color:#cbd9e5;font-weight:700}.jobbar{height:7px;background:#121e29;border-radius:8px;overflow:hidden}.jobbar i{display:block;height:100%;width:0;background:linear-gradient(90deg,#2bc8e8,#8a6cff);transition:width .25s}
.jobpct{text-align:right;color:#8094a6}.jobstate{color:#75899b}.jobrow.done .jobstate,.jobrow.done .jobpct{color:#58dda0}.jobrow.work .jobstate{color:#58dfff}.jobrow.error .jobstate{color:#ff6078}
.build-foot{border-top:1px solid #1d2c39}.build-foot span{font-size:9px;color:#8295a7}.build-foot button{border:1px solid #35d4ef;background:#102432;color:#dffaff;padding:9px 15px;border-radius:4px;font-weight:800;font-size:10px;cursor:pointer}
.build-foot button:disabled{opacity:.45;cursor:not-allowed}
@media(max-width:1150px){.format-grid{grid-template-columns:repeat(4,1fr)}.project-head{grid-template-columns:1fr 1fr 1fr}}

/* V0.8.2: Project Builder belongs to the post-upload workspace */
#projectBuilder{display:none}
#projectBuilder.ready{display:block}

/* V0.8.4 — proper final project download button */
.download-project{
 display:inline-flex!important;align-items:center;justify-content:center;gap:7px;
 margin-left:8px;padding:9px 16px;border:1px solid #39d9f4;border-radius:5px;
 background:linear-gradient(180deg,#123047,#0d2131);color:#e9fbff!important;
 text-decoration:none!important;font-size:10px;font-weight:800;letter-spacing:.35px;
 box-shadow:0 0 0 1px #09141d inset,0 0 14px #22c9e52b;
 transition:transform .12s,border-color .12s,box-shadow .12s
}
.download-project:before{content:"↓";font-size:14px;color:#58e6ff}
.download-project:hover{transform:translateY(-1px);border-color:#7beeff;box-shadow:0 0 18px #2bd8f34a}

/* V0.9.0 Wave Editor */
#wave{position:relative;cursor:crosshair}
.wave-editbar{display:flex;flex-wrap:wrap;gap:7px;align-items:center;margin:9px 0 13px;padding:9px;border:1px solid #24445d;border-radius:8px;background:#07121c}
.wave-editbar button{padding:8px 11px;border:1px solid #294c68;border-radius:6px;background:#0d1c2a;color:#e9f7ff;font-size:11px;font-weight:700}
.wave-editbar button:hover{border-color:#35d8f5}
.wave-editbar span{font:10px ui-monospace,monospace;color:#7edff3;padding:6px 8px;border-left:1px solid #24445d}

/* V0.9.2: compact waveform toolbar, never inherits analyser panel geometry */
.wave-editbar{display:flex!important;flex-wrap:wrap!important;gap:7px!important;align-items:center!important;width:100%!important;height:auto!important;min-height:0!important;margin:8px 0 12px!important;padding:8px!important;box-sizing:border-box!important}

/* V0.9.4 — unified controls without touching startup/upload code */
.modebar{display:flex;flex-wrap:wrap;gap:7px;align-items:center}
.modebar .editreadout{font:10px ui-monospace,monospace;color:#69dff5;padding:6px 7px;border-left:1px solid #29485d}

.mobile-audio-gate,.mobile-studio-nav{display:none}
@media(max-width:768px){
html,body{max-width:100%;overflow-x:hidden} .sidebar{display:none!important}
main,.main,.content,.console{width:100%!important;max-width:100%!important;margin:0!important;padding-left:7px!important;padding-right:7px!important;box-sizing:border-box}
.mobile-studio-nav{display:flex;position:sticky;top:0;z-index:50;gap:4px;overflow-x:auto;padding:6px;background:#07111b}
.mobile-studio-nav button{flex:0 0 auto;min-height:42px;padding:0 13px;border:1px solid #2c536f;border-radius:7px;background:#0b1b29;color:#dff8ff;font-weight:800}
.mobile-audio-gate{display:flex;flex-direction:column;gap:5px;margin:8px 0;padding:9px;border:1px solid #28516c;border-radius:8px;background:#07141f}
.mobile-audio-gate button{min-height:50px;border:1px solid #32d7f4;border-radius:7px;background:#0d3144;color:#fff;font-weight:900}
#wave{width:100%!important;max-width:100%!important;overflow-x:auto!important;-webkit-overflow-scrolling:touch}
#canvas{min-width:100%;height:150px!important;touch-action:pan-x}
.transport,.modebar{display:flex!important;flex-wrap:wrap!important;gap:6px!important}
.transport button,.modebar button,.smallbtn{min-height:42px!important;padding:8px 10px!important}
.liveboard{display:flex!important;flex-direction:column!important;width:100%!important}
.spectrum-wrap,.monitor-panel{width:100%!important;max-width:100%!important}
.eq-wrap,.eq,.dual-eq{width:100%!important;max-width:100%!important;overflow-x:auto!important;-webkit-overflow-scrolling:touch}
.eqbank,.eq-grid,.eq-channel{min-width:980px!important}
.master-rack,.rack{width:100%!important;max-width:100%!important;overflow-x:auto!important;-webkit-overflow-scrolling:touch}
.rack-grid,.rack-controls{min-width:1050px!important}
input[type=range]{touch-action:none}
#projectBuilder{width:100%!important;max-width:100%!important}
.format-grid,.formats{grid-template-columns:repeat(2,minmax(0,1fr))!important}
.download-project{display:flex!important;width:100%;min-height:48px;margin:9px 0!important;box-sizing:border-box}
}
@media(max-width:430px){.format-grid,.formats{grid-template-columns:1fr!important}.modebar button{flex:1 1 auto}}


/* V1.1 — simplified waveform player + brand link corrective */
.brand a{
 color:#edf5ff!important;
 text-decoration:none!important;
 display:inline-block!important;
}
.brand a:visited,.brand a:hover,.brand a:active{color:#edf5ff!important;text-decoration:none!important}
.brand a b{color:#36d9ff!important}
.editor-hidden{display:none!important}
/* Keep legacy editor DOM for JS compatibility, but remove it from the Studio UI. */
.modebar,.livehint{display:none!important}
.selection{display:none!important}
.wave{cursor:pointer!important}
.player-controls{margin-top:4px}
.player-controls #play,.player-controls #pause,.player-controls #stop{min-width:92px}

/* V1.1.2 waveform navigation feedback */
#wave{cursor:pointer!important}
#wave:after{
 content:"CLIC = NAVIGUER";
 position:absolute;right:10px;top:8px;z-index:4;
 font-size:8px;letter-spacing:.8px;color:#6d879b;
 background:#071019cc;border:1px solid #20384c;border-radius:10px;padding:4px 7px;
 pointer-events:none;opacity:.72
}
#wave:hover:after{color:#36d9ff;border-color:#2b718b}

/* V1.1.4 — standardized audio measurement units */
.spec-db .zero,.vu-scale .zero{color:#ffe05c!important;font-weight:700!important}


/* SAFE EQ PATCH — V1.1.5a
   CSS only: does not touch index.php, mp3-studio.php or JavaScript.
*/
.eqband input[type="range"]::-webkit-slider-thumb,
.eq-channel.left .eqband input[type="range"]::-webkit-slider-thumb,
.eq-channel.right .eqband input[type="range"]::-webkit-slider-thumb{
  -webkit-appearance:none !important;
  width:12px !important;
  height:12px !important;
  border-radius:50% !important;
  background:#343a40 !important;
  border:2px solid #050608 !important;
  box-shadow:0 0 0 1px #626a73 !important;
}

.eqband input[type="range"]::-moz-range-thumb,
.eq-channel.left .eqband input[type="range"]::-moz-range-thumb,
.eq-channel.right .eqband input[type="range"]::-moz-range-thumb{
  width:10px !important;
  height:10px !important;
  border-radius:50% !important;
  background:#343a40 !important;
  border:2px solid #050608 !important;
  box-shadow:0 0 0 1px #626a73 !important;
}

/* Peak wins over BOTH channel-specific thumb rules. */
.eq-channel.left .eqband.freq-peak input[type="range"]::-webkit-slider-thumb,
.eq-channel.right .eqband.freq-peak input[type="range"]::-webkit-slider-thumb{
  width:10px !important;
  height:10px !important;
  background:#ff334f !important;
  border:2px solid #120207 !important;
  box-shadow:0 0 6px rgba(255,51,79,.85) !important;
}

.eq-channel.left .eqband.freq-peak input[type="range"]::-moz-range-thumb,
.eq-channel.right .eqband.freq-peak input[type="range"]::-moz-range-thumb{
  width:8px !important;
  height:8px !important;
  background:#ff334f !important;
  border:2px solid #120207 !important;
  box-shadow:0 0 6px rgba(255,51,79,.85) !important;
}

.eq-channel.left .eqband.freq-peak .hz,
.eq-channel.left .eqband.freq-peak .db,
.eq-channel.right .eqband.freq-peak .hz,
.eq-channel.right .eqband.freq-peak .db{
  color:#ff5369 !important;
  text-shadow:0 0 5px rgba(255,51,79,.75) !important;
}

/* V1.3.0 — uniform effect modules */
.effects-rack{margin-top:18px;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.effects-title{grid-column:1/-1}.effects-title h3{margin:0 0 6px;font-size:13px;color:#b7ddeb}.effects-title p{margin:0;color:#91a6b8;font-size:11px}.effect-module{border:1px solid #2d4356;border-radius:12px;background:#09121b;overflow:hidden}.effect-module>header{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:14px;background:#0d1a26}.effect-module h4{margin:0 0 5px;font-size:12px;color:#dbeaf5}.effect-module small{font-size:10px;color:#90a7ba}.effect-settings{padding:12px;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.effect-control{display:block;font-size:10px;color:#9bb3c6}.effect-control output{float:right;color:#d8f0fa}.effect-control input[type=range]{display:block;width:100%;margin-top:9px;accent-color:#59d0e9}.effect-control select{width:100%;margin-top:9px;background:#101f2c;color:#d6e9f4;border:1px solid #355066;border-radius:6px;padding:7px}.effect-switch{display:flex;align-items:center;gap:6px;cursor:pointer;font-size:10px;color:#849aaa;flex-shrink:0}.effect-switch input{position:absolute;width:1px;height:1px;opacity:0}.switch-track{width:30px;height:17px;border:1px solid #466075;background:#172536;border-radius:20px;position:relative}.switch-track:after{content:'';position:absolute;width:11px;height:11px;border-radius:50%;background:#8194a4;top:2px;left:2px;transition:transform .15s}.effect-switch input:checked+.switch-track{border-color:#59d0e9;background:#164758}.effect-switch input:checked+.switch-track:after{transform:translateX(13px);background:#9ceafb}.effect-switch input:focus-visible+.switch-track{outline:2px solid white;outline-offset:3px}.effect-module.active{border-color:#4690a7}.effect-module .effect-settings{opacity:.55}.effect-module.active .effect-settings{opacity:1}.uniform-switch{float:right;display:flex;align-items:center;gap:5px;margin-left:8px}.faderbox label .uniform-switch input{margin:0}@media(max-width:800px){.effects-rack{grid-template-columns:1fr}}@media(max-width:420px){.effect-settings{grid-template-columns:1fr}}
.effect-switch{position:relative}.effect-switch input[type=checkbox]{position:absolute;inset:0;width:100%;height:100%;margin:0;opacity:0;z-index:2;cursor:pointer}

/* Export progress remains readable throughout mastering and upload. */
#buildStatus{font-size:14px;line-height:1.5;color:#bfefff;white-space:normal}
.build-foot{gap:16px;align-items:center}
.member-auth-overlay{position:fixed;inset:0;z-index:10000;background:#000c;display:grid;place-items:center;padding:16px}.member-auth-overlay section{width:min(520px,100%);height:min(680px,90vh);background:#081721;border:1px solid #36d9ff;border-radius:16px;padding:12px;display:flex;flex-direction:column}.member-auth-overlay button{align-self:flex-end;padding:8px 16px;border:1px solid #456373;background:#102330;color:white;border-radius:7px}.member-auth-overlay iframe{border:0;width:100%;flex:1;margin-top:8px;border-radius:12px}

.member-access-note{font-size:12px;line-height:1.6;padding:12px 15px;border:1px solid #25445b;border-radius:9px;background:#0b1723;color:#a7bdca}.member-access-note a{color:#72dfff}
