/* Bản 1.20.0 (lệnh N, anh Việt chốt 31/10/2026) — DÁNG VẺ CHUNG, nạp SAU mọi tệp kiểu cũ.
   Màu: đỏ son #A51C20 (đậm #7E1518), vàng kim #E0B43A, nền trang #F6F4F0, đường kẻ #E8E2D9, đầu bảng #F3EEE6, dòng xen kẽ #FBF9F6, dòng nhóm #F5EBE3;
   màu lĩnh vực giữ nguyên. Chữ: Be Vietnam Pro; tiêu đề, tên khối, lời chào: Noto Serif; số canh cột (tabular-nums).
   Phần A thanh bên thẻ bấm gom nhóm (nút 26–28 px, vừa 1366×768 không cuộn); Phần B dòng vị trí, ← Quay lại; khối trên dính (k2) +
   bảng dưới; khung chi tiết trượt phải dùng chung (KCT); hộp thoại cũ cũng trượt từ phải (xem = khung trượt, sửa ngay trong khung). */
:root{
  --son:#A51C20;--son-dam:#7E1518;--kim:#E0B43A;--kim-nhat:#FBF1D6;
  --nen:#F6F4F0;--vien:#E8E2D9;--vien-nhat:#EFEAE2;--dau-bang:#F3EEE6;--xen-ke:#FBF9F6;--dong-nhom:#F5EBE3;--nen-phu:#FBF9F6;--hover:#FFF8EC;
  --chu:#1F2328;--mo:#6B6560;--bo:10px;
  --chu-than:"Be Vietnam Pro","Segoe UI",system-ui,Arial,sans-serif;--chu-chan:"Noto Serif","Times New Roman",Georgia,serif;
  --tro-ly:#6D3FA0;--quan-ly:#7A5230;--kct-rong:520px}
@media (prefers-color-scheme:dark){:root:not([data-theme="sang"]){
  --nen:#141518;--vien:#2E3036;--vien-nhat:#26282D;--dau-bang:#22242A;--xen-ke:#1A1C20;--dong-nhom:#2A2220;--nen-phu:#1A1C20;--hover:#262229;--chu:#ECEAE6;--mo:#A8A29C;--kim-nhat:#3A3018}}
:root[data-theme="toi"]{
  --nen:#141518;--vien:#2E3036;--vien-nhat:#26282D;--dau-bang:#22242A;--xen-ke:#1A1C20;--dong-nhom:#2A2220;--nen-phu:#1A1C20;--hover:#262229;--chu:#ECEAE6;--mo:#A8A29C;--kim-nhat:#3A3018}

html,body{background:var(--nen)}
body,main,button,input,select,textarea{font-family:var(--chu-than)}
body{color:var(--chu);font-size:14px}
main{font:14px/1.5 var(--chu-than)}
h1,.co-chan,.k2-tren h1,.bdh-chao h1,.ten-khoi,main h2.khoi,.the>h2:first-child{font-family:var(--chu-chan);font-weight:700;letter-spacing:0}
main h1{font-size:22px;line-height:1.3}
.so,td.so,.bang td.so,.bang th.so,.kpi b,.o-so b,[data-so],.tabular{font-variant-numeric:tabular-nums}
table{font-variant-numeric:tabular-nums}
.logo b{font-family:var(--chu-chan)}

/* ---------- đầu trang: thấp hơn để thanh bên vừa màn hình 1366×768 ---------- */
.dau{height:56px;background:linear-gradient(100deg,var(--son-dam),var(--son) 55%,#B8322E)}
.dau::after{background:linear-gradient(90deg,var(--kim),color-mix(in srgb,var(--kim) 45%,#fff),var(--kim))}
.logo .sao{width:38px;height:38px;border-color:var(--kim)}
.ben{top:56px;height:calc(100vh - 56px)}

/* ---------- Phần A: thanh bên thẻ bấm gom nhóm ---------- */
@media (min-width:901px){.khung{grid-template-columns:248px minmax(0,1fr)}}
.ben.b20{padding:8px 10px 12px;overflow-y:auto;scrollbar-width:thin}
.b20 .nhom{margin:9px 2px 4px;font-size:10.5px;letter-spacing:.5px;gap:6px;min-height:16px}
.b20 .b20-nhom:first-child .b20-ds{margin-top:2px}
.b20 .muc{min-height:27px;height:27px;padding:0 10px;margin-bottom:3px;gap:8px;border-radius:8px;font-size:13px;font-weight:600;
  --mau:var(--son);box-shadow:0 1px 0 rgba(0,0,0,.18)}
.b20 .muc .bt{width:15px;height:15px}
.b20 .muc .muc-ten{overflow:hidden;text-overflow:ellipsis}
.b20 .muc:hover{transform:translateY(-1px);box-shadow:0 2px 0 rgba(0,0,0,.18),0 6px 12px -6px var(--mau)}
.b20 .muc.on{outline:2px solid var(--kim);outline-offset:1px}
.b20 .muc.on::before{left:-10px;top:5px;bottom:5px;width:4px;background:var(--kim)}
.b20 .b20-tro-ly{--mau:var(--tro-ly)}
.b20 .b20-quan-ly{--mau:var(--quan-ly)}
.b20 .muc .so{font-size:11px;padding:0 6px;line-height:16px}
.b20 .so-do{margin-left:auto;background:#fff;color:var(--son);border-radius:9px;font-size:11px;font-weight:800;padding:0 6px;line-height:16px}
.b20-lv{margin-bottom:3px}
.b20-lv-hang{display:flex;gap:3px}
.b20-lv .muc{flex:1;min-width:0;margin:0}
.b20-mui{flex:none;width:24px;height:27px;border:0;border-radius:8px;background:color-mix(in srgb,var(--mau) 14%,var(--the));color:var(--mau);cursor:pointer;display:grid;place-items:center;padding:0}
.b20-mui .bt{width:13px;height:13px;transition:transform .2s}
.b20-lv.mo .b20-mui .bt{transform:rotate(90deg)}
.b20-con-ds{display:none;margin:3px 0 2px 12px;padding-left:8px;border-left:3px solid var(--mau)}
.b20-lv.mo .b20-con-ds{display:grid;gap:2px}
.b20-con{display:flex;align-items:center;height:22px;padding:0 8px;border-radius:6px;font-size:12.5px;font-weight:600;text-decoration:none;
  color:color-mix(in srgb,var(--mau) 85%,var(--chu));background:color-mix(in srgb,var(--mau) 7%,var(--the))}
.b20-con:hover{background:color-mix(in srgb,var(--mau) 15%,var(--the))}
.b20-con.on{background:var(--mau);color:var(--chu-mau,#fff)}
:root[data-theme="toi"] .b20-con{color:color-mix(in srgb,var(--mau) 45%,#fff)}
.b20-sx{margin-left:auto;border:1px solid var(--vien);background:var(--the);color:var(--mo);border-radius:6px;font:inherit;font-size:10.5px;font-weight:600;padding:0 6px;
  height:18px;cursor:pointer;text-transform:none;letter-spacing:0}
.b20-sx:hover{color:var(--son);border-color:var(--son)}
.b20 .nhom:has(.b20-sx)::after{display:none}
.b20-cuoi{margin-top:10px;padding-top:6px;border-top:1px solid var(--vien)}
.b20 .ghi{font-size:10.5px;margin:8px 2px 0}
.b20-sx-thanh{display:flex;gap:6px;position:sticky;bottom:0;background:var(--the);padding:8px 0;border-top:1px solid var(--vien)}
.b20.dang-sx .muc,.b20.dang-sx .b20-lv{cursor:grab}
.b20.dang-sx .b20-ds{outline:1px dashed var(--vien);border-radius:8px;padding:2px;min-height:20px}
.b20.dang-sx .b20-nhom{cursor:grab}
.b20 .dang-keo{opacity:.45}
.b20 .tim-ben{display:none}

/* ---------- Phần B: dòng vị trí + ← Quay lại ---------- */
.vt20{display:flex;align-items:center;gap:10px;margin:-6px 0 10px;font-size:12.5px;color:var(--mo);min-height:26px}
.vt20-lai{flex:none;border:1px solid var(--vien);background:var(--the);color:var(--chu);border-radius:8px;padding:2px 10px;text-decoration:none;font-weight:600}
.vt20-lai:hover{border-color:var(--son);color:var(--son)}
.vt20 ol{display:flex;flex-wrap:nowrap;gap:0;list-style:none;margin:0;padding:0;min-width:0;overflow:hidden;white-space:nowrap}
.vt20 li{display:flex;align-items:center;min-width:0}
.vt20 li+li::before{content:"›";margin:0 7px;color:var(--mo)}
.vt20 li a{color:var(--mo);text-decoration:none}.vt20 li a:hover{color:var(--son);text-decoration:underline}
.vt20 li b{color:var(--chu);font-weight:600;overflow:hidden;text-overflow:ellipsis}
.vt20-cha{display:none;color:var(--son);text-decoration:none;font-weight:600}

/* ---------- khối trên dính (k2) + khối dưới ---------- */
.k2-tren{position:sticky;top:56px;z-index:12;background:var(--the);border:1px solid var(--vien);border-radius:var(--bo);margin:0 0 12px;
  box-shadow:0 4px 10px -8px rgba(40,20,10,.35);overflow:hidden}
.k2-tren::before{content:"";display:block;height:3px;background:var(--mau,var(--son))}
.k2-d1{display:flex;align-items:center;gap:10px;flex-wrap:wrap;padding:8px 12px}
.k2-d1 h1{margin:0;font-size:19px;white-space:nowrap}
.k2-the{display:flex;gap:5px;flex-wrap:wrap;min-width:0}
.k2-the .vien{display:inline-flex;align-items:center;height:28px;padding:0 12px;border-radius:999px;border:1px solid var(--vien);background:var(--the);color:var(--chu);
  font-size:13px;font-weight:600;text-decoration:none;white-space:nowrap}
.k2-the .vien:hover{border-color:var(--mau,var(--son));color:var(--mau,var(--son))}
.k2-the .vien.on{background:var(--mau,var(--son));border-color:var(--mau,var(--son));color:#fff}
.k2-the .vien .dem{margin-left:6px;background:rgba(0,0,0,.12);border-radius:8px;padding:0 6px;font-size:11px}
.k2-phai{margin-left:auto;display:flex;gap:6px;align-items:center}
.k2-gon{border:1px solid var(--vien);background:var(--the);color:var(--mo);border-radius:7px;font:inherit;font-size:12px;padding:3px 8px;cursor:pointer;white-space:nowrap}
.k2-gon:hover{color:var(--son);border-color:var(--son)}
.k2-d2{padding:0 12px 8px;display:flex;gap:8px;flex-wrap:wrap;align-items:center}
.k2-mo-ta{color:var(--mo);font-size:13px;margin:0;padding:0 12px 8px;display:-webkit-box;-webkit-line-clamp:1;-webkit-box-orient:vertical;overflow:hidden;cursor:pointer}
.k2-mo-ta.mo{display:block}
.mo-ta-1,main .tc-dau-trang p.sub{display:-webkit-box;-webkit-line-clamp:1;-webkit-box-orient:vertical;overflow:hidden;cursor:pointer;margin-top:2px}
.mo-ta-1.mo,main .tc-dau-trang p.sub.mo{display:block}
.k2-tren.gon .k2-d2,.k2-tren.gon .k2-mo-ta,.k2-tren.gon .lv20-dai{display:none}
.lv20-o{width:14px;height:14px;border-radius:4px;background:var(--mau);flex:none}
.lv20-dai{height:46px;background:url(/anh-giao-dien/dai_linh_vuc) center/cover no-repeat}
.k2-boc{position:sticky;top:56px;z-index:12;background:var(--nen);padding-top:2px;margin-top:-2px}

/* ---------- bảng (Phần 0.5): tiêu đề dính, dòng 30–34 px, xen kẽ, cột tên rộng, cuộn ngang trong khung ---------- */
.bang-khung{overflow:auto;max-width:100%;max-height:calc(100vh - 170px);border:1px solid var(--vien);border-radius:var(--bo);background:var(--the);position:relative}
.bang-khung>table{margin:0;border:0}
:root .bang-khung>table thead th{position:sticky;top:0;z-index:2}
:root table.bang thead th,:root table.b20-bang thead th{background:var(--dau-bang);color:var(--chu);font-weight:700;font-size:12.5px;border-bottom:1px solid var(--vien)}
:root table.bang tbody td,:root table.b20-bang tbody td{height:32px;padding-top:5px;padding-bottom:5px;border-bottom:1px solid var(--vien-nhat)}
:root table.bang tbody tr:nth-child(even)>td,:root table.b20-bang tbody tr:nth-child(even)>td{background:var(--xen-ke)}
:root table.bang tbody tr.nhom>td,:root table.bang tbody tr.dong-nhom>td,:root table.b20-bang tr.nhom>td{background:var(--dong-nhom);font-weight:700}
:root table.bang tbody tr:hover>td,:root table.b20-bang tbody tr:hover>td{background:var(--hover)}
:root table.bang td.ten,:root table.bang th.ten,:root table.b20-bang .ten{min-width:220px;width:35%}
:root tr.dang-xem>td{background:var(--kim-nhat)!important;box-shadow:inset 0 -1px 0 var(--kim)}
.sang-lai{animation:sang-lai 3s ease}
@keyframes sang-lai{0%,60%{background:var(--kim-nhat);box-shadow:0 0 0 2px var(--kim)}100%{background:transparent;box-shadow:none}}
tr.sang-lai>td{animation:sang-lai 3s ease}
.them-cot{border:1px dashed var(--vien);background:var(--the);color:var(--mo);border-radius:7px;font:inherit;font-size:12.5px;padding:3px 9px;cursor:pointer}
.them-cot:hover{color:var(--son);border-color:var(--son)}
.menu-cot{position:absolute;z-index:40;background:var(--the);border:1px solid var(--vien);border-radius:10px;box-shadow:0 12px 30px rgba(0,0,0,.18);padding:8px 10px;min-width:220px}
.menu-cot label{display:flex;gap:8px;align-items:center;padding:3px 0;font-size:13px;cursor:pointer}

/* ---------- băng cảnh báo dài hơn 3 dòng thu còn 1 dòng (Phần C3) ---------- */
.gon-3{display:flex;gap:8px;align-items:center;white-space:nowrap;overflow:hidden}
.gon-3>.gon-3-chu{overflow:hidden;text-overflow:ellipsis;min-width:0}
.gon-3-xem{border:0;background:none;color:var(--son);font:inherit;font-weight:700;cursor:pointer;padding:0;white-space:nowrap}

/* ---------- khung chi tiết trượt phải dùng chung (Phần 0.6) ---------- */
.kct{position:fixed;top:56px;right:0;bottom:0;width:var(--kct-rong);max-width:100vw;z-index:50;background:var(--the);border-left:1px solid var(--vien);
  box-shadow:-10px 0 30px rgba(30,15,10,.18);display:flex;flex-direction:column;transform:translateX(105%);transition:transform .22s ease;visibility:hidden}
.kct.mo{transform:none;visibility:visible}
.kct-dau{display:flex;align-items:center;gap:6px;padding:10px 12px;border-bottom:1px solid var(--vien);border-top:3px solid var(--mau,var(--son))}
.kct-dau h2{flex:1;margin:0;font-family:var(--chu-chan);font-size:16px;line-height:1.3;min-width:0;overflow:hidden;text-overflow:ellipsis;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical}
.kct-dau .btn2,.kct-dau .btn{min-height:30px;height:30px;padding:0 10px;font-size:12.5px}
.kct-x{border:0;background:var(--nen-phu);color:var(--chu);width:30px;height:30px;border-radius:8px;font-size:18px;cursor:pointer;flex:none}
.kct-x:hover{background:var(--son);color:#fff}
.kct-than{flex:1;overflow:auto;padding:12px 14px 24px}
.kct-keo{position:absolute;left:-4px;top:0;bottom:0;width:8px;cursor:ew-resize}
.kct-keo:hover{background:color-mix(in srgb,var(--kim) 40%,transparent)}
.kct-the{display:flex;gap:4px;flex-wrap:wrap;margin:0 0 10px;border-bottom:1px solid var(--vien);padding-bottom:8px}
.kct-the button{border:1px solid var(--vien);background:var(--the);border-radius:999px;padding:3px 11px;font:inherit;font-size:12.5px;font-weight:600;cursor:pointer;color:var(--chu)}
.kct-the button.on{background:var(--son);border-color:var(--son);color:#fff}
.kct dl{display:grid;grid-template-columns:minmax(110px,36%) 1fr;gap:5px 10px;margin:0;font-size:13px}
.kct dt{color:var(--mo)}.kct dd{margin:0;min-width:0;overflow-wrap:anywhere}
.kct table{width:100%;font-size:12.5px}
.kct .o-so3{display:grid;grid-template-columns:repeat(3,1fr);gap:8px;margin:0 0 12px}
.kct .o-so3>div{border:1px solid var(--vien);border-radius:8px;padding:6px 8px}.kct .o-so3 small{display:block;color:var(--mo);font-size:11px}.kct .o-so3 b{font-size:16px}
body.co-kct main{padding-right:calc(var(--kct-rong) + 16px)}
@media (max-width:1100px){body.co-kct main{padding-right:28px}}

/* hộp thoại cũ (sửa, thêm…) cũng trượt từ phải, giữ nguyên chỗ đang xem phía dưới */
dialog.hop-thoai{margin:56px 0 0 auto;height:calc(100vh - 56px);max-height:none;width:var(--kct-rong);max-width:100vw;border-radius:0;border-left:1px solid var(--vien);
  border-top:3px solid var(--son);box-shadow:-10px 0 30px rgba(30,15,10,.22);padding:16px 18px 24px;overflow:auto}
dialog.hop-thoai[open]{animation:truot-vao .2s ease}
dialog.hop-thoai::backdrop{background:rgba(20,10,5,.18)}
dialog.hop-thoai.rong{width:min(900px,100vw)}
@keyframes truot-vao{from{transform:translateX(40px);opacity:.4}to{transform:none;opacity:1}}
.ht-x{position:sticky;top:-16px;float:right;margin:-8px -8px 0 8px;z-index:3}

/* ---------- báo nhanh "Đã lưu" 4 giây, kèm "Về danh sách" ---------- */
.toast{border-radius:10px;font-weight:600;box-shadow:0 10px 30px rgba(0,0,0,.25)}
.toast.ok{background:#1E3A2B;color:#fff}
.toast a{color:var(--kim);margin-left:12px;font-weight:700}

/* hộp hỏi khi rời trang còn thay đổi chưa lưu */
.hoi-roi{border:0;border-radius:14px;padding:18px 20px;max-width:420px;box-shadow:0 20px 50px rgba(0,0,0,.35);background:var(--the);color:var(--chu)}
.hoi-roi::backdrop{background:rgba(0,0,0,.35)}
.hoi-roi h2{font-family:var(--chu-chan);font-size:17px;margin:0 0 6px}
.hoi-roi .hang-nut{display:flex;gap:8px;flex-wrap:wrap;margin-top:14px}

/* ô ngày dd/mm/yyyy (Phần C1) */
.o-ngay{display:inline-flex;align-items:center;gap:4px;position:relative;max-width:100%}
.o-ngay>input[type=text]{min-width:0;width:120px}
.o-ngay>.o-ngay-lich{border:1px solid var(--vien);background:var(--the);border-radius:8px;width:30px;height:32px;cursor:pointer;padding:0;color:var(--mo)}
.o-ngay>input[type=date]{position:absolute;width:1px;height:1px;opacity:0;pointer-events:none;right:0;bottom:0}
label .o-ngay{display:flex}
label .o-ngay>input[type=text]{flex:1;width:auto}

/* Ctrl+K: ô tìm nhanh */
.tim-nhanh{border:0;border-radius:14px;padding:0;width:min(620px,94vw);margin-top:12vh;box-shadow:0 24px 60px rgba(0,0,0,.35);background:var(--the);color:var(--chu)}
.tim-nhanh::backdrop{background:rgba(20,10,5,.35)}
.tim-nhanh input{width:100%;border:0;border-bottom:1px solid var(--vien);padding:14px 16px;font:inherit;font-size:16px;background:transparent;color:inherit;outline:none}
.tim-nhanh .tn-kq{max-height:55vh;overflow:auto;padding:6px}
.tim-nhanh .tn-kq a{display:block;padding:7px 10px;border-radius:8px;color:inherit;text-decoration:none}
.tim-nhanh .tn-kq a.chon,.tim-nhanh .tn-kq a:hover{background:var(--hover)}
.tim-nhanh .tn-kq small{display:block;color:var(--mo)}
.tim-nhanh .tn-nhom{font-size:11px;font-weight:700;color:var(--mo);text-transform:uppercase;padding:8px 10px 2px}

/* viên lọc, nút chính */
.vien20{display:inline-flex;align-items:center;gap:6px;height:28px;padding:0 12px;border-radius:999px;border:1px solid var(--vien);background:var(--the);color:var(--chu);font:inherit;
  font-size:13px;font-weight:600;cursor:pointer;text-decoration:none;white-space:nowrap}
.vien20 b{font-weight:800}
.vien20.on{background:var(--son);border-color:var(--son);color:#fff}
.vien20.cham b{color:var(--tt-cham)}.vien20.on.cham b{color:#fff}
.btn{background:var(--son)}.btn:hover{background:var(--son-dam)}

/* ---------- Bảng điều hành 1.20 (Phần D) ---------- */
.bdh20{display:flex;flex-direction:column}
.bdh20 .bdh20-k-dd,.bdh20 .bdh20-k-vb{margin:0 0 14px}
.bdh20-k-td1{margin:0 0 14px}
.bdh20-o b small{font-size:13px;color:var(--mo);font-weight:600;margin-left:3px}
.bdh20-cb button.ten.on{color:var(--son)}
.bdh20-chao{position:relative;overflow:hidden;border-radius:14px;color:#fff;margin:0 0 14px;min-height:150px;display:flex;align-items:stretch;
  background:linear-gradient(100deg,var(--son-dam),var(--son) 60%,#B8322E)}
.bdh20-chao::after{content:"";position:absolute;inset:0 0 0 auto;width:min(520px,48%);background:var(--anh-chao,url(/anh-giao-dien/bang_chao)) center/cover no-repeat;
  -webkit-mask-image:linear-gradient(90deg,transparent,#000 40%);mask-image:linear-gradient(90deg,transparent,#000 40%);opacity:.95}
.bdh20-chao .trong{position:relative;z-index:1;padding:18px 22px;max-width:640px}
.bdh20-chao h1{font-family:var(--chu-chan);font-size:24px;margin:0 0 4px;color:#fff}
.bdh20-chao .ngay{opacity:.9;font-size:13px}
.bdh20-chao p.tom{margin:8px 0 10px;font-size:14px;line-height:1.5}
.bdh20-chao .vien-chao{display:flex;gap:6px;flex-wrap:wrap}
.bdh20-chao .vien-chao a{background:rgba(255,255,255,.16);border:1px solid rgba(255,255,255,.3);color:#fff;border-radius:999px;padding:3px 12px;font-size:13px;font-weight:600;text-decoration:none}
.bdh20-chao .vien-chao a:hover{background:rgba(255,255,255,.28)}
.bdh20-chao .vien-chao b{color:var(--kim)}
.bdh20-o5{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:10px;margin:0 0 14px}
.bdh20-o{display:block;background:var(--the);border:1px solid var(--vien);border-radius:12px;padding:10px 14px;text-decoration:none;color:var(--chu);border-top:3px solid var(--mau,var(--son))}
.bdh20-o:hover{box-shadow:0 8px 20px -10px rgba(60,20,10,.35);transform:translateY(-1px)}
.bdh20-o>small{display:block;color:var(--mo);font-size:12px;font-weight:600}
.bdh20-o b{display:block;font-size:26px;line-height:1.2;font-variant-numeric:tabular-nums}
.bdh20-o>span{font-size:12px;color:var(--mo)}
.bdh20-h2{display:grid;grid-template-columns:minmax(0,65fr) minmax(0,35fr);gap:12px;margin:0 0 14px}
.bdh20-khoi{background:var(--the);border:1px solid var(--vien);border-radius:12px;padding:12px 14px;min-width:0}
.bdh20-khoi>h2{font-family:var(--chu-chan);font-size:16px;margin:0 0 8px;display:flex;align-items:center;gap:8px}
.bdh20-khoi>h2 a{margin-left:auto;font-family:var(--chu-than);font-size:12.5px;font-weight:600;color:var(--son);text-decoration:none}
.bdh20-2cot{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1.1fr);gap:16px}
.bdh20-lv{display:grid;grid-template-columns:minmax(0,1fr) 84px 42px;gap:8px;align-items:center;padding:4px 0;font-size:13px;text-decoration:none;color:inherit}
.bdh20-lv:hover .t{color:var(--son)}
.bdh20-lv .t{white-space:nowrap;overflow:hidden;text-overflow:ellipsis;display:flex;align-items:center;gap:6px}
.bdh20-lv .t i{width:9px;height:9px;border-radius:3px;background:var(--mau);flex:none}
.bdh20-thanh{display:flex;height:8px;border-radius:4px;overflow:hidden;background:var(--vien-nhat)}
.bdh20-thanh i{display:block;height:100%}
.bdh20-cb{display:flex;gap:4px;align-items:center;padding:3px 0;font-size:13px;border-bottom:1px dashed var(--vien-nhat)}
.bdh20-cb button.ten{border:0;background:none;font:inherit;font-weight:600;color:var(--chu);cursor:pointer;padding:0;text-align:left;flex:1;min-width:0;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.bdh20-cb button.ten:hover,.bdh20-cb button.ten.on{color:var(--son);text-decoration:underline}
.bdh20-cb .p{font-size:11px;border-radius:999px;padding:0 6px;text-decoration:none;color:var(--chu);background:var(--nen-phu);border:1px solid var(--vien);white-space:nowrap}
.bdh20-cb .p.cham{color:var(--tt-cham);border-color:var(--tt-cham-vien);background:var(--tt-cham-nhat)}
.bdh20-tc dl{display:grid;grid-template-columns:1fr auto;gap:6px 10px;margin:0;font-size:13px}.bdh20-tc dd{margin:0;font-weight:700;text-align:right}
.bdh20-dd table{width:100%}
.bdh20-dd .con td{font-size:12.5px;color:var(--mo)}.bdh20-dd .con td:first-child{padding-left:26px}
.bdh20-dd .mo-con{border:0;background:none;color:var(--son);cursor:pointer;font:inherit;font-size:12px;padding:0 4px}
.bdh20-vb li{padding:4px 0;border-bottom:1px dashed var(--vien-nhat);font-size:13px}
.bdh20-vb ul{list-style:none;margin:0;padding:0}

/* trang đăng nhập: ảnh của phòng (hoặc tranh mặc định) phía trên hộp đăng nhập */
.dn20-anh{height:160px;max-width:520px;margin:8px auto 14px;border-radius:14px;background:url(/anh-giao-dien/dang_nhap) center/cover no-repeat,var(--son-dam)}
#f-dang-nhap h1{font-family:var(--chu-chan)}

/* ---------- trang gộp nhiều thẻ (Trợ lý số, Kho văn bản) ---------- */
.gop20-the{margin:0 0 12px}

/* ---------- điện thoại ---------- */
@media (max-width:900px){
  .dau{height:56px}
  .ben.b20{top:0;height:auto;padding-top:68px}
  .b20 .tim-ben{display:block;margin:0 0 6px}
  .vt20 ol,.vt20-lai{display:none}
  .vt20-cha{display:inline}
  .k2-tren,.k2-boc{position:static}
  .k2-the{flex-wrap:nowrap;overflow-x:auto;width:100%;padding-bottom:2px;scrollbar-width:none}
  .k2-d1 h1{font-size:17px}.k2-phai{margin-left:0;flex-wrap:wrap}
  .kct{top:0;width:100vw;z-index:70}
  body.co-kct main{padding-right:12px}
  dialog.hop-thoai{margin:0;width:100vw;height:100vh;border-top-width:3px}
  .bdh20-o5{grid-template-columns:repeat(2,minmax(0,1fr))}
  .bdh20-h2,.bdh20-2cot{grid-template-columns:minmax(0,1fr)}
  .bdh20-h2{display:contents}
  .bdh20-k-chao{order:1}.bdh20-k-o{order:2}.bdh20-k-dd{order:3}.bdh20-k-td,.bdh20-k-td1{order:4;margin-bottom:14px}.bdh20-k-tc{order:5;margin-bottom:14px}
  .bdh20-k-vb{order:6}.bdh20 .chan{order:7}
  .bdh20-dd th:nth-child(4),.bdh20-dd td:nth-child(4),.bdh20-dd th:nth-child(6),.bdh20-dd td:nth-child(6){display:none}
  .bdh20-chao::after{width:100%;opacity:.25;-webkit-mask-image:none;mask-image:none}
  .bang-khung{max-height:none}
  .kct-keo{display:none}
}
@media print{.vt20,.kct,.k2-gon,.b20-sx{display:none!important}.k2-tren{position:static}}

/* ---------- Nhập số liệu dạng bảng (Phần E1) ---------- */
.nhap20{max-height:calc(100vh - 250px)}
.nhap20 thead tr:nth-child(2) th{top:31px}
.nhap20 th.giua{text-align:center}
.nhap20 tbody.the-nhap>tr>td{vertical-align:top;background:var(--the)}
.nhap20 tbody.the-nhap:nth-of-type(even)>tr>td{background:var(--xen-ke)}
.nhap20 tbody.the-nhap.da-sua>tr>td:first-child{box-shadow:inset 4px 0 var(--kim)}
.nhap20 tbody.the-nhap.co-loi>tr>td:first-child{box-shadow:inset 4px 0 var(--tt-cham)}
.nhap20 .tn-nhap label{margin:0}.nhap20 .tn-nhap label>span{display:none}
.nhap20 .tn-nhap input.so-to{width:100%;min-width:140px;text-align:right}
.nhap20 .tn-thon{margin:0;padding:2px 8px}.nhap20 .tn-thon summary{padding:2px 0}
.nhap20 .tn-tra-lai{margin:4px 0 0;padding:4px 8px;font-size:12.5px}
.nhap20 .tn-canh-bao .loi,.nhap20 .tn-canh-bao .canh-bao{font-size:12px}
.nhap20 input[data-nguon]{min-width:150px}
.excel20{position:relative}.excel20>summary{list-style:none;cursor:pointer}.excel20>summary::-webkit-details-marker{display:none}
.excel20 .menu-cot{right:0;top:calc(100% + 4px);display:grid;gap:6px}

/* ---------- Kho văn bản › Chờ xử lý: 3 khung (Phần I) ---------- */
.cn-luoi{grid-template-columns:minmax(280px,320px) minmax(0,1fr)!important;gap:12px}
.cn-bang{max-height:calc(100vh - 210px);overflow:auto;position:sticky;top:64px;padding:0!important}
.cn-bang .bang td{padding:5px 8px;font-size:12.5px}
.cn-doi-chieu{grid-template-columns:minmax(0,1fr) minmax(300px,380px)!important}
.cn-doi-chieu.to{grid-template-columns:minmax(0,1fr)!important}.cn-doi-chieu.to .cn-phai{display:none}
.cn-phai{position:sticky;top:64px;max-height:calc(100vh - 80px);overflow:auto}
.cn-goc{height:calc(100vh - 200px)!important}
.cn20-thanh-xem{display:flex;gap:6px;align-items:center;flex-wrap:wrap;margin:0 0 6px}
.cn20-thanh-xem .mo{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;min-width:0;flex:1}
.cn20-phieu{padding:10px 12px;display:grid;gap:4px}.cn20-phieu label{font-size:12.5px;color:var(--mo)}
.cn20-phieu .tieude{display:flex;align-items:center;gap:8px}.cn20-phieu h3{margin:0;font-family:var(--chu-chan)}
.cn20-goi-y{background:var(--kim-nhat);border-radius:8px;padding:6px 8px;font-size:12.5px}
.cn20-bulk{position:sticky;top:0;z-index:3;background:var(--kim-nhat);padding:6px 8px;display:flex;gap:6px;align-items:center;flex-wrap:wrap}
@media (max-width:1100px){.cn-luoi,.cn-doi-chieu{grid-template-columns:minmax(0,1fr)!important}.cn-bang,.cn-phai{position:static;max-height:none}}
/* Chờ xử lý: khung thả tệp gọn một dòng để 3 khung vừa màn hình 1366×768 */
.cn-tha{padding:8px 12px!important;gap:10px!important;min-height:0!important;margin:0 0 8px!important}
.cn-tha>svg{display:none}.cn-tha>div:first-of-type .mo{display:none}
.cn-dau{padding:10px 12px!important}.cn-dau h2{font-size:15px;margin:0 0 4px}.cn-dau p{margin:2px 0}
/* Nhập số liệu trên điện thoại: mỗi chỉ tiêu một khối (bảng xếp dọc), ô số to, bàn phím số */
@media (max-width:900px){
  .nhap20{max-height:none;border:0;background:none}
  .nhap20 table,.nhap20 tbody.the-nhap{display:block;width:100%}
  .nhap20 thead{display:none}
  .nhap20 tbody.the-nhap{background:var(--the);border:1px solid var(--vien);border-radius:10px;margin:0 0 8px;overflow:hidden}
  .nhap20 tbody.the-nhap>tr{display:grid;grid-template-columns:1fr 1fr;gap:0}
  .nhap20 tbody.the-nhap>tr>td{height:auto;border:0;padding:4px 10px}
  .nhap20 tbody.the-nhap>tr>td.ten,.nhap20 tbody.the-nhap>tr>td.o-nhap20{grid-column:1/-1}
  .nhap20 tbody.the-nhap>tr>td:first-child{grid-column:1/-1;padding-top:8px}
  .nhap20 .tn-nhap input.so-to{font-size:17px;min-height:42px}
  .kct table th:nth-child(4),.kct table td:nth-child(4){display:none}
}
