/* ===================================
   DARK MODE IMPLEMENTATION - 2025
   Automatic + Manual Theme Switching
   =================================== */

/* CSS Variables for Light Theme (Default) */
:root {
    --bg-primary: #FFFFFF;
    --bg-secondary: #F9FAFB;
    --bg-tertiary: #F3F4F6;
    
    --text-primary: #1F2937;
    --text-secondary: #6B7280;
    --text-tertiary: #9CA3AF;
    
    --border-color: #E5E7EB;
    --shadow-sm: 0 1px 2px 0 rgba(0, 0, 0, 0.05);
    --shadow-md: 0 4px 6px -1px rgba(0, 0, 0, 0.1);
    --shadow-lg: 0 10px 15px -3px rgba(0, 0, 0, 0.1);
    --shadow-xl: 0 20px 25px -5px rgba(0, 0, 0, 0.1);
    
    --primary: #FF6B35;
    --primary-hover: #E85A2A;
    --secondary: #004E89;
    --secondary-hover: #003A6B;
    --accent: #FCBF49;
    
    --card-bg: #FFFFFF;
    --input-bg: #FFFFFF;
    --navbar-bg: #FFFFFF;
    --footer-bg: #1F2937;
    
    --transition-speed: 0.3s;
}

/* Dark Theme Variables */
[data-theme="dark"] {
    --bg-primary: #111827;
    --bg-secondary: #1F2937;
    --bg-tertiary: #374151;
    
    --text-primary: #F9FAFB;
    --text-secondary: #D1D5DB;
    --text-tertiary: #9CA3AF;
    
    --border-color: #374151;
    --shadow-sm: 0 1px 2px 0 rgba(0, 0, 0, 0.3);
    --shadow-md: 0 4px 6px -1px rgba(0, 0, 0, 0.4);
    --shadow-lg: 0 10px 15px -3px rgba(0, 0, 0, 0.5);
    --shadow-xl: 0 20px 25px -5px rgba(0, 0, 0, 0.6);
    
    --primary: #FF8856;
    --primary-hover: #FF9970;
    --secondary: #0066B2;
    --secondary-hover: #0077CC;
    --accent: #FFB84D;
    
    --card-bg: #1F2937;
    --input-bg: #374151;
    --navbar-bg: #1F2937;
    --footer-bg: #0F172A;
}

/* Apply Theme Colors */
body {
    background-color: var(--bg-primary);
    color: var(--text-primary);
    transition: background-color var(--transition-speed) ease,
                color var(--transition-speed) ease;
}

/* Theme Switcher Button */
.theme-switcher {
    position: fixed;
    top: 100px;
    right: 20px;
    z-index: 1000;
    background: var(--card-bg);
    border: 2px solid var(--border-color);
    border-radius: 50px;
    padding: 8px;
    box-shadow: var(--shadow-lg);
    display: flex;
    gap: 4px;
    transition: all var(--transition-speed) ease;
}

.theme-switcher:hover {
    box-shadow: var(--shadow-xl);
    transform: translateY(-2px);
}

.theme-option {
    width: 40px;
    height: 40px;
    border-radius: 50%;
    border: 2px solid transparent;
    background: var(--bg-tertiary);
    cursor: pointer;
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 18px;
    transition: all 0.2s ease;
    position: relative;
}

.theme-option:hover {
    transform: scale(1.1);
}

.theme-option.active {
    border-color: var(--primary);
    background: var(--primary);
    color: white;
}

.theme-option i {
    pointer-events: none;
}

/* Light Mode Icon */
.theme-light {
    color: #F59E0B;
}

.theme-light.active {
    animation: rotate 0.5s ease;
}

/* Dark Mode Icon */
.theme-dark {
    color: #6366F1;
}

.theme-dark.active {
    animation: rotate 0.5s ease;
}

/* Auto Mode Icon */
.theme-auto {
    color: #10B981;
}

@keyframes rotate {
    from { transform: rotate(0deg); }
    to { transform: rotate(360deg); }
}

/* Cards */
.corporate-card,
.card {
    background: var(--card-bg);
    color: var(--text-primary);
    border-color: var(--border-color);
    transition: all var(--transition-speed) ease;
}

/* Navbar */
.navbar {
    background: var(--navbar-bg) !important;
    border-bottom: 1px solid var(--border-color);
    box-shadow: var(--shadow-sm);
}

.navbar .nav-link {
    color: var(--text-primary) !important;
    transition: color var(--transition-speed) ease;
}

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

/* Footer */
.footer {
    background: var(--footer-bg);
    color: var(--text-secondary);
}

/* Forms */
.form-control,
.form-select {
    background-color: var(--input-bg);
    border-color: var(--border-color);
    color: var(--text-primary);
    transition: all var(--transition-speed) ease;
}

.form-control:focus,
.form-select:focus {
    background-color: var(--input-bg);
    border-color: var(--primary);
    color: var(--text-primary);
    box-shadow: 0 0 0 0.2rem rgba(255, 107, 53, 0.25);
}

[data-theme="dark"] .form-control:focus,
[data-theme="dark"] .form-select:focus {
    box-shadow: 0 0 0 0.2rem rgba(255, 136, 86, 0.25);
}

/* Tables */
.table {
    color: var(--text-primary);
}

.table-striped > tbody > tr:nth-of-type(odd) {
    background-color: var(--bg-secondary);
}

