/* CSP-friendly overrides for apply pages: make native radio/checkbox visible and large enough */

/* Generic label layout for radio/checkbox groups */
.container-apply section.apply-02 .radio-group .radio-box label,
.container-apply section.apply-02 .check-box label,
.container-apply section.apply-02 .check-box-group .check-box label {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  line-height: 1.4;
  cursor: pointer;
}

/* Some global styles hide native inputs; force show them in apply pages */
.container-apply section.apply-02 .check-box > input,
.container-apply section.apply-02 .check-box-group .check-box > input {
  display: inline-block !important;
  -webkit-appearance: auto;
  appearance: auto;
  width: 20px;
  height: 20px;
  margin: 2px 8px 2px 0;
  vertical-align: middle;
  background: none !important;
  border: initial;
}

/* Remove background sprite/padding from labels when native input is shown */
.container-apply section.apply-02 .check-box > input + label,
.container-apply section.apply-02 .check-box-group .check-box > input + label {
  background: none !important;
  padding-left: 0 !important;
}

/* Inputs nested inside label (alternative markup) */
.container-apply section.apply-02 .check-box > label input,
.container-apply section.apply-02 .check-box-group .check-box > label input,
.container-apply section.apply-02 .radio-box label input[type="radio"] {
  -webkit-appearance: auto !important;
  appearance: auto !important;
  width: 20px !important;
  height: 20px !important;
  margin: 2px 8px 2px 0 !important;
  vertical-align: middle !important;
  background: none !important;
  border: initial !important;
}

/* Native input sizing and color */
.container-apply section.apply-02 input[type="radio"],
.container-apply section.apply-02 input[type="checkbox"] {
  width: 20px;
  height: 20px;
  -webkit-appearance: auto; /* override any reset */
  appearance: auto;         /* override any reset */
  transform: scale(1.15);
  accent-color: #E13911; /* supported browsers */
  margin: 2px 6px 2px 2px;
  vertical-align: middle;
}

/* Focus ring for accessibility */
.container-apply section.apply-02 input[type="radio"]:focus-visible,
.container-apply section.apply-02 input[type="checkbox"]:focus-visible {
  outline: 2px solid #E13911;
  outline-offset: 2px;
}

/* Fallback when accent-color not supported */
@supports not (accent-color: auto) {
  .container-apply section.apply-02 input[type="radio"],
  .container-apply section.apply-02 input[type="checkbox"] {
    box-shadow: 0 0 0 2px #E13911 inset;
    background: #fff;
  }
  .container-apply section.apply-02 input[type="radio"] { border-radius: 50%; }
}

