:root{font-family:Inter,system-ui,sans-serif;color:#e8edf2;background:#0c1116}*{box-sizing:border-box}body{margin:0}header{min-height:72px;padding:10px 22px;display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid #29323b;background:#121920;gap:14px}.brand{display:flex;gap:12px;align-items:center}.brand>span{background:#ef4136;color:white;font-weight:900;padding:9px 8px;border-radius:4px}.brand strong{display:block}.brand small{color:#8e9aa5}.hdr,.toolbar{display:flex;gap:8px;flex-wrap:wrap}button{background:#202a33;color:#e8edf2;border:1px solid #35424d;border-radius:5px;padding:8px 11px;font-weight:650;cursor:pointer}button:hover{background:#293640}button:disabled{opacity:.4;cursor:not-allowed}.primary{background:#c9352d;border-color:#e24b42}.primary:hover{background:#df4037}main{max-width:1280px;margin:auto;padding:18px}.toolbar{padding:10px 0}.spacer{flex:1}.divider{width:1px;background:#35424d;margin:2px 2px}.sessionbar{display:flex;gap:18px;justify-content:space-between;align-items:center;padding:12px 16px;background:#151d24;border:1px solid #2b3640;border-radius:7px 7px 0 0;flex-wrap:wrap}.sessionbar #dirty{color:#ef4136;margin-left:5px}.sessionbar #clock{font-variant-numeric:tabular-nums;font-weight:800}.sessionbar #status{font-size:12px;color:#9eabb5;margin-left:12px}.backtime{display:flex;align-items:center;gap:8px;color:#9eabb5;font-size:12px}.backtime input{width:92px;background:#0f151a;border:1px solid #35424d;color:#e8edf2;border-radius:4px;padding:5px 7px}.backtime #backtimeReadout{font-weight:800;color:#d6e0e7}.log{border:1px solid #2b3640;border-top:0;min-height:340px;background:#0f151a}.event{display:grid;grid-template-columns:52px 1fr 110px;align-items:stretch;border-bottom:1px solid #29323b;min-height:78px;position:relative}.event.dragging{opacity:.45}.event.playingEvent{background:#17261f}.num{display:flex;align-items:center;justify-content:center;color:#7e8b95;font-weight:800;border-right:1px solid #29323b}.body{padding:10px 14px;min-width:0}.event.selected{background:#18242d;box-shadow:inset 3px 0 #ef4136}.topline{display:flex;align-items:center;gap:8px;min-width:0}.name{font-weight:800;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.note{font-size:11px;color:#b3bec6;font-style:italic;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.badge{font-size:11px;padding:2px 6px;border:1px solid #485661;border-radius:10px;color:#aebac3;white-space:nowrap}.loop{color:#ffd166}.missing{color:#ff8b84;border-color:#8e403b}.meta{font-size:12px;color:#91a0ab;margin-top:6px;display:flex;gap:14px;flex-wrap:wrap}.path{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;max-width:500px}.dur{display:flex;flex-direction:column;gap:7px;align-items:center;justify-content:center;font-variant-numeric:tabular-nums;color:#cbd5dc;border-left:1px solid #29323b}.segueBtn{font-size:11px;padding:5px 9px;min-width:66px;background:#18232b;border-color:#465866}.segueBtn:hover{background:#24333e}.group{border-left:4px solid #6c91bf}.group .children{margin-top:8px;border-top:1px dashed #34424d}.child{display:grid;grid-template-columns:24px 1fr auto;gap:8px;padding:8px 4px;border-bottom:1px dashed #28343d;align-items:center}.child:last-child{border-bottom:0}.child.selectedChild{background:#1c2a34}.ctrl{display:flex;gap:6px;align-items:center;flex-wrap:wrap}.waveWrap{height:34px;background:#111b22;border:1px solid #283640;border-radius:4px;margin-top:8px;position:relative;overflow:hidden}.waveCanvas{width:100%;height:100%;display:block}.marker{position:absolute;top:0;bottom:0;width:2px;pointer-events:none}.marker.intro{background:#58a6ff}.marker.eom{background:#ffb347}.playline{position:absolute;top:0;bottom:0;width:2px;background:#ef4136;pointer-events:none;display:none}.inspector{margin-top:12px;border:1px solid #2b3640;background:#121920;border-radius:6px;padding:14px}.inspectorEmpty{color:#84919a}.inspectorGrid{display:grid;grid-template-columns:repeat(6,minmax(120px,1fr));gap:12px}.field{display:flex;flex-direction:column;gap:5px;font-size:12px;color:#9eabb5}.field input,.field select{background:#0e151a;color:#e8edf2;border:1px solid #35424d;border-radius:4px;padding:7px;min-width:0}.field.wide{grid-column:span 2}.check{display:flex;align-items:center;gap:7px;margin-top:22px;font-size:12px;color:#d7e0e6}.groupInfo{grid-column:1/-1;padding-top:10px;border-top:1px solid #2d3943;color:#9eabb5;font-size:12px}.help{margin-top:14px;color:#9ca9b3;font-size:13px;display:grid;grid-template-columns:125px 1fr;gap:10px;padding:12px;border:1px solid #29323b;border-radius:6px}@media(max-width:850px){header{align-items:flex-start;flex-direction:column}main{padding:10px}.event{grid-template-columns:40px 1fr 78px}.path{max-width:230px}.inspectorGrid{grid-template-columns:repeat(2,minmax(0,1fr))}.field.wide{grid-column:span 2}}

.meters{display:grid;grid-template-columns:1fr 1fr;gap:12px;padding:9px 12px;background:#10171d;border-left:1px solid #2b3640;border-right:1px solid #2b3640}.meters>div{display:grid;grid-template-columns:48px 1fr;align-items:center;gap:8px;font-size:11px;color:#8f9ba5}.meter{height:18px;background:#080d11;border:1px solid #2d3942;border-radius:3px;position:relative;overflow:hidden}.meter i{position:absolute;inset:0 auto 0 0;width:0;background:linear-gradient(90deg,#3ca66b 0 72%,#d6a33a 72% 90%,#d64a40 90%);transition:width .06s linear}.meter b{position:absolute;right:5px;top:1px;font-size:10px;color:#e8edf2;font-variant-numeric:tabular-nums;text-shadow:0 1px 2px #000}.backtime select{background:#0f151a;border:1px solid #35424d;color:#e8edf2;border-radius:4px;padding:5px 7px}.takeRow{grid-column:1/-1;display:flex;gap:8px;align-items:end;border-top:1px solid #2d3943;padding-top:10px}.takeRow .field{min-width:220px}.takeRow button{margin-bottom:1px}

/* Linked elements remain visually intact as full waveform tracks. */
.group .children{display:grid;gap:0;margin-top:10px}.group .child{grid-template-columns:24px minmax(0,1fr) auto;align-items:start;padding:10px 4px}.group .child .waveWrap{height:34px}.group .child .ctrl{padding-top:4px}
.recPrimary{font-weight:800;background:#7c2028!important;border-color:#b84853!important;color:#fff!important}

/* SEGUE sits directly on the divider between sequential session events. */
.segueDivider{height:0;position:relative;z-index:4;pointer-events:none}.segueDivider span{display:none}.segueDivider .segueBtn{position:absolute;left:50%;top:0;transform:translate(-50%,-50%);pointer-events:auto;background:#18232b;border-color:#566977;box-shadow:0 0 0 5px #0f151a;padding:4px 10px}.segueDivider+.event{border-top:0}.dur .segueBtn{display:none}

.deleteRow{grid-column:1/-1;display:flex;align-items:center;gap:12px;margin-top:8px;padding-top:10px;border-top:1px solid var(--line,#39414d)}.deleteRow .danger{border-color:#8f3b3b;color:#ffd6d6;background:#4a2020}.deleteRow span{font-size:12px;opacity:.72}

.num{flex-direction:column;gap:5px}.vpBtn{font-size:10px;line-height:1;padding:4px 6px;min-width:30px;background:#18232b;border-color:#465866}.vpBtn.active{background:#c9352d;border-color:#ef665e;color:#fff}.vpBadge{color:#ff9b94;border-color:#8e403b}.replaceBtn{font-size:10px;padding:5px 7px}


/* Mixdown mastering panel */
.mixDialog{border:1px solid #35424d;border-radius:8px;padding:0;background:#121920;color:#e8edf2;min-width:min(520px,calc(100vw - 28px));box-shadow:0 18px 60px #0009}.mixDialog::backdrop{background:#05080bb8}.mixPanel{padding:18px;display:grid;gap:14px}.mixTitle{display:flex;justify-content:space-between;align-items:flex-start;gap:12px;border-bottom:1px solid #2b3640;padding-bottom:12px}.mixTitle strong{display:block;font-size:15px}.mixTitle small{display:block;color:#8e9aa5;margin-top:3px}.mixTitle button{font-size:22px;line-height:1;padding:2px 8px}.mixField{display:grid;gap:6px;font-size:12px;color:#9eabb5}.mixField select{background:#0e151a;color:#e8edf2;border:1px solid #35424d;border-radius:4px;padding:9px}.mixDesc{min-height:42px;padding:10px 12px;background:#0e151a;border:1px solid #29323b;border-radius:5px;color:#b8c3cb;font-size:12px;line-height:1.45}.mixProgress{min-height:18px;color:#d6e0e7;font-size:12px;font-variant-numeric:tabular-nums}.mixActions{display:flex;justify-content:flex-end;gap:8px;border-top:1px solid #2b3640;padding-top:12px}
.sweeperClip{position:absolute;bottom:2px;height:12px;min-width:5px;background:#c9352dcc;border:1px solid #ff766d;border-radius:2px;z-index:3;cursor:ew-resize;overflow:hidden}.sweeperClip span{font-size:8px;line-height:10px;color:#fff;padding:0 3px;white-space:nowrap}.sweeperSection{grid-column:1/-1;border-top:1px solid #2d3943;padding-top:10px;display:grid;gap:7px}.sweeperHead{display:flex;align-items:center;justify-content:space-between;color:#aebac3;font-size:12px}.sweeperRow{display:grid;grid-template-columns:minmax(140px,1fr) auto 110px 90px 80px auto;gap:7px;align-items:center}.sweeperRow input,.sweeperRow select{background:#0e151a;color:#e8edf2;border:1px solid #35424d;border-radius:4px;padding:6px;min-width:0}.sweeperName{font-size:12px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.sweeperEmpty{font-size:12px;color:#7f8c96}

.marker.bom{background:#d86cff}
.eventPlayBtn{font-size:15px;line-height:1;padding:3px 6px;min-width:30px;background:transparent;border-color:#465866;color:#d8e2e8}.eventPlayBtn:hover{background:#24333e;color:#fff}
.grid2{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.mixField input{width:100%;padding:8px;border-radius:6px;border:1px solid #40505d;background:#0f171d;color:#e8f0f5}@media(max-width:650px){.grid2{grid-template-columns:1fr}}

.scotPreflight{display:flex;align-items:center;gap:10px;margin-top:10px}.preflightGood{color:#8fe3a1;font-weight:700}.preflightBad{color:#ff9a9a;font-weight:700}.sweeperClip{cursor:ew-resize}.vpBadge{font-weight:800}.hdr button:disabled{opacity:.4}

/* Dedicated sweeper overlay lane */
.waveStack{display:grid;gap:6px;margin-top:8px}
.waveStack>.waveWrap{margin-top:0}
.overlayLane{border:1px solid #2f3b45;border-radius:5px;background:#0c141a;overflow:hidden}
.overlayLaneTitle{display:flex;justify-content:space-between;align-items:center;gap:10px;padding:4px 7px;border-bottom:1px solid #28343d;color:#8f9ca6;font-size:9px;font-weight:800;letter-spacing:.08em}
.overlayLaneTitle small{font-size:9px;font-weight:500;letter-spacing:0;color:#697983}
.overlayTrack{display:grid;grid-template-columns:minmax(90px,150px) minmax(0,1fr);align-items:center;min-height:28px;border-bottom:1px solid #202c35}
.overlayTrack:last-child{border-bottom:0}
.overlayTrackLabel{padding:0 7px;color:#b9c5cd;font-size:10px;font-weight:700;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.overlayTrackLabel[data-position]::after{content:'  ' attr(data-position);color:#7f8e98;font-variant-numeric:tabular-nums;font-weight:500}
.overlayRail{height:26px;position:relative;border-left:1px solid #26333c;background:linear-gradient(90deg,transparent 24.8%,#17222a 25%,transparent 25.2%,transparent 49.8%,#17222a 50%,transparent 50.2%,transparent 74.8%,#17222a 75%,transparent 75.2%);overflow:hidden}
.sweeperClip{position:absolute;top:2px;bottom:2px;height:auto;min-width:8px;background:#6f2826;border:1px solid #d95e56;border-radius:3px;z-index:3;cursor:ew-resize;overflow:hidden;touch-action:none}
.sweeperClip .sweeperWaveCanvas{position:absolute;inset:0;width:100%;height:100%;display:block;opacity:.9}
.sweeperClip span{position:absolute;left:3px;top:2px;right:3px;z-index:2;font-size:8px;line-height:10px;color:#fff;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;text-shadow:0 1px 2px #000}
.group .child .waveStack{margin-top:8px}
@media(max-width:700px){.overlayTrack{grid-template-columns:78px minmax(0,1fr)}.overlayTrackLabel{font-size:9px;padding:0 5px}.overlayLaneTitle small{display:none}}
