/* Shared by both editions. Deliberately excludes all reading-tool controls. */
body .site-header nav { flex-wrap: wrap; gap: .5rem 1.25rem; }
body .site-header nav a { display: inline-flex; align-items: center; min-height: 44px; line-height: 1.5; }
body .hero { min-height: auto; padding-block: clamp(3rem, 6vw, 5rem); gap: clamp(2rem, 4vw, 4rem); }
body .hero > *, body .section-heading > *, body .book-card, body .issue-card { min-width: 0; }
body .hero h1 { font-size: clamp(2.4rem, 5.5vw, 5.5rem); line-height: 1.22; letter-spacing: -.025em; text-wrap: balance; }
html[lang=mai] body .hero h1 { line-height: 1.45; letter-spacing: 0; }
body .section-heading h2, body .reader-copy h2, body .about-section h2 { line-height: 1.3; text-wrap: balance; }
html[lang=mai] body :is(.section-heading h2, .reader-copy h2, .about-section h2, .catalogue-title h3) { line-height: 1.5; letter-spacing: 0; }
body .hero-actions { gap: .75rem; margin-block: 1.5rem; }
body .hero-actions .button { min-height: 44px; }
body .catalogue, body .catalogue.authorwise { grid-template-columns: repeat(auto-fit, minmax(min(100%, 250px), 1fr)); gap: 1.25rem; }
body .book-card, body .issue-card { padding: 1.5rem; border-radius: 8px; gap: .5rem; }
body .book-card h3, body .issue-card h3 { line-height: 1.6; overflow-wrap: anywhere; margin-block: .5rem; }
body .book-card p { font-size: .875rem; line-height: 1.7; }
/* Author styles must not reveal exhausted pagination controls. */
#moreBooks[hidden], #moreIssues[hidden] { display: none !important; }
body .book-card .book-links { gap: .5rem; }
body .book-card .book-links a { min-height: 44px; display: inline-flex; align-items: center; padding: .5rem .75rem; font-size: .8rem; }
body .catalogue-title h3 { line-height: 1.35; }
body .view-switcher, body .stage-links, body .rangmanch-controls { gap: .65rem; }
body .view-chip, body .stage-links a, body .stage-links button, body .rangmanch-controls button { min-height: 44px; }
body .catalogue-ledger { gap: .75rem; }
body .source-chip { min-width: 0; gap: .25rem; }
body .source-chip span { line-height: 1.6; }
body .global-search input { min-width: 0; font-size: 1rem; }
body .filterbar { padding: 1rem; border: 1px solid var(--line); border-radius: 8px; gap: .75rem; }
body .filterbar :is(input, select, button) { min-width: 0; max-width: 100%; min-height: 48px; }
body .filterbar input { flex: 1 1 15rem; }
body .media-accessibility-panel { max-width: 1120px; margin: 1.5rem auto; padding: clamp(1rem, 3vw, 2rem); border-radius: 8px; }
body .media-accessibility-panel h2 { margin-top: 0; line-height: 1.4; font-size: 1.35rem; }
body .media-accessibility-panel p { max-width: 85ch; line-height: 1.75; }
body footer { flex-wrap: wrap; gap: 1rem 2rem; line-height: 1.75; }
body footer a { display: inline-flex; align-items: center; min-height: 44px; overflow-wrap: anywhere; }
body .crumbs, body .catalogue-nav { gap: .5rem 1rem; line-height: 1.7; }
body .crumbs a, body .catalogue-nav a { display: inline-flex; align-items: center; min-height: 44px; }
body .archive-access-note { margin-block: 1.5rem; line-height: 1.75; }
body .media-grid a { border-radius: 8px; }
body .media-grid h3 { line-height: 1.4; overflow-wrap: anywhere; }
@media (max-width: 760px) {
  body .media-accessibility-panel { margin: 1rem; }
  body .filterbar :is(input, select, button) { flex: 1 1 100%; width: 100%; }
  body .hero { grid-template-columns: minmax(0, 1fr); padding-inline: 1.25rem; }
  body .hero-art { max-width: 30rem; margin-inline: auto; }
  body .section-heading.split { flex-wrap: wrap; gap: 1rem; }
  body .catalogue, body .catalogue.authorwise { grid-template-columns: minmax(0, 1fr); }
  body .catalogue-ledger { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  body .rangmanch-heading { flex-wrap: wrap; }
  body .rangmanch-heading > a { flex-shrink: 1; }
  body .criticism-archive { padding: 1.25rem; }
  body .archive-player { min-width: 0; }
}
