:root{
    --bg:#1a1714;
    --bg-grain:#1d1a16;
    --panel:#242019;
    --panel-raised:#2b2620;
    --line:#3c3429;
    --line-soft:#322c24;
    --amber:#e3a13c;
    --amber-soft:rgba(227,161,60,.18);
    --teal:#5fb3a3;
    --red:#e0584c;
    --cream:#f3ece1;
    --muted:#a89a8b;
    --muted-dim:#736658;
    --font-display:'Space Grotesk',sans-serif;
    --font-mono:'JetBrains Mono',monospace;
    --font-body:'Inter',sans-serif;
  }
  *{box-sizing:border-box;}
  html,body{margin:0;padding:0;}
  body{
    background:var(--bg);
    background-image:
      radial-gradient(ellipse at top left, rgba(227,161,60,.05), transparent 50%),
      radial-gradient(ellipse at bottom right, rgba(95,179,163,.04), transparent 50%);
    color:var(--cream);
    font-family:var(--font-body);
    min-height:100vh;
    padding:28px 20px 60px;
  }
  .app{max-width:1180px;margin:0 auto;}

  /* ===== Header ===== */
  header{
    display:flex;justify-content:space-between;align-items:flex-end;
    flex-wrap:wrap;gap:18px;
    margin-bottom:26px;padding-bottom:20px;
    border-bottom:1px solid var(--line);
  }
  .brand{display:flex;flex-direction:column;gap:6px;}
  .brand .mark{
    font-family:var(--font-display);font-weight:800;font-size:34px;letter-spacing:.08em;
    color:var(--cream); text-shadow:0 0 18px rgba(227,161,60,.12);
  }
  .brand .mark span{color:var(--amber);font-size:1.42em;letter-spacing:.02em;display:inline-block;transform:translateY(5px) skewX(-6deg);text-shadow:0 0 22px rgba(227,161,60,.35);}
  .brand .tag{font-size:13px;color:var(--muted);font-family:var(--font-body);}
  .file-zone{
    display:flex;align-items:center;gap:12px;flex-wrap:wrap;
  }
  .file-zone .filename{
    font-family:var(--font-mono);font-size:12px;color:var(--muted);
    max-width:240px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;
  }
  .btn{
    font-family:var(--font-display);font-weight:600;font-size:13px;letter-spacing:.04em;
    padding:11px 20px;border-radius:7px;border:1px solid var(--line);
    background:var(--panel-raised);color:var(--cream);cursor:pointer;
    transition:border-color .15s, background .15s, color .15s;
    text-transform:uppercase;
  }
  .btn:hover{border-color:var(--amber);color:var(--amber);}
  .btn.primary{background:var(--amber);color:#241c10;border-color:var(--amber);}
  .btn.primary:hover{background:#f0b157;color:#241c10;}
  .btn:disabled{opacity:.35;cursor:not-allowed;}
  .btn:disabled:hover{border-color:var(--line);color:var(--cream);}
  .btn.mode-active{
    border-color:var(--teal);
    color:var(--cream);
    background:linear-gradient(135deg, rgba(95,179,163,.34), rgba(227,161,60,.18));
    box-shadow:0 0 22px rgba(95,179,163,.22), inset 0 0 0 1px rgba(255,255,255,.04);
  }
  input[type=file]{display:none;}

  .processing-banner{
    display:none;align-items:center;gap:12px;margin:0 0 18px;padding:13px 16px;border-radius:10px;
    border:1px solid rgba(227,161,60,.48);background:linear-gradient(90deg,rgba(227,161,60,.18),rgba(95,179,163,.12));
    font-family:var(--font-mono);font-size:12px;color:var(--cream);box-shadow:0 0 26px rgba(227,161,60,.12);
  }
  .processing-banner.active{display:flex;}
  .processing-spinner{width:14px;height:14px;border-radius:50%;border:2px solid rgba(243,236,225,.25);border-top-color:var(--amber);animation:spinReel .8s linear infinite;}
  .export-render-overlay{
    display:none;position:fixed;inset:0;z-index:100000;
    background:radial-gradient(circle at 50% 42%,rgba(95,179,163,.18),rgba(8,7,6,.94) 58%);
    align-items:center;justify-content:center;text-align:center;color:var(--cream);padding:24px;
  }
  .export-render-overlay.active{display:flex;}
  .export-render-card{
    width:min(520px,100%);border:1px solid rgba(227,161,60,.34);border-radius:18px;
    background:linear-gradient(180deg,rgba(43,38,32,.98),rgba(17,14,12,.98));
    box-shadow:0 28px 80px rgba(0,0,0,.55),inset 0 1px 0 rgba(255,255,255,.05);
    padding:30px 28px;
  }
  .export-reel{
    width:126px;height:126px;border-radius:50%;margin:0 auto 20px;
    border:7px solid rgba(243,236,225,.10);border-top-color:var(--amber);border-right-color:var(--teal);
    animation:spinReel 1s linear infinite;box-shadow:0 0 48px rgba(227,161,60,.22),inset 0 0 24px rgba(95,179,163,.08);
  }
  .export-render-format{font-family:var(--font-display);font-size:28px;font-weight:800;letter-spacing:.16em;text-transform:uppercase;color:var(--amber);}
  .export-render-text{margin-top:8px;font-family:var(--font-mono);font-size:12px;color:var(--muted);letter-spacing:.06em;}
  .export-render-bar{height:10px;border-radius:999px;border:1px solid rgba(255,255,255,.08);background:#171411;overflow:hidden;margin-top:22px;}
  .export-render-bar span{display:block;height:100%;width:var(--export-progress,0%);border-radius:999px;background:linear-gradient(90deg,var(--teal),var(--amber));box-shadow:0 0 18px rgba(227,161,60,.28);transition:width .28s ease;}
  .export-render-percent{margin-top:10px;font-family:var(--font-mono);font-size:11px;color:var(--muted-dim);}
  .workflow-card{
    margin:0 0 18px;padding:16px 18px;border-radius:12px;background:rgba(0,0,0,.13);border:1px solid var(--line);
    color:var(--muted);font-size:12px;line-height:1.6;
  }
  .workflow-card strong{color:var(--cream);}
  .workflow-steps{display:grid;grid-template-columns:repeat(4,1fr);gap:10px;margin-top:10px;}
  .workflow-step{padding:10px;border-radius:9px;background:var(--panel);border:1px solid var(--line-soft);font-family:var(--font-mono);font-size:10px;}
  .workflow-step b{display:block;color:var(--amber);font-family:var(--font-display);font-size:11px;letter-spacing:.08em;text-transform:uppercase;margin-bottom:4px;}
  @media (max-width:760px){.workflow-steps{grid-template-columns:1fr 1fr;}}
  @media (max-width:480px){.workflow-steps{grid-template-columns:1fr;}}
  canvas#wave.rhythm{transition:transform .06s linear, filter .06s linear;}

  /* ===== Drop overlay ===== */
  .dropzone{
    margin-bottom:24px;border:1px dashed var(--line);border-radius:10px;
    padding:34px;text-align:center;color:var(--muted-dim);
    font-family:var(--font-mono);font-size:13px;letter-spacing:.02em;
    transition:border-color .15s, color .15s, background .15s;
  }
  .dropzone.drag{border-color:var(--amber);color:var(--amber);background:var(--amber-soft);}
  .dropzone.hidden{display:none;}

  /* ===== Loudness ladder (signature element) ===== */
  .ladder-card{
    background:var(--panel);border:1px solid var(--line);border-radius:10px;
    padding:22px 26px 26px;margin-bottom:24px;
  }
  .ladder-head{
    display:flex;justify-content:space-between;align-items:baseline;flex-wrap:wrap;gap:10px;
    margin-bottom:18px;
  }
  .ladder-head h2{
    font-family:var(--font-display);font-size:14px;letter-spacing:.12em;
    margin:0;color:var(--muted);text-transform:uppercase;font-weight:600;
  }
  .ladder-readout{display:flex;gap:28px;font-family:var(--font-mono);}
  .ladder-readout .stat{text-align:right;}
  .ladder-readout .stat .label{font-size:10px;color:var(--muted-dim);letter-spacing:.1em;text-transform:uppercase;}
  .ladder-readout .stat .val{font-size:20px;font-weight:600;}
  .ladder-readout .stat.orig .val{color:var(--muted);}
  .ladder-readout .stat.mastered .val{color:var(--amber);}
  .ladder-readout .stat.delta .val{color:var(--teal);}

  .ladder-track{
    position:relative;height:54px;margin:0 4px 6px;
  }
  .ladder-bar{
    position:absolute;top:22px;left:0;right:0;height:10px;border-radius:6px;
    background:linear-gradient(to right,
      #3d5a52 0%, #5fb3a3 38%, #e3a13c 70%, #e0584c 92%, #e0584c 100%);
    opacity:.85;
  }
  .ladder-ticks{position:absolute;top:34px;left:0;right:0;height:18px;}
  .tick{
    position:absolute;top:0;transform:translateX(-50%);
    display:flex;flex-direction:column;align-items:center;gap:2px;
    font-family:var(--font-mono);font-size:9px;color:var(--muted-dim);white-space:nowrap;
  }
  .tick .tickmark{width:1px;height:6px;background:var(--line);}
  .pointer{
    position:absolute;top:0;transform:translate(-50%,0);
    width:0;height:0;transition:left .5s ease;
  }
  .pointer .tri{
    width:0;height:0;border-left:6px solid transparent;border-right:6px solid transparent;
    border-top:9px solid var(--muted);margin:0 auto;
  }
  .pointer.mastered .tri{border-top-color:var(--amber);}
  .pointer.target .tri{border-top-color:var(--teal);}
  .pointer .ptag{
    font-family:var(--font-mono);font-size:10px;text-align:center;margin-top:2px;
    color:var(--muted);white-space:nowrap;
  }
  .pointer.mastered .ptag{color:var(--amber);}
  .pointer.target .ptag{color:var(--teal);}

  /* ===== Layout grid ===== */
  .grid{display:grid;grid-template-columns:1.1fr 1fr;gap:22px;}
  @media (max-width:880px){.grid{grid-template-columns:1fr;}}



  /* ===== Auto Master Assistant ===== */
  .assistant-card{
    background:linear-gradient(135deg, rgba(227,161,60,.13), rgba(95,179,163,.08));
    border:1px solid var(--line);border-radius:10px;
    padding:18px 20px 20px;
  }
  .assistant-card .assistant-title{
    display:flex;justify-content:space-between;align-items:center;gap:12px;margin-bottom:14px;
  }
  .assistant-card h3{
    margin:0;font-family:var(--font-display);font-size:13px;letter-spacing:.14em;
    text-transform:uppercase;color:var(--cream);font-weight:700;
  }
  .badge{
    font-family:var(--font-mono);font-size:10px;letter-spacing:.08em;text-transform:uppercase;
    color:var(--amber);border:1px solid rgba(227,161,60,.45);border-radius:999px;padding:5px 9px;
    background:rgba(227,161,60,.08);
  }
  .assistant-grid{display:grid;grid-template-columns:1fr 1fr;gap:12px;margin-bottom:14px;}
  @media (max-width:520px){.assistant-grid{grid-template-columns:1fr;}}
  .select-wrap label{
    display:block;font-size:10px;letter-spacing:.11em;text-transform:uppercase;color:var(--muted);
    margin-bottom:7px;font-family:var(--font-mono);
  }
  select{
    width:100%;background:var(--panel-raised);border:1px solid var(--line);border-radius:7px;
    color:var(--cream);padding:11px 12px;font-family:var(--font-body);font-size:13px;
  }
  .assistant-actions{display:flex;gap:10px;flex-wrap:wrap;margin-bottom:12px;}
  .analysis-box{
    border:1px solid var(--line-soft);background:rgba(0,0,0,.12);border-radius:8px;
    padding:12px;font-family:var(--font-mono);font-size:11px;color:var(--muted);line-height:1.65;
  }
  .analysis-box strong{color:var(--cream);font-weight:600;}
  .assistant-note{font-size:10px;color:var(--muted-dim);font-family:var(--font-mono);line-height:1.55;margin-top:-6px;margin-bottom:12px;}

  /* ===== Studio console vibe ===== */
  .app{
    background:linear-gradient(180deg, rgba(43,38,32,.78), rgba(26,23,20,.92));
    border:1px solid rgba(227,161,60,.16);
    border-radius:22px;
    padding:24px;
    box-shadow:0 28px 70px rgba(0,0,0,.45), inset 0 1px 0 rgba(255,255,255,.04);
  }
  .studio-deck{
    display:flex;align-items:center;justify-content:center;gap:22px;
    margin:0 0 24px;padding:18px 22px;border-radius:16px;
    background:linear-gradient(180deg,#201c17,#15130f);
    border:1px solid var(--line);
    box-shadow:inset 0 12px 30px rgba(0,0,0,.28);
  }
  .reel{
    width:78px;height:78px;border-radius:50%;position:relative;
    background:radial-gradient(circle at center, #111 0 12%, #5b5145 13% 18%, #181511 19% 100%);
    border:2px solid #55483a;
    animation:spinReel 4.5s linear infinite;
    box-shadow:0 0 24px rgba(227,161,60,.08);
  }
  .reel:before,.reel:after{content:"";position:absolute;left:50%;top:50%;width:10px;height:31px;background:#3a3229;border-radius:8px;transform-origin:50% 0;}
  .reel:before{transform:rotate(0deg) translate(-50%, -6px);}
  .reel:after{transform:rotate(120deg) translate(-50%, -6px);box-shadow:0 0 0 0 #000;}
  .hub{position:absolute;left:50%;top:50%;width:18px;height:18px;border-radius:50%;background:var(--amber);transform:translate(-50%,-50%);}
  @keyframes spinReel{to{transform:rotate(360deg)}}
  .deck-panel{min-width:240px;text-align:center;}
  .deck-title{font-family:var(--font-display);font-size:12px;letter-spacing:.18em;text-transform:uppercase;color:var(--muted);margin-bottom:12px;}
  .deck-lights{display:flex;gap:8px;justify-content:center;}
  .deck-lights span{width:48px;height:10px;border-radius:999px;background:linear-gradient(90deg,#5fb3a3,#e3a13c);opacity:.65;box-shadow:0 0 18px rgba(227,161,60,.18);}

  /* ===== Modules (rack) ===== */
  .rack{display:flex;flex-direction:column;gap:16px;}
  .module{
    background:var(--panel);border:1px solid var(--line);border-radius:10px;
    padding:18px 20px 20px;
  }
  .module-head{
    display:flex;justify-content:space-between;align-items:center;margin-bottom:14px;
  }
  .module-head h3{
    margin:0;font-family:var(--font-display);font-size:13px;letter-spacing:.14em;
    text-transform:uppercase;color:var(--cream);font-weight:600;
  }
  .module-head .sub{font-size:11px;color:var(--muted-dim);font-family:var(--font-mono);}
  .controls{display:grid;grid-template-columns:repeat(2,1fr);gap:16px 20px;}
  .controls.cols-3{grid-template-columns:repeat(3,1fr);}
  @media (max-width:480px){.controls,.controls.cols-3{grid-template-columns:1fr;}}

  .ctrl label{
    display:flex;justify-content:space-between;align-items:baseline;
    font-size:11px;letter-spacing:.08em;color:var(--muted);text-transform:uppercase;
    margin-bottom:8px;font-family:var(--font-body);font-weight:500;
  }
  .ctrl label .v{font-family:var(--font-mono);color:var(--amber);font-size:12px;letter-spacing:0;text-transform:none;}

  input[type=range]{
    -webkit-appearance:none;appearance:none;width:100%;height:4px;border-radius:3px;
    background:linear-gradient(to right, var(--amber) 0%, var(--amber) var(--pct,50%), var(--line-soft) var(--pct,50%), var(--line-soft) 100%);
    outline:none;cursor:pointer;
  }
  input[type=range]::-webkit-slider-thumb{
    -webkit-appearance:none;width:15px;height:15px;border-radius:50%;
    background:var(--cream);border:2px solid var(--amber);cursor:pointer;
    transition:transform .1s;
  }
  input[type=range]::-webkit-slider-thumb:hover{transform:scale(1.15);}
  input[type=range]::-moz-range-thumb{
    width:13px;height:13px;border-radius:50%;background:var(--cream);border:2px solid var(--amber);cursor:pointer;
  }
  input[type=range]:disabled{opacity:.3;cursor:not-allowed;}

  .presets{display:flex;gap:8px;flex-wrap:wrap;margin-top:14px;}
  .preset-btn{
    font-family:var(--font-mono);font-size:11px;padding:7px 12px;border-radius:6px;
    border:1px solid var(--line);background:var(--panel-raised);color:var(--muted);
    cursor:pointer;transition:all .15s;
  }
  .preset-btn:hover{border-color:var(--amber);color:var(--amber);}
  .preset-btn.active{border-color:var(--amber);color:var(--amber);background:var(--amber-soft);}

  /* ===== Player column ===== */
  .player{display:flex;flex-direction:column;gap:16px;}
  .scope{
    background:var(--panel);border:1px solid var(--line);border-radius:10px;
    padding:18px 20px;
  }
  .scope h3{
    margin:0 0 12px;font-family:var(--font-display);font-size:13px;letter-spacing:.14em;
    text-transform:uppercase;color:var(--cream);font-weight:600;
  }
  canvas#wave{width:100%;height:110px;display:block;border-radius:6px;background:var(--bg-grain);}
  .wave-legend{margin-top:8px;font-family:var(--font-mono);font-size:10px;color:var(--muted-dim);display:flex;gap:10px;align-items:center;flex-wrap:wrap;}
  .wave-legend span{display:inline-block;width:22px;height:3px;border-radius:2px;}
  .wave-legend .orig-line{background:#736658;}
  .wave-legend .master-line{background:#e3a13c;}

  .transport{display:flex;align-items:center;gap:12px;margin-top:14px;flex-wrap:wrap;}
  .transport .time{font-family:var(--font-mono);font-size:12px;color:var(--muted);min-width:90px;}
  .ab-toggle{
    display:flex;border:1px solid var(--line);border-radius:7px;overflow:hidden;font-family:var(--font-mono);font-size:11px;
  }
  .ab-toggle button{
    border:none;background:var(--panel-raised);color:var(--muted);padding:9px 14px;cursor:pointer;
    letter-spacing:.08em;transition:all .15s;
  }
  .ab-toggle button.active{background:var(--amber);color:#241c10;}
  .loop-toggle{display:flex;align-items:center;gap:6px;font-family:var(--font-mono);font-size:11px;color:var(--muted);cursor:pointer;}
  .loop-toggle input{accent-color:var(--amber);width:14px;height:14px;cursor:pointer;}

  .meter{
    margin-top:16px;
  }
  .meter .meter-label{font-size:10px;letter-spacing:.12em;color:var(--muted-dim);text-transform:uppercase;font-family:var(--font-mono);margin-bottom:6px;display:flex;justify-content:space-between;}
  .meter-track{height:8px;border-radius:4px;background:var(--line-soft);overflow:hidden;position:relative;}
  .meter-fill{
    height:100%;width:0%;border-radius:4px;
    background:linear-gradient(to right,#5fb3a3, #e3a13c 75%, #e0584c 100%);
    transition:width .06s linear;
  }

  .spectrum-wrap{
    margin-top:16px;
    background:rgba(0,0,0,.18);border:1px solid var(--line-soft);border-radius:9px;
    padding:10px 12px 8px;
  }
  .spectrum-wrap .meter-label{font-size:10px;letter-spacing:.12em;color:var(--muted-dim);text-transform:uppercase;font-family:var(--font-mono);margin-bottom:8px;display:flex;justify-content:space-between;}
  #spectrumCanvas{display:block;width:100%;height:72px;border-radius:4px;}
  .spectrum-freq-labels{display:flex;justify-content:space-between;font-family:var(--font-mono);font-size:8px;color:var(--muted-dim);margin-top:4px;letter-spacing:.04em;}

  /* ===== Stats card ===== */
  .stats{
    background:var(--panel);border:1px solid var(--line);border-radius:10px;
    padding:18px 20px;font-family:var(--font-mono);
  }
  .stats h3{
    margin:0 0 14px;font-family:var(--font-display);font-size:13px;letter-spacing:.14em;
    text-transform:uppercase;color:var(--cream);font-weight:600;
  }
  .stat-row{display:flex;justify-content:space-between;padding:7px 0;border-bottom:1px solid var(--line-soft);font-size:12px;}
  .stat-row:last-child{border-bottom:none;}
  .stat-row .k{color:var(--muted);}
  .stat-row .vv{color:var(--cream);}
  .stat-row .vv.warn{color:var(--red);}

  .export-row{display:flex;gap:10px;margin-top:16px;flex-wrap:wrap;}
  .hint{font-size:11px;color:var(--muted-dim);margin-top:10px;line-height:1.6;font-family:var(--font-body);}


  .loudness-readout-panel{display:grid;grid-template-columns:repeat(3,1fr);gap:10px;margin-top:14px;}
  .loudness-readout-panel .mini{background:rgba(0,0,0,.15);border:1px solid var(--line-soft);border-radius:9px;padding:10px;font-family:var(--font-mono);}
  .loudness-readout-panel .mini .k{font-size:9px;color:var(--muted-dim);text-transform:uppercase;letter-spacing:.1em;}
  .loudness-readout-panel .mini .v{font-size:18px;color:var(--cream);font-weight:700;margin-top:3px;}
  .loudness-readout-panel .mini.target .v{color:var(--amber);}
  .loudness-readout-panel .mini.ok .v{color:var(--teal);}
  .eq-mode-row{display:flex;gap:10px;align-items:center;flex-wrap:wrap;margin-bottom:12px;}
  .eq-mode-row label{font-family:var(--font-mono);font-size:10px;color:var(--muted);letter-spacing:.1em;text-transform:uppercase;}
  .graphic-eq{display:grid;grid-template-columns:repeat(8,1fr);gap:10px;align-items:end;margin-top:10px;}
  .graphic-eq.bands-4{grid-template-columns:repeat(4,1fr);}
  .graphic-eq.bands-16{grid-template-columns:repeat(16,1fr);gap:6px;}
  .eq-band{display:flex;flex-direction:column;align-items:center;gap:7px;min-width:0;}
  .eq-band input[type=range]{writing-mode:bt-lr;-webkit-appearance:slider-vertical;appearance:slider-vertical;width:22px;height:118px;background:var(--line-soft);}
  .eq-band .band-gain{font-family:var(--font-mono);font-size:9px;color:var(--amber);}
  .eq-band .band-freq{font-family:var(--font-mono);font-size:9px;color:var(--muted-dim);white-space:nowrap;}
  .character-note{font-family:var(--font-mono);font-size:10px;color:var(--muted-dim);line-height:1.5;margin-top:8px;}
  .wave-wrap{position:relative;border-radius:8px;overflow:hidden;background:var(--bg-grain);border:1px solid var(--line-soft);}
  .loop-region{position:absolute;top:0;bottom:0;background:rgba(95,179,163,.12);border-left:1px solid rgba(95,179,163,.75);border-right:1px solid rgba(95,179,163,.75);display:none;pointer-events:none;}
  .wave-help{font-family:var(--font-mono);font-size:10px;color:var(--muted-dim);margin-top:8px;line-height:1.5;}
  canvas#wave{height:150px!important;cursor:crosshair;}
  @media(max-width:720px){.loudness-readout-panel{grid-template-columns:1fr}.graphic-eq.bands-16{grid-template-columns:repeat(8,1fr);}}

  footer{
    margin-top:34px;padding-top:18px;border-top:1px solid var(--line);
    color:var(--muted-dim);font-size:11px;font-family:var(--font-mono);text-align:center;
    letter-spacing:.04em;
  }

  /* ===== Firebase Auth Login ===== */
  body.auth-locked .app{display:none;}
  .auth-screen{min-height:100vh;display:flex;align-items:center;justify-content:center;padding:28px 20px;}
  .auth-card{width:100%;max-width:460px;background:linear-gradient(180deg, rgba(43,38,32,.96), rgba(26,23,20,.98));border:1px solid rgba(227,161,60,.25);border-radius:22px;padding:28px;box-shadow:0 28px 70px rgba(0,0,0,.52), inset 0 1px 0 rgba(255,255,255,.04);}
  .auth-logo{font-family:var(--font-display);font-weight:800;font-size:36px;letter-spacing:.08em;margin-bottom:6px;}
  .auth-logo span{color:var(--amber);font-size:1.35em;display:inline-block;transform:translateY(5px) skewX(-6deg);}
  .auth-sub{color:var(--muted);font-size:13px;line-height:1.5;margin-bottom:22px;}
  .auth-tabs{display:flex;gap:8px;margin-bottom:18px;}
  .auth-tab{flex:1;padding:10px 12px;border:1px solid var(--line);background:var(--panel-raised);color:var(--muted);border-radius:8px;font-family:var(--font-display);font-weight:700;letter-spacing:.05em;text-transform:uppercase;cursor:pointer;}
  .auth-tab.active{background:var(--amber);border-color:var(--amber);color:#241c10;}
  .auth-field{margin-bottom:12px;}
  .auth-field label{display:block;margin-bottom:7px;font-family:var(--font-mono);font-size:10px;color:var(--muted);letter-spacing:.11em;text-transform:uppercase;}
  .auth-field input{width:100%;background:var(--panel-raised);border:1px solid var(--line);border-radius:8px;color:var(--cream);padding:13px 12px;font-family:var(--font-body);font-size:14px;outline:none;}
  .auth-field input:focus{border-color:var(--amber);box-shadow:0 0 0 3px rgba(227,161,60,.12);}
  .auth-actions{display:flex;gap:10px;align-items:center;flex-wrap:wrap;margin-top:16px;}
  .auth-message{margin-top:14px;min-height:18px;font-family:var(--font-mono);font-size:11px;color:var(--muted);line-height:1.5;}
  .auth-message.error{color:var(--red);}
  .auth-message.ok{color:var(--teal);}
  .forgot-link{background:none;border:none;color:var(--muted);cursor:pointer;font-family:var(--font-mono);font-size:11px;text-decoration:underline;padding:0;}
  .user-bar{display:flex;flex-direction:column;gap:5px;align-items:flex-end;font-family:var(--font-mono);font-size:11px;color:var(--muted);}
  .user-bar strong{color:var(--cream);font-weight:600;}
  .btn.small{padding:7px 11px;font-size:10px;border-radius:6px;}


  /* ===== Inline Legal Pages ===== */
  .legal-page{
    display:none;
    max-width:900px;
    margin:0 auto 32px;
    background:linear-gradient(180deg, rgba(43,38,32,.92), rgba(26,23,20,.98));
    border:1px solid rgba(227,161,60,.18);
    border-radius:22px;
    padding:34px;
    box-shadow:0 28px 70px rgba(0,0,0,.38);
  }
  .legal-page.active{display:block;}
  .legal-page h1,.legal-page h2{font-family:var(--font-display);}
  .legal-page h1{margin-top:0;}
  .legal-page h2{margin-top:30px;color:var(--amber);font-size:20px;}
  .legal-page p,.legal-page li{color:var(--muted);line-height:1.65;}
  .legal-page a{color:var(--amber);}
  .legal-back{display:inline-block;margin-bottom:22px;color:var(--amber);text-decoration:none;font-weight:700;}
  body.show-legal .app{display:none;}
  body.show-legal .auth-screen{display:none!important;}


  /* ===== Masterly Pro Workflow ===== */
  .master-status-card{
    margin:0 0 18px;
    padding:16px 18px;
    border-radius:14px;
    border:1px solid rgba(95,179,163,.35);
    background:linear-gradient(135deg,rgba(95,179,163,.12),rgba(227,161,60,.08));
    display:grid;
    grid-template-columns:1.2fr repeat(4,1fr);
    gap:10px;
    font-family:var(--font-mono);
    font-size:11px;
  }
  .master-status-card .status-title{font-family:var(--font-display);font-size:13px;letter-spacing:.12em;text-transform:uppercase;color:var(--cream);}
  .master-status-card .k{display:block;color:var(--muted-dim);font-size:9px;letter-spacing:.11em;text-transform:uppercase;margin-bottom:4px;}
  .master-status-card .v{color:var(--amber);}
  @media(max-width:880px){.master-status-card{grid-template-columns:1fr 1fr}.master-status-card .status-title{grid-column:1/-1}}

  .master-wizard{
    background:linear-gradient(135deg, rgba(227,161,60,.16), rgba(95,179,163,.09));
    border:1px solid rgba(227,161,60,.28);
    border-radius:16px;
    padding:20px;
    box-shadow:inset 0 1px 0 rgba(255,255,255,.04),0 20px 50px rgba(0,0,0,.18);
  }
  .master-wizard h3{margin:0 0 8px;font-family:var(--font-display);font-size:16px;letter-spacing:.14em;text-transform:uppercase;color:var(--cream);}
  .master-wizard .wizard-sub{font-size:12px;color:var(--muted);line-height:1.55;margin-bottom:16px;}
  .wizard-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:14px;margin-bottom:16px;}
  @media(max-width:640px){.wizard-grid{grid-template-columns:1fr}}
  .wizard-step{background:rgba(0,0,0,.14);border:1px solid var(--line-soft);border-radius:12px;padding:13px;}
  .wizard-step label{display:block;font-family:var(--font-mono);font-size:10px;color:var(--muted);letter-spacing:.11em;text-transform:uppercase;margin-bottom:8px;}
  .wizard-step b{color:var(--amber);margin-right:6px;}
  .create-master-row{display:flex;gap:12px;align-items:center;flex-wrap:wrap;margin:12px 0;}
  .btn.master-create{font-size:15px;padding:14px 28px;border-radius:999px;box-shadow:0 0 28px rgba(227,161,60,.25);}
  .wizard-hint{font-family:var(--font-mono);font-size:10px;color:var(--muted-dim);line-height:1.55;}

  .advanced-panel{
    margin-top:16px;
    border:1px solid var(--line);
    border-radius:14px;
    background:rgba(0,0,0,.10);
    overflow:hidden;
  }
  .advanced-panel summary{
    cursor:pointer;
    padding:16px 18px;
    list-style:none;
    font-family:var(--font-display);
    letter-spacing:.12em;
    text-transform:uppercase;
    color:var(--amber);
    border-bottom:1px solid var(--line-soft);
  }
  .advanced-panel summary::-webkit-details-marker{display:none;}
  .advanced-panel summary:after{content:' öffnen';color:var(--muted-dim);font-family:var(--font-mono);font-size:10px;letter-spacing:.08em;text-transform:none;}
  .advanced-panel[open] summary:after{content:' schließen';}
  .advanced-inner{padding:16px;display:flex;flex-direction:column;gap:16px;}
  body.advanced-dock-open{overflow:hidden;}
  .advanced-panel[open]{
    position:fixed;inset:14px;z-index:99990;margin:0;
    display:grid;grid-template-rows:auto minmax(0,1fr);height:calc(100dvh - 28px);max-height:none;
    border-color:rgba(227,161,60,.42);
    background:linear-gradient(180deg,rgba(31,27,23,.99),rgba(10,9,8,.99));
    box-shadow:0 32px 90px rgba(0,0,0,.72),0 0 0 9999px rgba(0,0,0,.62);
  }
  .advanced-panel[open] summary{
    position:sticky;top:0;z-index:5;background:linear-gradient(90deg,rgba(43,38,32,.98),rgba(22,19,16,.98));
    border-bottom:1px solid rgba(227,161,60,.24);
  }
  .advanced-panel[open] .advanced-inner{
    height:100%;overflow:hidden;min-height:0;padding:8px;
    overscroll-behavior:contain;
  }
  .advanced-panel[open] .advanced-console{
    height:100%;min-height:0;margin:0;border-radius:10px;display:grid;
    grid-template-columns:168px minmax(0,1fr);grid-template-rows:auto minmax(0,1fr);
    align-self:stretch;
  }
  .advanced-panel[open] .console-top{grid-column:1/-1;grid-row:1;padding:10px 12px;gap:10px;}
  .advanced-panel[open] .console-title{font-size:14px;}
  .advanced-panel[open] .console-sub{display:block;font-size:8px;margin-top:3px;max-width:520px;}
  .advanced-panel[open] .console-toggle{padding:5px 8px;font-size:8px;}
  .advanced-panel[open] .advanced-tabbar{
    grid-column:1;grid-row:2;min-height:0;
    padding:12px 10px;gap:8px;overflow:hidden;border-right:1px solid rgba(227,161,60,.22);border-bottom:0;
    background:
      linear-gradient(90deg,rgba(227,161,60,.10),transparent 38%),
      linear-gradient(180deg,rgba(255,255,255,.045),rgba(0,0,0,.24));
    display:flex;flex-direction:column;
  }
  .advanced-panel[open] .advanced-tabbar .module-pill{
    width:100%;min-height:42px;padding:9px 10px;font-size:9px;text-align:left;border-radius:7px;
    display:flex;align-items:center;gap:8px;justify-content:flex-start;
    box-shadow:inset 0 1px 0 rgba(255,255,255,.04),0 8px 16px rgba(0,0,0,.10);
  }
  .advanced-panel[open] .advanced-tabbar .module-pill:before{
    content:"";width:7px;height:7px;border-radius:50%;flex:0 0 auto;
    background:rgba(168,154,139,.45);box-shadow:0 0 0 1px rgba(0,0,0,.35);
  }
  .advanced-panel[open] .advanced-tabbar .module-pill.active{
    background:linear-gradient(180deg,rgba(95,179,163,.18),rgba(227,161,60,.08));
    border-color:rgba(95,179,163,.75);
  }
  .advanced-panel[open] .advanced-tabbar .module-pill.active:before{
    background:var(--teal);box-shadow:0 0 12px rgba(95,179,163,.65),0 0 0 1px rgba(95,179,163,.55);
  }
  .advanced-panel[open] .console-body{
    grid-column:2;grid-row:2;
    min-height:0;height:100%;overflow:hidden;padding:12px;gap:12px;
    background:
      radial-gradient(circle at 70% 0,rgba(95,179,163,.07),transparent 34%),
      linear-gradient(180deg,rgba(0,0,0,.10),rgba(0,0,0,.24));
    display:grid;grid-template-columns:1fr;grid-template-rows:minmax(0,1fr);
  }
  .advanced-panel[open] .console-body>div:first-child{
    min-height:0;overflow:visible;display:contents;
  }
  .advanced-panel[open] .console-body>aside{
    min-height:0;overflow:visible;display:contents;
  }
  .advanced-panel[open] .rack-section{display:none;border-radius:8px;min-height:0;margin-top:0!important;}
  .advanced-panel[open] .advanced-console[data-active-tab="eq"] [data-module-section="eq"],
  .advanced-panel[open] .advanced-console[data-active-tab="tone"] [data-module-section="tone"],
  .advanced-panel[open] .advanced-console[data-active-tab="tone"] [data-module-section="metering"],
  .advanced-panel[open] .advanced-console[data-active-tab="dynamics"] [data-module-section="dynamics"],
  .advanced-panel[open] .advanced-console[data-active-tab="dynamics"] [data-module-section="clipper"],
  .advanced-panel[open] .advanced-console[data-active-tab="dynamics"] [data-module-section="limiter"],
  .advanced-panel[open] .advanced-console[data-active-tab="saturation"] [data-module-section="saturation"],
  .advanced-panel[open] .advanced-console[data-active-tab="stereo"] [data-module-section="stereo"],
  .advanced-panel[open] .advanced-console[data-active-tab="stereo"] [data-module-section="metering"],
  .advanced-panel[open] .advanced-console[data-active-tab="final"] [data-module-section="limiter"],
  .advanced-panel[open] .advanced-console[data-active-tab="final"] [data-module-section="metering"],
  .advanced-panel[open] .advanced-console[data-active-tab="final"] [data-module-section="output"]{
    display:flex;flex-direction:column;height:100%;min-height:0;
  }
  .advanced-panel[open] .advanced-console[data-active-tab="tone"] .console-body,
  .advanced-panel[open] .advanced-console[data-active-tab="stereo"] .console-body{
    grid-template-columns:minmax(0,1.05fr) minmax(360px,.95fr);
  }
  .advanced-panel[open] .advanced-console[data-active-tab="dynamics"] .console-body,
  .advanced-panel[open] .advanced-console[data-active-tab="final"] .console-body{
    grid-template-columns:repeat(3,minmax(240px,1fr));
  }
  .advanced-panel[open] .advanced-console[data-active-tab="saturation"] .console-body{
    grid-template-columns:1fr;
  }
  .advanced-panel[open] .rack-head{padding:9px 11px;min-height:42px;}
  .advanced-panel[open] .rack-head h3{font-size:11px;letter-spacing:.13em;}
  .advanced-panel[open] .rack-head .sub{display:block;font-size:8px;margin-top:3px;}
  .advanced-panel[open] .module-switch{font-size:8px;}
  .advanced-panel[open] .rack-content{padding:12px;flex:1 1 auto;min-height:0;overflow:hidden;}
  .advanced-panel[open] .advanced-console[data-active-tab="eq"] .rack-content{padding:12px;}
  .advanced-panel[open] .advanced-console[data-active-tab="eq"] .eq-stage{
    grid-template-columns:minmax(0,1fr) minmax(250px,305px);gap:14px;height:100%;min-height:0;
  }
  .advanced-panel[open] .advanced-console[data-active-tab="eq"] .eq-screen{min-height:330px;height:100%;}
  .advanced-panel[open] .advanced-console[data-active-tab="eq"] #advancedEqCanvas{height:100%;min-height:330px;}
  .advanced-panel[open] .eq-side-panel{gap:8px;min-height:0;overflow:hidden;}
  .advanced-panel[open] .eq-band-readout{padding:9px;font-size:10px;line-height:1.45;}
  .advanced-panel[open] .eq-band-readout strong{font-size:11px;margin-bottom:3px;}
  .advanced-panel[open] .mini-field{gap:4px;}
  .advanced-panel[open] .mini-field label{font-size:8px;}
  .advanced-panel[open] .mini-field input,
  .advanced-panel[open] .mini-field select{padding:6px 7px;font-size:10px;height:30px;}
  .advanced-panel[open] .module-pill-row{gap:6px;margin-top:6px;}
  .advanced-panel[open] .module-pill{font-size:8px;padding:6px 7px;}
  .advanced-panel[open] .console-grid{
    min-height:0;overflow:visible;margin-top:0;gap:0;display:contents;
  }
  .advanced-panel[open] .channel-strip-grid,
  .advanced-panel[open] .channel-strip-grid.compact{grid-template-columns:repeat(auto-fit,minmax(138px,1fr));gap:10px;}
  .advanced-panel[open] .console-control{min-height:116px;padding:10px;border-radius:7px;}
  .advanced-panel[open] .console-control label{font-size:9px;gap:5px;margin-bottom:7px;}
  .advanced-panel[open] .console-control label .v{font-size:9px;}
  .advanced-panel[open] .knob-wrap{gap:7px;}
  .advanced-panel[open] .knob-face{width:54px;height:54px;border-width:1px;}
  .advanced-panel[open] .knob-face:after{top:6px;height:15px;width:2px;}
  .advanced-panel[open] input[type=range]{height:12px;}
  .advanced-panel[open] .fader-control{min-height:144px;}
  .advanced-panel[open] .fader-lane{padding:0;}
  .advanced-panel[open] .fader-lane input[type=range]{width:124px;}
  .advanced-panel[open] .led-stack{grid-template-columns:repeat(2,minmax(0,1fr));gap:6px;}
  .advanced-panel[open] .meter-tile{padding:6px;border-radius:6px;}
  .advanced-panel[open] .meter-tile .k{font-size:7px;}
  .advanced-panel[open] .meter-tile .v{font-size:12px;margin-top:2px;}
  .advanced-panel[open] .led-meter{height:6px;margin-top:5px;}
  .advanced-panel[open] .preset-console-row{grid-template-columns:repeat(3,minmax(0,1fr));gap:5px;}
  .advanced-panel[open] .advanced-console[data-active-tab="tone"] .rack-content,
  .advanced-panel[open] .advanced-console[data-active-tab="stereo"] .rack-content,
  .advanced-panel[open] .advanced-console[data-active-tab="saturation"] .rack-content{
    display:flex;align-items:stretch;
  }
  .advanced-panel[open] .advanced-console[data-active-tab="tone"] .channel-strip-grid,
  .advanced-panel[open] .advanced-console[data-active-tab="stereo"] .channel-strip-grid,
  .advanced-panel[open] .advanced-console[data-active-tab="saturation"] .channel-strip-grid{
    flex:1;align-content:stretch;grid-auto-rows:minmax(150px,1fr);
  }
  .advanced-panel[open] .advanced-console[data-active-tab="tone"] .console-control,
  .advanced-panel[open] .advanced-console[data-active-tab="stereo"] .console-control,
  .advanced-panel[open] .advanced-console[data-active-tab="saturation"] .console-control{
    min-height:150px;display:flex;flex-direction:column;justify-content:space-between;
  }
  .advanced-panel[open] .advanced-console[data-active-tab="tone"] .knob-face,
  .advanced-panel[open] .advanced-console[data-active-tab="stereo"] .knob-face,
  .advanced-panel[open] .advanced-console[data-active-tab="saturation"] .knob-face{
    width:62px;height:62px;
  }
  .advanced-panel[open] .advanced-console[data-active-tab="tone"] .meter-tile,
  .advanced-panel[open] .advanced-console[data-active-tab="stereo"] .meter-tile,
  .advanced-panel[open] .advanced-console[data-active-tab="final"] .meter-tile{
    min-height:70px;
  }
  .advanced-panel[open] .advanced-console[data-active-tab="tone"] .led-stack,
  .advanced-panel[open] .advanced-console[data-active-tab="stereo"] .led-stack{
    height:100%;grid-auto-rows:minmax(56px,1fr);
  }
  @media(max-width:680px){
    .advanced-panel[open]{inset:8px;height:calc(100dvh - 16px);}
    .advanced-panel[open] .advanced-inner{padding:6px;overflow:auto;}
    .advanced-panel[open] .advanced-console{
      grid-template-columns:1fr;grid-template-rows:auto auto minmax(0,1fr);
    }
    .advanced-panel[open] .console-top{grid-column:1;grid-row:1;}
    .advanced-panel[open] .advanced-tabbar{
      grid-column:1;grid-row:2;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));
      overflow:auto;border-right:0;border-bottom:1px solid rgba(227,161,60,.18);
    }
    .advanced-panel[open] .advanced-tabbar .module-pill{
      min-height:34px;text-align:center;justify-content:center;font-size:8px;padding:7px 5px;
    }
    .advanced-panel[open] .advanced-tabbar .module-pill:before{display:none;}
    .advanced-panel[open] .console-body,
    .advanced-panel[open] .advanced-console[data-active-tab="tone"] .console-body,
    .advanced-panel[open] .advanced-console[data-active-tab="stereo"] .console-body,
    .advanced-panel[open] .advanced-console[data-active-tab="dynamics"] .console-body,
    .advanced-panel[open] .advanced-console[data-active-tab="final"] .console-body{
      grid-column:1;grid-row:3;grid-template-columns:1fr;overflow:auto;
    }
    .advanced-panel[open] .console-body>div:first-child,
    .advanced-panel[open] .console-body>aside,
    .advanced-panel[open] .console-grid{display:block;}
    .advanced-panel[open] .advanced-console[data-active-tab="eq"] .eq-stage{grid-template-columns:1fr;}
  }
  @media(max-height:760px) and (min-width:760px){
    .advanced-panel[open] summary{padding:9px 12px;font-size:10px;}
    .advanced-panel[open] .console-top{padding:6px 8px;}
    .advanced-panel[open] .console-body{padding:6px;gap:6px;}
    .advanced-panel[open] .rack-content{padding:5px;}
    .advanced-panel[open] .advanced-tabbar{padding:8px;gap:6px;}
    .advanced-panel[open] .advanced-tabbar .module-pill{min-height:36px;font-size:8px;padding:7px 8px;}
    .advanced-panel[open] .console-control{min-height:88px;padding:7px;}
    .advanced-panel[open] .knob-face{width:42px;height:42px;}
    .advanced-panel[open] .advanced-console[data-active-tab="eq"] .eq-screen,
    .advanced-panel[open] .advanced-console[data-active-tab="eq"] #advancedEqCanvas{min-height:280px;}
    .advanced-panel[open] .advanced-console[data-active-tab="tone"] .console-control,
    .advanced-panel[open] .advanced-console[data-active-tab="stereo"] .console-control,
    .advanced-panel[open] .advanced-console[data-active-tab="saturation"] .console-control{min-height:112px;}
    .advanced-panel[open] .advanced-console[data-active-tab="tone"] .knob-face,
    .advanced-panel[open] .advanced-console[data-active-tab="stereo"] .knob-face,
    .advanced-panel[open] .advanced-console[data-active-tab="saturation"] .knob-face{width:46px;height:46px;}
  }

  /* ===== Advanced Mastering Console ===== */
  .advanced-console{
    position:relative;
    border-radius:18px;
    border:1px solid rgba(227,161,60,.26);
    background:
      linear-gradient(90deg, rgba(255,255,255,.025) 0 1px, transparent 1px 100%) 0 0/42px 100%,
      linear-gradient(180deg,#211d18 0%, #15120f 48%, #0f0d0a 100%);
    box-shadow:0 28px 70px rgba(0,0,0,.42), inset 0 1px 0 rgba(255,255,255,.05), inset 0 -18px 42px rgba(0,0,0,.28);
    overflow:hidden;
  }
  .advanced-console.is-playing{
    box-shadow:
      0 28px 70px rgba(0,0,0,.42),
      inset 0 1px 0 rgba(255,255,255,.05),
      inset 0 -18px 42px rgba(0,0,0,.28),
      0 0 calc(10px + var(--rack-glow,0px)) rgba(95,179,163,.10);
  }
  .console-top{
    display:flex;justify-content:space-between;align-items:flex-start;gap:18px;flex-wrap:wrap;
    padding:18px 20px;border-bottom:1px solid rgba(227,161,60,.22);
    background:linear-gradient(180deg,rgba(227,161,60,.11),rgba(0,0,0,.12));
  }
  .console-title{font-family:var(--font-display);font-size:18px;font-weight:800;letter-spacing:.13em;text-transform:uppercase;color:var(--cream);}
  .console-sub{margin-top:5px;font-family:var(--font-mono);font-size:10px;color:var(--muted);letter-spacing:.06em;line-height:1.5;}
  .console-master-switches{display:flex;gap:9px;flex-wrap:wrap;align-items:center;}
  .console-toggle{
    display:inline-flex;align-items:center;gap:7px;border:1px solid var(--line);border-radius:999px;
    background:rgba(0,0,0,.18);padding:7px 10px;font-family:var(--font-mono);font-size:10px;color:var(--muted);
    cursor:pointer;white-space:nowrap;
  }
  .console-toggle input{accent-color:var(--amber);}
  .console-toggle strong{color:var(--cream);font-weight:600;}
  .console-body{padding:18px;display:grid;grid-template-columns:1fr;gap:16px;}
  .advanced-guide-modal{
    display:none;position:absolute;inset:0;z-index:7;align-items:center;justify-content:center;
    background:radial-gradient(circle at center,rgba(0,0,0,.34),rgba(0,0,0,.72));
    padding:18px;
  }
  .advanced-guide-modal.active{display:flex;}
  .advanced-guide-card{
    width:min(520px,100%);border:1px solid rgba(227,161,60,.38);border-radius:12px;
    background:linear-gradient(165deg,rgba(39,34,28,.98),rgba(15,13,11,.99));
    box-shadow:0 24px 70px rgba(0,0,0,.58), inset 0 1px 0 rgba(255,255,255,.05);
    padding:18px;color:var(--cream);
  }
  .advanced-guide-kicker{
    font-family:var(--font-mono);font-size:9px;letter-spacing:.14em;text-transform:uppercase;color:var(--teal);
  }
  .advanced-guide-title{
    margin-top:7px;font-family:var(--font-display);font-size:17px;font-weight:800;letter-spacing:.12em;text-transform:uppercase;
  }
  .advanced-guide-body{
    margin-top:10px;font-family:var(--font-body);font-size:13px;line-height:1.55;color:var(--muted);
  }
  .advanced-guide-actions{
    margin-top:15px;display:flex;align-items:center;justify-content:space-between;gap:12px;flex-wrap:wrap;
  }
  .advanced-guide-actions label{
    display:flex;align-items:center;gap:7px;font-family:var(--font-mono);font-size:10px;color:var(--muted-dim);
  }
  .advanced-guide-actions input{accent-color:var(--teal);}
  .rack-section{
    position:relative;
    border:1px solid rgba(89,78,65,.9);
    border-radius:12px;
    background:linear-gradient(180deg,rgba(43,38,32,.96),rgba(22,19,16,.98));
    box-shadow:inset 0 1px 0 rgba(255,255,255,.045), inset 0 -12px 28px rgba(0,0,0,.24);
    overflow:hidden;
  }
  .rack-head{
    display:flex;justify-content:space-between;align-items:center;gap:12px;
    padding:12px 14px;border-bottom:1px solid rgba(89,78,65,.78);
    background:linear-gradient(180deg,rgba(255,255,255,.035),rgba(0,0,0,.10));
  }
  .rack-head h3{margin:0;font-family:var(--font-display);font-size:12px;letter-spacing:.16em;text-transform:uppercase;color:var(--cream);}
  .rack-head .sub{font-family:var(--font-mono);font-size:9px;color:var(--muted-dim);letter-spacing:.08em;text-transform:uppercase;}
  .module-switch{
    display:inline-flex;align-items:center;gap:6px;font-family:var(--font-mono);font-size:9px;color:var(--muted);
    text-transform:uppercase;letter-spacing:.08em;white-space:nowrap;
  }
  .module-switch input{accent-color:var(--teal);}
  .rack-content{padding:14px;}
  .eq-stage{display:grid;grid-template-columns:minmax(420px,1fr) minmax(240px,280px);gap:14px;}
  @media(max-width:760px){.eq-stage{grid-template-columns:1fr;}}
  .eq-screen{
    position:relative;border-radius:10px;border:1px solid rgba(95,179,163,.34);
    background:radial-gradient(ellipse at center,rgba(95,179,163,.08),transparent 62%),#0c0f0f;
    min-height:290px;overflow:hidden;
    box-shadow:inset 0 0 34px rgba(0,0,0,.8),0 0 24px rgba(95,179,163,.08);
  }
  .eq-screen:before{
    content:"";position:absolute;inset:0;pointer-events:none;opacity:.22;
    background:
      linear-gradient(rgba(95,179,163,.18) 1px, transparent 1px) 0 0/100% 36px,
      linear-gradient(90deg,rgba(95,179,163,.16) 1px, transparent 1px) 0 0/58px 100%;
  }
  #advancedEqCanvas{position:relative;z-index:1;width:100%;height:290px;display:block;cursor:crosshair;}
  .eq-axis{position:absolute;left:10px;right:10px;bottom:8px;z-index:2;display:flex;justify-content:space-between;font-family:var(--font-mono);font-size:8px;color:rgba(243,236,225,.44);pointer-events:none;}
  .eq-side-panel{display:flex;flex-direction:column;gap:10px;}
  .eq-band-readout{
    border:1px solid rgba(227,161,60,.30);border-radius:9px;padding:11px;
    background:rgba(0,0,0,.20);font-family:var(--font-mono);font-size:10px;color:var(--muted);line-height:1.6;
  }
  .eq-band-readout strong{display:block;color:var(--amber);font-family:var(--font-display);font-size:12px;letter-spacing:.11em;text-transform:uppercase;margin-bottom:4px;}
  .mini-field{display:flex;flex-direction:column;gap:5px;}
  .mini-field label{font-family:var(--font-mono);font-size:9px;color:var(--muted-dim);letter-spacing:.1em;text-transform:uppercase;}
  .mini-field input,.mini-field select{
    width:100%;background:#171411;border:1px solid var(--line);border-radius:7px;color:var(--cream);
    padding:8px 9px;font-family:var(--font-mono);font-size:11px;
  }
  .eq-mini-row{display:grid;grid-template-columns:1fr 1fr;gap:8px;}
  .console-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,430px),1fr));gap:16px;margin-top:16px;}
  .console-grid + aside{margin-top:16px;}
  .console-body>aside{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,360px),1fr));gap:16px;align-items:start;}
  .console-body>aside .rack-section{margin-top:0!important;}
  .channel-strip-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(156px,1fr));gap:12px;}
  .channel-strip-grid.compact{grid-template-columns:repeat(auto-fit,minmax(156px,1fr));}
  @media(max-width:430px){.channel-strip-grid,.channel-strip-grid.compact{grid-template-columns:1fr;}}
  .console-control{
    position:relative;
    min-height:132px;border:1px solid rgba(89,78,65,.76);border-radius:9px;padding:10px 10px 18px;
    background:linear-gradient(180deg,rgba(255,255,255,.035),rgba(0,0,0,.18));
    min-width:0;overflow:hidden;
  }
  .console-control>*{position:relative;z-index:1;}
  .console-control:before{
    content:"";position:absolute;left:8px;right:8px;bottom:7px;height:5px;border-radius:99px;
    background:
      linear-gradient(90deg,rgba(95,179,163,.22),rgba(227,161,60,.18),rgba(224,88,76,.14)),
      repeating-linear-gradient(90deg,transparent 0 9px,rgba(0,0,0,.55) 9px 12px);
    border:1px solid rgba(255,255,255,.04);opacity:.62;
  }
  .console-control:after{
    content:"";position:absolute;left:9px;bottom:8px;height:3px;width:var(--rack-level,0%);max-width:calc(100% - 18px);
    border-radius:99px;background:linear-gradient(90deg,var(--teal),var(--amber),var(--red));
    opacity:calc(.22 + var(--rack-pulse,0) * .78);
    box-shadow:0 0 calc(5px + var(--rack-glow,0px)) rgba(227,161,60,.34);
  }
  .console-control label{
    display:grid;grid-template-columns:minmax(0,1fr) auto;gap:8px;align-items:start;
    font-family:var(--font-mono);font-size:9px;letter-spacing:.09em;text-transform:uppercase;color:var(--muted);
    margin-bottom:8px;
  }
  .console-control label .v{color:var(--amber);font-size:10px;letter-spacing:0;text-transform:none;white-space:nowrap;text-align:right;}
  .knob-wrap{display:flex;flex-direction:column;align-items:center;gap:10px;}
  .knob-face{
    width:58px;height:58px;border-radius:50%;flex:0 0 auto;position:relative;
    background:
      radial-gradient(circle at 35% 28%,rgba(255,255,255,.24),transparent 18%),
      radial-gradient(circle at center,#4b4034 0 42%,#191612 44% 100%);
    border:2px solid #6a5844;box-shadow:0 8px 16px rgba(0,0,0,.36), inset 0 0 12px rgba(0,0,0,.55),0 0 calc(2px + var(--rack-glow,0px) * .35) rgba(227,161,60,.16);
    transform:rotate(var(--knob-rot,-36deg));transition:transform .08s linear;
  }
  .knob-face:after{content:"";position:absolute;left:50%;top:8px;width:3px;height:18px;border-radius:3px;background:var(--amber);box-shadow:0 0 7px rgba(227,161,60,.65);transform:translateX(-50%);}
  .knob-wrap input[type=range]{width:100%;min-width:0;}
  .fader-control{min-height:210px;display:flex;flex-direction:column;}
  .fader-lane{flex:1;display:flex;align-items:center;justify-content:center;padding:8px 0;}
  .fader-lane input[type=range]{width:150px;transform:rotate(-90deg);}
  .led-stack{display:grid;grid-template-columns:repeat(auto-fit,minmax(145px,1fr));gap:8px;}
  .meter-tile{border:1px solid rgba(89,78,65,.78);border-radius:9px;padding:10px;background:rgba(0,0,0,.18);font-family:var(--font-mono);}
  .meter-tile .k{font-size:9px;color:var(--muted-dim);letter-spacing:.1em;text-transform:uppercase;}
  .meter-tile .v{font-size:18px;color:var(--cream);font-weight:700;margin-top:4px;}
  .meter-tile.warn .v{color:var(--red);}
  .led-meter{height:8px;border-radius:99px;background:#171411;border:1px solid rgba(255,255,255,.06);overflow:hidden;margin-top:8px;}
  .led-meter span{display:block;height:100%;width:var(--level,0%);border-radius:99px;background:linear-gradient(90deg,var(--teal),var(--amber),var(--red));box-shadow:0 0 12px rgba(227,161,60,.18);}
  .correlation-bar{height:12px;border-radius:99px;background:linear-gradient(90deg,var(--red),var(--amber),var(--teal));position:relative;margin-top:8px;}
  .correlation-bar span{position:absolute;top:-4px;left:calc(var(--corr,50%) - 4px);width:8px;height:20px;border-radius:3px;background:var(--cream);box-shadow:0 0 12px rgba(243,236,225,.4);}
  .module-pill-row{display:flex;gap:8px;flex-wrap:wrap;margin-top:10px;}
  .module-pill{
    border:1px solid var(--line);border-radius:999px;background:rgba(0,0,0,.17);color:var(--muted);
    font-family:var(--font-mono);font-size:9px;letter-spacing:.08em;text-transform:uppercase;padding:7px 9px;cursor:pointer;
  }
  .module-pill.active{border-color:var(--teal);color:var(--cream);box-shadow:0 0 14px rgba(95,179,163,.15);}
  .preset-console-row{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:8px;}
  @media(max-width:640px){.preset-console-row{grid-template-columns:repeat(2,1fr);}}
  .advanced-legacy-bridge{display:none;}
  body.master-path-advanced .grid{grid-template-columns:1fr;}
  body.master-path-advanced .rack{width:100%;}
  body.master-path-advanced .player{max-width:100%;}

  .master-overlay{
    display:none;
    position:fixed;
    inset:0;
    z-index:99999;
    background:radial-gradient(circle at center,rgba(227,161,60,.14),rgba(0,0,0,.94) 58%);
    align-items:center;
    justify-content:center;
    flex-direction:column;
    color:var(--cream);
    text-align:center;
  }
  .master-overlay.active{display:flex;}
  .master-orb{
    width:170px;height:170px;border-radius:50%;
    border:8px solid rgba(243,236,225,.12);
    border-top-color:var(--amber);
    border-right-color:var(--teal);
    animation:spinReel 1.05s linear infinite;
    box-shadow:0 0 55px rgba(227,161,60,.24), inset 0 0 32px rgba(95,179,163,.08);
  }
  .master-overlay-logo{font-family:var(--font-display);font-weight:800;font-size:42px;letter-spacing:.12em;margin-top:24px;}
  .master-overlay-logo span{color:var(--amber);font-size:1.25em;}
  .master-progress-number{font-family:var(--font-mono);font-size:34px;color:var(--amber);font-weight:700;margin-top:12px;}
  .master-progress-bar{width:min(520px,82vw);height:9px;background:rgba(255,255,255,.12);border-radius:99px;overflow:hidden;margin-top:14px;}
  .master-progress-fill{height:100%;width:0%;background:linear-gradient(90deg,var(--teal),var(--amber));border-radius:99px;transition:width .25s ease;}
  .master-stage{font-family:var(--font-mono);font-size:13px;color:var(--muted);margin-top:16px;min-height:20px;}

  /* ===== Stem Mix (Pre-Master Mix) ===== */
  .stem-panel{
    margin:0 0 18px;
    border:1px solid rgba(95,179,163,.35);
    border-radius:16px;
    background:linear-gradient(135deg, rgba(95,179,163,.10), rgba(227,161,60,.05));
    overflow:hidden;
  }
  .stem-panel summary{
    cursor:pointer;
    padding:16px 18px;
    list-style:none;
    font-family:var(--font-display);
    letter-spacing:.12em;
    text-transform:uppercase;
    color:var(--teal);
    font-size:14px;
    border-bottom:1px solid var(--line-soft);
    display:flex;
    justify-content:space-between;
    align-items:center;
    gap:10px;
  }
  .stem-panel summary::-webkit-details-marker{display:none;}
  .stem-panel summary .stem-summary-sub{font-family:var(--font-mono);font-size:10px;color:var(--muted-dim);text-transform:none;letter-spacing:0;}
  .stem-panel-inner{padding:18px;display:flex;flex-direction:column;gap:16px;}
  .stem-dropzone{
    border:1px dashed var(--line);border-radius:10px;padding:26px;text-align:center;
    color:var(--muted-dim);font-family:var(--font-mono);font-size:12px;line-height:1.6;
    transition:border-color .15s, color .15s, background .15s;cursor:pointer;
  }
  .stem-dropzone.drag{border-color:var(--teal);color:var(--teal);background:rgba(95,179,163,.08);}
  .stem-list{display:flex;flex-direction:column;gap:8px;}
  .stem-row{
    display:grid;grid-template-columns:auto minmax(160px,1fr) minmax(380px,1.15fr) auto minmax(150px,auto) auto auto;gap:14px;align-items:center;
    background:rgba(0,0,0,.14);border:1px solid var(--line-soft);border-radius:10px;padding:12px 14px;
  }
  .stem-row .stem-icon{
    width:30px;height:30px;border-radius:7px;display:flex;align-items:center;justify-content:center;
    font-family:var(--font-mono);font-size:11px;font-weight:700;color:#241c10;flex-shrink:0;
  }
  .stem-row .stem-name{font-family:var(--font-body);font-size:13px;color:var(--cream);overflow:hidden;text-overflow:ellipsis;white-space:nowrap;}
  .stem-row .stem-meta{font-family:var(--font-mono);font-size:10px;color:var(--muted-dim);margin-top:2px;}
  .stem-row select.stem-role{
    font-family:var(--font-mono);font-size:10px;padding:6px 8px;width:auto;min-width:170px;
  }
  .stem-row .stem-confidence{
    font-family:var(--font-mono);font-size:9px;padding:3px 7px;border-radius:999px;white-space:nowrap;
  }
  .stem-row .stem-confidence.high{background:rgba(95,179,163,.18);color:var(--teal);border:1px solid rgba(95,179,163,.4);}
  .stem-row .stem-confidence.medium{background:rgba(227,161,60,.16);color:var(--amber);border:1px solid rgba(227,161,60,.4);}
  .stem-row .stem-confidence.low{background:rgba(168,154,139,.14);color:var(--muted-dim);border:1px solid var(--line-soft);}
  .stem-mini-controls{display:grid;grid-template-columns:1fr 1fr;gap:10px;min-width:380px;}
  .stem-mini-control{
    display:grid;grid-template-columns:auto 1fr auto;gap:10px;align-items:center;
    background:linear-gradient(180deg,rgba(255,255,255,.035),rgba(0,0,0,.22));border:1px solid var(--line-soft);border-radius:9px;padding:9px 10px;
    font-family:var(--font-mono);font-size:10px;color:var(--muted-dim);text-transform:uppercase;letter-spacing:.07em;
  }
  .stem-mini-control input[type=range]{width:100%;height:8px;accent-color:var(--amber);cursor:pointer;}
  .stem-mini-control span:last-child{color:var(--cream);min-width:56px;text-align:right;letter-spacing:0;text-transform:none;font-size:11px;}
  .stem-row .stem-mute{display:flex;align-items:center;gap:5px;font-family:var(--font-mono);font-size:9px;color:var(--muted-dim);text-transform:uppercase;letter-spacing:.08em;white-space:nowrap;}
  .stem-row .stem-mute input{accent-color:var(--teal);width:14px;height:14px;}
  .stem-row .stem-remove{
    background:none;border:none;color:var(--muted-dim);cursor:pointer;font-size:16px;line-height:1;padding:4px 6px;
  }
  .stem-row .stem-remove:hover{color:var(--red);}
  @media(max-width:920px){
    .stem-row{grid-template-columns:auto minmax(0,1fr) auto;align-items:start;}
    .stem-mini-controls{grid-column:1/-1;min-width:0;}
    .stem-row select.stem-role{grid-column:2/-1;width:100%;}
  }
  .stem-actions{display:flex;gap:10px;flex-wrap:wrap;align-items:center;}
  .stem-live-status{
    font-family:var(--font-mono);font-size:10px;color:var(--muted-dim);
    padding:8px 10px;border:1px solid var(--line-soft);border-radius:999px;background:rgba(0,0,0,.16);
  }
  .stem-live-status.active{color:var(--teal);border-color:rgba(95,179,163,.45);background:rgba(95,179,163,.08);}
  .stem-mode-toggle{display:flex;gap:8px;align-items:center;font-family:var(--font-mono);font-size:11px;color:var(--muted);}
  .stem-mode-toggle label{display:flex;align-items:center;gap:6px;cursor:pointer;}
  .stem-mode-toggle input{accent-color:var(--teal);width:14px;height:14px;cursor:pointer;}
  .stem-result-row{display:flex;gap:10px;flex-wrap:wrap;align-items:center;margin-top:4px;}
  .stem-mix-report{margin-top:12px;display:grid;gap:6px;font-family:var(--font-mono);font-size:10px;}
  .stem-mix-report .row{display:grid;grid-template-columns:1.2fr .9fr .7fr .7fr .7fr;gap:8px;align-items:center;padding:7px 8px;border:1px solid var(--line-soft);border-radius:7px;background:rgba(0,0,0,.14);}
  .stem-mix-report .head{color:var(--muted-dim);text-transform:uppercase;letter-spacing:.08em;background:transparent;border-color:transparent;padding-top:0;padding-bottom:0;}
  .stem-mix-report .boost{color:var(--teal);}
  .stem-mix-report .cut{color:var(--amber);}
  @media(max-width:680px){.stem-mix-report .row{grid-template-columns:1fr 1fr}.stem-mix-report .head{display:none;}}
  .stem-readout{
    display:grid;grid-template-columns:repeat(4,1fr);gap:10px;
  }
  @media(max-width:640px){.stem-readout{grid-template-columns:1fr 1fr}}
  .stem-readout .mini{background:rgba(0,0,0,.15);border:1px solid var(--line-soft);border-radius:9px;padding:10px;font-family:var(--font-mono);}
  .stem-readout .mini .k{font-size:9px;color:var(--muted-dim);text-transform:uppercase;letter-spacing:.1em;}
  .stem-readout .mini .v{font-size:16px;color:var(--teal);font-weight:700;margin-top:3px;}

  /* ===== Reference Track ===== */
  .ref-track-step{grid-column:1/-1;}
  .ref-drop{
    border:1px dashed var(--line);border-radius:9px;padding:14px;text-align:center;
    color:var(--muted-dim);font-family:var(--font-mono);font-size:11px;cursor:pointer;
    transition:border-color .15s, color .15s, background .15s;
  }
  .ref-drop.drag{border-color:var(--amber);color:var(--amber);background:var(--amber-soft);}
  .ref-drop.has-file{color:var(--teal);border-color:var(--teal);border-style:solid;}
  .ref-mode-row{display:flex;gap:14px;align-items:center;margin-top:10px;font-family:var(--font-mono);font-size:11px;color:var(--muted);flex-wrap:wrap;}
  .ref-mode-row label{display:flex;align-items:center;gap:6px;cursor:pointer;}
  .ref-mode-row input{accent-color:var(--amber);cursor:pointer;}
  .ref-analysis{font-family:var(--font-mono);font-size:10px;color:var(--muted-dim);margin-top:8px;line-height:1.55;min-height:14px;}
  .ref-ab-row{display:flex;gap:12px;flex-wrap:wrap;align-items:center;margin-top:12px;}
  .ref-ab-row #refAbPlayBtn{font-size:11px;padding:9px 16px;min-width:90px;}
  .ref-ab-row #refAbPlayBtn.loading{opacity:.6;cursor:wait;}
  .ref-ab-row .ab-toggle{font-size:10px;}
  .ref-ab-row .ab-toggle button{padding:9px 13px;}
  .ref-ab-row .ab-toggle button:disabled{opacity:.4;cursor:not-allowed;}
  .ref-ab-status{font-family:var(--font-mono);font-size:9px;color:var(--muted-dim);line-height:1.5;flex-basis:100%;}
  .ref-ab-status.loading{color:var(--amber);}
  .ref-ab-status.loading::before{content:'⏳ ';}
  @media(min-width:760px){.ref-ab-status{flex-basis:auto;max-width:260px;}}

  .stem-overlay{
    display:none;
    position:fixed;
    inset:0;
    z-index:99999;
    background:radial-gradient(circle at center,rgba(95,179,163,.16),rgba(0,0,0,.94) 58%);
    align-items:center;
    justify-content:center;
    flex-direction:column;
    color:var(--cream);
    text-align:center;
  }
  .stem-overlay.active{display:flex;}
  .stem-orb{
    width:170px;height:170px;border-radius:50%;
    border:8px solid rgba(243,236,225,.12);
    border-top-color:var(--teal);
    border-right-color:var(--amber);
    animation:spinReel 1.05s linear infinite;
    box-shadow:0 0 55px rgba(95,179,163,.24), inset 0 0 32px rgba(227,161,60,.08);
  }
  .stem-overlay-logo{font-family:var(--font-display);font-weight:800;font-size:32px;letter-spacing:.12em;margin-top:24px;color:var(--teal);}
  .stem-progress-number{font-family:var(--font-mono);font-size:34px;color:var(--teal);font-weight:700;margin-top:12px;}
  .stem-progress-bar{width:min(520px,82vw);height:9px;background:rgba(255,255,255,.12);border-radius:99px;overflow:hidden;margin-top:14px;}
  .stem-progress-fill{height:100%;width:0%;background:linear-gradient(90deg,var(--amber),var(--teal));border-radius:99px;transition:width .25s ease;}
  .stem-stage{font-family:var(--font-mono);font-size:13px;color:var(--muted);margin-top:16px;min-height:20px;}



  /* ===== Guided Workflow Navigation ===== */
  .guided-start{
    display:none;
    margin:0 0 22px;
    padding:22px;
    border-radius:18px;
    border:1px solid rgba(227,161,60,.26);
    background:linear-gradient(135deg, rgba(227,161,60,.12), rgba(95,179,163,.08));
    box-shadow:inset 0 1px 0 rgba(255,255,255,.04), 0 18px 46px rgba(0,0,0,.18);
  }
  .guided-start.active{display:block;}
  .guided-kicker{font-family:var(--font-mono);font-size:10px;letter-spacing:.14em;text-transform:uppercase;color:var(--amber);margin-bottom:8px;}
  .guided-start h2{font-family:var(--font-display);font-size:22px;letter-spacing:.08em;text-transform:uppercase;margin:0 0 8px;color:var(--cream);}
  .guided-start p{font-size:13px;line-height:1.6;color:var(--muted);margin:0 0 16px;}
  .guided-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:14px;margin-top:14px;}
  @media(max-width:820px){.guided-grid{grid-template-columns:1fr;}}
  .guided-choice{
    width:100%;text-align:left;cursor:pointer;border:1px solid var(--line);border-radius:14px;padding:18px;
    background:rgba(0,0,0,.13);color:var(--cream);transition:border-color .16s, transform .16s, background .16s;
  }
  .guided-choice:hover{border-color:var(--amber);transform:translateY(-2px);background:rgba(227,161,60,.08);}
  .guided-choice .icon{font-size:24px;margin-bottom:10px;display:block;}
  .guided-choice b{font-family:var(--font-display);font-size:15px;letter-spacing:.08em;text-transform:uppercase;display:block;margin-bottom:7px;}
  .guided-choice span{font-family:var(--font-body);font-size:12px;color:var(--muted);line-height:1.55;display:block;}
  .workflow-toolbar{display:none;align-items:center;justify-content:space-between;gap:12px;margin:0 0 16px;padding:12px 14px;border-radius:12px;background:rgba(0,0,0,.12);border:1px solid var(--line-soft);}
  .workflow-toolbar.active{display:flex;}
  .workflow-toolbar .crumb{font-family:var(--font-mono);font-size:11px;color:var(--muted);line-height:1.45;}
  .workflow-toolbar .crumb strong{font-family:var(--font-display);letter-spacing:.1em;text-transform:uppercase;color:var(--amber);}
  .master-path-card{display:none;margin:0 0 16px;padding:18px;border-radius:15px;border:1px solid rgba(95,179,163,.32);background:linear-gradient(135deg,rgba(95,179,163,.10),rgba(227,161,60,.06));}
  .master-path-card.active{display:block;}
  .master-path-card h3{font-family:var(--font-display);font-size:14px;letter-spacing:.13em;text-transform:uppercase;margin:0 0 7px;}
  .master-path-card p{font-size:12px;color:var(--muted);line-height:1.55;margin:0 0 13px;}
  .master-path-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:10px;}
  @media(max-width:760px){.master-path-grid{grid-template-columns:1fr;}}
  .master-path-btn{border:1px solid var(--line);background:var(--panel-raised);color:var(--cream);border-radius:11px;padding:13px;text-align:left;cursor:pointer;}
  .master-path-btn:hover,.master-path-btn.active{border-color:var(--amber);background:var(--amber-soft);}
  .master-path-btn b{display:block;font-family:var(--font-display);font-size:12px;letter-spacing:.09em;text-transform:uppercase;margin-bottom:5px;}
  .master-path-btn span{font-size:11px;color:var(--muted);line-height:1.45;display:block;}
  .info-dot{display:inline-flex;align-items:center;justify-content:center;width:18px;height:18px;border-radius:50%;border:1px solid rgba(227,161,60,.45);color:var(--amber);font-family:var(--font-mono);font-size:11px;margin-left:7px;cursor:pointer;background:rgba(227,161,60,.06);vertical-align:middle;}
  .info-modal-overlay{display:none;position:fixed;inset:0;z-index:100001;background:rgba(8,7,6,.68);backdrop-filter:blur(10px);align-items:center;justify-content:center;padding:24px;}
  .info-modal-overlay.active{display:flex;}
  .info-modal{width:min(620px,94vw);background:linear-gradient(165deg, rgba(43,38,32,.98), rgba(24,21,18,.99));border:1px solid rgba(227,161,60,.28);border-radius:18px;padding:24px;box-shadow:0 30px 80px rgba(0,0,0,.55);}
  .info-modal h3{font-family:var(--font-display);font-size:17px;letter-spacing:.1em;text-transform:uppercase;margin:0 0 10px;color:var(--cream);}
  .info-modal p{font-size:13px;color:var(--muted);line-height:1.7;margin:0 0 16px;}
  .info-modal .stem-intro-note{
    border:1px solid rgba(95,179,163,.32);
    border-radius:12px;
    padding:12px 13px;
    background:rgba(95,179,163,.08);
    color:var(--muted);
    font-size:12px;
    line-height:1.65;
    margin:0 0 16px;
  }
  .info-modal .modal-check-row{
    display:flex;
    align-items:center;
    gap:8px;
    font-family:var(--font-mono);
    font-size:10px;
    color:var(--muted-dim);
    margin:0 0 15px;
    cursor:pointer;
  }
  .info-modal .modal-check-row input{accent-color:var(--amber);width:14px;height:14px;cursor:pointer;}
  body.workflow-pending .workflow-content{display:none!important;}
  body.workflow-stem .workflow-master-only, body.workflow-stem .workflow-analyzer-only, body.workflow-stem .workflow-master-analyzer{display:none!important;}
  body.workflow-master .workflow-stem-only, body.workflow-master .workflow-analyzer-only{display:none!important;}
  body.workflow-analyzer .workflow-stem-only, body.workflow-analyzer .workflow-master-only{display:none!important;}



  .master-path-switcher{
    margin-top:16px;
    padding:14px;
    border:1px solid var(--line-soft);
    border-radius:12px;
    background:rgba(0,0,0,.12);
  }
  .master-path-switcher-title{
    font-family:var(--font-mono);
    font-size:10px;
    color:var(--muted-dim);
    letter-spacing:.11em;
    text-transform:uppercase;
    margin-bottom:10px;
  }
  .master-path-switcher .switcher-buttons{
    display:flex;
    gap:10px;
    flex-wrap:wrap;
  }
  .master-path-switcher .btn.active{
    border-color:var(--amber);
    color:#241c10;
    background:var(--amber);
  }




  /* ===== After choosing Referenz / Genre / Advanced, hide the top choice panel ===== */
  body.master-path-reference #masterChoiceGate,
  body.master-path-genre #masterChoiceGate,
  body.master-path-advanced #masterChoiceGate{
    display:none!important;
  }

  /* Keep the analog bus / tape machine animation visible after a path was chosen */
  body.workflow-master.master-path-reference .studio-deck,
  body.workflow-master.master-path-genre .studio-deck,
  body.workflow-master.master-path-advanced .studio-deck{
    display:flex!important;
  }

  /* ===== Step-by-step Master Choice Gate ===== */
  .master-choice-gate{
    display:none;
    margin:0 0 22px;
    padding:24px;
    border-radius:18px;
    border:1px solid rgba(227,161,60,.28);
    background:linear-gradient(135deg,rgba(227,161,60,.13),rgba(95,179,163,.08));
    box-shadow:0 18px 44px rgba(0,0,0,.20), inset 0 1px 0 rgba(255,255,255,.04);
  }
  body.workflow-master:not(.master-path-reference):not(.master-path-genre):not(.master-path-advanced) .master-choice-gate{
    display:block;
  }
  body.workflow-master:not(.master-path-reference):not(.master-path-genre):not(.master-path-advanced) #workflowSongUploadCard,
  body.workflow-master:not(.master-path-reference):not(.master-path-genre):not(.master-path-advanced) .master-path-hero,
  body.workflow-master:not(.master-path-reference):not(.master-path-genre):not(.master-path-advanced) .master-wizard,
  body.workflow-master:not(.master-path-reference):not(.master-path-genre):not(.master-path-advanced) .ladder-card,
  body.workflow-master:not(.master-path-reference):not(.master-path-genre):not(.master-path-advanced) .studio-deck,
  body.workflow-master:not(.master-path-reference):not(.master-path-genre):not(.master-path-advanced) .grid,
  body.workflow-master:not(.master-path-reference):not(.master-path-genre):not(.master-path-advanced) .dropzone,
  body.workflow-master:not(.master-path-reference):not(.master-path-genre):not(.master-path-advanced) .master-status-card{
    display:none!important;
  }
  .master-choice-gate h2{
    margin:0 0 8px;
    font-family:var(--font-display);
    font-size:24px;
    letter-spacing:.08em;
    color:var(--cream);
  }
  .master-choice-gate p{
    margin:0 0 18px;
    color:var(--muted);
    line-height:1.65;
    font-size:13px;
    max-width:780px;
  }
  .master-choice-grid{
    display:grid;
    grid-template-columns:repeat(3,1fr);
    gap:14px;
  }
  .master-choice-card{
    border:1px solid var(--line);
    border-radius:14px;
    padding:18px;
    background:rgba(0,0,0,.13);
    cursor:pointer;
    transition:transform .16s ease,border-color .16s ease,background .16s ease;
    text-align:left;
    color:var(--cream);
  }
  .master-choice-card:hover{
    transform:translateY(-2px);
    border-color:var(--amber);
    background:rgba(227,161,60,.08);
  }
  .master-choice-card .icon{
    font-size:26px;
    margin-bottom:10px;
  }
  .master-choice-card h3{
    margin:0 0 8px;
    font-family:var(--font-display);
    font-size:14px;
    letter-spacing:.10em;
    text-transform:uppercase;
  }
  .master-choice-card span{
    display:block;
    color:var(--muted);
    font-size:12px;
    line-height:1.55;
  }
  @media(max-width:760px){
    .master-choice-grid{grid-template-columns:1fr;}
    .master-choice-gate h2{font-size:20px;}
  }

  /* ===== Distinct visual layouts for Master Paths ===== */
  .master-path-hero{
    display:none;
    margin:0 0 18px;
    padding:22px 24px;
    border-radius:18px;
    border:1px solid rgba(227,161,60,.28);
    background:linear-gradient(135deg,rgba(227,161,60,.14),rgba(95,179,163,.07));
    box-shadow:0 18px 44px rgba(0,0,0,.18), inset 0 1px 0 rgba(255,255,255,.04);
  }
  body.workflow-master .master-path-hero{display:block;}
  .master-path-hero .eyebrow{
    font-family:var(--font-mono);
    font-size:10px;
    color:var(--muted-dim);
    text-transform:uppercase;
    letter-spacing:.14em;
    margin-bottom:8px;
  }
  .master-path-hero h2{
    margin:0 0 8px;
    font-family:var(--font-display);
    font-size:24px;
    letter-spacing:.08em;
    color:var(--cream);
  }
  .master-path-hero p{
    margin:0;
    color:var(--muted);
    font-size:13px;
    line-height:1.65;
    max-width:760px;
  }
  .master-path-hero .hero-ref,
  .master-path-hero .hero-genre,
  .master-path-hero .hero-advanced{display:none;}
  body.master-path-reference .master-path-hero .hero-ref{display:block;}
  body.master-path-genre .master-path-hero .hero-genre{display:block;}
  body.master-path-advanced .master-path-hero .hero-advanced{display:block;}

  body.master-path-reference .master-path-hero{
    border-color:rgba(95,179,163,.42);
    background:
      radial-gradient(circle at 15% 25%,rgba(95,179,163,.24),transparent 32%),
      linear-gradient(135deg,rgba(95,179,163,.15),rgba(227,161,60,.07));
  }
  body.master-path-genre .master-path-hero{
    border-color:rgba(227,161,60,.38);
    background:
      radial-gradient(circle at 85% 20%,rgba(227,161,60,.22),transparent 34%),
      linear-gradient(135deg,rgba(227,161,60,.14),rgba(0,0,0,.08));
  }
  body.master-path-advanced .master-path-hero{
    border-color:rgba(224,88,76,.35);
    background:
      radial-gradient(circle at 50% 15%,rgba(224,88,76,.18),transparent 32%),
      linear-gradient(135deg,rgba(0,0,0,.12),rgba(227,161,60,.10));
  }

  body.workflow-master .master-wizard{
    transition:all .25s ease;
  }
  body.master-path-reference .master-wizard{
    border-color:rgba(95,179,163,.44);
    background:linear-gradient(180deg,rgba(95,179,163,.12),rgba(0,0,0,.10));
  }
  body.master-path-reference .master-wizard h3:before{
    content:"🎧 ";
  }
  body.master-path-genre .master-wizard{
    border-color:rgba(227,161,60,.42);
    background:linear-gradient(135deg,rgba(227,161,60,.14),rgba(0,0,0,.10));
  }
  body.master-path-genre .master-wizard h3:before{
    content:"🎚️ ";
  }
  body.master-path-advanced .master-wizard{
    border-color:rgba(224,88,76,.35);
    background:linear-gradient(135deg,rgba(0,0,0,.18),rgba(227,161,60,.08));
  }
  body.master-path-advanced .master-wizard h3:before{
    content:"⚙️ ";
  }

  body.master-path-reference .master-wizard .wizard-grid{
    grid-template-columns:minmax(280px, 1fr);
  }
  body.master-path-reference .master-wizard .ref-track-step{
    border-color:rgba(95,179,163,.42);
    background:rgba(95,179,163,.08);
    padding:18px;
  }
  body.master-path-reference .ref-drop{
    min-height:96px;
    display:flex;
    align-items:center;
    justify-content:center;
    border-color:rgba(95,179,163,.48);
    color:var(--teal);
    background:rgba(95,179,163,.05);
  }

  body.master-path-genre .master-wizard .wizard-grid{
    grid-template-columns:repeat(2,minmax(220px,1fr));
  }
  body.master-path-genre .master-wizard .wizard-step{
    background:rgba(227,161,60,.055);
    border-color:rgba(227,161,60,.24);
  }
  body.master-path-genre .ref-track-step{
    display:none!important;
  }

  body.master-path-advanced .master-wizard{
    padding-bottom:22px;
  }
  body.master-path-advanced .advanced-panel{
    border-color:rgba(227,161,60,.34);
    background:rgba(0,0,0,.18);
  }

  .master-path-switcher{
    position:relative;
  }
  body.master-path-reference .master-path-switcher{
    border-color:rgba(95,179,163,.34);
  }
  body.master-path-genre .master-path-switcher{
    border-color:rgba(227,161,60,.30);
  }
  body.master-path-advanced .master-path-switcher{
    border-color:rgba(224,88,76,.28);
  }

  @media(max-width:760px){
    .master-path-hero h2{font-size:20px;}
    body.master-path-genre .master-wizard .wizard-grid{grid-template-columns:1fr;}
  }

  /* ===== Clean Master Path Views ===== */
  body.workflow-master.master-path-reference .master-wizard .wizard-grid{
    grid-template-columns:1fr;
  }
  body.workflow-master.master-path-reference .master-wizard .wizard-step:not(.ref-track-step){
    display:none!important;
  }
  
  body.workflow-master.master-path-reference .wizard-sub{
    font-size:0;
  }
  body.workflow-master.master-path-reference .wizard-sub:after{
    content:"Lade zuerst deinen Song hoch und danach optional einen Referenztrack. MASTR richtet das Mastering dann stärker am Klangbild deiner Referenz aus.";
    font-size:12px;
    color:var(--muted);
    line-height:1.55;
  }

  body.workflow-master.master-path-genre #referenceTrackStep{
    display:none!important;
  }
  
  body.workflow-master.master-path-genre .wizard-sub{
    font-size:0;
  }
  body.workflow-master.master-path-genre .wizard-sub:after{
    content:"Wähle Genre, Character, KI Repair und Mastering Style. Das ist der schnellste geführte Weg zu einem fertigen Master.";
    font-size:12px;
    color:var(--muted);
    line-height:1.55;
  }

  body.workflow-master.master-path-advanced .master-wizard .wizard-grid{
    display:none!important;
  }
  body.workflow-master.master-path-advanced #advancedPanel{
    display:block!important;
  }
  body.workflow-master.master-path-advanced .wizard-sub{
    font-size:0;
  }
  body.workflow-master.master-path-advanced .wizard-sub:after{
    content:"Nutze Advanced für manuelle Nachkorrekturen und Feintuning. Die Detailregler werden direkt unter diesem Bereich geöffnet.";
    font-size:12px;
    color:var(--muted);
    line-height:1.55;
  }

  /* ===== Welcome Modal (post-login) ===== */
  .welcome-overlay{
    display:none;
    position:fixed;
    inset:0;
    z-index:100000;
    background:rgba(10,8,6,.62);
    backdrop-filter:blur(14px) saturate(120%);
    -webkit-backdrop-filter:blur(14px) saturate(120%);
    align-items:center;
    justify-content:center;
    padding:24px;
    opacity:0;
    transition:opacity .35s ease;
  }
  .welcome-overlay.active{display:flex;}
  .welcome-overlay.show{opacity:1;}
  .welcome-overlay.fade-out{opacity:0;}
  .welcome-modal{
    width:100%;
    max-width:820px;
    max-height:86vh;
    overflow-y:auto;
    background:linear-gradient(165deg, rgba(43,38,32,.94), rgba(24,21,18,.97));
    border:1px solid rgba(227,161,60,.30);
    border-radius:22px;
    padding:36px 40px 32px;
    box-shadow:0 40px 90px rgba(0,0,0,.55), inset 0 1px 0 rgba(255,255,255,.05), 0 0 60px rgba(227,161,60,.08);
    color:var(--cream);
    transform:translateY(14px) scale(.98);
    transition:transform .35s cubic-bezier(.16,1,.3,1);
  }
  .welcome-overlay.show .welcome-modal{transform:translateY(0) scale(1);}
  .welcome-modal::-webkit-scrollbar{width:8px;}
  .welcome-modal::-webkit-scrollbar-thumb{background:rgba(227,161,60,.35);border-radius:4px;}
  .welcome-modal h1{
    font-family:var(--font-display);font-weight:800;font-size:28px;letter-spacing:.06em;
    margin:0 0 18px;color:var(--cream);
  }
  .welcome-modal h1 span{color:var(--amber);}
  .welcome-modal h2{
    font-family:var(--font-display);font-weight:700;font-size:15px;letter-spacing:.08em;
    text-transform:uppercase;color:var(--amber);margin:26px 0 10px;
  }
  .welcome-modal p{
    font-family:var(--font-body);font-size:14.5px;line-height:1.7;color:var(--muted);margin:0 0 14px;
  }
  .welcome-modal p strong{color:var(--cream);font-weight:600;}
  .welcome-modal .welcome-callout{
    background:rgba(227,161,60,.08);border:1px solid rgba(227,161,60,.28);border-radius:12px;
    padding:14px 16px;margin:18px 0;font-size:14px;line-height:1.65;color:var(--cream);
  }
  .welcome-modal .welcome-signoff{
    font-family:var(--font-display);font-size:15px;color:var(--cream);margin-top:24px;text-align:center;
  }
  .welcome-modal .welcome-confirm-row{
    margin-top:26px;display:flex;flex-direction:column;align-items:center;gap:12px;
  }
  .btn.welcome-confirm{
    font-size:15px;padding:16px 36px;border-radius:999px;width:100%;max-width:420px;
    box-shadow:0 0 32px rgba(227,161,60,.28);
  }
  .welcome-dont-show{
    display:flex;align-items:center;gap:7px;font-family:var(--font-mono);font-size:11px;color:var(--muted-dim);cursor:pointer;
  }
  .welcome-dont-show input{accent-color:var(--amber);width:14px;height:14px;cursor:pointer;}
  body.welcome-active .app{filter:blur(3px) brightness(.85);pointer-events:none;user-select:none;transition:filter .35s ease;}
  body.welcome-fading .app{filter:blur(0) brightness(1);}
  @media(max-width:640px){
    .welcome-modal{padding:26px 22px 24px;max-height:90vh;}
    .welcome-modal h1{font-size:22px;}
  }

  /* ===== Desktop App Install Hint ===== */
  .install-hint-overlay{
    display:none;
    position:fixed;
    inset:0;
    z-index:100002;
    background:rgba(8,7,6,.66);
    backdrop-filter:blur(12px) saturate(120%);
    -webkit-backdrop-filter:blur(12px) saturate(120%);
    align-items:center;
    justify-content:center;
    padding:24px;
  }
  .install-hint-overlay.active{display:flex;}
  .install-hint-card{
    width:min(720px,94vw);
    display:grid;
    grid-template-columns:minmax(0,1fr) 240px;
    gap:22px;
    align-items:center;
    background:linear-gradient(165deg, rgba(43,38,32,.98), rgba(18,16,14,.99));
    border:1px solid rgba(227,161,60,.32);
    border-radius:20px;
    padding:26px;
    box-shadow:0 34px 90px rgba(0,0,0,.58), inset 0 1px 0 rgba(255,255,255,.05);
  }
  .install-hint-kicker{
    font-family:var(--font-mono);
    color:var(--amber);
    font-size:10px;
    letter-spacing:.16em;
    text-transform:uppercase;
    margin-bottom:8px;
  }
  .install-hint-card h3{
    margin:0 0 10px;
    font-family:var(--font-display);
    font-size:22px;
    letter-spacing:.08em;
    text-transform:uppercase;
    color:var(--cream);
  }
  .install-hint-card p{
    margin:0 0 14px;
    color:var(--muted);
    font-size:13px;
    line-height:1.7;
  }
  .install-hint-steps{
    margin:14px 0 0;
    padding:0;
    list-style:none;
    display:grid;
    gap:8px;
  }
  .install-hint-steps li{
    display:flex;
    gap:9px;
    align-items:flex-start;
    color:var(--muted);
    font-size:12px;
    line-height:1.55;
  }
  .install-hint-steps b{
    flex:0 0 auto;
    display:inline-flex;
    align-items:center;
    justify-content:center;
    width:21px;
    height:21px;
    border-radius:50%;
    background:rgba(227,161,60,.14);
    border:1px solid rgba(227,161,60,.36);
    color:var(--amber);
    font-family:var(--font-mono);
    font-size:10px;
  }
  .install-hint-visual{
    border:1px solid rgba(95,179,163,.30);
    border-radius:16px;
    padding:12px;
    background:radial-gradient(circle at 70% 18%, rgba(95,179,163,.16), transparent 34%), rgba(0,0,0,.18);
  }
  .install-browser-art{
    border:1px solid rgba(243,236,225,.12);
    border-radius:13px;
    overflow:hidden;
    background:#171411;
    box-shadow:0 20px 50px rgba(0,0,0,.35);
  }
  .install-browser-top{
    height:34px;
    display:flex;
    align-items:center;
    gap:7px;
    padding:8px;
    border-bottom:1px solid rgba(243,236,225,.08);
    background:rgba(43,38,32,.86);
  }
  .install-browser-dot{width:7px;height:7px;border-radius:50%;background:rgba(227,161,60,.52);}
  .install-address{
    flex:1;
    height:16px;
    border-radius:999px;
    background:rgba(243,236,225,.08);
    border:1px solid rgba(243,236,225,.07);
  }
  .install-icon-chip{
    height:19px;
    min-width:48px;
    display:flex;
    align-items:center;
    justify-content:center;
    border-radius:6px;
    background:rgba(95,179,163,.16);
    border:1px solid rgba(95,179,163,.38);
    color:var(--teal);
    font-family:var(--font-mono);
    font-size:9px;
  }
  .install-app-art{
    margin:14px;
    height:138px;
    border-radius:12px;
    border:1px solid rgba(227,161,60,.24);
    background:
      linear-gradient(90deg, rgba(227,161,60,.11) 1px, transparent 1px) 0 0/28px 28px,
      linear-gradient(0deg, rgba(227,161,60,.08) 1px, transparent 1px) 0 0/28px 28px,
      linear-gradient(160deg, rgba(43,38,32,.95), rgba(20,17,14,.96));
    position:relative;
    overflow:hidden;
  }
  .install-app-art:before{
    content:"MASTR";
    position:absolute;
    left:16px;
    top:14px;
    font-family:var(--font-display);
    font-weight:800;
    letter-spacing:.16em;
    color:var(--cream);
    font-size:15px;
  }
  .install-app-meter{
    position:absolute;
    left:16px;
    right:16px;
    bottom:18px;
    height:9px;
    border-radius:999px;
    background:linear-gradient(90deg, var(--teal), var(--amber));
    box-shadow:0 0 22px rgba(227,161,60,.24);
  }
  .install-app-knobs{
    position:absolute;
    left:16px;
    top:56px;
    display:flex;
    gap:12px;
  }
  .install-app-knobs span{
    width:28px;
    height:28px;
    border-radius:50%;
    border:1px solid rgba(227,161,60,.30);
    background:radial-gradient(circle at 35% 28%, rgba(255,255,255,.18), transparent 18%), #211c17;
    box-shadow:inset 0 0 0 4px rgba(0,0,0,.22);
  }
  .install-hint-actions{
    display:flex;
    align-items:center;
    gap:10px;
    flex-wrap:wrap;
    margin-top:18px;
  }
  .install-hint-check{
    display:flex;
    align-items:center;
    gap:7px;
    font-family:var(--font-mono);
    font-size:10px;
    color:var(--muted-dim);
    cursor:pointer;
  }
  .install-hint-check input{accent-color:var(--amber);width:14px;height:14px;cursor:pointer;}
  @media(max-width:720px){
    .install-hint-card{grid-template-columns:1fr;padding:22px;}
    .install-hint-visual{order:-1;}
  }


  /* ===== Final master step behavior ===== */
  body.workflow-master.master-path-reference #masterPathCard,
  body.workflow-master.master-path-genre #masterPathCard,
  body.workflow-master.master-path-advanced #masterPathCard{
    display:none!important;
  }

  body.workflow-master.master-path-reference #masterChoiceGate,
  body.workflow-master.master-path-genre #masterChoiceGate,
  body.workflow-master.master-path-advanced #masterChoiceGate{
    display:none!important;
  }


  /* ===== User Templates / Firestore Presets ===== */
  .template-panel{
    margin:16px 0;
    border:1px solid rgba(95,179,163,.35);
    border-radius:14px;
    background:linear-gradient(135deg, rgba(95,179,163,.10), rgba(227,161,60,.05));
    padding:16px;
  }
  .template-panel h3{
    margin:0 0 8px;
    font-family:var(--font-display);
    font-size:13px;
    letter-spacing:.14em;
    text-transform:uppercase;
    color:var(--cream);
  }
  .template-panel p{
    margin:0 0 12px;
    color:var(--muted);
    font-size:12px;
    line-height:1.55;
  }
  .template-row{
    display:flex;
    gap:10px;
    flex-wrap:wrap;
    align-items:center;
    margin-bottom:12px;
  }
  .template-row input{
    flex:1;
    min-width:220px;
    background:var(--panel-raised);
    border:1px solid var(--line);
    border-radius:8px;
    color:var(--cream);
    padding:11px 12px;
    font-family:var(--font-body);
    font-size:13px;
    outline:none;
  }
  .template-row input:focus{border-color:var(--teal);box-shadow:0 0 0 3px rgba(95,179,163,.10);}
  .template-list{
    display:flex;
    flex-direction:column;
    gap:8px;
  }
  .template-item{
    display:grid;
    grid-template-columns:1fr auto auto;
    gap:8px;
    align-items:center;
    padding:10px 12px;
    border:1px solid var(--line-soft);
    border-radius:9px;
    background:rgba(0,0,0,.13);
  }
  .template-item .template-name{
    font-family:var(--font-body);
    color:var(--cream);
    font-size:13px;
    overflow:hidden;
    text-overflow:ellipsis;
    white-space:nowrap;
  }
  .template-item .template-meta{
    font-family:var(--font-mono);
    color:var(--muted-dim);
    font-size:9px;
    margin-top:3px;
  }
  .template-empty{
    font-family:var(--font-mono);
    font-size:11px;
    color:var(--muted-dim);
    padding:10px 0;
  }
  .template-message{
    min-height:16px;
    font-family:var(--font-mono);
    color:var(--muted);
    font-size:10px;
    line-height:1.5;
  }
  .template-message.ok{color:var(--teal);}
  .template-message.error{color:var(--red);}
  @media(max-width:560px){
    .template-item{grid-template-columns:1fr;}
    .template-row input{min-width:100%;}
  }


  /* ===== Streaming Preview / Platform Check ===== */
  .streaming-check-panel{
    margin:16px 0;
    border:1px solid rgba(95,179,163,.35);
    border-radius:14px;
    background:linear-gradient(135deg, rgba(95,179,163,.10), rgba(227,161,60,.05));
    padding:16px;
  }
  .streaming-check-panel h3{
    margin:0 0 8px;
    font-family:var(--font-display);
    font-size:13px;
    letter-spacing:.14em;
    text-transform:uppercase;
    color:var(--cream);
  }
  .streaming-check-panel p{
    margin:0 0 12px;
    color:var(--muted);
    font-size:12px;
    line-height:1.6;
  }
  .streaming-grid{
    display:grid;
    grid-template-columns:repeat(2,1fr);
    gap:10px;
    margin-top:12px;
  }
  @media(max-width:720px){.streaming-grid{grid-template-columns:1fr;}}
  .streaming-card{
    border:1px solid var(--line-soft);
    border-radius:11px;
    background:rgba(0,0,0,.14);
    padding:12px;
    font-family:var(--font-mono);
  }
  .streaming-card .platform{
    font-family:var(--font-display);
    font-size:12px;
    letter-spacing:.10em;
    text-transform:uppercase;
    color:var(--cream);
    margin-bottom:6px;
  }
  .streaming-card .result{
    color:var(--muted);
    font-size:10px;
    line-height:1.55;
  }
  .streaming-card.safe{border-color:rgba(95,179,163,.45);}
  .streaming-card.warn{border-color:rgba(227,161,60,.45);}
  .streaming-card.danger{border-color:rgba(224,88,76,.45);}
  .streaming-card.safe .platform{color:var(--teal);}
  .streaming-card.warn .platform{color:var(--amber);}
  .streaming-card.danger .platform{color:var(--red);}
  .streaming-summary{
    margin-top:12px;
    padding:12px;
    border-radius:10px;
    border:1px solid var(--line-soft);
    background:rgba(0,0,0,.12);
    font-family:var(--font-mono);
    font-size:10px;
    color:var(--muted);
    line-height:1.65;
  }
  .streaming-summary strong{color:var(--cream);}


  /* ===== Streaming Preview Standalone Workflow ===== */
  @media(min-width:821px){
    .guided-grid{grid-template-columns:repeat(4,1fr);}
  }
  .streaming-audition-panel{
    display:none;
    margin:0 0 22px;
    padding:20px;
    border-radius:18px;
    border:1px solid rgba(95,179,163,.36);
    background:linear-gradient(135deg,rgba(95,179,163,.12),rgba(227,161,60,.06));
    box-shadow:0 18px 44px rgba(0,0,0,.18), inset 0 1px 0 rgba(255,255,255,.04);
  }
  body.workflow-streaming .streaming-audition-panel{display:block;}
  body.workflow-streaming .workflow-stem-only,
  body.workflow-streaming .workflow-master-only,
  body.workflow-streaming .workflow-analyzer-only,
  body.workflow-streaming .workflow-master-analyzer,
  body.workflow-streaming .ladder-card,
  body.workflow-streaming .studio-deck,
  body.workflow-streaming .grid,
  body.workflow-streaming .dropzone,
  body.workflow-streaming .master-status-card,
  body.workflow-streaming .master-choice-gate,
  body.workflow-streaming .master-path-card{
    display:none!important;
  }
  .streaming-audition-panel h2{
    margin:0 0 8px;
    font-family:var(--font-display);
    font-size:22px;
    letter-spacing:.08em;
    text-transform:uppercase;
    color:var(--cream);
  }
  .streaming-audition-panel p{
    margin:0 0 14px;
    color:var(--muted);
    font-size:13px;
    line-height:1.65;
  }
  .streaming-upload-box{
    border:1px dashed rgba(95,179,163,.45);
    border-radius:12px;
    padding:18px;
    background:rgba(0,0,0,.12);
    margin:14px 0;
  }
  .streaming-controls{
    display:grid;
    grid-template-columns:1fr 1fr;
    gap:12px;
    margin:14px 0;
  }
  @media(max-width:720px){.streaming-controls{grid-template-columns:1fr;}}
  .streaming-player-row{
    display:flex;
    gap:10px;
    flex-wrap:wrap;
    align-items:center;
    margin:14px 0;
  }
  .streaming-platform-note{
    font-family:var(--font-mono);
    font-size:10px;
    color:var(--muted-dim);
    line-height:1.6;
    margin-top:8px;
  }
  .streaming-audition-status{
    font-family:var(--font-mono);
    font-size:11px;
    color:var(--muted);
    line-height:1.6;
    margin-top:10px;
    min-height:18px;
  }
  .streaming-audition-status.ok{color:var(--teal);}
  .streaming-audition-status.warn{color:var(--amber);}
  .streaming-audition-status.error{color:var(--red);}
  .streaming-audio{
    width:100%;
    margin-top:10px;
  }


  /* ===== Streaming Preview Fix ===== */
  body.workflow-streaming #streamingAuditionPanel{
    display:block!important;
  }
  body.workflow-streaming #guidedStart,
  body.workflow-streaming .guided-start{
    display:none!important;
  }
  body.workflow-streaming #masterPathCard,
  body.workflow-streaming #masterChoiceGate,
  body.workflow-streaming #stemPanel,
  body.workflow-streaming .workflow-card,
  body.workflow-streaming .master-status-card,
  body.workflow-streaming .dropzone,
  body.workflow-streaming .ladder-card,
  body.workflow-streaming .studio-deck,
  body.workflow-streaming .grid{
    display:none!important;
  }
  body.workflow-streaming #workflowToolbar,
  body.workflow-streaming .workflow-toolbar{
    display:flex!important;
  }


  /* ===== Clean Workflow State Guard ===== */
  #streamingAuditionPanel{
    display:none;
  }

  body.workflow-streaming #streamingAuditionPanel{
    display:block!important;
  }

  body.workflow-pending #streamingAuditionPanel,
  body.workflow-stem #streamingAuditionPanel,
  body.workflow-master #streamingAuditionPanel,
  body.workflow-analyzer #streamingAuditionPanel{
    display:none!important;
  }

  body.workflow-streaming #stemPanel,
  body.workflow-streaming .workflow-card,
  body.workflow-streaming .master-status-card,
  body.workflow-streaming .dropzone,
  body.workflow-streaming .ladder-card,
  body.workflow-streaming .studio-deck,
  body.workflow-streaming .grid,
  body.workflow-streaming #masterPathCard,
  body.workflow-streaming #masterChoiceGate{
    display:none!important;
  }


