/**
 * Page layout — consistent titles, subtitles, and action buttons.
 */

.page-header {
    margin-bottom: 1.5rem;
}

.page-header-inner {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 1rem;
    flex-wrap: wrap;
}

.page-title {
    font-size: 1.5rem;
    font-weight: 600;
    color: #071437;
    margin: 0 0 0.25rem;
    line-height: 1.3;
}

.page-subtitle {
    font-size: 0.8125rem;
    color: #6c757d;
    margin: 0;
    line-height: 1.4;
}

.page-header-actions {
    display: flex;
    align-items: center;
    justify-content: flex-end;
    gap: 0.5rem;
    flex-wrap: wrap;
}

.page-header-actions .form-select,
.page-header-actions .page-header-select {
    width: auto;
    min-width: 200px;
    max-width: 280px;
    flex-shrink: 0;
    min-height: 38px;
    padding: 0.5rem 2.25rem 0.5rem 1rem;
    font-size: 0.875rem;
    font-weight: 500;
    line-height: 1.5;
    border: 1px solid #ced4da;
    border-radius: 6px;
    background-color: #fff;
    box-shadow: none;
}

.page-header-actions .btn-group > .btn-success,
.page-header-actions > .btn-success {
    background: #198754 !important;
    background-image: none !important;
    border: 1px solid #198754 !important;
    color: #fff !important;
}

.page-header-actions .btn-group > .btn-success:hover,
.page-header-actions .btn-group > .btn-success:focus,
.page-header-actions > .btn-success:hover,
.page-header-actions > .btn-success:focus {
    background: #157347 !important;
    background-image: none !important;
    border-color: #146c43 !important;
    color: #fff !important;
}

.form-actions {
    display: flex;
    flex-wrap: wrap;
    justify-content: flex-end;
    align-items: center;
    gap: 0.75rem;
    padding-top: 1.25rem;
    margin-top: 1.25rem;
    border-top: 1px solid #e9ecef;
}

.form-actions.justify-content-between {
    justify-content: space-between !important;
}

/* --------------------------------------------------------------------------
   Action buttons — explicit colors (global theme uses white/gray as "primary")
   -------------------------------------------------------------------------- */

.form-actions .btn::before,
.form-actions .btn::after,
.page-header-actions .btn::before,
.page-header-actions .btn::after,
.page-header-actions .btn-back::before,
.page-header-actions .btn-back::after,
.page-header-actions > .btn-primary::before,
.page-header-actions > .btn-primary::after,
.page-header-actions > .btn-outline-secondary::before,
.page-header-actions > .btn-outline-secondary::after,
.page-header-actions .btn-group > .btn-primary::before,
.page-header-actions .btn-group > .btn-primary::after,
.btn-form-cancel::before,
.btn-form-cancel::after,
.btn-form-reset::before,
.btn-form-reset::after,
.btn-form-submit::before,
.btn-form-submit::after,
.btn-warning::before,
.btn-warning::after,
.btn-danger::before,
.btn-danger::after,
.btn-info::before,
.btn-info::after,
.btn-success::before,
.btn-success::after,
.table .btn::before,
.table .btn::after,
.modal-footer .btn::before,
.modal-footer .btn::after {
    display: none !important;
}

.form-actions .btn,
.page-header-actions .btn,
.page-header-actions > .btn-primary,
.page-header-actions > .btn-outline-secondary,
.page-header-actions > .btn-back,
.page-header-actions .btn-group > .btn-primary,
.btn-form-cancel,
.btn-form-reset,
.btn-form-submit {
    border-radius: 6px !important;
    font-size: 0.875rem !important;
    font-weight: 500 !important;
    padding: 0.5rem 1rem !important;
    min-height: 38px;
    line-height: 1.5 !important;
    transform: none !important;
    box-shadow: none !important;
    position: relative;
    overflow: visible;
}

/* Primary — Create / Update / Submit */
.form-actions .btn-primary,
.form-actions .btn-form-submit,
.page-header-actions > .btn-primary,
.page-header-actions .btn-primary,
.page-header-actions .btn-group > .btn-primary,
.page-header-actions .dropdown .btn-primary,
.page-header-actions .dropdown > .btn-primary {
    background: #0d6efd !important;
    background-image: none !important;
    border: 1px solid #0d6efd !important;
    color: #fff !important;
    box-shadow: none !important;
    transform: none !important;
}

