@charset "UTF-8";
/* 主题色变量 - 前后台共用 */
/* 通过 data-theme 属性切换主题色，通过 data-bs-theme 属性切换明暗模式 */
/* 核心思路：--bs-body-bg 设为组件背景色（白/深灰），页面背景用 --x-page-bg 单独控制 */

:root {
    --bs-primary: #2563eb;
    --bs-primary-rgb: 37, 99, 235;
    --bs-link-color: #2563eb;
    --bs-link-color-hover: #1d4ed8;
    /* 组件背景色（card/dropdown/modal 等都继承此值） */
    --bs-body-bg: #fff;
    --bs-body-color: #222;

    /* 页面背景色（与组件背景区分） */
    --x-page-bg: #f7f8fa;
}




/* 页面背景：body 用渐变色，让玻璃效果可见 */
body {
    font-size: 14px;
    background-image: radial-gradient(ellipse at 20% 50%, rgba(var(--bs-primary-rgb), 0.06) 0%, transparent 50%),
                      radial-gradient(ellipse at 80% 20%, rgba(var(--bs-primary-rgb), 0.04) 0%, transparent 50%),
                      radial-gradient(ellipse at 50% 80%, rgba(var(--bs-primary-rgb), 0.03) 0%, transparent 50%);
    background-color: var(--x-page-bg);
    background-attachment: fixed;
}

a {
    text-decoration: none;
    color: var(--bs-body-color);
}

/* 主题色方案 - 只需设置 --bs-primary 和 --bs-primary-rgb */
[data-theme="blue"] {
    --bs-primary: #2563eb;
    --bs-primary-rgb: 37, 99, 235;
    --bs-link-color: #2563eb;
    --bs-link-color-hover: #1d4ed8;
    --x-page-bg: #f7f8fa;
}

[data-theme="green"] {
    --bs-primary: #16a34a;
    --bs-primary-rgb: 22, 163, 74;
    --bs-link-color: #16a34a;
    --bs-link-color-hover: #15803d;
    --x-page-bg: #f4f7f5;
}

[data-theme="purple"] {
    --bs-primary: #9333ea;
    --bs-primary-rgb: 147, 51, 234;
    --bs-link-color: #9333ea;
    --bs-link-color-hover: #7e22ce;
    --x-page-bg: #f9f8fa;
}

[data-theme="red"] {
    --bs-primary: #dc2626;
    --bs-primary-rgb: 220, 38, 38;
    --bs-link-color: #dc2626;
    --bs-link-color-hover: #b91c1c;
    --x-page-bg: #fbf6f5;
}

[data-theme="orange"] {
    --bs-primary: #ea580c;
    --bs-primary-rgb: 234, 88, 12;
    --bs-link-color: #ea580c;
    --bs-link-color-hover: #c2410c;
    --x-page-bg: #fbf6f5;
}

[data-theme="pink"] {
    --bs-primary: #db2777;
    --bs-primary-rgb: 219, 39, 119;
    --bs-link-color: #db2777;
    --bs-link-color-hover: #be185d;
    --x-page-bg: #fdf6f9;
}

[data-theme="teal"] {
    --bs-primary: #0d9488;
    --bs-primary-rgb: 13, 148, 136;
    --bs-link-color: #0d9488;
    --bs-link-color-hover: #0f766e;
    --x-page-bg: #f4f8f8;
}

[data-theme="indigo"] {
    --bs-primary: #4f46e5;
    --bs-primary-rgb: 79, 70, 229;
    --bs-link-color: #4f46e5;
    --bs-link-color-hover: #4338ca;
    --x-page-bg: #f6f7fb;
}

[data-theme="cyan"] {
    --bs-primary: #0891b2;
    --bs-primary-rgb: 8, 145, 178;
    --bs-link-color: #0891b2;
    --bs-link-color-hover: #0e7490;
    --x-page-bg: #f4f8fa;
}

[data-theme="lime"] {
    --bs-primary: #65a30d;
    --bs-primary-rgb: 101, 163, 13;
    --bs-link-color: #65a30d;
    --bs-link-color-hover: #4d7c0f;
    --x-page-bg: #f7f8f2;
}

/* 插件自定义主题色：violet */
[data-theme="violet"] {
    --bs-primary: #8b5cf6;
    --bs-primary-rgb: 139, 92, 246;
    --bs-link-color: #8b5cf6;
    --bs-link-color-hover: #7c3aed;
    --x-page-bg: #f8f6fd;
}

/* 暗色模式 放最下边*/
[data-bs-theme="dark"] {
    --bs-body-bg: #141414;
    --bs-body-color: #e1e1e1;
    --bs-border-color: #303030;
    --bs-tertiary-bg: #212121;
    --bs-secondary-color: #838282;
    --bs-secondary-bg: #222;

    --x-page-bg: #111;
}

