:root{--ink:#173f36;--paper:#f6f4ee;--line:#d5d9cf;--muted:#58645e;--white:#fffefa;--gold:#e9dcc0}*{box-sizing:border-box}body{margin:0;color:var(--ink);background:var(--paper);font:17px/1.6 system-ui,sans-serif}a{color:inherit;text-underline-offset:4px}a:hover{color:#37745e}h1,h2,.brand{font-family:Georgia,'Times New Roman',serif;font-weight:400;line-height:1.1}h1{font-size:clamp(2.5rem,5vw,4.5rem);margin:24px 0}h2{font-size:1.8rem;margin:10px 0 20px}p{margin:0 0 20px}header{display:flex;align-items:center;gap:28px;padding:20px 4%;border-bottom:1px solid var(--line)}.brand{font-size:3.4rem;text-decoration:none;letter-spacing:-3px}.brand-dot{color:#a48145}.identity{border-left:1px solid var(--line);padding-left:28px;font-family:Georgia,serif}nav{margin-left:auto;display:flex;align-items:center;gap:22px}nav form{margin:0}.badge{display:inline-block;border-radius:3px;background:#e4e9df;padding:4px 10px;font-size:.8rem;font-weight:600;white-space:nowrap}main{max-width:1440px;margin:auto;padding:48px 4% 80px;min-height:75vh}.eyebrow{font-size:.78rem;letter-spacing:.16em;font-weight:650;color:var(--muted)}.lead{font-family:Georgia,serif;font-size:1.55rem;max-width:720px}.login-layout{display:grid;grid-template-columns:1.15fr 1fr;gap:10%;align-items:center;max-width:1150px;margin:40px auto}.login-layout h1{font-size:clamp(3rem,5.5vw,5rem)}.panel{background:var(--white);border:1px solid var(--line);padding:32px;border-radius:5px}.cards{display:grid;grid-template-columns:repeat(auto-fit,minmax(270px,1fr));gap:28px;margin-top:34px}.archive-card{display:block;text-decoration:none;max-width:600px}.photo-card{border:1px solid var(--line);background:var(--white);max-width:620px}.photo-card a{text-decoration:none}.photo-card img{width:100%;height:240px;object-fit:contain;background:#e9e8df;display:block}.card-copy{padding:20px}.card-copy h2{font-size:1.5rem;margin:15px 0 8px}.card-copy p{margin:0;color:var(--muted)}.heading-row{display:flex;align-items:center;justify-content:space-between;gap:24px}.notice{padding:16px 20px;background:#e9ede5;border-left:3px solid #719278;font-size:.94rem}.empty{max-width:780px;padding:48px}.form-layout{display:grid;grid-template-columns:minmax(0,2fr) minmax(240px,1fr);gap:60px;margin-top:32px}.detail-layout{display:grid;grid-template-columns:minmax(0,2.3fr) minmax(270px,1fr);gap:40px}.detail-layout aside{border-left:1px solid var(--line);padding-left:30px}.detail-image{max-height:700px;width:100%;object-fit:contain;background:#e9e8df}figure{margin:0 0 32px}figcaption{font-size:.8rem;color:var(--muted);padding-top:8px}.archive-number{font-size:.8rem;color:var(--muted);overflow-wrap:anywhere}dt{font-size:.8rem;font-weight:700;text-transform:uppercase;letter-spacing:.08em}dd{margin:4px 0 24px;overflow-wrap:anywhere}hr{border:0;border-top:1px solid var(--line);margin:28px 0}label{display:block;font-weight:600;margin-bottom:6px}input,textarea,select{width:100%;padding:11px 12px;background:white;border:1px solid #929e91;border-radius:3px;font:inherit;color:var(--ink)}textarea{resize:vertical}input[type=checkbox]{width:20px;height:20px;accent-color:var(--ink)}input[type=file]{font-size:.9rem}.helptext{display:block;color:var(--muted);font-size:.84rem;margin-top:6px}button,.button{display:inline-block;padding:11px 22px;border:1px solid var(--ink);border-radius:3px;background:var(--ink);color:white;font:inherit;text-decoration:none;cursor:pointer}.secondary{background:transparent;color:var(--ink)}button:hover,.button:hover{background:#2b5948;color:white}.errorlist,.error{color:#8a2424}.errorlist{padding-left:22px}.checksum{display:block;overflow-wrap:anywhere;font-size:.8rem;padding-top:10px}details{margin-top:20px}summary{cursor:pointer}.prose{overflow-wrap:anywhere}footer{border-top:1px solid var(--line);padding:24px 4%;display:flex;justify-content:space-between;gap:20px;font-size:.78rem;color:var(--muted)}:focus-visible{outline:3px solid #af793b;outline-offset:4px}.skip{position:absolute;top:-80px;padding:12px;background:white;z-index:2}.skip:focus{top:8px}@media(max-width:760px){header{flex-wrap:wrap;gap:14px}.brand{font-size:2.6rem}.identity{font-size:.85rem;padding-left:14px}nav{width:100%;justify-content:space-between;gap:10px}main{padding-top:30px}.login-layout,.form-layout,.detail-layout{grid-template-columns:1fr;gap:30px}.login-layout{margin:0}.heading-row{align-items:flex-start;flex-direction:column;margin-bottom:22px}.panel{padding:24px}.detail-layout aside{border-left:0;border-top:1px solid var(--line);padding:24px 0 0}footer{flex-direction:column}.cards{grid-template-columns:1fr}}
.register-nav{margin:0 0 30px;justify-content:flex-start;flex-wrap:wrap;gap:12px 24px}.register-form{max-width:780px}.search-fields{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:20px}.search-fields>div:first-child{grid-column:1/-1}.result-count{margin-top:24px}.history{margin-top:48px;border-top:1px solid var(--line);padding-top:28px}.history details{background:var(--white);border:1px solid var(--line);padding:16px}.history dl{margin-top:20px}.history-label{font-weight:600}.pagination{justify-content:center;margin:30px 0}.heading-row h1{min-width:0;overflow-wrap:anywhere}.heading-row .button{flex-shrink:0}.panel{overflow-wrap:anywhere}#id_people label{font-weight:400}.search-form .helptext{margin:8px 0 18px}@media(max-width:760px){.search-fields{grid-template-columns:1fr}.register-nav{justify-content:flex-start}.form-layout aside .register-nav{flex-direction:column;align-items:flex-start}}
.metadata-field{margin-bottom:24px}.metadata-field[hidden]{display:none}
/* Registry selection and tagging keep the existing warm, green archive palette. */
.registry-picker{margin:.5rem 0 1.5rem}.registry-picker [hidden],[hidden]{display:none!important}
.selected-entry{display:flex;gap:.75rem;align-items:center;justify-content:space-between;background:#edf1e9;border:1px solid #bcc8b8;border-radius:4px;padding:.6rem;margin:.4rem 0;overflow-wrap:anywhere}
.selected-entry button{flex-shrink:0;font-size:.85rem;padding:.4rem .6rem}.registry-results{list-style:none;padding:0;max-height:18rem;overflow:auto;margin:.5rem 0}.registry-results button{width:100%;text-align:left;margin:.2rem 0;white-space:normal;overflow-wrap:anywhere}
.inline-create{border:1px solid #bec7b8;border-radius:4px;padding:1rem;margin-top:1rem}.inline-create summary{cursor:pointer;font-weight:600}.inline-create input,.inline-create textarea{margin-bottom:.7rem}.create-feedback button{margin:.3rem;white-space:normal}
.tag-layout{display:grid;grid-template-columns:minmax(0,1.5fr) minmax(300px,1fr);gap:2rem;align-items:start}.tag-layout>*{min-width:0}
.tag-surface{position:relative;width:100%;line-height:0;margin:1rem 0}.tag-surface img{display:block;width:100%;height:auto;max-height:none}.tag-surface.drawing{touch-action:none;cursor:crosshair;user-select:none}.tag-surface.drawing .tag-box{pointer-events:none}
.tag-box,.tag-preview{position:absolute;box-sizing:border-box;border:2px solid #fff;outline:1px solid #18473c;background:transparent}.tag-box span{position:absolute;top:0;left:0;background:#18473c;color:white;padding:.3rem;line-height:1;font-size:.8rem;min-width:1.3rem;text-align:center}.tag-box.uncertain,.tag-box.proposed{border-style:dashed}.tag-box:focus{outline:4px solid #e7b453;z-index:2}.tag-preview{border:3px solid #e7b453;outline:1px solid #183f35;pointer-events:none;z-index:3}
.tag-list{padding-left:1.5rem}.tag-list li{padding:.6rem;line-height:1.6;border-bottom:1px solid #d5d8ce;overflow-wrap:anywhere}.tag-list li:target{background:#f1e6c8}.tag-list .badge{white-space:normal}.tag-layout .panel{padding:1.25rem}
@media(max-width:850px){.tag-layout{grid-template-columns:1fr}.selected-entry{align-items:flex-start}.tag-box span{font-size:.75rem;padding:.2rem}}
/* Quiet annotations, zoomable work surface and keyboard-friendly fine tuning. */
.photo-viewer{min-width:0}.viewer-tools,.placement-tools,.adjust-buttons{display:flex;flex-wrap:wrap;align-items:center;gap:.5rem;margin:.75rem 0}.viewer-tools button,.placement-tools button,.adjust-buttons button{padding:.5rem .7rem;font-size:.9rem}.viewer-tools output{min-width:3.5rem;text-align:center}.viewer-tools button:disabled,.adjust-buttons button:disabled{opacity:.45;cursor:default}.image-viewport{max-height:70vh;overflow:auto;overscroll-behavior:contain;background:#e9e7df;position:relative}.photo-viewer .tag-surface{margin:0;max-width:none}.photo-viewer .tag-surface img{max-width:none;pointer-events:none}.photo-viewer .tag-box{border:1px solid #fff;outline:1px solid #18473c;border-radius:0;margin:0;padding:0;background:transparent;min-width:0;min-height:0;cursor:pointer;opacity:0;transition:opacity .12s}.photo-viewer .tag-box:hover,.photo-viewer .tag-box:focus-visible,.photo-viewer .tag-box.is-active,.show-all-tags .tag-box{opacity:1}.photo-viewer .tag-box:focus-visible{outline:3px solid #d4aa4a}.photo-viewer .tag-preview{background:transparent;border:2px solid #e7b453;outline:1px solid #183f35;pointer-events:auto}.photo-viewer .drawing .tag-preview{pointer-events:none}.tag-preview:focus-visible{outline:3px solid #fff}.tag-tooltip{position:fixed;z-index:10;pointer-events:none;line-height:1.4;max-width:min(340px,85vw);padding:.5rem .7rem;border-radius:4px;background:#173f34;color:#fff;box-shadow:0 2px 12px #0003;font-size:.9rem;overflow-wrap:anywhere}.viewer-selection{padding:.7rem 0;font-size:.9rem;line-height:1.5}.viewer-selection span{font-weight:600}.viewer-selection button{padding:.35rem .55rem;font-size:.8rem;margin:.25rem}.tag-list{list-style:none;padding-left:0;max-height:24rem;overflow:auto}.tag-list li.is-active{background:#f1e6c8}.tag-list .tag-name{display:inline;padding:0;border:0;background:transparent;color:#18473c;text-align:left;font:inherit;font-weight:600;white-space:normal}.tag-list .tag-name:hover{text-decoration:underline}.tag-list .tag-name:focus-visible{outline:2px solid #18473c;outline-offset:3px}.fine-tune{width:100%;margin:.3rem 0}.fine-tune summary{cursor:pointer;font-weight:600}.viewer-status:empty{display:none}.viewer-status{padding:.5rem 0;font-size:.9rem}.viewer-dialog{position:fixed;inset:1rem;width:calc(100vw - 2rem);height:calc(100dvh - 2rem);max-width:none;max-height:none;margin:0;padding:1rem;border:1px solid #adbbaa;background:#f7f5ef;color:#183f35;border-radius:6px}.viewer-dialog::backdrop{background:#10281de0}.viewer-dialog .photo-viewer{height:100%;display:flex;flex-direction:column}.viewer-dialog .image-viewport{flex:1;min-height:5rem;max-height:none}.viewer-dialog .viewer-tools{margin-top:0}.viewer-dialog .fine-tune[open]{max-height:9rem;overflow:auto}.viewer-dialog .tag-surface{align-self:flex-start}.viewer-dialog .viewer-selection{flex-shrink:0}.viewer-dialog .placement-tools{flex-shrink:0}
@media(max-width:600px){.viewer-dialog{inset:0;width:100vw;height:100dvh;padding:.6rem;border-radius:0}.viewer-tools{gap:.35rem}.viewer-tools button,.placement-tools button{font-size:.8rem;padding:.45rem}.tag-list{max-height:20rem}}
.photo-viewer .tag-surface{margin:0 auto}.photo-viewer .tag-box.uncertain,.photo-viewer .tag-box.proposed{border-style:dashed}
/* Direct manipulation; these controls change the view, never the stored image. */
.photo-viewer .image-viewport{touch-action:none;overscroll-behavior:auto}.is-zoomed .image-viewport{cursor:grab;overscroll-behavior:contain}.viewer-dialog .image-viewport{overscroll-behavior:contain}.is-panning .image-viewport{cursor:grabbing;user-select:none}.photo-viewer .tag-preview{cursor:move;touch-action:none}.photo-viewer .drawing{cursor:crosshair}.viewer-dialog .viewer-tools{padding-right:2.5rem}.viewer-close-x{position:absolute;right:.65rem;top:.65rem;font-size:1.6rem!important;line-height:1;padding:.35rem .6rem!important;z-index:5}.photo-viewer .tag-box.is-active{border:2px solid #fff;outline:2px solid #18473c}

/* Archive overview: quiet, image-led layout from the search mockup. */
.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}
.archive-explore header{padding:16px 3.5%;gap:24px}.archive-explore .brand{font-size:3.7rem}.archive-explore .identity{color:var(--muted);font-size:1rem}.nav-current{text-decoration:none;border-bottom:2px solid var(--ink);padding:8px 0}
.archive-explore main{max-width:1680px;padding:28px 3.5% 60px}.explore-heading{display:flex;align-items:center;justify-content:space-between;gap:24px;margin:0 0 18px}.explore-heading h1{font-size:clamp(2.4rem,4vw,3.6rem);font-weight:600;letter-spacing:-.035em;margin:8px 0 0}.register-photo{font-size:.88rem;padding:9px 14px;flex-shrink:0}
.search-bar{display:flex;gap:12px;margin-bottom:28px}.search-input{flex:1;position:relative;min-width:0}.search-input svg{position:absolute;left:17px;top:16px;width:22px;height:22px;fill:none;stroke:var(--muted);stroke-width:1.7;pointer-events:none}.search-input input{height:54px;background:#ffffff70;border-color:#c9cec5;padding-left:54px;font-size:1.1rem}.search-bar>button{min-width:140px;font-size:1.05rem}
.explore-layout{display:grid;grid-template-columns:250px minmax(0,1fr);gap:24px;align-items:start}.filter-panel{border:1px solid #dfe1d8;border-radius:4px;padding:20px 18px;background:#ffffff18}.filter-panel h2{font-size:1.5rem;margin:0 0 20px}.filter-field{margin-bottom:18px}.filter-panel label,.filter-panel legend{font-size:.87rem;font-weight:500}.filter-panel select,.year-filter input{padding:9px 10px;font-size:.87rem;background:#ffffff65;border-color:#cbd0c6;min-width:0}.year-filter{border:0;padding:0;margin:0 0 18px;min-width:0}.year-filter legend{margin-bottom:6px}.year-filter>div{display:grid;grid-template-columns:minmax(0,1fr) auto minmax(0,1fr);gap:10px;align-items:center}.year-filter input{width:100%}.check-filter{display:flex;align-items:flex-start;gap:10px;line-height:1.45}.check-filter input{flex-shrink:0;margin:1px 0 0}.search-explanation{font-size:.8rem;color:var(--muted);margin:14px 0}.search-explanation p{margin:8px 0}.filter-panel .apply-filters{width:100%;font-size:.87rem;padding:8px 12px;margin:8px 0 14px}.reset-filters{font-size:.87rem}.filter-panel .errorlist{font-size:.8rem}
.explore-results{min-width:0}.results-toolbar{display:flex;align-items:center;justify-content:space-between;gap:16px;margin-bottom:12px;min-height:40px}.result-summary{display:flex;flex-wrap:wrap;align-items:center;gap:8px 12px;min-width:0}.result-summary p{margin:0;font-size:1.1rem;white-space:nowrap}.filter-chip{display:inline-flex;gap:12px;align-items:center;padding:5px 10px;border-radius:5px;background:#e2e9e1;text-decoration:none;font-size:.82rem;overflow-wrap:anywhere}.filter-chip span{font-size:1.2rem;line-height:1}.sort-control{display:flex;align-items:center;gap:8px;flex-shrink:0}.sort-control label{font-size:.78rem;margin:0}.sort-control select{font-size:.8rem;width:160px;padding:8px;background:transparent;border-color:#cbd0c6}.sort-control button{padding:8px;font-size:.8rem}
.explore-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:22px 18px}.explore-card{min-width:0}.explore-card a{text-decoration:none;display:block}.card-image{aspect-ratio:1.6;background:#e8e7df;overflow:hidden;border-radius:2px}.card-image img{width:100%;height:100%;object-fit:cover;display:block;transition:transform .2s}.explore-card a:hover img{transform:scale(1.025)}.explore-card h2{font-size:1.28rem;margin:8px 0 3px;line-height:1.2;overflow-wrap:anywhere}.explore-card p{color:var(--muted);font-size:.9rem;line-height:1.4;margin:0;overflow-wrap:anywhere}.empty-results{grid-column:1/-1;padding:48px 20px;border-top:1px solid var(--line)}.empty-results h2{font-size:1.8rem}.explore-pagination{display:flex;justify-content:center;gap:10px;margin:32px 0 0}.explore-pagination a,.explore-pagination span{display:inline-flex;justify-content:center;align-items:center;min-width:40px;height:42px;border:1px solid #cbd0c6;border-radius:4px;text-decoration:none}.explore-pagination [aria-current]{background:var(--ink);color:white;border-color:var(--ink)}.explore-pagination .ellipsis{border:0}.explore-bottom{border-top:1px solid var(--line);margin-top:38px;padding-top:18px;display:flex;gap:20px;justify-content:space-between;align-items:center}.explore-bottom p{font-size:.78rem;color:var(--muted);margin:0}.explore-bottom .register-nav{font-size:.82rem;margin:0;gap:16px}
@media(max-width:1100px){.explore-layout{grid-template-columns:220px minmax(0,1fr);gap:20px}.explore-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.archive-explore .identity{max-width:230px}.archive-explore header nav{gap:16px}.sort-control label{display:none}.results-toolbar{align-items:flex-start;flex-wrap:wrap}.explore-bottom{align-items:flex-start;flex-direction:column}}
@media(max-width:760px){.archive-explore header{padding:16px 4%;gap:14px}.archive-explore .brand{font-size:2.8rem}.archive-explore .identity{font-size:.85rem;max-width:200px}.archive-explore main{padding:24px 4% 40px}.explore-heading{align-items:flex-start;flex-direction:column;gap:12px}.explore-heading h1{margin:0}.search-bar{margin-bottom:20px;gap:8px}.search-bar>button{min-width:68px;padding:10px}.explore-layout{grid-template-columns:1fr;gap:24px}.filter-panel{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:0 14px;padding:18px}.filter-panel h2,.filter-panel>.check-filter,.filter-panel>.search-explanation,.filter-panel>.reset-filters,.filter-panel>.apply-filters{grid-column:1/-1}.filter-panel h2{margin-bottom:16px}.explore-grid{gap:20px 14px}.explore-card h2{font-size:1.12rem}.explore-card p{font-size:.8rem}.results-toolbar{gap:10px}.sort-control{margin-left:auto}.explore-bottom .register-nav{width:auto;justify-content:flex-start}}
@media(max-width:420px){.explore-grid{grid-template-columns:1fr}.explore-card h2{font-size:1.3rem}.explore-card p{font-size:.9rem}.filter-panel{gap:0 10px}.sort-control select{width:155px}}
@media(prefers-reduced-motion:reduce){.explore-card img{transition:none}}

.filter-toggle{width:100%;text-align:left}.filter-toggle::after{content:'＋';float:right}.filter-toggle[aria-expanded=true]::after{content:'−'}

@media(max-width:760px){.archive-explore header nav{font-size:.85rem;gap:10px}.archive-explore header nav a,.archive-explore header nav button{white-space:nowrap}.archive-explore header nav button{padding:9px 12px}}

/* Calm photo detail and annotation workspace. */
.photo-page main{max-width:1600px;padding-top:22px}.photo-page>.identity{color:var(--muted)}.photo-page .heading-row h1{font-weight:600;font-size:clamp(2.1rem,3.5vw,3.4rem);margin:16px 0 8px;letter-spacing:-.025em}.photo-page .heading-row>.button{font-size:.85rem;padding:8px 12px}.photo-page .archive-number{margin-bottom:12px}.photo-page .detail-layout{grid-template-columns:minmax(0,2.65fr) minmax(270px,1fr);gap:28px}.photo-page .detail-layout aside{padding-left:22px}.photo-page .detail-layout aside h2{font-size:1.65rem;margin-top:16px}.photo-page .detail-layout dt{text-transform:none;letter-spacing:0;font-size:.9rem;color:var(--muted);font-weight:400}.photo-page .detail-layout dd{font-size:.95rem;margin-bottom:14px}.photo-page .detail-layout dl{margin:0}.photo-page .detail-layout figure{margin-bottom:20px}.photo-page .photo-viewer{display:flex;flex-direction:column;border:1px solid var(--line);border-radius:4px;overflow:hidden}.photo-page .image-viewport{order:0;background:#e9e7df}.photo-page .viewer-tools{order:1;padding:8px 12px;margin:0;gap:8px;background:#ffffff30}.photo-page .viewer-tools button,.photo-page .viewer-tools .button{font-size:.8rem;padding:7px 10px}.photo-page .viewer-tools .mark-entry{margin-left:auto}.photo-page .viewer-tools .show-tags{border:0;background:transparent;color:var(--ink);padding-left:0}.show-tags::before{content:'';display:inline-block;width:27px;height:15px;border-radius:20px;background:radial-gradient(circle at 8px 7.5px,#fff 5px,transparent 6px),#a4afa5;margin-right:7px;vertical-align:-2px}.show-tags[aria-pressed=true]::before{background:radial-gradient(circle at 19px 7.5px,#fff 5px,transparent 6px),#28574a}.photo-viewer .tag-box.is-shown{opacity:1}.photo-page .placement-tools{order:2;padding:0 12px;margin:8px 0}.photo-page .viewer-status{order:3;padding:0 12px;font-size:.82rem}.photo-page .viewer-selection{order:4;padding:8px 12px}.photo-page figcaption{font-size:.73rem}.quiet-details>summary,.photo-history>summary{font-family:Georgia,serif;font-size:1.35rem;line-height:1.3}.quiet-details p{font-size:.9rem;margin-top:12px}.quiet-details .button{font-size:.82rem;padding:8px 12px}.photo-history{border-top:1px solid var(--line);padding-top:18px}.photo-history .history{margin-top:18px}.photo-history .history>h2{display:none}.photo-page .tag-list{margin:0 0 26px}.photo-page .tag-list li{padding:12px 0}.photo-page .tag-list li>a{font-size:.78rem;margin-left:8px}.confidence-label{font-size:.84rem;color:var(--muted);margin-left:8px}.photo-page .tag-list p{font-size:.86rem;margin:6px 0 0}.tagging-page h1{font-size:clamp(2rem,3vw,3rem);margin:14px 0}.tagging-page .lead{font-size:1.15rem;color:var(--muted)}.tagging-page .tag-layout{grid-template-columns:minmax(0,2fr) minmax(290px,1fr);gap:28px}.tagging-page .tag-layout>section>p{font-size:.85rem;max-width:70ch}.tagging-page #tag-form{background:transparent;border:0;border-left:1px solid var(--line);border-radius:0;padding:0 0 0 24px}.tagging-page #tag-form h2{font-size:1.65rem}.tagging-page .metadata-field{margin-bottom:18px}.tag-kind,.confidence-choices{border:0;margin:0 0 20px;padding:0;min-width:0}.tag-kind legend,.confidence-choices legend{font-weight:600;font-size:.95rem;margin-bottom:10px}.tag-kind #id_kind{display:flex;gap:8px}.tag-kind #id_kind>div{flex:1}.tag-kind label{border:1px solid var(--line);border-radius:4px;padding:10px;font-size:.85rem;font-weight:400;cursor:pointer;text-align:center}.tag-kind label:has(input:checked){background:var(--ink);color:white;border-color:var(--ink)}.tag-kind input{position:absolute;opacity:0;width:1px;height:1px}.tag-kind label:focus-within{outline:3px solid #af793b;outline-offset:3px}.confidence-choices label{display:flex;gap:10px;align-items:center;font-weight:400;font-size:.95rem}.confidence-choices input{width:17px;height:17px;accent-color:var(--ink)}.alternative-identities{margin:14px 0 22px;font-size:.9rem}.alternative-identities .metadata-field{margin-top:14px}.tagging-page .inline-create{background:#ffffff40;border-color:var(--line)}.tagging-page input,.tagging-page select,.tagging-page textarea{border-color:#bdc5ba;background:#fffefa}.photo-page .viewer-dialog .viewer-close-x{top:8px;right:8px;background:var(--paper)}.photo-page .viewer-dialog .photo-viewer{border:0}.photo-page .viewer-dialog .image-viewport{order:0}.photo-page .viewer-dialog .viewer-tools{flex-shrink:0;padding-right:48px}
@media(max-width:850px){.photo-page .detail-layout,.tagging-page .tag-layout{grid-template-columns:1fr}.photo-page .detail-layout aside{padding:20px 0 0;border-left:0;border-top:1px solid var(--line)}.tagging-page #tag-form{padding:20px 0 0;border-left:0;border-top:1px solid var(--line)}.photo-page .viewer-tools .mark-entry{margin-left:0}.photo-page .viewer-tools{gap:7px}.photo-page .heading-row{gap:8px;margin-bottom:12px}.photo-page .tag-list{max-height:none}}
.photo-page .detail-layout>section{min-width:0}.photo-page .tag-list button{max-width:100%;overflow-wrap:anywhere;white-space:normal}
/* Shared masthead and photo detail: proportions from the archive mockup. */
.site-header{display:block;padding:0 32px}.header-inner{max-width:1440px;margin:auto;min-height:80px;display:flex;align-items:center;gap:28px}.site-header .brand{font-size:58px;letter-spacing:-3px;font-weight:400}.site-header .identity{font-size:19px;line-height:1.4;padding-left:24px}.site-header nav{gap:22px;font-size:16px}.site-header nav a{white-space:nowrap}.signed-in{font-size:15px;color:var(--muted);max-width:140px;overflow-wrap:anywhere}.site-header .badge{display:none}.site-header button{font-size:16px;min-height:44px;padding:9px 20px}
.photo-detail main{max-width:1504px;padding:12px 32px 60px}.breadcrumbs{justify-content:flex-start;margin:0 0 10px;gap:12px;font-size:15px;line-height:1.5}.breadcrumbs a{text-decoration:none}.breadcrumbs a:hover{text-decoration:underline}.photo-heading h1{font-size:clamp(34px,3.6vw,52px);font-weight:600;letter-spacing:-1px;line-height:1.13;margin:10px 0 4px;overflow-wrap:anywhere}.photo-heading-meta{display:flex;align-items:baseline;justify-content:space-between;gap:20px;margin-bottom:14px}.photo-detail .archive-number{font-size:16px;line-height:1.5;margin:0}.edit-photo{font-size:16px;flex-shrink:0;padding:8px 0}.photo-composition{display:grid;grid-template-columns:minmax(0,7fr) minmax(0,2.6fr);column-gap:30px;row-gap:24px;align-items:start}.photo-stage{grid-column:1;grid-row:1;margin:0;min-width:0}.photo-information{grid-column:2;grid-row:1 / span 2;min-width:0;padding-left:20px;border-left:1px solid var(--line)}.photo-story{grid-column:1;grid-row:2;min-width:0}.photo-detail h2{font-size:29px;line-height:1.2;font-weight:500;margin:0 0 18px}.photo-information>section{border-top:1px solid var(--line);padding:20px 0 24px}.photo-information p{font-size:16px;line-height:1.55;margin:0 0 12px}.fact-rows{display:grid;grid-template-columns:92px minmax(0,1fr);gap:12px 14px;margin:0;font-size:17px;line-height:1.5}.fact-rows dt{font-size:17px;letter-spacing:0;text-transform:none;font-weight:400;color:var(--muted)}.fact-rows dd{margin:0;overflow-wrap:anywhere}.fact-rows a{text-decoration:none}.fact-rows a:hover{text-decoration:underline}.dating-note{display:block;color:var(--muted);margin-top:4px;font-size:16px}.dating-note small{font-size:14px}.photo-detail .image-viewport{max-height:none}.photo-detail .photo-viewer{overflow:visible}.photo-detail .viewer-tools{gap:8px 12px;padding:12px 16px;border-top:1px solid var(--line);border-radius:0 0 4px 4px}.photo-detail .viewer-tools button,.photo-detail .viewer-tools .button{font-size:16px;min-height:44px;padding:8px 12px}.photo-detail .viewer-tools output{font-size:16px}.photo-detail .viewer-tools .mark-entry{background:var(--ink);color:white;margin-left:auto}.photo-detail .viewer-tools .show-tags{min-height:44px}.show-tags::before{width:36px;height:21px;background:radial-gradient(circle at 11px 10.5px,#fff 7px,transparent 8px),#a4afa5;vertical-align:-4px}.show-tags[aria-pressed=true]::before{background:radial-gradient(circle at 25px 10.5px,#fff 7px,transparent 8px),#28574a}.photo-detail .viewer-selection{font-size:16px}.photo-detail figcaption{font-size:14px;padding-top:8px}.photo-detail .detail-tag-list{padding:0;margin:0;list-style:none;max-height:none}.photo-detail .detail-tag-list li{display:flex;align-items:flex-start;gap:12px;border:0;padding:6px 0 12px}.person-number{display:inline-flex;align-items:center;justify-content:center;width:34px;height:34px;flex:0 0 34px;background:#28574a;color:white;border-radius:50%;font:24px/1 Georgia,serif;margin-top:5px}.person-entry{min-width:0;flex:1}.photo-detail .tag-name{font-size:17px;line-height:1.5;padding:7px 0;min-height:44px;display:inline;text-align:left;border-radius:2px}.photo-detail .confidence-label{font-size:15px;margin-left:6px;font-weight:400}.photo-detail .edit-mark{display:block;width:fit-content;font-size:15px;line-height:1.5;padding:7px 0;color:var(--muted)}.photo-detail .tag-list li.is-active{background:#e6ebe2;border-radius:4px;box-shadow:0 0 0 6px #e6ebe2}.photo-detail .unplaced-label{font-size:15px;color:var(--muted);margin-top:12px}.unplaced-people{padding-left:20px;font-size:17px}.photo-information details{font-size:16px;margin-top:8px}.photo-information summary{padding:6px 0;min-height:40px}.photo-information details p{margin-top:12px}.photo-technical{border-top:1px solid var(--line);padding:16px 0;color:var(--muted)}.photo-story h2{padding-bottom:10px;border-bottom:1px solid var(--line);margin-bottom:14px}.photo-story .prose{font-size:17px;line-height:1.65}.photo-detail .tag-box .mark-number{width:27px;height:27px;min-width:27px;display:flex;align-items:center;justify-content:center;border-radius:50%;border:1px solid white;font:19px/1 Georgia,serif;padding:0;top:-13px;left:-13px;background:#28574a}.photo-detail .tag-box{border-radius:4px;border:2px solid #fff;outline:2px solid #28574a}.photo-detail .viewer-dialog .image-viewport{max-height:calc(100vh - 200px)}.photo-detail .viewer-dialog .photo-viewer{overflow:hidden}.photo-detail .viewer-dialog .viewer-tools{padding-right:54px}.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}
@media(min-width:1000px){.photo-detail .image-viewport{max-height:80vh}}
@media(max-width:1150px){.header-inner{gap:20px}.site-header .identity{font-size:17px;max-width:260px}.site-header nav{gap:14px}.signed-in{max-width:100px}.photo-composition{grid-template-columns:minmax(0,2fr) minmax(0,1fr);gap:24px}.photo-information{padding-left:16px}.fact-rows{grid-template-columns:72px minmax(0,1fr);gap:10px}.photo-detail h2{font-size:26px}}
@media(max-width:850px){.site-header{padding:12px 20px}.header-inner{flex-wrap:wrap;gap:10px 18px;min-height:0}.site-header .brand{font-size:46px}.site-header .identity{font-size:16px;max-width:calc(100% - 158px);padding-left:16px}.site-header nav{width:100%;justify-content:flex-start;gap:18px;flex-wrap:wrap}.site-header nav form{margin-left:auto}.signed-in{max-width:100%;margin-left:auto}.photo-detail main{padding:16px 20px 40px}.photo-composition{display:flex;flex-direction:column;gap:24px}.photo-stage,.photo-information,.photo-story{width:100%}.photo-information{border:0;padding:0;display:flex;flex-direction:column}.photo-people{order:0}.photo-objects{order:1}.photo-facts{order:2}.photo-rights{order:3}.photo-technical{order:4}.photo-heading-meta{align-items:flex-start;flex-direction:column;gap:4px}.photo-detail .viewer-tools{padding:10px;gap:8px}.photo-detail .viewer-tools .mark-entry{margin-left:0;width:100%;text-align:center}.photo-detail h2{font-size:28px}.fact-rows{grid-template-columns:92px minmax(0,1fr)}.photo-detail .photo-heading h1{font-size:36px}.photo-detail .viewer-dialog .image-viewport{max-height:calc(100dvh - 280px)}}
@media(max-width:850px){.site-header .identity{flex:1;min-width:0;max-width:none}.site-header .brand{flex:0 0 auto}}
/* Plain-language search controls with comfortable targets. */
.archive-explore .filter-panel{padding:22px 20px;font-size:17px;display:block}.filter-panel h2{font-size:28px;margin:0 0 24px}.filter-panel .filter-field{margin-bottom:22px}.filter-panel label,.filter-panel legend{font-size:17px;font-weight:500;line-height:1.5}.filter-panel select,.filter-panel input[type=number]{font-size:17px;min-height:48px;padding:10px 12px;width:100%}.filter-panel .year-filter{padding:0;margin:0 0 16px;min-width:0}.filter-panel .year-filter legend{margin-bottom:10px}.filter-panel .year-filter .year-fields{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.filter-panel .year-fields>div{display:block;min-width:0}.filter-panel .year-fields label{display:block;margin-bottom:6px}.filter-panel .check-filter{display:flex;align-items:flex-start;gap:12px;font-size:17px;line-height:1.5;cursor:pointer;padding:8px 0;margin:0;min-height:44px}.filter-panel .check-filter input{flex:0 0 24px;width:24px;height:24px;margin:2px 0 0}.filter-panel .date-help,.filter-panel .filter-help{font-size:16px;line-height:1.5;color:var(--muted);margin:4px 0 20px}.filter-panel .more-search{margin:22px 0;border-top:1px solid var(--line);border-bottom:1px solid var(--line);padding:8px 0}.filter-panel .more-search summary{font-size:18px;min-height:48px;padding:10px 0}.filter-panel .more-search[open] summary{margin-bottom:16px}.filter-panel .only-unknown-note{font-size:16px;margin:8px 0 16px}.filter-panel .apply-filters{font-size:18px;min-height:48px;width:100%;margin:0 0 12px}.filter-panel .reset-filters{display:block;font-size:17px;padding:10px 0;margin:0;min-height:44px}.filter-panel input:disabled{background:#e6e7e1;color:#62685f;opacity:.75}.archive-explore .filter-toggle{font-size:18px;min-height:48px}
@media(min-width:1101px){.explore-layout{grid-template-columns:300px minmax(0,1fr)}}
@media(max-width:760px){.archive-explore .filter-panel{display:block;padding:22px}.filter-panel .more-search{width:100%}}
/* Shared, read-only searchable registry choice. */
.search-choice{position:relative;min-width:0}.filter-panel .search-choice .choice-text{font-size:17px;min-height:48px;padding:11px 12px;width:100%;border-color:#929e91}.choice-selection{padding:10px 0;display:flex;flex-wrap:wrap;gap:8px;align-items:center;font-size:16px;overflow-wrap:anywhere}.choice-clear,.choice-retry{font-size:16px;padding:8px 12px;min-height:44px}.choice-options{position:absolute;z-index:6;left:0;right:0;max-height:340px;overflow:auto;list-style:none;padding:0;margin:4px 0;background:var(--white);border:1px solid #929e91;box-shadow:0 6px 16px #173f3620;border-radius:4px}.choice-options li{padding:12px;min-height:48px;cursor:pointer;border-bottom:1px solid var(--line);line-height:1.45;overflow-wrap:anywhere}.choice-options li[aria-selected=true],.choice-options li:hover{background:#e3ebdf;outline:2px solid var(--ink);outline-offset:-2px}.choice-options strong,.choice-browse-rows strong{display:block;font-size:17px;font-weight:600}.choice-options span,.choice-browse-rows span{display:block;font-size:16px}.choice-options small,.choice-browse-rows small{display:block;font-size:14px;color:var(--muted)}.choice-status{font-size:16px;line-height:1.45;margin:8px 0}.choice-status:empty{display:none}.choice-browse{display:inline-block;padding:9px 0;font-size:16px;min-height:44px}.choice-dialog{color:var(--ink);background:var(--paper);width:min(620px,calc(100vw - 24px));max-height:calc(100dvh - 24px);border:1px solid var(--line);border-radius:8px;padding:24px;overflow:auto}.choice-dialog::backdrop{background:#10282099}.choice-dialog h2{font-size:30px;margin:0 0 20px}.choice-dialog>input{font-size:17px;min-height:48px}.choice-dialog>p{font-size:16px;margin:12px 0}.choice-browse-rows{list-style:none;padding:0;margin:16px 0}.choice-browse-rows button,.choice-browse-rows a{display:block;width:100%;text-align:left;background:var(--white);color:var(--ink);padding:12px 16px;border:1px solid var(--line);border-radius:3px;text-decoration:none;min-height:48px}.choice-browse-rows li+li{margin-top:6px}.choice-browse-rows button:hover,.choice-browse-rows a:hover{background:#e3ebdf}.choice-pages{display:flex;align-items:center;justify-content:space-between;gap:12px;flex-wrap:wrap;margin:20px 0;font-size:17px}.choice-pages button{font-size:17px;min-height:44px}.choice-pages button:disabled{opacity:.5;cursor:default}.choice-dialog>button{font-size:17px;min-height:44px}.choice-browse-search{max-width:620px}.choice-browse-search button{margin-top:12px}.filter-panel .errorlist{font-size:16px}
@media(max-width:600px){.choice-dialog{padding:18px}.choice-pages{gap:8px}.choice-pages button{padding:10px 16px}}
.choice-dialog[open]{display:flex;flex-direction:column}.choice-dialog .choice-browse-rows{overflow:auto;min-height:0;max-height:50dvh;flex:1;margin:8px 0}.choice-dialog>h2,.choice-dialog>label,.choice-dialog>input,.choice-dialog>p,.choice-dialog>.choice-pages,.choice-dialog>button{flex-shrink:0}.choice-dialog .choice-pages{margin:12px 0}
.search-choice .choice-options{position:relative;max-height:300px}.choice-selection>span{flex:1 1 150px}.choice-selection .choice-clear{flex-shrink:0}

/* Explicit return link aligns with the photo and remains a comfortable touch target. */
.photo-back { display: inline-flex; align-items: center; gap: .6rem; min-height: 48px; padding: .65rem 1rem; margin: 0 0 1.15rem; font-size: 1.05rem; border: 1px solid var(--green, #194c41); }
.photo-back:focus-visible { outline: 3px solid #a97c39; outline-offset: 4px; }
.explore-card { scroll-margin-top: 1.5rem; }
/* Archive front page and ordinary archive navigation. */
.nav-menu { position: relative; }
.nav-menu summary { cursor: pointer; padding: .65rem .5rem; min-height: 46px; white-space: nowrap; }
.nav-menu-items { position: absolute; right: 0; top: 100%; z-index: 50; min-width: 230px; padding: .6rem; border: 1px solid var(--line); background: var(--white); box-shadow: 0 8px 20px #173f3615; }
.site-header .nav-menu-items a { display: block; padding: .7rem .8rem; font-size: 17px; text-decoration: none; }
.nav-menu-items a:hover { background: #e7ece3; }
.nav-menu-items form { padding: .4rem; }
.nav-menu-items button { width: 100%; }
.archive-front main { max-width: 1536px; padding-top: 28px; }
.front-hero { display: grid; grid-template-columns: minmax(0, 1fr) minmax(0, 2fr); gap: 42px; align-items: center; padding-bottom: 28px; }
.front-intro .eyebrow { font-size: 14px; margin-bottom: 12px; }
.front-intro h1 { font-size: clamp(3rem, 4.5vw, 4.6rem); line-height: 1.04; letter-spacing: -.035em; margin: 0 0 20px; }
.front-subtitle { font: 1.7rem/1.35 Georgia, serif; margin-bottom: 26px; }
.front-search { display: flex; margin: 0 0 26px; }
.front-search input { min-width: 0; flex: 1; border-radius: 3px 0 0 3px; margin: 0; font-size: 17px; }
.front-search button { border-radius: 0 3px 3px 0; padding: .75rem 1.2rem; }
.front-intro { container-type:inline-size; }
.front-shortcuts { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:4px 16px; margin:0; justify-items:start; }
.front-shortcuts a { display:inline-flex; align-items:center; min-height:44px; padding:6px 0; font-size:18px; white-space:nowrap; text-decoration:underline; text-decoration-thickness:1px; text-decoration-color:#91a79e; text-underline-offset:4px; }
.front-shortcuts a:hover,.front-shortcuts a:focus-visible { text-decoration-color:currentColor; }
.front-shortcuts a:focus-visible { outline:3px solid var(--ink); outline-offset:3px; border-radius:2px; }
@container(min-width:26rem) { .front-shortcuts { grid-template-columns:repeat(4,max-content); justify-content:space-between; } }
.front-settings { display: block; margin-top: 14px; font-size: 16px; color: var(--muted); }
.front-feature { margin: 0; min-width: 0; }
.front-feature img { display: block; width: 100%; max-height: 540px; object-fit: contain; background: #ebe9e2; }
.front-feature figcaption { font-size: 16px; }
.front-placeholder { min-height: 360px; padding: 48px; display: flex; flex-direction: column; justify-content: center; background: #e8e8dd; border: 1px solid var(--line); }
.front-placeholder > p:not(.eyebrow) { font: 2.8rem/1.2 Georgia, serif; }
.front-help { border-top: 1px solid var(--line); padding-top: 24px; }
.front-section-heading { display: flex; align-items: baseline; justify-content: space-between; gap: 24px; margin-bottom: 18px; }
.front-section-heading h2 { font-size: clamp(1.8rem, 2.7vw, 2.6rem); margin: 0; }
.front-section-heading > a { flex-shrink: 0; padding: .6rem 0; }
.front-help-grid { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 24px; }
.front-help-card { border: 1px solid var(--line); background: var(--white); }
.front-help-card a { display: block; text-decoration: none; height: 100%; }
.front-help-card img { display: block; width: 100%; height: 250px; object-fit: contain; background: #ebe9e2; }
.front-card-copy { padding: 16px 18px; }
.front-card-copy h3 { font: 1.5rem/1.25 Georgia, serif; margin: 0 0 8px; }
.help-dating { color: var(--muted); font-size: 16px; margin-bottom: 12px; }
.help-labels { display: flex; flex-wrap: wrap; gap: 8px; margin: 10px 0 16px; }
.help-labels span { font-size: 16px; background: var(--gold); padding: .3rem .65rem; border-radius: 2px; }
.help-question { margin: 12px 0 0; }
.front-help-empty { grid-column: 1/-1; padding: 24px 0; color: var(--muted); }
.photo-help-form { margin: 24px 0; border: 1px solid var(--line); padding: 24px; }
.photo-help-form legend { font: 1.6rem/1.3 Georgia, serif; padding: 0 8px; }
.photo-help-form .metadata-field { margin-top: 24px; }
.front-settings-form { max-width: 760px; }
.photo-help-request { border-bottom: 1px solid var(--line); margin-bottom: 24px; padding-bottom: 16px; }
.identification-note { color: var(--muted); }
@media(max-width: 1000px) { .front-hero { grid-template-columns: minmax(0, 1fr) minmax(0, 1.3fr); gap: 28px; } .front-intro h1 { font-size: 3.2rem; } .front-help-card img { height: 200px; } }
@media(max-width: 700px) { .front-hero { grid-template-columns: 1fr; gap: 24px; } .front-intro h1 { font-size: clamp(2.8rem, 10vw, 3.6rem); } .front-help-grid { grid-template-columns: 1fr; } .front-section-heading { align-items: flex-start; flex-wrap: wrap; gap: 6px; } .front-feature img { max-height: 440px; } .front-help-card img { height: auto; max-height: 360px; } .front-placeholder { min-height: 240px; padding: 28px; } .site-header nav { gap: 8px; flex-wrap: wrap; } .nav-menu-items { left: 0; right: auto; } .user-menu .nav-menu-items { right: 0; left: auto; } .photo-help-form { padding: 16px; } }
.front-feature img { max-height: 420px; }
@media(max-width:700px) { .front-feature img { max-height: 440px; } }
/* Shared header rhythm, including native disclosure menus. */
.site-header .header-inner { align-items: center; flex-wrap: wrap; }
.site-header .brand { line-height: 1; flex-shrink: 0; }
.site-header .brand-logo { display: block; width: clamp(10.5rem, 19vw, 15rem); height: auto; }
.search-update { color: var(--muted); display: flex; align-items: center; gap: .75rem; flex-wrap: wrap; }
.live-search-error { margin: .4rem 0; }
.photo-navigation { display:flex; align-items:center; gap:16px; flex-wrap:wrap; margin:12px 0; }
.photo-navigation .photo-back { margin:0; }
.photo-sequence { display:flex; align-items:center; justify-content:center; flex-wrap:wrap; gap:10px; margin:0; font-size:16px; }
.photo-position { white-space:nowrap; }
.large-heading { order:-2; display:flex; align-items:center; flex-wrap:wrap; gap:12px; padding:4px 48px 10px 0; }
.large-heading>div { flex:1; min-width:150px; }
.large-heading strong { display:block; font:24px/1.2 Georgia,serif; overflow-wrap:anywhere; }
.large-heading span { color:var(--muted); font-size:16px; }
.viewer-dialog.with-mark-panel { display:grid; grid-template-columns:minmax(0,1fr) minmax(300px,370px); gap:20px; }
.viewer-dialog .photo-viewer { min-height:0; }
.photo-detail .viewer-dialog .image-viewport { max-height:none; }
.viewer-dialog .viewer-license { margin:0; font-size:15px; max-height:25vh; }
.viewer-dialog .viewer-license summary { padding:4px; }
.viewer-dialog .find-in-list { display:none; }
.large-mark-panel { overflow:auto; min-width:0; padding:6px 8px 12px; border-left:1px solid var(--line); }
.large-mark-panel .panel { padding:8px; border:0; background:transparent; }
.large-panel-heading { display:flex; align-items:center; gap:8px; justify-content:space-between; padding:0 8px; }
.large-panel-heading h2 { font-size:24px; margin:0; }
.large-mark-panel input,.large-mark-panel select,.large-mark-panel textarea { max-width:100%; }
.large-mark-panel .registry-picker { margin-bottom:12px; }
.large-mark-panel .metadata-field { margin-bottom:14px; }
.large-mark-panel .tag-kind #id_kind { display:flex; gap:8px; flex-wrap:wrap; }
.large-selected-actions { display:flex; align-items:center; flex-wrap:wrap; gap:12px; }
.large-selected-actions .edit-mark { display:inline-block; }
.large-selected-actions .mark-notes { width:100%; }
.leave-edit-dialog button { margin:4px; }
@media(max-width:760px) {
 .photo-navigation { gap:10px; }
 .photo-sequence { gap:8px; }
 .photo-sequence .button,.photo-sequence button { padding:9px 12px; }
 .large-heading { gap:6px; padding-right:40px; }
 .large-heading strong { font-size:20px; }
 .large-heading .photo-sequence { width:100%; justify-content:flex-start; }
 .viewer-dialog.with-mark-panel { grid-template-columns:minmax(0,1fr); grid-template-rows:minmax(240px,55%) minmax(0,1fr); gap:8px; }
 .large-mark-panel { border-left:0; border-top:1px solid var(--line); }
 .viewer-dialog.with-mark-panel .large-heading>div,.viewer-dialog.with-mark-panel .large-details,.viewer-dialog.with-mark-panel .viewer-license { display:none; }
 .viewer-dialog.with-mark-panel .viewer-tools { max-height:100px; overflow:auto; }
 .viewer-dialog.with-mark-panel .viewer-selection { max-height:70px; overflow:auto; }
}
.site-header .identity { line-height: 1.35; min-width:0; overflow-wrap:anywhere; }
.site-header .archive-home-link{color:inherit;text-decoration:underline;text-decoration-color:#a87532;text-underline-offset:5px;text-decoration-thickness:1px}.site-header .archive-home-link:hover{text-decoration-thickness:2px}.site-header .archive-home-link:focus-visible{outline:3px solid #a87532;outline-offset:4px}.site-header .archive-home-link span{font-size:.82em;white-space:nowrap}
.site-header nav { display: flex; align-items: center; gap: .5rem; flex-wrap: wrap; }
.site-header nav > a, .site-header .nav-menu > summary { display: inline-flex; align-items: center; gap: .5em; min-height: 48px; padding: .65rem .75rem; margin: 0; line-height: 1.4; font-size: 1rem; }
.site-header .nav-menu { margin: 0; }
.site-header .nav-menu > summary { list-style: none; }
.site-header .nav-menu > summary::-webkit-details-marker { display: none; }
.site-header .nav-menu > summary::before { content: '▾'; line-height: 1; }
.site-header .nav-menu[open] > summary::before { content: '▴'; }
.site-header .nav-menu-items { max-width: calc(100vw - 32px); }
.front-hero { grid-template-columns: minmax(24rem, 1.05fr) minmax(0, 2fr); }
.front-intro h1 { font-size: clamp(2.6rem, 4.05vw, 4rem); overflow-wrap: break-word; }
.front-crop { display: block; position: relative; overflow: hidden; width: 100%; aspect-ratio: 2.25; background: #e8e8dd; --crop-x: 50%; --crop-y: 50%; --crop-zoom: 1; }
.front-feature .front-crop img, .front-crop img { position: absolute; width: 100%; height: 100%; max-height: none; object-fit: cover; object-position: var(--crop-x) var(--crop-y); transform: scale(var(--crop-zoom)); transform-origin: var(--crop-x) var(--crop-y); }
.front-customize { display: grid; grid-template-columns: minmax(260px, 1fr) minmax(0, 1.6fr); gap: 32px; align-items: start; }
.crop-controls input[type=range] { padding: 0; min-height: 44px; width: 100%; }
.crop-arrows, .crop-actions { display: flex; flex-wrap: wrap; gap: 8px; margin: 16px 0; }
.crop-arrows button { min-width: 48px; min-height: 48px; }
.crop-preview { touch-action: none; cursor: grab; }
.crop-preview:active { cursor: grabbing; }
.crop-mobile { aspect-ratio: 1.5; max-width: 390px; }
.crop-previews h3 { font: 1.3rem/1.4 Georgia, serif; }
@media(max-width:1100px) { .site-header .identity { flex: 1; } .site-header nav { margin-left: auto; } .front-hero { grid-template-columns: minmax(21rem, 1fr) minmax(0, 1.4fr); gap: 24px; } .front-intro h1 { font-size: 2.8rem; } }
@media(max-width:760px) { .front-hero, .front-customize { grid-template-columns: minmax(0, 1fr); } .front-intro h1 { font-size: clamp(2.5rem, 9vw, 3.5rem); } .front-feature .front-crop { aspect-ratio: 1.5; } .site-header nav { width: 100%; margin: 0; justify-content: flex-start; gap: .25rem; } .site-header .nav-menu-items { position: static; box-shadow: none; min-width: 0; width: 100%; } .site-header .nav-menu[open] { flex: 1 1 100%; } }
@media(max-width:760px) { .front-intro h1 { font-size: clamp(2rem, 9vw, 3.5rem); } }
/* Metadata editing: one quiet column, with optional information folded away. */
.photo-edit-page main { max-width: 1040px; }
.photo-edit-page h1 { font-size: clamp(2.2rem, 4vw, 3.5rem); margin-block: 1.2rem; }
.edit-preview { display: flex; align-items: center; gap: 1.2rem; margin-bottom: 1.5rem; }
.edit-preview img { width: 150px; height: 105px; object-fit: contain; background: #ebeae3; }
.edit-preview h2 { font-size: 1.5rem; margin: 0 0 .5rem; overflow-wrap: anywhere; }
.photo-edit-form { max-width: none; }
.photo-edit-form .edit-section { border: 1px solid #d4d9cc; border-radius: 4px; padding: 1.25rem 1.5rem; margin: 0 0 1rem; background: #fffefa; }
.edit-section > h2 { margin: 0 0 1rem; font-size: 1.75rem; }
.edit-section > summary { font-family: Georgia, serif; font-size: 1.6rem; min-height: 44px; cursor: pointer; }
.edit-section > summary .section-status { display: block; font: 1rem/1.5 system-ui, sans-serif; color: #4e635d; margin: .25rem 0 0 1.4rem; overflow-wrap: anywhere; }
.edit-section[open] > summary { margin-bottom: 1.1rem; }
.photo-edit-form .metadata-field { margin: 0 0 1.1rem; }
.photo-edit-form .metadata-field:last-child { margin-bottom: 0; }
.photo-edit-form label { margin-top: 0; }
.photo-edit-form textarea { min-height: 0; }
.photo-edit-form .helptext { font-size: 1rem; margin-top: .35rem; }
.photo-edit-form .date-inputs { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 0 1.2rem; }
.photo-edit-form .inline-create { border: 0; padding: 0; margin: .4rem 0 .6rem; }
.photo-edit-form .inline-create > summary { min-height: 44px; display: list-item; align-content: center; font-size: 1rem; }
.photo-edit-form .inline-create[open] { border-left: 2px solid #d4d9cc; padding-left: 1rem; }
.photo-edit-form .picker-status:empty, .photo-edit-form .registry-results:empty { display: none; }
.photo-edit-form .selected-entry { margin-bottom: .5rem; }
.photo-edit-form .uncertain-place { margin: -.25rem 0 1rem; }
.uncertain-place > summary { min-height: 44px; align-content: center; }
.uncertain-place[open] > summary { margin-bottom: .6rem; }
.photo-edit-form .photo-help-form { border: 0; padding: 0; margin: 0; }
.photo-edit-form .photo-help-form legend { display: none; }
.photo-edit-form .check-filter { min-height: 44px; }
.edit-actions { display: flex; flex-wrap: wrap; gap: .75rem; padding: .5rem 0 1rem; }
.leave-edit-dialog { max-width: min(560px, 94vw); color: var(--ink); background: var(--paper); border: 1px solid var(--line); padding: 1.5rem; border-radius: 5px; }
.leave-edit-dialog::backdrop { background: #173f3666; }
@media (max-width: 640px) {
  .photo-edit-form .edit-section { padding: 1rem; }
  .photo-edit-form .date-inputs { grid-template-columns: minmax(0, 1fr); }
  .edit-preview { align-items: start; gap: .8rem; }
  .edit-preview img { width: 90px; height: 80px; }
  .edit-preview div { min-width: 0; }
  .edit-preview h2 { font-size: 1.25rem; }
  .edit-actions > * { flex: 1 1 auto; text-align: center; }
}
.register-intro { max-width: 850px; margin-bottom: 2rem; overflow-wrap: anywhere; }
.register-entry-page h1 { font-size: clamp(2rem, 4vw, 3rem); }
.register-entry-page .register-nav { margin-bottom: 1rem; }
.register-entry-page .eyebrow { margin-bottom: .25rem; }
.register-gallery { margin-block: 2rem; }
.register-gallery .card-image img { object-fit: contain; }
.relation-labels { display: flex; flex-wrap: wrap; gap: .4rem; list-style: none; padding: 0; margin: .6rem 0 0; }
.relation-labels li { background: #e9ede4; color: var(--ink); padding: .25rem .55rem; border-radius: 3px; font-size: 1rem; }
.register-photo-links { display: grid; gap: .3rem; margin: .5rem 0; }
.register-photo-links a { min-height: 44px; align-content: center; font-size: 1rem; overflow-wrap: anywhere; }

/* Compact rows keep selection separate from register navigation. */
.photo-detail .detail-tag-list li { gap:10px; padding:3px 0; border-bottom:1px solid var(--line); }
.photo-detail .detail-tag-list .person-number { width:44px; height:44px; min-height:44px; flex-basis:44px; margin:0; padding:0; font:22px/1 Georgia,serif; border:0; }
.photo-detail .mark-summary { font-size:1.0625rem; line-height:1.6; padding:8px 0; overflow-wrap:anywhere; }
.photo-detail .mark-person-link { font-weight:600; text-decoration-thickness:1px; text-underline-offset:3px; padding-block:8px; }
.photo-detail .mark-summary .confidence-label { font-size:1rem; color:var(--muted); margin-left:6px; }
.photo-detail .detail-tag-list li.is-active { box-shadow:none; }
.photo-detail .detail-tag-list .edit-mark { min-height:44px; padding:8px 0; font-size:16px; }
.photo-detail .detail-tag-list .edit-mark[hidden] { display:none; }
.photo-detail .mark-notes { margin:0; }
.photo-detail .mark-notes summary { min-height:32px; padding:2px 0; }
.photo-detail .mark-select:focus-visible { outline:3px solid #a57f35; outline-offset:3px; }

/* One primary selection control, with a separate compact gallery action. */
.photo-detail .detail-tag-list { overflow:visible; }
.photo-detail .mark-main { flex:1; min-width:0; }
.photo-detail .mark-select { display:inline; padding:0; border:0; background:transparent; color:var(--ink); text-align:left; font-family:inherit; font-size:1.0625rem; line-height:1.6; font-weight:600; white-space:normal; overflow-wrap:anywhere; }
.photo-detail .mark-select .person-number { display:inline-flex; vertical-align:middle; margin-right:7px; }
.photo-detail .mark-select:hover .mark-name { color:#426f60; }
.photo-detail .mark-main .confidence-label { font-size:1rem; color:var(--muted); }
.photo-detail .mark-gallery { flex:none; align-self:flex-start; display:inline-flex; align-items:center; min-height:44px; padding:6px; background:transparent; color:var(--ink); border:0; font:inherit; font-size:1rem; white-space:nowrap; }
.photo-detail .mark-gallery:hover { background:#e6ebe2; }
.photo-detail .mark-main .edit-mark,.photo-detail .mark-main .mark-notes { margin-left:51px; }
.candidate-popover { position:fixed; inset:auto; margin:0; width:max-content; max-width:calc(100vw - 24px); max-height:calc(100dvh - 24px); overflow:auto; background:var(--paper,#f7f5ef); color:var(--ink); border:1px solid var(--line); border-radius:4px; padding:6px; box-shadow:0 5px 20px #0003; }
.candidate-popover a { display:block; padding:10px 12px; min-height:44px; max-width:22rem; overflow-wrap:anywhere; font-size:1rem; }
.candidate-popover a:hover { background:#e6ebe2; }
/* Simple permission choices and private requests. */
.consent-options { min-width: 0; margin: 1.25rem 0; padding: 1rem; border: 1px solid var(--line, #cbd0c8); }
.consent-options legend { font: inherit; font-weight: 600; padding: 0 .4rem; }
.consent-options label { display: flex; align-items: flex-start; gap: .7rem; padding: .7rem 0; cursor: pointer; line-height: 1.55; }
.consent-options input[type=radio] { flex: 0 0 1.35rem; width: 1.35rem; height: 1.35rem; margin: .2rem 0 0; }
.request-form { max-width: 48rem; }
.request-form .panel { margin: 1.5rem 0; }
.request-form p, .request-list li { overflow-wrap: anywhere; }
.submission-trap { display: none; }
.request-filter { display: flex; align-items: center; gap: 1rem; flex-wrap: wrap; margin: 1.5rem 0; }
.request-filter select { width: auto; }
.request-list { list-style: none; padding: 0; }
.request-list li { border-bottom: 1px solid var(--line, #cbd0c8); padding: 1rem 0; }
.request-list span { display: block; margin-top: .4rem; }
.removal-link { margin: .4rem 0 1rem; }

.contribution-preview { display: block; width: 100%; max-width: 48rem; height: auto; object-fit: contain; }
.contribution-review { display: grid; grid-template-columns: minmax(0, 1.1fr) minmax(0, 1fr); gap: 2rem; }
.contribution-review > section { min-width: 0; overflow-wrap: anywhere; }
@media (max-width: 850px) { .contribution-review { grid-template-columns: minmax(0, 1fr); } }
.version-comparison {display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:2rem;align-items:start;margin-block:1.5rem}
.version-comparison figure {margin:0;min-width:0}
.version-comparison figure>img {display:block;width:100%;height:auto}
.version-comparison>section,.version-comparison>form {min-width:0}
.version-comparison .helptext {display:block}
.version-field {margin-block:1rem}
.version-tags,.version-history {padding-left:1.5rem}
.version-tags li,.version-history li {padding-block:.65rem;overflow-wrap:anywhere}
.version-tags a {display:inline-block;padding:.4rem}
.photo-heading-meta {gap:1.25rem;flex-wrap:wrap}
@media(max-width:760px) {.version-comparison {grid-template-columns:minmax(0,1fr)}}
.photo-comments {grid-column:1;min-width:0;border-top:1px solid var(--line, #d6d8d0);padding-top:1.5rem}
.photo-comment {border-top:1px solid #d6d8d0;padding-block:1rem;overflow-wrap:anywhere}
.inline-comment-form {margin:1.2rem 0 1.5rem}
.inline-comment-form textarea {margin:.4rem 0 .7rem;min-height:7rem}
.photo-comment {padding:.85rem 0}
.photo-comment p {margin:.35rem 0;overflow-wrap:anywhere}
.comment-byline {display:flex;flex-wrap:wrap;gap:.35rem .75rem;align-items:baseline}
.comment-byline time {color:var(--muted);font-size:1rem}
.comment-action {margin:0}
.photo-comment .text-button {background:transparent;color:var(--ink);border:0;text-decoration:underline;padding:.5rem 0;min-height:44px;font:inherit}
.comment-report {margin:.35rem 0 0}
.comment-report summary {min-height:44px;align-content:center;cursor:pointer}
.comment-report form {padding:.5rem 0}
.removed-comments {margin-top:1rem}
.photo-composition:not(:has(.photo-story)) .photo-comments {grid-row:2}
.photo-main-content {min-width:0;display:flex;flex-direction:column;gap:24px}
.photo-information {grid-row:1}
@media(max-width:850px){.photo-main-content{display:contents}.photo-information{order:1}.photo-story{order:2}.photo-comments{order:3}}
.photo-rights .removal-link {display:inline-block;padding:8px 0;line-height:1.5;min-height:44px}
.photo-information>.photo-registration{padding:16px 0}.photo-detail .photo-registration h2{font-family:inherit;font-size:18px;font-weight:500;line-height:1.4;margin:0 0 8px}.photo-registration p{overflow-wrap:anywhere}.photo-registration p:last-child{margin-bottom:0}
@media(max-width:850px){.photo-registration{order:4}.photo-technical{order:5}}

/* Compact toolbar: one flow, with wrapping only when space runs out. */
.photo-detail .viewer-tools {display:flex;align-items:center;flex-wrap:wrap;gap:6px;padding:10px}
.photo-detail .viewer-tools button,.photo-detail .viewer-tools .button {font-size:16px;line-height:1.3;min-height:44px;padding:8px;display:inline-flex;align-items:center;justify-content:center}
.photo-detail .viewer-tools .zoom-in,.photo-detail .viewer-tools .zoom-out {min-width:44px}
.photo-detail .viewer-tools output {min-width:44px;line-height:1.3}
.photo-detail .viewer-tools .show-tags {padding:8px 2px}
.photo-detail .viewer-tools .show-tags::before {flex-shrink:0}
.photo-detail .viewer-tools .mark-entry {margin-left:0;width:auto;max-width:100%;text-align:center}

.upload-preview { display:block; max-width:100%; width:auto; max-height:220px; margin:12px 0; object-fit:contain; }
.upload-preview[hidden] { display:none; }
.photo-detail .mark-main .edit-mark { display:inline-block; margin-left:12px; }

/* Shared, compact register overviews. */
.register-search { display:flex; flex-wrap:wrap; align-items:end; gap:16px; margin:24px 0 12px; }
.register-search > div { min-width:0; }
.register-search-text { flex:1 1 22rem; }
.register-search label { display:block; margin-bottom:6px; }
.register-search input,.register-search select { margin:0; min-height:48px; }
.register-search button { min-height:48px; }
.register-results-summary { display:flex; flex-wrap:wrap; align-items:center; gap:8px 24px; }
.register-results-summary a { padding:10px 0; }
.register-column-headings,.register-rows li { display:grid; grid-template-columns:minmax(0,1fr) minmax(0,1.4fr) 8rem; gap:20px; align-items:center; }
.register-column-headings { border-bottom:1px solid var(--line); padding:12px 0; font-weight:600; }
.register-column-headings > :last-child { text-align:right; }
.register-rows { list-style:none; padding:0; margin:0; }
.register-rows li { padding:8px 0; border-bottom:1px solid var(--line); scroll-margin-top:20px; }
.register-name { font-size:1.125rem; font-weight:600; padding:10px 0; line-height:1.5; overflow-wrap:anywhere; }
.register-summary { font-size:1rem; line-height:1.5; overflow-wrap:anywhere; }
.register-summary span { display:block; }
.register-aliases { color:var(--muted); }
.register-alias-match { font-weight:600; }
.register-photo-count { justify-self:end; min-height:44px; display:inline-flex; align-items:center; gap:8px; white-space:nowrap; }
.register-pages { display:flex; flex-wrap:wrap; justify-content:center; align-items:center; gap:24px; margin:24px 0; }
.register-pages a { display:inline-flex; align-items:center; min-height:44px; padding:8px 12px; border:1px solid var(--line); border-radius:3px; }
.register-back { margin-bottom:16px; }
@media(max-width:650px) {
  .register-column-headings { display:none; }
  .register-rows li { grid-template-columns:minmax(0,1fr); gap:0; padding:10px 0; }
  .register-summary { padding:0 0 4px; }
  .register-photo-count { justify-self:start; }
  .register-search > div { flex-basis:100%; }
}

/* Rights use the existing forms, colours and disclosure controls. */
.license-fields {min-width:0}
.person-years{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}.person-years .year-approx{display:flex;gap:9px;align-items:center;font-weight:400;min-height:44px}.person-years input[type=checkbox]{width:20px;height:20px;margin:0}.register-edit-dialog{width:min(700px,calc(100% - 24px));max-height:90dvh;overflow:auto;padding:24px;border:1px solid var(--line);border-radius:5px;background:var(--paper);color:var(--ink)}.register-edit-dialog::backdrop{background:#10281dbb}.register-edit-dialog .register-form{padding:0}.register-edit-dialog input[type=checkbox]{width:22px;height:22px}.candidate-summary{overflow-wrap:anywhere;padding:12px;background:#edf1e9}.candidate-lookup summary{min-height:44px;align-content:center}.registry-picker[data-kind=person] .selected-entry,.registry-picker[data-kind=object] .selected-entry{flex-wrap:wrap}.selected-entry a{font-size:.85rem;min-height:44px;align-content:center}.entry-info-content>a{display:inline-block;margin:4px 12px 4px 0;min-height:36px}.mark-information .remove-mark-quiet{font-size:.85rem;color:var(--muted)}@media(max-width:480px){.person-years{grid-template-columns:1fr}.register-edit-dialog{padding:16px}}
.license-basis {border:0;padding:0;margin:0 0 24px;min-width:0}
.license-basis legend {font-weight:600;margin-bottom:10px}
.license-basis label {display:flex;align-items:flex-start;gap:12px;min-height:44px;padding:9px 0;margin:0;font-weight:400;line-height:1.5;overflow-wrap:anywhere}
.license-basis input[type=radio] {flex:0 0 22px;width:22px;height:22px;padding:0;margin:2px 0 0;accent-color:var(--ink)}
.license-fields [hidden] {display:none}
.license-explanation {background:#e9eee5;padding:16px 18px;line-height:1.55;margin:12px 0 18px;white-space:pre-line}
.license-confirm {display:flex;align-items:flex-start;gap:12px;min-height:44px;padding:10px 0;font-weight:400}
.license-confirm input {flex:0 0 auto;width:22px;height:22px;margin:3px 0}
.license-extra {border-top:1px solid var(--line);padding:12px 0;margin-top:16px}
.license-extra summary {min-height:44px;align-content:center;cursor:pointer;font-size:1.125rem}
.license-extra summary .helptext {display:inline;font-size:1rem}
.visibility-row {border-top:1px solid var(--line);padding-top:20px;margin-top:20px}
.visibility-row .visibility-actions {margin:0;border:0;padding:0}
.visibility-actions summary {min-height:44px;align-content:center;cursor:pointer;text-decoration:underline}
.photo-rights p,.credit-line {overflow-wrap:anywhere}
.credit-details summary {min-height:44px;align-content:center;cursor:pointer}
.rights-audience {border-top:1px solid var(--line);padding-top:16px;margin-top:20px}
.viewer-license {display:none}
.viewer-dialog .viewer-license {display:block;max-height:30vh;overflow:auto;padding:0 8px;flex-shrink:0}
.viewer-license summary {min-height:36px;align-content:center;cursor:pointer}
.license-fields select {max-width:100%;font-size:1rem;white-space:normal}
@media(max-width:650px){.license-extra summary .helptext{display:block}.license-explanation{padding:12px}.license-fields select{width:100%}}

/* Keep the shared viewer first, regardless of when its panel was mounted. */
.viewer-dialog.with-mark-panel>.photo-viewer {grid-column:1;grid-row:1}
.viewer-dialog.with-mark-panel>.large-mark-panel {grid-column:2;grid-row:1}
@media(max-width:760px){.viewer-dialog.with-mark-panel>.large-mark-panel{grid-column:1;grid-row:2}}

.viewer-dialog [data-editing=true] .viewer-selection {display:none}
@media(max-width:760px){
 .viewer-dialog.with-mark-panel .viewer-tools .mark-entry,
 .viewer-dialog.with-mark-panel .viewer-tools .viewer-close {display:none}
 .viewer-dialog.with-mark-panel .placement-tools {display:flex;align-items:center;flex-wrap:wrap;gap:8px;margin:4px 0;padding:0 4px}
 .viewer-dialog.with-mark-panel .fine-tune {margin:0}
 .viewer-dialog.with-mark-panel .fine-tune summary {padding:8px 0}
}

.viewer-dialog .viewer-selection {max-height:25vh;overflow:auto;flex-shrink:0}

.internal-editor-note{margin-top:2rem;padding-top:1rem;border-top:1px solid var(--line);max-width:70ch;overflow-wrap:anywhere}.internal-editor-note h2{font-family:inherit;font-size:1rem;font-weight:600;margin-bottom:.5rem}

/* Plain privacy reading page using the existing type and colour palette. */
.privacy-page main { max-width: 52rem; }
.privacy-page .privacy-parts { margin:0 0 1.5rem; justify-content:flex-start; flex-wrap:wrap; gap:1rem; }
.privacy-page article + article { margin-top:3rem; padding-top:1.5rem; border-top:1px solid var(--line); }
@media(max-width:480px) { .privacy-page .site-header .identity { flex:1 0 100%; border-left:0; padding-left:0; } }
.privacy-page h2 { margin-top: 2.2rem; line-height: 1.25; }
.privacy-page li { margin-bottom: .65rem; }
.privacy-review { color: var(--muted); font-size: .94rem; }
/* Unified user administration: archive roles remain separate from global status. */
.user-admin .users-heading{display:flex;justify-content:space-between;align-items:center;gap:28px;margin-bottom:22px}.users-heading h1{font-size:clamp(2.4rem,4vw,3.7rem);margin:0 0 10px}.users-heading p{margin:0;color:var(--muted);font-size:1.2rem}.archive-picker{min-width:270px;max-width:350px}.archive-picker button{margin-top:8px;padding:6px 12px}.user-admin .add-user{padding:22px;margin-bottom:24px}.add-user h2{margin:0 0 12px;font-size:1.7rem}.add-user-form{display:grid;grid-template-columns:minmax(0,1.2fr) minmax(0,1.8fr) minmax(150px,1fr) minmax(150px,.8fr);gap:12px 24px;align-items:end}.add-user-form>button{margin:0;min-height:48px}.user-admin input,.user-admin select{min-height:44px;max-width:100%;font-size:1rem}.user-admin input[type=checkbox]{min-height:0;width:18px;height:18px;vertical-align:middle}.editor-confirm,.add-user-form .form-help{grid-column:1/-1}.user-admin .form-help{font-size:.85rem;color:var(--muted);margin:8px 0 20px}.add-user-form .form-help{margin:0}.editor-confirm label,.row-editor-confirm{font-weight:400;font-size:.85rem}.user-filters{display:flex;align-items:end;gap:16px;margin-bottom:18px}.user-filters>div{flex:1;min-width:0}.user-filters>div:first-child{flex:1.5}.user-filters label{font-size:.9rem}.user-filters>p{margin:0 0 8px auto;white-space:nowrap;color:var(--muted)}.user-filters>button{margin:0}.user-table{background:var(--white);border:1px solid var(--line);border-radius:6px}.user-table-head,.user-row{display:grid;grid-template-columns:minmax(0,2fr) minmax(0,1.9fr) minmax(110px,.85fr) minmax(120px,1fr) 44px;gap:18px;align-items:center;padding:15px 22px}.user-table-head{font-size:.9rem;font-weight:600}.user-row{border-top:1px solid var(--line);font-size:.95rem}.user-row>div{min-width:0}.user-identity{display:flex;align-items:center;gap:14px}.user-identity>div{min-width:0;overflow-wrap:anywhere}.user-avatar{display:flex;flex:0 0 42px;height:42px;align-items:center;justify-content:center;border-radius:50%;background:#dbe7e0}.user-email{display:block;color:var(--muted);font-size:.85rem}.user-row .badge{font-size:.65rem;padding:2px 7px;border-radius:20px}.role-form{display:flex;gap:9px;align-items:center;flex-wrap:wrap;margin:0}.role-form select{width:155px;max-width:100%;margin:0;padding:8px}.role-form button{padding:8px 14px;font-size:.9rem}.role-changed{font-size:.8rem;color:#78531c}.row-editor-confirm{flex-basis:100%}.user-admin [hidden]{display:none!important}.status-dot{display:inline-block;background:#168343;border-radius:50%;width:10px;height:10px;margin-right:10px}.status-dot.inactive{background:#858c88}.last-login{font-size:.85rem;color:var(--muted)}.mobile-label{display:none}.user-actions{position:relative}.user-actions>summary{list-style:none;font-weight:bold;font-size:1.4rem;min-width:44px;min-height:44px;text-align:center;border-radius:4px;cursor:pointer}.user-actions>summary::-webkit-details-marker{display:none}.user-actions[open]>summary{background:#e4e9df}.user-action-menu{position:absolute;right:0;top:44px;width:285px;z-index:5;background:var(--white);padding:16px;border:1px solid var(--line);border-radius:5px;box-shadow:0 6px 24px #173f3622}.user-action-menu form{margin:0 0 12px}.user-action-menu button{font-size:.9rem;text-align:left;width:100%}.user-action-menu small,.user-row small{display:block;font-size:.78rem;color:var(--muted)}.user-action-menu label{font-size:.9rem;font-weight:400}.user-action-menu details{margin-bottom:16px}.empty-users{padding:22px;margin:0}.user-history{margin-top:20px}.user-admin .pagination{justify-content:center;margin:24px 0}.user-admin :focus-visible{outline:3px solid #a46a24;outline-offset:3px}
@media(max-width:900px){.user-admin .users-heading{align-items:stretch;flex-direction:column;gap:18px}.archive-picker{min-width:0;max-width:100%}.add-user-form{grid-template-columns:1fr 1fr}.add-user-form>div:first-of-type{grid-column:1/-1}.user-filters{flex-wrap:wrap}.user-filters>div:first-child{flex:1 0 100%}.user-table-head{display:none}.user-row{grid-template-columns:minmax(0,1fr) 44px;gap:14px;padding:18px}.user-identity{grid-column:1}.user-row>div:not(.user-identity){grid-column:1}.user-actions{grid-column:2;grid-row:1;align-self:start}.mobile-label{display:inline}.role-form select{width:min(240px,100%)}.user-action-menu{width:min(285px,calc(100vw - 64px))}.user-row:first-of-type{border-top:0}}
@media(max-width:480px){.add-user-form{grid-template-columns:1fr}.add-user-form>div,.add-user-form>button{grid-column:1}.user-filters>div{flex:1 0 100%}.user-filters>button{width:100%}.user-admin main{padding:24px 16px 48px}.user-row .badge{display:block;width:fit-content}.user-admin .panel{padding:18px}}

.register-actions{display:flex;flex-wrap:wrap;gap:10px}.delete-entry,.button.delete-entry{color:#a32e28;background:transparent;border:1px solid #bda7a4}.delete-entry:hover{color:#7e1612;background:#f8eeeb}.register-delete{max-width:760px}.register-delete li{margin-bottom:12px}.register-delete form{display:flex;flex-wrap:wrap;gap:12px}

.upload-list .upload-link{display:flex;align-items:center;gap:1rem;min-width:0}.upload-link img{width:96px;height:72px;object-fit:contain;flex-shrink:0}.upload-link strong{overflow-wrap:anywhere}.upload-list li{gap:.5rem}.upload-list li>span{white-space:normal}@media(max-width:600px){.upload-list li{align-items:flex-start;flex-direction:column}.upload-link img{width:80px;height:60px}}
/* Simple marking: keep the photograph and the compact form in one ordinary page. */
.tagging-page .mark-instruction{font-size:1rem!important;margin:0 0 10px}
.tagging-page .photo-viewer{border:0;overflow:visible;display:flex;flex-direction:column}
.tagging-page .viewer-tools{order:-2;padding:0 0 10px;justify-content:flex-end;background:none}
.tagging-page .viewer-tools .viewer-expand{display:none}
.tagging-page .viewer-tools .show-tags{font-size:.8rem}
.tagging-page .image-viewport{order:0;border:1px solid var(--line);border-radius:3px;max-height:68vh}
.tagging-page .placement-tools{order:1;padding:0;margin:10px 0}
.tagging-page .placement-tools p{margin:0;font-size:.82rem;line-height:1.5}
.tagging-page .viewer-status{order:2;padding:8px 0;font-size:.95rem}
.tagging-page #tag-form{border:1px solid var(--line);border-radius:4px;padding:20px;background:#ffffff50;grid-column:2;grid-row:1 / span 2}
.tagging-page #tag-form h2{margin:0 0 18px;font-size:1.9rem}
.tagging-page .saved-tags{grid-column:1}
.mark-extras{border-top:1px solid var(--line);padding-top:12px;margin:14px 0}
.mark-extras summary,.propose-identity summary{cursor:pointer;padding:8px 0}
.mark-extras .metadata-field{margin-top:14px}
.mark-actions{display:flex;gap:10px;align-items:center;margin-top:18px}
.mark-actions>button:first-child{flex:1}
.simple-marking .tag-preview{border:2px solid #18473c;outline:1px solid white}
.simple-marking .tag-preview:focus-visible{outline:3px solid #b37f38;outline-offset:3px}
.resize-handle{position:absolute;width:18px;height:18px;border:2px solid #18473c;background:#fff;line-height:1;border-radius:2px}
.resize-handle.nw{top:-9px;left:-9px;cursor:nwse-resize}.resize-handle.ne{top:-9px;right:-9px;cursor:nesw-resize}
.resize-handle.sw{bottom:-9px;left:-9px;cursor:nesw-resize}.resize-handle.se{bottom:-9px;right:-9px;cursor:nwse-resize}
.mark-errors:empty{display:none}.mark-errors:focus{outline:3px solid #b37f38;outline-offset:3px}
@media(max-width:850px){.tagging-page #tag-form,.tagging-page .saved-tags{grid-column:auto;grid-row:auto}.tagging-page #tag-form{padding:16px}.tagging-page .tag-layout{gap:18px}.tagging-page .image-viewport{max-height:55vh}.tagging-page .viewer-tools{justify-content:flex-start}.mark-actions button{min-height:44px}.resize-handle{width:24px;height:24px}.resize-handle.nw,.resize-handle.ne{top:-12px}.resize-handle.sw,.resize-handle.se{bottom:-12px}.resize-handle.nw,.resize-handle.sw{left:-12px}.resize-handle.ne,.resize-handle.se{right:-12px}}
/* A compact, server-rendered register comparison. No hidden mobile columns. */
.merge-comparison { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:1.5rem; overflow-wrap:anywhere; }
.merge-comparison section { min-width:0; }
.merge-confirm { max-width:62rem; }
.merge-confirm fieldset { margin:1.2rem 0; padding:1rem; border:1px solid var(--line,#d3dcd8); border-radius:.3rem; }
.merge-confirm legend { font-weight:600; padding:0 .35rem; }
.merge-choices { display:grid; gap:.65rem; }
.merge-choices label { display:flex; align-items:baseline; gap:.5rem; }
.merge-choices input { width:auto; flex:none; }
.merge-matches li { margin:.7rem 0; }
@media (max-width:600px) { .merge-comparison { grid-template-columns:1fr; gap:.6rem; } .merge-confirm fieldset { padding:.7rem; } }

/* 11.10.2026: shared readable filter and registration controls. */
.archive-explore .explore-layout{display:block}.archive-explore .filter-panel{border:0;padding:0;background:none;margin-bottom:20px}.filter-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px 24px}.filter-grid .filter-field{margin:0}.filter-grid .year-fields{display:grid;grid-template-columns:1fr 1fr;gap:16px;align-items:end}.filter-grid label{display:block;margin-bottom:6px}.multi-toggle{width:100%;text-align:left;min-height:48px;display:flex;justify-content:space-between;font-weight:400}.multi-toggle::after{content:'⌄';margin-left:12px}.filter-panel .more-search{margin:18px 0 0;padding:8px 16px;background:#fff6;border:1px solid var(--line);border-radius:4px}.filter-panel .more-search .check-filter{display:inline-flex;margin-right:18px}.filter-panel .reset-filters{display:inline-block}.filter-dialog{color:var(--ink);background:var(--paper);border:1px solid var(--line);border-radius:6px;width:min(520px,calc(100vw - 24px));max-height:calc(100dvh - 24px);overflow:auto;padding:24px;box-shadow:0 12px 40px #1234}.filter-dialog::backdrop{background:#10282077}.filter-dialog-head{display:flex;align-items:center;justify-content:space-between;gap:12px}.filter-dialog-head h2{margin:0;font-size:28px}.filter-dialog input[type=search]{width:100%;min-height:48px;font-size:18px}.filter-dialog>button:last-child{position:sticky;bottom:0;width:100%;min-height:48px;box-shadow:0 4px 12px #fff}.filter-options{display:grid;gap:8px;margin:12px 0}.filter-option{width:100%;display:flex;justify-content:space-between;align-items:center;text-align:left;gap:12px;background:var(--white);color:var(--ink);border:1px solid #99aaa7;min-height:58px;padding:10px 14px}.filter-option strong,.filter-option small{display:block}.filter-option small{font-size:15px;margin-top:3px}.filter-option[aria-pressed=true]{background:var(--ink);color:white}.selection-indicator{white-space:nowrap;font-size:16px}.picker-chosen{display:flex;flex-wrap:wrap;gap:8px;margin:12px 0}.filter-paging{display:flex;justify-content:space-between;gap:12px;margin:12px 0}.use-name-filter{width:100%;text-align:left;margin-top:12px}.filter-chip{overflow-wrap:anywhere}.result-summary{flex-wrap:wrap}.nav-register{background:var(--ink);color:#fff!important;min-height:44px;padding:10px 14px!important;border-radius:3px;text-decoration:none!important}.site-header .header-inner{flex-wrap:wrap;padding:12px 0;gap:14px}.site-header nav{flex-wrap:wrap;gap:16px}.photo-edit-form{max-width:980px}.photo-edit-form .edit-section{padding:20px 24px;margin-bottom:16px}.photo-edit-form .edit-section h2{margin:0 0 14px}.photo-edit-form .edit-section h2 small{font-family:inherit;font-size:18px;font-weight:400}.photo-edit-form [data-field]{margin-bottom:16px}.photo-edit-form .date-inputs{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px}.dating-modes,.motif-choices{border:0;margin:16px 0;padding:0;min-width:0}.dating-modes legend,.motif-choices legend{font-weight:600;font-size:18px}.dating-modes #id_dating_mode{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px}.dating-modes label,.motif-choices label,.help-options .check-filter{display:flex;align-items:center;justify-content:center;gap:9px;border:1px solid #99aaa7;border-radius:3px;min-height:48px;padding:10px 12px;margin:0;background:var(--white);cursor:pointer;font-weight:400}.dating-modes label:has(:checked),.motif-choices label:has(:checked),.help-options label:has(:checked){background:var(--ink);color:white}.dating-modes label:has(:checked)::before{content:'✓'}.dating-modes input[type=radio]{position:absolute;opacity:0;width:1px;height:1px}.dating-modes label:focus-within,.motif-choices label:focus-within,.help-options label:focus-within{outline:3px solid #b8863a;outline-offset:3px}.motif-group{border:0;padding:0;margin:12px 0 18px}.motif-group legend{margin:0 0 8px}.motif-options{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:8px}.motif-choices input,.help-options input{width:18px;height:18px;accent-color:#0c554a}.dating-preview{padding:14px 18px;background:#e8efeb;border:1px solid #d6e1dc;border-radius:3px;font-weight:600;margin:12px 0 20px}.help-options{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;margin:16px 0}.photo-help-form{border:0;padding:0;margin:0}.identification-status{border-top:1px solid var(--line);padding-top:18px;margin-top:20px}.registration-intro{color:var(--muted);margin-top:-12px}.photo-edit-form input:disabled{background:#e9ebe8;color:#626b68}.photo-edit-form .upload-preview{max-height:220px;width:auto;max-width:100%;object-fit:contain}.photo-edit-form .errorlist{margin:6px 0}
@media(max-width:1000px){.motif-options{grid-template-columns:repeat(2,minmax(0,1fr))}.site-header .identity{max-width:none}.site-header nav{margin-left:0}}
@media(max-width:760px){.filter-grid{grid-template-columns:1fr}.archive-explore .filter-panel{padding:16px 0}.filter-dialog{padding:18px;width:calc(100vw - 16px);max-height:calc(100dvh - 16px)}.photo-edit-form .edit-section{padding:18px 14px}.photo-edit-form .date-inputs{grid-template-columns:1fr}.dating-modes #id_dating_mode,.help-options{grid-template-columns:repeat(2,minmax(0,1fr))}.site-header nav{font-size:15px;gap:10px}.site-header .nav-register{order:-1}.site-header .brand-logo{width:190px}.photo-edit-page main{padding:20px 4%}.results-toolbar{gap:12px}.sort-control{margin-left:0}.filter-toggle{margin-bottom:12px}}

@media(min-width:1151px){.site-header .brand-logo{width:210px}.site-header .identity{flex:1;max-width:none;font-size:17px}.site-header nav{width:auto;gap:14px}.site-header .header-inner{flex-wrap:nowrap}}
.picker-chosen .filter-chip{color:var(--ink);background:#e2ece8;min-height:44px}
.filter-option:not([aria-pressed=true]):hover{background:#e9f0ed;color:var(--ink)}
.picker-chosen .filter-chip:hover{background:#cedfd7;color:var(--ink)}
.field-requirement{font-size:14px;font-weight:400;color:var(--muted)}
.metadata-field label:has(+.field-requirement){display:inline;margin-right:8px}
.motif-choices label,.help-options label{position:relative}
.motif-choices input[type=checkbox],.help-options input[type=checkbox]{position:absolute;opacity:0;width:1px;height:1px;margin:0}
.dating-modes label:has(:checked)::before,.motif-choices label:has(:checked)::before,.help-options label:has(:checked)::before{content:'✓' / '';flex:none}
.registry-picker .picker-feedback{margin:5px 0 8px;line-height:1.4}
.registry-picker .picker-feedback:empty,.registry-picker .registry-results:empty{display:none}
.registry-picker .picker-feedback .picker-status{display:inline;margin:0;padding:0}
/* Quiet, consistent divisions inside the picture metadata section. */
.photo-edit-form .metadata-group { border-top: 1px solid #b8c9c4; padding-top: 1.5rem; margin-top: 1.75rem; }
.photo-edit-form .metadata-group > :first-child { margin-top: 0; }
.photo-edit-form .metadata-group legend,
.photo-edit-form .metadata-place > .metadata-field > label { font-size: 1.15rem; font-weight: 650; }
.motif-admin-list { list-style: none; padding: 0; max-width: 48rem; }
.motif-admin-list li { display: flex; justify-content: space-between; align-items: baseline; gap: 1rem; padding: .7rem 0; border-bottom: 1px solid #d9e1dd; }
.motif-admin-list li span { overflow-wrap: anywhere; }
.motif-admin-list a { flex-shrink: 0; }
@media (max-width: 480px) { .motif-admin-list li { flex-wrap: wrap; gap: .25rem; } }
/* A quiet timeline entry belongs to the count, also after live search. */
/* Sharing uses the existing navigation row, without adding image spacing. */
.photo-detail .photo-navigation .photo-share{margin-left:auto}
@media(max-width:760px){.photo-detail .photo-navigation .photo-share{order:1}.photo-detail .photo-navigation .photo-sequence{order:2;flex-basis:100%}}
.photo-detail .site-header .identity{min-width:0;overflow-wrap:anywhere}
.photo-detail .photo-share{position:relative;display:inline-block;margin:0;font-size:.85rem;text-align:left}
.photo-share>summary{display:inline-flex;align-items:center;gap:7px;min-height:44px;padding:6px 8px;list-style:none;white-space:nowrap;border-radius:3px;cursor:pointer}
.photo-share>summary:hover{background:#173f3608}
.photo-share>summary:focus-visible{outline:3px solid #af793b;outline-offset:2px}
.photo-share .share-icon{flex:0 0 18px}
.photo-navigation .photo-share-panel{left:auto;right:0}
.photo-share>summary::-webkit-details-marker{display:none}
.photo-share-panel{position:absolute;left:0;top:100%;z-index:8;width:min(310px,85vw);padding:14px;background:var(--white);border:1px solid var(--line);border-radius:4px;box-shadow:0 5px 18px #173f361a}
.photo-share-panel button{display:block;min-height:44px;width:100%;padding:8px 10px;text-align:left;margin-bottom:8px}
.photo-share-panel .share-manual{font-size:.8rem;margin:8px 0}
.photo-share-panel input{font-size:.8rem}
.photo-share-panel p{font-size:.8rem;line-height:1.4;margin:8px 0 0;overflow-wrap:anywhere}
.photo-share-panel .share-status:empty{display:none}
.archive-explore .result-count { display:flex; flex-wrap:wrap; align-items:center; gap:0 8px; white-space:normal; }
.archive-explore .result-count-separator { color:var(--muted); }
.archive-explore .timeline-entry { display:inline-flex; align-items:center; gap:.35em; min-height:44px; padding:8px 2px; color:var(--ink); font-size:.95rem; text-decoration:none; border:0; background:none; white-space:nowrap; }
.archive-explore .timeline-entry:hover { color:#37745e; text-decoration:underline; }
.archive-explore .timeline-entry:focus-visible { outline:3px solid #af793b; outline-offset:3px; border-radius:2px; }
.archive-explore .result-summary { flex:1; }
.archive-explore .sort-control { margin-left:auto; }
@media(max-width:760px) { .archive-explore .result-summary { flex-basis:240px; } }

/* Compact registry introductions and galleries; native disclosure fallbacks. */
.register-entry-page .heading-row{align-items:flex-start;gap:12px;margin:8px 0}
.register-entry-page .heading-row h1{margin:0;overflow-wrap:anywhere;min-width:0}
.register-entry-page .register-back{margin-block:0 8px}
.register-entry-page .eyebrow{margin-top:8px}
.register-entry-page .register-intro{max-width:75ch;margin-bottom:20px}
.register-intro p{margin:0 0 10px;line-height:1.6}
.register-intro .entry-type,.register-intro .entry-aliases{font-size:.9rem;color:var(--muted)}
.register-intro .entry-sources{margin:4px 0}
.register-actions{display:flex;align-items:center;gap:12px;flex-wrap:wrap;font-size:.9rem}
.register-actions .register-edit,.register-admin>summary{display:inline-flex;align-items:center;min-height:44px;padding:6px 0}
.register-admin{position:relative;margin:0}
.register-admin>summary{cursor:pointer;white-space:nowrap}
.register-admin>div{position:absolute;right:0;z-index:7;width:220px;max-width:calc(100vw - 40px);background:var(--paper);border:1px solid var(--line);border-radius:4px;padding:8px;box-shadow:0 5px 18px #173f361a}
.register-admin a{display:block;min-height:44px;padding:10px;overflow-wrap:anywhere}
.register-entry-page .register-gallery{margin-block:16px}
.register-gallery-toolbar{display:flex;align-items:center;gap:8px 18px;flex-wrap:wrap;margin-bottom:12px;min-width:0}
.register-gallery-toolbar h2{font-size:1.5rem;margin:0;white-space:nowrap}
.register-gallery-toolbar .timeline-entry{display:inline-flex;align-items:center;min-height:44px;padding:4px 0;text-decoration:none;white-space:nowrap}
.register-gallery-toolbar .timeline-entry:hover{text-decoration:underline}
.register-gallery-toolbar .register-photo-sort{display:flex;align-items:center;flex-wrap:wrap;gap:8px;margin:0 0 0 auto;padding:0;border:0;background:transparent;min-width:0;max-width:100%}
.register-sort-field{display:flex;align-items:center;gap:8px;min-width:0}
.register-sort-field label{margin:0;font-size:.9rem}
.register-sort-field select{width:auto;max-width:100%;margin:0;min-height:44px;font-size:.9rem;padding:8px}
.register-photo-sort .sort-submit{min-height:44px;padding:8px 12px}
.sort-explanation{position:relative;margin:0}
.sort-explanation>summary{display:flex;align-items:center;justify-content:center;min-width:44px;min-height:44px;cursor:pointer;list-style:none;text-decoration:underline}
.sort-explanation>p{position:absolute;right:0;top:100%;z-index:6;width:280px;max-width:calc(100vw - 40px);background:var(--paper);border:1px solid var(--line);border-radius:4px;padding:12px;margin:0;font-size:.9rem;line-height:1.5;box-shadow:0 5px 18px #173f361a}
.text-action{background:transparent;color:var(--ink);border:0;text-decoration:underline;padding:6px 0;min-height:44px;font:inherit}
.photo-detail .entry-info{margin:2px 0;font-size:.9rem}
.photo-detail .entry-info>summary{display:inline-flex;align-items:center;min-height:44px;padding:6px 0;cursor:pointer;text-decoration:underline;font-size:.85rem}
.entry-info-content{border-left:2px solid var(--line);padding:4px 0 8px 12px;overflow-wrap:anywhere}
.photo-information .entry-info-content p{font-size:.9rem;margin:6px 0;line-height:1.5}
.entry-info-content a{display:inline-flex;align-items:center;min-height:44px;font-size:.9rem;white-space:normal}
.photo-detail .mark-main .entry-info{margin-left:51px}
.photo-detail .fact-rows .entry-info{margin-top:0}
.photo-detail .photo-place+.photo-place{margin-top:6px}
.register-entry-page summary:focus-visible,.text-action:focus-visible,.entry-info>summary:focus-visible{outline:3px solid #af793b;outline-offset:2px;border-radius:2px}
@media(max-width:760px){
 .register-entry-page .heading-row{flex-direction:column;gap:4px}
 .register-entry-page .register-intro{margin-bottom:14px}
 .register-gallery-toolbar{gap:4px 14px}
 .register-gallery-toolbar .register-photo-sort{margin-left:0;flex-basis:100%}
 .register-sort-field{flex:1;flex-wrap:wrap}
 .register-sort-field select{flex:1;min-width:0}
 .register-admin>div{right:auto;left:0}
}
@media(max-width:760px){.register-gallery-toolbar .register-sort-field{flex-basis:0}.register-photo-sort .sort-explanation[open]{flex-basis:100%}.register-photo-sort .sort-explanation>p{position:static;width:100%;max-width:100%}}
.register-entry-page .site-header .identity{min-width:0;overflow-wrap:anywhere}

/* Compact mark lists: only the selected entry reveals its information. */
.photo-detail .mark-select{display:flex;align-items:center;gap:8px;min-height:44px;width:100%;line-height:1.35}
.photo-detail .mark-select .person-number{width:30px;height:30px;min-height:30px;flex:0 0 30px;font-size:18px;margin:0}
.photo-detail .mark-name{flex:1;min-width:0}
.photo-detail .mark-disclosure-icon{flex:none;font-size:16px;font-weight:400}
.photo-detail .mark-select[aria-expanded=true] .mark-disclosure-icon{transform:rotate(180deg)}
.photo-detail .mark-information{margin:2px 0 8px 38px;overflow-wrap:anywhere}
.photo-detail .mark-information[hidden]{display:none}
.photo-detail .mark-information .confidence-label{display:block;margin:0 0 6px;font-size:.85rem}
.photo-detail .mark-information .entry-info-content{margin:6px 0}
.photo-detail .mark-information .mark-notes{margin:4px 0}
.photo-detail .mark-information .edit-mark{margin:0 12px 0 0}
.photo-detail .mark-information .remove-mark-quiet{font-size:.8rem;color:var(--muted);text-decoration-thickness:1px}
.photo-detail .mark-select:focus-visible{outline:3px solid #af793b;outline-offset:2px;border-radius:2px}
/* One photo-place list, with uncertainty stored separately for each place. */
.photo-places{min-width:0;border:0;padding:0}
.photo-places legend{font-weight:600;font-size:1.05rem;margin-bottom:8px}
.photo-places .selected-place{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:8px 16px;padding:14px;margin:0 0 10px;border:1px solid var(--line);background:var(--white);border-radius:4px}
.photo-places .selected-place strong{overflow-wrap:anywhere;align-self:center}
.photo-places .selected-place button{min-height:44px;font-size:.85rem;padding:8px}
.photo-places .place-uncertainty{grid-column:1/-1;display:flex;align-items:center;gap:10px;min-height:44px;margin:0;font-weight:400}
.photo-places .place-uncertainty input{flex-shrink:0}
.photo-places .place-conflict{grid-column:1/-1;margin:0;font-size:.9rem}
.photo-places .add-place{min-height:44px;margin:0 0 14px}
.photo-places .place-lookup{margin-top:6px}
.photo-places .place-status:empty{display:none}
.photo-places .possible-place-errors{display:none}
.photo-places.places-enhanced .possible-place-errors{display:block}
.photo-places .place-explanation>summary{min-height:44px;padding:8px 0}
@media(max-width:480px){.photo-places .selected-place{grid-template-columns:minmax(0,1fr)}.photo-places .selected-place button{justify-self:start}}
/* Shared portal. These selectors are scoped so archive pages retain their layout. */
.portal-page{background:#f7f4ec;color:#112c24}.portal-page main{max-width:none;padding:0;min-height:0}.portal-header{background:#fbf9f3;border:0;padding:0 4%;min-height:76px}.portal-header-inner{width:min(1480px,100%);margin:auto;display:flex;align-items:center;gap:42px}.portal-brand{display:flex;align-items:center;flex:none}.portal-brand .brand-logo{width:180px;height:auto}.portal-nav,.portal-account{width:auto;margin:0;display:flex;gap:28px;align-items:center}.portal-nav a,.portal-account a{font-size:.92rem;text-decoration:none;white-space:nowrap}.portal-account{margin-left:auto;gap:20px}.portal-account details{margin:0;position:relative}.portal-account summary{white-space:nowrap;cursor:pointer}.portal-account details>div{position:absolute;right:0;top:100%;z-index:5;min-width:190px;background:#fbf9f3;border:1px solid #d7d0c3;box-shadow:0 8px 20px #122a2133;padding:12px;display:grid;gap:10px}.portal-account details button{background:none;border:0;color:inherit;padding:0;font-size:.92rem}.portal-account .portal-contribute{border:1px solid #a87532;border-radius:3px;padding:8px 15px}.portal-hero{position:relative;min-height:410px;background:linear-gradient(110deg,#173b2d,#314939);color:#fff;overflow:hidden;display:flex;align-items:center}.portal-hero-photo,.portal-hero-photo:after{position:absolute;inset:0}.portal-hero-photo:after{content:"";background:linear-gradient(90deg,#102b21ee 0%,#102b21ae 38%,#102b2122 75%)}.portal-hero-photo img{display:block;width:100%;height:100%;object-fit:cover}.portal-hero-inner{position:relative;width:min(1270px,92%);margin:0 auto;padding:52px 0;z-index:1}.portal-hero h1{font-size:clamp(3rem,5.3vw,5.4rem);font-weight:600;line-height:.97;max-width:700px;margin:0 0 14px;color:#fff;text-wrap:balance}.portal-hero-inner>p{font-size:clamp(1.15rem,1.8vw,1.55rem);margin-bottom:26px}.portal-search-form{display:flex;align-items:center;width:min(800px,100%);background:#fffdfa;border-radius:3px;padding:7px;gap:0;box-shadow:0 3px 16px #0002}.portal-search-form input,.portal-search-form select{border:0;background:none;border-radius:0;font-size:1rem;min-height:48px}.portal-search-form input{flex:1;min-width:100px;padding-left:18px}.portal-search-form select{width:230px;border-left:1px solid #d6d6d0;padding:0 18px}.portal-search-form button{min-width:96px;min-height:44px}.portal-hero small{display:block;margin-top:9px}.portal-section{width:min(1270px,92%);margin:0 auto;padding:28px 0}.portal-section h2{font-size:clamp(2rem,3vw,2.8rem);font-weight:600;letter-spacing:-.03em;margin:0 0 4px}.portal-section-head{display:flex;align-items:end;justify-content:space-between;gap:20px;margin-bottom:12px}.portal-section-head p{font-family:Georgia,serif;font-size:1.24rem;margin:0}.portal-section-head>a,.portal-about a{color:#173f36;text-decoration:none;border-bottom:1px solid #a87532;padding-bottom:4px;white-space:nowrap}.portal-photo-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:20px}.portal-photo-card{min-width:0}.portal-photo-card a{text-decoration:none}.portal-photo-card img{width:100%;aspect-ratio:2.15;object-fit:cover;display:block;border-radius:2px;background:#e4e1d9}.portal-photo-archive{display:block;text-transform:uppercase;letter-spacing:.12em;color:#98631f;font-size:.73rem;font-weight:700;margin-top:12px}.portal-photo-card h3{font:600 1.4rem/1.2 Georgia,serif;margin:3px 0 0}.portal-photo-credit{font-size:.77rem;color:var(--muted);margin:5px 0}.portal-archives{border-top:1px solid #d8d2c8}.portal-archive-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(390px,1fr));gap:20px}.portal-archive-card{border:1px solid #d9d5ca;display:grid;grid-template-columns:50% 50%;min-height:180px}.portal-archive-card>img,.portal-archive-blank{width:100%;height:100%;object-fit:cover;background:#e1dfd6}.portal-archive-card>div:last-child{padding:18px 20px}.portal-archive-card h3,.portal-about h2{font:600 1.8rem/1.15 Georgia,serif;margin:0 0 5px}.portal-archive-card p{font-family:Georgia,serif;margin:0 0 12px}.portal-primary-link{display:inline-block;background:#173f36;color:white;text-decoration:none;padding:7px 16px;border-radius:2px;font-size:.85rem}.portal-primary-link:hover{color:white;background:#2d644f}.portal-about{display:flex;align-items:center;gap:24px;background:#f0ebe0;margin-bottom:24px;padding:24px}.portal-about-symbol{font-size:4rem;color:#a87532;line-height:1}.portal-about p{margin:0 0 8px}.portal-empty{padding:28px;border:1px dashed #c9c5b8;color:#526058}.portal-results{min-height:320px}.portal-result-count{color:#526058}.portal-pages{justify-content:center;margin:30px auto}.portal-preview-banner{padding:12px 4%;background:#e6dabd;color:#173f36}.portal-footer{width:min(1270px,92%);margin:auto;padding:18px 0}.portal-footer nav{width:auto}.portal-editor{max-width:800px;margin:auto}.portal-editor fieldset{margin:24px 0;padding:22px;border:1px solid var(--line)}.portal-editor legend{font:600 1.6rem Georgia,serif}.portal-editor fieldset p{margin-bottom:16px}.portal-editor-crop{display:grid;grid-template-columns:repeat(3,1fr);gap:16px}.portal-editor-actions{display:flex;gap:12px}.portal-editor-actions button{min-width:130px}
@media(max-width:850px){.portal-header{padding:10px 4%}.portal-header-inner{flex-wrap:wrap;gap:6px 20px}.portal-brand .brand-logo{width:145px}.portal-nav{order:3;width:100%;justify-content:space-between;gap:12px}.portal-account{margin-left:auto}.portal-nav a,.portal-account a{font-size:.83rem}.portal-hero{min-height:430px}.portal-hero-inner{padding:48px 0}.portal-photo-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.portal-archive-grid{grid-template-columns:1fr}}
@media(max-width:580px){.portal-header-inner{gap:8px}.portal-account .portal-contribute{display:none}.portal-nav{overflow-x:auto;padding:8px 0}.portal-hero{min-height:480px}.portal-hero h1{font-size:clamp(2.8rem,13vw,4rem)}.portal-search-form{display:grid;grid-template-columns:1fr 110px;padding:6px}.portal-search-form input{grid-column:1/-1;border-bottom:1px solid #ddd;min-width:0}.portal-search-form select{width:100%;font-size:.85rem;border:0;padding:0 8px}.portal-section-head{align-items:start;flex-direction:column}.portal-photo-grid{grid-template-columns:1fr}.portal-photo-card img{aspect-ratio:1.7}.portal-archive-card{display:block}.portal-archive-card>img,.portal-archive-blank{height:180px}.portal-about{align-items:start}.portal-about-symbol{font-size:2.6rem}.portal-editor-crop{grid-template-columns:1fr}.portal-editor-actions{flex-wrap:wrap}}
.portal-crop-preview{height:230px;background:#e0ddd3;overflow:hidden;display:flex;align-items:center;justify-content:center;color:#526058}.portal-crop-preview img{width:100%;height:100%;object-fit:cover;transform-origin:var(--portal-x,50%) var(--portal-y,50%);object-position:var(--portal-x,50%) var(--portal-y,50%);transform:scale(calc(var(--portal-zoom,1) * 1.15))}.portal-crop-preview p{margin:0;padding:20px}
.portal-hero-photo img{object-position:var(--portal-x,50%) var(--portal-y,50%);transform-origin:var(--portal-x,50%) var(--portal-y,50%);transform:scale(calc(var(--portal-zoom,1) * 1.15))}
.portal-picker-pages{display:flex;gap:12px;margin:-4px 0 18px}.portal-picker-pages button{min-height:38px;padding:6px 12px}.portal-picker-pages button[hidden]{display:none}
.portal-hero-credit{position:absolute;right:4%;bottom:14px;z-index:1;background:#102b21aa;padding:3px 8px;font-size:.72rem}.portal-archive-credit{display:block;color:#5f675f;font-size:.72rem;margin-top:9px;line-height:1.3}
