:root{font-family:Arial,Helvetica,sans-serif;color:#263e34;background:#f8f9f5;font-synthesis:none;--green:#254e42;--muted:#788179;--border:#dce2d9}*{box-sizing:border-box}body{margin:0}button,input,select{font:inherit}button,a,input,select{-webkit-tap-highlight-color:transparent}button,a,select{touch-action:manipulation}button,a{cursor:pointer}a{color:inherit;text-decoration:none}button{color:inherit}button:disabled{cursor:not-allowed;opacity:.5}button:focus-visible,a:focus-visible,input:focus-visible,select:focus-visible{outline:3px solid #b48445;outline-offset:4px}[hidden]{display:none!important}header{height:96px;max-width:1320px;margin:auto;display:flex;align-items:center;justify-content:space-between;padding:0 48px;border-bottom:1px solid var(--border)}.brand{font-size:27px;font-weight:700;letter-spacing:-1.5px;display:flex;align-items:center}.brand-dot{color:#7b986e}.brand-mark{font-family:Georgia,serif;letter-spacing:-5px;font-size:24px;width:37px;height:37px;display:inline-flex;align-items:center;padding-left:8px;background:var(--green);color:#f8f9f5;border-radius:10px;margin-right:11px}.brand-mark span{font-style:italic}.header-label{font-size:10px;letter-spacing:2px;color:#7a847c}.help-link{font-size:12px}.help-link span{margin-left:10px}main{max-width:1224px;margin:auto;padding:0 0 45px}.intro{padding:48px 0 34px}.eyebrow{font-size:9px;font-weight:600;letter-spacing:1.8px}.intro .eyebrow{display:flex;align-items:center;gap:8px}.eyebrow>span{width:5px;height:5px;background:#719169;border-radius:50%}h1{font-family:Georgia,'Times New Roman',serif;font-size:46px;line-height:1.2;letter-spacing:-1.8px;font-weight:400;margin:18px 0 14px}h1 span{color:#7e8b78}.intro p{font-size:14px;color:#7a837b;line-height:1.75;margin:0}.studio{display:grid;grid-template-columns:460px 1fr;gap:28px;align-items:start}.controls{background:#fff;border:1px solid var(--border);border-radius:14px;padding:27px}.controls fieldset{border:0;margin:0;padding:0;min-width:0}.step{margin-bottom:25px}.step-title{display:flex;align-items:center;gap:10px;margin-bottom:17px}h2{font-size:15px;font-weight:500;margin:0}.step-number{display:inline-grid;place-items:center;width:25px;height:25px;border-radius:50%;background:#f1f4ed;color:#74806e;font-size:10px}.step-aside{margin-left:auto;font-size:10px;color:#8b9189}.drop-zone{border:1px dashed #bccabb;border-radius:10px;padding:23px 15px 17px;text-align:center;background:#fafbf8;transition:.2s}.drop-zone.drag-over{background:#eaf1e5;border-color:var(--green)}.upload-icon{width:43px;height:43px;stroke:#809377;stroke-width:1.5;margin-bottom:13px}.drop-zone strong{display:block;font-size:13px;font-weight:500}.drop-zone p{font-size:11px;color:#858d83;line-height:1.5;margin:9px 0 18px}.upload-actions{display:flex;justify-content:center;gap:9px;margin:12px 0}.button{min-height:40px;display:inline-flex;align-items:center;justify-content:center;gap:8px;border-radius:6px;font-size:12px;font-weight:500;padding:10px 16px;transition:background .2s}.button-light{border:1px solid #d1dccb;background:#edf2e8}.button-light:hover{background:#dde8d6}.button-outline{border:1px solid #dce2d9;background:#fff}.button-outline:hover{background:#f0f3ed}.drop-zone small{font-size:9px;letter-spacing:.2px;color:#959b92}.micro-note{font-size:10px;color:#8a9187;margin:10px 0 0}.garment-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:9px}.garment-option{position:relative}.garment-option input{position:absolute;opacity:0;width:1px;height:1px}.garment-card{display:flex;flex-direction:column;gap:8px;align-items:center;padding:13px 5px 12px;border:1px solid #e2e6df;border-radius:7px;color:#7e877a;font-size:11px;cursor:pointer;transition:.2s}.garment-card svg{width:32px;height:32px;stroke:currentColor;stroke-width:1.2;fill:none}.garment-option input:checked+.garment-card{background:#f1f5ed;border-color:#59784e;color:#36582d;box-shadow:inset 0 0 0 .5px #59784e}.garment-option input:focus-visible+.garment-card{outline:3px solid #b48445;outline-offset:2px}.select-row{display:grid;grid-template-columns:1fr 1fr;gap:12px}label{display:block;font-size:11px;color:#727d70}select,input[type=password]{display:block;width:100%;margin-top:8px;padding:12px 10px;background:#fff;border:1px solid var(--border);border-radius:6px;font-size:12px;color:#354930}#code-field{margin-top:16px}.generate-button{width:100%;background:var(--green);color:white;border:1px solid var(--green);min-height:49px}.generate-button:hover:enabled{background:#193d32}.generate-button>span:first-child{font-size:20px}.generate-button>span:last-child{margin-left:auto}.generate-button>span:nth-child(2){margin-right:auto}.privacy-note{text-align:center;font-size:9px;color:#949b90;line-height:1.8;margin:12px 0 0}.result-panel{border:1px solid var(--border);background:#f0f3eb;border-radius:14px;overflow:hidden}.preview-top{display:flex;justify-content:space-between;align-items:center;padding:26px 28px}.preview-top .eyebrow{font-size:8px;letter-spacing:1.3px;color:#89927f}.preview-top h2{font-size:16px;margin-top:9px}.preview-pill{font-size:8px;letter-spacing:1px;color:#7f8d75;border:1px solid #d9e0d2;padding:7px 9px;border-radius:4px}.preview-stage{min-height:596px;display:flex;align-items:center;justify-content:center;position:relative;margin:0 22px;background:radial-gradient(ellipse at center,#f7f8f2,#edf1e7);border:1px solid #e0e6d8;border-radius:8px;overflow:hidden}.empty-state{text-align:center;padding:32px 16px}.garment-illustration{position:relative;width:240px;margin:0 auto 32px}.garment-illustration svg{width:225px;filter:drop-shadow(0 10px 9px #71826d14)}.illustration-tag{position:absolute;right:-5px;bottom:0;background:#fffdf7;color:#879075;border:1px solid #e4e7da;box-shadow:0 4px 9px #35493008;border-radius:5px;padding:9px 12px;font-size:9px;transform:rotate(-5deg)}h3{font-family:Georgia,'Times New Roman',serif;font-weight:400;letter-spacing:-.4px;font-size:28px;line-height:1.2;margin:15px 0;color:#687a5f}.empty-state p{color:#919a89;font-size:12px;line-height:1.8}.preview-footer{display:flex;justify-content:center;align-items:center;gap:9px;padding:16px 15px;color:#929b88}.preview-footer p{font-size:9px;margin:0;line-height:1.6}.preview-footer>span{font-size:17px}#fabric-preview{width:100%;height:180px;object-fit:cover;border-radius:5px}.file-info{display:flex;justify-content:space-between;align-items:center;gap:10px;padding-top:6px;font-size:10px;color:#6a7861}.file-info span{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}#remove{background:none;border:0;font-size:22px;padding:3px 8px}#result-image{width:100%;max-height:720px;object-fit:contain}#result-actions{padding:17px 22px 0;display:flex;align-items:center;justify-content:space-between;gap:12px}#result-caption{font-size:11px;color:#637358}.loading-state{text-align:center;padding:30px;max-width:380px}.loading-state p{font-size:13px;color:#7e8b75;line-height:1.7}.loading-state small{font-size:10px;color:#909b87}.spinner{width:46px;height:46px;border:2px solid #d4ddce;border-top-color:#476c3c;border-radius:50%;margin:0 auto 26px;animation:spin 1s linear infinite}@keyframes spin{to{transform:rotate(360deg)}}.notice,#error{background:#fff5e6;color:#856129;border:1px solid #ebd8b5;padding:14px 18px;border-radius:8px;font-size:12px;line-height:1.6}.notice{margin-bottom:20px}#error{margin-bottom:0}.tips{margin-top:41px;border-top:1px solid var(--border);padding-top:28px;display:grid;grid-template-columns:1.6fr 1fr 1fr 1fr;gap:22px}.tips .eyebrow{color:#909985;font-size:8px;letter-spacing:1.1px}.tips h2{font-family:Georgia,serif;font-size:21px;line-height:1.4;margin-top:11px;color:#67765d}.tip span{font-size:9px;letter-spacing:1px;color:#748767}.tip p{font-size:11px;line-height:1.8;color:#8b9383;margin:10px 0 0}footer{max-width:1224px;margin:auto;border-top:1px solid var(--border);padding:24px 0;display:flex;justify-content:space-between;align-items:center;color:#99a18f;font-size:10px}.footer-brand{font-size:15px;font-weight:600;letter-spacing:-.5px;color:#6d7e63}@media(min-width:1400px){.intro{padding-top:58px}}@media(max-width:1320px){main,footer{margin-left:48px;margin-right:48px}}@media(max-width:1000px){.studio{grid-template-columns:minmax(320px,1fr) 1.1fr;gap:18px}.controls{padding:20px}.step-aside{display:none}.preview-top{padding:24px 20px}.preview-pill{display:none}.preview-stage{margin:0 14px;min-height:595px}.tips{grid-template-columns:1fr 1fr}.header-label{display:none}h1{font-size:40px}}@media(max-width:720px){header{height:76px;padding:0 22px}main,footer{margin-left:20px;margin-right:20px}.intro{padding:32px 0 27px}h1{font-size:35px;letter-spacing:-1.1px}h1 span{display:block;margin-top:4px}.intro p{font-size:12px}.desktop-break{display:none}.studio{grid-template-columns:1fr;gap:23px}.controls{padding:22px}.preview-stage{min-height:470px}.preview-top{padding:23px}.preview-footer p{font-size:9px}.tips{grid-template-columns:1fr;gap:19px;margin-top:30px}.tips>div:first-child{margin-bottom:3px}.tip p br{display:none}.tip p{margin-top:5px}.tip p br:after{content:' '}.garment-illustration{width:210px}.garment-illustration svg{width:195px}footer{padding:22px 0}.preview-pill{display:block}.help-link{font-size:11px}}@media(prefers-reduced-motion:reduce){*{scroll-behavior:auto!important;transition:none!important}.spinner{animation-duration:3s}}

.person-section{margin-top:18px;padding:15px;border:1px solid var(--border);border-radius:8px;background:#fafbf8}.person-section .micro-note{line-height:1.6;margin-bottom:12px}.person-section small{font-size:10px;color:var(--muted)}#person-preview{display:block;width:100%;height:220px;object-fit:contain;border-radius:5px;background:#edf1e7}#remove-person{background:none;border:0;font-size:22px;padding:3px 8px}.person-section .upload-actions{flex-wrap:wrap;justify-content:flex-start}

.person-shortcut{width:100%;justify-content:space-between;margin-bottom:16px;min-height:44px}

.garment-card{height:100%;box-sizing:border-box;text-align:center}.garment-card>span{line-height:1.4;min-height:2.8em;display:flex;align-items:center;justify-content:center}

.fabric-list{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.fabric-card{min-width:0}.fabric-card>img{width:100%;height:110px;object-fit:cover;border-radius:6px}.fabric-card button{background:none;border:0;font-size:22px;min-width:36px;min-height:36px}.drop-zone #fabric-count{color:var(--green);font-size:12px;margin-top:0}#results{width:100%;padding:12px;display:grid;gap:16px}.result-card{min-width:0;background:#fff;border:1px solid var(--border);border-radius:8px;padding:12px}.result-card h3{font-family:Arial,Helvetica,sans-serif;font-size:12px;letter-spacing:0;margin:0 0 12px;overflow-wrap:anywhere}.result-pair{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,2fr);gap:12px;align-items:start}.result-pair figure{margin:0}.result-pair figure img{width:100%;aspect-ratio:1;object-fit:cover;border-radius:5px}.result-pair figcaption{font-size:8px;letter-spacing:1px;margin-top:8px;color:var(--muted)}.result-output{min-height:180px;background:#f0f3eb;border-radius:5px;display:flex;align-items:center;justify-content:center;overflow:hidden}.result-output>img{width:100%;display:block}.item-status{font-size:12px;line-height:1.6;padding:14px;text-align:center}.result-failed{background:#fff5e6;color:#856129}.item-actions{display:flex;justify-content:space-between;align-items:center;gap:8px;margin-top:12px}.item-actions>span{font-size:10px;color:var(--muted)}#batch-status{padding:0 22px;font-size:12px;line-height:1.6}.preview-stage:has(#results:not([hidden])){min-height:0;align-items:start}@media(max-width:400px){#results{padding:8px}.result-card{padding:9px}.result-pair{gap:8px}.item-actions{flex-wrap:wrap}}
