/*
 * RaceReach global Bootstrap button test overrides.
 *
 * Include after Bootstrap and after rr3_newbuttons.css.
 * This intentionally targets Bootstrap variant button classes globally.
 * It does not target plain .btn, so .btn-link keeps its normal link styling.
 * Currently included only when $isAdminDebug is true.
 */

.btn.btn-primary,
.btn.btn-secondary,
.btn.btn-default,
.btn.btn-outline-primary,
.btn.btn-outline-secondary,
a.btn.btn-primary,
a.btn.btn-secondary,
a.btn.btn-default,
a.btn.btn-outline-primary,
a.btn.btn-outline-secondary,
.btn-primary,
.btn-secondary,
.btn-default,
.btn-outline-primary,
.btn-outline-secondary {
    --bs-btn-color: #000000;
    --bs-btn-bg: #ffffff;
    --bs-btn-border-color: #9ca3af;
    --bs-btn-hover-color: #000000;
    --bs-btn-hover-bg: #ffffff;
    --bs-btn-hover-border-color: #000000;
    --bs-btn-active-color: #000000;
    --bs-btn-active-bg: #ffffff;
    --bs-btn-active-border-color: #000000;
    --bs-btn-disabled-color: #9ca3af;
    --bs-btn-disabled-bg: #f3f4f6;
    --bs-btn-disabled-border-color: #e5e7eb;

    color: #000000 !important;
    background-color: #ffffff !important;
    border: 3px solid #9ca3af !important;
    border-radius: 6px !important;
    margin: 4px 6px !important;
    padding: 7px 13px !important;
    font-weight: 400;
    box-shadow: none !important;
    text-decoration: none;
}

.btn.btn-primary:hover,
.btn.btn-primary:focus,
.btn.btn-secondary:hover,
.btn.btn-secondary:focus,
.btn.btn-default:hover,
.btn.btn-default:focus,
.btn.btn-outline-primary:hover,
.btn.btn-outline-primary:focus,
.btn.btn-outline-secondary:hover,
.btn.btn-outline-secondary:focus,
a.btn.btn-primary:hover,
a.btn.btn-primary:focus,
a.btn.btn-primary:visited,
a.btn.btn-secondary:hover,
a.btn.btn-secondary:focus,
a.btn.btn-secondary:visited,
a.btn.btn-default:hover,
a.btn.btn-default:focus,
a.btn.btn-default:visited,
a.btn.btn-outline-primary:hover,
a.btn.btn-outline-primary:focus,
a.btn.btn-outline-primary:visited,
a.btn.btn-outline-secondary:hover,
a.btn.btn-outline-secondary:focus,
a.btn.btn-outline-secondary:visited,
.btn-primary:hover,
.btn-primary:focus,
.btn-secondary:hover,
.btn-secondary:focus,
.btn-default:hover,
.btn-default:focus,
.btn-outline-primary:hover,
.btn-outline-primary:focus,
.btn-outline-secondary:hover,
.btn-outline-secondary:focus {
    color: #000000 !important;
    background-color: #ffffff !important;
    border-color: #000000 !important;
    box-shadow: none !important;
    text-decoration: none;
}

.btn-primary.active,
.btn-primary:active,
.btn-primary.show,
.btn-primary[aria-current="page"],
.btn-primary[aria-pressed="true"],
.btn-primary.active:hover,
.btn-primary.active:focus,
.btn-secondary.active,
.btn-secondary:active,
.btn-secondary.show,
.btn-secondary[aria-current="page"],
.btn-secondary[aria-pressed="true"],
.btn-secondary.active:hover,
.btn-secondary.active:focus,
.btn-default.active,
.btn-default:active,
.btn-default.show,
.btn-default[aria-current="page"],
.btn-default[aria-pressed="true"],
.btn-default.active:hover,
.btn-default.active:focus,
.btn-outline-primary.active,
.btn-outline-primary:active,
.btn-outline-primary.show,
.btn-outline-primary[aria-current="page"],
.btn-outline-primary[aria-pressed="true"],
.btn-outline-primary.active:hover,
.btn-outline-primary.active:focus,
.btn-outline-secondary.active,
.btn-outline-secondary:active,
.btn-outline-secondary.show,
.btn-outline-secondary[aria-current="page"],
.btn-outline-secondary[aria-pressed="true"],
.btn-outline-secondary.active:hover,
.btn-outline-secondary.active:focus,
.btn-check:checked + .btn-primary,
.btn-check:checked + .btn-secondary,
.btn-check:checked + .btn-default,
.btn-check:checked + .btn-outline-primary,
.btn-check:checked + .btn-outline-secondary,
.active .btn-primary,
.active .btn-secondary,
.active .btn-default,
.active .btn-outline-primary,
.active .btn-outline-secondary,
.show .btn-primary,
.show .btn-secondary,
.show .btn-default,
.show .btn-outline-primary,
.show .btn-outline-secondary,
.current .btn-primary,
.current .btn-secondary,
.current .btn-default,
.current .btn-outline-primary,
.current .btn-outline-secondary {
    color: #000000 !important;
    background-color: #f3f4f6 !important;
    border: 4px double #000000 !important;
    box-shadow: 0 1px 0 rgba(0, 0, 0, .18) !important;
}

