.app[data-v-4c4b732a]{max-width:1080px;margin:0 auto;padding:clamp(16px,4vw,32px) clamp(14px,4vw,28px) 40px}.topbar[data-v-4c4b732a]{display:flex;align-items:center;justify-content:space-between;gap:12px}.brand[data-v-4c4b732a]{display:flex;align-items:center;gap:12px}.logo[data-v-4c4b732a]{display:grid;place-items:center;width:44px;height:44px;border-radius:13px;font-size:22px;color:#fff;background:linear-gradient(135deg,var(--primary),#c026d3);box-shadow:var(--shadow-sm);flex-shrink:0}.brand-text h1[data-v-4c4b732a]{margin:0;font-size:clamp(18px,4.5vw,22px);letter-spacing:.5px}.brand-sub[data-v-4c4b732a]{font-size:12.5px;color:var(--text-faint)}.topbar-actions[data-v-4c4b732a]{display:flex;gap:8px}.icon-btn[data-v-4c4b732a]{width:40px;height:40px;border-radius:12px;font-size:18px;background:var(--surface);border:1px solid var(--border);box-shadow:var(--shadow-sm);transition:transform .15s,background .15s}.icon-btn[data-v-4c4b732a]:hover{transform:translateY(-1px)}.scenes[data-v-4c4b732a]{display:flex;gap:10px;margin-top:22px;overflow-x:auto;padding-bottom:4px;scrollbar-width:none}.scenes[data-v-4c4b732a]::-webkit-scrollbar{display:none}.scene-chip[data-v-4c4b732a]{display:inline-flex;align-items:center;gap:7px;white-space:nowrap;padding:9px 15px;border-radius:999px;font-size:14px;font-weight:500;color:var(--text-soft);background:var(--surface);border:1px solid var(--border);transition:all .18s}.scene-chip[data-v-4c4b732a]:hover{color:var(--text)}.scene-chip.active[data-v-4c4b732a]{color:#fff;border-color:transparent;background:var(--accent);box-shadow:0 6px 16px -6px var(--accent)}.scene-icon[data-v-4c4b732a]{font-size:16px}.scene-desc[data-v-4c4b732a]{margin:12px 2px 18px;font-size:13.5px;color:var(--text-faint)}.workbench[data-v-4c4b732a]{display:grid;grid-template-columns:1fr 1fr;gap:18px}.card[data-v-4c4b732a]{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);box-shadow:var(--shadow);padding:18px;display:flex;flex-direction:column;min-height:420px}.card-head[data-v-4c4b732a]{display:flex;align-items:center;justify-content:space-between;margin-bottom:12px}.card-head h2[data-v-4c4b732a]{margin:0;font-size:15px}.char[data-v-4c4b732a]{font-size:12px;color:var(--text-faint)}.input[data-v-4c4b732a]{flex:1;width:100%;resize:none;border:1px solid var(--border);border-radius:var(--radius-sm);background:var(--surface-2);color:var(--text);padding:14px;font-size:15px;outline:none;transition:border .15s;min-height:150px}.input[data-v-4c4b732a]:focus{border-color:var(--primary)}.examples[data-v-4c4b732a]{display:flex;flex-wrap:wrap;align-items:center;gap:8px;margin:14px 0}.examples-label[data-v-4c4b732a]{font-size:12.5px;color:var(--text-faint)}.example-chip[data-v-4c4b732a]{font-size:12.5px;color:var(--text-soft);padding:5px 11px;border-radius:999px;background:var(--surface-2);border:1px dashed var(--border);transition:all .15s}.example-chip[data-v-4c4b732a]:hover{color:var(--primary);border-color:var(--primary)}.actions[data-v-4c4b732a]{display:flex;gap:10px}.btn-primary[data-v-4c4b732a]{flex:1;padding:12px;border-radius:var(--radius-sm);font-size:15px;font-weight:600;color:#fff;background:linear-gradient(135deg,var(--primary),var(--primary-strong));box-shadow:0 8px 20px -8px var(--primary);transition:transform .15s,opacity .15s}.btn-primary[data-v-4c4b732a]:hover{transform:translateY(-1px)}.btn-primary[data-v-4c4b732a]:disabled{opacity:.5;transform:none;cursor:not-allowed}.btn-stop[data-v-4c4b732a]{flex:1;padding:12px;border-radius:var(--radius-sm);font-size:15px;font-weight:600;color:#fff;background:#ef4444}.btn-ghost[data-v-4c4b732a]{padding:12px 18px;border-radius:var(--radius-sm);font-size:14px;color:var(--text-soft);background:var(--surface-2);border:1px solid var(--border)}.hint[data-v-4c4b732a]{margin:10px 2px 0;font-size:12px;color:var(--text-faint)}.out-actions[data-v-4c4b732a]{display:flex;gap:8px}.mini-btn[data-v-4c4b732a]{font-size:12.5px;padding:6px 11px;border-radius:9px;color:var(--text-soft);background:var(--surface-2);border:1px solid var(--border);transition:all .15s}.mini-btn[data-v-4c4b732a]:hover{color:var(--primary);border-color:var(--primary)}.mini-btn[data-v-4c4b732a]:disabled{opacity:.5;cursor:not-allowed}.output-wrap[data-v-4c4b732a]{flex:1;border:1px solid var(--border);border-radius:var(--radius-sm);background:var(--surface-2);padding:16px;overflow-y:auto;min-height:150px}.output[data-v-4c4b732a]{white-space:pre-wrap;word-break:break-word;font-size:14.5px;color:var(--text)}.caret[data-v-4c4b732a]{display:inline-block;width:7px;height:16px;margin-left:1px;vertical-align:text-bottom;background:var(--primary);animation:blink-4c4b732a 1s steps(2) infinite}@keyframes blink-4c4b732a{50%{opacity:0}}.error[data-v-4c4b732a]{color:#ef4444;font-size:14px;margin-bottom:10px}.placeholder[data-v-4c4b732a]{color:var(--text-faint);font-size:14px;display:flex;align-items:center;gap:8px}.placeholder.empty[data-v-4c4b732a]{flex-direction:column;justify-content:center;height:100%;text-align:center}.empty-icon[data-v-4c4b732a]{font-size:40px;opacity:.5;margin-bottom:6px}.spinner[data-v-4c4b732a]{width:14px;height:14px;border:2px solid var(--border);border-top-color:var(--primary);border-radius:50%;animation:spin-4c4b732a .7s linear infinite}@keyframes spin-4c4b732a{to{transform:rotate(360deg)}}.foot[data-v-4c4b732a]{text-align:center;margin-top:26px;font-size:12.5px;color:var(--text-faint)}.modal-mask[data-v-4c4b732a]{position:fixed;top:0;right:0;bottom:0;left:0;background:#0f0c2373;-webkit-backdrop-filter:blur(3px);backdrop-filter:blur(3px);display:grid;place-items:center;padding:16px;z-index:50}.modal[data-v-4c4b732a]{width:100%;max-width:440px;background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);box-shadow:var(--shadow);padding:22px}.modal-head[data-v-4c4b732a]{display:flex;align-items:center;justify-content:space-between;margin-bottom:16px}.modal-head h3[data-v-4c4b732a]{margin:0;font-size:17px}.field[data-v-4c4b732a]{display:flex;flex-direction:column;gap:6px;margin-bottom:16px;font-size:13.5px;color:var(--text-soft)}.field input[type=text][data-v-4c4b732a],.field input[type=password][data-v-4c4b732a],.field select[data-v-4c4b732a]{padding:10px 12px;border-radius:10px;border:1px solid var(--border);background:var(--surface-2);color:var(--text);font-size:14px;outline:none}.field input[data-v-4c4b732a]:focus,.field select[data-v-4c4b732a]:focus{border-color:var(--primary)}.field small[data-v-4c4b732a]{color:var(--text-faint);font-size:12px}.modal-actions[data-v-4c4b732a]{display:flex;justify-content:flex-end;gap:10px;margin-top:4px}.modal-actions .btn-primary[data-v-4c4b732a]{flex:none;padding:10px 22px}@media(max-width:720px){.workbench[data-v-4c4b732a]{grid-template-columns:1fr}.card[data-v-4c4b732a]{min-height:auto}.output-wrap[data-v-4c4b732a]{min-height:200px}.brand-sub[data-v-4c4b732a]{display:none}}:root{--bg: #f4f5fb;--bg-grad: radial-gradient(1200px 600px at 100% -10%, #ede9fe 0%, transparent 55%), radial-gradient(900px 500px at -10% 10%, #fae8ff 0%, transparent 50%);--surface: #ffffff;--surface-2: #f7f8fc;--border: #e7e8f0;--text: #1b1c2b;--text-soft: #5b5d72;--text-faint: #9498ad;--primary: #7c5cfc;--primary-strong: #6d28d9;--shadow: 0 10px 30px -12px rgba(34, 24, 80, .18);--shadow-sm: 0 2px 8px -3px rgba(34, 24, 80, .15);--radius: 18px;--radius-sm: 12px}[data-theme=dark]{--bg: #0e0f1a;--bg-grad: radial-gradient(1200px 600px at 100% -10%, #2a1a55 0%, transparent 55%), radial-gradient(900px 500px at -10% 10%, #3a1140 0%, transparent 50%);--surface: #181a2a;--surface-2: #1f2236;--border: #2a2d44;--text: #ecedf6;--text-soft: #a9adc6;--text-faint: #6f7390;--primary: #a78bfa;--primary-strong: #8b5cf6;--shadow: 0 14px 40px -16px rgba(0, 0, 0, .6);--shadow-sm: 0 2px 10px -4px rgba(0, 0, 0, .5)}*{box-sizing:border-box}html,body{margin:0;padding:0}body{font-family:-apple-system,BlinkMacSystemFont,Segoe UI,PingFang SC,Microsoft YaHei,Roboto,Helvetica,Arial,sans-serif;color:var(--text);background-color:var(--bg);background-image:var(--bg-grad);background-attachment:fixed;-webkit-font-smoothing:antialiased;line-height:1.6}button{font-family:inherit;cursor:pointer;border:none;background:none;color:inherit}textarea{font-family:inherit}::selection{background:#7c5cfc40}*::-webkit-scrollbar{width:8px;height:8px}*::-webkit-scrollbar-thumb{background:var(--border);border-radius:8px}
