/* Dark Theme (Default) */
.dark-theme {
    --bg-primary: #0a0a0a;
    --bg-secondary: #1a1a1a;
    --bg-tertiary: #2a2a2a;
    --text-primary: #ffffff;
    --text-secondary: #d1d4dc;
    --text-muted: #9ca3af;
    --border-color: #374151;
    --accent-color: #f59e0b;
    --success-color: #10b981;
    --error-color: #ef4444;
    --warning-color: #f59e0b;
    --info-color: #3b82f6;
}

/* Light Theme */
.light-theme {
    --bg-primary: #ffffff;
    --bg-secondary: #f8fafc;
    --bg-tertiary: #e2e8f0;
    --text-primary: #1f2937;
    --text-secondary: #4b5563;
    --text-muted: #6b7280;
    --border-color: #d1d5db;
    --accent-color: #f59e0b;
    --success-color: #10b981;
    --error-color: #ef4444;
    --warning-color: #f59e0b;
    --info-color: #3b82f6;
}

/* Apply theme variables to body */
body {
    background-color: var(--bg-primary);
    color: var(--text-primary);
    transition: background-color 0.3s ease, color 0.3s ease;
}

/* Dark theme specific styles */
.dark-theme {
    background-color: var(--bg-primary);
    color: var(--text-primary);
}

.dark-theme .bg-gray-800 {
    background-color: var(--bg-secondary) !important;
}

.dark-theme .bg-gray-700 {
    background-color: var(--bg-tertiary) !important;
}

.dark-theme .text-gray-400 {
    color: var(--text-muted) !important;
}

.dark-theme .text-gray-300 {
    color: var(--text-secondary) !important;
}

.dark-theme .border-gray-700 {
    border-color: var(--border-color) !important;
}

/* Light theme specific styles */
.light-theme {
    background-color: var(--bg-primary);
    color: var(--text-primary);
}

.light-theme .bg-gray-800 {
    background-color: var(--bg-secondary) !important;
    border: 1px solid var(--border-color);
}

.light-theme .bg-gray-700 {
    background-color: var(--bg-tertiary) !important;
    border: 1px solid var(--border-color);
}

.light-theme .text-gray-400 {
    color: var(--text-muted) !important;
}

.light-theme .text-gray-300 {
    color: var(--text-secondary) !important;
}

.light-theme .border-gray-700 {
    border-color: var(--border-color) !important;
}

.light-theme .text-white {
    color: var(--text-primary) !important;
}

/* Navigation bar theme styles */
.dark-theme nav {
    background-color: var(--bg-secondary);
    border-bottom: 1px solid var(--border-color);
}

.light-theme nav {
    background-color: var(--bg-secondary);
    border-bottom: 1px solid var(--border-color);
}

/* Card styles */
.dark-theme .bg-gray-800 {
    background-color: var(--bg-secondary);
    border: 1px solid var(--border-color);
}

.light-theme .bg-gray-800 {
    background-color: var(--bg-secondary);
    border: 1px solid var(--border-color);
    box-shadow: 0 1px 3px rgba(0, 0, 0, 0.1);
}

/* Button styles */
.dark-theme button {
    transition: all 0.3s ease;
}

.light-theme button {
    transition: all 0.3s ease;
}

.light-theme .bg-primary {
    background-color: var(--accent-color);
    color: var(--text-primary);
}

/* Chart container theme */
.dark-theme #tradingChart {
    background: #131722;
}

.light-theme #tradingChart {
    background: #ffffff;
    border: 1px solid var(--border-color);
}

/* Market sentiment colors */
.dark-theme .text-green-400 {
    color: var(--success-color) !important;
}

.dark-theme .text-red-400 {
    color: var(--error-color) !important;
}

.dark-theme .text-orange-400 {
    color: var(--warning-color) !important;
}

.dark-theme .text-blue-400 {
    color: var(--info-color) !important;
}

.light-theme .text-green-400 {
    color: var(--success-color) !important;
}

.light-theme .text-red-400 {
    color: var(--error-color) !important;
}

.light-theme .text-orange-400 {
    color: var(--warning-color) !important;
}

.light-theme .text-blue-400 {
    color: var(--info-color) !important;
}

