/* ================= 基础变量与重置 ================= */
        
        .page-header {display: flex; justify-content: space-between; align-items: flex-end; margin-bottom: 20px;}
        .page-title h2 {margin: 0 0 5px 0; font-size: 22px; font-weight: 600;}
        .page-title p {margin: 0; color: var(--text-muted); font-size: 13px;}
        .action-buttons {display: flex; gap: 10px;}
        .layui-btn-primary {background: #fff; border-radius: 6px;}
        .layui-btn-normal {border-radius: 6px; background: var(--primary-color);}
        /* 知识库特殊布局 */
        .kb-layout {display: flex; gap: 20px; height: 100%;}
        /* 分类树面板 */
        .kb-tree-panel {width: 220px; background: #fff; border-radius: 10px; padding: 15px;
            border: 1px solid var(--border-color); flex-shrink: 0;}
        .panel-header {font-weight: 600; font-size: 14px; margin-bottom: 15px; display: flex; justify-content: space-between;}
        /* 乐享知识库选择器 */
        .kb-lib-select {margin-bottom: 12px;}
        .kb-lib-select .layui-input {height: 34px; font-size: 13px; border-radius: 6px; border-color: var(--border-color);}
        /* 来源标识 */
        .kb-source {font-size: 12px; color: #6b7280; display: flex; align-items: center; gap: 5px;
            padding: 6px 8px; background: #f9fafb; border-radius: 6px; margin-bottom: 12px;}
        .kb-source .layui-icon {color: var(--primary-color);}
        /* 树节点选中态 */
        .kb-tree .kb-node-active > .layui-tree-entry .layui-tree-txt {color: var(--primary-color); font-weight: 600;}
        /* 空状态 */
        .kb-empty {text-align: center; color: #9ca3af; font-size: 13px; padding: 40px 0;}
        .kb-tree .layui-tree-txt {font-size: 13px;}
        .kb-tree .layui-tree-entry {padding: 5px 0;}
        .kb-tree .layui-tree-iconClick {margin-right: 5px;}
        /* 文档列表面板 */
        .kb-list-panel {flex: 1; background: #fff; border-radius: 10px; border: 1px solid var(--border-color);
            display: flex; flex-direction: column;}
        .kb-list-header {padding: 15px 20px; border-bottom: 1px solid var(--border-color);
            display: flex; justify-content: space-between; align-items: center;}
        .kb-list-header h3 {margin: 0; font-size: 15px; font-weight: 600;}
        .filter-bar {display: flex; gap: 10px; align-items: center; font-size: 13px;}
        .kb-table-wrap {padding: 0 20px; overflow-y: auto; flex: 1;}
        .layui-table {margin: 0;}
        .layui-table th {background: #f9fafb; font-weight: 500; color: #4b5563; font-size: 13px;}
        .layui-table td {font-size: 13px; color: #1f2937; vertical-align: middle;}
        .file-icon {font-size: 18px; margin-right: 8px; vertical-align: middle;}
        .file-icon.pdf {color: #ef4444;}
        .file-icon.word {color: #3b82f6;}
        .file-icon.excel {color: #10b981;}
        .file-icon.md {color: #6b7280;}
        .ai-badge {background: #e0e7ff; color: #4f46e5; font-size: 11px; padding: 2px 6px; border-radius: 4px; margin-left: 8px;}
        /* --- 右侧边栏 --- */
        .sidebar-right {width: 320px; padding: 20px 20px 20px 0; overflow-y: auto; flex-shrink: 0;}
        .right-card {background: #fff; border-radius: 10px; border: 1px solid var(--border-color);
            padding: 15px; margin-bottom: 20px;}
        .right-card-header {display: flex; justify-content: space-between; align-items: center; font-weight: 600; font-size: 14px; margin-bottom: 15px;}
        .right-card-header a {font-size: 12px; color: var(--text-muted); font-weight: normal; text-decoration: none; cursor: pointer;}
        /* AI 搜索推荐 */
        .ai-search-box {background: linear-gradient(135deg, #eff6ff, #e0e7ff); border-radius: 8px; padding: 15px;
            border: 1px solid #c7d2fe; margin-bottom: 15px;}
        .ai-search-box p {margin: 0 0 10px 0; font-size: 13px; color: #3730a3; font-weight: 500;}
        .ai-search-input {display: flex; background: #fff; border-radius: 20px; padding: 5px 5px 5px 15px; align-items: center; border: 1px solid #e5e7eb;}
        .ai-search-input input {border: none; outline: none; flex: 1; font-size: 13px;}
        .ai-search-input button {background: var(--primary-color); color: white; border: none; border-radius: 15px; padding: 5px 12px; cursor: pointer; font-size: 12px;}
        /* 知识卡片 */
        .knowledge-card {border: 1px solid var(--border-color); border-radius: 8px; padding: 12px; margin-bottom: 10px;
            cursor: pointer; transition: all 0.2s; background: #f9fafb;}
        .knowledge-card:hover {border-color: var(--primary-color); background: #fff; box-shadow: 0 2px 8px rgba(0,0,0,0.05);}
        .knowledge-card h4 {margin: 0 0 5px 0; font-size: 13px; font-weight: 600; color: #1f2937;}
        .knowledge-card p {margin: 0; font-size: 12px; color: var(--text-muted); line-height: 1.5; display: -webkit-box; -webkit-line-clamp: 2; -webkit-box-orient: vertical; overflow: hidden;}
        .card-footer {display: flex; justify-content: space-between; font-size: 11px; color: #9ca3af; margin-top: 10px;}
        /* 悬浮AI按钮 */
        .float-ai-btn {position: fixed; bottom: 30px; right: 30px; background: var(--primary-color); color: #fff;
            border-radius: 25px; padding: 10px 20px; box-shadow: 0 4px 12px rgba(59, 89, 152, 0.3);
            display: flex; align-items: center; gap: 8px; cursor: pointer; z-index: 1000; transition: transform 0.2s;}
        .float-ai-btn:hover {transform: translateY(-2px);}
        .bg-purple {background: #8b5cf6;}
        .bg-red {background: #ef4444;}
        .bg-green {background: #10b981;}
        .bg-orange {background: #f59e0b;}
        .bg-gray {background: #6b7280;}

/* 页面级：内容区布局（原共享，因各页定义不同下沉到页面） */
.main-content {flex: 1; display: flex; flex-direction: column; overflow-y: auto; padding: 20px;}
