body{margin:0;padding:0}#root{flex-direction:column;min-height:100svh;display:flex}*{box-sizing:border-box;margin:0;padding:0}html,body{height:100%}body{color:#2c2c2a;background:#fdf8f5;font-family:Segoe UI,sans-serif}.app{flex-direction:column;min-height:100vh;display:flex}.icon-btn{justify-content:center;align-items:center;gap:6px;display:inline-flex}.spin-icon{animation:.8s linear infinite spin}@keyframes spin{to{transform:rotate(360deg)}}.auth-loading{color:#993556;justify-content:center;align-items:center;height:100vh;font-size:14px;display:flex}.login-page{background:linear-gradient(135deg,#4b1528,#993556,#d4537e,#ef9f27);justify-content:center;align-items:center;min-height:100vh;padding:20px;display:flex;position:relative}.login-lang-switch{color:#fff;cursor:pointer;letter-spacing:.5px;background:#ffffff26;border:.5px solid #ffffff4d;border-radius:50px;padding:6px 14px;font-size:12px;transition:all .2s;position:absolute;top:24px;right:24px}.login-lang-switch:hover{background:#ffffff40}.login-card{background:#fff;border-radius:20px;width:100%;max-width:380px;padding:36px 32px;box-shadow:0 20px 60px #0003}.login-logo{text-align:center;color:#4b1528;letter-spacing:2px;margin-bottom:24px;font-size:26px;font-weight:600}.login-logo span{color:#ba7517;font-style:italic}.login-tabs{background:#fbeaf0;border-radius:50px;margin-bottom:24px;padding:4px;display:flex}.login-tab{cursor:pointer;color:#993556;background:0 0;border:none;border-radius:50px;flex:1;padding:10px;font-size:13px;font-weight:500;transition:all .2s}.login-tab.active{color:#4b1528;background:#fff;box-shadow:0 2px 8px #d4537e33}.login-form{flex-direction:column;gap:12px;display:flex}.login-input{border:1.5px solid #f4c0d1;border-radius:10px;padding:12px 14px;font-family:inherit;font-size:14px}.login-input:focus{border-color:#d4537e;outline:none}.login-error{color:#a32d2d;background:#fcebeb;border:.5px solid #f09595;border-radius:10px;padding:10px 14px;font-size:13px}.login-submit{color:#fff;cursor:pointer;background:linear-gradient(135deg,#993556,#d4537e);border:none;border-radius:10px;margin-top:6px;padding:13px;font-size:14px;font-weight:600;transition:all .2s}.login-submit:hover{transform:translateY(-1px)}.login-submit:disabled{opacity:.6;cursor:not-allowed;transform:none}.usage-bar-wrap{background:#fff9fb;border-bottom:.5px solid #f4c0d1;flex-shrink:0;align-items:center;gap:14px;padding:10px 28px;display:flex}.usage-bar-track{background:#f4c0d1;border-radius:50px;flex:1;max-width:260px;height:8px;overflow:hidden}.usage-bar-fill{background:linear-gradient(90deg,#d4537e,#993556);border-radius:50px;height:100%;transition:width .3s}.usage-bar-label{color:#993556;white-space:nowrap;font-size:12px}.topbar{background:linear-gradient(135deg,#4b1528,#993556,#d4537e,#ef9f27);flex-wrap:wrap;flex-shrink:0;justify-content:space-between;align-items:center;gap:10px;padding:16px 28px;display:flex}.logo{color:#fff;letter-spacing:2px;font-size:22px;font-weight:600}.logo span{color:#fac775;font-style:italic}nav{align-items:center;gap:20px;display:flex}nav a{color:#ffffffbf;cursor:pointer;font-size:13px;text-decoration:none}nav a.active{color:#fac775;font-weight:500}.lang-switch-btn{color:#fff;cursor:pointer;letter-spacing:.5px;background:#ffffff1f;border:.5px solid #fff3;border-radius:50px;align-items:center;gap:4px;padding:5px 12px;font-size:11px;transition:all .2s;display:inline-flex}.lang-switch-btn:hover{background:#fff3}.main-grid{flex:1;grid-template-columns:220px 1fr 280px;gap:0;display:grid}.sidebar,.right-panel{background:#fff9fb;border-right:.5px solid #f4c0d1;flex-direction:column;gap:20px;padding:20px 16px;display:flex;overflow-y:auto}.right-panel{border-left:.5px solid #f4c0d1;border-right:none}.center-panel{flex-direction:column;gap:16px;padding:24px;display:flex}.section-label{letter-spacing:1.5px;text-transform:uppercase;color:#d4537e;margin-bottom:10px;font-size:10px;font-weight:500}.upload-zone{text-align:center;cursor:pointer;background:#fbeaf0;border:1.5px dashed #ed93b1;border-radius:14px;justify-content:center;align-items:center;min-height:120px;padding:16px;transition:background .2s;display:flex}.upload-zone:hover{background:#f4c0d1}.upload-placeholder{color:#d4537e;flex-direction:column;align-items:center;gap:6px;display:flex}.upload-placeholder p{color:#993556;margin:0;font-size:12px}.upload-placeholder small{color:#d4537e;font-size:10px}.upload-actions{gap:6px;margin-top:8px;display:flex}.upload-action-btn{color:#993556;cursor:pointer;background:#fff;border:1px solid #f4c0d1;border-radius:8px;flex:1;padding:8px 4px;font-size:12px;transition:all .2s}.upload-action-btn:hover{background:#fbeaf0;border-color:#d4537e}.preview-thumb{object-fit:cover;pointer-events:none;border-radius:10px;width:100%;max-height:180px}.selected-summary{flex-direction:column;gap:6px;display:flex}.selected-tag{color:#993556;background:#fbeaf0;border:.5px solid #f4c0d1;border-radius:8px;padding:6px 10px;font-size:12px}.panel-header{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:10px;display:flex}.panel-title{color:#4b1528;letter-spacing:.2px;font-size:20px;font-weight:600;line-height:1.3}.model-choice-row{gap:10px;display:flex}.model-btn{cursor:pointer;border:none;border-radius:14px;flex:1;padding:14px 16px;font-size:14px;font-weight:600;transition:all .2s}.model-btn.standard{color:#fff;background:linear-gradient(135deg,#993556,#d4537e);box-shadow:0 4px 15px #d4537e59}.model-btn.premium{color:#4b1528;background:linear-gradient(135deg,#ba7517,#fac775);box-shadow:0 4px 15px #ba751759}.model-btn:hover{transform:translateY(-1px)}.model-btn:disabled{opacity:.6;cursor:not-allowed;transform:none}.model-hint{color:#993556;background:#fbeaf0;border:.5px solid #f4c0d1;border-radius:10px;padding:8px 12px;font-size:11px}.model-disclaimer{color:#993556;background:#fcefd8;border:.5px solid #fac775;border-radius:10px;padding:8px 12px;font-size:11px;line-height:1.5}.model-disclaimer strong{color:#4b1528}.gen-btn{color:#fff;cursor:pointer;white-space:nowrap;background:linear-gradient(135deg,#993556,#d4537e);border:none;border-radius:50px;padding:10px 22px;font-size:13px;font-weight:500;transition:all .2s;box-shadow:0 4px 15px #d4537e59}.gen-btn:hover{transform:translateY(-1px)}.gen-btn:disabled{opacity:.6;cursor:not-allowed;transform:none}.view-toggle{background:#fbeaf0;border-radius:50px;gap:8px;width:fit-content;padding:4px;display:flex}.toggle-btn{cursor:pointer;color:#993556;background:0 0;border:none;border-radius:50px;padding:8px 18px;font-size:12px;transition:all .2s}.toggle-btn.active{color:#4b1528;background:#fff;font-weight:500;box-shadow:0 2px 8px #d4537e33}.preview-stage{background:linear-gradient(160deg,#fdf0f5,#fdf8f5,#f5f0fe);border:.5px solid #f4c0d1;border-radius:18px;justify-content:center;align-items:center;min-height:360px;display:flex;overflow:hidden}.loading-state,.empty-state{color:#993556;text-align:center;flex-direction:column;align-items:center;gap:12px;padding:0 20px;display:flex}.loading-state p,.empty-state p{font-size:14px}.loading-state small{color:#d4537e;font-size:12px}.result-image{object-fit:contain;border-radius:18px;width:100%;height:100%;max-height:500px}.none-pill{color:#993556;cursor:pointer;background:#fff;border:1.5px dashed #993556;border-radius:10px;justify-content:center;align-items:center;width:100%;margin-bottom:14px;padding:8px;font-size:12px;transition:all .2s;display:flex}.none-pill:hover{background:#fbeaf0}.none-pill.selected{color:#4b1528;background:#fbeaf0;border-style:solid;border-color:#4b1528;font-weight:500}.color-groups{flex-direction:column;gap:14px;display:flex}.color-group-title{color:#993556;margin-bottom:6px;font-size:10px;font-weight:500}.color-row{flex-wrap:wrap;gap:6px;display:flex}.color-swatch{cursor:pointer;border:2px solid #00000014;border-radius:50%;flex-shrink:0;width:26px;height:26px;transition:all .2s}.color-swatch:hover{transform:scale(1.15)}.color-swatch.selected{border-width:2px;border-color:#4b1528;box-shadow:0 0 0 3px #4b152833}.error-msg{color:#a32d2d;background:#fcebeb;border:.5px solid #f09595;border-radius:10px;padding:10px 14px;font-size:13px}.action-btn{text-align:center;color:#534ab7;cursor:pointer;background:linear-gradient(135deg,#eeedfe,#fbeaf0);border:.5px solid #afa9ec;border-radius:10px;width:100%;padding:10px;font-size:13px;font-weight:500;text-decoration:none}.action-btn:hover{background:linear-gradient(135deg,#e4e2fd,#f4c0d1)}.video-cta-row{justify-content:center;margin-top:-4px;display:flex}.video-btn{color:#fff;cursor:pointer;background:linear-gradient(135deg,#7f77dd,#534ab7);border:none;border-radius:50px;padding:10px 24px;font-size:13px;font-weight:500;transition:all .2s;box-shadow:0 4px 15px #7f77dd59}.video-btn:hover{transform:translateY(-1px)}.video-btn:disabled{opacity:.6;cursor:not-allowed;transform:none}.gallery-view{flex-direction:column;flex:1;gap:20px;padding:24px 28px;display:flex}.gallery-header{justify-content:space-between;align-items:center;display:flex}.gallery-grid{grid-template-columns:repeat(auto-fill,minmax(200px,1fr));gap:16px;display:grid}.gallery-card{background:#fff9fb;border:.5px solid #f4c0d1;border-radius:14px;transition:all .2s;overflow:hidden}.gallery-card:hover{border-color:#d4537e;box-shadow:0 4px 15px #d4537e26}.gallery-thumb-wrap{position:relative}.gallery-thumb{object-fit:cover;background:#000;width:100%;height:220px;display:block}.gallery-delete-btn{cursor:pointer;z-index:2;color:#993556;background:#ffffffe6;border:none;border-radius:50%;justify-content:center;align-items:center;width:32px;height:32px;transition:all .2s;display:flex;position:absolute;top:8px;right:8px;box-shadow:0 2px 8px #00000026}.gallery-delete-btn:hover{background:#fcebeb;transform:scale(1.1)}.gallery-delete-btn:disabled{opacity:.6;cursor:not-allowed}.gallery-card-info{flex-direction:column;gap:4px;padding:10px 12px;display:flex}.gallery-client{color:#4b1528;font-size:13px;font-weight:500}.gallery-color{color:#993556;font-size:11px}.gallery-date{color:#d4537e;font-size:10px}.gallery-toggle-row{gap:4px;padding:8px 12px 0;display:flex}.gallery-toggle-btn{cursor:pointer;color:#993556;background:#fbeaf0;border:none;border-radius:8px;flex:1;justify-content:center;align-items:center;gap:4px;padding:5px;font-size:10px;transition:all .2s;display:flex}.gallery-toggle-btn.active{color:#fff;background:#d4537e;font-weight:500}.gallery-download-row{gap:6px;padding:8px 12px 12px;display:flex}.gallery-download-btn{cursor:pointer;color:#534ab7;background:linear-gradient(135deg,#eeedfe,#fbeaf0);border:.5px solid #afa9ec;border-radius:8px;flex:1;justify-content:center;align-items:center;gap:4px;padding:6px;font-size:10px;transition:all .2s;display:flex}.gallery-download-btn:hover{background:linear-gradient(135deg,#e4e2fd,#f4c0d1)}.lightbox-overlay{z-index:1000;background:#14080eeb;justify-content:center;align-items:center;padding:20px;display:flex;position:fixed;inset:0}.lightbox-content{background:#fff9fb;border-radius:18px;flex-direction:column;gap:14px;width:100%;max-width:600px;max-height:90vh;padding:20px;display:flex;position:relative}.lightbox-close{cursor:pointer;color:#993556;z-index:2;background:#fff;border:none;border-radius:50%;justify-content:center;align-items:center;width:36px;height:36px;display:flex;position:absolute;top:10px;right:10px;box-shadow:0 2px 8px #00000026}.lightbox-close:hover{background:#fcebeb}.lightbox-toggle-row{align-self:center;gap:6px;width:fit-content;display:flex}.lightbox-toggle-row .gallery-toggle-btn{padding:7px 16px;font-size:12px}.lightbox-media{object-fit:contain;background:#000;border-radius:12px;width:100%;max-height:65vh}.lightbox-actions{gap:10px;display:flex}.lightbox-actions .action-btn{flex:1;width:auto}@media (width<=900px){.main-grid{grid-template-columns:1fr}.sidebar,.right-panel{border-bottom:.5px solid #f4c0d1;border-left:none;border-right:none;max-height:none;overflow-y:visible}.topbar{padding:14px 16px}.logo{font-size:18px}nav{gap:12px}nav a{font-size:12px}.center-panel{padding:16px}.panel-title{font-size:17px}.preview-stage{min-height:280px}.upload-zone{min-height:90px;padding:10px}.gallery-view{padding:16px;overflow-y:visible}.gallery-grid{grid-template-columns:repeat(auto-fill,minmax(140px,1fr))}.gallery-thumb{height:160px}.usage-bar-wrap{flex-wrap:wrap;padding:8px 16px}}@media (width<=480px){.panel-header{flex-direction:column;align-items:stretch}.model-choice-row{flex-direction:column}nav{gap:14px;font-size:11px}.color-swatch{width:24px;height:24px}.gallery-grid{grid-template-columns:1fr 1fr}.login-card{padding:28px 22px}}.landing{color:#fff;background:#0d0608;width:100%;font-family:Segoe UI,sans-serif;overflow-x:hidden}.landing-nav{-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);z-index:100;background:#0d0608f2;border-bottom:.5px solid #d4537e33;justify-content:space-between;align-items:center;padding:20px 5vw;display:flex;position:sticky;top:0}.landing-logo{color:#fff;letter-spacing:2px;font-family:Georgia,serif;font-size:22px}.landing-logo span{color:#fac775;font-style:italic}.landing-nav-links{gap:32px;display:flex}.landing-nav-links a{color:#ffffffb3;letter-spacing:.5px;cursor:pointer;font-size:13px;text-decoration:none}.landing-nav-links a:hover{color:#fac775}.landing-nav-right{align-items:center;gap:12px;display:flex}.landing-lang-btn{color:#fff;cursor:pointer;letter-spacing:.5px;background:#ffffff1a;border:.5px solid #fff3;border-radius:50px;padding:8px 16px;font-size:12px;transition:all .2s}.landing-lang-btn:hover{background:#ffffff2e}.landing-nav-cta{color:#fff;cursor:pointer;letter-spacing:.5px;background:#d4537e;border:none;border-radius:50px;padding:10px 24px;font-size:13px;transition:all .2s}.landing-nav-cta:hover{background:#993556;transform:translateY(-1px)}.landing-hero{grid-template-columns:1fr 420px;align-items:center;gap:60px;max-width:1600px;min-height:90vh;margin:0 auto;padding:80px 5vw;display:grid;position:relative;overflow:hidden}.landing-hero:before{content:"";pointer-events:none;background:radial-gradient(circle,#d4537e14 0%,#0000 70%);border-radius:50%;width:600px;height:600px;position:absolute;top:50%;right:-100px;transform:translateY(-50%)}.landing-eyebrow{background:#d4537e1f;border:.5px solid #d4537e66;border-radius:50px;align-items:center;gap:8px;margin-bottom:24px;padding:6px 16px;display:inline-flex}.landing-eyebrow-dot{background:#d4537e;border-radius:50%;flex-shrink:0;width:7px;height:7px;animation:2s infinite landingPulse}@keyframes landingPulse{0%,to{opacity:1}50%{opacity:.4}}.landing-eyebrow span{color:#ed93b1;letter-spacing:1.5px;font-size:12px}.landing-title{color:#fff;margin-bottom:20px;font-family:Georgia,serif;font-size:clamp(34px,5vw,58px);line-height:1.1}.landing-title em{color:#fac775;font-style:italic}.landing-subtitle{color:#ffffffa6;max-width:480px;margin-bottom:36px;font-size:16px;line-height:1.8}.landing-hero-btns{flex-wrap:wrap;align-items:center;gap:16px;margin-bottom:48px;display:flex}.landing-btn-primary{color:#fff;cursor:pointer;white-space:nowrap;background:#d4537e;border:none;border-radius:50px;padding:14px 32px;font-size:14px;font-weight:500;transition:all .2s}.landing-btn-primary:hover{background:#993556;transform:translateY(-2px);box-shadow:0 8px 25px #d4537e66}.landing-btn-secondary{color:#fffc;cursor:pointer;white-space:nowrap;background:0 0;border:.5px solid #ffffff4d;border-radius:50px;padding:14px 32px;font-size:14px;transition:all .2s}.landing-btn-secondary:hover{color:#fff;border-color:#fff9}.landing-stats{border-top:.5px solid #ffffff14;flex-wrap:wrap;gap:40px;padding-top:36px;display:flex}.landing-stat-val{color:#fac775;font-size:28px;font-weight:600}.landing-stat-label{color:#ffffff8c;margin-top:3px;font-size:12px}.landing-phone-wrap{justify-content:center;align-items:center;width:100%;display:flex;position:relative}.landing-phone-glow{background:radial-gradient(circle,#d4537e1f 0%,#0000 70%);border-radius:50%;width:360px;height:360px;position:absolute}.landing-phone{z-index:2;background:#111;border:8px solid #1a1a1a;border-radius:44px;width:280px;max-width:100%;position:relative;box-shadow:0 40px 80px #0009}.landing-phone-notch{z-index:3;background:#111;border-radius:0 0 16px 16px;width:80px;height:22px;margin:0 auto;position:relative}.landing-phone-screen{background:#150a10;border-radius:0 0 36px 36px;min-height:460px;padding:16px}.landing-phone-topbar{padding:6px 4px 16px}.landing-phone-logo{color:#fac775;letter-spacing:1px;font-family:Georgia,serif;font-size:14px}.landing-phone-upload{background:#d4537e12;border:1px dashed #d4537e59;border-radius:14px;margin-bottom:12px;padding:14px}.landing-phone-upload.purple{background:#7f77dd12;border-color:#7f77dd59}.landing-phone-upload-label{color:#ffffff80;letter-spacing:1.5px;margin-bottom:8px;font-size:9px}.landing-phone-upload-box{text-align:center;background:#d4537e1a;border-radius:10px;padding:18px 10px}.landing-phone-upload-box.purple{background:#7f77dd1f}.landing-phone-upload-box p{color:#fff9;font-size:10px}.landing-phone-genbtn{color:#fff;cursor:pointer;background:linear-gradient(135deg,#993556,#d4537e);border:none;border-radius:50px;width:100%;padding:12px;font-size:12px;font-weight:500}.landing-section{box-sizing:border-box;width:100%;max-width:1400px;margin:0 auto;padding:80px 5vw}.landing-section-tag{letter-spacing:2.5px;color:#d4537e;text-transform:uppercase;margin-bottom:10px;font-size:11px}.landing-section-title{color:#fff;margin-bottom:8px;font-family:Georgia,serif;font-size:clamp(26px,4vw,36px)}.landing-section-sub{color:#ffffff8c;margin-bottom:48px;font-size:15px}.landing-feat-grid{grid-template-columns:repeat(3,1fr);gap:20px;display:grid}.landing-feat-card{background:#ffffff06;border:.5px solid #d4537e1f;border-radius:20px;padding:28px 24px;transition:all .3s}.landing-feat-card:hover{background:#d4537e0d;border-color:#d4537e4d;transform:translateY(-3px)}.landing-feat-title{color:#fff;margin-bottom:8px;font-size:15px;font-weight:500}.landing-feat-desc{color:#fff9;font-size:13px;line-height:1.7}.landing-steps{grid-template-columns:repeat(4,1fr);gap:20px;margin-top:40px;display:grid}.landing-step{text-align:center;padding:20px 16px}.landing-step-num{color:#d4537e;background:#0d0608;border:.5px solid #d4537e66;border-radius:50%;justify-content:center;align-items:center;width:48px;height:48px;margin:0 auto 16px;font-size:16px;display:flex}.landing-step-title{color:#fff;margin-bottom:8px;font-size:15px;font-weight:500}.landing-step-desc{color:#fff9;font-size:13px;line-height:1.6}.landing-plans{grid-template-columns:repeat(3,1fr);gap:20px;margin-top:40px;display:grid}.landing-plan{background:#ffffff06;border:.5px solid #ffffff12;border-radius:20px;padding:28px 24px}.landing-plan.featured{background:#d4537e0d;border-color:#d4537e80}.landing-plan-badge{color:#ed93b1;background:#d4537e2e;border:.5px solid #d4537e4d;border-radius:50px;margin-bottom:14px;padding:4px 14px;font-size:10px;display:inline-block}.landing-plan-name{color:#fff;margin-bottom:6px;font-size:16px;font-weight:500}.landing-plan-price{color:#fac775;margin-bottom:4px;font-size:36px;font-weight:600}.landing-plan-price span{color:#ffffff80;font-size:14px;font-weight:400}.landing-plan-desc{color:#ffffff80;margin-bottom:20px;font-size:13px}.landing-plan-features{flex-direction:column;gap:10px;list-style:none;display:flex}.landing-plan-features li{color:#ffffffb3;font-size:13px}.landing-cta{text-align:center;padding:80px 5vw;position:relative;overflow:hidden}.landing-cta:before{content:"";background:radial-gradient(circle,#d4537e14 0%,#0000 70%);border-radius:50%;width:500px;height:500px;position:absolute;top:50%;left:50%;transform:translate(-50%,-50%)}.landing-cta-title{color:#fff;margin-bottom:16px;font-family:Georgia,serif;font-size:clamp(26px,4vw,44px);position:relative}.landing-cta-sub{color:#fff9;margin-bottom:36px;font-size:15px;position:relative}.landing-footer{border-top:.5px solid #ffffff0f;justify-content:space-between;align-items:center;padding:32px 5vw;display:flex}.landing-footer-copy{color:#ffffff73;font-size:12px}@media (width<=900px){.landing-nav{padding:16px 20px}.landing-nav-links{display:none}.landing-hero{grid-template-columns:1fr;gap:40px;min-height:auto;padding:50px 20px}.landing-hero:before{display:none}.landing-phone-wrap{order:-1}.landing-phone{width:220px}.landing-phone-screen{min-height:380px;padding:12px}.landing-section{padding:50px 20px}.landing-feat-grid{grid-template-columns:1fr}.landing-steps{grid-template-columns:1fr 1fr}.landing-plans{grid-template-columns:1fr}.landing-cta{padding:50px 20px}.landing-footer{text-align:center;flex-direction:column;gap:12px;padding:24px 20px}.landing-stats{gap:24px}}@media (width<=480px){.landing-hero-btns{flex-direction:column;align-items:stretch}.landing-btn-primary,.landing-btn-secondary{text-align:center}.landing-steps{grid-template-columns:1fr}}
