﻿:root, [data-bs-theme='light'] {
    /* Ant Design 基础色 */
    --bs-gray: #bfbfbf;
    --bs-gray-dark: #262626;
    --bs-gray-100: #fafafa;
    --bs-gray-200: #f5f5f5;
    --bs-gray-300: #f0f0f0;
    --bs-gray-400: #d9d9d9;
    --bs-gray-500: #bfbfbf;
    --bs-gray-600: #8c8c8c;
    --bs-gray-700: #595959;
    --bs-gray-800: #262626;
    --bs-gray-900: #141414;
    --bs-light: #fff;
    --bs-light-rgb: 255, 255, 255;
    --bs-dark: #000;
    --bs-dark-rgb: 0, 0, 0;
    --bs-white-rgb: 255, 255, 255;
    --bs-black-rgb: 0, 0, 0;
    --bs-body-rgb: 255, 255, 255;
    --bs-body-color: #000;
    /* Ant Design 主题色 */
    --bs-primary: #1677ff;
    --bs-primary-rgb: 24, 144, 255;
    --bs-secondary: #f0f0f0;
    --bs-secondary-rgb: 240, 240, 240;
    --bs-success: #13c2c2;
    --bs-success-rgb: 82, 196, 26;
    --bs-info: #1677ff;
    --bs-info-rgb: 24, 144, 255;
    --bs-warning: #faad14;
    --bs-warning-rgb: 250, 173, 20;
    --bs-danger: #ff4d4f;
    --bs-danger-rgb: 255, 77, 79;
    --bs-border-radius: 3px; /* 修改为 3px */
    --bb-disabled-bg: #f5f5f5;
    --bs-border-color: #d9d9d9;
    --bb-border-focus-color: #40a9ff;
    --bb-border-hover-color: #40a9ff;
    /* Ant Design 强调文本色 */
    --bs-primary-text-emphasis: #096dd9;
    --bs-secondary-text-emphasis: #595959;
    --bs-success-text-emphasis: #389e0d;
    --bs-info-text-emphasis: #096dd9;
    --bs-warning-text-emphasis: #d48806;
    --bs-danger-text-emphasis: #cf1322;
    --bs-light-text-emphasis: #8c8c8c;
    --bs-dark-text-emphasis: #000;
    /* Ant Design 柔和背景色 */
    --bs-primary-bg-subtle: #e6f7ff;
    --bs-secondary-bg-subtle: #fafafa;
    --bs-success-bg-subtle: #f6ffed;
    --bs-info-bg-subtle: #e6f7ff;
    --bs-warning-bg-subtle: #fffbe6;
    --bs-danger-bg-subtle: #fff1f0;
    --bs-light-bg-subtle: #fff;
    --bs-dark-bg-subtle: #f0f0f0;
    /* Ant Design 柔和边框色 */
    --bs-primary-border-subtle: #91d5ff;
    --bs-secondary-border-subtle: #f5f5f5;
    --bs-success-border-subtle: #b7eb8f;
    --bs-info-border-subtle: #91d5ff;
    --bs-warning-border-subtle: #ffe58f;
    --bs-danger-border-subtle: #ffccc7;
    --bs-light-border-subtle: #f0f0f0;
    --bs-dark-border-subtle: #d9d9d9;
    --bs-table-border-color: #e9e9e9;
    --bs-table-header-bg: #f0f0f0;
    --bs-bg-color1: rgba(0, 0, 0, 0.03);
    --bs-bg-color2: rgba(0, 0, 0, 0.04);
    --bs-font-color1: rgba(0, 0, 0, 0.95);
}