.form-actions .btn-primary:hover,
.form-actions .btn-primary:focus,
.form-actions .btn-form-submit:hover,
.form-actions .btn-form-submit:focus,
.page-header-actions > .btn-primary:hover,
.page-header-actions > .btn-primary:focus,
.page-header-actions .btn-primary:hover,
.page-header-actions .btn-primary:focus,
.page-header-actions .btn-group > .btn-primary:hover,
.page-header-actions .btn-group > .btn-primary:focus,
.page-header-actions .dropdown .btn-primary:hover,
.page-header-actions .dropdown .btn-primary:focus,
.page-header-actions .dropdown > .btn-primary:hover,
.page-header-actions .dropdown > .btn-primary:focus {
    background: #0b5ed7 !important;
    background-image: none !important;
    border-color: #0a58ca !important;
    color: #fff !important;
    box-shadow: none !important;
    transform: none !important;
}

.page-header-actions .btn-primary::before,
.page-header-actions .btn-primary::after,
.page-header-actions .dropdown .btn-primary::before,
.page-header-actions .dropdown .btn-primary::after {
    display: none !important;
}

/* Outline — Cancel & Back */
.btn-form-cancel,
.btn-back,
.form-actions .btn-outline-secondary,
.page-header-actions .btn-outline-secondary,
.page-header-actions .btn-back {
    background-color: #fff !important;
    border: 1px solid #ced4da !important;
    color: #495057 !important;
}

.btn-form-cancel:hover,
.btn-form-cancel:focus,
.btn-back:hover,
.btn-back:focus,
.form-actions .btn-outline-secondary:hover,
.form-actions .btn-outline-secondary:focus,
.page-header-actions .btn-outline-secondary:hover,
.page-header-actions .btn-outline-secondary:focus,
.page-header-actions .btn-back:hover,
.page-header-actions .btn-back:focus {
    background-color: #f8f9fa !important;
    border-color: #adb5bd !important;
    color: #212529 !important;
}

/* Danger — delete / clear in form footers (pastel, matches list action buttons) */
.form-actions .btn-danger {
    background-color: #fdecea !important;
    background-image: none !important;
    border: 1px solid #f9d3d0 !important;
    color: #dc3545 !important;
}

.form-actions .btn-danger:hover,
.form-actions .btn-danger:focus {
    background-color: #f9d3d0 !important;
    background-image: none !important;
    border-color: #f1b0b7 !important;
    color: #bb2d3b !important;
}

/* Reset — secondary action in form footers */
.form-actions .btn-form-reset {
    background-color: #f8f9fa !important;
    background-image: none !important;
    border: 1px solid #ced4da !important;
    color: #495057 !important;
}

.form-actions .btn-form-reset:hover,
.form-actions .btn-form-reset:focus {
    background-color: #e9ecef !important;
    background-image: none !important;
    border-color: #adb5bd !important;
    color: #212529 !important;
}

.detail-page .standard-form .form-actions .btn::before,
.detail-page .standard-form .form-actions .btn::after {
    display: none !important;
}

.detail-page .standard-form .form-actions .btn-danger {
    background-color: #fdecea !important;
    background-image: none !important;
    border: 1px solid #f9d3d0 !important;
    color: #dc3545 !important;
}

.detail-page .standard-form .form-actions .btn-danger:hover,
.detail-page .standard-form .form-actions .btn-danger:focus {
    background-color: #f9d3d0 !important;
    background-image: none !important;
    border-color: #f1b0b7 !important;
    color: #bb2d3b !important;
}

.detail-page .standard-form .form-actions .btn-form-reset,
.detail-page .standard-form .form-actions .btn-form-cancel {
    background-color: #f8f9fa !important;
    background-image: none !important;
    border: 1px solid #ced4da !important;
    color: #495057 !important;
}

.detail-page .standard-form .form-actions .btn-form-reset:hover,
.detail-page .standard-form .form-actions .btn-form-reset:focus,
.detail-page .standard-form .form-actions .btn-form-cancel:hover,
.detail-page .standard-form .form-actions .btn-form-cancel:focus {
    background-color: #e9ecef !important;
    background-image: none !important;
    border-color: #adb5bd !important;
    color: #212529 !important;
}

/* Warning — Edit (pastel, matches list action buttons) */
.btn-warning {
    background: #e8f6ee !important;
    background-image: none !important;
    border: 1px solid #d1eddb !important;
    color: #198754 !important;
    transform: none !important;
    box-shadow: none !important;
}

