/* Only this checkbox label */
label[for="cahie_attestdxfdsasigned"] {
    font-weight: normal !important;
}

/* Only this checkbox label */
label[for="cahie_attestskillednursingfacility"] {
    font-weight: normal !important;
}

/* Only this checkbox label */
label[for="cahie_attestindependentpracticeassociation"] {
    font-weight: normal !important;
}

/* Only this checkbox label */
label[for="cahie_attestmedicalfoundation"] {
    font-weight: normal !important;
}

/* Only this checkbox label */
label[for="cahie_attestnonphysicianhealthprovider"] {
    font-weight: normal !important;
}

/* Only this checkbox label */
label[for="cahie_attesthealthcareserviceplanordisability"] {
    font-weight: normal !important;
}

/* Only this checkbox label */
label[for="cahie_attestlocalemsagency"] {
    font-weight: normal !important;
}

/* Only this checkbox label */
label[for="cahie_attestnotrequiredsignatorytype"] {
    font-weight: normal !important;
}

/* Reset: remove the broken flex rules from before */
#cahie_attestationreason label,
#cahie_attestationreason .radio {
    display: inline-block;
    vertical-align: top;
}

/* Radio button: fixed width, aligned to top, sits on the left */
#cahie_attestationreason input[type="radio"] {
    display: inline-block;
    vertical-align: top;
    margin: 4px 8px 0 0;   /* top nudge + gap to label */
    width: 16px;
    height: 16px;
}

/* Label: takes remaining width, wraps cleanly to the right of the radio */
#cahie_attestationreason label {
    display: inline-block;
    vertical-align: top;
    width: calc(100% - 10px);
    line-height: 1.4;
    margin-bottom: 20px;
    white-space: normal;
    position: relative;
    padding-left: 28px;
    cursor: default;
}

/* Hide the native radio button visually but keep it accessible */
#cahie_attestationreason input[type="radio"] {
    position: absolute;
    opacity: 0;
    width: 13px;
    height: 13px;
    margin: 0;
    pointer-events: none;
}

/* Label: make room on the left for the fake checkbox */
#cahie_attestationreason label {
    display: inline-block;
    vertical-align: top;
    width: calc(100% - 25px);
    line-height: 1.4;
    margin-bottom: 20px;
    white-space: normal;
    position: relative;
    padding-left: 22px;    /* was 28px — tightened */
    cursor: default;
}

/* Empty checkbox square — native Dataverse look */
#cahie_attestationreason label::before {
    content: "";
    position: absolute;
    left: 0;
    top: 3px;
    width: 13px;           /* was 16px — matches native */
    height: 13px;
    border: 1px solid #605e5c;
    background: #fff;
    box-sizing: border-box;
    border-radius: 2px;
    cursor: default;
}

/* Filled blue box when checked */
#cahie_attestationreason input[type="radio"]:checked + label::before {
    background: #0078d4;
    border-color: #0078d4;
}

/* White checkmark when checked */
#cahie_attestationreason input[type="radio"]:checked + label::after {
    content: "";
    position: absolute;
    left: 4px;
    top: 5px;
    width: 4px;
    height: 8px;
    border: solid #fff;
    border-width: 0 2px 2px 0;
    transform: rotate(45deg);
}

/* Focus ring for accessibility */
#cahie_attestationreason input[type="radio"]:focus + label::before {
    outline: 1px solid #0078d4;
    outline-offset: 1px;
}

/* Remove form border ONLY on the page with .no-form-border on body */
.no-form-border .entity-form,
.no-form-border .entity-form-container,
.no-form-border .section,
.no-form-border .crmEntityFormView,
.no-form-header .form-horizontal,
.no-form-border [class*="col-"] {
    border: none !important;
    box-shadow: none !important;
}

#dsaValidationSummary {
    background-color: #b00020 !important;
    color: #ffffff !important;
    border: 2px solid #7f0000 !important;
    border-left: 8px solid #7f0000 !important;
    border-radius: 6px !important;
    padding: 22px 28px !important;
    font-size: 1.5rem !important;
    line-height: 1.45 !important;
    font-weight: 700 !important;
    box-shadow: 0 4px 14px rgba(176, 0, 32, 0.35) !important;

    /* Full width — right edge lines up with the button */
    display: block !important;
    width: 100% !important;
    max-width: 100% !important;
    box-sizing: border-box !important;
    margin: 0 0 12px 0 !important;   /* small gap above the button */
}

#dsaValidationSummary .fa-info-circle {
    color: #ffffff !important;
    font-size: 1.8rem !important;
    margin-right: 12px !important;
    vertical-align: middle !important;
}

.dsa-modal-overlay {
  position: fixed;
  inset: 0;
  background: rgba(0, 0, 0, 0.55);
  z-index: 99999;
  display: flex;
  align-items: center;
  justify-content: center;
}
.dsa-modal-box {
  background: #fff;
  border-radius: 8px;
  padding: 30px 40px;
  box-shadow: 0 8px 24px rgba(0, 0, 0, 0.25);
  text-align: center;
  min-width: 320px;
  max-width: 90%;
}
.dsa-modal-spinner {
  width: 48px;
  height: 48px;
  margin: 0 auto 15px auto;
  border: 5px solid #e0e0e0;
  border-top-color: #0067b8;
  border-radius: 50%;
  animation: dsaSpin 0.9s linear infinite;
}
@keyframes dsaSpin { to { transform: rotate(360deg); } }
.dsa-modal-title { font-size: 16px; font-weight: 600; color: #333; margin-bottom: 5px; }
.dsa-modal-sub   { font-size: 13px; color: #666; }
