@import"https://fonts.googleapis.com/css2?family=Courier+Prime:ital,wght@0,400;0,700;1,400&family=Inter:wght@300;400;500;600;700&family=Oswald:wght@500;700&family=Playfair+Display:ital,wght@0,600;0,900;1,600&family=Special+Elite&family=Alex+Brush&family=Dancing+Script:wght@700&family=Great+Vibes&family=Pacifico&family=Sacramento&family=Montserrat:wght@700&display=swap";@font-face{font-family:Nigelina;src:local("Nigelina"),local("Nigelina Regular"),local("Nigelina-Regular")}@font-face{font-family:Hello Sister;src:local("Hello Sister"),local("Hello Sister Script"),local("HelloSister")}:root{--bg-app: #0b0f17;--bg-sidebar: #111622;--bg-panel: #161c2b;--bg-card: #1c2336;--bg-hover: rgba(255, 255, 255, .05);--bg-active: rgba(255, 255, 255, .09);--bg-subtle: rgba(255, 255, 255, .03);--border-subtle: rgba(255, 255, 255, .08);--border-default: rgba(255, 255, 255, .14);--border-strong: rgba(255, 255, 255, .22);--accent-primary: #6366f1;--accent-primary-hover: #4f46e5;--accent-glow: rgba(99, 102, 241, .25);--accent-cyan: #0284c7;--accent-emerald: #10b981;--accent-amber: #f59e0b;--accent-rose: #f43f5e;--text-primary: #f8fafc;--text-secondary: #94a3b8;--text-tertiary: #64748b;--text-muted: #475569;--font-sans: "Inter", -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, sans-serif;--font-mono: "JetBrains Mono", monospace;--radius-sm: 4px;--radius-md: 6px;--radius-lg: 10px;--radius-xl: 14px;--shadow-sm: 0 1px 3px rgba(0,0,0,.3);--shadow-md: 0 4px 12px rgba(0,0,0,.35)}[data-theme=light]{--bg-app: #f8fafc;--bg-sidebar: #ffffff;--bg-panel: #ffffff;--bg-card: #f1f5f9;--bg-hover: rgba(0, 0, 0, .04);--bg-active: rgba(0, 0, 0, .08);--bg-subtle: rgba(0, 0, 0, .02);--border-subtle: rgba(0, 0, 0, .08);--border-default: rgba(0, 0, 0, .13);--border-strong: rgba(0, 0, 0, .22);--accent-primary: #4f46e5;--accent-primary-hover: #4338ca;--accent-glow: rgba(79, 70, 229, .15);--accent-cyan: #0284c7;--accent-emerald: #059669;--accent-amber: #d97706;--accent-rose: #e11d48;--text-primary: #0f172a;--text-secondary: #475569;--text-tertiary: #64748b;--text-muted: #94a3b8;--shadow-sm: 0 1px 3px rgba(0,0,0,.06);--shadow-md: 0 4px 12px rgba(0,0,0,.08)}*{box-sizing:border-box;margin:0;padding:0}body,html,#root{width:100%;height:100%;overflow:hidden;background-color:var(--bg-app);color:var(--text-primary);font-family:var(--font-sans);font-size:13px;line-height:1.5;-webkit-font-smoothing:antialiased}::-webkit-scrollbar{width:6px;height:6px}::-webkit-scrollbar-track{background:transparent}::-webkit-scrollbar-thumb{background:#ffffff1f;border-radius:3px}::-webkit-scrollbar-thumb:hover{background:#ffffff38}.app-container{display:flex;width:100vw;height:100vh;overflow:hidden;background-color:var(--bg-app)}.sidebar{width:240px;height:100%;background-color:var(--bg-sidebar);border-right:1px solid var(--border-subtle);display:flex;flex-direction:column;-webkit-user-select:none;user-select:none;flex-shrink:0}.main-content{flex:1;display:flex;flex-direction:column;height:100%;overflow:hidden;position:relative}.header{height:48px;border-bottom:1px solid var(--border-subtle);display:flex;align-items:center;justify-content:space-between;padding:0 16px;background-color:#0e0f14cc;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);z-index:10}.btn{display:inline-flex;align-items:center;justify-content:center;gap:6px;height:28px;padding:0 10px;font-size:12px;font-weight:500;border-radius:var(--radius-md);border:1px solid var(--border-default);background:var(--bg-panel);color:var(--text-primary);cursor:pointer;transition:all .15s cubic-bezier(.16,1,.3,1);outline:none}.btn:hover{background:var(--bg-active);border-color:var(--border-strong)}.btn-primary{background:var(--accent-primary);border-color:var(--accent-primary);color:#fff;box-shadow:0 1px 8px var(--accent-glow)}.btn-primary:hover{background:var(--accent-primary-hover);border-color:var(--accent-primary-hover)}.btn-ghost{background:transparent;border-color:transparent;color:var(--text-secondary)}.btn-ghost:hover{background:var(--bg-hover);color:var(--text-primary)}.btn-danger{background:#f43f5e1a;border-color:#f43f5e4d;color:var(--accent-rose)}.btn-danger:hover{background:#f43f5e33}kbd{display:inline-flex;align-items:center;justify-content:center;padding:1px 5px;font-family:var(--font-mono);font-size:10px;font-weight:600;color:var(--text-tertiary);background:#ffffff0f;border:1px solid var(--border-subtle);border-radius:3px}.glass-card{background:#13141c99;border:1px solid var(--border-subtle);-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px);border-radius:var(--radius-lg)}@keyframes fadeIn{0%{opacity:0;transform:translateY(4px)}to{opacity:1;transform:translateY(0)}}.animate-fade-in{animation:fadeIn .2s ease-out forwards}.timecode{font-family:var(--font-mono);letter-spacing:-.5px;color:var(--accent-cyan)}@keyframes anim-scale-up{0%{transform:translate(-50%,-50%) scale(.2);opacity:0}to{transform:translate(-50%,-50%) scale(1);opacity:1}}@keyframes anim-rise-behind{0%{transform:translate(-50%,calc(-50% + 120px)) scale(.7);opacity:0}to{transform:translate(-50%,-50%) scale(1);opacity:1}}@keyframes anim-fade-in{0%{opacity:0}to{opacity:1}}@keyframes anim-slide-in{0%{transform:translate(calc(-50% - 200px),-50%);opacity:0}to{transform:translate(-50%,-50%);opacity:1}}.animate-scale-up{animation:anim-scale-up var(--anim-duration, 2s) cubic-bezier(.16,1,.3,1) forwards}.animate-rise-behind{animation:anim-rise-behind var(--anim-duration, 2s) cubic-bezier(.16,1,.3,1) forwards}.animate-fade-in{animation:anim-fade-in var(--anim-duration, 2s) ease-out forwards}.animate-slide-in{animation:anim-slide-in var(--anim-duration, 2s) cubic-bezier(.16,1,.3,1) forwards}.caption-studio-container{display:flex;flex-direction:column;height:100%;width:100%;background:var(--bg-app);overflow:hidden}.caption-steps-header{height:52px;background:var(--bg-sidebar);border-bottom:1px solid var(--border-subtle);display:flex;align-items:center;justify-content:center;gap:32px;padding:0 24px}.caption-step-item{display:flex;align-items:center;gap:8px;font-size:13px;font-weight:500;color:var(--text-tertiary);cursor:pointer;transition:all .2s ease;position:relative;padding:6px 12px;border-radius:var(--radius-md)}.caption-step-item:hover:not(.disabled){color:var(--text-primary);background:var(--bg-hover)}.caption-step-item.active{color:var(--accent-primary);font-weight:600;background:#5e6ad214}.caption-step-item.disabled{cursor:not-allowed;opacity:.5}.caption-step-number{display:flex;align-items:center;justify-content:center;width:20px;height:20px;border-radius:50%;background:#ffffff0d;border:1px solid var(--border-subtle);font-size:11px;font-family:var(--font-mono);color:var(--text-secondary)}.caption-step-item.active .caption-step-number{background:var(--accent-primary);color:#fff;border-color:var(--accent-primary)}.upload-container{flex:1;display:flex;flex-direction:column;align-items:center;justify-content:center;padding:40px;max-width:600px;margin:0 auto}.upload-dropzone{width:100%;min-height:280px;border:2px dashed var(--border-strong);border-radius:var(--radius-xl);background:var(--bg-panel);display:flex;flex-direction:column;align-items:center;justify-content:center;padding:48px 24px;text-align:center;cursor:pointer;transition:all .3s cubic-bezier(.16,1,.3,1);box-shadow:0 8px 30px #0006}.upload-dropzone:hover{border-color:var(--accent-primary);background:#5e6ad205;transform:translateY(-2px);box-shadow:0 12px 40px #5e6ad21a}.ratio-selector-container{flex:1;display:flex;flex-direction:column;align-items:center;justify-content:center;padding:40px;max-width:800px;margin:0 auto}.ratio-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:20px;width:100%;margin-top:32px}.ratio-card{background:var(--bg-panel);border:1px solid var(--border-default);border-radius:var(--radius-lg);padding:20px;display:flex;flex-direction:column;align-items:center;gap:16px;cursor:pointer;transition:all .25s cubic-bezier(.16,1,.3,1);position:relative;overflow:hidden}.ratio-card:hover{transform:translateY(-4px);border-color:var(--border-strong);box-shadow:0 8px 24px #0000004d}.ratio-card.selected{border-color:var(--accent-primary);background:#5e6ad20a;box-shadow:0 0 0 1px var(--accent-primary),0 8px 32px #5e6ad226}.ratio-visual-preview{width:100px;height:100px;background:#0000004d;border:1px solid var(--border-subtle);border-radius:var(--radius-sm);display:flex;align-items:center;justify-content:center;position:relative}.ratio-visual-box{background:#5e6ad240;border:2px solid var(--accent-primary);border-radius:2px;transition:all .2s ease}.ratio-card.selected .ratio-visual-box{background:#5e6ad266;box-shadow:0 0 8px var(--accent-glow)}.canva-workspace{flex:1;display:flex;flex-direction:column;height:calc(100vh - 48px);background:var(--bg-app);overflow:hidden;position:relative}.canva-top-bar{height:44px;background:var(--bg-sidebar);border-bottom:1px solid var(--border-subtle);display:flex;align-items:center;justify-content:space-between;padding:0 16px;flex-shrink:0;z-index:20}.canva-main-body{flex:1;display:flex;min-height:0;overflow:hidden;position:relative}.canva-icon-dock{width:64px;background:var(--bg-sidebar);border-right:1px solid var(--border-subtle);display:flex;flex-direction:column;align-items:center;padding:12px 0;gap:8px;flex-shrink:0;z-index:15}.dock-btn{width:52px;height:52px;border-radius:var(--radius-lg);background:transparent;border:1px solid transparent;color:var(--text-secondary);display:flex;flex-direction:column;align-items:center;justify-content:center;gap:3px;cursor:pointer;transition:all .15s ease}.dock-btn:hover{background:var(--bg-hover);color:var(--text-primary)}.dock-btn.active{background:var(--bg-card);color:var(--accent-primary);border-color:var(--border-default);box-shadow:var(--shadow-sm)}.dock-btn span{font-size:9px;font-weight:600;letter-spacing:.2px}.canva-flyout-drawer{width:340px;background:var(--bg-sidebar);border-right:1px solid var(--border-subtle);display:flex;flex-direction:column;overflow:hidden;transition:width .25s cubic-bezier(.16,1,.3,1),opacity .2s ease;z-index:10;flex-shrink:0}.canva-flyout-drawer.collapsed{width:0px;border-right:none;opacity:0;pointer-events:none}.drawer-header{padding:12px 16px;border-bottom:1px solid var(--border-subtle);display:flex;align-items:center;justify-content:space-between;background:var(--bg-subtle)}.drawer-content{flex:1;overflow-y:auto;padding:14px;display:flex;flex-direction:column;gap:12px}.canva-stage-area{flex:1;display:flex;flex-direction:column;align-items:center;justify-content:space-between;background:var(--bg-app);position:relative;overflow:hidden;padding:10px 16px;min-height:0;gap:8px}.canva-floating-context-bar{display:flex;align-items:center;gap:8px;padding:6px 14px;background:var(--bg-sidebar);border:1px solid var(--border-default);border-radius:24px;box-shadow:var(--shadow-md);z-index:10;margin-bottom:4px;flex-shrink:0}.canva-video-stage-card{flex:1;display:flex;align-items:center;justify-content:center;width:100%;min-height:0;position:relative;overflow:auto}.canva-playback-bar{width:auto;max-width:680px;padding:6px 14px;background:var(--bg-sidebar);border:1px solid var(--border-subtle);border-radius:var(--radius-md);display:flex;align-items:center;justify-content:space-between;gap:12px;box-shadow:var(--shadow-sm);z-index:10;flex-shrink:0;transition:all .2s ease}.canva-playback-bar.collapsed{max-width:240px;padding:4px 10px}.canva-bottom-timeline{height:180px;background:var(--bg-sidebar);border-top:1px solid var(--border-subtle);display:flex;flex-direction:column;flex-shrink:0;z-index:15;transition:height .2s ease}.canva-bottom-timeline.collapsed{height:36px;overflow:hidden}.workspace-grid{flex:1;display:grid;grid-template-columns:420px 1fr 340px;grid-template-rows:44px 1fr;height:calc(100vh - 48px);overflow:hidden;transition:grid-template-columns .25s ease}.workspace-left-panel{grid-column:1;grid-row:2;background:var(--bg-sidebar);border-right:1px solid var(--border-subtle);display:flex;flex-direction:column;overflow:hidden;transition:all .25s ease}.workspace-canvas-panel{grid-column:2;grid-row:2;background:var(--bg-app);display:flex;flex-direction:column;align-items:center;justify-content:center;padding:12px 16px;position:relative;overflow:hidden}.workspace-right-panel{grid-column:3;grid-row:2;background:var(--bg-sidebar);border-left:1px solid var(--border-subtle);display:flex;flex-direction:column;overflow:hidden;transition:all .25s ease}.right-panel-tabs{display:flex;background:#00000040;border-bottom:1px solid var(--border-subtle);padding:6px;gap:6px}.right-panel-tab-btn{flex:1;padding:8px 12px;border-radius:var(--radius-md);border:1px solid transparent;background:transparent;color:var(--text-secondary);font-size:12px;font-weight:600;cursor:pointer;display:flex;align-items:center;justify-content:center;gap:6px;transition:all .15s ease}.right-panel-tab-btn:hover{color:var(--text-primary);background:#ffffff0a}.right-panel-tab-btn.active{background:var(--accent-primary);border-color:#fff3;color:#fff;box-shadow:0 2px 8px #5e6ad266}.template-card{background:var(--bg-card);border:1px solid var(--border-subtle);border-radius:var(--radius-lg);padding:14px;cursor:pointer;transition:all .2s ease;display:flex;flex-direction:column;gap:10px;position:relative;overflow:hidden}.template-card:hover{border-color:var(--accent-cyan);transform:translateY(-2px);box-shadow:0 4px 16px #06b6d440}.template-card.active{border-color:var(--accent-primary);box-shadow:0 0 16px #5e6ad266}.transition-card{background:var(--bg-card);border:1px solid var(--border-subtle);border-radius:var(--radius-md);padding:12px;cursor:pointer;transition:all .2s ease;display:flex;align-items:center;gap:12px}.transition-card:hover{border-color:var(--accent-primary);background:#5e6ad214}.transition-card.active{border-color:var(--accent-cyan);background:#06b6d41f;box-shadow:0 0 12px #06b6d44d}@keyframes caption-pop{0%{opacity:0;transform:translate(-50%,-50%) scale(.5)}to{opacity:1;transform:translate(-50%,-50%) scale(1)}}@keyframes caption-slide-left{0%{opacity:0;transform:translate(-20%,-50%)}to{opacity:1;transform:translate(-50%,-50%)}}@keyframes caption-slide-right{0%{opacity:0;transform:translate(-80%,-50%)}to{opacity:1;transform:translate(-50%,-50%)}}@keyframes caption-slide-up{0%{opacity:0;transform:translate(-50%)}to{opacity:1;transform:translate(-50%,-50%)}}@keyframes caption-slide-down{0%{opacity:0;transform:translate(-50%,-100%)}to{opacity:1;transform:translate(-50%,-50%)}}@keyframes caption-fade-in{0%{opacity:0}to{opacity:1}}@keyframes caption-reveal{0%{clip-path:inset(0 100% 0 0);opacity:1}to{clip-path:inset(0 0% 0 0);opacity:1}}@keyframes caption-typewriter{0%{opacity:0;transform:translate(-50%,-50%) scaleX(.3)}60%{opacity:1;transform:translate(-50%,-50%) scaleX(1.08)}to{opacity:1;transform:translate(-50%,-50%) scaleX(1)}}.caption-line-card{background:var(--bg-card);border:1px solid var(--border-subtle);border-radius:var(--radius-md);padding:10px 12px;display:flex;flex-direction:column;gap:8px;transition:all .15s ease}.caption-line-card.active{border-color:var(--accent-cyan);background:#06b6d414;box-shadow:0 0 12px #06b6d433}.line-header{display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid rgba(255,255,255,.05);padding-bottom:6px}.line-badge{font-family:var(--font-mono);font-size:10px;font-weight:700;color:var(--accent-primary);background:#5e6ad226;padding:2px 6px;border-radius:4px}.line-time-badge{font-family:var(--font-mono);font-size:10px;color:var(--text-tertiary)}.timeline-track-container{flex:1;overflow-x:auto;overflow-y:hidden;position:relative;background:var(--bg-panel);margin:12px 16px;border:1px solid var(--border-subtle);border-radius:var(--radius-md)}.timeline-ruler{height:24px;background:#0003;border-bottom:1px solid var(--border-subtle);position:relative}.timeline-ruler-tick{position:absolute;top:0;width:1px;height:6px;background:var(--text-muted)}.timeline-ruler-tick.major{height:12px;background:var(--text-tertiary)}.timeline-ruler-label{position:absolute;top:8px;font-family:var(--font-mono);font-size:9px;color:var(--text-tertiary);transform:translate(-50%)}.timeline-playhead{position:absolute;top:0;bottom:0;width:3px;background:var(--accent-rose);z-index:20;pointer-events:auto;cursor:ew-resize;touch-action:none}.timeline-playhead:before{content:"";position:absolute;top:0;bottom:0;left:-8px;right:-8px;background:transparent;cursor:ew-resize}.timeline-playhead-cap{position:absolute;top:-4px;left:50%;transform:translate(-50%);width:14px;height:14px;background:var(--accent-rose);border:2px solid #ffffff;border-radius:50%;box-shadow:0 0 8px #f43f5ecc;cursor:ew-resize}.word-chip{padding:4px 8px;border-radius:var(--radius-sm);font-size:12px;cursor:pointer;transition:all .15s ease;-webkit-user-select:none;user-select:none}.word-chip:hover{transform:translateY(-1px)}.top-formatting-toolbar{display:flex;align-items:center;gap:12px;padding:6px 16px;background:var(--bg-sidebar);border-bottom:1px solid var(--border-subtle);flex-wrap:nowrap;overflow-x:auto;overflow-y:hidden;z-index:20;width:100%;scrollbar-width:none}.top-formatting-toolbar::-webkit-scrollbar{display:none}.toolbar-divider{width:1px;height:18px;background:var(--border-default)}.toolbar-group{display:flex;align-items:center;gap:4px}.toolbar-select{background:var(--bg-panel);border:1px solid var(--border-default);border-radius:var(--radius-sm);color:var(--text-primary);font-size:12px;padding:4px 8px;outline:none;cursor:pointer;transition:border-color .15s}.toolbar-select:hover{border-color:var(--border-strong)}.toolbar-btn{background:transparent;border:1px solid transparent;border-radius:var(--radius-sm);color:var(--text-secondary);width:28px;height:28px;display:flex;align-items:center;justify-content:center;cursor:pointer;transition:all .15s}.toolbar-btn:hover{background:var(--bg-hover);color:var(--text-primary)}.toolbar-btn.active{background:var(--accent-primary);color:#fff;border-color:var(--accent-primary)}.color-dot{width:12px;height:12px;border-radius:50%;border:1px solid rgba(255,255,255,.2)}.vertical-size-slider-wrapper{position:relative;height:180px;width:36px;display:flex;flex-direction:column;align-items:center;justify-content:center;z-index:20;background:var(--bg-card);border:1px solid var(--border-subtle);border-radius:16px;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);padding:12px 0;flex-shrink:0;margin-right:12px;box-shadow:var(--shadow-sm)}.vertical-size-slider{-webkit-appearance:none;-moz-appearance:none;appearance:none;width:130px;height:4px;background:#fff3;border-radius:2px;outline:none;transform:rotate(-90deg);cursor:pointer}.vertical-size-slider::-webkit-slider-thumb{-webkit-appearance:none;-moz-appearance:none;appearance:none;width:16px;height:16px;border-radius:50%;background:#fff;border:2px solid var(--accent-primary);box-shadow:0 0 8px #00000080;cursor:pointer;transition:transform .1s}.vertical-size-slider::-webkit-slider-thumb:hover{transform:scale(1.2)}.instagram-font-carousel{display:flex;align-items:center;gap:8px;padding:8px 16px;background:#0003;border-bottom:1px solid var(--border-subtle);overflow-x:auto;scrollbar-width:none}.instagram-font-carousel::-webkit-scrollbar{display:none}.instagram-font-pill{flex-shrink:0;padding:6px 14px;border-radius:18px;background:#ffffff0d;border:1px solid var(--border-subtle);color:var(--text-secondary);font-size:11px;font-weight:600;text-transform:uppercase;letter-spacing:.5px;cursor:pointer;transition:all .2s cubic-bezier(.16,1,.3,1)}.instagram-font-pill:hover{background:#ffffff1a;color:var(--text-primary)}.instagram-font-pill.active{background:#fff;color:#000;border-color:#fff;transform:scale(1.05);box-shadow:0 4px 12px #fff3}.effect-indicator{font-size:13px;font-weight:800;width:28px;height:28px;border-radius:var(--radius-sm);display:flex;align-items:center;justify-content:center;border:1px solid var(--border-default);cursor:pointer;transition:all .15s}.timeline-resize-handle{position:absolute;top:0;bottom:0;width:6px;background:#ffffff59;cursor:ew-resize;z-index:10;transition:background .15s}.timeline-resize-handle:hover{background:#fff}.timeline-resize-handle.left{left:0;border-radius:4px 0 0 4px}.timeline-resize-handle.right{right:0;border-radius:0 4px 4px 0}.word-menu-item{display:flex;align-items:center;gap:8px;width:100%;padding:6px 12px;background:transparent;border:none;color:var(--text-primary)!important;font-size:11px;text-align:left;cursor:pointer;transition:all .15s ease}.word-menu-item:hover{background:var(--bg-hover)!important;color:var(--accent-cyan)!important}
