/**
 * 夜间模式样式
 */

/* 夜间模式基础样式 */
body.dark-mode {
    background-color: #1a1a1a;
    color: #e0e0e0;
}

/* MDUI 夜间模式覆盖 */
body.dark-mode .mdui-color-grey-100 {
    background-color: #2d2d2d !important;
}

body.dark-mode .mdui-card {
    background-color: #2d2d2d;
    color: #e0e0e0;
}

body.dark-mode .mdui-text-color-black-secondary {
    color: rgba(255,255,255,0.7) !important;
}

body.dark-mode .mdui-text-color-black-disabled {
    color: rgba(255,255,255,0.5) !important;
}

body.dark-mode .mdui-typo-caption {
    color: rgba(255,255,255,0.6);
}

body.dark-mode .mdui-list-item-content {
    color: #e0e0e0;
}

body.dark-mode .mdui-drawer {
    background-color: #1a1a1a;
}

body.dark-mode .mdui-subheader {
    color: rgba(255,255,255,0.5);
}

body.dark-mode .mdui-divider {
    background-color: rgba(255,255,255,0.1);
}

/* Layui 夜间模式覆盖 */
body.dark-mode .layui-body {
    background-color: #1a1a1a;
}

body.dark-mode .layui-card {
    background-color: #2d2d2d;
    color: #e0e0e0;
}

body.dark-mode .layui-card-header {
    border-bottom-color: rgba(255,255,255,0.1);
    color: #e0e0e0;
}

body.dark-mode .layui-text {
    color: #e0e0e0;
}

body.dark-mode .layui-form-label {
    color: #e0e0e0;
}

body.dark-mode .layui-input,
body.dark-mode .layui-textarea {
    background-color: #3d3d3d;
    border-color: #4d4d4d;
    color: #e0e0e0;
}

body.dark-mode .layui-input:focus,
body.dark-mode .layui-textarea:focus {
    border-color: #008ba3;
}

body.dark-mode .layui-btn-primary {
    background-color: #3d3d3d;
    border-color: #4d4d4d;
    color: #e0e0e0;
}

body.dark-mode .layui-btn-primary:hover {
    background-color: #4d4d4d;
}

body.dark-mode .layui-table {
    background-color: #2d2d2d;
    color: #e0e0e0;
}

body.dark-mode .layui-table th {
    background-color: #3d3d3d;
    color: #e0e0e0;
}

body.dark-mode .layui-table td {
    border-color: rgba(255,255,255,0.1);
}

body.dark-mode .layui-table tr:hover {
    background-color: #3d3d3d;
}

body.dark-mode .layui-nav-tree {
    background-color: #0d0d0d;
}

body.dark-mode .layui-nav-tree .layui-nav-item a {
    color: rgba(255,255,255,0.7);
}

body.dark-mode .layui-nav-tree .layui-nav-child {
    background-color: rgba(0,0,0,0.3) !important;
}

body.dark-mode .layui-nav-tree .layui-nav-child a {
    color: rgba(255,255,255,0.7);
}

body.dark-mode .layui-nav-tree .layui-nav-child a:hover {
    background-color: rgba(255,255,255,0.1);
}

/* 公共组件夜间模式 */
body.dark-mode .form-control {
    background-color: #3d3d3d;
    border-color: #4d4d4d;
    color: #e0e0e0;
}

body.dark-mode .form-control:focus {
    border-color: #008ba3;
}

body.dark-mode .result-box {
    background-color: #2d2d2d;
    border-color: #3d3d3d;
    color: #e0e0e0;
}

body.dark-mode pre {
    background-color: #2d2d2d;
    border-color: #3d3d3d;
    color: #e0e0e0;
}

body.dark-mode code {
    background-color: #3d3d3d;
    color: #e0e0e0;
}

body.dark-mode .upload-area {
    border-color: #4d4d4d;
    color: #999;
}

body.dark-mode .upload-area:hover {
    border-color: #008ba3;
    background-color: rgba(0, 139, 163, 0.1);
}

body.dark-mode .alert-info {
    background-color: rgba(25, 118, 210, 0.2);
    color: #90caf9;
    border-color: rgba(25, 118, 210, 0.3);
}

body.dark-mode .alert-success {
    background-color: rgba(56, 142, 60, 0.2);
    color: #a5d6a7;
    border-color: rgba(56, 142, 60, 0.3);
}

body.dark-mode .alert-warning {
    background-color: rgba(245, 124, 0, 0.2);
    color: #ffcc80;
    border-color: rgba(245, 124, 0, 0.3);
}

body.dark-mode .alert-error {
    background-color: rgba(211, 47, 47, 0.2);
    color: #ef9a9a;
    border-color: rgba(211, 47, 47, 0.3);
}

body.dark-mode .table th {
    background-color: #3d3d3d;
    color: #e0e0e0;
}

body.dark-mode .table td {
    border-color: #3d3d3d;
}

body.dark-mode .table tr:hover {
    background-color: #3d3d3d;
}

body.dark-mode .tag-primary {
    background-color: rgba(25, 118, 210, 0.3);
    color: #90caf9;
}

body.dark-mode .tag-success {
    background-color: rgba(56, 142, 60, 0.3);
    color: #a5d6a7;
}

body.dark-mode .tag-warning {
    background-color: rgba(245, 124, 0, 0.3);
    color: #ffcc80;
}

body.dark-mode .progress {
    background-color: #3d3d3d;
}

body.dark-mode input[type="range"] {
    background-color: #3d3d3d;
}

body.dark-mode .tool-description {
    color: #999;
}

body.dark-mode .tool-page-title {
    border-bottom-color: #3d3d3d;
}

body.dark-mode .compare-label {
    color: #999;
}

body.dark-mode .help-text {
    color: #666;
}

body.dark-mode .copy-btn {
    background-color: #3d3d3d;
    border-color: #4d4d4d;
    color: #e0e0e0;
}

body.dark-mode .copy-btn:hover {
    background-color: #4d4d4d;
}

/* 滚动条夜间模式 */
body.dark-mode ::-webkit-scrollbar {
    width: 8px;
    height: 8px;
}

body.dark-mode ::-webkit-scrollbar-track {
    background: #2d2d2d;
}

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

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

/* 选中文字颜色 */
body.dark-mode ::selection {
    background-color: rgba(0, 188, 212, 0.3);
    color: #e0e0e0;
}

/* 链接颜色 */
body.dark-mode a {
    color: #4fc3f7;
}

body.dark-mode a:hover {
    color: #81d4fa;
}

/* 禁用状态 */
body.dark-mode .mdui-text-color-black-disabled,
body.dark-mode [disabled] {
    color: rgba(255,255,255,0.3) !important;
}

/* 加载动画 */
body.dark-mode .loading {
    border-color: #3d3d3d;
    border-top-color: #008ba3;
}

/* 过渡动画 */
body,
body *,
body *::before,
body *::after {
    transition: background-color 0.3s ease, color 0.3s ease, border-color 0.3s ease;
}
