/* ==========================================================================
   bootstrap-dark-fixes.css
   單一職責：深色模式下把「寫死淺色 / 帶 !important / 不理會 [data-bs-theme=dark]」
   的 Bootstrap utility class 統一導回專案 GitHub-Dark 調色盤 (colors.css)。

   根因 (BOOTSTRAP_TRAPS)：Bootstrap 5.3 的 [data-bs-theme=dark] 沒重定義
   --bs-light-rgb / --bs-white-rgb / --bs-dark-rgb，部分 *-light 類更直接寫死
   hex，故 bg-light / bg-white / table-light / list-group-item-light … 深色仍淺。

   設計原則 (對齊 app.css 既有 .related-item-group-header.btn-light)：
     - table / btn / alert：改寫 --bs-*-* 變數讓 Bootstrap 自行重繪，不硬蓋。
     - bg 類：Bootstrap 原規則帶 !important，覆寫須 !important（前綴拉高 specificity）。
     - badge / 文字對比：*-light 導回深底後搭配的 text-dark/muted 會看不清，
       用更高 specificity + !important 蓋過 .text-dark 的 !important。
   調色映射：淺色/中性面 → --bg-tertiary(較亮，深色模式中代表「凸起」)，
            純白 → --bg-primary(標準卡片面)。需要時可單點調整。
   維護：日後發現新的 Bootstrap 寫死淺色陷阱，一律補進本檔，勿在各 .razor.css 重造輪子。
   ========================================================================== */

/* ---- 1) 表格列 .table-light ---- */
[data-bs-theme=dark] .table-light,
[data-bs-theme=dark] .table-light > th,
[data-bs-theme=dark] .table-light > td {
    --bs-table-color: var(--text-primary);
    --bs-table-bg: var(--bg-tertiary);
    --bs-table-border-color: var(--border-color);
    --bs-table-striped-color: var(--text-primary);
    --bs-table-striped-bg: var(--bg-tertiary);
    --bs-table-active-color: var(--text-primary);
    --bs-table-active-bg: var(--table-hover-bg);
    --bs-table-hover-color: var(--text-primary);
    --bs-table-hover-bg: var(--table-hover-bg);
    color: var(--bs-table-color);
    border-color: var(--bs-table-border-color);
}

/* ---- 2) 背景 bg-light / bg-white / bg-light-subtle / text-bg-light ---- */
[data-bs-theme=dark] .bg-light,
[data-bs-theme=dark] .bg-light-subtle {
    background-color: var(--bg-tertiary) !important;
}
[data-bs-theme=dark] .bg-white {
    background-color: var(--bg-primary) !important;
}
[data-bs-theme=dark] .text-bg-light {
    background-color: var(--bg-tertiary) !important;
    color: var(--text-primary) !important;
}

/* ---- 3) badge：bg-light 導回深底後修正搭配字色 ---- */
[data-bs-theme=dark] .badge.bg-light {
    color: var(--text-primary) !important;
    border: 1px solid var(--border-color);
}
[data-bs-theme=dark] .badge.bg-light.text-dark,
[data-bs-theme=dark] .badge.bg-light.text-muted,
[data-bs-theme=dark] .badge.bg-light.text-secondary {
    color: var(--text-primary) !important;
}
[data-bs-theme=dark] .badge.bg-light.text-success { color: var(--success-color) !important; }
[data-bs-theme=dark] .badge.bg-light.text-danger  { color: var(--danger-color)  !important; }
[data-bs-theme=dark] .badge.bg-light.text-info    { color: var(--info-color)    !important; }
[data-bs-theme=dark] .badge.bg-light.text-warning { color: var(--warning-text-dark) !important; }

/* ---- 4) alert-light ---- */
[data-bs-theme=dark] .alert-light {
    --bs-alert-color: var(--text-primary);
    --bs-alert-bg: var(--bg-tertiary);
    --bs-alert-border-color: var(--border-color);
    --bs-alert-link-color: var(--text-primary);
}

/* ---- 5) list-group-item-light (Bootstrap 寫死 hex，深色完全不換) ---- */
[data-bs-theme=dark] .list-group-item-light {
    color: var(--text-primary);
    background-color: var(--bg-tertiary);
}

/* ---- 6) btn-light 通用化 (既有 .related-item-group-header.btn-light 更 specific 仍優先) ---- */
[data-bs-theme=dark] .btn-light {
    --bs-btn-color: var(--text-primary);
    --bs-btn-bg: var(--bg-tertiary);
    --bs-btn-border-color: var(--border-color);
    --bs-btn-hover-color: var(--text-primary);
    --bs-btn-hover-bg: var(--bg-secondary);
    --bs-btn-hover-border-color: var(--border-color);
    --bs-btn-active-color: var(--text-primary);
    --bs-btn-active-bg: var(--bg-secondary);
    --bs-btn-active-border-color: var(--border-color);
}
