/*
 * Orange County Indexed: the historical-records searches (historic deeds, enslaved people in records, the records hub).
 * 2026-10-10: one sheet for the three templates, matched to the established OCI searches: the pale console of the
 * index search (oci-search.css .obs-console, round 4), the directories' controls and labels (oci-directory.css
 * .pd-search/.pd-sel), the chronology's query box and pill button (ocb-chronology.php .occ__qbox/.occ__go), the
 * bold count line (.obs-count/.la-count), unboxed result rows with a serif title (.obs-rows, round 4), the site
 * search's <mark>, the Local Authors "show more" pill (.la-more__btn) and the index search's empty state (.obs-none).
 * Linked by focpl_ocb_records_css() from each template; colours and sizes are the theme's tokens.
 */

/* page frame */
.dds-wrap, .esr-wrap, .rh-wrap { padding-top: 32px; padding-bottom: 56px; }
.dds-narrow { max-width: 74ch; }
.esr-narrow { max-width: 74ch; }
.dds-wrap h2, .esr-wrap h2 { margin: 32px 0 10px; font-size: var(--fs-xl, 1.4rem); line-height: 1.2; }
.dds-wrap p, .dds-wrap li, .esr-wrap p, .esr-wrap li { line-height: 1.6; }
.dds-wrap :focus-visible, .esr-wrap :focus-visible, .rh-wrap :focus-visible { outline: 2px solid var(--ocpl-blue); outline-offset: 2px; }

/* the console: the query, then the filters */
.dds-form, .esr-form, .rh-console { display: grid; gap: 14px; margin: 0 0 18px; padding: 22px 24px; background: var(--ocpl-blue-pale); border-radius: 12px; }
.ocr-qlabel { display: block; margin: 0 0 6px; font-size: var(--fs-md); font-weight: 700; color: var(--heading); }
.ocr-qbox { display: flex; gap: 8px; }
.dds-q, .esr-q, .rh-console input[type=search] { flex: 1 1 auto; width: 100%; min-width: 0; padding: 10px 14px; border: 1px solid var(--ocpl-blue-light); border-radius: var(--radius-md); font-size: var(--fs-md); background: var(--white); color: var(--text); }
.ocr-hint { margin: 6px 0 0; font-size: var(--fs-xs); color: var(--text-light, var(--text-mid)); }
.dds-sels, .esr-sels { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 10px 12px; align-items: end; }
.dds-sel, .esr-sel { display: grid; gap: 4px; min-width: 0; }
.dds-sel > span, .esr-sel > span { font-size: var(--fs-xs); font-weight: 700; text-transform: uppercase; letter-spacing: .06em; color: var(--ocpl-blue-dark); }
.dds-sel select, .dds-sel input, .esr-sel select { width: 100%; min-width: 0; padding: 9px 10px; border: 1px solid var(--ocpl-blue-light); border-radius: var(--radius-md); font-size: var(--fs-md); background: var(--white); color: var(--text); }
.dds-check, .esr-check { display: inline-flex; gap: 8px; align-items: center; align-self: center; font-size: var(--fs-sm); color: var(--text); }
.dds-check input, .esr-check input { width: 18px; height: 18px; accent-color: var(--ocpl-blue); }
@media (max-width: 900px) { .dds-sels, .esr-sels { grid-template-columns: repeat(2, minmax(0, 1fr)); } }
@media (max-width: 560px) {
  .dds-sels, .esr-sels { grid-template-columns: minmax(0, 1fr); }
  .dds-form, .esr-form, .rh-console { padding: 18px 16px; }
}