.btn-primary.disabled,
.btn-primary:disabled,
.btn-secondary.disabled,
.btn-secondary:disabled,
.btn-default.disabled,
.btn-default:disabled,
.btn-outline-primary.disabled,
.btn-outline-primary:disabled,
.btn-outline-secondary.disabled,
.btn-outline-secondary:disabled,
fieldset:disabled .btn-primary,
fieldset:disabled .btn-secondary,
fieldset:disabled .btn-default,
fieldset:disabled .btn-outline-primary,
fieldset:disabled .btn-outline-secondary {
    color: #9ca3af !important;
    background-color: #f3f4f6 !important;
    border-color: #e5e7eb !important;
    opacity: 1;
}

.btn-secondary,
.btn-default,
.btn-outline-secondary {
    color: #000000 !important;
    background-color: #e5e7eb !important;
    border-color: #9ca3af !important;
}

.btn-secondary:hover,
.btn-secondary:focus,
.btn-default:hover,
.btn-default:focus,
.btn-outline-secondary:hover,
.btn-outline-secondary:focus {
    color: #000000 !important;
    background-color: #d1d5db !important;
    border-color: #000000 !important;
}

.btn-secondary.active,
.btn-secondary:active,
.btn-default.active,
.btn-default:active,
.btn-outline-secondary.active,
.btn-outline-secondary:active,
.btn-secondary[aria-current="page"],
.btn-secondary[aria-pressed="true"],
.btn-default[aria-current="page"],
.btn-default[aria-pressed="true"],
.btn-outline-secondary[aria-current="page"],
.btn-outline-secondary[aria-pressed="true"] {
    color: #000000 !important;
    background-color: #e5e7eb !important;
    border: 4px double #000000 !important;
}

a.btn.btn-primary,
a.btn.btn-primary:link,
a.btn.btn-primary:visited,
a.btn.btn-primary:hover,
a.btn.btn-primary:focus,
a.btn.btn-primary:active,
button.btn.btn-primary,
button.btn.btn-primary:hover,
button.btn.btn-primary:focus,
button.btn.btn-primary:active,
input.btn.btn-primary,
.btn.btn-primary,
.btn.btn-primary:hover,
.btn.btn-primary:focus,
.btn.btn-primary:active,
.btn.btn-primary.active {
    color: #000000 !important;
}

/* Final cascade guard: Bootstrap variants should be neutral unless explicitly active. */
a.btn.btn-primary,
a.btn.btn-primary:link,
a.btn.btn-primary:visited,
button.btn.btn-primary,
input.btn.btn-primary,
.btn.btn-primary,
a.btn.btn-secondary,
a.btn.btn-secondary:link,
a.btn.btn-secondary:visited,
button.btn.btn-secondary,
input.btn.btn-secondary,
.btn.btn-secondary,
a.btn.btn-default,
a.btn.btn-default:link,
a.btn.btn-default:visited,
button.btn.btn-default,
input.btn.btn-default,
.btn.btn-default,
a.btn.btn-outline-primary,
a.btn.btn-outline-primary:link,
a.btn.btn-outline-primary:visited,
button.btn.btn-outline-primary,
input.btn.btn-outline-primary,
.btn.btn-outline-primary {
    color: #000000 !important;
    background-color: #ffffff !important;
    border-color: #9ca3af !important;
}

