/* Readability (founder, 2026-10-13). Loaded last on the home, /due, program pages and company record pages; rules are
   scoped to #main so they take precedence over the page stylesheets without !important. Measured by
   test/readability-browser.test.js: text contrast 4.5:1, body text 16px, other text 14px, lines at most 70 characters,
   no uppercase monospace labels, body links underlined on hover and focus only. Content and data are unchanged. */

/* Contrast: the primary button keeps dark text on its light background. */
#main a.home-cta-primary,#main a.home-cta-primary:hover,#main a.home-cta-primary:focus-visible{color:var(--accent)}
/* 2026-10-13 (brand copy): the second button keeps light text on the page background (16.8:1). */
#main a.home-cta-secondary,#main a.home-cta-secondary:hover,#main a.home-cta-secondary:focus-visible{color:var(--accent);text-decoration:none}

/* Labels set in a monospace uppercase face read in the page font. */
#main .home-eyebrow,#main .eyebrow,#main .ce-eyebrow,#main .due-hero .home-eyebrow,#main .home-how article>span{font-family:inherit;font-size:14px;letter-spacing:.02em;text-transform:none}

/* Body text: 16px. */
#main .change-table,#main .corrections-table,#main .due-table{font-size:16px}
#main .change-table th,#main .corrections-table th,#main .due-table th{font-size:14px}
#main p,#main li,#main dd,#main blockquote,#main td{font-size:16px;line-height:1.6}
#main .home-lede{font-size:max(17px,1em)}
#main .record-body p,#main .record-body li,#main .record-body dd{font-size:16px}
#main .home-due-intro,#main .home-windows-intro,#main .home-records-note,#main .home-audience,#main .home-launch-frame,#main .home-exists,
#main .home-records-request,#main .due-more,#main .sources-checked,#main .wording-change-summary,#main .window-countdown-line,
#main .intake-notice,#main .intake-fallback,#main .citation,#main .program-company,#main .home-top-line,#main .due-rules,#main .due-empty{font-size:16px}
#main .program-qa p,#main .program-qa li,#main .company-qa p,#main .company-qa li{font-size:16px}

/* Other text: at least 14px. */
#main small,#main q,#main dt,#main th,#main label,#main summary,#main .muted,#main .doc,#main .status,#main .due-review,
#main .home-due-wording,#main .home-due-status,#main .home-window-wording,#main .home-window-checked,#main .due-calendar,#main .due-calendar-note,
#main .window-countdown,#main .review-label,#main .last-checked,#main .home-window-title,#main .home-due-title{font-size:max(14px,1em)}
#main .home-due-wording,#main .home-due-status,#main .home-window-wording,#main .home-window-checked,#main .due-calendar-note{font-size:14px}
#main .change-table td small,#main .record-pair small{font-size:14px}

/* Line length: at most 70 characters. */
#main p,#main li,#main blockquote{max-width:70ch}
#main td p,#main td li{max-width:none}
#main p.home-wrap{max-width:70ch;margin-left:max(28px,calc((100% - 1180px) / 2));margin-right:auto;width:auto}
@media(max-width:640px){#main p.home-wrap{margin-left:16px;margin-right:16px}}

/* Body links: underlined on hover and focus only; buttons and card titles keep their own look. */
#main a{text-decoration:none}
#main a:hover,#main a:focus-visible{text-decoration:underline}
#main a:focus-visible{outline:2px solid currentColor;outline-offset:2px}

/* Program pages: the timing ladder under the h1 (the share card's lines), then the one-line summary; details fold. */
#main .timing-ladder{list-style:none;margin:16px 0 12px;padding:0;border-top:1px solid var(--line,var(--border))}
#main .timing-ladder li{display:flex;flex-direction:column;gap:4px;padding:12px 0;border-bottom:1px solid var(--line,var(--border));max-width:none}
#main .timing-ladder .ladder-quote{font-size:20px;line-height:1.35}
#main .timing-ladder .ladder-quote strong{text-decoration:underline;text-underline-offset:3px}
#main .timing-ladder .ladder-meta{font-size:14px;color:var(--muted,var(--text-2))}
#main .program-details{margin:8px 0 16px}
#main .program-details>summary{cursor:pointer;font-size:16px}

/* Home cards: the whole card is the link to the program page; other links in it stay clickable. */
#main .home-due-list li,#main .home-records-list li{position:relative}
#main .home-due-title,#main .home-record-title{text-decoration:none}
#main .home-due-title::after,#main .home-record-title::after{content:'';position:absolute;inset:0;border-radius:10px}
#main .home-due-list li a:not(.home-due-title),#main .home-due-list li .due-calendar-button,#main .home-records-list li a:not(.home-record-title){position:relative;z-index:1}
#main .home-due-list li:hover,#main .home-due-list li:focus-within{border-color:var(--accent)}
#main .home-all-records>summary{cursor:pointer}
#main .home-all-records>summary h2{display:inline;font-size:21px;font-weight:600}