[data-bs-theme="dark"] body {
    background-image: radial-gradient(ellipse at 20% 50%, rgba(var(--bs-primary-rgb), 0.08) 0%, transparent 50%),
                      radial-gradient(ellipse at 80% 20%, rgba(var(--bs-primary-rgb), 0.05) 0%, transparent 50%);
    background-color: var(--x-page-bg);
    background-attachment: fixed;
}

.x-card {
    margin: 13px 0;
    padding: 12px;
    background-color: rgba(255, 255, 255, 0.35) !important;
    border-radius: var(--bs-border-radius-lg);
    border: 1px solid rgba(200, 200, 200, 0.12) !important;
    box-shadow: 0 8px 32px rgba(0, 0, 0, 0.04);
    backdrop-filter: blur(20px);
    -webkit-backdrop-filter: blur(20px);
}

[data-bs-theme="dark"] .x-card {
    background-color: rgba(20, 20, 20, 0.35) !important;
    border: 1px solid rgba(60, 60, 60, 0.15) !important;
}

.card-thread {
    padding: 24px;
}

.list-mode {
    background-color: rgba(255, 255, 255, 0.2) !important;
    backdrop-filter: blur(8px);
    -webkit-backdrop-filter: blur(8px);
    border-radius: var(--bs-border-radius-lg);
    border: 1px solid rgba(200, 200, 200, 0.1);
}

.hot-thread-item:hover {
    box-shadow: 0 6px 16px 0 rgb(27 26 49 / 1%);
    background-color: rgba(255, 255, 255, 0.3) !important;
    backdrop-filter: blur(8px);
    -webkit-backdrop-filter: blur(8px);
    border-radius: var(--bs-border-radius-lg);
    border: 1px solid rgba(200, 200, 200, 0.1);
}

[data-bs-theme="dark"] .list-mode {
    background-color: rgba(20, 20, 20, 0.2) !important;
    border: 1px solid rgba(60, 60, 60, 0.1);
}

[data-bs-theme="dark"] .hot-thread-item:hover {
    background-color: rgba(30, 30, 30, 0.3) !important;
    border: 1px solid rgba(60, 60, 60, 0.1);
}

.list-none {
    margin-top: 0;
}

.form-check-input,
.form-check-input:checked,
button,
input,
optgroup,
select,
textarea {
    border-color: rgba(var(--bs-primary-rgb), 0.5);
}

.form-control {
    background-color: rgba(255, 255, 255, 0.25) !important;
    backdrop-filter: blur(8px);
    -webkit-backdrop-filter: blur(8px);
    border: 1px solid rgba(200, 200, 200, 0.15) !important;
    color: var(--bs-body-color);
}

.form-control:focus {
    background-color: rgba(255, 255, 255, 0.35) !important;
    box-shadow: 0 0 0 2px rgba(var(--bs-primary-rgb), 0.1);
    border-color: rgba(var(--bs-primary-rgb), 0.3) !important;
}

[data-bs-theme="dark"] .form-control {
    background-color: rgba(20, 20, 20, 0.25) !important;
    border: 1px solid rgba(60, 60, 60, 0.15) !important;
}

[data-bs-theme="dark"] .form-control:focus {
    background-color: rgba(30, 30, 30, 0.35) !important;
}


.form-check-input:checked {
    background-color: var(--bs-primary);
}

.btn-primary {
    background-color: rgba(255, 255, 255, 0.3) !important;
    backdrop-filter: blur(12px);
    -webkit-backdrop-filter: blur(12px);
    border: 1px solid rgba(var(--bs-primary-rgb), 0.15) !important;
    color: var(--bs-primary) !important;
}

.btn-primary:hover {
    background-color: rgba(255, 255, 255, 0.5) !important;
    border-color: var(--bs-primary) !important;
}

[data-bs-theme="dark"] .btn-primary {
    background-color: rgba(30, 30, 30, 0.35) !important;
    border: 1px solid rgba(var(--bs-primary-rgb), 0.15) !important;
    color: var(--bs-primary) !important;
}

[data-bs-theme="dark"] .btn-primary:hover {
    background-color: rgba(50, 50, 50, 0.55) !important;
}

.btn-outline-primary {
    border-color: rgba(var(--bs-primary-rgb), 0.9);

    --bs-btn-color: var(--bs-primary);
    --bs-btn-border-color: var(--bs-primary);
    --bs-btn-hover-color: var(--bs-primary);
    --bs-btn-hover-bg: rgba(255, 255, 255, 0.25);
    --bs-btn-hover-border-color: var(--bs-primary);
    --bs-btn-focus-shadow-rgb: 13, 110, 253;
    --bs-btn-active-color: var(--bs-primary);
    --bs-btn-active-bg: rgba(255, 255, 255, 0.35);
    --bs-btn-active-border-color: var(--bs-primary);
    --bs-btn-active-shadow: inset 0 3px 5px rgba(0, 0, 0, 0.125);
    --bs-btn-disabled-color: var(--bs-primary);
    --bs-btn-disabled-bg: transparent;
    --bs-btn-disabled-border-color: var(--bs-primary);
    --bs-gradient: none;
}