a.btn.btn-outline-secondary,
a.btn.btn-outline-secondary:link,
a.btn.btn-outline-secondary:visited,
button.btn.btn-outline-secondary,
input.btn.btn-outline-secondary,
.btn.btn-outline-secondary {
    color: #000000 !important;
    background-color: #ffffff !important;
    border: 3px solid #9ca3af !important;
    border-radius: 6px !important;
    box-shadow: none !important;
    font-weight: 400 !important;
    text-decoration: none !important;
}

a.btn.btn-outline-primary:hover,
a.btn.btn-outline-primary:focus,
button.btn.btn-outline-primary:hover,
button.btn.btn-outline-primary:focus,
.btn.btn-outline-primary:hover,
.btn.btn-outline-primary:focus {
    color: #000000 !important;
    background-color: #ffffff !important;
    border-color: #000000 !important;
}

a.btn.btn-outline-secondary:hover,
a.btn.btn-outline-secondary:focus,
button.btn.btn-outline-secondary:hover,
button.btn.btn-outline-secondary:focus,
.btn.btn-outline-secondary:hover,
.btn.btn-outline-secondary:focus {
    color: #000000 !important;
    background-color: #ffffff !important;
    border-color: #000000 !important;
}

a.btn.btn-primary.active,
a.btn.btn-primary.active:hover,
a.btn.btn-primary.active:focus,
button.btn.btn-primary.active,
button.btn.btn-primary.active:hover,
button.btn.btn-primary.active:focus,
input.btn.btn-primary.active,
.btn.btn-primary.active,
.btn.btn-primary.active:hover,
.btn.btn-primary.active:focus,
.btn.btn-primary[aria-pressed="true"],
.btn.btn-primary[aria-current="page"],
a.btn.btn-secondary.active,
a.btn.btn-secondary.active:hover,
a.btn.btn-secondary.active:focus,
button.btn.btn-secondary.active,
button.btn.btn-secondary.active:hover,
button.btn.btn-secondary.active:focus,
input.btn.btn-secondary.active,
.btn.btn-secondary.active,
.btn.btn-secondary.active:hover,
.btn.btn-secondary.active:focus,
.btn.btn-secondary[aria-pressed="true"],
.btn.btn-secondary[aria-current="page"],
a.btn.btn-default.active,
a.btn.btn-default.active:hover,
a.btn.btn-default.active:focus,
button.btn.btn-default.active,
button.btn.btn-default.active:hover,
button.btn.btn-default.active:focus,
input.btn.btn-default.active,
.btn.btn-default.active,
.btn.btn-default.active:hover,
.btn.btn-default.active:focus,
.btn.btn-default[aria-pressed="true"],
.btn.btn-default[aria-current="page"],
a.btn.btn-outline-primary.active,
a.btn.btn-outline-primary.active:hover,
a.btn.btn-outline-primary.active:focus,
button.btn.btn-outline-primary.active,
button.btn.btn-outline-primary.active:hover,
button.btn.btn-outline-primary.active:focus,
input.btn.btn-outline-primary.active,
.btn.btn-outline-primary.active,
.btn.btn-outline-primary.active:hover,
.btn.btn-outline-primary.active:focus,
.btn.btn-outline-primary[aria-pressed="true"],
.btn.btn-outline-primary[aria-current="page"],
a.btn.btn-outline-secondary.active,
a.btn.btn-outline-secondary.active:hover,
a.btn.btn-outline-secondary.active:focus,
button.btn.btn-outline-secondary.active,
button.btn.btn-outline-secondary.active:hover,
button.btn.btn-outline-secondary.active:focus,
input.btn.btn-outline-secondary.active,
.btn.btn-outline-secondary.active,
.btn.btn-outline-secondary.active:hover,
.btn.btn-outline-secondary.active:focus,
.btn.btn-outline-secondary[aria-pressed="true"],
.btn.btn-outline-secondary[aria-current="page"] {
    color: #000000 !important;
    background-color: #f3f4f6 !important;
    border: 4px double #000000 !important;
    box-shadow: 0 1px 0 rgba(0, 0, 0, .18) !important;
    text-decoration: none !important;
}

