/* Public archive finders share the site's typography, colour and theme controls. */
.fd {--fd-rule:var(--cv-line);max-width:1100px;margin-inline:auto;padding-block:8px 28px}
.fd .fd-intro {padding:8px 0 16px;max-width:78ch}
.fd h1 {font-size:clamp(2rem,4.4vw,3.45rem);letter-spacing:-.052em;line-height:1.05;margin:0 0 .28em}
.fd .fd-intro p {font-size:clamp(1rem,1.35vw,1.12rem);color:var(--cv-muted);line-height:1.6;margin:0}
.fd .fd-intro b {font-weight:600;color:var(--cv-ink)}
.fd .fd-tabs,.fd .fd-types,.fd .fd-examples,.fd .fd-section-head,.fd .fd-pager {display:flex;align-items:center;gap:10px;flex-wrap:wrap}
.fd .fd-tabs {gap:3px;padding:4px;border:1px solid var(--fd-rule);border-radius:14px;background:var(--cv-panel);width:fit-content;margin:0 0 22px}
.fd .fd-tabs a,.fd .fd-types a {display:inline-flex;align-items:center;gap:7px;min-height:42px;padding:7px 14px;color:var(--cv-muted);border-radius:10px;line-height:1.3}
.fd .fd-tabs a[aria-current],.fd .fd-types a[aria-current] {background:var(--cv-elevated);color:var(--cv-ink);box-shadow:inset 0 0 0 1px var(--fd-rule)}
.fd .fd-tabs svg {width:17px;height:17px}
.fd .fd-section-head {justify-content:space-between;gap:6px 16px;margin:22px 0 12px}
.fd h2 {font-size:clamp(1.15rem,2.4vw,1.55rem);letter-spacing:-.035em;margin:0}
.fd .fd-section-head>span,.fd small,.fd .fd-meta,.fd .fd-hint,.fd .fd-help,.fd .fd-record-meta {color:var(--cv-muted)}
.fd .fd-section-head>span,.fd .fd-record-meta,.fd small {font-size:.85rem}
.fd .fd-more,.fd .fd-examples a,.fd .fd-pager a {color:var(--cv-link);font-size:.88rem;display:inline-flex;align-items:center;gap:5px;min-height:40px}
.fd .fd-shelves,.fd .fd-reading {display:grid;gap:12px;grid-template-columns:repeat(3,minmax(0,1fr))}
.fd .fd-shelf,.fd .fd-reading article,.fd .fd-search-panel,.fd .fd-notice,.fd .fd-hits article {border:1px solid var(--fd-rule);border-radius:13px;background:var(--cv-panel)}
.fd .fd-shelf {position:relative;display:grid;grid-template-columns:auto 1fr;gap:12px;align-content:start;padding:21px 22px 21px 16px;color:var(--cv-ink);text-decoration:none}
.fd .fd-symbol {display:grid;place-items:center;color:var(--cv-accent);background:var(--cv-soft);border-radius:9px;width:36px;height:36px}
.fd .fd-icon {flex:none;width:21px;height:21px}
.fd .fd-shelf strong {display:block;font-size:1.03rem;line-height:1.38;margin-bottom:5px}
.fd .fd-shelf small {display:block;font-weight:400;line-height:1.52}
.fd .fd-arrow {position:absolute;right:9px;top:10px;color:var(--cv-accent)}
.fd .fd-reading article {padding:18px;display:flex;flex-direction:column;border-top:3px solid var(--cv-accent)}
.fd .fd-reading article:nth-child(2) {border-top-color:#a69669}
.fd .fd-reading article:nth-child(3) {border-top-color:#73988a}
.fd .fd-reading small {margin-top:auto}
.fd .fd-reading h3,.fd .fd-hits h3,.fd .fd-list h3 {margin:3px 0;font-size:1.05rem;line-height:1.4;letter-spacing:-.015em;overflow-wrap:anywhere}
.fd .fd-reading p,.fd .fd-list p {margin:4px 0 12px;line-height:1.55;color:var(--cv-muted)}
.fd .fd-reading h3 a,.fd .fd-list h3 a,.fd .fd-hits h3 a {color:var(--cv-ink);text-decoration:underline;text-decoration-color:color-mix(in srgb,var(--cv-accent) 45%,transparent);text-underline-offset:.18em}
.fd .fd-meta {font-size:.77rem;line-height:1.5;font-weight:600;letter-spacing:.015em}
.fd .fd-search-panel {padding:clamp(16px,2.4vw,28px);background:linear-gradient(115deg,var(--cv-elevated),var(--cv-panel) 75%);margin:0 0 18px}
.fd label {display:block;font-weight:650;font-size:.9rem}
.fd .fd-input-row {position:relative;display:flex;align-items:center;gap:8px;margin-top:7px}
.fd input,.fd select {min-width:0;min-height:44px;font-size:1rem;border:1px solid var(--fd-rule);border-radius:8px;background:var(--cv-bg);color:var(--cv-ink);padding:8px 12px}
.fd input::placeholder {color:var(--cv-muted)}
.fd .fd-input-icon {position:absolute;left:13px;display:flex;color:var(--cv-muted);pointer-events:none}
.fd .fd-input-row input {flex:1;width:1%;padding-left:42px;min-height:47px}
.fd .fd-button {display:inline-flex;align-items:center;justify-content:center;border:0;border-radius:8px;min-height:44px;padding:8px 18px;background:#bdd783;color:#1c2c15;cursor:pointer;font-weight:750}
.fd .fd-button:hover,.fd .fd-button:focus-visible {background:#d2e6a8;color:#17260f}
.fd .fd-examples {margin-top:9px;gap:4px 14px}
.fd .fd-examples>span,.fd .fd-help,.fd .fd-hint {font-size:.86rem}
.fd .fd-help {margin:8px 0 0}
.fd .fd-examples a {min-height:32px}
.fd .fd-input-row [role=listbox] {position:absolute;top:100%;inset-inline:0;z-index:5;list-style:none;margin:4px 0;padding:5px;border:1px solid var(--cv-accent);background:var(--cv-panel);border-radius:10px;max-height:18rem;overflow:auto;box-shadow:var(--cv-shadow)}
.fd .fd-input-row [role=option] {display:flex;align-items:baseline;gap:3px 12px;flex-wrap:wrap;cursor:pointer;padding:7px 9px;min-height:42px;border-radius:5px}
.fd .fd-input-row [role=option]:is(:hover,[aria-selected=true]) {background:var(--cv-elevated)}
.fd .fd-types {gap:6px;margin:18px 0}
.fd .fd-types a {border:1px solid var(--fd-rule);min-height:38px}
.fd .fd-filters {display:flex;align-items:end;flex-wrap:wrap;gap:10px;background:var(--cv-panel);border:1px solid var(--fd-rule);border-radius:11px;padding:13px}
.fd .fd-filters label {flex:1 1 130px}
.fd .fd-filters :is(input,select) {display:block;width:100%;margin-top:3px}
.fd .fd-list {border-block:1px solid var(--fd-rule)}
.fd .fd-list article {padding:15px 4px;display:grid;grid-template-columns:1fr auto;gap:6px 14px}
.fd .fd-list article+article {border-top:1px solid var(--fd-rule)}
.fd .fd-list p {margin:2px 0 0}
.fd .fd-record-meta {display:flex;flex-direction:column;text-align:right;align-items:end;max-width:23ch}
.fd .fd-hits {display:grid;gap:9px;margin-top:14px}
.fd .fd-hits article,.fd .fd-notice {padding:18px 20px}
.fd .fd-hits .fd-passage {max-width:87ch;margin:8px 0 0}
.fd mark {background:#e8d892;color:#242113;padding:0 .1em;border-radius:2px}
.fd .fd-hits .fd-hint {margin:4px 0}
.fd .fd-pager {justify-content:center;margin:20px auto;gap:20px}
.fd #results {scroll-margin-top:130px}
.fd :focus-visible {outline:3px solid var(--cv-accent);outline-offset:3px}
@media(min-width:700px) and (prefers-reduced-motion:no-preference) {
  .fd .fd-shelf,.fd .fd-arrow {transition:transform .16s ease,border-color .16s ease}
  .fd .fd-shelf:is(:hover,:focus-visible) {transform:translateY(-2px);border-color:var(--cv-accent);text-decoration:none;color:var(--cv-ink)}
  .fd .fd-shelf:hover .fd-arrow {transform:translate(1px,-1px)}
}
@media(max-width:920px){.fd .fd-shelves {grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:620px){
  .fd {padding-top:0}
  .fd .fd-shelves,.fd .fd-reading {grid-template-columns:1fr;gap:8px}
  .fd .fd-shelf {padding:13px 24px 13px 12px}
  .fd .fd-tabs {width:100%}
  .fd .fd-tabs a {flex:1;justify-content:center;font-size:.85rem;padding-inline:4px}
  .fd .fd-list article {grid-template-columns:1fr}
  .fd .fd-record-meta {max-width:none;flex-direction:row;align-items:center;gap:8px;text-align:left}
  .fd .fd-search-panel {padding:14px}
  .fd .fd-input-row .fd-button {padding-inline:12px}
  .fd .fd-section-head {margin-top:16px}
}
.fd .fd-inline-filters {padding:12px 0 0;background:none;border:0}
.fd .fd-passage {white-space:pre-line;overflow-wrap:anywhere}
