.skip-link {
  position: absolute;
  top: 16px;
  left: 16px;
  z-index: 1000;
  padding: 12px 16px;
  border: 2px solid #111111;
  border-radius: 12px;
  background: #ffc928;
  color: #111111;
  text-decoration: none;
  transform: translateY(-160%);
}

.skip-link:focus,
.skip-link:focus-visible {
  transform: translateY(0);
}

.accessibility-toggle {
  -webkit-appearance: none;
  appearance: none;
  cursor: pointer;
  font: inherit;
}

a:focus-visible,
button:focus-visible,
[tabindex]:focus-visible {
  outline: 3px solid #ffc928;
  outline-offset: 4px;
}

@media (prefers-reduced-motion: reduce) {
  *,
  *::before,
  *::after {
    animation-duration: 0.01ms !important;
    animation-iteration-count: 1 !important;
    transition-duration: 0.01ms !important;
    scroll-behavior: auto !important;
  }
}

html[data-accessibility="on"] {
  color-scheme: light;
  --bg: #ffffff;
  --bg-soft: #ffffff;
  --surface: #ffffff;
  --surface-soft: #ffffff;
  --text: #111111;
  --muted: #111111;
  --accent: #111111;
  --accent-soft: rgba(0, 0, 0, 0.08);
  --border: rgba(0, 0, 0, 0.6);
  --ok: #111111;
  --warn: #111111;
  --danger: #111111;
}

html[data-accessibility="on"] body {
  background: #ffffff !important;
  color: #111111 !important;
  line-height: 1.7 !important;
}

html[data-accessibility="on"] body::before,
html[data-accessibility="on"] .logo-orbit,
html[data-accessibility="on"] .logo-fade {
  display: none !important;
}

html[data-accessibility="on"] *,
html[data-accessibility="on"] *::before,
html[data-accessibility="on"] *::after {
  text-shadow: none !important;
  box-shadow: none !important;
  animation: none !important;
  transition: none !important;
}

html[data-accessibility="on"] body,
html[data-accessibility="on"] p,
html[data-accessibility="on"] li,
html[data-accessibility="on"] td,
html[data-accessibility="on"] th,
html[data-accessibility="on"] a,
html[data-accessibility="on"] button,
html[data-accessibility="on"] .hero-slogan,
html[data-accessibility="on"] .logo-caption,
html[data-accessibility="on"] .logo-subcaption,
html[data-accessibility="on"] .section-main,
html[data-accessibility="on"] .section-note,
html[data-accessibility="on"] .note {
  font-size: 18px !important;
  line-height: 1.7 !important;
}

html[data-accessibility="on"] .kicker,
html[data-accessibility="on"] .section-title {
  font-size: 16px !important;
  letter-spacing: 0.08em !important;
}

html[data-accessibility="on"] h1 {
  font-size: clamp(40px, 5vw, 52px) !important;
  line-height: 1.2 !important;
}

html[data-accessibility="on"] h2 {
  font-size: 30px !important;
  line-height: 1.3 !important;
}

html[data-accessibility="on"] .card,
html[data-accessibility="on"] .section,
html[data-accessibility="on"] .logo-block,
html[data-accessibility="on"] table.info,
html[data-accessibility="on"] .registry,
html[data-accessibility="on"] .copy-toast {
  background: #ffffff !important;
  color: #111111 !important;
  border: 2px solid #111111 !important;
}

html[data-accessibility="on"] .brand-dot {
  background: #111111 !important;
}

html[data-accessibility="on"] .logo-a28 .a,
html[data-accessibility="on"] .logo-a28 .n {
  color: #111111 !important;
}

html[data-accessibility="on"] a,
html[data-accessibility="on"] .file-link,
html[data-accessibility="on"] .toc a {
  color: #111111 !important;
  text-decoration: underline !important;
  text-underline-offset: 0.18em;
  border-bottom: none !important;
}

html[data-accessibility="on"] .btn-primary,
html[data-accessibility="on"] .btn-ghost,
html[data-accessibility="on"] .domain a,
html[data-accessibility="on"] .domain button,
html[data-accessibility="on"] .main-nav a,
html[data-accessibility="on"] .main-nav button,
html[data-accessibility="on"] .hero-meta .pill {
  background: #ffffff !important;
  color: #111111 !important;
  border: 2px solid #111111 !important;
}

html[data-accessibility="on"] .domain a[aria-current="page"],
html[data-accessibility="on"] .main-nav a[aria-current="page"],
html[data-accessibility="on"] .accessibility-toggle[aria-pressed="true"] {
  background: #111111 !important;
  color: #ffffff !important;
}

html[data-accessibility="on"] .status,
html[data-accessibility="on"] .status-value,
html[data-accessibility="on"] .status-absent {
  background: #ffffff !important;
  color: #111111 !important;
  border: 2px solid #111111 !important;
}

html[data-accessibility="on"] .copy-toast {
  background: #111111 !important;
  color: #ffffff !important;
}

html[data-accessibility="on"] .skip-link {
  background: #ffffff;
  color: #111111;
}

html[data-accessibility="on"] a:focus-visible,
html[data-accessibility="on"] button:focus-visible,
html[data-accessibility="on"] [tabindex]:focus-visible {
  outline: 3px solid #111111;
}
