﻿/**
 * 时光邮局 - 深色模式样式（PC端）
 * 仅 PC 端加载
 * 覆盖全局样式以适配深色主题
 */

/* 深色模式根变量 */
:root {
    --dark-bg-primary: #1a1a2e;
    --dark-bg-secondary: #16213e;
    --dark-bg-card: #0f3460;
    --dark-text-primary: #eaeaea;
    --dark-text-secondary: #a0a0a0;
    --dark-text-muted: #6c757d;
    --dark-border: #2d3748;
    --dark-accent: #0066cc;
    --dark-accent-hover: #4a9eff;
}

/* 深色模式激活 */
body.dark-mode {
    background-color: var(--dark-bg-primary);
    color: var(--dark-text-primary);
}

/* 全局覆盖 */
body.dark-mode .page-wrapper {
    background-color: var(--dark-bg-primary);
}

body.dark-mode .container {
    background-color: transparent;
}

body.dark-mode .content {
    background-color: transparent;
}

/* 卡片样式 */
body.dark-mode .card,
body.dark-mode .letter-item,
body.dark-mode .user-info-card,
body.dark-mode .settings-section,
body.dark-mode .form-group,
body.dark-mode .account-info,
body.dark-mode .info-box {
    background-color: var(--dark-bg-card);
    border-color: var(--dark-border);
    color: var(--dark-text-primary);
}

/* 表单元素 */
body.dark-mode input[type="text"],
body.dark-mode input[type="email"],
body.dark-mode input[type="password"],
body.dark-mode input[type="number"],
body.dark-mode input[type="url"],
body.dark-mode input[type="tel"],
body.dark-mode textarea,
body.dark-mode select {
    background-color: var(--dark-bg-secondary);
    border-color: var(--dark-border);
    color: var(--dark-text-primary);
}

body.dark-mode input:focus,
body.dark-mode textarea:focus,
body.dark-mode select:focus {
    border-color: var(--dark-accent);
    box-shadow: 0 0 0 3px rgba(0, 102, 204, 0.2);
}

body.dark-mode input::placeholder,
body.dark-mode textarea::placeholder {
    color: var(--dark-text-muted);
}

