@import "https://fonts.googleapis.com/css2?family=DM+Sans:wght@400;450;500;550;600;650;700&display=swap";:root{--ink:#253c3e;--muted:#788283;--teal:#245b57;--teal-light:#e9f1ed;--paper:#f6f5f1;--line:#e3e6e0;--white:#fff;--gold:#c79c58;--red:#a34d42;color:var(--ink);background:var(--paper);font-synthesis:none;font-family:DM Sans,Arial,sans-serif}*{box-sizing:border-box}body{margin:0;font-size:14px}button,input,select,textarea{font:inherit}button,a,input,select{outline-offset:4px}button{cursor:pointer}button:disabled{cursor:not-allowed;opacity:.42}button{transition:background .15s,color .15s,border-color .15s}button svg{flex-shrink:0}a{color:inherit}button,input,select{border-radius:7px}input,select,textarea{min-width:0;color:var(--ink);background:#fff;border:1px solid #d7ddd6;padding:10px 12px}input:focus,select:focus,textarea:focus{outline-offset:1px;outline:2px solid #7dada4}input[type=checkbox]{accent-color:var(--teal);flex-shrink:0;width:16px;height:16px;margin:0}input[type=file]{display:none}label{font-size:13px;font-weight:550;display:block}label>input:not([type=checkbox]),label>select{width:100%;margin-top:7px;display:block}form>label{margin:18px 0}h1,h2,h3,p{margin:0}h1,h2{letter-spacing:-.04em;font-weight:550}h1{font-size:36px}h2{font-size:22px}h3{margin:24px 0 13px;font-size:14px;font-weight:650}p{line-height:1.65}small{font-size:11px}.eyebrow{letter-spacing:.16em;color:var(--muted);font-size:10px;font-weight:650}.quiet{color:var(--muted);font-size:12px;line-height:1.6}.button,.primary,.ready-badge{border:1px solid var(--line);min-height:38px;color:var(--ink);white-space:nowrap;background:#fff;justify-content:center;align-items:center;gap:9px;padding:9px 15px;font-size:12px;font-weight:600;display:inline-flex}.button:hover{background:#f3f6f2;border-color:#bfcfc5}.primary{background:var(--teal);color:#fff;border-color:var(--teal)}.primary:hover{background:#194b48;border-color:#194b48}.icon-button{color:var(--muted);background:0 0;border:0;justify-content:center;align-items:center;padding:6px;display:inline-flex}.icon-button:hover{background:var(--teal-light);color:var(--teal)}.brand{letter-spacing:.14em;align-items:center;gap:10px;font-size:13px;font-weight:650;line-height:1.2;display:flex}.brand small{letter-spacing:.26em;color:#7a8986;margin-top:5px;font-size:8px;font-weight:500;display:block}.brand-icon{width:37px;height:40px;color:var(--teal);border:1px solid #b8c5be;border-radius:5px;place-items:center;display:grid}.app-shell{min-height:100vh;display:flex}.sidebar{border-right:1px solid var(--line);background:#fcfcf9;flex-direction:column;width:226px;padding:29px 18px 18px;display:flex;position:fixed;top:0;bottom:0;left:0}.sidebar .brand{padding-left:4px}.project-title{border-bottom:1px solid var(--line);padding:32px 8px 22px}.project-title strong{letter-spacing:-.025em;margin-top:9px;font-family:Georgia,serif;font-size:20px;font-weight:400;display:block}.year-select{color:var(--muted);align-items:center;gap:6px;margin-top:8px;font-size:11px;font-weight:400;display:flex}.year-select select{width:auto;color:var(--ink);background:0 0;border:0;margin:0;padding:2px;font-size:11px;display:inline}.nav-caption{letter-spacing:.15em;color:var(--muted);justify-content:space-between;align-items:center;padding:15px 8px 3px;font-size:9px;font-weight:650;display:flex}.group-nav{scrollbar-width:thin;flex:1;padding-bottom:20px;overflow:auto}.kind-label{color:#8c9490;padding:14px 10px 7px;font-size:10px}.group-link{text-align:left;color:#616f6a;background:0 0;border:0;align-items:center;gap:9px;width:100%;margin:2px 0;padding:9px;font-size:11px;font-weight:500;display:flex}.group-link span:nth-child(2){flex:1;line-height:1.35}.group-link small{color:#9aa39b;font-size:9px}.group-link:hover{background:#f0f3ee}.group-link.active{color:var(--teal);background:#e9f0e9;font-weight:650}.group-link.active small{color:#74928a}.group-dot{border-radius:50%;flex-shrink:0;width:7px;height:7px}.group-dot.complete{background:var(--teal)}.sidebar-bottom{border-top:1px solid var(--line);padding:18px 8px 0}.progress-label{color:var(--muted);justify-content:space-between;font-size:10px;display:flex}.progress-label b{color:var(--teal);font-weight:600}.progress-track{background:#e7ece5;border-radius:3px;height:4px;margin:10px 0 20px}.progress-track i,.mini-progress i{background:#6c9986;border-radius:4px;height:100%;transition:width .25s;display:block}.sidebar-action{color:#657670;text-align:left;background:0 0;border:0;align-items:center;gap:9px;width:100%;padding:9px 0;font-size:11px;display:flex}.sidebar-action:hover{color:var(--teal)}.sidebar-action.logout{border-top:1px solid var(--line);color:#8c9590;border-radius:0;margin-top:8px;padding-top:15px}.main-area{width:calc(100% - 226px);min-width:0;margin-left:226px}.topbar{border-bottom:1px solid var(--line);background:#fcfcf9;justify-content:space-between;align-items:center;height:75px;padding:0 34px;display:flex}.breadcrumb{color:#8c9590;align-items:center;gap:14px;font-size:11px;display:flex}.breadcrumb strong{color:var(--ink);font-weight:500}.breadcrumb span{color:#bdc5bf}.topbar-actions{align-items:center;gap:23px;display:flex}.save-state{color:#7f9287;align-items:center;gap:6px;font-size:10px;display:flex}.save-state.error,.save-state.conflict{color:var(--red)}.save-state.dirty{color:#b0813c}.save-state.saving svg{animation:2s infinite spin}@keyframes spin{to{transform:rotate(360deg)}}.workspace-heading{justify-content:space-between;align-items:center;padding:32px 34px 26px;display:flex}.workspace-heading h1{align-items:center;gap:10px;margin:8px 0 9px;display:flex}.workspace-heading h1 .icon-button{opacity:.45}.workspace-heading p{color:var(--muted);font-size:12px}.workspace-heading>.primary{align-self:flex-end;margin-bottom:1px}.ready-badge{color:var(--teal);background:#e1eee4;border-color:#b6cabb}.workspace-grid{grid-template-columns:minmax(0,1fr) 292px;align-items:start;gap:23px;padding:0 34px 25px;display:grid}.photo-column{min-width:0}.photo-card{background:#fff;border:1px solid #dce1d8;border-radius:10px;overflow:hidden;box-shadow:0 3px 9px #233c2e03}.photo-toolbar{align-items:center;gap:13px;height:53px;padding:0 13px;display:flex}.photo-toolbar .button{background:#f4f5f0;border-color:#0000;min-height:30px;padding:5px 8px;font-size:11px}.image-filename{white-space:nowrap;text-overflow:ellipsis;color:#98a095;flex:1;min-width:0;font-size:10px;overflow:hidden}.zoom-tools{align-items:center;gap:5px;display:flex}.zoom-tools button,.photo-footer button{color:#89948a;background:0 0;border:0;place-items:center;width:27px;height:28px;padding:4px;display:grid}.zoom-tools button:hover,.photo-footer button:hover{color:var(--teal);background:#edf2e9}.zoom-tools span{text-align:center;color:#818d83;min-width:36px;font-size:10px}.photo-viewport{scrollbar-width:thin;background:#e9ece5;min-height:390px;max-height:650px;overflow:auto}.photo-viewport.pan-mode{cursor:grab}.photo-stage{-webkit-user-select:none;user-select:none;min-width:100%;line-height:0;position:relative}.photo-stage>img{pointer-events:none;width:100%;height:auto;display:block}.person-marker{background:var(--teal);cursor:grab;color:#fff;touch-action:none;z-index:2;border:2px solid #fff;border-radius:50%;width:22px;height:22px;padding:0;line-height:1;position:absolute;transform:translate(-50%,-50%);box-shadow:0 1px 5px #0005}.person-marker.selected{z-index:5;background:#d09457;box-shadow:0 0 0 4px #d6a16155}.marker-dot{place-items:center;display:grid}.marker-name{color:var(--ink);white-space:nowrap;pointer-events:none;background:#fff;border-radius:5px;padding:7px 10px;font-size:11px;line-height:1.2;position:absolute;bottom:28px;left:50%;transform:translate(-50%);box-shadow:0 2px 8px #0002}.no-photo{text-align:center;color:#6f8275;flex-direction:column;justify-content:center;align-items:center;min-height:430px;padding:30px;display:flex}.photo-placeholder{color:#8a9d89;background:#eef1e9;border:1px dashed #b9c8b6;border-radius:20px;place-items:center;width:78px;height:78px;margin-bottom:20px;display:grid}.no-photo h2{letter-spacing:-.03em;color:#55715b;font-family:Georgia,serif;font-size:27px}.no-photo p{margin:12px 0 23px;font-size:12px;line-height:1.8}.photo-footer{border-top:1px solid var(--line);justify-content:space-between;align-items:center;gap:8px;min-height:45px;padding:9px 12px;display:flex}.photo-footer>span{color:#8b968b;align-items:center;gap:5px;font-size:10px;line-height:1.5;display:flex}.photo-footer b{color:var(--teal);font-weight:600}.photo-footer>div{align-items:center;gap:5px;display:flex}.photo-footer button.tool-active{color:var(--teal);background:#edf3e9}.row-controls{padding:21px 0 22px}.row-pills{flex-wrap:wrap;align-items:center;gap:7px;margin-top:11px;display:flex}.row-pills button{color:#7c897b;background:#fbfcf8;border:1px solid #dfe4d9;padding:7px 12px;font-size:10px}.row-pills button.active{color:#456747;background:#e7ede2;border-color:#a8be9c}.row-pills .add-row{place-items:center;padding:6px;display:grid}.print-preview{background:#fff;border:1px solid #e2e4db;border-radius:9px;padding:23px}.section-heading{justify-content:space-between;align-items:center;gap:10px;margin-bottom:19px;display:flex}.section-heading h2{margin-top:6px;font-size:19px}.section-heading>.quiet{font-size:10px}.preview-row{grid-template-columns:135px 1fr;gap:16px;margin:14px 0;font-size:11px;line-height:1.8;display:grid}.preview-row strong{color:#586c5b;font-size:10px;font-weight:600}.preview-row p{color:#7c897a;line-height:1.8}.missing-row{border-top:1px solid #eef0e9;padding-top:12px}.empty-preview{color:#9aab98;padding:8px 0 18px;font-size:12px}.review-check{color:#83917e;border-top:1px solid #e9ede3;align-items:center;gap:9px;margin-top:20px;padding-top:17px;font-size:10px;font-weight:400;line-height:1.6;display:flex}.names-panel{background:#fff;border:1px solid #dfe4d9;border-radius:10px;overflow:hidden}.names-heading{justify-content:space-between;align-items:center;padding:20px 18px 13px;display:flex}.names-heading h2{letter-spacing:-.02em;font-size:15px}.names-heading p{color:#9aa596;margin-top:5px;font-size:10px}.count-circle{color:#819775;background:#edf2e8;border-radius:50%;place-items:center;width:31px;height:31px;font-size:11px;display:grid}.mini-progress{background:#edf0e8;height:3px;margin:0 18px 17px}.search-wrap{color:#9aa794;background:#f6f7f3;border:1px solid #e5e9df;border-radius:6px;align-items:center;gap:7px;margin:0 14px 12px;padding:0 10px;display:flex}.search-wrap input{background:0 0;border:0;width:100%;padding:10px 0;font-size:11px}.search-wrap input:focus{outline:0}.search-wrap:focus-within{outline:2px solid #8caf9d}.name-filters{border-bottom:1px solid #e8ecdf;gap:4px;margin:0 14px 10px;padding-bottom:10px;display:flex}.name-filters button{color:#9aa78f;background:0 0;border:0;padding:5px 8px;font-size:10px}.name-filters button.active{color:#5a7b4e;background:#eef3e7}.names-list{scrollbar-width:thin;max-height:480px;padding:0 10px;overflow:auto}.name-card{border:1px solid #edf0e6;border-radius:6px;align-items:center;min-height:50px;margin:5px 0;transition:all .15s;display:flex}.name-card.selected{background:#eff5eb;border-color:#83a987}.name-card.handled{background:#fafbf7}.name-card.selected.handled{background:#eff5eb}.name-select{text-align:left;min-width:0;color:var(--ink);background:0 0;border:0;flex:1;align-items:center;gap:8px;padding:9px 7px;display:flex}.drag-handle{color:#b1bcaa;flex-shrink:0;place-items:center;width:16px;display:grid}.handled .drag-handle{color:#7c9f78}.person-text{min-width:0}.person-text>span{overflow-wrap:anywhere;align-items:center;gap:5px;font-size:11px;font-weight:500;line-height:1.45;display:flex}.person-text small{color:#9da996;margin-top:2px;font-size:9px;display:block}.person-text svg{color:#b19165;flex-shrink:0}.name-edit{color:#a5b09c;background:0 0;border:0;margin-right:3px;padding:7px}.name-edit:hover{color:var(--teal)}.absent-icon{text-align:center;border:1px solid #c7cfbf;border-radius:50%;width:14px;height:14px;font-size:11px;line-height:11px}.empty-list{color:#9ba892;text-align:center;padding:24px 12px;font-size:11px}.selected-person{background:#f8faf4;border-top:1px solid #e4e9da;margin-top:12px;padding:16px}.selected-person>strong{margin:7px 0 13px;font-size:12px;display:block}.privacy-toggle{color:#728467;align-items:center;gap:8px;font-size:10px;font-weight:400;display:flex}.selected-person>.quiet{margin-top:8px;font-size:10px}.person-actions{align-items:center;gap:7px;margin-top:15px;display:flex}.person-actions .button{min-height:32px;padding:7px 9px;font-size:10px}.add-person{color:#728a67;background:#fff;border:0;border-top:1px solid #edf0e6;border-radius:0;justify-content:center;align-items:center;gap:6px;width:100%;margin-top:10px;padding:14px 8px;font-size:11px;display:flex}.add-person:hover{background:#f7faf0}.panel-help{color:#a2ad9b;padding:0 17px 17px;font-size:10px;line-height:1.7}.workspace-footer{color:#a0a99a;letter-spacing:.12em;justify-content:space-between;padding:10px 35px 25px;font-size:8px;display:flex}.workspace-footer span:last-child{letter-spacing:.03em}.toast{color:#fff;z-index:80;background:#244c3c;border-radius:8px;align-items:center;gap:9px;padding:14px 20px;font-size:12px;display:flex;position:fixed;bottom:26px;left:calc(50% + 90px);transform:translate(-50%);box-shadow:0 5px 30px #122b2222}.error-banner{color:#964d37;background:#f9ede7;flex-wrap:wrap;align-items:center;gap:10px;padding:13px 30px;font-size:12px;display:flex}.error-banner>span{flex:1}.error-banner button{color:#8d4d36;background:#fff9f5;border:1px solid #dbb7a3;align-items:center;padding:5px 8px;font-size:11px;display:inline-flex}.modal-backdrop{-webkit-backdrop-filter:blur(3px);backdrop-filter:blur(3px);z-index:100;background:#182f2b66;justify-content:center;align-items:center;padding:26px;display:flex;position:fixed;inset:0}.modal{background:#fffef9;border-radius:13px;width:550px;max-width:100%;max-height:90vh;padding:34px;position:relative;overflow:auto;box-shadow:0 20px 80px #182f2b44}.modal.wide{width:830px}.modal-close{position:absolute;top:17px;right:17px}.modal h2{margin:11px 0 13px;font-family:Georgia,serif;font-size:28px;font-weight:400}.modal>p{color:#89947c;font-size:12px}.modal>p.quiet{margin-top:17px}.upload-area{color:#6a8657;cursor:pointer;background:#f4f7ed;border:1px dashed #bacbad;border-radius:8px;flex-direction:column;align-items:center;gap:10px;margin:22px 0;padding:26px 15px;display:flex}.upload-area:hover{background:#ebf1e1}.upload-area strong{font-size:12px;font-weight:550}.upload-area span{color:#9aa98a;font-size:10px;font-weight:400}.image-gallery{grid-template-columns:repeat(3,1fr);gap:15px;display:grid}.image-gallery button{text-align:left;background:#fff;border:1px solid #dbe3cf;padding:0 0 12px;overflow:hidden}.image-gallery img{aspect-ratio:1.5;object-fit:contain;background:#eef1e8;width:100%;display:block}.image-gallery strong{overflow-wrap:anywhere;padding:12px 9px 4px;font-size:11px;display:block}.image-gallery small{color:#99a98a;padding:0 9px;font-size:9px;display:block}.export-option{text-align:left;color:#648351;background:#fff;border:1px solid #dfe6d5;border-radius:8px;align-items:center;gap:15px;width:100%;margin:16px 0;padding:19px;display:flex}.export-option>span{flex:1}.export-option strong{color:var(--ink);margin-bottom:6px;font-size:12px;display:block}.export-option small{color:#94a386;font-size:11px;line-height:1.7;display:block}.manage-content h3{border-top:1px solid #e5eadc;padding-top:20px}.manage-content h3:first-child{border:0;padding-top:0}.inline-form{gap:8px;margin:15px 0;display:flex}.inline-form>input,.inline-form>select{flex:1;width:100%;min-width:0}.row-editor{align-items:center;gap:6px;margin:6px 0;display:flex}.row-editor>input{flex:1;width:100%}.row-editor .button{min-width:32px;padding:6px}.form-row{align-items:center;gap:15px;margin:15px 0;display:flex}.form-row>label{flex:1}.checkbox-label{align-items:center;gap:9px;font-size:12px;font-weight:400;line-height:1.6;display:flex}.source-note{color:#9aa58c;overflow-wrap:anywhere;margin:20px 0;font-size:10px;line-height:1.7}.issue-list{margin:22px 0;padding:0;list-style:none}.issue-list li{color:#8b8168;align-items:flex-start;gap:9px;padding:8px 0;font-size:11px;line-height:1.6;display:flex}.issue-list svg{color:#b39c61;flex-shrink:0;margin-top:2px}hr{border:0;border-top:1px solid var(--line);margin:25px 0}.login-page{background:#f2f3eb;flex-direction:column;min-height:100vh;padding:35px 55px;display:flex;position:relative;overflow:hidden}.login-page:before{content:"";pointer-events:none;border:1px solid #e3e7d9;border-radius:50%;width:700px;height:700px;position:absolute;top:40px;right:-230px;box-shadow:0 0 0 70px #e9eddf,0 0 0 71px #e1e5d7,0 0 0 160px #eef0e5}.login-top{z-index:1;justify-content:space-between;align-items:center;display:flex}.login-top>span{letter-spacing:.08em;color:#94a085;font-size:10px}.login-card{width:100%;max-width:420px;margin:auto;padding:55px 0;position:relative}.login-card h1{letter-spacing:-.055em;margin:16px 0 22px;font-family:Georgia,serif;font-size:50px;font-weight:400;line-height:1.1}.login-card>p{color:#87967a;max-width:340px;margin-bottom:32px;font-size:13px;line-height:1.9}.login-card form{max-width:350px}.login-card form>label{color:#637d53;margin-bottom:10px;font-size:11px}.password-wrap{color:#99aa85;background:#fffef9;border:1px solid #d9e1cd;border-radius:7px;align-items:center;gap:10px;padding:0 13px;display:flex}.password-wrap:focus-within{outline:2px solid #9bb68a}.password-wrap input{background:0 0;border:0;width:100%;padding:14px 0;font-size:12px}.password-wrap input:focus{outline:0}.login-card .primary{justify-content:space-between;width:100%;margin-top:15px;padding:14px}.login-note{color:#9daa8d;align-items:center;gap:7px;margin-top:22px;font-size:9px;display:flex}.login-footer{letter-spacing:.2em;color:#a0ad90;align-items:center;gap:20px;font-size:9px;display:flex;position:relative}.login-footer span{letter-spacing:0;color:#adb99d;font-size:10px}.form-error{color:var(--red);margin-top:10px;font-size:12px}.onboarding{text-align:center;flex-direction:column;justify-content:center;align-items:center;gap:20px;min-height:calc(100vh - 130px);padding:40px;display:flex}.large-icon{color:#6f8b58;background:#e5eddb;border-radius:22px;place-items:center;width:90px;height:90px;margin-bottom:10px;display:grid}.onboarding h1{font-family:Georgia,serif;font-size:40px;font-weight:400}.onboarding p{color:#8b9d7a;max-width:380px;font-size:13px}.loading{flex-direction:column;justify-content:center;align-items:center;gap:25px;min-height:100vh;display:flex}.loading>p{color:var(--muted);font-size:12px}@media (min-width:1600px){.workspace-grid{grid-template-columns:minmax(0,1fr) 320px;gap:28px}.names-list{max-height:620px}.photo-viewport{max-height:760px}.workspace-heading,.topbar,.workspace-grid{padding-left:45px;padding-right:45px}.workspace-heading h1{font-size:40px}}@media (max-width:1200px){.sidebar{width:200px;padding-left:12px;padding-right:12px}.main-area{width:calc(100% - 200px);margin-left:200px}.topbar,.workspace-heading{padding-left:23px;padding-right:23px}.workspace-grid{grid-template-columns:minmax(0,1fr) 260px;gap:17px;padding-left:23px;padding-right:23px}.photo-viewport{min-height:300px}.no-photo{min-height:330px}.save-state{font-size:9px}.topbar-actions{gap:10px}.workspace-heading h1{font-size:32px}.preview-row{grid-template-columns:110px 1fr;gap:8px}.section-heading>.quiet,.image-filename{display:none}.zoom-tools{margin-left:auto}.names-heading{padding-left:14px;padding-right:14px}}@media (max-width:960px){.sidebar{width:180px}.main-area{width:calc(100% - 180px);margin-left:180px}.sidebar .brand{gap:7px;font-size:10px}.sidebar .brand-icon{width:30px;height:34px}.brand small{font-size:7px}.project-title strong{font-size:18px}.workspace-grid{grid-template-columns:minmax(0,1fr)}.names-panel{grid-row:1}.names-list{grid-template-columns:1fr 1fr;gap:0 8px;max-height:220px;display:grid}.names-heading{padding:14px 17px}.names-heading p{display:inline}.mini-progress{margin-bottom:12px}.search-wrap{width:calc(60% - 15px);margin-right:0;display:inline-flex}.name-filters{float:right;border:0;margin:0 14px 10px 0;padding:0;display:inline-flex}.name-filters button{padding:9px 6px}.name-filters button:last-child{display:none}.selected-person{padding:12px 16px}.selected-person>strong{margin:0 12px 10px 0;display:inline-block}.selected-person>.eyebrow{display:none}.selected-person .privacy-toggle{display:inline-flex}.person-actions{margin:0 0 0 13px;display:inline-flex}.selected-person>.quiet{display:none}.panel-help{padding-bottom:12px}.workspace-heading>.primary,.ready-badge{padding:8px 10px;font-size:10px}.workspace-heading p{font-size:11px}.save-state{max-width:120px;line-height:1.5}.breadcrumb{gap:8px;font-size:10px}}@media (max-width:650px){.sidebar{border-right:0;border-bottom:1px solid var(--line);width:100%;height:auto;padding:15px 18px;display:block;position:static}.app-shell{display:block}.sidebar .brand{font-size:11px}.sidebar .brand-icon{width:30px;height:32px}.project-title{border:0;justify-content:space-between;align-items:center;gap:10px;padding:15px 0 0;display:flex}.project-title>.eyebrow{display:none}.project-title strong{margin:0;font-size:16px}.year-select{margin:0}.nav-caption{display:none}.group-nav{gap:6px;padding:10px 0 0;display:flex;overflow:auto}.group-nav>div{display:contents}.kind-label{display:none}.group-link{flex-shrink:0;width:auto;padding:8px;font-size:10px}.group-link small{display:none}.sidebar-bottom{border:0;gap:15px;margin-top:8px;padding:0;display:flex}.progress-label,.progress-track{display:none}.sidebar-action{width:auto;padding:5px 0;font-size:9px}.sidebar-action.logout{border:0;margin:0 0 0 auto;padding:5px 0}.sidebar-action svg{width:13px}.main-area{width:100%;margin-left:0}.topbar{height:59px;padding:0 18px}.breadcrumb{display:none}.topbar-actions{justify-content:space-between;width:100%}.save-state{max-width:none;font-size:9px}.topbar .button{min-height:32px;font-size:10px}.workspace-heading{align-items:flex-start;gap:10px;padding:24px 18px 21px}.workspace-heading h1{gap:3px;font-size:29px}.workspace-heading>.primary,.ready-badge{align-self:center;min-height:32px;padding:7px;font-size:9px}.workspace-heading .eyebrow{font-size:8px}.workspace-heading p{max-width:220px;font-size:10px}.workspace-grid{gap:15px;padding:0 13px 20px}.name-select{padding:8px 6px}.names-list{max-height:190px}.name-card{min-height:44px}.person-text>span{font-size:10px}.person-text small{font-size:8px}.name-edit{padding:4px}.search-wrap{width:calc(52% - 15px)}.name-filters button{font-size:9px}.name-filters{gap:0}.selected-person>strong{font-size:11px}.privacy-toggle{font-size:9px}.person-actions{margin-left:0;display:flex}.panel-help{font-size:9px}.photo-viewport{min-height:200px}.photo-toolbar{padding:0 8px}.no-photo{min-height:280px}.photo-footer>span{max-width:70%;font-size:9px}.photo-footer{padding:7px 8px}.photo-footer button{width:23px}.photo-footer>div{gap:1px}.row-pills button{padding:6px 9px;font-size:9px}.print-preview{padding:19px}.preview-row{font-size:10px;display:block}.preview-row strong{margin-bottom:4px;display:block}.section-heading h2{font-size:19px}.workspace-footer{padding:5px 18px 22px;line-height:1.7}.workspace-footer span:last-child{display:none}.toast{width:calc(100% - 35px);font-size:11px;bottom:18px;left:50%}.modal-backdrop{padding:12px}.modal{padding:28px 23px}.modal h2{font-size:25px}.image-gallery{grid-template-columns:1fr 1fr}.form-row{display:block}.form-row>.checkbox-label{margin-top:15px}.login-page{padding:25px}.login-top>span{display:none}.login-card{padding:60px 0}.login-card h1{font-size:44px}.error-banner{padding:12px 18px}.onboarding{min-height:600px}.onboarding h1{font-size:33px}}@media print{.sidebar,.topbar,.workspace-heading,.names-panel,.photo-toolbar,.photo-footer,.row-controls,.review-check,.workspace-footer,.person-marker,.toast,.error-banner{display:none!important}.main-area{width:100%;margin:0}.workspace-grid{padding:0;display:block}.photo-card,.print-preview{box-shadow:none;border:0}.photo-viewport{min-height:0;max-height:none;overflow:visible}.photo-stage{width:100%!important}.print-preview{margin-top:10mm}.preview-row{font-size:11pt}.preview-row strong{font-size:10pt}body{background:#fff}}.confirm-actions{justify-content:flex-end;gap:10px;margin-top:25px;display:flex}.group-link,.person-text>span{font-size:12px}.person-text small{color:#71816d;font-size:10px}.panel-help{color:#71816d}.quiet,.image-filename,.save-state{color:#657c6d}.preview-row p{color:#4c6250}.review-check{color:#62765e}.name-filters button{color:#708266}.workspace-heading p{color:#687b6a}@media (max-width:650px){.group-link,.person-text>span{font-size:11px}.person-text small{font-size:9px}}
