/* ============================================================
   brand-lock.css — Pengganti TOTAL warna bawaan Soft UI Dashboard
   ------------------------------------------------------------
   Soft UI memakai warna asing: oren (#f97316/#eab308/#ea580c),
   pink/magenta (#ec4899/#fd5c70), lime (#98ec2d/#66d432).
   File ini memaksa SEMUA selector (teks, latar, gradien, badge,
   alert, border, link, tabel, list, pagination, nav-pills, form)
   memakai palet myAset. Muat SETELAH custom-theme.css.
   ============================================================ */

/* ---- 1. Token Bootstrap: bunuh warna bawaan di level variabel ---- */
:root {
    --bs-primary: #2563eb;            --bs-primary-rgb: 37, 99, 235;
    --bs-secondary: #5f6672;          --bs-secondary-rgb: 95, 102, 114;
    --bs-success: #16a34a;            --bs-success-rgb: 22, 163, 74;
    --bs-info: #0891b2;               --bs-info-rgb: 8, 145, 178;
    --bs-warning: #d97706;            --bs-warning-rgb: 217, 119, 6;
    --bs-danger: #dc2626;             --bs-danger-rgb: 220, 38, 38;
    --bs-dark: #23272f;               --bs-dark-rgb: 35, 39, 47;
    --bs-light: #f1f2f4;              --bs-light-rgb: 241, 242, 244;
    --bs-body-color: #10141e;
    --bs-body-bg: #f5f6fa;
    --bs-link-color: #2563eb;
    --bs-link-hover-color: #1d4ed8;
    --bs-focus-ring-color: rgba(37, 99, 235, 0.25);
}