.btn-warning:hover,
.btn-warning:focus {
    background: #d1eddb !important;
    background-image: none !important;
    border-color: #badbcc !important;
    color: #157347 !important;
    transform: none !important;
}

/* Danger — Delete (pastel, matches list action buttons) */
.btn-danger {
    background: #fdecea !important;
    background-image: none !important;
    border: 1px solid #f9d3d0 !important;
    color: #dc3545 !important;
    transform: none !important;
    box-shadow: none !important;
}

.btn-danger:hover,
.btn-danger:focus {
    background: #f9d3d0 !important;
    background-image: none !important;
    border-color: #f1b0b7 !important;
    color: #bb2d3b !important;
    transform: none !important;
}

/* Info — View */
.btn-info {
    background: #0dcaf0 !important;
    background-image: none !important;
    border: 1px solid #0dcaf0 !important;
    color: #000 !important;
    transform: none !important;
    box-shadow: none !important;
}

.btn-info:hover,
.btn-info:focus {
    background: #31d2f2 !important;
    background-image: none !important;
    border-color: #25cff2 !important;
    color: #000 !important;
    transform: none !important;
}

/* Success — Excel / export actions */
.btn-success {
    background: #198754 !important;
    background-image: none !important;
    border: 1px solid #198754 !important;
    color: #fff !important;
    transform: none !important;
    box-shadow: none !important;
}

.btn-success:hover,
.btn-success:focus {
    background: #157347 !important;
    background-image: none !important;
    border-color: #146c43 !important;
    color: #fff !important;
    transform: none !important;
}

/* Modal footers on list pages — see modals.css for full modal styling */

/* --------------------------------------------------------------------------
   Detail pages — consistent cards, labels, and content typography
   -------------------------------------------------------------------------- */

.detail-page .card {
    border: 1px solid #e9ecef;
    border-radius: 8px;
    box-shadow: 0 1px 3px rgba(0, 0, 0, 0.06) !important;
    margin-bottom: 1.25rem;
}

.detail-page .card.shadow,
.detail-page .card.dashboard-card {
    box-shadow: 0 1px 3px rgba(0, 0, 0, 0.06) !important;
}

.detail-page .card-header {
    background: #f8f9fa;
    border-bottom: 1px solid #e9ecef;
    padding: 0.875rem 1.25rem;
    min-height: 3.125rem;
    display: flex;
    align-items: center;
}

.detail-page .profile-info-card > .card-header {
    padding: 0.875rem 1.25rem;
}

.detail-page .profile-info-card .profile-info-name {
    font-size: 1rem;
    font-weight: 600;
    color: #071437;
    margin-bottom: 0.5rem;
}

.detail-page .profile-info-card .card-body label.form-label.text-muted {
    font-size: 0.875rem;
    font-weight: 500;
    color: #6c757d !important;
    margin-bottom: 0.25rem;
}

.detail-page .profile-info-card .card-body label.form-label.text-muted + p {
    font-size: 0.9375rem;
    color: #212529;
    line-height: 1.5;
}

.detail-page .tab-pane label.form-label.text-muted {
    font-size: 0.875rem;
    font-weight: 500;
    color: #6c757d !important;
    margin-bottom: 0.25rem;
}

.detail-page .tab-pane label.form-label.text-muted + p {
    font-size: 0.9375rem;
    color: #212529;
    line-height: 1.5;
}

.detail-page .profile-info-card .card-footer .btn-primary {
    background: #0d6efd !important;
    background-image: none !important;
    border: 1px solid #0d6efd !important;
    color: #fff !important;
    border-radius: 6px !important;
    font-size: 0.875rem !important;
    font-weight: 500 !important;
}

.detail-page .profile-info-card .card-footer .btn-primary:hover,
.detail-page .profile-info-card .card-footer .btn-primary:focus {
    background: #0b5ed7 !important;
    border-color: #0a58ca !important;
    color: #fff !important;
}

.detail-page .profile-section-actions .btn-primary,
.detail-page .tab-pane .btn-primary.btn-sm {
    background: #0d6efd !important;
    background-image: none !important;
    border: 1px solid #0d6efd !important;
    color: #fff !important;
    border-radius: 6px !important;
    font-size: 0.8125rem !important;
    font-weight: 500 !important;
    padding: 0.35rem 0.75rem !important;
    box-shadow: none !important;
    transform: none !important;
}