.table-hover > tbody > tr:hover {
    background-color: var(--bg-tertiary);
}

/* Modals */
.modal-content {
    background-color: var(--card-bg);
    color: var(--text-primary);
    border-color: var(--border-color);
}

.modal-header {
    border-bottom-color: var(--border-color);
}

.modal-footer {
    border-top-color: var(--border-color);
}

/* Buttons */
.btn-light {
    background-color: var(--bg-tertiary);
    border-color: var(--border-color);
    color: var(--text-primary);
}

.btn-light:hover {
    background-color: var(--bg-secondary);
    border-color: var(--border-color);
    color: var(--text-primary);
}

/* Dropdowns */
.dropdown-menu {
    background-color: var(--card-bg);
    border-color: var(--border-color);
    box-shadow: var(--shadow-lg);
}

.dropdown-item {
    color: var(--text-primary);
}

.dropdown-item:hover {
    background-color: var(--bg-secondary);
    color: var(--primary);
}

/* Alerts */
.alert {
    background-color: var(--bg-secondary);
    border-color: var(--border-color);
    color: var(--text-primary);
}

/* Badges */
.badge {
    transition: all var(--transition-speed) ease;
}

/* Project Cards */
.corporate-project-card {
    background: var(--card-bg);
    transition: all var(--transition-speed) ease;
}

/* Service Cards */
.corporate-card-icon {
    background: var(--bg-secondary);
    transition: all var(--transition-speed) ease;
}

[data-theme="dark"] .corporate-card-icon {
    background: var(--bg-tertiary);
}

/* Stats */
.corporate-stat-item {
    background: var(--card-bg);
    border-color: var(--border-color);
    transition: all var(--transition-speed) ease;
}

/* Testimonials */
[data-theme="dark"] .testimonial-card {
    background: var(--card-bg);
}

/* Images - Add slight overlay in dark mode */
[data-theme="dark"] img:not(.logo):not([class*="icon"]) {
    opacity: 0.9;
}

[data-theme="dark"] img:not(.logo):not([class*="icon"]):hover {
    opacity: 1;
}

/* Code Blocks */
pre,
code {
    background-color: var(--bg-secondary);
    color: var(--text-primary);
    border-color: var(--border-color);
}

/* Horizontal Rules */
hr {
    border-top-color: var(--border-color);
}

/* Shadows for Cards in Dark Mode */
[data-theme="dark"] .corporate-card:hover,
[data-theme="dark"] .card:hover {
    box-shadow: 0 20px 25px -5px rgba(0, 0, 0, 0.7);
}

/* Text Colors */
.text-muted {
    color: var(--text-secondary) !important;
}

/* Border Colors */
.border,
.border-top,
.border-bottom,
.border-left,
.border-right {
    border-color: var(--border-color) !important;
}

/* Background Colors */
.bg-light {
    background-color: var(--bg-secondary) !important;
}

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

/* Corporate Section */
.corporate-section {
    background-color: var(--bg-primary);
    transition: background-color var(--transition-speed) ease;
}

.corporate-section-light {
    background-color: var(--bg-secondary);
}

/* Hero Section Dark Mode Adjustments */
[data-theme="dark"] .hero-video-section .video-overlay {
    background: linear-gradient(
        135deg,
        rgba(0, 78, 137, 0.9) 0%,
        rgba(255, 107, 53, 0.8) 100%
    );
}

/* CTA Section Dark Mode Fix - Ana Sayfa */
[data-theme="dark"] .cta-section-premium {
    background: var(--bg-secondary) !important;
}

[data-theme="dark"] .cta-overlay {
    background: radial-gradient(circle at center, rgba(79, 70, 229, 0.15) 0%, transparent 70%) !important;
}

[data-theme="dark"] .cta-content h2,
[data-theme="dark"] .cta-content p {
    color: var(--text-primary) !important;
}

/* CTA Strip Dark Mode Fix - Detail Sayfası */
[data-theme="dark"] .cta-strip {
    background: var(--bg-secondary) !important;
}

[data-theme="dark"] .cta-strip h3,
[data-theme="dark"] .cta-strip p {
    color: var(--text-primary) !important;
}

[data-theme="dark"] .btn-white-cta {
    background: var(--primary) !important;
    color: white !important;
}

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

/* Mobile Optimization */
@media (max-width: 768px) {
    .theme-switcher {
        top: auto;
        bottom: 220px;
        right: 15px;
        flex-direction: column;
    }
    
    .theme-option {
        width: 45px;
        height: 45px;
    }
}

/* Smooth Transition for All Elements */
* {
    transition: background-color var(--transition-speed) ease,
                color var(--transition-speed) ease,
                border-color var(--transition-speed) ease;
}

/* Preserve Transitions on Interactive Elements */
button,
a,
input,
.btn,
.corporate-card {
    transition: all 0.3s ease !important;
}

/* Loading State */
.theme-switching body {
    pointer-events: none;
}

/* Accessibility */
@media (prefers-reduced-motion: reduce) {
    * {
        transition: none !important;
        animation: none !important;
    }
}

/* Print Styles - Always Light */
@media print {
    :root {
        --bg-primary: #FFFFFF;
        --bg-secondary: #F9FAFB;
        --text-primary: #1F2937;
        --card-bg: #FFFFFF;
    }
    
    .theme-switcher {
        display: none !important;
    }
}
