.gen-progress[data-v-e12a0bf0]{width:100%;height:6px;border-radius:999px;background:var(--border-subtle, rgba(255, 255, 255, .08));overflow:hidden;position:relative}.gen-progress-fill[data-v-e12a0bf0]{height:100%;border-radius:999px;background:linear-gradient(90deg,var(--accent, #6366f1),var(--accent-hover, #818cf8));transition:width .35s ease}.gen-progress-indeterminate[data-v-e12a0bf0]{position:absolute;top:0;right:0;bottom:0;left:0;background:linear-gradient(90deg,transparent 0%,var(--accent, #6366f1) 45%,var(--accent-hover, #818cf8) 55%,transparent 100%);background-size:200% 100%;animation:gen-progress-scan-e12a0bf0 1.2s ease-in-out infinite}@keyframes gen-progress-scan-e12a0bf0{0%{transform:translate(-60%)}to{transform:translate(160%)}}.task-recovery[data-v-84450f43]{display:flex;flex-direction:column;align-items:flex-start;gap:7px;min-width:0}.task-recovery__panel[data-v-84450f43]{width:100%;padding:9px 10px;border:1px solid color-mix(in srgb,var(--warning, #f59e0b) 28%,var(--border-color));border-radius:var(--radius-sm, 8px);background:color-mix(in srgb,var(--warning, #f59e0b) 7%,var(--bg-card, #fff))}.task-recovery__options[data-v-84450f43],.task-recovery__button[data-v-84450f43]{display:inline-flex;align-items:center;justify-content:center;gap:6px;min-height:30px;border-radius:var(--radius-sm, 8px);font-size:12px;font-weight:650;line-height:1.3;cursor:pointer}.task-recovery__options[data-v-84450f43]{padding:5px 9px;color:var(--text-secondary);border:1px solid var(--border-color);background:var(--bg-card, #fff)}.task-recovery__options[data-v-84450f43]:hover:not(:disabled){color:var(--text-primary);border-color:var(--border-focus);background:var(--bg-hover)}.task-recovery__actions[data-v-84450f43]{display:flex;flex-wrap:wrap;gap:7px;margin-top:8px}.task-recovery__button[data-v-84450f43]{padding:6px 10px;border:1px solid transparent}.task-recovery__button--primary[data-v-84450f43]{color:#fff;background:var(--accent)}.task-recovery__button--primary[data-v-84450f43]:hover:not(:disabled){background:var(--accent-hover)}.task-recovery__button--warning[data-v-84450f43]{color:var(--warning-text);border-color:color-mix(in srgb,var(--warning, #f59e0b) 42%,var(--border-color));background:var(--bg-card, #fff)}.task-recovery__button--warning[data-v-84450f43]:hover:not(:disabled){background:color-mix(in srgb,var(--warning, #f59e0b) 12%,var(--bg-card, #fff))}.task-recovery__options[data-v-84450f43]:focus-visible,.task-recovery__button[data-v-84450f43]:focus-visible{outline:2px solid var(--border-focus);outline-offset:2px}.task-recovery__options[data-v-84450f43]:disabled,.task-recovery__button[data-v-84450f43]:disabled{cursor:not-allowed;opacity:.58}.task-recovery__reason[data-v-84450f43],.task-recovery__status[data-v-84450f43],.task-recovery__error[data-v-84450f43]{margin:0;font-size:12px;line-height:1.5;overflow-wrap:anywhere}.task-recovery__reason[data-v-84450f43],.task-recovery__status[data-v-84450f43]{color:var(--text-secondary)}.task-recovery__error[data-v-84450f43]{margin-top:7px;color:var(--danger, #ef4444)}.task-recovery__spinner[data-v-84450f43]{width:12px;height:12px;flex:0 0 auto;border:2px solid currentColor;border-right-color:transparent;border-radius:50%;animation:task-recovery-spin-84450f43 .75s linear infinite}.task-recovery--compact .task-recovery__panel[data-v-84450f43]{padding:8px 9px}@keyframes task-recovery-spin-84450f43{to{transform:rotate(360deg)}}@media(prefers-reduced-motion:reduce){.task-recovery__spinner[data-v-84450f43]{animation-duration:1.5s}}.bg-task-widget[data-v-a6a78068]{position:fixed;bottom:24px;z-index:var(--z-background-task-widget);width:min(360px,calc(100vw - 48px));color:var(--text-primary);pointer-events:none;-webkit-user-select:none;user-select:none;cursor:grab;transition:none}.bg-task-widget.is-dragging[data-v-a6a78068]{cursor:grabbing}body.storyboard-ai-chat-open .bg-task-widget{z-index:var(--z-background-task-widget-under-assistant)}.task-pill[data-v-a6a78068],.task-panel[data-v-a6a78068]{pointer-events:auto;width:100%;border:1px solid rgba(203,213,225,.88);background:linear-gradient(135deg,#fffffffa,#f8fafcf5),var(--bg-elevated);box-shadow:0 18px 42px #0f172a29;backdrop-filter:blur(18px);-webkit-backdrop-filter:blur(18px)}.task-pill[data-v-a6a78068]{display:grid;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:12px;min-height:64px;padding:12px 14px;border-radius:8px;text-align:left;transition:transform .18s ease,box-shadow .18s ease,border-color .18s ease}.task-pill[data-v-a6a78068]:hover{transform:translateY(-1px);border-color:#7c3aed47;box-shadow:0 22px 48px #0f172a2e}.task-pill-copy[data-v-a6a78068]{display:flex;flex-direction:column;gap:2px;min-width:0}.task-pill-copy strong[data-v-a6a78068]{font-size:14px;line-height:1.35;letter-spacing:0;color:var(--text-primary)}.task-pill-copy span[data-v-a6a78068]{overflow-wrap:anywhere;font-size:12px;line-height:1.45;letter-spacing:0;color:var(--text-secondary)}.task-pill-icon[data-v-a6a78068],.task-icon-btn svg[data-v-a6a78068]{width:20px;height:20px;fill:currentColor}.task-pill-icon[data-v-a6a78068]{color:var(--text-muted)}.task-panel[data-v-a6a78068]{display:flex;flex-direction:column;border-radius:8px;padding:16px}.task-panel-header[data-v-a6a78068]{display:grid;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:12px;flex-shrink:0}.task-status-mark[data-v-a6a78068]{position:relative;display:inline-flex;align-items:center;justify-content:center;width:38px;height:38px;border-radius:8px;background:linear-gradient(135deg,#14b8a624,#f59e0b24);box-shadow:inset 0 0 0 1px #14b8a629;flex-shrink:0}.task-status-mark.compact[data-v-a6a78068]{width:34px;height:34px}.task-status-dot[data-v-a6a78068]{width:10px;height:10px;border-radius:999px;background:#14b8a6;box-shadow:0 0 0 6px #14b8a624,0 0 18px #14b8a685;animation:task-pulse-a6a78068 1.4s ease-in-out infinite}.task-heading[data-v-a6a78068]{min-width:0}.task-kicker[data-v-a6a78068],.task-title[data-v-a6a78068],.task-warning[data-v-a6a78068],.task-detail[data-v-a6a78068]{margin:0}.task-kicker[data-v-a6a78068]{font-size:12px;line-height:1.35;letter-spacing:0;color:var(--warning-text);font-weight:700}.task-title[data-v-a6a78068]{margin-top:2px;font-size:16px;line-height:1.35;letter-spacing:0;color:var(--text-primary)}.task-icon-btn[data-v-a6a78068]{display:inline-flex;align-items:center;justify-content:center;width:32px;height:32px;border-radius:8px;background:transparent;color:var(--text-secondary);transition:background .16s ease,color .16s ease}.task-icon-btn[data-v-a6a78068]:hover{background:var(--bg-hover);color:var(--text-primary)}.task-warning[data-v-a6a78068]{margin-top:12px;padding:10px 12px;border-radius:8px;background:#f59e0b1a;color:#92400e;font-size:13px;line-height:1.55;letter-spacing:0}.task-list[data-v-a6a78068]{display:flex;flex-direction:column;gap:12px;margin-top:14px;min-height:0;overflow-y:auto;overscroll-behavior:contain}.task-row[data-v-a6a78068]{display:flex;flex-direction:column;gap:8px;min-width:0}.task-row-main[data-v-a6a78068]{display:flex;align-items:center;justify-content:space-between;gap:12px}.task-type[data-v-a6a78068]{min-width:0;overflow:hidden;white-space:nowrap;text-overflow:ellipsis;font-size:14px;line-height:1.35;letter-spacing:0;color:var(--text-primary);font-weight:700}.task-saving-detail[data-v-a6a78068]{margin:5px 0 0;color:var(--warning-text);font-size:12px;line-height:1.55}.task-phase[data-v-a6a78068]{flex:0 0 auto;padding:2px 7px;color:var(--warning-text);background:#f59e0b1f;border-radius:999px;font-size:11px;font-weight:650;line-height:1.45}.task-detail[data-v-a6a78068]{overflow:hidden;white-space:nowrap;text-overflow:ellipsis;font-size:12px;line-height:1.45;letter-spacing:0;color:var(--text-secondary)}.task-reasoning[data-v-a6a78068]{overflow:hidden;border:1px solid rgba(124,58,237,.14);border-radius:8px;background:#7c3aed0d}.task-reasoning-toggle[data-v-a6a78068]{display:flex;align-items:center;justify-content:space-between;gap:10px;width:100%;padding:8px 10px;border:0;background:transparent;color:var(--text-secondary);cursor:pointer;font-size:12px;line-height:1.35;letter-spacing:0;font-weight:700;text-align:left;transition:background .16s ease,color .16s ease}.task-reasoning-toggle[data-v-a6a78068]:hover{background:#7c3aed14;color:var(--text-primary)}.task-reasoning-chevron[data-v-a6a78068]{width:16px;height:16px;flex-shrink:0;fill:currentColor;transition:transform .16s ease}.task-reasoning-chevron.open[data-v-a6a78068]{transform:rotate(180deg)}.task-reasoning-content[data-v-a6a78068]{max-height:160px;overflow:auto;padding:0 10px 10px;color:var(--text-secondary);font-size:12px;line-height:1.55;letter-spacing:0;white-space:pre-wrap;overflow-wrap:anywhere}@keyframes task-pulse-a6a78068{0%,to{transform:scale(.92);opacity:.72}50%{transform:scale(1);opacity:1}}@media(max-width:640px){.bg-task-widget[data-v-a6a78068]{left:12px;bottom:12px;width:calc(100vw - 24px)}.task-panel[data-v-a6a78068]{padding:14px}}@media(prefers-reduced-motion:reduce){.task-pill[data-v-a6a78068],.task-reasoning-toggle[data-v-a6a78068],.task-reasoning-chevron[data-v-a6a78068],.task-status-dot[data-v-a6a78068]{animation:none;transition:none}}.ui-dlg-mask[data-v-db4a6893]{position:fixed;top:0;right:0;bottom:0;left:0;z-index:var(--z-ui-dialogs-host);display:flex;align-items:center;justify-content:center;background:var(--modal-overlay);padding:24px;box-sizing:border-box}.ui-dlg-box[data-v-db4a6893]{width:100%;max-width:400px;max-height:min(640px,calc(100dvh - 48px));overflow-y:auto;padding:22px 24px;background:var(--bg-elevated);border:1px solid var(--border-color);border-radius:12px;box-shadow:var(--shadow)}.ui-dlg-box[data-v-db4a6893]:focus{outline:none}.ui-dlg-title[data-v-db4a6893]{margin:0 0 12px;font-size:17px;font-weight:600;color:var(--text-primary)}.ui-dlg-text[data-v-db4a6893]{margin:0;font-size:14px;line-height:1.55;color:var(--text-primary);white-space:pre-wrap;word-break:break-word}.ui-dlg-actions[data-v-db4a6893]{display:flex;justify-content:flex-end;gap:10px;margin-top:20px}.ui-dlg-btn[data-v-db4a6893]{min-width:76px;padding:8px 16px;font-size:14px;font-weight:500;border-radius:8px;cursor:pointer;border:1px solid transparent;transition:opacity .15s,background .15s}.ui-dlg-btn[data-v-db4a6893]:focus-visible{outline:2px solid var(--border-focus);outline-offset:2px}.ui-dlg-btn.primary[data-v-db4a6893]{background:var(--accent);color:#fff;border:none}.ui-dlg-btn.primary[data-v-db4a6893]:hover{background:var(--accent-hover)}.ui-dlg-btn.ghost[data-v-db4a6893]{background:transparent;color:var(--text-secondary);border-color:var(--border-color)}.ui-dlg-btn.ghost[data-v-db4a6893]:hover{color:var(--text-primary);border-color:var(--text-muted)}.app-toaster[data-v-6643a5a4]{position:fixed;top:20px;left:50%;transform:translate(-50%);width:min(430px,calc(100vw - 24px));z-index:var(--z-toast);transition:height .22s ease}.app-toast[data-v-6643a5a4]{position:absolute;left:0;right:0;min-height:60px;display:flex;align-items:center;padding:14px 44px 14px 18px;border-radius:12px;border:1px solid #bdf3d5;background:linear-gradient(180deg,#ecfff4,#def9ea);box-shadow:0 10px 28px #298c5824;color:#147542;transition:top .22s ease,transform .22s ease,opacity .22s ease,box-shadow .22s ease}.app-toast.is-front[data-v-6643a5a4]{box-shadow:0 14px 30px #298c582e}.app-toast.is-error[data-v-6643a5a4]{border-color:#f5c2c7;background:linear-gradient(180deg,#fff3f3,#ffe4e6);color:#b42318}.app-toast.is-warning[data-v-6643a5a4]{border-color:#f6df96;background:linear-gradient(180deg,#fff9e8,#fff2c5);color:#9a6700}.app-toast.is-info[data-v-6643a5a4]{border-color:#bcdafc;background:linear-gradient(180deg,#eef7ff,#dfedff);color:#175cd3}.app-toast__message[data-v-6643a5a4]{flex:1;min-width:0;font-size:15px;font-weight:500;line-height:1.35}.app-toast__undo[data-v-6643a5a4]{margin-left:12px;padding:4px 12px;border:1px solid currentColor;border-radius:6px;background:transparent;color:inherit;font-weight:600;font-size:13px;cursor:pointer;white-space:nowrap;flex-shrink:0}.app-toast__progress[data-v-6643a5a4]{position:absolute;bottom:0;left:0;right:0;height:3px;border-radius:0 0 12px 12px;background:currentColor;opacity:.35;transform-origin:left;animation:toast-progress-6643a5a4 linear forwards}@keyframes toast-progress-6643a5a4{0%{transform:scaleX(1)}to{transform:scaleX(0)}}.app-toast__close[data-v-6643a5a4]{position:absolute;top:-10px;left:-10px;width:24px;height:24px;display:inline-flex;align-items:center;justify-content:center;border:1px solid currentColor;border-radius:999px;background:#ebfff3;color:inherit;cursor:pointer;font-size:12px;font-weight:400;line-height:1}.app-toast.is-error .app-toast__close[data-v-6643a5a4]{background:#fff6f7}.app-toast.is-warning .app-toast__close[data-v-6643a5a4]{background:#fff9eb}.app-toast.is-info .app-toast__close[data-v-6643a5a4]{background:#eff6ff}@media(max-width:640px){.app-toaster[data-v-6643a5a4]{top:14px;width:calc(100vw - 16px)}.app-toast[data-v-6643a5a4]{min-height:56px;padding:13px 42px 13px 14px;border-radius:10px}.app-toast__message[data-v-6643a5a4]{font-size:14px}}.gia-menu[data-v-6716e41c]{position:fixed;z-index:var(--z-global-image-analyzer, 1700);min-width:132px;padding:4px;border:1px solid var(--border-color);border-radius:8px;background:#fff;box-shadow:0 4px 16px #0f172a2e;-webkit-user-select:none;user-select:none}.gia-menu-item[data-v-6716e41c]{display:flex;align-items:center;gap:8px;width:100%;padding:7px 10px;border:0;border-radius:6px;background:transparent;color:var(--text-primary);font-size:13px;line-height:1;text-align:left;cursor:pointer}.gia-menu-item[data-v-6716e41c]:hover,.gia-menu-item[data-v-6716e41c]:focus-visible{background:var(--bg-hover)}.gia-menu-item[data-v-6716e41c]:focus-visible{outline:2px solid var(--border-focus);outline-offset:-2px}.gia-menu-icon[data-v-6716e41c]{flex-shrink:0;pointer-events:none}*{margin:0;padding:0;box-sizing:border-box}:root{--font-sans: "PingFang SC", "Hiragino Sans GB", "Microsoft YaHei", "Noto Sans SC", "Source Han Sans SC", "Helvetica Neue", "Segoe UI", sans-serif;--font-display: var(--font-sans);--font-serif: "Noto Serif SC", "Source Han Serif SC", "Songti SC", "STSong", "SimSun", serif;--font-size-caption: 12px;--font-size-meta: 13px;--font-size-body: 15px;--font-size-body-lg: 16px;--font-size-title-sm: 18px;--font-size-title-md: 24px;--font-size-title-lg: 32px;--line-height-tight: 1.35;--line-height-body: 1.6;--letter-spacing-tight: -.02em;--letter-spacing-body: 0;--bg-primary: #f8fafc;--bg-secondary: #ffffff;--bg-card: #ffffff;--bg-hover: #f1f5f9;--bg-input: #ffffff;--bg-subtle: rgba(0, 0, 0, .03);--bg-elevated: #ffffff;--border-color: #e2e8f0;--border-subtle: rgba(0, 0, 0, .06);--border-focus: #3b82f6;--text-primary: #1e293b;--text-secondary: #475569;--text-muted: #94a3b8;--accent: #7c3aed;--accent-hover: #6d28d9;--accent-light: rgba(124, 58, 237, .1);--accent-subtle: rgba(140, 83, 255, .04);--accent-text: #6d28d9;--danger: #ef4444;--danger-text: #dc2626;--success: #22c55e;--warning: #f59e0b;--warning-text: #d97706;--code-bg: rgba(0, 0, 0, .04);--modal-overlay: rgba(15, 23, 42, .6);--badge-admin-bg: rgba(140, 83, 255, .1);--badge-admin-text: #6d28d9;--badge-user-bg: rgba(59, 130, 246, .1);--badge-user-text: #2563eb;--badge-image-bg: rgba(234, 179, 8, .1);--badge-image-text: #b45309;--radius-sm: 8px;--radius-md: 12px;--radius-lg: 16px;--shadow: 0 4px 20px rgba(0, 0, 0, .08);--transition: all .2s cubic-bezier(.4, 0, .2, 1);--scrollbar-thumb: #cbd5e1;--scrollbar-hover: #94a3b8;--scrollbar-active: #64748b;--scrollbar-track: transparent;--landing-bg: #f8fafc;--hero-gradient: linear-gradient(135deg, #f8fafc 0%, #eff6ff 50%, #f5f3ff 100%);--title-gradient: linear-gradient(to right, #1e293b, #475569);--z-app-layout-sidebar: 100;--z-app-layout-user-menu: 200;--z-app-layout-contact-popover: 200;--z-app-layout-sidebar-toggle: 110;--z-app-layout-dialog: 1000;--z-background-task-widget: 650;--z-background-task-widget-under-assistant: 480;--z-create-project-dialog: 1000;--z-custom-select-dropdown: 200;--z-global-image-analyzer: 1700;--z-image-analyze-lightbox: 1750;--z-library-picker-modal: 1000;--z-model-selector-menu: 200;--z-project-workflow-assistant-fab: 560;--z-step-asset-style-card: 110;--z-step-asset-style-dropdown: 100;--z-step-asset-style-modal: 1000;--z-step-asset-image-generator: 1000;--z-step-asset-lightbox: 1300;--z-step-asset-secondary-image-generator: 1000;--z-step-asset-image-gen-regen-hint: 1100;--z-step-asset-image-gen-ai-refine: 1600;--z-step-storyboard-video-gen-modal: 1000;--z-video-guide-panel: 1100;--z-panorama-360-panel: 1100;--z-step-storyboard-image-gen-regen-dialog: 1100;--z-step-storyboard-video-upscale-dialog: 1100;--z-storyboard-asset-gen-modal: 1000;--z-storyboard-asset-picker-modal: 1000;--z-storyboard-chat-drawer: 500;--z-storyboard-download-modal: 1000;--z-storyboard-ref-lightbox: 1300;--z-storyboard-shot-gen-modal: 1000;--z-storyboard-asset-detail-lightbox: 1000;--z-storyboard-pagination-dropdown: 200;--z-storyboard-right-panel: 600;--z-storyboard-bottom-panel: 590;--z-storyboard-resource-panel-modal: 1000;--z-storyboard-redesign-resource-modal: 1000;--z-storyboard-redesign-script-modal: 1000;--z-storyboard-redesign-assistant-fab: 560;--z-storyboard-page-edit-modal: 1000;--z-storyboard-ai-refine-modal: 1100;--z-storyboard-style-modal: 1100;--z-storyboard-redesign-assistant-drawer: 600;--z-storyboard-row-actions-menu: 1200;--z-storyboard-regen-dialog: 1100;--z-storyboard-table-edit-modal: 1000;--z-storyboard-shared-dialog: 1000;--z-storyboard-tag-menu: 200;--z-storyboard-ref-preview: 1200;--z-ui-dialogs-host: 1400;--z-admin-api-keys-modal: 1000;--z-admin-channels-modal: 1000;--z-admin-checkin-settings-modal: 1000;--z-admin-credit-cost-settings-modal: 1000;--z-admin-model-settings-modal: 1000;--z-admin-payment-packages-modal: 1000;--z-admin-plaza-modal: 1000;--z-admin-referral-settings-modal: 1000;--z-admin-styles-modal: 1000;--z-admin-users-modal: 1000;--z-asset-library-detail-modal: 1000;--z-login-captcha-modal: 1100;--z-payment-modal: 1000;--z-plaza-detail-lightbox: 1300;--z-plaza-detail-ref-preview: 1200;--z-plaza-detail-script-modal: 1100;--z-plaza-detail-shot-modal: 1100;--z-profile-modal: 1000;--z-dropdown: 200;--z-popover: 300;--z-backdrop: 500;--z-dialog: 600;--z-favorite-target-dialog: 1100;--z-review-asset-image-window: 1350;--z-asset-review-panel: 1360;--z-dialog-dropdown: 650;--z-sheet: 700;--z-command: 800;--z-toast: 1400;color-scheme:light}html,body{height:100%;margin:0;overflow:hidden;font-family:var(--font-sans);font-size:var(--font-size-body);line-height:var(--line-height-body);letter-spacing:var(--letter-spacing-body);background:var(--bg-primary);color:var(--text-primary);text-rendering:auto}html{font-size:16px;scrollbar-color:var(--scrollbar-thumb) var(--scrollbar-track);scrollbar-width:thin}h1,h2,h3,h4,h5,h6{font-family:var(--font-display);line-height:var(--line-height-tight);letter-spacing:var(--letter-spacing-tight)}#app{height:100%}a{color:var(--accent);text-decoration:none}button{cursor:pointer;border:none;outline:none;font-family:inherit;font-size:inherit}button:focus-visible,a:focus-visible,input:focus-visible,textarea:focus-visible,select:focus-visible,[tabindex]:focus-visible{outline:2px solid var(--border-focus);outline-offset:2px}button:disabled,button[aria-disabled=true]{cursor:not-allowed}input,textarea,select{font-family:inherit;font-size:inherit;line-height:1.5;outline:none}::-webkit-scrollbar{width:6px;height:6px}::-webkit-scrollbar-track{background:var(--scrollbar-track)}::-webkit-scrollbar-thumb{background:var(--scrollbar-thumb);border-radius:3px}::-webkit-scrollbar-thumb:hover{background:var(--scrollbar-hover)}::-webkit-scrollbar-thumb:active{background:var(--scrollbar-active)}.btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;min-height:44px;padding:12px 24px;border-radius:var(--radius-sm);font-size:var(--font-size-body);font-weight:600;line-height:1.3;letter-spacing:.01em;transition:var(--transition);white-space:nowrap}.btn-primary{background:var(--accent);color:#fff}.btn-primary:hover{background:var(--accent-hover);transform:translateY(-1px)}.btn-outline{background:transparent;color:var(--accent);border:1px solid var(--accent)}.btn-outline:hover{background:var(--accent-light)}.btn-ghost{background:transparent;color:var(--text-secondary)}.btn-ghost:hover{background:var(--bg-hover);color:var(--text-primary)}.btn-sm{min-height:36px;padding:8px 16px;font-size:var(--font-size-meta)}.btn-danger{background:var(--danger);color:#fff}.btn-danger:hover{background:#dc2626}.input{width:100%;padding:12px 16px;background:var(--bg-input);border:1px solid var(--border-color);border-radius:var(--radius-sm);color:var(--text-primary);font-size:var(--font-size-body);line-height:var(--line-height-body);transition:var(--transition)}.input:focus{border-color:var(--border-focus);box-shadow:0 0 0 3px var(--accent-light)}.input::placeholder{color:var(--text-muted)}textarea.input{resize:none;min-height:120px;line-height:1.6}.card{background:var(--bg-card);border:1px solid var(--border-color);border-radius:var(--radius-md);padding:24px}.badge{display:inline-flex;align-items:center;padding:2px 10px;border-radius:20px;font-size:var(--font-size-caption);font-weight:600}.badge-purple{background:var(--accent-light);color:var(--accent)}.badge-green{background:#22c55e26;color:var(--success)}.badge-red{background:#ef444426;color:var(--danger)}.fade-enter-active,.fade-leave-active{transition:opacity .25s ease}.fade-enter-from,.fade-leave-to{opacity:0}.slide-enter-active,.slide-leave-active{transition:all .3s ease}.slide-enter-from{opacity:0;transform:translateY(20px)}.slide-leave-to{opacity:0;transform:translateY(-10px)}@keyframes spin{to{transform:rotate(360deg)}}.spinner{width:20px;height:20px;border:2px solid var(--border-color);border-top-color:var(--accent);border-radius:50%;animation:spin .6s linear infinite}@keyframes pulse{0%,to{opacity:1}50%{opacity:.5}}.loading-text{animation:pulse 1.5s ease-in-out infinite;color:var(--text-secondary)}.credit-tag{display:inline-flex;align-items:center;margin-left:6px;padding:1px 7px;border-radius:10px;font-size:var(--font-size-caption);font-weight:600;color:var(--warning-text);background:#f59e0b1f;white-space:nowrap;vertical-align:middle}img{-webkit-user-drag:none}@media print{body{display:none!important}}@media(prefers-reduced-motion:reduce){*,*:before,*:after{scroll-behavior:auto!important;animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important}}@media(forced-colors:active){html{scrollbar-color:auto}}