[data-bs-theme='dark'] {
    --bs-secondary:#434343;
    --bs-primary-text-emphasis: #69b1ff;
    --bs-secondary-text-emphasis: #a6a6a6;
    --bs-success-text-emphasis: #73d13d;
    --bs-info-text-emphasis: #69b1ff;
    --bs-warning-text-emphasis: #ffd666;
    --bs-danger-text-emphasis: #ff7875;
    --bs-light-text-emphasis: #ffffff;
    --bs-dark-text-emphasis: #d9d9d9;
    --bs-primary-bg-subtle: #001529;
    --bs-secondary-bg-subtle: #141414;
    --bs-success-bg-subtle: #002718;
    --bs-info-bg-subtle: #001529;
    --bs-warning-bg-subtle: #331d00;
    --bs-danger-bg-subtle: #330000;
    --bs-light-bg-subtle: #262626;
    --bs-dark-bg-subtle: #000000;
    --bs-primary-border-subtle: #00478f;
    --bs-secondary-border-subtle: #434343;
    --bs-success-border-subtle: #00501f;
    --bs-info-border-subtle: #00478f;
    --bs-warning-border-subtle: #8f5a00;
    --bs-danger-border-subtle: #8f0000;
    --bs-light-border-subtle: #434343;
    --bs-dark-border-subtle: #141414;
    --bs-body-color: #d9d9d9;
    --bs-body-color-rgb: 217, 217, 217;
    --bs-body-bg: #141414;
    --bs-body-bg-rgb: 20, 20, 20;
    --bs-border-color: #434343;
    --bs-table-header-bg: #434343;
    --bs-table-border-color: #434343;
    --bs-bg-color1: rgba(255, 255, 255, 0.03);
    --bs-bg-color2: rgba(255, 255, 255, 0.04);
    --bs-font-color1: rgba(255, 255, 255, 0.95);
}

[data-bs-theme='light'] .table {
    --bs-table-striped-bg: rgba(0, 0, 0, 0.02);
    --bs-table-hover-bg: #f5f5f5;
    --bs-table-border-color: #e9e9e9;
}

[data-bs-theme='dark'] .table {
    --bs-table-striped-bg: rgba(255, 255, 255, 0.04);
    --bs-table-hover-bg: rgba(255, 255, 255, 0.06);
    --bs-table-border-color: #434343;
}

[data-bs-theme='dark'] .table-container {
    --bb-table-column-resizer-color: #333333;
}

.table-wrapper {
    border-color: var(--bs-table-border-color);
}

.table-filter .card-header {
    border-bottom: 1px solid var(--bs-secondary);
    background-color: var(--bs-secondary);
}

.table-filter .card-arrow:after {
    border-bottom-color: var(--bs-secondary);
}

.picker-panel-footer {
    border-bottom-left-radius: var(--bs-border-radius); /* 使用修改后的变量 */
    border-bottom-right-radius: var(--bs-border-radius); /* 使用修改后的变量 */
}

.table-filter .card-arrow:before {
    border-bottom-color: var(--bs-secondary);
}

.table-bordered thead tr:last-child > th, .table-fixed-column .table th.fixed {
    background-color: var(--bs-table-header-bg);
}

.layout .layout-header, .layout .layout-banner {
    background-color: var(--bs-primary);
}
.layout .layout-banner {
    border-bottom:0;
}
.menu .nav .dropdown-menu .nav-link:not(.disabled):hover, .menu .nav .dropdown-menu .nav-link.active, .menu .submenu .nav-link.active, .menu .submenu .nav-link:not(.disabled):hover, .cascade .dropdown-item:not(.disabled):hover, .cascade .dropdown-item.active, .cascade .nav .nav-link:not(.disabled):hover, .cascade .nav .nav-link.active {
    background-color: var(--bs-bg-color1);
    color: var(--bs-font-color1);
}
.menu .submenu .nav-link.active {
    background-color: var(--bs-bg-color2);
    color: var(--bs-font-color1);
}

/* 扁平化按钮样式 */
.btn {
    box-shadow: none; /* 去除阴影 */
    transition: background-color 0.3s ease; /* 添加背景色过渡效果 */
}

