:root{--bg-primary:#0a0908;--bg-secondary:#171615;--bg-elevated:#232120;--bg-hover:#302d2b;--bg-input:#1a1817;--bg-tertiary:#2a2827;--text-primary:#fafaf9;--text-secondary:#d6d3d1;--text-tertiary:#c1bbb4;--text-disabled:#8b857f;--text-on-accent:#fff;--text-on-light:#000;--border-subtle:#fafaf91f;--border-default:#fafaf92e;--border-strong:#fafaf93d;--border-hover:#ffffff40;--white-3:#ffffff08;--white-4:#ffffff0a;--white-6:#ffffff0f;--white-8:#ffffff14;--white-10:#ffffff1a;--white-12:#ffffff1f;--white-15:#ffffff26;--white-20:#fff3;--accent-primary:#0e7490;--accent-primary-hover:#0b5c73;--accent-primary-muted:#095164;--accent-primary-rgb:14, 116, 144;--accent-bg:#0e74901a;--color-accent:var(--accent-primary);--accent:var(--accent-primary);--accent-hover:var(--accent-primary-hover);--color-success:#6b8e7f;--color-success-bg:#1e2621;--color-success-border:#3a4a42;--color-warning:#a68d5f;--color-warning-bg:#262218;--color-warning-border:#4a4035;--color-error:#996b6b;--color-error-bg:#261e1e;--color-error-border:#4a3a3a;--color-info:#8b83a6;--color-info-bg:#1f1e24;--color-info-border:#3d3a47;--color-pro:#f59e0b;--color-pro-hover:#d97706;--color-pro-bg:#261f0a;--color-pro-border:#4a3a14;--color-pro-text:#000;--color-free:#4ade80;--color-free-bg:#22c55ee6;--color-turbo:#e91e63;--color-turbo-hover:#c2185b;--color-turbo-muted:#f06292;--color-turbo-glow:#e91e634d;--color-turbo-bg:#e91e631a;--color-turbo-border:#e91e634d;--color-avatar-from:#667eea;--color-avatar-to:#764ba2;--color-indigo:#6366f1;--color-indigo-to:#8b5cf6;--color-creator-bg:#3b82f633;--color-creator-text:#93c5fd;--color-pro-plan-bg:#a855f733;--color-pro-plan-text:#c4b5fd;--color-hierarchy-title:#5b9bd5;--color-hierarchy-subtitle:#7bc47f;--color-hierarchy-detail:#d4a95a;--spacing-xs:4px;--spacing-sm:8px;--spacing-compact:6px;--spacing-md-sm:12px;--spacing-md:16px;--spacing-lg:24px;--spacing-xl:32px;--spacing-2xl:48px;--space-1:8px;--space-2:16px;--space-3:24px;--space-4:32px;--space-6:48px;--space-8:64px;--radius-sm:0px;--radius-md:0px;--radius-lg:0px;--radius-xl:0px;--radius-full:0px;--shadow-sm:0 1px 3px #00000040, 0 1px 2px #00000026;--shadow-md:0 4px 12px #0000004d, 0 2px 4px #00000026;--shadow-lg:0 10px 25px #00000059, 0 4px 10px #0003;--shadow-xl:0 20px 40px #0006, 0 8px 16px #00000040;--shadow-accent:0 4px 16px #00000040;--shadow-xs:0 1px 2px #00000026;--shadow-inset-glow:0 2px 0 0 white inset, 0 2px 8px #ffffff24;--shadow-soft-glow:0 2px 8px #ffffff24;--shadow-ring-accent:0 0 0 2px #0e749026;--shadow-ring-accent-sm:0 0 0 1px #0e74901a;--shadow-ring-accent-lg:0 0 0 3px #0e74901f;--shadow-ring-accent-strong:0 0 0 4px #0e74902e, 0 1px 4px #0006;--shadow-ring-subtle:0 0 0 2px #ffffff12;--shadow-ring-white:0 0 0 3px #ffffff2e;--shadow-selected:0 1px 6px #0000004d, 0 0 0 2px #0e749026;--shadow-accent-glow:0 2px 8px #0e74904d;--shadow-cta:0 2px 12px #0e749040;--shadow-cta-hover:0 4px 20px #0e749059;--shadow-cta-active:0 1px 6px #0e749033;--shadow-card-hover:0 4px 16px #0006;--shadow-toolbar:0 2px 12px #0000004d;--shadow-card-elevated:0 0 0 1px #ffffff12, 0 2px 8px #0003;--shadow-ring-accent-with-depth:0 0 0 1px #0e749033, 0 4px 12px #0003;--focus-ring-offset:2px;--glass-bg:#ffffff08;--glass-border:#ffffff12;--glass-blur:blur(12px);--font-sans:"Inter Tight", "Inter", system-ui, -apple-system, sans-serif;--font-mono:"JetBrains Mono", "Courier New", monospace;--font-size-hero:32px;--font-size-h1:26px;--font-size-h2:20px;--font-size-h3:17px;--font-size-body:15px;--font-size-body-sm:14px;--font-size-small:13px;--font-size-xs:12px;--font-size-micro:11px;--font-normal:400;--font-medium:500;--font-semibold:600;--font-bold:700;--line-height-tight:1.2;--line-height-normal:1.5;--line-height-relaxed:1.75;--transition-fast:.15s ease;--transition-normal:.2s ease;--transition-slow:.3s ease;--accent-glow:0 0 0 3px #0e74902e;--focus-ring:2px solid var(--accent-primary);--touch-target-min:44px;--touch-target-comfortable:48px;--desktop-auth-bar-height:53px;--bottom-sheet-handle:32px;--safe-area-top:env(safe-area-inset-top,0px);--safe-area-bottom:env(safe-area-inset-bottom,0px);--safe-area-left:env(safe-area-inset-left,0px);--safe-area-right:env(safe-area-inset-right,0px);--bp-mobile:480px;--bp-phablet:768px;--bp-tablet:1024px;--bp-laptop:1440px;--bp-desktop:1920px;--sidebar-width-mobile:0px;--sidebar-width-phablet:200px;--sidebar-width-tablet:240px;--sidebar-width-desktop:clamp(240px, 22vw, 320px);--main-padding-desktop:32px;--preview-size-desktop:600px;--settings-width-desktop:clamp(280px, 24vw, 340px);--settings-width-tablet:300px;--preview-padding-mobile:8px;--preview-padding-tablet:12px;--preview-padding-desktop:16px;--preview-max-height-mobile:55vh;--preview-max-height-tablet:62vh;--preview-max-height-desktop:72vh;--timeline-height-mobile:80px;--timeline-height-tablet:100px;--timeline-height-desktop:120px;--timeline-thumb-mobile:60px;--timeline-thumb-tablet:90px;--timeline-thumb-desktop:120px;--font-base-mobile:14px;--font-base-tablet:15px;--font-base-desktop:16px;--mobile-header-height:56px;--mobile-cta-height:72px;--mobile-tab-min-height:44px;--mobile-tab-padding:8px 14px;--mobile-safe-bottom:env(safe-area-inset-bottom,0px);--mobile-content-padding:12px;--mobile-generate-btn-height:52px;--mobile-carousel-height:96px;--mobile-dim-rail-height:40px;--z-base:0;--z-above:1;--z-stack-mid:2;--z-stack-top:3;--z-preview:5;--z-canvas:9;--z-overlay:11;--z-grain:12;--z-timeline:15;--z-dropdown:25;--z-sticky:20;--z-toolbar:30;--z-mobile-cta:50;--z-mobile-header:100;--z-bottom-sheet-overlay:200;--z-bottom-sheet:210;--z-drawer:300;--z-modal:400;--z-toast:500;--z-tooltip:600;--z-onboarding:700;--header-height:48px;--accordion-header-height:48px;--accordion-padding:8px;--accordion-body-padding:8px;--accordion-gap:6px;--button-height-sm:32px;--button-height-md:40px;--button-height-lg:48px;--input-height:36px;--pill-height:36px;--slider-track-height:4px;--ctrl-sm:28px;--ctrl-md:34px;--ctrl-lg:40px;--sidebar-gap:8px;--sidebar-section-pad:10px;--sidebar-body-pad-x:12px;--cta-footer-height:180px;--control-height-xs:24px;--control-height-sm:28px;--control-height-md:32px;--control-height-lg:36px;--label-font-size:10px;--label-font-size-md:11px;--label-letter-spacing:.09em;--label-color:var(--text-tertiary);--panel-section-gap:6px;--panel-header-padding:5px 8px;--panel-body-padding:6px 8px;--panel-separator:1px solid var(--border-subtle);--panel-surface:#ffffff09;--panel-surface-hover:#ffffff0e;--panel-surface-active:#ffffff13;--panel-accent-surface:#0e749024;--panel-accent-border:#0e74906b;--pasteboard-bg:#141312;--pasteboard-dot-color:#ffffff0f;--pasteboard-dot-size:1px;--pasteboard-dot-spacing:16px;--hover-lift:0px;--hover-bg-shift:var(--white-4);--active-scale:.98}.bg-onix{background:#0a0a0a}.bg-marfim{color:#1a1a1a;background:#f8f8f6}.bg-grafite{background:#1f1f1f}.bg-nevoa{color:#1a1a1a;background:#e8e8e6}.bg-carvao{background:linear-gradient(#2a2a2a 0%,#0f0f0f 100%)}.bg-nevoa-asc{color:#1a1a1a;background:linear-gradient(#f5f5f3 0%,#d8d8d6 100%)}.bg-ardosia{background:linear-gradient(135deg,#1a2332 0%,#0f1419 100%)}.bg-musgo{background:linear-gradient(#1e241f 0%,#121714 100%)}.bg-terracota{background:radial-gradient(#2a2220 0%,#181412 100%)}.bg-lavanda{background:linear-gradient(#221f28 0%,#14121a 100%)}.bg-ambar{background:linear-gradient(135deg,#2a2318 0%,#181410 100%)}.bg-meia-noite{background:radial-gradient(#1a1f2e 0%,#0f1219 100%)}.btn-primary{background:var(--accent-primary);color:#fff;border:1px solid var(--accent-primary-hover);box-shadow:none;transition:background var(--transition-fast), border-color var(--transition-fast)}.btn-primary:hover{background:linear-gradient(135deg, var(--accent-primary-hover) 0%, var(--accent-primary) 100%);transform:translateY(-1px);box-shadow:0 4px 12px #00000040}.btn-primary:disabled{background:var(--bg-elevated);color:var(--text-tertiary);border:1px solid var(--border-default);box-shadow:none;cursor:not-allowed}.btn-secondary{background:var(--bg-elevated);color:var(--text-secondary);border:1px solid var(--border-default);transition:all .2s}.btn-secondary:hover{background:var(--bg-hover);color:var(--text-primary);border-color:var(--border-strong)}.preset-instagram{border:1px solid var(--accent-primary-muted);color:#a8c5d8;background:linear-gradient(135deg,#1a2332 0%,#0f1419 100%)}.preset-instagram:hover{border-color:var(--accent-primary);background:linear-gradient(135deg,#2a3342 0%,#1a2332 100%)}.preset-tiktok{border:1px solid var(--color-info-border);color:#b8b0cc;background:linear-gradient(135deg,#221f28 0%,#14121a 100%)}.preset-tiktok:hover{border-color:var(--color-info);background:linear-gradient(135deg,#2a2530 0%,#1c1a22 100%)}.preset-youtube{border:1px solid var(--color-error-border);color:#d4b5a8;background:linear-gradient(135deg,#2a2220 0%,#181412 100%)}.preset-youtube:hover{border-color:var(--color-error);background:linear-gradient(135deg,#352a28 0%,#2a2220 100%)}.preset-reaction{border:1px solid var(--color-success-border);color:#b5c9be;background:linear-gradient(135deg,#1e241f 0%,#121714 100%)}.preset-reaction:hover{border-color:var(--color-success);background:linear-gradient(135deg,#252d27 0%,#1a221c 100%)}.card-total{background:linear-gradient(135deg, var(--bg-secondary) 0%, var(--bg-elevated) 100%);border-left:3px solid var(--accent-primary);box-shadow:var(--shadow-md)}.card-done{background:linear-gradient(135deg, var(--color-success-bg) 0%, #232823 100%);border-left:3px solid var(--color-success);box-shadow:0 2px 8px #6b8e7f1a}.card-done .number{color:#8fa99f}.card-pending{background:linear-gradient(135deg, var(--color-warning-bg) 0%, #2a251e 100%);border-left:3px solid var(--color-warning);box-shadow:0 2px 8px #a68d5f1a}.card-pending .number{color:#bfa87f}.badge-count{background:var(--bg-elevated);color:var(--text-secondary);border:1px solid var(--border-default)}.badge-count-ok{background:linear-gradient(135deg, var(--color-success-bg) 0%, #232823 100%);color:#8fa99f;border:1px solid var(--color-success-border)}.badge-count-low{background:linear-gradient(135deg, var(--color-warning-bg) 0%, #2a251e 100%);color:#bfa87f;border:1px solid var(--color-warning-border)}.badge-count-high{background:linear-gradient(135deg, var(--color-error-bg) 0%, #2a2220 100%);color:#b5999a;border:1px solid var(--color-error-border)}.badge-count-text{background:linear-gradient(135deg, var(--color-info-bg) 0%, #232228 100%);color:#a8a0bb;border:1px solid var(--color-info-border)}.tag-portrait{-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);color:#a8c5d8;border-radius:var(--radius-md);background:#1a2332d9;border:1px solid #ffffff24;padding:3px 8px;font-size:10px}.tag-story{-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);color:#b8b0cc;border-radius:var(--radius-md);background:#221f28d9;border:1px solid #8b83a64d;padding:3px 8px;font-size:10px}.progress-bar{background:var(--bg-secondary);border-radius:var(--radius-sm);height:3px;overflow:hidden}.progress-fill{height:100%;transition:width .3s}.progress-high-priority{background:linear-gradient(90deg, var(--color-warning) 0%, #bfa87f 100%)}.progress-traits{background:linear-gradient(90deg, var(--accent-primary) 0%, var(--accent-primary-hover) 100%)}.progress-context{background:linear-gradient(90deg, var(--color-success) 0%, #7fa093 100%)}.progress-general{background:linear-gradient(90deg, var(--color-info) 0%, #9d95b8 100%)}.card:hover{transition:all .2s ease-out;transform:translateY(-2px);box-shadow:0 6px 16px #0003}.button:hover{transition:all .18s ease-out;transform:translateY(-1px);box-shadow:0 4px 12px #0003}.template-card:hover{border-color:var(--accent-primary);box-shadow:0 0 0 1px var(--accent-primary-muted);transition:all .15s}.selected{border:2px solid var(--accent-primary);box-shadow:0 0 0 3px #ffffff14}.tooltip-elegant{background:linear-gradient(135deg, var(--bg-elevated) 0%, var(--bg-hover) 100%);color:var(--text-primary);border:1px solid var(--border-strong);box-shadow:var(--shadow-lg);border-radius:var(--radius-md);-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);padding:8px 12px;font-size:13px;position:relative}.tooltip-elegant:before{content:"";background:linear-gradient(90deg, transparent 0%, var(--accent-primary) 50%, transparent 100%);width:40%;height:2px;position:absolute;top:0;left:50%;transform:translate(-50%)}@media (width<=768px){.sidebar{border-radius:var(--radius-xl) var(--radius-xl) 0 0;height:auto;max-height:40vh;z-index:var(--z-drawer);position:fixed;bottom:0;left:0;right:0;overflow-y:auto}.main-area{padding-bottom:120px}.settings{background:var(--bg-secondary);border-top:1px solid var(--border-default);padding:var(--spacing-md);z-index:var(--z-drawer);position:fixed;bottom:0;left:0;right:0}.generate-btn{bottom:var(--spacing-md);position:sticky}.stat-card{padding:var(--spacing-sm) var(--spacing-md)}.stat-card .text-lg{font-size:14px}.photos-grid,.image-grid{grid-template-columns:repeat(2,1fr)}}@media (width<=480px){.photos-grid,.image-grid{gap:var(--spacing-sm);grid-template-columns:repeat(2,1fr)}.effect-pills{gap:var(--spacing-xs)}.effect-pill{padding:6px 10px;font-size:10px}}button,[role=button],.clickable{-webkit-user-select:none;user-select:none;-webkit-tap-highlight-color:transparent}@media (hover:none) and (pointer:coarse){button:not(.scene-loop-badge):not(.scene-remove):not(.timeline-play-btn):not(.timeline-stop-btn),[role=button]:not(.scene-loop-badge):not(.scene-remove):not(.timeline-play-btn):not(.timeline-stop-btn),input[type=checkbox],input[type=radio],select,.clickable{min-height:var(--touch-target-min);min-width:var(--touch-target-min)}button:active,[role=button]:active{opacity:.9;transform:scale(.97)}input[type=text],input[type=email],input[type=password],input[type=number],input[type=tel],input[type=url],input[type=search],textarea,select{font-size:16px}}.scroll-container,[data-scroll]{-webkit-overflow-scrolling:touch;overscroll-behavior:contain;scroll-behavior:smooth}@media (width<=768px){.hide-scrollbar{scrollbar-width:none;-ms-overflow-style:none}.hide-scrollbar::-webkit-scrollbar{display:none}}.safe-area-top{padding-top:var(--safe-area-top)}.safe-area-bottom{padding-bottom:var(--safe-area-bottom)}.safe-area-left{padding-left:var(--safe-area-left)}.safe-area-right{padding-right:var(--safe-area-right)}:focus:not(:focus-visible){outline:none}.app{flex-direction:column;height:100vh;max-height:100vh;display:flex;overflow:hidden}.sidebar{background:var(--bg-secondary);border-radius:var(--radius-lg) var(--radius-lg) 0 0;height:0;max-height:85vh;z-index:var(--z-drawer);border-right:none;border-top:1px solid var(--border-default);padding:0;transition:transform .3s cubic-bezier(.32,.72,0,1),height .3s;position:fixed;bottom:0;left:0;right:0;overflow-y:auto;transform:translateY(100%)}.sidebar.open{height:auto;padding:var(--space-3) var(--space-2);overflow-x:hidden;transform:translateY(0)}.settings{background:var(--bg-secondary);border-top:1px solid var(--border-default);height:0;max-height:50vh;z-index:var(--z-drawer);padding:0;transition:transform .3s cubic-bezier(.32,.72,0,1),height .3s;position:fixed;bottom:0;left:0;right:0;overflow-y:auto;transform:translateY(100%)}.settings.open{height:auto;padding:var(--spacing-md);padding-bottom:calc(var(--spacing-md) + var(--mobile-safe-bottom));transform:translateY(0)}@media (width<=768px) and (orientation:portrait){.settings{max-height:70vh}}.main-area{flex-direction:column;flex:1;padding-bottom:0;display:flex;overflow:hidden auto}.preview-zone{min-height:200px;padding:var(--preview-padding-mobile);flex-direction:column;flex:none;display:flex}.preview-container{flex:none;max-width:100%;height:clamp(200px,45vw,280px);min-height:0;margin:0 auto}.selected-photos-strip{bottom:calc(var(--mobile-cta-height) + 8px);height:var(--timeline-height-mobile);z-index:var(--z-timeline);background:var(--bg-primary);border-top:1px solid var(--border-subtle);padding:var(--spacing-xs) var(--spacing-sm);gap:var(--spacing-xs);display:flex;position:fixed;left:0;right:0;overflow:auto hidden}.photo-thumb,.selected-strip .thumb{width:var(--timeline-thumb-mobile);height:var(--timeline-thumb-mobile);min-width:var(--timeline-thumb-mobile);flex-shrink:0}.mobile-fixed-cta{height:auto;min-height:var(--mobile-cta-height);background:var(--bg-secondary);border-top:1px solid var(--border-default);padding:var(--spacing-md);padding-bottom:calc(var(--spacing-md) + var(--mobile-safe-bottom));z-index:var(--z-mobile-cta);align-items:center;gap:var(--spacing-sm);display:flex;position:fixed;bottom:0;left:0;right:0;box-shadow:0 -2px 16px #0000004d}@media (width<=768px){.export-controls:not(.mobile-fixed-cta) .generate-btn{display:none}}html,body{font-size:var(--font-base-mobile);max-width:100vw;overflow-x:hidden}button:not(.scene-loop-badge):not(.scene-remove):not(.timeline-play-btn):not(.timeline-stop-btn):not(.mobile-mode-tab):not(.mobile-config-btn),[role=button]:not(.scene-loop-badge):not(.scene-remove):not(.timeline-play-btn):not(.timeline-stop-btn):not(.mobile-mode-tab):not(.mobile-config-btn),.effect-pill,.template-card,.dim-btn,.effect-card{min-height:var(--touch-target-min);min-width:var(--touch-target-min);cursor:pointer}.effect-grid,.template-grid{grid-template-columns:repeat(2,1fr);max-width:100%;overflow:hidden}.preview-toolbar{display:none}.preview-toolbar select,.preview-toolbar input[type=range]{font-size:var(--font-size-xs);padding:3px 5px}.mobile-header{height:var(--mobile-header-height);padding:var(--spacing-sm) var(--space-2);background:var(--bg-secondary);border-bottom:1px solid var(--border-subtle);flex-shrink:0;justify-content:space-between;align-items:center;display:flex}.preview-text-input{display:none}input,select,textarea,button:not(.scene-loop-badge):not(.scene-remove):not(.timeline-play-btn):not(.timeline-stop-btn):not(.mobile-mode-tab):not(.mobile-config-btn){min-height:var(--touch-target-min)}.text-edit-bar{top:var(--mobile-header-height,52px);z-index:var(--z-sticky);border-left:none;border-right:none;border-radius:0;margin:0;position:sticky}.unified-bar{padding:var(--spacing-xs) var(--spacing-sm);gap:var(--spacing-xs);flex-wrap:wrap}.unified-bar-badges{order:1}.unified-bar-controls{order:2;margin-left:auto}.unified-bar-input{flex-basis:100%;order:3;min-width:0}.unified-text-input{font-size:var(--font-size-h3);min-height:40px;padding:8px 12px}.unified-bar-controls select{height:28px;font-size:var(--font-size-micro);min-width:auto;max-width:none}.unified-bar-controls input[type=color]{width:28px;height:28px}@media (width<=768px){.desktop-only{display:none}}@media (width>=481px){body{font-size:var(--font-size-body)}.preview-container{height:clamp(320px,48vh,550px)}.selected-photos-strip{height:90px}.photo-thumb,.selected-strip .thumb{width:75px;min-width:75px;height:75px}.effect-grid,.template-grid{grid-template-columns:repeat(3,1fr)}}@media (width>=769px) and (width<=980px){body{font-size:var(--font-base-tablet)}.app{grid-template-columns:var(--sidebar-width-tablet) 1fr;height:calc(100vh - var(--desktop-auth-bar-height));max-height:calc(100vh - var(--desktop-auth-bar-height));grid-template-rows:1fr;display:grid}.sidebar{height:calc(100vh - var(--desktop-auth-bar-height));max-height:calc(100vh - var(--desktop-auth-bar-height));border-right:1px solid var(--border-subtle);padding:var(--spacing-md);width:var(--sidebar-width-tablet);border-top:none;border-radius:0;position:static;overflow-y:auto;transform:none}.sidebar.open{transform:none}.main-area{padding-bottom:0}.settings{right:0;top:var(--desktop-auth-bar-height);width:var(--settings-width-tablet);max-height:calc(100vh - var(--desktop-auth-bar-height));border-top:none;border-left:1px solid var(--border-subtle);padding:var(--spacing-md);position:fixed;bottom:0;left:auto;transform:translate(100%)}.settings.open{height:auto;transform:translate(0)}.preview-zone{padding:var(--preview-padding-tablet)}.preview-container{flex:none;min-height:0}.selected-photos-strip{height:var(--timeline-height-tablet);background:0 0;border-top:none;position:static}.photo-thumb,.selected-strip .thumb{width:var(--timeline-thumb-tablet);height:var(--timeline-thumb-tablet);min-width:var(--timeline-thumb-tablet)}.mobile-fixed-cta,.mobile-header{display:none}.effect-grid,.template-grid{grid-template-columns:repeat(2,1fr)}}@media (width>=981px){body{font-size:var(--font-base-desktop)}.app{grid-template-columns:var(--sidebar-width-desktop) minmax(360px, 1fr) minmax(0, var(--settings-width-desktop))}.sidebar{height:calc(100vh - var(--desktop-auth-bar-height));max-height:calc(100vh - var(--desktop-auth-bar-height));border-top:none;border-right:1px solid var(--border-subtle);padding:var(--spacing-md);width:var(--sidebar-width-desktop);position:static;inset:auto;overflow-y:auto;transform:none}.sidebar.open{transform:none}.settings{width:100%;max-width:var(--settings-width-desktop);border-left:1px solid var(--border-subtle);height:calc(100vh - var(--desktop-auth-bar-height));max-height:calc(100vh - var(--desktop-auth-bar-height));position:static;top:0;transform:none}.settings.open{transform:none}.settings{min-height:0}.settings-scroll{flex:1 1 0;min-height:0}.preview-zone{padding:var(--preview-padding-desktop)}.preview-container{flex:none;min-height:0}.selected-photos-strip{height:var(--timeline-height-desktop)}.photo-thumb,.selected-strip .thumb{width:var(--timeline-thumb-desktop);height:var(--timeline-thumb-desktop);min-width:var(--timeline-thumb-desktop)}}@media (width>=1441px){.app{max-width:100%;margin:0}.preview-container{flex:none;min-height:0;max-height:clamp(550px,62vh,850px)}}@media (width>=1921px){.app{max-width:100%;margin:0}.preview-container{height:clamp(600px,64vh,950px)}}@media (width<=768px) and (orientation:landscape){.mobile-header{height:48px}.preview-container{height:clamp(220px,70vh,400px)}.selected-photos-strip{height:60px}.photo-thumb,.selected-strip .thumb{width:50px;min-width:50px;height:50px}.mobile-fixed-cta{height:52px;min-height:52px;padding:6px var(--spacing-sm)}.settings{max-height:50vh}.sidebar{max-height:75vh}}button,[role=button],.clickable,.effect-pill,.template-card,.effect-card{-webkit-user-select:none;user-select:none;-webkit-tap-highlight-color:transparent}@media (hover:none) and (pointer:coarse){button:active,[role=button]:active,.effect-pill:active,.template-card:active{opacity:.9;transform:scale(.97)}input[type=text],input[type=email],input[type=password],textarea{padding:12px 14px;font-size:16px}}.scroll-container,.sidebar,.settings,.content-zone,.selected-photos-strip{-webkit-overflow-scrolling:touch;overscroll-behavior:contain;scroll-behavior:smooth}@media (width<=768px){.selected-photos-strip::-webkit-scrollbar{display:none}.selected-photos-strip{scrollbar-width:none;-ms-overflow-style:none}#result-panel{position:relative}#result-panel .btn-download{z-index:var(--z-sticky,10);position:sticky;bottom:0;box-shadow:0 -4px 12px #0000004d}}@media (hover:hover) and (pointer:fine){.settings .section-group-title,.settings .sidebar-section-label,.sidebar .section-group-title,.sidebar .sidebar-section-label{border-bottom:var(--panel-separator)}button:hover,[role=button]:hover,a[role=button]:hover{opacity:.9}}@media (width<=767px){.main-area{padding:var(--space-3)}.sidebar{max-width:100%}.settings{overflow-y:auto}}@media (hover:none) and (pointer:coarse){button:hover,[role=button]:hover{opacity:1}}*{box-sizing:border-box;margin:0;padding:0}body.no-scroll{overflow:hidden}input[type=checkbox]{accent-color:var(--accent-primary)}input[type=range]{appearance:none;cursor:pointer;background:0 0;border-radius:0;outline:none;width:100%;height:4px}input[type=range]::-webkit-slider-thumb{-webkit-appearance:none;background:var(--accent-primary);cursor:pointer;border:1px solid #0a0908e6;border-radius:0;width:12px;height:12px;transition:box-shadow .15s,transform .15s;box-shadow:0 0 0 1px #ffffff14,0 1px 3px #00000052}input[type=range]::-webkit-slider-thumb:hover{transform:scale(1.06);box-shadow:0 0 0 2px #0e74902e,0 1px 4px #00000057}input[type=range]::-moz-range-thumb{background:var(--accent-primary);cursor:pointer;border:1px solid #0a0908e6;border-radius:0;width:12px;height:12px;box-shadow:0 0 0 1px #ffffff14,0 1px 3px #00000052}input[type=range]:focus-visible{outline:none}input[type=range]:focus-visible::-webkit-slider-thumb{box-shadow:0 0 0 2px #0e749033,0 1px 4px #0006}input[type=range]:focus-visible::-moz-range-thumb{box-shadow:0 0 0 2px #0e749033,0 1px 4px #0006}body{background:var(--bg-primary);color:var(--text-primary);font-family:var(--font-sans);font-size:var(--font-size-body);line-height:var(--line-height-normal);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;text-rendering:optimizelegibility;font-feature-settings:"cv02", "cv03", "cv04", "cv11";letter-spacing:-.01em}::selection{background:var(--accent-primary);color:var(--text-on-accent)}.app~.site-footer{display:none}body:has(.app) .site-footer{display:none}.footer-brand-link{letter-spacing:.02em;font-family:Instrument Serif,Georgia,serif;font-style:italic}.site-footer{text-align:center;font-size:var(--font-size-xs);letter-spacing:.03em;color:#ffffff73;border-top:1px solid #ffffff0f;justify-content:center;align-items:center;gap:14px;padding:56px 20px 28px;font-weight:300;display:flex}.site-footer .lang-btn{font-size:var(--font-size-micro);letter-spacing:.04em;color:#fff6;cursor:pointer;background:0 0;border:1px solid #ffffff1f;border-radius:0;padding:2px 7px;font-weight:400;transition:color .2s,border-color .2s}@media (width<=640px){.site-footer{font-size:var(--font-size-micro);gap:10px;padding:36px 16px 20px}}.app{grid-template-columns:var(--sidebar-width-desktop) 1fr minmax(0, var(--settings-width-desktop));flex:1;gap:0;min-height:0;animation:.25s fadeIn;display:grid;overflow:hidden}.sidebar{background:linear-gradient(180deg, var(--bg-secondary) 0%, var(--bg-primary) 100%);border-right:1px solid var(--border-default);padding:var(--spacing-md);scrollbar-width:thin;scrollbar-color:var(--white-10) transparent;flex:1;min-height:0;overflow:hidden auto;box-shadow:inset -1px 0 #ffffff08}.sidebar::-webkit-scrollbar-track{background:0 0}.sidebar h2{font-size:var(--font-size-xs);color:#ffffff80;text-transform:uppercase;letter-spacing:.8px;margin-bottom:10px;padding-bottom:0;font-weight:600;position:relative}.sidebar-search{width:100%;padding:var(--spacing-sm) var(--spacing-md-sm) 8px 32px;background:var(--bg-primary);border:1px solid var(--border-default);color:var(--text-primary);font-size:var(--font-size-small);margin-bottom:var(--spacing-md-sm);transition:border-color var(--transition-fast);border-radius:0;outline:none}.sidebar-search:focus,.sidebar-search:focus-visible{border-color:var(--accent-primary);box-shadow:var(--shadow-ring-accent)}.sidebar-search-wrap{position:relative}.sidebar-search-wrap:before{content:"";width:14px;height:14px;color:var(--text-disabled);pointer-events:none;background:currentColor;position:absolute;top:50%;left:10px;transform:translateY(-50%);-webkit-mask:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='24' height='24' viewBox='0 0 24 24' fill='none' stroke='currentColor' stroke-width='2'%3E%3Ccircle cx='11' cy='11' r='8'/%3E%3Cpath d='m21 21-4.3-4.3'/%3E%3C/svg%3E") 50%/contain no-repeat;mask:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='24' height='24' viewBox='0 0 24 24' fill='none' stroke='currentColor' stroke-width='2'%3E%3Ccircle cx='11' cy='11' r='8'/%3E%3Cpath d='m21 21-4.3-4.3'/%3E%3C/svg%3E") 50%/contain no-repeat}[data-dim=wide] .preview-grid.tpl-bento{grid-template-rows:1fr 1fr;grid-template-columns:2fr 1fr 1fr 1fr}[data-dim=wide] .preview-grid.tpl-bento .cell:first-child{grid-row:span 2}[data-dim=wide] .preview-grid.tpl-grid_full{grid-template-rows:1fr 1fr;grid-template-columns:repeat(auto-fit,minmax(120px,1fr))}[data-dim=wide] .preview-grid.tpl-collage{grid-template-rows:1fr 1fr;grid-template-columns:1fr 1fr 1fr 1fr}[data-dim=wide] .preview-grid.tpl-collage .cell:first-child{grid-row:span 2}[data-dim=wide] .preview-grid.tpl-collage .cell:nth-child(4){grid-column:span 1}[data-dim=wide] .preview-grid.tpl-diptych{grid-template-rows:1fr;grid-template-columns:1fr 1fr}[data-dim=wide] .preview-grid.tpl-diptych .cell:nth-child(n+3){display:block}[data-dim=wide] .preview-grid.tpl-triptych{grid-template-rows:1fr;grid-template-columns:1fr 1fr 1fr 1fr}[data-dim=wide] .preview-grid.tpl-triptych .cell:nth-child(n+4){display:block}[data-dim=wide] .preview-grid.tpl-carousel{grid-template-columns:repeat(auto-fit,minmax(100px,1fr))}[data-dim=wide] .preview-grid.tpl-breathing_grid{grid-template-rows:1fr 1fr;grid-template-columns:1fr 1fr 1fr}[data-dim=wide] .preview-grid.tpl-kaleidoscope{grid-template-rows:1fr;grid-template-columns:1fr 1fr 1fr 1fr}[data-dim=wide] .preview-grid.tpl-constellation_grid{grid-template-columns:repeat(auto-fit,minmax(80px,1fr))}[data-dim=wide] .preview-grid.tpl-feature_showcase{grid-template-rows:1fr;grid-template-columns:1fr 1fr 1fr}[data-dim=wide] .preview-grid.tpl-spiral .cell{width:40%}[data-dim=wide] .preview-grid.tpl-mandala .cell{width:35%}[data-dim=story] .preview-grid.tpl-bento{grid-template-rows:2fr 1fr 1fr;grid-template-columns:1fr 1fr;grid-auto-rows:1fr}[data-dim=story] .preview-grid.tpl-bento .cell:first-child{grid-area:span 1/span 2}[data-dim=story] .preview-grid.tpl-grid_full{grid-template-columns:1fr 1fr;grid-auto-rows:1fr}[data-dim=story] .preview-grid.tpl-collage{grid-template-rows:1fr 1fr 1fr;grid-template-columns:1fr 1fr}[data-dim=story] .preview-grid.tpl-collage .cell:first-child,[data-dim=story] .preview-grid.tpl-collage .cell:nth-child(4){grid-column:span 2}[data-dim=story] .preview-grid.tpl-diptych{grid-template-rows:1fr 1fr 1fr;grid-template-columns:1fr}[data-dim=story] .preview-grid.tpl-diptych .cell:nth-child(3){display:block}[data-dim=story] .preview-grid.tpl-triptych{grid-template-rows:1fr 1fr 1fr;grid-template-columns:1fr}[data-dim=story] .preview-grid.tpl-carousel{grid-template-rows:repeat(auto-fit,minmax(60px,1fr));grid-template-columns:1fr}[data-dim=story] .preview-grid.tpl-breathing_grid,[data-dim=story] .preview-grid.tpl-kaleidoscope{grid-template-rows:1fr 1fr 1fr;grid-template-columns:1fr 1fr}[data-dim=story] .preview-grid.tpl-feature_showcase{grid-template-rows:1fr 1fr;grid-template-columns:1fr}[data-dim=story] .preview-grid.tpl-spiral .cell{width:70%}[data-dim=story] .preview-grid.tpl-mandala .cell{aspect-ratio:2/3;width:60%}[data-dim=banner] .preview-grid.tpl-bento{grid-template-rows:1fr;grid-template-columns:2fr repeat(4,1fr)}[data-dim=banner] .preview-grid.tpl-bento .cell:first-child{grid-row:span 1}[data-dim=banner] .preview-grid.tpl-grid_full,[data-dim=banner] .preview-grid.tpl-collage{grid-template-rows:1fr;grid-template-columns:repeat(auto-fit,minmax(80px,1fr))}[data-dim=banner] .preview-grid.tpl-collage .cell:first-child{grid-row:span 1}[data-dim=banner] .preview-grid.tpl-collage .cell:nth-child(4){grid-column:span 1}[data-dim=banner] .preview-grid.tpl-diptych{grid-template-rows:1fr;grid-template-columns:1fr 1fr}[data-dim=banner] .preview-grid.tpl-diptych .cell:nth-child(n+3){display:block}[data-dim=banner] .preview-grid.tpl-triptych{grid-template-rows:1fr;grid-template-columns:repeat(auto-fit,minmax(60px,1fr))}[data-dim=banner] .preview-grid.tpl-triptych .cell:nth-child(n+4){display:block}[data-dim=banner] .preview-grid.tpl-carousel,[data-dim=banner] .preview-grid.tpl-breathing_grid,[data-dim=banner] .preview-grid.tpl-kaleidoscope,[data-dim=banner] .preview-grid.tpl-constellation_grid{grid-template-rows:1fr;grid-template-columns:repeat(auto-fit,minmax(60px,1fr))}[data-dim=banner] .preview-grid.tpl-feature_showcase{grid-template-rows:1fr;grid-template-columns:repeat(auto-fit,minmax(80px,1fr))}[data-dim=banner] .preview-grid.tpl-spiral .cell{aspect-ratio:1;width:25%}[data-dim=banner] .preview-grid.tpl-mandala .cell{aspect-ratio:1;width:20%}[data-dim=banner] .preview-grid.tpl-parallax_depth .cell:nth-child(2){inset:4% 25%}[data-dim=banner] .preview-grid.tpl-parallax_depth .cell:nth-child(3){inset:8% 35%}[data-dim=banner] .preview-grid.tpl-hypnotic_zoom .cell:nth-child(2){inset:8% 25%}[data-dim=banner] .preview-grid.tpl-hypnotic_zoom .cell:nth-child(3){inset:16% 35%}.preview-grid.tpl-switching{animation:.35s ease-out tpl-flash}@keyframes tpl-flash{0%{opacity:.3;transform:scale(.97)}to{opacity:1;transform:scale(1)}}.preview-container .cell.shimmer{background:linear-gradient(90deg, var(--bg-primary) 25%, var(--bg-secondary) 50%, var(--bg-primary) 75%);background-size:200% 100%;animation:1.5s infinite shimmer}.preview-text{z-index:var(--z-above);text-shadow:0 2px 18px #00000052;letter-spacing:-.02em;text-align:center;word-break:break-word;overflow-wrap:break-word;white-space:pre-line;max-width:92%;padding:var(--spacing-sm);color:#ffffffd6;justify-content:center;align-items:center;font-size:clamp(16px,4vw,48px);font-weight:800;line-height:1.15;display:flex;position:relative;overflow:hidden}.preview-text.is-placeholder{opacity:.62}.preview-text.rotating-active{will-change:opacity;transition:opacity .3s}.preview-text.rotating-fade-out{opacity:0!important}textarea::-moz-placeholder{transition:opacity .2s,color .2s}input[type=text]::-moz-placeholder{transition:opacity .2s,color .2s}textarea::placeholder,input[type=text]::placeholder{transition:opacity .2s,color .2s}textarea:focus::-moz-placeholder{opacity:.4}input[type=text]:focus::-moz-placeholder{opacity:.4}textarea:focus::placeholder,input[type=text]:focus::placeholder{opacity:.4}.text-mode-tabs{gap:var(--spacing-xs);grid-template-columns:repeat(3,1fr);display:grid}.text-mode-tab{justify-content:center;align-items:center;gap:var(--spacing-xs);background:var(--bg-primary);border:1.5px solid var(--border-subtle);min-height:32px;color:var(--text-tertiary);font-size:var(--font-size-micro);cursor:pointer;transition:background var(--transition-fast), border-color var(--transition-fast), color var(--transition-fast), opacity var(--transition-fast);text-align:center;border-radius:0;flex-direction:column;padding:8px 4px;font-weight:600;line-height:1.2;display:flex}.text-mode-tab:hover{border-color:var(--accent-primary);color:var(--text-secondary);background:var(--bg-elevated)}.text-mode-tab.active{border-color:var(--accent-primary);background:var(--white-6);color:var(--accent-primary)}.text-mode-tab svg{opacity:.6}.text-mode-tab.active svg{opacity:1;stroke:var(--accent-primary)}.preview-text.mixed-overlay{z-index:var(--z-preview);color:#fff;text-shadow:0 2px 12px #000c,0 0 40px #0006;padding:var(--spacing-md);text-align:center;pointer-events:none;word-break:break-word;letter-spacing:.02em;justify-content:center;align-items:center;font-size:clamp(24px,5vw,56px);line-height:1.1;animation:none;display:flex;position:absolute;inset:0}.mixed-empty-state{position:relative}.mixed-empty-state .preview-text.mixed-overlay{padding:var(--spacing-lg) var(--spacing-md);color:var(--text-secondary);text-shadow:none;background:var(--bg-secondary);pointer-events:auto;border-radius:0;min-height:80px;font-size:clamp(18px,3vw,32px);position:relative;inset:auto}.mixed-empty-state .preview-placeholder{border-radius:0}@keyframes pulse{0%,to{opacity:1}50%{opacity:.7}}.main-area{background:radial-gradient(ellipse at 50% 0%, rgba(var(--accent-primary-rgb), .1) 0%, transparent 60%), linear-gradient(180deg, var(--bg-primary) 0%, #0d0b0a 100%);flex-direction:column;flex:1;gap:0;min-height:0;padding:0;display:flex;overflow:hidden}.preview-zone{min-height:0;padding:var(--spacing-sm) var(--spacing-md);justify-content:center;align-items:center;gap:var(--spacing-sm);z-index:var(--z-preview);border-bottom:1px solid var(--border-subtle);background:radial-gradient(circle at top,#ffffff0a,#0000 48%),linear-gradient(#ffffff08 0%,#ffffff03 100%);flex-direction:column;flex:1;display:flex;overflow:hidden}.content-zone{min-height:0;max-height:50vh;padding:10px var(--spacing-md-sm) var(--spacing-md-sm);scrollbar-width:thin;scrollbar-color:var(--white-8) transparent;gap:var(--spacing-xs);flex-direction:column;flex:none;display:flex;overflow:visible auto}.content-zone::-webkit-scrollbar{width:4px}.content-zone::-webkit-scrollbar-track{background:0 0}.content-zone::-webkit-scrollbar-thumb{background:var(--white-8);border-radius:0}.content-zone::-webkit-scrollbar-thumb:hover{background:var(--white-15)}.preview-toolbar{height:40px;z-index:var(--z-toolbar);border:1px solid var(--white-8);box-shadow:var(--shadow-toolbar);-webkit-backdrop-filter:blur(16px);opacity:0;pointer-events:none;white-space:nowrap;scrollbar-width:none;background:#1e1d1cf2;border-radius:0;align-items:center;gap:12px;width:auto;max-width:calc(100% - 16px);padding:6px 14px;transition:opacity .2s;display:none;position:absolute;top:8px;left:50%;overflow:auto hidden;transform:translate(-50%)}.preview-toolbar::-webkit-scrollbar{display:none}.preview-toolbar.visible,body[data-mode=text] .preview-toolbar{opacity:1;pointer-events:auto;display:flex}.preview-toolbar-row1,.preview-toolbar-row2{display:contents}.preview-toolbar select,.preview-toolbar input[type=color]{background:var(--bg-input);border:1px solid var(--border-default);height:28px;color:var(--text-primary);font-size:var(--font-size-xs);cursor:pointer;border-radius:0;outline:none;padding:0 6px;font-weight:500;transition:background .15s,border-color .15s,box-shadow .15s}.preview-toolbar select:hover,.preview-toolbar input[type=color]:hover{background:var(--bg-secondary);border-color:var(--border-hover)}.preview-toolbar select:focus{border-color:var(--panel-accent-border);box-shadow:0 0 0 2px #0e74901a}.preview-toolbar select{--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark;appearance:none;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='10' height='6'%3E%3Cpath d='M0 0l5 6 5-6z' fill='%23666'/%3E%3C/svg%3E");background-position:right 6px center;background-repeat:no-repeat;min-width:90px;padding-right:20px}.preview-toolbar select option{background:var(--bg-secondary);color:var(--text-primary)}.preview-toolbar input[type=range]{width:70px;height:28px;accent-color:var(--accent-primary);cursor:pointer}.preview-toolbar input[type=color]{border-radius:0;width:28px;height:28px;padding:2px}.preview-toolbar .tb-size-label{font-size:var(--font-size-micro);color:#ffffff73;text-align:center;font-variant-numeric:tabular-nums;min-width:28px;font-weight:600;line-height:28px}.preview-toolbar .tb-divider{background:var(--border-subtle);flex-shrink:0;width:1px;height:20px}.preview-toolbar .tb-btn{background:var(--bg-input);border:1px solid var(--border-default);color:#ffffff8c;height:28px;font-size:var(--font-size-micro);cursor:pointer;border-radius:0;padding:0 10px;font-weight:600;transition:background .15s,border-color .15s,color .15s,box-shadow .15s}.preview-toolbar .tb-btn:hover{border-color:var(--panel-accent-border);color:var(--text-primary);background:var(--panel-accent-surface)}.preview-toolbar .tb-btn.active{border-color:var(--panel-accent-border);color:var(--text-primary);background:var(--panel-accent-surface);box-shadow:inset 0 1px #ffffff0d}.preview-toolbar .speed-group{align-items:center;gap:var(--spacing-xs);display:flex}.preview-toolbar .speed-group label{font-size:var(--font-size-micro);color:#ffffff59;text-transform:uppercase;letter-spacing:.5px;line-height:28px}.preview-toolbar .color-group,.preview-toolbar .bg-group{align-items:center;height:28px;display:flex}.preview-container{background:var(--bg-primary,#0a0908);border:1px solid var(--border-default);aspect-ratio:1;contain:layout paint;width:min(clamp(200px,60vmin,720px),100%);height:auto;z-index:var(--z-preview);border-radius:0;flex:none;justify-content:center;align-self:center;align-items:center;margin:0 auto;transition:box-shadow .2s;display:flex;position:relative;overflow:hidden;box-shadow:inset 0 1px #ffffff0f,0 10px 34px #00000070,0 0 0 1px #00000052}.preview-container:has(img:not(.is-hidden)){box-shadow:inset 0 1px 0 #ffffff14, 0 12px 40px #00000085, 0 0 0 1px #0000006b, 0 0 30px rgba(var(--accent-primary-rgb), .04)}.preview-container:has(canvas:not(.is-hidden)){box-shadow:inset 0 1px 0 #ffffff14, 0 12px 40px #00000085, 0 0 0 1px #0000006b, 0 0 30px rgba(var(--accent-primary-rgb), .04)}:is(.preview-container:empty,.preview-container:not(:has(img)):not(:has(canvas)):not(:has(video)):not(.has-content)){background-image:linear-gradient(var(--white-6) 1px, transparent 1px), linear-gradient(90deg, var(--white-6) 1px, transparent 1px);background-position:50%;background-repeat:no-repeat;background-size:50% 50%}.preview-container:not(:has(.preview-text:not(.is-hidden))):not(:has(img:not(.is-hidden))):not(:has(canvas:not(.is-hidden))):not(:has(video:not(.is-hidden))):not(.has-content):after{content:"Your GIF appears here";color:#ffffff38;font-size:var(--font-size-xs);letter-spacing:.14em;text-transform:uppercase;pointer-events:none;white-space:nowrap;font-weight:600;position:absolute;top:50%;left:50%;transform:translate(-50%,-50%)}body[data-mode=photo] .preview-container:after,body[data-mode=collage] .preview-container:after,body[data-mode=photo] .preview-container,body[data-mode=collage] .preview-container{display:none}body[data-mode=photo] .preview-container.has-content,body[data-mode=collage] .preview-container.has-content{display:flex}body[data-mode=photo] .preview-container:has(.preview-placeholder:not(.is-hidden)){display:flex}body[data-mode=collage] .preview-container:has(.preview-placeholder:not(.is-hidden)){display:flex}.preview-overlay{-o-object-fit:contain;object-fit:contain;pointer-events:none;width:100%;height:100%;position:absolute;inset:0}#live-preview-canvas{width:100%;height:100%;z-index:var(--z-canvas);pointer-events:none;display:block;position:absolute;inset:0}#animated-preview-gif,#inline-result-gif,#inline-result-video{-o-object-fit:contain;object-fit:contain;width:100%;height:100%;z-index:var(--z-overlay);position:absolute;inset:0}#preview-grain-overlay{z-index:var(--z-grain);pointer-events:none;opacity:.15;mix-blend-mode:overlay;background-image:url("data:image/svg+xml,%3Csvg viewBox=%220 0 200 200%22 xmlns=%22http://www.w3.org/2000/svg%22%3E%3Cfilter id=%22noise%22%3E%3CfeTurbulence type=%22fractalNoise%22 baseFrequency=%220.85%22 numOctaves=%223%22 stitchTiles=%22stitch%22/%3E%3C/filter%3E%3Crect width=%22100%25%22 height=%22100%25%22 filter=%22url(%23noise)%22/%3E%3C/svg%3E");position:absolute;inset:0}#live-preview-loader{z-index:var(--z-timeline);padding:var(--spacing-compact) var(--spacing-md-sm);font-size:var(--font-size-micro);color:#ffffffb3;-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);letter-spacing:.3px;align-items:center;gap:var(--spacing-compact);background:#000000b3;border-radius:0;display:flex;position:absolute;top:8px;right:8px}#live-preview-loader .spinner{width:14px;height:14px;color:var(--accent-primary,var(--color-accent));flex-shrink:0}#inline-generation-overlay{z-index:var(--z-sticky);-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);justify-content:center;align-items:center;gap:var(--spacing-md-sm);background:#000000a6;border-radius:0;flex-direction:column;display:flex;position:absolute;inset:0}#collage-canvas{-o-object-fit:contain;object-fit:contain;pointer-events:none;width:100%;height:100%;position:absolute;inset:0}#char-counter{font-size:var(--font-size-micro);padding:2px 14px 0;line-height:1.4;transition:color .2s}#logo-thumb{-o-object-fit:contain;object-fit:contain;background:var(--bg-secondary);border-radius:0;width:36px;height:36px}.aesthetic-opts-panel{margin-top:var(--spacing-xs);padding:var(--spacing-xs);background:#ffffff05;border-radius:0}#logo-options{margin-top:var(--spacing-sm);padding:var(--spacing-md-sm);background:var(--bg-primary);border-radius:0}.collage-layout-btn{justify-content:center;align-items:center;gap:var(--spacing-xs);padding:var(--spacing-md-sm) var(--spacing-sm);background:var(--bg-elevated);border:1px solid var(--border-subtle);min-height:40px;color:var(--text-secondary);font-size:var(--font-size-xs);cursor:pointer;border-radius:0;flex-direction:column;font-weight:500;transition:background .15s,border-color .15s,color .15s,opacity .15s;display:flex}.collage-layout-btn:hover{background:var(--bg-hover);border-color:var(--border-default);color:var(--text-primary)}.collage-layout-btn.active{background:var(--accent-bg);border-color:var(--accent-primary);color:var(--accent-primary)}.collage-layout-btn svg{opacity:.7}.collage-layout-btn.active svg{opacity:1;stroke:var(--accent-primary)}.collage-layout-btn--wide{grid-column:span 2}.preview-text{opacity:.3}.preview-container[data-dim=story]{aspect-ratio:9/16;width:calc(clamp(320px,70vh,680px)/1.77778);height:clamp(320px,70vh,680px)}.preview-container[data-dim=portrait]{aspect-ratio:4/5;width:calc(clamp(260px,65vh,600px)/1.25);height:clamp(260px,65vh,600px)}.preview-container[data-dim=wide]{aspect-ratio:16/9;width:100%;height:auto}.preview-container[data-dim=banner]{aspect-ratio:2;width:100%;height:auto}.preview-container[data-dim=ytbanner]{aspect-ratio:1920/540;width:100%;height:auto}.preview-container[data-dim=thin]{aspect-ratio:4;width:100%;height:auto}.preview-dim-label{-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);color:#ffffffd9;font-size:var(--font-size-micro);z-index:var(--z-preview);pointer-events:none;letter-spacing:.5px;border:1px solid var(--white-10);background:#000000b3;border-radius:0;padding:3px 8px;font-weight:600;display:none;position:absolute;top:12px;left:12px}.preview-container:has(.preview-placeholder){height:auto;min-height:280px}.watermark-badge{font-size:var(--font-size-micro);color:#ffffff73;pointer-events:auto;z-index:var(--z-timeline);-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);background:#00000059;border-radius:0;align-items:center;gap:4px;padding:2px 8px;display:inline-flex;position:absolute;top:6px;left:6px}@media (width<=768px){.watermark-badge{padding-left:8px}}.wm-upgrade-link{color:var(--accent-primary);font-weight:600;text-decoration:none}.wm-upgrade-link:hover{text-decoration:underline}body.is-pro .watermark-badge,body.is-pro .wm-upgrade-link,body.is-pro #watermark-pro-hint{display:none}.preview-container .preview-grid{background:var(--bg-primary);border-radius:0;grid-template-columns:repeat(3,1fr);align-self:stretch;gap:0;width:100%;height:100%;padding:0;display:grid;overflow:hidden}.preview-container .cell{background:var(--bg-elevated);border-radius:0;min-height:0;position:relative;overflow:hidden}.preview-container .cell img{-o-object-fit:cover;object-fit:cover;width:100%;height:100%;transition:opacity .3s}.preview-container .cell.empty-cell{background:var(--bg-primary)}.preview-grid.tpl-bento{grid-template-rows:2fr 1fr 1fr;grid-template-columns:2fr 1fr 1fr}.preview-grid.tpl-bento .cell:first-child{grid-area:span 2/span 1}.preview-grid.tpl-grid_full{grid-template-columns:repeat(4,1fr);grid-auto-rows:1fr}.preview-grid.tpl-slideshow{grid-template-rows:1fr;grid-template-columns:1fr}.preview-grid.tpl-slideshow .cell:not(:first-child){display:none}.preview-grid.tpl-carousel{grid-template-rows:1fr;grid-template-columns:repeat(auto-fit,minmax(80px,1fr))}.preview-grid.tpl-collage{grid-template-rows:1fr 1fr;grid-template-columns:1fr 1fr 1fr;grid-auto-rows:1fr}.preview-grid.tpl-collage .cell:first-child{grid-row:span 2}.preview-grid.tpl-collage .cell:nth-child(4){grid-column:span 2}.preview-grid.tpl-card_stack{padding:var(--spacing-md) 28px;background:var(--bg-secondary,#1a1a1a);box-shadow:var(--shadow-md);border-radius:0;grid-template-rows:1fr;grid-template-columns:1fr;gap:0}.preview-grid.tpl-card_stack .cell{border:4px solid #ffffffd9;border-bottom-width:20px;border-radius:0}.preview-grid.tpl-card_stack .cell:not(:first-child){display:none}.preview-grid.tpl-diptych{grid-template-rows:1fr 1fr;grid-template-columns:1fr;gap:3px}.preview-grid.tpl-diptych .cell:nth-child(n+3){display:none}.preview-grid.tpl-triptych{grid-template-rows:1fr;grid-template-columns:1fr 1fr 1fr}.preview-grid.tpl-triptych .cell:nth-child(n+4){display:none}.preview-grid.tpl-ken_burns{grid-template-rows:1fr;grid-template-columns:1fr}.preview-grid.tpl-ken_burns .cell:not(:first-child){display:none}.preview-grid.tpl-ken_burns .cell img{animation:4s ease-in-out infinite alternate kenburns-hint}@keyframes kenburns-hint{0%{transform:scale(1)}to{transform:scale(1.08)}}.preview-grid.tpl-breathing_grid{grid-template-columns:1fr 1fr 1fr;grid-auto-rows:1fr}.preview-grid.tpl-breathing_grid .cell img{animation:3s ease-in-out infinite alternate breathe-hint}@keyframes breathe-hint{0%{transform:scale(1)}to{transform:scale(1.03)}}.preview-grid.tpl-infinite_carousel{grid-template-columns:repeat(auto-fit,minmax(80px,1fr));grid-auto-flow:column;overflow:hidden}.preview-grid.tpl-constellation_grid{grid-template-rows:1fr;grid-template-columns:repeat(auto-fit,minmax(60px,1fr))}.preview-grid.tpl-parallax_depth{grid-template-rows:1fr;grid-template-columns:1fr;position:relative}.preview-grid.tpl-parallax_depth .cell{position:absolute;inset:0}.preview-grid.tpl-parallax_depth .cell:nth-child(2){z-index:var(--z-above);inset:8%}.preview-grid.tpl-parallax_depth .cell:nth-child(3){z-index:var(--z-stack-mid);inset:16%}.preview-grid.tpl-parallax_depth .cell:nth-child(n+4){display:none}.preview-grid.tpl-spiral{grid-template-rows:1fr;grid-template-columns:1fr;position:relative}.preview-grid.tpl-spiral .cell{aspect-ratio:3/4;width:55%;box-shadow:var(--shadow-md);border-radius:0;position:absolute}.preview-grid.tpl-spiral .cell:first-child{z-index:var(--z-stack-top);top:5%;left:5%;transform:rotate(-6deg)}.preview-grid.tpl-spiral .cell:nth-child(2){z-index:var(--z-stack-mid);top:15%;left:30%;transform:rotate(3deg)}.preview-grid.tpl-spiral .cell:nth-child(3){z-index:var(--z-above);bottom:5%;right:5%;transform:rotate(-2deg)}.preview-grid.tpl-spiral .cell:nth-child(n+4){display:none}.preview-grid.tpl-kaleidoscope{grid-template-rows:1fr 1fr;grid-template-columns:1fr 1fr}.preview-grid.tpl-kaleidoscope .cell:nth-child(2) img{transform:scaleX(-1)}.preview-grid.tpl-kaleidoscope .cell:nth-child(3) img{transform:scaleY(-1)}.preview-grid.tpl-kaleidoscope .cell:nth-child(4) img{transform:scale(-1)}.preview-grid.tpl-mandala{perspective:400px;grid-template-rows:1fr;grid-template-columns:1fr;position:relative}.preview-grid.tpl-mandala .cell{aspect-ratio:3/4;width:50%;box-shadow:var(--shadow-md);border-radius:0;position:absolute;top:50%;left:50%}.preview-grid.tpl-mandala .cell:first-child{z-index:var(--z-above);transform:translate(-80%,-50%)rotateY(15deg)}.preview-grid.tpl-mandala .cell:nth-child(2){z-index:var(--z-stack-top);transform:translate(-50%,-50%)}.preview-grid.tpl-mandala .cell:nth-child(3){z-index:var(--z-above);transform:translate(-20%,-50%)rotateY(-15deg)}.preview-grid.tpl-mandala .cell:nth-child(n+4){display:none}.preview-grid.tpl-hypnotic_zoom{grid-template-rows:1fr;grid-template-columns:1fr;position:relative}.preview-grid.tpl-hypnotic_zoom .cell{border-radius:0;position:absolute}.preview-grid.tpl-hypnotic_zoom .cell:first-child{z-index:var(--z-above);inset:0}.preview-grid.tpl-hypnotic_zoom .cell:nth-child(2){z-index:var(--z-stack-mid);inset:15%}.preview-grid.tpl-hypnotic_zoom .cell:nth-child(3){z-index:var(--z-stack-top);inset:30%}.preview-grid.tpl-hypnotic_zoom .cell:nth-child(n+4){display:none}.preview-grid.tpl-hero_product{grid-template-rows:1fr;grid-template-columns:1fr}.preview-grid.tpl-hero_product .cell:not(:first-child){display:none}.preview-grid.tpl-feature_showcase{grid-template-rows:1fr 1fr;grid-template-columns:1fr 1fr}.photos-section{gap:var(--spacing-sm);flex-direction:column;flex:0 auto;display:flex;overflow:visible}.photos-toolbar-card{padding:var(--spacing-sm);border:1px solid var(--border-subtle);background:linear-gradient(#ffffff0d,#ffffff05);border-radius:0}.photos-header{margin-bottom:var(--spacing-compact);justify-content:space-between;align-items:center;gap:var(--spacing-xs);flex-wrap:wrap;display:flex}.photos-header h3{font-size:var(--font-size-xs);color:var(--text-secondary);white-space:nowrap}.photos-header .actions{gap:var(--spacing-xs);flex-wrap:nowrap;align-items:center;display:flex}.photos-header .btn-sm{padding:var(--spacing-compact) var(--spacing-md-sm);font-size:var(--font-size-xs);background:var(--bg-elevated);border:1px solid var(--border-default);color:var(--text-tertiary);cursor:pointer;transition:background var(--transition-fast), border-color var(--transition-fast), color var(--transition-fast), opacity var(--transition-fast);border-radius:0}.photos-header .btn-sm:hover{background:var(--bg-hover);color:var(--text-primary)}.photos-header .btn-sm:active{transform:scale(.95)}.photos-header select{appearance:none;background:var(--bg-primary) url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12' viewBox='0 0 24 24' fill='none' stroke='%23888' stroke-width='2'%3E%3Cpath d='m6 9 6 6 6-6'/%3E%3C/svg%3E") right 8px center no-repeat;border:1px solid var(--border-default);color:var(--text-secondary);font-size:var(--font-size-xs);cursor:pointer;border-radius:0;padding:6px 28px 6px 10px}.photos-header select:hover{border-color:var(--accent-primary)}.photos-header select:focus{border-color:var(--accent-primary);box-shadow:0 0 0 2px var(--white-10);outline:none}.upload-bar{align-items:center;gap:var(--spacing-compact);border:1px dashed var(--border-strong);background:#080e1ad9;border-radius:0;margin-bottom:0;padding:8px 10px;display:flex}.upload-bar-btn{align-items:center;gap:var(--spacing-compact);padding:var(--spacing-compact) 14px;font-size:var(--font-size-xs);border:1px solid var(--white-10);background:var(--white-4);color:var(--text-secondary);cursor:pointer;border-radius:0;font-weight:600;transition:background .15s,border-color .15s,color .15s,opacity .15s;display:inline-flex}.upload-bar-btn:hover{background:var(--white-8);color:var(--text-primary)}.upload-bar-btn.primary{background:linear-gradient(135deg, var(--accent-primary), var(--accent-primary-muted));border-color:var(--border-hover);color:var(--text-on-accent)}.upload-bar-btn.primary:hover{background:var(--accent-primary-hover)}.upload-bar-hint{font-size:var(--font-size-micro);color:var(--text-tertiary);white-space:nowrap;margin-left:auto}.upload-bar-hint kbd{background:var(--white-6);font-size:var(--font-size-xs);border-radius:0;padding:1px 4px}.photos-grid{min-height:40px;max-height:150px;padding:var(--spacing-xs);grid-template-columns:repeat(auto-fill,minmax(40px,1fr));grid-auto-rows:auto;gap:3px;display:grid;overflow-y:auto}.selected-strip{padding:var(--spacing-md-sm);margin-bottom:var(--spacing-xs);border:1px solid var(--border-subtle);margin-top:var(--spacing-sm);background:#ffffff05;border-width:1px;border-radius:0}body[data-mode=text] .selected-strip{border-color:var(--border-subtle);background:#ffffff06}.selected-strip:has(.thumb){border-color:var(--border-subtle);background:#ffffff06}.selected-strip h4{font-size:var(--font-size-small);color:var(--text-tertiary);margin-bottom:var(--spacing-sm);justify-content:space-between;align-items:center;display:flex}.selected-strip h4 .layer-count-badge{background:var(--accent-primary);color:#fff;font-size:var(--font-size-micro);text-align:center;border-radius:0;min-width:20px;padding:1px 7px;font-weight:700}.selected-strip .strip{gap:var(--spacing-sm);scrollbar-width:thin;-webkit-overflow-scrolling:touch;flex-direction:row;padding-bottom:8px;display:flex;overflow:auto hidden}.selected-strip .thumb{border:2px solid var(--accent-primary);border-radius:0;flex-shrink:0;width:80px;min-width:80px;height:80px;position:relative;overflow:hidden}.selected-strip .thumb .remove-btn{color:#fff;width:26px;height:26px;font-size:var(--font-size-xs);cursor:pointer;z-index:var(--z-above);background:#000000b3;border:none;border-radius:0;justify-content:center;align-items:center;line-height:1;display:none;position:absolute;top:0;right:0}.selected-strip .thumb:hover .remove-btn{display:flex}@media (hover:none){.selected-strip .thumb .remove-btn{display:flex}}.selected-strip .thumb.add-btn{border:2px dashed var(--border-default);color:var(--text-tertiary);font-size:var(--font-size-h2);cursor:pointer;transition:background var(--transition-fast), border-color var(--transition-fast), color var(--transition-fast), opacity var(--transition-fast);background:#ffffff05;justify-content:center;align-items:center;font-weight:300;display:flex}.selected-strip .thumb.add-btn:hover{border-color:var(--accent-primary);color:var(--accent-primary);background:var(--white-4)}.selected-strip .thumb img{-o-object-fit:cover;object-fit:cover;-o-object-position:center;object-position:center;width:100%;height:100%;display:block}.selected-strip .thumb .num{background:var(--accent-primary);font-size:var(--font-size-micro);border-radius:0;padding:1px 4px;font-weight:700;position:absolute;top:4px;left:4px}.selected-strip .empty{color:var(--text-disabled);font-size:var(--font-size-small);text-align:center;padding:var(--spacing-md)}.preview-container.aesthetic-clean{background:linear-gradient(135deg, var(--bg-secondary) 0%, #f8f4ef08 100%)}.preview-container.aesthetic-degraded{background:linear-gradient(180deg, var(--bg-secondary) 0%, #141216 100%)}#preview-grain-overlay{animation:.5s steps(4,end) infinite grain-shift}@keyframes grain-shift{0%,to{transform:translate(0)}25%{transform:translate(-1px,1px)}50%{transform:translate(1px,-1px)}75%{transform:translate(-1px,-1px)}}@keyframes dash-animate{0%{stroke-dashoffset:0}to{stroke-dashoffset:20px}}.input-dark,#watermark-text{background:var(--bg-input);border:1px solid var(--border-default);color:var(--text-primary);font-size:var(--font-size-body-sm);padding:var(--spacing-xs) var(--spacing-sm);border-radius:0;width:100%;transition:background .15s,border-color .15s,box-shadow .15s}.input-dark:focus,#watermark-text:focus{background:var(--bg-secondary);border-color:var(--panel-accent-border);outline:none;box-shadow:0 0 0 2px #0e74901a}.input-dark::-moz-placeholder{color:var(--text-tertiary)}#watermark-text::-moz-placeholder{color:var(--text-tertiary)}.input-dark::placeholder,#watermark-text::placeholder{color:var(--text-tertiary)}.preview-text{text-shadow:none;-webkit-font-smoothing:antialiased;color:#ffffffe0}.favorites-bar{gap:var(--spacing-compact);margin-bottom:var(--spacing-md-sm);align-items:center;display:flex}.fav-toggle{align-items:center;gap:var(--spacing-xs);padding:var(--spacing-compact) var(--spacing-md-sm);background:var(--bg-primary);border:1px solid var(--border-subtle);color:var(--text-disabled);font-size:var(--font-size-micro);cursor:pointer;transition:background var(--transition-fast), border-color var(--transition-fast), color var(--transition-fast), opacity var(--transition-fast);white-space:nowrap;border-radius:0;font-weight:500;display:flex}.fav-toggle:hover{border-color:var(--accent-primary);color:var(--text-secondary)}.fav-toggle.active{background:var(--white-6);border-color:var(--accent-primary);color:var(--accent-primary)}.fav-toggle.active svg{fill:var(--accent-primary);stroke:var(--accent-primary)}.template-card .fav-heart,.effect-pill .fav-heart{cursor:pointer;opacity:0;width:20px;height:20px;color:var(--text-disabled);z-index:var(--z-above);padding:2px;transition:opacity .15s;position:absolute;top:2px;right:2px}.template-card:hover .fav-heart,.effect-pill:hover .fav-heart{opacity:.6}@media (hover:none){.template-card .fav-heart,.effect-pill .fav-heart{opacity:.4;width:24px;height:24px}}.template-card .fav-heart.liked,.effect-pill .fav-heart.liked{opacity:1;color:var(--accent-primary)}.template-card{position:relative}.template-group{margin-bottom:2px}.template-group+.template-group{border-top:1px solid var(--border-subtle);margin-top:var(--spacing-xs);padding-top:var(--spacing-xs)}.sidebar-divider{align-items:center;gap:var(--spacing-sm);padding:var(--spacing-md-sm) 0;font-size:var(--font-size-xs);text-transform:uppercase;letter-spacing:.06em;color:var(--text-tertiary);display:flex}.sidebar-divider:before,.sidebar-divider:after{content:"";background:var(--border-subtle);flex:1;height:1px}.sidebar-mode-tabs{gap:var(--space-1);padding:var(--space-2);border-bottom:1px solid var(--border-subtle);background:var(--bg-secondary);z-index:var(--z-sticky);display:flex;position:sticky;top:0}.sidebar-tab{height:36px;min-height:36px;font-size:var(--font-size-small);border:1px solid var(--border-subtle);color:var(--text-secondary);cursor:pointer;background:0 0;border-radius:0;flex:1;transition:background .15s,color .15s,border-color .15s}.sidebar-tab:hover{background:var(--white-4)}.sidebar-tab.active{background:var(--accent-primary);color:var(--text-on-accent);border-color:var(--accent-primary);font-weight:600}.template-group-title{font-size:var(--font-size-xs);color:var(--text-secondary);text-transform:uppercase;letter-spacing:.6px;align-items:center;gap:var(--spacing-xs);cursor:pointer;-webkit-user-select:none;user-select:none;border-radius:0;margin-bottom:2px;padding:2px 4px;font-weight:600;transition:background .15s,color .15s;display:flex}.template-group-title:hover{background:var(--white-4);color:var(--text-primary)}.template-group-title .tg-count{font-size:var(--font-size-xs);background:var(--white-8);color:var(--text-secondary);border-radius:0;padding:2px 6px;font-weight:600;line-height:1.2}.template-group-title .tg-badge-new{font-size:var(--font-size-micro);letter-spacing:.5px;color:var(--color-success);background:#00b89426;border-radius:0;padding:2px 6px;font-weight:700;line-height:1.4;animation:3s ease-in-out infinite badge-pulse}@keyframes badge-pulse{0%,to{opacity:1}50%{opacity:.7}}.sidebar .template-group-title .tg-chevron{width:12px;height:12px;color:var(--text-disabled);transition:transform var(--transition-fast);flex-shrink:0;margin-left:auto}.template-group.tg-collapsed .template-group-title .tg-chevron{transform:rotate(-90deg)}.template-group.tg-collapsed .template-group-title{opacity:.6;margin-bottom:0}.template-group.tg-collapsed .template-grid,.template-group.tg-collapsed .effect-pills,.template-group.tg-collapsed .effect-grid{display:none}.effect-search-bar{padding:var(--spacing-xs) var(--spacing-sm);background:var(--bg-secondary);z-index:var(--z-sticky);border-bottom:1px solid var(--border-subtle);position:sticky;top:44px}.effect-card{scroll-margin-top:100px}.effect-search-bar input[type=search]{width:100%;height:32px;padding:0 var(--spacing-sm);background:var(--bg-primary);border:1px solid var(--border-subtle);color:var(--text-primary);font-size:var(--font-size-xs);border-radius:0;outline:none;transition:border-color .15s,box-shadow .15s}.effect-search-bar input[type=search]:focus{border-color:var(--accent-primary);box-shadow:0 0 0 2px #0e74901a}.effect-search-bar input[type=search]::placeholder{color:var(--text-disabled)}.effect-suggestions{gap:var(--space-1);margin-top:var(--space-1);flex-wrap:wrap;display:flex}.effect-tag{padding:3px var(--spacing-sm);font-size:var(--font-size-micro);background:var(--bg-elevated);color:var(--text-secondary);cursor:pointer;border:none;border-radius:0;font-weight:500;line-height:1.4;transition:background .15s,color .15s}.effect-tag:hover{background:var(--bg-hover);color:var(--text-primary)}.effect-tag.active,.effect-tag[data-active=true]{background:var(--accent-primary);color:var(--text-on-accent)}.effect-tier-tabs{gap:var(--space-1);padding:var(--space-1);background:var(--white-05,#ffffff0d);margin-bottom:var(--spacing-xs);border-radius:0;display:flex}.tier-tab{height:44px;padding:var(--space-2) var(--space-3);color:var(--text-tertiary);font-size:var(--font-size-xs);text-transform:uppercase;letter-spacing:.06em;cursor:pointer;white-space:nowrap;justify-content:center;align-items:center;gap:var(--spacing-compact);background:0 0;border:none;border-radius:0;flex:1;min-height:36px;font-weight:600;transition:background .15s,color .15s;display:flex}.tier-tab:hover{color:var(--text-primary);background:var(--white-05,#ffffff0d)}.tier-tab:active{background:var(--white-15,#ffffff26);transform:scale(.97)}.tier-tab.active{color:var(--text-primary);background:var(--white-10,#ffffff1a)}.tier-tab-count{font-size:var(--font-size-xs);opacity:.5;font-weight:400}.effect-tier-panel{display:none}.effect-tier-panel.active{display:block}.settings{background:linear-gradient(180deg, var(--bg-secondary) 0%, var(--bg-primary) 100%);border-left:1px solid var(--border-default);flex-direction:column;flex:1;min-height:0;padding:0;display:flex;position:relative;overflow:hidden;box-shadow:inset 1px 0 #ffffff08}.settings-scroll{scrollbar-width:thin;scrollbar-color:var(--border-default) transparent;background:linear-gradient(#ffffff05 0%,#0000 100%);flex-direction:column;flex:1;justify-content:flex-start;gap:0;max-width:100%;min-height:0;padding:0;display:flex;overflow:hidden auto;-webkit-mask-image:linear-gradient(#000 calc(100% - 32px),#0000 100%);mask-image:linear-gradient(#000 calc(100% - 32px),#0000 100%)}.settings-scroll>*{flex-shrink:0}.settings-scroll::-webkit-scrollbar{width:4px}.settings-scroll::-webkit-scrollbar-track{background:0 0}.settings-scroll::-webkit-scrollbar-thumb{background:var(--white-10);border-radius:0}.settings-scroll>.setting-section,.settings-scroll>.section-group{padding:var(--spacing-sm) 0;border-bottom:1px solid var(--white-4);margin-bottom:0}.settings-scroll>.setting-section:first-child,.settings-scroll>.section-group:first-child{padding-top:4px}.settings-scroll>:last-child{padding-bottom:var(--spacing-lg);border-bottom:none}.setting-section.is-hidden,.section-group.is-hidden,.setting-section[style*="display: none"],.setting-section[style*=display\:none],.section-group[style*="display: none"],.section-group[style*=display\:none]{border:none!important;min-height:0!important;margin:0!important;padding:0!important;display:none!important}body[data-mode=photo] #text-settings-group,body[data-mode=photo] #text-mode-tabs,body[data-mode=photo] #palette-section,body[data-mode=photo] #background-section,body[data-mode=photo] #color-section,body[data-mode=photo] #font-section,body[data-mode=photo] #style-section,body[data-mode=photo] #text-section,body[data-mode=photo] #effect-lights-section,body[data-mode=photo] #fontsize-section,body[data-mode=photo] #text-effects-divider,body[data-mode=collage] #text-effects-divider,body[data-mode=text] #cta-timing-row,body[data-mode=collage] #export-format-section,body[data-mode=collage] #accordion-animacao,body[data-mode=collage] #cta-timing-row,body[data-mode=collage] #history-strip,body[data-mode=photo] #history-strip,body[data-mode=text] #timeline-wrapper{display:none}body[data-mode=lyrics] #timeline-wrapper,body[data-mode=lyrics] .timeline-wrapper{display:block}.overlay-hint-box{align-items:center;gap:var(--spacing-sm);padding:var(--spacing-sm) var(--spacing-md-sm);background:color-mix(in srgb, var(--color-accent) 12%, transparent);border-left:2px solid var(--accent-primary);font-size:var(--font-size-xs);color:var(--text-secondary);border-radius:0;line-height:1.4;display:flex}body[data-mode=photo] #text-edit-bar,body[data-mode=lyrics] #text-edit-bar{display:none}body[data-mode=photo] .preview-text-input,body[data-mode=photo] #char-counter,body[data-mode=collage] #char-counter{display:none!important}.settings-tabs{border-bottom:1px solid var(--border-default);background:var(--bg-secondary);flex-shrink:0;display:flex}.settings-tab{justify-content:center;align-items:center;gap:var(--spacing-xs);min-height:var(--ctrl-lg);padding:0 var(--spacing-md);font-size:var(--font-size-xs);color:var(--text-secondary);cursor:pointer;background:0 0;border:none;border-bottom:2px solid #0000;flex:1;font-weight:500;transition:color .15s,border-color .15s;display:flex}.settings-tab:hover{color:var(--text-primary)}.settings-tab.active{color:var(--text-primary);border-bottom-color:var(--accent-primary)}.settings-panel{flex-direction:column;flex:1;min-height:0;display:flex;overflow:hidden}.settings-panel.is-hidden{display:none}.settings-panel-cta{padding:var(--space-3) var(--space-4) var(--space-4);border-top:1px solid var(--border-subtle);background:var(--bg-secondary);flex-shrink:0}.settings-cta-btn{justify-content:center;align-items:center;gap:var(--space-2);width:100%;min-height:var(--ctrl-lg);padding:0 var(--space-4);background:var(--accent-primary);color:var(--text-on-accent);font-size:var(--font-size-body);cursor:pointer;border:none;border-radius:0;font-weight:600;transition:opacity .15s;display:flex}.settings-cta-btn:hover{opacity:.88}.export-panel-scroll{padding:var(--spacing-md) var(--spacing-md) var(--spacing-xl);scrollbar-width:thin;scrollbar-color:var(--border-default) transparent;gap:var(--spacing-md);flex-direction:column;flex:1;min-height:0;display:flex;overflow:hidden auto}.export-panel-scroll::-webkit-scrollbar{width:4px}.export-panel-scroll::-webkit-scrollbar-track{background:0 0}.export-panel-scroll::-webkit-scrollbar-thumb{background:var(--white-10);border-radius:0}.export-section .sidebar-section-label{margin-bottom:var(--spacing-sm);display:block}.cta-timing-row{max-height:140px;padding:var(--space-3);gap:var(--space-3);font-size:var(--font-size-xs);color:var(--text-secondary);visibility:visible;background:var(--bg-elevated);border:1px solid var(--border-subtle);border-radius:0;grid-template-columns:1fr 1fr;margin-bottom:0;transition:max-height .2s,opacity .15s,margin-bottom .2s,visibility .2s;display:grid;overflow:hidden}.cta-timing-row[data-hidden=true],.cta-timing-row.timing-hidden{opacity:0;pointer-events:none;visibility:hidden;border-width:0;max-height:0;margin-bottom:0;padding-top:0;padding-bottom:0}.photo-anchor-btns{gap:4px;display:flex}.photo-anchor-btn{font-size:var(--font-size-xs);border:1px solid var(--border-default);background:var(--panel-surface);color:var(--text-secondary);cursor:pointer;border-radius:0;padding:3px 10px;font-weight:500;transition:background .12s,color .12s,border-color .12s}.photo-anchor-btn.active{background:var(--accent);border-color:var(--accent);color:#fff}.export-controls--compact{gap:var(--spacing-sm);flex-direction:column;display:flex}.export-row{gap:var(--spacing-sm);align-items:flex-end;display:flex}.export-row--detail{align-items:flex-end;gap:var(--spacing-sm)}.export-col{flex:1;min-width:0}.export-mini-label{font-size:var(--font-size-micro);text-transform:uppercase;letter-spacing:.08em;color:var(--text-tertiary);margin-bottom:var(--space-2);font-weight:600;line-height:1;display:block}.export-pills-row{gap:var(--space-2);grid-template-columns:repeat(auto-fit,minmax(0,1fr));display:grid}.export-pills-row.cta-format-row{max-height:none;margin-bottom:0;overflow:visible}.export-pills-row.quality-pills{gap:var(--space-2)}.export-group{gap:var(--spacing-xs);flex-direction:column;display:flex}.export-group-desc{font-size:var(--font-size-micro);color:var(--text-tertiary);text-align:center;margin-top:0;line-height:1.2}.export-info{gap:var(--spacing-xs);padding:var(--space-2) var(--space-3);text-align:center;background:var(--bg-elevated);border:1px solid var(--border-subtle);border-radius:0;flex-direction:column;display:flex}.export-info-main{font-size:var(--font-size-xs);color:var(--text-secondary);font-weight:500}.export-info-sub{font-size:var(--font-size-xs);color:var(--text-tertiary)}.export-pills-row .quality-pill,.export-group-buttons .quality-pill{height:36px;min-height:36px;font-size:var(--font-size-xs);flex-direction:row;gap:0}.quality-pill .btn-label{font-size:var(--font-size-small);font-weight:500}.quality-pill .btn-sub{font-size:var(--font-size-micro);color:var(--text-tertiary)}.quality-pill.active .btn-sub{color:#5eaab8b3}.cta-output-row{gap:var(--spacing-sm);margin-bottom:var(--spacing-sm);align-items:center;display:flex}.cta-output-row .cta-format-row{flex:1;max-height:none;margin-bottom:0;overflow:visible}.cta-output-row .quality-pills{flex-shrink:0}.cta-format-row{gap:var(--spacing-sm);margin-bottom:var(--spacing-sm);justify-content:center;max-height:60px;transition:max-height .2s,opacity .15s,margin-bottom .2s;display:flex;overflow:hidden}.cta-format-row.row-hidden{opacity:0;pointer-events:none;max-height:0;margin-bottom:0}.cta-format-pill{text-align:center;padding:0 var(--spacing-xs);font-size:var(--font-size-xs);background:var(--bg-elevated);color:var(--text-secondary);border:1px solid var(--border-default);cursor:pointer;min-height:var(--ctrl-md);height:var(--ctrl-md);border-radius:0;flex-direction:column;flex:1;justify-content:center;align-items:center;gap:1px;font-weight:600;transition:background .15s,border-color .15s,color .15s,opacity .15s;display:flex}.cta-format-pill .pill-sub{font-size:var(--font-size-micro);color:var(--text-tertiary);letter-spacing:.02em;font-weight:400;line-height:1;transition:color .15s}.cta-format-pill:hover{background:var(--white-8);border-color:var(--border-hover);color:var(--text-primary)}.cta-format-pill.active{background:var(--accent-bg);color:var(--text-primary);border-color:rgba(var(--accent-primary-rgb), .45);box-shadow:var(--shadow-ring-accent-sm)}.cta-format-pill.active .pill-sub{color:var(--accent-primary);opacity:.9}:is(.export-controls:has(.cta-format-pill[data-format=mp4].active) .export-row--detail,.export-controls:has(.cta-format-pill[data-format=webm].active) .export-row--detail){display:none}.cta-quality-row{gap:var(--spacing-xs);flex:1;grid-template-columns:repeat(auto-fit,minmax(0,1fr));max-height:60px;transition:max-height .2s,opacity .15s,margin-bottom .2s;display:grid;overflow:hidden}.cta-quality-row.row-hidden{opacity:0;pointer-events:none;max-height:0;margin-bottom:0}.cta-quality-pill{text-align:center;padding:0 var(--spacing-xs);font-size:var(--font-size-xs);background:var(--bg-elevated);color:var(--text-tertiary);border:1px solid var(--border-default);cursor:pointer;-webkit-user-select:none;user-select:none;min-height:var(--ctrl-md);height:var(--ctrl-md);border-radius:0;flex:1;justify-content:center;align-items:center;font-weight:600;transition:background .15s,border-color .15s,color .15s,opacity .15s;display:flex}.cta-quality-pill:hover{background:var(--white-8);border-color:var(--border-hover);color:var(--text-secondary)}.cta-quality-pill.active{background:var(--accent-bg);color:var(--text-primary);border-color:rgba(var(--accent-primary-rgb), .45);box-shadow:var(--shadow-ring-accent-sm)}.quality-pills{gap:var(--spacing-xs);display:flex}.quality-pill{text-align:center;padding:0 var(--spacing-compact);min-height:var(--ctrl-md);background:var(--bg-elevated);border:1px solid var(--border-default);color:var(--text-secondary);font-size:var(--font-size-small);cursor:pointer;border-radius:0;flex:1;justify-content:center;align-items:center;font-weight:500;transition:background .15s,border-color .15s,color .15s;display:flex;position:relative}.quality-pill:hover{background:var(--bg-hover);border-color:var(--border-strong);color:var(--text-primary)}.quality-pill.active{background:var(--accent-bg);color:var(--text-primary);border-color:rgba(var(--accent-primary-rgb), .5);box-shadow:var(--shadow-ring-accent-sm);font-weight:600}.quality-info{font-size:var(--font-size-micro);color:var(--text-tertiary);text-align:center;margin-top:var(--spacing-xs);display:block}.cta-summary{font-size:var(--font-size-micro);color:var(--text-tertiary);text-align:center;margin-bottom:var(--spacing-compact);padding:0 6px;line-height:1.3}.setting-section{position:relative}.setting-section.compact{margin-bottom:0;padding-bottom:0}.setting-group-stack{gap:var(--spacing-xs);margin-top:var(--spacing-xs);flex-direction:column;display:flex}.brand-subpanel{border-top:1px solid var(--white-6);padding-top:var(--spacing-sm)}.setting-label{font-size:var(--font-size-xs);color:var(--text-tertiary);text-transform:uppercase;letter-spacing:.08em;margin-bottom:var(--space-1);font-weight:600;display:block}.font-size-control.compact{gap:var(--spacing-xs)}.text-settings-group .section-group-content{gap:var(--spacing-xs);flex-direction:column;display:flex}.text-input-large{width:100%;min-height:var(--ctrl-md);padding:0 var(--spacing-md-sm);background:var(--bg-input);border:1px solid var(--border-default);color:var(--text-primary);font-size:var(--font-size-body);text-align:center;transition:background var(--transition-fast), border-color var(--transition-fast), box-shadow var(--transition-fast);border-radius:0;font-weight:600}.text-input-large.force-uppercase{text-transform:uppercase}.text-input-large:focus{background:var(--bg-secondary);border-color:var(--panel-accent-border);outline:none;box-shadow:0 0 0 2px #0e74901a}#font-section select,#background-section select{width:100%;height:var(--ctrl-md);padding:0 32px 0 var(--spacing-sm);background:var(--bg-input);appearance:none;border:1px solid var(--border-default);color:var(--text-primary);font-size:var(--font-size-xs);cursor:pointer;transition:background-color var(--transition-fast), border-color var(--transition-fast);background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12' viewBox='0 0 12 12'%3E%3Cpath d='M2 4l4 4 4-4' stroke='%23888' stroke-width='1.5' fill='none' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E");background-position:right 10px center;background-repeat:no-repeat;border-radius:0;font-weight:500}#font-section select:focus,#background-section select:focus{border-color:var(--panel-accent-border);outline:none;box-shadow:0 0 0 2px #0e74901a}.font-size-control{align-items:center;gap:var(--spacing-compact);margin-bottom:var(--spacing-compact);display:flex}.font-size-control input[type=range]{accent-color:var(--accent-primary);cursor:pointer;background:0 0;flex:1;height:3px}.font-size-control .font-size-value{font-size:var(--font-size-micro);color:var(--accent-primary);text-align:right;font-variant-numeric:tabular-nums;min-width:36px;font-weight:600}.color-picker-row{align-items:center;gap:var(--spacing-sm);margin-bottom:var(--spacing-xs);display:flex}.color-picker-row input[type=color]{width:var(--ctrl-md);height:var(--ctrl-md);border:1px solid var(--border-default);cursor:pointer;background:var(--bg-input);border-radius:0;padding:2px;transition:border-color .15s,box-shadow .15s}.color-picker-row input[type=color]:hover,.color-picker-row input[type=color]:focus{border-color:var(--panel-accent-border);box-shadow:0 0 0 2px #0e74901a}.color-picker-row input[type=text]{min-height:var(--ctrl-md);padding:0 var(--spacing-sm);background:var(--bg-input);border:1px solid var(--border-default);color:var(--text-primary);font-size:var(--font-size-xs);border-radius:0;flex:1;font-family:monospace;transition:background .15s,border-color .15s,box-shadow .15s}.color-picker-row input[type=text]:focus{background:var(--bg-secondary);border-color:var(--panel-accent-border);outline:none;box-shadow:0 0 0 2px #0e74901a}.setting-label-sm{font-size:var(--font-size-xs);color:var(--text-tertiary);white-space:nowrap}.btn-sm{padding:2px var(--spacing-sm);font-size:var(--font-size-xs);border:1px solid var(--border-default);cursor:pointer;border-radius:0;line-height:1.6;transition:background .15s,border-color .15s}.btn-ghost{color:var(--text-secondary);background:0 0}.btn-ghost:hover{border-color:var(--border-hover);color:var(--text-primary);background:#ffffff0f}.color-tabs{gap:var(--spacing-compact);margin-bottom:var(--spacing-xs);width:100%;display:flex}.color-tabs .tab{font-size:var(--font-size-xs);padding:var(--spacing-xs) var(--spacing-sm);background:var(--panel-surface);border:1px solid var(--border-subtle);color:var(--text-tertiary);cursor:pointer;text-align:center;border-radius:0;flex:1;transition:background .15s,border-color .15s,color .15s}.color-tabs .tab:hover{background:var(--panel-surface-hover);border-color:var(--border-default);color:var(--text-primary)}.color-tabs .tab.active{background:var(--panel-accent-surface);color:var(--text-primary);border-color:var(--panel-accent-border)}.sidebar-format-section{padding:var(--sidebar-section-pad) var(--sidebar-body-pad-x);border-bottom:1px solid var(--white-4);margin-bottom:0}.sidebar-section-label{font-size:var(--font-size-micro);letter-spacing:.08em;text-transform:uppercase;color:var(--text-muted);margin-top:20px;margin-bottom:8px;font-weight:600;display:block}.section-group:hover{background:#ffffff05}.section-group-title .chevron{transition:transform var(--transition-fast);font-size:var(--font-size-micro);color:var(--text-tertiary);margin-left:auto}.section-group .section-group-content{animation:.15s fadeIn}@keyframes shake{0%,to{transform:translate(0)}20%{transform:translate(-6px)}40%{transform:translate(6px)}60%{transform:translate(-4px)}80%{transform:translate(4px)}}.shake{animation:.4s shake;border-color:var(--color-error)!important}@keyframes fadeIn{0%{opacity:0;transform:translateY(-4px)}to{opacity:1;transform:translateY(0)}}@keyframes shimmer{0%{background-position:-200% 0}to{background-position:200% 0}}:focus-visible{outline:var(--focus-ring);outline-offset:2px}.section-group-title .badge{background:var(--white-6);color:var(--text-disabled);font-size:var(--font-size-micro);letter-spacing:.3px;border-radius:0;padding:2px 6px;font-weight:500}.section-group-title .badge.optional{background:var(--white-4);color:var(--text-disabled)}.section-group-title .badge.recommended{background:var(--white-6);color:var(--accent-primary)}.dim-row{gap:var(--spacing-sm);align-items:stretch;display:flex}.dim-buttons{gap:var(--spacing-sm);grid-template-columns:repeat(6,1fr);place-items:stretch stretch;width:100%;display:grid}.dim-buttons .dim-btn:first-child,.dim-buttons .dim-btn:nth-child(2),.dim-buttons .dim-btn:nth-child(3){grid-column:span 2}.dim-buttons .dim-btn:nth-child(4){grid-column:1/4}.dim-buttons .dim-btn:nth-child(5){grid-column:4/7}.dim-buttons .dim-btn:nth-child(6),.dim-buttons .dim-btn:nth-child(7){grid-column:1/7}.surprise-me-btn{padding:var(--spacing-compact) var(--spacing-sm);background:var(--white-3);border:1px solid var(--white-6);color:var(--text-tertiary);cursor:pointer;border-radius:0;flex-shrink:0;justify-content:center;align-items:center;transition:background .15s,border-color .15s,color .15s,opacity .15s;display:flex}.dim-btn .dim-icon{opacity:.7;border:1.5px solid;border-radius:0;flex-shrink:0}.dim-btn.active .dim-icon{opacity:1;border-color:var(--accent-primary);background:#0e749014}.dim-btn span{font-size:var(--font-size-micro);color:var(--text-tertiary);margin-top:0;display:block}.dim-btn.active span{color:var(--accent-primary);font-weight:600}.toggle-row{justify-content:flex-end;align-items:center;gap:var(--spacing-sm);padding:var(--spacing-xs) 0;border:none;border-bottom:1px solid var(--white-4);background:0 0;border-radius:0;flex-direction:row-reverse;min-height:28px;margin-bottom:0;display:flex}.setting-section .toggle-row{margin-bottom:var(--spacing-xs);border-bottom:none}.toggle-row label{font-size:var(--font-size-xs);color:var(--text-secondary);flex:1;font-weight:500}.toggle-row input[type=checkbox]{width:14px;height:14px;accent-color:var(--accent-primary);cursor:pointer;flex-shrink:0}.photo-lib-container{padding:0}.photo-lib-header{margin-bottom:var(--spacing-md-sm);justify-content:space-between;align-items:center;display:flex}.photo-lib-label{font-size:var(--font-size-xs);letter-spacing:.05em;color:var(--text-tertiary,#888);text-transform:uppercase;font-weight:600}.photo-lib-count{letter-spacing:0;text-transform:none;color:var(--accent-primary,#2dd4bf);font-weight:400}.photo-lib-upload-btn{align-items:center;gap:var(--spacing-compact);height:var(--ctrl-sm);color:var(--text-secondary);border:1px solid var(--border-default);font-size:var(--font-size-small);cursor:pointer;white-space:nowrap;background:0 0;border-radius:0;flex-shrink:0;padding:0 10px;font-weight:600;transition:background .15s,border-color .15s,color .15s;display:flex}.photo-lib-upload-btn:hover{border-color:var(--border-hover);color:var(--text-primary);background:0 0}.photo-lib-grid{gap:var(--space-1);scrollbar-width:thin;grid-template-columns:repeat(4,1fr);max-height:240px;margin-bottom:0;display:grid;overflow-y:auto}.photo-lib-item{aspect-ratio:1;border:2px solid var(--border-default,#333);cursor:default;border-radius:0;width:100%;transition:border-color .15s;position:relative;overflow:hidden;min-width:0!important}.photo-lib-item:hover{border-color:var(--border-strong,#555)}.photo-lib-item img{-o-object-fit:cover;object-fit:cover;background:var(--bg-secondary,#1a1a1a);width:100%;height:100%;display:block}.photo-lib-remove{box-sizing:border-box;color:#fff;cursor:pointer;opacity:1;background:#000000b3;border:none;border-radius:0;justify-content:center;align-items:center;width:18px;height:18px;padding:0;line-height:1;transition:opacity .15s,background .15s;display:flex;position:absolute;top:2px;right:2px}.photo-lib-remove svg{pointer-events:none;width:10px;height:10px}.photo-lib-clear-btn{width:28px;height:28px;margin-left:var(--spacing-xs);border:1px solid var(--border-default);color:var(--text-secondary);cursor:pointer;background:0 0;border-radius:0;justify-content:center;align-items:center;padding:0;transition:background .12s,color .12s,border-color .12s;display:inline-flex}.photo-lib-clear-btn:hover{color:#dc2626;background:#dc26261f;border-color:#dc262699}.photo-lib-remove:hover{background:#dc2626e6}@media (hover:hover) and (pointer:fine){.photo-lib-remove{opacity:0}.photo-lib-item:hover .photo-lib-remove{opacity:1}}@media (hover:none),(pointer:coarse){.photo-lib-remove{background:#0000009e;width:32px;height:32px;top:4px;right:4px}.photo-lib-remove svg{width:14px;height:14px}}.photo-lib-badge{top:var(--spacing-xs);left:var(--spacing-xs);background:var(--accent-primary,#2dd4bf);color:var(--text-on-accent);font-size:var(--font-size-micro);border-radius:0;padding:2px 6px;font-weight:700;line-height:1;position:absolute}.photo-thumb-icon{bottom:var(--spacing-xs);right:var(--spacing-xs);font-size:var(--font-size-micro);border-radius:0;padding:2px 6px;font-weight:700;line-height:1;position:absolute}.photo-lib-actions{gap:var(--spacing-sm);align-items:center;display:flex}.photo-lib-select{background:var(--bg-elevated,#1a1a1a);border:1px solid var(--border-default,#333);height:28px;color:var(--text-primary,#eee);font-size:var(--font-size-small);border-radius:0;flex:1;padding:0 8px}.photo-lib-clear{border:1px solid var(--border-default,#333);height:28px;color:var(--text-secondary,#aaa);font-size:var(--font-size-small);cursor:pointer;background:0 0;border-radius:0;padding:0 10px;transition:background .15s,border-color .15s,color .15s,opacity .15s}.photo-lib-grid:empty:before{content:"";border:1px dashed var(--border-subtle,#222);opacity:.5;border-radius:0;grid-column:1/-1;height:40px;display:block}.template-group,.effect-group{padding:var(--spacing-xs) 0;margin:0 0 var(--spacing-xs)}.template-card{padding:var(--spacing-md-sm);gap:var(--spacing-sm)}.section-group{background:0 0;border:none;margin:0;padding:0}.section-group:last-child{margin-bottom:0}.section-group-title{font-size:var(--font-size-xs);color:var(--text-secondary);text-transform:uppercase;letter-spacing:.05em;margin-bottom:var(--spacing-xs);align-items:center;gap:var(--spacing-xs);cursor:pointer;-webkit-user-select:none;user-select:none;padding:0;font-weight:500;display:flex}.section-group.collapsed .section-group-title{margin-bottom:0}.section-group-title .chevron{font-size:var(--font-size-micro);color:var(--text-tertiary);opacity:.6;margin-left:auto;transition:transform .15s}.section-group.collapsed .section-group-title .chevron{transform:rotate(-90deg)}.section-group-content{gap:var(--spacing-sm);flex-direction:column;display:flex}.section-group.collapsed .section-group-content{display:none}.sidebar-subcard{padding:var(--spacing-xs) 0;margin:var(--spacing-xs) 0;background:0 0;border:none;border-radius:0}.setting-section{background:0 0;margin:0;padding:0}#sidebar-main-content>.setting-section,#sidebar-style-content>.setting-section,#sidebar-brand-content>.setting-section,#sidebar-main-content>.sidebar-subcard,#sidebar-style-content>.sidebar-subcard,#sidebar-brand-content>.sidebar-subcard,#sidebar-main-content>[id$=-section],#sidebar-style-content>[id$=-section],#sidebar-brand-content>[id$=-section]{margin:0}.effect-pills,.dim-btns,.btn-group{gap:var(--spacing-sm);flex-wrap:wrap;display:flex}.btn-group.grid-cols-2{grid-template-columns:1fr 1fr;display:grid}.effect-pills{gap:var(--space-2)}.settings .effect-pills{gap:var(--space-1)}.helper-note{font-size:var(--font-size-micro);color:var(--text-tertiary);margin-top:var(--spacing-xs)}.overlay-mode-tabs{padding:var(--space-2) var(--space-3) var(--space-1);border-bottom:1px solid var(--border-default)}.overlay-mode-tabs .btn-group{margin:0}.effect-grid{gap:var(--spacing-xs);width:100%;padding:var(--spacing-xs) 0;grid-template-columns:repeat(3,1fr);display:grid}.effect-card{aspect-ratio:1;cursor:pointer;border:1px solid var(--white-10);background:var(--bg-secondary);border-radius:0;min-width:0;transition:background .15s,border-color .15s,color .15s,opacity .15s,transform .1s;position:relative;overflow:hidden}.effect-card:hover{border-color:var(--border-hover);background:var(--bg-elevated);transform:scale(1.02)}.effect-card:active{transform:scale(.98)}.effect-card.text-short{opacity:.4;filter:grayscale(.6)}.effect-category-header{letter-spacing:.1em;text-transform:uppercase;color:var(--text-disabled);border-top:1px solid var(--border-subtle);grid-column:1/-1;margin-top:4px;padding:12px 0 8px;font-size:10px;font-weight:700}.effect-card.font-incompatible{opacity:.28;filter:grayscale();cursor:not-allowed;pointer-events:auto}.effect-card.font-incompatible:hover{border-color:var(--white-6);box-shadow:none;transform:none}.effect-card.font-incompatible:active{transform:none}.effect-card.font-incompatible:after{content:"✕";font-size:var(--font-size-micro);color:#ffffff80;pointer-events:none;letter-spacing:0;background:#0000008c;border-radius:0;padding:1px 4px;font-weight:900;position:absolute;top:4px;right:5px}.effect-card img{-o-object-fit:cover;object-fit:cover;background:var(--bg-secondary);width:100%;height:100%;display:block}.effect-card span{padding:var(--spacing-md-sm) 3px var(--spacing-xs);letter-spacing:.03em;color:#fffffffa;text-align:center;text-transform:uppercase;white-space:nowrap;text-overflow:ellipsis;-webkit-line-clamp:2;word-break:break-word;background:linear-gradient(#0000 0%,#000000f2 100%);-webkit-box-orient:vertical;font-size:11px;font-weight:700;line-height:1.25;display:-webkit-box;position:absolute;bottom:0;left:0;right:0;overflow:hidden}@media (width<=768px){.effect-card span{font-size:10px}}.effect-card.active span{color:var(--accent-primary)}.effect-card.active{border-color:var(--accent-primary);box-shadow:inset 0 0 0 1px var(--accent-primary), 0 0 0 1px rgba(var(--accent-primary-rgb), .25);background:rgba(var(--accent-primary-rgb), .08)}.tier-icon{pointer-events:none;z-index:var(--z-above);opacity:.7;position:absolute;top:3px;right:3px}.tier-icon.tier-free{stroke:var(--color-free)}.tier-icon.tier-pro{stroke:var(--color-pro);opacity:.55}.effect-card:hover .tier-icon,.template-card:hover .tier-icon{opacity:1}.template-card:not([data-client]):after{content:"";opacity:.55;pointer-events:none;width:14px;height:14px;z-index:var(--z-above);background:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='14' height='14' viewBox='0 0 24 24' fill='none' stroke='%23f59e0b' stroke-width='2'%3E%3Crect x='3' y='11' width='18' height='11' rx='2' ry='2'/%3E%3Cpath d='M7 11V7a5 5 0 0110 0v4'/%3E%3C/svg%3E") 50% no-repeat;position:absolute;top:3px;right:3px}.template-card:not([data-client]):hover:after{opacity:1}.pro-badge{background:linear-gradient(135deg, var(--color-pro), var(--color-pro-hover));color:var(--color-pro-text);font-size:var(--font-size-micro);min-width:34px;height:20px;padding:0 var(--space-2);z-index:var(--z-above);letter-spacing:.08em;text-transform:uppercase;border-radius:0;justify-content:center;align-items:center;display:flex;position:absolute;top:5px;right:5px}.effect-card[data-engine]:before{display:none}.pro-hint{font-size:calc(var(--font-size-micro) - 1px);color:var(--accent-primary);background:rgba(var(--accent-primary-rgb,76, 175, 80), .15);margin-left:var(--spacing-xs);vertical-align:middle;letter-spacing:.5px;cursor:pointer;border-radius:0;padding:1px 5px;font-weight:700}.pro-badge-sm{font-size:calc(var(--font-size-micro) - 2px);color:var(--accent-primary);vertical-align:super;margin-left:2px;font-weight:700}.effect-card[data-tier=pro],.template-card[data-tier=pro]{position:relative}.pro-effects-section{margin-top:var(--spacing-sm);background:#f59e0b05;border:1px solid #f59e0b40;border-radius:0;transition:border-color .2s,background .2s}.pro-effects-section:hover{background:#f59e0b0a;border-color:#f59e0b59}.pro-effects-section>summary{cursor:pointer;padding:var(--spacing-xs) var(--spacing-sm);-webkit-user-select:none;user-select:none;border-radius:0;list-style:none;transition:background .15s}.pro-effects-section>summary:hover{background:#f59e0b0f}.pro-effects-section>summary::-webkit-details-marker{display:none}.pro-effects-section>summary .tg-chevron{transition:transform .25s cubic-bezier(.16,1,.3,1)}.pro-effects-section[open]>summary .tg-chevron{transform:rotate(180deg)}.upgrade-toast{background:linear-gradient(135deg, var(--bg-elevated), var(--bg-secondary));border:2px solid var(--color-pro);padding:var(--spacing-md);width:300px;max-width:calc(100vw - 40px);z-index:var(--z-toast);border-radius:0;animation:.4s cubic-bezier(.16,1,.3,1) toastSlideUp;position:fixed;bottom:100px;right:20px;box-shadow:0 12px 40px #000000b3}@keyframes toastSlideUp{0%{opacity:0;transform:translateY(120px)}to{opacity:1;transform:translateY(0)}}.upgrade-toast .toast-close{color:var(--text-tertiary);font-size:var(--font-size-h3);cursor:pointer;background:0 0;border:none;line-height:1;position:absolute;top:8px;right:8px}.upgrade-toast .toast-icon{font-size:var(--font-size-h1);margin-bottom:var(--spacing-compact)}.upgrade-toast h4{color:var(--color-pro);font-size:var(--font-size-body);margin-bottom:var(--spacing-compact);font-weight:700}.upgrade-toast p{color:var(--text-secondary);font-size:var(--font-size-small);margin-bottom:var(--spacing-md-sm)}.upgrade-toast .toast-cta{background:var(--color-pro);color:var(--color-pro-text);text-align:center;padding:var(--spacing-sm);font-weight:700;font-size:var(--font-size-body-sm);transition:background var(--transition-normal);border-radius:0;text-decoration:none;display:block}.upgrade-toast .toast-cta:hover{background:var(--color-pro-hover)}#pro-preview-overlay{z-index:var(--z-overlay,50);background:#000000d9;border-radius:0;flex-direction:column;justify-content:center;align-items:center;gap:12px;display:flex;position:absolute;inset:0}#pro-preview-overlay.is-hidden{display:none}#pro-preview-gif{-o-object-fit:contain;object-fit:contain;border-radius:0;max-width:80%;max-height:60%}.pro-preview-badge{align-items:center;gap:8px;display:flex}.pro-preview-label{background:linear-gradient(135deg, var(--color-pro), var(--color-pro-hover));color:var(--color-pro-text);font-size:var(--font-size-micro);letter-spacing:.05em;border-radius:0;padding:2px 8px;font-weight:800}.pro-preview-name{color:var(--text-primary);font-size:var(--font-size-body);font-weight:600}.pro-preview-upgrade{background:linear-gradient(135deg, var(--color-pro), var(--color-pro-hover));color:var(--color-pro-text);font-weight:700;font-size:var(--font-size-body-sm);cursor:pointer;border:none;border-radius:0;padding:8px 24px;transition:opacity .2s}.pro-preview-upgrade:hover{opacity:.85}.pro-preview-close{color:var(--text-secondary);font-size:var(--font-size-h2);cursor:pointer;background:0 0;border:none;padding:4px 8px;line-height:1;position:absolute;top:8px;right:8px}.preview-text-input{margin-bottom:var(--spacing-sm);padding:var(--spacing-sm) var(--spacing-md);flex-direction:column;align-self:center;align-items:center;width:100%;max-width:680px;margin-left:auto;margin-right:auto;display:flex}.preview-text-input textarea{width:100%;padding:var(--spacing-md) var(--spacing-lg);background:var(--bg-elevated);border:2px solid var(--border-strong);color:var(--text-primary);font-size:var(--font-size-h2);letter-spacing:.01em;resize:none;text-align:center;border-radius:0;outline:none;font-weight:700;transition:border-color .25s,box-shadow .25s,background .25s}.preview-text-input textarea::placeholder{color:var(--text-secondary);font-weight:500;font-size:var(--font-size-h3)}.preview-text-input textarea:hover{border-color:var(--border-strong);background:var(--white-4)}.preview-text-input textarea:focus{border-color:var(--accent-primary);box-shadow:var(--shadow-ring-accent-lg);background:var(--white-3)}.template-hint{margin-top:var(--spacing-sm);padding:var(--spacing-sm) var(--spacing-md);background:var(--bg-primary);border:1px solid var(--border-subtle);font-size:var(--font-size-micro);color:var(--text-tertiary);align-items:center;gap:var(--spacing-compact);border-radius:0;line-height:1.3;display:flex}.template-hint-icon{font-size:var(--font-size-micro);color:var(--accent-primary);background:var(--white-6);border-radius:0;flex-shrink:0;justify-content:center;align-items:center;width:16px;height:16px;font-style:italic;font-weight:700;display:flex}.template-grid{gap:var(--spacing-compact);width:100%;padding:var(--spacing-xs) 0;grid-template-columns:repeat(4,1fr);display:grid}.template-card{background:var(--bg-secondary);border:1px solid var(--border-subtle);cursor:pointer;text-align:center;aspect-ratio:1;border-radius:0;flex-direction:column;align-items:center;gap:0;min-width:0;padding:0;transition:background .15s,border-color .15s,color .15s,opacity .15s;display:flex;position:relative;overflow:hidden}.template-card:hover{border-color:var(--border-hover);background:var(--bg-elevated)}.template-card.active{border-color:var(--accent-primary);box-shadow:0 0 0 1px var(--accent-primary);background:#0e74901a}.template-card.insufficient{position:relative}.template-card.insufficient:after{content:attr(data-insufficient-msg);color:var(--text-primary);padding:var(--spacing-compact) var(--spacing-md-sm);font-size:var(--font-size-micro);white-space:nowrap;opacity:0;pointer-events:none;z-index:var(--z-mobile-cta);background:#000000eb;border-radius:0;transition:opacity .15s;position:absolute;bottom:calc(100% + 4px);left:50%;transform:translate(-50%)}.template-card.insufficient:hover:after{opacity:1}.tpl-gif{-o-object-fit:contain;object-fit:contain;background:var(--bg-elevated);border-radius:0;width:100%;height:100%;animation-play-state:running;display:block}.template-card:hover .tpl-gif{filter:brightness(1.1)}.tpl-gif-fallback{aspect-ratio:1;background:var(--bg-elevated);width:100%;font-size:var(--font-size-small);color:var(--text-secondary);text-align:center;padding:var(--spacing-sm);border-radius:0;justify-content:center;align-items:center;margin-bottom:2px;font-weight:600;display:flex}.tpl-mini{aspect-ratio:1;border-radius:0;gap:2px;width:100%;margin-bottom:2px;display:grid;overflow:hidden}.tpl-mini span{background:linear-gradient(135deg, var(--white-12), var(--white-6));border-radius:0;min-height:0;transition:background .2s,transform .2s}.tpl-mini span:nth-child(2){background:linear-gradient(135deg, #ffffff17, var(--white-4))}.tpl-mini span:nth-child(3){background:linear-gradient(135deg,#788ca02e,#788ca014)}.tpl-mini span:nth-child(4){background:linear-gradient(135deg,#8c96a52e,#8c96a514)}.tpl-mini span:nth-child(5){background:linear-gradient(135deg,#a0a5af2e,#a0a5af14)}.tpl-mini span:nth-child(6){background:linear-gradient(135deg,#64738726,#64738714)}.template-card:hover .tpl-mini span{background:linear-gradient(135deg, #ffffff29, var(--white-10));transform:scale(1.02)}.template-card.active .tpl-mini span{background:linear-gradient(135deg, #ffffff2e, var(--white-12))}.tpl-mini-bento{grid-template-rows:1fr 1fr 1fr;grid-template-columns:1fr 1fr}.tpl-mini-bento span:first-child{grid-row:1/3}.tpl-mini-grid{grid-template-rows:1fr 1fr;grid-template-columns:1fr 1fr 1fr}.tpl-mini-slideshow{grid-template-columns:1fr;position:relative}.tpl-mini-slideshow span:first-child{aspect-ratio:1}.tpl-mini-slideshow .tpl-arrow{font-size:var(--font-size-body);color:#ffffff4d;background:0 0;justify-content:center;align-items:center;display:flex;position:absolute;inset:0}.tpl-mini-carousel{grid-template-rows:1fr;grid-template-columns:1fr 1.4fr 1fr;align-items:stretch}.tpl-mini-carousel span{min-height:100%}.tpl-mini-collage{grid-template-rows:1fr 1fr;grid-template-columns:1fr 1fr}.tpl-mini-collage span:nth-child(2){transform:rotate(3deg)scale(1.05)}.tpl-mini-collage span:nth-child(3){transform:rotate(-2deg)scale(1.02)}.tpl-mini-polaroid{padding:var(--spacing-compact);grid-template-columns:1fr;position:relative}.tpl-mini-polaroid span:first-child{aspect-ratio:1;border:2px solid var(--white-6);background:var(--white-10);border-radius:0;padding-bottom:8px}.tpl-mini-polaroid span:nth-child(2){border:2px solid var(--white-4);z-index:-1;background:#ffffff0d;border-radius:0;position:absolute;inset:3px;transform:rotate(6deg)}.tpl-mini-kenburns{grid-template-columns:1fr}.tpl-mini-kenburns span{aspect-ratio:16/10;border:1px dashed var(--white-10)}.tpl-mini-diptych{grid-template-columns:1fr 1fr}.tpl-mini-diptych span{aspect-ratio:1/1.4}.tpl-mini-triptych{grid-template-columns:1fr 1fr 1fr}.tpl-mini-triptych span{aspect-ratio:1/1.4}.tpl-mini-infcarousel{grid-template-columns:repeat(4,1fr);align-items:center}.tpl-mini-infcarousel span{aspect-ratio:1;border-radius:0}.tpl-mini-filmstrip{grid-template-columns:1fr 1fr 1fr;padding:2px 0}.tpl-mini-filmstrip span{aspect-ratio:1;border:1px solid var(--white-6)}.tpl-mini-parallax{grid-template-columns:1fr;position:relative}.tpl-mini-parallax span:first-child{aspect-ratio:16/10}.tpl-mini-parallax span:nth-child(2){background:var(--white-12);border-radius:0;height:40%;position:absolute;bottom:2px;left:15%;right:15%}.tpl-mini-breathing{grid-template-rows:1fr 1fr;grid-template-columns:1fr 1fr;gap:3px;padding:2px}.tpl-mini-breathing span{border-radius:0}.template-card:hover .tpl-mini-breathing span{animation:1.5s ease-in-out infinite tpl-breathe}.template-card:hover .tpl-mini-breathing span:nth-child(2){animation-delay:.2s}.template-card:hover .tpl-mini-breathing span:nth-child(3){animation-delay:.4s}.template-card:hover .tpl-mini-breathing span:nth-child(4){animation-delay:.6s}@keyframes tpl-breathe{0%,to{transform:scale(1)}50%{transform:scale(.92)}}.tpl-mini-spiral{aspect-ratio:1;grid-template-columns:1fr;position:relative}.tpl-mini-spiral span{aspect-ratio:3/4;border:1px solid var(--white-6);border-radius:0;width:55%;position:absolute}.tpl-mini-spiral span:first-child{z-index:var(--z-stack-top);top:5%;left:5%;transform:rotate(-8deg)}.tpl-mini-spiral span:nth-child(2){z-index:var(--z-stack-mid);top:20%;left:30%;transform:rotate(4deg)}.tpl-mini-spiral span:nth-child(3){z-index:var(--z-above);bottom:5%;right:5%;transform:rotate(-2deg)}.tpl-mini-kaleidoscope{grid-template-rows:1fr 1fr;grid-template-columns:1fr 1fr;gap:1px}.tpl-mini-kaleidoscope span{border-radius:0}.tpl-mini-kaleidoscope span:nth-child(2){transform:scaleX(-1)}.tpl-mini-kaleidoscope span:nth-child(3){transform:scaleY(-1)}.tpl-mini-kaleidoscope span:nth-child(4){transform:scale(-1)}.tpl-mini-mandala{aspect-ratio:1;perspective:60px;grid-template-columns:1fr;position:relative}.tpl-mini-mandala span{aspect-ratio:3/4;border:1px solid var(--white-6);border-radius:0;width:50%;position:absolute;top:50%;left:50%}.tpl-mini-mandala span:first-child{z-index:var(--z-stack-top);transform:translate(-50%,-50%)rotateY(-15deg)translateZ(2px)}.tpl-mini-mandala span:nth-child(2){z-index:var(--z-stack-mid);background:var(--white-10);transform:translate(-50%,-50%)rotateY(0)}.tpl-mini-mandala span:nth-child(3){z-index:var(--z-above);transform:translate(-50%,-50%)rotateY(15deg)translateZ(-2px)}.tpl-mini-zoom{aspect-ratio:1;grid-template-columns:1fr;position:relative}.tpl-mini-zoom span{border:1px solid var(--border-subtle);background:0 0;border-radius:0;position:absolute}.tpl-mini-zoom span:first-child{inset:2%}.tpl-mini-zoom span:nth-child(2){background:var(--white-4);inset:18%}.tpl-mini-zoom span:nth-child(3){background:var(--white-8);inset:34%}.tpl-mini-hero{padding:var(--spacing-xs);grid-template-columns:1fr}.tpl-mini-hero span{aspect-ratio:1;border-radius:0}.template-card .icon{font-size:var(--font-size-h2);color:var(--text-tertiary);transition:color var(--transition-fast);margin-bottom:0;display:none}.template-card:hover .icon{color:var(--text-secondary)}.template-card.active .icon{color:var(--accent-primary)}.tpl-limit{font-size:var(--font-size-xs);color:var(--text-tertiary);background:var(--bg-elevated);padding:2px var(--spacing-sm);letter-spacing:.3px;transition:background var(--transition-fast), border-color var(--transition-fast), color var(--transition-fast), opacity var(--transition-fast);border-radius:0;margin-top:1px;font-weight:600;line-height:1.3;display:none}.template-card:hover .tpl-limit{color:#ffffffbf;background:var(--white-12)}.template-card.active .tpl-limit{color:var(--accent-primary);background:#ffffff17}.template-card.tpl-ready .tpl-limit{color:var(--color-success);background:var(--color-success-bg)}.template-card.tpl-over .tpl-limit{color:var(--color-warning);background:var(--color-warning-bg)}.template-card.insufficient .tpl-limit{color:var(--color-error);background:var(--color-error-bg)}.template-card .name{font-size:var(--font-size-micro);color:var(--text-primary);text-overflow:ellipsis;white-space:nowrap;text-transform:uppercase;letter-spacing:.02em;background:linear-gradient(#0000,#000000b3);padding:4px 6px;font-weight:600;line-height:1.2;position:absolute;bottom:0;left:0;right:0;overflow:hidden}.template-card.active .name{color:var(--accent-primary);font-weight:600}.effect-card .effect-label{color:var(--text-primary);font-size:var(--font-size-micro);text-align:center;text-overflow:ellipsis;white-space:nowrap;text-transform:uppercase;font-weight:500;line-height:var(--line-height-tight);background:linear-gradient(#0000,#000c);padding:8px 4px 4px;position:absolute;bottom:0;left:0;right:0;overflow:hidden}.effect-card .badge{width:auto;height:auto;font-size:calc(var(--font-size-micro) - 1px);text-transform:uppercase;z-index:var(--z-stack-mid);pointer-events:none;border-radius:0;padding:2px 6px;font-weight:600;position:absolute;inset:4px 4px auto auto}.effect-card .badge-free{color:#fff;background:#22c55ee6;border:1px solid #22c55e4d}.effect-card .badge-pro{color:var(--bg-primary);background:#fbbf24e6;border:1px solid #fbbf244d}.effect-card[data-client] .tier-icon,.effect-card:not([data-client]) .tier-icon{display:none}.effect-card.active .effect-label{color:var(--accent-primary);font-weight:600}.effect-card img.broken{display:none!important}.effect-card .img-fallback{aspect-ratio:1;background:var(--bg-elevated);width:100%;font-size:var(--font-size-h2);color:var(--text-tertiary);border-radius:0;justify-content:center;align-items:center;display:none}.effect-card img.broken~.img-fallback{display:flex}.effect-card .no-thumb{aspect-ratio:1;width:100%;font-size:var(--font-size-h2);background:var(--bg-secondary);color:var(--text-disabled);justify-content:center;align-items:center;display:flex}.cat-filters{gap:var(--spacing-xs);margin-bottom:var(--spacing-sm);flex-wrap:wrap;display:flex}.cat-filters .cat-btn{font-size:var(--font-size-xs);padding:var(--spacing-compact) var(--spacing-md-sm);background:var(--white-4);border:1px solid var(--border-subtle);min-height:32px;color:var(--text-tertiary);cursor:pointer;transition:background var(--transition-fast), border-color var(--transition-fast), color var(--transition-fast), opacity var(--transition-fast);border-radius:0}.cat-filters .cat-btn:hover{color:var(--text-primary)}.cat-filters .cat-btn.active{background:var(--accent-primary);color:#fff;border-color:var(--accent-primary)}.preview-loading{position:relative}.preview-loading:after{content:"";z-index:var(--z-timeline);background:#0000004d;justify-content:center;align-items:center;display:flex;position:absolute;inset:0}.preview-spinner{border:3px solid var(--white-20);border-top-color:var(--accent-primary);width:28px;height:28px;z-index:var(--z-timeline);pointer-events:none;border-radius:0;animation:.7s linear infinite spin;display:none;position:absolute;top:50%;left:50%;transform:translate(-50%,-50%)}.preview-loading .preview-spinner{display:block}@keyframes spin{to{transform:rotate(360deg)}}.preview-error{padding:var(--spacing-compact) 10px;font-size:var(--font-size-micro);color:#fff;z-index:var(--z-timeline);background:#b42828e6;border-radius:0;display:none;position:absolute;bottom:8px;left:8px;right:8px}.preview-error.visible{align-items:center;gap:var(--spacing-compact);display:flex}.preview-error button{font-size:var(--font-size-xs);padding:var(--spacing-xs) 10px;background:var(--white-20);color:#fff;cursor:pointer;border:1px solid #ffffff4d;border-radius:0}[data-hint]{position:relative}[data-hint]:hover:after{content:attr(data-hint);padding:var(--spacing-xs) 10px;background:var(--bg-secondary);color:var(--text-secondary);font-size:var(--font-size-micro);white-space:nowrap;z-index:var(--z-mobile-header);pointer-events:none;white-space:normal;border:1px solid var(--border-default);border-radius:0;max-width:220px;line-height:1.3;position:absolute;bottom:calc(100% + 6px);left:50%;transform:translate(-50%)}.controls-advanced{margin-top:var(--spacing-sm);border:1px solid var(--border-subtle);border-radius:0}.controls-advanced summary{padding:var(--spacing-compact) 10px;font-size:var(--font-size-micro);color:var(--text-tertiary);cursor:pointer;align-items:center;gap:var(--spacing-compact);list-style:none;display:flex}.controls-advanced summary::-webkit-details-marker{display:none}.controls-advanced summary:before{content:"▸";transition:transform .2s}.controls-advanced[open] summary:before{transform:rotate(90deg)}.controls-advanced .adv-content{padding:var(--spacing-sm) var(--spacing-md-sm) 12px}@media (width<=768px){.app{flex-direction:column}.sidebar{width:100%;overflow-y:auto}.settings{width:100%;max-height:none}.text-input-large{font-size:var(--font-size-h3);min-height:44px}.effect-pills .effect-pill{min-height:44px;font-size:var(--font-size-xs);padding:var(--spacing-compact) var(--spacing-md-sm);border-width:1px;border-radius:0}.position-grid-3x3 button{min-width:44px;min-height:44px;font-size:var(--font-size-h3)}.cat-filters .cat-btn{min-height:44px;font-size:var(--font-size-micro);padding:var(--spacing-compact) 10px}.effect-grid{grid-template-columns:repeat(3,1fr)}.effect-card{min-height:44px}.font-size-control input[type=range]{height:8px}.dim-btn{min-height:36px;font-size:var(--font-size-micro);padding:var(--spacing-compact) var(--spacing-xs);border-radius:0}.color-picker-row input[type=color]{width:44px;height:44px}#preview-canvas,#preview-container{width:100%;max-height:50vh}.mode-tabs{flex-wrap:wrap;gap:2px;margin-bottom:10px}.mode-tab{text-align:center;min-height:44px;padding:var(--spacing-compact) var(--spacing-sm);font-size:var(--font-size-xs);letter-spacing:.2px;border-radius:0;flex:1;font-weight:600}}.phrases-input{width:100%;padding:var(--spacing-sm);background:var(--bg-secondary);border:1px solid var(--border-default);color:var(--text-primary);font-size:var(--font-size-small);resize:none;min-height:60px;transition:border-color var(--transition-fast);border-radius:0}.phrases-input:focus{border-color:var(--accent-primary);box-shadow:var(--accent-glow);outline:none}.effect-pills{gap:var(--spacing-xs);flex-wrap:wrap;width:100%;display:flex}.effect-pills.aesthetic-pills{max-width:100%}.effect-pill{padding:0 var(--spacing-md-sm);background:var(--white-4);border:1px solid var(--border-subtle);font-size:var(--font-size-xs);cursor:pointer;white-space:nowrap;color:var(--text-secondary);letter-spacing:.01em;min-height:var(--ctrl-md);justify-content:center;align-items:center;gap:var(--spacing-xs);border-radius:0;flex:calc(25% - 4px);font-weight:600;transition:background .15s,border-color .15s,color .15s,opacity .15s;display:inline-flex;position:relative}.effect-pill:hover{border-color:var(--border-default);background:var(--white-8);color:var(--text-primary)}.effect-pill.active{background:var(--panel-accent-surface);border-color:var(--panel-accent-border);color:var(--accent-primary);font-weight:700;box-shadow:inset 0 1px #ffffff0d}.effect-pill.active:before{content:""}.layer-type-btn{flex-direction:column;align-items:center;gap:2px;padding:8px 6px;display:flex}.layer-type-title{font-size:var(--font-size-small)}.layer-type-desc{font-size:var(--font-size-micro);color:var(--text-disabled);font-weight:400}.helper-note{font-size:var(--font-size-micro);color:var(--text-muted);opacity:.7;margin-bottom:var(--spacing-sm);display:block}.brand-section-divider{align-items:center;gap:var(--spacing-sm);opacity:.5;margin:14px 0 10px;display:flex}.brand-section-divider .divider-line{background:var(--border-subtle);flex:1;height:1px}.brand-section-divider .divider-label{font-size:var(--font-size-micro);color:var(--text-disabled);text-transform:uppercase;letter-spacing:.06em;white-space:nowrap}[data-tooltip]:hover:after{content:attr(data-tooltip);background:var(--bg-elevated);color:var(--text-primary);padding:var(--spacing-sm) var(--spacing-md-sm);font-size:var(--font-size-xs);white-space:normal;z-index:var(--z-mobile-header);border:1px solid var(--border-strong);box-shadow:var(--shadow-lg);text-align:center;pointer-events:none;border-radius:0;max-width:220px;animation:.15s tooltipFadeIn;position:absolute;bottom:calc(100% + 8px);left:50%;transform:translate(-50%)}@keyframes tooltipFadeIn{0%{opacity:0;transform:translate(-50%)translateY(4px)}to{opacity:1;transform:translate(-50%)translateY(0)}}.effect-pill[data-tooltip]:hover:before{content:"";border:6px solid #0000;border-top-color:var(--bg-elevated);z-index:calc(var(--z-mobile-header) + 1);position:absolute;bottom:calc(100% + 2px);left:50%;transform:translate(-50%)}.effect-pill.active[data-tooltip]:hover:before{display:none}.live-preview-mini{background:linear-gradient(135deg, var(--bg-primary) 0%, var(--bg-secondary) 100%);border:1px solid var(--border-default);padding:var(--spacing-md-sm);text-align:center;border-radius:0;justify-content:center;align-items:center;min-height:70px;margin-bottom:10px;display:flex;position:relative;overflow:hidden}.live-preview-mini .preview-text{font-size:var(--font-size-h1);text-transform:uppercase;font-weight:900;animation:2s ease-in-out infinite pulse}.live-preview-mini .effect-label{font-size:var(--font-size-micro);color:var(--accent-primary);background:var(--white-10);border-radius:0;padding:2px 8px;position:absolute;bottom:8px;right:8px}.effect-pulse_subtle{animation:1.5s ease-in-out infinite pulse}.effect-typewriter{animation:2s steps(8,end) infinite typewriter}.effect-glitch_minimal{animation:.3s infinite glitch}.effect-scanner{animation:2s linear infinite scanner}.effect-wave_distort{animation:1.5s ease-in-out infinite wave}.effect-neon_flicker{animation:.5s ease-in-out infinite alternate neon}.effect-chromatic_shift{text-shadow:-2px 0 red,2px 0 #0ff}.effect-fade_edge{-webkit-mask-image:linear-gradient(90deg,#0000,#000 20% 80%,#0000);mask-image:linear-gradient(90deg,#0000,#000 20% 80%,#0000)}@keyframes typewriter{0%,to{width:0}50%{width:100%}}@keyframes glitch{0%,to{transform:translate(0)}20%{transform:translate(-2px,1px)}40%{transform:translate(2px,-1px)}60%{transform:translate(-1px,2px)}80%{transform:translate(1px,-2px)}}@keyframes scanner{0%{background-position:0 0}to{background-position:0 100%}}@keyframes wave{0%,to{transform:translateY(0)}50%{transform:translateY(-3px)}}@keyframes neon{0%{text-shadow:0 0 5px var(--accent-primary), 0 0 10px var(--accent-primary)}to{text-shadow:0 0 10px var(--accent-primary), 0 0 20px var(--accent-primary), 0 0 30px var(--accent-primary)}}.effect-pills-grid{grid-template-columns:repeat(4,1fr);gap:6px;display:grid}.effect-pill-compact{min-height:var(--ctrl-sm);font-size:var(--font-size-xs);color:var(--text-secondary);background:var(--bg-elevated);cursor:pointer;white-space:nowrap;text-overflow:ellipsis;border:none;border-radius:0;justify-content:center;align-items:center;padding:0 8px;font-weight:500;transition:background .15s,color .15s;display:flex;overflow:hidden}.effect-pill-compact:hover{background:var(--white-10);color:var(--text-primary)}.effect-pill-compact.active{background:var(--accent-primary);color:var(--text-on-accent)}.effect-pill-compact.aes-locked{opacity:.45;cursor:not-allowed;position:relative}.effect-pill-compact.aes-locked:hover{background:var(--bg-elevated)}.pro-micro{font-size:calc(var(--font-size-micro) - 2px);color:var(--accent-primary);vertical-align:super;margin-left:1px;font-weight:700}@media (width<=480px){.effect-pills-grid{grid-template-columns:repeat(3,1fr)}.effect-pill-compact{font-size:var(--font-size-micro);padding:6px 2px}}@media (width>=769px) and (width<=1199px){.effect-grid,.template-grid{grid-template-columns:repeat(2,1fr)}}.mobile-carousel-card{transition:transform .2s,box-shadow .2s,border-color .2s}.mobile-carousel-card:hover{box-shadow:var(--shadow-card-hover);border-color:var(--white-15);transform:translateY(-2px)}.mode-hidden{display:none}#photo-count-badge,#btn-create-cover,#btn-create-gif,#result-loop-btn{display:inline-flex}.is-hidden{display:none!important}.drawer-overlay{z-index:var(--z-drawer,300);-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);background:#00000080;position:fixed;inset:0}.control-row{align-items:center;gap:var(--spacing-compact);display:flex}.control-row-between{justify-content:space-between;align-items:center;display:flex}.collage-slider-label{align-items:center;gap:var(--spacing-sm);font-size:var(--font-size-xs);color:var(--text-secondary);display:flex}.collage-slider-label input[type=range]{height:3px}.collage-slider-label+.collage-slider-label{margin-top:var(--spacing-sm)}.slider-value{text-align:right;min-width:32px;font-size:var(--font-size-micro);color:var(--text-tertiary);font-variant-numeric:tabular-nums}.stroke-toggle-label{align-items:center;gap:var(--spacing-xs);cursor:pointer;font-size:var(--font-size-micro);color:var(--text-secondary);display:flex}.value-label{font-size:var(--font-size-micro);color:var(--text-tertiary)}.color-swatch{cursor:pointer;border:none;width:24px;height:20px}.color-grid{gap:var(--space-1);margin-bottom:var(--space-2);grid-template-columns:repeat(8,1fr);display:grid}.color-chip{aspect-ratio:1;border:1px solid var(--border-subtle);cursor:pointer;border-radius:0;padding:0;transition:border-color .15s,box-shadow .15s;position:relative}.color-chip:hover{border-color:var(--border-default)}.color-chip.active{border-color:var(--accent-primary);box-shadow:0 0 0 2px var(--accent-primary)}.color-chip--custom{background:var(--bg-secondary);border-style:dashed;justify-content:center;align-items:center;display:flex}.color-chip-icon{color:var(--text-tertiary);font-size:var(--font-size-body);font-weight:300;line-height:1}.color-custom-row{align-items:center;gap:var(--space-2);display:flex}.color-picker-input{border:1px solid var(--border-default);cursor:pointer;background:0 0;border-radius:0;width:28px;min-width:28px;height:28px;padding:0}.color-picker-input::-webkit-color-swatch-wrapper{padding:3px}.color-picker-input::-webkit-color-swatch{border:none;border-radius:0}.color-hex-input{height:28px;padding:0 var(--space-2);background:var(--bg-secondary);border:1px solid var(--border-default);color:var(--text-secondary);font-size:var(--font-size-small);font-family:var(--font-mono);text-transform:uppercase;border-radius:0;flex:1}.color-hex-input:focus{border-color:var(--accent-primary);outline:none}.bg-image-section{margin-top:var(--space-3)}.setting-label--small{font-size:var(--font-size-small);color:var(--text-tertiary);margin-bottom:var(--space-2)}.bg-image-container{align-items:center;gap:var(--space-2);transition:outline .15s;display:flex}.bg-image-container.drag-over{outline:2px dashed var(--accent-primary);outline-offset:2px;border-radius:0}.bg-image-upload-btn{align-items:center;gap:var(--space-2);padding:var(--space-2) var(--space-3);background:var(--bg-secondary);border:1px dashed var(--border-default);color:var(--text-secondary);font-size:var(--font-size-small);cursor:pointer;transition:border-color var(--transition-fast), color var(--transition-fast), background var(--transition-fast);border-radius:0;justify-content:center;display:flex}.bg-image-upload-btn:hover{border-color:var(--accent-primary);color:var(--text-primary);background:var(--bg-tertiary)}.bg-image-preview{align-items:center;gap:var(--space-2);width:100%;display:flex;position:relative}.bg-image-preview img{-o-object-fit:cover;object-fit:cover;border:1px solid var(--border-default);border-radius:0;width:100%;height:56px}.bg-image-remove{color:#fff;cursor:pointer;background:#000000b3;border:none;border-radius:0;justify-content:center;align-items:center;width:20px;height:20px;padding:0;transition:background .15s;display:flex;position:absolute;top:4px;right:4px}.bg-image-remove:hover{background:#dc2626e6}.position-grid{gap:var(--space-1);grid-template-columns:repeat(3,1fr);width:100%;max-width:120px;display:grid}.pos-btn{aspect-ratio:1;background:var(--bg-secondary);border:1px solid var(--border-default);color:var(--text-tertiary);font-size:var(--font-size-xs);cursor:pointer;transition:background var(--transition-fast), color var(--transition-fast);border-radius:0;justify-content:center;align-items:center;padding:0;display:flex}.pos-btn:hover{background:var(--bg-tertiary);color:var(--text-primary)}.color-swatches{gap:var(--spacing-xs);margin-bottom:var(--spacing-sm);flex-wrap:wrap;display:flex}.color-swatch-btn{border:1px solid var(--border-subtle);cursor:pointer;border-radius:0;flex-shrink:0;width:32px;min-width:32px;height:32px;min-height:32px;padding:0;transition:transform .15s,border-color .15s,box-shadow .15s}.color-swatch-btn:hover{border-color:var(--border-strong);transform:scale(1.08)}.color-swatch-btn.active{border-color:var(--accent-primary);box-shadow:0 0 0 1px var(--accent-primary)}.upload-label{align-items:center;gap:var(--spacing-compact);background:var(--bg-elevated);border:1px dashed var(--border-default);cursor:pointer;font-size:var(--font-size-xs);color:var(--text-secondary);border-radius:0;flex:1;justify-content:center;padding:8px 14px;display:flex}.checkbox-label{align-items:center;gap:var(--spacing-compact);font-size:var(--font-size-small);cursor:pointer;display:flex}.timing-label{align-items:center;gap:var(--space-2);min-width:0;display:flex}.timing-label svg{flex-shrink:0;width:14px;height:14px}.timing-label input[type=range]{flex:1;min-width:60px}.timing-label .range-label-bold{font-size:var(--font-size-xs);flex-shrink:0;min-width:28px;font-weight:600}.photo-anchor-row{align-items:center;gap:var(--space-2);grid-column:1/-1;display:flex}.photo-anchor-btns{gap:var(--space-1);flex:1;display:flex}.photo-anchor-btn{padding:var(--space-1) var(--space-2);background:var(--white-4);border:1px solid var(--border-subtle);color:var(--text-secondary);font-size:var(--font-size-xs);cursor:pointer;text-align:center;border-radius:0;flex:1;font-weight:500;transition:background .15s,border-color .15s,color .15s}.photo-anchor-btn:hover{background:var(--white-8);color:var(--text-primary)}.entrance-btn{padding:var(--spacing-xs) var(--spacing-xs);background:var(--white-4);border:1px solid var(--border-subtle);color:var(--text-secondary);cursor:pointer;text-align:center;min-height:32px;line-height:1.2;font-size:var(--font-size-xs);border-radius:0;justify-content:center;align-items:center;font-weight:500;transition:background .15s,border-color .15s,color .15s,opacity .15s;display:flex}.entrance-btn:hover{border-color:var(--border-default);background:var(--white-6);color:var(--text-primary)}.entrance-btn.active{border-color:var(--border-strong);color:var(--text-primary);background:#ffffff12;font-weight:600}.slide-total-bar{margin-top:var(--spacing-compact);padding:var(--spacing-compact) var(--spacing-sm);background:var(--white-4);font-size:var(--font-size-micro);color:var(--text-secondary);border-radius:0;justify-content:space-between;align-items:center;display:none}.slide-total-bar.visible{display:flex}.slide-total-bar .total-time{color:var(--accent-primary);font-weight:700}.slide-total-bar .total-frames{color:var(--text-tertiary)}.slide-total-bar .size-warning{color:var(--color-warning);font-weight:600}#sidebar-main-content #text-section{padding:var(--spacing-compact) var(--spacing-xs);border:1px solid var(--white-4);background:#ffffff04;border-radius:0}#sidebar-main-content .text-mode-tabs{gap:var(--spacing-xs);margin-bottom:var(--spacing-compact);grid-template-columns:repeat(2,minmax(0,1fr));display:grid}#sidebar-main-content .text-mode-tab{min-height:32px;padding:var(--spacing-compact) var(--spacing-compact);border-radius:0}#sidebar-main-content .text-mode-hint-box{margin-bottom:var(--spacing-xs)}#slide-manager,.slide-total-bar{display:none!important}#sidebar-main-content .slide-manager{margin-top:var(--spacing-compact)}#sidebar-main-content .slide-card{margin-bottom:var(--spacing-xs);border-color:var(--white-4);background:0 0;border-radius:0}#sidebar-main-content .slide-add-btn{border-radius:0;margin-top:3px}.content-toggle-row{margin-top:var(--spacing-sm);justify-content:space-between;align-items:center;display:flex}#sidebar-brand-content .sidebar-subcard{background:#ffffff05;border-color:#ffffff0d;margin-bottom:0}.time-picker-popup{z-index:var(--z-toolbar);gap:var(--space-1);padding:var(--spacing-xs) var(--spacing-compact);background:var(--bg-elevated);border:1px solid var(--border-default);box-shadow:var(--shadow-lg);border-radius:0;display:flex;position:absolute}.time-picker-popup .tp-btn{padding:var(--spacing-xs) var(--spacing-sm);border:1px solid var(--border-subtle);background:var(--bg-primary);color:var(--text-secondary);font-size:var(--font-size-micro);cursor:pointer;border-radius:0;font-weight:600;transition:background .12s,border-color .12s,color .12s,opacity .12s}.time-picker-popup .tp-btn:hover,.time-picker-popup .tp-btn.active{background:var(--accent-primary);color:#fff;border-color:var(--accent-primary)}.text-mode-hint-box{font-size:var(--font-size-micro);color:var(--text-disabled);margin-bottom:var(--spacing-xs);background:0 0;border:none;padding:2px 0;line-height:1.3}.toggle-inline{align-items:center;gap:var(--spacing-compact);font-size:var(--font-size-xs);color:var(--text-secondary);cursor:pointer;display:flex}.toggle-inline input[type=checkbox]{accent-color:var(--accent-primary)}.bg-palette-grid{gap:var(--space-1);grid-template-columns:repeat(4,1fr);width:100%;display:grid}.bg-option{align-items:center;gap:var(--spacing-xs);padding:var(--space-1);border:1px solid var(--border-subtle);cursor:pointer;transition:background var(--transition-fast), border-color var(--transition-fast);background:0 0;border-radius:0;flex-direction:column;display:flex}.bg-option:hover{border-color:var(--border-strong);background:var(--white-4)}.bg-option.active{border-color:var(--accent-primary);background:var(--white-6)}.bg-option .bg-preview{aspect-ratio:1;border:1px solid var(--white-8);border-radius:0;width:100%}.bg-option span{font-size:calc(var(--font-size-micro) - 1px);color:var(--text-tertiary);text-align:center}.bg-option.active span{color:var(--accent-primary);font-weight:500}.preview-placeholder{inset:var(--spacing-sm);color:var(--text-disabled);text-align:center;transition:background var(--transition-slow), border-color var(--transition-slow), color var(--transition-slow), opacity var(--transition-slow);z-index:var(--z-timeline);background:0 0;border:none;border-radius:0;flex-direction:column;justify-content:center;align-items:center;padding:0;display:flex;position:absolute}.placeholder-dropzone{width:100%;height:100%;padding:var(--spacing-md);justify-content:center;align-items:center;gap:var(--spacing-md);flex-direction:column;transition:background .3s,border-color .3s;display:flex;overflow:hidden}.placeholder-dropzone:hover,.preview-container.drag-over .placeholder-dropzone{background:var(--white-3)}.placeholder-preview-gif{flex-direction:column;flex:1;justify-content:center;align-items:center;gap:8px;min-height:0;display:flex}.placeholder-preview-gif img{opacity:.75;pointer-events:none;border-radius:0;width:auto;max-height:160px;transition:opacity .2s}.placeholder-photo-icon{width:76px;height:76px;color:var(--text-tertiary);opacity:.55}.placeholder-dropzone:hover .placeholder-preview-gif img{opacity:.5}.placeholder-preview-label{max-width:240px;font-size:var(--font-size-small);color:var(--text-secondary);opacity:.72;letter-spacing:.01em;line-height:1.35}.placeholder-upload-area{align-items:center;gap:var(--spacing-xs);width:100%;padding:var(--spacing-md);background:#00000026;border:2px dashed #ffffff24;border-radius:0;flex-direction:column;transition:border-color .2s,background .2s;display:flex}.preview-container.drag-over .placeholder-upload-area{border-color:var(--accent-primary);background:rgba(var(--accent-primary-rgb), .08)}.preview-placeholder .placeholder-icon{opacity:.5;width:28px;height:28px;margin-bottom:0;transition:opacity .2s}.preview-container.updating img,.preview-container.updating canvas,.preview-container.updating #preview-text{opacity:.4;transition:opacity .2s}.preview-container.updating:after{content:"";border:2px solid var(--white-10);border-top-color:var(--accent-primary);border-radius:0;width:20px;height:20px;animation:.6s linear infinite spin;position:absolute;top:8px;right:8px}.preview-placeholder .placeholder-text{font-size:var(--font-size-body);color:var(--text-tertiary);opacity:.25;margin-bottom:var(--spacing-xs);letter-spacing:-.01em;font-weight:500;transition:color .3s,opacity .3s}.preview-placeholder .placeholder-subtext{font-size:var(--font-size-xs);color:var(--text-tertiary);opacity:.25;max-width:280px;line-height:1.5}.placeholder-actions{gap:var(--spacing-sm);margin-top:var(--spacing-md);flex-wrap:wrap;justify-content:center;width:100%;display:flex}.placeholder-btn{padding:var(--spacing-md-sm) var(--spacing-lg);font-size:var(--font-size-body);cursor:pointer;transition:background var(--transition-normal), border-color var(--transition-normal), color var(--transition-normal), opacity var(--transition-normal);letter-spacing:.01em;justify-content:center;align-items:center;gap:var(--spacing-sm);border:none;border-radius:0;font-weight:600;display:inline-flex}.placeholder-btn-primary{color:var(--text-secondary);border:1px solid var(--border-default);background:0 0;flex:1;max-width:200px}.placeholder-btn-primary:hover{border-color:var(--border-hover);color:var(--text-primary);background:0 0}.placeholder-btn-secondary{color:var(--text-secondary);border:1px solid var(--border-subtle);background:0 0;flex:1;max-width:200px}.placeholder-btn-secondary:hover{color:var(--text-primary);border-color:rgba(255, 255, 255, var(--border-hover));background:var(--white-3)}.placeholder-demo-link{margin-top:var(--spacing-md-sm);font-size:var(--font-size-small);color:var(--text-tertiary)}.demo-text-link{color:var(--text-secondary);text-underline-offset:2px;cursor:pointer;font-size:inherit;background:0 0;border:none;padding:0;text-decoration:underline;transition:color .15s}.demo-text-link:hover{color:var(--accent-primary)}.placeholder-shortcuts{gap:var(--spacing-md);font-size:var(--font-size-micro);color:var(--text-disabled);margin-top:24px;display:flex}.placeholder-shortcuts kbd{background:var(--bg-elevated);border:1px solid var(--border-default);font-family:inherit;font-size:var(--font-size-micro);border-radius:0;padding:1px 5px;line-height:1.4;display:inline-block}.history-strip{align-items:center;gap:var(--space-2);padding:var(--spacing-xs) 0;border-bottom:1px solid var(--border-subtle);height:68px;display:flex;overflow:hidden}.history-header{align-items:center;gap:var(--spacing-xs);flex-direction:column;flex-shrink:0;display:flex}.history-title{font-size:var(--font-size-micro);color:var(--text-tertiary);text-transform:uppercase;letter-spacing:1px;white-space:nowrap;font-weight:600}.history-clear{color:var(--text-disabled);font-size:var(--font-size-small);cursor:pointer;background:0 0;border:none;border-radius:0;padding:2px 6px;transition:background .15s,border-color .15s,color .15s,opacity .15s}.history-clear:hover{color:var(--color-error,#ef4444);background:#ef44441a}.history-items{gap:var(--spacing-compact);scrollbar-width:none;flex:1;min-width:0;padding-bottom:4px;display:flex;overflow:auto hidden}.history-item{cursor:pointer;border:1px solid var(--border-subtle);border-radius:0;flex-shrink:0;width:48px;height:48px;transition:background .15s,border-color .15s,color .15s,opacity .15s;position:relative;overflow:hidden}.history-item:hover{border-color:var(--accent-primary);transform:scale(1.05)}.history-item img{-o-object-fit:cover;object-fit:cover;width:100%;height:100%}.history-item .history-format{font-size:var(--font-size-micro);color:#fff;background:#000000b3;border-radius:0;padding:1px 4px;font-weight:700;position:absolute;bottom:1px;right:1px}.transition-btn{padding:0 var(--spacing-sm);background:var(--white-3);border:1px solid var(--white-6);color:var(--text-tertiary);cursor:pointer;font-size:var(--font-size-xs);text-align:center;min-height:var(--ctrl-md);border-radius:0;justify-content:center;align-items:center;transition:background .15s,border-color .15s,color .15s,opacity .15s;display:flex}.transition-btn:hover,.transition-btn.active{border-color:var(--border-default);background:var(--white-6);color:var(--text-primary)}.recommended-pill{background:linear-gradient(135deg, var(--white-10) 0%, var(--white-4) 100%);border-color:var(--accent-primary);color:var(--accent-primary);font-weight:600}.recommended-pill:hover{background:linear-gradient(135deg,#ffffff24 0%,#ffffff12 100%)}.preview-container.drag-over{border-color:var(--accent-primary)}.preview-container.drag-over .preview-placeholder{background:rgba(var(--accent-primary-rgb), .05)}.preview-container.drag-over .placeholder-icon{opacity:1;color:var(--accent-primary);filter:drop-shadow(0 0 12px rgba(var(--accent-primary-rgb), .5));transform:scale(1.2)translateY(-4px)}.preview-container.drag-over .placeholder-text{color:var(--accent-primary);transform:scale(1.05)}.generate-btn{padding:var(--spacing-md-sm) var(--spacing-md);background:linear-gradient(135deg, var(--accent-primary) 0%, var(--accent-primary-hover) 100%);color:#fff;font-size:var(--font-size-body-sm);cursor:pointer;justify-content:center;align-items:center;gap:var(--spacing-xs);letter-spacing:.02em;width:100%;min-height:48px;box-shadow:0 2px 8px rgba(var(--accent-primary-rgb), .3), 0 1px 3px #0003, inset 0 1px 0 #ffffff26;border:1px solid #ffffff1a;border-radius:0;flex-direction:column;margin-top:0;font-weight:700;transition:all .2s cubic-bezier(.4,0,.2,1);display:flex;position:relative;overflow:hidden}.generate-btn:not(:disabled):hover{box-shadow:0 4px 16px rgba(var(--accent-primary-rgb), .4), 0 2px 8px #00000040, inset 0 1px 0 #fff3;border-color:#fff3;transform:translateY(-1px)}.generate-btn:not(:disabled).ready{background:var(--accent-primary-hover,var(--accent-primary))}.generate-btn:disabled{opacity:1;cursor:not-allowed;background:var(--bg-secondary);border:1px solid var(--border-subtle);color:var(--text-tertiary);box-shadow:none;filter:grayscale(.3);transform:none}.generate-btn .hint{font-size:var(--font-size-small);opacity:1;text-align:center;color:#ffffffc7;max-width:100%;font-weight:500;line-height:1.3}.generate-btn:disabled .hint{color:var(--text-disabled)}.generate-btn.loading{pointer-events:none}.generate-btn.loading .btn-text{display:none}.generate-btn .spinner{border:3px solid #ffffff4d;border-top-color:#fff;border-radius:0;width:24px;height:24px;animation:.8s linear infinite spin;display:none}.generate-btn.loading .spinner{display:block}.text-edit-bar{background:var(--bg-elevated);border:1px solid var(--border-subtle);border-radius:0;flex-direction:column;gap:0;margin:4px 0;display:flex;overflow:visible}.unified-bar{align-items:center;gap:var(--spacing-sm);padding:var(--spacing-compact) var(--spacing-sm);scrollbar-width:none;min-height:44px;display:flex;overflow-x:auto}.unified-bar::-webkit-scrollbar{display:none}.unified-bar-badges{gap:var(--spacing-xs);flex-shrink:0;display:flex}.unified-bar-input{flex:1;min-width:0}.unified-text-input{border:1px solid var(--border-subtle);background:var(--bg-input);width:100%;padding:var(--spacing-compact) var(--spacing-md-sm);font-size:var(--font-size-body);color:var(--text-primary);resize:none;text-align:center;border-radius:0;outline:none;font-family:inherit;line-height:1.4;transition:background .15s,box-shadow .15s,border-color .15s;overflow:hidden}.unified-text-input::placeholder{color:var(--text-disabled);text-align:center}.unified-text-input:focus{background:var(--bg-secondary);border-color:var(--panel-accent-border);box-shadow:0 0 0 2px #0e74901f}.unified-bar-controls{align-items:center;gap:var(--spacing-xs);flex-shrink:0;display:flex}.unified-bar-controls select{height:30px;padding:0 var(--spacing-sm);background:var(--bg-input);border:1px solid var(--border-default);color:var(--text-primary);font-size:var(--font-size-xs);cursor:pointer;--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark;appearance:none;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='10' height='6'%3E%3Cpath d='M0 0l5 6 5-6z' fill='%23666'/%3E%3C/svg%3E");background-position:right 8px center;background-repeat:no-repeat;border-radius:0;padding-right:24px;font-weight:500;transition:background .15s,border-color .15s,box-shadow .15s}.unified-bar-controls select:hover{background:var(--bg-secondary);border-color:var(--border-hover)}.unified-bar-controls select:focus{border-color:var(--panel-accent-border);outline:none;box-shadow:0 0 0 2px #0e74901a}.unified-bar-controls input[type=color]{border:1px solid var(--border-default);background:var(--bg-input);cursor:pointer;border-radius:0;width:30px;height:30px;padding:1px}body:not([data-mode=text]) .unified-bar-input,body[data-mode=text] #photo-count-badge{display:none}body[data-mode=photo] #photo-count-badge,body[data-mode=collage] #photo-count-badge{display:inline-flex}.info-bar{gap:var(--spacing-compact);padding:var(--spacing-compact) var(--spacing-sm);font-size:var(--font-size-micro);scrollbar-width:none;background:0 0;border-radius:0;flex-wrap:nowrap;align-items:center;margin:4px 0;display:flex;overflow-x:auto}.info-bar::-webkit-scrollbar{display:none}.info-badge{align-items:center;gap:var(--spacing-xs);padding:var(--spacing-xs) 10px;font-size:var(--font-size-xs);background:var(--panel-surface);color:#ffffffb3;white-space:nowrap;border:1px solid #0000;border-radius:0;flex-shrink:0;font-weight:500;transition:background .15s,border-color .15s,color .15s,opacity .15s;display:inline-flex}.info-badge.highlight{background:var(--panel-accent-surface);color:var(--accent-primary);border-color:var(--panel-accent-border)}.speed-control{align-items:center;gap:var(--spacing-compact);padding:var(--spacing-xs) var(--spacing-sm);background:var(--panel-surface);border:1px solid var(--border-subtle);border-radius:0;display:inline-flex}.speed-label{align-items:center;gap:var(--spacing-xs);font-size:var(--font-size-xs);color:var(--text-secondary);cursor:pointer;white-space:nowrap;display:inline-flex}.speed-label svg{opacity:.6}#info-speed-slider{appearance:none;background:var(--white-12);cursor:pointer;border-radius:0;outline:none;width:60px;height:3px}#info-speed-slider::-webkit-slider-thumb{-webkit-appearance:none;background:var(--accent-primary);cursor:pointer;border:2px solid var(--bg-primary);width:12px;height:12px;box-shadow:var(--shadow-sm);border-radius:0}#info-speed-slider::-moz-range-thumb{background:var(--accent-primary);cursor:pointer;border:2px solid var(--bg-primary);width:12px;height:12px;box-shadow:var(--shadow-sm);border-radius:0}.mode-tabs{gap:var(--spacing-xs);margin-bottom:var(--spacing-sm);background:var(--panel-surface);border:1px solid var(--border-subtle);width:100%;z-index:var(--z-sticky);border-radius:0;padding:3px;display:flex;position:sticky;top:0}.mode-tab{min-width:0;color:var(--text-tertiary);font-size:var(--font-size-xs);cursor:pointer;text-align:center;white-space:normal;place-content:center;align-items:center;row-gap:var(--spacing-xs);background:0 0;border:1px solid #0000;border-radius:0;flex-wrap:wrap;flex:1;min-height:34px;padding:7px 6px;font-weight:600;transition:background .2s,border-color .2s,color .2s,opacity .2s;display:flex;position:relative;overflow:hidden}.mode-tab-sub{width:100%;font-size:var(--font-size-micro);color:var(--text-disabled);letter-spacing:.02em;margin-top:-2px;font-weight:400;line-height:1.1;display:block}.mode-tab .mode-subtitle{font-size:var(--font-size-micro);opacity:.55;letter-spacing:.02em}.mode-tab:hover:not(.active){color:var(--text-primary);background:var(--panel-surface-hover);border-color:var(--border-subtle)}.mode-tab.active{background:var(--panel-accent-surface);border-color:var(--panel-accent-border);color:var(--text-primary);font-weight:600;box-shadow:inset 0 1px #ffffff0d}.mode-tab.active .mode-tab-sub,.mode-tab.active .mode-subtitle{color:var(--accent-primary);opacity:.92}.folder-select{width:100%;padding:var(--spacing-md-sm);background:var(--bg-secondary);border:1px solid var(--border-default);color:var(--text-primary);font-size:var(--font-size-body);margin-bottom:var(--spacing-md-sm);border-radius:0}.swatch{border-radius:0;width:10px;height:10px;margin-right:2px;display:inline-block}.palette-swatches{gap:var(--spacing-compact);grid-template-columns:repeat(4,1fr);display:grid}.palette-swatch{justify-content:center;align-items:center;gap:var(--spacing-xs);background:var(--bg-secondary);border:1px solid var(--border-subtle);cursor:pointer;border-radius:0;flex-wrap:wrap;padding:8px 5px 5px;transition:background .15s,border-color .15s,color .15s,opacity .15s;display:flex}.palette-swatch:hover{border-color:var(--border-hover);background:var(--bg-hover)}.palette-swatch:active{transform:scale(.93)}.palette-swatch.active{border-color:var(--accent-primary);background:var(--white-6);box-shadow:0 0 0 1px var(--accent-primary)}.palette-swatch .ps-circle{border-radius:0;flex-shrink:0;width:14px;height:14px;display:inline-block}.palette-swatch .ps-name{font-size:var(--font-size-xs);color:var(--text-tertiary);text-align:center;width:100%;margin-top:2px;font-weight:500}.palette-swatch.active .ps-name{color:var(--accent-primary);font-weight:600}.bottom-sheet-overlay{-webkit-backdrop-filter:blur(4px);z-index:var(--z-bottom-sheet-overlay);opacity:0;touch-action:none;background:#0009;transition:opacity .3s;display:none;position:fixed;inset:0}.bottom-sheet-overlay.open{opacity:1;display:block}.bottom-sheet{width:100%;max-height:85dvh;z-index:var(--z-bottom-sheet);background:var(--bg-secondary);padding-bottom:var(--safe-area-bottom);box-shadow:var(--shadow-xl);border-radius:0;flex-direction:column;transition:transform .3s cubic-bezier(.32,.72,0,1);display:none;position:fixed;bottom:0;left:0;right:0;overflow:hidden;transform:translateY(100%)}.bottom-sheet.open{display:flex;transform:translateY(0)}.bottom-sheet.snap-half{max-height:50dvh}.bottom-sheet.snap-full{max-height:92dvh}.bottom-sheet-handle{padding:var(--spacing-md) 0 var(--spacing-sm);cursor:grab;touch-action:pan-y;flex-shrink:0;justify-content:center;display:flex}.bottom-sheet-handle:active{cursor:grabbing}.bottom-sheet-handle-bar{background:#ffffff40;border-radius:0;width:36px;height:5px;transition:background .15s}.bottom-sheet-handle:hover .bottom-sheet-handle-bar{background:#fff6}.bottom-sheet-header{padding:0 var(--spacing-lg) var(--spacing-md);font-size:var(--font-size-h3);color:var(--text-primary);border-bottom:1px solid var(--border-subtle);flex-shrink:0;justify-content:space-between;align-items:center;font-weight:700;display:flex}.bottom-sheet-close{background:var(--white-05,#ffffff0d);border:1px solid var(--border-subtle);width:28px;height:28px;color:var(--text-secondary);font-size:var(--font-size-h3);cursor:pointer;border-radius:0;justify-content:center;align-items:center;transition:background .15s,border-color .15s,color .15s,opacity .15s;display:flex}.bottom-sheet-close:active{background:var(--bg-hover);transform:scale(.95)}.bottom-sheet-content{padding:var(--spacing-md);-webkit-overflow-scrolling:touch;overscroll-behavior:contain;flex:1;overflow:hidden auto}.mobile-cat-filters{display:none}.mobile-template-carousel{scroll-snap-type:x mandatory;-webkit-overflow-scrolling:touch;padding:var(--spacing-sm) var(--spacing-md);gap:var(--spacing-sm);scrollbar-width:none;flex-shrink:0;display:none;overflow:auto visible}.mobile-template-carousel::-webkit-scrollbar{display:none}.mobile-carousel-card{scroll-snap-align:start;justify-content:flex-start;align-items:center;gap:var(--spacing-xs);background:var(--panel-surface);border:1px solid var(--border-subtle);cursor:pointer;border-radius:0;flex-direction:column;flex-shrink:0;width:76px;height:auto;padding:4px 4px 5px;transition:background .15s,border-color .15s,color .15s,opacity .15s;display:flex}.mobile-carousel-card.active{border-color:var(--panel-accent-border);background:var(--panel-accent-surface);box-shadow:inset 0 1px #ffffff0d}.mobile-carousel-card .mc-icon{font-size:var(--font-size-h1)}.mobile-carousel-card .mc-name{color:#ffffffd9;text-align:center;text-overflow:ellipsis;white-space:nowrap;text-transform:uppercase;letter-spacing:.02em;max-width:100%;font-size:9px;font-weight:600;line-height:1.2;overflow:hidden}.sortable-ghost{opacity:.4;border-color:var(--accent-primary)}.undo-redo-bar{gap:var(--spacing-xs);align-items:center;display:flex}.undo-redo-btn{border:1px solid var(--border-default);background:var(--panel-surface);width:32px;height:32px;color:var(--text-primary);cursor:pointer;border-radius:0;justify-content:center;align-items:center;padding:0;transition:background .2s,border-color .2s,color .2s,opacity .2s,transform .2s;display:flex}.undo-redo-btn:hover:not(:disabled){border-color:var(--panel-accent-border);color:var(--text-primary);background:var(--panel-accent-surface);box-shadow:none}.undo-redo-btn:active:not(:disabled){background:var(--panel-surface-active)}.undo-redo-btn:disabled{opacity:.35;cursor:default}.undo-redo-btn svg{width:15px;height:15px}body.large-text-mode{font-size:var(--font-size-h3)}body.large-text-mode .setting-label,body.large-text-mode .effect-pill,body.large-text-mode .cat-btn,body.large-text-mode .rt-cat-btn,body.large-text-mode .dim-btn,body.large-text-mode .template-group-title,body.large-text-mode .section-group-title,body.large-text-mode .toggle-row label,body.large-text-mode .color-tabs .tab,body.large-text-mode .entrance-btn,body.large-text-mode .transition-btn,body.large-text-mode .palette-swatch .ps-name,body.large-text-mode .bg-option span,body.large-text-mode .effect-card span,body.large-text-mode .rt-card .rt-label,body.large-text-mode .template-card .name,body.large-text-mode .tpl-limit,body.large-text-mode .slide-card,body.large-text-mode .toast,body.large-text-mode h4,body.large-text-mode label,body.large-text-mode button,body.large-text-mode input,body.large-text-mode select{font-size:var(--font-size-body)!important}body.large-text-mode .mode-tab{font-size:var(--font-size-body-sm)!important;padding:8px 14px!important}body.large-text-mode .summary-bar,body.large-text-mode .preview-toolbar{font-size:var(--font-size-body-sm)!important}.visual-controls-compact{display:none}.info-bar-text-input{min-width:120px;max-width:300px;padding:var(--spacing-compact) var(--spacing-md-sm);font-size:var(--font-size-sm);color:var(--text-primary);background:var(--bg-elevated);border:1px solid var(--border-default);border-radius:0;outline:none;flex:1;font-family:inherit;transition:border-color .2s,box-shadow .2s}.info-bar-text-input::placeholder{color:var(--text-tertiary);font-size:var(--font-size-xs)}.info-bar-text-input:focus{border-color:var(--accent-primary);box-shadow:var(--shadow-ring-accent)}@media (width<=768px){.info-bar-text-input{min-width:100px;max-width:100%}}.bg-image-inline{align-items:center;gap:8px;display:flex}.btn-add-image{height:28px;padding:0 var(--spacing-sm);font-size:var(--font-size-small);border:1px dashed var(--border-default);color:var(--text-secondary);cursor:pointer;background:0 0;border-radius:0;align-items:center;gap:4px;transition:border-color .15s,color .15s;display:flex}.btn-add-image:hover{border-color:var(--accent-primary);color:var(--accent-primary)}.bg-image-preview-inline{align-items:center;gap:8px;display:flex}.bg-image-preview-inline img{-o-object-fit:cover;object-fit:cover;border:1px solid var(--border-subtle);border-radius:0;width:32px;height:32px}.btn-remove-image{background:var(--color-error);color:#fff;width:20px;height:20px;font-size:var(--font-size-body);cursor:pointer;border:none;border-radius:0;justify-content:center;align-items:center;padding:0;line-height:1;display:flex}.btn-remove-image:hover{background:var(--color-error-hover,#dc2626)}.position-grid{gap:var(--spacing-xs);grid-template-rows:repeat(3,28px);grid-template-columns:repeat(3,28px);width:fit-content;display:grid}.pos-btn{border:1px solid var(--border-subtle);width:28px;height:28px;color:var(--text-secondary);cursor:pointer;font-size:var(--font-size-micro);background:0 0;border-radius:0;justify-content:center;align-items:center;padding:0;transition:background .15s,border-color .15s;display:flex}.pos-btn:hover{border-color:var(--accent-primary);color:var(--accent-primary)}.pos-btn.active{background:var(--accent-primary);border-color:var(--accent-primary);color:#fff}.slider-row{justify-content:space-between;align-items:center;gap:var(--spacing-sm);padding:var(--spacing-xs) 0;display:flex}.slider-label{font-size:var(--font-size-body-sm);color:var(--text-secondary);white-space:nowrap}.slider-value{font-size:var(--font-size-small);color:var(--text-tertiary);text-align:right;min-width:36px}.section-divider{background:var(--border-subtle);height:1px;margin:var(--spacing-sm) 0}.brand-subpanel{padding:var(--spacing-sm) 0 0;border-top:1px solid var(--white-6);background:0 0;border-radius:0}.pill-pro-badge{letter-spacing:.06em;text-transform:uppercase;color:var(--color-pro);background:var(--color-pro-bg,#f59e0b1f);vertical-align:middle;white-space:nowrap;border:1px solid #f59e0b4d;border-radius:0;flex-shrink:0;margin-left:3px;padding:1px 3px;font-size:9px;font-weight:700;line-height:1.4;display:inline-block}.quality-pill .btn-label{white-space:nowrap;flex-shrink:0}.btn-upgrade-header.is-hidden,body.is-pro .btn-upgrade-header{display:none}.timeline-wrapper{border:1px solid var(--border-subtle);padding:var(--spacing-sm) var(--spacing-sm) var(--spacing-sm);background:#ffffff05;border-radius:0;flex-shrink:0;overflow:visible}.timeline-bar{margin-bottom:var(--spacing-compact);padding:0 var(--spacing-xs);justify-content:space-between;align-items:center;display:flex}.timeline-label{font-size:var(--font-size-micro);color:var(--text-tertiary);text-transform:uppercase;letter-spacing:1px;align-items:center;gap:var(--spacing-compact);font-weight:600;display:flex}.timeline{gap:var(--spacing-compact);padding:var(--spacing-compact) var(--spacing-xs);touch-action:pan-x;scrollbar-width:none;-webkit-overflow-scrolling:touch;flex-shrink:0;align-items:center;display:flex;overflow:auto hidden}.timeline::-webkit-scrollbar{display:none}.timeline-scene{background:var(--bg-secondary);border:1px solid var(--border-subtle);width:auto;min-width:100px;max-width:160px;height:44px;padding:0 var(--spacing-sm);cursor:pointer;align-items:center;gap:var(--spacing-compact);box-shadow:none;border-radius:0;flex-direction:row;flex-shrink:0;transition:border-color .15s,background .15s,box-shadow .15s;display:flex;position:relative}.timeline-scene.active{border-color:var(--accent-primary);box-shadow:0 0 0 1px var(--accent-primary);background:#5eaab814}.timeline-scene.playing{border-color:var(--accent-primary);background:rgba(var(--accent-primary-rgb), .12);box-shadow:0 0 0 2px rgba(var(--accent-primary-rgb), .5), 0 0 12px rgba(var(--accent-primary-rgb), .25)}.timeline-play-controls{align-items:center;gap:4px;display:flex}.timeline-play-btn{border:1px solid var(--border-subtle);background:var(--bg-secondary);width:22px;height:22px;color:var(--text-secondary);cursor:pointer;border-radius:0;justify-content:center;align-items:center;padding:0;transition:border-color .15s,color .15s,background .15s;display:flex}.timeline-play-btn:hover{border-color:var(--accent-primary);color:var(--accent-primary);background:#5eaab814}.timeline-stop-btn:hover{color:#f87171;background:#f8717114;border-color:#f87171}.scene-top{flex-direction:row;flex-shrink:0;align-items:center;gap:4px;display:flex}.scene-type-icon{background:var(--bg-tertiary);width:18px;height:18px;color:var(--text-tertiary);border-radius:0;flex-shrink:0;justify-content:center;align-items:center;display:flex}.active .scene-type-icon{background:var(--accent-primary);color:#fff}.scene-index{color:var(--text-disabled);text-transform:uppercase;letter-spacing:.05em;font-size:10px;font-weight:700}.scene-loop-badge{padding:2px var(--spacing-xs);background:var(--bg-tertiary);border:1px solid var(--border-subtle);color:var(--text-tertiary);cursor:pointer;border-radius:0;flex-shrink:0;align-items:center;margin-left:auto;font-size:9px;font-weight:700;line-height:1.4;display:flex}.scene-loop-badge svg{opacity:.6}.scene-loop-badge span{line-height:1}.scene-preview-container{display:none}.scene-thumbs{gap:1px;width:100%;height:100%;display:grid}.scene-thumbs.single{grid-template-columns:1fr}.scene-thumbs.duo{grid-template-columns:1fr 1fr}.scene-thumbs.quad{grid-template-rows:1fr 1fr;grid-template-columns:1fr 1fr}.scene-expand-btn{bottom:var(--spacing-xs);right:var(--spacing-xs);-webkit-backdrop-filter:blur(8px);color:#fff;cursor:pointer;opacity:0;background:#0f0f0fb3;border:1px solid #ffffff1a;border-radius:0;justify-content:center;align-items:center;width:24px;height:24px;transition:opacity .2s,transform .1s;display:flex;position:absolute}.timeline-scene:hover .scene-expand-btn{opacity:1}.scene-expand-btn:active{transform:scale(.9)}.scene-info-bar{flex-direction:column;flex:1;gap:0;min-width:0;display:flex;overflow:hidden}.scene-effect-name{color:var(--text-primary);white-space:nowrap;text-overflow:ellipsis;font-size:11px;font-weight:600;line-height:1.3;overflow:hidden}.scene-meta{color:var(--text-tertiary);white-space:nowrap;text-overflow:ellipsis;font-size:9px;line-height:1.2;overflow:hidden}.scene-remove{color:#fff;cursor:pointer;width:18px;height:18px;z-index:var(--z-timeline);opacity:0;background:#0009;border:none;border-radius:0;justify-content:center;align-items:center;padding:0;line-height:1;transition:opacity .2s,background .2s;display:none;position:absolute;top:2px;right:2px}.scene-remove svg{pointer-events:none;width:10px;height:10px}.timeline-scene:hover .scene-remove{opacity:.5;display:flex}.timeline-scene:hover .scene-remove:hover{opacity:1;background:#dc2626e6}.timeline-scene:only-child .scene-remove{display:none}@media (hover:none),(pointer:coarse){.scene-remove{opacity:.75;width:32px;height:32px;display:flex;top:4px;right:4px}.scene-remove svg{width:14px;height:14px}.timeline-scene:only-child .scene-remove{display:none}}.timeline-add{border:1.5px dashed var(--white-10);cursor:pointer;width:32px;min-width:32px;height:32px;min-height:32px;color:var(--text-disabled);background:0 0;border-radius:0;flex-shrink:0;justify-content:center;align-items:center;transition:background .15s,border-color .15s,color .15s;display:flex}.timeline-add:hover{border-color:var(--accent-primary);color:var(--accent-primary);background:var(--white-3)}.scene-add-menu{background:var(--bg-secondary);border:1px solid var(--border-default);padding:var(--spacing-compact);gap:var(--spacing-xs);z-index:var(--z-sticky);box-shadow:var(--shadow-xl);border-radius:0;flex-direction:column;min-width:160px;display:none;position:absolute;top:calc(100% + 6px);right:0}#scene-add-wrap{display:inline-flex;position:relative}.scene-add-menu.open{display:flex}.scene-add-menu button{color:var(--text-primary);padding:var(--spacing-sm) var(--spacing-md-sm);font-size:var(--font-size-small);cursor:pointer;text-align:left;align-items:center;gap:var(--spacing-sm);background:0 0;border:none;border-radius:0;transition:background .1s;display:flex}.scene-add-menu button:hover{background:var(--white-6)}.slide-manager{margin-top:var(--spacing-sm);gap:var(--spacing-xs);flex-direction:column;display:flex}.slide-card{align-items:center;gap:var(--spacing-sm);padding:var(--spacing-xs) var(--spacing-sm);background:var(--bg-elevated);border:1px solid var(--border-subtle);transition:border-color var(--transition-fast);box-sizing:border-box;border-radius:0;width:100%;min-height:40px;display:flex}.slide-card:focus-within{border-color:var(--accent-primary)}.slide-card .slide-num{background:var(--accent-bg);width:18px;height:18px;color:var(--accent-primary);font-size:var(--font-size-micro);border-radius:0;flex-shrink:0;justify-content:center;align-items:center;font-weight:700;display:flex}.slide-card .slide-input{width:100%;min-width:0;padding:var(--spacing-compact) var(--spacing-compact);color:var(--text-primary);font-size:var(--font-size-body-sm);resize:none;box-sizing:border-box;background:0 0;border:none;outline:none;flex:1;max-height:80px;font-family:inherit;font-weight:500;line-height:1.3;overflow:hidden}.slide-card .slide-input::placeholder{color:var(--text-disabled);font-weight:400}.slide-card .slide-input:focus-visible{background:var(--white-3);border-radius:0}.slide-card .slide-time{padding:var(--spacing-sm) var(--spacing-md-sm);background:var(--bg-primary);border:1px solid var(--border-default);min-height:32px;color:var(--accent-primary);font-size:var(--font-size-micro);cursor:pointer;-webkit-user-select:none;user-select:none;border-radius:0;flex-shrink:0;width:auto;min-width:auto;font-weight:700;transition:background .15s,border-color .15s,color .15s,opacity .15s}.slide-card .slide-time:hover{background:var(--white-6);border-color:var(--accent-primary)}.slide-card .slide-delete{width:32px;min-width:32px;height:32px;color:var(--text-disabled);font-size:var(--font-size-body);cursor:pointer;background:0 0;border:none;border-radius:0;flex-shrink:0;justify-content:center;align-items:center;padding:0;transition:background .15s,border-color .15s,color .15s,opacity .15s;display:flex}.slide-card .slide-delete:hover{color:var(--color-error);background:#996b6b1f}.slide-card.single .slide-delete{display:none}.slide-card.hierarchy-title{border-left:4px solid var(--color-hierarchy-title,#5b9bd5)}.slide-card.hierarchy-subtitle{border-left:3px solid var(--color-hierarchy-subtitle,#7bc47f)}.slide-card.hierarchy-detail{border-left:2px solid var(--color-hierarchy-detail,#d4a95a)}.slide-hierarchy-badge{font-size:var(--font-size-micro);letter-spacing:.5px;text-transform:uppercase;white-space:nowrap;font-weight:600}.slide-hierarchy-badge.hierarchy-title{color:var(--color-hierarchy-title,#5b9bd5)}.slide-hierarchy-badge.hierarchy-subtitle{color:var(--color-hierarchy-subtitle,#7bc47f)}.slide-hierarchy-badge.hierarchy-detail{color:var(--color-hierarchy-detail,#d4a95a)}.slide-content{flex-direction:column;flex:1;gap:1px;min-width:0;display:flex}.slide-size{background:var(--bg-elevated);border:1px solid var(--border-subtle);color:var(--text-tertiary);cursor:pointer;font-size:var(--font-size-micro);white-space:nowrap;border-radius:0;padding:2px 5px}.slide-size.active{color:var(--accent-primary)}.slide-size:hover{border-color:var(--border-default)}.slide-card .slide-size,.slide-card .slide-time,.slide-card .slide-delete{min-width:auto;min-height:auto}.slide-add-btn{justify-content:center;align-items:center;gap:var(--spacing-compact);width:100%;padding:var(--spacing-sm) var(--spacing-md);margin-top:var(--spacing-sm);background:var(--white-3);border:1.5px dashed var(--border-default);color:var(--text-primary);font-size:var(--font-size-xs);letter-spacing:.02em;cursor:pointer;transition:background var(--transition-fast), border-color var(--transition-fast), color var(--transition-fast);border-radius:0;min-height:38px;font-weight:600;display:flex}.slide-add-btn:hover{border-color:var(--accent-primary);color:var(--accent-primary);background:var(--white-5)}.slide-add-btn:focus-visible{border-color:var(--accent-primary);box-shadow:var(--shadow-ring-accent)}.entrance-grid{gap:var(--spacing-sm);flex-wrap:wrap;display:flex}.entrance-btn{flex:1 1 calc(25% - var(--spacing-sm));min-width:60px;height:32px;font-size:var(--font-size-small);border:1px solid var(--border-subtle);color:var(--text-secondary);cursor:pointer;transition:background var(--transition-fast), border-color var(--transition-fast), color var(--transition-fast), opacity var(--transition-fast);background:0 0;border-radius:0}.entrance-btn.active{background:var(--accent-primary);color:var(--text-on-accent);border-color:var(--accent-primary);font-weight:600}.entrance-btn:hover{border-color:var(--border-default);color:var(--text-primary)}.custom-checkbox-row{align-items:center;gap:var(--spacing-md);padding:var(--spacing-md) 0;cursor:pointer;-webkit-user-select:none;user-select:none;min-height:32px;margin-bottom:0;display:flex}.custom-checkbox-row input{opacity:0;cursor:pointer;width:0;height:0;position:absolute}.checkmark{border:1px solid var(--border-subtle);width:16px;height:16px;transition:background var(--transition-fast), border-color var(--transition-fast), color var(--transition-fast), opacity var(--transition-fast);background-color:#0000;border-radius:0;justify-content:center;align-items:center;display:flex}.custom-checkbox-row:hover .checkmark{border-color:var(--border-default)}.custom-checkbox-row input:checked~.checkmark{background-color:var(--accent-primary);border-color:var(--accent-primary)}.custom-checkbox-row input:checked~.checkmark:after{content:"";border:2px solid #000;border-width:0 2px 2px 0;width:4px;height:8px;margin-bottom:2px;display:block;transform:rotate(45deg)}.checkbox-label{font-size:var(--font-size-small);color:var(--text-secondary)}.watermark-input{background:var(--bg-tertiary);border:1px solid var(--border-default);width:100%;color:var(--text-primary);padding:5px var(--space-2);font-size:var(--font-size-small);transition:border-color var(--transition-fast);box-sizing:border-box;border-radius:0;outline:none}.watermark-input::placeholder{color:var(--text-tertiary)}.watermark-input:focus,.watermark-input:focus-visible{border-color:var(--accent-primary);box-shadow:var(--shadow-ring-accent)}.wm-panel{flex-direction:column;gap:0;display:flex}.wm-body{gap:var(--space-2);padding-top:var(--space-2);flex-direction:column;display:flex}.wm-row{align-items:center;display:flex}.wm-style-pills .effect-pill{font-size:var(--font-size-micro);min-height:var(--ctrl-sm);padding:0 var(--space-2)}.wm-opacity-control{align-items:center;gap:var(--space-1);cursor:default;min-width:0;display:flex}.wm-opacity-label{font-size:var(--font-size-micro);color:var(--text-tertiary);white-space:nowrap;flex-shrink:0}.wm-opacity-control input[type=range]{flex:1;min-width:40px}.wm-opacity-val{font-size:var(--font-size-micro);color:var(--text-secondary);text-align:right;flex-shrink:0;min-width:28px}.wm-position-section{gap:var(--space-1);flex-direction:column;display:flex}.wm-pos-section-label{font-size:var(--font-size-micro);color:var(--text-tertiary);text-transform:uppercase;letter-spacing:.06em;font-weight:500}.wm-pos-canvas{background:var(--bg-tertiary);border:1px solid var(--border-default);aspect-ratio:16/9;box-sizing:border-box;border-radius:0;grid-template-columns:repeat(3,1fr);grid-auto-rows:1fr;gap:3px;width:100%;padding:4px;display:grid}.wm-pos-btn{border:1px solid var(--border-default);cursor:pointer;background:0 0;border-radius:0;min-height:0;padding:0;transition:background .12s,border-color .12s;position:relative}.wm-pos-btn:after{content:"";background:var(--text-secondary);opacity:.55;border-radius:0;width:9px;height:5px;transition:opacity .12s,background .12s,width .12s,height .12s;position:absolute}.wm-pos-btn[data-wpos=top-left]:after{top:3px;left:3px}.wm-pos-btn[data-wpos=top-center]:after{top:3px;left:50%;transform:translate(-50%)}.wm-pos-btn[data-wpos=top-right]:after{top:3px;right:3px}.wm-pos-btn[data-wpos=center-left]:after{top:50%;left:3px;transform:translateY(-50%)}.wm-pos-btn[data-wpos=center]:after{top:50%;left:50%;transform:translate(-50%,-50%)}.wm-pos-btn[data-wpos=center-right]:after{top:50%;right:3px;transform:translateY(-50%)}.wm-pos-btn[data-wpos=bottom-left]:after{bottom:3px;left:3px}.wm-pos-btn[data-wpos=bottom-center]:after{bottom:3px;left:50%;transform:translate(-50%)}.wm-pos-btn[data-wpos=bottom-right]:after{bottom:3px;right:3px}.wm-pos-btn:hover{background:var(--bg-hover);border-color:var(--border-subtle)}.wm-pos-btn:hover:after{opacity:.65}.wm-pos-btn.active{background:color-mix(in srgb, var(--accent-primary) 8%, transparent);border-color:rgba(var(--accent-primary-rgb), .5)}.wm-pos-btn.active:after{background:var(--accent-primary);opacity:1;width:10px;height:6px}.switch-pill{width:36px;height:20px;display:inline-block;position:relative}.switch-pill input{opacity:0;width:0;height:0}.switch-pill .slider{cursor:pointer;background-color:var(--border-subtle);transition:all .15s;position:absolute;inset:0}.switch-pill .slider.round,.switch-pill .slider.round:before{border-radius:0}.switch-pill .slider:before{content:"";background-color:#fff;width:12px;height:12px;transition:all .15s;position:absolute;bottom:4px;left:4px}.switch-pill input:checked+.slider{background-color:var(--accent-primary)}.switch-pill input:checked+.slider:before{transform:translate(16px)}.photo-lib-clear{padding:var(--spacing-xs) 10px;border:1px solid var(--border-subtle);font-size:var(--font-size-small);color:var(--text-secondary);cursor:pointer;transition:background var(--transition-fast), border-color var(--transition-fast), color var(--transition-fast), opacity var(--transition-fast);background:0 0;border-radius:0}.photo-lib-clear:hover{border-color:var(--color-error);color:var(--color-error)}.transition-grid{grid-template-columns:repeat(3,1fr);gap:3px;display:grid}.logo-pos-grid{grid-template-columns:repeat(3,1fr);gap:3px;max-width:140px;display:grid}.logo-pos-pill{font-size:var(--font-size-small);padding:var(--spacing-compact);text-align:center}.effect-pills{gap:var(--spacing-xs);margin-bottom:var(--spacing-sm);flex-wrap:wrap;display:flex}.layers-timeline{background:var(--bg-elevated);border:1px solid var(--border-subtle);margin-bottom:var(--spacing-md-sm);border-radius:0;padding:8px 10px}.layers-header{margin-bottom:var(--spacing-sm);justify-content:space-between;align-items:center;gap:var(--spacing-sm);flex-wrap:nowrap;display:flex}.layers-header h4{align-items:center;gap:var(--spacing-compact);font-size:var(--font-size-small);color:var(--text-secondary);white-space:nowrap;flex-shrink:0;margin:0;font-weight:600;display:flex}.layers-tabs{background:var(--bg-secondary);border-radius:0;flex-shrink:0;gap:2px;padding:2px;display:flex}.layers-tab{font-size:var(--font-size-small);color:var(--text-tertiary);cursor:pointer;white-space:nowrap;background:0 0;border:none;border-radius:0;padding:3px 10px;font-weight:500;transition:color .15s,background .15s}.layers-tab:hover{color:var(--text-secondary)}.layers-tab.active{color:var(--text-primary);background:var(--bg-elevated);box-shadow:var(--shadow-xs)}.layers-actions{gap:var(--spacing-xs);display:flex}.layer-add-btn{border:1px dashed var(--border-default);width:28px;height:28px;color:var(--text-tertiary);font-size:var(--font-size-xs);cursor:pointer;background:0 0;border-radius:0;justify-content:center;align-items:center;font-weight:700;transition:background .15s,border-color .15s,color .15s,opacity .15s;display:flex}.layer-add-btn:hover{border-color:var(--accent-primary);color:var(--accent-primary);background:#ffffff0d}.photo-requirement-banner{align-items:center;gap:var(--spacing-sm);padding:var(--spacing-sm) var(--spacing-md);font-size:var(--font-size-small);color:var(--text-secondary);margin-bottom:var(--spacing-sm);background:#f59e0b1f;border:1px solid #f59e0b40;border-radius:0;display:flex}.photo-requirement-banner.is-hidden{display:none}.layers-strip{gap:var(--spacing-sm);scrollbar-width:thin;align-items:center;min-height:64px;padding:6px 0;display:flex;overflow-x:auto}.layer-item{cursor:pointer;border:2px solid var(--white-12);border-radius:0;flex-shrink:0;width:56px;height:56px;transition:background .15s,border-color .15s,color .15s,opacity .15s;position:relative;overflow:hidden}.layer-item.photo{border-color:var(--accent-primary)}.layer-item.text{border-color:var(--text-tertiary);background:linear-gradient(135deg, var(--bg-secondary) 0%, var(--bg-hover) 100%);padding:var(--spacing-xs);flex-direction:column;justify-content:center;align-items:center;display:flex}.layer-item.text .layer-text-preview{font-size:var(--font-size-micro);color:#fff;text-align:center;word-break:break-word;text-transform:uppercase;letter-spacing:.5px;max-height:32px;font-weight:700;line-height:1.1;overflow:hidden}.layer-item .layer-type-badge{font-size:var(--font-size-micro);text-transform:uppercase;border-radius:0;padding:1px 4px;font-weight:700;position:absolute;top:2px;left:2px}.layer-item.photo .layer-type-badge{background:var(--accent-primary);color:#fff}.layer-item.text .layer-type-badge{background:var(--text-tertiary);color:#fff}.layer-item .layer-order{font-size:var(--font-size-micro);color:#fff;background:#000000b3;border-radius:0;padding:1px 4px;font-weight:700;position:absolute;bottom:2px;right:2px}.layer-item .layer-remove{color:#fff;cursor:pointer;opacity:0;background:#000000b3;border:none;border-radius:0;justify-content:center;align-items:center;width:16px;height:16px;padding:0;font-size:12px;font-weight:700;transition:opacity .2s;display:none;position:absolute;top:2px;right:2px}.layer-item:hover .layer-remove{opacity:.6;display:flex}.layer-item:hover .layer-remove:hover{opacity:1;background:#dc2626e6}.layer-item img{-o-object-fit:cover;object-fit:cover;width:100%;height:100%}.layer-item.active{box-shadow:var(--shadow-ring-white);transform:scale(1.05)}.layer-add-inline{border:2px dashed var(--border-default);cursor:pointer;width:52px;height:52px;color:var(--text-disabled);font-size:var(--font-size-h2);background:0 0;border-radius:0;flex-shrink:0;justify-content:center;align-items:center;transition:background .15s,border-color .15s,color .15s,opacity .15s;display:flex}.layer-add-inline:hover{border-color:var(--accent-primary);color:var(--accent-primary);background:var(--white-3)}.text-layers-strip{gap:var(--spacing-compact);margin-top:var(--spacing-sm);border-top:1px solid var(--border-subtle);padding-top:8px;display:flex}.mobile-header{height:56px;z-index:var(--z-mobile-header);background:var(--bg-secondary);border-bottom:1px solid var(--border-subtle);padding:0 var(--spacing-md-sm);justify-content:space-between;align-items:center;gap:var(--spacing-sm);display:none;position:fixed;top:0;left:0;right:0}.mobile-header-left{flex-shrink:0}.mobile-logo{font-size:var(--font-size-h2);color:var(--text-primary);letter-spacing:-.02em;font-weight:800}.mobile-header-center{flex:1;justify-content:center;align-items:center;display:flex}.mobile-header-right{align-items:center;gap:var(--spacing-xs);flex-shrink:0;display:flex}.mobile-mode-tabs{background:var(--white-6);border-radius:0;gap:2px;padding:3px;display:flex}.mobile-mode-tab{color:var(--text-secondary);font-size:var(--font-size-small);cursor:pointer;min-height:var(--touch-target-comfortable);white-space:nowrap;background:0 0;border:none;border-radius:0;justify-content:center;align-items:center;padding:8px 16px;font-weight:600;transition:background .15s,border-color .15s,color .15s,opacity .15s;display:flex}.mobile-mode-tab.active{background:var(--accent-primary);color:#fff;font-weight:600}.mobile-config-btn{width:44px;height:44px;color:var(--text-tertiary);cursor:pointer;background:0 0;border:none;border-radius:0;flex-shrink:0;justify-content:center;align-items:center;transition:background .15s,border-color .15s,color .15s,opacity .15s;display:flex}#auth-btn-mobile{width:44px;height:44px;color:var(--text-secondary);cursor:pointer;background:0 0;border:none;flex-shrink:0;justify-content:center;align-items:center;padding:0;display:flex}.mobile-fixed-cta{z-index:var(--z-mobile-cta);background:var(--bg-secondary);border-top:1px solid var(--border-subtle);padding:var(--spacing-md-sm) var(--spacing-md-sm);padding-bottom:max(10px, env(safe-area-inset-bottom));display:none;position:fixed;bottom:0;left:0;right:0}.preview-toolbar{align-items:center;gap:var(--spacing-compact);padding:var(--spacing-xs) 0;flex-wrap:nowrap;display:none}body[data-mode=text] .preview-toolbar{display:flex}@media (width<=768px){.mobile-header{display:flex}.mobile-fixed-cta{display:block}.mobile-nav{display:none}.mobile-template-carousel{display:flex}.app{flex-direction:column;max-width:100vw;height:auto;max-height:none;padding:0;display:flex;overflow:hidden visible}.sidebar{z-index:var(--z-drawer);-webkit-overflow-scrolling:touch;box-sizing:border-box;background:var(--bg-primary);border-top:1px solid var(--border-subtle);width:100%;max-height:85vh;padding:var(--spacing-md);border-radius:0;transition:transform .3s;position:fixed;bottom:0;left:0;overflow-y:auto;transform:translateY(100%)}.sidebar.open{transform:translateY(0)}.settings{z-index:var(--z-drawer);-webkit-overflow-scrolling:touch;box-sizing:border-box;background:var(--bg-primary);border-top:1px solid var(--border-subtle);width:100%;max-height:85vh;padding:var(--spacing-md);border-radius:0;transition:transform .3s;position:fixed;bottom:0;left:0;overflow-y:auto;transform:translateY(100%)}.settings.open{transform:translateY(0)}.desktop-auth-bar,#generate-btn,.export-controls,#config-summary,.mode-tabs{display:none}.main-area{flex-direction:column;height:auto;min-height:0;margin-top:56px;padding-top:0;padding-bottom:0;overflow:hidden visible}.content-zone{flex:none;height:auto;min-height:0;overflow:hidden visible}.preview-zone{flex:none;max-height:62vh;overflow:hidden}body{min-height:100dvh;overflow:hidden auto}.mobile-template-carousel{box-sizing:border-box;width:100%;max-width:100%;padding-bottom:8px;overflow-x:auto}.mobile-cta-spacer{height:var(--mobile-cta-height,72px);flex-shrink:0}.preview-zone{padding:var(--spacing-sm);gap:var(--spacing-compact);flex-direction:column;padding-top:4px;display:flex}.preview-text-input{width:100%}#inline-text-field{font-size:var(--font-size-h3);min-height:48px}body[data-mode=photo] .preview-text-input{display:none}.preview-toolbar{background:0 0;flex-direction:column;gap:0;margin:0;padding:0;display:none}body[data-mode=text] .preview-toolbar{display:none}.preview-toolbar-row1{align-items:center;gap:var(--spacing-sm);width:100%;padding:6px 0;display:flex}.preview-toolbar-row2{align-items:center;gap:var(--spacing-compact);border-top:1px solid var(--white-6);width:100%;padding:6px 0;display:flex}.preview-toolbar select{min-width:80px;max-width:160px;height:36px;font-size:var(--font-size-body-sm);background:var(--white-6);border:1px solid var(--white-10);color:var(--text-primary);--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark;border-radius:0;flex:auto;padding:0 8px}.preview-toolbar input[type=range]{height:4px;accent-color:var(--accent-primary);cursor:pointer;flex:1}.preview-toolbar .tb-size-label{text-align:center;font-size:var(--font-size-small);color:var(--text-secondary);font-variant-numeric:tabular-nums;flex:0 0 44px;font-weight:600}.preview-toolbar .speed-group{align-items:center;gap:var(--spacing-compact);width:100%;margin-left:0;display:flex}.preview-toolbar .speed-group label{font-size:var(--font-size-xs);color:var(--text-disabled);text-transform:uppercase;letter-spacing:.5px;white-space:nowrap;flex:none}.preview-toolbar .tb-divider,.settings{display:none}.preview-container{border:1px solid var(--white-8);background:var(--bg-elevated);border-radius:0;flex-shrink:0;width:fit-content;margin:0 auto;overflow:hidden}.mobile-fixed-cta>div{gap:var(--spacing-sm);align-items:center;width:100%;display:flex}.mobile-fixed-cta .generate-btn{min-height:52px;font-size:var(--font-size-body);padding:var(--spacing-md-sm) var(--spacing-md);border-radius:0;flex-direction:column;flex:1;justify-content:center;align-items:center;gap:2px;width:auto;margin-top:0;font-weight:700;display:flex}.mobile-fixed-cta .cta-inner{gap:var(--spacing-sm);align-items:center;display:flex}.mobile-config-btn--cta{border-radius:0;flex-shrink:0;width:52px;height:52px}.mobile-dim-bar{gap:var(--spacing-sm);padding:var(--spacing-md-sm) var(--spacing-sm);background:#0000004d;flex-wrap:wrap;justify-content:center;align-items:center;display:flex}.mobile-dim-btn{border:1px solid var(--border-subtle);background:var(--bg-secondary);min-width:44px;min-height:44px;color:var(--text-secondary);font-size:var(--font-size-small);cursor:pointer;white-space:nowrap;border-radius:0;justify-content:center;align-items:center;padding:10px 12px;font-weight:600;transition:background .15s,border-color .15s,color .15s,opacity .15s;display:flex}.mobile-dim-btn.active{background:var(--accent-primary);border-color:var(--accent-primary);color:#fff}.mobile-dim-btn:hover:not(.active){border-color:var(--accent-primary);color:var(--text-secondary)}.info-bar{align-items:center;gap:var(--spacing-xs);padding:var(--spacing-xs) 0;font-size:var(--font-size-xs);flex-wrap:nowrap;width:100%;max-width:100%;display:flex;overflow:hidden visible}.info-bar .speed-control{display:none}.info-bar .info-badge{text-overflow:ellipsis;white-space:nowrap;flex-shrink:0;max-width:130px;overflow:hidden}.info-bar .undo-redo-bar{flex-shrink:0;gap:2px;margin-left:auto;display:flex}.content-zone{padding:var(--spacing-sm)}.photos-header .btn-sm,.upload-bar-btn,.library-filter-btn{justify-content:center;align-items:center;min-height:44px;padding:8px 14px;display:inline-flex}.preview-placeholder .placeholder-btn,.photo-drop-zone button{min-height:44px;padding:var(--spacing-md-sm) 18px;width:100%;max-width:none}.mobile-effects-bar{padding:0 8px 8px}.rt-cat-bar,.mobile-cat-filters{-webkit-overflow-scrolling:touch;scrollbar-width:none;padding:var(--spacing-compact) var(--spacing-sm);gap:var(--spacing-compact);flex-wrap:nowrap;width:100%;overflow:auto hidden}.rt-cat-bar::-webkit-scrollbar{display:none}.mobile-cat-filters::-webkit-scrollbar{display:none}.rt-cat-btn,.mobile-cat-filters button{padding:var(--spacing-md-sm) 14px;min-height:44px;font-size:var(--font-size-small);white-space:nowrap;border-radius:0;flex-shrink:0;justify-content:center;align-items:center;font-weight:600;display:flex}.undo-redo-btn{justify-content:center;align-items:center;width:44px;height:44px;display:flex}.bottom-sheet{border-radius:0;max-height:85dvh}body{overflow-x:hidden}}.effects-grid{gap:var(--spacing-compact);flex-wrap:wrap;display:flex}.effect-btn{padding:var(--spacing-sm) var(--spacing-md-sm);background:var(--bg-secondary);border:1px solid var(--white-10);color:#fff9;font-size:var(--font-size-xs);cursor:pointer;border-radius:0;font-weight:600;transition:background .15s,border-color .15s,color .15s,opacity .15s}.effect-btn:hover{background:var(--bg-elevated);border-color:var(--border-hover);color:#ffffffe6}.effect-btn.active{border-color:var(--accent-primary);color:var(--accent-primary);background:#0e749026}.slider-container{align-items:center;gap:10px;display:flex}.slider-container .slider-label{font-size:var(--font-size-xs);color:#fff9;min-width:80px}#collage-layouts-grid{grid-template-columns:repeat(2,1fr)!important}#collage-layouts-grid>:last-child{grid-column:1/-1}@media (width>=769px){.preview-toolbar{align-items:center;gap:var(--spacing-md-sm);padding:var(--spacing-sm) var(--spacing-md);background:var(--bg-elevated);border:1px solid var(--border-subtle);margin-bottom:var(--spacing-md);border-radius:0;flex-wrap:nowrap;display:none}body[data-mode=text] .preview-toolbar{display:none}.preview-toolbar-row1,.preview-toolbar-row2{align-items:center;gap:var(--spacing-md-sm);border:none;width:auto;padding:0;display:flex}.preview-toolbar-row2{margin-left:auto}.preview-toolbar select,.preview-toolbar input[type=color]{border-radius:0;height:32px}.preview-toolbar input[type=range]{width:100px}.preview-toolbar .tb-divider{background:var(--border-subtle);width:1px;height:24px;display:block}}.sidebar .effect-pill,.sidebar button,.sidebar select,.sidebar input[type=text]{min-height:36px;font-size:var(--font-size-small);border-radius:0}.sidebar .effect-pill.active{border:1px solid var(--accent-primary);background:#0e74901a}.settings .effect-pill{height:32px;min-height:32px;padding:0 var(--spacing-md-sm);font-size:var(--font-size-small);border-radius:0;justify-content:center;align-items:center;display:inline-flex}.preview-toolbar-row1 select,.preview-toolbar-row1 input[type=range]{min-height:36px}.toast-container{z-index:var(--z-mobile-cta);gap:var(--spacing-sm);flex-direction:column;display:flex;position:fixed;top:20px;right:20px}.toast{-webkit-backdrop-filter:blur(16px);border:1px solid var(--border-default);padding:var(--spacing-md) var(--spacing-lg);align-items:center;gap:var(--spacing-md-sm);box-shadow:var(--shadow-xl);background:#151518eb;border-radius:0;min-width:300px;animation:.3s slideIn;display:flex}.toast.success{border-color:var(--color-success)}.toast.error{border-color:var(--color-error)}.toast.loading{border-color:var(--accent-primary)}.toast-icon{font-size:var(--font-size-h1)}.toast-content{flex:1}.toast-title{margin-bottom:var(--spacing-xs);font-weight:600}.toast-message{font-size:var(--font-size-body);color:var(--text-tertiary)}.toast-progress{background:var(--border-default);height:3px;margin-top:var(--spacing-sm);border-radius:0;overflow:hidden}.toast-progress-bar{background:var(--accent-primary);height:100%;transition:width var(--transition-slow)}.toast-close{color:var(--text-tertiary);cursor:pointer;padding:var(--spacing-xs);background:0 0;border:none}@keyframes slideIn{0%{opacity:0;transform:translate(100%)scale(.95)}to{opacity:1;transform:translate(0)scale(1)}}@keyframes toast-in{0%{opacity:0;transform:translateY(12px)scale(.95)}to{opacity:1;transform:translateY(0)scale(1)}}.photo-counter{align-items:center;gap:var(--spacing-xs,4px);padding:var(--spacing-xs,4px) var(--spacing-sm,8px);background:var(--bg-tertiary,#ffffff0d);border:1px solid var(--border-subtle,#ffffff1a);color:var(--text-secondary,#ffffffb3);transition:all var(--transition-fast,.15s) ease;border-radius:0;font-size:12px;font-weight:500;display:inline-flex}.photo-counter--warning{background:var(--color-warning-bg);border-color:var(--color-warning-border);color:var(--color-warning)}.photo-counter--full{background:var(--color-error-bg);border-color:var(--color-error-border);color:var(--color-error)}.upload-progress{z-index:var(--z-tooltip);align-items:center;gap:var(--spacing-md,12px);padding:var(--spacing-lg,24px) var(--spacing-xl,32px);background:var(--bg-secondary,#1a1a1a);border:1px solid var(--border-default,#ffffff26);opacity:0;border-radius:0;flex-direction:column;animation:.2s forwards uploadProgressFadeIn;display:flex;position:fixed;top:50%;left:50%;transform:translate(-50%,-50%);box-shadow:0 8px 32px #0006,0 0 0 1px #ffffff0d}@keyframes uploadProgressFadeIn{0%{opacity:0;transform:translate(-50%,-50%)scale(.95)}to{opacity:1;transform:translate(-50%,-50%)scale(1)}}.upload-progress--done{animation:.3s forwards uploadProgressFadeOut}@keyframes uploadProgressFadeOut{0%{opacity:1;transform:translate(-50%,-50%)scale(1)}to{opacity:0;transform:translate(-50%,-50%)scale(.95)}}.upload-progress__spinner{border:3px solid var(--border-subtle,#ffffff1a);border-top-color:var(--accent-primary,#5eaab8);border-radius:0;width:32px;height:32px;animation:.8s linear infinite uploadSpinnerRotate}@keyframes uploadSpinnerRotate{to{transform:rotate(360deg)}}.upload-progress__text{color:var(--text-primary,#ffffffe6);white-space:nowrap;font-size:14px;font-weight:500}.drag-over{position:relative}.drag-over:before{content:"";border:2px dashed var(--accent-primary,#5eaab8);pointer-events:none;opacity:0;transition:opacity var(--transition-fast,.15s) ease;background:#5eaab80d;border-radius:0;position:absolute;inset:0}.drag-over--active:before{opacity:1}.drag-over--active{background:#5eaab808}.preview-placeholder[data-drag-state=active]{transition:transform var(--transition-fast,.15s) ease;transform:scale(.98)}.preview-placeholder[data-drag-state=active] .placeholder-text{color:var(--accent-primary,#5eaab8);transition:all var(--transition-fast,.15s) ease;transform:scale(1.05)}.settings-section-header .photo-counter{margin-left:auto}@media (width<=768px){.upload-progress{padding:var(--spacing-md,16px) var(--spacing-lg,20px);max-width:280px}.upload-progress__spinner{border-width:2.5px;width:28px;height:28px}.upload-progress__text{font-size:13px}.photo-counter{padding:3px 6px;font-size:11px}}@media (prefers-reduced-motion:reduce){.upload-progress{opacity:1;animation:none}.upload-progress--done{opacity:0;animation:none}.upload-progress__spinner{animation:1.2s linear infinite uploadSpinnerRotateSlow}@keyframes uploadSpinnerRotateSlow{to{transform:rotate(360deg)}}.drag-over--active,.preview-placeholder[data-drag-state=active]{transform:none}}.mobile-nav{z-index:var(--z-mobile-cta);background:var(--bg-primary);padding:var(--spacing-sm) var(--spacing-md-sm);border-bottom:1px solid var(--border-subtle);display:none;position:sticky;top:0}.mobile-nav-btns{gap:var(--spacing-compact);display:flex}.mobile-nav-btn{padding:var(--spacing-md-sm);background:var(--bg-secondary);border:1px solid var(--border-default);color:var(--text-tertiary);font-size:var(--font-size-small);cursor:pointer;text-align:center;border-radius:0;flex:1;font-weight:600}.mobile-nav-btn.active{background:var(--accent-primary);border-color:var(--accent-primary);color:#fff;box-shadow:var(--shadow-inset-glow)}#result-panel{gap:var(--spacing-sm);padding:var(--space-3);background:var(--bg-elevated);border:1px solid var(--border-default);border-radius:0;flex-direction:column;flex-shrink:0;width:100%;max-width:min(560px,100%);margin-top:0;margin-left:auto;margin-right:auto;animation:.25s fadeIn;display:flex}.result-panel-header{align-items:center;gap:var(--spacing-sm);justify-content:center;display:flex}.result-format-badge{font-size:var(--font-size-micro);text-transform:uppercase;letter-spacing:.06em;color:var(--accent-primary);background:#5eaab81a;border-radius:0;align-items:center;padding:2px 8px;font-weight:700;line-height:1.4;display:inline-flex}#result-panel .result-info{text-align:center;font-size:var(--font-size-xs);color:var(--text-tertiary);letter-spacing:.3px;font-weight:500}#result-panel .btn-download{justify-content:center;align-items:center;gap:var(--spacing-sm);background:var(--accent-primary);color:#fff;width:100%;height:44px;font-size:var(--font-size-body);cursor:pointer;border:none;border-radius:0;font-weight:600;text-decoration:none;transition:transform .15s,filter .15s,background .15s;display:flex}#result-panel .btn-download:hover{filter:brightness(1.12);transform:translateY(-1px)}#result-panel .btn-download:active{transform:translateY(0)}#result-panel .result-controls{gap:var(--space-2);flex-direction:column;display:flex}#result-panel .dimension-switcher,#result-panel .result-quality{gap:var(--space-1);justify-content:center;width:100%;min-width:0;display:flex;overflow:hidden}#result-panel .dim-switch-btn{min-width:0;padding:5px var(--space-1);border:1px solid var(--border-default);color:var(--text-secondary);font-size:var(--font-size-xs);cursor:pointer;white-space:nowrap;text-overflow:ellipsis;background:0 0;border-radius:0;flex:1;font-weight:600;transition:background .15s,border-color .15s,color .15s;overflow:hidden}#result-panel .dim-switch-btn:hover{border-color:var(--text-tertiary);background:#ffffff08}#result-panel .dim-switch-btn.active{background:var(--accent-primary);border-color:var(--accent-primary);color:#fff}#result-panel .dim-switch-btn:disabled{opacity:.4;pointer-events:none}#result-panel .result-secondary-actions{justify-content:center;align-items:center;gap:var(--spacing-xs);padding-top:var(--spacing-sm);display:flex}.dl-format-grid{grid-template-columns:repeat(3,1fr);gap:8px;display:grid}.dl-format-card{padding:var(--spacing-sm) var(--spacing-compact);border:2px solid var(--border-subtle);color:var(--text-secondary);cursor:pointer;background:#ffffff08;border-radius:0;flex-direction:column;justify-content:center;align-items:center;gap:3px;min-height:68px;transition:border-color .15s,background .15s,color .15s,transform .1s;display:flex}.dl-format-card:hover{border-color:var(--border-default);color:var(--text-primary);background:#ffffff0f}.dl-format-card.active{border-color:var(--accent-primary);color:var(--accent-primary);box-shadow:var(--shadow-ring-accent-sm);background:#5eaab814}.dl-format-card:active{transform:scale(.97)}.dl-fmt-name{font-size:var(--font-size-small);letter-spacing:.04em;font-weight:700;line-height:1}.dl-fmt-sub{font-size:var(--font-size-micro);color:var(--text-tertiary);line-height:1}.dl-format-card.active .dl-fmt-sub{color:#5eaab8b3}.export-col--full{flex:100%;width:100%}@media (width<=480px){.cta-timing-row{gap:var(--space-2);padding:var(--space-2);grid-template-columns:1fr}.timing-label{gap:var(--space-2);padding:var(--space-1) 0}.timing-label input[type=range]{min-width:100px}}@media (width<=768px){.cta-timing-row{gap:var(--space-2);padding:var(--space-2);grid-template-columns:1fr}.timing-label{gap:var(--space-2);padding:var(--space-1) 0}.timing-label input[type=range]{min-width:100px}}.export-col--full .quality-pills{justify-content:space-between}.export-col--full .quality-pill{flex:1}.result-quality .dim-switch-btn{font-size:var(--font-size-xs);background:#ffffff0a;border-color:#0000}.result-quality .dim-switch-btn:hover{background:#ffffff14}.result-quality .dim-switch-btn.active{background:var(--accent-primary);border-color:var(--accent-primary);color:#fff}.quality-size{font-size:calc(var(--font-size-micro) - 1px);opacity:.5;margin-left:3px;font-weight:400}.btn-download.download-confirmed{background:var(--success,#43a047);pointer-events:none}.free-badge{font-size:var(--font-size-micro);color:var(--text-tertiary);letter-spacing:.3px;background:#ffffff0f;border-radius:0;padding:2px 8px;font-weight:600;display:inline-block}#result-panel .result-action-btn{border:1px solid var(--border-subtle);color:var(--text-tertiary);font-size:var(--font-size-xs);cursor:pointer;background:#ffffff0a;border-radius:0;justify-content:center;align-items:center;gap:4px;width:36px;height:36px;font-weight:500;text-decoration:none;transition:color .15s,background .15s,border-color .15s;display:inline-flex}#result-panel .result-action-btn:hover{color:var(--text-primary);border-color:var(--border-default);background:#ffffff14}#result-panel .result-action-btn .action-label{font-size:calc(var(--font-size-micro) - 1px);letter-spacing:.02em;font-weight:700}@media (height<=800px){.preview-container,.preview-container.text-mode-preview{max-height:100%}}@media (height>=1200px){.preview-container{max-height:100%}}@media (width<=768px){.preview-container{height:auto;max-height:min(42dvh,320px);position:relative;top:auto}#result-panel .dim-switch-btn{min-height:44px;padding:var(--space-2) var(--space-3);font-size:var(--font-size-small)}#result-panel .btn-download{min-height:44px}#result-panel .result-action-btn{width:44px;height:44px}}@media (width>=769px) and (width<=980px){.app{grid-template-rows:1fr;grid-template-columns:220px 1fr}.settings{max-height:55vh;z-index:var(--z-toolbar);background:var(--bg-secondary);border-top:1px solid var(--border-default);box-shadow:var(--shadow-lg);border-left:none;border-radius:0;transition:transform .3s cubic-bezier(.32,.72,0,1);position:fixed;bottom:0;left:0;right:0;transform:translateY(calc(100% - 48px))}.settings.expanded{transform:translateY(0)}.settings:before{content:"Configurações — toque para expandir";justify-content:center;align-items:center;gap:var(--spacing-sm);height:48px;font-size:var(--font-size-small);color:var(--text-secondary);cursor:pointer;border-bottom:1px solid var(--border-subtle);background:var(--bg-elevated);border-radius:0;font-weight:600;display:flex}.settings.expanded:before{content:"Configurações — toque para minimizar"}.sidebar{width:220px;padding:var(--spacing-md)}.template-grid{gap:var(--spacing-sm);grid-template-columns:repeat(3,1fr)}.effect-grid{grid-template-columns:repeat(auto-fill,minmax(52px,1fr))}.main-area{padding:var(--spacing-md);padding-bottom:60px}.preview-container{height:100%}.mode-tab,.cat-btn,.effect-pill,.dim-btn{min-height:40px}.palette-swatches{grid-template-columns:repeat(4,1fr)}.bg-palette-grid{grid-template-columns:repeat(3,1fr)}.preview-zone{min-height:auto;padding:16px 12px 8px}.mobile-fixed-cta{margin-top:var(--spacing-md);position:relative}body[data-mode=photo] .preview-placeholder,body[data-mode=collage] .preview-placeholder{width:100%;min-height:300px;position:relative;inset:auto}}@media (width<=900px) and (width>=769px){.app{grid-template-columns:200px 1fr}}.mobile-fixed-cta{z-index:var(--z-mobile-cta);border-top:1px solid var(--border-subtle);padding:var(--spacing-sm) var(--spacing-md);padding-bottom:max(var(--spacing-sm), var(--safe-area-bottom));background:#0a0908f5;display:none;position:fixed;bottom:0;left:0;right:0;box-shadow:0 -10px 24px #00000052}.mobile-fixed-cta .cta-inner{gap:var(--spacing-sm);height:var(--mobile-generate-btn-height);align-items:center;display:flex}.mobile-fixed-cta .generate-btn{height:var(--mobile-generate-btn-height);min-height:var(--mobile-generate-btn-height);max-height:var(--mobile-generate-btn-height);font-size:var(--font-size-body);padding:0 var(--spacing-lg);background:var(--accent-primary);color:#fff;box-shadow:none;letter-spacing:.01em;border:none;border-radius:0;flex-direction:column;flex:1;justify-content:center;align-items:center;gap:2px;font-weight:700;display:flex}.mobile-fixed-cta .generate-btn:not(:disabled){background:var(--accent-primary);color:#fff;box-shadow:none;border:none}.mobile-fixed-cta .generate-btn:not(:disabled):hover{background:var(--accent-primary);border-color:none;box-shadow:none;opacity:.9;transform:none}.mobile-fixed-cta .generate-btn:disabled{opacity:.5;cursor:not-allowed}.mobile-fixed-cta .generate-btn:active{transform:scale(.985)}.mobile-fixed-cta .generate-btn:not(:disabled):active{box-shadow:none;transform:scale(.985)}.mobile-fixed-cta .hint{font-size:var(--font-size-micro);opacity:.7}.mobile-fixed-cta.is-generating .generate-btn{position:relative;overflow:hidden}.mobile-fixed-cta.is-generating .generate-btn:after{content:"";background:var(--accent-primary);height:3px;animation:1.5s ease-in-out infinite alternate swipe-progress;position:absolute;bottom:0;left:0;right:0}@keyframes swipe-progress{0%{transform-origin:0;transform:scaleX(.3)}to{transform-origin:0;transform:scaleX(1)}}.mobile-fixed-cta .config-btn{width:var(--mobile-generate-btn-height);height:var(--mobile-generate-btn-height);background:var(--panel-surface);border:1px solid var(--border-default);color:var(--text-secondary);cursor:pointer;box-shadow:none;border-radius:0;flex-shrink:0;justify-content:center;align-items:center;transition:background .15s,border-color .15s,color .15s,opacity .15s,transform .1s;display:flex}.mobile-fixed-cta .config-btn:hover{background:var(--bg-hover);border-color:var(--border-hover);color:var(--text-primary)}.mobile-fixed-cta .config-btn:active{background:var(--panel-surface-active);transform:scale(.96);box-shadow:0 1px 2px #00000014}.mobile-fixed-cta .config-btn svg{stroke-width:2px;width:20px;height:20px}@media (width<=768px){.palette-swatches{grid-template-columns:repeat(2,1fr)}.bg-palette-grid{grid-template-columns:repeat(3,1fr)}.template-grid{gap:var(--spacing-sm);padding:var(--spacing-sm);grid-template-columns:repeat(2,1fr)}.template-card{padding:var(--spacing-sm);flex-direction:column;align-items:center;min-height:140px;display:flex;overflow:visible}.template-card .tpl-gif,.effect-card img{-o-object-fit:contain;object-fit:contain;width:100%;height:100px;margin-bottom:var(--spacing-xs);background:var(--bg-elevated);border-radius:0;animation-play-state:running;display:block}.template-card .name{font-size:var(--font-size-small);text-align:center;font-weight:500;line-height:1.3}.effect-pills{gap:var(--spacing-xs)}#batch-gallery-grid{gap:var(--spacing-sm);grid-template-columns:repeat(2,1fr)}.toast{min-width:auto;max-width:calc(100vw - 40px)}.selected-strip{margin-bottom:var(--spacing-sm)}}.surprise-me-btn{width:100%;padding:var(--spacing-sm) var(--spacing-md-sm);background:var(--white-3);border:1px solid var(--white-6);color:var(--text-tertiary);font-weight:500;font-size:var(--font-size-xs);cursor:pointer;transition:background var(--transition-fast), border-color var(--transition-fast), color var(--transition-fast), opacity var(--transition-fast);letter-spacing:.02em;border-radius:0;justify-content:center;align-items:center;gap:5px;margin-top:0;display:flex}.surprise-me-btn:hover{background:var(--white-6);border-color:var(--border-default);color:var(--text-primary)}.surprise-me-btn:active{transform:scale(.98)}.photo-skeleton{background:var(--white-4);aspect-ratio:1;border-radius:0;position:relative;overflow:hidden}.photo-skeleton:after{content:"";background:linear-gradient(90deg, transparent 0%, var(--white-4) 50%, transparent 100%);animation:1.5s ease-in-out infinite skeleton-shimmer;position:absolute;inset:0}@keyframes skeleton-shimmer{0%{background-position:-200% 0}to{background-position:200% 0}}.format-btn{font-size:var(--font-size-xs);border-radius:0}.setting-section:after,.setting-section:last-child:after{display:none}input:focus-visible,textarea:focus-visible,select:focus-visible,button:focus-visible{outline:var(--focus-ring);outline-offset:1px}.effect-pill:active,.cat-btn:active,.dim-btn:active,.template-card:active{transform:scale(.98)}.setting-section h4 .section-icon{width:14px;height:14px;font-size:var(--font-size-xs);justify-content:center;align-items:center;display:inline-flex}.section-group summary,.section-group .section-header{font-size:var(--font-size-xs);text-transform:uppercase;letter-spacing:.04em;padding:8px 10px;font-weight:600}.mobile-carousel-card{cursor:pointer;scroll-snap-align:start;border-radius:0;flex-direction:column;flex:none;align-items:center;gap:4px;width:76px;padding:2px;transition:transform .12s,opacity .12s;display:flex}.mobile-carousel-card:active{opacity:.75;transform:scale(.95)}.mobile-carousel-card:not(.active):hover{transform:scale(1.03)}.mc-preview-wrap{background:var(--bg-elevated);border:1px solid var(--border-subtle);border-radius:0;flex-shrink:0;justify-content:center;align-items:center;width:100%;height:72px;transition:border-color .15s,box-shadow .15s;display:flex;overflow:hidden}.mc-preview-gif{-o-object-fit:cover;object-fit:cover;align-self:stretch;width:100%;height:100%;display:block}.mc-fallback{width:100%;height:100%;font-size:var(--font-size-h3);color:var(--text-secondary);background:linear-gradient(135deg, var(--bg-elevated), var(--bg-hover));letter-spacing:-.03em;justify-content:center;align-items:center;font-weight:800;display:flex}.mc-label{color:var(--text-tertiary);letter-spacing:.04em;white-space:nowrap;text-overflow:ellipsis;text-align:center;max-width:72px;font-size:10px;font-weight:600;line-height:1.2;transition:color .15s;overflow:hidden}.mobile-carousel-card.active .mc-preview-wrap{border-color:var(--accent-primary);box-shadow:inset 0 0 0 1px var(--accent-primary), 0 0 12px rgba(var(--accent-primary-rgb), .35)}.mobile-carousel-card.active .mc-label{color:var(--accent-primary)}@media (width<=768px){.preview-toolbar{position:relative}.preview-toolbar .toolbar-collapsible{max-height:0;transition:max-height .3s;overflow:hidden}.preview-toolbar.toolbar-expanded .toolbar-collapsible{max-height:200px}.toolbar-toggle-btn{justify-content:center;align-items:center;gap:var(--spacing-xs);width:100%;padding:var(--spacing-xs) 0;border:none;border-top:1px solid var(--border-subtle);color:var(--text-disabled);font-size:var(--font-size-micro);cursor:pointer;background:0 0;margin-top:2px;transition:color .2s;display:flex}.toolbar-toggle-btn:hover{color:var(--text-secondary)}.toolbar-toggle-btn .chevron{font-size:var(--font-size-micro);transition:transform .3s}.preview-toolbar.toolbar-expanded .toolbar-toggle-btn .chevron{transform:rotate(180deg)}}@media (width>=769px){.toolbar-toggle-btn{display:none}.toolbar-collapsible{max-height:none;overflow:visible}.mobile-header,.mobile-fixed-cta,.mobile-dim-bar{display:none}}.mobile-dim-bar{display:none}@media (width<=768px){.mobile-dim-bar{gap:var(--spacing-xs);padding:var(--spacing-xs) var(--mobile-content-padding);border-top:1px solid var(--border-subtle);touch-action:pan-x;-webkit-overflow-scrolling:touch;scrollbar-width:none;left:0;right:0;bottom:calc(var(--mobile-cta-height) + var(--mobile-carousel-height));z-index:calc(var(--z-mobile-cta) - 2);-webkit-backdrop-filter:blur(16px);height:var(--mobile-dim-rail-height);box-sizing:border-box;background:#0a0908f5;justify-content:flex-start;display:flex;position:fixed;overflow:auto hidden}.mobile-dim-bar::-webkit-scrollbar{display:none}.mobile-bottom-strip,.timeline-strip,.layers-strip{padding:var(--spacing-sm) var(--spacing-md-sm);gap:var(--spacing-sm)}.mobile-dim-btns .dim-btn,.format-buttons .dim-btn{min-width:48px;min-height:44px;padding:var(--spacing-sm) var(--spacing-md-sm)}.mobile-cta-footer,.cta-footer-mobile{padding:var(--spacing-sm) var(--spacing-md);gap:var(--spacing-sm)}.mobile-settings-btn{min-width:44px;min-height:44px}.camadas-section,.layers-section{padding:var(--spacing-sm)}}@media (width>=768px) and (width<=980px){.sidebar{width:var(--sidebar-width-tablet,240px)}.settings{width:var(--settings-width-tablet,300px)}.template-grid{gap:var(--spacing-sm);grid-template-columns:repeat(2,1fr)}.preview-zone{padding:var(--spacing-md-sm)}}@media (width<=768px){.mobile-fixed-cta{height:var(--mobile-cta-height);padding:var(--mobile-content-padding);padding-bottom:calc(var(--mobile-content-padding) + var(--mobile-safe-bottom));-webkit-backdrop-filter:blur(16px);border-top:1px solid var(--border-subtle);z-index:var(--z-mobile-cta);background:#0f0e0deb;display:block;position:fixed;bottom:0;left:0;right:0}.mobile-fixed-cta .cta-inner{gap:var(--spacing-sm);height:var(--mobile-generate-btn-height);align-items:center;display:flex}.mobile-fixed-cta .generate-btn{height:var(--mobile-generate-btn-height);min-height:var(--mobile-generate-btn-height);max-height:var(--mobile-generate-btn-height);font-size:var(--font-size-body);padding:0 var(--spacing-lg);text-overflow:ellipsis;white-space:nowrap;border-radius:0;flex-direction:column;flex:1;justify-content:center;align-items:center;gap:2px;padding:10px 12px;font-weight:700;display:flex;overflow:hidden}.mobile-fixed-cta .generate-btn:active{transform:scale(.98)}.mobile-fixed-cta .hint{font-size:var(--font-size-micro);opacity:.7;text-overflow:ellipsis;white-space:nowrap;max-width:100%;overflow:hidden}.mobile-config-btn--cta{width:var(--mobile-generate-btn-height);height:var(--mobile-generate-btn-height);min-width:var(--mobile-generate-btn-height);background:var(--bg-secondary);border:1px solid var(--border-subtle);border-radius:0;flex-shrink:0;justify-content:center;align-items:center;display:flex}.mobile-config-btn--cta:active{background:var(--white-8)}.content-zone{flex-direction:column;gap:0;padding:0;display:flex}.timeline-wrapper:not(:has(.timeline-scene~.timeline-scene)){display:none}body[data-mode=lyrics] .timeline-wrapper{display:block}.preview-zone{padding:var(--spacing-sm) var(--mobile-content-padding) var(--spacing-xs);gap:var(--spacing-xs);flex-direction:column;display:flex}.main-area .preview-zone .preview-container{width:100%;max-width:min(calc(100vw - 2 * var(--mobile-content-padding)), 400px);border:1px solid var(--border-default);background:var(--bg-primary);border-radius:0;height:auto;max-height:max(min(45dvh,375px),min(100dvh - 432px,580px));margin:0 auto;overflow:hidden;box-shadow:inset 0 1px #ffffff0f,0 8px 28px #0000006b}#inline-text-field{min-height:var(--touch-target-comfortable);padding:12px 16px;font-size:16px}.mobile-dim-btn{padding:var(--spacing-sm) var(--spacing-md-sm);min-height:var(--touch-target-min);min-width:var(--touch-target-min);border:1px solid var(--border-subtle);background:var(--bg-secondary);color:var(--text-secondary);font-size:var(--font-size-small);cursor:pointer;white-space:nowrap;border-radius:0;justify-content:center;align-items:center;font-weight:600;transition:background .15s,border-color .15s,color .15s;display:flex}.mobile-dim-btn.active{background:var(--accent-bg);border-color:var(--accent-primary);color:var(--accent-primary)}.info-bar{font-size:var(--font-size-xs);align-items:center;gap:8px;width:100%;padding:8px 0;display:flex}.info-bar .info-badge{text-overflow:ellipsis;white-space:nowrap;flex-shrink:0;max-width:130px;overflow:hidden}.info-bar .undo-redo-bar{flex-shrink:0;gap:2px;margin-left:auto;display:flex}.undo-redo-btn{width:var(--mobile-tab-min-height);height:var(--mobile-tab-min-height);border-radius:0;justify-content:center;align-items:center;display:flex}.mobile-cat-filters,.rt-cat-bar{display:none}.bottom-sheet{border-radius:0;max-height:85dvh}.sidebar,.settings{z-index:var(--z-drawer);-webkit-overflow-scrolling:touch;background:var(--bg-primary);border-radius:0;width:100%;max-height:85vh;transition:transform .3s;position:fixed;bottom:0;left:0;right:0;overflow-y:auto;transform:translateY(100%)}.sidebar.open,.settings.open{transform:translateY(0)}.mobile-template-carousel{bottom:var(--mobile-cta-height);height:var(--mobile-carousel-height);z-index:calc(var(--z-mobile-cta) - 1);-webkit-backdrop-filter:blur(16px);border-top:1px solid var(--border-subtle);padding:0 var(--mobile-content-padding) var(--spacing-sm);gap:var(--spacing-sm);-webkit-overflow-scrolling:touch;scroll-snap-type:x mandatory;scrollbar-width:none;background:#0d0c0be6;align-items:center;width:100%;max-width:100%;display:flex;position:fixed;left:0;right:0;overflow:auto hidden}.mobile-template-carousel::-webkit-scrollbar{display:none}.text-edit-bar{height:auto;min-height:0;max-height:none;z-index:var(--z-above);margin:0 var(--mobile-content-padding) var(--spacing-sm);-webkit-backdrop-filter:blur(12px);border:1px solid var(--border-default);box-shadow:var(--shadow-card-elevated);background:#171615eb;border-radius:0;position:relative;inset:auto;overflow:visible}.mobile-cta-spacer{height:calc(var(--mobile-cta-height) + var(--mobile-carousel-height) + var(--mobile-dim-rail-height));display:block}.photos-header .btn-sm,.upload-bar-btn,.library-filter-btn{min-height:var(--mobile-tab-min-height);justify-content:center;align-items:center;padding:8px 14px;display:inline-flex}.preview-placeholder .placeholder-btn,.photo-drop-zone button{min-height:var(--mobile-tab-min-height);width:100%;max-width:none;padding:12px 18px}.desktop-auth-bar{display:none}body{overflow-x:hidden}:is(body[data-mode=photo]:has(.preview-placeholder:not(.is-hidden)) .layers-timeline,body[data-mode=collage]:has(.preview-placeholder:not(.is-hidden)) .layers-timeline),:is(body[data-mode=photo]:has(.preview-placeholder:not(.is-hidden)) .preview-toolbar,body[data-mode=photo]:has(.preview-placeholder:not(.is-hidden)) .info-bar,body[data-mode=collage]:has(.preview-placeholder:not(.is-hidden)) .preview-toolbar,body[data-mode=collage]:has(.preview-placeholder:not(.is-hidden)) .info-bar),:is(body[data-mode=photo]:has(.preview-placeholder:not(.is-hidden)) .mobile-fixed-cta .hint,body[data-mode=photo]:has(.preview-placeholder:not(.is-hidden)) .mobile-fixed-cta .progress-bar,body[data-mode=collage]:has(.preview-placeholder:not(.is-hidden)) .mobile-fixed-cta .hint,body[data-mode=collage]:has(.preview-placeholder:not(.is-hidden)) .mobile-fixed-cta .progress-bar){display:none}:is(body[data-mode=photo]:has(.preview-placeholder:not(.is-hidden)) .preview-zone,body[data-mode=collage]:has(.preview-placeholder:not(.is-hidden)) .preview-zone){flex:auto;min-height:auto}:is(body[data-mode=photo]:has(.preview-placeholder:not(.is-hidden)) .preview-placeholder,body[data-mode=collage]:has(.preview-placeholder:not(.is-hidden)) .preview-placeholder){flex:auto;min-height:50vh}:is(body[data-mode=photo]:has(.preview-placeholder:not(.is-hidden)) .mobile-fixed-cta .generate-btn,body[data-mode=collage]:has(.preview-placeholder:not(.is-hidden)) .mobile-fixed-cta .generate-btn){opacity:.5;pointer-events:none}:is(body[data-mode=photo]:has(.preview-placeholder:not(.is-hidden)) .config-btn,body[data-mode=photo]:has(.preview-placeholder:not(.is-hidden)) .mobile-config-btn,body[data-mode=collage]:has(.preview-placeholder:not(.is-hidden)) .config-btn,body[data-mode=collage]:has(.preview-placeholder:not(.is-hidden)) .mobile-config-btn){display:none}body[data-mode=collage]:has(.preview-placeholder:not(.is-hidden)) .mobile-dim-bar{display:none}body[data-mode=collage] .mobile-template-carousel,body[data-mode=collage] .mobile-cat-filters{display:none}.placeholder-preview-gif img{max-height:110px}.placeholder-upload-area{padding:var(--spacing-sm)}}.placeholder-note{margin-top:var(--spacing-sm);color:var(--text-tertiary);font-size:var(--font-size-xs);line-height:var(--line-height-normal);text-align:center}@media (width<=768px){#help-btn-mobile,#auth-btn-mobile{display:none}.mobile-fixed-cta{border-top:1px solid var(--border-default);box-shadow:var(--shadow-toolbar);background:#0a0908f5}.mobile-fixed-cta .cta-inner{gap:var(--spacing-sm)}.mobile-fixed-cta .generate-btn{text-align:left;box-shadow:var(--shadow-cta);justify-content:center;align-items:flex-start;gap:4px;padding:10px 14px}.mobile-fixed-cta .btn-text{width:100%;font-size:var(--font-size-body);line-height:var(--line-height-tight)}.mobile-fixed-cta .hint{width:100%;font-size:var(--font-size-xs);color:#ffffffb8;line-height:var(--line-height-tight)}.mobile-config-btn--cta{background:var(--bg-elevated);border-color:var(--border-default);box-shadow:var(--shadow-sm)}.timeline-wrapper{background:0 0;border:none;border-radius:0;padding:0}.timeline-bar{margin-bottom:8px;padding:0 4px}.timeline-label{font-size:var(--font-size-xs);letter-spacing:.08em}.timeline-total{font-size:var(--font-size-xs);color:var(--text-tertiary)}.timeline{gap:8px;padding:0 0 4px}.timeline-scene{min-width:90px;max-width:140px;height:40px;box-shadow:none;border-radius:0;gap:8px;padding:0 8px}.timeline-scene.active{box-shadow:0 0 0 1px var(--accent-primary);transform:none}.scene-top{gap:3px}.scene-loop-badge{padding:1px 4px;font-size:9px}.mobile-template-carousel{padding:0 var(--mobile-content-padding) 8px;gap:var(--spacing-sm);scroll-padding-inline:var(--mobile-content-padding)}.unified-bar{align-items:center;gap:var(--spacing-xs);padding:var(--spacing-xs);flex-wrap:nowrap;overflow:visible}.unified-bar-controls{display:none}.unified-bar-badges{scrollbar-width:none;white-space:nowrap;flex-shrink:0;gap:4px;display:flex;overflow-x:auto}.unified-bar-badges::-webkit-scrollbar{display:none}.unified-bar-input{flex:auto;min-width:0;max-height:56px;overflow:hidden}.unified-text-input{text-align:left;resize:none;min-height:42px;max-height:56px;padding:10px 12px;overflow-y:auto}.unified-text-input::placeholder{text-align:left}}@media (width<=430px){.preview-container{max-height:min(220px,36dvh)}}.history-strip.is-hidden{display:none!important}.history-strip:has(#history-items:empty){display:none!important}@media (width<=768px){.bottom-sheet-content .setting-label{font-size:var(--font-size-small);padding:var(--spacing-xs) 0}.bottom-sheet-content .quality-pill,.bottom-sheet-content .dim-btn,.bottom-sheet-content .effect-pill{min-height:var(--touch-target-comfortable,48px)}.bottom-sheet-content .font-size-control{padding:var(--spacing-sm) 0}.bottom-sheet-content input[type=range]{height:32px}}@media (prefers-reduced-motion:reduce){*,:before,:after{scroll-behavior:auto!important;transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}}img[loading=lazy],video[loading=lazy]{opacity:0;transition:opacity .3s}img[loading=lazy].loaded,video[loading=lazy].loaded{opacity:1}.skeleton-loading{background:linear-gradient(90deg, var(--white-4) 0%, var(--white-8) 50%, var(--white-4) 100%);background-size:200% 100%;border-radius:0;animation:1.5s ease-in-out infinite skeleton-shimmer}.template-card img,.effect-card img,.photo-thumb img{aspect-ratio:1;-o-object-fit:cover;object-fit:cover}.mobile-mode-tab,.generate-btn,.preview-container,.mobile-fixed-cta{will-change:transform;backface-visibility:hidden;transform:translateZ(0)}.sidebar,.settings,.selected-photos-strip,.mobile-bottom-strip{-webkit-overflow-scrolling:touch;overscroll-behavior:contain;scroll-behavior:smooth}@media (prefers-reduced-motion:reduce){.sidebar,.settings,.selected-photos-strip,.mobile-bottom-strip{scroll-behavior:auto}}body{font-display:swap}@media (hover:none) and (pointer:coarse){.template-card:hover,.effect-pill:hover,button:hover{transform:none}.template-card:active,.effect-pill:active,button:active{transition:transform .1s;transform:scale(.97)}}.mobile-fixed-cta,.mobile-header{contain:layout style paint}#live-preview-canvas{image-rendering:-webkit-optimize-contrast;image-rendering:crisp-edges}.lazy-section{content-visibility:auto;contain-intrinsic-size:0 500px}video,img[src$=\.gif]{will-change:auto}video:not([autoplay]){preload:none}.timeline-strip,.selected-photos-strip{contain:layout paint}@font-face{font-family:Inter Tight;font-display:swap}.preview-container,.template-grid,.effect-grid{min-height:200px}@media (width>=769px){button:not(.generate-btn):not(.undo-redo-btn):not(.mobile-config-btn):not(.layer-add-btn):not(.transition-btn):not(.tb-btn):not(.bottom-sheet-close):not(.toast-close):not(.color-swatch-btn):not(.dim-btn):not(.effect-pill):not(.cat-btn):not(.placeholder-btn):not(.scene-loop-badge):not(.scene-remove):not(.timeline-play-btn):not(.timeline-stop-btn){border-radius:0;min-height:40px}.effect-pill,.cat-btn,.dim-btn,.placeholder-btn{border-radius:0;min-height:36px}.settings label{font-size:var(--font-size-small);text-transform:uppercase;letter-spacing:.08em;color:var(--text-tertiary);margin-bottom:var(--spacing-sm);font-weight:600;display:block}}input[type=text],input[type=search],select{min-height:var(--button-height-md);background:var(--bg-secondary);border:1px solid var(--border-default);color:var(--text-primary);padding:0 var(--spacing-md-sm);border-radius:0}input[type=text]:focus,input[type=search]:focus,select:focus{border-color:var(--accent-primary);box-shadow:var(--shadow-ring-accent);outline:none}select{appearance:none;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='10' height='6'%3E%3Cpath d='M0 0l5 6 5-6z' fill='%23999'/%3E%3C/svg%3E");background-position:right 8px center;background-repeat:no-repeat;align-items:center;min-height:36px;padding-top:0;padding-bottom:0;padding-right:24px;display:inline-flex}button{font-family:inherit}body{font-family:var(--font-sans);color:var(--text-primary);background:var(--bg-primary);font-size:var(--font-size-body)}h1,h2,h3,h4,h5,h6{color:var(--text-primary);margin:0 0 8px;font-weight:600}label{font-size:var(--font-size-xs);text-transform:uppercase;letter-spacing:.08em;color:var(--text-tertiary);margin-bottom:var(--spacing-compact);font-weight:600;display:block}.sidebar .template-card,.sidebar .effect-card,.template-grid .template-card,.effect-grid .effect-card,.dim-btn,.cat-btn,.stat-card,.preview-container,.sidebar,.settings{border-radius:0}@media (width<=768px){.settings{border-radius:0}}.dim-btn{min-width:64px;height:auto;min-height:52px;padding:var(--spacing-sm) var(--spacing-xs);background:var(--bg-elevated);border:1.5px solid var(--border-default);color:var(--text-secondary);font-size:var(--font-size-xs);cursor:pointer;text-align:center;-webkit-user-select:none;user-select:none;border-radius:0;flex-direction:column;justify-content:center;align-items:center;gap:6px;transition:background .2s,border-color .2s,color .2s,opacity .2s,transform .2s;display:flex;position:relative;overflow:visible}.dim-btn:hover{background:var(--bg-hover);border-color:var(--border-strong);color:var(--text-primary)}.dim-btn.active{background:var(--panel-accent-surface);border-color:var(--panel-accent-border);color:var(--text-primary);font-weight:600;box-shadow:inset 0 1px #ffffff0d}.dim-btn[data-dim=square] .dim-icon{border:1.5px solid;border-radius:0;width:18px;height:18px}.dim-btn[data-dim=portrait] .dim-icon{border:1.5px solid;border-radius:0;width:16px;height:20px}.dim-btn[data-dim=story] .dim-icon{border:1.5px solid;border-radius:0;width:12px;height:20px}.dim-btn[data-dim=wide] .dim-icon{border:1.5px solid;border-radius:0;width:22px;height:12px}.dim-btn[data-dim=banner] .dim-icon{border:1.5px solid;border-radius:0;width:28px;height:8px}.dim-btn[data-dim=ytbanner] .dim-icon{border:1.5px solid;border-radius:0;width:34px;height:6px}.dim-btn[data-dim=thin] .dim-icon{border:1.5px solid;border-radius:0;width:40px;height:4px}.dim-btn[data-dim=tall] .dim-icon{border:1.5px solid;border-radius:0;width:14px;height:18px}.settings .effect-pill#mode-simple-btn,.settings .effect-pill#mode-advanced-btn{height:32px;min-height:32px;font-size:var(--font-size-xs);padding:0 var(--spacing-md-sm);background:var(--panel-surface);border:1px solid var(--border-subtle);border-radius:0}.dim-btn span{white-space:nowrap;margin-top:2px;font-size:11px;line-height:1;display:block}.btn-secondary,.btn-primary,.button{height:36px;min-height:36px;padding:0 var(--spacing-md);font-size:var(--font-size-small);justify-content:center;align-items:center;gap:var(--spacing-sm);white-space:nowrap;border-radius:0;display:inline-flex}.btn-group{gap:var(--spacing-sm);display:grid!important}.btn-group.is-hidden{display:none!important}.btn-group:has(>:first-child:last-child){grid-template-columns:1fr}.btn-group:has(>:nth-child(2):last-child){grid-template-columns:repeat(2,1fr)}.btn-group:has(>:nth-child(3):last-child){grid-template-columns:repeat(3,1fr)}.btn-group:has(>:nth-child(4):last-child){grid-template-columns:repeat(2,1fr)}.btn-group:has(>:nth-child(5):last-child){grid-template-columns:repeat(3,1fr)}.btn-group:has(>:nth-child(5):last-child)>:last-child{grid-column:span 2}.btn-group:has(>:nth-child(6):last-child){grid-template-columns:repeat(3,1fr)}.btn-group:has(>:nth-child(7):last-child){grid-template-columns:repeat(3,1fr)}.btn-group:has(>:nth-child(7):last-child)>:last-child{grid-column:1/-1}.btn-group{grid-template-columns:repeat(3,1fr)}.btn-group>button:not(.position-grid-3x3 button),.btn-group>.effect-pill,.btn-group>.entrance-btn,.btn-group>.effect-btn,.btn-group>.cta-format-pill,.btn-group>.transition-btn,.btn-group>.font-family-btn{height:var(--input-height);max-height:var(--input-height);font-size:var(--font-size-small);white-space:nowrap;text-overflow:ellipsis;border:1px solid var(--border-default);background:var(--bg-secondary);color:var(--text-secondary);cursor:pointer;flex:unset;min-height:unset;border-radius:0;justify-content:center;align-items:center;padding:0 8px;font-family:inherit;transition:background .15s,border-color .15s,color .15s,opacity .15s;display:flex;overflow:hidden}.btn-group>button:not(.position-grid-3x3 button):hover,.btn-group>.effect-pill:hover,.btn-group>.entrance-btn:hover,.btn-group>.effect-btn:hover,.btn-group>.cta-format-pill:hover,.btn-group>.transition-btn:hover,.btn-group>.font-family-btn:hover{background:var(--white-6);border-color:var(--border-hover);color:var(--text-primary);transform:translateY(-1px)}.btn-group>button:not(.position-grid-3x3 button).active,.btn-group>button:not(.position-grid-3x3 button)[aria-selected=true],.btn-group>button:not(.position-grid-3x3 button).selected,.btn-group>.effect-pill.active,.btn-group>.entrance-btn.active,.btn-group>.effect-btn.active,.btn-group>.cta-format-pill.active,.btn-group>.transition-btn.active,.btn-group>.font-family-btn.active{background:linear-gradient(180deg, var(--accent-primary) 0%, var(--accent-primary-hover) 100%);border-color:rgba(var(--accent-primary-rgb), .5);color:var(--text-on-accent);box-shadow:var(--shadow-ring-accent-sm);font-weight:600}.composite-mode-grid{gap:var(--spacing-compact);grid-template-rows:repeat(3,32px);grid-template-columns:repeat(3,32px);width:100%;display:grid}.composite-mode-grid>.effect-pill{justify-content:center;align-items:center;gap:var(--spacing-xs);flex-direction:column;height:56px;max-height:56px;padding:0;display:flex}.composite-mode-grid>.effect-pill svg{width:20px;height:20px}.composite-mode-grid>.effect-pill span{font-size:var(--font-size-xs);font-weight:500}.btn-group .btn-off-override{border:1px dashed var(--border-subtle)!important;height:28px!important;max-height:28px!important;color:var(--text-tertiary)!important;grid-column:1/-1!important}.effect-pill[data-font],.font-family-btn{font-family:var(--font-sans)!important;font-weight:400!important}.effect-pill[data-font].active,.font-family-btn.active{font-weight:700!important}.result-quality{gap:var(--spacing-xs);margin-bottom:var(--spacing-md-sm);width:100%;display:flex}.result-quality button{height:28px;font-size:var(--font-size-xs);background:var(--bg-secondary);border:1px solid var(--border-subtle);color:var(--text-secondary);border-radius:0;flex:1}.result-quality button.active{background:var(--color-accent);color:var(--text-on-accent);border-color:var(--color-accent)}.btn-result-primary{background:var(--color-accent);width:100%;height:40px;color:var(--text-on-accent);font-weight:700;font-size:var(--font-size-body);margin-bottom:var(--spacing-sm);justify-content:center;align-items:center;gap:var(--spacing-sm);cursor:pointer;border:none;border-radius:0;display:flex}.btn-result-secondary{width:100%;height:var(--input-height);min-height:var(--input-height);border:1px solid var(--border-default);color:var(--text-primary);font-weight:500;font-size:var(--font-size-body-sm);margin-bottom:var(--spacing-sm);justify-content:center;align-items:center;gap:var(--spacing-sm);cursor:pointer;background:0 0;border-radius:0;display:flex}.btn-result-tertiary{width:100%;height:32px;min-height:32px;color:var(--text-tertiary);font-size:var(--font-size-small);margin-bottom:var(--spacing-xs);cursor:pointer;background:0 0;border:none}.btn-result-link{width:100%;color:var(--text-tertiary);font-size:var(--font-size-small);padding:var(--spacing-sm);cursor:pointer;background:0 0;border:none;justify-content:center;align-items:center;text-decoration:none;display:flex}.cta-format-pill{font-size:var(--font-size-xs);padding:0 var(--spacing-sm);background:var(--white-4);border:1px solid var(--border-subtle);border-radius:0;justify-content:center;align-items:center;height:32px;min-height:32px;font-weight:600;transition:background .15s,border-color .15s,color .15s,opacity .15s;display:flex}.cta-format-pill:hover,.cta-quality-pill:hover{background:var(--white-8);border-color:var(--border-default)}.cta-format-pill.active,.cta-quality-pill.active{color:var(--accent-primary);box-shadow:none;background:#0e749026;border-color:#0e749059}.dim-btn.active,.dim-btn[aria-pressed=true]{background:var(--panel-accent-surface);color:var(--text-primary);border-color:var(--panel-accent-border)}.tablet-generate-cta{display:none}@media (width>=769px) and (width<=980px){.tablet-generate-cta{background:var(--accent-primary);height:34px;color:var(--text-on-accent);font-size:var(--font-size-small);cursor:pointer;white-space:nowrap;border:none;border-radius:0;justify-content:space-between;align-items:center;margin-right:8px;padding:0 14px;font-weight:700;transition:opacity .15s,transform .1s;display:flex}.tablet-generate-cta:disabled{opacity:.35;cursor:not-allowed}.tablet-generate-cta:not(:disabled):hover{opacity:.9}.tablet-generate-cta:not(:disabled):active{transform:scale(.97)}}.settings .section-group{gap:var(--spacing-md-sm);flex-direction:column;display:flex}.section-group{gap:var(--spacing-sm);background:0 0;border:none;margin:0;padding:0}.preview-toolbar{gap:var(--spacing-sm);padding:0 var(--spacing-md-sm);flex-wrap:nowrap;overflow-x:auto}.preview-toolbar.visible .preview-toolbar-row1,.preview-toolbar.visible .preview-toolbar-row2{border:none;margin:0;padding:0;display:contents}.preview-toolbar select{flex-shrink:0;width:110px}.preview-toolbar input[type=range]{flex-shrink:0;width:80px}.preview-toolbar input[type=color]{cursor:pointer;background:0 0;border:none;border-radius:0;width:36px;height:36px;padding:0;overflow:hidden}.preview-toolbar input[type=color]::-webkit-color-swatch-wrapper{padding:0}.preview-toolbar input[type=color]::-webkit-color-swatch{border:1px solid var(--border-default);border-radius:0}.sidebar{max-width:340px;overflow:hidden auto}.settings{max-width:340px;overflow:hidden}.effect-label,.template-title,.setting-label{text-overflow:ellipsis;white-space:nowrap;max-width:100%;overflow:hidden}.effect-card .effect-label{max-width:100%;display:block}input[type=range]{min-width:0;max-width:100%}.slider-container,.font-size-control{max-width:100%;overflow:visible}.preview-container{contain:layout paint;overflow:hidden}.preview-text,#preview-text{word-wrap:break-word;overflow-wrap:break-word;-webkit-hyphens:auto;hyphens:auto}select,.folder-select{text-overflow:ellipsis;max-width:100%;overflow:hidden}.cta-summary{white-space:nowrap;text-overflow:ellipsis;overflow:hidden}.effect-pills{flex-wrap:wrap}.cat-filters{flex-wrap:wrap;overflow-x:hidden}.color-picker-row{max-width:100%;overflow:hidden}.timeline-scene .scene-effect-badge,.timeline-scene .scene-text-preview{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.position-grid-3x3{gap:var(--spacing-xs);grid-template-rows:repeat(3,32px);grid-template-columns:repeat(3,32px);width:fit-content;margin:0 auto;display:grid}.position-grid-3x3>button{border:1px solid var(--border-subtle);background:var(--bg-tertiary);opacity:.6;width:32px;height:32px;color:var(--text-secondary);cursor:pointer;border-radius:0;justify-content:center;align-items:center;padding:0;transition:background .2s,border-color .2s,color .2s,opacity .2s;display:flex}.position-grid-3x3>button svg{width:16px;height:16px}.position-grid-3x3>button:hover{border-color:var(--border-default);color:var(--text-primary);opacity:.85}.position-grid-3x3>button.active,.position-grid-3x3>button[aria-selected=true]{background:var(--accent-primary);border-color:var(--accent-primary);opacity:1;box-shadow:0 0 0 2px rgba(var(--accent-primary-rgb,99,102,241), .3);color:var(--text-on-accent)}.settings{min-width:0;overflow-x:hidden}.settings *{box-sizing:border-box;max-width:100%}.preview-container[data-dim=square]{aspect-ratio:1!important}.preview-container[data-dim=portrait]{aspect-ratio:4/5!important}.preview-container[data-dim=story]{aspect-ratio:9/16!important}.preview-container[data-dim=wide]{aspect-ratio:16/9!important}.preview-container[data-dim=banner]{aspect-ratio:2!important}.preview-container[data-dim=ytbanner]{aspect-ratio:2560/720!important}.layer-item,.layer-item img{border-radius:0;-o-object-fit:cover!important;object-fit:cover!important;flex-shrink:0!important;width:48px!important;height:48px!important;overflow:hidden!important}.preview-container{margin:0 auto;max-width:100%!important}.timeline-wrapper{flex-shrink:0}.toolbar-group{white-space:nowrap;flex-wrap:wrap}.toolbar-group select{max-width:100px}.slide-item{align-items:center;gap:var(--spacing-compact);height:36px;margin-bottom:var(--spacing-compact);box-sizing:border-box;grid-template-columns:24px 1fr 36px 36px;display:grid}.slide-item .number-badge{justify-content:center;align-items:center;width:24px;height:36px;display:flex}.slide-item input[type=text]{box-sizing:border-box;min-width:0;height:36px;margin:0;line-height:36px}.slide-item .btn-mini{box-sizing:border-box;flex-shrink:0;justify-content:center;align-items:center;width:36px;height:36px;min-height:36px;margin:0;display:flex}.text-edit-bar .preview-toolbar{background:var(--bg-secondary);border:none;border-top:1px solid var(--border-subtle);box-shadow:none;width:100%;z-index:var(--z-timeline);border-radius:0;margin:0;position:relative;inset:auto;transform:none}.text-slide-item{gap:var(--spacing-sm);width:100%;margin-bottom:var(--spacing-sm);padding:var(--spacing-sm);align-items:center;display:flex}.text-slide-item input[type=text]{min-width:0;height:32px;padding:0 var(--spacing-sm);flex:1}.text-slide-item .style-btn,.text-slide-item .duration-btn{flex-shrink:0;justify-content:center;align-items:center;width:32px;height:32px;padding:0;display:flex}.preview-zone{padding:var(--spacing-md) var(--spacing-md) var(--spacing-sm);justify-content:flex-start;width:100%;position:relative}.preview-zone>.preview-text-input{z-index:var(--z-timeline);order:0;position:relative}.preview-zone>.preview-container{order:1}.preview-zone>.preview-toolbar{order:3}.preview-zone>.preview-placeholder,.preview-zone>.preview-spinner,.preview-zone>.preview-error,.preview-zone>.preview-dim-label{order:1}.preview-zone{overflow:visible}body[data-mode=text] .preview-zone{justify-content:center}body[data-mode=photo] .preview-toolbar,body[data-mode=collage] .preview-toolbar{display:none}@media (width<=768px){.preview-zone{min-height:0;overflow:visible}body[data-mode=photo] .preview-placeholder,body[data-mode=collage] .preview-placeholder{border:1px solid var(--white-8);background:#ffffff05;border-radius:0;width:100%;min-height:280px;position:relative;inset:auto}body[data-mode=photo] .placeholder-dropzone,body[data-mode=collage] .placeholder-dropzone{min-height:240px;padding:var(--spacing-lg) var(--spacing-md)}.placeholder-actions{gap:var(--spacing-sm)!important;flex-direction:column!important;width:100%!important;max-width:280px!important}.placeholder-btn{justify-content:center!important;width:100%!important;min-height:48px!important}body[data-mode=text] .preview-toolbar{display:none}}.settings-sections{flex-direction:column;flex:1;display:flex}@media (width>=769px){body{overflow:hidden}.desktop-auth-bar{z-index:var(--z-sticky)}.app{height:calc(100dvh - var(--desktop-auth-bar-height));min-height:calc(100dvh - var(--desktop-auth-bar-height));align-items:stretch}.sidebar,.main-area,.settings{min-height:0;max-height:100%}.main-area{background:radial-gradient(circle at top, rgba(var(--accent-primary-rgb), .07), transparent 38%), linear-gradient(180deg, var(--bg-primary) 0%, #120f0e 100%);grid-template-rows:minmax(0,1fr) auto;min-width:0;display:grid}.preview-zone{min-height:0;padding:var(--spacing-md) var(--spacing-xl) var(--spacing-sm);justify-content:flex-start;align-items:center;gap:var(--spacing-md);overflow:hidden}.preview-container,.preview-placeholder{margin-inline:auto}.content-zone{max-height:min(42vh,380px);padding:var(--spacing-md) var(--spacing-lg) var(--spacing-lg);gap:var(--spacing-md);border-top:1px solid var(--border-subtle);background:linear-gradient(#ffffff06,#ffffff03)}.timeline-wrapper{padding:10px var(--space-3) 8px;border:1px solid var(--border-subtle);background:#ffffff05;border-radius:0;overflow:visible}.settings{background:linear-gradient(#171615fa 0%,#0a0908fa 100%)}.text-edit-bar{border:1px solid var(--border-subtle);background:#ffffff08;border-radius:0;margin-top:0;box-shadow:0 0 0 1px #ffffff08,0 8px 24px #0000002e}}@media (width<=768px){.app{min-height:100vh}.main-area{flex:none;padding-bottom:0}.preview-zone{max-height:none;padding:var(--spacing-sm) var(--mobile-content-padding) var(--spacing-xs);gap:var(--spacing-xs);flex:none;overflow:visible}.preview-toolbar{width:100%;max-width:100%;position:static;top:auto;left:auto;transform:none}.preview-placeholder,.placeholder-dropzone{flex:auto}.content-zone{padding:0 var(--mobile-content-padding) calc(var(--mobile-cta-height) + var(--mobile-carousel-height) + var(--mobile-dim-rail-height) + var(--spacing-xl));gap:var(--spacing-md)}.timeline-wrapper{padding:10px var(--space-2) 8px;margin-top:0;overflow:visible}.text-edit-bar{margin-top:0;margin-bottom:0}.mobile-dim-bar{gap:var(--spacing-compact)}.ratio-pill{min-width:44px;min-height:44px;font-size:var(--font-size-small)}.mobile-fixed-cta .cta-inner{align-items:stretch}.mobile-fixed-cta .generate-btn{min-height:var(--mobile-generate-btn-height);padding:0 var(--space-4);text-align:center;align-items:center}.mobile-fixed-cta .hint,.mobile-fixed-cta .progress-bar{display:none}.mobile-template-carousel{scroll-padding-inline:var(--mobile-content-padding)}.mobile-cta-spacer{flex-shrink:0;display:block}.mobile-mode-tab{letter-spacing:.02em;border-radius:0;height:28px;min-height:28px;padding:0 10px;font-size:11px;font-weight:600;transition:background .2s,border-color .2s,color .2s,opacity .2s}.mobile-mode-tab.active{background:var(--accent-primary);border-color:var(--accent-primary);color:#fff;font-weight:700}.mode-tab,.sidebar-tab,.tier-tab,[role=tab]:not(body):not(.mobile-mode-tab){justify-content:center;align-items:center;min-height:44px;display:flex}.collage-layout-btn,.layout-option,[data-layout]{min-height:44px}.effect-tag{align-items:center;min-height:44px;display:inline-flex}.undo-redo-btn{width:44px;min-width:44px;height:44px;min-height:44px}.slide-card .slide-delete,.slide-card .slide-time,.slide-card .slide-size{min-width:44px;min-height:44px}}.settings{overflow-x:hidden}@media (width<=1200px){.sidebar-right{flex-shrink:0;min-width:200px}}.main-area{overflow:hidden}.preview-container{max-width:100%;max-height:100%}@media (width<=900px){.app-layout{flex-direction:column}.sidebar-right{width:100%;max-height:40vh;overflow-y:auto}.main-area{flex:1;min-height:50vh}}@media (width>=769px){.app{grid-template-columns:328px minmax(0,1fr) 304px}.sidebar{padding:var(--space-3)}.timeline{gap:6px;padding:6px 4px}.timeline-scene{flex-direction:row;align-items:center;gap:7px;min-width:100px;max-width:160px;height:44px;padding:0 10px;display:flex}.scene-top{width:auto;min-width:unset;flex-direction:row;align-items:center;gap:4px}.scene-loop-badge{min-width:unset;justify-content:flex-start;height:auto;margin-left:auto;padding:1px 5px}.scene-preview-container{display:none}.scene-info-bar{gap:0;min-width:0}.timeline-add{width:36px;min-height:unset;height:36px}.unified-bar{align-items:center;gap:var(--space-2);padding:var(--space-2);grid-template-columns:auto minmax(240px,1fr) auto;display:grid}.unified-bar-badges{align-self:stretch;align-items:center}.unified-text-input{text-align:left;min-height:40px;padding:9px 14px}.unified-text-input::placeholder{text-align:left}.unified-bar-controls{gap:var(--space-2)}.unified-bar-controls select,.unified-bar-controls input[type=color],.undo-redo-btn{border-radius:0;height:40px;min-height:40px}.unified-bar-controls input[type=color],.undo-redo-btn{width:40px}.effect-grid{gap:var(--space-2)}.effect-card span,.template-card .name{padding:14px 3px 5px;font-size:9px}}@media (width<=768px){.preview-zone{padding:var(--spacing-sm) var(--mobile-content-padding) var(--spacing-xs)}.preview-container,.preview-placeholder{width:calc(100vw - (var(--mobile-content-padding) * 4));max-width:100%;margin-inline:auto}.timeline-wrapper{padding:10px var(--mobile-content-padding) 8px;overflow:visible}.timeline-bar{margin-bottom:var(--space-2);padding:0}.timeline{gap:6px;padding:6px 4px}.timeline-scene{flex-direction:row;align-items:center;gap:7px;min-width:100px;max-width:160px;height:44px;padding:0 10px;display:flex}.scene-top{width:auto;min-width:unset;flex-direction:row;align-items:center;gap:4px}.scene-loop-badge{min-width:unset;justify-content:flex-start;height:auto;margin-left:auto;padding:1px 5px}.scene-preview-container{display:none}.scene-info-bar{gap:0;min-width:0}.scene-effect-name{font-size:11px}.scene-meta{font-size:9px;display:block}.timeline-add{width:36px;min-height:unset;height:36px}.mobile-fixed-cta .cta-inner{gap:var(--space-2);grid-template-columns:44px 1fr;display:grid}.mobile-config-btn--cta{align-self:stretch;width:44px;height:44px;margin:0}.mobile-fixed-cta .generate-btn{justify-content:center;justify-self:stretch;width:100%;min-height:44px}.unified-bar{flex-wrap:wrap;align-items:stretch}.unified-bar-input{flex-basis:100%;width:100%}.unified-bar-controls{gap:var(--space-2);width:100%;padding:0 var(--space-1);flex-basis:100%;grid-template-columns:minmax(0,1fr) 36px minmax(0,1fr) 36px 36px;display:grid}.unified-bar-controls select{height:36px}.unified-bar-controls input[type=color],.undo-redo-btn{width:36px;min-width:36px;height:36px;min-height:36px}body[data-mode=lyrics] .timeline-wrapper{display:block}body[data-mode=lyrics] #mobile-template-carousel{height:auto;min-height:unset;overflow-x:hidden}}.photo-lib-grid>*{opacity:1!important}.text-white{color:var(--text-primary)!important}.bg-gray-950{background:var(--bg-primary)!important}:root{--spacing-xs:var(--space-1,4px);--spacing-sm:var(--space-2,8px);--spacing-md-sm:var(--space-3,12px);--spacing-md:var(--space-4,16px);--text-disabled:var(--text-tertiary,#666)}.text-mode-tabs{gap:var(--spacing-xs);background:var(--bg-elevated);padding:var(--spacing-xs);border:1px solid var(--border-subtle);border-radius:0;display:flex}.text-mode-tab{min-height:32px;color:var(--text-secondary);background:0 0;border:none;border-radius:0;flex:1}.text-mode-tab.active{background:var(--bg-hover);color:var(--text-primary);box-shadow:var(--shadow-sm)}.text-mode-tabs .text-mode-tab{justify-content:center;align-items:center;gap:var(--spacing-compact);font-size:var(--font-size-small);font-weight:500;display:flex}.text-mode-tabs .text-mode-tab.active{font-weight:600}.info-bar button:not(.undo-redo-btn){height:28px;min-height:28px}.contour-toggle-row{padding:var(--spacing-lg) 0;border-top:1px solid var(--border-subtle);justify-content:space-between;align-items:center;display:flex}.contour-label{font-size:var(--font-size-xs);text-transform:uppercase;letter-spacing:.06em;color:var(--text-tertiary);font-weight:500}.contour-toggle-switch{width:36px;height:20px;display:inline-block;position:relative}.contour-toggle-switch input{display:none}.contour-slider{cursor:pointer;background-color:var(--bg-tertiary);border:1px solid var(--border-subtle);border-radius:0;transition:all .15s;position:absolute;inset:0}.contour-slider:before{content:"";background-color:var(--text-tertiary);border-radius:0;width:16px;height:16px;transition:all .15s;position:absolute;bottom:1px;left:1px}input:checked+.contour-slider{background-color:var(--color-accent);border-color:var(--color-accent)}input:checked+.contour-slider:before{background-color:var(--text-on-accent);transform:translate(16px)}.preview-text{color:#ffffffe0;text-shadow:none!important;-webkit-font-smoothing:antialiased!important}.text-layer-mode.btn-group>button:not(.position-grid-3x3 button){gap:var(--spacing-xs);height:56px;min-height:56px;font-size:var(--font-size-xs);flex-direction:column;width:100%;padding:0;font-weight:500}.text-layer-mode.btn-group>button svg{width:20px;height:20px;margin:0}.generate-status-text,#generate-requirements,.preview-requirement-overlay{display:none!important}*,:before,:after{-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}.section-group-title{font-size:var(--font-size-xs);color:var(--text-tertiary);text-transform:uppercase;letter-spacing:.08em;margin-bottom:var(--spacing-compact);padding:var(--spacing-xs) 0;font-weight:600}.section-group-title:hover{color:var(--text-secondary)}.generate-btn:not(:disabled):hover{filter:brightness(1.12);transform:translateY(-1px)}.generate-btn:not(:disabled):active{transform:translateY(0)}.template-card,.effect-card{will-change:transform;background:linear-gradient(180deg, var(--bg-elevated) 0%, #ffffff05 100%);border:1px solid var(--border-default);box-shadow:var(--shadow-card-elevated);border-radius:0;transition:background .2s cubic-bezier(.4,0,.2,1),border-color .2s cubic-bezier(.4,0,.2,1),color .2s cubic-bezier(.4,0,.2,1),opacity .2s cubic-bezier(.4,0,.2,1)}.template-card:hover,.effect-card:hover{border-color:rgba(var(--accent-primary-rgb), .45);box-shadow:0 12px 28px #0000006b, 0 0 0 1px rgba(var(--accent-primary-rgb), .16);transform:translateY(-2px)}.template-card:active,.effect-card:active{transition-duration:.1s;transform:translateY(0)scale(.98)}.template-card.active,.effect-card.active{border-color:var(--accent-primary);box-shadow:0 0 0 1.5px var(--accent-primary), 0 4px 16px #0e749026}input[type=text]:focus,input[type=search]:focus,input[type=number]:focus,input[type=url]:focus,input[type=color]:focus,select:focus,textarea:focus{border-color:var(--accent-primary);box-shadow:var(--shadow-ring-accent), 0 0 0 1px var(--accent-primary);outline:none;transition:box-shadow .15s,border-color .15s}input[type=range]{appearance:none;cursor:pointer;background:0 0;border-radius:0;outline:none;height:4px}input[type=range]::-webkit-slider-runnable-track{background:var(--white-10);border:none;border-radius:0;height:4px}input[type=range]::-moz-range-track{background:var(--white-10);border:none;border-radius:0;height:4px}input[type=range]::-webkit-slider-thumb{-webkit-appearance:none;background:var(--accent-primary);border:2px solid var(--bg-primary);width:16px;height:16px;box-shadow:0 1px 6px #0000004d, var(--shadow-ring-accent);cursor:pointer;border-radius:0;transition:background .15s,border-color .15s,color .15s,opacity .15s}input[type=range]::-webkit-slider-thumb:hover{box-shadow:var(--shadow-md), 0 0 0 4px #0e749033;transform:scale(1.15)}input[type=range]::-moz-range-thumb{background:var(--accent-primary);border:2px solid var(--bg-primary);width:16px;height:16px;box-shadow:0 1px 6px #0000004d, var(--shadow-ring-accent);cursor:pointer;border-radius:0}.mode-tabs{background:var(--bg-elevated);border:1px solid var(--white-6);border-radius:0;gap:2px;padding:3px}.effect-search-bar input[type=search]{padding:var(--spacing-md-sm) var(--spacing-md-sm);font-size:var(--font-size-small);background:var(--bg-elevated);border:1px solid var(--white-6);border-radius:0;transition:background .2s,border-color .2s,color .2s,opacity .2s,transform .2s}.effect-search-bar input[type=search]:focus{background:var(--bg-primary);border-color:var(--accent-primary);box-shadow:var(--shadow-ring-accent-lg)}.info-bar{background:var(--white-3);border:1px solid var(--white-4);padding:var(--spacing-compact) var(--spacing-sm);gap:var(--spacing-sm);border-radius:0}.info-badge{font-size:var(--font-size-xs);border:1px solid var(--white-6);background:#ffffff0d;border-radius:0;padding:3px 8px;font-weight:600}.info-badge.highlight{color:var(--accent-primary);background:#0e74901a;border-color:#0e749033}.dropzone-text,.preview-placeholder{justify-content:center;align-items:center;gap:var(--spacing-md-sm);padding:var(--spacing-xl) var(--spacing-lg);text-align:center;color:var(--text-disabled);flex-direction:column;min-height:200px;display:flex}.dropzone-text svg,.preview-placeholder svg{opacity:.3;width:48px;height:48px}.dropzone-text span,.preview-placeholder span{font-size:var(--font-size-small);max-width:280px;font-weight:500;line-height:1.5}.toast{-webkit-backdrop-filter:blur(16px);border:1px solid var(--white-10);padding:var(--spacing-md-sm) var(--spacing-md);font-size:var(--font-size-small);background:#141414d9;border-radius:0;font-weight:500;animation:.3s cubic-bezier(.4,0,.2,1) toast-in;box-shadow:0 8px 32px #0006,inset 0 0 0 1px #ffffff0d}.sidebar{border-right:1px solid var(--white-6);background:var(--bg-secondary)}.settings{border-left:1px solid var(--white-6)}.main-area{background:var(--bg-primary)}.preview-container{border-radius:0;transition:background .3s,border-color .3s,color .3s,opacity .3s}input[type=checkbox]{width:16px;height:16px;accent-color:var(--accent-primary);cursor:pointer;border-radius:0}input[type=color]{border:2px solid var(--white-10);cursor:pointer;border-radius:0;padding:2px;transition:border-color .15s}input[type=color]:hover{border-color:var(--border-hover)}.toggle-row{align-items:center;gap:var(--spacing-sm);min-height:36px;padding:6px 0;display:flex}.toggle-row label{font-size:var(--font-size-xs);color:var(--text-secondary);-webkit-user-select:none;user-select:none;cursor:pointer;flex:1;font-weight:500;line-height:1.3}::-webkit-scrollbar{width:6px;height:6px}::-webkit-scrollbar-track{background:0 0}::-webkit-scrollbar-thumb{background:var(--white-8);border-radius:0}::-webkit-scrollbar-thumb:hover{background:#ffffff24}::selection{color:var(--text-primary);background:#0e74904d}.bottom-sheet-handle-bar{background:var(--white-20);border-radius:0;width:40px;height:4px}[data-tooltip]{position:relative}[data-tooltip]:after{content:attr(data-tooltip);white-space:nowrap;opacity:0;visibility:hidden;z-index:var(--z-tooltip);pointer-events:none;color:#fff;font-size:var(--font-size-xs);padding:var(--spacing-compact) 10px;border:1px solid var(--white-10);box-shadow:var(--shadow-md);background:#000000e6;border-radius:0;font-weight:500;transition:opacity .2s,visibility .2s;position:absolute;bottom:calc(100% + 8px);left:50%;transform:translate(-50%)}[data-tooltip]:hover:after,[data-tooltip]:focus:after{opacity:1;visibility:visible}.dim-btn[data-tooltip]:after{top:calc(100% + 6px);bottom:auto}.skeleton{background:linear-gradient(90deg, var(--white-4) 25%, var(--white-8) 50%, var(--white-4) 75%);background-size:200% 100%;border-radius:0;animation:1.5s infinite shimmer}.fade-out{opacity:0;pointer-events:none;transition:opacity .2s}.fade-in{opacity:1;pointer-events:auto;transition:opacity .2s}.mobile-mode-tab{font-size:var(--font-size-xs);min-height:44px;padding:var(--spacing-sm) var(--spacing-md-sm);border-radius:0;font-weight:600;transition:background .2s,border-color .2s,color .2s,opacity .2s,transform .2s}.mobile-mode-tab.active{background:var(--panel-accent-surface);border-color:var(--panel-accent-border);color:var(--text-primary);box-shadow:var(--shadow-accent-glow);font-weight:700}.preview-grid .cell{border-radius:0;transition:background .3s cubic-bezier(.4,0,.2,1),border-color .3s cubic-bezier(.4,0,.2,1),color .3s cubic-bezier(.4,0,.2,1),opacity .3s cubic-bezier(.4,0,.2,1),transform .3s cubic-bezier(.4,0,.2,1);overflow:hidden}.photo-strip{background:var(--bg-secondary);border-top:1px solid var(--white-6);padding:var(--spacing-sm) var(--spacing-md-sm)}.photo-strip img{cursor:pointer;border:2px solid #0000;border-radius:0;transition:background .15s,border-color .15s,color .15s,opacity .15s}.photo-strip img:hover{border-color:#0e749080;transform:scale(1.05)}.photo-strip img.active{border-color:var(--accent-primary);box-shadow:var(--shadow-ring-accent)}.font-select,#font-family{min-height:36px;font-size:var(--font-size-small);padding:0 var(--spacing-md-sm);background:var(--bg-elevated);border:1px solid var(--border-subtle);border-radius:0;transition:background .15s,border-color .15s,color .15s,opacity .15s}.font-select:hover,#font-family:hover{border-color:var(--border-default)}.palette-swatches{gap:var(--spacing-sm)}.palette-swatch{padding:var(--spacing-sm) var(--spacing-compact) var(--spacing-compact);border-radius:0;transition:background .15s,border-color .15s,color .15s,opacity .15s}.palette-swatch:hover{border-color:var(--border-hover);box-shadow:var(--shadow-md);transform:translateY(-1px)}.palette-swatch.active{border-color:var(--accent-primary);box-shadow:var(--shadow-ring-accent), 0 4px 12px #0003}.text-mode-tab{border-radius:0;min-height:32px;transition:background .2s,border-color .2s,color .2s,opacity .2s,transform .2s}.text-mode-tab:hover{background:var(--white-4);border-color:#0e749066;transform:translateY(-1px)}.text-mode-tab.active{border-color:var(--accent-primary);box-shadow:var(--shadow-ring-accent-with-depth);background:#0e74901a}.speed-control input[type=range]{background:var(--white-12);height:3px}#result-panel img,#result-panel canvas{box-shadow:var(--shadow-lg);border-radius:0}.watermark-overlay{opacity:.15;transition:opacity .3s}.preview-container:hover .watermark-overlay{opacity:.08}.flex-spacer{flex:1}.a11y-toggle-btn{background:linear-gradient(180deg, var(--bg-elevated) 0%, #ffffff05 100%);border:1px solid var(--border-default);color:var(--text-secondary);cursor:pointer;padding:var(--spacing-xs) var(--spacing-md-sm);font-size:var(--font-size-body-sm);align-items:center;gap:var(--spacing-xs);border-radius:0;margin-right:6px;transition:background .15s,border-color .15s,color .15s,opacity .15s,transform .15s;display:flex}.a11y-toggle-btn:hover{border-color:var(--border-hover);color:var(--text-primary);background:var(--white-8);transform:translateY(-1px)}.a11y-sm{font-size:var(--font-size-xs)}.a11y-lg{font-size:var(--font-size-body);font-weight:700}.inline-text-field{width:100%;padding:var(--spacing-md-sm) var(--spacing-md-sm);background:var(--bg-elevated);border:1px solid var(--border-default);color:var(--text-primary);font-size:var(--font-size-body);resize:none;border-radius:0;outline:none;font-family:inherit;font-weight:500;line-height:1.4;transition:border-color .15s,box-shadow .15s;overflow:hidden}.inline-text-field:focus{border-color:var(--accent-primary);box-shadow:var(--shadow-ring-accent)}.gen-overlay{justify-content:center;align-items:center;gap:var(--spacing-md);padding:var(--spacing-xl);flex-direction:column;display:flex}.gen-spinner-wrap{width:64px;height:64px;position:relative}.gen-spinner-svg{width:64px;height:64px;animation:1.2s linear infinite spin}.gen-percent{font-size:var(--font-size-body);color:#fff;letter-spacing:-.5px;justify-content:center;align-items:center;font-weight:700;display:flex;position:absolute;inset:0}.gen-stage{font-size:var(--font-size-body-sm);color:#ffffffe6;letter-spacing:.2px;font-weight:600}.gen-progress-track{background:var(--white-10);border-radius:0;width:70%;max-width:280px;height:4px;overflow:hidden}.btn-inline-cancel{margin-top:var(--space-1);background:var(--white-10);color:var(--text-secondary);border:1px solid var(--white-10);cursor:pointer;padding:var(--space-1) var(--space-2);font-size:var(--font-size-small);border-radius:0}.gen-progress-bar{background:linear-gradient(90deg, var(--accent-primary), var(--accent-primary-hover));border-radius:0;width:0%;height:100%;transition:width .8s}.gen-time{font-size:var(--font-size-xs);color:#ffffff73;font-weight:400}@media (width<=768px){#inline-generation-overlay:not(.is-hidden){z-index:var(--z-modal,900);-webkit-backdrop-filter:blur(6px);background:#000000d1;position:fixed;inset:0}}.collage-layouts-grid-wrap{gap:var(--spacing-sm);padding:var(--spacing-sm);grid-template-columns:repeat(2,1fr);display:grid}.slider-mb{margin-bottom:var(--spacing-md-sm)}.icon-inline{vertical-align:-.125em;margin-right:var(--spacing-xs)}.font-hint-sm{color:var(--text-disabled);opacity:.6;-webkit-user-select:none;user-select:none;flex-shrink:0;font-size:10px;font-weight:700;line-height:1}.font-hint-lg{color:var(--text-secondary);-webkit-user-select:none;user-select:none;flex-shrink:0;font-size:16px;font-weight:700;line-height:1}.mt-4{margin-top:var(--spacing-xs)}.mb-0{margin-bottom:0}.mb-4{margin-bottom:var(--spacing-xs)}.mb-6{margin-bottom:var(--spacing-compact)}.mb-10{margin-bottom:var(--spacing-md-sm)}.mt-12{margin-top:var(--spacing-md-sm)}.gap-6{gap:var(--spacing-compact)}.ml-auto{margin-left:auto}.flex-fill{flex:1}.btn-custom-color{justify-content:center;align-items:center;gap:var(--spacing-sm);border:1px dashed var(--border-default);background:var(--bg-secondary);width:100%;height:36px;color:var(--text-secondary);font-size:var(--font-size-xs);cursor:pointer;border-radius:0;transition:border-color .15s,background .15s;display:flex}.btn-custom-color:hover{border-color:var(--accent-primary);background:var(--bg-tertiary);color:var(--text-primary)}.color-preview-dot{border:2px solid #fff3;border-radius:0;flex-shrink:0;width:18px;height:18px}.range-thin{height:4px;accent-color:var(--accent-primary)}.range-val{text-align:right;font-variant-numeric:tabular-nums;min-width:36px;font-size:var(--font-size-xs);flex-shrink:0;font-weight:500}.range-val-sm{text-align:right;font-variant-numeric:tabular-nums;min-width:28px;font-size:var(--font-size-xs);flex-shrink:0;font-weight:500}.range-label-bold{font-weight:600}.grid-cols-2{grid-template-columns:1fr 1fr}.section-sublabel{font-size:var(--font-size-xs);text-transform:uppercase;letter-spacing:.08em;color:var(--text-tertiary);margin-bottom:var(--spacing-sm);font-weight:600;display:block}.section-sublabel.mt{margin-top:var(--spacing-md-sm)}.setting-hint{font-size:var(--font-size-xs);color:var(--text-tertiary);margin-bottom:var(--spacing-compact);display:block}.setting-hint--inline{margin:0;display:inline}.setting-subsection{padding:var(--spacing-sm);background:var(--bg-primary);border:1px solid var(--border-subtle);border-radius:0;margin-bottom:10px}.setting-scroll-list{gap:var(--spacing-compact);flex-direction:column;max-height:180px;display:flex;overflow-y:auto}.toggle-label{align-items:center;gap:var(--spacing-compact);font-size:var(--font-size-small);cursor:pointer;display:flex}.btn-util{margin-top:var(--spacing-sm);padding:var(--spacing-compact) var(--spacing-md-sm);background:var(--bg-secondary);border:1px solid var(--border-default);font-size:var(--font-size-micro);color:var(--text-secondary);cursor:pointer;border-radius:0;width:100%}.btn-util:hover{background:var(--bg-elevated);border-color:var(--border-default)}.pos-relative{position:relative}.color-swatch-circle{border:1px solid var(--border-subtle);border-radius:0;flex-shrink:0;width:16px;height:16px;display:inline-block}.custom-bg-row.mt-8{margin-top:var(--spacing-sm);grid-column:1/-1}.flex-col-gap6{gap:var(--spacing-compact);margin-top:var(--spacing-compact);flex-direction:column;display:flex}.setting-row-between{justify-content:space-between;align-items:center;width:100%}input[type=range].flex-fill{flex:1}.preview-zone{background:var(--bg-elevated)}.preview-container:before{content:attr(data-dim-label);font-size:var(--font-size-micro);color:#ffffff40;letter-spacing:.5px;pointer-events:none;z-index:var(--z-above);opacity:0;font-weight:600;transition:opacity .2s;position:absolute;top:8px;right:8px}.preview-container:hover:before{opacity:1}#char-counter{font-size:var(--font-size-xs);color:var(--text-disabled);padding:2px 8px;transition:color .2s}#char-counter.warn{color:var(--color-warning,#f59e0b)}.format-pill{font-size:var(--font-size-small);letter-spacing:.03em;min-width:0;font-weight:600}.quality-pill{font-size:var(--font-size-xs);padding:var(--spacing-xs) var(--spacing-sm)}.cta-info-row{font-size:var(--font-size-micro);color:var(--text-disabled);text-align:center;letter-spacing:.02em;padding:2px 0}#generate-btn:disabled,#generate-btn[disabled],#generate-btn.disabled{opacity:1;cursor:not-allowed;pointer-events:none;background:rgba(var(--accent-primary-rgb,14, 116, 144), .12);border:1px solid rgba(var(--accent-primary-rgb,14, 116, 144), .2);color:rgba(var(--accent-primary-rgb,14, 116, 144), .5)}#generate-btn:disabled .hint{color:var(--text-tertiary)}.category-header{letter-spacing:.06em;font-weight:700;font-size:var(--font-size-xs);text-transform:uppercase;color:var(--text-secondary)}.effect-search input{transition:border-color .2s,box-shadow .2s}.effect-search input:focus{border-color:var(--accent-primary);box-shadow:var(--shadow-ring-accent)}.template-card.selected,.effect-card.selected{border-color:var(--accent-primary)!important;box-shadow:0 0 0 2px #0e749040,0 4px 12px #0000004d!important}.preview-info-bar{gap:var(--spacing-sm);padding:var(--spacing-compact) var(--spacing-md-sm);font-size:var(--font-size-xs)}.preview-info-bar .info-badge{border-radius:0;padding:3px 8px;font-weight:500}.accordion-header .chevron-icon,.section-header .chevron-icon{transition:transform .25s}.accordion-header[aria-expanded=true] .chevron-icon,.section-header[aria-expanded=true] .chevron-icon{transform:rotate(180deg)}.setting-section .section-label,.section-group .section-label{font-size:var(--font-size-xs);text-transform:uppercase;letter-spacing:.06em;color:var(--text-secondary);font-weight:600}.slide-item{border-radius:0;transition:background .15s}.slide-item:hover{background:var(--white-4)}.slide-num{font-size:var(--font-size-xs);background:var(--accent-primary);color:#fff;border-radius:0;justify-content:center;align-items:center;min-width:18px;height:18px;font-weight:700;display:inline-flex}body[data-mode=collage] .template-card{border-radius:0}.add-slide-btn{border:1px dashed var(--white-15);color:var(--text-disabled);font-size:var(--font-size-small);padding:var(--spacing-sm) var(--spacing-md);cursor:pointer;background:0 0;border-radius:0;transition:background .2s,border-color .2s,color .2s,opacity .2s,transform .2s}.add-slide-btn:hover{border-color:var(--accent-primary);color:var(--accent-primary);background:#0e74900d}.photo-upload-area:empty:after,.photo-list:empty:after{content:"Arraste fotos aqui ou clique + Upload";padding:var(--spacing-xl) var(--spacing-md);font-size:var(--font-size-small);color:var(--text-disabled);border:1.5px dashed var(--white-12);text-align:center;border-radius:0;justify-content:center;align-items:center;min-height:80px;display:flex}.preview-container.has-content{box-shadow:0 0 0 1px var(--white-8), 0 8px 32px #0009, 0 0 60px #0e74900a}.preview-container:has(.preview-text:not(.is-hidden)){box-shadow:0 0 0 1px var(--white-8), 0 8px 32px #0009, 0 0 60px #0e74900a}.preview-toolbar.visible{border:1px solid var(--white-8);-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px);box-shadow:var(--shadow-toolbar);background:#1e1d1cf2;border-radius:0;padding:6px 14px}.preview-toolbar select,.preview-toolbar input[type=color],.preview-toolbar .tb-btn{font-size:var(--font-size-xs);border-radius:0;font-weight:500}.preview-toolbar .toolbar-label{font-size:var(--font-size-micro);text-transform:uppercase;letter-spacing:.08em;color:var(--text-disabled);font-weight:600}.settings-scroll .setting-section{border-bottom:1px solid var(--white-4);margin-bottom:var(--spacing-xs);padding-bottom:16px}.settings-scroll .setting-section:last-child{border-bottom:none}.section-label,.setting-section>label:first-child,.setting-section>.section-header:first-child{font-size:var(--font-size-xs);letter-spacing:.08em;text-transform:uppercase;color:var(--text-tertiary);font-weight:600}.accordion-content{transition:max-height .3s cubic-bezier(.4,0,.2,1),opacity .2s,padding .3s;overflow:hidden}.text-slide-item{border:1px solid var(--white-6);background:#ffffff05;border-radius:0;transition:border-color .2s}.text-slide-item:hover{border-color:var(--border-default)}.text-slide-item:focus-within{border-color:var(--accent-primary)}.char-counter{font-size:var(--font-size-xs);font-weight:500;transition:color .2s}.char-counter.ideal{color:var(--accent-primary)}.char-counter.warning{color:var(--color-warning)}.char-counter.danger{color:var(--color-error)}.info-bar,.preview-info-bar{font-size:var(--font-size-xs);letter-spacing:.02em;color:var(--text-disabled);gap:var(--spacing-md-sm);font-weight:500}.info-bar .info-badge,.preview-info-bar .badge{background:var(--white-6);font-size:var(--font-size-xs);letter-spacing:.04em;border-radius:0;padding:3px 8px;font-weight:600}.preview-zone,.preview-container,.preview-text-input,.preview-placeholder{transition:opacity .25s,transform .25s}.effect-card:focus-visible,.effect-pill:focus-visible,.mode-tab:focus-visible,.tier-tab:focus-visible,.mobile-mode-tab:focus-visible,.dim-btn:focus-visible,.format-pill:focus-visible,.quality-pill:focus-visible,.generate-btn:focus-visible{outline:var(--focus-ring);outline-offset:2px}.effect-card:focus:not(:focus-visible),.dim-btn:focus:not(:focus-visible),.generate-btn:focus:not(:focus-visible){outline:none}@media (width<=768px){.text-edit-bar .preview-toolbar{border:1px solid var(--white-6);-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);width:100%;height:auto;box-shadow:none;background:#1e1d1cd9;border-radius:0;flex-flow:column wrap;padding:4px 12px}.text-edit-bar .preview-toolbar-row1,.text-edit-bar .preview-toolbar-row2{gap:var(--spacing-sm);width:100%;padding:var(--spacing-xs) 0;flex-wrap:nowrap;display:flex;overflow-x:auto}.text-edit-bar .preview-toolbar-row2{border-top:1px solid var(--white-6)}.text-edit-bar .preview-toolbar select{max-width:110px;font-size:var(--font-size-small);height:32px}.text-edit-bar .preview-toolbar input[type=range]{max-width:80px}.text-edit-bar .preview-toolbar .tb-size-label{font-size:var(--font-size-xs);min-width:36px}}.info-bar{gap:var(--spacing-compact);font-size:var(--font-size-xs);padding:4px 12px}.info-bar .info-tag{font-size:var(--font-size-xs);border-radius:0;padding:3px 8px}.settings .section-label,.settings .settings-section-title{font-size:var(--font-size-xs);text-transform:uppercase;letter-spacing:.08em;color:var(--text-secondary);margin-bottom:var(--spacing-sm);font-weight:600}.template-card,.mobile-carousel-card{transition:transform .2s,box-shadow .2s,border-color .2s}.template-card:hover,.mobile-carousel-card:hover{box-shadow:var(--shadow-card-hover);border-color:var(--white-15);transform:translateY(-2px)}.effect-card.selected,.template-card.selected{border-color:var(--accent-primary);box-shadow:var(--shadow-ring-accent)}.preview-placeholder{border-color:var(--white-12);background:#ffffff04;border-style:dashed;border-width:1.5px;border-radius:0;transition:border-color .2s,background .2s}.preview-placeholder:hover{border-color:var(--white-20);background:var(--white-3)}.placeholder-dropzone{gap:var(--spacing-md-sm)}.placeholder-icon{opacity:.4;margin-bottom:var(--spacing-xs)}.placeholder-title{font-size:var(--font-size-h3);letter-spacing:.02em;font-weight:700}.placeholder-subtitle{font-size:var(--font-size-small);color:var(--text-tertiary);letter-spacing:.04em}@media (width>=769px){.generate-btn:not(:disabled){background:linear-gradient(135deg, var(--accent-primary) 0%, var(--accent-primary-hover) 100%)!important;box-shadow:0 2px 8px rgba(var(--accent-primary-rgb), .35), 0 1px 3px #0003, inset 0 1px 0 #ffffff26!important;border:1px solid #ffffff1a!important}.generate-btn:not(:disabled):hover{box-shadow:0 4px 16px rgba(var(--accent-primary-rgb), .45), 0 2px 8px #00000040, inset 0 1px 0 #fff3!important;border-color:#fff3!important;transform:translateY(-1px)!important}.generate-btn:not(:disabled):active{box-shadow:0 1px 4px rgba(var(--accent-primary-rgb), .3), 0 1px 2px #0003, inset 0 1px 0 #ffffff1a!important;transform:translateY(0)!important}}@media (width>=769px) and (width<=980px){.export-controls--compact{gap:var(--spacing-sm)}.export-row{gap:var(--spacing-md-sm)}.export-row--detail{padding-top:var(--spacing-xs)}.export-info{padding-top:var(--spacing-md-sm);gap:2px}.export-panel-scroll .generate-btn{border-radius:0;min-height:56px}.export-panel-scroll .generate-btn .hint{font-size:var(--font-size-xs);color:#ffffffad}}.sidebar::-webkit-scrollbar{width:4px}.sidebar::-webkit-scrollbar-thumb{background:var(--white-8);border-radius:0}.sidebar::-webkit-scrollbar-thumb:hover{background:var(--white-15)}.mode-tab.active{border-color:var(--accent-primary);color:var(--accent-primary);background:#0e749014}.custom-checkbox-row .checkmark{flex-shrink:0;width:16px;min-width:16px;height:16px;min-height:16px;margin:0}.custom-checkbox-row .checkbox-label{font-size:var(--font-size-small);color:var(--text-secondary);line-height:1.3}.toggle-row input[type=checkbox],.aesthetic-opts-panel input[type=checkbox]{width:16px;height:16px;accent-color:var(--accent-primary);cursor:pointer;flex-shrink:0;margin:0}#watermark-text,.watermark-input,input#watermark-text{background:var(--bg-primary);color:var(--text-primary);border:1px solid var(--border-default);padding:var(--spacing-md) var(--spacing-lg);font-size:var(--font-size-body-sm);border-radius:0;width:100%}#watermark-text::-moz-placeholder{color:var(--text-tertiary)}.watermark-input::-moz-placeholder{color:var(--text-tertiary)}#watermark-text::placeholder,.watermark-input::placeholder{color:var(--text-tertiary)}@media (prefers-reduced-motion:reduce){*,:before,:after{scroll-behavior:auto;transition-duration:.01ms;animation-duration:.01ms;animation-iteration-count:1}}.scene-num{background:rgba(var(--accent-primary-rgb), .12);border:1px solid rgba(var(--accent-primary-rgb), .2);width:24px;height:24px;color:var(--text-primary);font-size:var(--font-size-xs);border-radius:0;justify-content:center;align-items:center;font-weight:700;line-height:1;display:inline-flex}.scene-text-thumb,.scene-empty-thumb{background:linear-gradient(#ffffff0a,#ffffff05);border-radius:0;width:100%;height:100%;position:relative;overflow:hidden}.scene-text-thumb{justify-content:center;align-items:center;display:flex}.scene-text-thumb img,.scene-thumbs img{-o-object-fit:cover;object-fit:cover;width:100%;height:100%;display:block}.scene-more{right:var(--space-1);bottom:var(--space-1);min-width:24px;height:20px;padding:0 var(--space-1);color:var(--text-primary);font-size:var(--font-size-micro);background:#080808d1;border-radius:0;justify-content:center;align-items:center;font-weight:700;display:inline-flex;position:absolute}.scene-text-icon,.scene-text-empty{color:var(--text-tertiary);font-size:var(--font-size-small);font-weight:600}.scene-text-thumb .scene-text-preview--over{left:var(--space-2);right:var(--space-2);bottom:var(--space-2);color:var(--text-primary);font-size:var(--font-size-xs);font-weight:700;line-height:var(--line-height-tight);text-transform:uppercase;text-shadow:0 1px 2px #00000073;position:absolute}.scene-empty-thumb{color:var(--text-tertiary);justify-content:center;align-items:center;display:flex}.scene-effect-badge{max-width:88px;min-height:32px;padding:0 var(--space-3);background:var(--white-6);border:1px solid var(--border-subtle);color:var(--text-primary);font-size:var(--font-size-small);border-radius:0;justify-content:center;align-items:center;font-weight:600;line-height:1;display:inline-flex}.scene-expand-btn-mini{border:1px solid var(--border-subtle);background:var(--white-6);width:24px;height:24px;color:var(--text-secondary);cursor:pointer;border-radius:0;justify-content:center;align-items:center;display:inline-flex}.turbo-section{border-top:1px solid var(--border-subtle);justify-content:center;padding:12px 16px;display:flex}.turbo-btn{background:linear-gradient(135deg, var(--color-turbo), var(--color-turbo-muted));color:#fff;font-weight:600;font-size:var(--font-size-body);cursor:pointer;border:none;border-radius:0;align-items:center;gap:8px;padding:12px 20px;transition:all .3s;display:inline-flex;position:relative;overflow:hidden}.turbo-btn:hover{box-shadow:0 8px 25px var(--color-turbo-glow);transform:translateY(-2px)}.turbo-btn:active{transform:translateY(0)}.turbo-badge{font-size:var(--font-size-micro);background:#fff3;border-radius:0;padding:2px 6px;font-weight:700;animation:2s infinite pulse}.turbo-modal{z-index:var(--z-modal);justify-content:center;align-items:center;padding:20px;display:none;position:fixed;inset:0}.turbo-modal.active{display:flex}.turbo-backdrop{-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);background:#000c;position:absolute;inset:0}.turbo-content{background:var(--bg-secondary);border:1px solid var(--border-subtle);border-radius:0;flex-direction:column;width:100%;max-width:800px;max-height:90vh;display:flex;position:relative;overflow:hidden;box-shadow:0 25px 50px #00000080}.turbo-header{border-bottom:1px solid var(--border-subtle);justify-content:space-between;align-items:center;padding:20px 24px;display:flex}.turbo-header h2{font-size:var(--font-size-h1);color:#fff;margin:0;font-weight:700}.turbo-close{color:#fff9;font-size:var(--font-size-h1);cursor:pointer;background:0 0;border:none;border-radius:0;padding:4px;transition:all .2s}.turbo-close:hover{color:#fff;background:#ffffff1a}.turbo-body{flex:1;padding:24px;overflow-y:auto}.turbo-upload-zone{text-align:center;cursor:pointer;border:2px dashed #fff3;border-radius:0;padding:40px 20px;transition:all .3s}.turbo-upload-zone:hover,.turbo-upload-zone.drag-over{border-color:var(--color-turbo);background:var(--color-turbo-bg)}.turbo-upload-zone svg{color:#fff6;margin-bottom:16px}.turbo-upload-zone p{color:#fffc;margin:8px 0;font-weight:500}.turbo-hint{font-size:var(--font-size-small);color:#ffffff80}.turbo-photo-grid{grid-template-columns:repeat(auto-fill,minmax(80px,1fr));gap:12px;margin-bottom:24px;display:grid}.turbo-photo-item{aspect-ratio:1;background:#0a0a0a;border-radius:0;position:relative;overflow:hidden}.turbo-photo-item img{-o-object-fit:cover;object-fit:cover;width:100%;height:100%}.turbo-photo-remove{color:#fff;cursor:pointer;width:24px;height:24px;font-size:var(--font-size-small);opacity:0;background:#000c;border:none;border-radius:0;justify-content:center;align-items:center;transition:opacity .2s;display:flex;position:absolute;top:4px;right:4px}.turbo-photo-item:hover .turbo-photo-remove{opacity:1}.turbo-options{margin-bottom:24px}.turbo-toggle{background:#ffffff0d;border-radius:0;align-items:center;gap:16px;margin-bottom:12px;padding:16px;display:flex}.turbo-switch{width:48px;height:24px;display:inline-block;position:relative}.turbo-switch input{opacity:0;width:0;height:0}.turbo-slider{cursor:pointer;background:#fff3;border-radius:0;transition:all .3s;position:absolute;inset:0}.turbo-slider:before{content:"";background:#fff;border-radius:0;width:18px;height:18px;transition:all .3s;position:absolute;bottom:3px;left:3px}.turbo-switch input:checked+.turbo-slider{background:var(--color-turbo)}.turbo-switch input:checked+.turbo-slider:before{transform:translate(24px)}.turbo-label{flex-direction:column;gap:2px;display:flex}.turbo-label-main{color:#fff;font-weight:600}.turbo-label-sub{font-size:var(--font-size-small);color:#fff9}.turbo-plan-info{background:var(--color-success-bg);border:1px solid var(--color-success-border);font-size:var(--font-size-small);color:var(--color-success);text-align:center;border-radius:0;padding:12px}.turbo-plan-info.pro-limit{background:var(--color-turbo-bg);border-color:var(--color-turbo-border);color:var(--color-turbo)}.turbo-progress-header{justify-content:space-between;align-items:center;margin-bottom:16px;display:flex}.turbo-progress-header h3{font-size:var(--font-size-h2);color:#fff;margin:0;font-weight:600}.turbo-progress-stats{color:#fff9;font-size:var(--font-size-body)}.turbo-progress-grid{grid-template-columns:repeat(auto-fill,minmax(120px,1fr));gap:12px;display:grid}.turbo-progress-card{text-align:center;background:#ffffff0d;border:1px solid #ffffff1a;border-radius:0;padding:12px;position:relative;overflow:hidden}.turbo-progress-card.generating{border-color:var(--color-turbo);background:var(--color-turbo-bg)}.turbo-progress-card.completed{border-color:var(--color-success);background:var(--color-success-bg)}.turbo-progress-card.error{background:#f443361a;border-color:#f44336}.turbo-progress-name{font-size:var(--font-size-small);color:#fff;white-space:nowrap;text-overflow:ellipsis;margin-bottom:8px;font-weight:500;overflow:hidden}.turbo-progress-bar{background:#ffffff1a;border-radius:0;height:4px;margin-bottom:4px;overflow:hidden}.turbo-progress-fill{background:linear-gradient(90deg, var(--color-turbo), var(--color-turbo-muted));border-radius:0;width:0%;height:100%;transition:width .3s}.turbo-progress-status{font-size:var(--font-size-micro);color:#fff9}.turbo-results-header{justify-content:space-between;align-items:center;margin-bottom:16px;display:flex}.turbo-results-header h3{font-size:var(--font-size-h2);color:#fff;margin:0;font-weight:600}.turbo-download-all{background:var(--color-success);color:#fff;font-size:var(--font-size-small);cursor:pointer;border:none;border-radius:0;padding:8px 16px;font-weight:600;transition:all .2s}.turbo-download-all:hover{box-shadow:0 4px 12px var(--color-success-border);transform:translateY(-1px)}.turbo-results-grid{grid-template-columns:repeat(auto-fill,minmax(150px,1fr));gap:16px;display:grid}.turbo-result-card{background:#ffffff0d;border:1px solid #ffffff1a;border-radius:0;transition:all .2s;overflow:hidden}.turbo-result-card:hover{transform:translateY(-2px);box-shadow:0 8px 25px #0000004d}.turbo-result-gif{aspect-ratio:1;-o-object-fit:cover;object-fit:cover;background:#0a0a0a;width:100%}.turbo-result-info{padding:12px}.turbo-result-name{font-size:var(--font-size-small);color:#fff;white-space:nowrap;text-overflow:ellipsis;margin-bottom:4px;font-weight:600;overflow:hidden}.turbo-result-meta{font-size:var(--font-size-micro);color:#fff9;margin-bottom:8px}.turbo-result-actions{gap:8px;display:flex}.turbo-result-btn{color:#fff;font-size:var(--font-size-micro);cursor:pointer;background:#ffffff1a;border:none;border-radius:0;flex:1;padding:6px 8px;font-weight:500;transition:all .2s}.turbo-result-btn:hover{background:#fff3}.turbo-footer{border-top:1px solid var(--border-subtle);background:#0000004d;gap:12px;padding:20px 24px;display:flex}.turbo-btn-primary{background:linear-gradient(135deg, var(--color-turbo), var(--color-turbo-muted));color:#fff;font-weight:600;font-size:var(--font-size-body);cursor:pointer;border:none;border-radius:0;flex:1;padding:14px 20px;transition:all .3s}.turbo-btn-primary:hover:not(:disabled){box-shadow:0 8px 25px var(--color-turbo-glow);transform:translateY(-2px)}.turbo-btn-primary:disabled{opacity:.5;cursor:not-allowed}.turbo-btn-secondary{color:#fff;font-weight:500;font-size:var(--font-size-body);cursor:pointer;background:#ffffff1a;border:none;border-radius:0;padding:14px 20px;transition:all .2s}.turbo-btn-secondary:hover{background:#fff3}@media (width<=768px){.turbo-content{border-radius:0;max-height:95vh;margin:0}.turbo-body{padding:16px}.turbo-progress-grid,.turbo-results-grid{grid-template-columns:repeat(auto-fill,minmax(100px,1fr))}.turbo-footer{flex-direction:column}.turbo-btn-secondary{order:-1}}.site-footer{text-align:center;letter-spacing:.03em;color:#ffffff73;border-top:1px solid #ffffff0f;justify-content:center;align-items:center;gap:14px;padding:56px 20px 28px;font-size:.7rem;font-weight:300;display:flex}.site-footer a{color:inherit;border-bottom:1px solid #fff3;padding-bottom:1px;text-decoration:none;transition:opacity .2s,border-color .2s}.site-footer a:hover{opacity:.7;border-color:#fff6}.site-footer .lang-btn{letter-spacing:.04em;color:#fff6;cursor:pointer;background:0 0;border:1px solid #ffffff1f;border-radius:3px;padding:2px 7px;font-size:.6rem;font-weight:400;transition:color .2s,border-color .2s}.site-footer .lang-btn:hover,.site-footer .lang-btn.active{color:#ffffffb3;border-color:#ffffff40}.site-footer .sep{opacity:.2;font-weight:300}@media (width<=640px){.site-footer{gap:10px;padding:36px 16px 20px;font-size:.65rem}}@media (hover:hover) and (pointer:fine){.settings .section-group-title,.settings .sidebar-section-label,.sidebar .section-group-title,.sidebar .sidebar-section-label{font-size:var(--label-font-size);text-transform:uppercase;letter-spacing:var(--label-letter-spacing);color:var(--label-color);border-bottom:var(--panel-separator);margin-bottom:var(--panel-section-gap);padding-bottom:4px;font-weight:600}.settings .setting-label,.settings .setting-section h4,.sidebar .setting-label,.sidebar .setting-section h4{font-size:var(--label-font-size);text-transform:uppercase;letter-spacing:var(--label-letter-spacing);color:var(--label-color);border-bottom:none;margin-bottom:4px;padding-bottom:0;font-weight:600}}.template-group-title{font-size:var(--label-font-size);letter-spacing:.1em;text-transform:uppercase;border-bottom:var(--panel-separator);margin-bottom:4px;padding:4px 0;font-weight:600}.sidebar-mode-tabs{border-bottom:2px solid var(--border-default)}@media (hover:hover) and (pointer:fine){.btn-primary{background:var(--accent-primary);border:1px solid var(--accent-primary-hover);box-shadow:none}.btn-primary:hover{background:var(--accent-primary-hover);box-shadow:none;transform:none}.fav-toggle,.speed-control{border-radius:0}.card:hover,.effect-card:hover,.template-card:hover{transform:translateY(var(--hover-lift))}.button:hover,.btn:hover{transform:none}.settings input[type=text],.settings select,.settings input[type=search],.settings input[type=number]{min-height:var(--control-height-md);height:var(--control-height-md);font-size:var(--font-size-xs);padding:0 var(--spacing-sm)}}.slider-row{gap:0 var(--spacing-xs);margin-bottom:var(--panel-section-gap);grid-template-rows:auto auto;grid-template-columns:1fr auto;align-items:center;display:grid}.slider-row-label{font-size:var(--label-font-size);text-transform:uppercase;letter-spacing:var(--label-letter-spacing);color:var(--label-color);grid-area:1/1;padding-bottom:3px;font-weight:600}.slider-row-value{font-size:var(--font-size-xs);color:var(--accent-primary);text-align:right;font-variant-numeric:tabular-nums;grid-area:1/2;min-width:34px;padding-bottom:3px;font-weight:600;line-height:1}.slider-row input[type=range]{grid-area:2/1/auto/-1;margin:0}.font-size-control .font-size-value{font-variant-numeric:tabular-nums;text-align:right;min-width:38px}.preview-zone{background-color:var(--pasteboard-bg);background-image:radial-gradient(circle, var(--pasteboard-dot-color) var(--pasteboard-dot-size), transparent var(--pasteboard-dot-size)), radial-gradient(circle at 50% 40%, rgba(var(--accent-primary-rgb), .04) 0%, transparent 55%);background-size:var(--pasteboard-dot-spacing) var(--pasteboard-dot-spacing), 100% 100%;background-position:0 0,0 0}@media (hover:hover) and (pointer:fine){.preview-toolbar{border-color:var(--border-default);gap:var(--spacing-xs);background:#232120f0;height:32px}.preview-toolbar .tb-divider{background:var(--border-default)}.preview-toolbar .tb-btn:hover{transform:none}}@media (width<=767px){.bottom-sheet-handle{padding:10px 0 6px}.bottom-sheet-handle-bar{width:32px;height:4px}.bottom-sheet-header{padding:0 var(--spacing-md) 10px;font-size:var(--font-size-body-sm)}.mobile-nav-btn{padding:0 8px}}@media (hover:hover) and (pointer:fine){.dim-btn{min-height:var(--control-height-sm);height:var(--control-height-sm);padding:0 var(--spacing-compact);border-radius:0;gap:3px;font-size:10px}.dim-btn .dim-icon,.dim-btn[data-dim=square] .dim-icon{width:14px;height:14px}.dim-btn[data-dim=portrait] .dim-icon{width:12px;height:15px}.dim-btn[data-dim=story] .dim-icon{width:9px;height:16px}.dim-btn[data-dim=wide] .dim-icon{width:18px;height:9px}.dim-btn[data-dim=ytbanner] .dim-icon{border-radius:0;width:28px;height:4px}.dim-btn[data-dim=banner] .dim-icon{width:20px;height:6px}.dim-btn[data-dim=tall] .dim-icon{width:11px;height:15px}.settings-scroll{padding-bottom:calc(var(--spacing-xl) + var(--spacing-sm));-webkit-mask-image:none;mask-image:none}.preview-container,.text-edit-bar,.unified-text-input,.mode-tabs,.mode-tab,.quality-pill,.cta-quality-pill,.cta-format-pill,.photo-lib-item,.photo-lib-upload-btn,.photo-lib-select,.photo-lib-clear,.timeline-wrapper,.timeline-scene,.timeline-add,.selected-strip,.selected-strip .thumb,.sidebar .toggle-row,.sidebar-subcard,.surprise-me-btn,.unified-bar-controls select,.unified-bar-controls input[type=color]{border-radius:0}.photo-lib-grid{gap:var(--spacing-compact);grid-template-columns:repeat(4,minmax(0,1fr));max-height:200px;overflow-y:auto}.photo-lib-item{background:var(--bg-elevated);border-width:1px}.photo-lib-item img{display:block}.photo-lib-badge,.selected-strip .thumb .num,.scene-loop-badge,.scene-type-icon{border-radius:0}.timeline{padding-bottom:0}.timeline-scene{min-width:92px;height:40px}input[type=range].settings-range,.settings input[type=range],.font-size-control input[type=range]{appearance:none;cursor:pointer;background:0 0;border-radius:0;height:3px}input[type=range].settings-range::-webkit-slider-runnable-track{background:var(--border-default);border:none;border-radius:0;height:3px}.settings input[type=range]::-webkit-slider-runnable-track{background:var(--border-default);border:none;border-radius:0;height:3px}.font-size-control input[type=range]::-webkit-slider-runnable-track{background:var(--border-default);border:none;border-radius:0;height:3px}input[type=range].settings-range::-webkit-slider-thumb{-webkit-appearance:none;background:var(--accent-primary);cursor:col-resize;width:12px;height:12px;box-shadow:0 0 0 1px var(--accent-primary-hover);border:none;border-radius:0}.settings input[type=range]::-webkit-slider-thumb{-webkit-appearance:none;background:var(--accent-primary);cursor:col-resize;width:12px;height:12px;box-shadow:0 0 0 1px var(--accent-primary-hover);border:none;border-radius:0}.font-size-control input[type=range]::-webkit-slider-thumb{-webkit-appearance:none;background:var(--accent-primary);cursor:col-resize;width:12px;height:12px;box-shadow:0 0 0 1px var(--accent-primary-hover);border:none;border-radius:0}.export-size-btn,.size-btn,[data-action=set-export-size],[data-action=set-size]{min-height:var(--control-height-md);height:var(--control-height-md);padding:0 var(--spacing-sm);font-size:var(--font-size-xs);border-radius:0}}.sidebar-resize-handle{cursor:col-resize;width:4px;transition:background var(--transition-fast);z-index:var(--z-above);-webkit-user-select:none;user-select:none;background:0 0;position:absolute;top:0;bottom:0;right:0}.sidebar-resize-handle:hover,.sidebar-resize-handle.dragging{background:var(--accent-primary);opacity:.6}.preview-container{box-shadow:0 4px 28px #0000008c,0 1px 6px #00000059}@media (width>=1025px){.settings{border-left:1px solid var(--border-default)}}@media (hover:hover) and (pointer:fine){.card:hover,.effect-card:hover,.template-card:hover{box-shadow:none;background:var(--white-4)}}:focus-visible{outline:2px solid var(--accent-primary);outline-offset:2px}input:focus-visible,select:focus-visible,textarea:focus-visible{outline:none}.mobile-dim-btn.active{border-color:var(--accent-primary);color:var(--accent-primary);background:#0e749026}.mobile-dim-btn:hover:not(.active){border-color:var(--border-strong);background:var(--bg-hover);color:var(--text-primary)}@media (width<=768px){.unified-bar-input{max-height:80px}}.unified-bar-badges .info-badge,.text-edit-bar .info-badge{font-size:var(--font-size-micro);opacity:.65;font-weight:500}.preview-container{border-color:var(--border-default)}@media (width>=769px) and (height<=820px){.preview-container{height:clamp(260px,52vh,560px)}.content-zone{max-height:42vh}}.effect-card .effect-label{text-overflow:ellipsis;white-space:nowrap;max-width:100%;overflow:hidden}.timeline-scene-label{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}@media (width>=769px) and (width<=1024px){.mobile-dim-btn{min-height:40px;padding:6px 10px}}@media (width<=768px){.effect-card span{font-size:11px}.mobile-header-left .mobile-logo{opacity:1;font-weight:700}.mobile-mode-tab{opacity:.7}.mobile-mode-tab.active{opacity:1;font-weight:600}.mobile-header-right button{opacity:.6;transition:opacity var(--transition-fast)}.mobile-header-right button:hover{opacity:1}}.btn-upgrade-header{color:#f4c36f;letter-spacing:.08em;min-width:44px;height:32px;min-height:32px;box-shadow:none;background:#f59e0b1a;border:1px solid #f59e0b47;border-radius:0;justify-content:center;align-items:center;padding:0 11px;font-size:11px;font-weight:750;display:inline-flex}.btn-upgrade-header:hover{opacity:1;box-shadow:none;background:#f59e0b29;border-color:#f59e0b61;transform:none}@media (width<=768px){:root{--mobile-app-header-height:48px}.mobile-header{min-height:var(--mobile-app-header-height);height:var(--mobile-app-header-height);border-bottom:1px solid var(--border-subtle);background:#0d0d0cf7;flex-direction:row;align-items:center;gap:6px;padding:0 8px;display:flex;box-shadow:0 1px #0006}.mobile-header-left{flex-shrink:0;min-width:0}.mobile-header-right{flex-shrink:0;align-items:center;gap:2px;margin-left:0;display:flex}.mobile-header-center{flex:1;justify-content:center;min-width:0;display:flex}.mobile-logo{letter-spacing:-.02em;font-size:14px;line-height:1}.mobile-mode-tabs{background:var(--bg-elevated);border:1px solid var(--border-subtle);border-radius:0;gap:1px;width:auto;max-width:100%;height:32px;padding:2px}.mobile-mode-tab{letter-spacing:.02em;border-radius:0;flex:1;height:28px;min-height:28px;padding:0 10px;font-size:11px;font-weight:600}.mobile-mode-tab.active{background:var(--accent-primary);border-color:var(--accent-primary);color:#fff}.mobile-header-right button,.mobile-config-btn,#upgrade-btn-mobile{color:#fafaf98c;width:30px;min-width:30px;height:30px;min-height:30px;box-shadow:none;opacity:1;background:0 0;border:1px solid #0000;border-radius:0}.mobile-header-right button:active,.mobile-config-btn:active{background:var(--white-6)}#upgrade-btn-mobile{color:#f4c36f;letter-spacing:.08em;background:#f59e0b14;border-color:#f59e0b38;width:auto;min-width:36px;padding:0 7px;font-size:9px}.main-area{margin-top:var(--mobile-app-header-height)}}.preview-container.drag-over .placeholder-upload-area{box-shadow:0 0 0 3px rgba(var(--accent-primary-rgb), .15);transform:scale(1.02)}.preview-container.drag-over{box-shadow:0 4px 28px #0000008c, 0 1px 6px #00000059, 0 0 0 2px rgba(var(--accent-primary-rgb), .2)}:root{--ease-out-expo:cubic-bezier(.16, 1, .3, 1);--ease-out-quart:cubic-bezier(.25, 1, .5, 1);--ease-in-out-circ:cubic-bezier(.85, 0, .15, 1)}.btn-primary,.btn,.effect-card,.mode-tab,.dim-btn,.mobile-dim-btn,.mobile-mode-tab,.template-card{transition:background var(--transition-fast) var(--ease-out-quart), border-color var(--transition-fast) var(--ease-out-quart), color var(--transition-fast) var(--ease-out-quart), box-shadow var(--transition-fast) var(--ease-out-quart), opacity var(--transition-fast) var(--ease-out-quart), transform var(--transition-fast) var(--ease-out-quart)}.bottom-sheet{transition:transform var(--transition-normal) var(--ease-out-expo), opacity var(--transition-fast) var(--ease-out-quart)}.settings,.sidebar{transition:width var(--transition-normal) var(--ease-out-expo)}:focus-visible{border-radius:0}button:focus-visible{outline:2px solid var(--accent-primary);outline-offset:2px;box-shadow:0 0 0 4px rgba(var(--accent-primary-rgb), .18)}.effect-card.loading{background:var(--bg-elevated);pointer-events:none;animation:1.5s ease-in-out infinite skeleton-shimmer}.effect-card.loading img,.effect-card.loading span,.effect-card.loading .effect-label{opacity:0;transition:none}.scene-duration{color:var(--text-tertiary);opacity:.55;font-variant-numeric:tabular-nums;letter-spacing:.02em;font-size:10px;font-weight:400;line-height:1}button svg,a svg,label svg{flex-shrink:0;display:block}.placeholder-icon{transform:translateY(-1px)}.truncate{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.preview-container canvas,.preview-container #live-preview-canvas,.preview-container #collage-canvas{box-shadow:none;border:none;border-radius:0}.info-bar .info-badge,.scene-duration,.scene-info{color:var(--text-tertiary);opacity:.6;font-size:11px;font-weight:400}button span:not(.icon):not(.dim-icon),.timeline-scene-label,.template-card span,.info-badge{text-overflow:ellipsis;white-space:nowrap;max-width:100%;overflow:hidden}@media (hover:hover) and (pointer:fine){.effect-card:hover,.template-card:hover{background:var(--white-4);box-shadow:0 1px 6px #0000002e}.mode-tab:hover:not(.active){background:var(--white-4);color:var(--text-secondary)}.generate-btn:not(:disabled):hover{box-shadow:0 4px 16px rgba(var(--accent-primary-rgb), .3)}}#result-panel,.timeline-wrapper,.text-edit-bar{background:var(--bg-secondary);border:1px solid var(--border-subtle)}#result-panel,.timeline-wrapper,.text-edit-bar,.dl-format-card,.dl-format-grid,.result-quality,.dimension-switcher,.result-secondary-actions,#result-panel .btn-download,#result-panel .dim-switch-btn,#result-panel .result-action-btn{border-radius:0}#result-panel{gap:var(--spacing-compact);padding:var(--spacing-md)}.dl-format-grid{gap:var(--spacing-compact)}.dl-format-card{min-height:56px;padding:var(--spacing-sm);background:var(--bg-elevated);border-width:1px}#result-panel .result-secondary-actions{gap:var(--spacing-compact);padding-top:var(--spacing-compact);border-top:1px solid var(--border-subtle);margin-top:var(--spacing-compact)}#result-panel .result-action-btn{background:var(--bg-elevated);border:1px solid var(--border-subtle);width:36px;height:36px}.timeline-wrapper{padding:var(--spacing-sm) var(--spacing-md)}@media (width>=769px){.content-zone{gap:8px;max-height:172px;padding:10px 24px 14px}.timeline-wrapper{padding:8px 10px}.timeline-bar{min-height:20px;margin-bottom:4px}.timeline{gap:6px;padding:2px 0}.timeline-scene{height:40px}}.text-edit-bar{padding:var(--spacing-sm) var(--spacing-md);gap:var(--spacing-sm)}.unified-bar-controls select,.unified-bar-controls input[type=color]{background:var(--bg-elevated);border:1px solid var(--border-subtle);height:28px}.dl-format-grid,.result-quality,.dimension-switcher{background:0 0;border:none}#panel-export .export-panel-scroll{gap:10px;padding:14px 14px 18px}#panel-export .export-section .sidebar-section-label,#panel-export .export-mini-label{color:var(--text-tertiary);letter-spacing:.1em;margin-bottom:7px}#panel-export .dl-format-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:6px}#panel-export .dl-format-card{gap:3px;min-height:48px;padding:8px 6px}#panel-export .dl-format-card svg{width:15px;height:15px}#panel-export .dl-fmt-name{font-size:var(--font-size-xs);letter-spacing:.03em}#panel-export .dl-fmt-sub{font-size:10px}#panel-export .export-controls--compact{gap:8px}#panel-export .export-pills-row.quality-pills,#panel-export .cta-quality-row{gap:6px}#panel-export .quality-pill,#panel-export .cta-quality-pill{border-radius:0;height:34px;min-height:34px}#panel-export .export-info{background:#ffffff09;border-radius:0;align-items:center;min-height:34px;padding:8px 10px}#panel-export .export-info-main{color:var(--text-secondary);font-size:var(--font-size-xs)}#panel-export .generate-btn{border-radius:0;min-height:48px}#panel-export .generate-btn .hint{font-size:var(--font-size-micro)}.export-advanced{border:1px solid var(--border-subtle);background:#ffffff06;border-radius:0;overflow:hidden}.export-advanced summary{min-height:34px;color:var(--text-secondary);cursor:pointer;font-size:var(--font-size-xs);justify-content:space-between;align-items:center;gap:8px;padding:0 10px;font-weight:650;list-style:none;display:flex}.export-advanced summary::-webkit-details-marker{display:none}.export-advanced summary:after{content:"+";color:var(--text-tertiary);font-size:var(--font-size-small);line-height:1}.export-advanced[open] summary{border-bottom:1px solid var(--border-subtle)}.export-advanced[open] summary:after{content:"-"}.export-advanced-hint{color:var(--text-tertiary);font-size:var(--font-size-micro);font-weight:500}.export-advanced .export-row--detail{padding:10px 10px 0}.export-advanced .cta-timing-row{background:#ffffff06;border-radius:0;gap:8px;margin:10px;padding:9px}.export-advanced .cta-timing-row.timing-hidden,.export-advanced .cta-timing-row[data-hidden=true]{margin:0 10px}:is(#panel-export:has(.dl-format-card[data-format=mp4].active) .export-row--detail,#panel-export:has(.dl-format-card[data-format=webm].active) .export-row--detail){display:none}#result-panel{border-color:var(--border-subtle);background:#ffffff09;gap:8px;padding:12px}#result-panel .result-ready-row{justify-content:space-between;align-items:center;gap:8px;min-width:0;display:flex}#result-panel .result-ready-label{color:var(--accent-primary);font-size:var(--font-size-micro);letter-spacing:.1em;text-transform:uppercase;flex:none;font-weight:800}#result-panel .result-info{text-align:right;text-overflow:ellipsis;white-space:nowrap;min-width:0;color:var(--text-secondary);font-size:var(--font-size-xs);overflow:hidden}#result-panel .result-tools-label{color:var(--text-tertiary);font-size:var(--font-size-micro);letter-spacing:.08em;text-transform:uppercase;font-weight:700;line-height:1}#result-panel:has(#result-dim-switcher.is-hidden) .result-tools-label{display:none}#result-panel .result-quality,#result-panel .dimension-switcher{gap:5px}.timeline .timeline-scene{box-sizing:border-box;border-left-width:1px;border-radius:0;align-items:center;gap:6px;min-width:118px;max-width:150px;height:40px;min-height:40px;padding:0 8px;transform:none}.timeline .timeline-scene.active{box-shadow:0 0 0 1px var(--accent-primary);border-left-width:1px;transform:none}.timeline .scene-top{flex:none;grid-template-columns:24px 24px;align-items:center;gap:4px;display:grid}.timeline .scene-num,.timeline .scene-loop-badge{box-sizing:border-box;border-radius:0;justify-content:center;align-items:center;width:24px;min-width:24px;height:24px;min-height:24px;margin:0;padding:0;font-size:11px;line-height:1;display:inline-flex}.timeline .scene-loop-badge{color:var(--text-tertiary);background:#ffffff14;border:1px solid #ffffff14}.timeline .scene-info-bar{justify-content:center;min-width:0}.timeline .scene-effect-name,.timeline .scene-meta{line-height:1.1}.timeline .scene-meta{color:var(--text-secondary);font-size:11px}.timeline .scene-preview-container{display:none}#result-panel .result-quality{margin-bottom:0}#result-panel .dim-switch-btn{height:32px;min-height:32px;font-size:var(--font-size-xs);border-radius:0;padding:0 7px}#result-panel .btn-download{height:42px;min-height:42px;font-size:var(--font-size-small);border-radius:0;margin-top:2px;font-weight:800}#result-panel .result-secondary-actions{border-top:0;grid-template-columns:repeat(3,minmax(0,1fr));gap:6px;margin-top:0;padding-top:0;display:grid}#result-panel .result-secondary-actions:has(#result-loop-btn:not(.is-hidden)){grid-template-columns:repeat(4,minmax(0,1fr))}#result-panel .result-action-btn{border-radius:0;gap:5px;width:auto;height:40px;min-height:40px;padding:0 7px}#result-panel .result-action-btn svg{width:13px;height:13px}#result-panel .result-action-btn .action-label{font-size:10px;font-weight:700}@media (width<=768px){#panel-export .export-panel-scroll{gap:9px;padding:12px}#panel-export .dl-format-card,#panel-export .quality-pill,#panel-export .cta-quality-pill,#result-panel .dim-switch-btn,#result-panel .btn-download,#result-panel .result-action-btn{min-height:40px}#result-panel .result-ready-row{flex-direction:column;align-items:flex-start;gap:4px}#result-panel .result-info{text-align:left;white-space:normal}html,body{width:100%;max-width:100%;overflow-x:hidden}.mobile-header{display:flex}.mobile-mode-tabs{width:auto;min-width:0;height:auto;min-height:32px;display:flex}.app{flex-direction:column;width:100%;max-width:100vw;height:auto;min-height:100svh;display:flex;overflow-x:hidden}.main-area,.content-zone,.preview-zone{width:100%;min-width:0;max-width:100vw}.sidebar,.settings{width:100%;max-width:100vw;position:fixed;bottom:0;left:0;right:0;transform:translateY(100%)}.sidebar.open,.settings.open{transform:translateY(0)}.mobile-fixed-cta .generate-btn{background:linear-gradient(180deg, var(--accent-primary) 0%, var(--accent-primary-hover) 100%);color:#fff;letter-spacing:.02em;box-shadow:0 2px 12px rgba(var(--accent-primary-rgb), .25), inset 0 1px 0 #ffffff1f;border:none;font-size:15px;font-weight:700}.mobile-fixed-cta .generate-btn:active{box-shadow:0 1px 6px rgba(var(--accent-primary-rgb), .2);transform:scale(.98)}body[data-mode=text] .preview-text-input,body[data-mode=lyrics] .preview-text-input{display:block}.preview-container{width:min(clamp(180px,48vmin,360px),100vw - 24px)}.watermark-badge{color:#ffffff59;background:#00000080;padding:2px 6px;font-size:9px;top:auto;bottom:4px;left:4px}.mobile-dim-bar{z-index:auto;-webkit-backdrop-filter:none;background:0 0;border-top:none;flex-wrap:nowrap;justify-content:center;gap:6px;padding:4px 12px;position:relative;bottom:auto;left:auto;right:auto;overflow-x:auto}.mobile-dim-btn{border:1px solid var(--border-subtle);background:var(--bg-secondary);min-width:32px;min-height:32px;color:var(--text-tertiary);padding:6px 10px;font-size:10px;font-weight:600}.mobile-dim-btn.active{border-color:var(--accent-primary);color:var(--accent-primary);background:#0e74901f}.mobile-template-carousel{-webkit-mask-image:linear-gradient(90deg,#0000 0%,#000 6% 94%,#0000 100%);mask-image:linear-gradient(90deg,#0000 0%,#000 6% 94%,#0000 100%)}.mc-label{text-transform:capitalize}.placeholder-text{font-size:13px}.placeholder-subtext{color:var(--text-tertiary);font-size:11px}.mobile-cta-spacer{height:calc(var(--mobile-cta-height,72px) + var(--mobile-carousel-height,104px))}.bottom-sheet-handle{padding:8px 0 4px}.bottom-sheet-handle-bar{width:28px;height:3px}.info-bar{gap:6px;padding:4px 0}.mobile-config-btn--cta{display:none}.mobile-fixed-cta{padding:8px 12px;padding-bottom:calc(8px + var(--mobile-safe-bottom,0px))}.mobile-fixed-cta .cta-inner,.mobile-fixed-cta .generate-btn{width:100%}.text-edit-bar{z-index:5;position:relative}.unified-text-input{background:var(--bg-primary);border:1px solid var(--border-subtle)}.unified-text-input:focus{border-color:var(--accent-primary);box-shadow:0 0 0 2px rgba(var(--accent-primary-rgb), .12)}.main-area{background:0 0!important}.placeholder-text,.placeholder-subtext{font-size:0}.placeholder-text:after{content:"Tap to add your photos";color:var(--text-secondary);font-size:14px;display:block}.placeholder-subtext:after{content:"or use the button below";color:var(--text-tertiary);font-size:12px;display:block}.toolbar-group select,.toolbar-group input[type=color],.undo-redo-btn{display:none}.effect-card span,.mc-label{text-overflow:ellipsis;white-space:nowrap;max-width:100%;overflow:hidden}}*,:before,:after,::backdrop{--tw-border-spacing-x:0;--tw-border-spacing-y:0;--tw-translate-x:0;--tw-translate-y:0;--tw-rotate:0;--tw-skew-x:0;--tw-skew-y:0;--tw-scale-x:1;--tw-scale-y:1;--tw-pan-x: ;--tw-pan-y: ;--tw-pinch-zoom: ;--tw-scroll-snap-strictness:proximity;--tw-gradient-from-position: ;--tw-gradient-via-position: ;--tw-gradient-to-position: ;--tw-ordinal: ;--tw-slashed-zero: ;--tw-numeric-figure: ;--tw-numeric-spacing: ;--tw-numeric-fraction: ;--tw-ring-inset: ;--tw-ring-offset-width:0px;--tw-ring-offset-color:#fff;--tw-ring-color:#3b82f680;--tw-ring-offset-shadow:0 0 #0000;--tw-ring-shadow:0 0 #0000;--tw-shadow:0 0 #0000;--tw-shadow-colored:0 0 #0000;--tw-blur: ;--tw-brightness: ;--tw-contrast: ;--tw-grayscale: ;--tw-hue-rotate: ;--tw-invert: ;--tw-saturate: ;--tw-sepia: ;--tw-drop-shadow: ;--tw-backdrop-blur: ;--tw-backdrop-brightness: ;--tw-backdrop-contrast: ;--tw-backdrop-grayscale: ;--tw-backdrop-hue-rotate: ;--tw-backdrop-invert: ;--tw-backdrop-opacity: ;--tw-backdrop-saturate: ;--tw-backdrop-sepia: ;--tw-contain-size: ;--tw-contain-layout: ;--tw-contain-paint: ;--tw-contain-style: }*,:before,:after{box-sizing:border-box;border:0 solid #e5e7eb}:before,:after{--tw-content:""}html,:host{-webkit-text-size-adjust:100%;tab-size:4;font-feature-settings:normal;font-variation-settings:normal;-webkit-tap-highlight-color:transparent;font-family:ui-sans-serif,system-ui,sans-serif,Apple Color Emoji,Segoe UI Emoji,Segoe UI Symbol,Noto Color Emoji;line-height:1.5}body{line-height:inherit;margin:0}hr{height:0;color:inherit;border-top-width:1px}abbr:where([title]){-webkit-text-decoration:underline dotted;text-decoration:underline dotted}h1,h2,h3,h4,h5,h6{font-size:inherit;font-weight:inherit}a{color:inherit;-webkit-text-decoration:inherit;text-decoration:inherit}b,strong{font-weight:bolder}code,kbd,samp,pre{font-feature-settings:normal;font-variation-settings:normal;font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,Liberation Mono,Courier New,monospace;font-size:1em}small{font-size:80%}sub,sup{vertical-align:baseline;font-size:75%;line-height:0;position:relative}sub{bottom:-.25em}sup{top:-.5em}table{text-indent:0;border-color:inherit;border-collapse:collapse}button,input,optgroup,select,textarea{font-feature-settings:inherit;font-variation-settings:inherit;font-family:inherit;font-size:100%;font-weight:inherit;line-height:inherit;letter-spacing:inherit;color:inherit;margin:0;padding:0}button,select{text-transform:none}button,input:where([type=button]),input:where([type=reset]),input:where([type=submit]){-webkit-appearance:button;background-color:#0000;background-image:none}:-moz-focusring{outline:auto}:-moz-ui-invalid{box-shadow:none}progress{vertical-align:baseline}::-webkit-inner-spin-button{height:auto}::-webkit-outer-spin-button{height:auto}[type=search]{-webkit-appearance:textfield;outline-offset:-2px}::-webkit-search-decoration{-webkit-appearance:none}::-webkit-file-upload-button{-webkit-appearance:button;font:inherit}summary{display:list-item}blockquote,dl,dd,h1,h2,h3,h4,h5,h6,hr,figure,p,pre{margin:0}fieldset{margin:0;padding:0}legend{padding:0}ol,ul,menu{margin:0;padding:0;list-style:none}dialog{padding:0}textarea{resize:vertical}input::-moz-placeholder{opacity:1;color:#9ca3af}textarea::-moz-placeholder{opacity:1;color:#9ca3af}input::placeholder,textarea::placeholder{opacity:1;color:#9ca3af}button,[role=button]{cursor:pointer}:disabled{cursor:default}img,svg,video,canvas,audio,iframe,embed,object{vertical-align:middle;display:block}img,video{max-width:100%;height:auto}[hidden]:where(:not([hidden=until-found])){display:none}.\!container{width:100%!important}.container{width:100%}@media (width>=640px){.\!container{max-width:640px!important}.container{max-width:640px}}@media (width>=768px){.\!container{max-width:768px!important}.container{max-width:768px}}@media (width>=1024px){.\!container{max-width:1024px!important}.container{max-width:1024px}}@media (width>=1280px){.\!container{max-width:1280px!important}.container{max-width:1280px}}@media (width>=1536px){.\!container{max-width:1536px!important}.container{max-width:1536px}}.\!visible{visibility:visible!important}.visible{visibility:visible}.invisible{visibility:hidden}.collapse{visibility:collapse}.static{position:static}.fixed{position:fixed}.absolute{position:absolute}.relative{position:relative}.sticky{position:sticky}.mb-8{margin-bottom:2rem}.mt-0{margin-top:0}.mt-8{margin-top:2rem}.block{display:block}.inline{display:inline}.flex{display:flex}.inline-flex{display:inline-flex}.table{display:table}.\!grid{display:grid!important}.grid{display:grid}.hidden{display:none}.min-h-screen{min-height:100vh}.shrink{flex-shrink:1}.border-collapse{border-collapse:collapse}.transform{transform:translate(var(--tw-translate-x), var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.animate-spin{animation:1s linear infinite spin}.resize{resize:both}.flex-wrap{flex-wrap:wrap}.gap-4{gap:1rem}.rounded{border-radius:.25rem}.border{border-width:1px}.bg-gray-950{--tw-bg-opacity:1;background-color:rgb(13 17 23/var(--tw-bg-opacity,1))}.font-inter{font-family:Inter Tight,system-ui,sans-serif}.uppercase{text-transform:uppercase}.italic{font-style:italic}.text-white{--tw-text-opacity:1;color:rgb(255 255 255/var(--tw-text-opacity,1))}.underline{text-decoration-line:underline}.shadow{--tw-shadow:0 1px 3px 0 #0000001a, 0 1px 2px -1px #0000001a;--tw-shadow-colored:0 1px 3px 0 var(--tw-shadow-color), 0 1px 2px -1px var(--tw-shadow-color);box-shadow:var(--tw-ring-offset-shadow,0 0 #0000), var(--tw-ring-shadow,0 0 #0000), var(--tw-shadow)}.outline{outline-style:solid}.ring{--tw-ring-offset-shadow:var(--tw-ring-inset) 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color);--tw-ring-shadow:var(--tw-ring-inset) 0 0 0 calc(3px + var(--tw-ring-offset-width)) var(--tw-ring-color);box-shadow:var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow,0 0 #0000)}.blur{--tw-blur:blur(8px);filter:var(--tw-blur) var(--tw-brightness) var(--tw-contrast) var(--tw-grayscale) var(--tw-hue-rotate) var(--tw-invert) var(--tw-saturate) var(--tw-sepia) var(--tw-drop-shadow)}.drop-shadow{--tw-drop-shadow:drop-shadow(0 1px 2px #0000001a) drop-shadow(0 1px 1px #0000000f);filter:var(--tw-blur) var(--tw-brightness) var(--tw-contrast) var(--tw-grayscale) var(--tw-hue-rotate) var(--tw-invert) var(--tw-saturate) var(--tw-sepia) var(--tw-drop-shadow)}.filter{filter:var(--tw-blur) var(--tw-brightness) var(--tw-contrast) var(--tw-grayscale) var(--tw-hue-rotate) var(--tw-invert) var(--tw-saturate) var(--tw-sepia) var(--tw-drop-shadow)}.backdrop-filter{-webkit-backdrop-filter:var(--tw-backdrop-blur) var(--tw-backdrop-brightness) var(--tw-backdrop-contrast) var(--tw-backdrop-grayscale) var(--tw-backdrop-hue-rotate) var(--tw-backdrop-invert) var(--tw-backdrop-opacity) var(--tw-backdrop-saturate) var(--tw-backdrop-sepia);backdrop-filter:var(--tw-backdrop-blur) var(--tw-backdrop-brightness) var(--tw-backdrop-contrast) var(--tw-backdrop-grayscale) var(--tw-backdrop-hue-rotate) var(--tw-backdrop-invert) var(--tw-backdrop-opacity) var(--tw-backdrop-saturate) var(--tw-backdrop-sepia)}.transition{transition-property:color,background-color,border-color,text-decoration-color,fill,stroke,opacity,box-shadow,transform,filter,-webkit-backdrop-filter,backdrop-filter;transition-duration:.15s;transition-timing-function:cubic-bezier(.4,0,.2,1)}.ease-in-out{transition-timing-function:cubic-bezier(.4,0,.2,1)}@font-face{font-family:Bricolage Grotesque;src:url(/assets/BricolageGrotesque-Variable-IeJf__1j.ttf)format("truetype");font-weight:100 900;font-display:swap}@font-face{font-family:Fraunces;src:url(/assets/Fraunces-Variable-BR5x10i8.ttf)format("truetype");font-weight:100 900;font-display:swap}@font-face{font-family:Contrail One;src:url(/assets/ContrailOne-Regular-Bz6mq_JP.ttf)format("truetype");font-weight:400;font-display:swap}@font-face{font-family:Barrio;src:url(/assets/Barrio-Regular-Cy983OHQ.ttf)format("truetype");font-weight:400;font-display:block}@font-face{font-family:Unbounded;src:url(/assets/Unbounded-Variable-BHPQLmif.ttf)format("truetype");font-weight:100 900;font-display:swap}@font-face{font-family:Bebas Neue;src:url(/assets/BebasNeue-Regular-Cr4gADsU.ttf)format("truetype");font-weight:400;font-display:block}@font-face{font-family:Pacifico;src:url(/assets/Pacifico-Regular-BPhFUkGB.ttf)format("truetype");font-weight:400;font-display:block}.toast-container{z-index:var(--z-toast);pointer-events:none;flex-direction:column;gap:8px;max-width:400px;display:flex;position:fixed;top:16px;right:16px}.toast{font-size:var(--font-size-small);-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);pointer-events:auto;opacity:0;border-radius:0;align-items:center;gap:10px;padding:12px 16px;font-weight:500;transition:opacity .25s,transform .25s;display:flex;transform:translate(20px);box-shadow:0 4px 24px #0000004d}.toast-show{opacity:1;transform:translate(0)}.toast-hide{opacity:0;transform:translate(20px)}.toast-success{background:var(--color-success-bg);border:1px solid var(--color-success-border);color:var(--color-success)}.toast-error{background:var(--color-error-bg);border:1px solid var(--color-error-border);color:var(--color-error)}.toast-info{background:var(--color-info-bg);border:1px solid var(--color-info-border);color:var(--color-info)}.toast-warning{background:var(--color-warning-bg);border:1px solid var(--color-warning-border);color:var(--color-warning)}.toast-icon{flex-shrink:0;align-items:center;display:flex}.toast-msg{flex:1;line-height:1.4}.toast-close{color:inherit;opacity:.5;cursor:pointer;background:0 0;border:none;flex-shrink:0;padding:0 2px;font-size:1.1rem;line-height:1}.toast-close:hover{opacity:1}.auth-modal-overlay{z-index:var(--z-modal);display:none;position:fixed;inset:0}.auth-modal-overlay.active{opacity:1;-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);background:#000000b3;justify-content:center;align-items:center;display:flex}.auth-modal{background:var(--bg-primary);border:1px solid #ffffff14;border-radius:0;width:100%;max-width:400px;padding:40px 36px 32px;transition:transform .2s;position:relative;transform:scale(.95);box-shadow:0 24px 64px #00000080}.auth-modal-overlay.active .auth-modal{transform:scale(1)}.auth-modal-close{color:#fff6;cursor:pointer;background:0 0;border:none;padding:4px;font-size:1.5rem;line-height:1;position:absolute;top:16px;right:16px}.auth-modal-close:hover{color:#fffc}.auth-modal-header{text-align:center;margin-bottom:28px}.auth-logo{letter-spacing:-.03em;color:#fff;margin-bottom:8px;font-size:1.5rem;font-weight:800;display:block}.auth-modal-header h2{color:#fff;margin:8px 0 4px;font-size:1.25rem;font-weight:700}.auth-subtitle{font-size:var(--font-size-small);color:#ffffff73}.auth-form{flex-direction:column;gap:16px;display:flex}.auth-field label{font-size:var(--font-size-xs);color:#fff9;text-transform:uppercase;letter-spacing:.04em;margin-bottom:6px;font-weight:600;display:block}.auth-field input{color:#fff;width:100%;font-size:var(--font-size-body-sm);box-sizing:border-box;background:#ffffff0a;border:1px solid #ffffff1a;border-radius:0;outline:none;padding:12px 14px;transition:border-color .15s}.auth-field input:focus{border-color:#ffffff40}.auth-field input::placeholder{color:#fff3}.auth-error{font-size:var(--font-size-small);color:var(--color-error);background:#ef44441a;border:1px solid #ef444433;border-radius:0;padding:10px 14px}.auth-submit{width:100%;padding:var(--spacing-md);background:var(--text-primary);color:var(--bg-primary);font-size:var(--font-size-body-sm);cursor:pointer;border:none;border-radius:0;font-weight:700;transition:opacity .15s}.auth-submit:hover{opacity:.9}.auth-submit:disabled{opacity:.5;cursor:not-allowed}.auth-divider{align-items:center;gap:12px;margin:16px 0;display:flex}.auth-divider:before,.auth-divider:after{content:"";background:#ffffff14;flex:1;height:1px}.auth-divider span{font-size:var(--font-size-xs);color:#ffffff4d;text-transform:uppercase;letter-spacing:.05em}.auth-google{color:#fff;width:100%;font-size:var(--font-size-small);cursor:pointer;background:#ffffff0f;border:1px solid #ffffff1a;border-radius:0;justify-content:center;align-items:center;gap:10px;padding:11px;font-weight:500;transition:background .15s;display:flex}.auth-google:hover{background:#ffffff1a}.auth-forgot{color:#fff6;font-size:var(--font-size-small);cursor:pointer;text-align:center;background:0 0;border:none;margin-top:4px;display:block}.auth-forgot:hover{color:#ffffffb3}.auth-switch{text-align:center;font-size:var(--font-size-small);color:#fff6;margin-top:8px}.auth-switch button{color:#fff;cursor:pointer;text-underline-offset:2px;background:0 0;border:none;font-weight:600;text-decoration:underline}.desktop-auth-left{align-items:center;gap:var(--spacing-sm);display:flex}#help-btn,#help-btn-mobile{border:1px solid var(--border-default);background:linear-gradient(180deg, var(--bg-elevated) 0%, #ffffff05 100%);color:var(--text-secondary);font-size:var(--font-size-small);cursor:pointer;white-space:nowrap;border-radius:0;align-items:center;gap:6px;padding:8px 14px;font-weight:600;transition:background .15s,color .15s,border-color .15s,transform .15s;display:flex}#help-btn:hover,#help-btn-mobile:hover{background:var(--white-8);border-color:var(--border-hover);color:var(--text-primary);transform:translateY(-1px)}.auth-btn{background:linear-gradient(180deg, var(--bg-elevated) 0%, #ffffff05 100%);border:1px solid var(--border-default);color:var(--text-secondary);font-size:var(--font-size-small);cursor:pointer;white-space:nowrap;border-radius:0;align-items:center;gap:6px;padding:8px 14px;font-weight:600;transition:background .15s,color .15s,border-color .15s,transform .15s;display:flex}.auth-btn:hover{background:var(--white-8);border-color:var(--border-hover);color:var(--text-primary);transform:translateY(-1px)}.auth-avatar{background:linear-gradient(135deg, var(--color-avatar-from) 0%, var(--color-avatar-to) 100%);width:28px;height:28px;font-size:var(--font-size-small);color:var(--text-on-accent);border-radius:0;justify-content:center;align-items:center;font-weight:700;display:flex}.auth-avatar-sm{background:linear-gradient(135deg, var(--color-avatar-from) 0%, var(--color-avatar-to) 100%);width:24px;height:24px;font-size:var(--font-size-xs);color:var(--text-on-accent);border-radius:0;justify-content:center;align-items:center;font-weight:700;display:flex}.user-menu-dropdown{z-index:var(--z-drawer);background:var(--bg-secondary);border:1px solid #ffffff1a;border-radius:0;min-width:200px;padding:8px;position:fixed;box-shadow:0 8px 32px #0006}.user-menu-email{font-size:var(--font-size-xs);color:#fff6;text-overflow:ellipsis;white-space:nowrap;padding:8px 12px;overflow:hidden}.user-menu-divider{background:#ffffff14;height:1px;margin:4px 0}.user-menu-item{color:#ffffffb3;width:100%;font-size:var(--font-size-small);cursor:pointer;text-align:left;background:0 0;border:none;border-radius:0;align-items:center;gap:10px;padding:10px 12px;transition:background .15s;display:flex}.user-menu-item:hover{color:#fff;background:#ffffff0f}.desktop-auth-bar{padding:10px var(--space-2);border-bottom:1px solid var(--border-default);z-index:var(--z-mobile-header);-webkit-backdrop-filter:blur(14px);background:linear-gradient(#0a0908fa 0%,#0a0908eb 100%);align-items:center;display:none;position:sticky;top:0}.desktop-logo{font-size:var(--font-size-h3);letter-spacing:-.03em;color:var(--text-primary);margin-left:var(--spacing-sm);font-weight:800;text-decoration:none}.logo-inf{letter-spacing:-.06em;margin:0 -.01em;font-family:inherit;font-size:1.1em;font-style:normal;font-weight:900;display:inline-block;transform:scaleX(1.15)translateY(-.03em)}@media (width>=769px){.desktop-auth-bar{display:flex}}.dashboard-overlay{z-index:var(--z-modal);-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);opacity:0;background:#0009;justify-content:center;align-items:flex-start;padding-top:60px;transition:opacity .2s;display:none;position:fixed;inset:0}.dashboard-overlay.active{opacity:1}.dashboard-panel{background:var(--bg-primary);border:1px solid #ffffff14;border-radius:0;width:100%;max-width:520px;max-height:80vh;transition:transform .2s;overflow-y:auto;transform:translateY(-10px);box-shadow:0 24px 64px #00000080}.dashboard-overlay.active .dashboard-panel{transform:translateY(0)}.dash-header{border-bottom:1px solid #ffffff0f;justify-content:space-between;align-items:center;padding:24px 28px 16px;display:flex}.dash-header h2{font-size:var(--font-size-h3);color:#fff;margin:0;font-weight:700}.dash-close{color:#fff6;cursor:pointer;background:0 0;border:none;padding:4px;font-size:1.5rem;line-height:1}.dash-close:hover{color:#fff}.dash-section{padding:20px 28px}.dash-section h3{font-size:var(--font-size-small);color:#ffffff80;text-transform:uppercase;letter-spacing:.05em;margin:0 0 14px;font-weight:600}.dash-stats{grid-template-columns:repeat(4,1fr);gap:12px;display:grid}.dash-stat{text-align:center;background:#ffffff08;border:1px solid #ffffff0f;border-radius:0;padding:16px 8px}.dash-stat-val{font-size:var(--font-size-h2);color:#fff;letter-spacing:-.02em;font-weight:800;display:block}.dash-stat-label{font-size:var(--font-size-micro);color:#ffffff59;text-transform:uppercase;letter-spacing:.04em;margin-top:4px;display:block}.dash-empty{color:#ffffff4d;font-size:var(--font-size-small);text-align:center;padding:24px 0}.dash-history{flex-direction:column;gap:8px;display:flex}.dash-history-item{background:#ffffff08;border:1px solid #ffffff0d;border-radius:0;align-items:center;gap:12px;padding:10px 12px;display:flex}.dash-thumb{-o-object-fit:cover;object-fit:cover;background:#ffffff0d;border-radius:0;width:44px;height:44px}.dash-thumb-placeholder{background:#ffffff0d;border-radius:0;width:44px;height:44px}.dash-history-info{flex:1;min-width:0}.dash-history-text{font-size:var(--font-size-small);color:#fffc;white-space:nowrap;text-overflow:ellipsis;display:block;overflow:hidden}.dash-history-meta{font-size:var(--font-size-xs);color:#ffffff4d;margin-top:2px;display:block}.dash-actions{border-top:1px solid #ffffff0f;gap:10px;padding-top:20px;display:flex}.dash-action-btn{font-size:var(--font-size-small);cursor:pointer;background:var(--text-primary);color:var(--bg-primary);border:none;border-radius:0;flex:1;justify-content:center;align-items:center;gap:8px;padding:11px;font-weight:600;transition:opacity .15s;display:flex}.dash-action-btn:hover{opacity:.9}.dash-action-secondary{color:#ffffffb3;background:#ffffff0f;border:1px solid #ffffff1a}.pricing-overlay{z-index:var(--z-modal);-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);opacity:0;background:#000000b3;justify-content:center;align-items:center;transition:opacity .2s;display:none;position:fixed;inset:0}.pricing-overlay.active{opacity:1;display:flex}.pricing-panel{background:var(--bg-primary);border:1px solid #ffffff14;border-radius:0;width:100%;max-width:780px;max-height:90vh;padding:40px 32px 36px;transition:transform .2s;position:relative;overflow-y:auto;transform:translateY(-10px);box-shadow:0 32px 80px #0009}.pricing-overlay.active .pricing-panel{transform:translateY(0)}.pricing-close{color:#ffffff4d;font-size:var(--font-size-h1);cursor:pointer;background:0 0;border:none;line-height:1;position:absolute;top:16px;right:20px}.pricing-close:hover{color:#fff}.pricing-header{text-align:center;margin-bottom:32px}.pricing-header h2{font-size:var(--font-size-h1);color:#fff;letter-spacing:-.02em;margin:0 0 6px;font-weight:800}.pricing-header p{color:#ffffff59;font-size:var(--font-size-small);margin:0}.pricing-cards{grid-template-columns:repeat(3,1fr);gap:16px;display:grid}.pricing-card{background:#ffffff08;border:1px solid #ffffff0f;border-radius:0;flex-direction:column;padding:28px 22px 24px;display:flex;position:relative}.pricing-card-popular{background:#ffffff0d;border-color:#fff3}.pricing-badge{color:#000;font-size:var(--font-size-micro);text-transform:uppercase;letter-spacing:.04em;background:#fff;border-radius:0;padding:3px 12px;font-weight:700;position:absolute;top:-10px;left:50%;transform:translate(-50%)}.pricing-card-name{font-size:var(--font-size-body-sm);color:#fff9;text-transform:uppercase;letter-spacing:.04em;margin-bottom:8px;font-weight:700}.pricing-card-price{margin-bottom:20px}.pricing-amount{font-size:var(--font-size-hero);color:#fff;letter-spacing:-.03em;font-weight:800}.pricing-period{font-size:var(--font-size-small);color:#ffffff4d}.pricing-features{flex:1;margin:0 0 24px;padding:0;list-style:none}.pricing-features li{font-size:var(--font-size-small);color:#ffffff80;border-bottom:1px solid #ffffff0a;padding:5px 0}.pricing-features li:last-child{border-bottom:none}.pricing-features li strong{color:#fffc}.pricing-btn{width:100%;font-size:var(--font-size-small);cursor:pointer;border:none;border-radius:0;padding:11px;font-weight:700;transition:opacity .15s}.pricing-btn:hover{opacity:.9}.pricing-btn:disabled{opacity:.3;cursor:default}.pricing-btn-free{color:#fff6;background:#ffffff0f}.pricing-btn-primary{background:var(--text-primary);color:var(--bg-primary)}.pricing-btn-secondary{color:#fff;background:#ffffff1a;border:1px solid #ffffff26}@media (width<=768px){.pricing-panel{margin:12px;padding:32px 16px 28px}.pricing-cards{grid-template-columns:1fr;gap:12px}}.onboarding-hint{z-index:var(--z-onboarding);opacity:0;pointer-events:none;transition:opacity .3s,transform .3s;position:fixed;bottom:24px;left:50%;transform:translate(-50%)translateY(20px)}.onboarding-hint.show{opacity:1;pointer-events:auto;transform:translate(-50%)translateY(0)}.onboarding-content{background:var(--bg-secondary);border:1px solid #ffffff1a;border-radius:0;flex-direction:column;gap:10px;min-width:280px;padding:20px 24px 16px;display:flex;box-shadow:0 12px 40px #00000080}.onboarding-step{font-size:var(--font-size-small);color:#ffffffb3;align-items:center;gap:12px;display:flex}.onboarding-num{width:24px;height:24px;font-size:var(--font-size-xs);color:#ffffff80;background:#ffffff14;border-radius:0;flex-shrink:0;justify-content:center;align-items:center;font-weight:700;display:flex}.onboarding-dismiss{color:#fff9;font-size:var(--font-size-small);cursor:pointer;background:#ffffff14;border:1px solid #ffffff1a;border-radius:0;align-self:flex-end;margin-top:8px;padding:8px 16px;font-weight:600;transition:background .15s}.onboarding-dismiss:hover{color:#fff;background:#ffffff1f}.pricing-loading,.dash-loading{flex-direction:column;justify-content:center;align-items:center;gap:16px;padding:60px 20px;display:flex}.pricing-spinner,.dash-spinner{border:3px solid #ffffff1a;border-top-color:#fff;border-radius:0;width:32px;height:32px;animation:.8s linear infinite spin}.pricing-loading p,.dash-loading p{color:#fff6;font-size:var(--font-size-small);margin:0}.pricing-success{max-width:420px}.pricing-success-content{text-align:center;padding:20px 0}.pricing-success-icon{margin-bottom:16px;font-size:3.5rem}.pricing-success-content h2{color:#fff;margin:0 0 8px;font-size:1.5rem;font-weight:800}.pricing-success-content p{color:#ffffff80;font-size:var(--font-size-body-sm);margin:0 0 24px}.pricing-success-perks{text-align:left;margin:0 0 28px;padding:0;list-style:none}.pricing-success-perks li{font-size:var(--font-size-small);color:#ffffffb3;border-bottom:1px solid #ffffff0f;padding:8px 0}.pricing-success-perks li:last-child{border-bottom:none}.pricing-banner{font-size:var(--font-size-small);border-radius:0;justify-content:space-between;align-items:center;gap:12px;margin-bottom:24px;padding:12px 16px;display:flex}.pricing-banner span{flex:1}.pricing-banner-btn{color:#fff;font-size:var(--font-size-xs);cursor:pointer;background:#ffffff26;border:none;border-radius:0;padding:6px 14px;font-weight:600;transition:background .15s}.pricing-banner-btn:hover{background:#ffffff40}.pricing-banner-info{color:#93c5fde6;background:#3b82f626;border:1px solid #3b82f64d}.pricing-banner-warning{color:#fde047e6;background:#f59e0b26;border:1px solid #f59e0b4d}.pricing-banner-error{color:#fca5a5e6;background:#ef444426;border:1px solid #ef44444d}.pricing-card-current{background:#22c55e14;border-color:#22c55e66}.dash-user-info{border-bottom:1px solid #ffffff0f;align-items:center;gap:14px;padding-bottom:20px;display:flex}.dash-avatar{width:48px;height:48px;font-size:var(--font-size-h3);color:#fff;background:linear-gradient(135deg,#6366f1,#8b5cf6);border-radius:0;flex-shrink:0;justify-content:center;align-items:center;font-weight:700;display:flex}.dash-user-details{flex:1;min-width:0}.dash-user-email{font-size:var(--font-size-body-sm);color:#fffc;white-space:nowrap;text-overflow:ellipsis;margin-bottom:4px;display:block;overflow:hidden}.dash-plan-badge{align-items:center;gap:8px;display:inline-flex}.dash-plan-name{font-size:var(--font-size-xs);text-transform:uppercase;letter-spacing:.04em;color:#fff9;background:#ffffff1a;border-radius:0;padding:3px 10px;font-weight:700}.dash-plan-free .dash-plan-name{background:#ffffff14}.dash-plan-creator .dash-plan-name{background:var(--color-creator-bg);color:var(--color-creator-text)}.dash-plan-pro .dash-plan-name{background:var(--color-pro-plan-bg);color:var(--color-pro-plan-text)}.dash-sub-status{font-size:var(--font-size-xs);color:#fff6}.dash-sub-active{color:#4ade80cc}.dash-sub-canceling{color:#fbbf24cc}.dash-sub-warning{color:#f87171cc}.dash-sub-free{color:#ffffff59}.dash-usage{flex-direction:column;gap:14px;display:flex}.dash-usage-header{justify-content:space-between;align-items:center;margin-bottom:6px;display:flex}.dash-usage-label{font-size:var(--font-size-xs);color:#ffffff80}.dash-usage-count{font-size:var(--font-size-xs);color:#ffffffb3;font-weight:600}.dash-usage-bar{background:#ffffff14;border-radius:0;height:6px;overflow:hidden}.dash-usage-fill{background:linear-gradient(90deg, var(--color-indigo), var(--color-indigo-to));border-radius:0;height:100%;transition:width .3s}.dash-action-primary{background:linear-gradient(135deg, var(--color-indigo), var(--color-indigo-to));color:var(--text-on-accent)}.dash-action-primary:hover{opacity:.9}@media (width<=768px){.auth-modal-overlay{align-items:flex-end;padding:0}.auth-modal{width:100%;max-width:100%;padding:32px 20px 24px;padding-bottom:max(24px, env(safe-area-inset-bottom));-webkit-overflow-scrolling:touch;border-radius:0;max-height:95dvh;margin:0;overflow-y:auto}.auth-modal-close{width:44px;height:44px;font-size:1.8rem;top:12px;right:12px}.auth-field input{min-height:48px;font-size:var(--font-size-h3);padding:14px 16px}.auth-submit{min-height:52px;font-size:var(--font-size-body)}.auth-google{min-height:48px}.toast-container{left:12px;right:12px;top:max(12px, env(safe-area-inset-top));max-width:none}.toast{width:100%;padding:14px 16px}.dashboard-overlay{align-items:flex-end;padding:0}.dashboard-panel{width:100%;max-width:100%;max-height:92dvh;padding-bottom:env(safe-area-inset-bottom);border-radius:0;margin:0}.dash-header{background:var(--bg-primary);z-index:var(--z-above);padding:20px 20px 14px;position:sticky;top:0}.dash-close{width:44px;height:44px;font-size:1.8rem}.dash-section{padding:16px 20px}.dash-stats{grid-template-columns:repeat(2,1fr);gap:10px}.dash-stat{padding:14px 10px}.dash-actions{flex-direction:column;gap:8px}.dash-action-btn{min-height:48px}.pricing-overlay{align-items:flex-end;padding:0}.pricing-panel{width:100%;max-width:100%;padding:28px 16px 24px;padding-bottom:max(24px, env(safe-area-inset-bottom));border-radius:0;max-height:95dvh;margin:0}.pricing-close{width:44px;height:44px;top:12px;right:16px}.pricing-header{margin-bottom:20px}.pricing-header h2{font-size:1.3rem}.pricing-cards{grid-template-columns:1fr;gap:14px}.pricing-card{padding:20px 18px}.pricing-btn{min-height:48px}.user-menu-dropdown{padding:12px;padding-bottom:max(12px, env(safe-area-inset-bottom));border-radius:0;max-height:70dvh;animation:.25s slideUpMenu;position:fixed;inset:auto 0 0}@keyframes slideUpMenu{0%{opacity:0;transform:translateY(100%)}to{opacity:1;transform:translateY(0)}}.user-menu-item{min-height:48px;padding:14px 16px}.onboarding-hint{bottom:80px;left:12px;right:12px;transform:translate(0)translateY(20px)}.onboarding-hint.show{transform:translate(0)translateY(0)}.onboarding-content{width:100%;min-width:auto}.onboarding-dismiss{width:100%;min-height:44px}.pricing-banner{text-align:center;flex-direction:column;gap:10px}.pricing-banner-btn{width:100%;min-height:44px}}@media (width>=769px) and (width<=1024px){.auth-modal{max-width:420px}.dashboard-panel{max-width:560px}.pricing-panel{max-width:700px;padding:36px 28px}.pricing-cards{grid-template-columns:repeat(2,1fr);gap:14px}.pricing-card:nth-child(3){grid-column:1/-1;max-width:340px;margin:0 auto}.dash-stats{grid-template-columns:repeat(4,1fr)}}@media (width>=769px){.desktop-auth-bar{height:48px;min-height:48px;box-shadow:none;background:#0d0d0cf0;border-bottom:1px solid #ffffff14;grid-template-columns:minmax(0,1fr) auto minmax(0,1fr);align-items:center;gap:10px;padding:0 12px;display:grid}.desktop-auth-left{grid-column:1;justify-self:start;gap:6px}.desktop-logo{letter-spacing:-.025em;grid-column:2;justify-self:center;margin:0;font-size:18px;line-height:1}.desktop-auth-bar .flex-spacer{display:none}.desktop-auth-bar #tablet-generate-cta,.desktop-auth-bar #a11y-toggle{grid-column:3;justify-self:end}.desktop-auth-bar #tablet-generate-cta{margin-right:42px}.desktop-auth-bar #help-btn,.desktop-auth-bar .auth-btn,.desktop-auth-bar .btn-upgrade-header,.desktop-auth-bar .a11y-toggle-btn,.desktop-auth-bar .tablet-generate-cta{height:32px;min-height:32px;box-shadow:none;border-radius:0;padding-top:0;padding-bottom:0;font-size:12px;line-height:1;transform:none}.desktop-auth-bar #auth-btn,.desktop-auth-bar #upgrade-btn{height:32px;min-height:32px}.desktop-auth-bar #help-btn,.desktop-auth-bar .auth-btn{color:#fafaf9ad;background:#ffffff09;border-color:#ffffff17;gap:6px;padding-left:10px;padding-right:10px;font-weight:600}.desktop-auth-bar #help-btn svg,.desktop-auth-bar .auth-btn svg{width:15px;height:15px}.desktop-auth-bar #help-btn:hover,.desktop-auth-bar .auth-btn:hover{color:#fafaf9eb;background:#fff1;border-color:#ffffff24;transform:none}}.lyrics-input{color:#fff;resize:vertical;background:#ffffff0d;border:1px solid #ffffff1a;border-radius:0;width:100%;padding:12px;font-family:Inter Tight,monospace;font-size:14px;line-height:1.6;transition:all .2s}.lyrics-input:focus{border-color:rgba(var(--accent-primary-rgb), .5);box-shadow:0 0 0 3px rgba(var(--accent-primary-rgb), .1);background:#ffffff14;outline:none}.lyrics-input::placeholder{color:#fff6}#lyric-block-editor{flex-direction:column;gap:6px;display:flex}#lyric-block-editor .lyric-editor-section{transition:opacity .16s,transform .16s}#lyric-block-editor .lyric-editor-section:not(.is-hidden){opacity:1;transform:translateY(0)}.lyric-common-control,#lyric-transition-group{border-top:1px solid #ffffff0f;padding-top:8px}#lyric-photo-pool-group,#lyric-block-text-group{border:1px solid rgba(var(--accent-primary-rgb), .18);background:rgba(var(--accent-primary-rgb), .055);border-radius:0;padding:10px}#lyric-quick-add{border-top:1px solid #ffffff12;flex-direction:column;gap:8px;margin-top:4px;padding-top:16px;display:flex}body[data-mode=lyrics] #sidebar-main-content{flex-direction:column;display:flex}body[data-mode=lyrics] #lyric-quick-add{order:1}body[data-mode=lyrics] #lyric-block-editor{order:2}body[data-mode=lyrics] #lyrics-section{order:3}body[data-mode=lyrics] #lyric-composer-switch{display:grid}.lyric-add-btn,.lyric-save-btn{justify-content:center;gap:8px;width:100%}.lyric-add-btn{border-color:rgba(var(--accent-primary-rgb), .45);background:rgba(var(--accent-primary-rgb), .14);color:var(--accent-primary)}.lyric-save-btn{min-height:40px;margin-top:4px}.lyric-save-btn.needs-action{background:rgba(var(--accent-primary-rgb), .18);border-color:rgba(var(--accent-primary-rgb), .55);color:var(--text-primary);box-shadow:0 0 0 1px rgba(var(--accent-primary-rgb), .12)}.lyric-save-btn.needs-action:focus-visible,.lyric-pool-upload-btn:focus-visible{outline:2px solid rgba(var(--accent-primary-rgb), .75);outline-offset:2px}.lyric-block-switch{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;margin-bottom:4px;display:grid}.lyric-block-switch-btn{border:1px solid var(--border-subtle);color:#fff9;background:0 0;border-radius:0;padding:10px 12px;font-size:13px;font-weight:600;transition:all .18s}.lyric-block-switch-btn[data-lyric-block-type=photo]{border-color:var(--border-subtle)}.lyric-block-switch-btn:hover{border-color:var(--border-default);color:#fffc;background:0 0}.lyric-block-switch-btn.active{background:var(--accent-primary);border-color:var(--accent-primary);color:#fff;box-shadow:none}.lyric-editor-section{margin-bottom:8px}.lyric-editor-section:last-child{margin-bottom:0}.setting-label-small{color:var(--text-secondary);text-transform:uppercase;letter-spacing:.5px;margin-bottom:6px;font-size:12px;font-weight:600;display:block}.lyric-section-header{justify-content:space-between;align-items:center;gap:8px;margin-bottom:6px;display:flex}.lyric-section-header .setting-label-small{margin-bottom:0}.lyric-section-action{border:1px solid rgba(var(--accent-primary-rgb), .28);background:rgba(var(--accent-primary-rgb), .08);min-height:26px;color:var(--accent-primary);cursor:pointer;border-radius:0;padding:0 9px;font-size:11px;font-weight:650}.lyric-section-action:hover{background:rgba(var(--accent-primary-rgb), .14);border-color:rgba(var(--accent-primary-rgb), .42)}.lyric-duration-control{align-items:center;gap:12px;display:flex}.lyric-duration-control input[type=range]{flex:1}.lyric-duration-card{background:rgba(var(--accent-primary-rgb), .08);border:1px solid rgba(var(--accent-primary-rgb), .25);border-radius:0;margin-bottom:10px;padding:10px 12px}.lyric-duration-header{justify-content:space-between;align-items:center;margin-bottom:8px;display:flex}.lyric-duration-label{text-transform:uppercase;letter-spacing:.6px;color:var(--text-secondary);font-size:11px;font-weight:700}.lyric-duration-range{width:100%;margin-bottom:4px}.lyric-duration-ticks{color:#ffffff4d;justify-content:space-between;margin-top:2px;font-size:10px;display:flex}.lyric-duration-value{background:rgba(var(--accent-primary-rgb), .2);min-width:48px;color:var(--accent-primary);text-align:center;border-radius:0;padding:4px 8px;font-size:13px;font-weight:600}.lyric-add-btn{width:100%;margin-top:4px}.lyric-text-input{width:100%}.lyric-block-status{background:rgba(var(--accent-primary-rgb), .18);width:fit-content;color:var(--text-primary);letter-spacing:.04em;text-transform:uppercase;border-radius:0;align-items:center;padding:5px 9px;font-size:12px;font-weight:700;display:inline-flex}#lyric-block-editor-hint.is-hidden{display:none}.lyric-block-status[data-state=needs-action]{background:rgba(var(--accent-primary-rgb), .24);color:var(--accent-primary)}#lyric-block-editor.lyric-focus-pulse{animation:1.2s ease-out lyric-editor-focus-pulse}.timeline-scene[data-scene-type=lyric].lyric-focus-pulse{animation:1.2s ease-out lyric-scene-focus-pulse}@keyframes lyric-editor-focus-pulse{0%{box-shadow:0 0 0 0 rgba(var(--accent-primary-rgb), .28)}45%{box-shadow:0 0 0 3px rgba(var(--accent-primary-rgb), .18)}to{box-shadow:0 0 0 0 rgba(var(--accent-primary-rgb), 0)}}@keyframes lyric-scene-focus-pulse{0%{box-shadow:0 0 0 2px rgba(var(--accent-primary-rgb), .55), 0 0 0 0 rgba(var(--accent-primary-rgb), .25)}to{box-shadow:0 0 0 2px rgba(var(--accent-primary-rgb), .4), 0 0 0 8px rgba(var(--accent-primary-rgb), 0)}}.lyric-next-action-pulse{animation:1.2s ease-out lyric-next-action-pulse}@keyframes lyric-next-action-pulse{0%{box-shadow:0 0 0 0 rgba(var(--accent-primary-rgb), .32);border-color:rgba(var(--accent-primary-rgb), .55)}55%{box-shadow:0 0 0 4px rgba(var(--accent-primary-rgb), .18);border-color:rgba(var(--accent-primary-rgb), .72)}to{box-shadow:0 0 0 0 rgba(var(--accent-primary-rgb), 0)}}@media (prefers-reduced-motion:reduce){#lyric-block-editor.lyric-focus-pulse,.timeline-scene[data-scene-type=lyric].lyric-focus-pulse,.lyric-next-action-pulse{animation:none}}.lyric-selected-effect{color:#ffffffc7;background:#ffffff0a;border:1px solid #ffffff1a;border-radius:0;padding:7px 9px;font-size:13px;line-height:1.4}body[data-mode=lyrics] .photo-lib-item{transition:border-color .18s,box-shadow .18s,transform .18s}body[data-mode=lyrics] .photo-lib-item[role=button]{cursor:pointer}body[data-mode=lyrics] .photo-lib-item[role=button]:hover{transform:translateY(-1px)}body[data-mode=lyrics] .photo-lib-item.selected{border-color:#2dd4bfe6;box-shadow:0 0 0 1px #2dd4bf73}.timeline-scene[data-scene-type=lyric]{border-left:1px solid var(--border-subtle)}.timeline-scene[data-scene-type=lyric].active{box-shadow:0 0 0 1px var(--accent-primary);background:rgba(var(--accent-primary-rgb), .08);border-left-width:1px;transform:none}.timeline-scene[data-scene-type=lyric] .scene-effect-name{color:var(--accent-primary)}.timeline-scene[data-scene-type=lyric].active .scene-effect-name{color:var(--text-primary);font-weight:600}.timeline-scene[data-scene-type=lyric] .scene-top{align-items:center}.timeline-scene[data-scene-type=lyric] .scene-loop-badge{justify-content:center;align-self:center;width:24px;min-width:24px;height:24px;min-height:0;max-height:24px;margin:0;padding:0}.lyric-duration-badge{background:rgba(var(--accent-primary-rgb), .3);color:var(--accent-primary);border-radius:0;padding:2px 6px;font-size:11px;font-weight:600}body[data-mode=lyrics] .settings #collage-templates,body[data-mode=lyrics] .settings #photos-section,body[data-mode=lyrics] .settings #text-section,body[data-mode=lyrics] .settings #collage-section,body[data-mode=lyrics] .settings #font-section,body[data-mode=lyrics] .settings #fontsize-section,body[data-mode=lyrics] .settings #color-section,body[data-mode=lyrics] .settings #background-section,body[data-mode=lyrics] .settings #aesthetic-section,body[data-mode=lyrics] .settings .toggle-row{display:none}body[data-mode=lyrics] .settings #lyrics-section:not(.is-hidden){display:block}body[data-mode=lyrics] .settings #lyric-quick-add:not(.is-hidden),body[data-mode=lyrics] .settings #lyric-block-editor:not(.is-hidden){display:flex}body:not([data-mode=lyrics]) .settings #lyrics-section,body:not([data-mode=lyrics]) .settings #lyric-quick-add,body:not([data-mode=lyrics]) .settings #lyric-block-editor{display:none}.color-picker-row{align-items:center;gap:8px;display:flex}.color-picker-row input[type=color]{cursor:pointer;background:0 0;border:1px solid #ffffff1a;border-radius:0;width:48px;height:36px}.color-picker-row input[type=text]{color:#fff;background:#ffffff0d;border:1px solid #ffffff1a;border-radius:0;flex:1;padding:8px 12px;font-family:JetBrains Mono,monospace;font-size:13px}.color-picker-row input[type=text]:focus{border-color:rgba(var(--accent-primary-rgb), .5);background:#ffffff14;outline:none}#lyric-block-editor select{appearance:none;width:100%;height:36px;min-height:36px;color:var(--text-primary);cursor:pointer;box-shadow:none;background-color:#ffffff0e;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='8' viewBox='0 0 12 8'%3E%3Cpath d='M1 1.5 6 6.5 11 1.5' fill='none' stroke='%23a8a29e' stroke-width='1.6' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E");background-position:right 12px center;background-repeat:no-repeat;background-size:12px 8px;border:1px solid #ffffff1a;border-radius:0;padding:0 34px 0 12px;font-size:13px;line-height:36px;transition:background-color .18s,border-color .18s,box-shadow .18s}#lyric-block-editor select:hover{background-color:#ffffff14;border-color:#fff3}#lyric-block-editor select:focus{border-color:rgba(var(--accent-primary-rgb), .5);box-shadow:0 0 0 3px rgba(var(--accent-primary-rgb), .1);outline:none}#lyric-block-editor select option{color:var(--text-primary);background:#171717}.lyric-pool-header{justify-content:space-between;align-items:center;margin-bottom:6px;display:flex}.lyric-pool-header .setting-label-small{margin-bottom:0}.lyric-pool-upload-btn{background:rgba(var(--accent-primary-rgb), .14);border:1px solid rgba(var(--accent-primary-rgb), .35);color:var(--accent-primary);cursor:pointer;border-radius:0;align-items:center;gap:5px;padding:5px 10px;font-size:12px;font-weight:600;transition:all .18s;display:flex}.lyric-pool-upload-btn:hover{background:rgba(var(--accent-primary-rgb), .24);border-color:rgba(var(--accent-primary-rgb), .55)}.lyric-pool-grid{grid-template-columns:repeat(4,minmax(0,1fr));gap:6px;margin-top:6px;display:grid}.lyric-pool-thumb{aspect-ratio:1;background:#ffffff0a;border:1px solid #ffffff14;border-radius:0;transition:border-color .15s;position:relative;overflow:hidden}.lyric-pool-thumb:hover{border-color:rgba(var(--accent-primary-rgb), .4)}.lyric-pool-thumb img{-o-object-fit:cover;object-fit:cover;width:100%;height:100%;display:block}.lyric-pool-remove{color:#ffffffd9;cursor:pointer;opacity:0;background:#000000b8;border:none;border-radius:50%;justify-content:center;align-items:center;width:20px;height:20px;line-height:1;transition:opacity .15s;display:flex;position:absolute;top:3px;right:3px}.lyric-pool-remove svg{pointer-events:none;width:11px;height:11px}.lyric-pool-thumb:hover .lyric-pool-remove{opacity:1}@media (hover:none),(pointer:coarse){.lyric-pool-remove{opacity:.85;width:32px;height:32px;top:4px;right:4px}.lyric-pool-remove svg{width:14px;height:14px}}@media (width<=768px){.lyrics-input{font-size:13px}.lyric-editor-section{gap:6px}#lyric-block-editor{gap:12px}}.lyric-step-header{justify-content:space-between;align-items:center;margin-bottom:4px;display:flex}.lyric-step-header .setting-label{margin-bottom:0}.lyric-step-close-btn{color:var(--text-tertiary);font-size:var(--font-size-small);cursor:pointer;border-radius:var(--radius-sm);background:0 0;border:none;padding:2px 6px;line-height:1;transition:color .15s,background .15s}.lyric-step-close-btn:hover{color:var(--text-primary);background:var(--surface-2)}.lyric-paste-lyrics-btn{border:1px solid var(--border-subtle);color:var(--text-secondary);font-size:var(--font-size-xs);cursor:pointer;border-radius:var(--radius-sm);background:0 0;padding:3px 8px;line-height:1.4;transition:color .15s,border-color .15s}.lyric-paste-lyrics-btn:hover{color:var(--text-primary);border-color:var(--border-default)}.lyric-split-btn{width:100%;margin-top:var(--space-3)}.seq-mobile-panel{gap:var(--space-2);width:100%;padding:var(--space-2) var(--space-3);flex-direction:column;display:flex}.seq-mobile-blocks{gap:var(--space-2);scrollbar-width:none;padding-bottom:2px;display:flex;overflow-x:auto}.seq-mobile-blocks::-webkit-scrollbar{display:none}.seq-mobile-block-chip{background:var(--bg-elevated);border:1px solid var(--border-subtle);border-radius:var(--radius-sm);color:var(--text-secondary);font-size:var(--font-size-xs);cursor:pointer;white-space:nowrap;text-overflow:ellipsis;flex-shrink:0;max-width:130px;padding:4px 10px;transition:background .15s,border-color .15s,color .15s;overflow:hidden}.seq-mobile-block-chip.active{background:var(--accent-subtle);border-color:var(--accent-primary);color:var(--text-primary)}.seq-mobile-empty{font-size:var(--font-size-xs);color:var(--text-disabled);padding:2px 0}.seq-mobile-actions{gap:var(--space-2);align-items:center;display:flex}.seq-mobile-text-row{gap:var(--space-2);flex:1;min-width:0;display:flex}.seq-mobile-text-input{background:var(--bg-input);border:1px solid var(--border-subtle);border-radius:var(--radius-sm);min-width:0;height:36px;color:var(--text-primary);font-size:var(--font-size-small);outline:none;flex:1;padding:0 10px;transition:border-color .15s}.seq-mobile-text-input:focus{border-color:var(--accent-primary)}.seq-mobile-text-input::placeholder{color:var(--text-disabled)}.seq-mobile-add-btn{background:var(--bg-elevated);border:1px solid var(--border-default);border-radius:var(--radius-sm);height:36px;color:var(--text-primary);font-size:var(--font-size-xs);cursor:pointer;white-space:nowrap;flex-shrink:0;padding:0 12px;font-weight:600;transition:background .15s,border-color .15s}.seq-mobile-add-btn:hover{background:var(--bg-hover);border-color:var(--border-hover)}.seq-mobile-add-photo{color:var(--accent-primary);border-color:var(--accent-primary)}
