*{box-sizing:border-box}html{background:var(--page-bg)}body{background:var(--page-bg);color:var(--ink);letter-spacing:0;margin:0;font-family:Plus Jakarta Sans,Avenir Next,Segoe UI,PingFang SC,Noto Sans CJK SC,system-ui,sans-serif}button,input,select,textarea{font:inherit}button{cursor:pointer}button,a,input,select,textarea{transition:border-color .16s var(--ease-standard), background-color .16s var(--ease-standard), box-shadow .16s var(--ease-standard), color .16s var(--ease-standard), opacity .16s var(--ease-standard), transform .16s var(--ease-standard)}button:hover:not(:disabled),a:hover{transform:translateY(-1px)}:focus-visible{outline-offset:2px;outline:2px solid #27e7aaad}h1,h2{color:var(--content-ink);letter-spacing:0}p,dd,td,li{color:var(--text-soft)}small,.muted,.section-heading p,.status-metric span,.studio-status span,.studio-status span{color:var(--muted)}::selection{color:var(--ink);background:#00d68f38}@media (prefers-reduced-motion:reduce){*,:before,:after{scroll-behavior:auto!important;transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}}
.console-shell,.studio-shell,.studio-shell{background:linear-gradient(90deg, var(--nav-bg) 0 228px, var(--page-bg) 228px);grid-template-columns:228px minmax(0,1fr);min-height:100vh;display:grid}.sidebar,.studio-sidebar,.studio-sidebar{background:linear-gradient(180deg, #0a2540fa, #071d32fa), var(--nav-bg);height:100vh;color:var(--nav-ink);border-right:1px solid var(--line);flex-direction:column;gap:28px;padding:20px 14px;display:flex;position:sticky;top:0}.brand,.studio-brand,.studio-brand{align-items:center;gap:12px;display:flex}.brand-logo{object-fit:contain;background:#082338;border:1px solid #ffffff14;border-radius:8px;flex:none;width:34px;height:34px;display:block;box-shadow:0 0 18px #00d68f21}.brand strong,.brand small,.studio-brand strong,.studio-brand small,.studio-brand strong,.studio-brand small{display:block}.brand strong,.studio-brand strong,.studio-brand strong{color:var(--nav-ink);letter-spacing:-.01em;font-weight:800}.brand small,.studio-brand small,.studio-brand small{color:var(--nav-muted);margin-top:2px}.sidebar nav,.studio-sidebar nav,.studio-sidebar nav,.studio-nav-group{gap:6px;display:grid}.studio-nav-group.secondary{border-top:1px solid #ffffff1a;margin-top:8px;padding-top:10px}.admin-account-nav-group{margin-top:14px}.admin-nav-group-label{color:#7f98a3;letter-spacing:.08em;text-transform:uppercase;padding:0 12px 2px;font-size:11px;font-weight:800}.sidebar button,.studio-sidebar button,.studio-sidebar button{color:#b8cad3;text-align:left;background:0 0;border:1px solid #0000;border-radius:8px;padding:11px 12px;font-weight:700}.studio-sidebar button{align-items:center;gap:8px;display:inline-flex}.sidebar button.active,.sidebar button:hover,.studio-sidebar button.active,.studio-sidebar button:hover,.studio-sidebar button.active,.studio-sidebar button:hover{color:var(--nav-ink);background:#ffffff12;border-color:#00d68f2e;box-shadow:inset 3px 0 #00d68fbd}.sidebar button:disabled,.studio-sidebar button:disabled,.studio-sidebar button:disabled{cursor:not-allowed;opacity:.34}.workspace,.studio-workspace,.studio-workspace{background:var(--page-bg);min-width:0;padding:16px}.topbar,.studio-topbar,.studio-topbar{z-index:5;border:1px solid var(--line);background:var(--line);box-shadow:var(--shadow-soft);border-radius:10px;gap:1px;margin-bottom:14px;display:grid;position:sticky;top:0;overflow:visible}.topbar{grid-template-columns:repeat(4,minmax(0,1fr))}.studio-topbar{grid-template-columns:minmax(120px,1.25fr) minmax(112px,1.2fr) minmax(92px,.82fr) minmax(104px,.9fr) minmax(108px,.82fr)}.status-metric,.studio-status,.studio-status,.topbar-button{background:var(--surface);min-width:0;color:var(--ink);padding:11px 13px}.studio-action-status,.studio-action-status{cursor:pointer;width:100%;height:100%;font:inherit;text-align:left;border:0}.studio-action-status:hover,.studio-action-status.active,.studio-action-status:hover,.studio-action-status.active{background:#f2fbf7;box-shadow:inset 0 0 0 1px #00d68f3d}.studio-status strong,.studio-status strong,.status-metric strong{text-overflow:ellipsis;white-space:nowrap;min-width:0;color:var(--ink);margin-top:2px;display:block;overflow:hidden}.studio-status span,.studio-status span,.status-metric span{color:var(--muted);font-size:12px;display:block}.studio-action-status strong,.studio-action-status strong{justify-content:space-between;align-items:center;gap:8px;min-width:0;display:flex}.topbar-action-value{text-overflow:ellipsis;white-space:nowrap;min-width:0;overflow:hidden}.studio-action-status i,.studio-action-status i{color:var(--muted);transition:transform .16s var(--ease-standard);font-size:12px;font-style:normal}.studio-action-status.active i,.studio-action-status.active i{transform:rotate(180deg)}.studio-auth-shell{place-items:center;min-height:100vh;padding:28px;display:grid}.studio-auth-panel,.login-panel{background:var(--surface);border:1px solid var(--line-strong);width:min(430px,100%);box-shadow:var(--shadow);border-radius:14px;gap:18px;padding:26px;display:grid}.auth-brand{padding-bottom:6px}.auth-panel-title{margin:0;font-size:1.25rem;line-height:1.2}.auth-alt-link{color:var(--accent);text-align:center;font-size:.9rem;font-weight:700;text-decoration:none}.admin-empty-panel{align-content:center;justify-items:start;gap:12px;min-height:260px;display:grid}.admin-empty-panel h1,.admin-empty-panel p{margin:0}.admin-permission-row{color:var(--muted);align-items:center;gap:8px;font-size:.92rem;display:inline-flex}
.panel,.studio-panel,.studio-panel,.project-upload-panel,.summary-item,.export-format-card,.cast-row,.chapter-card,.segment-card,.version-row,.review-panel,.tts-mapping-panel,.cue-audio-action-row,.performance-editor-group,.performance-subsection,.annotation-editor,.matrix-wrap{background:var(--surface);border:1px solid var(--line);border-radius:var(--radius-lg);box-shadow:var(--shadow-soft);color:var(--ink)}.panel,.studio-panel,.studio-panel{min-width:0;padding:18px}.panel:hover,.studio-panel:hover,.studio-panel:hover,.cast-row:hover,.chapter-card:hover,.segment-card:hover,.version-row:hover,.project-row:hover{border-color:#0f9f723d}.primary-action,.login-panel button,.studio-auth-panel .primary-action,.chapter-actions .primary-action,.transport-button.primary,.performance-draft-actions button.primary-action,.annotation-footer-row .primary-action,.empty-state .primary-action{background:var(--brand-gradient);color:#041b2c;border:0;border-radius:9px;font-weight:850;box-shadow:0 8px 18px #0f23301f}.primary-action:hover:not(:disabled),.login-panel button:hover:not(:disabled){box-shadow:var(--brand-glow)}.secondary-action,.row-actions button,.inline-controls button,.toolbar-actions button,.review-actions button,.panel-title-row button,.mini-player button,.topbar-button,.segment-actions button,.inspector-panel button:not(.primary-action),.cue-text-editor-actions button,.performance-draft-actions button,.drawer-actions button:not(.drawer-close-button),.attention-section-heading button,.segmented-control button,.utility-button{border:1px solid var(--line-strong);background:var(--surface);color:var(--ink);border-radius:8px;font-weight:750}.secondary-action:hover:not(:disabled),.row-actions button:hover:not(:disabled),.inline-controls button:hover:not(:disabled),.toolbar-actions button:hover:not(:disabled),.review-actions button:hover:not(:disabled),.panel-title-row button:hover:not(:disabled),.mini-player button:hover:not(:disabled),.segment-actions button:hover:not(:disabled),.inspector-panel button:not(.primary-action):hover:not(:disabled),.cue-text-editor-actions button:hover:not(:disabled),.performance-draft-actions button:hover:not(:disabled),.segmented-control button:hover:not(:disabled),.utility-button:hover:not(:disabled){background:#f2fbf7;border-color:#00d68f57}button:disabled,.primary-action:disabled,.secondary-action:disabled,.login-panel button:disabled,.toolbar-actions button:disabled,.row-actions button:disabled,.voice-row button:disabled,.review-actions button:disabled,.segment-actions button:disabled,.inspector-panel button:disabled{cursor:not-allowed;opacity:.45}.audio-preview-button,.inspector-panel button.audio-preview-button,.mini-player button.audio-preview-button{border:1px solid var(--preview-border);background:var(--preview-bg);min-width:0;color:var(--preview-fg);box-shadow:var(--preview-shadow);white-space:nowrap;border-radius:8px;justify-content:center;align-items:center;gap:7px;font-weight:820;line-height:1;display:inline-flex}.audio-preview-button:hover:not(:disabled),.inspector-panel button.audio-preview-button:hover:not(:disabled),.mini-player button.audio-preview-button:hover:not(:disabled){border-color:color-mix(in srgb, var(--preview-border) 70%, #0f9f72);background:var(--preview-bg)}input,select,textarea,.performance-editor-grid input,.performance-editor-grid select,.performance-style-prompt textarea,.performance-inline-input,.performance-inline-textarea,.annotation-editor textarea,.cue-text-editor textarea{border:1px solid var(--line-strong);color:var(--ink);background:#fff;border-radius:8px}input:focus,select:focus,textarea:focus,.performance-editor-grid input:focus,.performance-editor-grid select:focus,.performance-style-prompt textarea:focus,.performance-inline-input:focus,.performance-inline-textarea:focus,.annotation-editor textarea:focus,.cue-text-editor textarea:focus{border-color:#00d68f8f;outline:none;box-shadow:0 0 0 3px #00d68f1f}input::placeholder,textarea::placeholder{color:#8ba0aa}label,.check-list,.performance-editor-grid label,.performance-style-prompt,.performance-inline-field,.annotation-editor label{color:var(--muted)}th{color:var(--muted);background:#f5f9f9}td,th{border-bottom-color:var(--line)}tbody tr:hover,.selected-row,.project-row.active{background:#eefbf6}.notice{color:var(--warn);background:#fff8e7;border:1px solid #ead9a7;border-radius:10px}.notice.danger{color:var(--bad);background:#fff1ef;border-color:#f0c6c2}.notice.success{color:var(--ok);background:#effaf5;border-color:#b9e4d2}.notice.compact{margin:6px 0;padding:8px 10px}.studio-pill,.studio-pill,.status-pill,.version-badge,.version-mapping-summary span,.chapter-export-icon{min-width:0;max-width:100%;color:var(--text-soft);background:#f4f8f8;border:1px solid #d5e1e3}.studio-pill-label,.studio-pill-label,.studio-pill-detail,.studio-pill-detail{text-overflow:ellipsis;white-space:nowrap;min-width:0;overflow:hidden}.studio-pill-detail,.studio-pill-detail{opacity:.78;font-weight:850}.studio-pill.tone-idle,.studio-pill.tone-idle{color:var(--muted);background:#f4f8f8;border-color:#d5e1e3}.studio-pill.tone-ok,.studio-pill.tone-ok,.status-completed,.status-enabled,.status-configured,.chapter-export-icon.tone-ok,.version-badge.active{color:var(--ok);background:#eaf8f2;border-color:#b9e4d2}.studio-pill.tone-warn,.studio-pill.tone-warn,.status-running,.status-queued,.chapter-export-icon.tone-warn{color:#6d42bd;background:#f3effd;border-color:#d7c8f4}.studio-pill.tone-bad,.studio-pill.tone-bad,.status-failed,.status-missing_key{color:var(--bad);background:#fff1ef;border-color:#f0c6c2}.studio-pill.has-detail:hover:after,.studio-pill.has-detail:focus-visible:after,.studio-pill.has-detail:hover:after,.studio-pill.has-detail:focus-visible:after{border-color:var(--line-strong);box-shadow:var(--shadow);color:var(--ink);background:#fff}.cast-row.selected,.chapter-card.selected,.segment-card.selected,.version-row.active,.cue-row.selected,.review-panel .review-actions button.active,.segmented-control button.active,.utility-button.active{color:var(--ink);background:#eefbf6;border-color:#0f9f725c}.cue-row{border-color:var(--line);background:#fff}.cue-row:before{opacity:.88}.cue-row.selected{box-shadow:inset 0 0 0 1px #0f9f7224}.warning-text{color:var(--warn)}.mini-player{border-color:var(--line-strong);box-shadow:var(--shadow);background:#fff}.transport-button{color:var(--ink)}.player-progress{background:#e6eff0}.player-progress span,.chapter-card.selected .chapter-export-icon.tone-ok{background:var(--brand-gradient)}.empty-state,.form-error{color:var(--muted)}.form-error,.required-label:after,.row-actions .danger-action{color:var(--bad)}.ghost-link,.parse-status-value .parse-reparse-control,.review-panel .review-actions button.active{color:var(--accent-2)}
@media (max-width:980px){.console-shell,.studio-shell,.studio-shell{grid-template-columns:64px minmax(0,1fr)}.sidebar,.studio-sidebar,.studio-sidebar{padding:14px 8px}.brand div,.studio-brand div,.studio-brand div,.sidebar button,.studio-sidebar button,.studio-sidebar button{font-size:0}.sidebar button:first-letter,.studio-sidebar button:first-letter,.studio-sidebar button:first-letter{font-size:14px}.topbar,.studio-topbar,.studio-topbar,.projects-layout,.parse-layout,.cast-board,.bgm-page,.bgm-upload-grid,.bgm-filter-grid,.voices-page,.voice-filter-grid,.settings-layout,.workbench-layout{grid-template-columns:minmax(0,1fr)}.bgm-main-column,.bgm-side-column{grid-template-columns:minmax(0,1fr);position:static}.voice-asset-detail-panel{max-height:none;position:static;overflow:visible}.voice-inspector-scroll{overflow:visible}.voice-edit-header{grid-template-columns:minmax(0,1fr)}.voice-edit-toolbar,.voice-edit-action-row,.voice-edit-restore-row{grid-area:auto/1;justify-content:flex-start}.bgm-asset-main,.bgm-asset-actions,.bgm-asset-footer{justify-content:flex-start}.bgm-form-grid,.peiyin-deliver-grid,.peiyin-deliver-grid.lower,.peiyin-deliver-form,.peiyin-version-card,.peiyin-version-grid,.peiyin-performance-detail-grid{grid-template-columns:minmax(0,1fr)}.peiyin-version-actions{grid-template-columns:repeat(2,minmax(0,1fr));align-items:start}.peiyin-voice-controls{grid-template-columns:minmax(0,1fr)}.peiyin-history-row{grid-template-columns:minmax(0,1fr) 72px;gap:6px 10px;min-height:0}.peiyin-history-order-cell,.peiyin-history-user-cell,.peiyin-history-time-cell,.peiyin-history-count-cell,.peiyin-history-selected-cell{grid-column:1}.peiyin-history-row .secondary-action{grid-area:1/2/span 3;align-self:center}.peiyin-history-time-cell,.peiyin-history-count-cell,.peiyin-history-selected-cell{white-space:normal}.bgm-library-heading,.bgm-settings-panel .section-heading{align-items:flex-start}.bgm-search,.bgm-library-tools,.bgm-volume-control{width:100%}.bgm-library-tools{justify-content:flex-start}.bgm-volume-control{grid-template-columns:auto minmax(0,1fr) 38px}.bgm-volume-control input{width:100%}.bgm-settings-inline{border-left:0;padding-top:16px;padding-left:0}.bgm-action-row{justify-content:flex-start}.bgm-asset-meta,.bgm-asset-footer{grid-template-columns:minmax(0,1fr)}}

