@import url('https://fonts.googleapis.com/css2?family=DM+Sans:wght@400;500;600;700&family=Manrope:wght@400;500;600;700;800&display=swap');
:root{--bg:#080911;--panel:#11121d;--panel2:#151624;--line:#292a3d;--muted:#9295ad;--text:#f4f4fb;--pink:#ff8ab6;--violet:#8a9bff;--good:#6fe0b0;--danger:#ff627d}
*{box-sizing:border-box}
body{margin:0;background:radial-gradient(ellipse at 52% -15%,#29213d 0,transparent 38%),var(--bg);color:var(--text);font-family:'DM Sans',system-ui,sans-serif}
button,input,select{font:inherit}
button,select,input[type=range],input[type=checkbox]{accent-color:var(--pink)}
button{cursor:pointer}
button:focus-visible,input:focus-visible,select:focus-visible,a:focus-visible{outline:2px solid var(--violet);outline-offset:3px}
.studio-topbar{height:70px;display:flex;align-items:center;gap:25px;padding:0 clamp(16px,3vw,42px);border-bottom:1px solid #242535;background:#0c0d16ed;backdrop-filter:blur(16px);position:sticky;top:0;z-index:10}
.studio-brand{display:flex;align-items:center;gap:11px;color:inherit;text-decoration:none;min-width:190px}
.brand-mark{width:38px;height:38px;display:grid;place-items:center;border-radius:12px;background:linear-gradient(140deg,var(--pink),var(--violet));font:800 16px Manrope;color:#171526;box-shadow:0 4px 22px #a38fff26}
.studio-brand strong,.studio-brand small{display:block}.studio-brand strong{font:800 13px Manrope;letter-spacing:.1px}.studio-brand small{font-size:9px;letter-spacing:1.4px;color:#9698af;margin-top:4px}
.top-status{margin:auto;display:flex;align-items:center;gap:9px;color:#bfc1d1;font-size:11px}.status-dot,.green-dot{width:7px;height:7px;display:inline-block;border-radius:50%;background:#777b90}.status-dot.active{background:var(--danger);box-shadow:0 0 10px #ff627d99}
.studio-topbar nav{display:flex;align-items:center;gap:22px}.studio-topbar nav a{font-size:11px;color:#aeb0c4;text-decoration:none}.studio-topbar nav a:hover{color:#fff}
.studio-shell{max-width:1800px;margin:auto;padding:30px clamp(14px,2.2vw,34px) 24px}
.studio-heading{display:flex;justify-content:space-between;align-items:center;gap:25px;margin:0 0 21px}
.eyebrow,.panel-kicker{color:var(--violet);font-size:9px;font-weight:800;letter-spacing:1.6px}
.studio-heading h1{font:700 clamp(27px,3vw,40px)/1.1 Manrope;margin:9px 0 10px;letter-spacing:-1.5px}.studio-heading h1 span{color:transparent;background:linear-gradient(95deg,var(--pink),var(--violet));background-clip:text}
.studio-heading p{margin:0;color:#a4a6bb;font-size:12px;line-height:1.7;max-width:760px}
.beta-chip{white-space:nowrap;display:flex;align-items:center;gap:8px;border:1px solid #4b3d60;border-radius:99px;padding:9px 12px;background:#1a1527;color:#e4d8ff;font-size:9px;font-weight:800;letter-spacing:.8px}.beta-chip span{width:6px;height:6px;border-radius:50%;background:var(--pink);box-shadow:0 0 12px #ff8ab688}
.permission-note{display:flex;gap:14px;align-items:center;margin-bottom:17px;border:1px solid #35334f;background:#151525;border-radius:12px;padding:12px 15px;color:#b5b7ca;font-size:10px;line-height:1.6}.permission-note strong{color:#e4dfff;font-size:11px;white-space:nowrap}
.studio-grid{display:grid;grid-template-columns:minmax(225px,260px) minmax(0,1fr) minmax(235px,290px);align-items:start;gap:14px}
.panel{background:linear-gradient(155deg,#141522,#10111a);border:1px solid var(--line);border-radius:15px;box-shadow:0 15px 40px #0002;min-width:0}
.source-panel,.inspector-panel{padding:16px}
.panel-heading{display:flex;justify-content:space-between;align-items:center;gap:12px;margin-bottom:16px}.panel-heading h2,.preview-head h2{font:750 15px Manrope;margin:5px 0 0;letter-spacing:-.4px}
.step-number{height:27px;min-width:27px;border:1px solid #35364c;background:#1a1b2a;border-radius:8px;color:#aeb1c7;display:grid;place-items:center;font-size:9px;font-weight:800}
.source-card{padding:12px;margin-bottom:10px;border:1px solid #2b2c3f;border-radius:11px;background:#0e0f18}
.source-title{display:flex;align-items:center;gap:9px;min-width:0;margin-bottom:12px}.source-title>div{flex:1;min-width:0}.source-title strong{font-size:11px;display:block}.source-title small{display:block;color:#8588a0;font-size:9px;margin-top:3px}
.source-icon{width:28px;height:28px;display:grid;place-items:center;border-radius:8px;font-size:13px;background:#272136;color:var(--pink)}.screen-icon{background:#20243b;color:var(--violet)}.mic-icon{background:#1d2b2c;color:var(--good)}
.source-lamp{width:6px;height:6px;border-radius:50%;background:#5b5e72}.source-lamp.active{background:var(--good);box-shadow:0 0 9px #6fe0b066}
.source-card>label,.inspector-section>label{display:block;font-size:9px;font-weight:700;color:#a0a2b8;margin:0 0 6px}
select,.inspector-section input[type=text]{display:block;width:100%;min-width:0;height:36px;background:#191a29;border:1px solid #34354b;border-radius:8px;color:#e9e9f5;padding:0 9px;font-size:10px;margin:0 0 11px}
select:disabled{opacity:.6}
.wide-button{display:flex;justify-content:center;align-items:center;width:100%;min-height:36px;border:1px solid transparent;border-radius:8px;background:linear-gradient(110deg,var(--pink),#dba0e8);color:#151321;font-size:10px;font-weight:800;padding:9px 11px;transition:filter .2s,transform .2s}.wide-button:hover:not(:disabled){filter:brightness(1.08);transform:translateY(-1px)}.wide-button:disabled{opacity:.45;cursor:not-allowed}
.secondary-button{border-color:#3b3b55;background:#1c1d2c;color:#e0e1ee}.secondary-button:hover:not(:disabled){border-color:#7776a7}
.source-card>label:has(input[type=checkbox]){display:flex;align-items:center;gap:7px;line-height:1.5;margin-bottom:12px;font-weight:500}
.source-card input[type=checkbox],.toggle-row input{width:14px;height:14px;margin:0}
.slider-label{display:flex;align-items:center;justify-content:space-between;color:#a0a2b8;font-size:9px;margin:10px 0 7px}.slider-label output{color:#f2c2dd;font-size:10px;font-weight:800}
input[type=range]{width:100%;height:15px;margin:0;cursor:pointer}.meter-label{display:flex;justify-content:space-between;gap:8px;font-size:8px;letter-spacing:.5px;color:#777b94;margin:12px 0 6px}.audio-meter{height:6px;border-radius:99px;background:#2a2b3c;overflow:hidden}.audio-meter span{display:block;height:100%;width:0;background:linear-gradient(90deg,#64daa7,#d4d967,#ff8ab6);border-radius:99px;transition:width .06s linear}
.panel-footnote{display:flex;gap:8px;align-items:flex-start;color:#777b94;font-size:9px;line-height:1.6;padding:9px 2px 0}.privacy-shield{display:grid;place-items:center;width:17px;height:17px;flex:0 0 17px;border-radius:50%;background:#16352d;color:var(--good);font-weight:800}
.preview-column{display:grid;gap:14px;min-width:0}
.preview-panel{padding:15px}
.preview-head{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:13px}.preview-badges{display:flex;align-items:center;gap:7px;flex-wrap:wrap;justify-content:flex-end}.mini-badge,.rec-indicator{font-size:8px;font-weight:800;letter-spacing:.6px;border:1px solid #34364b;background:#1b1c2c;padding:7px 9px;border-radius:7px;color:#b7b9cf}.rec-indicator{display:flex;align-items:center;gap:6px;color:#898ba0}.rec-indicator i{width:6px;height:6px;border-radius:50%;background:#5e6074}.rec-indicator.active{color:#ffacbb;border-color:#683242;background:#301820}.rec-indicator.active i{background:var(--danger);box-shadow:0 0 9px #ff627d}
.canvas-frame{position:relative;width:100%;aspect-ratio:16/9;background:radial-gradient(ellipse at 50% 50%,#202039,#090a11 70%);overflow:hidden;border:1px solid #34354a;border-radius:10px}.canvas-frame canvas{display:block;width:100%;height:100%;object-fit:contain}.canvas-frame video{position:fixed;left:-10000px;top:0;width:4px;height:4px;opacity:.001;pointer-events:none}
.canvas-placeholder{position:absolute;inset:0;display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;gap:9px;background:radial-gradient(ellipse at 50% 45%,#282038,#0b0c15 68%);pointer-events:none}.canvas-placeholder.hidden{display:none}.placeholder-logo{width:56px;height:56px;display:grid;place-items:center;background:linear-gradient(130deg,var(--pink),var(--violet));color:#171522;border-radius:18px;font:800 22px Manrope;box-shadow:0 0 45px #9e87ff28}.canvas-placeholder strong{font:700 clamp(10px,1.4vw,18px) Manrope}.canvas-placeholder small{font-size:clamp(8px,.9vw,11px);color:#989ab0;max-width:80%}
.canvas-bottomline{display:flex;align-items:center;justify-content:space-between;gap:10px;color:#7c8099;font-size:9px;padding:12px 2px 0}.canvas-bottomline>span:first-child{display:flex;align-items:center;gap:7px}.green-dot{background:var(--good)}.green-dot.idle{background:#777b90}
.scene-panel{padding:15px}.scene-panel .panel-heading{margin-bottom:12px}.scene-help{font-size:9px;color:#888ba4}
.scene-list{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:9px}.scene-choice{min-width:0;text-align:left;padding:8px;border:1px solid #303146;background:#11121d;border-radius:10px;color:#d7d8e8;transition:border-color .15s,background .15s}.scene-choice:hover{border-color:#69658e}.scene-choice.selected{border-color:var(--pink);background:#211b2b;box-shadow:inset 0 0 0 1px #ff8ab62b}.scene-choice strong,.scene-choice small{display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.scene-choice strong{font-size:10px;margin-top:8px}.scene-choice small{font-size:8px;color:#83869e;margin-top:4px}
.scene-thumb{height:62px;display:block;position:relative;border-radius:6px;border:1px solid #43445b;background:linear-gradient(135deg,#292340,#10111b);overflow:hidden}.scene-thumb:before{content:"";position:absolute;left:34%;top:14%;width:32%;height:72%;border-radius:40% 40% 25% 25%;background:linear-gradient(140deg,#c0b7dc,#444867)}.scene-thumb:after{content:"";position:absolute;left:29%;top:7%;width:42%;height:30%;border-radius:50%;background:#d4cbe9}.screen-thumb{background:repeating-linear-gradient(0deg,#20223a,#20223a 8px,#292b46 9px,#292b46 10px)}.screen-thumb:before{left:9%;top:12%;width:82%;height:75%;border-radius:2px;border:2px solid #8786b1;background:linear-gradient(130deg,#3c3c60,#181a2c)}.screen-thumb:after{left:18%;top:26%;width:36%;height:6%;border-radius:2px;background:#ff9ac7;box-shadow:0 11px #8b9cff,0 22px #626580}.pip-thumb{background:repeating-linear-gradient(0deg,#20223a,#20223a 8px,#292b46 9px,#292b46 10px)}.pip-thumb:before{left:8%;top:9%;width:84%;height:82%;border-radius:3px;background:#242744}.pip-thumb:after{left:62%;top:48%;width:29%;height:42%;border:2px solid var(--pink);border-radius:4px;background:linear-gradient(130deg,#8b8aa8,#34354d)}.pip-thumb i{display:none}
.scene-actions{display:flex;justify-content:space-between;align-items:center;gap:12px;padding-top:13px;margin-top:12px;border-top:1px solid #292a3c}.text-button{border:0;background:transparent;color:#e3c6de;padding:7px 0;font-size:9px;font-weight:800;text-align:left}.text-button:hover{color:#fff}.scene-actions>span{font-size:9px;color:#777b93}
.inspector-section{padding:12px 0;border-top:1px solid #292a3c}.inspector-section:first-of-type{border-top:0;padding-top:0}.inspector-section>label{margin:0 0 7px}.inspector-section input[type=text]{margin-bottom:12px}
.toggle-row{display:flex!important;justify-content:space-between;align-items:center;gap:10px;border:1px solid #313247;border-radius:9px;padding:10px;background:#10111b;margin:2px 0 0!important}.toggle-row strong,.toggle-row small{display:block}.toggle-row strong{color:#e3e3ef;font-size:10px}.toggle-row small{font-weight:400;color:#8588a0;font-size:8px;margin-top:4px}.toggle-row input{flex:0 0 auto}
.field-note{font-size:9px;line-height:1.6;color:#777b93;margin:0 0 3px}.profile-section .wide-button{margin-top:4px}.profile-buttons{display:flex;justify-content:space-between;gap:15px;margin-top:6px}.profile-note{display:block;color:#777b93;font-size:8px;line-height:1.5;margin-top:8px}
.recording-bar{display:flex;align-items:center;justify-content:space-between;gap:25px;padding:16px 18px;margin-top:14px}.recording-copy{display:grid;gap:5px}.recording-copy>strong{font:750 13px Manrope}.recording-copy>small{font-size:9px;color:#888ba2;line-height:1.6}.recording-controls{display:flex;align-items:center;gap:9px;flex-wrap:wrap;justify-content:flex-end}.record-time{font:700 13px ui-monospace,monospace;letter-spacing:1px;color:#d4d6e7;min-width:45px}.record-button,.stop-button{min-height:37px;border-radius:9px;padding:0 13px;font-size:10px;font-weight:800}.record-button{border:1px solid #723445;background:linear-gradient(130deg,#ff8aab,#f86f92);color:#210e18;display:flex;align-items:center;gap:7px}.record-button i{width:7px;height:7px;background:#8b1834;border-radius:50%}.record-button:disabled,.stop-button:disabled{opacity:.4;cursor:not-allowed}.stop-button{background:#222335;color:#ececf7;border:1px solid #41425b}.record-button.recording{animation:recordPulse 2s ease-in-out infinite}.record-button.recording i{background:#9a1b32}@keyframes recordPulse{50%{box-shadow:0 0 0 4px #ff739022}}
.stage-boundary{display:grid;grid-template-columns:26px 1fr 1fr;gap:12px;padding:15px 18px;margin-top:14px;border:1px solid #2b2c41;border-radius:13px;background:#10111b}.boundary-mark{display:grid;place-items:center;width:22px;height:22px;border-radius:50%;border:1px solid #7973a4;color:#bbb6ff;font-size:11px;font-weight:800}.stage-boundary strong{font-size:10px;color:#e7e6f3}.stage-boundary p{font-size:9px;line-height:1.7;color:#898ca3;margin:6px 0 0}.stage-next{border-left:1px solid #2d2e43;padding-left:16px}
.studio-footer{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-top:22px;padding:16px 2px 0;border-top:1px solid #232435;color:#757990;font-size:9px}.studio-footer a{color:#c2b4f9;text-decoration:none}
.toast{position:fixed;left:50%;bottom:24px;z-index:50;transform:translateX(-50%);max-width:min(520px,calc(100vw - 30px));padding:12px 16px;border:1px solid #4b4765;background:#171725;color:#f1efff;border-radius:11px;box-shadow:0 20px 60px #0008;font-size:11px;line-height:1.5}
@media(max-width:1200px){.studio-grid{grid-template-columns:230px minmax(0,1fr)}.inspector-panel{grid-column:1/-1;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:15px}.inspector-panel>.panel-heading{grid-column:1/-1;margin-bottom:0}.inspector-section{border-top:1px solid #292a3c!important;padding:12px 0!important}.inspector-section:first-of-type{padding-top:12px!important}}
@media(max-width:760px){.studio-topbar{gap:12px;height:62px}.studio-brand{min-width:0}.top-status{font-size:9px}.studio-topbar nav{gap:10px}.studio-topbar nav a:first-child{display:none}.studio-shell{padding-top:22px}.studio-heading{align-items:flex-start;flex-direction:column}.beta-chip{align-self:flex-start}.permission-note{align-items:flex-start;flex-direction:column;gap:5px}.studio-grid{grid-template-columns:1fr}.source-panel{order:2}.preview-column{order:1}.inspector-panel{order:3;grid-column:auto;display:block}.inspector-panel>.panel-heading{margin-bottom:12px}.inspector-section{padding:12px 0!important}.recording-bar{align-items:flex-start;flex-direction:column;gap:12px}.recording-controls{width:100%;justify-content:flex-start}.stage-boundary{grid-template-columns:26px 1fr}.stage-next{grid-column:2;border-left:0;border-top:1px solid #2d2e43;padding:12px 0 0}.studio-footer{flex-wrap:wrap}.canvas-placeholder small{font-size:9px}}
@media(max-width:450px){.top-status{display:none}.studio-topbar nav{margin-left:auto}.studio-topbar nav a{font-size:10px}.preview-panel,.scene-panel{padding:10px}.scene-list{gap:6px}.scene-choice{padding:6px}.scene-thumb{height:48px}.preview-head{align-items:flex-start;flex-direction:column}.preview-badges{justify-content:flex-start}.scene-choice strong{font-size:9px}.scene-choice small{font-size:7px}.recording-controls{gap:7px}.record-button,.stop-button{padding:0 9px}.studio-footer{flex-direction:column;align-items:flex-start}}

.jt-hotkey-panel{margin-top:16px;padding-top:14px;border-top:1px solid var(--line)}.jt-hotkey-panel>label{display:block;margin:10px 0 7px;color:#bfc1d1;font-size:11px}.jt-hotkey-panel select{width:100%;padding:9px;border:1px solid var(--line);border-radius:8px;background:#0b0c14;color:var(--text)}.hotkey-grid{display:grid;grid-template-columns:1fr;gap:7px;margin:12px 0}.hotkey-grid span{font-size:10px;color:#b8bacd;display:flex;align-items:center;gap:4px}.hotkey-grid kbd{font:700 10px system-ui;padding:3px 5px;border:1px solid #3a3b52;border-radius:5px;background:#191a29;color:#f5f5fb}.jt-hotkey-panel>small{display:block;color:var(--muted);font-size:10px;line-height:1.5}
