.visually-hidden{clip:rect(0,0,0,0);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.stage-check{color:#22c55e;font-weight:700}:root{--bg-deep:#050505;--bg-surface:#121212;--bg-panel:#18181b;--bg-panel-elevated:#27272a;--accent-primary:#5423e7;--accent-primary-dim:#361695;--accent-glow:#5423e740;--accent-secondary:#4338ca;--accent-secondary-dim:#1e1b4b;--accent-record:#be185d;--text-primary:#fff;--text-secondary:#9ca3af;--text-muted:#6b7280;--border-subtle:#27272a;--border-bright:#3f3f46;--border-active:#5423e7;--font-display:"Poppins",system-ui,sans-serif;--font-body:"Inter",system-ui,sans-serif;--font-mono:"IBM Plex Mono","SF Mono",Menlo,monospace;--radius-sm:4px;--radius-md:8px;--radius-lg:16px;--header-height:80px;--brand-title-accent:#a78bfa;--bg-monitor:#000}:root[data-theme=light]{--bg-deep:#fff;--bg-surface:#f9fafb;--bg-panel:#f3f4f6;--bg-panel-elevated:#e5e7eb;--accent-primary:#5423e7;--accent-primary-dim:#361695;--accent-glow:#5423e726;--accent-secondary:#4338ca;--accent-secondary-dim:#e0e7ff;--text-primary:#18181b;--text-secondary:#4b5563;--text-muted:#9ca3af;--border-subtle:#e4e4e7;--border-bright:#d4d4d8;--border-active:#5423e7;--brand-title-accent:#5423e7;--bg-monitor:#e5e7eb}html,body{height:100vh;overflow:hidden}body{background:var(--bg-deep);color:var(--text-primary);font-family:var(--font-body);margin:0}.console-layout{box-sizing:border-box;grid-template:"header header""sidebar main"1fr/clamp(400px,30vw,560px) 1fr;gap:12px;max-width:1800px;height:100vh;margin:0 auto;padding:16px;display:grid;overflow:hidden}@media (min-width:1440px){.console-layout{grid-template-columns:clamp(460px,28vw,600px) 1fr;gap:16px}}@media (max-width:1024px){.console-layout{grid-template:"header""main"1fr"sidebar"/1fr;height:auto;overflow:auto}}.console-header{border-bottom:1px solid var(--border-subtle);grid-area:header;justify-content:space-between;align-items:center;height:60px;margin-bottom:0;padding-bottom:12px;display:flex}.brand-container{align-items:center;gap:12px;display:flex}.brand-title{font-family:var(--font-display);letter-spacing:-.03em;color:var(--text-primary);align-items:center;gap:8px;margin:0;font-size:1.3rem;font-weight:800;display:flex}.brand-subtitle{font-family:var(--font-mono);color:var(--text-secondary);letter-spacing:.08em;text-transform:lowercase;margin-top:2px;font-size:.65rem}.panel{background:var(--bg-surface);border:1px solid var(--border-subtle);border-radius:var(--radius-md);flex-direction:column;min-height:0;display:flex;position:relative;overflow:hidden;box-shadow:0 4px 20px #0000004d}.panel-header{background:linear-gradient(180deg,#ffffff0a,#0000),var(--bg-panel);border-bottom:1px solid var(--border-subtle);flex-shrink:0;justify-content:space-between;align-items:flex-start;gap:16px;padding:12px 16px;display:flex}.panel-title{font-family:var(--font-mono);text-transform:none;letter-spacing:.04em;color:var(--text-primary);align-items:center;gap:8px;font-size:.85rem;font-weight:600;display:flex}.panel-title:before{content:"";background:var(--accent-primary);width:8px;height:8px;box-shadow:0 0 6px var(--accent-primary-dim);border-radius:50%}.panel-header-main{flex-direction:column;gap:4px;display:flex}.panel-subtitle{color:var(--text-muted);letter-spacing:.03em;font-size:.7rem}.panel-header-action{color:var(--text-secondary);align-items:center;gap:8px;margin-top:2px;font-size:.75rem;display:inline-flex}.panel-content{box-sizing:border-box;flex-direction:column;flex:1;gap:8px;max-width:100%;padding:14px;display:flex;overflow:hidden auto}.sidebar-zone{flex-direction:column;grid-area:sidebar;gap:12px;min-height:0;padding-right:12px;display:flex;overflow-y:auto}@media (min-width:1440px){.sidebar-zone{gap:16px}}.sidebar-zone::-webkit-scrollbar{width:6px}.panel-content::-webkit-scrollbar{width:6px}.sidebar-zone::-webkit-scrollbar-track{background:var(--bg-deep)}.panel-content::-webkit-scrollbar-track{background:var(--bg-deep)}.sidebar-zone::-webkit-scrollbar-thumb{background:var(--border-bright);border-radius:3px}.panel-content::-webkit-scrollbar-thumb{background:var(--border-bright);border-radius:3px}.main-zone{grid-area:main;grid-template-rows:minmax(200px,1fr) 2fr;gap:16px;height:100%;min-height:0;display:grid}.toggle-switch-container{cursor:pointer;justify-content:space-between;align-items:center;gap:12px;padding:4px 0;display:flex}.toggle-switch-container.disabled{opacity:.5;cursor:not-allowed}.toggle-label{color:var(--text-secondary);flex:1;font-size:.875rem}.toggle-track{background:var(--bg-deep);border:1px solid var(--border-bright);border-radius:20px;flex-shrink:0;width:44px;height:24px;transition:all .2s;position:relative}.toggle-thumb{background:var(--text-muted);border-radius:50%;width:18px;height:18px;transition:all .2s cubic-bezier(.4,0,.2,1);position:absolute;top:2px;left:2px}.toggle-track input{opacity:0;width:0;height:0}.toggle-track:has(input:checked){border-color:var(--accent-primary);background:#5423e71a;box-shadow:0 0 10px #5423e733}.toggle-track:has(input:checked) .toggle-thumb{background:var(--accent-primary);box-shadow:0 0 8px var(--accent-primary);transform:translate(20px)}.selector-deck-container{margin-bottom:8px}.selector-deck-label{text-transform:uppercase;letter-spacing:.05em;color:var(--text-secondary);margin-bottom:8px;font-size:.75rem}.selector-deck-track{background:var(--bg-deep);border:1px solid var(--border-bright);border-radius:var(--radius-sm);gap:2px;padding:2px;display:flex}.selector-deck-btn{color:var(--text-secondary);font-family:var(--font-mono);cursor:pointer;text-align:center;white-space:nowrap;background:0 0;border:none;border-radius:1px;flex:1;padding:8px;font-size:.7rem;transition:all .15s}.selector-deck-btn:hover:not(:disabled){color:var(--text-primary);background:#ffffff0d}.selector-deck-btn.active{background:var(--accent-primary);color:#fff;font-weight:600;box-shadow:inset 0 1px #ffffff1a}.selector-deck-btn:disabled{opacity:.3;cursor:not-allowed}.selector-deck-description{color:var(--text-muted);min-height:1.2em;margin-top:6px;font-size:.75rem;font-style:italic}input[type=text],input[type=url],input[type=number],textarea,select{background:var(--bg-deep);border:1px solid var(--border-subtle);color:var(--text-primary);border-radius:var(--radius-sm);font-family:var(--font-mono);padding:10px 12px;font-size:.85rem;line-height:1.4;transition:border-color .2s,box-shadow .2s;box-shadow:inset 0 2px 4px #0003}input:focus,textarea:focus,select:focus{border-color:var(--accent-primary);box-shadow:inset 0 2px 4px #0003,0 0 0 1px var(--accent-primary);outline:none}textarea{line-height:1.6}textarea::placeholder,input::placeholder{color:var(--text-muted)}.script-editor-container textarea{background:var(--bg-panel-elevated);resize:none;border-radius:var(--radius-md);width:100%;height:100%;color:var(--text-primary);word-wrap:break-word;white-space:pre-wrap;box-sizing:border-box;border:none;padding:20px;font-family:Courier Prime,IBM Plex Mono,monospace;font-size:1rem;overflow-x:hidden;box-shadow:inset 0 2px 10px #0000001a}.script-editor-container textarea:focus{box-shadow:inset 0 2px 10px #00000080,0 0 0 1px var(--border-active)}.monitor-panel{background:var(--bg-monitor);border:4px solid var(--bg-panel);border-radius:var(--radius-lg);box-shadow:0 0 0 1px var(--border-subtle),0 10px 30px #00000080,0 0 20px #5423e70d;justify-content:center;align-items:center;height:100%;display:flex;position:relative;overflow:hidden}.monitor-label{font-family:var(--font-mono);color:var(--text-muted);letter-spacing:.2em;text-transform:uppercase;z-index:20;pointer-events:none;font-size:.7rem;position:absolute;top:16px;left:16px}.monitor-panel:after{display:none}.monitor-content{z-index:1;width:100%;height:100%;position:relative}.overlay-editor-stage{pointer-events:none;place-items:center;padding:16px;display:grid;position:absolute;inset:0}.overlay-editor-frame{aspect-ratio:1;pointer-events:auto;background:#06080c73;border-radius:16px;width:auto;max-width:100%;height:100%;max-height:100%;display:flex;box-shadow:0 0 0 1px #ffffff14,0 16px 40px #00000059}:root[data-theme=light] .overlay-editor-frame{background:#fff3;box-shadow:0 0 0 1px #0000000d,0 16px 40px #0000001a}.overlay-toggle-container{pointer-events:auto;z-index:50;background:#000000b3;border-radius:4px;padding:4px 8px;position:absolute;bottom:16px;left:16px}:root[data-theme=light] .overlay-toggle-container{border:1px solid var(--border-bright);background:#ffffffd9;box-shadow:0 4px 12px #0000001a}.overlay-reset-container{pointer-events:auto;z-index:50;background:#000000b3;border-radius:4px;padding:4px 8px;position:absolute;top:16px;right:16px}:root[data-theme=light] .overlay-reset-container{border:1px solid var(--border-bright);background:#ffffffd9;box-shadow:0 4px 12px #0000001a}.overlay-reset-container .reset-button{color:var(--text-muted);cursor:pointer;background:0 0;border:none;padding:2px 4px;font-size:.75rem;transition:color .15s}.overlay-reset-container .reset-button:hover{color:var(--text-primary)}.overlay-editor-frame>[aria-label="Overlay box editor"]{width:100%;height:100%}.monitor-timecode{font-family:var(--font-mono);color:var(--accent-primary);opacity:.7;letter-spacing:.1em;z-index:20;text-shadow:0 0 4px var(--accent-primary-dim);pointer-events:none;font-size:.75rem;position:absolute;top:16px;right:16px}.monitor-empty{color:var(--text-muted);text-transform:uppercase;letter-spacing:.1em;border:1px dashed var(--border-bright);border-radius:var(--radius-sm);background:#00000059;padding:12px 16px;font-size:.75rem;position:absolute;top:50%;left:50%;transform:translate(-50%,-50%)}.monitor-video{object-fit:contain;background:var(--bg-monitor);width:100%;height:100%}.overlay-editor-container{border:1px solid var(--border-subtle);touch-action:none;background:radial-gradient(circle at 20% 10%,#27272a 0%,#18181b 45%,#050505 100%);border-radius:14px;width:100%;height:100%;position:relative;overflow:hidden}:root[data-theme=light] .overlay-editor-container{border-color:var(--border-bright);background:radial-gradient(circle at 20% 10%,#f9fafb 0%,#f3f4f6 45%,#e5e7eb 100%)}.overlay-editor-shadow{background:linear-gradient(#05050533 0%,#0505058c 70%,#050505a6 100%);position:absolute;inset:0}:root[data-theme=light] .overlay-editor-shadow{background:linear-gradient(#00000005 0%,#0000000d 70%,#0000001a 100%)}.overlay-editor-grid{display:none}.overlay-box-image{background:#9382c80f;border:2px dashed #9382c880;border-radius:14px;transition:border-color .2s,box-shadow .2s,background .2s;box-shadow:0 8px 24px #0003,inset 0 0 0 1px #9382c81a}.overlay-box-image:hover{background:#9382c81a;border-color:#9382c8b3;box-shadow:0 8px 24px #00000040,0 0 0 1px #9382c833}.overlay-box-image:has(img){border-style:solid;border-color:#9382c899}.overlay-box-media{border-radius:inherit;z-index:1;pointer-events:none;position:absolute;inset:0;overflow:hidden}:root[data-theme=light] .overlay-box-image{background:#5423e70a;border-color:#5423e766;box-shadow:0 8px 24px #00000014,inset 0 0 0 1px #5423e714}:root[data-theme=light] .overlay-box-image:hover{background:#5423e714;border-color:#5423e799}.overlay-box-placeholder{color:#aa9bd2cc;letter-spacing:.8px;text-transform:uppercase;pointer-events:none;flex-direction:column;justify-content:center;align-items:center;gap:10px;font-size:10px;font-weight:500;display:flex;position:absolute;inset:0}.overlay-box-icon{color:#aa9bd2b3;opacity:.6;transition:opacity .2s}.overlay-box-image:hover .overlay-box-icon,.overlay-box-captions:hover .overlay-box-icon{opacity:.9}:root[data-theme=light] .overlay-box-placeholder{color:#5423e7cc}.overlay-box-captions{color:#aa9bd2cc;letter-spacing:.8px;text-transform:uppercase;background:#8278b40f;border:2px dashed #8278b480;border-radius:14px;flex-direction:column;justify-content:center;align-items:center;gap:8px;font-size:10px;font-weight:500;transition:border-color .2s,box-shadow .2s,background .2s;display:flex;box-shadow:0 4px 16px #00000026}.overlay-box-captions:hover{background:#8278b41a;border-color:#8278b4b3;box-shadow:0 4px 16px #0003,0 0 0 1px #8278b426}:root[data-theme=light] .overlay-box-captions{color:#4338cae6;background:#4338ca0f;border-color:#4338ca66;box-shadow:0 4px 16px #0000000f}:root[data-theme=light] .overlay-box-captions:hover{background:#4338ca1a;border-color:#4338ca99}.overlay-handle{z-index:20}.overlay-handle:hover{transform:scale(1.2)}.overlay-handle:focus-visible{outline-offset:2px;outline:2px solid #fff}.tactile-input{border-color:var(--border-subtle);box-shadow:inset 0 2px 4px #0000004d}.tactile-input:focus{box-shadow:inset 0 2px 4px #0000004d,0 0 0 1px var(--accent-primary)}.audio-deck-preview{border:1px solid var(--border-bright);border-radius:var(--radius-sm);background:#0a0a0a;grid-template-columns:1fr auto;align-items:center;gap:12px;padding:12px;display:grid;box-shadow:inset 0 2px 4px #00000080}.waveform-display{background:#0000004d;border-radius:2px;grid-column:1/-1;align-items:flex-end;gap:3px;height:32px;margin-bottom:8px;padding:4px;display:flex}.wave-bar{background:var(--accent-secondary-dim);border-radius:1px;flex:1;height:20%;animation:1.2s ease-in-out infinite wave}@keyframes wave{0%,to{height:20%}50%{background:var(--accent-secondary);height:90%;box-shadow:0 0 8px #4338ca66}}.track-info{flex-direction:column;display:flex;overflow:hidden}.track-label{color:var(--text-muted);text-transform:uppercase;letter-spacing:.1em;font-size:.6rem}.audio-name{color:var(--accent-secondary);white-space:nowrap;text-overflow:ellipsis;font-size:.8rem;font-family:var(--font-mono);overflow:hidden}.audio-eject-btn{border:1px solid var(--accent-record);color:var(--accent-record);letter-spacing:.1em;cursor:pointer;text-transform:uppercase;background:0 0;border-radius:2px;height:fit-content;padding:6px 10px;font-size:.65rem;font-weight:700;transition:all .2s}.audio-eject-btn:hover{background:#be185d1a;box-shadow:0 0 10px #be185d33}.generate-btn-large{background:linear-gradient(180deg,var(--accent-primary)0%,#4a1dc4 100%);color:#fff;width:100%;font-family:var(--font-display);text-transform:uppercase;letter-spacing:.1em;border-radius:var(--radius-md);cursor:pointer;border:none;margin-top:24px;padding:24px;font-size:1.25rem;font-weight:800;transition:transform .15s,box-shadow .15s;position:relative;overflow:hidden;box-shadow:0 4px 12px #5423e766,0 1px 2px #0003,inset 0 1px #ffffff1a}.generate-btn-large:hover:not(:disabled){transform:translateY(-2px);box-shadow:0 8px 20px #5423e780,0 2px 4px #0003,inset 0 1px #ffffff26}.generate-btn-large:active:not(:disabled){transform:translateY(1px);box-shadow:0 2px 8px #5423e74d,0 1px 2px #0003,inset 0 1px #ffffff1a}.generate-btn-large:disabled{background:var(--bg-panel-elevated);box-shadow:none;color:var(--text-muted);cursor:not-allowed;border:1px solid var(--border-bright)}.generate-btn-large.reset-btn-large{background:var(--bg-panel-elevated);color:var(--text-primary);border:1px solid var(--border-bright);box-shadow:0 4px 12px #0003,0 1px 2px #0000001a}.generate-btn-large.reset-btn-large:hover:not(:disabled){border-color:var(--accent-primary);color:var(--accent-primary);box-shadow:0 6px 16px #00000040,0 2px 4px #0000001a}.generate-btn-large.reset-btn-large:active:not(:disabled){box-shadow:0 2px 6px #00000026,0 1px 2px #0000001a}.generate-btn-large.download-btn-large{text-align:center;text-decoration:none}.upload-zone-refresh{border:2px dashed var(--border-bright);border-radius:var(--radius-md);background:#ffffff05;transition:all .2s}.upload-zone-refresh:hover{border-color:var(--accent-primary);background:#5423e70d}.section-label{font-family:var(--font-mono);color:var(--text-secondary);text-transform:none;letter-spacing:.04em;border-bottom:1px solid var(--border-subtle);margin-bottom:8px;padding-bottom:6px;font-size:.8rem;display:block}.control-group{margin-bottom:8px}.control-group:last-child{margin-bottom:0}.upload-area:focus-visible,button:focus-visible,[role=button]:focus-visible,a:focus-visible{outline:2px solid var(--accent-primary);outline-offset:2px}.secondary-btn,.retry-btn,.download-btn,.new-video-btn,.preset-link-submit,.save-preset-btn,.preset-confirm-btn,.preset-cancel-btn,.delete-preset-btn{background:var(--bg-panel);border:1px solid var(--border-bright);color:var(--text-primary);font-family:var(--font-mono);border-radius:var(--radius-sm);cursor:pointer;text-transform:none;justify-content:center;align-items:center;gap:8px;padding:10px 12px;font-size:.75rem;text-decoration:none;transition:border-color .2s,color .2s,background .2s,box-shadow .2s;display:inline-flex}.secondary-btn:hover:not(:disabled),.retry-btn:hover:not(:disabled),.download-btn:hover:not(:disabled),.new-video-btn:hover:not(:disabled),.preset-link-submit:hover:not(:disabled),.save-preset-btn:hover:not(:disabled),.preset-confirm-btn:hover:not(:disabled),.preset-cancel-btn:hover:not(:disabled),.delete-preset-btn:hover:not(:disabled){border-color:var(--accent-primary);color:var(--accent-primary);box-shadow:0 0 0 1px var(--accent-primary-dim);background:#5423e714}.secondary-btn:disabled,.retry-btn:disabled,.download-btn:disabled,.new-video-btn:disabled,.preset-link-submit:disabled,.save-preset-btn:disabled,.preset-confirm-btn:disabled,.preset-cancel-btn:disabled,.delete-preset-btn:disabled{opacity:.5;cursor:not-allowed;box-shadow:none}.delete-preset-btn{border-color:var(--accent-record);color:var(--accent-record)}.delete-preset-btn:hover:not(:disabled){border-color:var(--accent-record);color:var(--accent-record);background:#be185d1f;box-shadow:0 0 0 1px #be185d66}.theme-toggle-btn{border:1px solid var(--border-subtle);color:var(--text-secondary);border-radius:var(--radius-sm);cursor:pointer;background:0 0;justify-content:center;align-items:center;width:32px;height:32px;transition:all .2s;display:flex}.theme-toggle-btn:hover{background:var(--bg-panel-elevated);color:var(--text-primary);border-color:var(--border-bright)}.upload-area{border:1px dashed var(--border-bright);border-radius:var(--radius-md);text-align:center;min-height:140px;color:var(--text-secondary);background:#ffffff05;justify-content:center;align-items:center;padding:16px;transition:border-color .2s,background .2s,box-shadow .2s;display:flex}.upload-area.dragover{border-color:var(--accent-primary);box-shadow:0 0 0 1px var(--accent-primary-dim);background:#5423e714}.upload-placeholder{flex-direction:column;gap:6px;font-size:.8rem;display:flex}.upload-icon{letter-spacing:.12em;color:var(--accent-primary);font-size:.7rem}.image-preview{flex-direction:column;align-items:center;gap:10px;width:100%;display:flex}.image-preview img{object-fit:contain;border-radius:var(--radius-sm);border:1px solid var(--border-subtle);max-width:100%;max-height:220px}.remove-btn,.audio-remove{border-radius:var(--radius-sm);border:1px solid var(--accent-record);min-width:44px;min-height:44px;color:var(--accent-record);font-family:var(--font-mono);letter-spacing:.08em;cursor:pointer;background:0 0;padding:6px 12px;font-size:.7rem}.remove-btn:hover:not(:disabled){background:#be185d1f;box-shadow:0 0 0 1px #be185d59}.x-preview-text{border:1px solid var(--border-subtle);border-radius:var(--radius-md);color:var(--text-secondary);resize:none;background:#0d0d0d;padding:18px;font-family:Courier Prime,IBM Plex Mono,monospace;font-size:.95rem}.preset-select-container{align-items:center;gap:8px;display:flex}.save-preset-btn{width:100%}.preset-save-modal-overlay{z-index:1000;background:#000000a6;justify-content:center;align-items:center;display:flex;position:fixed;inset:0}.preset-save-modal{background:var(--bg-surface);border:1px solid var(--border-bright);border-radius:var(--radius-lg);width:min(420px,90vw);padding:20px;box-shadow:0 20px 60px #00000080}.preset-save-modal h3{font-family:var(--font-display);margin-top:0;margin-bottom:12px}.preset-modal-actions{justify-content:flex-end;gap:12px;margin-top:12px;display:flex}.preset-confirm-btn{border-color:var(--accent-primary);color:#000;background:var(--accent-primary)}.preset-confirm-btn:hover:not(:disabled){color:#fff;background:var(--accent-primary-dim);box-shadow:0 0 0 1px var(--accent-primary-dim)}.preset-link-card{border:1px solid var(--border-subtle);border-radius:var(--radius-md);background:#00000040;flex-direction:column;gap:12px;padding:14px;display:flex}.preset-link-header{text-transform:uppercase;letter-spacing:.08em;color:var(--text-muted);font-size:.7rem}.preset-link-grid{grid-template-columns:1fr;gap:8px;display:grid}.preset-link-grid label{color:var(--text-muted);font-size:.7rem}.preset-link-steps{border:1px solid var(--border-subtle);border-radius:var(--radius-sm);background:#ffffff05;padding:10px;font-size:.75rem}.preset-link-steps-title{text-transform:uppercase;letter-spacing:.08em;color:var(--text-muted);margin-bottom:8px}.preset-link-steps ol{margin:0;padding-left:18px}.preset-link-step.is-active{color:var(--accent-primary)}.preset-link-step.is-done{color:var(--accent-secondary)}.preset-link-step-status{color:var(--text-muted)}.custom-prompt-input{flex-direction:column;gap:8px;display:flex}.custom-prompt-input .hint{color:var(--text-muted);margin:0;font-size:.75rem}.section{background:var(--bg-surface);border:1px solid var(--border-subtle);border-radius:var(--radius-lg);flex-direction:column;gap:12px;height:100%;padding:24px;display:flex}.error-section{border-color:#be185d4d}.download-section h2,.error-section h2{font-family:var(--font-display);margin:0}.download-meta{color:var(--text-muted);margin:0;font-size:.8rem}.download-video{border-radius:var(--radius-md);border:1px solid var(--border-subtle);background:#000;width:100%}.error-message,.error-text{color:var(--accent-record);margin:0;font-size:.85rem}.progress-console-overlay{border:1px solid var(--border-subtle);border-radius:var(--radius-lg);background:radial-gradient(at top,#5423e70f,#0000 50%),#0a0908;grid-template-rows:1fr auto auto;width:100%;height:100%;display:grid;position:relative;overflow:hidden}:root[data-theme=light] .progress-console-overlay{background:radial-gradient(ellipse at top center,#5423e70f,transparent 50%),var(--bg-monitor)}.progress-scanlines{display:none}.progress-center{flex-direction:column;justify-content:center;align-items:center;gap:24px;padding:20px;display:flex}.film-reel-spinner{width:72px;height:72px;animation:3s linear infinite filmReelSpin;position:relative}@keyframes filmReelSpin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.film-reel-outer{border:3px solid #9382c8cc;border-radius:50%;position:absolute;inset:0;box-shadow:0 0 16px #9382c84d,inset 0 0 8px #9382c81a}.film-reel-inner{border:2px solid #9382c866;border-radius:50%;position:absolute;inset:12px}.film-reel-spokes{position:absolute;inset:0}.film-spoke{transform-origin:top;opacity:.7;background:#9382c8cc;width:2px;height:28px;margin-left:-1px;position:absolute;top:50%;left:50%}.film-reel-hub{background:#9382c8e6;border-radius:50%;width:12px;height:12px;margin:-6px 0 0 -6px;position:absolute;top:50%;left:50%;box-shadow:0 0 8px #9382c880}.progress-title{font-family:var(--font-display);letter-spacing:.25em;color:var(--text-primary);text-shadow:0 0 20px #ffffff26;margin:0;font-size:1.1rem}:root[data-theme=light] .progress-title{text-shadow:none}.progress-stages{justify-content:center;align-items:center;gap:0;padding:16px 20px;display:flex}.stage{font-family:var(--font-mono);letter-spacing:.12em;color:var(--text-muted);border:1px solid var(--border-subtle);border-radius:var(--radius-sm);background:#0000004d;padding:6px 12px;font-size:.65rem;font-weight:600;transition:all .3s}:root[data-theme=light] .stage{background:#ffffff80}.stage.active{color:#aa9bd2;background:#9382c81f;border-color:#9382c8b3;box-shadow:0 0 12px #9382c833}.stage.completed{color:var(--accent-secondary);border-color:var(--accent-secondary-dim);background:#4338ca14}.stage-connector{background:var(--border-bright);width:24px;height:1px;margin:0 4px;display:inline-block}.progress-console-dock{border-top:1px solid var(--border-subtle);background:#0009;flex-direction:column;gap:8px;padding:12px 16px;display:flex}:root[data-theme=light] .progress-console-dock{border-top-color:var(--border-bright);background:#ffffffd9}.progress-bar-track{background:#ffffff14;border-radius:2px;width:100%;height:4px;overflow:hidden}:root[data-theme=light] .progress-bar-track{background:#00000014}.progress-bar-fill{background:linear-gradient(90deg,#9382c8e6,#8278b4cc);border-radius:2px;width:30%;height:100%;animation:2s ease-in-out infinite progressSlide;box-shadow:0 0 8px #9382c866}@keyframes progressSlide{0%{transform:translate(-100%)}50%{transform:translate(100%)}to{transform:translate(300%)}}.console-log{font-family:var(--font-mono);align-items:center;gap:12px;font-size:.75rem;display:flex}.log-time{color:var(--text-muted);opacity:.7}.log-msg{color:var(--text-secondary);text-overflow:ellipsis;white-space:nowrap;flex:1;overflow:hidden}.console-stage{font-family:var(--font-mono);color:var(--accent-primary);align-items:center;gap:6px;font-size:.75rem;display:flex}.log-arrow{color:var(--accent-primary)}.log-stage{font-weight:500}.cursor-block{background:var(--accent-primary);width:8px;height:14px;animation:1s steps(2,end) infinite cursorBlink}@keyframes cursorBlink{0%,49%{opacity:1}50%,to{opacity:0}}.collapsible-panel{background:var(--bg-panel);border:1px solid var(--border-subtle);border-radius:var(--radius-sm);margin-bottom:8px;overflow:hidden}.collapsible-panel-header{width:100%;color:var(--text-secondary);font-family:var(--font-mono);text-align:left;cursor:pointer;background:0 0;border:none;justify-content:space-between;align-items:center;gap:8px;padding:10px 12px;font-size:.75rem;transition:background-color .15s,color .15s;display:flex}.collapsible-panel-header:hover{color:var(--text-primary);background:#ffffff08}.collapsible-panel-header:focus-visible{outline:2px solid var(--accent-primary);outline-offset:-2px}.collapsible-panel-title{text-transform:uppercase;letter-spacing:.06em;flex:1}.collapsible-panel-chevron{opacity:.6;font-size:.6rem;transition:transform .2s}.collapsible-panel.expanded .collapsible-panel-chevron{opacity:.8}.collapsible-panel-content{border-top:1px solid var(--border-subtle);padding:12px}.collapsible-panel-content[hidden]{display:none}.generate-btn-sticky-wrapper{background:linear-gradient(to top,var(--bg-deep)60%,transparent);z-index:10;margin-top:auto;padding:16px 0 0;position:sticky;bottom:0;left:0;right:0}.mobile-drawer-toggle,.mobile-drawer-overlay{display:none}@media (max-width:1024px){.sidebar-zone{background:var(--bg-surface);border-left:1px solid var(--border-subtle);z-index:201;width:min(90vw,420px);padding:72px 16px 16px;transition:transform .3s cubic-bezier(.4,0,.2,1);position:fixed;top:0;bottom:0;right:0;transform:translate(100%)}.sidebar-zone.drawer-open{transform:translate(0)}.generate-btn-sticky-wrapper{background:linear-gradient(to top,var(--bg-surface)60%,transparent);border-top:none;margin-top:auto;padding:16px 0 0;position:sticky;bottom:0;left:0;right:0}.mobile-drawer-toggle{z-index:100;background:var(--accent-primary);color:#fff;cursor:pointer;border:none;border-radius:50%;justify-content:center;align-items:center;width:56px;height:56px;font-size:1.25rem;transition:transform .2s,box-shadow .2s;display:flex;position:fixed;bottom:16px;right:16px;box-shadow:0 4px 12px #0006,0 0 20px #5423e74d}.mobile-drawer-toggle:hover{transform:scale(1.05);box-shadow:0 6px 16px #00000080,0 0 30px #5423e766}.mobile-drawer-toggle:active{transform:scale(.95)}.mobile-drawer-overlay{z-index:200;opacity:0;pointer-events:none;background:#0009;transition:opacity .3s;position:fixed;inset:0}.mobile-drawer-overlay.open{opacity:1;pointer-events:auto}.mobile-drawer-close{z-index:202;border-radius:var(--radius-sm);background:var(--bg-panel);border:1px solid var(--border-bright);width:44px;height:44px;color:var(--text-secondary);cursor:pointer;justify-content:center;align-items:center;font-size:1.5rem;transition:border-color .2s,color .2s;display:none;position:fixed;top:16px;right:16px}.mobile-drawer-close.visible{display:flex}.mobile-drawer-close:hover{border-color:var(--accent-primary);color:var(--accent-primary)}body.drawer-open .mobile-drawer-toggle{display:none}.main-zone{grid-template-rows:minmax(150px,1fr) 1.5fr}}.waitlist-modal-overlay{-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);z-index:1000;background:#000000bf;justify-content:center;align-items:center;display:flex;position:fixed;inset:0}.waitlist-modal{background:var(--bg-panel);border:1px solid var(--border-bright);border-radius:var(--radius-lg);width:min(400px,90vw);padding:32px;position:relative;overflow:hidden;box-shadow:0 0 0 1px #5423e71a,0 20px 60px #0009,0 0 80px #5423e726}.waitlist-modal:before{content:"";background:linear-gradient(90deg,var(--accent-primary),var(--accent-secondary));height:3px;position:absolute;top:0;left:0;right:0}.waitlist-modal h3{font-family:var(--font-display);color:var(--text-primary);letter-spacing:-.02em;margin:0 0 8px;font-size:1.5rem;font-weight:700}.waitlist-description{color:var(--text-secondary);margin:0 0 24px;font-size:.9rem;line-height:1.5}.waitlist-modal label{font-family:var(--font-mono);color:var(--text-muted);text-transform:uppercase;letter-spacing:.1em;margin-bottom:8px;font-size:.7rem;display:block}.waitlist-modal input[type=email]{box-sizing:border-box;background:var(--bg-deep);border:2px solid var(--border-subtle);border-radius:var(--radius-md);width:100%;color:var(--text-primary);margin-bottom:8px;padding:14px 16px;font-size:1rem;transition:border-color .2s,box-shadow .2s}.waitlist-modal input[type=email]:focus{border-color:var(--accent-primary);outline:none;box-shadow:0 0 0 3px #5423e726}.waitlist-modal input[type=email]::placeholder{color:var(--text-muted)}.waitlist-modal-actions{gap:12px;margin-top:24px;display:flex}.waitlist-confirm-btn,.waitlist-cancel-btn{background:var(--bg-panel-elevated);border:1px solid var(--border-bright);color:var(--text-primary);font-family:var(--font-mono);border-radius:var(--radius-md);cursor:pointer;flex:1;justify-content:center;align-items:center;gap:8px;padding:14px 20px;font-size:.8rem;font-weight:500;transition:all .2s;display:inline-flex}.waitlist-confirm-btn{background:var(--accent-primary);border-color:var(--accent-primary);color:#fff;font-weight:600;box-shadow:0 4px 12px #5423e74d}.waitlist-confirm-btn:hover:not(:disabled){background:#6b3bf5;transform:translateY(-1px);box-shadow:0 6px 20px #5423e766}.waitlist-cancel-btn:hover:not(:disabled){border-color:var(--border-active);background:var(--bg-panel)}.waitlist-confirm-btn:disabled,.waitlist-cancel-btn:disabled{opacity:.5;cursor:not-allowed;transform:none}.waitlist-success{text-align:center;padding:24px 0}.waitlist-success h3{color:var(--accent-primary);margin-bottom:12px;font-size:1.5rem}.waitlist-success p{color:var(--text-secondary);margin:0 0 24px;font-size:.95rem}.waitlist-success .waitlist-confirm-btn{flex:none;min-width:120px;margin:0 auto}.beta-badge{border:1px solid var(--accent-primary-dim);color:var(--accent-primary);font-family:var(--font-mono);text-transform:uppercase;letter-spacing:.1em;background:#5423e726;border-radius:20px;align-items:center;margin-left:12px;padding:4px 10px;font-size:.65rem;font-weight:600;display:inline-flex}.script-loading-overlay{border-radius:var(--radius-md);z-index:10;color:var(--text-primary);background:#000000b3;flex-direction:column;justify-content:center;align-items:center;gap:12px;font-size:.85rem;display:flex;position:absolute;inset:0}:root[data-theme=light] .script-loading-overlay{background:#ffffffd9}.script-loading-spinner{border:3px solid #9382c84d;border-top-color:#9382c8e6;border-radius:50%;width:32px;height:32px;animation:.8s linear infinite spinnerSpin}@keyframes spinnerSpin{to{transform:rotate(360deg)}}.demo-click-interceptor{display:contents}.demo-click-interceptor>.sidebar-zone,.demo-click-interceptor>.main-zone{position:relative}.demo-click-interceptor>.sidebar-zone:after,.demo-click-interceptor>.main-zone:after{content:"";z-index:100;cursor:pointer;position:absolute;inset:0}
