/* CPD and registration form fixes: scoped; no global input or layout overrides. */
.wh-interest-admin-settings label.check,
.wh-professional-fields label.check {
    display: flex !important;
    align-items: flex-start;
    gap: 0.8rem;
    width: 100%;
    min-height: 2.75rem;
    flex-direction: row !important;
    justify-content: flex-start !important;
    text-align: left;
}
.wh-interest-admin-settings label.check > input[type="checkbox"] {
    width: 1.15rem !important;
    min-width: 1.15rem;
    height: 1.15rem;
    margin: 0.14rem 0 0;
    padding: 0;
    flex: 0 0 auto;
}
.wh-interest-admin-settings label.check { margin: .55rem 0; }

/* Account signup: a compact checkbox sits beside its entire consent message.
   Overrides only the affected option; never changes other form controls. */
body.wh-v4 .hub-form fieldset.wh-marketing-consent {
    display: block !important;
    min-width: 0;
    width: 100%;
}
body.wh-v4 .hub-form .wh-marketing-consent > label.wh-marketing-option {
    display: flex !important;
    flex-direction: row !important;
    align-items: flex-start !important;
    justify-content: flex-start !important;
    gap: 12px !important;
    padding: 14px 16px;
    width: 100%;
    margin: 0;
    border: 1px solid #dce7ed;
    border-radius: 11px;
    background: #f8fbfc;
    font-weight: 400 !important;
    line-height: 1.45;
    cursor: pointer;
    text-align: left;
}
body.wh-v4 .hub-form .wh-marketing-consent > label.wh-marketing-option > input[type="checkbox"] {
    display: block;
    appearance: auto;
    width: 18px !important;
    min-width: 18px !important;
    max-width: 18px !important;
    height: 18px !important;
    min-height: 18px !important;
    max-height: 18px !important;
    padding: 0 !important;
    margin: 2px 0 0 !important;
    border-radius: 3px;
    flex: 0 0 18px;
    box-shadow: none;
    cursor: pointer;
    accent-color: #021f2d;
}
body.wh-v4 .hub-form .wh-marketing-option-copy {
    display: block;
    min-width: 0;
    flex: 1 1 auto;
}
body.wh-v4 .hub-form .wh-marketing-option-title {
    display: block;
    font-size: 14px;
    font-weight: 600;
    color: #173c4c;
}
body.wh-v4 .hub-form .wh-marketing-option-help {
    display: block;
    margin-top: 5px;
    font-size: 13px;
    font-weight: 400;
    color: #607987;
}
body.wh-v4 .hub-form .wh-marketing-consent > label.wh-marketing-option:focus-within {
    border-color: #7996a3;
    outline: 2px solid rgba(2, 31, 45, .15);
    outline-offset: 2px;
}
@media (max-width: 540px) {
    body.wh-v4 .hub-form .wh-marketing-consent > label.wh-marketing-option {
        gap: 10px !important;
        padding: 12px;
    }
}

.wh-cpd-panel { padding: 1.25rem; margin: 1rem 0; border: 1px solid #d7e3e9; border-left: 4px solid #F6A220; border-radius: 14px; }
.wh-cpd-panel h3 { color: #021F2D; margin-top: 0; }
.wh-cpd-panel .wh-cpd-criteria { margin-top: .8rem; }
.wh-cpd-total { background: #f1f5f7; font-weight: 700; }
.wh-cpd-table { width: 100%; }
.wh-cpd-status { font-size: .9rem; color: #425b69; }
@media (max-width: 660px) { .wh-cpd-panel .two, .wh-professional-fields .two { display: grid; grid-template-columns: 1fr; } }

/* Keep CPD toggles beside their text, not separated by the generic grid-label/input rules.
   Scoped to the CPD panel so the rest of the wizard keeps its original layout. */
.webinar-create-page .wh-cpd-panel label.wh-cpd-checkbox {
    display: flex !important;
    flex-direction: row !important;
    justify-content: flex-start !important;
    align-items: flex-start;
    gap: 0.8rem;
    width: 100%;
    min-height: 2.75rem;
    margin: 0.55rem 0;
    text-align: left;
    cursor: pointer;
}
.webinar-create-page .wh-cpd-panel label.wh-cpd-checkbox > input[type="checkbox"] {
    width: 1.15rem !important;
    min-width: 1.15rem;
    height: 1.15rem;
    padding: 0;
    margin: 0.14rem 0 0;
    flex: 0 0 auto;
}
.webinar-create-page .wh-cpd-panel label.wh-cpd-checkbox > span {
    min-width: 0;
    flex: 1 1 auto;
    line-height: 1.5;
}
.webinar-create-page .wh-cpd-panel label.wh-cpd-checkbox > input[type="checkbox"]:focus-visible {
    outline: 2px solid #021F2D;
    outline-offset: 3px;
}

/* Keep the initial CPD form simple; advanced settings are still submitted and validated. */
.wh-cpd-panel .wh-cpd-advanced { border-top: 1px solid #dfebef; margin-top: 1rem; padding-top: .8rem; }
.wh-cpd-panel .wh-cpd-advanced > summary { cursor: pointer; color: #021F2D; font-weight: 800; padding: .35rem 0; }
.wh-cpd-panel .wh-cpd-advanced > summary:focus-visible { outline: 2px solid #F6A220; outline-offset: 3px; }
.wh-cpd-panel .wh-cpd-advanced > label { display: block; margin-top: .9rem; }