/* ---- 2. FAMILI PRIMARY (biru brand) ---- */
.text-primary, .link-primary, .link-primary:hover, .link-primary:focus,
.text-gradient.text-primary { color: #2563eb !important; }
.text-primary-emphasis { color: #1e40af !important; }
.text-bg-primary { color: #fff !important; background-color: #2563eb !important; }
.bg-primary { background-color: #2563eb !important; }
.bg-primary-subtle { background-color: #eff6ff !important; }
.bg-outline-primary { background: #eff6ff !important; color: #2563eb !important; }
.badge.bg-primary { background-color: #2563eb !important; color: #fff !important; }
.border-primary { border-color: #2563eb !important; }
.border-primary-subtle { border-color: #bfdbfe !important; }
.alert-primary { background-color: #eff6ff !important; color: #1e3a8a !important; border-color: #bfdbfe !important; }
.link-underline-primary { text-decoration-color: #2563eb !important; }
.list-group-item-primary { background-color: #eff6ff !important; color: #1e3a8a !important; }
.table-primary { --bs-table-bg: #eff6ff !important; color: #1e3a8a !important; }
.table-primary > th, .table-primary > td { background-color: #eff6ff !important; }
.focus-ring-primary { --bs-focus-ring-color: rgba(37, 99, 235, 0.25) !important; }
.bg-gradient-primary, .btn.bg-gradient-primary, .badge.bg-gradient-primary,
.avatar.bg-gradient-primary, .icon-shape.bg-gradient-primary {
    background: linear-gradient(135deg, #2563eb 0%, #1d4ed8 100%) !important;
    background-image: linear-gradient(135deg, #2563eb 0%, #1d4ed8 100%) !important;
    color: #fff !important;
}
.bg-gradient-faded-primary, .bg-gradient-faded-primary-vertical {
    background: linear-gradient(135deg, #eff6ff 0%, #bfdbfe 100%) !important;
}
.card-background-mask-primary::after, .card-background-mask-primary::before {
    background: linear-gradient(135deg, #2563eb 0%, #1d4ed8 100%) !important;
}

/* ---- 3. FAMILI SUCCESS (hijau) ---- */
.text-success, .link-success, .link-success:hover, .link-success:focus,
.text-gradient.text-success { color: #16a34a !important; }
.text-success-emphasis { color: #15803d !important; }
.text-bg-success { color: #fff !important; background-color: #16a34a !important; }
.bg-success { background-color: #16a34a !important; }
.bg-success-subtle { background-color: #f0fdf4 !important; }
.bg-outline-success { background: #f0fdf4 !important; color: #16a34a !important; }
.badge.bg-success { background-color: #16a34a !important; color: #fff !important; }
.border-success { border-color: #16a34a !important; }
.border-success-subtle { border-color: #bbf7d0 !important; }
.alert-success { background-color: #f0fdf4 !important; color: #166534 !important; border-color: #bbf7d0 !important; }
.link-underline-success { text-decoration-color: #16a34a !important; }
.list-group-item-success { background-color: #f0fdf4 !important; color: #166534 !important; }
.table-success { --bs-table-bg: #f0fdf4 !important; color: #166534 !important; }
.table-success > th, .table-success > td { background-color: #f0fdf4 !important; }
.focus-ring-success { --bs-focus-ring-color: rgba(22, 163, 74, 0.25) !important; }
.bg-gradient-success, .btn.bg-gradient-success, .badge.bg-gradient-success,
.avatar.bg-gradient-success, .icon-shape.bg-gradient-success {
    background: linear-gradient(135deg, #16a34a 0%, #15803d 100%) !important;
    background-image: linear-gradient(135deg, #16a34a 0%, #15803d 100%) !important;
    color: #fff !important;
}
.bg-gradient-faded-success, .bg-gradient-faded-success-vertical {
    background: linear-gradient(135deg, #f0fdf4 0%, #bbf7d0 100%) !important;
}
.card-background-mask-success::after, .card-background-mask-success::before {
    background: linear-gradient(135deg, #16a34a 0%, #15803d 100%) !important;
}

/* ---- 4. FAMILI INFO (teal/sky) ---- */
.text-info, .link-info, .link-info:hover, .link-info:focus,
.text-gradient.text-info { color: #0891b2 !important; }
.text-info-emphasis { color: #0e7490 !important; }
.text-bg-info { color: #fff !important; background-color: #0891b2 !important; }
.bg-info { background-color: #0891b2 !important; }
.bg-info-subtle { background-color: #ecfeff !important; }
.bg-outline-info { background: #ecfeff !important; color: #0891b2 !important; }
.badge.bg-info { background-color: #0891b2 !important; color: #fff !important; }
.border-info { border-color: #0891b2 !important; }
.border-info-subtle { border-color: #a5f3fc !important; }
.alert-info { background-color: #ecfeff !important; color: #155e75 !important; border-color: #a5f3fc !important; }
.link-underline-info { text-decoration-color: #0891b2 !important; }
.list-group-item-info { background-color: #ecfeff !important; color: #155e75 !important; }
.table-info { --bs-table-bg: #ecfeff !important; color: #155e75 !important; }
.table-info > th, .table-info > td { background-color: #ecfeff !important; }
.focus-ring-info { --bs-focus-ring-color: rgba(8, 145, 178, 0.25) !important; }
.bg-gradient-info, .btn.bg-gradient-info, .badge.bg-gradient-info,
.avatar.bg-gradient-info, .icon-shape.bg-gradient-info {
    background: linear-gradient(135deg, #0891b2 0%, #0e7490 100%) !important;
    background-image: linear-gradient(135deg, #0891b2 0%, #0e7490 100%) !important;
    color: #fff !important;
}
.bg-gradient-faded-info, .bg-gradient-faded-info-vertical {
    background: linear-gradient(135deg, #ecfeff 0%, #a5f3fc 100%) !important;
}
.card-background-mask-info::after, .card-background-mask-info::before {
    background: linear-gradient(135deg, #0891b2 0%, #0e7490 100%) !important;
}

/* ---- 5. FAMILI WARNING (amber — BUKAN oren) ---- */
.text-warning, .link-warning, .link-warning:hover, .link-warning:focus,
.text-gradient.text-warning { color: #d97706 !important; }
.text-warning-emphasis { color: #b45309 !important; }
.text-bg-warning { color: #fff !important; background-color: #d97706 !important; }
.bg-warning { background-color: #d97706 !important; }
.bg-warning-subtle { background-color: #fffbeb !important; }
.bg-outline-warning { background: #fffbeb !important; color: #d97706 !important; }
.badge.bg-warning { background-color: #d97706 !important; color: #fff !important; }
.border-warning { border-color: #d97706 !important; }
.border-warning-subtle { border-color: #fde68a !important; }
.alert-warning { background-color: #fffbeb !important; color: #92400e !important; border-color: #fde68a !important; }
.link-underline-warning { text-decoration-color: #d97706 !important; }
.list-group-item-warning { background-color: #fffbeb !important; color: #92400e !important; }
.table-warning { --bs-table-bg: #fffbeb !important; color: #92400e !important; }
.table-warning > th, .table-warning > td { background-color: #fffbeb !important; }
.focus-ring-warning { --bs-focus-ring-color: rgba(217, 119, 6, 0.25) !important; }
.bg-gradient-warning, .btn.bg-gradient-warning, .badge.bg-gradient-warning,
.avatar.bg-gradient-warning, .icon-shape.bg-gradient-warning {
    background: linear-gradient(135deg, #f59e0b 0%, #d97706 100%) !important;
    background-image: linear-gradient(135deg, #f59e0b 0%, #d97706 100%) !important;
    color: #fff !important;
}
.bg-gradient-faded-warning, .bg-gradient-faded-warning-vertical {
    background: linear-gradient(135deg, #fffbeb 0%, #fde68a 100%) !important;
}
.card-background-mask-warning::after, .card-background-mask-warning::before {
    background: linear-gradient(135deg, #f59e0b 0%, #d97706 100%) !important;
}

/* ---- 6. FAMILI DANGER (merah) ---- */
.text-danger, .link-danger, .link-danger:hover, .link-danger:focus,
.text-gradient.text-danger { color: #dc2626 !important; }
.text-danger-emphasis { color: #b91c1c !important; }
.text-bg-danger { color: #fff !important; background-color: #dc2626 !important; }
.bg-danger { background-color: #dc2626 !important; }
.bg-danger-subtle { background-color: #fef2f2 !important; }
.bg-outline-danger { background: #fef2f2 !important; color: #dc2626 !important; }
.badge.bg-danger { background-color: #dc2626 !important; color: #fff !important; }
.border-danger { border-color: #dc2626 !important; }
.border-danger-subtle { border-color: #fecaca !important; }
.alert-danger { background-color: #fef2f2 !important; color: #991b1b !important; border-color: #fecaca !important; }
.link-underline-danger { text-decoration-color: #dc2626 !important; }
.list-group-item-danger { background-color: #fef2f2 !important; color: #991b1b !important; }
.table-danger { --bs-table-bg: #fef2f2 !important; color: #991b1b !important; }
.table-danger > th, .table-danger > td { background-color: #fef2f2 !important; }
.focus-ring-danger { --bs-focus-ring-color: rgba(220, 38, 38, 0.25) !important; }
.bg-gradient-danger, .btn.bg-gradient-danger, .badge.bg-gradient-danger,
.avatar.bg-gradient-danger, .icon-shape.bg-gradient-danger {
    background: linear-gradient(135deg, #dc2626 0%, #b91c1c 100%) !important;
    background-image: linear-gradient(135deg, #dc2626 0%, #b91c1c 100%) !important;
    color: #fff !important;
}
.bg-gradient-faded-danger, .bg-gradient-faded-danger-vertical {
    background: linear-gradient(135deg, #fef2f2 0%, #fecaca 100%) !important;
}
.card-background-mask-danger::after, .card-background-mask-danger::before {
    background: linear-gradient(135deg, #dc2626 0%, #b91c1c 100%) !important;
}

/* ---- 7. FAMILI SECONDARY / DARK / LIGHT (netral) ---- */
.text-secondary, .link-secondary, .link-secondary:hover,
.text-gradient.text-secondary { color: #5f6672 !important; }
.text-secondary-emphasis { color: #4b515c !important; }
.text-bg-secondary { color: #fff !important; background-color: #5f6672 !important; }
.bg-secondary { background-color: #5f6672 !important; }
.bg-secondary-subtle { background-color: #f4f5f7 !important; }
.badge.bg-secondary { background-color: #5f6672 !important; color: #fff !important; }
.border-secondary { border-color: #5f6672 !important; }
.alert-secondary { background-color: #f4f5f7 !important; color: #4b515c !important; border-color: #e2e5e9 !important; }
.bg-gradient-secondary, .btn.bg-gradient-secondary, .badge.bg-gradient-secondary,
.avatar.bg-gradient-secondary, .icon-shape.bg-gradient-secondary {
    background: linear-gradient(135deg, #5f6672 0%, #4b515c 100%) !important;
    background-image: linear-gradient(135deg, #5f6672 0%, #4b515c 100%) !important;
    color: #fff !important;
}
.text-dark { color: #23272f !important; }
.text-dark-emphasis { color: #16181d !important; }
.text-bg-dark { color: #fff !important; background-color: #23272f !important; }
.bg-dark { background-color: #23272f !important; }
.bg-dark-subtle { background-color: #eef0f2 !important; }
.badge.bg-dark { background-color: #23272f !important; color: #fff !important; }
.border-dark { border-color: #23272f !important; }
.alert-dark { background-color: #eef0f2 !important; color: #16181d !important; border-color: #d4d8dd !important; }
.bg-gradient-dark, .btn.bg-gradient-dark, .badge.bg-gradient-dark,
.avatar.bg-gradient-dark, .icon-shape.bg-gradient-dark {
    background: linear-gradient(135deg, #374151 0%, #1f2937 100%) !important;
    background-image: linear-gradient(135deg, #374151 0%, #1f2937 100%) !important;
    color: #fff !important;
}
.text-light { color: #f1f2f4 !important; }
.bg-light { background-color: #f1f2f4 !important; }
.bg-light-subtle { background-color: #f8f9fb !important; }
.badge.bg-light { background-color: #f1f2f4 !important; color: #10141e !important; }
.border-light { border-color: #e2e5e9 !important; }
.bg-gradient-light, .btn.bg-gradient-light, .badge.bg-gradient-light {
    background: linear-gradient(135deg, #f1f2f4 0%, #e2e5e9 100%) !important;
    background-image: linear-gradient(135deg, #f1f2f4 0%, #e2e5e9 100%) !important;
    color: #10141e !important;
}

/* ---- 8. Warna asing Soft UI (pink/magenta/orange/lime) → dipaksa ke palet brand ---- */
.text-pink, .bg-pink, .badge.bg-pink, .btn-pink, .text-magenta, .bg-magenta,
.text-gradient.text-pink { color: #dc2626 !important; }
.bg-pink, .bg-magenta { background-color: #dc2626 !important; }
.bg-gradient-pink, .bg-gradient-magenta {
    background: linear-gradient(135deg, #dc2626 0%, #b91c1c 100%) !important;
    background-image: linear-gradient(135deg, #dc2626 0%, #b91c1c 100%) !important;
}
.text-orange, .bg-orange, .badge.bg-orange, .text-orangered, .bg-orangered,
.text-yellow, .bg-yellow { color: #d97706 !important; }
.bg-orange, .bg-orangered, .bg-yellow { background-color: #d97706 !important; }
.bg-gradient-orange, .bg-gradient-yellow {
    background: linear-gradient(135deg, #f59e0b 0%, #d97706 100%) !important;
    background-image: linear-gradient(135deg, #f59e0b 0%, #d97706 100%) !important;
}
.text-lime, .bg-lime, .badge.bg-lime { color: #16a34a !important; }
.bg-lime { background-color: #16a34a !important; }

/* ---- 9. Chrome UI: fokus, form, pagination, pill, dropdown, progress ---- */
::selection { background: rgba(37, 99, 235, 0.16); }
.form-control:focus, .form-select:focus, .form-check-input:focus,
.form-control:focus-visible, .form-select:focus-visible {
    border-color: #2563eb !important;
    box-shadow: 0 0 0 3px rgba(37, 99, 235, 0.12) !important;
}
.form-check-input:checked,
.form-check-input:checked[type="checkbox"],
.form-check-input:checked[type="radio"] {
    background-color: #2563eb !important;
    border-color: #2563eb !important;
}
.form-switch .form-check-input:checked {
    background-color: #2563eb !important;
    border-color: #2563eb !important;
}
.form-range::-webkit-slider-thumb { background-color: #2563eb !important; }
.form-range::-moz-range-thumb { background-color: #2563eb !important; }
.page-item.active .page-link,
.pagination .page-item.active .page-link {
    background-color: #2563eb !important;
    border-color: #2563eb !important;
    color: #fff !important;
}
.page-link { color: #2563eb !important; }
.page-link:hover { color: #1d4ed8 !important; }
.nav-pills .nav-link.active, .nav-pills .show > .nav-link {
    background-color: #2563eb !important;
    color: #fff !important;
}
.nav-pills .nav-link { color: #5f6672 !important; }
.dropdown-item.active, .dropdown-item:active {
    background-color: #eff6ff !important;
    color: #2563eb !important;
}
.progress-bar, .progress .progress-bar {
    background: linear-gradient(135deg, #2563eb 0%, #1d4ed8 100%) !important;
    background-image: linear-gradient(135deg, #2563eb 0%, #1d4ed8 100%) !important;
}
a { text-decoration: none; }

/* ============================================================
   10. STATE TOMBOL (hover/active/focus/dropdown terbuka)
   Soft UI menaruh OREN di :active, .active, .show>.dropdown-toggle
   dan opacity 0.75 di hover outline — semua dipaksa palet brand.
   ============================================================ */
/* --- Gradien: active / focus / dropdown terbuka --- */
.btn.bg-gradient-primary:not(:disabled):not(.disabled).active,
.btn.bg-gradient-primary:not(:disabled):not(.disabled):active,
.btn.bg-gradient-primary.focus, .btn.bg-gradient-primary:focus,
.show > .btn.bg-gradient-primary.dropdown-toggle {
    background: linear-gradient(135deg, #2563eb 0%, #1d4ed8 100%) !important;
    background-image: linear-gradient(135deg, #2563eb 0%, #1d4ed8 100%) !important;
    background-color: #1d4ed8 !important;
    border-color: #1d4ed8 !important;
    color: #fff !important;
}
.btn.bg-gradient-success:not(:disabled):not(.disabled).active,
.btn.bg-gradient-success:not(:disabled):not(.disabled):active,
.btn.bg-gradient-success.focus, .btn.bg-gradient-success:focus,
.show > .btn.bg-gradient-success.dropdown-toggle {
    background: linear-gradient(135deg, #16a34a 0%, #15803d 100%) !important;
    background-image: linear-gradient(135deg, #16a34a 0%, #15803d 100%) !important;
    background-color: #15803d !important;
    border-color: #15803d !important;
    color: #fff !important;
}
.btn.bg-gradient-warning:not(:disabled):not(.disabled).active,
.btn.bg-gradient-warning:not(:disabled):not(.disabled):active,
.btn.bg-gradient-warning.focus, .btn.bg-gradient-warning:focus,
.show > .btn.bg-gradient-warning.dropdown-toggle {
    background: linear-gradient(135deg, #f59e0b 0%, #d97706 100%) !important;
    background-image: linear-gradient(135deg, #f59e0b 0%, #d97706 100%) !important;
    background-color: #d97706 !important;
    border-color: #d97706 !important;
    color: #fff !important;
}
.btn.bg-gradient-danger:not(:disabled):not(.disabled).active,
.btn.bg-gradient-danger:not(:disabled):not(.disabled):active,
.btn.bg-gradient-danger.focus, .btn.bg-gradient-danger:focus,
.show > .btn.bg-gradient-danger.dropdown-toggle {
    background: linear-gradient(135deg, #dc2626 0%, #b91c1c 100%) !important;
    background-image: linear-gradient(135deg, #dc2626 0%, #b91c1c 100%) !important;
    background-color: #b91c1c !important;
    border-color: #b91c1c !important;
    color: #fff !important;
}
.btn.bg-gradient-info:not(:disabled):not(.disabled).active,
.btn.bg-gradient-info:not(:disabled):not(.disabled):active,
.btn.bg-gradient-info.focus, .btn.bg-gradient-info:focus,
.show > .btn.bg-gradient-info.dropdown-toggle {
    background: linear-gradient(135deg, #0891b2 0%, #0e7490 100%) !important;
    background-image: linear-gradient(135deg, #0891b2 0%, #0e7490 100%) !important;
    background-color: #0e7490 !important;
    border-color: #0e7490 !important;
    color: #fff !important;
}

/* --- Solid: active / focus --- */
.btn-primary:not(:disabled):not(.disabled).active,
.btn-primary:not(:disabled):not(.disabled):active,
.btn-primary.focus, .btn-primary:focus,
.show > .btn-primary.dropdown-toggle {
    background: linear-gradient(135deg, #2563eb 0%, #1d4ed8 100%) !important;
    background-image: linear-gradient(135deg, #2563eb 0%, #1d4ed8 100%) !important;
    background-color: #1d4ed8 !important;
    border-color: #1d4ed8 !important;
    color: #fff !important;
}
.btn-success:not(:disabled):not(.disabled).active,
.btn-success:not(:disabled):not(.disabled):active,
.btn-success.focus, .btn-success:focus,
.show > .btn-success.dropdown-toggle {
    background-color: #15803d !important;
    border-color: #15803d !important;
    color: #fff !important;
}
.btn-danger:not(:disabled):not(.disabled).active,
.btn-danger:not(:disabled):not(.disabled):active,
.btn-danger.focus, .btn-danger:focus,
.show > .btn-danger.dropdown-toggle {
    background-color: #b91c1c !important;
    border-color: #b91c1c !important;
    color: #fff !important;
}
.btn-warning:not(:disabled):not(.disabled).active,
.btn-warning:not(:disabled):not(.disabled):active,
.btn-warning.focus, .btn-warning:focus,
.show > .btn-warning.dropdown-toggle {
    background-color: #b45309 !important;
    border-color: #b45309 !important;
    color: #fff !important;
}
.btn-info:not(:disabled):not(.disabled).active,
.btn-info:not(:disabled):not(.disabled):active,
.btn-info.focus, .btn-info:focus,
.show > .btn-info.dropdown-toggle {
    background-color: #0e7490 !important;
    border-color: #0e7490 !important;
    color: #fff !important;
}
.btn-secondary:not(:disabled):not(.disabled).active,
.btn-secondary:not(:disabled):not(.disabled):active,
.btn-secondary.focus, .btn-secondary:focus,
.show > .btn-secondary.dropdown-toggle {
    background-color: #4b515c !important;
    border-color: #4b515c !important;
    color: #fff !important;
}
.btn-dark:not(:disabled):not(.disabled).active,
.btn-dark:not(:disabled):not(.disabled):active,
.btn-dark.focus, .btn-dark:focus,
.show > .btn-dark.dropdown-toggle {
    background-color: #16181d !important;
    border-color: #16181d !important;
    color: #fff !important;
}

/* --- Outline: hover/active/focus/dropdown terbuka — solid penuh + teks putih + opacity 1 --- */
.btn-outline-primary:hover:not(.active), .btn-outline-primary:not(:disabled):not(.disabled).active,
.btn-outline-primary:not(:disabled):not(.disabled):active, .btn-outline-primary:focus,
.show > .btn-outline-primary.dropdown-toggle {
    background-color: #2563eb !important;
    border-color: #2563eb !important;
    color: #fff !important;
    opacity: 1 !important;
    box-shadow: none !important;
}
.btn-outline-success:hover:not(.active), .btn-outline-success:not(:disabled):not(.disabled).active,
.btn-outline-success:not(:disabled):not(.disabled):active, .btn-outline-success:focus,
.show > .btn-outline-success.dropdown-toggle {
    background-color: #16a34a !important;
    border-color: #16a34a !important;
    color: #fff !important;
    opacity: 1 !important;
    box-shadow: none !important;
}
.btn-outline-danger:hover:not(.active), .btn-outline-danger:not(:disabled):not(.disabled).active,
.btn-outline-danger:not(:disabled):not(.disabled):active, .btn-outline-danger:focus,
.show > .btn-outline-danger.dropdown-toggle {
    background-color: #dc2626 !important;
    border-color: #dc2626 !important;
    color: #fff !important;
    opacity: 1 !important;
    box-shadow: none !important;
}
.btn-outline-warning:hover:not(.active), .btn-outline-warning:not(:disabled):not(.disabled).active,
.btn-outline-warning:not(:disabled):not(.disabled):active, .btn-outline-warning:focus,
.show > .btn-outline-warning.dropdown-toggle {
    background-color: #d97706 !important;
    border-color: #d97706 !important;
    color: #fff !important;
    opacity: 1 !important;
    box-shadow: none !important;
}
.btn-outline-info:hover:not(.active), .btn-outline-info:not(:disabled):not(.disabled).active,
.btn-outline-info:not(:disabled):not(.disabled):active, .btn-outline-info:focus,
.show > .btn-outline-info.dropdown-toggle {
    background-color: #0891b2 !important;
    border-color: #0891b2 !important;
    color: #fff !important;
    opacity: 1 !important;
    box-shadow: none !important;
}
.btn-outline-secondary:hover:not(.active), .btn-outline-secondary:not(:disabled):not(.disabled).active,
.btn-outline-secondary:not(:disabled):not(.disabled):active, .btn-outline-secondary:focus,
.show > .btn-outline-secondary.dropdown-toggle {
    background-color: #5f6672 !important;
    border-color: #5f6672 !important;
    color: #fff !important;
    opacity: 1 !important;
    box-shadow: none !important;
}
.btn-outline-dark:hover:not(.active), .btn-outline-dark:not(:disabled):not(.disabled).active,
.btn-outline-dark:not(:disabled):not(.disabled):active, .btn-outline-dark:focus,
.show > .btn-outline-dark.dropdown-toggle {
    background-color: #23272f !important;
    border-color: #23272f !important;
    color: #fff !important;
    opacity: 1 !important;
    box-shadow: none !important;
}

/* Hover outline lain: hapus opacity 0.75 bawaan Soft UI */
.btn-outline-primary:hover, .btn-outline-success:hover, .btn-outline-danger:hover,
.btn-outline-warning:hover, .btn-outline-info:hover, .btn-outline-secondary:hover {
    opacity: 1 !important;
}

/* ============================================================
   11. BADGE PREMIUM (tinted ala Stripe: latar lembut + teks warna)
   ============================================================ */
.badge.bg-primary, .badge.bg-gradient-primary {
    background: #eaf1ff !important;
    color: #1d4ed8 !important;
    border: 1px solid #c9d9f7 !important;
    font-weight: 600 !important;
}
.badge.bg-success, .badge.bg-gradient-success {
    background: #e7f8ee !important;
    color: #15803d !important;
    border: 1px solid #bfe8cd !important;
    font-weight: 600 !important;
}
.badge.bg-danger, .badge.bg-gradient-danger {
    background: #fdeeee !important;
    color: #b91c1c !important;
    border: 1px solid #f6c8c8 !important;
    font-weight: 600 !important;
}
.badge.bg-warning, .badge.bg-gradient-warning {
    background: #fff6e5 !important;
    color: #b45309 !important;
    border: 1px solid #f9dd9c !important;
    font-weight: 600 !important;
}
.badge.bg-info, .badge.bg-gradient-info {
    background: #e5f7fb !important;
    color: #0e7490 !important;
    border: 1px solid #b3e5ef !important;
    font-weight: 600 !important;
}
.badge.bg-dark, .badge.bg-gradient-dark {
    background: #eceef1 !important;
    color: #23272f !important;
    border: 1px solid #d5d9df !important;
    font-weight: 600 !important;
}
.badge.bg-secondary {
    background: #eef0f3 !important;
    color: #4b515c !important;
    border: 1px solid #d9dde3 !important;
    font-weight: 600 !important;
}
.badge.bg-light {
    background: #f4f5f7 !important;
    color: #4b515c !important;
    border: 1px solid #e2e5e9 !important;
    font-weight: 600 !important;
}
/* Bubble notifikasi solid merah, tanpa outline (permintaan pengguna) */
.badge.notif-badge {
    background: #dc2626 !important;
    color: #fff !important;
    border: 0 !important;
    outline: 0 !important;
    box-shadow: none !important;
}

/* ============================================================
   v10 LOCK — Tombol flat solid modern (mengalahkan gradien).
   Hanya menyasar .btn agar badge/chip tetap seperti semula.
   ============================================================ */
.btn.bg-gradient-primary, .btn.btn-primary {
    background: #2563eb !important;
    background-image: none !important;
    border: 0 !important;
    color: #fff !important;
}
.btn.bg-gradient-primary:hover, .btn.btn-primary:hover,
.btn.bg-gradient-primary:focus, .btn.btn-primary:focus,
.btn.bg-gradient-primary:active, .btn.btn-primary:active {
    background: #1d4ed8 !important;
    background-image: none !important;
    border: 0 !important;
    color: #fff !important;
}
.btn.bg-gradient-success { background: #16a34a !important; background-image: none !important; border: 0 !important; color: #fff !important; }
.btn.bg-gradient-success:hover { background: #15803d !important; }
.btn.bg-gradient-info { background: #0891b2 !important; background-image: none !important; border: 0 !important; color: #fff !important; }
.btn.bg-gradient-info:hover { background: #0e7490 !important; }
.btn.bg-gradient-warning { background: #d97706 !important; background-image: none !important; border: 0 !important; color: #fff !important; }
.btn.bg-gradient-warning:hover { background: #b45309 !important; }
.btn.bg-gradient-danger { background: #dc2626 !important; background-image: none !important; border: 0 !important; color: #fff !important; }
.btn.bg-gradient-danger:hover { background: #b91c1c !important; }
.btn.bg-gradient-dark { background: #1f2937 !important; background-image: none !important; border: 0 !important; color: #fff !important; }
.btn.bg-gradient-dark:hover { background: #111827 !important; }
.btn.bg-gradient-light { background: #eef1f6 !important; background-image: none !important; border: 0 !important; color: #23272f !important; }

/* Tombol ikon di topbar & chip tetap putih */
.app-icon-btn { background: #fff !important; }
