/**
 * Corporate brand theme — Olean Kasir
 * Light corporate palette: solid colors only, no gradients.
 */
:root {
    /* Brand palette */
    --corp-primary: #1d4ed8;
    --corp-primary-dark: #1e40af;
    --corp-primary-darker: #1e3a8a;
    --corp-secondary: #475569;
    --corp-secondary-dark: #334155;
    --corp-sidebar: #1e293b;
    --corp-sidebar-hover: #334155;
    --corp-accent-rgb: 29, 78, 216;
    --corp-shadow: 0 2px 8px rgba(29, 78, 216, 0.18);
    --corp-shadow-lg: 0 4px 16px rgba(29, 78, 216, 0.14);

    /* Surfaces & text */
    --corp-bg: #f1f5f9;
    --corp-surface: #ffffff;
    --corp-text: #1e293b;
    --corp-text-muted: #64748b;
    --corp-border: #e2e8f0;

    /* Semantic (money / status) */
    --corp-success: #16a34a;
    --corp-success-dark: #15803d;
    --corp-warning: #d97706;
    --corp-danger: #dc2626;

    /* Bootstrap 5 overrides */
    --bs-primary: var(--corp-primary);
    --bs-primary-rgb: var(--corp-accent-rgb);
    --bs-link-color: var(--corp-primary);
    --bs-link-hover-color: var(--corp-primary-dark);
}

/* Primary actions & accents */
.btn-primary {
    background-color: var(--corp-primary);
    border-color: var(--corp-primary);
    color: #fff;
}

.btn-primary:hover,
.btn-primary:focus,
.btn-primary:active,
.btn-primary.active {
    background-color: var(--corp-primary-dark);
    border-color: var(--corp-primary-dark);
    color: #fff;
    box-shadow: var(--corp-shadow);
}

.btn-outline-primary {
    color: var(--corp-primary);
    border-color: var(--corp-primary);
}

.btn-outline-primary:hover,
.btn-outline-primary:focus {
    background-color: var(--corp-primary);
    border-color: var(--corp-primary);
    color: #fff;
}

.text-primary {
    color: var(--corp-primary) !important;
}

.bg-primary {
    background-color: var(--corp-primary) !important;
}

.border-primary {
    border-color: var(--corp-primary) !important;
}

.badge.bg-primary {
    background-color: var(--corp-primary) !important;
}

a {
    color: var(--corp-primary);
}

a:hover {
    color: var(--corp-primary-dark);
}

/* Form focus */
.form-control:focus,
.form-select:focus {
    border-color: var(--corp-primary);
    box-shadow: 0 0 0 0.2rem rgba(var(--corp-accent-rgb), 0.2);
}

.form-check-input:checked {
    background-color: var(--corp-primary);
    border-color: var(--corp-primary);
}

/* Select2 bootstrap-5 theme */
.select2-container--bootstrap-5 .select2-dropdown .select2-results__option--highlighted.select2-results__option--selectable {
    background-color: var(--corp-primary);
}

.select2-container--bootstrap-5.select2-container--focus .select2-selection,
.select2-container--bootstrap-5.select2-container--open .select2-selection {
    border-color: var(--corp-primary);
    box-shadow: 0 0 0 0.2rem rgba(var(--corp-accent-rgb), 0.2);
}

/* Stat cards (shared pattern across list pages) */
.cust-stat-primary,
.cd-stat-primary,
.stx-stat-primary {
    border-left-color: var(--corp-primary) !important;
}

.cust-stat-primary .text-primary,
.cust-stat-primary .cust-stat-icon.text-primary,
.cust-stat-primary .cust-stat-val.text-primary,
.cd-stat-primary .text-primary,
.stx-stat-primary .text-primary {
    color: var(--corp-primary) !important;
}

/* DataTables accent alignment */
:root {
    --dt-accent: var(--corp-primary);
    --dt-stripe: rgba(var(--corp-accent-rgb), 0.04);
}

.dataTables_wrapper .page-item.active .page-link {
    background-color: var(--corp-primary);
    border-color: var(--corp-primary);
}

.dataTables_wrapper .page-link {
    color: var(--corp-primary);
}

.dataTables_wrapper .page-link:hover {
    color: var(--corp-primary-dark);
}

.dt-row-action-view:hover {
    color: var(--corp-primary) !important;
}
