/* GMAP WCAG 2.2 — V983 Phase 7: form labels, error feedback, and validation visibility. */
.gmap-v983-error-summary {
  display: block;
  margin: 0 0 1rem;
  padding: 1rem 1.125rem;
  border: 2px solid #b42318;
  border-inline-start-width: 6px;
  border-radius: .5rem;
  background: #fff5f4;
  color: #741b16;
  font: inherit;
  line-height: 1.5;
  overflow-wrap: anywhere;
}
.gmap-v983-error-summary h2 {
  margin: 0 0 .5rem;
  color: #741b16;
  font-family: inherit;
  font-size: 1rem;
  font-weight: 700;
  line-height: 1.4;
}
.gmap-v983-error-summary ul { margin: 0; padding-inline-start: 1.35rem; }
.gmap-v983-error-summary li + li { margin-block-start: .25rem; }
.gmap-v983-error-summary a {
  color: #064eb0;
  text-decoration: underline;
  text-underline-offset: .12em;
  font-weight: 600;
}
.gmap-v983-error-summary a:focus-visible {
  outline: 3px solid #005fcc !important;
  outline-offset: 3px !important;
  box-shadow: 0 0 0 2px #fff !important;
}
.gmap-v983-field-error {
  display: block;
  margin: .35rem 0 .65rem;
  color: #8f1d18;
  font-family: inherit;
  font-size: .925em;
  font-weight: 600;
  line-height: 1.45;
  overflow-wrap: anywhere;
}
:where(input, select, textarea)[aria-invalid="true"] {
  border-color: #b42318 !important;
}
@media (forced-colors: active) {
  .gmap-v983-error-summary { border: 2px solid CanvasText; background: Canvas; color: CanvasText; }
  .gmap-v983-error-summary h2,
  .gmap-v983-field-error { color: CanvasText; }
  .gmap-v983-error-summary a { color: LinkText; }
  :where(input, select, textarea)[aria-invalid="true"] { border: 2px solid Mark !important; }
}