/* v30 Streaming Cleanup */
body.workflow-master .streaming-preview-card,
body.workflow-master .platform-check-card,
body.workflow-master [data-section="streaming-preview"]{
  display:none !important;
}
body.workflow-streaming .streaming-preview-card,
body.workflow-streaming .platform-check-card,
body.workflow-streaming [data-section="streaming-preview"]{
  display:block !important;
}


/* v31: Streaming Check existiert nur im eigenen Streaming Preview Workflow */
#streamingCheckPanel,
#runStreamingCheckBtn,
#streamingCheckResults,
#streamingCheckSummary{
  display:none !important;
}
body.workflow-streaming #streamingCheckPanel{
  display:none !important;
}
body.workflow-streaming #streamingAuditionPanel{
  display:block !important;
}


/* ===== v40 Trinkgeldkasse nach erfolgreichem Master ===== */
.donation-modal-overlay{
  display:none;
  position:fixed;
  inset:0;
  z-index:100004;
  background:rgba(8,7,6,.68);
  backdrop-filter:blur(10px);
  align-items:center;
  justify-content:center;
  padding:24px;
}
.donation-modal-overlay.active{display:flex;}
.donation-modal{
  width:min(560px,94vw);
  background:linear-gradient(165deg, rgba(43,38,32,.98), rgba(24,21,18,.99));
  border:1px solid rgba(227,161,60,.34);
  border-radius:20px;
  padding:26px;
  box-shadow:0 30px 90px rgba(0,0,0,.58), inset 0 1px 0 rgba(255,255,255,.05);
}
.donation-modal h2{
  margin:0 0 8px;
  font-family:var(--font-display);
  font-size:21px;
  letter-spacing:.08em;
  text-transform:uppercase;
  color:var(--cream);
}
.donation-modal p{
  margin:0 0 16px;
  color:var(--muted);
  font-size:13px;
  line-height:1.65;
}
.donation-actions{
  display:flex;
  gap:10px;
  flex-wrap:wrap;
  margin-top:16px;
}
.donation-actions a{text-decoration:none;}



