/* Bootstrap 3 to 5 compatibility fixes */

/* Between md and lg, make form column full width */
@media (min-width: 768px) and (max-width: 991.98px) {
    .col-md-6 {
        flex: 0 0 auto;
        width: 100%;
    }
    .offset-md-3 {
        margin-left: 0;
    }
}

/* At lg and above, restore BS3-equivalent widths */
@media (min-width: 992px) {
    .col-md-6 {
        flex: 0 0 auto;
        width: 50%;
    }
    .offset-md-3 {
        margin-left: 25%;
    }
}

/* Restore form-group spacing (BS3 had margin-bottom: 15px) */
.form-group {
    margin-bottom: 1rem;
}

/* Bold form labels (BS3 default) */
.form-group label,
label {
    font-weight: 700;
}


/* Ensure submit button has spacing above and clears properly */
.form-area .btn.float-end {
    margin-top: 1rem;
}

/* Clear float so footer divider appears on its own line */
.form-area::after {
    content: "";
    display: block;
    clear: both;
}

/* Restore Bootstrap 3 button sizing */
.btn {
    font-size: 14px;
    padding: 6px 12px;
}

/* Restore Bootstrap 3 theme button colors via BS5 custom properties */
.btn-primary {
    --bs-btn-color: #fff;
    --bs-btn-bg: #337ab7;
    --bs-btn-border-color: #2e6da4;
    --bs-btn-hover-color: #fff;
    --bs-btn-hover-bg: #265a88;
    --bs-btn-hover-border-color: #204d74;
    --bs-btn-active-color: #fff;
    --bs-btn-active-bg: #265a88;
    --bs-btn-active-border-color: #204d74;
    --bs-btn-disabled-color: #fff;
    --bs-btn-disabled-bg: #337ab7;
    --bs-btn-disabled-border-color: #2e6da4;
    background-image: linear-gradient(to bottom, #337ab7 0, #265a88 100%);
}
.btn-primary:hover,
.btn-primary:focus,
.btn-primary:active {
    background-image: linear-gradient(to bottom, #286090 0, #1f4f73 100%);
}

.btn-outline-secondary {
    --bs-btn-color: #333;
    --bs-btn-border-color: #ccc;
    --bs-btn-hover-color: #333;
    --bs-btn-hover-bg: #e6e6e6;
    --bs-btn-hover-border-color: #adadad;
    --bs-btn-active-color: #333;
    --bs-btn-active-bg: #e6e6e6;
    --bs-btn-active-border-color: #adadad;
    background-image: linear-gradient(to bottom, #fff 0, #e0e0e0 100%);
}
.btn-outline-secondary:hover,
.btn-outline-secondary:focus,
.btn-outline-secondary:active {
    background-image: linear-gradient(to bottom, #e0e0e0 0, #c8c8c8 100%);
}

.btn-success {
    --bs-btn-color: #fff;
    --bs-btn-bg: #5cb85c;
    --bs-btn-border-color: #4cae4c;
    --bs-btn-hover-color: #fff;
    --bs-btn-hover-bg: #449d44;
    --bs-btn-hover-border-color: #398439;
    --bs-btn-active-color: #fff;
    --bs-btn-active-bg: #449d44;
    --bs-btn-active-border-color: #398439;
    background-image: linear-gradient(to bottom, #5cb85c 0, #419641 100%);
}
.btn-success:hover,
.btn-success:focus,
.btn-success:active {
    background-image: linear-gradient(to bottom, #449d44 0, #357a35 100%);
}

.btn-danger {
    --bs-btn-color: #fff;
    --bs-btn-bg: #d9534f;
    --bs-btn-border-color: #d43f3a;
    --bs-btn-hover-color: #fff;
    --bs-btn-hover-bg: #c9302c;
    --bs-btn-hover-border-color: #ac2925;
    --bs-btn-active-color: #fff;
    --bs-btn-active-bg: #c9302c;
    --bs-btn-active-border-color: #ac2925;
    background-image: linear-gradient(to bottom, #d9534f 0, #c12e2a 100%);
}
.btn-danger:hover,
.btn-danger:focus,
.btn-danger:active {
    background-image: linear-gradient(to bottom, #c9302c 0, #a02622 100%);
}

.btn-warning {
    --bs-btn-color: #fff;
    --bs-btn-bg: #f0ad4e;
    --bs-btn-border-color: #eea236;
    --bs-btn-hover-color: #fff;
    --bs-btn-hover-bg: #ec971f;
    --bs-btn-hover-border-color: #d58512;
    --bs-btn-active-color: #fff;
    --bs-btn-active-bg: #ec971f;
    --bs-btn-active-border-color: #d58512;
    background-image: linear-gradient(to bottom, #f0ad4e 0, #eb9316 100%);
}
.btn-warning:hover,
.btn-warning:focus,
.btn-warning:active {
    background-image: linear-gradient(to bottom, #ec971f 0, #c77c11 100%);
}

.btn-info {
    --bs-btn-color: #fff;
    --bs-btn-bg: #5bc0de;
    --bs-btn-border-color: #46b8da;
    --bs-btn-hover-color: #fff;
    --bs-btn-hover-bg: #31b0d5;
    --bs-btn-hover-border-color: #269abc;
    --bs-btn-active-color: #fff;
    --bs-btn-active-bg: #31b0d5;
    --bs-btn-active-border-color: #269abc;
    background-image: linear-gradient(to bottom, #5bc0de 0, #2aabd2 100%);
}
.btn-info:hover,
.btn-info:focus,
.btn-info:active {
    background-image: linear-gradient(to bottom, #31b0d5 0, #2390b0 100%);
}

/* Card header colors to match BS3 panel-primary */
.card.border-primary > .card-header {
    background-color: #337ab7;
    border-color: #337ab7;
    color: #fff;
}

/* Footer section text sizing to match BS3 defaults */
.footer-section,
.footer-section p,
.footer-section li,
.footer-section td,
.footer-section th,
.footer-section strong,
.footer-section ol,
.footer-section ul {
    font-size: 0.875rem;
}
.footer-section h4 {
    font-size: 1.15rem;
}
.footer-section h5 {
    font-size: 1rem;
}
