/**
 * Shared site base — typography fallback + focus-visible (Phase 1 a11y)
 * Loaded on all user-facing HTML pages via lib/seo-html.cjs injection.
 * Does not change dashboard ops metric/status colors.
 */
html {
  font-family: Barlow, system-ui, -apple-system, "Segoe UI", Roboto, Arial, sans-serif;
}

body {
  font-family: inherit;
}

:focus {
  outline: none;
}

button:focus-visible,
a:focus-visible,
input:focus-visible,
select:focus-visible,
textarea:focus-visible,
summary:focus-visible,
[role="button"]:focus-visible,
[role="tab"]:focus-visible,
[role="menuitem"]:focus-visible,
[tabindex]:not([tabindex="-1"]):focus-visible {
  outline: 2px solid rgba(232, 119, 26, 0.88);
  outline-offset: 2px;
}

body.sd-dashboard button:focus-visible,
body.sd-dashboard a:focus-visible,
body.sd-dashboard input:focus-visible,
body.sd-dashboard select:focus-visible,
body.sd-dashboard textarea:focus-visible,
body.sd-dashboard summary:focus-visible,
body.sd-dashboard [role="button"]:focus-visible,
body.sd-dashboard [role="tab"]:focus-visible,
body.sd-dashboard [role="menuitem"]:focus-visible {
  outline: 2px solid rgba(232, 119, 26, 0.88);
  outline-offset: 2px;
}

/* Visually hidden — screen reader only (lookup.html pattern) */
.sr-only {
  position: absolute;
  width: 1px;
  height: 1px;
  padding: 0;
  margin: -1px;
  overflow: hidden;
  clip: rect(0, 0, 0, 0);
  white-space: nowrap;
  border: 0;
}