/* Disabled buttons should read as unavailable, even after the active/final guards. */
a.btn.btn-primary.disabled,
a.btn.btn-primary:disabled,
button.btn.btn-primary.disabled,
button.btn.btn-primary:disabled,
input.btn.btn-primary.disabled,
input.btn.btn-primary:disabled,
.btn.btn-primary.disabled,
.btn.btn-primary:disabled,
a.btn.btn-secondary.disabled,
a.btn.btn-secondary:disabled,
button.btn.btn-secondary.disabled,
button.btn.btn-secondary:disabled,
input.btn.btn-secondary.disabled,
input.btn.btn-secondary:disabled,
.btn.btn-secondary.disabled,
.btn.btn-secondary:disabled,
a.btn.btn-default.disabled,
a.btn.btn-default:disabled,
button.btn.btn-default.disabled,
button.btn.btn-default:disabled,
input.btn.btn-default.disabled,
input.btn.btn-default:disabled,
.btn.btn-default.disabled,
.btn.btn-default:disabled,
a.btn.btn-outline-primary.disabled,
a.btn.btn-outline-primary:disabled,
button.btn.btn-outline-primary.disabled,
button.btn.btn-outline-primary:disabled,
input.btn.btn-outline-primary.disabled,
input.btn.btn-outline-primary:disabled,
.btn.btn-outline-primary.disabled,
.btn.btn-outline-primary:disabled,
a.btn.btn-outline-secondary.disabled,
a.btn.btn-outline-secondary:disabled,
button.btn.btn-outline-secondary.disabled,
button.btn.btn-outline-secondary:disabled,
input.btn.btn-outline-secondary.disabled,
input.btn.btn-outline-secondary:disabled,
.btn.btn-outline-secondary.disabled,
.btn.btn-outline-secondary:disabled,
fieldset:disabled .btn.btn-primary,
fieldset:disabled .btn.btn-secondary,
fieldset:disabled .btn.btn-default,
fieldset:disabled .btn.btn-outline-primary,
fieldset:disabled .btn.btn-outline-secondary {
    color: #6b7280 !important;
    background-color: #f3f4f6 !important;
    border: 3px solid #d1d5db !important;
    box-shadow: none !important;
    opacity: 1 !important;
    text-decoration: none !important;
}

/* Keep warning/danger buttons the same physical size as the test button set. */
a.btn.btn-warning,
a.btn.btn-warning:link,
a.btn.btn-warning:visited,
button.btn.btn-warning,
input.btn.btn-warning,
.btn.btn-warning,
a.btn.btn-danger,
a.btn.btn-danger:link,
a.btn.btn-danger:visited,
button.btn.btn-danger,
input.btn.btn-danger,
.btn.btn-danger {
    border: 3px solid transparent !important;
    border-radius: 6px !important;
    margin: 4px 6px !important;
    padding: 7px 13px !important;
    box-shadow: none !important;
    font-weight: 400 !important;
    text-decoration: none !important;
}

a.btn.btn-warning,
a.btn.btn-warning:link,
a.btn.btn-warning:visited,
button.btn.btn-warning,
input.btn.btn-warning,
.btn.btn-warning {
    color: #000000 !important;
    background-color: #ffc107 !important;
    border-color: #d39e00 !important;
}

a.btn.btn-danger,
a.btn.btn-danger:link,
a.btn.btn-danger:visited,
button.btn.btn-danger,
input.btn.btn-danger,
.btn.btn-danger {
    color: #ffffff !important;
    background-color: #dc3545 !important;
    border-color: #bd2130 !important;
}

a.btn.btn-warning:hover,
a.btn.btn-warning:focus,
button.btn.btn-warning:hover,
button.btn.btn-warning:focus,
.btn.btn-warning:hover,
.btn.btn-warning:focus {
    color: #000000 !important;
    background-color: #ffc107 !important;
    border-color: #000000 !important;
}

a.btn.btn-danger:hover,
a.btn.btn-danger:focus,
button.btn.btn-danger:hover,
button.btn.btn-danger:focus,
.btn.btn-danger:hover,
.btn.btn-danger:focus {
    color: #ffffff !important;
    background-color: #dc3545 !important;
    border-color: #000000 !important;
}
