/* 全局深色主题样式 - 解决所有页面的对比度问题 */

/* 基础深色主题样式 */
.dark-theme {
    background-color: #1a1a1a !important;
    color: #e2e8f0 !important;
}

/* 表单元素深色主题 */
.dark-theme .form-label {
    color: #e2e8f0 !important;
}

.dark-theme .form-text {
    color: #a0aec0 !important;
}

.dark-theme .form-control,
.dark-theme .form-select {
    background-color: #4a5568 !important;
    border-color: #718096 !important;
    color: #e2e8f0 !important;
}

.dark-theme .form-control:focus,
.dark-theme .form-select:focus {
    background-color: #4a5568 !important;
    border-color: #63b3ed !important;
    color: #e2e8f0 !important;
    box-shadow: 0 0 0 0.2rem rgba(99, 179, 237, 0.25) !important;
}

.dark-theme .form-control::placeholder {
    color: #a0aec0 !important;
}

/* 卡片深色主题 */
.dark-theme .card {
    background-color: #2d3748 !important;
    border-color: #4a5568 !important;
    color: #e2e8f0 !important;
}

.dark-theme .card-header {
    background-color: #4a5568 !important;
    border-bottom-color: #718096 !important;
    color: #e2e8f0 !important;
}

.dark-theme .card-body {
    color: #e2e8f0 !important;
}

/* bg-light 深色主题适配 */
.dark-theme .bg-light {
    background-color: #4a5568 !important;
    color: #e2e8f0 !important;
}

.dark-theme .bg-light .text-muted {
    color: #a0aec0 !important;
}

