/* Bootstrap utilities mapped to AV DS tokens */

/* --- Buttons --- */
.btn-primary { background-color: var(--color-accent) !important; border-color: var(--color-accent) !important; color: var(--color-accent-contrast) !important; }
.btn-primary:hover { background-color: var(--color-accent-hover) !important; border-color: var(--color-accent-hover) !important; }
.btn-secondary { background-color: var(--color-surface) !important; border-color: var(--color-border) !important; color: var(--color-text) !important; }
.btn-success, .bg-success { background-color: var(--color-success) !important; color: var(--color-success-contrast) !important; }
.btn-danger, .bg-danger { background-color: var(--color-danger) !important; color: var(--color-danger-contrast) !important; }
.btn-warning, .bg-warning { background-color: var(--color-warning) !important; color: var(--color-warning-contrast) !important; }
.btn-info, .bg-info { background-color: var(--color-info) !important; color: var(--color-info-contrast) !important; }

/* --- Text utilities --- */
.text-primary { color: var(--color-accent) !important; }
.text-success { color: var(--color-success) !important; }
.text-danger { color: var(--color-danger) !important; }
.text-warning { color: var(--color-warning) !important; }
.text-info { color: var(--color-info) !important; }
.text-muted { color: var(--color-text-muted) !important; }
.text-secondary { color: var(--color-text-muted) !important; }

/* --- Alerts --- */
.alert-success { background-color: var(--color-success-subtle) !important; border-color: var(--color-success-muted) !important; color: var(--color-success-hover) !important; }
.alert-danger { background-color: var(--color-danger-subtle) !important; border-color: var(--color-danger-muted) !important; color: var(--color-danger-hover) !important; }
.alert-warning { background-color: var(--color-warning-subtle) !important; border-color: var(--color-warning-muted) !important; color: var(--color-warning-hover) !important; }
.alert-info { background-color: var(--color-info-subtle) !important; border-color: var(--color-info-muted) !important; color: var(--color-info-hover) !important; }

/* --- Badges --- */
.badge.bg-secondary { background-color: var(--color-surface-sunken) !important; color: var(--color-text-muted) !important; }
.badge.bg-light { background-color: var(--color-bg-subtle) !important; color: var(--color-text) !important; border: 1px solid var(--color-border-subtle); }

/* --- Borders --- */
.border, .border-top, .border-bottom, .border-start, .border-end { border-color: var(--color-border) !important; }

/* --- Form controls --- */
.form-control, .form-select { background-color: var(--color-surface) !important; border-color: var(--color-border) !important; color: var(--color-text) !important; }
.form-control:focus, .form-select:focus { border-color: var(--color-accent) !important; box-shadow: var(--shadow-focus) !important; }

/* --- Tables --- */
.table { color: var(--color-text); --bs-table-bg: var(--color-surface); --bs-table-striped-bg: var(--color-bg-subtle); --bs-table-border-color: var(--color-border-subtle); }

/* --- Nav tabs --- */
.nav-tabs .nav-link.active { color: var(--color-accent); border-color: var(--color-border) var(--color-border) var(--color-surface); }
