/**
 * Dark Mode Styles (Regular)
 * TOEIC Vocabulary List - UI v1
 * 通常のダークモード（ネオンなし）
 */

/* ==================== Dark Mode Theme Variables ==================== */

body.dark-mode {
    /* Colors - Background */
    --color-bg-page: #0f172a;
    --color-bg-card: #1e293b;
    --color-bg-header: #0f172a;
    --color-bg-footer: #020617;

    /* Colors - Text */
    --color-text-primary: #f1f5f9;
    --color-text-secondary: #94a3b8;
    --color-text-light: #64748b;
    --color-text-inverse: #0f172a;

    /* Colors - Border */
    --color-border: #334155;
    --color-border-hover: #475569;

    /* Colors - Primary (slightly brighter for dark mode) */
    --color-primary: #3b82f6;
    --color-primary-dark: #2563eb;
    --color-primary-light: #60a5fa;

    /* Shadows (darker for dark mode) */
    --shadow-sm: 0 1px 2px 0 rgb(0 0 0 / 0.3);
    --shadow-md: 0 4px 6px -1px rgb(0 0 0 / 0.4), 0 2px 4px -2px rgb(0 0 0 / 0.3);
    --shadow-lg: 0 10px 15px -3px rgb(0 0 0 / 0.5), 0 4px 6px -4px rgb(0 0 0 / 0.4);
    --shadow-xl: 0 20px 25px -5px rgb(0 0 0 / 0.5), 0 8px 10px -6px rgb(0 0 0 / 0.4);
}

/* ==================== Header Elements ==================== */

body.dark-mode .header {
    background-color: var(--color-bg-header);
    border-bottom: 1px solid var(--color-border);
}

body.dark-mode .title {
    color: #ffffff;
}

body.dark-mode .subtitle {
    color: var(--color-text-light);
}

/* ==================== Level and Display Mode Buttons ==================== */

body.dark-mode .level-btn,
body.dark-mode .display-mode-btn {
    background-color: var(--color-bg-card);
    color: var(--color-text-secondary);
    border-color: var(--color-border);
}

body.dark-mode .level-btn:hover,
body.dark-mode .display-mode-btn:hover {
    border-color: var(--color-primary);
    color: var(--color-primary);
    background-color: rgba(59, 130, 246, 0.1);
}

body.dark-mode .level-btn.active,
body.dark-mode .display-mode-btn.active {
    background-color: var(--color-primary);
    border-color: var(--color-primary-dark);
    color: white;
}

/* ==================== Word Cards ==================== */

body.dark-mode .word-card {
    background-color: var(--color-bg-card);
    border-color: var(--color-border);
}

body.dark-mode .word-card:hover {
    border-color: var(--color-border-hover);
    box-shadow: 0 4px 12px rgba(0, 0, 0, 0.3);
}

body.dark-mode .word-english {
    color: var(--color-text-primary);
}

body.dark-mode .word-japanese {
    color: var(--color-text-secondary);
}

/* ==================== Statistics Cards ==================== */

body.dark-mode .statistics {
    background-color: var(--color-bg-card);
    border-color: var(--color-border);
}

body.dark-mode .stat-label {
    color: var(--color-text-secondary);
}

body.dark-mode .stat-value {
    color: var(--color-text-primary);
}

/* ==================== Floating Menu ==================== */

body.dark-mode .floating-menu {
    background-color: rgba(30, 41, 59, 0.95);
    border-top-color: var(--color-border);
    backdrop-filter: blur(10px);
}

body.dark-mode .floating-lang-btn {
    background-color: var(--color-bg-card);
    color: var(--color-text-primary);
    border-color: var(--color-border);
}

body.dark-mode .floating-lang-btn:hover {
    background-color: rgba(255, 255, 255, 0.05);
    border-color: var(--color-primary);
}

body.dark-mode .floating-lang-btn.active {
    background-color: var(--color-primary);
    color: white;
}

body.dark-mode .floating-nav-btn {
    background-color: var(--color-primary);
    color: white;
}