.btn-primary {
    --bs-btn-hover-bg: #40a9ff;
    --bs-btn-bg: var(--bs-primary);
    --bs-btn-border-color: transparent; /* 边框透明 */
    --bs-btn-disabled-bg: var(--bs-primary);
    --bs-btn-disabled-border-color: transparent;
    --bs-btn-hover-border-color: transparent;
    --bs-btn-active-bg: var(--bs-btn-hover-bg);
    --bs-btn-active-border-color: transparent;
}

.btn-secondary {
    --bs-btn-color: #262626;
    --bs-btn-hover-bg: #d9d9d9;
    --bs-btn-hover-color: var(--bs-btn-color);
    --bs-btn-active-color: var(--bs-btn-color);
    --bs-btn-disabled-color: var(--bs-btn-color);
    --bs-btn-bg: var(--bs-secondary);
    --bs-btn-border-color: transparent;
    --bs-btn-disabled-bg: var(--bs-secondary);
    --bs-btn-disabled-border-color: transparent;
    --bs-btn-hover-border-color: transparent;
    --bs-btn-active-bg: var(--bs-btn-hover-bg);
    --bs-btn-active-border-color: transparent;
}

[data-bs-theme='dark'] .btn-secondary {
    --bs-btn-color: #ffffff;
}

.btn-success {
    --bs-btn-hover-bg: #36cfc9;
    --bs-btn-bg: var(--bs-success);
    --bs-btn-border-color: transparent;
    --bs-btn-disabled-bg: var(--bs-success);
    --bs-btn-disabled-border-color: transparent;
    --bs-btn-hover-border-color: transparent;
    --bs-btn-active-bg: var(--bs-btn-hover-bg);
    --bs-btn-active-border-color: transparent;
}

.btn-info {
    --bs-btn-color: #fff;
    --bs-btn-hover-bg: #40a9ff;
    --bs-btn-hover-color: var(--bs-btn-color);
    --bs-btn-active-color: var(--bs-btn-color);
    --bs-btn-disabled-color: var(--bs-btn-color);
    --bs-btn-bg: var(--bs-info);
    --bs-btn-border-color: transparent;
    --bs-btn-disabled-bg: var(--bs-info);
    --bs-btn-disabled-border-color: transparent;
    --bs-btn-hover-border-color: transparent;
    --bs-btn-active-bg: var(--bs-btn-hover-bg);
    --bs-btn-active-border-color: transparent;
}

.btn-warning {
    --bs-btn-color: #fff;
    --bs-btn-hover-bg: #ffd666;
    --bs-btn-hover-color: var(--bs-btn-color);
    --bs-btn-active-color: var(--bs-btn-color);
    --bs-btn-disabled-color: var(--bs-btn-color);
    --bs-btn-bg: var(--bs-warning);
    --bs-btn-border-color: transparent;
    --bs-btn-disabled-bg: var(--bs-warning);
    --bs-btn-disabled-border-color: transparent;
    --bs-btn-hover-border-color: transparent;
    --bs-btn-active-bg: var(--bs-btn-hover-bg);
    --bs-btn-active-border-color: transparent;
}

.btn-danger {
    --bs-btn-hover-bg: #ff7875;
    --bs-btn-bg: var(--bs-danger);
    --bs-btn-border-color: transparent;
    --bs-btn-disabled-bg: var(--bs-danger);
    --bs-btn-disabled-border-color: transparent;
    --bs-btn-hover-border-color: transparent;
    --bs-btn-active-bg: var(--bs-btn-hover-bg);
    --bs-btn-active-border-color: transparent;
}

.btn-dark {
    --bs-btn-hover-bg: #434343;
    --bs-btn-bg: var(--bs-dark);
    --bs-btn-border-color: transparent;
    --bs-btn-disabled-bg: var(--bs-dark);
    --bs-btn-disabled-border-color: transparent;
    --bs-btn-hover-border-color: transparent;
    --bs-btn-active-bg: var(--bs-btn-hover-bg);
    --bs-btn-active-border-color: transparent;
}

