:root {
    --primary: #F3A304; /* NY Taxi Yellow */
    --primary-hover: #D68F03;
    --dark-bg: #30323d; /* Modern Dark Gray */
    --darker-bg: #21232b;
    --light-bg: #f8f9fa;
    --text-on-dark: #ffffff;
    --text-on-light: #333333;
    --accent: #5c80bc; /* Safety Blue */
}

/* Global Styles */
body#app {
    background-color: var(--light-bg);
    color: var(--text-on-light);
}

/* Sidebar Styling */
.mm-sidebar {
    background: var(--dark-bg) !important;
}

.mm-sidebar-logo {
    background: var(--darker-bg) !important;
    border-bottom: 1px solid rgba(255, 255, 255, 0.1);
}

.mm-sidebar-menu .side-menu li a {
    color: rgba(255, 255, 255, 0.7) !important;
}

.mm-sidebar-menu .side-menu li.active > a,
.mm-sidebar-menu .side-menu li a:hover {
    color: var(--primary) !important;
    background: rgba(243, 163, 4, 0.1) !important;
}

.mm-sidebar-menu .side-menu li a i {
    color: inherit !important;
}

/* Top Navbar */
.mm-top-navbar {
    background: #ffffff !important;
    box-shadow: 0 2px 10px rgba(0, 0, 0, 0.05) !important;
}

.navbar-light .navbar-nav .nav-link {
    color: var(--dark-bg) !important;
}

.navbar-light .navbar-nav .nav-link:hover {
    color: var(--primary) !important;
}

/* Buttons */
.btn-primary {
    background-color: var(--primary) !important;
    border-color: var(--primary) !important;
    color: #000 !important;
    font-weight: 600 !important;
}

.btn-primary:hover {
    background-color: var(--primary-hover) !important;
    border-color: var(--primary-hover) !important;
}

/* Cards */
.card {
    border: none !important;
    border-radius: 12px !important;
    box-shadow: 0 4px 20px rgba(0, 0, 0, 0.05) !important;
}

.card-header {
    background: transparent !important;
    border-bottom: 1px solid #f0f0f0 !important;
}

/* Badges */
.badge-primary {
    background-color: var(--primary) !important;
    color: #000 !important;
}

/* Dashboard Widgets */
.mm-card-report {
    background: var(--dark-bg) !important;
    color: #fff !important;
}

/* DataTables & Tables */
.table thead th {
    background-color: var(--light-bg) !important;
    color: var(--dark-bg) !important;
    text-transform: uppercase;
    font-size: 11px;
    letter-spacing: 1px;
}

/* Dark Mode Overrides */
.dark body#app {
    background-color: #1a1b22;
}

.dark .mm-top-navbar {
    background: var(--darker-bg) !important;
}

.dark .card {
    background: var(--dark-bg) !important;
    color: #fff !important;
}

/* Custom Navigation Brand */
.header-logo b {
    color: var(--primary) !important;
    font-size: 1.5rem;
    letter-spacing: -1px;
}

/* Scrollbar */
::-webkit-scrollbar {
    width: 6px;
}

::-webkit-scrollbar-thumb {
    background: var(--primary);
    border-radius: 10px;
}

/* Map Markers and Icons */
.text-primary {
    color: var(--primary) !important;
}

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