/* Global light UI polish */
:root {
    --bs-primary: #3b82f6;
    --bs-primary-rgb: 59, 130, 246;
    --bs-success: #16a34a;
    --bs-success-rgb: 22, 163, 74;
    --bs-info: #0ea5e9;
    --bs-info-rgb: 14, 165, 233;
    --bs-warning: #f59e0b;
    --bs-warning-rgb: 245, 158, 11;
    --bs-danger: #ef4444;
    --bs-danger-rgb: 239, 68, 68;
    --app-bg: #f5f7fb;
    --app-surface: #ffffff;
    --app-surface-soft: #f8fafc;
    --app-border: #dbe3ee;
    --app-text: #1f2937;
    --app-muted: #64748b;
    --app-shadow: 0 10px 28px rgba(15, 23, 42, 0.08);
}

html {
    background: var(--app-bg);
}

body {
    background:
        linear-gradient(180deg, #f8fbff 0, var(--app-bg) 240px),
        var(--app-bg);
    color: var(--app-text);
    min-height: 100vh;
}

body > .container {
    max-width: 1680px;
    padding-left: 18px;
    padding-right: 18px;
}

h1, h2, h3, h4, h5, h6 {
    color: #172033;
    letter-spacing: 0;
}

a {
    color: #2563eb;
}

a:hover {
    color: #1d4ed8;
}

.app-navbar {
    background: rgba(255, 255, 255, 0.94);
    border-bottom: 1px solid var(--app-border);
    box-shadow: 0 4px 18px rgba(15, 23, 42, 0.06);
    backdrop-filter: blur(10px);
}

.navbar .container-fluid {
    max-width: 1680px;
}

.navbar-brand {
    color: #1d4ed8 !important;
    font-weight: 700;
}

.navbar-nav .nav-link,
.navbar-nav .dropdown-toggle {
    color: #475569 !important;
    border-radius: 6px;
}

.navbar-nav .nav-link:hover,
.navbar-nav .dropdown-toggle:hover,
.navbar-nav .nav-link:focus,
.navbar-nav .dropdown-toggle:focus {
    background: #edf4ff;
    color: #1d4ed8 !important;
}

.navbar-toggler {
    border-color: #cbd5e1;
}

.navbar-toggler:focus {
    box-shadow: 0 0 0 0.18rem rgba(59, 130, 246, 0.18);
}

.navbar .form-control {
    border-color: var(--app-border);
    background: #f8fafc;
}

.navbar .btn-outline-light {
    color: #2563eb;
    border-color: #bfdbfe;
    background: #eff6ff;
}

.navbar .btn-outline-light:hover {
    color: #ffffff;
    border-color: #3b82f6;
    background: #3b82f6;
}

.card {
    border: 1px solid var(--app-border);
    border-radius: 8px;
    box-shadow: var(--app-shadow);
    overflow: hidden;
}

.card.bg-dark {
    background: var(--app-surface) !important;
    color: var(--app-text) !important;
    border: 1px solid var(--app-border) !important;
}

.card.bg-dark.text-white,
.card.bg-dark .text-white {
    color: var(--app-text) !important;
}

.card-header {
    border-bottom: 1px solid var(--app-border);
    background: #f8fafc;
    color: #172033;
    font-weight: 700;
}

.card-header.bg-primary,
.card-header.bg-success,
.card-header.bg-info,
.card-header.bg-secondary,
.card-header.bg-dark,
.card-header.bg-danger,
.card-header.bg-warning {
    color: #172033 !important;
    background: #eef6ff !important;
    border-bottom-color: #d7e7fb;
}

.card-header.bg-success {
    background: #eefbf3 !important;
    border-bottom-color: #ccefd9;
}

.card-header.bg-info {
    background: #eef8ff !important;
}

.card-header.bg-warning {
    background: #fff8e8 !important;
    border-bottom-color: #f9e3ad;
}

.card-header.bg-danger {
    background: #fff1f2 !important;
    border-bottom-color: #fecdd3;
}

.card-header.bg-primary .text-white,
.card-header.bg-primary .text-light,
.card-header.bg-success .text-white,
.card-header.bg-success .text-light,
.card-header.bg-info .text-white,
.card-header.bg-info .text-light,
.card-header.bg-secondary .text-white,
.card-header.bg-secondary .text-light,
.card-header.bg-dark .text-white,
.card-header.bg-dark .text-light,
.card-header.bg-danger .text-white,
.card-header.bg-danger .text-light,
.card-header.bg-warning .text-white,
.card-header.bg-warning .text-light,
.card-header.bg-primary .btn-link,
.card-header.bg-success .btn-link,
.card-header.bg-info .btn-link,
.card-header.bg-secondary .btn-link,
.card-header.bg-dark .btn-link,
.card-header.bg-danger .btn-link,
.card-header.bg-warning .btn-link {
    color: #2563eb !important;
}

.alert {
    border-radius: 8px;
    border-width: 1px;
}

.table {
    --bs-table-bg: #ffffff;
    --bs-table-striped-bg: #f8fafc;
    --bs-table-hover-bg: #eef6ff;
    color: #273244;
}

.table > :not(caption) > * > * {
    border-bottom-color: #e5eaf1;
}

.table thead th,
.table-light th {
    background: #f1f5f9 !important;
    color: #334155;
    font-weight: 700;
}

.table-responsive {
    overflow-x: auto;
    -webkit-overflow-scrolling: touch;
    border-radius: 8px;
}

.btn {
    border-radius: 6px;
    font-weight: 600;
}

.btn-primary {
    background: #3b82f6;
    border-color: #3b82f6;
}

.btn-primary:hover {
    background: #2563eb;
    border-color: #2563eb;
}

.btn-success {
    background: #16a34a;
    border-color: #16a34a;
}

.btn-success:hover {
    background: #15803d;
    border-color: #15803d;
}

.btn-info {
    color: #ffffff;
    background: #0ea5e9;
    border-color: #0ea5e9;
}

.btn-info:hover {
    color: #ffffff;
    background: #0284c7;
    border-color: #0284c7;
}

.btn-warning {
    color: #432d00;
    background: #fbbf24;
    border-color: #fbbf24;
}

.btn-warning:hover {
    color: #2f2100;
    background: #f59e0b;
    border-color: #f59e0b;
}

.btn-outline-primary {
    color: #2563eb;
    border-color: #bfdbfe;
}

.btn-outline-primary:hover {
    background: #3b82f6;
    border-color: #3b82f6;
}

.btn-outline-success {
    color: #15803d;
    border-color: #bbf7d0;
}

.btn-outline-success:hover {
    background: #16a34a;
    border-color: #16a34a;
}

.btn-outline-secondary {
    color: #475569;
    border-color: #cbd5e1;
}

.btn-outline-secondary:hover {
    color: #ffffff;
    background: #64748b;
    border-color: #64748b;
}

.form-control,
.form-select {
    border-color: #cfd8e3;
    border-radius: 6px;
}

.form-control:focus,
.form-select:focus {
    border-color: #93c5fd;
    box-shadow: 0 0 0 0.18rem rgba(59, 130, 246, 0.16);
}

.badge {
    border-radius: 6px;
    font-weight: 600;
}

.status-delivered {
    background-color: #dcfce7 !important;
    color: #166534 !important;
}

.status-in_transit {
    background-color: #dbeafe !important;
    color: #1e40af !important;
}

.status-exception {
    background-color: #fee2e2 !important;
    color: #991b1b !important;
}

.status-pending {
    background-color: #fef3c7 !important;
    color: #92400e !important;
}

.status-sto_intl {
    background-color: #ede9fe !important;
    color: #5b21b6 !important;
}

.dropdown-menu {
    border-color: var(--app-border);
    border-radius: 8px;
    box-shadow: var(--app-shadow);
}

.pagination-container .btn-page,
.pagination .page-link {
    border-radius: 6px;
}

.pagination-container .btn-page.active,
.pagination .page-item.active .page-link {
    background: #3b82f6;
    border-color: #3b82f6;
}
