:root{--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light;color:#16231f;font-synthesis:none;text-rendering:optimizelegibility;--ink:#16231f;--muted:#66736d;--green:#173f34;--green-2:#245e4d;--cream:#f4f1e9;--paper:#fffdf8;--surface:var(--paper);--line:#d9d7ce;--gold:#e0a747;--gold-soft:#fff2d6;--red:#9e423d;--shadow:0 18px 46px #1e302814;background:#f4f1e9;font-family:Inter,Pretendard,Noto Sans KR,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif}*{box-sizing:border-box}html{scroll-behavior:smooth}body{min-width:320px;min-height:100vh;margin:0}button,input,select{font:inherit}button{cursor:pointer}button:disabled{cursor:not-allowed;opacity:.48}button:focus-visible,input:focus-visible,select:focus-visible,a:focus-visible{outline-offset:3px;outline:3px solid #e0a747}.visually-hidden{clip:rect(0, 0, 0, 0);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;overflow:hidden;position:absolute!important}.app-shell{min-height:100vh;padding-bottom:124px}.topbar{background:var(--paper);border-bottom:1px solid var(--line);grid-template-columns:1fr minmax(220px,480px) 1fr;align-items:center;gap:18px;min-height:68px;padding:10px clamp(18px,4vw,64px);display:grid}.brand{color:var(--green);letter-spacing:-.02em;font-family:Georgia,Times New Roman,serif;font-size:1.55rem;font-weight:700;text-decoration:none}.project-name{width:100%;color:var(--muted);text-align:center;background:0 0;border:0;border-bottom:1px solid #0000;padding:8px}.project-name:hover,.project-name:focus{border-color:var(--line)}.topbar nav{justify-self:end}.privacy-strip{background:var(--green);color:#f8f5ec;text-align:center;padding:10px clamp(18px,4vw,64px);font-size:.83rem}.privacy-strip span{color:#80bd9e;margin-right:7px}.stepper{border-bottom:1px solid var(--line);background:#ece9e0;grid-template-columns:repeat(4,1fr);margin:0;padding:22px clamp(18px,6vw,90px);list-style:none;display:grid}.stepper li{color:#59645f;align-items:center;gap:9px;font-size:.88rem;display:flex;position:relative}.stepper li:not(:last-child):after{content:"";background:#c9cbc5;height:1px;position:absolute;left:calc(50% + 26px);right:14px}.stepper li span{background:var(--cream);border:1px solid #b8bdb8;border-radius:50%;place-items:center;width:28px;height:28px;font-size:.78rem;display:grid}.stepper li.is-active{color:var(--green);font-weight:700}.stepper li.is-active span{background:var(--green);color:#fff;border-color:var(--green)}.workspace{width:min(1500px,100% - 36px);margin:34px auto}.hero-panel{background:var(--paper);border:1px solid var(--line);box-shadow:var(--shadow);border-radius:24px;grid-template-columns:minmax(0,1fr) auto;align-items:end;gap:18px 40px;padding:clamp(28px,4vw,48px);display:grid}.hero-panel h1{letter-spacing:-.045em;max-width:780px;margin:7px 0 12px;font-family:Georgia,Noto Serif KR,serif;font-size:clamp(2rem,4vw,3.7rem);line-height:1.06}.hero-panel p{color:var(--muted);max-width:760px;margin:0;line-height:1.7}.eyebrow{color:var(--green-2);letter-spacing:.14em;text-transform:uppercase;font-size:.72rem;font-weight:800}.action-row,.button-cluster,.toggle-row,.selection-toolbar{flex-wrap:wrap;align-items:center;gap:10px;display:flex}.toggle-row{border-top:1px solid var(--line);grid-column:1/-1;padding-top:18px}.toggle-row label{color:var(--muted);align-items:center;gap:8px;display:inline-flex}.primary-button,.secondary-button,.quiet-button,.destructive-button,.icon-button{border:1px solid #0000;border-radius:999px;min-height:42px;padding:0 18px;font-weight:700}.primary-button{background:var(--green);color:#fff;box-shadow:0 8px 20px #173f342e}.primary-button:hover{background:#215445}.destructive-button{color:#fff;background:#8f332c;border-color:#8f332c;box-shadow:0 8px 20px #5c1d182e}.destructive-button:hover{background:#6f251f}.secondary-button{background:var(--gold-soft);color:#614415;border-color:#e8c884}.quiet-button{color:var(--green);border-color:var(--line);background:0 0}.icon-button{min-width:36px;min-height:36px;color:var(--muted);background:0 0;border-color:#0000;padding:0}.notice-banner,.warning-banner{border:1px solid var(--line);background:var(--paper);border-radius:12px;margin-top:16px;padding:14px 18px}.app-update-banner{gap:14px;display:grid}.app-update-heading,.app-update-actions{justify-content:space-between;align-items:center;gap:12px;display:flex}.app-update-blockers{border-top:1px solid var(--line);gap:10px;padding-top:14px;display:grid}.app-update-blockers p,.app-update-blockers ul{margin:0}.app-update-blockers ul{flex-wrap:wrap;gap:8px 18px;padding-left:22px;display:flex}.app-update-blocker-guidance{color:#78520d}.app-update-destructive-button{color:#7b3028;border-color:#a25247}.app-update-confirmation-backdrop{z-index:60;background:#14191694;place-items:center;padding:20px;display:grid;position:fixed;inset:0}.app-update-confirmation{border:1px solid var(--line);background:var(--paper);border-radius:16px;gap:16px;width:min(100%,540px);max-height:calc(100dvh - 40px);padding:24px;display:grid;overflow-y:auto;box-shadow:0 20px 60px #00000052}.app-update-confirmation h2,.app-update-confirmation p{margin:0}.lifecycle-resume-banner{justify-content:space-between;align-items:center;gap:16px;display:flex}.warning-banner{background:var(--gold-soft);border-color:#e2ba77}.dashboard-grid{grid-template-columns:minmax(220px,.62fr) minmax(520px,1.7fr) minmax(260px,.75fr);align-items:start;gap:18px;margin-top:22px;display:grid}.side-panel,.content-panel{background:var(--paper);border:1px solid var(--line);border-radius:18px;overflow:hidden;box-shadow:0 10px 30px #1e30280b}.side-panel{padding:23px}.content-panel{padding:0 23px 23px}.panel-heading{border-bottom:1px solid var(--line);padding-bottom:17px}.panel-heading h2{margin:5px 0 0;font-family:Georgia,Noto Serif KR,serif;font-size:1.35rem}.list-heading{justify-content:space-between;align-items:center;gap:18px;min-height:86px;display:flex}.sort-control{color:var(--muted);gap:5px;font-size:.75rem;display:grid}.sort-control select{border:1px solid var(--line);min-height:36px;color:var(--ink);background:#fff;border-radius:9px;padding:0 10px}.recent-list{gap:8px;margin:12px 0 0;padding:0;list-style:none;display:grid}.recent-list li{border-bottom:1px solid #eceae3;grid-template-columns:1fr auto;align-items:center;display:grid}.recent-main{text-align:left;color:var(--ink);background:0 0;border:0;min-width:0;padding:12px 0}.recent-main strong,.recent-main span{text-overflow:ellipsis;white-space:nowrap;display:block;overflow:hidden}.recent-main span{color:var(--muted);margin-top:4px;font-size:.76rem}.muted{color:var(--muted);line-height:1.6}.capability-summary{border-top:1px solid var(--line);margin-top:22px;padding-top:18px}.capability-summary p{color:var(--muted);margin:8px 0 0;font-size:.8rem}.filter-tabs{border-bottom:1px solid var(--line);gap:4px;padding:14px 0;display:flex;overflow-x:auto}.filter-tabs button{white-space:nowrap;color:var(--muted);background:0 0;border:0;border-radius:999px;padding:8px 12px}.filter-tabs button.is-active{background:var(--green);color:#fff}.selection-toolbar{min-height:50px;padding:6px 0}.selection-toolbar .quiet-button{min-height:34px;padding:0 12px;font-size:.78rem}.empty-state{text-align:center;min-height:480px;color:var(--muted);align-content:center;place-items:center;display:grid}.empty-state h3{color:var(--ink);margin:15px 0 5px}.empty-state p{margin:0}.empty-mark{width:74px;height:74px;color:var(--green);background:#e8eee9;border-radius:22px;place-items:center;font-size:2rem;display:grid}.virtual-list{contain:strict;border-top:1px solid var(--line);border-bottom:1px solid var(--line);position:relative;overflow:auto}.virtual-list-spacer{position:relative}.photo-row{background:var(--paper);border-bottom:1px solid #eceae3;grid-template-columns:28px 68px minmax(0,1fr) auto;align-items:center;gap:12px;height:92px;padding:10px 4px;display:grid;position:absolute;inset:0 0 auto}.photo-row.is-excluded{opacity:.62;background:#f5f4f0}.thumbnail-shell{background:#e7e9e4;border-radius:10px;width:68px;height:68px;overflow:hidden}.thumbnail-shell img{object-fit:cover;width:100%;height:100%}.thumbnail-placeholder{background:linear-gradient(135deg,#e3e8e3,#f4efe3);width:100%;height:100%;display:block}.photo-row-copy{gap:3px;min-width:0;display:grid}.photo-row-copy strong{text-overflow:ellipsis;white-space:nowrap;font-size:.88rem;overflow:hidden}.photo-row-copy span,.photo-row-copy small{color:var(--muted);font-size:.72rem}.include-toggle{min-height:34px;padding:0 10px;font-size:.72rem}.empty-list{min-height:220px;color:var(--muted);place-items:center;display:grid}.count-list{margin:8px 0 0}.count-list div{border-bottom:1px solid #eceae3;justify-content:space-between;gap:12px;padding:10px 0;display:flex}.count-list dt{color:var(--muted);font-size:.78rem;line-height:1.4}.count-list dd{margin:0;font-weight:800}.count-list .positive dd{color:var(--green-2)}.count-list .warning dd{color:#a66a16}.progress-card,.storage-card{background:#f3f2ed;border-radius:14px;margin-top:18px;padding:16px}.progress-card div{justify-content:space-between;gap:10px;font-size:.8rem;display:flex}.progress-card progress{width:100%;height:9px;accent-color:var(--green);margin:12px 0}.output-progress small{color:var(--muted);overflow-wrap:anywhere;line-height:1.45;display:block}.progress-file{text-overflow:ellipsis;white-space:nowrap;color:var(--ink);display:block;overflow:hidden}.storage-card p{margin:8px 0 3px}.storage-card small{color:var(--muted);line-height:1.45;display:block}.storage-card button{width:100%;margin-top:12px}.risk-high{background:#fff0e8}.risk-medium{background:var(--gold-soft)}.success-label{color:var(--green-2);margin-top:10px;font-size:.78rem;font-weight:700;display:block}.heic-panel{background:var(--gold-soft);border:1px solid #e8c884;border-radius:18px;grid-template-columns:1fr auto;align-items:center;gap:24px;margin-top:18px;padding:24px 28px;display:grid}.heic-panel h2{margin:5px 0 8px;font-family:Georgia,Noto Serif KR,serif}.heic-panel p{color:#6d5932;margin:0;line-height:1.6}.stage-completion-card{border:1px solid var(--line);-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px);background:#fffdf8f7;border-radius:16px;justify-content:space-between;align-items:center;gap:20px;padding:16px 20px;display:flex;box-shadow:0 12px 36px #182f251a}.stage-completion-copy{gap:3px;min-width:0;display:grid}.stage-completion-copy>strong{color:var(--green)}.stage-completion-copy>span:last-child{color:var(--muted);line-height:1.45}.recovery-page{place-items:center;min-height:100vh;padding:24px;display:grid}.recovery-card{background:var(--paper);border:1px solid var(--line);width:min(680px,100%);box-shadow:var(--shadow);border-radius:24px;padding:clamp(28px,5vw,54px)}.recovery-card h2{margin:8px 0 12px;font-family:Georgia,Noto Serif KR,serif;font-size:2rem}.recovery-card>p{color:var(--muted);line-height:1.7}.recovery-meta{grid-template-columns:repeat(3,1fr);gap:10px;margin:24px 0;display:grid}.recovery-meta div{background:#f2f1eb;border-radius:12px;padding:14px}.recovery-meta dt{color:var(--muted);font-size:.72rem}.recovery-meta dd{margin:5px 0 0;font-weight:800}.warning-message{background:var(--gold-soft);border-radius:10px;padding:12px;color:#694c1a!important}.brightness-workspace,.crop-workspace,.phase-boundary{width:min(1500px,100% - 36px);margin:34px auto 110px}.phase-boundary{text-align:center;place-content:center;gap:12px;min-height:60vh;display:grid}.phase-boundary h1,.brightness-heading h1{margin:6px 0;font-family:Georgia,Noto Serif KR,serif}.brightness-heading{background:var(--paper);border:1px solid var(--line);border-radius:24px;grid-template-columns:minmax(0,1fr) auto;grid-template-areas:"copy navigation"".actions";align-items:start;gap:18px;padding:clamp(24px,4vw,46px);display:grid}.phase-heading-copy{grid-area:copy}.phase-heading-navigation{grid-area:navigation;justify-self:end}.phase-heading-actions{flex-wrap:wrap;grid-area:actions;justify-content:flex-end;align-items:flex-start;gap:12px;display:flex}.phase-heading-actions>button{white-space:nowrap}.crop-grid{grid-template-columns:minmax(180px,.48fr) minmax(360px,1.45fr) minmax(250px,.7fr);gap:18px;margin-top:18px;display:grid}.crop-list,.crop-preview-panel,.crop-controls,.crop-review{background:var(--paper);border:1px solid var(--line);border-radius:18px;padding:20px}.crop-list{align-content:start;gap:7px;max-height:590px;display:grid;overflow:auto}.crop-list h2,.crop-controls h2,.crop-review h2{margin:0 0 9px;font-family:Georgia,Noto Serif KR,serif}.crop-list button{border:1px solid var(--line);min-height:58px;color:var(--ink);text-align:left;background:#faf9f5;border-radius:10px;grid-template-columns:30px minmax(0,1fr) auto;align-items:center;gap:12px;padding:11px;display:grid}.crop-list button.is-reference{border-color:var(--green);color:var(--green);background:#e8eee9;font-weight:800}.crop-list small{color:var(--muted)}.crop-photo-index{color:var(--muted);letter-spacing:.04em;text-align:center;font-family:ui-monospace,SFMono-Regular,Consolas,monospace;font-size:.7rem}.crop-list-copy,.crop-result-identity,.crop-preview-identity{min-width:0}.crop-list-copy{justify-items:start;gap:5px;display:grid}.crop-list-copy strong,.crop-result-identity strong,.crop-preview-identity strong{text-overflow:ellipsis;white-space:nowrap;max-width:100%;overflow:hidden}.crop-list-copy strong{font-size:.82rem}.crop-reference-badge{background:var(--green);color:#fff;border-radius:999px;padding:3px 7px;font-size:.68rem;line-height:1}.crop-list-status{text-align:right;max-width:76px;font-size:.7rem;line-height:1.35}.crop-source-reconnect{color:#65551b;background:#fff9df;border:1px solid #d7c98a;border-radius:9px;margin:6px 2px 0;padding:9px 10px;font-size:.75rem;line-height:1.45}.crop-preview-identity{gap:3px;display:grid}.crop-preview-identity strong{color:var(--ink);font-size:.82rem;display:block}.crop-preview-identity small{color:var(--muted);font-size:.75rem}.crop-result-identity{grid-template-columns:30px minmax(0,1fr);align-items:center;gap:5px 9px;display:grid}.crop-result-identity strong{display:block}.crop-result-identity small{color:var(--muted);grid-column:2}.crop-preview-panel{min-width:0;scroll-margin-block:88px}.crop-preview-stage{width:100%;position:relative}.crop-preview{object-fit:contain;cursor:move;touch-action:none;-webkit-user-select:none;user-select:none;background:#e7e9e4;border-radius:12px;width:100%;min-height:280px;max-height:480px;display:block}.crop-preview-overlay{object-fit:contain;pointer-events:none;border-radius:12px;width:100%;height:100%;max-height:480px;display:block;position:absolute;inset:0}.crop-resize-handle{z-index:2;box-sizing:border-box;border:2px solid var(--green);background:var(--paper);cursor:nwse-resize;pointer-events:auto;touch-action:none;-webkit-user-select:none;user-select:none;border-radius:6px;width:28px;height:28px;position:absolute;transform:translate(-50%,-50%);box-shadow:0 1px 4px #07110c59}.crop-resize-handle-ne,.crop-resize-handle-sw{cursor:nesw-resize}.crop-numeric{color:var(--muted);flex-wrap:wrap;align-items:end;gap:10px;margin-top:12px;font-size:.78rem;display:flex}.crop-numeric label{gap:4px;display:grid}.crop-numeric input{width:80px}.crop-controls{align-content:start;gap:12px;display:grid}.crop-controls label{color:var(--muted);gap:6px;font-size:.82rem;display:grid}.crop-controls label:has(input[type=checkbox]){align-items:center;gap:7px;display:flex}.crop-review{margin-top:18px}.crop-review header{justify-content:space-between;align-items:center;gap:18px;margin-bottom:15px;display:flex}.crop-review header p{color:var(--muted);margin:0}.crop-recipe-list{gap:8px;display:grid}.crop-recipe-list article{border-top:1px solid var(--line);grid-template-columns:auto minmax(90px,1fr) minmax(160px,2fr) minmax(150px,2fr) auto;align-items:center;gap:12px;padding:12px;display:grid}.crop-recipe-list article>button{border:1px solid var(--line);color:var(--green);background:#fff;border-radius:8px;padding:7px}.brightness-heading p{color:var(--muted);margin:0;line-height:1.65}.brightness-heading .brightness-next-action{border-left:3px solid var(--green);width:-moz-fit-content;width:fit-content;color:var(--green);background:#edf1ed;margin-top:18px;padding:9px 12px;font-size:.82rem;font-weight:750}.brightness-grid{grid-template-columns:minmax(180px,.48fr) minmax(360px,1.45fr) minmax(250px,.7fr);gap:18px;margin-top:18px;display:grid}.brightness-list,.brightness-preview-panel,.brightness-controls,.brightness-review{background:var(--paper);border:1px solid var(--line);border-radius:18px;padding:20px}.brightness-list{align-content:start;gap:7px;max-height:590px;display:grid;overflow:auto}.brightness-list h2,.brightness-controls h2,.brightness-review h2{margin:0 0 9px;font-family:Georgia,Noto Serif KR,serif}.brightness-list button{border:1px solid var(--line);min-height:58px;color:var(--ink);text-align:left;background:#faf9f5;border-radius:10px;grid-template-columns:30px minmax(0,1fr) auto;align-items:center;gap:10px;padding:8px;display:grid}.brightness-photo-index{color:var(--muted);letter-spacing:.04em;text-align:center;font-family:ui-monospace,SFMono-Regular,Consolas,monospace;font-size:.7rem}.brightness-list-copy{justify-items:start;gap:5px;min-width:0;display:grid}.brightness-list-copy strong{text-overflow:ellipsis;white-space:nowrap;max-width:100%;font-size:.82rem;overflow:hidden}.brightness-reference-badge{background:var(--green);color:#fff;border-radius:999px;padding:3px 7px;font-size:.68rem;line-height:1}.brightness-list button.is-reference{border-color:var(--green);color:var(--green);background:#e8eee9;font-weight:800}.brightness-list-status{max-width:76px;color:var(--muted);text-align:right;font-size:.7rem;line-height:1.35}.brightness-source-reconnect{color:#65551b;background:#fff9df;border:1px solid #d7c98a;border-radius:9px;margin:6px 2px 0;padding:9px 10px;font-size:.75rem;line-height:1.45}.brightness-preview-panel{min-width:0}.comparison-labels{color:var(--muted);justify-content:space-between;margin-bottom:8px;font-size:.8rem;display:flex}.comparison-previews{grid-template-columns:1fr 1fr;gap:10px;display:grid}.brightness-preview{background:#e7e9e4;border-radius:12px;align-content:center;min-height:280px;margin:0;display:grid;overflow:hidden}.brightness-preview canvas{object-fit:contain;image-rendering:auto;width:100%;max-height:450px;display:block}.brightness-preview.is-pixel-size{align-content:start;overflow:auto}.brightness-preview.is-pixel-size canvas{width:auto;max-width:none}.brightness-preview figcaption{color:var(--muted);background:#ffffffb8;padding:7px 10px;font-size:.73rem}.brightness-controls{align-content:start;gap:15px;display:grid}.brightness-controls label{color:var(--muted);gap:7px;font-size:.82rem;display:grid}.brightness-controls select,.brightness-controls input{width:100%}.brightness-controls output{color:var(--ink);font-weight:800}.brightness-review{margin-top:18px}.brightness-review header{justify-content:space-between;align-items:center;gap:18px;margin-bottom:15px;display:flex}.brightness-review header p{color:var(--muted);margin:0}.brightness-filters{flex-wrap:wrap;justify-content:flex-end;align-items:center;gap:8px;display:flex}.brightness-filters button[aria-pressed=true]{border-color:var(--green);background:var(--green);color:#fff}.review-quick-look-button{white-space:nowrap}.brightness-recipe-list{gap:8px;display:grid}.brightness-recipe-list article{border-top:1px solid var(--line);grid-template-columns:auto minmax(190px,1.25fr) minmax(150px,1.5fr) minmax(180px,2fr) auto;align-items:center;gap:12px;padding:12px;display:grid}.brightness-result-identity{grid-template-columns:auto minmax(0,1fr);align-items:center;gap:3px 8px;min-width:0;display:grid}.brightness-result-index{color:var(--muted);letter-spacing:.04em;grid-row:1/3;font-family:ui-monospace,SFMono-Regular,Consolas,monospace;font-size:.68rem}.brightness-result-identity strong{text-overflow:ellipsis;white-space:nowrap;min-width:0;font-size:.86rem;overflow:hidden}.brightness-result-identity small{color:var(--muted);font-size:.7rem}.brightness-recipe-list article>button{border:1px solid var(--line);color:var(--green);background:#fff;border-radius:8px;padding:7px}.brightness-recipe-list article label{color:var(--muted);gap:4px;font-size:.75rem;display:grid}.review-badge,.ok-badge{border-radius:999px;width:-moz-fit-content;width:fit-content;padding:5px 8px;font-size:.73rem}.review-badge{background:var(--gold-soft);color:#694c1a}.ok-badge{color:var(--green);background:#e8eee9}.brightness-footer{margin-top:18px;position:sticky;bottom:0}.crop-confirmation-footer{pointer-events:none}.crop-confirmation-footer>*{pointer-events:auto}.quick-look-backdrop{z-index:50;isolation:isolate;background:#0d1712cc;place-items:center;padding:20px;display:grid;position:fixed;inset:0}.quick-look{background:var(--paper);width:min(1050px,100%);max-height:min(860px,95vh);box-shadow:var(--shadow);border-radius:18px;grid-template-rows:auto auto minmax(0,1fr) auto;display:grid;overflow:hidden}.quick-look>header,.quick-look>footer{background:#fff;justify-content:space-between;align-items:center;gap:15px;padding:14px 18px;display:flex}.quick-look header div{gap:2px;min-width:0;display:grid}.quick-look header span,.quick-look footer{color:var(--muted);font-size:.78rem}.quick-look .quick-look-photo-name{text-overflow:ellipsis;white-space:nowrap;min-width:0;max-width:min(52vw,560px);overflow:hidden}.quick-look-view-controls{background:var(--surface,var(--paper));border-top:1px solid var(--line);border-bottom:1px solid var(--line);gap:8px;padding:10px 18px;display:flex}.quick-look-view-controls button{border:1px solid var(--line);min-height:40px;color:var(--ink);font:inherit;cursor:pointer;background:#fff;border-radius:999px;padding:8px 13px}.quick-look-view-controls button[aria-pressed=true]{border-color:var(--green);background:var(--green);color:#fff}.quick-look .brightness-preview{border-radius:0;min-height:0;overflow:auto}.brightness-confirmation-backdrop{z-index:40;isolation:isolate;background:#14191694;place-items:center;padding:20px;display:grid;position:fixed;inset:0}.photo-work-progress-backdrop{z-index:60;background:#1419169e;place-items:center;padding:16px;display:grid;position:fixed;inset:0}.photo-work-progress-dialog{border:1px solid var(--line);background:var(--surface,var(--paper));border-radius:16px;gap:14px;width:min(520px,100vw - 32px);max-height:calc(100dvh - 32px);padding:clamp(18px,4vw,26px);display:grid;overflow-y:auto;box-shadow:0 20px 60px #00000052}.photo-work-progress-dialog header{justify-content:space-between;align-items:start;gap:16px;display:flex}.photo-work-progress-dialog h2,.photo-work-progress-dialog p{margin:0}.photo-work-progress-dialog progress{width:100%;height:10px;accent-color:var(--green)}.person-intake-review{width:min(680px,100vw - 32px)}.person-review-empty{word-break:keep-all;overflow-wrap:normal}.person-review-list{border-top:1px solid var(--line);max-height:min(460px,45dvh);overflow:auto}.person-review-list .photo-row{grid-template-columns:28px 68px minmax(0,1fr);position:relative}.person-intake-review img{object-fit:contain}.person-review-preview-button{border:1px solid var(--line);cursor:zoom-in;padding:0}.person-review-expanded{gap:8px;display:grid}.person-review-expanded img{width:100%;height:min(400px,45dvh)}.person-review-pagination{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:8px;display:flex}.photo-work-progress-current{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.photo-work-progress-summary{background:#f3f2ed;border-radius:10px;padding:12px;font-weight:700}.brightness-confirmation{overscroll-behavior:contain;border:1px solid var(--line);background:var(--surface,var(--paper));isolation:isolate;border-radius:16px;gap:16px;width:min(100%,480px);max-height:min(720px,100dvh - 40px);padding:24px;display:grid;position:relative;overflow-y:auto;box-shadow:0 20px 60px #00000052}.brightness-confirmation h2,.brightness-confirmation p{margin:0}.brightness-confirmation p{overflow-wrap:anywhere}.confirmation-quick-look-button{justify-self:start}.brightness-confirmation-consents{gap:12px;display:grid}.brightness-confirmation-consents label{border:1px solid var(--line);overflow-wrap:anywhere;border-radius:12px;align-items:flex-start;gap:10px;min-width:0;padding:12px;display:flex}.brightness-confirmation-consents input{block-size:22px;inline-size:22px;accent-color:var(--green);cursor:pointer;flex:none;margin:1px 0 0}.dialog-actions{border-top:1px solid var(--line);justify-content:flex-end;gap:10px;padding-top:16px;display:flex}.destructive-confirmation-description{gap:10px;display:grid}.destructive-confirmation-description p{margin:0}.brightness-confirmation .primary-button:disabled{opacity:1;border-color:var(--line);color:#737a75;box-shadow:none;background:#e7e6df}@media (max-width:1100px){.dashboard-grid{grid-template-columns:minmax(0,1fr) 280px}.recent-panel{grid-column:1/-1}.recent-list{grid-template-columns:repeat(2,1fr)}}@media (max-width:760px){.app-shell{padding-bottom:220px}.topbar{grid-template-columns:1fr auto;padding:10px 16px}.project-name{text-align:left;grid-area:2/1/auto/-1;padding-left:0}.privacy-strip{text-align:left;padding:10px 16px}.stepper{gap:6px;padding:16px}.stepper li{justify-content:center;gap:0;font-size:0}.stepper li span{font-size:.76rem}.stepper li:not(:last-child):after{left:calc(50% + 20px);right:-30%}.workspace{width:min(100% - 24px,680px);margin:18px auto}.hero-panel{border-radius:18px;grid-template-columns:1fr;padding:24px}.hero-panel h1{font-size:2.15rem}.hero-panel .action-row button{flex:1}.dashboard-grid{grid-template-columns:1fr}.recent-panel,.status-panel{grid-column:auto}.recent-list{grid-template-columns:1fr}.content-panel{padding:0 14px 14px}.list-heading{align-items:flex-end}.photo-row{grid-template-columns:24px 60px minmax(0,1fr)}.thumbnail-shell{width:60px;height:60px}.include-toggle{grid-column:3;justify-self:start;min-height:28px}.heic-panel{grid-template-columns:1fr;padding:22px}.recovery-meta{grid-template-columns:1fr}.brightness-workspace,.crop-workspace,.phase-boundary{width:min(100% - 24px,680px);margin:18px auto 100px}.brightness-heading{grid-template-columns:1fr;grid-template-areas:"navigation""copy""actions";padding:24px;display:grid}.phase-heading-navigation{justify-self:stretch;width:100%}.phase-heading-navigation>button{width:100%}.phase-heading-actions{justify-content:stretch;width:100%}.phase-heading-actions>button{flex:220px}.brightness-heading .primary-button{width:100%}.brightness-grid,.crop-grid{grid-template-columns:1fr}.crop-list{grid-template-columns:repeat(2,minmax(0,1fr));max-height:180px}.crop-list h2{grid-column:1/-1}.crop-preview{min-height:190px}.crop-preview-panel{scroll-margin-block:140px}.crop-recipe-list article{grid-template-columns:auto 1fr}.crop-recipe-list article>:not(button):not(strong){grid-column:1/-1}.brightness-list{grid-template-columns:1fr;max-height:240px}.brightness-list h2{grid-column:1/-1}.brightness-preview{min-height:190px}.brightness-recipe-list article{grid-template-columns:auto 1fr}.brightness-recipe-list article>.brightness-result-identity{grid-column:2}.brightness-recipe-list article>:not(button):not(.brightness-result-identity){grid-column:1/-1}.brightness-review header{flex-direction:column;align-items:flex-start}.brightness-filters{justify-content:flex-start;width:100%}.brightness-filters button{min-height:42px}.brightness-footer{z-index:2;padding-bottom:calc(14px + env(safe-area-inset-bottom));flex-direction:column;align-items:stretch}.brightness-footer .primary-button{width:100%}.crop-workspace .crop-review-consent{box-sizing:border-box;overflow-wrap:anywhere;word-break:break-word;justify-content:flex-start;align-items:flex-start;gap:12px;width:100%;min-width:0;max-width:100%;margin-bottom:16px;display:flex}.crop-workspace .crop-review-consent input{flex:none;block-size:24px;inline-size:24px;margin:2px 0 0}.crop-workspace .crop-review-consent span{min-width:0}.crop-workspace .crop-confirmation-footer{z-index:auto;position:static}.quick-look-backdrop{padding:8px}.quick-look>footer{display:grid}.quick-look-view-controls{grid-template-columns:repeat(2,minmax(0,1fr));display:grid}.quick-look-view-controls button{width:100%}.quick-look .quick-look-photo-name{max-width:70vw}.quick-look .brightness-preview{max-height:70vh}.brightness-confirmation-backdrop{align-items:end;padding:8px}.brightness-confirmation{width:100%;max-height:min(78dvh,720px);padding:20px}.confirmation-quick-look-button,.dialog-actions button{width:100%}.dialog-actions{grid-template-columns:1fr;display:grid}}@media (prefers-reduced-motion:reduce){*,:before,:after{scroll-behavior:auto!important;transition:none!important;animation:none!important}}@media (prefers-contrast:more){:root{--line:#656b67}.primary-button,.secondary-button,.quiet-button{border-width:2px}}:is(.photo-work-progress-message,.notice-banner).person-screen-empty-message{word-break:keep-all;overflow-wrap:normal}.reference-face-panel{border:1px solid var(--border,#667085);border-radius:.75rem;min-width:0;padding:1rem}.reference-face-panel>p{overflow-wrap:anywhere;word-break:keep-all}.reference-face-panel .action-row{flex-wrap:wrap;gap:.5rem}.reference-face-image{width:-moz-fit-content;width:fit-content;max-width:100%;margin:1rem 0;line-height:0;position:relative}.reference-face-image img{width:auto;max-width:100%;height:auto;max-height:65vh;display:block}.reference-face-box{background:0 0;border:3px solid #fff;border-radius:0;outline:2px solid #172554;min-width:0;min-height:0;padding:0;position:absolute}.reference-face-box span{color:#fff;background:#172554;padding:.3rem;line-height:1;position:absolute;top:0;left:0}.reference-face-box[aria-pressed=true]{background:#ffdb702e;border-style:dashed;border-color:#ffdb70}.reference-face-panel button:focus-visible{outline-offset:4px;z-index:1;outline:3px solid #2563eb}.reference-face-panel .secondary-button[aria-pressed=true]{outline-offset:-4px;outline:3px solid}@media (max-width:760px){.reference-face-panel .action-row>button{min-height:44px}}@media (forced-colors:active){.reference-face-box{border-color:buttontext;outline-color:canvas}.reference-face-box[aria-pressed=true]{border-color:highlight}}.face-filter-grid{grid-template-columns:repeat(auto-fill,minmax(160px,1fr));gap:1rem;margin-block:1rem;display:grid}.face-filter-grid label{flex-direction:column;gap:.5rem;display:flex}.face-filter-grid img{object-fit:contain;width:100%;max-height:200px}.face-filter-grid input{min-width:24px;min-height:24px}
