/* Dark Mode Specific Styles */
[data-theme="dark"] {
    /* Asosiy ranglar */
    --primary-color: #10b981;
    --primary-dark: #059669;
    --secondary-color: #9ca3af;
    --background-color: #0f172a;
    --surface-color: #1e293b;
    --text-primary: #f1f5f9;
    --text-secondary: #cbd5e1;
    --border-color: #334155;
    --shadow: 0 4px 6px -1px rgba(0, 0, 0, 0.5);
    --shadow-lg: 0 10px 15px -3px rgba(0, 0, 0, 0.5);
}

[data-theme="dark"] body {
    background-color: var(--background-color);
    color: var(--text-primary);
}

/* Header dark mode */
[data-theme="dark"] .header {
    background: rgba(15, 23, 42, 0.95);
    backdrop-filter: blur(10px);
    border-bottom-color: var(--border-color);
}

[data-theme="dark"] .nav-brand h2 {
    color: var(--primary-color);
}

[data-theme="dark"] .brand-tagline {
    color: var(--text-secondary);
}

[data-theme="dark"] .nav-link {
    color: var(--text-primary);
}

[data-theme="dark"] .nav-link:hover {
    color: var(--primary-color);
}

[data-theme="dark"] .mobile-menu {
    background: var(--surface-color);
    border-top-color: var(--border-color);
}

[data-theme="dark"] .mobile-nav-link {
    color: var(--text-primary);
    border-bottom-color: var(--border-color);
}

