/*
File: light.css — TƯƠNG PHẢN CỦA CHẾ ĐỘ SÁNG (task-41, việc nhỏ 1; report-40 mục 5.1). Nạp ở layouts/head-style.php, SAU app.min.css + panel.css (mọi trang, kể cả đăng nhập). MỌI luật dưới đây nằm trong
body:not([data-bs-theme="dark"]) — chế độ sáng = KHÔNG thuộc tính nào (luật dark-mode.md); chế độ tối KHÔNG đổi (dark.css lo).

Vì sao có file này: vài màu gốc của template quá nhạt trên nền trắng / nền nhãn nhạt — đo bằng tests/ui/audit-dark.js ở chế độ SÁNG (KP_CATS=1 KP_LIGHT_ITEMS=1; WCAG: chữ ≥ 4,5 : 1, chữ to ≥ 24 px hoặc
≥ 18,66 px đậm và biểu tượng ≥ 3 : 1) trên MỌI trang của panel ở 320 / 390 / 1366 px: 8.000+ lượt đo, ~30 cặp màu. Số đo TRƯỚC → SAU của từng nhóm (nền trắng / nền thẻ):
  - chữ trắng trên nền xanh lá #2ab57d (nhãn "On", nút xanh) 2,62 → 4,97 (nền #1d7f58); trên nền đỏ #fd625e (nhãn đỏ, số trên chuông, nút xoá) 2,96 → 4,93 (#be4a46); trên nền xám #74788d 4,36 → 5,20 (#686c7f);
    trên vàng #ffbf53 1,64 → chữ đen #212529 9,42; trên xanh dương #4ba6ef 2,62 → chữ đen 5,88;
  - chữ / số / biểu tượng màu trạng thái: xanh lá #2ab57d 2,62 → 5,36 (#17795a); đỏ #fd625e 2,96 → 5,59 (#c0332e); vàng #ffbf53 1,64 → 6,59 (#805400); xanh dương #4ba6ef 2,62 → 5,97 (#0a66ad);
    xám #74788d 4,36 → 5,67 (#62667a: chữ phụ .text-secondary, nút viền xám, chân trang); màu code / tên key hồng #e83e8c 3,82 → 5,87 (#c2185b); câu báo lỗi dưới ô nhập 2,96 → 5,59 (#c0332e);
  - nhãn nền nhạt (bg-*-subtle + text-*): dùng màu chữ nhấn của chính template (--bs-*-text-emphasis) — xanh lá 1,79 → ≥ 7; xanh dương 1,81 → ≥ 7; đỏ 1,91 → ≥ 7; vàng 1,34 → ≥ 7; primary 3,30 → ≥ 7; xám 2,64 → ≥ 7;
  - nút viền (đỏ / xanh lá / vàng / xanh dương / xám): chữ + biểu tượng như trên, nền khi rê chuột / đang chọn đậm hơn để chữ trắng đọc được (vàng / xanh dương dùng chữ đen).
Thêm 1 màu / 1 thành phần mới cho chế độ sáng: sửa Ở ĐÂY và đo lại bằng `php tests/run.php --only=ui_*` (KP_CATS=1 KP_LIGHT_ITEMS=1 liệt kê phần tử dưới ngưỡng). Không đặt màu cứng ở CSS của trang: dùng biến Bootstrap.
*/

