@font-face {
  font-family: 'OpenDyslexic';
  src: url('/fonts/OpenDyslexic-Regular.woff2') format('woff2');
  font-weight: 400;
  font-style: normal;
  font-display: swap;
}
@font-face {
  font-family: 'OpenDyslexic';
  src: url('/fonts/OpenDyslexic-Bold.woff2') format('woff2');
  font-weight: 700;
  font-style: normal;
  font-display: swap;
}
[data-reading-layout="dyslexia"] {
  font-family: 'OpenDyslexic', Arial, sans-serif !important;
  font-size: 20px !important;
  line-height: 1.7 !important;
  letter-spacing: .06em !important;
  word-spacing: .16em !important;
  text-align: left !important;
}
[data-reading-layout="dyslexia"][data-reading-layout] :is(p, label, figcaption, input, textarea, .task h2, [data-testid="question-text"]) {
  font-family: 'OpenDyslexic', Arial, sans-serif !important;
  font-size: 20px !important;
  line-height: 1.7 !important;
  letter-spacing: .06em !important;
  word-spacing: .16em !important;
  text-align: left !important;
  white-space: pre-line;
}
[data-reading-layout="dyslexia"] :is(.choices, fieldset, .mcq) { gap: 16px !important; }
[data-reading-layout="dyslexia"][data-reading-layout] .font-mono {
  font-family: monospace !important;
  letter-spacing: normal !important;
  word-spacing: normal !important;
  white-space: pre-wrap !important;
}
[data-reading-layout="large_print"],
[data-reading-layout="large_print"] :is(p, label, figcaption, input, textarea, [data-testid="question-text"]) {
  font-size: 20px !important;
  line-height: 1.6 !important;
}
[data-reading-layout="high_contrast"],
[data-reading-layout="high_contrast"] :is(p, label, figcaption, input, textarea, .task, .choice, .teacher) {
  color: #000 !important;
  background-color: #fff !important;
  border-color: #000 !important;
}
.reading-accessibility { display: grid; gap: 12px; margin: 0 0 20px; padding: 14px; border: 1px solid #53675b; border-radius: 10px; }
.reading-accessibility > div { display: flex; align-items: center; gap: 12px; }
.reading-instruction { white-space: pre-line; padding: 10px; border-left: 3px solid #34745b; }
.reading-accessibility label { border: 0; padding: 0; cursor: pointer; }
.reading-accessibility input { width: 22px; height: 22px; flex-shrink: 0; }
@media print { .reading-accessibility { display: none !important; } }