/* the hub's buttons: the chronology's pill (.occ__go), one filled and one outlined */
.ocr-go { display: inline-flex; align-items: center; justify-content: center; padding: 9px 18px; border-radius: var(--radius-pill); border: 1px solid var(--ocpl-blue); background: var(--ocpl-blue); color: var(--white); font-size: var(--fs-sm); font-weight: 700; cursor: pointer; white-space: nowrap; font-family: inherit; }
.ocr-go:hover { background: var(--ocpl-blue-dark); border-color: var(--ocpl-blue-dark); }
.ocr-go--alt { background: var(--white); color: var(--ocpl-blue-dark); border-color: var(--ocpl-blue-dark); }
.ocr-go--alt:hover { background: var(--ocpl-blue-pale); color: var(--ocpl-blue-dark); }
.rh-console .ocr-qbox { flex-wrap: wrap; }
.rh-console .ocr-qbox input[type=search] { flex: 1 1 18em; }

/* help, folded under the console as on the index search (.obs-hints) */
.ocr-help { margin: 0 0 18px; font-size: var(--fs-sm); color: var(--text-mid); }
.ocr-help > summary { cursor: pointer; font-weight: 700; color: var(--ocpl-blue-dark); }
.ocr-help ul { margin: 8px 0 0; padding-left: 1.2em; }
.ocr-help li { margin: 0 0 6px; }

/* the count line */
.dds-count, .esr-count { margin: 4px 0 10px; font-size: 1.05rem; font-weight: 700; color: var(--heading); }

/* results: unboxed rows, a serif title, as the index search lists works */
.dds-list, .esr-list { list-style: none; margin: 0; padding: 0; border-top: 1px solid var(--ocpl-blue-light); }
.dds-item, .esr-item { display: grid; gap: 4px; padding: 16px 0; border-bottom: 1px solid var(--ocpl-blue-light); min-width: 0; overflow-wrap: anywhere; }
.dds-item__h, .esr-item__h { font-family: var(--font-display); font-size: var(--oci-fs-title, 1.1rem); font-weight: 700; line-height: 1.3; color: var(--heading); text-decoration: none; }
.dds-item__h:hover, .esr-item__h:hover { color: var(--ocpl-blue); text-decoration: underline; }
.dds-item__c, .esr-item__c { font-size: var(--fs-sm); color: var(--text-mid); }
.dds-item__a, .esr-item__n { font-size: var(--fs-sm); color: var(--text); }
.esr-item__m { font-size: var(--fs-sm); color: var(--text-mid); }
.dds-list mark, .esr-list mark { background: var(--highlight-fill); color: inherit; border-radius: 2px; padding: 0 2px; }

/* none found */
.ocr-none { padding: 22px 0 6px; color: var(--text-mid); list-style: none; }
.ocr-none b { color: var(--heading); }
.ocr-none ul { margin: 8px 0 0; padding-left: 1.2em; font-size: var(--fs-sm); }

/* show more: the Local Authors pill */
.ocr-more { text-align: center; margin: 18px 0 6px; }
.ocr-more__btn { font-size: var(--fs-md); font-weight: 700; color: var(--ocpl-blue-dark); background: var(--white); border: 1px solid var(--ocpl-blue-dark); border-radius: var(--radius-pill, 999px); padding: 10px 22px; cursor: pointer; font-family: inherit; }
.ocr-more__btn:hover { background: var(--ocpl-blue-pale); }

/* browse chips (books, decades) */
.dds-browse, .esr-browse { display: flex; flex-wrap: wrap; gap: 8px; list-style: none; padding: 0; margin: 8px 0 0; }
.dds-browse a, .esr-browse a { display: inline-block; padding: 6px 13px; border: 1px solid var(--ocpl-blue-light); border-radius: var(--radius-pill); background: var(--white); font-size: var(--fs-sm); font-weight: 600; color: var(--ocpl-blue-dark); text-decoration: none; }
.dds-browse a:hover, .esr-browse a:hover { background: var(--ocpl-blue-pale); }
.dds-browse span, .esr-browse span { font-weight: 400; font-size: var(--fs-xs); color: var(--text-light, var(--text-mid)); }
.dds-browse a[aria-current], .esr-browse a[aria-current] { background: var(--ocpl-blue); border-color: var(--ocpl-blue); color: var(--white); }
.dds-browse a[aria-current] span, .esr-browse a[aria-current] span { color: var(--white); }