/* ---- 1. biến màu ---- */
body:not([data-bs-theme="dark"]) { --bs-code-color: #c2185b; --bs-footer-color: #666a7f; --bs-form-invalid-color: #c0332e; }  /* câu báo lỗi dưới ô nhập (.invalid-feedback) #fd625e 2,96 → 5,59 : 1 */

/* ---- 2. chữ / số / biểu tượng màu trạng thái trên nền trắng ---- */
body:not([data-bs-theme="dark"]) .text-success { --bs-success-rgb: 23, 121, 90; }      /* #17795a */
body:not([data-bs-theme="dark"]) .text-danger { --bs-danger-rgb: 192, 51, 46; }        /* #c0332e */
body:not([data-bs-theme="dark"]) .text-warning { --bs-warning-rgb: 128, 84, 0; }       /* #805400 */
body:not([data-bs-theme="dark"]) .text-info { --bs-info-rgb: 10, 102, 173; }           /* #0a66ad */
body:not([data-bs-theme="dark"]) .text-secondary { --bs-secondary-rgb: 98, 102, 122; } /* #62667a */

/* ---- 3. nhãn (badge) ---- */
/* nhãn đặc: nền đậm hơn để chữ trắng đọc được */
body:not([data-bs-theme="dark"]) .badge.bg-success { --bs-success-rgb: 29, 127, 88; }
body:not([data-bs-theme="dark"]) .badge.bg-danger { --bs-danger-rgb: 190, 74, 70; }
body:not([data-bs-theme="dark"]) .badge.bg-secondary { --bs-secondary-rgb: 104, 108, 127; }
/* xanh dương: chữ đen (trắng trên #4ba6ef chỉ 2,62 : 1); vàng đã có .text-dark */
body:not([data-bs-theme="dark"]) .badge.bg-info { --bs-badge-color: #212529; }
/* nhãn nền nhạt (bg-*-subtle + text-*): màu chữ nhấn của template */
body:not([data-bs-theme="dark"]) .bg-success-subtle.text-success { --bs-success-rgb: 17, 72, 50; }
body:not([data-bs-theme="dark"]) .bg-danger-subtle.text-danger { --bs-danger-rgb: 101, 39, 38; }
body:not([data-bs-theme="dark"]) .bg-info-subtle.text-info { --bs-info-rgb: 30, 66, 96; }
body:not([data-bs-theme="dark"]) .bg-warning-subtle.text-warning { --bs-warning-rgb: 102, 76, 33; }
body:not([data-bs-theme="dark"]) .bg-secondary-subtle.text-secondary { --bs-secondary-rgb: 46, 48, 56; }
body:not([data-bs-theme="dark"]) .bg-primary-subtle.text-primary { --bs-primary-rgb: 32, 34, 76; }

/* ---- 4. nút ---- */
body:not([data-bs-theme="dark"]) .btn-success { --bs-btn-bg: #1d7f58; --bs-btn-border-color: #1d7f58; --bs-btn-hover-bg: #186d4b; --bs-btn-hover-border-color: #166545; --bs-btn-active-bg: #166545; --bs-btn-active-border-color: #145c3f; --bs-btn-disabled-bg: #1d7f58; --bs-btn-disabled-border-color: #1d7f58; }
body:not([data-bs-theme="dark"]) .btn-danger { --bs-btn-bg: #be4a46; --bs-btn-border-color: #be4a46; --bs-btn-hover-bg: #a63f3c; --bs-btn-hover-border-color: #9c3b38; --bs-btn-active-bg: #9c3b38; --bs-btn-active-border-color: #923835; --bs-btn-disabled-bg: #be4a46; --bs-btn-disabled-border-color: #be4a46; }
/* nút vàng: template ép chữ trắng (!important) — trắng trên vàng 1,64 : 1 → chữ đen */
/* task-49 (report-48 5.2): nút VÀNG đặc ở chế độ sáng — nền vàng so với nền trắng chỉ 1,64 : 1 nên nút "hoà vào" trang; thêm VIỀN nâu #a86f00 (4,25 : 1 trên trắng) ở cả thường / rê chuột / focus / nhấn (template ép border-color: transparent !important khi rê chuột). Chữ vẫn đen trên vàng (9,4 : 1). */
body:not([data-bs-theme="dark"]) .btn-warning, body:not([data-bs-theme="dark"]) .btn-warning:hover, body:not([data-bs-theme="dark"]) .btn-warning:focus, body:not([data-bs-theme="dark"]) .btn-warning:active, body:not([data-bs-theme="dark"]) .btn-warning.active { border-color: #a86f00 !important; }
body:not([data-bs-theme="dark"]) .btn-warning { color: #212529 !important; --bs-btn-color: #212529; --bs-btn-hover-color: #212529; --bs-btn-active-color: #212529; --bs-btn-disabled-color: #212529; }
body:not([data-bs-theme="dark"]) .btn-info { --bs-btn-color: #212529; --bs-btn-hover-color: #212529; --bs-btn-active-color: #212529; --bs-btn-disabled-color: #212529; }
/* nút viền (task-48): primary / secondary / danger / success do theme.css mục 10 (nền NHẠT + viền đậm khi rê chuột — viền không hoà vào nền); còn lại vàng / xanh dương dùng chữ đen */
body:not([data-bs-theme="dark"]) .btn-outline-warning { --bs-btn-color: #805400; --bs-btn-disabled-color: #805400; --bs-btn-hover-color: #212529; --bs-btn-active-color: #212529; }
body:not([data-bs-theme="dark"]) .btn-outline-info { --bs-btn-color: #0a66ad; --bs-btn-disabled-color: #0a66ad; --bs-btn-hover-color: #212529; --bs-btn-active-color: #212529; }
