/* ==========================================================================
   AIRNSOLE TECH — consent checkbox
   --------------------------------------------------------------------------
   The one genuinely new form control added for data-consent compliance.
   Kept in its own file, loaded after styles.css, so the existing stylesheet
   stays untouched — this only adds a selector that didn't exist before,
   it never overrides one that did. Reuses the same tokens (ink, glass-edge,
   accent, space, transition) defined in styles.css so it reads as part of
   the same system rather than a bolted-on widget.
   ========================================================================== */

.consent {
  display: grid;
  grid-template-columns: auto minmax(0, 1fr);
  align-items: start;
  gap: 0.75rem;
}

.consent input[type="checkbox"] {
  /* Native control, not a custom-skinned one: it inherits the OS/browser's
     own keyboard and screen-reader behaviour for free, and `accent-color`
     is enough to bring it into the site's palette without reinventing
     checked/unchecked/focus states by hand. */
  width: 1.15rem;
  height: 1.15rem;
  margin-top: 0.15rem;
  accent-color: var(--accent, #1e3a8a);
  cursor: pointer;
  flex: none;
}

.consent label {
  font-size: 0.875rem;
  font-weight: 400;
  line-height: 1.55;
  color: var(--ink-secondary);
  cursor: pointer;
}

.consent label a {
  color: var(--ink-primary);
  text-decoration: underline;
  text-underline-offset: 2px;
  text-decoration-color: rgba(15, 23, 42, 0.35);
}

.consent label a:hover {
  text-decoration-color: currentColor;
}

.field.consent.is-invalid label {
  color: var(--ink-primary);
}

.field.consent.is-invalid input[type="checkbox"] {
  outline: 2px solid rgba(15, 23, 42, 0.35);
  outline-offset: 2px;
}