.btn-outline-primary:hover {
    backdrop-filter: blur(8px);
    -webkit-backdrop-filter: blur(8px);
}

[data-bs-theme="dark"] .btn-outline-primary {
    --bs-btn-hover-bg: rgba(30, 30, 30, 0.3);
    --bs-btn-active-bg: rgba(40, 40, 40, 0.4);
}

.btn:hover,
.btn:focus-visible,
.btn-check:checked+.btn,
.btn.active,
.btn.show,
.btn:first-child:active,
:not(.btn-check)+.btn:active,
.list-group-item.active {
    border-color: var(--bs-primary) !important;
    background-color: rgba(255, 255, 255, 0.25) !important;
    color: var(--bs-primary) !important;
    backdrop-filter: blur(8px);
    -webkit-backdrop-filter: blur(8px);
}

[data-bs-theme="dark"] .btn:hover,
[data-bs-theme="dark"] .btn:focus-visible,
[data-bs-theme="dark"] .btn-check:checked+.btn,
[data-bs-theme="dark"] .btn.active,
[data-bs-theme="dark"] .btn.show,
[data-bs-theme="dark"] .btn:first-child:active,
[data-bs-theme="dark"] :not(.btn-check)+.btn:active,
[data-bs-theme="dark"] .list-group-item.active {
    background-color: rgba(30, 30, 30, 0.3) !important;
}

.btn.disabled,
.btn:disabled,
fieldset:disabled .btn {


    border-color: var(--bs-primary);
    background-color: var(--bs-link-color-hover);
    color: #fff;
    opacity: var(--bs-btn-disabled-opacity)
}

.card-header {
    border: none;
    padding: 0;
    margin-bottom: 12px;
    background: transparent;
}

.btn-outline-secondary {
    border-color: rgba(200, 200, 200, 0.15);
    background-color: rgba(255, 255, 255, 0.15);
    --bs-btn-border-color: rgba(200, 200, 200, 0.15);
}

.btn-outline-secondary:hover {
    background-color: rgba(255, 255, 255, 0.3) !important;
    backdrop-filter: blur(8px);
    -webkit-backdrop-filter: blur(8px);
}

[data-bs-theme="dark"] .btn-outline-secondary {
    border-color: rgba(60, 60, 60, 0.15);
    background-color: rgba(20, 20, 20, 0.15);
    --bs-btn-border-color: rgba(60, 60, 60, 0.15);
}

[data-bs-theme="dark"] .btn-outline-secondary:hover {
    background-color: rgba(30, 30, 30, 0.3) !important;
}
.modal-footer,
.modal-header,
.modal-content {
    border: none;
}

.modal-content {
    background-color: rgba(255, 255, 255, 0.35) !important;
    backdrop-filter: blur(20px);
    -webkit-backdrop-filter: blur(20px);
    border: 1px solid rgba(200, 200, 200, 0.12) !important;
}

[data-bs-theme="dark"] .modal-content {
    background-color: rgba(15, 15, 15, 0.4) !important;
    border: 1px solid rgba(60, 60, 60, 0.12) !important;
}

.dropdown-menu {
    background-color: rgba(255, 255, 255, 0.8) !important;
    backdrop-filter: blur(20px);
    -webkit-backdrop-filter: blur(20px);
    border: 1px solid rgba(200, 200, 200, 0.12) !important;
}

[data-bs-theme="dark"] .dropdown-menu {
    background-color: rgba(25, 25, 25, 0.85) !important;
    border: 1px solid rgba(60, 60, 60, 0.12) !important;
}

/* 下拉菜单项现代化 */
.dropdown-item {
    border-radius: 0.375rem;
    transition: all 0.15s ease;
}

.dropdown-item:hover {
    background-color: rgba(255, 255, 255, 0.25) !important;
    backdrop-filter: blur(8px);
}

[data-bs-theme="dark"] .dropdown-item:hover {
    background-color: rgba(30, 30, 30, 0.25) !important;
}

.dropdown-divider {
    opacity: 0.3;
}
[data-bs-theme="dark"] .btn-outline-secondary,[data-bs-theme="dark"] .thread-sidebar-btn {
    border: 1px solid #424242;
}

.aie-content pre {
    padding:8px!important;
}
.aie-content .copy-code {
    padding:2px 4px;
}
.nav-pills 
 {
 
    --bs-nav-pills-link-active-bg: var(--bs-primary);
}
@media screen and (max-width: 767.98px) {

    .row>* {

        padding: 0 6px;
        margin-top: 8px;
    }

    .x-card {
        margin: 8px 0;
        padding: 12px;
    }


}

/* 玻璃效果 */
.glass,
.navbar-glass,
.fab-glass,
.search-glass,
.btn-glass {
    backdrop-filter: blur(16px);
    -webkit-backdrop-filter: blur(16px);
}

