/* 暗黑模式样式 */
body.dark-mode {
    background: linear-gradient(135deg, #1a1a2e 0%, #16213e 100%);
    color: #e0e0e0;
}

/* 导航栏暗黑模式 */
body.dark-mode .navbar-custom {
    background: linear-gradient(135deg, #2c3e50, #34495e);
}

body.dark-mode .navbar-custom .dropdown-menu {
    background: #2c3e50;
    border-color: #4a5568;
}

body.dark-mode .navbar-custom .dropdown-item {
    color: #e0e0e0;
}

body.dark-mode .navbar-custom .dropdown-item:hover {
    background: linear-gradient(135deg, #34495e, #3a5a7a);
    color: #fff;
}

/* 面包屑导航暗黑模式 */
body.dark-mode .breadcrumb-custom {
    background: linear-gradient(135deg, #2c3e50, #34495e);
    border-color: #4a5568;
}

body.dark-mode .breadcrumb-custom .breadcrumb-item {
    color: #b8b8b8;
}

body.dark-mode .breadcrumb-custom .breadcrumb-item a {
    color: #81c784;
}

body.dark-mode .breadcrumb-custom .breadcrumb-item a:hover {
    color: #a5d6a7;
}

body.dark-mode .breadcrumb-custom .breadcrumb-item.active {
    color: #e0e0e0;
}

/* 卡片暗黑模式 */
body.dark-mode .card {
    background: #2c3e50;
    border-color: #4a5568;
    color: #e0e0e0;
}

body.dark-mode .card-header {
    background: linear-gradient(135deg, #34495e, #2c3e50) !important;
    border-color: #4a5568;
}

body.dark-mode .card-body {
    background: #2c3e50;
}

/* 表单元素暗黑模式 */
body.dark-mode .form-control,
body.dark-mode .form-select {
    background-color: #34495e;
    border-color: #4a5568;
    color: #e0e0e0;
}

body.dark-mode .form-control:focus,
body.dark-mode .form-select:focus {
    background-color: #3a5a7a;
    border-color: #81c784;
    color: #e0e0e0;
}

body.dark-mode .form-control::placeholder {
    color: #999;
}

body.dark-mode .form-label {
    color: #b8b8b8;
}

/* 按钮暗黑模式 */
body.dark-mode .btn-outline-primary {
    color: #81c784;
    border-color: #81c784;
}

body.dark-mode .btn-outline-primary:hover {
    background-color: #81c784;
    color: #1a1a2e;
}

body.dark-mode .btn-outline-secondary {
    color: #b8b8b8;
    border-color: #4a5568;
}

body.dark-mode .btn-outline-secondary:hover {
    background-color: #4a5568;
    color: #e0e0e0;
}

body.dark-mode .btn-link {
    color: #81c784;
}

/* 历史记录卡片暗黑模式 */
body.dark-mode .history-card {
    background: #34495e;
    border-color: #4a5568;
}

body.dark-mode .history-card:hover {
    background: #3a5a7a;
}

/* Person cards暗黑模式 */
body.dark-mode .person-card {
    background: linear-gradient(135deg, #2c3e50 0%, #34495e 100%);
}

body.dark-mode .person-card.person-a {
    border-color: #5dade2;
}

body.dark-mode .person-card.person-b {
    border-color: #ec7063;
}

/* Info tip暗黑模式 */
body.dark-mode .info-tip {
    background: #34495e;
    border-left-color: #f39c12;
    color: #b8b8b8;
}

/* 空状态暗黑模式 */
body.dark-mode .empty-state {
    color: #7f8c8d;
}

/* 返回顶部按钮暗黑模式 */
body.dark-mode .back-to-top {
    background: linear-gradient(135deg, #5dade2, #3498db);
}

body.dark-mode .back-to-top:hover {
    background: linear-gradient(135deg, #3498db, #2980b9);
}

/* 暗黑模式切换按钮 */
.dark-mode-toggle {
    position: fixed;
    bottom: 100px;
    right: 30px;
    width: 50px;
    height: 50px;
    background: linear-gradient(135deg, #f39c12, #e67e22);
    color: white;
    border-radius: 50%;
    display: flex;
    align-items: center;
    justify-content: center;
    cursor: pointer;
    box-shadow: 0 4px 10px rgba(0,0,0,0.3);
    transition: all 0.3s;
    z-index: 999;
    border: none;
}

.dark-mode-toggle:hover {
    transform: translateY(-5px) rotate(20deg);
    box-shadow: 0 6px 15px rgba(0,0,0,0.4);
}

body.dark-mode .dark-mode-toggle {
    background: linear-gradient(135deg, #f1c40f, #f39c12);
}

.dark-mode-toggle i {
    font-size: 20px;
    transition: transform 0.3s;
}

.dark-mode-toggle:hover i {
    transform: rotate(180deg);
}

/* 过渡动画 */
body {
    transition: background 0.3s ease, color 0.3s ease;
}

.card, .form-control, .form-select, .btn {
    transition: background-color 0.3s ease, border-color 0.3s ease, color 0.3s ease;
}