/* ===== v50 Clean Master Status ===== */
.master-live-status{
  display:none;
  margin:12px 0 16px;
  padding:13px 14px;
  border-radius:12px;
  border:1px solid rgba(95,179,163,.30);
  background:linear-gradient(90deg, rgba(95,179,163,.10), rgba(227,161,60,.06));
  font-family:var(--font-mono);
  font-size:10px;
  color:var(--muted);
}
.master-live-status.active{display:block;}
.master-live-status .status-line{display:flex;justify-content:space-between;gap:12px;align-items:center;margin-bottom:8px;}
.master-live-status strong{color:var(--cream);font-family:var(--font-display);letter-spacing:.08em;text-transform:uppercase;}
.master-live-status .phase{color:var(--amber);}
.master-live-bar{height:7px;border-radius:999px;background:rgba(255,255,255,.10);overflow:hidden;}
.master-live-fill{height:100%;width:0%;border-radius:999px;background:linear-gradient(90deg,var(--teal),var(--amber));transition:width .25s ease;}
.master-profile-chip{margin-top:8px;color:var(--muted-dim);line-height:1.5;}
.master-profile-chip b{color:var(--teal);}


/* ===== v52 Native Stem Progress + Premix Player ===== */
.stem-inline-progress{
  display:none;
  margin:10px 0 4px;
  padding:12px;
  border:1px solid rgba(95,179,163,.32);
  border-radius:10px;
  background:rgba(95,179,163,.08);
  font-family:var(--font-mono);
  font-size:10px;
  color:var(--muted);
}
.stem-inline-progress.active{display:block;}
.stem-inline-progress .head{display:flex;justify-content:space-between;gap:10px;margin-bottom:8px;}
.stem-inline-progress strong{color:var(--cream);}
.stem-inline-progress .bar{height:7px;border-radius:999px;overflow:hidden;background:rgba(255,255,255,.10);}
.stem-inline-progress .fill{height:100%;width:0%;border-radius:999px;background:linear-gradient(90deg,var(--amber),var(--teal));transition:width .22s ease;}
.stem-premix-player{
  display:none;
  margin-top:12px;
  padding:13px;
  border:1px solid rgba(227,161,60,.30);
  border-radius:12px;
  background:rgba(227,161,60,.07);
}
.stem-premix-player.active{display:block;}
.stem-premix-player h4{margin:0 0 8px;font-family:var(--font-display);font-size:12px;letter-spacing:.12em;text-transform:uppercase;color:var(--cream);}
.stem-premix-player audio{width:100%;display:block;margin:8px 0;}
.stem-premix-player .premix-note{font-family:var(--font-mono);font-size:10px;color:var(--muted-dim);line-height:1.5;}