.navbar-glass {
    background-color: rgba(255, 255, 255, 0.35) !important;
    border-bottom: 1px solid rgba(200, 200, 200, 0.12);
}

[data-bs-theme="dark"] .navbar-glass {
    background-color: rgba(10, 10, 10, 0.4) !important;
    border-bottom: 1px solid rgba(60, 60, 60, 0.12);
}

.fab-glass {
    background-color: rgba(255, 255, 255, 0.75) !important;
    border: 1px solid rgba(255, 255, 255, 0.25);
    box-shadow: 0 4px 16px rgba(0, 0, 0, 0.06), inset 0 1px 0 rgba(255, 255, 255, 0.5);
}

[data-bs-theme="dark"] .fab-glass {
    background-color: rgba(30, 30, 30, 0.8) !important;
    border: 1px solid rgba(60, 60, 60, 0.2);
    box-shadow: 0 4px 16px rgba(0, 0, 0, 0.3), inset 0 1px 0 rgba(255, 255, 255, 0.05);
}

/* 搜索页 - 搜索框玻璃卡片 */
.search-page-hero {
    padding: 1.5rem 0;
}

.search-glass-card {
    backdrop-filter: blur(20px);
    -webkit-backdrop-filter: blur(20px);
    background-color: rgba(255, 255, 255, 0.35);
    border-radius: 0.75rem;
    border: 1px solid rgba(var(--bs-primary-rgb), 0.1);
    padding: 1.25rem;
}

[data-bs-theme="dark"] .search-glass-card {
    background-color: rgba(15, 15, 15, 0.35);
    border: 1px solid rgba(var(--bs-primary-rgb), 0.1);
}

/* 搜索框去除焦点蓝色效果 */
.search-glass-card .form-control:focus {
    box-shadow: none !important;
    border-color: rgba(var(--bs-primary-rgb), 0.3);
}

/* 搜索页 - 搜索框搜索按钮玻璃效果 */
.search-glass-card .btn-primary {
    background-color: rgba(255, 255, 255, 0.3) !important;
    backdrop-filter: blur(12px);
    -webkit-backdrop-filter: blur(12px);
    border: 1px solid rgba(var(--bs-primary-rgb), 0.15) !important;
    border-radius: 0 0.5rem 0.5rem 0 !important;
    color: var(--bs-primary) !important;
}

.search-glass-card .btn-primary:hover {
    background-color: rgba(255, 255, 255, 0.5) !important;
}

[data-bs-theme="dark"] .search-glass-card .btn-primary {
    background-color: rgba(30, 30, 30, 0.35) !important;
    border: 1px solid rgba(var(--bs-primary-rgb), 0.15) !important;
}

[data-bs-theme="dark"] .search-glass-card .btn-primary:hover {
    background-color: rgba(50, 50, 50, 0.55) !important;
}

.search-glass-card .btn-primary:hover {
    background-color: rgba(255, 255, 255, 0.95) !important;
}

[data-bs-theme="dark"] .search-glass-card .btn-primary {
    background-color: rgba(30, 30, 30, 0.85) !important;
    border: 1px solid rgba(var(--bs-primary-rgb), 0.3) !important;
    border-radius: 0 0.5rem 0.5rem 0 !important;
    color: var(--bs-primary) !important;
}

[data-bs-theme="dark"] .search-glass-card .btn-primary:hover {
    background-color: rgba(50, 50, 50, 0.95) !important;
}

/* 搜索页面 - 搜索结果卡片透明背景 */
#searchResults .x-card,
#searchResults .search-result-card {
    background: transparent !important;
    box-shadow: none !important;
    border: none !important;
}

.search-result-card {
    background: transparent;
    border: none;
    box-shadow: none;
}

#searchResults .x-card .card-body,
#searchResults .search-result-card .card-body {
    background: transparent;
}

#searchResults .x-card .card-body .nav-tabs .nav-link.active,
#searchResults .search-result-card .card-body .nav-tabs .nav-link.active {
    background: transparent;
}

/* 板块首页 - 板块入口卡片玻璃效果 */
.forum-glass {
    backdrop-filter: blur(20px) !important;
    -webkit-backdrop-filter: blur(20px) !important;
    background: rgba(255, 255, 255, 0.35) !important;
    border: 1px solid rgba(200, 200, 200, 0.12) !important;
    box-shadow: 0 4px 12px rgba(0, 0, 0, 0.04) !important;
}

[data-bs-theme="dark"] .forum-glass {
    background: rgba(20, 20, 20, 0.35) !important;
    border: 1px solid rgba(60, 60, 60, 0.15) !important;
}

/* 搜索历史卡片 - 无背景 */
.search-history-card {
    background: transparent !important;
    border: none !important;
    box-shadow: none !important;
}

.search-history-card .p-3 {
    background: transparent;
}

