@font-face{font-family:Studio;src:local('Helvetica Neue');font-display:swap}*{box-sizing:border-box} :root{--paper:#f7f6f2;--ink:#282923;--muted:#75756d;--line:#dcdcd3;--lilac:#d4c3f1;--lilac-light:#ede7f5;--white:#fffefa;--green:#687458}html{scroll-behavior:smooth}body{margin:0;background:var(--paper);color:var(--ink);font:14px Studio,'Helvetica Neue',Arial,sans-serif;line-height:1.5}button,input,select{font:inherit}button,a,input,select,summary{-webkit-tap-highlight-color:transparent}button{cursor:pointer;color:inherit}button{transition:background .18s,transform .18s,border-color .18s}button:hover:not(:disabled){transform:translateY(-1px)}button:disabled{cursor:not-allowed;opacity:.46}button:focus-visible,a:focus-visible,input:focus-visible,select:focus-visible,summary:focus-visible{outline:3px solid #8765b9;outline-offset:4px}button,input,select{border-radius:0}input,select{background:var(--white);border:1px solid var(--line);padding:11px 12px;color:var(--ink)}a{color:inherit}h1,h2,h3,h4,p,figure{margin:0}h1,h2,h3,h4{font-weight:500}em{font-family:Georgia,'Times New Roman',serif;font-weight:400}button svg{width:18px;height:18px}[hidden]{display:none!important}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.skip-link{position:fixed;top:-60px;left:20px;padding:12px;background:var(--ink);color:#fff;z-index:100}.skip-link:focus{top:10px}.topbar{height:96px;max-width:1440px;margin:0 auto;padding:0 64px;display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid var(--line);gap:24px}.wordmark{font-size:36px;font-weight:750;letter-spacing:-2.5px;line-height:1;text-decoration:none}.wordmark span{color:#8c6cb5}.topbar nav{display:flex;align-items:center;align-self:stretch;gap:32px}.nav-link{background:none;border:0;border-bottom:2px solid transparent;padding:4px 0 0;font-size:13px;color:var(--muted)}.nav-link.active{color:var(--ink);border-color:var(--ink)}.count{background:#e8e7e0;font-size:10px;display:inline-grid;place-items:center;min-width:20px;height:20px;border-radius:50%;margin-left:5px}.privacy-badge{display:flex;align-items:center;gap:9px;font-size:11px;border:1px solid var(--line);border-radius:30px;padding:9px 14px;background:transparent}.small-icon{font-size:17px}.status-dot{width:5px;height:5px;background:var(--green);border-radius:50%}main{max-width:1440px;padding:0 64px;margin:auto}.intro{position:relative;display:flex;justify-content:space-between;align-items:center;padding:45px 0 38px}.eyebrow{display:block;font-size:10px;font-weight:600;letter-spacing:1.9px;margin-bottom:17px}h1{font-size:clamp(48px,5.8vw,76px);line-height:1.04;letter-spacing:-3px}.intro h1{position:relative;display:inline-block}.intro em{letter-spacing:-3.6px}.star{position:absolute;right:-89px;top:36px;font-size:67px;color:#9e86c3;font-weight:400}.intro-copy{margin-top:21px;font-size:13px;color:var(--muted);line-height:1.65}.intro-note{display:flex;align-items:center;gap:21px;margin:40px 56px 0 0}.note-spark{font:90px Georgia;color:#9e86c3;transform:rotate(7deg)}.intro-note p{font-size:16px;line-height:1.6;transform:rotate(-5deg)}.intro-note em{font-size:18px}.workspace-heading{display:flex;align-items:center;justify-content:space-between;margin:1px 0 18px}.workspace-heading h2{font-size:17px;letter-spacing:-.3px}.mode-badge{display:inline-block;border:1px solid #c5c4ba;border-radius:3px;padding:5px 8px;font-size:8px;font-weight:600;letter-spacing:1.1px;background:#f4f3ec}.workspace{display:grid;grid-template-columns:minmax(0,1fr) 286px;gap:28px;align-items:start}.photo-pair{display:grid;grid-template-columns:1fr 1fr;gap:16px}.photo-card{border:1px solid var(--line);background:var(--white);min-width:0}.card-heading{height:58px;display:flex;align-items:center;justify-content:space-between;padding:0 18px}.card-heading h3{font-size:13px;letter-spacing:-.15px}.card-heading h3 span{font-size:10px;color:var(--muted);margin-right:10px}.icon-button{border:0;background:transparent;min-width:32px;min-height:32px;font-size:23px;font-weight:300;display:grid;place-items:center}.photo-well{position:relative;height:388px;margin:0 10px;display:flex;align-items:center;justify-content:center;overflow:hidden}.reference-well{background:#e6e4e1}.person-well{background:#eeebf2;background-image:radial-gradient(#c9bed8 0.6px,transparent 0.6px);background-size:13px 13px}.crop-surface{position:relative;max-width:100%;max-height:100%;width:auto;touch-action:none;cursor:crosshair;user-select:none}.crop-surface img{display:block;height:388px;max-width:100%;object-fit:contain;pointer-events:none}.crop-box{position:absolute;pointer-events:none;border:1.5px solid #f9fff0;box-shadow:0 0 0 999px #27262338}.crop-box span{position:absolute;top:8px;left:8px;background:#f7f6ee;color:var(--ink);font-size:9px;padding:4px 7px;white-space:nowrap;max-width:calc(100% - 16px);overflow:hidden}.crop-box i{position:absolute;width:8px;height:8px;background:#f8fff1;border:1px solid #34352e}.crop-box i:nth-of-type(1){left:-4px;top:-4px}.crop-box i:nth-of-type(2){right:-4px;top:-4px}.crop-box i:nth-of-type(3){left:-4px;bottom:-4px}.crop-box i:nth-of-type(4){right:-4px;bottom:-4px}.image-tag{position:absolute;left:12px;bottom:12px;background:#fffdf4e8;padding:5px 9px;font-size:9px;color:#44443e;border-radius:2px;pointer-events:none}.upload-empty{text-align:center;padding:25px 14px;width:100%;display:flex;flex-direction:column;align-items:center}.portrait-mark{width:90px;height:116px;color:#978aa5;margin:0 0 20px}.portrait-mark svg{width:100%;height:100%}.upload-empty h4{font-size:20px;letter-spacing:-.6px;margin-bottom:8px}.upload-empty p{font-size:11px;color:#79717e;line-height:1.8}.button{display:flex;justify-content:space-between;align-items:center;gap:16px;min-height:44px;padding:12px 17px;border:1px solid var(--ink);font-size:12px;font-weight:500;text-decoration:none;letter-spacing:.05px}.button.primary{background:var(--lilac);border-color:var(--lilac);color:var(--ink)}.button.primary:hover:not(:disabled){background:#c7aeea;border-color:#c7aeea}.button.dark{background:var(--ink);border-color:var(--ink);color:var(--paper)}.button.dark:hover:not(:disabled){background:#44463b}.button.secondary{background:transparent;border-color:var(--line)}.button.secondary:hover:not(:disabled){background:#efeee8}.upload-empty .button{margin-top:24px;min-width:171px;min-height:42px;font-size:11px}.file-hint{font-size:8px;color:#82788b;margin-top:12px}.upload-symbol{font-size:60px;line-height:1;margin-bottom:25px;color:#8c7c9e}.photo-footer{min-height:55px;padding:10px 15px;display:flex;align-items:center;justify-content:space-between;gap:8px}.photo-footer p{font-size:9px;color:var(--muted)}.text-button{border:0;background:transparent;font-size:11px;text-decoration:none;padding:7px 0;white-space:nowrap}.text-button:hover{text-decoration:underline}.text-button span{margin-left:5px}.tiny-lock{font-size:12px}.person-image{width:100%;height:100%;object-fit:contain}.drag-over{outline:2px dashed #9671bf;outline-offset:-5px;background:#e0d3ef}.controls{padding:8px 0 0}.control-title{display:flex;align-items:center;gap:12px}.step-number{font-size:10px;color:var(--muted);border:1px solid var(--line);display:grid;place-items:center;width:25px;height:25px;border-radius:50%}.control-title h3{font-size:20px;letter-spacing:-.6px}.control-intro{font-size:12px;color:var(--muted);margin:8px 0 19px}.segmented{background:#eae9e2;padding:4px;display:flex;gap:4px;margin-bottom:21px}.segmented button{border:0;background:transparent;flex:1;padding:9px 6px;font-size:11px}.segmented button.selected{background:var(--white);box-shadow:0 1px 4px #00000008}fieldset{border:0;padding:0;margin:0}legend{font-size:8px;letter-spacing:1.3px;color:var(--muted);margin-bottom:10px}.garment-options{display:flex;flex-direction:column;gap:6px}.garment-option{display:flex;align-items:center;gap:10px;padding:9px 12px;border:1px solid var(--line);font-size:11px;background:transparent;min-height:39px;text-align:left}.garment-option.selected{border-color:#9c86b7;background:#eee8f5}.garment-option>span:first-child{font-size:18px;line-height:18px;width:18px;text-align:center;color:#6e6577}.option-check{margin-left:auto;visibility:hidden;font-size:12px;color:#71568f}.selected .option-check{visibility:visible}.crop-help{font-size:10px;color:var(--muted);margin:12px 0 10px;line-height:1.6}.crop-details{font-size:10px;border-bottom:1px solid var(--line);padding-bottom:12px;margin-bottom:12px}.crop-details summary{cursor:pointer;color:#6c5b82;padding:2px 0}.crop-fields{display:grid;grid-template-columns:repeat(4,1fr);gap:6px;margin:10px 0 3px}.crop-fields label{font-size:8px}.crop-fields input{width:100%;padding:6px 4px;margin-top:4px;font-size:11px}.photo-type-label{display:block;font-size:9px;color:var(--muted);margin-bottom:5px}select{width:100%;font-size:10px;padding:8px 10px;min-height:35px}.preservation-note{display:flex;gap:9px;padding:16px 0 17px}.preservation-note>span{font-size:25px;line-height:25px;color:#88739e}.preservation-note strong{font-size:11px;font-weight:500}.preservation-note p{font-size:9px;color:var(--muted);line-height:1.65;margin-top:4px}.create-button{width:100%;min-height:47px}.action-note{font-size:9px;text-align:center;color:var(--muted);line-height:1.8;margin-top:10px}.inline-status{font-size:10px;color:#8c3f35;margin-top:10px}.under-workspace{display:flex;justify-content:space-between;padding:19px 0 41px;border-bottom:1px solid var(--line);font-size:10px;color:var(--muted)}.under-workspace p{font:italic 15px Georgia;color:#7b6b8a}.footer{max-width:1440px;margin:0 auto;padding:27px 64px;display:flex;align-items:center;gap:25px}.footer .wordmark{font-size:24px;letter-spacing:-1.6px}.footer p{font-size:9px;color:var(--muted);margin-right:auto}.footer .text-button{font-size:9px}.result-section{padding:40px 0;border-bottom:1px solid var(--line)}.section-heading{display:flex;align-items:center;justify-content:space-between;gap:20px;margin-bottom:25px}.section-heading h2{font-size:32px;letter-spacing:-1px}.section-heading .eyebrow{margin-bottom:10px}.result-layout{display:grid;grid-template-columns:1.4fr 1fr;gap:45px;align-items:center}.result-frame{background:#e9e7e0;padding:12px;min-width:0}.result-frame img{width:100%;display:block;max-height:620px;object-fit:contain}.result-info{padding:20px 0}.result-info h3{font:italic 37px Georgia;letter-spacing:-1.2px;margin:22px 0 15px}.result-info>p{color:var(--muted);font-size:12px;max-width:330px}.result-tabs{display:flex;gap:7px;margin:24px 0 18px}.result-tabs button{border:1px solid var(--line);padding:9px 14px;background:transparent;font-size:10px}.result-tabs button.selected{background:var(--ink);color:var(--paper);border-color:var(--ink)}.result-info .review-note{font-size:10px;line-height:1.8}.result-actions{display:flex;flex-direction:column;gap:10px;max-width:330px;margin:22px 0 10px}.small-copy{font-size:10px;color:var(--muted);line-height:1.8}.result-info .small-copy{font-size:9px}.comparison-stage{position:relative;width:min(100%,413.333px);margin-inline:auto;aspect-ratio:2/3;overflow:hidden;background:#e4e1dc;cursor:ew-resize;touch-action:pan-y;user-select:none;isolation:isolate}.comparison-stage>img,.comparison-stage #comparison-original img{position:absolute;inset:0;width:100%;height:100%;object-fit:contain;max-height:none}#comparison-original{position:absolute;inset:0;clip-path:inset(0 50% 0 0);background:#e4e1dc}.comparison-line{position:absolute;left:50%;width:1px;background:#fff;top:0;bottom:0;pointer-events:none}.comparison-line span{position:absolute;top:50%;transform:translate(-50%,-50%);width:35px;height:35px;border-radius:50%;background:var(--white);display:grid;place-items:center;font-size:19px}.compare-label{position:absolute;bottom:12px;background:#fffef2e6;font-size:9px;padding:4px 9px}.compare-label.before{left:12px}.compare-label.after{right:12px}.slider-label{display:flex;align-items:center;font-size:10px;gap:15px;padding:14px 5px 4px}.slider-label input{flex:1;accent-color:#9878bd;padding:0}.saved-heading{padding:50px 0 20px;align-items:end}.saved-heading h1{font-size:65px;margin:5px 0 20px}.saved-heading>div>p:last-child{font-size:12px;color:var(--muted)}.saved-tools{display:flex;align-items:center;gap:20px;flex-wrap:wrap}.saved-empty{padding:65px 20px 95px;text-align:center;border:1px dashed #cecbbf;background:#f0eee7}.saved-empty>span{font:64px Georgia;color:#9c86b7}.saved-empty h2{font-size:26px;letter-spacing:-.8px;margin:5px 0 13px}.saved-empty p{font-size:12px;color:var(--muted)}.saved-empty .button{margin:25px auto 0;max-width:210px}.saved-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:22px;padding-bottom:40px}.saved-card{border:1px solid var(--line);background:var(--white);overflow:hidden}.saved-card img{display:block;width:100%;aspect-ratio:4/3;object-fit:contain;background:#ede9e0}.saved-card-info{padding:16px}.saved-card h2{font-size:17px;overflow-wrap:anywhere;margin-bottom:5px}.saved-card p{font-size:9px;color:var(--muted)}.saved-card-actions{display:flex;gap:16px;margin-top:10px;align-items:center;flex-wrap:wrap}.saved-card-actions label{font-size:10px;display:flex;align-items:center;gap:5px;cursor:pointer}.saved-card-actions input{accent-color:#8b68b2}.saved-card-actions button{font-size:10px}.danger{color:#944637}.saved-card .mode-badge{margin-top:12px;font-size:7px}dialog{width:min(550px,calc(100% - 32px));max-height:calc(100dvh - 48px);overflow:auto;background:var(--paper);color:var(--ink);border:1px solid var(--line);padding:40px;box-shadow:0 20px 100px #29242333}dialog::backdrop{background:#23231e80;backdrop-filter:blur(5px)}dialog .eyebrow{margin:0 20px 14px 0;font-size:9px}dialog h2{font-size:39px;line-height:1.1;letter-spacing:-1.5px;margin-bottom:22px}dialog>p{font-size:12px;line-height:1.7;margin-bottom:16px}dialog>.small-copy{font-size:10px}dialog>.button{width:100%;margin-top:20px}.dialog-close{position:absolute;right:13px;top:13px}.privacy-points{display:flex;flex-direction:column;gap:19px;margin:26px 0}.privacy-points>div{display:flex;gap:16px;font-size:11px;line-height:1.8}.privacy-points>div>span{color:#8a739e;font-size:10px;padding-top:2px}.privacy-points strong{font-weight:600}.consent-images{display:grid;grid-template-columns:1fr 1fr;gap:12px;margin-bottom:20px;background:#eeeae3;padding:12px}.consent-images img{width:100%;height:170px;object-fit:contain}.consent-images figcaption{font-size:9px;text-align:center;margin-top:7px}.consent-check{display:flex;gap:12px;font-size:11px;line-height:1.6;align-items:flex-start;margin:20px 0}.consent-check input{accent-color:#9976b9;flex-shrink:0;width:16px;height:16px;margin:1px 0 0}.export-preview{width:100%;max-height:49vh;object-fit:contain;background:#e9e6dd;margin-bottom:15px}form>label{display:block;font-size:11px;margin-bottom:8px}form>input{width:100%;margin-bottom:14px}form>.button{width:100%;margin-top:20px}form>p[role=alert]{font-size:11px;color:#914838;margin-top:12px}.wide-dialog{width:min(950px,calc(100% - 32px))}.saved-comparison{display:grid;grid-template-columns:1fr 1fr;gap:18px}.saved-comparison img{width:100%;aspect-ratio:3/4;object-fit:contain;background:#eae7df}.saved-comparison figcaption{font-size:14px;margin-top:12px;overflow-wrap:anywhere}.saved-comparison .small-copy{margin-top:5px}.confirm-actions{display:flex;gap:12px;margin-top:25px}.confirm-actions button{flex:1}.toast{position:fixed;bottom:25px;left:50%;transform:translateX(-50%);z-index:50;max-width:calc(100% - 32px);background:var(--ink);color:var(--white);padding:13px 21px;font-size:12px;box-shadow:0 5px 30px #0003}.boot{min-height:100dvh;display:flex;flex-direction:column;justify-content:center;align-items:center;gap:25px}.boot p{color:var(--muted);font-size:12px}.lock-screen{min-height:100dvh;display:grid;place-items:center;background:radial-gradient(ellipse at 80% 30%,#dfd0ef 0,transparent 55%),var(--paper);padding:30px}.lock-card{width:min(380px,100%)}.lock-card .wordmark{display:block;margin-bottom:55px}.lock-card h1{font-size:65px}.lock-card>p{color:var(--muted);font-size:13px;margin:24px 0}.lock-card .eyebrow{font-size:9px}.lock-card form{margin-top:33px}.working .create-button span:last-child{animation:spin 2s linear infinite}.working .create-button{opacity:.7}@keyframes spin{to{transform:rotate(360deg)}}
@media(min-width:1450px){.photo-well{height:440px}.crop-surface img{height:440px}.workspace{grid-template-columns:minmax(0,1fr) 310px;gap:36px}.controls{padding-top:10px}.intro{padding-top:55px;padding-bottom:46px}.topbar{height:100px}}
@media(max-width:1150px){.topbar,main,.footer{padding-left:32px;padding-right:32px}.workspace{grid-template-columns:minmax(0,1fr) 250px;gap:20px}.photo-pair{gap:12px}.photo-well{height:365px}.crop-surface img{height:365px}.photo-footer{padding:10px}.photo-footer p{font-size:8px}.intro-note{margin-right:15px}.privacy-badge{font-size:10px}.card-heading{padding:0 12px}.card-heading h3{font-size:11px}.card-heading h3 span{margin-right:6px}.upload-empty .button{min-width:145px}.upload-empty h4{font-size:18px}.upload-empty p{font-size:10px}.file-hint{font-size:7px}.portrait-mark{width:80px;height:104px}.topbar nav{gap:23px}}
@media(max-width:900px){.workspace{grid-template-columns:1fr}.photo-well{height:400px}.crop-surface img{height:400px}.controls{display:grid;grid-template-columns:1fr 1fr;gap:0 28px;padding:22px 0}.control-title,.control-intro,.segmented,#category-options,.crop-help,.crop-details{grid-column:1}.photo-type-label,select,.preservation-note,.create-button,.action-note,.inline-status{grid-column:2}.photo-type-label{grid-row:1;align-self:end;margin-bottom:8px}.controls select{grid-row:2/4;align-self:start}.preservation-note{grid-row:3/6;align-self:start;margin-top:32px}.create-button{grid-row:6;align-self:start}.action-note{grid-row:7;align-self:start}.inline-status{grid-row:8}.crop-details{margin-bottom:0}.control-intro{margin:8px 0 15px}.segmented{margin-bottom:15px}.card-heading h3{font-size:13px}.photo-footer p{font-size:10px}.card-heading{padding:0 18px}.photo-footer{padding:10px 15px}.upload-empty h4{font-size:22px}.upload-empty p{font-size:12px}.file-hint{font-size:9px}.portrait-mark{width:100px;height:130px}.topbar{height:80px}.privacy-badge{padding:8px;font-size:0;gap:5px}.privacy-badge .small-icon{font-size:18px}.intro-note{margin-right:20px}.intro-note p{font-size:13px}.note-spark{font-size:65px}.saved-grid{grid-template-columns:1fr 1fr}.result-layout{gap:25px;grid-template-columns:1.1fr 1fr}.result-info h3{font-size:32px}}
@media(max-width:600px){.topbar,main,.footer{padding-left:20px;padding-right:20px}.topbar{height:75px;gap:12px}.wordmark{font-size:29px;letter-spacing:-2px}.topbar nav{gap:17px;margin-left:auto}.nav-link{font-size:10px}.count{font-size:8px;min-width:16px;height:16px;margin-left:2px}.privacy-badge{display:none}.intro{padding:34px 0 32px}.eyebrow{font-size:8px;letter-spacing:1.6px;margin-bottom:15px}h1{font-size:58px;letter-spacing:-2.5px}.intro em{letter-spacing:-3px}.star{font-size:44px;top:42px;right:-65px}.intro-copy{font-size:11px;margin-top:19px}.intro-note{display:none}.workspace-heading{margin-bottom:15px;gap:10px}.workspace-heading h2{font-size:15px}.mode-badge{font-size:7px;letter-spacing:.7px;padding:5px 6px}.photo-pair{grid-template-columns:1fr;gap:17px}.photo-well{height:345px;margin:0 10px}.crop-surface img{height:345px}.card-heading{height:51px;padding:0 16px}.card-heading h3{font-size:12px}.photo-footer{min-height:48px}.photo-footer p{font-size:9px}.upload-empty h4{font-size:22px}.upload-empty .button{margin-top:20px}.portrait-mark{width:82px;height:108px;margin-bottom:14px}.upload-empty p{font-size:11px}.person-well{height:330px}.file-hint{font-size:8px}.controls{display:block;padding:10px 0 0}.control-title h3{font-size:23px}.control-intro{font-size:12px;margin:9px 0 20px}.segmented{margin-bottom:20px}.segmented button{font-size:12px;min-height:42px}legend{font-size:9px}.garment-option{min-height:47px;font-size:12px}.garment-options{gap:8px}.crop-help{font-size:11px;margin-top:15px}.crop-details{font-size:11px;margin:13px 0 17px;padding-bottom:17px}.crop-fields label{font-size:10px}.crop-fields input{min-height:42px;font-size:12px}.photo-type-label{font-size:10px;margin:0 0 8px}select{min-height:43px;font-size:12px}.preservation-note{padding:21px 0}.preservation-note strong{font-size:12px}.preservation-note p{font-size:10px}.create-button{min-height:50px;font-size:13px}.action-note{font-size:10px;margin:12px 0 0}.under-workspace{flex-direction:column;gap:14px;padding:26px 0 30px}.under-workspace p{align-self:flex-end}.footer{flex-wrap:wrap;gap:14px;padding-top:25px;padding-bottom:25px}.footer p{font-size:8px;width:calc(100% - 100px);margin:0}.footer>.text-button{margin-left:auto}.result-section{padding:30px 0}.section-heading{align-items:start}.section-heading h2{font-size:26px}.section-heading>.text-button{font-size:9px}.result-layout{grid-template-columns:1fr;gap:0}.result-info{padding:24px 0 5px}.result-info h3{font-size:34px;margin:17px 0 12px}.result-info>p{max-width:none}.result-actions{max-width:none}.result-tabs{margin:20px 0 15px}.saved-heading{padding:35px 0 10px;flex-direction:column;align-items:start;gap:25px}.saved-heading h1{font-size:58px}.saved-heading>div>p:last-child{font-size:11px}.saved-tools{width:100%;justify-content:space-between;gap:15px}.saved-tools .button{font-size:10px}.saved-tools .text-button{font-size:10px}.saved-empty{padding:40px 15px 55px}.saved-empty h2{font-size:23px}.saved-empty p{font-size:11px}.saved-grid{gap:16px;grid-template-columns:1fr}.saved-card-info{padding:17px}.saved-card img{aspect-ratio:4/3}.saved-card-actions{gap:20px}.saved-card-actions button,.saved-card-actions label{font-size:11px;min-height:32px}.saved-compare-dialog{padding:22px}.saved-comparison{gap:10px}.saved-comparison figcaption{font-size:12px}dialog{padding:32px 24px;max-height:calc(100dvh - 30px)}dialog h2{font-size:34px}.privacy-points{gap:17px}.privacy-points>div{font-size:10px;gap:12px}.consent-images img{height:145px}.wide-dialog{padding:32px 19px}.wide-dialog h2{font-size:28px}.lock-card h1{font-size:60px}}
.intro-note em{letter-spacing:normal}.action-note{white-space:pre-line}
.crop-surface img{width:auto;height:auto;max-height:388px;max-width:100%}
@media(min-width:1450px){.crop-surface img{max-height:440px}}
@media(max-width:1150px){.crop-surface img{max-height:365px}}
@media(max-width:900px){.crop-surface img{max-height:400px}}
@media(max-width:600px){.crop-surface img{max-height:345px}.intro h1{font-size:clamp(46px,14.8vw,58px)}.star{right:2px;top:73px;font-size:35px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*::before,*::after{animation:none!important;transition:none!important}}

/* Optional local stock example; keep the empty card comfortable on phones. */
.person-well .portrait-mark{width:65px;height:84px;margin-bottom:10px}.person-well .upload-empty{padding:12px 14px}.upload-empty .example-photo-button{margin-top:6px;min-height:30px;font-size:10px;color:#71568f;text-decoration:underline}

.example-choices{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:14px;margin:22px 0}.example-choice{display:flex;flex-direction:column;text-align:left;gap:8px;border:1px solid var(--line);background:var(--white);padding:10px;min-width:0}.example-choice:hover{border-color:#9c86b7;background:#eee8f5}.example-choice img{display:block;width:100%;height:210px;object-fit:contain;background:#eeebe6}.example-choice strong{font-size:12px;font-weight:500}.example-choice span{font-size:10px;color:var(--muted)}@media(max-width:600px){.example-choices{gap:10px}.example-choice{padding:8px;gap:6px}.example-choice img{height:160px}.example-choice strong{font-size:11px}.example-choice span{font-size:9px}}

/* Adjust the garment directly on the image. */
.crop-box{pointer-events:auto;cursor:grab}.crop-box span{pointer-events:none}.crop-surface.dragging,.crop-surface.dragging .crop-box{cursor:grabbing}.crop-surface.redrawing,.crop-surface.redrawing .crop-box{cursor:crosshair}.crop-handle{position:absolute;z-index:2;display:block;width:26px;height:26px;padding:0;border:0;background:transparent;transform:none!important}.crop-handle::after{content:'';position:absolute;inset:8px;background:#f8fff1;border:1px solid #34352e}.crop-handle[data-handle=nw]{left:-13px;top:-13px;cursor:nwse-resize}.crop-handle[data-handle=ne]{right:-13px;top:-13px;cursor:nesw-resize}.crop-handle[data-handle=sw]{left:-13px;bottom:-13px;cursor:nesw-resize}.crop-handle[data-handle=se]{right:-13px;bottom:-13px;cursor:nwse-resize}.selection-tools{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:9px 15px 0}.selection-tools p{font-size:9px;color:var(--muted);line-height:1.5}.selection-tools .text-button{font-size:9px;white-space:normal;flex-shrink:0;color:#71568f}.selection-tools .text-button[aria-pressed=true]{font-weight:600;text-decoration:underline}.crop-surface:focus-visible{outline:2px solid #9472bc;outline-offset:3px}.redrawing .crop-box{pointer-events:none}@media(pointer:coarse){.crop-handle{width:36px;height:36px}.crop-handle::after{inset:13px}.crop-handle[data-handle=nw]{left:-18px;top:-18px}.crop-handle[data-handle=ne]{right:-18px;top:-18px}.crop-handle[data-handle=sw]{left:-18px;bottom:-18px}.crop-handle[data-handle=se]{right:-18px;bottom:-18px}}

/* The comparison surface owns dragging; photos must never become native drag previews. */
.comparison-stage img{pointer-events:none;user-select:none;-webkit-user-drag:none}
.comparison-line{z-index:2;width:2px;box-shadow:0 0 2px #28292380}
.comparison-line span{width:44px;height:44px;border:1px solid var(--line);box-shadow:0 2px 9px #0002}
.comparison-stage .compare-label{z-index:3;pointer-events:none}

/* A friendly first-use guide, using local fonts and readable colour. */
.quick-start{margin:0 0 30px;padding:23px 25px 20px;border:1px solid #dfd5e5;border-radius:18px;background:linear-gradient(115deg,#f1e9f8,#fff4e9 65%,#eaf3ec);font-family:'Trebuchet MS','Avenir Next',Arial,sans-serif}
.quick-start-heading{display:flex;align-items:center;justify-content:space-between;gap:16px;margin-bottom:18px}
.quick-start-kicker{font-size:9px;font-weight:700;letter-spacing:1.5px;color:#75508f;margin-bottom:6px}
.quick-start h2{font-size:clamp(22px,2.4vw,29px);font-weight:700;line-height:1.2;letter-spacing:-.6px;color:#704591}
.quick-start-spark{font-size:35px;line-height:1;color:#9871b5}
.quick-start-steps{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:22px;list-style:none;margin:0;padding:0}
.quick-start-steps li{display:flex;align-items:flex-start;gap:11px;min-width:0}
.guide-number{display:grid;place-items:center;flex:none;width:30px;height:30px;border-radius:50%;font-size:15px;font-weight:700;background:#e4d4f0;color:#704591}
.quick-start h3{font-size:15px;font-weight:700;line-height:1.3;letter-spacing:-.2px;margin:2px 0 5px;color:#704591}
.quick-start-steps p{font-size:12px;line-height:1.6;color:#56564f}
.guide-you .guide-number{background:#d1e7dd;color:#276866}.guide-you h3{color:#276866}
.guide-selection .guide-number{background:#f1d8ca;color:#965344}.guide-selection h3{color:#965344}
.quick-start-finish{font-size:12px;line-height:1.6;margin-top:17px;padding-top:14px;border-top:1px solid #dcd4dc;color:#56564f}
.quick-start-finish strong{color:#704591}
@media(max-width:700px){.quick-start{padding:20px;margin-bottom:24px}.quick-start-heading{margin-bottom:17px;gap:9px}.quick-start h2{font-size:24px;max-width:310px}.quick-start-spark{font-size:28px}.quick-start-steps{grid-template-columns:1fr;gap:15px}.quick-start h3{font-size:15px;margin-top:3px}.quick-start-steps p{font-size:12px}.quick-start-finish{font-size:11px;margin-top:16px;padding-top:12px}}

.gift-note{display:flex;align-items:flex-start;gap:9px;margin-top:12px;padding:11px 13px;border:1px solid #ded1e6;border-radius:10px;background:#fffcf9b8;font-size:12px;line-height:1.6;color:#56564f}.gift-note>span:first-child{color:#8860a3;font-size:22px;line-height:1.15}.gift-note strong{color:#704591;font-weight:700}@media(max-width:700px){.gift-note{font-size:11px;padding:10px 11px}.gift-note strong{display:block}}

/* Proposal only: all birthday-specific layout disappears when the image is removed. */
.birthday-badge{display:block;width:204px;height:auto;max-width:100%;transform:rotate(-6deg);filter:drop-shadow(0 5px 6px #3333260c)}
.intro:has(.birthday-badge) .intro-note{flex-direction:column;gap:9px;margin:0 48px 0 22px;min-width:210px}
.intro:has(.birthday-badge) .note-spark{display:none}
.intro:has(.birthday-badge) .intro-note p{text-align:center;transform:rotate(-3deg);font-size:15px;line-height:1.5}
@media(max-width:900px) and (min-width:601px){.birthday-badge{width:175px}.intro:has(.birthday-badge) .intro-note{min-width:180px;margin-right:12px}}
@media(max-width:600px){.intro:has(.birthday-badge) .intro-note{display:block;position:absolute;top:61px;right:0;margin:0;width:120px;min-width:0}.birthday-badge{width:120px}.intro:has(.birthday-badge) .intro-note p,.intro:has(.birthday-badge) .star{display:none}.intro:has(.birthday-badge) h1{max-width:calc(100% - 126px);font-size:clamp(26px,calc(14vw - 18px),37px);line-height:1.09;letter-spacing:-1.7px}.intro:has(.birthday-badge) h1 em{letter-spacing:-1.7px}}

@media(max-width:600px){.intro:has(.birthday-badge)>div:first-child{width:100%;min-width:0}.intro:has(.birthday-badge) h1{width:calc(100% - 126px);max-width:none}}

@media(max-width:600px){.intro:has(.birthday-badge) h1{min-height:122px}}
@media(max-width:350px){.intro:has(.birthday-badge) .intro-note{width:100px;top:65px}.birthday-badge{width:100px}.intro:has(.birthday-badge) h1{width:calc(100% - 106px);font-size:28px;min-height:110px}}

/* A small handwritten-style creator credit, beside the app name. */
.brand-lockup{display:flex;align-items:baseline;gap:12px;flex-shrink:0}.brand-signature{font:italic 18px Georgia,'Times New Roman',serif;color:#81639e;white-space:nowrap;letter-spacing:-.3px}
@media(max-width:600px){.brand-lockup{gap:7px}.brand-signature{font-size:13px}}
@media(max-width:350px){.brand-lockup{gap:5px}.brand-signature{font-size:11px}.topbar .wordmark{font-size:26px}.topbar{gap:8px}.topbar nav{gap:11px}}

@media(max-width:350px){.topbar .wordmark{font-size:24px}.topbar nav{flex-shrink:0;gap:10px}.topbar .nav-link{white-space:nowrap}.topbar .count{min-width:14px;height:14px;margin-left:3px;font-size:8px}}

/* The longer DripSwap name gets a comfortable two-row header on small phones. */
@media(max-width:420px){.topbar{height:100px;flex-wrap:wrap;justify-content:center;gap:8px;padding-top:12px;padding-bottom:10px}.brand-lockup{width:100%;justify-content:center;gap:9px}.topbar .wordmark{font-size:29px}.brand-signature{font-size:13px}.topbar nav{width:100%;margin-left:0;justify-content:center;align-self:auto;gap:25px}.topbar .nav-link{font-size:11px;min-height:26px}}

/* Keep browser-local saving clear in both empty and populated lookbooks. */
.saved-storage-note{margin:3px 0 24px;padding:17px 20px;border:1px solid #ded5e8;border-radius:12px;background:#f0ebf5;max-width:780px}.saved-storage-note strong{display:block;color:#71558f;font-size:13px;font-weight:600;margin-bottom:5px}.saved-storage-note p{font-size:12px;line-height:1.7;color:#65606b}@media(max-width:600px){.saved-storage-note{padding:15px 16px;margin:12px 0 20px}.saved-storage-note p{font-size:11px}}

.saved-storage-note .saved-password-note{margin-top:12px;padding-top:12px;border-top:1px solid #dcd2e7}.saved-storage-note .saved-password-note strong{display:inline;font-size:inherit;margin:0}

.saved-storage-note .saved-device-note{margin-top:9px;font-size:11px;color:#75707b}

/* Password visibility is optional, keyboard-accessible and hidden by default. */
#login-form>label{display:block;margin-bottom:8px}.password-field{position:relative}.password-field input{width:100%;min-height:52px;padding-right:56px;font-size:16px}.password-toggle{position:absolute;right:4px;top:4px;width:44px;height:44px;display:grid;place-items:center;background:transparent;border:0;color:var(--ink);border-radius:6px}.password-toggle svg{width:23px;height:23px}.password-toggle:hover:not(:disabled){background:color-mix(in srgb,var(--ink) 9%,transparent);transform:none}#login-submit{width:100%;margin-top:16px}
