/**
 * Copyright：ChengDu YunSu Technology Company Ltd.
 * Author：Criss
 * File：public/assets/app/css/polish.css
 * Date：2026-10-21
 *
 * 配色收口：统一主色、补足深浅主题下的文字对比度（WCAG AA 4.5:1）。
 * 只改 Tabler 变量与少量组件色，不动布局；放在 app.css 最后导入。
 */

/* ---------- 主色统一：Tabler 默认 #0054a6 与品牌色 #206bc4 并存，按钮与链接统一成品牌色 ---------- */
:root,
[data-bs-theme="light"] {
    --tblr-primary: #206bc4;
    --tblr-primary-rgb: 32, 107, 196;
    --tblr-link-color: #1a5aa8;
    --tblr-link-hover-color: #144a8c;
    --tblr-secondary-color: rgba(24, 36, 51, 0.82);

    --erp-text-soft: #566579;       /* 次要说明文字 */
    --erp-text-nav: #475569;        /* 侧栏图标标签 */
    --erp-outline-primary: #1a5aa8;
    --erp-outline-secondary: #475569;
    --erp-outline-success: #1c7d34;
    --erp-outline-warning: #964d00;
    --erp-outline-danger: #b32a2a;
    --erp-badge-primary-fg: #1a5aa8;
}

[data-bs-theme="dark"] {
    --tblr-primary: #3b88dd;
    --tblr-primary-rgb: 59, 136, 221;
    --tblr-link-color: #7db7f5;
    --tblr-link-hover-color: #a5cffa;
    --tblr-secondary-color: rgba(226, 232, 240, 0.8);

    --erp-text-soft: #aab6c8;
    --erp-text-nav: #c3cddb;
    --erp-outline-primary: #7db7f5;
    --erp-outline-secondary: #b6c2d4;
    --erp-outline-success: #5fd37a;
    --erp-outline-warning: #ffb454;
    --erp-outline-danger: #ff8a8a;
    --erp-badge-primary-fg: #8cc2ff;
}

/* ---------- 实心主按钮 ---------- */
.btn-primary {
    --tblr-btn-bg: #206bc4;
    --tblr-btn-border-color: #206bc4;
    --tblr-btn-hover-bg: #1a5aa8;
    --tblr-btn-hover-border-color: #1a5aa8;
    --tblr-btn-active-bg: #174f95;
    --tblr-btn-active-border-color: #174f95;
    --tblr-btn-disabled-bg: #206bc4;
}
[data-bs-theme="dark"] .btn-primary {
    --tblr-btn-bg: #206bc4;
    --tblr-btn-border-color: #206bc4;
    --tblr-btn-hover-bg: #2b7bd6;
    --tblr-btn-hover-border-color: #2b7bd6;
}

/* ---------- 描边按钮：文字色取对比度达标的变体 ---------- */
.btn-outline-primary {
    --tblr-btn-color: var(--erp-outline-primary);
    --tblr-btn-border-color: currentColor;
    --tblr-btn-hover-bg: #206bc4;
    --tblr-btn-hover-color: #fff;
    --tblr-btn-hover-border-color: #206bc4;
}
.btn-outline-secondary {
    --tblr-btn-color: var(--erp-outline-secondary);
    --tblr-btn-hover-color: #fff;
    --tblr-btn-hover-bg: #475569;
    --tblr-btn-hover-border-color: #475569;
}
.btn-outline-success {
    --tblr-btn-color: var(--erp-outline-success);
    --tblr-btn-hover-bg: #2fb344;
    --tblr-btn-hover-color: #fff;
    --tblr-btn-hover-border-color: #2fb344;
}
.btn-outline-warning {
    --tblr-btn-color: var(--erp-outline-warning);
    --tblr-btn-hover-bg: #f59f00;
    --tblr-btn-hover-color: #1a1a1a;
    --tblr-btn-hover-border-color: #f59f00;
}
.btn-outline-danger {
    --tblr-btn-color: var(--erp-outline-danger);
    --tblr-btn-hover-bg: #d63939;
    --tblr-btn-hover-color: #fff;
    --tblr-btn-hover-border-color: #d63939;
}
.btn-ghost-secondary { --tblr-btn-color: var(--erp-outline-secondary); }
[data-bs-theme="dark"] .btn-outline-secondary { --tblr-btn-hover-bg: rgba(255, 255, 255, 0.14); --tblr-btn-hover-border-color: rgba(255, 255, 255, 0.3); }

/* ---------- 淡色徽章 / 说明文字 ---------- */
.badge.bg-primary-lt { color: var(--erp-badge-primary-fg) !important; }
[data-bs-theme="dark"] .badge.bg-primary-lt { background-color: rgba(59, 136, 221, 0.22) !important; }

.erp-page-header-subtitle,
.erp-search-helper,
.form-check-description,
.input-group-text,
.erp-topbar-sub { color: var(--erp-text-soft); }

.erp-nav-rail-label { color: var(--erp-text-nav); }