/* 板块页 - 按钮玻璃效果 */
.card-forum-info .btn-primary,
#sidebar-right .btn-primary {
    background-color: rgba(255, 255, 255, 0.3) !important;
    backdrop-filter: blur(12px);
    -webkit-backdrop-filter: blur(12px);
    border: 1px solid rgba(var(--bs-primary-rgb), 0.15) !important;
    color: var(--bs-primary) !important;
}

.card-forum-info .btn-primary:hover,
.sidebar-right .btn-primary:hover,
.sidebar-user-card .btn-primary:hover {
    background-color: rgba(255, 255, 255, 0.5) !important;
}

[data-bs-theme="dark"] .card-forum-info .btn-primary,
[data-bs-theme="dark"] #sidebar-right .btn-primary {
    background-color: rgba(30, 30, 30, 0.35) !important;
    border: 1px solid rgba(var(--bs-primary-rgb), 0.15) !important;
    color: var(--bs-primary) !important;
}

[data-bs-theme="dark"] .card-forum-info .btn-primary:hover,
[data-bs-theme="dark"] .sidebar-right .btn-primary:hover,
[data-bs-theme="dark"] .sidebar-user-card .btn-primary:hover {
    background-color: rgba(50, 50, 50, 0.55) !important;
}

.card-forum-info .btn-primary:hover,
.sidebar-right .btn-primary:hover,
.sidebar-user-card .btn-primary:hover {
    background-color: rgba(255, 255, 255, 0.95) !important;
}

[data-bs-theme="dark"] .card-forum-info .btn-primary,
[data-bs-theme="dark"] .sidebar-right .btn-primary,
[data-bs-theme="dark"] .sidebar-user-card .btn-primary {
    background-color: rgba(30, 30, 30, 0.8) !important;
    border: 1px solid rgba(60, 60, 60, 0.3) !important;
    color: var(--bs-primary) !important;
}

[data-bs-theme="dark"] .card-forum-info .btn-primary:hover,
[data-bs-theme="dark"] .sidebar-right .btn-primary:hover,
[data-bs-theme="dark"] .sidebar-user-card .btn-primary:hover {
    background-color: rgba(50, 50, 50, 0.9) !important;
}

.btn-glass {
    background-color: rgba(255, 255, 255, 0.3) !important;
    border: 1px solid rgba(255, 255, 255, 0.12);
    color: var(--bs-body-color);
    backdrop-filter: blur(12px);
    -webkit-backdrop-filter: blur(12px);
}

[data-bs-theme="dark"] .btn-glass {
    background-color: rgba(20, 20, 20, 0.3) !important;
    border: 1px solid rgba(48, 48, 48, 0.12);
}

/* 标签下横线指示器 */
.thread-nav-tabs .nav-link {
    position: relative;
    padding: 8px 12px;
    border: none;
    color: var(--bs-body-color);
    background: transparent;
}

.thread-nav-tabs .nav-link.active {
    color: var(--bs-primary);
    background: transparent;
}

.thread-nav-tabs .nav-link.active::after {
    content: '';
    position: absolute;
    bottom: 0;
    left: 50%;
    transform: translateX(-50%);
    width: 24px;
    height: 2px;
    background-color: var(--bs-primary);
    border-radius: 1px;
}

/* 我的页面侧边栏下横线指示器 */
.side-nav-item.active .side-nav-link {
    position: relative;
}

.side-nav-item.active .side-nav-link::after {
    content: '';
    position: absolute;
    bottom: 0;
    left: 12px;
    right: 12px;
    height: 2px;
    background-color: var(--bs-primary);
    border-radius: 1px;
}

.side-nav-item.active .side-nav-link .menu-text {
    color: var(--bs-primary);
}

.side-nav-item.active .side-nav-link .menu-icon i {
    color: var(--bs-primary);
}

/* 侧边栏菜单项现代化 */
.side-nav-link {
    border-radius: 0.5rem;
    transition: all 0.2s ease;
    padding: 10px 12px !important;
}

.side-nav-link:hover {
    background-color: rgba(255, 255, 255, 0.3);
    backdrop-filter: blur(8px);
}

[data-bs-theme="dark"] .side-nav-link:hover {
    background-color: rgba(30, 30, 30, 0.3);
}

/* 侧边栏降低透明度，避免文字重叠 */
.sidebar-left {
    background-color: rgba(255, 255, 255, 0.55) !important;
}

[data-bs-theme="dark"] .sidebar-left {
    background-color: rgba(15, 15, 15, 0.6) !important;
}

/* 帖子回复项玻璃卡片 */
.post-glass-item {
    background-color: rgba(255, 255, 255, 0.2) !important;
    backdrop-filter: blur(8px);
    -webkit-backdrop-filter: blur(8px);
    border-radius: 0.75rem;
    padding: 16px !important;
    margin-bottom: 12px;
    border: 1px solid rgba(200, 200, 200, 0.08) !important;
    transition: all 0.2s ease;
}