/* spacing helpers that replace the templates' inline styles */
.dds-wrap h2.ocr-first, .esr-wrap h2.ocr-first { margin-top: 0; }
.ocr-gap { margin-bottom: 18px; }
.ocr-gap-top { margin-top: 18px; }

/* notices */
.esr-note { background: var(--ocpl-blue-pale); border-left: 4px solid var(--ocpl-blue); padding: 12px 16px; border-radius: 0 var(--radius-md) var(--radius-md) 0; font-size: var(--fs-sm); margin: 0 0 18px; }
.dds-small, .dds-credit, .esr-small { font-size: var(--fs-sm); color: var(--text-mid); }

/* a record's page */
.dds-facts, .esr-facts { display: grid; grid-template-columns: minmax(0, 11em) minmax(0, 1fr); gap: 8px 18px; margin: 0 0 8px; }
.dds-facts dt, .esr-facts dt { font-size: var(--fs-xs); font-weight: 700; text-transform: uppercase; letter-spacing: .06em; color: var(--ocpl-blue-dark); padding-top: 3px; }
.dds-facts dd, .esr-facts dd { margin: 0; min-width: 0; overflow-wrap: anywhere; }
@media (max-width: 600px) { .dds-facts, .esr-facts { grid-template-columns: minmax(0, 1fr); gap: 2px; } .dds-facts dd, .esr-facts dd { margin-bottom: 10px; } }
.dds-abs { margin: 0 0 6px; padding: 14px 18px; border-left: 4px solid var(--ocpl-blue); background: var(--ocpl-blue-pale); border-radius: 0 var(--radius-md) var(--radius-md) 0; font-size: 1.05rem; line-height: 1.6; overflow-wrap: anywhere; }
.dds-notes li, .esr-src li { margin: 0 0 8px; }
.dds-fold { margin: 22px 0 0; border: 1px solid var(--ocpl-blue-light); border-radius: var(--radius-md); padding: 0 16px; }
.dds-fold summary { cursor: pointer; padding: 12px 0; font-weight: 700; color: var(--ocpl-blue-dark); }
.dds-fold[open] { padding-bottom: 14px; }
.dds-pn, .esr-pn { display: flex; justify-content: space-between; gap: 12px; flex-wrap: wrap; margin: 28px 0 0; padding-top: 14px; border-top: 1px solid var(--ocpl-blue-light); font-size: var(--fs-sm); }
.dds-rows { list-style: none; margin: 0; padding: 0; border-top: 1px solid var(--ocpl-blue-light); }
.dds-rows li { padding: 8px 0; border-bottom: 1px solid var(--ocpl-blue-light); font-size: var(--fs-sm); display: grid; grid-template-columns: minmax(0, 6.5em) minmax(0, 1fr); gap: 10px; overflow-wrap: anywhere; }
.dds-rows li span { color: var(--text-mid); }
.dds-rows a { font-weight: 700; color: var(--heading); }
.esr-people, .esr-mtable { width: 100%; border-collapse: collapse; font-size: var(--fs-sm); }
.esr-people th, .esr-people td { text-align: left; padding: 8px 10px; border-bottom: 1px solid var(--ocpl-blue-light); vertical-align: top; }
.esr-people th, .esr-mtable thead th { font-size: var(--fs-xs); font-weight: 700; text-transform: uppercase; letter-spacing: .06em; color: var(--ocpl-blue-dark); }
.esr-people td:first-child { font-weight: 700; }
.esr-tablewrap { overflow-x: auto; max-width: 100%; }
.esr-letters { display: flex; flex-wrap: wrap; gap: 4px; list-style: none; padding: 0; margin: 0 0 14px; }
.esr-letters a { display: inline-block; min-width: 2.2em; text-align: center; padding: 4px 6px; border-radius: var(--radius-md); font-weight: 700; text-decoration: none; color: var(--ocpl-blue-dark); }
.esr-letters a:hover { background: var(--ocpl-blue-pale); }
.esr-mtable th, .esr-mtable td { text-align: left; padding: 6px 8px; border-bottom: 1px solid var(--ocpl-blue-light); }
.esr-mtable h3 { margin: 0; }
.esr-mtable tr.esr-letter th { padding-top: 22px; font-family: var(--font-display); font-size: 1.15rem; color: var(--heading); scroll-margin-top: calc(var(--oci-sticky-top, 103px) + 12px); }

