:root{
  color-scheme:dark;
  --bg:#080a0d;--bg-soft:#0d1014;--panel:rgba(18,22,28,.82);--panel-solid:#11151b;
  --text:#f3f1e9;--muted:#8e969f;--line:rgba(255,255,255,.11);--line-strong:rgba(255,255,255,.2);
  --lime:#b7ff4a;--cyan:#78e8ff;--violet:#a98cff;--danger:#ff9d9d;
  --shadow:0 28px 90px rgba(0,0,0,.38);
  --radius:28px;--sidebar:238px;
  font-family:Inter,ui-sans-serif,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;
  font-size:16px
}
:root[data-theme="light"]{
  color-scheme:light;
  --bg:#f3f0e8;--bg-soft:#ece8de;--panel:rgba(255,255,255,.72);--panel-solid:#fff;
  --text:#111419;--muted:#69717a;--line:rgba(17,20,25,.12);--line-strong:rgba(17,20,25,.23);
  --shadow:0 28px 80px rgba(36,31,20,.11)
}
*{box-sizing:border-box}
html{scroll-behavior:smooth}
body{margin:0;min-height:100vh;background:var(--bg);color:var(--text);overflow-x:hidden}
body::selection{background:var(--lime);color:#10140c}
button,input,textarea,select{font:inherit}
button,a,input,textarea,select,summary{outline-offset:4px}
button{cursor:pointer}
button:disabled{cursor:not-allowed;opacity:.46}
a{color:inherit}
[hidden]{display:none!important}
.sr-only{position:absolute;width:1px;height:1px;margin:-1px;padding:0;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}

.ambient{position:fixed;inset:0;pointer-events:none;z-index:-2;overflow:hidden}
.ambient-orb{position:absolute;border-radius:50%;filter:blur(1px);opacity:.5}
.orb-a{width:560px;height:560px;right:-170px;top:90px;background:radial-gradient(circle at 40% 38%,rgba(183,255,74,.28),rgba(120,232,255,.08) 38%,transparent 70%)}
.orb-b{width:680px;height:680px;left:18%;bottom:-410px;background:radial-gradient(circle,rgba(169,140,255,.18),transparent 68%)}
.noise{position:absolute;inset:0;opacity:.025;background-image:url("data:image/svg+xml,%3Csvg viewBox='0 0 180 180' xmlns='http://www.w3.org/2000/svg'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='.85' numOctaves='3' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)' opacity='.8'/%3E%3C/svg%3E")}
.cursor-glow{position:fixed;width:480px;height:480px;border-radius:50%;pointer-events:none;z-index:-1;transform:translate(-50%,-50%);background:radial-gradient(circle,rgba(183,255,74,.07),transparent 68%);left:var(--mx,-500px);top:var(--my,-500px);transition:opacity .2s}

.app-shell{min-height:100vh}
.sidebar{
  position:fixed;z-index:30;inset:0 auto 0 0;width:var(--sidebar);padding:32px 24px 26px;
  border-right:1px solid var(--line);background:color-mix(in srgb,var(--bg) 86%,transparent);
  backdrop-filter:blur(24px);display:flex;flex-direction:column
}
.brand{display:flex;align-items:center;gap:13px;text-decoration:none}
.brand-mark{width:36px;height:36px;border:1px solid var(--line-strong);border-radius:50%;display:flex;align-items:center;justify-content:center;gap:3px;position:relative;overflow:hidden}
.brand-mark::after{content:"";position:absolute;inset:-10px;background:radial-gradient(circle,var(--lime),transparent 56%);opacity:.15}
.brand-mark i{width:2px;border-radius:99px;background:var(--lime);display:block;position:relative;z-index:1}
.brand-mark i:nth-child(1){height:8px}.brand-mark i:nth-child(2){height:16px}.brand-mark i:nth-child(3){height:11px}
.brand-type{font-size:1rem;font-weight:800;letter-spacing:-.03em}.brand-type small{display:block;color:var(--muted);font-size:.52rem;letter-spacing:.32em;font-weight:600;margin-top:1px}
.rail-label{margin:54px 0 17px;color:var(--muted);font-size:.56rem;letter-spacing:.2em}
nav{display:grid;gap:5px}
.nav{
  border:0;border-radius:14px;background:transparent;color:var(--muted);padding:12px 11px;
  display:grid;grid-template-columns:24px 1fr auto;align-items:center;gap:9px;text-align:left;transition:.25s ease
}
.nav span:nth-child(2){font-size:.84rem}.nav b{font-size:.55rem;font-weight:500;opacity:.52}
.nav-icon{width:24px;height:24px;border:1px solid var(--line);border-radius:8px;display:grid;place-items:center;font-size:.78rem}
.nav:hover,.nav.active{color:var(--text);background:rgba(255,255,255,.045)}
.nav.active .nav-icon{background:var(--lime);color:#11160a;border-color:transparent;box-shadow:0 0 28px rgba(183,255,74,.2)}
.side-bottom{margin-top:auto;color:var(--muted)}
.provider-mini{border-top:1px solid var(--line);padding-top:18px;display:flex;gap:10px;align-items:center}
.live-dot{width:8px;height:8px;border-radius:50%;background:var(--lime);box-shadow:0 0 0 5px rgba(183,255,74,.08),0 0 18px rgba(183,255,74,.38)}
.provider-mini small{display:block;font-size:.52rem;letter-spacing:.16em}.provider-mini strong{display:block;color:var(--text);font-size:.78rem;margin-top:2px}
.side-bottom p{font-size:.72rem;line-height:1.6;margin:22px 0}.edition{font-size:.55rem;letter-spacing:.17em}

main{margin-left:var(--sidebar);padding:0 46px;max-width:1740px}
.topbar{height:84px;border-bottom:1px solid var(--line);display:flex;align-items:center;justify-content:space-between;position:relative;z-index:10}
.top-left{display:flex;align-items:center;gap:13px;font-size:.68rem;color:var(--muted);letter-spacing:.08em;text-transform:uppercase}
.route-index{color:var(--lime);font-variant-numeric:tabular-nums}
.top-actions{display:flex;align-items:center;gap:9px}
.engine-chip,.account,.icon-button,.logout{border:1px solid var(--line);background:rgba(255,255,255,.025);color:var(--text);border-radius:999px}
.engine-chip{display:flex;align-items:center;gap:8px;padding:9px 13px;font-size:.66rem;letter-spacing:.08em;text-transform:uppercase}
.engine-chip i{width:6px;height:6px;border-radius:50%;background:var(--lime);box-shadow:0 0 12px rgba(183,255,74,.45)}
.account{padding:10px 15px;max-width:220px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;font-size:.72rem}
.icon-button{width:38px;height:38px;padding:0;display:grid;place-items:center;font-size:1rem}
.logout{padding:9px 12px;font-size:.68rem;color:var(--muted)}
.top-actions button{transition:transform .2s ease,border-color .2s ease,background .2s ease}
.top-actions button:hover{transform:translateY(-1px);border-color:var(--line-strong);background:rgba(255,255,255,.06)}

.notice{
  position:fixed;z-index:100;right:28px;top:94px;max-width:min(440px,calc(100vw - 40px));padding:15px 18px;
  background:color-mix(in srgb,var(--panel-solid) 92%,transparent);border:1px solid var(--line-strong);border-radius:16px;
  box-shadow:var(--shadow);backdrop-filter:blur(18px);font-size:.78rem;animation:noticeIn .35s cubic-bezier(.2,.8,.2,1)
}
@keyframes noticeIn{from{transform:translateY(-10px);opacity:0}to{transform:none;opacity:1}}

.page{animation:pageIn .55s cubic-bezier(.2,.7,.2,1)}
@keyframes pageIn{from{opacity:0;transform:translateY(12px)}to{opacity:1;transform:none}}

.hero{min-height:610px;display:grid;grid-template-columns:minmax(0,1.1fr) minmax(360px,.9fr);align-items:center;gap:44px;padding:72px 0 68px;border-bottom:1px solid var(--line)}
.kicker{font-size:.6rem;letter-spacing:.18em;color:var(--muted);display:flex;align-items:center;gap:10px;margin:0 0 26px;text-transform:uppercase}
.kicker span{width:32px;height:1px;background:var(--lime)}
.hero h1,.history-hero h1{margin:0;font-size:clamp(3.5rem,7vw,7.2rem);line-height:.9;letter-spacing:-.075em;font-weight:560}
.hero h1 em,.history-hero h1 em{font-family:Georgia,"Times New Roman",serif;font-weight:400;color:var(--lime)}
.hero-bottom{display:grid;grid-template-columns:minmax(220px,380px) 1fr;gap:40px;align-items:end;margin-top:38px}
.hero-bottom>p{margin:0;color:var(--muted);line-height:1.7;font-size:.9rem;max-width:380px}
.hero-meta{display:flex;flex-wrap:wrap;gap:18px;justify-content:flex-end;color:var(--muted);font-size:.54rem;letter-spacing:.1em}

.voice-sculpture{height:510px;position:relative;display:grid;place-items:center;isolation:isolate}
.voice-sculpture::before{content:"";position:absolute;width:390px;height:390px;border-radius:50%;border:1px solid var(--line);box-shadow:inset 0 0 80px rgba(255,255,255,.03)}
.voice-core{
  width:265px;height:265px;border-radius:50%;display:grid;place-items:center;position:relative;z-index:3;
  background:
    radial-gradient(circle at 36% 28%,rgba(255,255,255,.46),transparent 10%),
    radial-gradient(circle at 55% 45%,rgba(120,232,255,.33),transparent 35%),
    radial-gradient(circle at 45% 60%,rgba(169,140,255,.4),transparent 50%),
    linear-gradient(145deg,rgba(183,255,74,.62),rgba(18,21,27,.96) 58%);
  box-shadow:inset -35px -45px 90px rgba(0,0,0,.42),0 40px 110px rgba(169,140,255,.18),0 0 90px rgba(183,255,74,.08);
  animation:floatCore 7s ease-in-out infinite
}
.voice-core::after{content:"";position:absolute;inset:14px;border:1px solid rgba(255,255,255,.19);border-radius:50%}
.voice-core>span{position:absolute;bottom:34px;font-size:.54rem;letter-spacing:.22em;color:rgba(255,255,255,.72)}
@keyframes floatCore{0%,100%{transform:translateY(0) rotate(-2deg)}50%{transform:translateY(-13px) rotate(2deg)}}
.halo{position:absolute;border-radius:50%;border:1px solid var(--line);z-index:1}
.halo-a{width:350px;height:350px;animation:spin 16s linear infinite}
.halo-b{width:455px;height:455px;border-style:dashed;opacity:.45;animation:spin 28s linear infinite reverse}
@keyframes spin{to{transform:rotate(360deg)}}
.orbit-label{position:absolute;font-size:.48rem;letter-spacing:.16em;color:var(--muted);z-index:5;background:var(--bg);padding:6px 9px;border:1px solid var(--line);border-radius:999px}
.label-a{top:64px;left:20%}.label-b{right:6%;top:50%}.label-c{bottom:52px;left:29%}

.waveform{height:90px;display:flex;align-items:center;gap:5px}
.waveform i{display:block;width:3px;height:var(--h);min-height:10px;border-radius:99px;background:linear-gradient(to top,var(--lime),var(--cyan));animation:wave 1.2s ease-in-out infinite alternate;animation-delay:calc(var(--i,0) * -90ms);transform-origin:center}
.waveform i:nth-child(2n){animation-duration:.95s}.waveform i:nth-child(3n){animation-duration:1.45s}
@keyframes wave{from{transform:scaleY(.52);opacity:.55}to{transform:scaleY(1.18);opacity:1}}
.hero-wave{position:absolute;top:83px}
.hero-wave i:nth-child(1){--i:1}.hero-wave i:nth-child(2){--i:2}.hero-wave i:nth-child(3){--i:3}.hero-wave i:nth-child(4){--i:4}.hero-wave i:nth-child(5){--i:5}.hero-wave i:nth-child(6){--i:6}.hero-wave i:nth-child(7){--i:7}.hero-wave i:nth-child(8){--i:8}.hero-wave i:nth-child(9){--i:9}.hero-wave i:nth-child(10){--i:10}.hero-wave i:nth-child(11){--i:11}.hero-wave i:nth-child(12){--i:12}.hero-wave i:nth-child(13){--i:13}

.studio-stage,.recent{padding:72px 0 18px}
.stage-head{display:flex;align-items:flex-end;justify-content:space-between;margin-bottom:28px}
.stage-head.compact{margin-bottom:22px}
.stage-head h2{font-size:clamp(1.7rem,3vw,2.7rem);margin:4px 0 0;letter-spacing:-.05em;font-weight:580}
.stage-head>p{color:var(--muted);font-size:.7rem;line-height:1.5;text-align:right;margin:0}
.section-number{margin:0;color:var(--lime);font-size:.56rem;letter-spacing:.15em}

.composer{display:grid;grid-template-columns:minmax(0,1fr) 350px;border:1px solid var(--line);border-radius:var(--radius);overflow:hidden;background:var(--panel);box-shadow:var(--shadow);backdrop-filter:blur(18px)}
.editor-panel{min-height:600px;display:flex;flex-direction:column;border-right:1px solid var(--line)}
.editor-toolbar{height:72px;padding:0 25px;display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid var(--line)}
.tabs{display:flex;gap:6px}
.tabs button{border:0;background:transparent;color:var(--muted);padding:9px 13px;border-radius:999px;font-size:.74rem;transition:.2s ease}
.tabs button.selected{background:var(--text);color:var(--bg)}
.editor-stats{display:flex;align-items:center;gap:12px;color:var(--muted);font-size:.65rem}
.language-badge{border:1px solid var(--line);padding:6px 8px;border-radius:8px;color:var(--lime);font-weight:700}
.script-area{display:flex;flex-direction:column;flex:1;padding:30px 34px 20px}
.title-input{border:0;background:transparent;color:var(--muted);font-size:.78rem;padding:0;margin-bottom:24px;outline:none}
#text,#srt-text{width:100%;flex:1;min-height:340px;resize:none;border:0;background:transparent;color:var(--text);font-size:clamp(1.35rem,2vw,2.15rem);line-height:1.47;letter-spacing:-.025em;outline:none;padding:0}
#text::placeholder,#srt-text::placeholder{color:color-mix(in srgb,var(--muted) 52%,transparent)}
#srt-panel{height:100%;display:flex;flex-direction:column;gap:20px}
#srt-panel textarea{font-size:1rem;line-height:1.7}
.upload-zone{display:flex;align-items:center;gap:14px;border:1px dashed var(--line-strong);padding:15px;border-radius:17px;color:var(--muted);cursor:pointer}
.upload-zone:hover{border-color:var(--lime);color:var(--text)}
.upload-zone input{display:none}
.upload-symbol{width:36px;height:36px;display:grid;place-items:center;border-radius:50%;border:1px solid var(--line)}
.upload-zone strong,.upload-zone small{display:block}.upload-zone strong{font-size:.76rem;color:var(--text)}.upload-zone small{font-size:.63rem;margin-top:3px}
.editor-footer{height:70px;padding:0 25px;display:flex;align-items:center;justify-content:space-between;border-top:1px solid var(--line)}
.ghost-link{border:0;background:none;color:var(--text);padding:4px 0;font-size:.72rem;display:inline-flex;align-items:center;gap:9px}
.ghost-link span{color:var(--lime);transition:transform .2s}.ghost-link:hover span{transform:translate(3px,-3px)}
.privacy-note{font-size:.62rem;color:var(--muted);display:flex;align-items:center;gap:8px}.privacy-note i{width:6px;height:6px;border-radius:50%;background:var(--lime)}

.control-panel{padding:27px;display:flex;flex-direction:column;background:linear-gradient(180deg,rgba(255,255,255,.025),transparent)}
.control-head{display:flex;justify-content:space-between;color:var(--muted);font-size:.54rem;letter-spacing:.14em;margin-bottom:22px}
.profile-status{color:var(--lime)}
.voice-profile{display:flex;gap:14px;align-items:center;padding:18px;border:1px solid var(--line);border-radius:19px;background:rgba(255,255,255,.025)}
.voice-avatar{width:64px;height:64px;border-radius:18px;flex:none;position:relative;overflow:hidden;display:grid;place-items:center;background:radial-gradient(circle at 30% 20%,rgba(255,255,255,.35),transparent 20%),linear-gradient(135deg,var(--violet),#20242b 60%,var(--lime));box-shadow:inset 0 0 35px rgba(0,0,0,.3)}
.voice-avatar>span{font-family:Georgia,serif;font-size:1.4rem}
.mini-wave{position:absolute;bottom:7px;display:flex;align-items:center;gap:2px;height:12px}.mini-wave i{width:2px;border-radius:3px;background:#fff;height:5px;animation:miniWave .8s ease-in-out infinite alternate}.mini-wave i:nth-child(2){height:10px;animation-delay:-.2s}.mini-wave i:nth-child(3){height:7px;animation-delay:-.35s}.mini-wave i:nth-child(4){height:11px;animation-delay:-.5s}.mini-wave i:nth-child(5){height:6px;animation-delay:-.65s}
@keyframes miniWave{to{transform:scaleY(.45)}}
.voice-copy{min-width:0}.voice-copy label{display:block;font-size:.78rem;font-weight:650;margin-bottom:5px}.voice-copy select{appearance:none;width:100%;border:0;background:transparent;color:var(--text);padding:0;font-size:.7rem;outline:none}.voice-copy select option{background:var(--panel-solid);color:var(--text)}.voice-copy p{font-size:.58rem;color:var(--muted);margin:6px 0 0}
.control-block{padding:27px 0 22px;border-bottom:1px solid var(--line)}
.control-block label{display:flex;justify-content:space-between;font-size:.7rem;margin-bottom:16px}.control-block output{color:var(--lime);font-variant-numeric:tabular-nums}
input[type=range]{width:100%;appearance:none;background:transparent}
input[type=range]::-webkit-slider-runnable-track{height:3px;border-radius:99px;background:linear-gradient(to right,var(--lime) 0 50%,var(--line-strong) 50%)}
input[type=range]::-moz-range-track{height:3px;border-radius:99px;background:var(--line-strong)}
input[type=range]::-moz-range-progress{height:3px;background:var(--lime)}
input[type=range]::-webkit-slider-thumb{appearance:none;width:17px;height:17px;border-radius:50%;background:var(--text);margin-top:-7px;border:4px solid var(--bg);box-shadow:0 0 0 1px var(--line-strong)}
input[type=range]::-moz-range-thumb{width:12px;height:12px;border-radius:50%;background:var(--text);border:3px solid var(--bg)}
.range-labels{display:flex;justify-content:space-between;color:var(--muted);font-size:.54rem;margin-top:9px}
.pronunciation{padding:20px 0;border-bottom:1px solid var(--line)}
.pronunciation summary{list-style:none;cursor:pointer;display:flex;justify-content:space-between;align-items:center;font-size:.7rem;color:var(--text)}
.pronunciation summary::-webkit-details-marker{display:none}.pronunciation summary b{font-size:1rem;font-weight:400;color:var(--muted)}
.pronunciation[open] summary b{transform:rotate(45deg)}
.hint{color:var(--muted);font-size:.62rem;line-height:1.55}
#glossary{width:100%;min-height:90px;border:1px solid var(--line);border-radius:13px;background:rgba(255,255,255,.025);color:var(--text);padding:12px;resize:vertical;font-size:.7rem;outline:none}
.engine-status{display:flex;align-items:center;gap:11px;padding:21px 0}
.status-icon{width:35px;height:35px;border-radius:50%;border:1px solid var(--line);display:grid;place-items:center}
.status-icon i{width:7px;height:7px;border-radius:50%;background:var(--muted)}
.engine-status.ready .status-icon i{background:var(--lime);box-shadow:0 0 14px rgba(183,255,74,.55)}
.engine-status small{display:block;color:var(--muted);font-size:.48rem;letter-spacing:.14em}.engine-status p{margin:3px 0 0;font-size:.65rem}
.generate{width:100%;border:0;border-radius:15px;background:var(--lime);color:#11160a;padding:16px 17px;font-weight:760;display:flex;align-items:center;justify-content:space-between;transition:transform .22s ease,box-shadow .22s ease,filter .22s ease}
.generate:hover:not(:disabled){transform:translateY(-2px);box-shadow:0 14px 38px rgba(183,255,74,.15);filter:saturate(1.08)}
.generate.is-generating{background:linear-gradient(90deg,var(--lime),var(--cyan),var(--lime));background-size:200% 100%;animation:generateFlow 1.1s linear infinite}
@keyframes generateFlow{to{background-position:-200% 0}}
.generate-arrow{font-size:1rem}.microcopy{text-align:center;color:var(--muted);font-size:.52rem;letter-spacing:.04em;margin:12px 0 0}

.jobs{display:grid;gap:10px}
.job{position:relative;padding:21px 22px;border:1px solid var(--line);border-radius:18px;background:rgba(255,255,255,.022);overflow:hidden;transition:transform .2s ease,border-color .2s ease,background .2s ease}
.job::before{content:"";position:absolute;inset:0 auto 0 0;width:2px;background:transparent}
.job:hover{transform:translateY(-2px);border-color:var(--line-strong);background:rgba(255,255,255,.035)}
.job[data-status="running"]::before{background:var(--cyan)}.job[data-status="done"]::before{background:var(--lime)}.job[data-status="failed"]::before{background:var(--danger)}
.job-head{display:flex;align-items:start;justify-content:space-between;gap:20px}
.job h3{margin:0 0 7px;font-size:.9rem;letter-spacing:-.02em}.job p{margin:0;color:var(--muted);font-size:.61rem;line-height:1.55}
.badge{font-size:.56rem;letter-spacing:.1em;text-transform:uppercase;color:var(--muted);border:1px solid var(--line);padding:6px 9px;border-radius:999px}
.job[data-status="done"] .badge{color:var(--lime)}.job[data-status="running"] .badge{color:var(--cyan)}.job[data-status="failed"] .badge{color:var(--danger)}
.job audio{width:100%;height:36px;margin:16px 0 5px}
.job a{display:inline-flex;align-items:center;gap:5px;text-decoration:none;font-size:.62rem;color:var(--text);margin:10px 14px 0 0;padding-bottom:2px;border-bottom:1px solid var(--line-strong)}
.job .danger{color:var(--danger);margin-top:10px}
.job button.danger{border:0;background:none;padding:0;font-size:.62rem}
progress{width:100%;height:3px;border:0;margin-top:16px;border-radius:99px;overflow:hidden;background:var(--line)}progress::-webkit-progress-bar{background:var(--line)}progress::-webkit-progress-value{background:linear-gradient(90deg,var(--cyan),var(--lime))}progress::-moz-progress-bar{background:linear-gradient(90deg,var(--cyan),var(--lime))}
.empty{padding:34px;border:1px dashed var(--line);border-radius:18px;color:var(--muted);text-align:center;font-size:.72rem}

.history-hero{padding:76px 0 72px;border-bottom:1px solid var(--line)}
.history-title{display:grid;grid-template-columns:1fr 330px;gap:40px;align-items:end}.history-title p{color:var(--muted);font-size:.82rem;line-height:1.7;margin:0 0 10px}
.history-jobs{padding-bottom:20px}
.secondary{border:1px solid var(--line);background:transparent;color:var(--text);padding:10px 13px;border-radius:999px;font-size:.66rem}
.secondary span{color:var(--lime);margin-left:8px}

footer{display:grid;grid-template-columns:1fr 1fr auto;gap:20px;align-items:end;margin:76px 0 28px;padding-top:25px;border-top:1px solid var(--line);color:var(--muted);font-size:.6rem;letter-spacing:.06em}
footer>div strong{display:block;color:var(--text);font-size:1rem;letter-spacing:-.03em}footer>div span{font-size:.48rem;letter-spacing:.18em}footer p{margin:0;line-height:1.55}

dialog{width:min(470px,calc(100vw - 28px));border:1px solid var(--line-strong);border-radius:26px;padding:34px;background:color-mix(in srgb,var(--panel-solid) 92%,transparent);color:var(--text);box-shadow:var(--shadow);backdrop-filter:blur(28px)}
dialog::backdrop{background:rgba(0,0,0,.66);backdrop-filter:blur(9px)}
dialog h2{font-size:2.1rem;letter-spacing:-.05em;margin:0 0 10px}dialog .muted{color:var(--muted);font-size:.76rem;line-height:1.65;margin-bottom:26px}
dialog label{display:block;font-size:.65rem;margin:15px 0 7px;color:var(--muted)}
dialog input{width:100%;border:1px solid var(--line);border-radius:13px;padding:13px 14px;background:rgba(255,255,255,.025);color:var(--text);outline:none}
dialog input:focus{border-color:var(--lime)}
.close{position:absolute;right:16px;top:14px;width:34px;height:34px;border-radius:50%;border:1px solid var(--line);background:transparent;color:var(--muted);font-size:1.15rem}
.auth-submit{margin-top:20px}.auth-toggle{margin:16px auto 0}.auth-toggle[hidden]{display:none!important}#auth-error{color:var(--danger);font-size:.68rem;min-height:1em}

:root[data-theme="light"] .voice-core{filter:saturate(.9) contrast(.95)}
:root[data-theme="light"] .sidebar,:root[data-theme="light"] .topbar{backdrop-filter:blur(20px)}
:root[data-theme="light"] .tabs button.selected{background:#111419;color:#fff}
:root[data-theme="light"] .orbit-label{background:var(--bg)}
:root[data-theme="light"] .brand-mark i{background:#6db700}
:root[data-theme="light"] .generate{color:#18220c}

@media(max-width:1180px){
  :root{--sidebar:205px}
  main{padding:0 28px}
  .hero{grid-template-columns:1fr 360px}.voice-sculpture{height:440px}.voice-core{width:230px;height:230px}
  .halo-a{width:310px;height:310px}.halo-b{width:390px;height:390px}.voice-sculpture::before{width:350px;height:350px}
  .composer{grid-template-columns:minmax(0,1fr) 315px}
  .hero-bottom{grid-template-columns:1fr}.hero-meta{justify-content:flex-start}
}
@media(max-width:860px){
  :root{--sidebar:0px}
  .sidebar{inset:auto 14px calc(12px + env(safe-area-inset-bottom)) 14px;width:auto;height:64px;border:1px solid var(--line);border-radius:20px;padding:7px;background:color-mix(in srgb,var(--panel-solid) 90%,transparent);box-shadow:0 20px 55px rgba(0,0,0,.24);flex-direction:row;align-items:center}
  .brand,.rail-label,.side-bottom{display:none}nav{display:grid;grid-template-columns:1fr 1fr;gap:5px;width:100%}.nav{grid-template-columns:24px 1fr;padding:9px 12px}.nav b{display:none}
  main{margin:0;padding:0 18px 94px}.topbar{height:70px}.engine-chip{display:none}.top-left{font-size:.57rem}.account{max-width:145px}
  .hero{grid-template-columns:1fr;min-height:auto;padding:56px 0 40px}.hero h1{font-size:clamp(3.6rem,14vw,6.3rem)}
  .voice-sculpture{height:390px;margin-top:4px}.voice-core{width:215px;height:215px}.halo-a{width:290px;height:290px}.halo-b{width:360px;height:360px}.voice-sculpture::before{width:330px;height:330px}
  .label-a{left:10%}.label-b{right:2%}.label-c{left:17%}
  .composer{grid-template-columns:1fr}.editor-panel{border-right:0;border-bottom:1px solid var(--line);min-height:520px}.control-panel{padding:24px}.studio-stage,.recent{padding-top:54px}
  .history-title{grid-template-columns:1fr}.history-title p{max-width:410px}.history-hero h1{font-size:clamp(3.6rem,13vw,6rem)}
  footer{grid-template-columns:1fr auto}footer p{display:none}
}
@media(max-width:560px){
  main{padding-left:14px;padding-right:14px}.top-left #breadcrumb{max-width:150px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
  .icon-button{width:34px;height:34px}.account{font-size:.65rem;padding:9px 11px;max-width:115px}.logout{display:none!important}
  .hero{padding-top:43px}.hero h1{font-size:clamp(3.2rem,16vw,5.2rem)}.hero-bottom{margin-top:28px}.hero-meta{gap:11px}.hero-meta span{font-size:.47rem}
  .voice-sculpture{height:330px}.voice-core{width:180px;height:180px}.hero-wave{top:58px}.waveform{height:72px}.halo-a{width:240px;height:240px}.halo-b{width:300px;height:300px}.voice-sculpture::before{width:270px;height:270px}.orbit-label{font-size:.4rem}.label-a{top:36px}.label-c{bottom:25px}
  .stage-head{align-items:start}.stage-head>p{display:none}.stage-head h2{font-size:1.85rem}
  .composer{border-radius:22px}.editor-toolbar{height:62px;padding:0 16px}.script-area{padding:24px 19px 16px}.title-input{margin-bottom:20px}
  #text,#srt-text{font-size:1.35rem;min-height:300px}.editor-footer{height:62px;padding:0 16px}.privacy-note{display:none}.editor-panel{min-height:490px}
  .control-panel{padding:20px}.voice-profile{padding:14px}.voice-avatar{width:56px;height:56px}.control-block{padding:22px 0 18px}
  .job{padding:18px}.job-head{gap:10px}.job h3{font-size:.82rem}.badge{font-size:.48rem}
  .history-hero{padding:55px 0}.history-hero h1{font-size:clamp(3.2rem,15vw,5rem)}
  dialog{padding:29px 22px}
}
@media(pointer:coarse){.cursor-glow{display:none}}
@media(prefers-reduced-motion:reduce){
  *,*::before,*::after{scroll-behavior:auto!important;animation-duration:.001ms!important;animation-iteration-count:1!important;transition-duration:.001ms!important}
}

/* Full Creative Studio */
.full-sidebar{overflow-y:auto;scrollbar-width:none}
.full-sidebar::-webkit-scrollbar{display:none}
.full-sidebar nav{padding-bottom:16px;flex-shrink:0}
.full-sidebar .brand,.full-sidebar .rail-label,.full-sidebar .side-bottom{flex-shrink:0}
.full-sidebar .side-bottom{padding-top:20px}
.rail-label.inline{margin:24px 10px 8px;font-size:.5rem}
.full-sidebar .nav{grid-template-columns:24px 1fr}
.full-sidebar .nav b{display:none}

.tool-page{padding:0 0 30px}
.tool-hero{min-height:310px;display:flex;flex-direction:column;justify-content:center;border-bottom:1px solid var(--line);padding:58px 0 44px}
.tool-hero h1{font-size:clamp(3rem,6.5vw,6.8rem);letter-spacing:-.07em;line-height:.92;margin:0;max-width:980px;font-weight:560}
.tool-hero h1 em{font-family:Georgia,"Times New Roman",serif;color:var(--lime);font-weight:400}
.tool-hero>p:last-child{color:var(--muted);max-width:620px;line-height:1.7;font-size:.84rem;margin:24px 0 0}

.tool-grid{display:grid;grid-template-columns:minmax(0,1fr) 360px;gap:14px;padding:34px 0}
.tool-card,.tool-form,.result-box,.realtime-panel{border:1px solid var(--line);border-radius:24px;background:var(--panel);backdrop-filter:blur(18px);box-shadow:var(--shadow)}
.tool-card{padding:26px}.tool-card.wide{min-height:520px}
.tool-form{width:min(900px,100%);padding:28px;margin:34px 0;display:grid;gap:20px}
.field{display:grid;gap:8px}.field-grid{display:grid;grid-template-columns:1fr 1fr;gap:14px}
.field label,.field-label{font-size:.62rem;letter-spacing:.08em;color:var(--muted);text-transform:uppercase}
.field-input,.field input,.field select,.field textarea,.tool-form input,.tool-form select{
  width:100%;border:1px solid var(--line);border-radius:14px;background:rgba(255,255,255,.025);color:var(--text);padding:13px 14px;outline:none
}
.field-input:focus,.field input:focus,.field select:focus,.field textarea:focus,.tool-form input:focus,.tool-form select:focus{border-color:var(--lime)}
.big-textarea{width:100%;min-height:320px;border:0;background:transparent;color:var(--text);resize:vertical;outline:none;font-size:clamp(1.25rem,2vw,2rem);line-height:1.48;letter-spacing:-.02em;padding:20px 0}
.big-textarea.small{min-height:180px;font-size:1rem;border:1px solid var(--line);border-radius:16px;padding:16px;background:rgba(255,255,255,.02)}
.char-line{display:flex;justify-content:space-between;align-items:center;border-top:1px solid var(--line);padding-top:16px;color:var(--muted);font-size:.62rem}
.tool-card .tabs{margin-bottom:8px}
.tool-card .pronunciation{margin:20px 0}
.tool-card .pronunciation textarea{width:100%;min-height:100px;margin-top:12px;border:1px solid var(--line);border-radius:14px;background:rgba(255,255,255,.025);color:var(--text);padding:12px}
.tool-card output{float:right;color:var(--lime)}
.tool-card input[type=range],.tool-form input[type=range]{width:100%;margin:14px 0 22px}
.check{display:flex;align-items:flex-start;gap:10px;color:var(--muted);font-size:.72rem;line-height:1.4}
.check input{width:auto;margin-top:2px}.consent{padding:14px;border:1px solid var(--line);border-radius:14px}
.tool-form input[type=file]{padding:14px;border-style:dashed}

.speaker-list{display:grid;gap:10px}
.speaker-row{display:grid;grid-template-columns:250px 1fr 36px;gap:10px;align-items:start;padding:14px;border:1px solid var(--line);border-radius:18px;background:rgba(255,255,255,.02)}
.speaker-row textarea{min-height:90px;border:0;background:transparent;color:var(--text);resize:vertical;outline:none;padding:10px;font-size:.9rem;line-height:1.55}
.speaker-remove{width:34px;height:34px;border-radius:50%;border:1px solid var(--line);background:transparent;color:var(--muted);font-size:1rem}
.speaker-remove:hover{color:var(--danger);border-color:var(--danger)}

.result-box{padding:22px;margin:18px 0 32px;white-space:pre-wrap;line-height:1.7;color:var(--text);font-size:.82rem}
.realtime-controls{display:flex;gap:10px}.live-state{display:flex;align-items:center;gap:9px;color:var(--muted);font-size:.72rem}
#realtime-dot{width:8px;height:8px;border-radius:50%;background:var(--muted)}
#realtime-dot.live{background:#ff5b5b;box-shadow:0 0 0 6px rgba(255,91,91,.1),0 0 20px rgba(255,91,91,.35);animation:recordPulse 1.4s ease-in-out infinite}
@keyframes recordPulse{50%{transform:scale(.75);opacity:.65}}
.transcript-live{min-height:220px;border:1px solid var(--line);border-radius:18px;padding:22px;font-size:1.25rem;line-height:1.6;background:rgba(255,255,255,.02);color:var(--text)}

.voice-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;padding:34px 0}
.voice-library-card{padding:20px;border:1px solid var(--line);border-radius:20px;background:rgba(255,255,255,.025);transition:.2s ease}
.voice-library-card:hover{transform:translateY(-2px);border-color:var(--line-strong)}
.voice-card-head{display:flex;align-items:center;gap:12px;margin-bottom:16px}.voice-card-head strong{display:block;font-size:.78rem}.voice-card-head small{display:block;color:var(--muted);font-size:.56rem;margin-top:4px}
.voice-letter{width:44px;height:44px;display:grid;place-items:center;border-radius:14px;background:linear-gradient(135deg,var(--violet),rgba(183,255,74,.5));font-family:Georgia,serif;font-size:1.2rem}
.voice-library-card audio{width:100%;height:34px}.danger-link{border:0;background:none;color:var(--danger);padding:12px 0 0;font-size:.62rem}

.metrics{padding:24px 0}.metric-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px}.metric-grid article{padding:24px;border:1px solid var(--line);border-radius:20px;background:rgba(255,255,255,.025)}.metric-grid small{display:block;color:var(--muted);font-size:.58rem;letter-spacing:.1em;text-transform:uppercase}.metric-grid strong{display:block;margin-top:10px;font-size:1.6rem;letter-spacing:-.04em}
.usage-local{margin-top:16px;padding:24px;border:1px solid var(--line);border-radius:20px}.usage-local h3{margin:0 0 18px;font-size:.8rem}.usage-local span{display:flex;justify-content:space-between;border-top:1px solid var(--line);padding:10px 0;font-size:.7rem}.usage-local b{font-weight:500;color:var(--muted)}
.danger-text{color:var(--danger)}

.artifact-actions{display:flex;flex-wrap:wrap;gap:12px;margin-top:12px}.artifact-actions a{margin:0!important}
.result-preview{margin-top:14px!important;padding:12px 14px;border-radius:12px;background:rgba(255,255,255,.025);max-height:160px;overflow:auto}
.history-jobs{padding-top:24px}

.secondary{white-space:nowrap}
.tool-form .generate{margin-top:4px}
.tool-form .secondary{justify-self:start}
select option{background:var(--panel-solid);color:var(--text)}

@media(max-width:1180px){
  .tool-grid{grid-template-columns:1fr 320px}
  .voice-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
  .metric-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
}
@media(max-width:860px){
  .full-sidebar{inset:auto 10px calc(10px + env(safe-area-inset-bottom)) 10px;width:auto;height:72px;padding:8px;overflow-x:auto;overflow-y:hidden;display:block;border-radius:20px}
  .full-sidebar nav{display:flex!important;gap:6px;width:max-content;padding:0}
  .full-sidebar nav .rail-label{display:none}
  .full-sidebar .nav{display:grid;grid-template-columns:24px auto!important;min-width:max-content;height:54px;padding:8px 12px}
  .full-sidebar .nav span:nth-child(2){font-size:.68rem}
  .tool-grid{grid-template-columns:1fr}.tool-card.wide{min-height:430px}
  .speaker-row{grid-template-columns:1fr}.speaker-remove{position:absolute;right:22px}.speaker-row{position:relative;padding-right:54px}
  .voice-grid{grid-template-columns:1fr 1fr}
}
@media(max-width:560px){
  .tool-hero{min-height:250px;padding-top:42px}.tool-hero h1{font-size:clamp(2.8rem,15vw,4.6rem)}
  .tool-form,.tool-card{padding:18px;border-radius:20px}.field-grid{grid-template-columns:1fr}.big-textarea{font-size:1.25rem;min-height:260px}
  .voice-grid,.metric-grid{grid-template-columns:1fr}
  .realtime-controls{display:grid}.realtime-controls .generate{width:100%}
  .transcript-live{font-size:1rem;min-height:180px}
}

.tool-warning{margin:0;padding:14px 16px;border:1px solid rgba(255,190,90,.25);border-radius:14px;background:rgba(255,190,90,.055);color:var(--muted);font-size:.68rem;line-height:1.6}
.history-video{display:block;width:min(720px,100%);max-height:420px;margin:16px 0 6px;border-radius:14px;background:#000}

.provider-status-card{display:flex;justify-content:space-between;gap:22px;align-items:center;margin:28px 0 0;padding:20px 22px;border:1px solid var(--line);border-radius:20px;background:rgba(255,255,255,.025)}
.provider-status-card small{display:block;color:var(--muted);font-size:.5rem;letter-spacing:.13em}.provider-status-card strong{display:block;margin-top:5px;font-size:1rem}.provider-status-card p{margin:6px 0 0;color:var(--muted);font-size:.65rem;line-height:1.5}
.voice-sync-state{display:inline-flex;margin-top:10px;padding:5px 8px;border-radius:999px;border:1px solid var(--line);font-size:.5rem;letter-spacing:.08em;text-transform:uppercase;color:var(--muted)}
.voice-sync-state.ready{color:var(--lime);border-color:rgba(183,255,74,.28)}.voice-sync-state.pending{color:#f0c56c}
@media(max-width:560px){.provider-status-card{align-items:flex-start;flex-direction:column}.provider-status-card .secondary{width:100%}}

.credit-chip{cursor:pointer}
.wallet-card{display:flex;justify-content:space-between;align-items:center;gap:24px;margin:28px 0;padding:24px;border:1px solid var(--line);border-radius:22px;background:linear-gradient(135deg,rgba(183,255,74,.07),rgba(166,136,255,.06));box-shadow:var(--shadow)}
.wallet-card small,.wallet-balance small{display:block;color:var(--muted);font-size:.52rem;letter-spacing:.12em}.wallet-card>div>strong{display:block;margin-top:6px;font-size:1.05rem}.wallet-card p{margin:6px 0 0;color:var(--muted);font-size:.68rem}
.wallet-balance{text-align:right}.wallet-balance strong{display:inline-block!important;font-size:2rem!important;letter-spacing:-.05em}.wallet-balance span{margin-left:6px;color:var(--muted);font-size:.65rem}
.plan-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;margin:20px 0 28px}
.plan-card{display:flex;flex-direction:column;min-height:260px;padding:22px;border:1px solid var(--line);border-radius:22px;background:rgba(255,255,255,.025)}
.plan-card-top{display:flex;justify-content:space-between;align-items:flex-start;gap:12px}.plan-card-top strong{font-size:1rem}.plan-card-top span{color:var(--lime);font-size:.7rem;white-space:nowrap}
.plan-card h3{margin:32px 0 8px;font-size:1.55rem;letter-spacing:-.04em}.plan-card p{margin:0 0 22px;color:var(--muted);font-size:.68rem;line-height:1.55}.plan-buy{margin-top:auto;width:100%}
.credit-guide,.ledger-wrap{margin:18px 0;padding:24px;border:1px solid var(--line);border-radius:22px;background:rgba(255,255,255,.02)}.credit-guide h3,.ledger-wrap h3{margin:0 0 18px;font-size:.82rem}
.credit-rate-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px}.credit-rate-grid span{padding:14px;border:1px solid var(--line);border-radius:14px;color:var(--muted);font-size:.66rem;line-height:1.45}.credit-rate-grid b{display:block;color:var(--text);font-size:1rem;margin-bottom:4px}
.ledger-list{display:grid}.ledger-row{display:flex;justify-content:space-between;align-items:center;gap:18px;padding:13px 0;border-top:1px solid var(--line)}.ledger-row:first-child{border-top:0}.ledger-row strong{display:block;font-size:.7rem;text-transform:capitalize}.ledger-row small{display:block;color:var(--muted);font-size:.55rem;margin-top:3px}.ledger-amount{text-align:right}.ledger-amount b{display:block;font-size:.75rem}.ledger-amount span{display:block;color:var(--muted);font-size:.55rem;margin-top:3px}.credit-plus{color:var(--lime)}.credit-minus{color:#ff9b8b}
@media(max-width:1180px){.plan-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:700px){.wallet-card{align-items:flex-start}.wallet-balance{text-align:left}.plan-grid,.credit-rate-grid{grid-template-columns:1fr}.wallet-card{flex-direction:column}}

.field-help{display:block;color:var(--muted);font-size:.58rem;line-height:1.55;margin-top:2px}

.reception-tools{display:grid;gap:12px;margin-top:18px}
.reception-tool-card{padding:18px;border:1px solid var(--line);border-radius:16px;background:rgba(255,255,255,.02)}
.reception-tool-card strong{display:block;font-size:.76rem}.reception-tool-card p{color:var(--muted);font-size:.63rem;line-height:1.55}
.reception-tool-card code{display:block;overflow-wrap:anywhere;padding:10px 12px;margin:10px 0;border:1px solid var(--line);border-radius:10px;font-size:.58rem;background:rgba(0,0,0,.18)}
.reception-payload{display:block;max-width:760px;margin-top:6px;color:var(--muted);font-size:.58rem;overflow-wrap:anywhere}

.captcha-image{display:block;max-width:100%;height:auto;margin:auto;border-radius:12px;background:#fff}

/* A calm, readable light studio, with the original dark palette available. */
:root[data-theme="light"]{--bg:#f6f7f9;--bg-soft:#edf0f4;--panel:rgba(255,255,255,.92);--text:#17202d;--muted:#596778;--lime:#3d7337;--cyan:#226c91;--violet:#7661b1;--danger:#b53232;--shadow:0 18px 50px rgba(22,38,60,.07)}
:root[data-theme="light"] .generate{background:#253e32;color:#fff;box-shadow:0 8px 20px rgba(31,57,43,.12)}
:root[data-theme="light"] .nav.active{background:#e4eae5}
:root[data-theme="light"] .nav.active .nav-icon{color:#fff}
:root[data-theme="light"] .engine-chip,:root[data-theme="light"] .secondary{background:#fff}
:root[data-theme="light"] .tool-card,:root[data-theme="light"] .tool-form{border-color:#dce2e8}
:root[data-theme="light"] .tool-hero em{color:#386d43}
:root[data-theme="light"] .ambient-orb{opacity:.13}
:root[data-theme="light"] .cursor-glow{opacity:.12}
:root[data-theme="light"] input,:root[data-theme="light"] textarea,:root[data-theme="light"] select{background:#f8fafb}
.sample-actions{display:flex;flex-wrap:wrap;gap:8px;padding-top:12px}
.sample-actions .secondary{font-size:.75rem;padding:7px 11px}
.tool-form>label{display:block;margin:18px 0 8px;color:var(--muted);font-size:.85rem}
.tool-form>textarea{width:100%;min-height:130px;resize:vertical}
.voice-library-card input{width:100%;margin:14px 0}
.voice-library-card audio{width:100%}
.admin-card{border:1px solid var(--line);border-radius:18px;padding:20px;margin:12px 0;background:var(--panel)}
.admin-card h3{font-size:.9rem;color:var(--muted);margin:0 0 12px}
.admin-card .admin-card{box-shadow:none;background:transparent}
#alignment-result a{display:inline-block;margin:6px;text-decoration:none}
#notice{max-width:min(760px,calc(100vw - 32px));white-space:normal}
button:focus-visible,a:focus-visible,input:focus-visible,textarea:focus-visible,select:focus-visible{outline:3px solid var(--cyan)}
@media(min-width:901px){.full-sidebar nav{overflow-y:auto;min-height:0;padding-right:4px}.full-sidebar .side-bottom{padding-top:20px}.full-sidebar .rail-label{margin-top:20px}}
@media(max-width:600px){.top-actions{gap:6px;flex-wrap:wrap}.top-actions .engine-chip:not(.credit-chip){display:none}.tool-hero h1{overflow-wrap:anywhere}.sample-actions .secondary{flex:1;white-space:nowrap}.tool-form{padding:20px}.voice-library-card{min-width:0}}
.studio-readiness{margin:12px 0 26px;padding:12px 18px;border:1px solid var(--line);border-radius:14px;font-size:.78rem;color:var(--muted);background:var(--panel);line-height:1.6}

/* Distinct authentication paths and voice library actions. */
.auth-recovery{display:flex;justify-content:flex-end;margin:10px 0 0}.auth-recovery .ghost-link{padding:8px 0;color:var(--muted)}
.auth-switch{display:flex;flex-direction:column;align-items:center;gap:10px;margin-top:24px;padding-top:22px;border-top:1px solid var(--line)}
.auth-switch p{margin:0;color:var(--muted);font-size:.8rem}.auth-switch .secondary{font-size:.8rem;padding:12px 20px;min-height:44px}
.voice-avatar{width:64px;height:64px;flex-shrink:0;border-radius:20px;object-fit:cover;border:1px solid var(--line)}
.voice-actions{display:flex;flex-wrap:wrap;gap:10px;margin:18px 0 12px}.voice-actions button{min-height:44px;font-size:.78rem}.voice-use{background:var(--lime);color:var(--bg);border-color:transparent}.voice-library-card audio{width:100%;margin-top:8px}
:root[data-theme="light"] .voice-actions .voice-use{background:#253e32;color:#fff;border-color:#253e32}
:root[data-theme="light"] .voice-actions .voice-use:hover{background:#315440;border-color:#315440}
.voice-actions .voice-use:focus-visible{outline:3px solid var(--cyan);outline-offset:3px}
.tool-workspace{display:grid;grid-template-columns:minmax(0,1.2fr) minmax(300px,.8fr);gap:24px;align-items:start;padding-top:30px}
.tool-workspace-inputs,.tool-workspace-side{min-width:0}
.tool-workspace-inputs>.tool-form{margin-top:0;width:100%}
.tool-workspace-inputs>.tool-grid{grid-template-columns:1fr;padding-top:0}
.tool-workspace-side{display:grid;gap:20px}
.tool-guide,.tool-output{border:1px solid var(--line);border-radius:24px;padding:24px;background:var(--panel)}
.tool-guide h2,.tool-output h2{font-size:1rem;margin:0;letter-spacing:-.02em}
.tool-guide ol{padding-left:24px;margin:20px 0 0;display:grid;gap:18px;color:var(--muted);font-size:.85rem;line-height:1.7}
.tool-guide li::marker{color:var(--lime);font-weight:700}
.tool-output-head{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:18px}
.tool-output-items{display:grid;gap:14px}.tool-output-items .job{margin:0;padding:18px;min-width:0}
.tool-output-items audio,.tool-output-items video{width:100%}.tool-output-items .job-head{flex-wrap:wrap;gap:10px}
.tool-output-items .artifact-actions a{overflow-wrap:anywhere;font-size:.8rem}.tool-output-items .result-preview{white-space:pre-wrap}
@media(max-width:1180px){.tool-workspace{grid-template-columns:1fr}.tool-workspace-side{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:700px){.tool-workspace-side{grid-template-columns:1fr}.tool-guide,.tool-output{padding:20px}.tool-workspace{gap:16px}}

/* Friendly studio: clear type, colorful tool symbols and soft surfaces. */
:root[data-theme="light"]{--bg:#f7f8fc;--bg-soft:#eef1f8;--panel:#fff;--muted:#526176;--line:#e3e8f1;--lime:#3860d9;--cyan:#3860d9;--shadow:0 8px 32px rgba(37,56,104,.06)}
:root[data-theme="light"] .sidebar{background:rgba(255,255,255,.95)}
:root[data-theme="light"] .nav:hover{background:#f2f4fc}
:root[data-theme="light"] .nav.active{background:#edf1ff;color:#2445aa;box-shadow:inset 3px 0 #5274ed}
.nav-icon{width:34px;height:34px;font-family:"Apple Color Emoji","Segoe UI Emoji","Noto Color Emoji",sans-serif;font-size:1.3rem;background:var(--bg-soft);border:0;border-radius:12px;box-shadow:inset 0 1px 0 rgba(255,255,255,.4)}
.nav.active .nav-icon{background:var(--bg-soft);box-shadow:none}
.full-sidebar .nav{grid-template-columns:34px 1fr;padding:8px;gap:10px;min-height:48px}
.nav span:nth-child(2){font-size:.82rem;line-height:1.35;font-weight:550}
.full-sidebar .rail-label{font-size:.63rem;letter-spacing:.1em;margin:22px 0 10px}
.hero-tool-icon{display:grid;place-items:center;width:66px;height:66px;border-radius:22px;background:var(--bg-soft);font-family:"Apple Color Emoji","Segoe UI Emoji","Noto Color Emoji",sans-serif;font-size:2.35rem;margin-bottom:18px;border:1px solid var(--line);box-shadow:var(--shadow)}
.tool-hero{min-height:0;padding:32px 0 28px;position:relative}
.tool-hero h1{font-size:clamp(2.4rem,4.4vw,4.2rem);line-height:1.12;letter-spacing:-.045em;font-weight:750;max-width:100%}
.tool-hero h1 em{font-family:inherit;font-weight:750;font-style:normal}
:root[data-theme="light"] .tool-hero h1 em{color:#4565d5}
.tool-hero>p:last-child{margin-top:16px;font-size:.93rem;line-height:1.7;max-width:720px}
.kicker{font-size:.7rem;letter-spacing:.13em;margin:0 0 12px}
.tool-workspace{gap:22px;padding-top:24px;grid-template-columns:minmax(0,1.35fr) minmax(290px,.75fr)}
.tool-card,.tool-form,.voice-library-card,.tool-guide,.tool-output{border-radius:24px;box-shadow:var(--shadow)}
.tool-guide{background:linear-gradient(135deg,var(--panel),var(--bg-soft));border-color:var(--line)}
.tool-guide ol{list-style:none;counter-reset:steps;padding:0;gap:14px;margin-top:18px}
.tool-guide li{counter-increment:steps;display:grid;grid-template-columns:28px 1fr;align-items:start;gap:10px;line-height:1.6}
.tool-guide li::before{content:counter(steps);display:grid;place-items:center;width:28px;height:28px;border-radius:10px;background:var(--panel);border:1px solid var(--line);color:var(--lime);font-size:.8rem;font-weight:750}
.field-help{font-size:.8rem;line-height:1.65;margin:8px 0}
.field-label,.tool-form>label{font-size:.8rem;font-weight:650;letter-spacing:0;line-height:1.5}
input:not([type="range"]):not([type="checkbox"]),select{min-height:46px;border-radius:12px;font-size:.88rem;padding:11px 13px;max-width:100%}
textarea{border-radius:16px;font-size:.98rem;line-height:1.7}
.big-textarea{font-size:1.18rem;line-height:1.75;min-height:250px}
.generate{min-height:52px;border-radius:16px;font-size:.95rem;font-weight:650;transition:transform .16s ease,box-shadow .16s ease}
:root[data-theme="light"] .generate{background:linear-gradient(115deg,#365bcf,#7251cb);color:#fff;box-shadow:0 8px 20px rgba(68,85,190,.2)}
.generate:hover:not(:disabled){transform:translateY(-2px);box-shadow:0 12px 25px rgba(68,85,190,.25)}
.secondary,.account,.quiet{min-height:40px;font-size:.82rem;border-radius:12px}
:root[data-theme="light"] .voice-actions .voice-use{background:#365bcf;color:#fff;border-color:#365bcf}
:root[data-theme="light"] .voice-actions .voice-use:hover{background:#2949b0;border-color:#2949b0}
.voice-library-card{padding:22px;transition:border-color .18s ease,transform .18s ease}
.voice-library-card:hover{border-color:var(--cyan);transform:translateY(-2px)}
.voice-card-head strong{font-size:1rem}.voice-card-head small{font-size:.78rem;line-height:1.5;margin-top:5px}
#voices>.field-input{width:100%;max-width:520px;margin-bottom:10px}
.tool-output-items>.field-help{padding:22px 16px;text-align:center;border:1px dashed var(--line);border-radius:16px;background:var(--bg-soft)}
.top-left{font-size:.75rem}.brand-mark{border-radius:12px;background:var(--bg-soft)}
@media(min-width:861px){:root{--sidebar:264px}.sidebar{padding:24px 18px}.full-sidebar nav{flex-shrink:1}.full-sidebar .side-bottom{padding-top:16px}.side-bottom p{margin:12px 0}.topbar{height:76px}}
@media(max-width:1180px){.tool-workspace{grid-template-columns:1fr}.tool-workspace-side{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:860px){.full-sidebar{height:78px;padding:7px;background:var(--panel)}.full-sidebar .nav{grid-template-columns:30px auto!important;height:58px;padding:8px 10px}.nav-icon{width:30px;height:30px;font-size:1.2rem}.tool-hero{padding:24px 0}.hero-tool-icon{width:54px;height:54px;border-radius:18px;font-size:2rem}.topbar{height:auto;min-height:76px;gap:10px;padding:12px 0;flex-wrap:wrap}.top-actions{margin-left:auto}}
@media(max-width:700px){.tool-workspace-side{grid-template-columns:1fr}.tool-hero h1{font-size:clamp(2.1rem,8vw,3.2rem)}.tool-hero>p:last-child{font-size:.88rem}.tool-card,.tool-form{padding:20px}.tool-card.wide{min-height:0}.big-textarea{min-height:220px}.top-left{font-size:.65rem}.voice-library-card{padding:20px}}
@media(prefers-reduced-motion:reduce){.generate:hover:not(:disabled),.voice-library-card:hover{transform:none}.generate,.voice-library-card{transition:none}}

/* Keep the wallet and recharge action visible, including small screens. */
.topup-button{display:inline-flex;align-items:center;justify-content:center;gap:8px;border:1px solid var(--cyan);border-radius:12px;background:var(--bg-soft);color:var(--text);min-height:44px;padding:10px 14px;font-size:.82rem;font-weight:650}
:root[data-theme="light"] .topup-button{background:#edf1ff;border-color:#d0dafa;color:#294bb5}
.top-actions .credit-chip:not([hidden]){display:inline-flex;align-items:center;min-height:44px;font-size:.8rem;letter-spacing:0;text-transform:none;border:1px solid var(--line-strong);color:var(--text);padding:10px 14px;background:var(--panel)}
.billing-heading{font-size:1.3rem;margin:30px 0 8px}
.wallet-card{padding:26px;border-radius:22px;background:var(--panel);border:1px solid var(--line);box-shadow:var(--shadow)}
.wallet-balance strong{font-size:2.7rem;color:var(--lime)}
.plan-card-top span{font-size:1rem}.plan-card p{font-size:.85rem;line-height:1.6}.plan-card-top strong{font-size:1rem}
@media(max-width:600px){.topup-button{font-size:.75rem;padding:9px 11px}.top-actions .credit-chip:not([hidden]){font-size:.75rem;padding:9px 11px}.top-actions{max-width:100%}.wallet-card{padding:20px}.wallet-balance strong{font-size:2.3rem}}