.post-glass-item:hover {
    background-color: rgba(255, 255, 255, 0.3) !important;
}

[data-bs-theme="dark"] .post-glass-item {
    background-color: rgba(20, 20, 20, 0.2) !important;
    border: 1px solid rgba(60, 60, 60, 0.08) !important;
}

[data-bs-theme="dark"] .post-glass-item:hover {
    background-color: rgba(30, 30, 30, 0.3) !important;
}

/* 底部导航栏玻璃效果 */
.bbs-footer {
    backdrop-filter: blur(12px) !important;
    -webkit-backdrop-filter: blur(12px) !important;
    background: rgba(255, 255, 255, 0.35) !important;
    border-top: 1px solid rgba(200, 200, 200, 0.12);
}

[data-bs-theme="dark"] .bbs-footer {
    background: rgba(10, 10, 10, 0.4) !important;
    border-top: 1px solid rgba(60, 60, 60, 0.12);
}

/* 移动端底部导航玻璃效果 */
.bottom-nav {
    background-color: rgba(255, 255, 255, 0.35) !important;
    backdrop-filter: blur(20px);
    -webkit-backdrop-filter: blur(20px);
    border-top: 1px solid rgba(200, 200, 200, 0.12) !important;
}

[data-bs-theme="dark"] .bottom-nav {
    background-color: rgba(10, 10, 10, 0.4) !important;
    border-top: 1px solid rgba(60, 60, 60, 0.12) !important;
}

/* 新回复/新发帖 按钮组下横线指示器 */
.thread-nav-sort .btn {
    position: relative;
    border: none !important;
    background: transparent !important;
    color: var(--bs-body-color);
    padding: 4px 8px;
}

.thread-nav-sort .btn.active {
    color: var(--bs-primary) !important;
}

.thread-nav-sort .btn.active::after {
    content: '';
    position: absolute;
    bottom: 0;
    left: 8px;
    right: 8px;
    height: 2px;
    background-color: var(--bs-primary);
    border-radius: 1px;
}

/* 我的页面 - 移动端 tab 下横线指示器 */
#settingsTabMobile .nav-link {
    position: relative;
    padding: 8px 12px;
    border: none;
    color: var(--bs-body-color);
    background: transparent;
}

#settingsTabMobile .nav-link.active {
    color: var(--bs-primary);
    background: transparent;
}

#settingsTabMobile .nav-link.active::after {
    content: '';
    position: absolute;
    bottom: 0;
    left: 8px;
    right: 8px;
    height: 2px;
    background-color: var(--bs-primary);
    border-radius: 1px;
}

/* 我的页面 - 主题色按钮改为玻璃效果 */
.my-page-content .btn-primary {
    background-color: rgba(255, 255, 255, 0.35) !important;
    backdrop-filter: blur(16px);
    -webkit-backdrop-filter: blur(16px);
    border: 1px solid rgba(var(--bs-primary-rgb), 0.2) !important;
    color: var(--bs-primary) !important;
}

.my-page-content .btn-primary:hover {
    background-color: rgba(255, 255, 255, 0.55) !important;
    border-color: var(--bs-primary) !important;
}

[data-bs-theme="dark"] .my-page-content .btn-primary {
    background-color: rgba(30, 30, 30, 0.4) !important;
    border: 1px solid rgba(var(--bs-primary-rgb), 0.2) !important;
    color: var(--bs-primary) !important;
}

[data-bs-theme="dark"] .my-page-content .btn-primary:hover {
    background-color: rgba(50, 50, 50, 0.55) !important;
    border-color: var(--bs-primary) !important;
}

/* 分页组件玻璃效果 */
.pagination-glass .page-link {
    background-color: rgba(255, 255, 255, 0.3);
    backdrop-filter: blur(12px);
    -webkit-backdrop-filter: blur(12px);
    border: 1px solid rgba(200, 200, 200, 0.12);
    color: var(--bs-body-color);
    margin: 0 2px;
    border-radius: 0.375rem !important;
}

.pagination-glass .page-link:hover {
    background-color: rgba(255, 255, 255, 0.5);
    border-color: rgba(var(--bs-primary-rgb), 0.3);
}

.pagination-glass .page-item.active .page-link {
    background-color: var(--bs-primary);
    border-color: var(--bs-primary);
    color: #fff;
}

.pagination-glass .page-item.disabled .page-link {
    background-color: rgba(255, 255, 255, 0.15);
    border-color: transparent;
    color: var(--bs-secondary-color);
}

[data-bs-theme="dark"] .pagination-glass .page-link {
    background-color: rgba(25, 25, 25, 0.3);
    border: 1px solid rgba(60, 60, 60, 0.12);
}

[data-bs-theme="dark"] .pagination-glass .page-link:hover {
    background-color: rgba(40, 40, 40, 0.5);
    border-color: rgba(var(--bs-primary-rgb), 0.3);
}