/* the hub's cards */
.rh-cards { display: grid; grid-template-columns: repeat(auto-fit, minmax(min(100%, 330px), 1fr)); gap: 18px; }
.rh-card { border: 1px solid var(--ocpl-blue-light); border-top: 4px solid var(--ocpl-blue); border-radius: var(--radius-lg); background: var(--white); padding: 20px 22px; display: flex; flex-direction: column; gap: 8px; min-width: 0; }
.rh-card--ens { border-top-color: var(--ocpl-orange-dark, var(--ocpl-orange)); }
.rh-card h2 { margin: 0; font-family: var(--font-display); font-size: 1.3rem; line-height: 1.25; }
.rh-card h2 a { color: var(--heading); text-decoration: none; }
.rh-card h2 a:hover { color: var(--ocpl-blue); text-decoration: underline; }
.rh-card p { margin: 0; line-height: 1.55; }
.rh-card .rh-n { font-size: var(--fs-sm); font-weight: 700; color: var(--heading); }
.rh-card .rh-links { font-size: var(--fs-sm); margin-top: auto; padding-top: 6px; display: flex; flex-wrap: wrap; gap: 4px 16px; }
.rh-card .rh-links a { font-weight: 700; color: var(--ocpl-blue-dark); }
.rh-more { margin-top: 32px; max-width: 72ch; }
.rh-more h2 { font-size: var(--fs-lg, 1.2rem); margin: 0 0 8px; }
.rh-more li { margin: 0 0 6px; line-height: 1.55; }

/* touch: 44px targets, as the index search and the directories */
@media (pointer: coarse) {
  .dds-q, .esr-q, .rh-console input[type=search], .dds-sel select, .dds-sel input, .esr-sel select, .ocr-go, .ocr-more__btn { min-height: 44px; }
  .dds-browse a, .esr-browse a { padding: 10px 14px; }
}

/* research guides line under the search (2026-10-12) */
.rh-guides { margin: 10px 0 0; font-size: var(--fs-sm); color: var(--text-mid); }
.rh-guides a { font-weight: 700; }
.dds-streams, .dds-streams ul { list-style: none; margin: 0; padding: 0; }
.dds-streams ul { padding-left: 1.4em; border-left: 1px solid var(--ocpl-blue-light); margin: 4px 0 6px 4px; }
.dds-streams li { margin: 0 0 4px; }
.dds-nb { margin: 0; }
.dds-nb dt { font-weight: 700; margin: 14px 0 2px; scroll-margin-top: 120px; }
.dds-nb dd { margin: 0; overflow-wrap: anywhere; }

/* court minutes (2026-10-13) */
.cm-years { display: grid; grid-template-columns: minmax(0, 4em) minmax(0, 1fr); gap: 6px 14px; margin: 0 0 14px; }
.cm-years dt { font-weight: 700; } .cm-years dd { margin: 0; }
.cm-people { list-style: none; margin: 0; padding: 0; } .cm-people li { margin: 0 0 4px; }
.cm-sum { font-size: 1.05rem; }

/* deeds with several tracts (2026-10-13) */
.dds-tracts { margin: 0; padding-left: 1.3em; } .dds-tracts li { margin: 0 0 8px; }
.dds-tracts__ex { list-style: none; margin-left: -1.3em; color: var(--text-mid); }
