:root{font-family:Inter,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;color:#182435;background:#f3f5f8;font-synthesis:none;--accent:#2448dd;--ink:#101a28;--muted:#59677a;--line:#dce2eb;--radius:18px}*{box-sizing:border-box}body{margin:0}button,input,textarea{font:inherit}button,a,input{touch-action:manipulation}button{cursor:pointer}button:disabled{cursor:default;opacity:.5}button:focus-visible,a:focus-visible,input:focus-visible,textarea:focus-visible,summary:focus-visible{outline:3px solid #5278ed;outline-offset:4px}a{color:inherit}button{color:inherit}button,input{min-height:44px}button{border:0}input[type=range]{accent-color:var(--accent);width:100%}[hidden]{display:none!important}.topbar{min-height:80px;padding:18px max(24px,calc((100vw - 1500px)/2));display:flex;align-items:center;justify-content:space-between;background:#fff;border-bottom:1px solid var(--line);gap:20px}.brand{text-decoration:none;font-size:27px;font-weight:800;letter-spacing:-1px;white-space:nowrap}.brand span{color:var(--accent);margin-left:6px}.topbar nav{display:flex;flex-wrap:wrap;gap:6px}.text-button{padding:8px 12px;background:none;font-size:14px;font-weight:600;color:#44536b;border-radius:8px}.text-button:hover{background:#edf1f8;color:var(--accent)}main{max-width:1500px;margin:auto;padding:36px 24px}.page-heading{display:flex;align-items:end;justify-content:space-between;gap:24px;margin-bottom:28px}.eyebrow{font-size:12px;font-weight:750;letter-spacing:.12em;color:#526782}.page-heading h1{font-size:clamp(34px,3.5vw,54px);line-height:1.02;letter-spacing:-.045em;margin:12px 0 14px}.page-heading h1 br{display:none}.page-heading h1 span{color:var(--accent)}.page-heading p:not(.eyebrow){max-width:700px;font-size:17px;line-height:1.5;margin:0}.heading-meta{text-align:right;color:var(--muted);font-size:13px;display:grid;gap:6px}.workspace{display:grid;grid-template-columns:308px minmax(0,1fr);gap:24px;align-items:start}.controls{background:#fff;border:1px solid var(--line);border-radius:var(--radius);padding:22px;position:sticky;top:16px}.step-title{display:flex;gap:10px;align-items:center;margin:18px 0 12px}.step-title:first-child{margin-top:0}.step-title>span{font-size:12px;color:#7a8ca5;font-weight:700}.step-title h2{font-size:16px;margin:0}.upload-button{width:100%;border:1.5px dashed #aabbe5;border-radius:12px;display:grid;justify-items:center;gap:5px;padding:14px 8px;background:#f3f6ff}.upload-button>span{font-size:23px;color:var(--accent)}.upload-button strong{font-size:15px}.upload-button small{font-size:12px;color:var(--muted)}.muted{font-size:14px;line-height:1.5;color:var(--muted)}.controls .muted{font-size:13px}.size-options{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:5px}.size-options button{background:#f3f5f9;border:1px solid transparent;border-radius:9px;padding:10px 2px;display:grid;gap:5px}.size-options button strong{font-size:13px}.size-options button span{font-size:12px;color:var(--muted)}.size-options button[aria-pressed=true]{border-color:var(--accent);color:var(--accent);background:#eef2ff}.looks{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.look{padding:0;background:#fff;border:2px solid transparent;border-radius:9px;overflow:hidden;text-align:left}.look img{width:100%;aspect-ratio:1.5;object-fit:cover;display:block}.look span{display:block;font-size:13px;font-weight:600;padding:7px 3px}.look[aria-pressed=true]{border-color:var(--accent);color:var(--accent)}.range-label{display:flex;justify-content:space-between;font-size:14px;margin:18px 0 0}.processing-options{margin:20px 0 12px;border-top:1px solid var(--line);padding-top:16px;font-size:14px}.processing-options summary{cursor:pointer;font-weight:600;min-height:30px}.check-row{display:flex;gap:10px;align-items:start;margin:10px 0}.check-row input{min-height:20px;accent-color:var(--accent)}.check-row small{display:block;color:var(--muted);font-size:13px;line-height:1.4;margin-top:5px}.access-note{font-size:13px;color:#495e84}.button{display:inline-flex;align-items:center;justify-content:center;min-height:48px;padding:13px 20px;border-radius:10px;font-size:15px;font-weight:650;text-decoration:none;gap:8px}.primary{color:white;background:var(--accent)}.primary:hover{background:#193bc0}.secondary{background:#eaf0fc;color:#264685}.controls>.button{width:100%}.controls>.text-button{width:100%;margin-top:6px}.action-note{text-align:center;margin-bottom:0}.album-surface{min-width:0}.empty-state{background:#101a28;color:#fff;border-radius:var(--radius);overflow:hidden}.sample-photo{position:relative;max-height:380px;overflow:hidden}.sample-photo img{width:100%;height:340px;object-fit:cover;display:block}.sample-photo>span{position:absolute;bottom:16px;left:20px;border-radius:5px;background:#101a28c7;padding:6px 10px;font-size:12px}.empty-state>div:last-child{padding:30px 36px 36px}.empty-state .eyebrow{color:#99b0df}.empty-state h2{font-size:clamp(25px,2.5vw,38px);line-height:1.08;letter-spacing:-.035em;margin:12px 0}.empty-state p:not(.eyebrow){color:#c7d0df;line-height:1.6;max-width:650px}.empty-state .secondary{margin-top:8px;background:#f6f8fc}.notice{background:#e9efff;border:1px solid #b7c9fb;padding:14px 18px;border-radius:12px;line-height:1.5;white-space:pre-line}.notice.error,.error-text{color:#942d32}.notice.error{background:#fff0f0;border-color:#f2b6b6}.processing{padding:22px;background:#fff;border:1px solid #bed0fb;border-radius:var(--radius);margin-bottom:22px}.processing-top,.processing-bottom{display:flex;align-items:center;justify-content:space-between;gap:16px}.processing h2{font-size:19px;margin:7px 0 14px}.processing progress{display:block;width:100%;height:8px;accent-color:var(--accent)}.processing-bottom p{font-size:14px;margin:12px 0;line-height:1.5}.processing .muted{margin:0}.processing-top>span{font-variant-numeric:tabular-nums;color:var(--muted)}.album-heading{display:flex;justify-content:space-between;align-items:start;gap:12px;padding:5px 0 18px}.album-heading input{border:0;background:transparent;font-size:28px;font-weight:750;letter-spacing:-.03em;width:100%;max-width:520px;padding:0}.album-heading p{margin:4px 0 0}.gallery-toolbar{display:flex;align-items:center;justify-content:space-between;gap:8px;margin-bottom:18px;flex-wrap:wrap}.tabs{display:flex;background:#e6ebf3;padding:4px;border-radius:10px}.tabs button{font-size:14px;border-radius:7px;padding:7px 12px;background:none}.tabs button.selected{background:#fff;box-shadow:0 1px 3px #15243912}.tabs span{color:#6f7d90;margin-left:4px}.gallery{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px}.photo-card{border-radius:13px;overflow:hidden;background:#fff;border:1px solid var(--line);min-width:0}.photo-cover{position:relative;aspect-ratio:4/3;background:#dfe5ed}.photo-open{display:block;width:100%;height:100%;padding:0;background:none}.photo-open img{display:block;width:100%;height:100%;object-fit:cover}.photo-badge{position:absolute;top:9px;left:9px;pointer-events:none;border-radius:6px;font-size:12px;background:#fffef5ed;padding:5px 7px;font-weight:600}.photo-keep{position:absolute;right:9px;top:9px;border-radius:50%;width:36px;min-height:36px;background:#fffdf4ed;box-shadow:0 1px 4px #0002;font-size:17px}.photo-keep.active{background:var(--accent);color:#fff}.photo-caption{padding:10px 12px}.photo-caption strong{display:block;font-size:13px;overflow:hidden;white-space:nowrap;text-overflow:ellipsis}.photo-caption p{font-size:12px;color:var(--muted);margin:5px 0 0;line-height:1.4;min-height:2.8em}.photo-state{color:#365ab6!important}.gallery-empty{padding:45px 20px;text-align:center;color:var(--muted)}#load-more{display:flex;margin:24px auto}.delivery{margin-top:28px;border-radius:var(--radius);background:#fff;border:1px solid var(--line);padding:26px;display:grid;grid-template-columns:1fr auto;gap:24px}.delivery h2{font-size:25px;letter-spacing:-.03em;margin:8px 0}.delivery p:not(.eyebrow){font-size:14px;color:var(--muted)}.download-actions{align-self:center}.download-actions .button{width:100%}#download-links{display:grid;gap:8px;margin-top:10px}.feedback{grid-column:1/-1;border-top:1px solid var(--line);padding-top:18px;display:flex;gap:8px;flex-wrap:wrap;align-items:center;font-size:14px}.feedback button{background:#eff3f9;border-radius:20px;padding:8px 13px;font-size:13px}.feedback #feedback-status{width:100%;color:var(--muted)}footer{display:flex;gap:30px;justify-content:space-between;margin:35px 0 5px;font-size:12px;color:var(--muted);line-height:1.6}footer>p{max-width:450px}footer>div{display:flex;align-items:center;justify-content:end;gap:12px;flex-wrap:wrap}footer .text-button{font-size:12px;padding:5px 0}footer a{font-size:12px}dialog{color:var(--ink);width:min(580px,calc(100vw - 24px));max-height:90dvh;border:1px solid var(--line);border-radius:20px;padding:32px;overflow:auto;box-shadow:0 25px 100px #0004}dialog::backdrop{background:#081426a8;backdrop-filter:blur(4px)}dialog h2{font-size:27px;letter-spacing:-.025em;padding-right:20px}dialog p,dialog li{font-size:16px;line-height:1.55}dialog li{margin:12px 0}.dialog-close{position:absolute;right:12px;top:10px;font-size:26px;background:none;border-radius:50%;min-width:44px}dialog label{font-size:14px;display:block;margin:16px 0}dialog input:not([type=range]),dialog textarea{display:block;width:100%;margin-top:8px;padding:12px;border:1px solid #b8c5d8;border-radius:8px;background:white}dialog textarea{font:inherit;resize:vertical}dialog form>.button{width:100%}.photo-dialog{width:min(1060px,calc(100vw - 24px));padding:24px}.photo-dialog-heading{display:flex;gap:20px;justify-content:space-between;padding-right:32px}.photo-dialog-heading h2{font-size:18px;overflow-wrap:anywhere;margin:0}.photo-dialog-heading p{font-size:14px;margin:6px 0 14px}.photo-dialog-heading>div:last-child{white-space:nowrap}.icon-button{width:44px;background:#edf2f9;font-size:22px;border-radius:10px}.compare-view{position:relative;width:100%;aspect-ratio:3/2;background:#101a28;overflow:hidden;border-radius:12px;--split:50%}.compare-view>img{width:100%;height:100%;object-fit:contain;position:absolute;inset:0}#photo-after-wrap{position:absolute;inset:0;clip-path:inset(0 0 0 var(--split));background:#101a28}#photo-after{width:100%;height:100%;object-fit:contain}.compare-label{position:absolute;top:12px;background:#fffdf4d9;color:#182435;padding:5px 9px;border-radius:5px;font-size:12px;pointer-events:none}.before-label{left:12px}.after-label{right:12px}.photo-loading{position:absolute;inset:0;display:grid;place-items:center;background:#1824358c;color:#fff}.compare-control{display:flex!important;align-items:center;gap:15px}.photo-tools{display:flex;flex-wrap:wrap;gap:9px;align-items:center}.photo-tools label{display:flex;align-items:center;gap:10px;margin:0 0 0 auto}.photo-tools input{width:130px}.photo-tools output{width:40px;font-variant-numeric:tabular-nums}.alternatives{display:flex;gap:12px;overflow:auto;padding:4px}.alternative{flex:0 0 120px;background:#edf2f9;border:2px solid transparent;border-radius:9px;padding:0;overflow:hidden}.alternative img{width:100%;aspect-ratio:4/3;object-fit:cover;display:block}.alternative span{display:block;font-size:12px;padding:6px}.alternative.active{border-color:var(--accent)}#history-list{display:grid;gap:10px}#history-list button{padding:15px;border:1px solid var(--line);background:#f5f7fb;border-radius:10px;text-align:left;font-size:14px;line-height:1.5}.visually-hidden{position:absolute;width:1px;height:1px;overflow:hidden;clip-path:inset(50%)}.dragging{outline:3px dashed #2448dd;outline-offset:6px}
@media(min-width:1450px){.gallery{grid-template-columns:repeat(4,minmax(0,1fr))}}@media(max-width:1000px){.workspace{grid-template-columns:260px minmax(0,1fr);gap:16px}.controls{padding:16px}.gallery{grid-template-columns:repeat(2,minmax(0,1fr))}.gallery-toolbar>.text-button{padding-left:0}.delivery{grid-template-columns:1fr}.heading-meta{display:none}.photo-caption p{min-height:4.2em}.page-heading h1 br{display:block}.empty-state>div:last-child{padding:24px}.sample-photo img{height:280px}}
@media(max-width:700px){main{padding:24px 14px}.topbar{padding:12px 16px;min-height:70px;gap:8px;flex-wrap:wrap}.topbar nav{gap:0}.topbar .text-button{font-size:12px;padding:7px}.brand{font-size:24px}.page-heading{margin-bottom:22px}.page-heading h1{font-size:36px}.page-heading p:not(.eyebrow){font-size:16px}.workspace{display:flex;flex-direction:column}.controls{position:static;width:100%;padding:18px}.upload-button{padding:10px}.looks{grid-template-columns:repeat(3,minmax(0,1fr))}.look span{font-size:12px}.size-options button strong{font-size:14px}.size-options button span{font-size:13px}.album-surface{width:100%}.empty-state{margin-top:5px}.sample-photo img{height:240px}.gallery{gap:10px}.photo-caption{padding:9px}.photo-caption p{min-height:0}.photo-caption strong{font-size:12px}.photo-badge{font-size:11px;top:7px;left:7px}.photo-keep{top:7px;right:7px}.album-heading input{font-size:24px}.album-heading{padding-top:8px}.album-heading>.text-button{font-size:12px;max-width:120px}.tabs button{padding:6px 9px;font-size:13px}.gallery-toolbar{gap:0}.gallery-toolbar>.text-button{font-size:12px}.delivery{padding:20px;gap:12px}.delivery h2{font-size:23px}footer{display:block}footer>div{justify-content:start}.photo-dialog{padding:17px}.photo-dialog-heading{display:block}.photo-dialog-heading>div:last-child{margin-bottom:8px}.photo-tools .button{font-size:13px;flex:1;padding:10px}.photo-tools label{width:100%;margin:8px 0}.photo-tools input{flex:1}.compare-view{aspect-ratio:1}.processing{padding:17px}.processing h2{font-size:17px}.processing-bottom{align-items:start}.processing-bottom .text-button{font-size:12px;white-space:nowrap}.photo-dialog h3{font-size:16px}dialog{padding:26px 20px}}
@media(prefers-reduced-motion:no-preference){.photo-card{animation:arrive .18s ease-out}.button,.look,.size-options button{transition:background .15s,border-color .15s}@keyframes arrive{from{opacity:.3;transform:translateY(4px)}to{opacity:1;transform:translateY(0)}}}

.sample-panel{padding:24px;margin-bottom:24px;background:#fff;border:1px solid #cbd8ea;border-radius:18px}.sample-comparison{display:grid;grid-template-columns:1fr 1fr;gap:16px}.sample-comparison figure{margin:0;position:relative;background:#edf1f6;border-radius:10px;overflow:hidden}.sample-comparison img{display:block;width:100%;height:320px;object-fit:contain}.sample-comparison figcaption{position:absolute;bottom:12px;left:12px;background:#fff;padding:5px 12px;border-radius:20px;font-size:14px}.sample-actions{display:flex;gap:12px;flex-wrap:wrap;align-items:center}.sample-panel p{font-size:15px;line-height:1.55}.quality-field{display:grid;gap:8px;font-size:15px;margin:18px 0}.quality-field select{font:inherit;border:1px solid #b8c6d8;border-radius:9px;background:white;padding:10px;width:100%}.page-heading h1{font-size:clamp(30px,4vw,48px)}.page-heading{padding-top:18px;padding-bottom:22px}.controls .notice{padding:12px;font-size:14px}.controls .notice .button{font-size:14px;white-space:normal}.sample-panel .notice{margin-top:16px}@media(max-width:700px){.sample-panel{padding:16px}.sample-comparison{gap:8px}.sample-comparison img{height:210px}.sample-actions .button{width:100%}}
