/* Sky Island Educational Evaluations — global mode rules only.
   Layout/visual styling lives inline in the .dc.html pages. */

html { scroll-behavior: smooth; }
body { margin: 0; }
img { max-width: 100%; }

/* ---- Accessibility: text size (all page type is rem-based) ---- */
html[data-si-text="lg"] { font-size: 112.5%; }
html[data-si-text="xl"] { font-size: 125%; }

/* ---- Accessibility: high contrast (pages read var(--si-*, fallback)) ---- */
html[data-si-contrast="1"] {
  --si-ink: #000000;
  --si-mut: #1a1a1a;
  --si-navy: #021627;
  --si-green: #041c11;
  --si-cream: #ffffff;
  --si-ivory: #ffffff;
  --si-sky: #ffffff;
  --si-tan: #7a5410;
  --si-lite: #ffffff;
  --si-lmut: #f2f2f2;
  --si-line: #555555;
}

/* ---- Accessibility: dyslexia-friendly reading mode ---- */
html[data-si-dys="1"] body,
html[data-si-dys="1"] button,
html[data-si-dys="1"] input,
html[data-si-dys="1"] select,
html[data-si-dys="1"] textarea,
html[data-si-dys="1"] h1,
html[data-si-dys="1"] h2,
html[data-si-dys="1"] h3,
html[data-si-dys="1"] h4,
html[data-si-dys="1"] p,
html[data-si-dys="1"] a,
html[data-si-dys="1"] li,
html[data-si-dys="1"] span,
html[data-si-dys="1"] label,
html[data-si-dys="1"] div {
  font-family: "Atkinson Hyperlegible", Arial, Verdana, sans-serif !important;
  letter-spacing: 0.025em !important;
  text-align: left !important;
}
html[data-si-dys="1"] p,
html[data-si-dys="1"] li { line-height: 1.8 !important; }

/* ---- Accessibility: reduced motion ---- */
html[data-si-motion="1"] *,
html[data-si-motion="1"] *::before,
html[data-si-motion="1"] *::after {
  animation: none !important;
  transition: none !important;
  scroll-behavior: auto !important;
}
@media (prefers-reduced-motion: reduce) {
  *, *::before, *::after { animation: none !important; transition: none !important; }
  html { scroll-behavior: auto; }
}

/* ---- Default link colors (user-added links inherit these) ---- */
a { color: #0a4d7a; }
a:hover { color: #062b49; }

/* ---- Visible focus ---- */
:focus-visible { outline: 3px solid #c7a16a; outline-offset: 2px; border-radius: 2px; }

/* ---- Responsive visibility helpers ---- */
[data-show-m] { display: none !important; }
@media (max-width: 960px) {
  [data-hide-m] { display: none !important; }
  [data-show-m] { display: flex !important; }
}
@media (max-width: 640px) {
  [data-hide-s] { display: none !important; }
}
