/* GenteLaPrision v2.50.92 · Contraste, zoom, texto y preferencias visuales. */
html {
  -webkit-text-size-adjust: 100%;
  text-size-adjust: 100%;
}

:where(button, .button, input:not([type="checkbox"]):not([type="radio"]), select, textarea) {
  min-block-size: 2.75rem;
}

:where(p, li, dd, td, th, label, .flash, .chip, .badge) {
  overflow-wrap: anywhere;
}

[aria-invalid="true"] {
  border-style: solid;
  border-width: 2px;
  border-color: var(--color-danger);
  box-shadow: 0 0 0 2px var(--color-danger-surface);
}

.flash.error,
.flash.success,
.flash.warning,
.flash.info {
  border-inline-start-width: 4px;
  border-inline-start-style: solid;
}

.flash.error::before { content: "Error: "; font-weight: 800; }
.flash.success::before { content: "Correcto: "; font-weight: 800; }
.flash.warning::before { content: "Aviso: "; font-weight: 800; }
.flash.info::before { content: "Información: "; font-weight: 800; }

@media (max-width: 48rem) {
  :where(.admin-workspace-head, .admin-module-panel__head, .page-head, .section-head) {
    align-items: flex-start;
  }
  :where(.admin-workspace-head__actions, .page-actions, .form-actions) {
    max-width: 100%;
    flex-wrap: wrap;
  }
}

@media (prefers-reduced-motion: reduce) {
  html { scroll-behavior: auto; }
  :where(.notification-bell, .notification-badge, .attention-count, .directory-search__spinner, .pedia-live-status, .pedia-results-region) {
    animation: none;
    transition-duration: 0ms;
  }
}

@media (prefers-contrast: more) {
  :root {
    --color-text-secondary: #ded8ce;
    --color-text-muted: #c9c1b6;
    --color-border-default: #756b60;
    --color-border-control: #85796d;
  }
  :where(input, select, textarea, button, .button, .chip, .badge) {
    border-width: 2px;
  }
}

@media (forced-colors: active) {
  :where(a, button, input, select, textarea, summary, [tabindex]):focus-visible {
    outline: 3px solid Highlight;
    forced-color-adjust: auto;
  }
  :where(button, .button, input, select, textarea, .chip, .badge, .admin-role-badge) {
    border: 1px solid ButtonText;
    forced-color-adjust: auto;
  }
  :where(.notification-badge, .attention-count, .flash.error, .flash.success, .flash.warning, .flash.info) {
    forced-color-adjust: auto;
  }
}