.btn-light {
    --bs-btn-color: #262626;
    --bs-btn-hover-color: var(--bs-btn-color);
    --bs-btn-active-color: var(--bs-btn-color);
    --bs-btn-disabled-color: var(--bs-btn-color);
    --bs-btn-bg: var(--bs-light);
    --bs-btn-border-color: transparent;
    --bs-btn-hover-border-color: transparent;
    --bs-btn-active-bg: var(--bs-btn-hover-bg);
    --bs-btn-active-border-color: transparent;
}

.btn-link {
    text-decoration: none;
    --bs-btn-color: var(--bs-primary);
    --bs-btn-hover-color: #40a9ff;
}

.btn-outline-primary {
    --bs-btn-hover-bg: #40a9ff;
    --bs-btn-color: var(--bs-primary);
    --bs-btn-border-color: var(--bs-primary);
    --bs-btn-disabled-color: var(--bs-btn-color);
    --bs-btn-disabled-border-color: var(--bs-btn-color);
    --bs-btn-hover-border-color: var(--bs-btn-hover-bg);
    --bs-btn-active-bg: var(--bs-btn-hover-bg);
    --bs-btn-active-border-color: var(--bs-btn-hover-bg);
}

.btn-outline-secondary {
    --bs-btn-hover-bg: #d9d9d9;
    --bs-btn-color: #333333;
    --bs-btn-border-color: var(--bs-border-color);
    --bs-btn-hover-color: #555555;
    --bs-btn-hover-border-color: var(--bs-btn-hover-bg);
    --bs-btn-disabled-color: var(--bs-btn-border-color);
    --bs-btn-disabled-border-color: var(--bs-btn-border-color);
    --bs-btn-active-bg: var(--bs-btn-hover-bg);
    --bs-btn-active-border-color: var(--bs-btn-hover-bg);
}
[data-bs-theme='dark'] .btn-outline-secondary {
    --bs-btn-color: #d9d9d9;
    --bs-btn-hover-bg: #555555;
    --bs-btn-hover-color: #d9d9d9;
}

.btn-outline-success {
    --bs-btn-hover-bg: #73d13d;
    --bs-btn-color: var(--bs-success);
    --bs-btn-border-color: var(--bs-success);
    --bs-btn-hover-border-color: var(--bs-btn-hover-bg);
    --bs-btn-disabled-color: var(--bs-btn-border-color);
    --bs-btn-disabled-border-color: var(--bs-btn-border-color);
    --bs-btn-active-bg: var(--bs-btn-hover-bg);
    --bs-btn-active-border-color: var(--bs-btn-hover-bg);
}

.btn-outline-info {
    --bs-btn-hover-color: #fff;
    --bs-btn-hover-bg: #40a9ff;
    --bs-btn-color: var(--bs-info);
    --bs-btn-border-color: var(--bs-info);
    --bs-btn-hover-border-color: var(--bs-btn-hover-bg);
    --bs-btn-disabled-color: var(--bs-btn-border-color);
    --bs-btn-disabled-border-color: var(--bs-btn-border-color);
    --bs-btn-active-bg: var(--bs-btn-hover-bg);
    --bs-btn-active-border-color: var(--bs-btn-hover-bg);
}

.btn-outline-warning {
    --bs-btn-hover-bg: #ffd666;
    --bs-btn-color: var(--bs-warning);
    --bs-btn-border-color: var(--bs-warning);
    --bs-btn-hover-border-color: var(--bs-btn-hover-bg);
    --bs-btn-disabled-color: var(--bs-btn-border-color);
    --bs-btn-disabled-border-color: var(--bs-btn-border-color);
    --bs-btn-active-bg: var(--bs-btn-hover-bg);
    --bs-btn-active-border-color: var(--bs-btn-hover-bg);
}

