.mod-fees [hidden] {
    display: none !important;
}

.mod-fees__result:focus-visible {
    outline: 3px solid currentColor;
    outline-offset: 0.25rem;
}

.mod-fees__result table {
    vertical-align: middle;
}

.mod-fees [data-row-total],
.mod-fees [data-session-total],
.mod-fees [data-year-total] {
    white-space: nowrap;
}

.mod-fees [data-course-choice] {
    min-width: 14rem;
}

@media (min-width: 992px) {
    .mod-fees__form-layout:has(form.d-none) .mod-fees__disclaimer {
        width: 100%;
    }
}

.mod-fees__course-choice:invalid {
    background-color: var(--bs-danger-bg-subtle, #f8d7da);
    border-color: var(--bs-danger-border-subtle, #f1aeb5);
}

.mod-fees__course-choice:valid {
    background-color: var(--bs-body-bg, #fff);
}
