/* Base Primary Button */
.btn-primary {
    background-color: var(--color-accent) !important;
    border-color: var(--color-accent) !important;
    color: #fff !important;
}

/* Hover */
.btn-primary:hover,
.btn-primary:focus:hover {
    background-color: color-mix(in srgb, var(--color-accent) 85%, black) !important;
    border-color: color-mix(in srgb, var(--color-accent) 85%, black) !important;
    color: #fff !important;
}

/* Focus (outline/glow) */
.btn-primary:focus,
.btn-primary:focus-visible {
    box-shadow: 0 0 0 0.25rem color-mix(in srgb, var(--color-accent) 40%, transparent) !important;
}

/* Active / pressed */
.btn-primary:active,
.btn-primary:active:focus,
.btn-primary.active,
.show>.btn-primary.dropdown-toggle {
    background-color: color-mix(in srgb, var(--color-accent) 70%, black) !important;
    border-color: color-mix(in srgb, var(--color-accent) 70%, black) !important;
    color: #fff !important;
}

/* Disabled */
.btn-primary:disabled,
.btn-primary.disabled {
    background-color: color-mix(in srgb, var(--color-accent) 50%, white) !important;
    border-color: color-mix(in srgb, var(--color-accent) 50%, white) !important;
    color: #fff !important;
    opacity: 0.65;
}