body.dark-mode .floating-nav-btn:hover:not(:disabled) {
    background-color: var(--color-primary-dark);
}

body.dark-mode .floating-nav-btn[id="scrollToTopBtn"] {
    background-color: var(--color-success);
}

body.dark-mode .floating-nav-btn[id="scrollToTopBtn"]:hover:not(:disabled) {
    background-color: #059669;
}

/* ==================== Sidebar Menu ==================== */

body.dark-mode .sidebar-menu {
    background-color: var(--color-bg-card);
}

body.dark-mode .sidebar-header {
    background-color: var(--color-bg-header);
    border-bottom-color: var(--color-border);
}

body.dark-mode .sidebar-title,
body.dark-mode .sidebar-close-btn {
    color: var(--color-text-primary);
}

/* ==================== Hamburger Menu ==================== */

body.dark-mode .hamburger-line {
    background-color: #ffffff;
}

/* ==================== Theme Toggle ==================== */

body.dark-mode .theme-toggle-label {
    color: var(--color-text-primary);
}

/* ==================== Folder and Mastery Filters ==================== */

body.dark-mode .folder-selector,
body.dark-mode .mastery-filter {
    background-color: var(--color-bg-card);
    border-color: var(--color-border);
}

body.dark-mode .folder-selector-btn,
body.dark-mode .mastery-filter-btn {
    background-color: var(--color-bg-card);
    color: var(--color-text-secondary);
    border-color: var(--color-border);
}

body.dark-mode .folder-selector-btn:hover,
body.dark-mode .mastery-filter-btn:hover {
    border-color: var(--color-primary);
    background-color: rgba(59, 130, 246, 0.1);
}

body.dark-mode .folder-selector-btn.active,
body.dark-mode .mastery-filter-btn.active {
    background-color: var(--color-primary);
    color: white;
}

/* ==================== Section Selector ==================== */

body.dark-mode .section-selector {
    background-color: var(--color-bg-card);
    border-color: var(--color-border);
}

body.dark-mode .section-checkbox-label {
    color: var(--color-text-primary);
}

body.dark-mode .section-checkbox-label:hover {
    background-color: rgba(59, 130, 246, 0.1);
}

/* ==================== TTS Icons ==================== */

body.dark-mode .tts-icon {
    color: #ffffff;
}

body.dark-mode .tts-icon:hover {
    color: #e2e8f0;
}

/* ==================== Loading Spinner ==================== */

body.dark-mode .loading-spinner {
    border-color: var(--color-border);
    border-top-color: var(--color-primary);
}

/* ==================== Related Words ==================== */

body.dark-mode .related-word {
    background-color: rgba(255, 255, 255, 0.05);
    border-color: var(--color-border);
}

body.dark-mode .related-word:hover {
    background-color: rgba(255, 255, 255, 0.1);
}

/* ==================== Badges ==================== */

body.dark-mode .word-level {
    background-color: rgba(255, 255, 255, 0.05);
}

body.dark-mode .meaning-pos {
    background-color: rgba(255, 255, 255, 0.05);
}

/* ==================== Footer ==================== */

body.dark-mode .footer {
    background-color: var(--color-bg-footer);
    border-top-color: var(--color-border);
}

/* ==================== Sidebar Overlay ==================== */

body.dark-mode .sidebar-overlay {
    background-color: rgba(0, 0, 0, 0.7);
}

/* ==================== Card Header Labels ==================== */

body.dark-mode .card-label {
    color: var(--color-text-secondary);
}

/* ==================== Smooth Transitions ==================== */

body {
    transition: background-color 0.3s ease, color 0.3s ease;
}

.word-card,
.stat-card,
.floating-menu,
.sidebar-menu,
.level-btn,
.display-mode-btn,
.floating-lang-btn,
.folder-selector-btn,
.mastery-filter-btn {
    transition:
        background-color 0.3s ease,
        color 0.3s ease,
        border-color 0.3s ease;
}