/* 按钮样式 */
body.dark-mode .btn {
    background: linear-gradient(135deg, #4a9eff 0%, #0066cc 100%);
    color: #fff;
}

body.dark-mode .btn-outline {
    background: transparent;
    border-color: var(--dark-accent);
    color: var(--dark-accent);
}

body.dark-mode .btn-outline:hover {
    background: rgba(0, 102, 204, 0.1);
}

/* 链接 */
body.dark-mode a {
    color: var(--dark-accent);
}

body.dark-mode a:hover {
    color: var(--dark-accent-hover);
}

/* 文字颜色 */
body.dark-mode .text-muted,
body.dark-mode .text-secondary {
    color: var(--dark-text-secondary) !important;
}

body.dark-mode .text-primary {
    color: var(--dark-text-primary) !important;
}

/* 边框颜色 */
body.dark-mode .border,
body.dark-mode hr {
    border-color: var(--dark-border) !important;
}

/* 导航栏 */
body.dark-mode .navbar {
    background: transparent;
}

body.dark-mode .navbar a {
    color: var(--dark-text-secondary);
}

body.dark-mode .navbar a:hover,
body.dark-mode .navbar a.active {
    color: var(--dark-accent);
}

/* 侧边栏 */
body.dark-mode .sidebar {
    background-color: var(--dark-bg-secondary);
    border-color: var(--dark-border);
}

body.dark-mode .sidebar .nav-link {
    color: var(--dark-text-secondary);
}

body.dark-mode .sidebar .nav-link:hover,
body.dark-mode .sidebar .nav-link.active {
    color: var(--dark-accent);
    background-color: rgba(0, 102, 204, 0.1);
}

/* 模态框 */
body.dark-mode .modal-content {
    background-color: var(--dark-bg-card);
    color: var(--dark-text-primary);
    border-color: var(--dark-border);
}

/* 徽章 */
body.dark-mode .badge {
    color: #fff;
}

body.dark-mode .badge-success {
    background-color: #2d7a4f;
}

body.dark-mode .badge-warning {
    background-color: #c67c00;
}

/* 提示框 */
body.dark-mode .alert {
    color: var(--dark-text-primary);
}

body.dark-mode .alert-success {
    background-color: #1a3a2a;
    border-color: #2d7a4f;
}

body.dark-mode .alert-danger {
    background-color: #3a1a1a;
    border-color: #c0392b;
}

body.dark-mode .alert-info {
    background-color: #1a2a3a;
    border-color: var(--dark-accent);
}

/* 表格 */
body.dark-mode table {
    color: var(--dark-text-primary);
}

body.dark-mode th,
body.dark-mode td {
    border-color: var(--dark-border);
}

body.dark-mode .table-striped tbody tr:nth-of-type(odd) {
    background-color: rgba(255, 255, 255, 0.02);
}

/* 滚动条 */
body.dark-mode ::-webkit-scrollbar {
    width: 8px;
}

body.dark-mode ::-webkit-scrollbar-track {
    background: var(--dark-bg-secondary);
}

body.dark-mode ::-webkit-scrollbar-thumb {
    background: #4a5568;
    border-radius: 4px;
}

body.dark-mode ::-webkit-scrollbar-thumb:hover {
    background: #718096;
}

/* 选中文字 */
body.dark-mode ::selection {
    background: rgba(0, 102, 204, 0.3);
    color: #fff;
}

/* 标签页 */
body.dark-mode .tab-nav {
    border-bottom-color: var(--dark-border);
}

body.dark-mode .tab-btn {
    color: var(--dark-text-secondary);
}

body.dark-mode .tab-btn:hover,
body.dark-mode .tab-btn.active {
    color: var(--dark-accent);
    border-bottom-color: var(--dark-accent);
}

/* 状态徽章 */
body.dark-mode .status-sent {
    background-color: #1a3a2a;
    color: #52c8b4;
}

body.dark-mode .status-review {
    background-color: #3a1a1a;
    color: #e84749;
}

body.dark-mode .status-draft {
    background-color: #3a2a1a;
    color: #c67c00;
}

/* 公开/私有标记 */
body.dark-mode .badge-public {
    background-color: #1a3a2a;
    color: #52c8b4;
}

body.dark-mode .badge-private {
    background-color: #2a2a2a;
    color: #6c757d;
}

/* 空状态 */
body.dark-mode .empty-state {
    color: var(--dark-text-muted);
}

body.dark-mode .empty-state-icon {
    color: var(--dark-border);
}

/* 错误页面 */
body.dark-mode .error-code {
    color: var(--dark-accent);
}

/* 主题切换按钮 */
.theme-toggle {
    display: flex;
    align-items: center;
    padding: 8px 12px;
    border: none;
    background: transparent;
    color: var(--dark-text-secondary);
    cursor: pointer;
    border-radius: 20px;
    transition: all 0.3s ease;
    font-size: 14px;
}

.theme-toggle:hover {
    background: rgba(0, 102, 204, 0.1);
    color: var(--dark-accent);
}

.theme-toggle .icon-sun,
.theme-toggle .icon-moon {
    font-size: 18px;
}

body.dark-mode .theme-toggle .icon-sun {
    display: inline;
}

body.dark-mode .theme-toggle .icon-moon {
    display: none;
}

body:not(.dark-mode) .theme-toggle .icon-sun {
    display: none;
}

body:not(.dark-mode) .theme-toggle .icon-moon {
    display: inline;
}

/* 富文本编辑器深色模式 */
body.dark-mode .ck-editor__editable {
    background-color: var(--dark-bg-secondary) !important;
    color: var(--dark-text-primary) !important;
    border-color: var(--dark-border) !important;
}

body.dark-mode .ck-toolbar {
    background-color: var(--dark-bg-card) !important;
    border-color: var(--dark-border) !important;
}

body.dark-mode .ck-toolbar .ck-icon {
    color: var(--dark-text-secondary) !important;
}

/* 日期选择器深色模式 */
body.dark-mode .dt-popup-pc {
    background-color: var(--dark-bg-card);
    border-color: var(--dark-border);
}
body.dark-mode .dt-title { color: var(--dark-text-primary); }
body.dark-mode .dt-day { color: var(--dark-text-primary); }
body.dark-mode .dt-day:hover { background-color: rgba(106, 176, 243, 0.12); }
body.dark-mode .dt-day-sel { background-color: var(--dark-accent) !important; color: #fff !important; }
body.dark-mode .dt-day-past { color: var(--dark-text-muted); }
body.dark-mode .dt-day-empty { color: var(--dark-border); }
body.dark-mode .dt-time-bar { background: var(--dark-bg-secondary); border-color: var(--dark-border); }
body.dark-mode .dt-time-value { color: var(--dark-text-primary); }
body.dark-mode .dt-tw { background: var(--dark-bg-secondary); border-color: var(--dark-border); }
body.dark-mode .dt-ti { color: var(--dark-text-primary); }
body.dark-mode .dt-ti:hover { background: rgba(106, 176, 243, 0.08); }
body.dark-mode .dt-ti-ind { background: rgba(106, 176, 243, 0.08); border-color: rgba(106, 176, 243, 0.15); }
body.dark-mode .dt-btn-cancel { background: var(--dark-bg-secondary); color: var(--dark-text-secondary); }
body.dark-mode .dt-btn-cancel:hover { background: var(--dark-border); }
    color: var(--dark-text-primary);
}

