:root{--studio-ink:#172033;--studio-muted:#66738c;--studio-cyan:#20c9e8;--studio-blue:#5277ff;--studio-violet:#8d63ff;--studio-pink:#f06fc5;--studio-line:rgba(83,111,176,.18);--studio-card:rgba(255,255,255,.92);--studio-card-strong:#fff;--studio-shadow:0 26px 70px rgba(33,47,93,.16),0 8px 22px rgba(32,201,232,.08)}
.vocal-studio-page{background:#f5f8ff;color:var(--studio-ink)}
.vocal-studio-page main{background:radial-gradient(circle at 15% 32%,rgba(32,201,232,.13),transparent 28%),radial-gradient(circle at 88% 50%,rgba(141,99,255,.13),transparent 30%),linear-gradient(180deg,#f5f8ff 0%,#eef4ff 100%)}
.vocal-hero{position:relative;min-height:clamp(560px,66vw,790px);display:flex;align-items:flex-end;padding:clamp(110px,13vw,170px) clamp(22px,9vw,145px) clamp(58px,7vw,92px);overflow:hidden;isolation:isolate;background:url("assets/stannet-vocal-studio-bg.png") center 45%/cover no-repeat;border-bottom:1px solid rgba(255,255,255,.42)}
.vocal-hero::before{content:"";position:absolute;inset:0;z-index:-1;background:linear-gradient(90deg,rgba(5,9,20,.66) 0%,rgba(5,9,20,.35) 34%,rgba(5,9,20,.06) 62%,rgba(5,9,20,0) 100%),linear-gradient(180deg,rgba(5,9,20,.12) 0%,rgba(5,9,20,.04) 48%,rgba(5,9,20,.24) 100%)}
.vocal-hero-copy{width:min(590px,100%);color:#fff;text-shadow:0 3px 18px rgba(0,0,0,.42)}
.vocal-hero .eyebrow{margin:0 0 16px;color:#72ecff}.vocal-hero h1{margin:0 0 20px;font-size:clamp(48px,7vw,92px);line-height:.94;letter-spacing:-.055em;color:#fff}.vocal-hero h1 em{color:#c6b5ff;font-style:normal}.vocal-hero h1 em::after{display:none}.vocal-hero p:not(.eyebrow){max-width:560px;margin:0;color:rgba(255,255,255,.9);font-size:clamp(15px,1.4vw,18px);line-height:1.7}
.vocal-shell{width:min(1120px,100%);margin:0 auto;padding-top:clamp(54px,7vw,92px);padding-bottom:clamp(62px,8vw,110px);color:var(--studio-ink)}.vocal-shell .eyebrow{color:var(--studio-violet)}
.drop-zone,.player-panel,.separation-panel,.roadmap article{border:1px solid var(--studio-line);background:var(--studio-card);box-shadow:var(--studio-shadow);backdrop-filter:blur(14px)}
.drop-zone{position:relative;overflow:hidden;border-radius:24px;padding:clamp(34px,6vw,70px) clamp(18px,5vw,52px);text-align:center;transition:transform .2s ease,box-shadow .2s ease,border-color .2s ease}.drop-zone::before{content:"";position:absolute;inset:0;pointer-events:none;background:radial-gradient(circle at 90% 0%,rgba(240,111,197,.16),transparent 28%),radial-gradient(circle at 8% 100%,rgba(32,201,232,.14),transparent 30%)}.drop-zone.dragging{transform:translateY(-4px);border-color:rgba(32,201,232,.62);box-shadow:0 30px 76px rgba(33,47,93,.2),0 10px 28px rgba(32,201,232,.16)}
.drop-icon{position:relative;z-index:1;width:82px;height:82px;margin:0 auto 20px;display:grid;place-items:center;border-radius:22px;font-size:40px;color:#fff;background:linear-gradient(135deg,var(--studio-cyan),var(--studio-blue) 48%,var(--studio-violet));box-shadow:0 16px 36px rgba(82,119,255,.24)}.drop-zone h2{position:relative;z-index:1;margin:0 0 10px;color:var(--studio-ink);font-size:clamp(28px,4.4vw,46px);line-height:1.05;letter-spacing:-.04em}.drop-zone p,.muted,.studio-status{color:var(--studio-muted)}
.drop-zone button,.studio-actions button,.separation-panel button{position:relative;z-index:1;min-height:46px;border-radius:12px;padding:14px 20px;font:700 12px var(--font-main);letter-spacing:.065em;cursor:pointer;transition:transform .18s ease,box-shadow .18s ease,border-color .18s ease,opacity .18s ease}.drop-zone button,.separation-panel button{border:0;color:#fff;background:linear-gradient(135deg,var(--studio-blue),var(--studio-violet));box-shadow:0 12px 26px rgba(82,119,255,.24)}.separation-panel button{background:linear-gradient(135deg,var(--studio-cyan),var(--studio-blue));box-shadow:0 12px 26px rgba(32,201,232,.18)}.drop-zone button:hover,.studio-actions button:hover,.separation-panel button:hover{transform:translateY(-2px)}.drop-zone small{position:relative;z-index:1;display:block;margin-top:18px;color:var(--studio-muted)}
.player-panel,.separation-panel{margin-top:24px;border-radius:22px;padding:clamp(22px,4vw,32px)}.player-panel h3{margin-bottom:8px;color:var(--studio-ink);overflow-wrap:anywhere}.player-panel audio,.stem-grid audio{width:100%;margin:18px 0 0}.studio-actions{display:flex;gap:10px;flex-wrap:wrap;margin-top:18px}.studio-actions button{border:1px solid var(--studio-line);background:var(--studio-card-strong);color:var(--studio-ink);box-shadow:0 8px 18px rgba(33,47,93,.08)}
.separation-panel h2{margin:4px 0 10px;color:var(--studio-ink);font-size:clamp(28px,3.8vw,42px);letter-spacing:-.04em}.separation-panel button:disabled{opacity:.5;transform:none;box-shadow:none;cursor:progress}.model-status{margin:.8rem 0 0;font-size:.86rem;letter-spacing:.02em}.separation-progress{height:7px;margin-top:18px;border-radius:999px;background:rgba(82,119,255,.12);overflow:hidden}.separation-progress span{display:block;width:0;height:100%;border-radius:inherit;background:linear-gradient(90deg,var(--studio-cyan),var(--studio-violet),var(--studio-pink));transition:width .25s ease}
.stem-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px;margin-top:20px}.stem-grid article{padding:18px;border:1px solid var(--studio-line);border-radius:18px;background:rgba(248,251,255,.94);box-shadow:0 12px 28px rgba(33,47,93,.08)}.stem-grid h3{color:var(--studio-ink);margin:0 0 2px}
.roadmap{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:12px;margin-top:28px}.roadmap article{min-height:118px;border-radius:18px;padding:17px;display:grid;gap:8px;align-content:start;opacity:.6}.roadmap article.ready{opacity:1;border-color:rgba(32,201,232,.46);background:linear-gradient(145deg,rgba(255,255,255,.96),rgba(236,252,255,.9))}.roadmap b{font-size:22px;color:var(--studio-violet)}.roadmap article.ready b{color:var(--studio-cyan)}.roadmap span{color:var(--studio-ink);font-size:12px;line-height:1.35}.roadmap small{color:var(--studio-muted);font-size:9px;letter-spacing:.08em}.studio-status{margin:18px 0 0;padding-left:4px;font-size:12px}
@media (max-width:1180px){.vocal-hero{min-height:620px;background-position:58% 45%}}
@media (max-width:850px){.vocal-hero{min-height:560px;padding-top:86px;padding-bottom:48px;background-position:64% 46%}.vocal-hero::before{background:linear-gradient(90deg,rgba(5,9,20,.68) 0%,rgba(5,9,20,.36) 48%,rgba(5,9,20,.08) 100%),linear-gradient(180deg,rgba(5,9,20,.08) 0%,rgba(5,9,20,.2) 100%)}.vocal-shell{padding-top:44px}.roadmap{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media (max-width:650px){.vocal-hero{min-height:500px;align-items:flex-end;background-position:68% 45%}.vocal-hero-copy{width:min(420px,100%)}.vocal-hero h1{font-size:clamp(43px,13vw,60px)}.stem-grid{grid-template-columns:1fr}}
@media (max-width:520px){.vocal-hero{min-height:470px;padding-top:74px;padding-bottom:38px;background-position:70% 42%}.vocal-hero::before{background:linear-gradient(90deg,rgba(5,9,20,.72) 0%,rgba(5,9,20,.34) 58%,rgba(5,9,20,.04) 100%),linear-gradient(180deg,rgba(5,9,20,.04) 0%,rgba(5,9,20,.2) 100%)}.drop-zone{border-radius:20px;padding:32px 16px}.drop-icon{width:70px;height:70px;font-size:34px;border-radius:18px}.studio-actions{display:grid}.studio-actions button,.drop-zone button,.separation-panel button{width:100%}.roadmap{grid-template-columns:1fr}}
@media (max-width:390px){.vocal-hero{min-height:450px;background-position:72% 42%}.vocal-hero p:not(.eyebrow){font-size:14px;line-height:1.55}}
