/* One feedback language across Formtastic, Devise, native forms and React. */
/* The original generic message remains available if the enhancement cannot load. */
form > .signal-validation-summary ~ [data-signal-validation-fallback] {
  display: none;
}
form [data-signal-summary-covered] {
  display: none;
}
body.active_admin.logged_out .flash.signal-auth-guidance {
  padding: 12px 16px;
  border-color: var(--sg-rule);
  border-inline-start: 3px solid var(--sg-info);
  background: var(--sg-info-bg);
  color: var(--sg-info);
  font-size: 13px;
  line-height: 1.5;
}
body:is(.active_admin, .signal-sidekiq) form .signal-validation-summary {
  box-sizing: border-box;
  width: 100%;
  margin: 0 0 24px;
  padding: 16px 20px;
  border: 1px solid var(--sg-rule);
  border-inline-start: 3px solid var(--sg-danger);
  border-radius: var(--sg-radius-control, 3px);
  background: var(--sg-surface);
  color: var(--sg-text);
  box-shadow: none;
}
body:is(.active_admin, .signal-sidekiq) form .signal-validation-summary h2 {
  margin: 0 0 8px;
  padding: 0;
  border: 0;
  background: none;
  color: var(--sg-danger);
  font: 600 14px/1.5 var(--sg-font);
  text-transform: none;
  letter-spacing: normal;
}
body:is(.active_admin, .signal-sidekiq) form .signal-validation-summary ul {
  display: grid;
  gap: 4px;
  margin: 0;
  padding: 0;
  list-style: none;
}
body:is(.active_admin, .signal-sidekiq)
  form
  .signal-validation-summary
  ul
  > li {
  float: none;
  width: auto;
  min-height: 0;
  margin: 0;
  padding: 0;
  color: var(--sg-text);
  font-size: 13px;
  line-height: 1.6;
  overflow-wrap: anywhere;
}
body:is(.active_admin, .signal-sidekiq) form .signal-validation-summary a,
body:is(.active_admin, .signal-sidekiq)
  form
  .signal-validation-summary
  a:visited {
  display: inline;
  color: var(--sg-link);
  font-size: inherit;
  font-weight: 500;
  text-decoration: underline;
  text-underline-offset: 3px;
  text-decoration-thickness: 1px;
}
body:is(.active_admin, .signal-sidekiq) form .inline-errors,
body:is(.active_admin, .signal-sidekiq) form .custom_error,
body:is(.active_admin, .signal-sidekiq) form .signal-field-error,
body:is(.active_admin, .signal-sidekiq) form .signal-form-error {
  float: none;
  clear: both;
  box-sizing: border-box;
  width: auto;
  max-width: 100%;
  margin: 4px 0 0;
  padding: 0;
  border: 0;
  background: none;
  color: var(--sg-danger);
  font: 500 12px/1.5 var(--sg-font);
  overflow-wrap: anywhere;
}
body:is(.active_admin, .signal-sidekiq) form .custom_hint,
body:is(.active_admin, .signal-sidekiq) form .inline-hints {
  margin: 4px 0 0;
  color: var(--sg-muted);
  font-size: 12px;
  font-weight: 400;
  font-style: normal;
  line-height: 1.5;
}
body:is(.active_admin, .signal-sidekiq)
  form
  [aria-invalid="true"]:not([type="checkbox"]):not([type="radio"]),
body:is(.active_admin, .signal-sidekiq)
  form
  [data-signal-validation-field="error"]
  .select2-selection,
body:is(.active_admin, .signal-sidekiq)
  form
  [data-signal-validation-field="error"]
  [class$="-control"] {
  border-color: var(--sg-danger);
}
body:is(.active_admin, .signal-sidekiq)
  form
  [aria-invalid="true"]:focus-visible {
  outline: 2px solid var(--sg-focus);
  outline-offset: 2px;
}
body:is(.active_admin, .signal-sidekiq)
  form
  [data-signal-validation-field="error"]
  > label,
body:is(.active_admin, .signal-sidekiq) form li.error > label {
  color: var(--sg-text);
}
/* Formtastic's error state has its own high-specificity font/label reset. */
body.active_admin
  #edit_attachment
  input[aria-invalid="true"]:not([type="checkbox"]):not([type="radio"]),
body.active_admin #edit_attachment textarea[aria-invalid="true"],
body.active_admin
  #edit_attachment
  [data-signal-validation-field="error"]
  [class$="-control"] {
  border-color: var(--sg-danger);
}
body.active_admin form.formtastic fieldset ol > li.error > label {
  margin: 0 0 var(--sg-field-label-gap);
  padding: 0;
  color: var(--sg-muted);
  font: 500 var(--sg-text-sm) / 1.4 var(--sg-font);
}
body.active_admin form.formtastic fieldset ol > li.error > p.inline-errors {
  margin: var(--sg-field-help-gap) 0 0;
  padding: 0;
  font: 500 var(--sg-text-xs) / 1.5 var(--sg-font);
}
body:is(.active_admin, .signal-sidekiq)
  form
  .signal-validation-summary
  a:focus-visible {
  outline: 2px solid var(--sg-focus);
  outline-offset: 3px;
  border-radius: 2px;
}
@media (max-width: 600px) {
  body:is(.active_admin, .signal-sidekiq) form .signal-validation-summary {
    padding: 12px 14px;
    margin-bottom: 20px;
  }
  body:is(.active_admin, .signal-sidekiq) form .signal-validation-summary a {
    display: block;
    padding-block: 4px;
  }
}
