/* =========================
   TERMINAL-X DARK THEME
   ========================= */

/* Force Dark Theme Override */
body.dark-theme,
html.dark-theme body {
    /* Dark Theme Colors */
    --dark-bg: #0a0a0a;
    --light-bg: #1a1a1a;
    --white: #2d2d2d;
    --gray-50: #2d2d2d;
    --gray-100: #404040;
    --gray-200: #525252;
    --gray-300: #737373;
    --gray-400: #a3a3a3;
    --gray-500: #d4d4d4;
    --gray-600: #e5e5e5;
    --gray-700: #f5f5f5;
    --gray-800: #fafafa;
    --gray-900: #ffffff;
    
    /* Dark Theme Gradients */
    --gradient-card: linear-gradient(135deg, #2d2d2d 0%, #1a1a1a 100%);
    --gradient-hero: linear-gradient(135deg, #1a1a2e 0%, #0a0a0a 100%);
    
    /* Dark Theme Shadows */
    --shadow-xs: 0 1px 2px rgba(0,0,0,0.3);
    --shadow-sm: 0 2px 8px rgba(0,0,0,0.4);
    --shadow-md: 0 4px 16px rgba(0,0,0,0.5);
    --shadow-lg: 0 8px 32px rgba(0,0,0,0.6);
    --shadow-xl: 0 16px 48px rgba(0,0,0,0.7);
    --shadow-glow: 0 0 20px rgba(74, 144, 226, 0.2);
}

/* Dark Theme Specific Overrides */
@media (prefers-color-scheme: dark) {
    body {
        background-color: var(--dark-bg) !important;
        color: var(--gray-600) !important;
    }
    
    /* Header & Navigation */
    .navbar {
        background-color: var(--light-bg) !important;
        border-bottom: 1px solid var(--gray-100) !important;
    }
    
    .navbar-brand {
        color: var(--gray-700) !important;
    }
    
    .navbar-nav .nav-link {
        color: var(--gray-500) !important;
    }
    
    .navbar-nav .nav-link:hover {
        color: var(--primary-color) !important;
        background-color: rgba(74, 144, 226, 0.1) !important;
    }
    
    /* Footer */
    footer {
        background-color: var(--light-bg) !important;
        border-top: 1px solid var(--gray-100) !important;
        color: var(--gray-500) !important;
    }
    
    /* Cards */
    .card {
        background-color: var(--white) !important;
        border: 1px solid var(--gray-100) !important;
        color: var(--gray-600) !important;
    }
    
    .card-header {
        background-color: var(--gray-50) !important;
        border-bottom: 1px solid var(--gray-100) !important;
        color: var(--gray-700) !important;
    }
    
    .card-footer {
        background-color: var(--gray-50) !important;
        border-top: 1px solid var(--gray-100) !important;
        color: var(--gray-500) !important;
    }
    
    /* Forms */
    .form-control,
    .form-select {
        background-color: var(--white) !important;
        border-color: var(--gray-200) !important;
        color: var(--gray-600) !important;
    }
    
    .form-control:focus,
    .form-select:focus {
        background-color: var(--white) !important;
        border-color: var(--primary-color) !important;
        color: var(--gray-700) !important;
    }
    
    .form-label {
        color: var(--gray-600) !important;
    }
    
    /* Buttons */
    .btn-primary {
        background: var(--gradient-primary) !important;
        border-color: var(--primary-color) !important;
        color: var(--white) !important;
    }
    
    .btn-outline-primary {
        background-color: transparent !important;
        border-color: var(--primary-color) !important;
        color: var(--primary-color) !important;
    }
    
    .btn-outline-primary:hover {
        background-color: var(--primary-color) !important;
        color: var(--white) !important;
    }
    
    /* Badges */
    .badge {
        color: var(--white) !important;
    }
    
    .bg-soft-primary {
        background-color: rgba(74, 144, 226, 0.2) !important;
        color: var(--primary-color) !important;
    }
    
    .bg-soft-success {
        background-color: rgba(46, 204, 113, 0.2) !important;
        color: var(--success-color) !important;
    }
    
    .bg-soft-danger {
        background-color: rgba(231, 76, 60, 0.2) !important;
        color: var(--danger-color) !important;
    }
    
    /* Alerts */
    .alert {
        border: 1px solid !important;
        color: var(--white) !important;
    }
    
    .alert-primary {
        background-color: rgba(74, 144, 226, 0.2) !important;
        border-color: var(--primary-color) !important;
        color: var(--primary-color) !important;
    }
    
    /* Tables */
    .table {
        color: var(--gray-600) !important;
    }
    
    .table th {
        background-color: var(--gray-50) !important;
        border-bottom: 2px solid var(--gray-200) !important;
        color: var(--gray-700) !important;
    }
    
    /* Modals */
    .modal-content {
        background-color: var(--white) !important;
        border: 1px solid var(--gray-100) !important;
        color: var(--gray-600) !important;
    }
    
    .modal-header {
        background-color: var(--gray-50) !important;
        border-bottom: 1px solid var(--gray-100) !important;
        color: var(--gray-700) !important;
    }
    
    .modal-footer {
        background-color: var(--gray-50) !important;
        border-top: 1px solid var(--gray-100) !important;
    }
    
    /* Hero Section */
    .hero-section {
        background: var(--gradient-hero) !important;
        color: var(--gray-700) !important;
    }
    
    /* Breadcrumb */
    .breadcrumb {
        background-color: var(--gray-50) !important;
        border: 1px solid var(--gray-100) !important;
    }
    
    .breadcrumb-item a {
        color: var(--primary-color) !important;
    }
    
    /* Pagination */
    .pagination .page-link {
        background-color: var(--white) !important;
        border-color: var(--gray-200) !important;
        color: var(--gray-600) !important;
    }
    
    .pagination .page-link:hover {
        background-color: var(--primary-color) !important;
        border-color: var(--primary-color) !important;
        color: var(--white) !important;
    }
    
    .pagination .page-item.active .page-link {
        background: var(--gradient-primary) !important;
        border-color: var(--primary-color) !important;
    }
    
    /* Progress Bar */
    .progress {
        background-color: var(--gray-200) !important;
    }
    
    /* Ad Cards */
    .ad-card .card-front,
    .ad-card .card-back {
        background-color: var(--white) !important;
        color: var(--gray-600) !important;
    }
    
    .card-title {
        color: var(--gray-700) !important;
    }
    
    .card-text {
        color: var(--gray-500) !important;
    }
    
    .card-price {
        color: var(--primary-color) !important;
    }
    
    .card-location {
        color: var(--gray-500) !important;
    }
    
    /* Search Results */
    .search-result-item {
        background-color: var(--white) !important;
        border-color: var(--gray-100) !important;
        color: var(--gray-600) !important;
    }
    
    .search-result-item:hover {
        background-color: var(--gray-50) !important;
    }
    
    /* Autocomplete */
    #brandList,
    #modelList {
        background-color: var(--white) !important;
        border: 1px solid var(--gray-200) !important;
        color: var(--gray-600) !important;
    }
    
    #brandList li,
    #modelList li {
        color: var(--gray-600) !important;
    }
    
    #brandList li:hover,
    #modelList li:hover {
        background-color: var(--gray-50) !important;
    }
    
    /* Loading Spinner */
    .loading-spinner {
        border-color: var(--gray-200) !important;
        border-top-color: var(--primary-color) !important;
    }
    
    /* Text Colors */
    .text-primary { color: var(--primary-color) !important; }
    .text-success { color: var(--success-color) !important; }
    .text-danger { color: var(--danger-color) !important; }
    .text-warning { color: var(--warning-color) !important; }
    .text-info { color: var(--info-color) !important; }
    .text-muted { color: var(--gray-500) !important; }
    .text-light { color: var(--gray-400) !important; }
    .text-dark { color: var(--gray-700) !important; }
    
    /* Background Colors */
    .bg-primary { background-color: var(--primary-color) !important; }
    .bg-success { background-color: var(--success-color) !important; }
    .bg-danger { background-color: var(--danger-color) !important; }
    .bg-warning { background-color: var(--warning-color) !important; }
    .bg-info { background-color: var(--info-color) !important; }
    .bg-light { background-color: var(--light-bg) !important; }
    .bg-white { background-color: var(--white) !important; }
    .bg-dark { background-color: var(--dark-bg) !important; }
    
    /* Border Colors */
    .border { border-color: var(--gray-200) !important; }
    .border-top { border-top-color: var(--gray-200) !important; }
    .border-bottom { border-bottom-color: var(--gray-200) !important; }
    .border-left { border-left-color: var(--gray-200) !important; }
    .border-right { border-right-color: var(--gray-200) !important; }
    
    /* Scrollbar */
    ::-webkit-scrollbar-track {
        background: var(--gray-100) !important;
    }
    
    ::-webkit-scrollbar-thumb {
        background: var(--gray-400) !important;
    }
    
    ::-webkit-scrollbar-thumb:hover {
        background: var(--gray-500) !important;
    }
    
    /* Selection */
    ::selection {
        background-color: var(--primary-color) !important;
        color: var(--white) !important;
    }
}
