@import"https://fonts.googleapis.com/css2?family=Sora:wght@300;400;500;600;700&family=ZCOOL+KuaiLe&display=swap";.director-shell[data-v-b9762fbc]{position:relative;z-index:1;display:grid;grid-template-columns:minmax(0,1fr) minmax(300px,.75fr);gap:24px}.director-setup-card[data-v-b9762fbc],.director-history-card[data-v-b9762fbc],.director-restore-card[data-v-b9762fbc],.scene-toolbar[data-v-b9762fbc],.scene-state-card[data-v-b9762fbc],.scene-timeline[data-v-b9762fbc],.director-composer[data-v-b9762fbc]{border:1px solid var(--border);border-radius:22px;background:var(--panel);box-shadow:var(--shadow)}.director-setup-card[data-v-b9762fbc]{padding:22px}.director-history-card[data-v-b9762fbc],.director-restore-card[data-v-b9762fbc]{grid-column:1 / -1;padding:22px}.director-restore-card[data-v-b9762fbc]{min-height:180px;text-align:center}.director-restore-card h2[data-v-b9762fbc]{margin:22px 0 8px}.director-restore-card>p[data-v-b9762fbc]:last-child{color:var(--muted)}.section-heading[data-v-b9762fbc],.scene-toolbar[data-v-b9762fbc]{display:flex;justify-content:space-between;align-items:flex-start;gap:18px}.section-heading[data-v-b9762fbc]{margin-bottom:16px}.section-heading h2[data-v-b9762fbc],.scene-toolbar h2[data-v-b9762fbc]{margin:0}.section-heading>span[data-v-b9762fbc]{color:var(--muted);font-size:12px}.section-kicker[data-v-b9762fbc]{margin:0 0 5px;color:var(--accent);font-size:11px;letter-spacing:.16em;text-transform:uppercase}.template-grid[data-v-b9762fbc],.director-character-list[data-v-b9762fbc]{display:grid;gap:9px}.template-grid[data-v-b9762fbc]{grid-template-columns:repeat(2,minmax(0,1fr))}.scene-source-tabs[data-v-b9762fbc]{display:flex;gap:8px;margin-bottom:14px}.scene-source-tabs button[data-v-b9762fbc]{padding:8px 13px;border:1px solid var(--border);border-radius:999px;background:#fff;color:var(--muted)}.scene-source-tabs button.active[data-v-b9762fbc]{border-color:var(--accent);background:rgba(26,111,107,.1);color:var(--accent-strong)}.template-option[data-v-b9762fbc],.director-character[data-v-b9762fbc]{border:1px solid var(--border);border-radius:14px;background:#fff;color:var(--text);cursor:pointer;text-align:left}.template-option[data-v-b9762fbc]{display:grid;gap:5px;padding:13px}.template-option span[data-v-b9762fbc]{color:var(--muted);font-size:12px;line-height:1.55}.template-option.active[data-v-b9762fbc],.director-character.active[data-v-b9762fbc]{border-color:var(--accent);background:rgba(26,111,107,.1)}.initial-state[data-v-b9762fbc],.cast-line[data-v-b9762fbc]{display:flex;flex-wrap:wrap;gap:7px;margin-top:14px}.initial-state span[data-v-b9762fbc],.cast-line span[data-v-b9762fbc]{padding:4px 9px;border-radius:999px;background:var(--panel-strong);color:var(--accent-strong);font-size:11px}.custom-scene-form[data-v-b9762fbc]{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.custom-scene-form label[data-v-b9762fbc],.story-outline-field[data-v-b9762fbc]{display:grid;gap:5px;color:var(--muted);font-size:12px}.custom-scene-form .wide-field[data-v-b9762fbc]{grid-column:1 / -1}.custom-scene-form input[data-v-b9762fbc],.custom-scene-form textarea[data-v-b9762fbc],.story-outline-field textarea[data-v-b9762fbc]{box-sizing:border-box;width:100%;padding:10px 11px;border:1px solid var(--border);border-radius:11px;background:#fff;color:var(--text);font:inherit;resize:vertical}.story-outline-field[data-v-b9762fbc]{margin-top:16px;padding-top:14px;border-top:1px solid var(--border)}.story-outline-field>span[data-v-b9762fbc]{color:var(--text);font-weight:600}.story-outline-field small[data-v-b9762fbc],.cast-help[data-v-b9762fbc]{color:var(--muted);font-size:11px;line-height:1.5}.cast-help[data-v-b9762fbc]{margin:5px 0 0}.history-heading[data-v-b9762fbc]{align-items:center}.history-refresh-button[data-v-b9762fbc]{padding:8px 13px;border:1px solid var(--border);border-radius:999px;background:#fff;color:var(--accent-strong)}.history-grid[data-v-b9762fbc]{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.history-item[data-v-b9762fbc]{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:14px;padding:14px;border:1px solid var(--border);border-radius:14px;background:#fff}.history-title-line[data-v-b9762fbc],.history-meta[data-v-b9762fbc]{display:flex;flex-wrap:wrap;align-items:center;gap:7px}.history-title-line[data-v-b9762fbc]{justify-content:space-between}.history-title-line>span[data-v-b9762fbc],.history-meta span[data-v-b9762fbc]{color:var(--muted);font-size:11px}.history-item-main>p[data-v-b9762fbc]{margin:6px 0;color:var(--accent-strong);font-size:12px}.history-item-main .history-preview[data-v-b9762fbc]{overflow:hidden;margin-top:8px;color:var(--muted);text-overflow:ellipsis;white-space:nowrap}.history-actions[data-v-b9762fbc]{display:flex;flex-direction:column;justify-content:center;gap:7px}.history-actions button[data-v-b9762fbc]{padding:7px 10px;border-radius:10px;background:#fff;font-size:11px}.history-resume[data-v-b9762fbc]{border:1px solid var(--accent);color:var(--accent-strong)}.history-delete[data-v-b9762fbc]{border:1px solid var(--border);color:#a14b43}.history-empty[data-v-b9762fbc]{padding:28px;color:var(--muted);text-align:center}.director-search[data-v-b9762fbc]{width:100%;box-sizing:border-box;margin-bottom:10px;padding:10px 12px;border:1px solid var(--border);border-radius:12px}.director-character-list[data-v-b9762fbc]{max-height:330px;overflow:auto}.director-character[data-v-b9762fbc]{display:flex;justify-content:space-between;padding:10px 12px}.director-character span[data-v-b9762fbc]:last-child{color:var(--muted);font-size:11px}.create-scene-button[data-v-b9762fbc],.director-send[data-v-b9762fbc]{border:0;background:var(--accent-warm);color:#fff;font-weight:600}.create-scene-button[data-v-b9762fbc]{width:100%;margin-top:14px;padding:12px;border-radius:13px}button[data-v-b9762fbc]:disabled{cursor:not-allowed;opacity:.55}.scene-toolbar[data-v-b9762fbc]{grid-column:1 / -1;padding:18px 22px}.reset-scene-button[data-v-b9762fbc]{padding:7px 12px;border:1px solid var(--border);border-radius:999px;background:#fff;color:#a14b43}.scene-state-card[data-v-b9762fbc]{display:flex;flex-wrap:wrap;grid-column:1 / -1;gap:10px;padding:13px 18px}.scene-state-item[data-v-b9762fbc]{display:flex;gap:6px;padding:6px 10px;border-radius:10px;background:var(--panel-strong);font-size:12px}.scene-state-item small[data-v-b9762fbc]{color:var(--muted)}.scene-timeline[data-v-b9762fbc]{min-height:460px;max-height:66vh;overflow:auto;padding:20px}.scene-message[data-v-b9762fbc]{margin-bottom:12px;padding:12px 14px;border:1px solid rgba(26,111,107,.18);border-radius:14px;background:rgba(26,111,107,.07)}.scene-message.dialogue[data-v-b9762fbc],.scene-message.action[data-v-b9762fbc]{border-color:var(--border);background:#fff}.scene-message.narration[data-v-b9762fbc],.scene-message.scene_event[data-v-b9762fbc],.scene-message.scene_change[data-v-b9762fbc]{border-color:#546d8c40;background:rgba(84,109,140,.08)}.scene-message header[data-v-b9762fbc]{display:flex;justify-content:space-between;margin-bottom:6px;color:var(--accent-strong);font-size:12px}.scene-message header span[data-v-b9762fbc]{color:var(--muted)}.scene-message p[data-v-b9762fbc],.scene-action[data-v-b9762fbc]{margin:0;font-size:14px;line-height:1.65}.scene-action[data-v-b9762fbc]{margin-bottom:5px;color:var(--muted);font-style:italic}.director-message-audio[data-v-b9762fbc]{display:flex;align-items:center;gap:9px;margin-top:10px;color:var(--muted);font-size:12px}.director-message-audio button[data-v-b9762fbc]{padding:7px 11px;border:1px solid rgba(26,111,107,.3);border-radius:999px;background:#fff;color:var(--accent-strong)}.regenerate-reply-button[data-v-b9762fbc]{margin-top:10px;padding:7px 12px;border:1px solid var(--border);border-radius:999px;background:#fff;color:var(--accent-strong);cursor:pointer;font:inherit;font-size:12px}.regenerate-reply-button[data-v-b9762fbc]:disabled{cursor:wait;opacity:.6}.director-working[data-v-b9762fbc],.director-empty[data-v-b9762fbc]{padding:30px;color:var(--muted);text-align:center}.director-composer[data-v-b9762fbc]{align-self:start;padding:18px}.director-mode-tabs[data-v-b9762fbc]{display:flex;flex-wrap:wrap;gap:7px;margin-bottom:11px}.director-mode-tabs button[data-v-b9762fbc],.director-input-row button[data-v-b9762fbc]{padding:7px 11px;border:1px solid var(--border);border-radius:11px;background:#fff;color:var(--muted)}.director-mode-tabs button.active[data-v-b9762fbc]{border-color:var(--accent);background:rgba(26,111,107,.12);color:var(--accent-strong)}.director-queue[data-v-b9762fbc]{display:grid;gap:6px;margin-bottom:10px;padding:10px;border-radius:12px;background:rgba(26,111,107,.06)}.director-queue>div[data-v-b9762fbc]{display:grid;grid-template-columns:auto 1fr auto;align-items:center;gap:7px}.director-queue span[data-v-b9762fbc]{color:var(--accent-strong);font-size:11px}.director-queue p[data-v-b9762fbc]{overflow:hidden;margin:0;font-size:12px;text-overflow:ellipsis;white-space:nowrap}.director-queue button[data-v-b9762fbc]{border:0;background:transparent;color:var(--muted)}.director-queue .clear-queue[data-v-b9762fbc]{justify-self:end;color:var(--accent-strong);font-size:11px}.director-input-row[data-v-b9762fbc]{display:grid;grid-template-columns:1fr auto;gap:9px}.director-input-row textarea[data-v-b9762fbc]{box-sizing:border-box;width:100%;padding:11px;border:1px solid var(--border);border-radius:12px;font:inherit;resize:vertical}.director-input-row>div[data-v-b9762fbc]{display:flex;flex-direction:column;gap:7px}.director-input-row button[data-v-b9762fbc]{flex:1;min-width:66px}.director-input-row .director-send[data-v-b9762fbc]{border-color:transparent;color:#fff}.director-hint[data-v-b9762fbc],.director-error[data-v-b9762fbc]{margin:9px 0 0;font-size:11px;line-height:1.5}.director-hint[data-v-b9762fbc]{color:var(--muted)}.director-error[data-v-b9762fbc]{color:#c0483d}@media (max-width: 900px){.director-shell[data-v-b9762fbc],.custom-scene-form[data-v-b9762fbc],.template-grid[data-v-b9762fbc],.history-grid[data-v-b9762fbc]{grid-template-columns:1fr}.custom-scene-form .wide-field[data-v-b9762fbc]{grid-column:auto}.scene-toolbar[data-v-b9762fbc],.scene-state-card[data-v-b9762fbc]{grid-column:1}}:root{--bg: #f3ece2;--bg-strong: #e8d8c7;--panel: #fffaf2;--panel-strong: #f7efe4;--accent: #1a6f6b;--accent-strong: #165e5a;--accent-warm: #d1783b;--text: #182526;--muted: #6a6f6a;--border: #e2d2c2;--shadow: 0 18px 50px rgba(33, 41, 38, .12)}.app-shell[data-v-c85c0e28]{min-height:100vh;padding:32px clamp(16px,4vw,48px) 48px;font-family:Sora,Noto Sans SC,sans-serif;color:var(--text);background:radial-gradient(circle at top right,rgba(209,120,59,.18),transparent 40%),radial-gradient(circle at 10% 20%,rgba(26,111,107,.18),transparent 45%),linear-gradient(135deg,var(--bg),var(--bg-strong));position:relative}.app-glow[data-v-c85c0e28]{position:fixed;top:0;right:0;bottom:0;left:0;background-image:radial-gradient(rgba(255,255,255,.8) 1px,transparent 1px);background-size:28px 28px;opacity:.35;pointer-events:none}.topbar[data-v-c85c0e28]{position:relative;z-index:1;display:flex;justify-content:space-between;align-items:flex-start;gap:24px;padding:24px 32px;border-radius:24px;background:var(--panel);box-shadow:var(--shadow);margin-bottom:28px}.eyebrow[data-v-c85c0e28]{text-transform:uppercase;letter-spacing:.22em;font-size:12px;color:var(--accent);margin-bottom:8px}h1[data-v-c85c0e28]{font-family:ZCOOL KuaiLe,sans-serif;font-size:clamp(32px,3.6vw,46px);margin:0 0 6px;letter-spacing:.02em}.subtitle[data-v-c85c0e28]{margin:0;color:var(--muted);font-size:14px}.status-panel[data-v-c85c0e28]{display:flex;flex-wrap:wrap;gap:10px}.app-mode-switch[data-v-c85c0e28]{display:flex;padding:3px;border:1px solid var(--border);border-radius:999px;background:var(--panel-strong)}.app-mode-switch button[data-v-c85c0e28]{border:0;border-radius:999px;background:transparent;color:var(--muted);cursor:pointer;padding:5px 10px;font:inherit;font-size:11px}.app-mode-switch button.active[data-v-c85c0e28]{background:#fff;color:var(--accent-strong);box-shadow:0 2px 8px #21292614}.status-pill[data-v-c85c0e28]{padding:8px 14px;border-radius:999px;background:var(--panel-strong);border:1px solid var(--border);font-size:12px;color:var(--accent-strong)}.status-button[data-v-c85c0e28]{-webkit-appearance:none;-moz-appearance:none;appearance:none;font:inherit;font-size:12px;cursor:pointer;transition:background .18s ease,border-color .18s ease,box-shadow .18s ease,transform .18s ease}.status-button[data-v-c85c0e28]:hover{border-color:var(--accent);transform:translateY(-1px)}.status-button[data-v-c85c0e28]:focus-visible{outline:2px solid var(--accent);outline-offset:2px}.status-button.active[data-v-c85c0e28]{background:rgba(37,119,113,.12);border-color:var(--accent);box-shadow:0 2px 8px #2577711f}.layout[data-v-c85c0e28]{position:relative;z-index:1;display:grid;grid-template-columns:minmax(260px,320px) 1fr;gap:24px}.sidebar[data-v-c85c0e28]{display:flex;flex-direction:column;gap:20px}.card[data-v-c85c0e28]{background:var(--panel);border-radius:20px;padding:18px;border:1px solid var(--border);box-shadow:var(--shadow)}.card-header[data-v-c85c0e28]{display:flex;justify-content:space-between;align-items:center;margin-bottom:12px}.card-header h2[data-v-c85c0e28]{font-size:18px;margin:0}.meta[data-v-c85c0e28]{font-size:12px;color:var(--muted)}.search-input[data-v-c85c0e28]{width:100%;padding:10px 12px;border-radius:12px;border:1px solid var(--border);background:#fff;margin-bottom:12px}.character-list[data-v-c85c0e28]{display:flex;flex-direction:column;gap:8px;max-height:320px;overflow:auto}.character-item[data-v-c85c0e28]{display:flex;justify-content:space-between;align-items:center;padding:10px 12px;border-radius:12px;border:1px solid transparent;background:#fff;cursor:pointer;transition:all .2s ease}.character-item[data-v-c85c0e28]:hover{border-color:var(--accent-warm);transform:translate(2px)}.character-item.active[data-v-c85c0e28]{background:rgba(26,111,107,.12);border-color:var(--accent)}.character-tag[data-v-c85c0e28]{font-size:11px;color:var(--accent-strong);background:rgba(26,111,107,.12);padding:2px 8px;border-radius:999px}.audio-preview audio[data-v-c85c0e28]{width:100%;margin-top:6px}.hint[data-v-c85c0e28]{font-size:13px;color:var(--muted);margin:6px 0 0}.hint.muted[data-v-c85c0e28]{color:#9aa09c}.link-button[data-v-c85c0e28]{border:none;background:none;color:var(--accent);cursor:pointer;font-size:12px}.inline-link[data-v-c85c0e28]{border:none;background:transparent;color:var(--accent-strong);cursor:pointer;font-size:12px;font-weight:600;padding:0 0 0 6px}.prompt-preview[data-v-c85c0e28]{max-height:240px;overflow:auto;background:#fff;border-radius:12px;padding:12px;border:1px solid var(--border)}.prompt-preview pre[data-v-c85c0e28]{margin:0;font-size:12px;white-space:pre-wrap;line-height:1.5}.chat-panel[data-v-c85c0e28]{display:grid;grid-template-rows:auto 1fr auto;gap:16px}.chat-header[data-v-c85c0e28]{display:flex;justify-content:space-between;align-items:center;padding:18px 22px;background:var(--panel);border-radius:20px;border:1px solid var(--border);box-shadow:var(--shadow)}.chat-header h2[data-v-c85c0e28]{margin:0 0 4px}.toggle-group[data-v-c85c0e28]{display:flex;flex-wrap:wrap;justify-content:flex-end;gap:12px}.toggle[data-v-c85c0e28]{display:flex;align-items:center;gap:6px;font-size:12px;color:var(--muted)}.tool-button[data-v-c85c0e28]{border:1px solid var(--border);background:#fff;color:var(--text);border-radius:999px;padding:6px 12px;font-size:12px;cursor:pointer}.tool-button[data-v-c85c0e28]:hover{border-color:var(--accent);color:var(--accent-strong)}.tool-button.danger[data-v-c85c0e28]{border-color:#c0483d59;color:#b1443b}.tool-button[data-v-c85c0e28]:disabled{cursor:not-allowed;opacity:.6}.file-input[data-v-c85c0e28]{display:none}.chat-window[data-v-c85c0e28]{background:rgba(255,255,255,.7);border-radius:22px;padding:24px;border:1px solid var(--border);box-shadow:var(--shadow);min-height:420px;overflow-y:auto}.empty-state[data-v-c85c0e28]{text-align:center;color:var(--muted);margin-top:120px}.message[data-v-c85c0e28]{padding:14px 16px;border-radius:16px;margin-bottom:16px;border:1px solid transparent}.message.user[data-v-c85c0e28]{background:#fff;border-color:var(--border)}.message.user.action[data-v-c85c0e28]{border-left:4px solid var(--accent-warm)}.message.user.scene_event[data-v-c85c0e28]{background:rgba(64,91,127,.08);border-color:#405b7f3d;border-left:4px solid #546d8c}.message.assistant[data-v-c85c0e28]{background:rgba(26,111,107,.08);border-color:#1a6f6b33}.message-meta[data-v-c85c0e28]{display:flex;justify-content:space-between;font-size:12px;color:var(--muted);margin-bottom:6px}.event-label[data-v-c85c0e28]{color:var(--accent-strong);font-weight:600}.message-body[data-v-c85c0e28]{font-size:14px;line-height:1.6}.stream-raw[data-v-c85c0e28]{margin:0;white-space:pre-wrap;word-break:break-word;font:inherit;line-height:1.7}.line[data-v-c85c0e28]{display:flex;align-items:flex-start;gap:10px;margin-bottom:8px}.line[data-v-c85c0e28]:last-child{margin-bottom:0}.line-tag[data-v-c85c0e28]{display:inline-flex;align-items:center;padding:2px 8px;border-radius:999px;font-size:11px;font-weight:600;letter-spacing:.08em}.action-tag[data-v-c85c0e28]{background:rgba(106,111,106,.15);color:var(--muted)}.dialogue-tag[data-v-c85c0e28]{background:rgba(26,111,107,.18);color:var(--accent-strong)}.line-text[data-v-c85c0e28]{margin:0;line-height:1.6;flex:1}.message-audio[data-v-c85c0e28]{display:flex;align-items:center;gap:10px;margin-top:10px}.audio-button[data-v-c85c0e28]{background:var(--accent);color:#fff;border:none;padding:6px 12px;border-radius:999px;cursor:pointer;font-size:12px}.audio-button[data-v-c85c0e28]:disabled{background:#9bbab8;cursor:not-allowed}.audio-status[data-v-c85c0e28]{font-size:12px;color:var(--muted)}.chat-input[data-v-c85c0e28]{background:var(--panel);border-radius:20px;padding:18px;border:1px solid var(--border);box-shadow:var(--shadow)}.input-mode-selector[data-v-c85c0e28]{display:flex;flex-wrap:wrap;gap:8px;margin-bottom:12px}.input-mode-button[data-v-c85c0e28]{border:1px solid var(--border);border-radius:999px;background:#fff;color:var(--muted);padding:7px 13px;font:inherit;font-size:12px;cursor:pointer;transition:.15s ease}.input-mode-button[data-v-c85c0e28]:hover:not(:disabled){border-color:var(--accent);color:var(--accent-strong)}.input-mode-button.active[data-v-c85c0e28]{border-color:var(--accent);background:rgba(26,111,107,.12);color:var(--accent-strong);font-weight:600}.input-mode-button[data-v-c85c0e28]:disabled{cursor:not-allowed;opacity:.55}.queued-events[data-v-c85c0e28]{margin-bottom:12px;padding:12px;border:1px dashed rgba(26,111,107,.38);border-radius:14px;background:rgba(26,111,107,.05)}.queued-events-header[data-v-c85c0e28]{display:flex;justify-content:space-between;align-items:center;gap:12px;margin-bottom:8px;color:var(--accent-strong);font-size:12px;font-weight:600}.queued-event-list[data-v-c85c0e28]{display:grid;gap:7px}.queued-event[data-v-c85c0e28]{display:grid;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:9px;padding:8px 10px;border-radius:10px;background:rgba(255,255,255,.78)}.queued-event-type[data-v-c85c0e28]{padding:2px 7px;border-radius:999px;background:rgba(26,111,107,.13);color:var(--accent-strong);font-size:11px;font-weight:600}.queued-event-content[data-v-c85c0e28]{overflow:hidden;color:var(--text);font-size:12px;text-overflow:ellipsis;white-space:nowrap}.queued-event-remove[data-v-c85c0e28]{border:0;background:transparent;color:var(--muted);cursor:pointer;font-size:18px;line-height:1}.input-box[data-v-c85c0e28]{display:flex;gap:12px}.input-actions[data-v-c85c0e28]{display:flex;flex-direction:column;gap:8px}textarea[data-v-c85c0e28]{flex:1;border-radius:14px;border:1px solid var(--border);padding:12px;font-family:inherit;resize:none}.send-button[data-v-c85c0e28]{background:var(--accent-warm);border:none;color:#fff;padding:0 18px;border-radius:14px;cursor:pointer;font-weight:600;flex:1}.send-button[data-v-c85c0e28]:disabled{background:#d6b59f;cursor:not-allowed}.queue-button[data-v-c85c0e28]{flex:1;min-width:72px;border:1px solid rgba(26,111,107,.38);border-radius:14px;background:rgba(26,111,107,.08);color:var(--accent-strong);cursor:pointer;font-weight:600}.queue-button[data-v-c85c0e28]:disabled{cursor:not-allowed;opacity:.55}.meta-row[data-v-c85c0e28]{margin-top:8px;font-size:12px}.error[data-v-c85c0e28]{color:#c0483d}.success[data-v-c85c0e28]{color:var(--accent-strong)}@media (max-width: 980px){.layout[data-v-c85c0e28]{grid-template-columns:1fr}.topbar[data-v-c85c0e28],.toggle-group[data-v-c85c0e28]{flex-direction:column;align-items:flex-start}.input-box[data-v-c85c0e28]{flex-direction:column}.input-actions[data-v-c85c0e28]{flex-direction:row}.send-button[data-v-c85c0e28],.queue-button[data-v-c85c0e28]{height:44px}}