[data-bs-theme="dark"] .pagination-glass .page-item.disabled .page-link {
    background-color: rgba(25, 25, 25, 0.15);
}

/* 帖子列表项 hover 玻璃效果 */
.thread-list-item {
    transition: all 0.2s ease;
    padding: 10px 12px;
    margin: 0 -4px;
    border-radius: 0.5rem;
}

.thread-list-item:hover {
    background-color: rgba(255, 255, 255, 0.25) !important;
    backdrop-filter: blur(8px);
    -webkit-backdrop-filter: blur(8px);
}

[data-bs-theme="dark"] .thread-list-item:hover {
    background-color: rgba(30, 30, 30, 0.25) !important;
}

/* 警告框玻璃风格 */
.alert {
    background-color: rgba(255, 255, 255, 0.25) !important;
    backdrop-filter: blur(8px);
    -webkit-backdrop-filter: blur(8px);
    border: 1px solid rgba(200, 200, 200, 0.1) !important;
}

.alert-warning {
    background-color: rgba(255, 193, 7, 0.15) !important;
    border-color: rgba(255, 193, 7, 0.2) !important;
}

.alert-danger {
    background-color: rgba(220, 53, 69, 0.15) !important;
    border-color: rgba(220, 53, 69, 0.2) !important;
}

.alert-info {
    background-color: rgba(13, 202, 240, 0.12) !important;
    border-color: rgba(13, 202, 240, 0.15) !important;
}

[data-bs-theme="dark"] .alert {
    background-color: rgba(20, 20, 20, 0.25) !important;
}

[data-bs-theme="dark"] .alert-warning {
    background-color: rgba(255, 193, 7, 0.08) !important;
}

[data-bs-theme="dark"] .alert-danger {
    background-color: rgba(220, 53, 69, 0.08) !important;
}

[data-bs-theme="dark"] .alert-info {
    background-color: rgba(13, 202, 240, 0.08) !important;
}

/* 输入框前置标签玻璃风格 */
.input-group-text {
    background-color: rgba(255, 255, 255, 0.2) !important;
    backdrop-filter: blur(8px);
    -webkit-backdrop-filter: blur(8px);
    border: 1px solid rgba(200, 200, 200, 0.12) !important;
    color: var(--bs-body-color);
}

[data-bs-theme="dark"] .input-group-text {
    background-color: rgba(20, 20, 20, 0.2) !important;
    border: 1px solid rgba(60, 60, 60, 0.12) !important;
}

/* 导航图标按钮 */
.nav-icon-btn {
    transition: all 0.2s ease;
    border-radius: 0.5rem;
    padding: 6px 8px;
}

.nav-icon-btn:hover {
    background-color: rgba(255, 255, 255, 0.25);
    backdrop-filter: blur(8px);
    -webkit-backdrop-filter: blur(8px);
}

[data-bs-theme="dark"] .nav-icon-btn:hover {
    background-color: rgba(30, 30, 30, 0.25);
}

/* 主题色选择按钮 */
.theme-color-btn {
    border-radius: 50% !important;
    width: 28px !important;
    height: 28px !important;
    transition: all 0.2s ease;
    position: relative;
}

.theme-color-btn:hover {
    transform: scale(1.15);
    box-shadow: 0 2px 8px rgba(0, 0, 0, 0.15);
}

.theme-color-btn.active::after {
    content: '';
    position: absolute;
    inset: -3px;
    border-radius: 50%;
    border: 2px solid var(--bs-primary);
}

/* 主题模式切换按钮 */
.theme-mode-btn {
    transition: all 0.2s ease;
}

.theme-mode-btn:hover {
    background-color: rgba(255, 255, 255, 0.25) !important;
    backdrop-filter: blur(8px);
    -webkit-backdrop-filter: blur(8px);
}

[data-bs-theme="dark"] .theme-mode-btn:hover {
    background-color: rgba(30, 30, 30, 0.25) !important;
}

/* 站点名称 */
.site-name {
    transition: all 0.2s ease;
}

.site-name:hover {
    color: var(--bs-primary) !important;
}

/* 浮动按钮容器 */
.floating-actions {
    z-index: 1030;
}

/* 标签导航链接 hover */
.thread-nav-tabs .nav-link:hover {
    background-color: rgba(255, 255, 255, 0.15);
    backdrop-filter: blur(4px);
    -webkit-backdrop-filter: blur(4px);
}

[data-bs-theme="dark"] .thread-nav-tabs .nav-link:hover {
    background-color: rgba(30, 30, 30, 0.15);
}

/* 头像容器现代风格 */
.avatar-lg,
.avatar-md,
.avatar-sm {
    border-radius: 50%;
    transition: all 0.2s ease;
}

.avatar-lg:hover,
.avatar-md:hover,
.avatar-sm:hover {
    box-shadow: 0 0 0 2px rgba(var(--bs-primary-rgb), 0.2);
}