/* progress-section 深色主题适配 */
.dark-theme .progress-section {
    background: linear-gradient(135deg, #2d3748 0%, #4a5568 100%) !important;
    color: #e2e8f0 !important;
}

.dark-theme .progress-section h2,
.dark-theme .progress-section .display-6 {
    color: #ffffff !important;
}

.dark-theme .progress-section .lead {
    color: #cbd5e0 !important;
}

/* text-dark 深色主题适配 */
.dark-theme .text-dark {
    color: #e2e8f0 !important;
}

/* 表格深色主题 */
.dark-theme .table {
    color: #e2e8f0 !important;
}

.dark-theme .table thead th {
    background-color: #4a5568 !important;
    border-color: #718096 !important;
    color: #e2e8f0 !important;
}

.dark-theme .table tbody td {
    border-color: #4a5568 !important;
}

.dark-theme .table-striped tbody tr:nth-of-type(odd) {
    background-color: rgba(74, 85, 104, 0.3) !important;
}

/* 按钮深色主题 */
.dark-theme .btn-outline-primary {
    color: #63b3ed !important;
    border-color: #63b3ed !important;
}

.dark-theme .btn-outline-primary:hover {
    background-color: #63b3ed !important;
    color: #1a1a1a !important;
}

.dark-theme .btn-outline-secondary {
    color: #a0aec0 !important;
    border-color: #718096 !important;
}

.dark-theme .btn-outline-secondary:hover {
    background-color: #718096 !important;
    color: #1a1a1a !important;
}

.dark-theme .btn-outline-success {
    color: #68d391 !important;
    border-color: #68d391 !important;
}

.dark-theme .btn-outline-success:hover {
    background-color: #68d391 !important;
    color: #1a1a1a !important;
}

.dark-theme .btn-outline-warning {
    color: #fbbf24 !important;
    border-color: #fbbf24 !important;
}

.dark-theme .btn-outline-warning:hover {
    background-color: #fbbf24 !important;
    color: #1a1a1a !important;
}

.dark-theme .btn-outline-danger {
    color: #fc8181 !important;
    border-color: #fc8181 !important;
}

.dark-theme .btn-outline-danger:hover {
    background-color: #fc8181 !important;
    color: #1a1a1a !important;
}

.dark-theme .btn-outline-info {
    color: #81e6d9 !important;
    border-color: #81e6d9 !important;
}

.dark-theme .btn-outline-info:hover {
    background-color: #81e6d9 !important;
    color: #1a1a1a !important;
}

/* 警告框深色主题 */
.dark-theme .alert {
    background-color: #2d3748 !important;
    border-color: #4a5568 !important;
    color: #e2e8f0 !important;
}

.dark-theme .alert-warning {
    background-color: rgba(245, 158, 11, 0.1) !important;
    border-color: #f59e0b !important;
    color: #fbbf24 !important;
}

.dark-theme .alert-info {
    background-color: rgba(59, 130, 246, 0.1) !important;
    border-color: #3b82f6 !important;
    color: #93c5fd !important;
}

.dark-theme .alert-success {
    background-color: rgba(34, 197, 94, 0.1) !important;
    border-color: #22c55e !important;
    color: #86efac !important;
}

.dark-theme .alert-danger {
    background-color: rgba(239, 68, 68, 0.1) !important;
    border-color: #ef4444 !important;
    color: #fca5a5 !important;
}

/* 模态框深色主题 */
.dark-theme .modal-content {
    background-color: #2d3748 !important;
    border-color: #4a5568 !important;
}

.dark-theme .modal-header {
    border-bottom-color: #4a5568 !important;
}

.dark-theme .modal-footer {
    border-top-color: #4a5568 !important;
}

/* 下拉菜单深色主题 */
.dark-theme .dropdown-menu {
    background-color: #2d3748 !important;
    border-color: #4a5568 !important;
}

.dark-theme .dropdown-item {
    color: #e2e8f0 !important;
}

.dark-theme .dropdown-item:hover {
    background-color: #4a5568 !important;
    color: #ffffff !important;
}

/* 导航深色主题 */
.dark-theme .navbar {
    background-color: #1a202c !important; /* 更深的背景色 */
    border-bottom: 2px solid rgba(255,255,255,0.1) !important; /* 增强边框 */
    box-shadow: 0 2px 20px rgba(0,0,0,0.3) !important; /* 增强阴影 */
}

.dark-theme .navbar-brand {
    color: #ffffff !important; /* 白色文字 */
    text-shadow: 0 1px 2px rgba(0,0,0,0.5) !important; /* 增强文字阴影 */
}

.dark-theme .navbar-nav .nav-link {
    color: #e2e8f0 !important; /* 浅色文字，确保对比度 */
    font-weight: 600 !important; /* 加粗字体 */
    text-shadow: 0 1px 1px rgba(0,0,0,0.3) !important; /* 添加文字阴影 */
}

.dark-theme .navbar-nav .nav-link:hover {
    color: #90cdf4 !important; /* 悬停时使用亮蓝色 */
    background-color: rgba(255,255,255,0.1) !important; /* 悬停背景色 */
    text-shadow: 0 1px 2px rgba(0,0,0,0.5) !important; /* 悬停时增强阴影 */
}

.dark-theme .navbar-nav .nav-link.active {
    color: #63b3ed !important; /* 激活状态使用蓝色 */
    background-color: rgba(255,255,255,0.15) !important; /* 激活状态背景色 */
    font-weight: 700 !important; /* 激活状态加粗 */
    text-shadow: 0 1px 2px rgba(0,0,0,0.5) !important;
}

.dark-theme .breadcrumb-item {
    color: #a0aec0 !important;
}

.dark-theme .breadcrumb-item.active {
    color: #e2e8f0 !important;
}

.dark-theme .breadcrumb-item a {
    color: #63b3ed !important;
}

.dark-theme .breadcrumb-item a:hover {
    color: #90cdf4 !important;
}

/* 进度条深色主题 */
.dark-theme .progress {
    background-color: #4a5568 !important;
}

/* 文字颜色深色主题 */
.dark-theme .text-muted {
    color: #a0aec0 !important;
}

.dark-theme .text-secondary {
    color: #cbd5e0 !important;
}

.dark-theme .text-primary {
    color: #63b3ed !important;
}

/* 标题文字深色主题 */
.dark-theme .display-6 {
    color: #ffffff !important;
}

.dark-theme h1, .dark-theme h2, .dark-theme h3, .dark-theme h4, .dark-theme h5, .dark-theme h6 {
    color: #ffffff !important;
}

.dark-theme .text-success {
    color: #68d391 !important;
}

.dark-theme .text-danger {
    color: #fc8181 !important;
}

.dark-theme .text-warning {
    color: #fbbf24 !important;
}

.dark-theme .text-info {
    color: #81e6d9 !important;
}

/* 徽章深色主题 */
.dark-theme .badge.bg-warning {
    background-color: #f59e0b !important;
    color: #1a1a1a !important;
}

.dark-theme .badge.bg-success {
    background-color: #22c55e !important;
    color: #ffffff !important;
}

.dark-theme .badge.bg-primary {
    background-color: #3b82f6 !important;
    color: #ffffff !important;
}

.dark-theme .badge.bg-info {
    background-color: #06b6d4 !important;
    color: #ffffff !important;
}

.dark-theme .badge.bg-danger {
    background-color: #ef4444 !important;
    color: #ffffff !important;
}

.dark-theme .badge.bg-secondary {
    background-color: #718096 !important;
    color: #ffffff !important;
}

/* 复选框和单选框深色主题 */
.dark-theme .form-check-input {
    background-color: #4a5568 !important;
    border-color: #718096 !important;
}

.dark-theme .form-check-input:checked {
    background-color: #63b3ed !important;
    border-color: #63b3ed !important;
}

.dark-theme .form-check-label {
    color: #e2e8f0 !important;
}

/* 输入组深色主题 */
.dark-theme .input-group-text {
    background-color: #4a5568 !important;
    border-color: #718096 !important;
    color: #e2e8f0 !important;
}

/* 列表组深色主题 */
.dark-theme .list-group {
    background-color: #2d3748 !important;
    border-color: #4a5568 !important;
}

.dark-theme .list-group-item {
    background-color: #2d3748 !important;
    border-color: #4a5568 !important;
    color: #e2e8f0 !important;
}

.dark-theme .list-group-item:hover {
    background-color: #4a5568 !important;
}

/* 分页深色主题 */
.dark-theme .pagination .page-link {
    background-color: #2d3748 !important;
    border-color: #4a5568 !important;
    color: #e2e8f0 !important;
}

.dark-theme .pagination .page-item.active .page-link {
    background-color: #63b3ed !important;
    border-color: #63b3ed !important;
    color: #1a1a1a !important;
}

/* 工具提示深色主题 */
.dark-theme .tooltip-inner {
    background-color: #2d3748 !important;
    color: #e2e8f0 !important;
}

.dark-theme .tooltip.bs-tooltip-top .tooltip-arrow::before {
    border-top-color: #2d3748 !important;
}

.dark-theme .tooltip.bs-tooltip-bottom .tooltip-arrow::before {
    border-bottom-color: #2d3748 !important;
}

.dark-theme .tooltip.bs-tooltip-start .tooltip-arrow::before {
    border-left-color: #2d3748 !important;
}

.dark-theme .tooltip.bs-tooltip-end .tooltip-arrow::before {
    border-right-color: #2d3748 !important;
}

/* 加载动画深色主题 */
.dark-theme .spinner-border {
    color: #63b3ed !important;
}

/* 图表容器深色主题 */
.dark-theme .chart-container {
    background-color: #2d3748 !important;
    border-color: #4a5568 !important;
}

/* 性能指标标签深色主题 */
.dark-theme .performance-label {
    color: #e2e8f0 !important;
}

/* 性能卡片深色主题 */
.dark-theme .performance-card {
    background-color: #4a5568 !important;
    color: #e2e8f0 !important;
}

.dark-theme .performance-card .text-muted {
    color: #a0aec0 !important;
}

/* 信息卡片深色主题 */
.dark-theme .info-card {
    background-color: #4a5568 !important;
    color: #e2e8f0 !important;
}

.dark-theme .info-card .text-muted {
    color: #a0aec0 !important;
}

/* AI策略分析报告深色主题 */
.dark-theme .ai-explanation {
    color: #e2e8f0 !important;
}

.dark-theme .card.border-info {
    border-color: #63b3ed !important;
}

.dark-theme .card.border-info .card-header {
    background-color: rgba(99, 179, 237, 0.2) !important;
    border-bottom-color: #63b3ed !important;
}

.dark-theme .card.border-info .card-header h5 {
    color: #93c5fd !important;
}

.dark-theme .card.border-success {
    border-color: #68d391 !important;
}

.dark-theme .card.border-success .card-header {
    background-color: rgba(104, 211, 145, 0.2) !important;
    border-bottom-color: #68d391 !important;
}

.dark-theme .card.border-success .card-header h5 {
    color: #86efac !important;
}

/* 代码块深色主题 */
.dark-theme pre {
    background-color: #2d3748 !important;
    border-color: #4a5568 !important;
    color: #e2e8f0 !important;
}

.dark-theme code {
    background-color: #4a5568 !important;
    color: #e2e8f0 !important;
}

/* 滚动条深色主题 */
.dark-theme ::-webkit-scrollbar {
    width: 8px;
}

.dark-theme ::-webkit-scrollbar-track {
    background: #2d3748 !important;
}

.dark-theme ::-webkit-scrollbar-thumb {
    background: #4a5568 !important;
    border-radius: 4px;
}

.dark-theme ::-webkit-scrollbar-thumb:hover {
    background: #718096 !important;
}

/* 特殊元素深色主题 */
.dark-theme .nav-tabs .nav-link {
    color: #a0aec0 !important;
    border-color: #4a5568 !important;
}

.dark-theme .nav-tabs .nav-link.active {
    background-color: #4a5568 !important;
    border-color: #4a5568 !important;
    color: #e2e8f0 !important;
}

/* 响应式深色主题 */
@media (max-width: 768px) {
    .dark-theme .card-body {
        padding: 1rem !important;
    }
    
    .dark-theme .btn {
        font-size: 0.9rem !important;
    }
} 