.detail-page .profile-section-actions .btn-primary:hover,
.detail-page .profile-section-actions .btn-primary:focus,
.detail-page .tab-pane .btn-primary.btn-sm:hover,
.detail-page .tab-pane .btn-primary.btn-sm:focus {
    background: #0b5ed7 !important;
    border-color: #0a58ca !important;
    color: #fff !important;
}

.detail-page .subscription-plan-card .subscription-plan-name {
    font-size: 1rem;
    font-weight: 600;
    color: #071437;
    margin-bottom: 0.35rem;
}

.detail-page .subscription-plan-card .subscription-plan-price {
    font-size: 0.875rem;
    font-weight: 500;
    color: #495057;
    margin-bottom: 0.75rem;
}

.detail-page .subscription-plan-card .subscription-plan-icon {
    font-size: 1.5rem;
    color: #f59e0b;
    margin-bottom: 0.5rem;
}

.detail-page .subscription-plan-card .subscription-plan-meta {
    font-size: 0.8125rem;
    color: #6c757d;
}

.detail-page .subscription-plan-card .subscription-plan-progress {
    height: 1.5rem;
    border-radius: 8px;
}

.detail-page .subscription-plan-card .subscription-plan-progress .progress-bar {
    font-size: 0.75rem;
    font-weight: 600;
    line-height: 1.5rem;
    display: flex;
    align-items: center;
    justify-content: center;
    min-width: 2.75rem;
}

.detail-card-title,
.detail-page .card-header h5,
.detail-page .card-header h6,
.detail-page .card-header .font-weight-bold.text-primary {
    font-size: 0.9375rem;
    font-weight: 600;
    color: #071437 !important;
    margin: 0;
    line-height: 1.4;
}

.detail-section-title {
    font-size: 0.8125rem;
    font-weight: 600;
    color: #6c757d;
    margin-bottom: 0.75rem;
    text-transform: uppercase;
    letter-spacing: 0.02em;
}

.detail-field {
    margin-bottom: 1rem;
}

.detail-field:last-child {
    margin-bottom: 0;
}

.detail-label,
.detail-page .card-body label.text-muted,
.detail-page .card-body h6.font-weight-bold:not(.detail-section-title),
.detail-page .card-body h6.text-muted.small.text-uppercase,
.detail-page .card-body .row > .text-muted,
.detail-page .card-body .row.mb-2 > [class*="col-"]:first-child.text-muted,
.detail-page .card-body .row.mb-2 > .col-sm-4,
.detail-page .card-body .row.mb-2 > .col-md-4 {
    display: block;
    font-size: 0.875rem;
    font-weight: 500;
    color: #6c757d !important;
    margin-bottom: 0.25rem;
    text-transform: none;
    letter-spacing: normal;
}

.detail-value,
.detail-page .card-body .detail-field p,
.detail-page .card-body label.text-muted + p,
.detail-page .card-body h6.font-weight-bold + p,
.detail-page .card-body h6.text-muted + p,
.detail-page .card-body .row.mb-2 > .col-sm-8,
.detail-page .card-body .row.mb-2 > .col-md-8,
.detail-page .card-body .row.mb-2 > [class*="col-"]:last-child:not(.text-muted) {
    font-size: 1rem;
    color: #212529;
    margin: 0;
    line-height: 1.5;
}

.detail-page .card-body {
    font-size: 0.9375rem;
    color: #212529;
}

.detail-page .card-body p,
.detail-page .card-body .list-group-item {
    font-size: 0.9375rem;
    line-height: 1.5;
}

.detail-page .table:not(.table-bordered) th,
.detail-page .table.table-bordered > tbody > tr > th,
.list-page .detail-page .table.table-bordered > tbody > tr > th {
    font-size: 0.875rem;
    font-weight: 500;
    color: #6c757d;
    background: transparent;
    border-color: #e9ecef;
    width: 35%;
    vertical-align: top;
    padding: 0.75rem 1rem;
}

.detail-page .table:not(.table-bordered) td,
.detail-page .table.table-bordered > tbody > tr > td,
.list-page .detail-page .table.table-bordered > tbody > tr > td {
    font-size: 0.9375rem;
    color: #212529;
    border-color: #e9ecef;
    padding: 0.75rem 1rem;
    vertical-align: top;
}