/* 底部版权区域 */
.bbs-footer-bottom {
    opacity: 0.7;
    font-size: 0.85em;
}

/* 线程列表 meta 信息 */
.thread-list-meta .username:hover {
    color: var(--bs-primary) !important;
}

/* 表单开关按钮 */
.form-check-input {
    cursor: pointer;
    transition: all 0.15s ease;
}

.form-check-input:checked {
    background-color: var(--bs-primary);
    border-color: var(--bs-primary);
}

/* 置顶帖子列表项 hover */
.thread-top-list .thread-top-list .py-1,
.thread-top-list li {
    transition: all 0.2s ease;
    padding: 8px 12px !important;
    margin: 2px -4px;
    border-radius: 0.5rem;
}

.thread-top-list li:hover {
    background-color: rgba(255, 255, 255, 0.25) !important;
    backdrop-filter: blur(8px);
    -webkit-backdrop-filter: blur(8px);
}

[data-bs-theme="dark"] .thread-top-list li:hover {
    background-color: rgba(30, 30, 30, 0.25) !important;
}

/* 侧边栏分组标题 */
.side-nav-title {
    font-size: 0.75em;
    text-transform: uppercase;
    letter-spacing: 0.05em;
    padding: 12px 12px 4px !important;
    color: var(--bs-secondary-color);
}

/* 底部导航项 */
.bottom-nav-item {
    transition: all 0.2s ease;
    position: relative;
}

.bottom-nav-item.active {
    color: var(--bs-primary) !important;
}

.bottom-nav-item.active::after {
    content: '';
    position: absolute;
    top: 0;
    left: 50%;
    transform: translateX(-50%);
    width: 20px;
    height: 2px;
    background-color: var(--bs-primary);
    border-radius: 1px;
}

/* 侧边栏 child 缩进 */
.side-nav-child .side-nav-link {
    padding-left: 32px !important;
}

/* 浅色背景改为玻璃（积分统计卡片、标签等） */
.bg-light {
    background-color: rgba(255, 255, 255, 0.3) !important;
    backdrop-filter: blur(8px);
    -webkit-backdrop-filter: blur(8px);
}

[data-bs-theme="dark"] .bg-light {
    background-color: rgba(20, 20, 20, 0.25) !important;
}

/* 三级背景改为玻璃（签名框、简介框等） */
.bg-body-tertiary {
    background-color: rgba(255, 255, 255, 0.2) !important;
    backdrop-filter: blur(6px);
    -webkit-backdrop-filter: blur(6px);
}

[data-bs-theme="dark"] .bg-body-tertiary {
    background-color: rgba(20, 20, 20, 0.2) !important;
}

/* 帖子详情页左侧操作栏按钮 */
.thread-sidebar-btn {
    transition: all 0.2s ease;
    border-radius: 0.5rem;
    padding: 6px;
}

.thread-sidebar-btn:hover {
    background-color: rgba(255, 255, 255, 0.2);
    backdrop-filter: blur(8px);
    -webkit-backdrop-filter: blur(8px);
}

[data-bs-theme="dark"] .thread-sidebar-btn:hover {
    background-color: rgba(30, 30, 30, 0.2);
}

/* 帖子详情页右侧作者统计卡片分隔线 */
.thread-right-card .card-body {
    padding: 12px 16px;
}

/* 二维码区域玻璃 */
#qrcode img {
    border-radius: 0.375rem;
}
/* 回复区的 message 也应用相同样式 */
.postlist .message {
    border-radius: 8px;
    padding: 12px 16px;
}

/* 帖子详情卡片：保留玻璃效果，但内容区透明 */
.card-thread {
    background-color: rgba(255, 255, 255, 0.35) !important;
    border: 1px solid rgba(200, 200, 200, 0.12) !important;
    box-shadow: 0 8px 32px rgba(0, 0, 0, 0.04);
    backdrop-filter: blur(20px);
    -webkit-backdrop-filter: blur(20px);
}

[data-bs-theme="dark"] .card-thread {
    background-color: rgba(15, 15, 15, 0.4) !important;
    border: 1px solid rgba(60, 60, 60, 0.15) !important;
    box-shadow: 0 8px 32px rgba(0, 0, 0, 0.2);
}


/* 帖子内容区：使用页面背景色，去掉白色块 */
.x-card.card-thread .message.aie-content,
.postlist .message.aie-content {
    background-color: #f7f8fa !important;
}

[data-bs-theme="dark"] .x-card.card-thread .message.aie-content,
[data-bs-theme="dark"] .postlist .message.aie-content {
    background-color: #1a1a1a !important;
}

/* 帖子列表卡片暗色模式 */
[data-bs-theme="dark"] .card-postlist {
    background-color: rgba(15, 15, 15, 0.4) !important;
    border: 1px solid rgba(60, 60, 60, 0.15) !important;
    box-shadow: 0 8px 32px rgba(0, 0, 0, 0.2);
}
/* 强制刷新缓存 - 2024 */
