@font-face{font-family:Manrope Variable;font-style:normal;font-display:swap;font-weight:200 800;src:url(data:font/woff2;base64,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) format("woff2-variations");unicode-range:U+0460-052F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:Manrope Variable;font-style:normal;font-display:swap;font-weight:200 800;src:url(/assets/manrope-cyrillic-wght-normal-Dvxsihut.woff2) format("woff2-variations");unicode-range:U+0301,U+0400-045F,U+0490-0491,U+04B0-04B1,U+2116}@font-face{font-family:Manrope Variable;font-style:normal;font-display:swap;font-weight:200 800;src:url(/assets/manrope-greek-wght-normal-DL7QRZyv.woff2) format("woff2-variations");unicode-range:U+0370-0377,U+037A-037F,U+0384-038A,U+038C,U+038E-03A1,U+03A3-03FF}@font-face{font-family:Manrope Variable;font-style:normal;font-display:swap;font-weight:200 800;src:url(/assets/manrope-vietnamese-wght-normal-usUDDRr7.woff2) format("woff2-variations");unicode-range:U+0102-0103,U+0110-0111,U+0128-0129,U+0168-0169,U+01A0-01A1,U+01AF-01B0,U+0300-0301,U+0303-0304,U+0308-0309,U+0323,U+0329,U+1EA0-1EF9,U+20AB}@font-face{font-family:Manrope Variable;font-style:normal;font-display:swap;font-weight:200 800;src:url(/assets/manrope-latin-ext-wght-normal-Ch3YOpNY.woff2) format("woff2-variations");unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Manrope Variable;font-style:normal;font-display:swap;font-weight:200 800;src:url(/assets/manrope-latin-wght-normal-DHIcAJRg.woff2) format("woff2-variations");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}:root{font-family:Manrope Variable,sans-serif;color:#263242;background:#fafbfc;font-synthesis:none;font-size:14px;--pink:#e768a0;--cyan:#45bcd5;--muted:#88909d;--border:#edf0f3}*{box-sizing:border-box}body{margin:0}button,input,select{font:inherit}button,.button{display:inline-flex;gap:8px;align-items:center;justify-content:center;border:1px solid #e4e8ee;border-radius:10px;background:#fff;color:#415066;padding:11px 16px;font-weight:650;cursor:pointer;text-decoration:none;transition:background .15s,transform .15s}button:hover,.button:hover{background:#f5f7fa}button:disabled,.disabled{opacity:.45;cursor:not-allowed;pointer-events:none}button svg,.button svg{width:18px;height:18px;flex-shrink:0}button:focus-visible,a:focus-visible,input:focus-visible,select:focus-visible{outline:3px solid #b4e8f2;outline-offset:3px}.primary{background:var(--pink);border-color:var(--pink);color:#fff;box-shadow:0 4px 12px #e768a026}.primary:hover{background:#df5d97}.wide{width:100%}h1,h2,h3,p{margin:0}h1{font-size:31px;letter-spacing:-1.25px;font-weight:800;line-height:1.25}h2{font-size:19px;letter-spacing:-.5px}h3{font-size:14px}p{line-height:1.7}.muted{color:var(--muted)}.small,small{font-size:12px}.eyebrow{font-size:10px;font-weight:800;letter-spacing:1.7px;color:#ac7a91;display:block;margin-bottom:10px}.brand{display:flex;align-items:center;gap:12px}.brand img{width:46px;height:46px;object-fit:contain}.brand span{font-size:17px;font-weight:850;letter-spacing:-.6px}.brand small{display:block;font-size:11px;font-weight:600;letter-spacing:1.3px;color:#9b8291;margin-top:2px}.app-shell{display:flex;min-height:100vh}.sidebar{width:238px;flex-shrink:0;position:fixed;inset:0 auto 0 0;background:#fff;border-right:1px solid var(--border);padding:28px 22px;display:flex;flex-direction:column}.sidebar .brand{margin-bottom:45px}.sidebar nav{display:flex;flex-direction:column;gap:8px}.sidebar nav button{justify-content:flex-start;border:0;padding:13px 14px;border-radius:9px;color:#8190a2;font-size:13px}.sidebar nav button.active{color:#cf5e90;background:#fff1f7}.sidebar nav button span{margin-left:auto;font-size:11px;background:#f7dce8;padding:2px 6px;border-radius:5px}.sidebar-bottom{margin-top:auto;font-size:11px;color:#9ca3af}.worker-indicator{display:flex;align-items:center;gap:7px;margin-bottom:25px}.worker-indicator i{width:6px;height:6px;background:#f1b369;border-radius:50%}.worker-indicator.online i{background:#5dc9a2}.storage-label{display:flex;justify-content:space-between;color:#8b95a4;margin-bottom:9px}.storage-label b{color:#617086}.sidebar-bottom small{display:block;font-size:10px;margin-top:8px}.logout{border:0;justify-content:flex-start;padding:12px 0;margin-top:24px;color:#94a0ad;font-size:12px}.main-shell{width:calc(100% - 238px);margin-left:238px;display:flex;flex-direction:column;min-height:100vh}.topbar{height:78px;display:flex;justify-content:space-between;align-items:center;border-bottom:1px solid var(--border);background:#fff;padding:0 44px;color:#929aa6;font-size:12px}.topbar b{font-weight:550;color:#536175;margin-left:6px}.account{display:flex;align-items:center;gap:10px;color:#647185;font-weight:650}.account i{font-style:normal;display:grid;place-items:center;background:#fce7f1;color:#d36998;width:32px;height:32px;border-radius:50%}.content{padding:40px 44px 55px;max-width:1550px;width:100%;margin:0 auto;flex:1}.page-heading{display:flex;align-items:center;justify-content:space-between;gap:25px;margin-bottom:30px}.page-heading p{color:#939ba8;margin-top:10px;font-size:13px}.stats{display:grid;grid-template-columns:repeat(3,1fr);gap:18px;margin-bottom:28px}.card{background:#fff;border:1px solid var(--border);border-radius:14px;box-shadow:0 3px 8px #26324203}.stats .card{padding:22px 25px;display:flex;align-items:center;gap:18px}.stat-icon{width:45px;height:45px;border-radius:12px;display:grid;place-items:center}.stat-icon svg{width:21px}.pink{background:#fff0f6;color:#dc79a5}.cyan{background:#eafbff;color:#51b9cf}.green{background:#eafaef;color:#62b88c}.stats strong{display:block;font-size:27px;line-height:1.15;letter-spacing:-1px}.stats div div span{font-size:11px;color:#98a1af;display:block;margin-top:6px}.drop-zone{border:1.5px dashed #a8dbe6;background:linear-gradient(110deg,#f9fdfe,#fff9fc);border-radius:16px;text-align:center;padding:31px 20px;margin-bottom:35px}.drop-zone.dragging{background:#eaf8fc;border-color:var(--cyan)}.upload-icon{display:inline-grid;place-items:center;width:66px;height:66px;background:#fff;box-shadow:0 4px 12px #45bcd510;border-radius:18px;color:#55bdd3;margin-bottom:15px}.drop-zone h2{font-size:21px}.drop-zone p{font-size:12px;color:#99a3b0;margin:9px 0 19px}.drop-zone>div:not(.upload-icon){display:flex;justify-content:center;gap:10px}.drop-zone small{display:block;font-size:10px;color:#a9b1bd;margin-top:17px}.section-heading{display:flex;justify-content:space-between;align-items:center;margin-bottom:18px}.section-heading h2{font-size:16px}.section-heading h2 span{font-size:11px;color:#aaafba;margin-left:8px;background:#edf0f4;padding:3px 7px;border-radius:5px}.project-list{display:flex;flex-direction:column;gap:10px}.project-row{display:flex;align-items:center}.project-open{border:0;background:transparent;flex:1;justify-content:flex-start;padding:19px 22px;text-align:left;min-width:0}.project-open>div:nth-child(2){min-width:0}.project-open h3{font-size:13px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.project-open p{font-size:11px;color:#a4acb7;margin-top:6px;font-weight:500}.folder-tile{width:45px;height:45px;border-radius:11px;background:#fff2f7;color:#dc83aa;display:grid;place-items:center;margin-right:8px;flex-shrink:0}.folder-tile svg{width:22px}.project-progress{display:flex;align-items:center;gap:22px;margin-left:auto;margin-right:20px;font-size:11px;color:#a0a9b5;flex-shrink:0}.badge{padding:5px 9px;border-radius:6px;font-size:10px;font-weight:700;background:#f0f2f7;color:#8c94a1}.badge.completed{color:#57a980;background:#edf9f3}.badge.processing,.badge.queued{color:#4b9eb2;background:#eaf8fc}.badge.failed,.badge.partial{color:#c48264;background:#fff4e9}.badge.uploading{color:#ae89be;background:#f7effb}.delete-project{margin-right:12px;color:#bac1cc!important;border:0!important}.icon-button{padding:9px;border:0}.empty{text-align:center;padding:56px 20px;color:#c2c9d2}.empty>svg{color:#dba1bb;margin-bottom:12px}.empty h3{color:#939daa;margin-bottom:8px;font-weight:650}.empty p{font-size:12px;color:#b0b7c1}.progress{height:5px;border-radius:4px;background:#eaf0f3;overflow:hidden}.progress i{display:block;height:100%;background:var(--cyan);border-radius:4px;transition:width .3s}.progress.thin{height:4px}.app-footer{padding:18px 44px;display:flex;justify-content:space-between;font-size:10px;color:#b0b7c2;border-top:1px solid var(--border)}.back{border:0;padding:0;background:transparent;font-size:12px;color:#8592a4;margin-bottom:24px}.project-actions{display:flex;align-items:center;gap:8px;flex-wrap:wrap}.project-actions button,.project-actions a{font-size:12px;padding:10px 12px}.notice{display:flex;align-items:center;gap:15px;background:#fff8ed;border:1px solid #f9ead5;border-radius:10px;padding:18px 20px;margin:0 0 20px;font-size:12px;color:#a17e4b}.notice>svg{flex-shrink:0}.notice p{font-size:11px;margin-top:3px}.notice button,.notice>.spin{margin-left:auto;flex-shrink:0}.notice.processing{background:#effafe;border-color:#d4edf3;color:#599aae}.skipped{font-size:11px;color:#9d92a4;margin:14px 0 20px}.skipped p{overflow-wrap:anywhere;max-height:120px;overflow:auto;margin-top:8px}.gallery-toolbar{display:flex;justify-content:space-between;gap:20px;align-items:center;border-bottom:1px solid var(--border);margin:30px 0 24px}.filters{display:flex;gap:18px;overflow:auto}.filters button{background:transparent;border:0;border-bottom:2px solid transparent;border-radius:0;padding:0 0 15px;font-size:12px;color:#9ba4b0;white-space:nowrap}.filters button.active{color:#d46598;border-color:#e68bae}.filters span{font-size:10px;background:#edf0f5;padding:2px 5px;border-radius:5px}.view-toggle{border:0;background:transparent;font-size:11px;padding:0 0 15px;white-space:nowrap}.gallery{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:18px}.photo-card{border:1px solid var(--border);border-radius:12px;overflow:hidden;background:#fff}.photo-image{padding:0;width:100%;height:210px;border:0;border-radius:0;display:block;position:relative;background:#eef1f4}.photo-image img{width:100%;height:100%;object-fit:cover}.photo-image:disabled{opacity:1;pointer-events:none}.photo-badge{position:absolute;top:11px;left:11px;padding:4px 7px;border-radius:5px;background:#ffffffeb;z-index:1;font-size:9px;color:#608378}.photo-badge.review{color:#b4824c}.photo-badge.reject{color:#8996a4}.photo-badge.failed{color:#c16472}.photo-info{padding:14px 14px 12px}.photo-info h3{font-size:11px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.photo-info p{font-size:10px;color:#a0a9b6;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;margin:7px 0 11px}.photo-info>div{display:flex;justify-content:space-between;align-items:center}.photo-info button{border:0;padding:0;background:transparent;font-size:10px;color:#a38797}.photo-info a{color:#8aa0b0;padding:4px}.photo-card.rejected .photo-image img{opacity:.5}.no-photo{display:grid;place-items:center;width:100%;height:100%;min-height:150px;color:#bec8d3;background:#f1f3f6}.hidden-input{display:none}.upload-dock{position:fixed;right:28px;bottom:25px;width:350px;z-index:12;border:1px solid #e5edf1;border-radius:14px;background:#fff;box-shadow:0 8px 45px #22334620;padding:20px}.upload-dock header{display:flex;gap:12px;align-items:center;color:#53b6d0;margin-bottom:17px}.upload-dock header b{font-size:12px;color:#536175;display:block}.upload-dock header span{font-size:10px;color:#a3acb7;display:block;margin-top:5px}.upload-dock button{margin-left:auto;padding:7px;border:0}.upload-dock p{font-size:10px;color:#a3acb7;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;margin-top:9px}.toast{position:fixed;bottom:25px;left:50%;transform:translate(-50%);padding:15px 20px;background:#33465a;color:#fff;border-radius:10px;box-shadow:0 8px 30px #0002;z-index:50;font-size:12px;max-width:90vw;display:flex;align-items:center;gap:20px}.toast button{border:0;padding:0;background:none;color:#fff}.settings-grid{display:grid;grid-template-columns:1fr 1fr;gap:22px}.settings-card{padding:25px}.settings-card h2{display:flex;gap:10px;align-items:center;margin-bottom:12px;font-size:16px}.settings-card h2 svg{width:19px;color:#d38aa9}.settings-card>p{font-size:12px;margin-bottom:23px}.settings-card>label{margin-bottom:22px}.storage-settings{grid-column:1/-1}.storage-settings p{margin:20px 0 0}.settings-footer{display:flex;justify-content:flex-end;align-items:center;gap:20px;margin-top:25px}.watermark-preview{height:165px;background:linear-gradient(140deg,#c1d2cd,#849b9b);border-radius:10px;display:grid;place-items:center;margin-bottom:20px}.watermark-preview img{height:130px;max-width:80%;object-fit:contain}.controls-grid{display:grid;grid-template-columns:1fr 1fr;gap:20px}label{display:block;font-size:11px;font-weight:650;color:#66758a}input:not([type=checkbox]),select{width:100%;display:block;padding:10px 12px;border:1px solid #e1e7ed;border-radius:8px;background:#fff;color:#445469;outline:none;margin-top:8px}input[type=range]{padding:0;border:0;margin-top:15px;accent-color:var(--pink);height:5px}input[type=checkbox]{accent-color:var(--pink)}label.checkbox{display:flex;align-items:center;gap:8px;font-weight:500}.input-value{float:right;color:#a18999;font-size:10px}.success{display:flex;align-items:center;gap:8px;font-size:12px;color:#57a980}.success svg{width:16px}.error{color:#c96172!important}.loading{display:flex;align-items:center;justify-content:center;gap:12px;color:#8a96a6;min-height:250px}.fullscreen{min-height:100vh}.spin{animation:rotate 1s linear infinite}@keyframes rotate{to{transform:rotate(360deg)}}.modal-backdrop{position:fixed;inset:0;background:#1d2d4499;display:flex;align-items:center;justify-content:center;padding:25px;z-index:40;-webkit-backdrop-filter:blur(3px);backdrop-filter:blur(3px)}.modal{background:#fff;border-radius:18px;max-width:1000px;width:100%;max-height:95vh;overflow:auto;padding:24px;outline:none}.modal>header{display:flex;align-items:center;justify-content:space-between;margin-bottom:20px}.modal header h2{font-size:17px}.modal header button{padding:8px;border:0}.modal .eyebrow{font-size:9px;margin-bottom:5px}.comparison{display:grid;grid-template-columns:1fr 1fr;gap:12px}.comparison>div{position:relative;background:#f2f4f6;border-radius:10px;overflow:hidden;height:380px;display:grid;place-items:center}.comparison span{position:absolute;top:12px;left:12px;z-index:1;font-size:10px;padding:4px 8px;background:#ffffffde;border-radius:4px;color:#768599}.comparison img{max-width:100%;max-height:100%;object-fit:contain}.reason{font-size:12px;color:#9b8b93;margin:15px 0}.modal footer{display:flex;justify-content:flex-end;gap:10px;margin-top:25px}.login{min-height:100vh;display:grid;grid-template-columns:1.08fr 1fr}.login-story{background:radial-gradient(ellipse at 0% 100%,#fcebf4,transparent 65%),linear-gradient(120deg,#effbfe,#fcf7fb);padding:45px 60px;display:flex;flex-direction:column;justify-content:space-between}.login-story>div:nth-child(2){margin:70px 0}.login-story h1{font-size:46px;letter-spacing:-2px;line-height:1.25;color:#40566d}.login-story p{color:#95a3b1;font-size:14px;max-width:370px;margin-top:22px}.login-story>.brand{align-self:flex-start}.login-story>small{font-size:10px;color:#b8a4af}.flow{display:flex;align-items:center;gap:12px;margin-top:42px;color:#8ca6b3;font-size:10px}.flow>span{display:flex;align-items:center;gap:6px}.flow svg{width:16px}.flow>svg{width:12px;color:#c1d7df}.login-panel{background:#fff;display:flex;align-items:center;justify-content:center;padding:40px}.login-form{max-width:335px;width:100%}.icon-tile{width:54px;height:54px;border-radius:15px;background:#fff0f7;color:#d878a4;display:grid;place-items:center;margin-bottom:25px}.login-form h2{font-size:26px;letter-spacing:-1px}.login-form>p{font-size:12px;color:#9aa4b2;margin:10px 0 32px}.login-form label{margin-bottom:20px}.login-form .primary{margin-top:8px;padding:13px}.login-form .error{font-size:12px;margin:12px 0}.private-note{display:block;text-align:center;font-size:10px;color:#b9c0cb;margin-top:25px}@media(min-width:1500px){.gallery{grid-template-columns:repeat(5,minmax(0,1fr))}}@media(max-width:1150px){.sidebar{width:200px;padding:26px 16px}.main-shell{margin-left:200px;width:calc(100% - 200px)}.content{padding:32px 28px}.topbar{padding:0 28px}.gallery{grid-template-columns:repeat(3,minmax(0,1fr))}.project-progress{gap:10px;margin-right:8px}.project-progress>span:last-child{display:none}.project-actions{max-width:300px}.stats .card{padding:18px 16px;gap:12px}.login-story{padding:35px}.login-story h1{font-size:38px}}@media(max-width:800px){.sidebar{position:static;width:100%;height:auto;border-bottom:1px solid var(--border);border-right:0;padding:14px 20px;flex-direction:row;align-items:center;justify-content:space-between}.sidebar .brand{margin:0}.brand img{width:36px;height:36px}.brand span{font-size:14px}.brand small{font-size:9px}.sidebar nav{flex-direction:row}.sidebar nav button{padding:9px;font-size:0}.sidebar nav button span{display:none}.sidebar-bottom{display:none}.app-shell{display:block}.main-shell{width:100%;margin-left:0}.topbar{height:48px;padding:0 20px;font-size:10px}.topbar .account{font-size:10px}.account i{height:25px;width:25px}.content{padding:28px 20px}.page-heading{gap:14px;align-items:flex-start;flex-wrap:wrap}.page-heading h1{font-size:26px}.stats{gap:10px}.stats .card{padding:16px 12px;gap:10px}.stat-icon{height:35px;width:35px}.stats strong{font-size:22px}.stats div div span{font-size:9px}.gallery{grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}.photo-image{height:175px}.gallery-toolbar{flex-direction:column;align-items:flex-start;gap:0}.filters{width:100%;gap:16px}.view-toggle{padding-top:12px}.settings-grid{grid-template-columns:1fr}.storage-settings{grid-column:1}.login-story{display:none}.login{grid-template-columns:1fr}.project-actions{max-width:100%}.app-footer{padding:18px 20px}.comparison>div{height:290px}.modal{padding:20px}}@media(max-width:520px){.stats .card{padding:15px 10px;display:block}.stat-icon{height:28px;width:28px;margin-bottom:10px}.stat-icon svg{width:17px}.stats strong{font-size:23px}.drop-zone{padding:28px 15px}.drop-zone h2{font-size:19px}.drop-zone p{font-size:10px}.drop-zone small{font-size:9px}.project-open{padding:16px 12px;gap:8px}.folder-tile{height:34px;width:34px;margin:0}.project-progress{gap:0;margin-right:0}.project-open h3{font-size:11px}.project-open p{font-size:9px}.project-open>svg{display:none}.badge{font-size:8px;padding:4px 6px}.delete-project{margin-right:5px;padding:5px}.gallery{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.photo-image{height:180px}.photo-info{padding:11px}.upload-dock{right:15px;bottom:15px;width:calc(100% - 30px)}.modal-backdrop{padding:8px}.modal{padding:15px;max-height:97vh}.comparison>div{height:240px}.comparison{gap:7px}.controls-grid{gap:15px}.modal .controls-grid{grid-template-columns:1fr 1fr}.notice{padding:15px;flex-wrap:wrap}.notice button{margin-left:0}.app-footer span:last-child{display:none}.eyebrow{font-size:9px}.login-panel{padding:30px}.toast{bottom:15px;width:calc(100% - 30px)}}input.hidden-input{display:none}