.detail-page .table thead th,
.list-page .detail-page .table thead th {
    font-size: 0.8125rem;
    font-weight: 600;
    color: #495057 !important;
    text-transform: uppercase;
    letter-spacing: 0.03em;
    background: #f8f9fa !important;
    background-image: none !important;
    border: none !important;
    border-right: 1px solid #f0f2f5 !important;
    border-bottom: 1px solid #e9ecef !important;
    padding: 0.75rem 1rem;
    vertical-align: middle;
}

.detail-page .table thead th:last-child {
    border-right: none !important;
}

.detail-page .table thead th::after {
    display: none !important;
}

.detail-page .table:not(.table-bordered) td,
.detail-page .table.table-bordered > tbody > tr > td {
    border: none !important;
    border-right: 1px solid #f5f6f8 !important;
    border-bottom: 1px solid #f5f6f8 !important;
}

.detail-page .table tbody td:last-child {
    border-right: none !important;
}

.detail-page .table tbody tr:last-child td {
    border-bottom: none !important;
}

/* Detail data tables — override list-page table typography when both apply */
.list-page .detail-page .table:not(.list-data-table) {
    font-size: 0.9375rem;
}

.list-page .detail-page .table:not(.list-data-table) tbody td {
    font-size: 0.9375rem;
    padding: 0.75rem 1rem;
}

.list-page .detail-page .table:not(.list-data-table) .badge {
    font-size: 0.8125rem;
}

/* Detail page — status / branch badges (pastel, matches list & dashboard) */
.detail-page .badge {
    font-size: 0.75rem;
    font-weight: 500;
    padding: 0.35em 0.65em;
    border-radius: 6px;
    background-image: none !important;
}

.detail-page .badge.bg-success {
    background-color: #d1e7dd !important;
    color: #0f5132 !important;
    border: 1px solid #badbcc !important;
}

.detail-page .badge.bg-danger {
    background-color: #fdecea !important;
    color: #dc3545 !important;
    border: 1px solid #f9d3d0 !important;
}

.detail-page .badge.bg-info,
.detail-page .badge.bg-primary {
    background-color: #e8f4fd !important;
    color: #0d6efd !important;
    border: 1px solid #b6d4fe !important;
}

.detail-page .badge.bg-secondary {
    background-color: #e9ecef !important;
    color: #495057 !important;
    border: 1px solid #dee2e6 !important;
}

.detail-page .badge.bg-warning {
    background-color: #fff3cd !important;
    color: #856404 !important;
    border: 1px solid #ffe69c !important;
}

.detail-page .card-body > h4 {
    font-size: 1rem;
    font-weight: 600;
    color: #071437;
    margin-bottom: 1rem;
}

.detail-page h1.h3,
.detail-page h2:not(.page-title) {
    font-size: 1.5rem;
    font-weight: 600;
    color: #071437;
}

.detail-page .container {
    max-width: 100%;
    padding: 0;
}

/* Detail page — table row actions (same pastel colors as list pages) */
.detail-page .table .btn-sm,
.detail-page .table td .btn-sm,
.detail-page .card-body .btn-sm {
    display: inline-flex !important;
    align-items: center;
    justify-content: center;
    min-width: 34px;
    min-height: 34px;
    padding: 0.25rem 0.5rem !important;
    border-radius: 8px !important;
    border: none !important;
    box-shadow: 0 1px 2px rgba(16, 24, 40, 0.06) !important;
    transform: none !important;
    font-size: 0.875rem !important;
    line-height: 1 !important;
}

.detail-page .table .btn-sm.btn-warning,
.detail-page .table .btn-sm.btn-outline-secondary,
.detail-page .table .btn-sm.btn-outline-primary:has(.fa-edit) {
    background: #e8f6ee !important;
    background-image: none !important;
    color: #198754 !important;
}

.detail-page .table .btn-sm.btn-warning:hover,
.detail-page .table .btn-sm.btn-warning:focus,
.detail-page .table .btn-sm.btn-outline-secondary:hover,
.detail-page .table .btn-sm.btn-outline-secondary:focus,
.detail-page .table .btn-sm.btn-outline-primary:has(.fa-edit):hover,
.detail-page .table .btn-sm.btn-outline-primary:has(.fa-edit):focus {
    background: #d1eddb !important;
    color: #157347 !important;
}

.detail-page .table .btn-sm.btn-danger,
.detail-page .table .btn-sm.btn-outline-danger {
    background: #fdecea !important;
    background-image: none !important;
    color: #dc3545 !important;
}

