:root{--bg-color:#f7f7f9;--bg-gradient:#f7f7f9;--surface-color:#fff;--surface-border:#e4e4e7;--primary-color:#ff6b6b;--primary-gradient:linear-gradient(135deg, #ff6b6b 0%, #ff8e53 100%);--primary-glow:#ff6b6b40;--text-main:#18181b;--text-muted:#71717a;--text-dark:#fff;--font-heading:"Outfit", sans-serif;--font-body:"Inter", sans-serif;--radius-sm:4px;--radius-md:6px;--radius-lg:8px;--radius-full:9999px;--transition:all .3s cubic-bezier(.4, 0, .2, 1)}*{box-sizing:border-box;margin:0;padding:0}body{font-family:var(--font-body);background:var(--bg-gradient);color:var(--text-main);-webkit-font-smoothing:antialiased;background-image:url("data:image/svg+xml,%3Csvg viewBox='0 0 200 200' xmlns='http://www.w3.org/2000/svg'%3E%3Cfilter id='noiseFilter'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='0.65' numOctaves='3' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23noiseFilter)' opacity='0.03'/%3E%3C/svg%3E");background-attachment:fixed;min-height:100vh;line-height:1.6}h1,h2,h3,h4,h5,h6{font-family:var(--font-heading);font-weight:700;line-height:1.2}h1{letter-spacing:-.02em;font-size:3rem}h2{letter-spacing:-.01em;font-size:2.25rem}a{color:var(--primary-color);transition:var(--transition);text-decoration:none}a:hover{filter:brightness(1.2)}button{font-family:var(--font-heading);cursor:pointer;transition:var(--transition);background:0 0;border:none;outline:none}.glass-panel{background:var(--surface-color);border:1px solid var(--primary-color);border-radius:var(--radius-md);box-shadow:0 8px 24px #0000000d}.text-gradient{background:var(--primary-gradient);-webkit-text-fill-color:transparent;-webkit-background-clip:text;background-clip:text}.btn-primary{background:var(--primary-gradient);color:#fff;border-radius:var(--radius-full);box-shadow:0 4px 14px var(--primary-glow);justify-content:center;align-items:center;gap:.5rem;padding:.75rem 1.5rem;font-size:1rem;font-weight:600;display:inline-flex}.btn-primary:hover{transform:translateY(-2px);box-shadow:0 6px 20px #6366f166}.btn-secondary{background:var(--surface-color);color:var(--text-main);border-radius:var(--radius-full);border:1px solid var(--surface-border);justify-content:center;align-items:center;gap:.5rem;padding:.75rem 1.5rem;font-size:1rem;font-weight:600;display:inline-flex}.btn-secondary:hover{background:#ffffff14;transform:translateY(-2px)}.container{padding:0 2rem}@keyframes fadeIn{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}.animate-fade-in{animation:.6s ease-out forwards fadeIn}.app-container{flex-direction:column;min-height:100vh;display:flex}.header{border-bottom:1px solid var(--primary-color);background:var(--surface-color);z-index:50;padding:.75rem 0;position:sticky;top:0;box-shadow:0 4px 16px #0000000d}.header-content{justify-content:space-between;align-items:center;display:flex}.header-center-nav{flex:1;align-items:center;gap:1rem;margin-left:2rem;display:flex}.nav-link{color:var(--text-muted);transition:var(--transition);align-items:center;gap:.5rem;font-size:.95rem;font-weight:500;display:flex}.nav-link:hover{color:var(--text-main);filter:none}.nav-link-primary:hover{color:#fff;filter:none;cursor:pointer;transform:translateY(-2px);box-shadow:0 4px 16px #00000026}.header-actions{align-items:center;gap:1rem;display:flex}.header-divider{background:var(--surface-border);width:1px;height:24px;margin:0 .5rem}.icon-btn{width:40px;height:40px;color:var(--text-muted);transition:var(--transition);background:0 0;border-radius:50%;justify-content:center;align-items:center;display:flex}.icon-btn:hover{color:var(--text-main);background:#ffffff0d}.logo{font-family:var(--font-heading);letter-spacing:-.02em;align-items:center;gap:.75rem;font-size:1.5rem;font-weight:800;display:flex}.logo-icon{background:var(--primary-gradient);color:#fff;border-radius:12px;justify-content:center;align-items:center;padding:.5rem;display:flex}.main-content{flex:1}.hero-section{text-align:center;margin-top:4rem;margin-bottom:4rem}.hero-section p{color:var(--text-muted);max-width:600px;margin:1rem auto 2rem;font-size:1.25rem}.upload-grid{grid-template-columns:1fr 1fr;gap:2rem;margin-bottom:3rem;display:grid}.upload-zone{text-align:center;border:1px solid var(--surface-border);border-radius:var(--radius-md);transition:var(--transition);cursor:pointer;background:var(--surface-color);padding:3rem 2rem}.upload-zone:hover,.upload-zone.active{border:1px solid var(--primary-color);transform:translateY(-2px)}.upload-icon{color:var(--primary-color);margin-bottom:1rem}.upload-zone h3{margin-bottom:.5rem}.upload-zone p{color:var(--text-muted);font-size:.9rem}.file-list{text-align:left;flex-direction:column;gap:.5rem;margin-top:1rem;display:flex}.file-item{background:var(--surface-color);border-radius:var(--radius-sm);align-items:center;gap:.5rem;padding:.5rem 1rem;font-size:.85rem;display:flex}.processing-state{text-align:center;padding:4rem 0}.loader{border:4px solid var(--surface-border);border-top-color:var(--primary-color);border-radius:50%;width:64px;height:64px;margin:0 auto 2rem;animation:1s linear infinite spin}@keyframes spin{to{transform:rotate(360deg)}}.processing-steps{text-align:left;max-width:400px;margin:0 auto}.step{color:var(--text-muted);align-items:center;gap:1rem;margin-bottom:1rem;display:flex}.step.active{color:var(--primary-color);font-weight:600}.step.done{color:var(--text-main)}.review-section{flex-direction:column;gap:2rem;display:flex}.narrative-editor{padding:2rem}.editor-header{justify-content:space-between;align-items:center;margin-bottom:2rem;display:flex}.narrative-block{margin-bottom:2rem}.narrative-block h4{color:var(--text-muted);text-transform:uppercase;letter-spacing:.05em;margin-bottom:.75rem;font-size:.9rem}textarea.editable-text{background:var(--bg-color);border:1px solid var(--surface-border);width:100%;color:var(--text-main);border-radius:var(--radius-md);font-family:var(--font-body);resize:vertical;min-height:100px;transition:var(--transition);padding:1rem;font-size:1rem;line-height:1.6;box-shadow:inset 0 2px 4px #0000000d}textarea.editable-text:focus{border-color:var(--primary-color);box-shadow:inset 0 2px 4px #0000000d, 0 0 0 1px var(--primary-color);outline:none}.video-preview{width:100%;margin-bottom:2rem}.video-container{border-radius:var(--radius-md);background:#000;justify-content:center;width:100%;max-height:500px;margin-bottom:1.5rem;display:flex;position:relative;overflow:hidden;box-shadow:0 20px 40px #0006}.video-placeholder{color:var(--text-muted);background:linear-gradient(135deg,#1e1e24 0%,#0a0a0c 100%);flex-direction:column;justify-content:center;align-items:center;display:flex;position:absolute;inset:0}.play-button{background:var(--primary-gradient);color:#fff;width:64px;height:64px;box-shadow:0 8px 24px var(--primary-glow);border-radius:50%;justify-content:center;align-items:center;margin-bottom:1rem;display:flex}.video-controls{gap:1rem;display:flex}.video-controls .btn-primary{flex:1}@media (width<=900px){.upload-grid{grid-template-columns:1fr}.video-preview{position:static}}.modal-overlay{z-index:100;background:#f4f4f5e6;justify-content:center;align-items:center;display:flex;position:fixed;inset:0}.modal-content{background:var(--surface-color);border:1px solid var(--primary-color);border-radius:var(--radius-md);text-align:center;width:90%;max-width:800px;padding:3rem;position:relative;box-shadow:0 24px 48px #0000001a}.teleprompter-text{font-size:2rem;line-height:1.6;font-family:var(--font-heading);color:var(--text-muted);border-radius:var(--radius-md);scroll-behavior:smooth;max-height:40vh;margin:2rem 0;padding:1rem;overflow-y:auto;box-shadow:inset 0 0 20px #0000000d}.teleprompter-text::-webkit-scrollbar{width:6px}.teleprompter-text::-webkit-scrollbar-track{background:#0000000d;border-radius:4px}.teleprompter-text::-webkit-scrollbar-thumb{background:var(--primary-color);border-radius:4px}.teleprompter-word{color:var(--text-muted);margin-right:.3em;transition:color .3s,transform .2s;display:inline-block}.teleprompter-word.upcoming{color:var(--text-muted)}.teleprompter-word.current{color:var(--primary-color);text-shadow:0 0 12px var(--primary-glow);transform:scale(1.1)}.teleprompter-word.completed{color:#10b981;text-shadow:0 0 12px #10b98166}.record-btn{color:#fff;cursor:pointer;width:80px;height:80px;transition:var(--transition);background:#ef4444;border-radius:50%;justify-content:center;align-items:center;margin:0 auto;display:flex;box-shadow:0 0 20px #ef444466}.record-btn:hover{transform:scale(1.05)}.record-btn.recording{animation:1.5s infinite pulse-red}@keyframes pulse-red{0%{box-shadow:0 0 #ef4444b3}70%{box-shadow:0 0 0 20px #ef444400}to{box-shadow:0 0 #ef444400}}