.btn-outline-danger {
    --bs-btn-hover-bg: #ff7875;
    --bs-btn-color: var(--bs-danger);
    --bs-btn-border-color: var(--bs-danger);
    --bs-btn-hover-border-color: var(--bs-btn-hover-bg);
    --bs-btn-disabled-color: var(--bs-btn-border-color);
    --bs-btn-disabled-border-color: var(--bs-btn-border-color);
    --bs-btn-active-bg: var(--bs-btn-hover-bg);
    --bs-btn-active-border-color: var(--bs-btn-hover-bg);
}

.btn-outline-dark {
    --bs-btn-hover-bg: #434343;
    --bs-btn-color: var(--bs-dark);
    --bs-btn-border-color: var(--bs-dark);
    --bs-btn-hover-border-color: var(--bs-btn-hover-bg);
    --bs-btn-disabled-color: var(--bs-btn-border-color);
    --bs-btn-disabled-border-color: var(--bs-btn-border-color);
    --bs-btn-active-bg: var(--bs-btn-hover-bg);
    --bs-btn-active-border-color: var(--bs-btn-hover-bg);
}

.btn-outline-link {
    --bs-btn-hover-bg: #fff;
    --bs-btn-border-color: #f0f0f0;
    --bs-btn-color: var(--bs-primary);
    --bs-btn-hover-color: var(--bs-primary);
    --bs-btn-disabled-color: var(--bs-btn-border-color);
    --bs-btn-disabled-border-color: var(--bs-btn-border-color);
    --bs-btn-active-bg: var(--bs-btn-hover-bg);
    --bs-btn-active-border-color: var(--bs-btn-hover-bg);
}

.btn-outline-light {
    --bs-light: #fff;
    --bs-btn-color: var(--bs-light);
    --bs-btn-border-color: var(--bs-light);
    --bs-btn-disabled-color: var(--bs-btn-border-color);
    --bs-btn-disabled-border-color: var(--bs-btn-border-color);
    --bs-btn-hover-border-color: #d9d9d9;
    --bs-btn-active-border-color: #d9d9d9;
}

.modal-backdrop {
    --bs-backdrop-opacity: 0.3;
}

.bb-mask {
    --bb-mask-opacity: 0.3;
}

.modal-content {
    box-shadow: 0 0.25rem 0.5rem rgba(0, 0, 0, 0.1);
    border-radius: var(--bs-border-radius); /* 使用修改后的变量 */
}

.form-control.is-valid, .was-validated .form-control:valid {
    border-color: var(--bs-success);
    border-radius: var(--bs-border-radius); /* 使用修改后的变量 */
}

    .was-validated .form-control:valid:focus, .form-control.is-valid:focus, .was-validated .custom-select:valid:focus, .custom-select.is-valid:focus {
        border-color: var(--bs-success);
        box-shadow: none;
        border-radius: var(--bs-border-radius); /* 使用修改后的变量 */
    }

.form-control.is-invalid, .was-validated .form-control:invalid {
    border-color: var(--bs-danger);
    border-radius: var(--bs-border-radius); /* 使用修改后的变量 */
}

    .was-validated .form-control:invalid:focus, .form-control.is-invalid:focus, .was-validated .custom-select:invalid:focus, .custom-select.is-invalid:focus {
        border-color: var(--bs-danger);
        box-shadow: none;
        border-radius: var(--bs-border-radius); /* 使用修改后的变量 */
    }

.table-filter .filter-item {
    border-color: var(--bs-secondary);
    border-radius: var(--bs-border-radius); /* 使用修改后的变量 */
}

.dropdown-menu {
    --bs-dropdown-item-padding-y: 6px;
    --bs-dropdown-item-padding-x: 20px;
    border-radius: var(--bs-border-radius); /* 使用修改后的变量 */
}

.tree-view {
    --bb-tree-item-hover-color: var(--bs-primary);
}

.btn-xs, .btn-group-xs > .btn {
    --bs-btn-border-radius: 3px; /* 修改为 3px */
}

.tox-tinymce, .tox .tox-dialog, .tox .tox-button, .tox .tox-textfield {
    border-radius: 3px !important;
}