.detail-page .table .btn-sm.btn-danger:hover,
.detail-page .table .btn-sm.btn-danger:focus,
.detail-page .table .btn-sm.btn-outline-danger:hover,
.detail-page .table .btn-sm.btn-outline-danger:focus {
    background: #f9d3d0 !important;
    color: #bb2d3b !important;
}

.detail-page .table .btn-sm.btn-info,
.detail-page .table .btn-sm.btn-outline-primary,
.detail-page .table .btn-sm.btn-outline-info:has(.fa-eye) {
    background: #e8f4fd !important;
    background-image: none !important;
    color: #0d6efd !important;
}

.detail-page .table .btn-sm.btn-info:hover,
.detail-page .table .btn-sm.btn-info:focus,
.detail-page .table .btn-sm.btn-outline-primary:hover,
.detail-page .table .btn-sm.btn-outline-primary:focus,
.detail-page .table .btn-sm.btn-outline-info:has(.fa-eye):hover,
.detail-page .table .btn-sm.btn-outline-info:has(.fa-eye):focus {
    background: #d0e8fc !important;
    color: #0b5ed7 !important;
}

.detail-page .table .btn-sm.btn-outline-info:not(:has(.fa-eye)) {
    background: #ede9fe !important;
    background-image: none !important;
    color: #6366f1 !important;
}

.detail-page .table .btn-sm.btn-outline-info:not(:has(.fa-eye)):hover,
.detail-page .table .btn-sm.btn-outline-info:not(:has(.fa-eye)):focus,
.detail-page .card-body .btn-sm.btn-outline-info:hover,
.detail-page .card-body .btn-sm.btn-outline-info:focus {
    background: #ddd6fe !important;
    color: #4f46e5 !important;
}

.detail-page .card-body .btn-sm.btn-success,
.detail-page .table .btn-sm.btn-success {
    background: #eef1f5 !important;
    background-image: none !important;
    color: #495057 !important;
}

.detail-page .card-body .btn-sm.btn-success:hover,
.detail-page .card-body .btn-sm.btn-success:focus,
.detail-page .table .btn-sm.btn-success:hover,
.detail-page .table .btn-sm.btn-success:focus {
    background: #dde2e8 !important;
    color: #212529 !important;
}

/* --------------------------------------------------------------------------
   Dashboard — card header actions & status pills (theme uses white as primary)
   -------------------------------------------------------------------------- */

.card-header .btn.btn-sm.btn-primary,
.card-header .btn-primary.btn-sm {
    background: #0d6efd !important;
    background-image: none !important;
    border: 1px solid #0d6efd !important;
    color: #fff !important;
    border-radius: 6px !important;
    font-size: 0.8125rem !important;
    font-weight: 500 !important;
    padding: 0.35rem 0.75rem !important;
    min-height: 32px;
    line-height: 1.5 !important;
    box-shadow: none !important;
    transform: none !important;
}

.card-header .btn.btn-sm.btn-primary:hover,
.card-header .btn.btn-sm.btn-primary:focus,
.card-header .btn-primary.btn-sm:hover,
.card-header .btn-primary.btn-sm:focus {
    background: #0b5ed7 !important;
    background-image: none !important;
    border-color: #0a58ca !important;
    color: #fff !important;
    transform: none !important;
    box-shadow: none !important;
}

.card-header .btn.btn-sm.btn-info,
.card-header .btn-info.btn-sm {
    background: #e8f4fd !important;
    background-image: none !important;
    border: 1px solid #b6d4fe !important;
    color: #0d6efd !important;
    border-radius: 6px !important;
    font-size: 0.8125rem !important;
    font-weight: 500 !important;
    padding: 0.35rem 0.75rem !important;
    min-height: 32px;
    line-height: 1.5 !important;
    box-shadow: none !important;
    transform: none !important;
}

.card-header .btn.btn-sm.btn-info:hover,
.card-header .btn.btn-sm.btn-info:focus,
.card-header .btn-info.btn-sm:hover,
.card-header .btn-info.btn-sm:focus {
    background: #d0e8fc !important;
    background-image: none !important;
    border-color: #9ec5fe !important;
    color: #0b5ed7 !important;
    transform: none !important;
    box-shadow: none !important;
}

.card-header .btn.btn-sm.btn-primary::before,
.card-header .btn.btn-sm.btn-primary::after,
.card-header .btn.btn-sm.btn-info::before,
.card-header .btn.btn-sm.btn-info::after {
    display: none !important;
}

