/**
 * Centralized Design System & Color Theme Variables for Horekamart
 * Menggunakan Palet Warna Baru (Brand & Semantic Colors)
 */

:root {
    /* ===================================================
       1. TEMA WARNA UTAMA & BRAND (Brand Color)
       =================================================== */
    --theme-primary: #F61D25;         /* Red Brand Color (#F61D25) */
    --theme-primary-hover: #D4141B;   /* Darker Red Hover */
    --theme-secondary: #4e73df;       /* Aksen Sekunder */
    --theme-dark: #3a3b45;            /* Header Tabel & Elemen Gelap */
    --theme-light-bg: #f8f9fc;        /* Background Utama Aplikasi */

    /* ===================================================
       2. WARNA SEMANTIK (Semantic Colors)
       =================================================== */
    --theme-success: #41C643;         /* Success Green (#41C643) */
    --theme-success-hover: #35AA37;

    --theme-info: #0A78FF;            /* Info Blue (#0A78FF) */
    --theme-info-hover: #0062D6;

    --theme-warning: #E8A302;         /* Warning Yellow/Amber (#E8A302) */
    --theme-warning-hover: #C98D00;

    --theme-danger: #D8245A;          /* Danger Magenta/Rose Red (#D8245A) */
    --theme-danger-hover: #B91A4B;
}

/* ===================================================
   3. OVERRIDE OTOMATIS BOOTSTRAP / SB-ADMIN-2
   =================================================== */

/* Primary (#F61D25) */
.bg-primary,
.btn-primary {
    background-color: var(--theme-primary) !important;
    border-color: var(--theme-primary) !important;
    color: #ffffff !important;
}
.btn-primary:hover,
.btn-primary:focus,
.btn-primary:active {
    background-color: var(--theme-primary-hover) !important;
    border-color: var(--theme-primary-hover) !important;
    color: #ffffff !important;
}
.text-primary { color: var(--theme-primary) !important; }
.border-primary { border-color: var(--theme-primary) !important; }

/* Success (#41C643) */
.bg-success,
.btn-success,
.badge-success {
    background-color: var(--theme-success) !important;
    border-color: var(--theme-success) !important;
    color: #ffffff !important;
}
.btn-success:hover,
.btn-success:focus,
.btn-success:active {
    background-color: var(--theme-success-hover) !important;
    border-color: var(--theme-success-hover) !important;
    color: #ffffff !important;
}
.text-success { color: var(--theme-success) !important; }
.border-success { border-color: var(--theme-success) !important; }

/* Info (#0A78FF) */
.bg-info,
.btn-info,
.badge-info {
    background-color: var(--theme-info) !important;
    border-color: var(--theme-info) !important;
    color: #ffffff !important;
}
.btn-info:hover,
.btn-info:focus,
.btn-info:active {
    background-color: var(--theme-info-hover) !important;
    border-color: var(--theme-info-hover) !important;
    color: #ffffff !important;
}
.text-info { color: var(--theme-info) !important; }
.border-info { border-color: var(--theme-info) !important; }

/* Warning (#E8A302) */
.bg-warning,
.btn-warning,
.badge-warning {
    background-color: var(--theme-warning) !important;
    border-color: var(--theme-warning) !important;
    color: #ffffff !important;
}
.btn-warning:hover,
.btn-warning:focus,
.btn-warning:active {
    background-color: var(--theme-warning-hover) !important;
    border-color: var(--theme-warning-hover) !important;
    color: #ffffff !important;
}
.text-warning { color: var(--theme-warning) !important; }
.border-warning { border-color: var(--theme-warning) !important; }

/* Danger (#D8245A) */
.bg-danger,
.btn-danger,
.badge-danger {
    background-color: var(--theme-danger) !important;
    border-color: var(--theme-danger) !important;
    color: #ffffff !important;
}
.btn-danger:hover,
.btn-danger:focus,
.btn-danger:active {
    background-color: var(--theme-danger-hover) !important;
    border-color: var(--theme-danger-hover) !important;
    color: #ffffff !important;
}
.text-danger { color: var(--theme-danger) !important; }
.border-danger { border-color: var(--theme-danger) !important; }

/* Header Modal & Header Tabel */
.style-header,
.modal-header.style-header {
    background-color: var(--theme-primary) !important;
    color: #ffffff !important;
}

.table-dark,
.table-dark > th {
    background-color: var(--theme-dark) !important;
    color: #ffffff !important;
}

/* DataTables Buttons Spacing */
div.dt-container div.dt-layout-row {
    margin-top: 0 !important;
    margin-bottom: 0.35rem !important;
}

div.dt-container div.dt-layout-cell {
    padding-top: 0 !important;
    padding-bottom: 0 !important;
}

.dt-buttons {
    margin-bottom: 0.35rem !important;
}

/* Standar Tabel Global */
.table {
    font-size: 13px;
}

/* Tipografi Angka (Tabular Nums) untuk Kolom Finansial & Data Seragam */
td.text-end,
th.text-end,
td.text-center,
th.text-center {
    font-variant-numeric: tabular-nums;
}

/* Khusus Tabel Mini di Dalam Sel Tabel (Nested Table Clean UI) */
.table td table,
.table td table tr,
.table td table td {
    background-color: transparent !important;
    border-color: transparent !important;
}

.table td table tbody > tr:last-child > * {
    border-bottom: none !important;
}
