:root{--color-primary: #A300FF;--color-primary-hover: #8904D4;--color-primary-light: rgba(163, 0, 255, .1);--font-heading: "Playfair Display", Georgia, serif;--font-body: "Inter", system-ui, sans-serif;--gradient-hero: linear-gradient(to right, #fed5ff, #c7e8fe);--gradient-accent: linear-gradient(90deg, #A300FF, #c7e8fe, #A300FF);--color-bg-dark: #0A1128}.font-heading{font-family:var(--font-heading)}.font-body{font-family:var(--font-body)}.text-shimmer{background:linear-gradient(90deg,#a300ff,#05f,#00c2ff,#a300ff);background-size:200% auto;-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text;animation:shimmer 3s linear infinite}@keyframes shimmer{to{background-position:200% center}}.hero-gradient-bg{background:var(--gradient-hero)}.btn-primary{background-color:var(--color-primary);color:#fff;border:none;cursor:pointer;transition:background-color .2s ease,transform .1s ease}.btn-primary:hover{background-color:var(--color-primary-hover);transform:translateY(-1px)}.btn-primary:active{transform:scale(.97)}.landing-section{font-family:var(--font-body)}.landing-section h1,.landing-section h2,.landing-section h3{font-family:var(--font-heading)}:root{--primary-purple: #a300ff;--dark: #0f172a;--gray-900: #1f2937;--gray-800: #374151;--gray-700: #4b5563;--gray-600: #6b7280;--gray-100: #f3f4f6;--font-heading-dpv: "Playfair Display", serif;--font-body-dpv: "Inter", "Open Sans", sans-serif;--spacing-xs: .5rem;--spacing-sm: 1rem;--spacing-md: 1.5rem;--spacing-lg: 2rem;--spacing-xl: 3rem}.container{width:100%;max-width:1280px;padding:0 var(--spacing-md);margin:0 auto}.section-header{text-align:center;margin-bottom:var(--spacing-xl);opacity:0;transition:opacity .8s,transform .8s;transform:translateY(20px)}.section-header.animate{opacity:1;transform:translateY(0)}.section-title{font-family:var(--font-heading);color:var(--dark);margin-bottom:var(--spacing-sm);font-size:2.25rem;font-style:italic;font-weight:400;display:inline-block;position:relative}.section-title:after{content:"";background:linear-gradient(90deg,#f73cce,#13aff0);width:0;height:3px;transition:width .8s;position:absolute;bottom:-10px;left:50%;transform:translate(-50%)}.section-header.animate .section-title:after{width:80px}.section-subtitle{color:var(--gray-700);margin-top:var(--spacing-md);max-width:55rem;margin-left:auto;margin-right:auto;font-size:1.1rem}.site-header{z-index:100;background:#0a1128;width:100%;padding:12px 0;position:fixed;top:0}.logo{display:flex;align-items:center;gap:10px}.logo-text{font-family:var(--font-heading);color:#fff;font-size:1.25rem;font-weight:700}.nav-links{gap:var(--spacing-md);align-items:center;list-style:none;display:flex}.nav-links a{color:#fff;font-size:.95rem;font-weight:500;transition:color .3s;text-decoration:none}.nav-links a:hover{color:#00c2ff}.nav-links .chat-link{background:var(--primary-purple);color:#fff;border-radius:4px;padding:7px 20px 8px;font-size:.95rem;font-weight:600;transition:.3s;display:inline-block;position:relative;overflow:hidden}.nav-links .chat-link:before{content:"";background:linear-gradient(90deg,transparent,rgba(255,255,255,.2),transparent);width:100%;height:100%;transition:.5s;position:absolute;top:0;left:-100%}.nav-links .chat-link:hover{color:#fff;background:#8904d4;transform:translateY(-3px);box-shadow:0 10px 20px #d404c84a}.nav-links .chat-link:hover:before{left:100%}.mobile-toggle{color:#fff;cursor:pointer;background:none;border:none;font-size:1.5rem;display:none}.fs-hero h1,.fs-hero h2,.fs-hero h3,.fs-showcase h2,.fs-showcase h3,.fs-features h3,.fs-how-it-works h2,.fs-how-it-works h3,.fs-environments h2,.fs-environments h3,.fs-cta-section h1,.fs-cta-section h2,.fs-cta-section h3,.section-title{font-family:var(--font-heading)!important;font-style:italic!important}.hero{text-align:left;background-image:linear-gradient(90deg,#fed5ff,#c7e8fe);margin-bottom:0;padding:10rem 0 6rem;position:relative;overflow:visible}.hero-headline{font-size:3.6rem;font-family:var(--font-heading);letter-spacing:-.025em;color:var(--dark);margin-bottom:8px;font-style:italic;font-weight:700;line-height:1.1}.hero-subheadline{margin-bottom:var(--spacing-lg);font-size:1rem;line-height:1.7;color:#1e293b!important}.btn{background-color:var(--primary-purple);color:#fff;text-align:center;cursor:pointer;border:none;border-radius:4px;align-items:center;gap:8px;padding:14px 28px;font-size:1rem;font-weight:600;transition:.3s;display:inline-flex;position:relative;overflow:hidden}.btn:hover{color:#fff;background-color:#8904d4;transform:translateY(-3px);box-shadow:0 10px 20px #d404c84a}.btn:before{content:"";background:linear-gradient(90deg,transparent,rgba(255,255,255,.2),transparent);width:100%;height:100%;transition:.5s;position:absolute;top:0;left:-100%}.btn:hover:before{left:100%}.animated-box{position:relative}.animated-box:hover:after{content:"";clip-path:polygon(0% 100%,3px 100%,3px 3px,calc(100% - 3px) 3px,calc(100% - 3px) calc(100% - 3px),3px calc(100% - 3px),3px 100%,100% 100%,100% 0%,0% 0%);background:linear-gradient(120deg,#f73cce,#13aff0,#f73cce) 0 0 / 300% 300%;border-radius:4px;animation:frame-enter 1s ease-in-out reverse forwards,gradient-animation 4s ease-in-out infinite;position:absolute;top:0;right:0;bottom:0;left:0}@keyframes gradient-animation{0%{background-position:15% 0}50%{background-position:85% 100%}to{background-position:15% 0}}@keyframes frame-enter{0%{clip-path:polygon(0% 100%,3px 100%,3px 3px,calc(100% - 3px) 3px,calc(100% - 3px) calc(100% - 3px),3px calc(100% - 3px),3px 100%,100% 100%,100% 0%,0% 0%)}25%{clip-path:polygon(0% 100%,3px 100%,3px 3px,calc(100% - 3px) 3px,calc(100% - 3px) calc(100% - 3px),calc(100% - 3px) calc(100% - 3px),calc(100% - 3px) 100%,100% 100%,100% 0%,0% 0%)}50%{clip-path:polygon(0% 100%,3px 100%,3px 3px,calc(100% - 3px) 3px,calc(100% - 3px) 3px,calc(100% - 3px) 3px,calc(100% - 3px) 3px,calc(100% - 3px) 3px,100% 0%,0% 0%)}75%{clip-path:polygon(0% 100%,3px 100%,3px 3px,3px 3px,3px 3px,3px 3px,3px 3px,3px 3px,3px 0%,0% 0%)}to{clip-path:polygon(0% 100%,3px 100%,3px 100%,3px 100%,3px 100%,3px 100%,3px 100%,3px 100%,3px 100%,0% 100%)}}.fs-hero .container{flex-direction:row;align-items:center;gap:40px;display:flex}.fs-hero-slider-wrap{flex:0 0 58%;max-width:58%}.fs-hero-slider-card{background:#fff;border-radius:10px;padding:8px;transition:transform .3s;transform:rotate(-5deg);box-shadow:0 20px 50px #0000001a}.fs-hero-slider-card:hover{transform:rotate(-5deg) translateY(-5px);box-shadow:0 6px 20px #0000002b}.fs-hero-content{flex:1}.fs-hero-subtitle{font-family:Playfair Display,serif!important;margin-bottom:16px;font-weight:500;font-style:normal!important;font-size:1.25rem!important;color:#0f172a}.fs-hero-desc{font-family:Open Sans,sans-serif;color:#1e293b;margin-bottom:20px;font-size:1rem;line-height:1.7}.fs-price{font-family:Playfair Display,serif;color:#1e293b;margin-bottom:4px;font-size:3rem;font-weight:800;line-height:3.5rem}.fs-promo{color:#888;margin-bottom:16px}.fs-promo-highlight{color:#0b1020;font-size:1.2rem}.fs-buy-btn{margin-top:8px;color:#fff!important;background:var(--primary-purple)!important;box-shadow:0 4px 15px #a300ff4d!important;border-radius:12px!important}.fs-buy-btn:hover{background:#8904d4!important;box-shadow:0 8px 25px #a300ff66!important;transform:translateY(-2px)}.fs-slider{border-radius:6px;position:relative;overflow:hidden}.fs-slider-window{overflow:hidden}.fs-slider-track{transition:transform .6s cubic-bezier(.46,.03,.52,.96);display:flex}.fs-slider-slide{flex-shrink:0;min-width:100%}.fs-slider-slide img{object-fit:cover;width:100%;height:425px;object-position:center;display:block}.fs-slider-dots{justify-content:center;gap:8px;padding:12px 0 4px;display:flex}.fs-slider-dot{border:2px solid var(--gray-600);cursor:pointer;background:none;border-radius:50%;width:12px;height:12px;padding:0;transition:background .3s}.fs-slider-dot.active{background:var(--primary-purple);border-color:var(--primary-purple)}.fs-showcase{background:#fff;padding:60px 0}.fs-showcase-grid{justify-content:center;align-items:start;gap:40px;display:flex}.fs-showcase-card{cursor:pointer;background:#fff;border-radius:12px;padding:16px;transition:transform .3s,box-shadow .3s;box-shadow:0 15px 40px #00000014}.fs-showcase-grid .fs-showcase-card{width:55%}.fs-hiw-image .fs-showcase-card,.fs-env-image .fs-showcase-card{width:100%}.fs-showcase-card:hover{box-shadow:0 6px 20px #0000002b}.tilts-pos-small{transform:rotate(5deg)}.tilts-neg-small{transform:rotate(-5deg)}.tilts-pos{transform:rotate(10deg)}.tilts-neg{transform:rotate(-10deg)}.tilts-pos-small:hover{transform:rotate(5deg) translateY(-5px)}.tilts-neg-small:hover{transform:rotate(-5deg) translateY(-5px)}.tilts-pos:hover{transform:rotate(10deg) translateY(-5px)}.tilts-neg:hover{transform:rotate(-10deg) translateY(-5px)}.fs-showcase-card img{border-radius:8px;width:100%;display:block}.fs-features{background:#f0f5ff;padding:80px 0}.fs-features-grid{grid-template-columns:repeat(2,1fr);gap:24px;display:grid}.fs-feature-card{opacity:0;background:#fff;border-radius:12px;align-items:flex-start;gap:16px;padding:24px;transition:opacity .8s,transform .8s,box-shadow .3s;display:flex;position:relative;transform:translateY(30px);box-shadow:0 4px 16px #0000000f}.fs-feature-card.animate{opacity:1;transform:translateY(0)}.fs-feature-card.animate:hover{transform:translateY(-3px);box-shadow:0 8px 30px #0055ff14}.fs-feature-icon{flex-shrink:0;width:70px;min-width:70px;height:70px}.fs-feature-text h3{font-family:var(--font-heading)!important;color:var(--dark);margin-bottom:8px;font-size:1.1rem;font-weight:700;font-style:italic}.fs-feature-text p{color:var(--gray-700);margin-bottom:0;font-size:.95rem;line-height:1.6}.fs-how-it-works{background:#fff;padding:60px 0}.fs-hiw-content{align-items:center;gap:40px;display:flex}.fs-hiw-text{flex:1}.fs-hiw-text h2{font-family:var(--font-heading)!important;margin-bottom:24px;font-size:2.25rem;font-weight:800;font-style:italic}.fs-hiw-list{counter-reset:step 0;padding:0;list-style:none}.fs-hiw-list li{counter-increment:step 1;color:var(--gray-700);margin-bottom:20px;padding-left:36px;font-size:1rem;line-height:1.7;position:relative}.fs-hiw-list li:before{content:counter(step) ".";color:var(--primary-purple);font-size:1.1rem;font-weight:800;position:absolute;left:0}.fs-hiw-list li strong{color:var(--dark)}.fs-hiw-image{flex:0 0 55%;max-width:55%}.fs-environments{background:#fff;padding:60px 0}.fs-env-content{align-items:center;gap:40px;display:flex}.fs-env-image{flex:0 0 55%;max-width:55%}.fs-env-text{flex:1}.fs-env-text h2{font-family:var(--font-heading)!important;margin-bottom:16px;font-size:2.25rem;font-weight:800;font-style:italic}.fs-env-text p{color:var(--gray-700);font-size:1rem;line-height:1.7}.fs-cta-section .container{display:block}.fs-cta-grid{grid-template-columns:1fr 1fr;align-items:start;gap:40px;display:grid}.fs-cta-checklist h2{font-family:var(--font-heading)!important;margin-bottom:20px;font-size:2.25rem;font-weight:800;font-style:italic}.fs-checklist{margin-bottom:24px;padding:0;list-style:none}.fs-checklist li{color:#0b1020;align-items:flex-start;margin-bottom:10px;display:flex}.fs-checklist li:before{content:"✓";color:#ef60fb;flex-shrink:0;margin-top:2px;margin-right:15px;font-weight:700}.fs-cta-checklist p{color:var(--gray-700);font-size:.95rem;line-height:1.7}.fs-cta-pricing{padding-top:20px}.site-footer{background-color:var(--dark);color:#fff;text-align:center;padding:32px 0}.footer-nav{flex-wrap:wrap;justify-content:center;gap:24px;margin-bottom:20px;display:flex}.footer-nav a{color:#ffffffb3;font-size:13px;font-weight:500;text-decoration:none;transition:color .3s}.footer-nav a:hover{color:#fff}.site-footer p{color:#faf6f180;margin-bottom:8px;font-size:13px}.site-footer p.fs-disclaimer{max-width:600px;margin:0 auto;font-size:12px!important;color:#faf6f159;line-height:1.8;font-family:"Open Sans",var(--font-body)}.fs-login-page{min-height:100vh;display:flex;align-items:center;justify-content:center;padding:20px;background:var(--gradient-hero);font-family:var(--font-body)}.fs-login-card{width:100%;max-width:400px;background:#fff;border-radius:16px;padding:40px 32px;box-shadow:0 20px 60px #0000001a}@keyframes fadeInUp{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}.fs-modal-overlay{position:fixed;top:0;right:0;bottom:0;left:0;background:#00000080;display:flex;align-items:center;justify-content:center;z-index:9999;padding:20px}.fs-modal{background:#fff;border-radius:16px;padding:32px;max-width:400px;width:100%;position:relative;box-shadow:0 20px 60px #0000004d}.fs-modal-close{position:absolute;top:12px;right:16px;background:none;border:none;font-size:18px;cursor:pointer;color:#999}.fs-modal-input{width:100%;padding:12px 16px;border:1px solid #ddd;border-radius:8px;font-size:14px;outline:none;box-sizing:border-box}.fs-modal-input:focus{border-color:var(--color-primary);box-shadow:0 0 0 3px var(--color-primary-light)}.fs-footer-divider{width:180px;height:1px;background:#faf6f114;margin:20px auto}.lottie-icon{justify-content:center;align-items:center;display:flex}@media(max-width:1024px){.nav-links{display:none}.nav-links.open{padding:var(--spacing-md);background:#0a1128;flex-direction:column;display:flex;position:absolute;top:100%;left:0;right:0}.mobile-toggle{display:block}.fs-hero .container{text-align:center;flex-direction:column}.fs-hero-slider-wrap{flex:0 0 auto;max-width:100%}.fs-hero-slider-card{transform:rotate(0)}.fs-features-grid{grid-template-columns:1fr}.fs-hiw-content{flex-direction:column}.fs-hiw-image{flex:0 0 auto;max-width:400px;margin:0 auto}.fs-env-content{flex-direction:column-reverse}.fs-env-image{flex:0 0 auto;max-width:400px;margin:0 auto}.fs-cta-grid{grid-template-columns:1fr}.fs-showcase-grid{flex-direction:column;align-items:center}}@media(max-width:768px){.hero{padding:6rem 0 4rem}.hero-headline{font-size:2.2rem}}:root{--bg-primary: #f3f4f6;--bg-cprimary: #ffffff;--bg-secondary: #ffffff;--bg-tertiary: #f9fafb;--text-primary: #1f2937;--text-primaryo: #1f2937;--text-secondary: #374151;--text-tertiary: #6b7280;--border-color: #e5e7eb;--border-hover: #c471ed;--upload-border: #d1d5db;--upload-hover-bg: #eef2ff;--upload-hover-border: #4f46e5;--shadow-sm: rgba(0, 0, 0, .08);--shadow-md: rgba(0, 0, 0, .12);--shadow-lg: rgba(0, 0, 0, .15)}[data-theme=dark]{--bg-primary: #111827;--bg-cprimary: #1f2937;--bg-secondary: #1f2937;--bg-tertiary: #374151;--text-primary: #f9fafb;--text-primaryo: #1f2937;--text-secondary: #e5e7eb;--text-tertiary: #9ca3af;--border-color: #374151;--border-hover: #c471ed;--upload-border: #4b5563;--upload-hover-bg: #2d1b3d;--upload-hover-border: #c471ed;--shadow-sm: rgba(0, 0, 0, .3);--shadow-md: rgba(0, 0, 0, .4);--shadow-lg: rgba(0, 0, 0, .5)}body{font-family:Inter,sans-serif;background:var(--gradient-hero);color:var(--text-primary);transition:background .3s ease,color .3s ease}.bg-main{background:var(--bg-cprimary)}select#pose-select{color:var(--text-primaryo)}select#env-indoor,select#env-outdoor{color:var(--text-primaryo)!important}option,textarea#detailed-instructions,textarea.edit-input{color:var(--text-primaryo)}.theme-toggle{position:relative;z-index:1000;background:var(--bg-secondary);border:2px solid var(--border-color);border-radius:50%;padding:8px;cursor:pointer;display:flex;align-items:center;justify-content:center;box-shadow:0 4px 12px var(--shadow-sm);transition:all .3s ease}.theme-toggle:hover{transform:translateY(-2px);box-shadow:0 6px 16px var(--shadow-md);border-color:var(--border-hover)}.theme-toggle-icon{width:20px;height:20px;transition:transform .3s ease;color:var(--text-primary)}.theme-toggle:hover .theme-toggle-icon{transform:rotate(15deg)}.theme-toggle-icon.sun{display:none}[data-theme=dark] .theme-toggle-icon.sun{display:block}[data-theme=dark] .theme-toggle-icon.moon{display:none}.bg-white,.result-item{background-color:var(--bg-secondary);color:var(--text-primary);transition:background-color .3s ease,color .3s ease}.text-gray-700,.text-gray-800{color:var(--text-secondary)!important}.text-gray-500,.text-gray-600{color:var(--text-tertiary)!important}.spinner{border:4px solid rgba(0,0,0,.1);width:36px;height:36px;border-radius:50%;border-left-color:#09f;animation:spin 1s ease infinite}[data-theme=dark] .spinner{border:4px solid rgba(255,255,255,.1);border-left-color:#ff6a88}.fade-in{animation:fadeIn .5s ease-in-out}@keyframes fadeIn{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}.upload-box{border:2px dashed var(--upload-border);background-color:var(--bg-secondary);transition:border-color .3s ease,background-color .3s ease}.upload-box:hover,.upload-box.dragover{border-color:var(--upload-hover-border);background-color:var(--upload-hover-bg)}.preview-img-container{position:relative;max-height:350px;display:inline-block}.preview-img,#mask-canvas{max-height:350px;object-fit:contain;width:auto;border-radius:.375rem}#mask-canvas{position:absolute;top:0;left:0;cursor:crosshair;opacity:.5}.loader{border:4px solid #f3f3f3;border-top:4px solid #4f46e5;border-radius:50%;width:40px;height:40px;animation:spin 1s linear infinite}[data-theme=dark] .loader{border:4px solid #374151;border-top:4px solid #c471ed}.hero-cta,button[type=submit],.bg-indigo-600{display:inline-block;padding:14px 32px;background:linear-gradient(135deg,#ff9a8b,#ff6a88,#c471ed);color:#fff;border-radius:16px;font-weight:600;font-size:1.1rem;text-align:center;cursor:pointer;transition:all .3s ease;border:none;position:relative;overflow:hidden;box-shadow:0 4px 15px #ff6a884d}.hero-cta:hover,button[type=submit]:hover,.bg-indigo-600:hover{transform:translateY(-2px) scale(1.02);box-shadow:0 8px 25px #ff6a8866;background:linear-gradient(135deg,#ff8b7a,#ff5977,#b860dc)}.hero-cta:active,button[type=submit]:active,.bg-indigo-600:active{transform:translateY(0) scale(.98)}.hero-cta:disabled,button[type=submit]:disabled,.bg-indigo-600:disabled,.disabled\:bg-gray-400:disabled{background:linear-gradient(135deg,#d1d5db,#9ca3af);cursor:not-allowed;transform:none;box-shadow:none;opacity:.6}.hero-cta:before,button[type=submit]:before,.bg-indigo-600:before{content:"";position:absolute;top:0;left:-100%;width:100%;height:100%;background:linear-gradient(90deg,transparent,rgba(255,255,255,.3),transparent);transition:.5s}.hero-cta:hover:before,button[type=submit]:hover:before,.bg-indigo-600:hover:before{left:100%}.download-btn{width:100%;padding:10px 20px;background:linear-gradient(135deg,#a8edea,#fed6e3);color:#374151;border:none;border-radius:12px;font-size:.9rem;font-weight:600;cursor:pointer;transition:all .3s ease;box-shadow:0 2px 8px #a8edea4d}[data-theme=dark] .download-btn{color:#1f2937}.download-btn:hover{transform:translateY(-2px) scale(1.02);box-shadow:0 4px 12px #a8edea66;background:linear-gradient(135deg,#96e6e3,#fcc8d9)}.bg-green-500,.bg-green-600,.download-btn.green{background:linear-gradient(135deg,#a7f3d0,#6ee7b7);color:#065f46}.bg-green-500:hover,.bg-green-600:hover,.download-btn.green:hover{background:linear-gradient(135deg,#86efac,#34d399);box-shadow:0 4px 12px #6ee7b766}.border-gray-300,button.secondary{background:var(--bg-secondary);border:2px solid var(--border-color);color:var(--text-primary);border-radius:12px;padding:10px 20px;font-weight:500;transition:all .3s ease;cursor:pointer}.border-gray-300:hover,button.secondary:hover{border-color:#c471ed;background:linear-gradient(135deg,#fef3ff,#f3e8ff);transform:translateY(-1px);box-shadow:0 2px 8px #c471ed33}[data-theme=dark] .border-gray-300:hover,[data-theme=dark] button.secondary:hover{background:linear-gradient(135deg,#2d1b3d,#3d2550)}.compare-container{position:relative;width:100%;max-width:800px;min-height:400px;overflow:hidden;border-radius:.5rem;background:var(--bg-secondary)}.compare-container.ratio-9-16{aspect-ratio:9/16}.compare-container.ratio-4-5{aspect-ratio:4/5}.compare-container.ratio-1-1{aspect-ratio:1/1}.compare-container.ratio-16-9{aspect-ratio:16/9}.compare-container.ratio-1-91-1{aspect-ratio:1.91/1}#original-image,#result-image{position:absolute;top:0;right:0;bottom:0;left:0;width:100%;object-fit:contain;display:block;background:transparent;max-width:none}.compare-overlay{position:absolute;top:0;right:0;bottom:0;left:0;pointer-events:none;background:transparent!important}.compare-handle{position:absolute;top:0;bottom:0;left:50%;width:2px;background:linear-gradient(180deg,#ff6a88,#c471ed);box-shadow:0 0 0 1px #fffc;cursor:ew-resize}.compare-handle:after{content:"";position:absolute;top:50%;left:-12px;transform:translateY(-50%);width:24px;height:24px;border-radius:9999px;background:linear-gradient(135deg,#ff6a88,#c471ed);box-shadow:0 0 0 3px #ffffffe6}div#compare-overlay::selection,div#original-image::selection,div#compare-container::selection{background-color:transparent}.aspect-ratio-selector-container{display:flex;gap:.25rem;padding:.25rem;background-color:var(--bg-tertiary);border-radius:12px;justify-content:center;align-items:center;flex-wrap:wrap}.aspect-ratio-button{display:flex;align-items:center;justify-content:center;padding:.5rem;border:none;border-radius:10px;cursor:pointer;background-color:transparent;transition:all .2s ease}.aspect-ratio-button:hover{background-color:var(--upload-hover-bg)}.aspect-ratio-button.selected{background-color:var(--bg-secondary)}[data-theme=dark] .aspect-ratio-button.selected{background-color:#374151}.aspect-ratio-icon{border:2px solid var(--text-tertiary);border-radius:4px;transition:border-color .2s ease}.aspect-ratio-button:hover .aspect-ratio-icon{border-color:var(--text-primary)}.aspect-ratio-button.selected .aspect-ratio-icon{border-color:#8b5cf6}.results-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:1rem;margin-top:1rem}.result-item{background:var(--bg-secondary);border-radius:16px;padding:1rem;box-shadow:0 4px 15px var(--shadow-sm);transition:all .3s ease}.result-item:hover{transform:translateY(-4px);box-shadow:0 8px 25px var(--shadow-md)}.result-image{width:100%;height:auto;border-radius:12px;margin-bottom:.5rem}.result-label{font-size:.875rem;font-weight:500;color:var(--text-secondary);text-align:center;margin-bottom:.5rem}@keyframes fadeInUp{to{opacity:1;transform:translateY(0)}}@media(min-width:1024px){.results-grid{grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:1.5rem}.result-item{padding:1.25rem}.upload-box{transition:border-color .3s ease,background-color .3s ease,box-shadow .3s ease}.upload-box:hover{box-shadow:0 2px 8px #4f46e51a}.preview-img-container,.preview-img,#mask-canvas{max-height:300px}.compare-container{max-width:100%}.bg-white.rounded-xl{transition:box-shadow .3s ease}.download-btn{padding:.625rem;font-size:.9375rem}}@media(min-width:640px){.sm\:grid-cols-2{grid-template-columns:repeat(2,minmax(max-content,auto))!important}}.refresh-icon-btn{transition:all .2s ease}.refresh-icon-btn:hover{background:#000c!important;transform:scale(1.1)}.refresh-icon-btn:disabled{opacity:.5;cursor:not-allowed!important}.refresh-overlay{-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px)}.scene-description{font-family:Inter,sans-serif;transition:background-color .2s ease}.scene-description:hover{background-color:#e5e7eb}.scene-description strong{color:#1f2937;font-weight:600}@keyframes spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.result-card:hover .refresh-icon-btn,.result-card:hover .download-icon-btn,.result-card:hover .edit-icon-btn{opacity:1}.refresh-icon-btn,.download-icon-btn,.edit-icon-btn{opacity:.8;transition:opacity .2s ease,transform .2s ease,background .2s ease}.mode-option{transition:all .2s}.mode-option input:checked+span{color:#8b5cf6;font-weight:600}.scene-category .category-header .chevron{transition:transform .2s}.scene-category .category-header.open .chevron{transform:rotate(180deg)}.btn-primary{background-color:#8b5cf6;color:#fff;padding:8px 16px;border-radius:6px;font-weight:600;cursor:pointer;border:none;transition:background-color .2s}.btn-primary:hover{background-color:#7c3aed}.btn-primary:disabled{background-color:#a78bfa;cursor:not-allowed}.btn-secondary{background-color:#e5e7eb;color:#374151;padding:8px 16px;border-radius:6px;font-weight:600;cursor:pointer;border:none;transition:background-color .2s}[data-theme=dark] .btn-secondary{background-color:var(--bg-tertiary);color:var(--text-secondary)}.btn-secondary:hover{background-color:#d1d5db}[data-theme=dark] .btn-secondary:hover{background-color:#4b5563}.hashtag-pill{display:inline-block;background:#ede9fe;color:#7c3aed;padding:4px 10px;border-radius:12px;font-size:12px;font-weight:500}[data-theme=dark] .hashtag-pill{background-color:#4c1d95;color:#c4b5fd}.copy-all-btn{position:absolute;top:1rem;right:1rem;background-color:#8b5cf6;color:#fff;font-size:12px;font-weight:600;padding:6px 12px;border-radius:6px;border:none;cursor:pointer;transition:all .2s ease}.copy-all-btn:hover{background:#7c3aed;transform:translateY(-1px);box-shadow:0 4px 8px #8b5cf64d}.copy-title-btn:hover,.copy-caption-btn:hover,.copy-hashtags-btn:hover,.copy-prompt-btn:hover{opacity:1}@keyframes slideIn{0%{transform:translate(100%);opacity:0}to{transform:translate(0);opacity:1}}@keyframes slideOut{0%{transform:translate(0);opacity:1}to{transform:translate(100%);opacity:0}}.scene-grid,.theme-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:12px;margin-top:12px}.scene-card{background:var(--bg-tertiary);border:2px solid var(--border-color);border-radius:12px;padding:10px;cursor:pointer;transition:all .2s ease;position:relative;display:flex;align-items:center;justify-content:center}[data-theme=dark] .scene-card{background:#2d3748;border-color:#4a5568}.scene-card:hover{background:var(--upload-hover-bg);transform:translateY(-2px);border-color:var(--border-hover)}.scene-card.selected{background:#8b5cf6;border-color:#7c3aed;color:#fff}.scene-card.selected:hover{background:#7c3aed}.scene-card-content{display:flex;align-items:center;gap:8px;text-align:center;width:100%}.scene-checkmark{position:absolute;top:10px;right:10px;width:14px;height:14px;background:#fff;border-radius:50%;display:none;align-items:center;justify-content:center;font-size:14px;font-weight:700;color:#8b5cf6}.scene-card.selected .scene-checkmark{display:flex}.scene-card .scene-icon{font-size:22px;line-height:1}.scene-card .scene-title{font-size:14px;font-weight:500;color:var(--text-secondary);line-height:1.4}[data-theme=dark] .scene-card .scene-title{color:#e5e7eb}.scene-card.selected .scene-title{color:#fff;font-weight:600}.category-header{display:flex;align-items:center;justify-content:space-between;padding:12px 16px;background:#1f2937;border-radius:8px;cursor:pointer;margin-top:16px;transition:background .2s}.category-scenes.p-3.bg-white.scene-grid{background:var(--bg-cprimary)}button.category-header{background:var(--bg-tertiary)}.category-header:hover{background:#8b5cf6}.category-header:first-child{margin-top:0}.category-title{font-size:15px;font-weight:600;color:#f3f4f6;display:flex;align-items:center;gap:8px}.category-icon{font-size:18px}.category-arrow{font-size:12px;color:#9ca3af;transition:transform .2s}.category-header.collapsed .category-arrow{transform:rotate(-90deg)}.category-content{max-height:2000px;overflow:hidden;transition:max-height .3s ease}.category-content.collapsed{max-height:0}body.dark-mode .scene-card{background:#1f2937}body.dark-mode .scene-card:hover{background:#374151}body.dark-mode .scene-card.selected{background:#8b5cf6;border-color:#7c3aed}body.dark-mode .scene-card.selected:hover{background:#7c3aed}.bg-main-subtle{background-color:var(--bg-tertiary)}.form-input,.form-textarea,.form-select{width:100%;background-color:var(--bg-tertiary);border:1px solid var(--border-color);border-radius:8px;padding:10px 12px;font-size:14px;color:var(--text-primaryo);transition:all .2s ease}.form-input:focus,.form-textarea:focus,.form-select:focus{outline:none;border-color:#8b5cf6;box-shadow:0 0 0 2px #8b5cf64d}.form-checkbox{width:16px;height:16px;border-radius:4px;accent-color:#8b5cf6}.file-upload-area{display:flex;align-items:center;justify-content:center;width:100%;height:150px;border:2px dashed var(--upload-border);border-radius:12px;background-color:var(--bg-tertiary);cursor:pointer;transition:all .2s ease;overflow:hidden;position:relative}.file-upload-area:hover{border-color:var(--upload-hover-border);background-color:var(--upload-hover-bg)}.file-upload-area span{font-weight:500;color:var(--text-tertiary)}.preview-image{width:100%;height:100%;object-fit:cover;position:absolute;top:0;left:0}.mode-toggle{padding:6px 12px;border:2px solid transparent;border-radius:8px;font-size:14px;font-weight:500;cursor:pointer;transition:all .2s ease;background-color:var(--bg-tertiary);color:var(--text-secondary)}.mode-toggle.selected{background-color:#8b5cf6;color:#fff;box-shadow:0 2px 8px #8b5cf64d}.mode-option{transition:all .2s ease;border-color:var(--border-color);background-color:var(--bg-tertiary)}.mode-option:hover{border-color:var(--border-hover)}.mode-option input[type=radio]{accent-color:#8b5cf6}.mode-option input:checked~div span.font-semibold{color:#8b5cf6!important}[data-theme=dark] .mode-option input:checked~div span.font-semibold{color:#a78bfa!important}.mode-option input:checked~div,.mode-option:has(input:checked){border-color:#8b5cf6}.action-btn{width:40px;height:40px;border-radius:9999px;background-color:#0009;color:#fff;display:flex;align-items:center;justify-content:center;cursor:pointer;transition:all .2s ease-in-out;border:1px solid rgba(255,255,255,.2)}.action-btn:hover{background-color:#000c;transform:scale(1.1)}.action-btn:disabled{opacity:.5;cursor:not-allowed;transform:scale(1)}.edit-panel{animation:fadeIn .3s ease}.copy-icon-btn{color:var(--text-tertiary);cursor:pointer;font-size:12px;font-weight:500;transition:color .2s ease;padding:2px}.copy-icon-btn:hover{color:#8b5cf6}.settings-btn{padding:8px;background:var(--bg-secondary);border:2px solid var(--border-color);border-radius:50%;cursor:pointer;display:flex;align-items:center;justify-content:center;box-shadow:0 4px 12px var(--shadow-sm);transition:all .3s ease}.settings-btn svg{color:var(--text-primary);width:20px;height:20px;transition:transform .3s ease}.settings-btn:hover{transform:translateY(-2px);box-shadow:0 6px 16px var(--shadow-md);border-color:var(--border-hover)}.settings-btn:hover svg{transform:rotate(30deg)}.app-header{display:flex;align-items:center;justify-content:space-between;padding:0 24px;height:60px;background:#1a1033;color:#fff;position:sticky;top:0;z-index:100}.app-header-left{display:flex;align-items:center;gap:24px}.app-header-left .logo-text{font-family:var(--font-heading);font-style:italic;font-size:1.25rem;color:#fff}.app-header-tabs{display:flex;align-items:center;gap:4px}.app-toolbar-tab{padding:6px 16px;border-radius:8px;font-size:.85rem;font-weight:600;font-family:var(--font-body);cursor:default;transition:background .2s;color:#ffffff80}.app-toolbar-tab.active{background:var(--primary-purple);color:#fff}.app-toolbar-tab.disabled{opacity:.5}.app-header-right{display:flex;align-items:center;gap:6px;flex-wrap:wrap}.app-toolbar-btn{display:inline-flex;align-items:center;gap:5px;padding:5px 12px;border-radius:8px;border:1px solid rgba(255,255,255,.2);background:transparent;color:#ffffffd9;font-size:.8rem;font-family:var(--font-body);cursor:pointer;transition:all .2s;white-space:nowrap}.app-toolbar-btn:hover{border-color:var(--primary-purple);color:#fff;background:#a300ff33}.app-toolbar-btn:disabled{opacity:.3;pointer-events:none}.app-toolbar-btn svg{width:15px;height:15px;flex-shrink:0}.app-header-icon-btn{display:inline-flex;align-items:center;justify-content:center;width:36px;height:36px;border-radius:50%;border:none;background:transparent;color:#ffffffb3;cursor:pointer;transition:all .2s}.app-header-icon-btn:hover{color:#fff;background:#ffffff1a}.app-header-icon-btn svg{width:20px;height:20px}.app-header .theme-toggle{width:36px;height:36px;border-radius:50%;border:none;background:transparent;color:#ffffffb3;padding:0;display:inline-flex;align-items:center;justify-content:center}.app-header .theme-toggle:hover{color:#fff;background:#ffffff1a;box-shadow:none;border:none}.app-header .theme-toggle .theme-toggle-icon{color:#ffffffb3;fill:#ffffffb3}.app-header .theme-toggle:hover .theme-toggle-icon{color:#fff;fill:#fff}@media(max-width:768px){.app-header{padding:8px 12px;height:auto;min-height:50px;flex-wrap:wrap;gap:6px}.app-header-tabs{display:none}}.modal-overlay{position:fixed;top:0;right:0;bottom:0;left:0;background-color:#0009;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);display:flex;align-items:center;justify-content:center;z-index:2000;animation:fadeIn .3s ease}.modal-content{background-color:var(--bg-cprimary);padding:24px;border-radius:16px;width:90%;max-width:500px;box-shadow:0 10px 30px var(--shadow-md);animation:slideInFromTop .4s ease}@keyframes slideInFromTop{0%{transform:translateY(-30px);opacity:0}to{transform:translateY(0);opacity:1}}.scene-pill{display:inline-flex;align-items:center;gap:4px;padding:6px;border-radius:9999px;font-size:12px;font-weight:500;cursor:pointer;transition:all .2s ease;background-color:var(--bg-tertiary);border:1px solid var(--border-color);color:var(--text-secondary)}.scene-pill:hover{border-color:var(--border-hover);background-color:var(--upload-hover-bg);color:var(--text-primary)}.scene-pill.selected{background-color:#8b5cf6;border-color:#7c3aed;color:#fff}[data-theme=dark] .scene-pill.selected{background-color:#7c3aed;border-color:#a78bfa}.scene-pill.disabled{opacity:.6;cursor:not-allowed}.scene-pill.disabled:hover{border-color:var(--border-color);background-color:var(--bg-tertiary);color:var(--text-secondary)}.history-panel{position:fixed;top:0;right:0;height:100vh;width:380px;max-width:90vw;background-color:var(--bg-primary);border-left:1px solid var(--border-color);box-shadow:-10px 0 25px -10px var(--shadow-md);z-index:1500;transform:translate(100%);transition:transform .4s cubic-bezier(.25,.46,.45,.94);display:flex;flex-direction:column}.history-panel.open{transform:translate(0)}.history-header{display:flex;justify-content:space-between;align-items:center;padding:1rem 1.5rem;border-bottom:1px solid var(--border-color);flex-shrink:0}.history-list{flex-grow:1;overflow-y:auto;padding:1rem}.history-session{margin-bottom:1rem}.history-session-header{display:grid;grid-template-columns:1fr auto;gap:1rem;align-items:center;width:100%;background:transparent;border:none;padding:.5rem;border-radius:8px;cursor:pointer;text-align:left;transition:background-color .2s ease}.history-session-header:hover{background-color:var(--bg-tertiary)}.history-session-header:focus-visible{outline:none;box-shadow:0 0 0 2px var(--upload-hover-border)}.session-info{font-size:.9rem;font-weight:500;color:var(--text-secondary);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.history-action-btn{display:flex;align-items:center;justify-content:center;width:28px;height:28px;padding:0;border-radius:50%;background-color:var(--bg-tertiary);color:var(--text-secondary);border:1px solid var(--border-color);cursor:pointer;transition:all .2s ease}.history-action-btn:hover{background-color:var(--upload-hover-bg);border-color:var(--border-hover);color:var(--text-primary);transform:scale(1.1)}.chevron-icon{transition:transform .2s ease-in-out}.chevron-icon.collapsed{transform:rotate(-90deg)}.history-separator{border:none;border-top:1px solid var(--border-color);margin-top:1rem}.history-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:.75rem;padding-top:1rem}.history-grid-item{position:relative;overflow:hidden;border-radius:8px;aspect-ratio:1 / 1;cursor:grab}.history-grid-thumbnail{width:100%;height:100%;object-fit:cover;transition:transform .3s ease}.history-grid-item:hover .history-grid-thumbnail{transform:scale(1.1)}.history-grid-overlay{position:absolute;top:0;right:0;bottom:0;left:0;background-color:#00000080;opacity:0;transition:opacity .3s ease;display:flex;align-items:center;justify-content:center;pointer-events:none}.history-grid-item:hover .history-grid-overlay{opacity:1}.history-grid-actions{display:flex;gap:.5rem;pointer-events:auto}.history-grid-actions .action-btn{width:36px;height:36px}.history-grid-actions .action-btn svg{width:18px;height:18px}.panel-header-input{display:flex;align-items:center;justify-content:space-between;gap:.75rem;padding-bottom:1.5rem;border-bottom:1px solid var(--border-color);margin-bottom:1.5rem;flex-shrink:0}.panel-header-output{display:flex;justify-content:space-between;align-items:center;padding-bottom:1.5rem;border-bottom:1px solid var(--border-color);margin-bottom:1.5rem;flex-shrink:0}.header-tabs{display:flex;align-items:center;gap:.5rem}.tab-button{padding:8px 16px;border-radius:8px;border:none;background:transparent;color:var(--text-tertiary);font-weight:500;font-size:14px;cursor:pointer;transition:all .2s ease}.tab-button:hover:not(:disabled){color:var(--text-primary)}.tab-button.active{background:#5267f2;color:#fff;box-shadow:0 2px 8px #5267f24d}.tab-button:disabled{opacity:.6;cursor:not-allowed}.header-actions{display:flex;align-items:center;gap:.75rem}.header-action-btn{display:flex;align-items:center;justify-content:center;gap:.5rem;padding:8px 16px;border-radius:8px;border:1px solid var(--border-color);background:var(--bg-tertiary);color:var(--text-secondary);font-weight:500;font-size:14px;cursor:pointer;transition:all .2s ease;min-width:130px}.header-action-btn:hover:not(:disabled){border-color:var(--border-hover);color:var(--text-primary);background:var(--bg-secondary)}.header-action-btn:disabled{opacity:.5;cursor:not-allowed}.header-action-btn .spinner-icon{width:16px;height:16px;border:2px solid currentColor;border-right-color:transparent;border-radius:50%;animation:spin .75s linear infinite}.toggle-checkbox{position:absolute;opacity:0;cursor:pointer;height:0;width:0}.toggle-label{display:block;overflow:hidden;cursor:pointer;border:0 solid #bbb;border-radius:20px;margin:0;width:40px;height:24px;background-color:#ccc;position:relative;transition:background-color .2s ease-in}.toggle-label:before{content:"";position:absolute;top:2px;left:2px;width:20px;height:20px;background-color:#fff;border-radius:50%;transition:left .2s ease-in}.toggle-checkbox:checked+.toggle-label{background-color:#8b5cf6}.toggle-checkbox:checked+.toggle-label:before{left:18px}[data-theme=dark] .toggle-label{background-color:#4b5563}.storyboard-slot{position:relative;border-radius:12px;overflow:hidden;display:flex;align-items:center;justify-content:center;cursor:pointer}.storyboard-slot.dragover{border-color:var(--upload-hover-border);background-color:var(--upload-hover-bg)}.storyboard-slot-image{width:100%;height:100%;object-fit:cover}.storyboard-remove-btn{position:absolute;top:.5rem;right:.5rem;background-color:#0009;color:#fff;border-radius:50%;width:24px;height:24px;display:flex;align-items:center;justify-content:center;font-size:14px;border:none;cursor:pointer;opacity:0;transition:opacity .2s ease-in-out}.storyboard-slot:hover .storyboard-remove-btn{opacity:1}.storyboard-remove-btn:hover{background-color:#000c}
