.reading-controls {
  display: flex; flex-wrap: wrap; align-items: center; gap: .7rem 1rem;
  padding: .8rem 1.5rem; margin: 0 auto; max-width: 68rem;
  font: 1rem/1.5 system-ui, sans-serif; color: #16213e; background: #fff;
  border: 2px solid #3c4566;
}
.reading-controls label { display: flex; align-items: center; flex-wrap: wrap; gap: .45rem; font-weight: 600; }
.reading-controls select { font: inherit; color: #16213e; background: #fff; padding: .5rem; min-height: 44px; max-width: 100%; border: 2px solid #3c4566; }
.reading-controls select:focus-visible { outline: 3px solid #0066cc; outline-offset: 3px; }
@media screen {
  html[data-reading-size] { font-size: calc(var(--reading-base, 16px) * var(--reading-scale, 1)) !important; }
  html[data-reading-size="large"] { --reading-scale: 1.25; }
  html[data-reading-size="largest"] { --reading-scale: 1.5; }
  html[data-reading-size="large"] .resume-document { font-size: 14pt; line-height: 1.6; }
  html[data-reading-size="largest"] .resume-document { font-size: 17pt; line-height: 1.6; }
  html[data-reading-size]:not([data-reading-size="normal"]) .resume-document h1 { font-size: 1.8em; }
  html[data-reading-size]:not([data-reading-size="normal"]) .resume-document h2 { font-size: 1.3em; }
  html[data-reading-size]:not([data-reading-size="normal"]) .resume-document h3 { font-size: 1.1em; }
  html[data-reading-size]:not([data-reading-size="normal"]) header.site { flex-wrap: wrap; gap: 1rem; }
  html[data-reading-contrast="light"] { --reading-bg: #fff; --reading-ink: #000; --reading-link: #0044aa; }
  html[data-reading-contrast="dark"] { --reading-bg: #182923; --reading-ink: #eeeede; --reading-link: #ffdf66; color-scheme: dark; }
  html[data-reading-contrast]:not([data-reading-contrast="normal"]) body,
  html[data-reading-contrast]:not([data-reading-contrast="normal"]) body *:not(img):not(svg):not(path) {
    background-color: var(--reading-bg) !important; background-image: none !important;
    color: var(--reading-ink) !important; border-color: var(--reading-ink) !important;
    box-shadow: none !important;
  }
  html[data-reading-contrast]:not([data-reading-contrast="normal"]) a { color: var(--reading-link) !important; text-decoration: underline !important; }
  html[data-reading-contrast]:not([data-reading-contrast="normal"]) ::placeholder { color: var(--reading-ink) !important; opacity: 1; }
  html[data-reading-contrast]:not([data-reading-contrast="normal"]) :focus-visible { outline: 3px solid var(--reading-link) !important; outline-offset: 3px; }
  html[data-reading-contrast]:not([data-reading-contrast="normal"]) button { border: 2px solid var(--reading-ink) !important; }
  html[data-reading-contrast]:not([data-reading-contrast="normal"]) input { accent-color: var(--reading-link); }
}
@media (max-width: 700px) {
  .reading-controls { margin: .5rem; padding: .8rem; }
  .reading-controls label { width: 100%; }
  header.site nav.site { display: flex; flex-wrap: wrap; gap: .65rem; }
  .hero-with-art, .builder-intro { min-width: 0; }
}
@media print { .reading-controls { display: none !important; } }