.campaign-status.status-active {
    background: #d1e7dd !important;
    background-image: none !important;
    color: #0f5132 !important;
    border: 1px solid #badbcc !important;
    border-radius: 6px !important;
    padding: 0.35em 0.65em !important;
    font-size: 0.75rem !important;
    font-weight: 500 !important;
    transform: none !important;
}

.campaign-status.status-active:hover {
    transform: none !important;
}

.campaign-status.status-completed {
    background: #e9ecef !important;
    background-image: none !important;
    color: #495057 !important;
    border: 1px solid #dee2e6 !important;
    border-radius: 6px !important;
    padding: 0.35em 0.65em !important;
    font-size: 0.75rem !important;
    font-weight: 500 !important;
    transform: none !important;
}

.campaign-status.status-completed:hover {
    transform: none !important;
}

.card .table .badge.bg-success {
    background: #d1e7dd !important;
    background-image: none !important;
    color: #0f5132 !important;
    border: 1px solid #badbcc !important;
    font-size: 0.75rem !important;
    font-weight: 500 !important;
}

.card .table .badge.bg-secondary {
    background: #e9ecef !important;
    background-image: none !important;
    color: #495057 !important;
    border: 1px solid #dee2e6 !important;
    font-size: 0.75rem !important;
    font-weight: 500 !important;
}

.card-body .text-center .btn-primary {
    background: #0d6efd !important;
    background-image: none !important;
    border: 1px solid #0d6efd !important;
    color: #fff !important;
    border-radius: 6px !important;
    font-weight: 500 !important;
    box-shadow: none !important;
    transform: none !important;
}

.card-body .text-center .btn-primary:hover,
.card-body .text-center .btn-primary:focus {
    background: #0b5ed7 !important;
    border-color: #0a58ca !important;
    color: #fff !important;
    transform: none !important;
    box-shadow: none !important;
}

/* Card body primary actions (e.g. type picker, empty states) */
.card-body .btn.btn-primary:not(.dropdown-toggle) {
    background: #0d6efd !important;
    background-image: none !important;
    border: 1px solid #0d6efd !important;
    color: #fff !important;
    border-radius: 6px !important;
    font-size: 0.875rem !important;
    font-weight: 500 !important;
    box-shadow: none !important;
    transform: none !important;
}

.card-body .btn.btn-primary:not(.dropdown-toggle):hover,
.card-body .btn.btn-primary:not(.dropdown-toggle):focus {
    background: #0b5ed7 !important;
    border-color: #0a58ca !important;
    color: #fff !important;
    transform: none !important;
    box-shadow: none !important;
}

.card-body .btn.btn-primary:not(.dropdown-toggle)::before,
.card-body .btn.btn-primary:not(.dropdown-toggle)::after {
    display: none !important;
}

.card-body .btn.btn-sm.btn-primary {
    background: #0d6efd !important;
    background-image: none !important;
    border: 1px solid #0d6efd !important;
    color: #fff !important;
    border-radius: 6px !important;
    font-size: 0.8125rem !important;
    font-weight: 500 !important;
    box-shadow: none !important;
    transform: none !important;
}

.card-body .btn.btn-sm.btn-primary:hover,
.card-body .btn.btn-sm.btn-primary:focus {
    background: #0b5ed7 !important;
    border-color: #0a58ca !important;
    color: #fff !important;
    transform: none !important;
    box-shadow: none !important;
}

.card-body .btn.btn-sm.btn-info {
    background: #e8f4fd !important;
    background-image: none !important;
    border: 1px solid #b6d4fe !important;
    color: #0d6efd !important;
    border-radius: 6px !important;
    font-size: 0.8125rem !important;
    font-weight: 500 !important;
    box-shadow: none !important;
    transform: none !important;
}

.card-body .btn.btn-sm.btn-info:hover,
.card-body .btn.btn-sm.btn-info:focus {
    background: #d0e8fc !important;
    border-color: #9ec5fe !important;
    color: #0b5ed7 !important;
    transform: none !important;
    box-shadow: none !important;
}

.card-body .btn.btn-sm.btn-primary::before,
.card-body .btn.btn-sm.btn-primary::after,
.card-body .btn.btn-sm.btn-info::before,
.card-body .btn.btn-sm.btn-info::after {
    display: none !important;
}
