.kn-page .header-inner { padding-block: 42px 34px; }
.kn-page h1 { font-size: clamp(1.65rem, 4vw, 2.7rem); }
.kn-page main { padding-bottom: 48px; }
.kn-page h2 { font-family: var(--font-serif); font-size: clamp(1.4rem, 3vw, 1.85rem); }
.kn-page h3 { line-height: 1.5; margin-block: .35em .65em; }
.kn-page h4 { margin-bottom: .4em; font-size: 1rem; }
.kn-page section { margin-block: 36px; }
.kn-page p { margin-block: .55em .85em; }
.kn-page [hidden] { display: none !important; }
.kn-page cite { font-style: italic; }
.kn-page code { overflow-wrap: anywhere; }
.kn-navigation { display: flex; flex-wrap: wrap; gap: 8px 22px; border-bottom: 1px solid var(--line); padding-block: 22px; }
.kn-navigation a { text-underline-offset: 5px; }
.kn-navigation [aria-current] { color: var(--accent); font-weight: 700; }
.kn-search-shortcut a { display: inline-block; padding: 10px 16px; background: var(--navy); color: #fff; border-radius: 3px; text-underline-offset: 4px; }
.kn-filters { scroll-margin-top: 20px; }
.kn-matches { margin-top: 18px; padding: 12px 16px; background: #f0f3f0; border-left: 3px solid var(--accent); font-size: .92rem; }
.kn-matches p:last-child { margin-bottom: 0; }
.kn-kicker, .kn-date, .kn-key { font-size: .85rem; color: var(--muted); }
.kn-kicker { letter-spacing: .05em; font-weight: 700; }
.kn-stats { display: grid; grid-template-columns: repeat(3, 1fr); margin-block: 26px; border: 1px solid var(--line); background: var(--white); }
.kn-stats a { display: grid; padding: 22px; text-decoration: none; border-right: 1px solid var(--line); }
.kn-stats a:last-child { border: 0; }
.kn-stats strong { font-family: var(--font-serif); font-size: 2.4rem; line-height: 1.4; color: var(--navy); }
.kn-stats span { text-decoration: underline; text-underline-offset: 4px; }
.kn-note { background: #eee6d5; border-left: 4px solid #a77c32; padding: 15px 20px; margin-block: 18px; }
.kn-note p:last-child { margin-bottom: 0; }
.kn-note h4 { margin-top: 0; }
.kn-chapters { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 14px; }
.kn-chapter, .kn-examples article { border: 1px solid var(--line); background: var(--white); padding: 20px 24px; }
.kn-section-links { display: grid; gap: 8px; padding-top: 10px; }
.kn-examples { display: grid; gap: 14px; }
.kn-definitions dt { color: var(--navy); font-weight: 700; margin-top: 18px; }
.kn-definitions dd { margin-left: 0; }
.kn-filters { display: grid; gap: 14px; grid-template-columns: repeat(2, minmax(0, 1fr)); background: var(--white); border: 1px solid var(--line); padding: 22px; margin-block: 22px 8px; }
.kn-filters label { display: grid; gap: 6px; font-size: .92rem; font-weight: 700; }
.kn-query { grid-column: 1 / -1; }
.kn-filters input, .kn-filters select { font: inherit; color: var(--ink); background: #fff; padding: 10px 12px; border: 1px solid #a7b0b8; width: 100%; min-width: 0; border-radius: 3px; }
.kn-filters button { font: inherit; background: var(--navy); color: #fff; padding: 10px 18px; border: 0; width: fit-content; cursor: pointer; border-radius: 3px; }
.kn-result { color: var(--muted); min-height: 1.8em; }
.kn-list { display: grid; gap: 20px; }
.kn-card { background: var(--white); border: 1px solid var(--line); padding: 26px 28px; overflow-wrap: anywhere; scroll-margin-top: 20px; }
.kn-card:target { border-color: var(--accent); box-shadow: 0 0 0 2px var(--accent); }
.kn-card details { border-top: 1px solid var(--line); margin-top: 18px; padding-top: 14px; }
.kn-page summary { cursor: pointer; color: var(--navy); font-weight: 700; }
.kn-page summary:hover { text-decoration: underline; }
.kn-card details[open] > summary { margin-bottom: 18px; }
.kn-badges { display: flex; flex-wrap: wrap; gap: 6px; }
.kn-badge { display: inline-block; background: #e8edf0; color: #23415a; padding: 3px 9px; font-size: .78rem; border-radius: 3px; }
.kn-later { background: #eee1d8; color: #75482c; }
.kn-inferred { background: #f0e5c9; color: #715526; }
.kn-byline { color: var(--muted); }
.kn-citation, .kn-location { font-size: .92rem; }
.kn-comparison-type { color: var(--accent); font-weight: 700; }
.kn-passage-pair { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 20px; margin-block: 20px; }
.kn-passage-pair > div { background: #f3f4f1; padding: 12px 18px; border-top: 2px solid #91a1ad; }
.kn-passage-pair h4 { margin-top: 0; }
.kn-sources { padding-left: 22px; }
.kn-sources p { font-size: .9rem; color: var(--muted); }
.kn-afterword-refs > li { margin-bottom: 18px; }
.kn-conventions { margin-block: 20px; }
@media (max-width: 640px) {
  .kn-page .header-inner { padding-block: 28px; }
  .kn-stats { grid-template-columns: 1fr; }
  .kn-stats a { grid-template-columns: 70px 1fr; align-items: center; padding: 12px 18px; border-right: 0; border-bottom: 1px solid var(--line); }
  .kn-stats strong { font-size: 2rem; }
  .kn-chapters, .kn-passage-pair, .kn-filters { grid-template-columns: 1fr; }
  .kn-card { padding: 20px 18px; }
  .kn-filters { padding: 16px; }
  .kn-note { padding: 12px 16px; }
}
@media print {
  .kn-filters, .kn-search-shortcut, .kn-navigation, .site-navigation { display: none; }
  .kn-card { break-inside: avoid; }
}
