.kl-reference { --ref-ink:#082b3d; --ref-muted:#4c626d; --ref-line:#cfdee5; --ref-soft:#f2f7fa; --ref-link:#007b99; color:var(--ref-ink); min-width:0; scroll-margin-top:160px; }
.dark-mode .kl-reference { --ref-ink:#edf5f8; --ref-muted:#bfd0da; --ref-line:#365564; --ref-soft:#103347; --ref-link:#66d5eb; }
.kl-reference h2,.kl-reference h3,.kl-reference strong,.kl-reference summary { color:var(--ref-ink); letter-spacing:0; }
.kl-reference p,.kl-reference li,.kl-reference figcaption { color:var(--ref-muted); }
.kl-reference a { color:var(--ref-link); text-underline-offset:3px; }
.kl-reference h2 { font-size:26px; line-height:1.3; margin:0 0 18px; }
.kl-reference h3 { font-size:21px; }
.kl-reference .ref-note { font-size:14px; line-height:1.65; }
.ref-models { margin:0 0 22px; padding-left:21px; columns:2; column-gap:32px; }
.ref-models li { break-inside:avoid; margin-bottom:8px; overflow-wrap:anywhere; }
.ref-model-details { margin:0 0 24px; border-block:1px solid var(--ref-line); padding:12px 0; }
.ref-model-details summary { cursor:pointer; font-weight:700; padding:8px 0; }
.ref-model-details[open] summary { margin-bottom:14px; }
.ref-gallery { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:24px; margin:24px 0; }
.ref-gallery:has(> :only-child) { grid-template-columns:minmax(0,640px); }
.ref-photo { margin:0; min-width:0; }
.ref-photo a { display:block; }
.ref-photo img { display:block; width:100%; height:auto; max-height:560px; object-fit:contain; background:var(--ref-soft); border-radius:4px; }
.ref-photo figcaption { font-size:14px; line-height:1.6; padding-top:12px; }
.ref-photo figcaption span,.ref-photo figcaption strong { display:block; margin-bottom:4px; }
.ref-collection { padding-block:38px; border-bottom:1px solid var(--ref-line); scroll-margin-top:160px; }
.ref-collection:first-child { padding-top:0; }
.ref-collection .ref-meta { font-size:15px; margin-bottom:14px; }
.ref-county-title { border-bottom:3px solid #ffb51f; padding:16px 0; margin-top:38px!important; }
.ref-directory { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:32px; }
.ref-directory ul { list-style:none; padding:0; margin:0; }
.ref-directory li { border-bottom:1px solid var(--ref-line); }
.ref-directory li a { display:flex; align-items:center; justify-content:space-between; gap:12px; padding:12px 0; min-height:48px; }
.ref-directory small { color:var(--ref-muted); text-align:right; flex-shrink:0; }
.ref-county-label { margin:24px 0 8px!important; font-weight:700; }
.ref-search { display:flex; flex-wrap:wrap; gap:10px; max-width:680px; margin:24px 0 6px; }
.ref-search label { flex-basis:100%; font-weight:700; }
.ref-search input { min-width:0; width:240px; flex:1; border:1px solid var(--ref-line); background:var(--area-paper,#fff); color:var(--ref-ink); border-radius:4px; padding:12px; }
.ref-search button { min-width:48px; height:50px; border:1px solid var(--ref-line); border-radius:4px; background:var(--ref-soft); color:var(--ref-ink); cursor:pointer; font-size:24px; }
.ref-search-status { font-size:14px; }
.ref-jumps { display:flex; flex-wrap:wrap; gap:12px 26px; margin:24px 0; }
.ref-jumps a { padding:6px 0; }
.ref-evidence-band { border-block:1px solid var(--ref-line); padding:26px 0; margin:26px 0 0; }
.ref-evidence-band p:last-child { margin-bottom:0; }
.ref-legacy { margin:28px 0; }
.ref-legacy .ref-models { columns:1; }
.ref-legacy .ref-gallery { grid-template-columns:minmax(0,1fr); }
@media(max-width:900px) { .ref-directory { grid-template-columns:repeat(2,minmax(0,1fr)); } }
@media(max-width:600px) { .ref-directory,.ref-gallery { grid-template-columns:minmax(0,1fr); } .ref-models { columns:1; } .kl-reference h2 { font-size:24px; } .ref-collection { scroll-margin-top:145px; } }