/* ---------- 深色下 Tabler 自带的 .text-secondary / 表头 / 描边次要按钮偏暗，统一提亮 ---------- */
[data-bs-theme="dark"] .text-secondary,
[data-bs-theme="dark"] .text-muted,
[data-bs-theme="dark"] .form-hint,
[data-bs-theme="dark"] .table > thead th,
[data-bs-theme="dark"] .card-table thead th {
    color: var(--erp-text-soft) !important;
}
[data-bs-theme="dark"] .btn-outline-secondary,
[data-bs-theme="dark"] .btn-ghost-secondary {
    --tblr-btn-color: var(--erp-outline-secondary);
    color: var(--erp-outline-secondary);
}
[data-bs-theme="dark"] .btn-outline-secondary:hover { color: #fff; }

/* ---------- 浅色下偏浅的标题 / 趋势小字 ---------- */
[data-bs-theme="light"] .erp-section-title { color: #1e293b; }
[data-bs-theme="light"] .erp-stat-delta-flat { color: #566579; }

/* 列表 / 报表：表格在自己的区域里滚动，表头固定在上、合计固定在下，不用翻到底才看得到 */
.table-responsive:has(> #rpt-table),
.table-responsive:has(> #doc-table) {
    max-height: max(18rem, calc(100vh - 21rem));
    overflow: auto;
}
#rpt-table > thead > tr > th,
#doc-table > thead > tr > th {
    position: sticky;
    top: 0;
    z-index: 3;
    background: var(--tblr-bg-surface, #fff);
    box-shadow: 0 1px 0 var(--tblr-border-color, #e6e7e9);
}
/* 其他带“设置显示列”的列表（代发、库存预警、客户跟进、订货门户……）：同样在自己的区域里滚动，表头固定；手机宽度走卡片布局，不启用 */
@media (min-width: 768px) {
    .table-responsive:has(> table[data-erp-columns]:not(#doc-table):not(#rpt-table)) {
        max-height: max(18rem, calc(100vh - 21rem));
        overflow: auto;
    }
    table[data-erp-columns]:not(#doc-table):not(#rpt-table) > thead > tr > th {
        position: sticky;
        top: 0;
        z-index: 3;
        background: var(--tblr-bg-surface, #fff);
        box-shadow: 0 1px 0 var(--tblr-border-color, #e6e7e9);
    }
}
#rpt-table > tfoot > tr > td,
#rpt-table > tfoot > tr > th {
    position: sticky;
    bottom: 0;
    z-index: 3;
    background: var(--tblr-bg-surface, #fff);
    box-shadow: 0 -1px 0 var(--tblr-border-color, #e6e7e9);
}

/* 筛选区里弹出的下拉（客户、供应商、商品搜索）不被下面的卡片盖住 */
.card:has(.dropdown-menu.show) {
    position: relative;
    z-index: 20;
}
/* 面板卡片为了圆角设了 overflow:hidden，会把筛选区里弹出的下拉裁掉：带下拉的卡片改成不裁剪 */
.erp-panel-card:has(.dropdown-menu),
.erp-panel-card:has(.dropdown-menu) > .card-body {
    overflow: visible;
}
.erp-page-root { padding-bottom: 5rem; }

/* 顶栏（导航、右上角菜单）和标签栏一起固定在顶部，只有下面的内容页滚动；各标签的滚动位置由 tabs.js 记住。
   标签保持原来的“文件夹”样式，只把字体、字号、颜色对齐上面的导航栏 */
.erp-app {
    --erp-topbar-h: 3rem;
    --erp-head-bg: #ffffff;
}
[data-bs-theme="dark"] .erp-app { --erp-head-bg: #182033; }
.erp-app .erp-topbar {
    height: var(--erp-topbar-h);
    min-height: var(--erp-topbar-h);
    background: var(--erp-head-bg) !important;
    border-bottom: 0 !important;
    box-shadow: none !important;
    backdrop-filter: none;
    -webkit-backdrop-filter: none;
}
.erp-app .erp-tab-bar {
    position: sticky;
    top: var(--erp-topbar-h);
    z-index: 1019;
    background: color-mix(in srgb, #ffffff 72%, var(--erp-page-bg, #eef2f7));
    border-bottom: 1px solid rgba(15, 23, 42, 0.08);
    box-shadow: 0 2px 6px rgba(15, 23, 42, 0.05);
}
[data-bs-theme="dark"] .erp-app .erp-tab-bar { background: #111a2e; border-bottom-color: rgba(255, 255, 255, 0.08); }
.erp-app .erp-tab-item {
    font-family: inherit;
    font-size: 0.9375rem;
    color: #475569;
}
.erp-app .erp-tab-item.is-active {
    color: #0f172a;
    font-weight: 600;
}
[data-bs-theme="dark"] .erp-app .erp-tab-item { color: #94a3b8; }
[data-bs-theme="dark"] .erp-app .erp-tab-item.is-active { color: #e2e8f0; }

/* 功能授权：收起的大菜单下，模块行不显示 */
tr.authority-folded { display: none; }