/* Hero section dark mode */
[data-theme="dark"] .hero {
    background: linear-gradient(135deg, #1e293b 0%, #0f172a 100%);
}

[data-theme="dark"] .hero-title {
    color: var(--text-primary);
}

[data-theme="dark"] .hero-subtitle {
    color: var(--text-secondary);
}

[data-theme="dark"] .hero-description {
    color: var(--text-secondary);
}

[data-theme="dark"] .feature-item {
    background: var(--surface-color);
    border-color: var(--border-color);
    color: var(--text-primary);
}

/* Pricing section dark mode */
[data-theme="dark"] .pricing-section {
    background: var(--surface-color);
}

[data-theme="dark"] .section-title {
    color: var(--text-primary);
}

[data-theme="dark"] .section-subtitle {
    color: var(--text-secondary);
}

[data-theme="dark"] .category-title {
    color: var(--text-primary);
}

[data-theme="dark"] .pricing-card {
    background: var(--background-color);
    border-color: var(--border-color);
}

[data-theme="dark"] .pricing-card:hover {
    border-color: var(--primary-color);
    box-shadow: 0 20px 25px -5px rgba(0, 0, 0, 0.5);
}

[data-theme="dark"] .plan-name {
    color: var(--text-primary);
}

[data-theme="dark"] .plan-feature {
    border-bottom-color: var(--border-color);
    color: var(--text-primary);
}

[data-theme="dark"] .feature-value {
    color: var(--text-primary);
}

[data-theme="dark"] .empty-message {
    color: var(--text-secondary);
}

/* Features section dark mode */
[data-theme="dark"] .features-section {
    background: var(--background-color);
}

[data-theme="dark"] .feature-card {
    background: var(--surface-color);
    border-color: var(--border-color);
}

[data-theme="dark"] .feature-card:hover {
    border-color: var(--primary-color);
}

[data-theme="dark"] .feature-card h3 {
    color: var(--text-primary);
}

[data-theme="dark"] .feature-card p {
    color: var(--text-secondary);
}

/* Modal dark mode */
[data-theme="dark"] .modal {
    background-color: rgba(0, 0, 0, 0.7);
}

[data-theme="dark"] .modal-content {
    background-color: var(--surface-color);
    border: 1px solid var(--border-color);
    color: var(--text-primary);
}

[data-theme="dark"] .close {
    color: var(--text-secondary);
}

[data-theme="dark"] .close:hover {
    color: var(--text-primary);
}

/* Form elements dark mode */
[data-theme="dark"] .form-group label {
    color: var(--text-primary);
}

[data-theme="dark"] .form-group input,
[data-theme="dark"] .form-group select,
[data-theme="dark"] .form-group textarea {
    background: var(--background-color);
    border-color: var(--border-color);
    color: var(--text-primary);
}

[data-theme="dark"] .form-group input:focus,
[data-theme="dark"] .form-group select:focus,
[data-theme="dark"] .form-group textarea:focus {
    border-color: var(--primary-color);
    background: var(--background-color);
    color: var(--text-primary);
}

[data-theme="dark"] .form-group input::placeholder,
[data-theme="dark"] .form-group textarea::placeholder {
    color: var(--text-secondary);
    opacity: 0.7;
}

/* Button dark mode */
[data-theme="dark"] .btn-secondary {
    background: transparent;
    color: var(--text-primary);
    border-color: var(--border-color);
}

[data-theme="dark"] .btn-secondary:hover {
    border-color: var(--primary-color);
    color: var(--primary-color);
    background: transparent;
}

/* Auth buttons dark mode */
[data-theme="dark"] .auth-btn {
    background: var(--background-color);
    border-color: var(--border-color);
    color: var(--text-primary);
}

[data-theme="dark"] .auth-btn.active {
    background: var(--primary-color);
    border-color: var(--primary-color);
    color: white;
}

[data-theme="dark"] .auth-btn:hover:not(.active) {
    border-color: var(--primary-color);
    color: var(--primary-color);
}

/* Auth link dark mode */
[data-theme="dark"] .auth-link {
    color: var(--text-secondary);
}

[data-theme="dark"] .auth-link a {
    color: var(--primary-color);
}

[data-theme="dark"] .auth-link a:hover {
    color: var(--primary-dark);
}

/* Utility elements dark mode */
[data-theme="dark"] .language-selector,
[data-theme="dark"] .theme-toggle {
    background: var(--background-color);
    border-color: var(--border-color);
    color: var(--text-primary);
}

[data-theme="dark"] .language-selector:focus,
[data-theme="dark"] .theme-toggle:focus {
    border-color: var(--primary-color);
    outline: none;
}

[data-theme="dark"] .theme-toggle:hover {
    background: var(--primary-color);
    color: white;
}

/* Footer dark mode */
[data-theme="dark"] .footer {
    background: var(--surface-color);
    border-top: 1px solid var(--border-color);
    color: var(--text-primary);
}

[data-theme="dark"] .footer-section h3,
[data-theme="dark"] .footer-section h4 {
    color: var(--text-primary);
}

[data-theme="dark"] .footer-section p {
    color: var(--text-secondary);
}

[data-theme="dark"] .social-links a {
    color: var(--text-secondary);
}

[data-theme="dark"] .social-links a:hover {
    color: var(--primary-color);
}

[data-theme="dark"] .footer-bottom {
    border-top-color: var(--border-color);
    color: var(--text-secondary);
}

/* Loading and notification dark mode */
[data-theme="dark"] .loading-overlay {
    background: rgba(0, 0, 0, 0.8);
}

[data-theme="dark"] .loading-spinner {
    border-color: #374151;
    border-top-color: var(--primary-color);
}

[data-theme="dark"] .loading-text {
    color: var(--text-primary);
}

[data-theme="dark"] .notification {
    background: var(--surface-color);
    border: 1px solid var(--border-color);
    color: var(--text-primary);
}

[data-theme="dark"] .notification-close {
    color: var(--text-secondary);
}

[data-theme="dark"] .notification-close:hover {
    color: var(--text-primary);
}

/* Error states dark mode */
[data-theme="dark"] .input.error {
    border-color: #ef4444 !important;
}

[data-theme="dark"] .field-error {
    color: #fca5a5;
}

/* Scrollbar dark mode */
[data-theme="dark"] ::-webkit-scrollbar {
    width: 8px;
}

[data-theme="dark"] ::-webkit-scrollbar-track {
    background: var(--background-color);
}

[data-theme="dark"] ::-webkit-scrollbar-thumb {
    background: var(--border-color);
    border-radius: 4px;
}

[data-theme="dark"] ::-webkit-scrollbar-thumb:hover {
    background: #475569;
}

/* Selection dark mode */
[data-theme="dark"] ::selection {
    background: var(--primary-color);
    color: white;
}

[data-theme="dark"] ::-moz-selection {
    background: var(--primary-color);
    color: white;
}

/* Mobile menu toggle dark mode */
[data-theme="dark"] .mobile-menu-toggle {
    color: var(--text-primary);
    background: transparent;
}

[data-theme="dark"] .mobile-menu-toggle:hover {
    background: var(--surface-color);
}

/* Python badge dark mode */
[data-theme="dark"] .python-badge {
    background: var(--primary-color);
    color: white;
}

/* Liquid glass effect dark mode */
[data-theme="dark"] .liquid-glass-effect {
    background: linear-gradient(45deg, transparent 30%, var(--primary-color) 100%);
    opacity: 0.05;
}

/* Focus states for accessibility */
[data-theme="dark"] .btn:focus,
[data-theme="dark"] .nav-link:focus,
[data-theme="dark"] .auth-btn:focus,
[data-theme="dark"] .theme-toggle:focus,
[data-theme="dark"] .language-selector:focus {
    outline: 2px solid var(--primary-color);
    outline-offset: 2px;
}

/* Disabled states */
[data-theme="dark"] .btn:disabled {
    background: var(--border-color);
    color: var(--text-secondary);
    border-color: var(--border-color);
    cursor: not-allowed;
}

[data-theme="dark"] .btn:disabled:hover {
    transform: none;
    background: var(--border-color);
    color: var(--text-secondary);
}

/* Print styles for dark mode */
@media print {
    [data-theme="dark"] {
        --background-color: white !important;
        --text-primary: black !important;
        --text-secondary: #666 !important;
        --border-color: #ddd !important;
    }
    
    [data-theme="dark"] .pricing-card,
    [data-theme="dark"] .feature-card {
        background: white !important;
        border-color: #ddd !important;
        color: black !important;
    }
}

/* Reduced motion support for dark mode */
@media (prefers-reduced-motion: reduce) {
    [data-theme="dark"] * {
        animation-duration: 0.01ms !important;
        animation-iteration-count: 1 !important;
        transition-duration: 0.01ms !important;
    }
}

/* High contrast support for dark mode */
@media (prefers-contrast: high) {
    [data-theme="dark"] {
        --border-color: #e5e7eb;
        --text-secondary: #f1f5f9;
    }
    
    [data-theme="dark"] .pricing-card,
    [data-theme="dark"] .feature-card {
        border-width: 2px;
    }
}

/* RTL support for Arabic in dark mode */
[data-theme="dark"][dir="rtl"] .hero-content,
[data-theme="dark"][dir="rtl"] .section-title,
[data-theme="dark"][dir="rtl"] .section-subtitle,
[data-theme="dark"][dir="rtl"] .category-title {
    text-align: right;
}

[data-theme="dark"][dir="rtl"] .hero-buttons,
[data-theme="dark"][dir="rtl"] .hero-features {
    justify-content: flex-end;
}

[data-theme="dark"][dir="rtl"] .plan-feature {
    flex-direction: row-reverse;
}

[data-theme="dark"][dir="rtl"] .form-group input,
[data-theme="dark"][dir="rtl"] .form-group select,
[data-theme="dark"][dir="rtl"] .form-group textarea {
    text-align: right;
}

/* Smooth transitions for theme switching */
.theme-transition * {
    transition: background-color 0.3s ease, 
                border-color 0.3s ease, 
                color 0.3s ease, 
                box-shadow 0.3s ease !important;
}

/* Performance optimization for theme transitions */
[data-theme="dark"] .pricing-grid,
[data-theme="dark"] .features-grid {
    will-change: transform;
}

/* Backdrop filter support */
@supports (backdrop-filter: blur(10px)) {
    [data-theme="dark"] .header {
        backdrop-filter: blur(10px);
    }
}

@supports not (backdrop-filter: blur(10px)) {
    [data-theme="dark"] .header {
        background: var(--surface-color);
    }
}