:root{color-scheme:dark;--vs-bg:#050b15;--vs-panel:#0c1725;--vs-line:#25354a;--vs-light:#f4f9ff;--vs-muted:#91a6bd;--vs-cyan:#63dced;--vs-teal:#61e4bb;--vs-purple:#aa98ff}
body.vs-page{margin:0;background:radial-gradient(ellipse 50% 30% at 85% 3%,rgba(116,83,240,.13),transparent 75%),radial-gradient(ellipse 40% 29% at 6% 17%,rgba(30,183,211,.12),transparent 80%),var(--vs-bg);color:var(--vs-light);font-family:Inter,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif}
.vs-page *, .vs-page *::before, .vs-page *::after{box-sizing:border-box}
.vs-container{max-width:1220px;margin:auto;padding:32px 28px 96px}
.vs-breadcrumb{display:flex;gap:11px;align-items:center;font-size:12px;color:#647d98;letter-spacing:.01em;margin-bottom:32px}
.vs-breadcrumb a{color:#7ccde3;text-decoration:none;font-weight:800}.vs-breadcrumb strong{color:#dce8f3}
.vs-hero{min-height:282px;display:grid;grid-template-columns:minmax(0,1.65fr) minmax(230px,.7fr);gap:20px;margin-bottom:30px;position:relative}
.vs-hero-copy{padding:14px 0 12px}
.vs-eyebrow{display:flex;align-items:center;gap:9px;color:#79d6ec;font-size:11px;letter-spacing:.14em;font-weight:850}
.vs-status-dot,.vs-live-dot{display:inline-block;width:8px;height:8px;border-radius:50%;background:var(--vs-teal);box-shadow:0 0 14px rgba(97,228,187,.5)}
.vs-version{color:#b7a7ff;border:1px solid rgba(180,161,255,.25);background:rgba(141,114,241,.09);font-size:9px;border-radius:6px;padding:5px 8px;margin-left:5px}
.vs-hero h1{font-weight:850;letter-spacing:-.055em;font-size:clamp(38px,5.6vw,69px);line-height:1.06;margin:19px 0 16px}
.vs-hero h1 span{background:linear-gradient(95deg,#79e4f2,#a4d2ff,#bc9dff);background-clip:text;-webkit-background-clip:text;color:transparent}
.vs-hero p{max-width:610px;color:#a3b6c9;font-size:15px;line-height:1.8;margin:0}
.vs-hero-pills{display:flex;flex-wrap:wrap;gap:8px;margin-top:22px}.vs-hero-pills span{font-size:11px;color:#aac8d7;background:#122234;border:1px solid #263b53;padding:8px 11px;border-radius:999px}
.vs-hero-art{display:grid;place-items:center;position:relative;min-height:245px;overflow:hidden}.vs-visual-ring{border:1px solid rgba(90,212,230,.15);border-radius:50%;position:absolute;inset:25%}.vs-visual-ring.r1{inset:18%}.vs-visual-ring.r2{inset:8%;border-color:rgba(163,138,241,.10)}.vs-visual-ring.r3{inset:0;border-color:rgba(163,138,241,.05)}.vs-visual-disc{width:188px;height:188px;border:1px solid rgba(126,217,252,.3);border-radius:50%;display:grid;place-items:center;background:radial-gradient(circle at 40% 30%,#183754,#0b1526 75%);color:#b6f3ff;box-shadow:0 0 65px rgba(90,212,230,.07),inset 0 0 35px rgba(90,212,230,.045)}
.vs-step-label{display:flex;align-items:center;gap:12px;color:#8eb9ca;font-size:11px;letter-spacing:.13em;font-weight:900;margin:30px 0 15px}.vs-step-number{display:grid;place-items:center;width:29px;height:29px;border:1px solid #325670;border-radius:9px;background:#122638;color:#8bf1ff;font-size:11px}.vs-divider-line{flex:1;height:1px;background:linear-gradient(90deg,rgba(116,175,202,.23),transparent)}.vs-step-help{font-size:11px;letter-spacing:normal;font-weight:500;color:#748aa4}
.vs-drop{display:flex;align-items:center;gap:22px;min-height:155px;border:1px dashed #365b73;background:linear-gradient(110deg,rgba(23,53,76,.54),rgba(11,22,39,.82));border-radius:22px;padding:25px 29px;transition:.2s}.vs-drop.dragging{border-color:var(--vs-teal);background:#183950}.vs-drop.locked{opacity:.65;pointer-events:none}
.vs-drop-symbol{display:grid;place-items:center;flex:0 0 70px;width:70px;height:70px;border-radius:19px;background:linear-gradient(135deg,#1a4657,#192746);border:1px solid #2b6071;color:#90eeec}.vs-drop-copy{flex:1;min-width:0}.vs-drop-copy h2{margin:0;font-size:18px;letter-spacing:-.025em}.vs-drop-copy p{margin:6px 0 10px;color:#9cafc0;font-size:12px}.vs-drop-copy span{display:block;font-weight:750;color:#9be9f3;font-size:12px;overflow-wrap:anywhere}.vs-drop-copy small{color:#728aa4;font-size:11px;display:block;margin-top:4px}.vs-drop-actions{display:flex;gap:9px;align-items:center}
.vs-btn{border:none;cursor:pointer;font:800 13px/1.35 Inter,system-ui,sans-serif;border-radius:12px;padding:13px 16px;min-height:44px;transition:transform .15s,filter .15s,background .15s;white-space:nowrap}.vs-btn:hover:not(:disabled){transform:translateY(-1px);filter:brightness(1.08)}.vs-btn:disabled{opacity:.4;cursor:not-allowed;transform:none}.vs-btn-primary{background:linear-gradient(110deg,#6de9df,#79c7ef);color:#05202d}.vs-btn-secondary{background:#182638;border:1px solid #34485d;color:#d4e4f4}
.vs-workspace{display:grid;grid-template-columns:minmax(0,1.24fr) minmax(360px,.92fr);gap:20px;align-items:start}.vs-preview-panel,.vs-control-panel{border:1px solid var(--vs-line);border-radius:22px;background:linear-gradient(155deg,rgba(18,33,52,.92),rgba(9,18,32,.96));box-shadow:0 16px 45px rgba(0,0,0,.12);overflow:hidden}
.vs-panel-top{display:flex;justify-content:space-between;gap:8px;align-items:center;padding:17px 21px;border-bottom:1px solid rgba(154,190,212,.11)}.vs-panel-title{font-size:10px;letter-spacing:.14em;color:#b9cadb;font-weight:900;display:flex;align-items:center;gap:8px}.vs-mini-tag{font-size:9px;border:1px solid #294a60;background:#143147;color:#8edcea;border-radius:7px;padding:6px 8px;letter-spacing:.08em;font-weight:850}.vs-tag-green{border-color:#24634e;background:#112c29;color:#82eac8}
.vs-stage{height:315px;position:relative;display:flex;align-items:center;justify-content:center;background:radial-gradient(circle at 50% 45%,#1c2940,#080f1b 70%);margin:18px 19px 12px;border:1px solid rgba(135,172,194,.15);border-radius:17px;overflow:hidden}.vs-stage video{width:100%;height:100%;object-fit:contain;display:none;background:#040a12}.vs-stage.has-file video{display:block}.vs-stage.audio-only video{opacity:.03;pointer-events:none}.vs-stage-empty{display:grid;place-items:center;text-align:center;gap:7px;color:#9aafc2}.vs-stage-empty strong{font-size:15px;color:#c7d9e5}.vs-stage-empty span{font-size:12px}.vs-blank-disc{width:66px;height:66px;display:grid;place-items:center;border:1px solid #354a60;background:#152738;color:#72d8eb;border-radius:50%;margin-bottom:8px;padding-left:3px}.vs-video-badge{position:absolute;bottom:13px;left:13px;border:1px solid rgba(188,220,237,.16);border-radius:7px;background:rgba(5,12,23,.8);color:#b5d9e6;padding:7px 9px;letter-spacing:.1em;font-size:9px;font-weight:900;pointer-events:none;display:none}.vs-stage.has-file:not(.audio-only) .vs-video-badge{display:block}
.vs-player-controls{display:flex;align-items:center;gap:9px;margin:0 20px 8px}.vs-btn-play{background:#1a3547;border:1px solid #2c5b6d;color:#a4ecf3}.vs-btn-icon{background:#1c2c41;border:1px solid #334c64;color:#c4dfeb;min-width:44px}.vs-timing{margin-left:auto;display:flex;gap:8px;color:#dae8f4;font:750 12px ui-monospace,monospace}.vs-faint{color:#678093}
#vs-timeline{display:block;margin:12px 20px 8px;width:calc(100% - 40px);accent-color:#7ddce5;height:4px}.vs-waveform{width:calc(100% - 40px);height:82px;margin:8px 20px 10px;border:1px solid rgba(98,198,224,.11);border-radius:10px;background:rgba(2,12,23,.44)}
.vs-compare{border-top:1px solid rgba(133,164,187,.15);padding:18px 20px;display:flex;align-items:center;justify-content:space-between;gap:12px}.vs-compare strong{display:block;font-size:12px;color:#ecf6ff}.vs-compare span{display:block;color:#829ab0;font-size:11px;margin-top:4px}.vs-switch{display:flex;gap:3px;background:#091421;border:1px solid #2a3e55;padding:4px;border-radius:10px}.vs-switch button{font:800 11px system-ui;background:transparent;border:0;border-radius:7px;color:#879eb3;padding:9px 12px;cursor:pointer}.vs-switch button.selected{background:#24455d;color:#b7f4ff;box-shadow:0 2px 8px rgba(0,0,0,.16)}
.vs-preset-heading{padding:20px 21px 12px;display:flex;gap:8px;align-items:start;justify-content:space-between}.vs-preset-heading h2{font-size:19px;letter-spacing:-.025em;margin:0 0 5px}.vs-preset-heading p{font-size:12px;color:#8ca2b9;margin:0;line-height:1.5}.vs-preset-heading span{font-size:10px;color:#8bdccb;white-space:nowrap;margin-top:4px}
.vs-presets{display:grid;grid-template-columns:repeat(3,1fr);gap:7px;padding:0 20px 5px}.vs-presets button{padding:11px 6px;border-radius:10px;font:800 12px system-ui;border:1px solid #294153;background:#122234;color:#96a9bd;cursor:pointer}.vs-presets button.active{color:#07212d;border-color:#79dfe3;background:linear-gradient(125deg,#85e9de,#8acff5)}
.vs-controls-list{padding:5px 21px}.vs-control{padding:14px 0;border-bottom:1px solid rgba(126,165,190,.115)}.vs-control:last-child{border:0}.vs-control-title{display:flex;align-items:center;justify-content:space-between;gap:9px}.vs-control-title label{font-weight:800;color:#e1f0f9;font-size:12px}.vs-control-title strong{color:#84ebec;font:800 12px ui-monospace,monospace}.vs-control input[type=range]{display:block;width:100%;height:5px;margin:16px 0 9px;accent-color:#6ce2d8;cursor:pointer}.vs-control p{margin:0;color:#7990a6;font-size:11px;line-height:1.5}.vs-btn-toggle{display:block;width:calc(100% - 42px);margin:5px 21px 20px;background:#182b40;border:1px solid #36546d;color:#d5edfa}.vs-control-panel.locked{opacity:.65}
.vs-export-panel{border:1px solid #31536a;background:linear-gradient(110deg,#132940,#111a30 60%,#15223d);border-radius:20px;padding:26px 28px;display:grid;grid-template-columns:1fr auto;gap:14px 24px}.vs-export-copy h2{font-size:25px;margin:7px 0;letter-spacing:-.035em}.vs-export-copy p{color:#9bb2c6;font-size:13px;line-height:1.7;max-width:620px;margin:7px 0}.vs-export-copy span{font-size:11px;color:#8ae5cf}.vs-export-actions{display:flex;gap:10px;align-self:center;flex-wrap:wrap;justify-content:flex-end}.vs-export-actions button{min-width:170px;text-align:center}.vs-export-actions small{display:block;font-weight:650;opacity:.75;font-size:10px;margin-top:3px}.vs-progress{grid-column:1/-1}.vs-progress[hidden]{display:none!important}.vs-progress-header{display:flex;justify-content:space-between;color:#d0e7ee;font-size:12px;margin:5px 0 8px}.vs-progress-track{height:8px;border-radius:999px;background:#0b1827;overflow:hidden}.vs-progress-track div{height:100%;width:0%;border-radius:999px;background:linear-gradient(90deg,#72dceb,#9d94ee)}.vs-cancel{border:0;background:transparent;color:#ffc2c2;font-weight:800;font-size:12px;cursor:pointer;margin:10px 0 0;padding:0}.vs-message{grid-column:1/-1;color:#9cd1e9;border:1px solid #29465d;border-radius:11px;background:#0c2132;padding:12px 14px;font-size:12px;line-height:1.5}.vs-message.error{color:#ffd9d9;border-color:#734047;background:#351d29}.vs-message.success{color:#bbf7d0;border-color:#246b50;background:#123325}
.vs-privacy-strip{display:flex;gap:15px;align-items:center;border:1px solid rgba(98,229,178,.19);border-radius:14px;padding:17px 19px;background:rgba(14,74,56,.17);margin-top:24px}.vs-privacy-icon{color:#7beac1;background:#17382f;width:40px;height:40px;flex-shrink:0;border-radius:12px;display:grid;place-items:center}.vs-privacy-strip strong{font-size:13px;color:#d9fff1}.vs-privacy-strip p{margin:4px 0 0;color:#a0beb6;font-size:12px;line-height:1.6}.vs-footnote{color:#758da2;font-size:12px;line-height:1.8;margin:20px 0}.vs-footnote strong{color:#a6c3d2}.vs-visually-hidden{position:absolute!important;width:1px!important;height:1px!important;clip:rect(0,0,0,0)!important;overflow:hidden!important;white-space:nowrap!important}
@media(max-width:1000px){.vs-workspace{grid-template-columns:1fr}.vs-stage{height:420px}.vs-export-panel{grid-template-columns:1fr}.vs-export-actions{justify-content:flex-start}.vs-hero{grid-template-columns:1fr 220px}.vs-drop{flex-wrap:wrap}.vs-drop-actions{margin-left:auto}}
@media(max-width:650px){.vs-container{padding:23px 15px 60px}.vs-hero{grid-template-columns:1fr}.vs-hero-art{display:none}.vs-hero h1{font-size:clamp(37px,11vw,53px)}.vs-hero{min-height:unset;margin-bottom:18px}.vs-drop{padding:22px 17px;gap:13px}.vs-drop-symbol{width:46px;height:46px;flex:0 0 46px;border-radius:12px}.vs-drop-copy{min-width:calc(100% - 60px)}.vs-drop-actions{width:100%;margin-left:0}.vs-drop-actions .vs-btn{flex:1}.vs-step-help{display:none}.vs-stage{height:250px;margin:13px}.vs-player-controls{margin:0 13px 8px}.vs-waveform{width:calc(100% - 26px);margin:8px 13px}.vs-compare{padding:14px 12px;flex-wrap:wrap}.vs-control-panel .vs-panel-top,.vs-preview-panel .vs-panel-top{padding:15px}.vs-preset-heading{flex-wrap:wrap}.vs-export-panel{padding:21px 17px}.vs-export-actions{display:grid;grid-template-columns:1fr 1fr}.vs-export-actions .vs-btn{min-width:0;padding:12px 7px;font-size:11px}.vs-privacy-strip{align-items:start}.vs-workspace{gap:14px}}

/* Voice Studio: premium styling for the shared local-progress banner.
   The game shell injects this element, but its global game-mode stylesheet
   isn't loaded by Voice Studio. Scope here to avoid side effects elsewhere. */
.vs-page > .game-status-bar {
  position: relative;
  z-index: 20;
  width: 100%;
  min-height: 42px;
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 16px;
  padding: 8px max(28px, calc((100vw - 1164px) / 2));
  background: linear-gradient(90deg, rgba(6, 19, 32, .96), rgba(12, 20, 39, .96));
  border-bottom: 1px solid rgba(108, 166, 191, .16);
  color: #8da6bb;
  font: 500 11px/1.5 Inter, system-ui, sans-serif;
  letter-spacing: .012em;
}
.vs-page .game-status-left,
.vs-page .game-status-right {
  display: flex;
  align-items: center;
  min-width: 0;
  gap: 12px;
}
.vs-page .game-status-left { flex: 1 1 auto; }
.vs-page .game-status-right { flex: 0 0 auto; }
.vs-page .game-status-badge {
  display: inline-flex;
  align-items: center;
  flex-shrink: 0;
  gap: 8px;
  border: 1px solid rgba(96, 216, 202, .17);
  border-radius: 999px;
  padding: 5px 10px;
  color: #b9f2e5;
  background: rgba(67, 205, 170, .065);
  font-size: 10px;
  font-weight: 800;
  letter-spacing: .045em;
  white-space: nowrap;
}
.vs-page .game-status-badge::before {
  content: '';
  width: 6px;
  height: 6px;
  flex: 0 0 6px;
  background: #64e2bc;
  border-radius: 50%;
  box-shadow: 0 0 9px rgba(100, 226, 188, .6);
}
.vs-page .game-status-bar a {
  display: inline-block;
  min-width: 0;
  max-width: min(44vw, 580px);
  overflow: hidden;
  white-space: nowrap;
  text-overflow: ellipsis;
  text-decoration: none;
  color: #a7bfd6;
  transition: color .15s ease;
}
.vs-page .game-status-bar a:hover,
.vs-page .game-status-bar a:focus-visible { color: #86e8ec; }
.vs-page .game-status-bar [hidden] { display: none !important; }
.vs-page .game-profile-state {
  color: #819bb2;
  white-space: nowrap;
}
.vs-page .game-status-right a {
  max-width: none;
  font-weight: 750;
  color: #a4dfed;
}
@media (max-width: 850px) {
  .vs-page > .game-status-bar { padding: 8px 18px; }
  .vs-page .game-profile-state { display: none; }
  .vs-page .game-status-bar a { max-width: 42vw; }
}
@media (max-width: 590px) {
  .vs-page > .game-status-bar { padding: 8px 14px; gap: 8px; }
  .vs-page .game-status-left { gap: 9px; }
  .vs-page .game-status-badge { font-size: 9px; padding: 5px 8px; }
  .vs-page .game-status-right { display: none; }
  .vs-page .game-status-bar a { max-width: calc(100vw - 223px); font-size: 10px; }
}

.vs-xp-panel{grid-column:1/-1;border:1px solid #31536a;border-radius:12px;padding:14px;color:#9bb2c6;font-size:12px;line-height:1.6}.vs-xp-panel p{margin:0 0 8px}.vs-xp-panel #vs-xp-cost{color:#8ae5cf;font-weight:700}.vs-xp-panel .vs-btn{margin:5px;font-size:12px}.vs-xp-panel a{color:#8ae5cf}.vs-xp-panel [hidden]{display:none!important}