/* Hover effects */
.dark-theme a:hover {
    color: var(--accent-color);
}

.light-theme a:hover {
    color: var(--accent-color);
}

/* Mobile menu theme */
.dark-theme #mobile-menu {
    background-color: var(--bg-secondary);
    border-right: 1px solid var(--border-color);
}

.light-theme #mobile-menu {
    background-color: var(--bg-secondary);
    border-right: 1px solid var(--border-color);
    box-shadow: 2px 0 10px rgba(0, 0, 0, 0.1);
}

/* Form elements */
.light-theme input,
.light-theme select,
.light-theme textarea {
    background-color: var(--bg-tertiary);
    border: 1px solid var(--border-color);
    color: var(--text-primary);
}

.dark-theme input,
.dark-theme select,
.dark-theme textarea {
    background-color: var(--bg-tertiary);
    border: 1px solid var(--border-color);
    color: var(--text-primary);
}

/* Modal styles */
.dark-theme .modal {
    background-color: var(--bg-secondary);
    border: 1px solid var(--border-color);
}

.light-theme .modal {
    background-color: var(--bg-secondary);
    border: 1px solid var(--border-color);
    box-shadow: 0 10px 25px rgba(0, 0, 0, 0.1);
}

/* Table styles */
.dark-theme table {
    background-color: var(--bg-secondary);
}

.light-theme table {
    background-color: var(--bg-secondary);
    border: 1px solid var(--border-color);
}

.dark-theme th,
.dark-theme td {
    border-color: var(--border-color);
}

.light-theme th,
.light-theme td {
    border-color: var(--border-color);
}

/* Scrollbar styles */
.dark-theme ::-webkit-scrollbar {
    width: 8px;
}

.dark-theme ::-webkit-scrollbar-track {
    background: var(--bg-secondary);
}

.dark-theme ::-webkit-scrollbar-thumb {
    background: var(--bg-tertiary);
    border-radius: 4px;
}

.dark-theme ::-webkit-scrollbar-thumb:hover {
    background: var(--text-muted);
}

.light-theme ::-webkit-scrollbar {
    width: 8px;
}

.light-theme ::-webkit-scrollbar-track {
    background: var(--bg-secondary);
}

.light-theme ::-webkit-scrollbar-thumb {
    background: var(--bg-tertiary);
    border-radius: 4px;
}

.light-theme ::-webkit-scrollbar-thumb:hover {
    background: var(--text-muted);
}

/* Auth pages — light theme */
.light-theme .auth-shell {
    background:
        radial-gradient(ellipse at top, rgba(0, 223, 154, 0.06) 0%, transparent 55%),
        var(--bg-primary);
}

.light-theme .auth-layout {
    border-color: var(--border-color);
    box-shadow: 0 20px 40px -12px rgba(0, 0, 0, 0.12);
}

.light-theme .auth-brand {
    background: linear-gradient(145deg, rgba(0, 223, 154, 0.12) 0%, var(--bg-secondary) 55%);
    border-right-color: var(--border-color);
}

.light-theme .auth-brand p,
.light-theme .auth-mobile-brand__tagline,
.light-theme .auth-panel-header p,
.light-theme .auth-footer-text {
    color: var(--text-muted);
}

.light-theme .auth-brand-list li {
    color: var(--text-secondary);
}

.light-theme .auth-panel {
    background: var(--bg-secondary);
}

.light-theme .auth-panel-header h1,
.light-theme .auth-brand h2 {
    color: var(--text-primary);
}

.light-theme .auth-field label {
    color: var(--text-secondary);
}

.light-theme .auth-input {
    background: var(--bg-primary);
    border-color: var(--border-color);
    color: var(--text-primary);
}

.light-theme .auth-input::placeholder {
    color: var(--text-muted);
}

.light-theme .auth-phone-prefix {
    background: var(--bg-tertiary);
    border-color: var(--border-color);
    color: var(--text-muted);
}

.light-theme .auth-remember-row label {
    color: var(--text-muted);
}

.light-theme .auth-footer-text a:hover,
.light-theme .auth-remember-row a:hover {
    color: var(--text-primary);
}

.light-theme .password-toggle-btn {
    color: var(--text-muted);
}

.light-theme .password-toggle-btn:hover {
    color: var(--text-primary);
}
