/* ui-nhatky — NHẬT KÝ CHUYÊN MÔN làm lại 24/09/2026 (Stitch 3-nhat-ky-v2 + nguyên tắc chủ dự án):
   KHÔNG đường viền — phân vùng bằng mảng màu chuyển nhẹ; ít chữ, icon nét mảnh; đã đọc = mặt người dưới bài;
   bình luận kiểu trò chuyện. Lớp tiền tố `nkx-` để không đụng các luật `nk-`/`nk3-` cũ trong app.css. */

.nkx-ic{width:18px;height:18px;flex:none;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round;display:inline-block;vertical-align:middle}
.nkx-tieu-de{display:flex;align-items:center;gap:12px;margin:0 0 14px}
.nkx-tieu-de h1{margin:0;font-size:24px;letter-spacing:-.01em}

.nkx{display:grid;grid-template-columns:260px minmax(0,1fr);gap:20px;align-items:start}
.nkx.co-phai{grid-template-columns:250px minmax(0,1fr) minmax(0,1.05fr)}
.nkx-trai,.nkx-giua,.nkx-phai{min-width:0}

/* ---------- cột trái ---------- */
.nkx-trai{display:flex;flex-direction:column;gap:6px;position:sticky;top:12px}
.nkx-trai h4{margin:14px 4px 4px;font-size:12px;font-weight:600;color:var(--chu3);letter-spacing:.02em}
.nkx-so-luoi{display:grid;grid-template-columns:1fr 1fr;gap:8px}
.nkx-so{border-radius:18px;padding:12px 12px 10px;display:flex;flex-direction:column;gap:2px;position:relative;background:var(--the)}
.nkx-so b{font-size:22px;font-family:"IBM Plex Mono",monospace;letter-spacing:-.03em;color:var(--chu)}
.nkx-so small{font-size:12px;color:var(--chu2);line-height:1.25}
.nkx-so-ic{position:absolute;top:10px;right:10px;opacity:.9}
.nkx-so-ic .nkx-ic{width:16px;height:16px}
.nkx-so.tim{background:linear-gradient(145deg,var(--nhan-nhat),var(--the))}.nkx-so.tim .nkx-so-ic{color:var(--nhan)}
.nkx-so.nhat{background:linear-gradient(145deg,var(--nen),var(--the))}.nkx-so.nhat .nkx-so-ic{color:var(--chu3)}
.nkx-so.do{background:linear-gradient(145deg,color-mix(in srgb,var(--loi) 14%,var(--the)),var(--the))}.nkx-so.do b,.nkx-so.do .nkx-so-ic{color:var(--loi)}
.nkx-so.vang{background:linear-gradient(145deg,color-mix(in srgb,var(--canh) 16%,var(--the)),var(--the))}.nkx-so.vang b,.nkx-so.vang .nkx-so-ic{color:var(--canh)}
.nkx-so.xanh{background:linear-gradient(145deg,color-mix(in srgb,var(--tot) 14%,var(--the)),var(--the))}.nkx-so.xanh b,.nkx-so.xanh .nkx-so-ic{color:var(--tot)}
.nkx-no{display:flex;gap:6px;flex-wrap:wrap;margin-top:2px}
.nkx-no span{display:inline-flex;align-items:center;gap:5px;font-size:12px;color:var(--chu2);background:var(--the);border-radius:999px;padding:5px 10px}
.nkx-no .nkx-ic{width:14px;height:14px;color:var(--chu3)}
.nkx-no b{color:var(--chu);font-weight:600}
.nkx-goc{display:flex;flex-direction:column;gap:2px}
.nkx-goc-muc{display:flex;align-items:center;gap:10px;border:0;background:transparent;border-radius:12px;padding:9px 10px;font:inherit;font-size:14px;color:var(--chu2);cursor:pointer;text-align:left;min-height:40px}
.nkx-goc-muc span{flex:1}
.nkx-goc-muc em{font-style:normal;font-size:12px;font-family:"IBM Plex Mono",monospace;color:var(--chu3)}
.nkx-goc-muc .nkx-ic{color:var(--chu3)}
.nkx-goc-muc:hover{background:color-mix(in srgb,var(--nhan) 6%,transparent)}
.nkx-goc-muc.chon{background:linear-gradient(90deg,var(--nhan-nhat),transparent);color:var(--nhan);font-weight:600}
.nkx-goc-muc.chon .nkx-ic,.nkx-goc-muc.chon em{color:var(--nhan)}
.nkx-goc-muc.do em{color:var(--loi);font-weight:600}
.nkx-loc summary{display:flex;align-items:center;gap:8px;list-style:none;cursor:pointer;margin-top:10px;padding:9px 10px;border-radius:12px;background:var(--the);font-size:13.5px;color:var(--chu2);font-weight:600}
.nkx-loc summary::-webkit-details-marker{display:none}
.nkx-loc summary em{font-style:normal;background:var(--nhan);color:#fff;border-radius:999px;font-size:11px;padding:0 7px;margin-left:auto}
.nkx-loc[open] summary{background:transparent;padding-left:4px}
.nkx-chip{display:flex;flex-wrap:wrap;gap:6px}
.nkx-chip button{border:0;border-radius:999px;background:var(--the);padding:6px 12px;font:inherit;font-size:12.5px;color:var(--chu2);cursor:pointer;min-height:32px}
.nkx-chip button.chon{background:var(--nhan);color:#fff}
.nkx-bs{display:flex;flex-direction:column;gap:2px}
.nkx-bs-dong{display:flex;align-items:center;gap:10px;border:0;background:transparent;border-radius:12px;padding:6px 8px;font:inherit;font-size:13.5px;color:var(--chu);cursor:pointer;text-align:left}
.nkx-bs-dong:hover{background:var(--the)}
.nkx-bs-dong.chon{background:linear-gradient(90deg,var(--nhan-nhat),transparent);font-weight:600}
.nkx-bs-anh{width:30px;height:30px;border-radius:50%;overflow:hidden;flex:none}
.nkx-bs-ten{flex:1;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.nkx-bs-dong em{font-style:normal;font-size:11.5px;font-family:"IBM Plex Mono",monospace;color:var(--chu3);background:var(--the);border-radius:999px;padding:1px 8px}
.nkx-them{display:flex;flex-direction:column;gap:8px;margin-top:12px}
.nkx-chon{border:0;background:var(--the);border-radius:12px;padding:9px 12px;font:inherit;font-size:13px;color:var(--chu2);width:100%}
.nkx-o-ma{display:flex;align-items:center;gap:8px;background:var(--the);border-radius:12px;padding:0 12px;color:var(--chu3)}
.nkx-o-ma input{border:0;background:transparent;font:inherit;font-size:13px;padding:9px 0;flex:1;min-width:0;color:var(--chu);outline:none}

/* ---------- tường ---------- */
.nkx-dau-tuong{display:flex;align-items:center;gap:8px;margin:2px 4px 12px}
.nkx-dau-tuong b{font-size:15px}
.nkx-dem{font-size:12px;font-family:"IBM Plex Mono",monospace;color:var(--chu3);background:var(--the);border-radius:999px;padding:1px 8px}
.nkx-nut-ic{width:40px;height:40px;border:0;border-radius:50%;background:var(--the);color:var(--chu2);display:inline-flex;align-items:center;justify-content:center;cursor:pointer;flex:none}
.nkx-nut-ic:hover{background:var(--nhan-nhat);color:var(--nhan)}
.nkx-tuong{display:flex;flex-direction:column;gap:14px}
.nkx-the{position:relative;background:var(--the);border-radius:22px;padding:16px 18px 12px;cursor:pointer;box-shadow:0 1px 2px rgba(30,20,70,.04),0 8px 24px -18px rgba(30,20,70,.25);transition:box-shadow .15s,transform .15s,background .15s}
.nkx-the:hover{box-shadow:0 1px 2px rgba(30,20,70,.05),0 14px 34px -18px rgba(30,20,70,.35)}
.nkx-the.dang-chon{background:linear-gradient(160deg,var(--nhan-nhat),var(--the) 55%)}
.nkx-the.co-do{background:linear-gradient(160deg,color-mix(in srgb,var(--loi) 7%,var(--the)),var(--the) 45%)}
.nkx-the.co-do.dang-chon{background:linear-gradient(160deg,color-mix(in srgb,var(--loi) 7%,var(--nhan-nhat)),var(--the) 55%)}
.nkx-the-dau{display:flex;align-items:center;gap:12px}
.nkx-the-anh{width:44px;height:44px;border-radius:50%;overflow:hidden;flex:none}
.nkx-the-ten{flex:1;min-width:0;display:flex;flex-direction:column;gap:2px}
.nkx-the-ten>div{display:flex;align-items:center;gap:8px;flex-wrap:wrap}
.nkx-the-ten b{font-size:15px}
.nkx-the-ten small{display:inline-flex;align-items:center;gap:5px;font-size:12.5px;color:var(--chu3)}
.nkx-the-ten small .nkx-ic{width:14px;height:14px}
.nkx-nhom{font-size:11.5px;font-weight:600;color:var(--nhan);background:var(--nhan-nhat);border-radius:999px;padding:2px 9px;max-width:260px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.nkx-the-dau-phai{display:flex;align-items:center;gap:6px}
.nkx-huy{width:28px;height:28px;border-radius:50%;display:inline-flex;align-items:center;justify-content:center;background:var(--nen);color:var(--chu3)}
.nkx-huy .nkx-ic{width:15px;height:15px}
.nkx-huy.xong{background:color-mix(in srgb,var(--tot) 12%,transparent);color:var(--tot)}
.nkx-huy.sao{background:color-mix(in srgb,var(--canh) 16%,transparent);color:var(--canh)}
.nkx-cham-moi{width:9px;height:9px;border-radius:50%;background:var(--nhan);box-shadow:0 0 0 4px var(--nhan-nhat)}
.nkx-khach{display:inline-flex;align-items:center;gap:4px;margin:10px 0 0;font-size:12.5px;color:var(--chu2);background:var(--nen);border-radius:10px;padding:4px 10px}
.nkx-khach code{font-family:"IBM Plex Mono",monospace;font-size:12px;color:var(--chu);font-weight:600}
.nkx-do{display:flex;gap:8px;align-items:flex-start;margin-top:10px;padding:9px 12px;border-radius:14px;font-size:13px;line-height:1.45;color:var(--loi);background:linear-gradient(90deg,color-mix(in srgb,var(--loi) 12%,var(--the)),color-mix(in srgb,var(--loi) 3%,var(--the)))}
.nkx-do .nkx-ic{width:16px;height:16px;margin-top:1px}
.nkx-do em{font-style:normal;color:var(--chu2)}
.nkx-do.to{margin:0 0 12px}
.nkx-tom{margin-top:10px;font-size:14px;line-height:1.6;color:var(--chu);white-space:pre-wrap}
.nkx-tom.clamp{display:-webkit-box;-webkit-line-clamp:3;-webkit-box-orient:vertical;overflow:hidden}
.nkx-xem-them{border:0;background:transparent;padding:2px 0;font:inherit;font-size:13px;color:var(--nhan);cursor:pointer;font-weight:600}
.nkx-chua-mo-ta{display:inline-flex;align-items:center;gap:6px;margin-top:10px;font-size:13px;color:var(--chu3)}
.nkx-chua-mo-ta.toi{color:var(--canh);font-weight:600}
.nkx-chua-mo-ta .nkx-ic{width:15px;height:15px}
.nkx-the .nk-luoi{margin-top:12px;border-radius:16px;overflow:hidden;gap:4px}
.nkx-the .nk-luoi-o{border:0;border-radius:0}
.nkx-chan{display:flex;align-items:center;gap:10px;margin-top:12px;padding-top:10px;background:linear-gradient(90deg,transparent,color-mix(in srgb,var(--chu3) 18%,transparent),transparent) top/100% 1px no-repeat}
.nkx-chan .chip{border:0;border-radius:8px;font-family:"IBM Plex Mono",monospace;font-size:12px;font-weight:600;padding:3px 8px}
.nkx-dem-ic{display:inline-flex;align-items:center;gap:4px;color:var(--chu3)}
.nkx-dem-ic small{font-size:12.5px;color:var(--chu2);font-family:"IBM Plex Mono",monospace}
.nkx-doc{display:inline-flex;align-items:center;gap:6px;color:var(--chu3)}
.nkx-doc.rong small{font-size:12.5px;font-family:"IBM Plex Mono",monospace}
.nkx-doc>small{font-size:12.5px;color:var(--chu2);font-family:"IBM Plex Mono",monospace}
.nkx-doc.to>small{font-family:inherit;font-size:13px}
.nkx-mat-chong{display:inline-flex;align-items:center}
.nkx-mat{width:24px;height:24px;border-radius:50%;overflow:hidden;box-shadow:0 0 0 2px var(--the);margin-left:-7px;display:inline-flex}
.nkx-mat:first-child{margin-left:0}
.nkx-doc.to .nkx-mat{width:28px;height:28px}
.nkx-cong{font-size:11px;font-weight:600;color:var(--chu2);background:var(--nen);border-radius:999px;padding:2px 6px;margin-left:-4px}
.nkx-dai{display:flex;align-items:center;gap:10px;border-radius:16px;padding:10px 14px;margin:0 0 12px;font-size:13.5px}
.nkx-dai.tien{background:linear-gradient(90deg,color-mix(in srgb,var(--tot) 12%,var(--the)),var(--the));color:var(--chu)}
.nkx-dai.tien .nkx-nut-ic{margin-left:auto;width:34px;height:34px}
.nkx-dai.khoa{background:linear-gradient(90deg,var(--nen),var(--the));color:var(--chu2)}
.nkx-dai.sao{background:linear-gradient(90deg,color-mix(in srgb,var(--canh) 14%,var(--the)),var(--the));color:var(--chu)}
.nkx-dai.sao .nkx-ic{color:var(--canh)}
.nkx-dang{padding:28px;color:var(--chu3);font-size:13.5px}

/* ---------- cột phải: bài đang mở ---------- */
.nkx-phai{background:var(--the);border-radius:24px;padding:18px 18px 8px;position:sticky;top:12px;max-height:calc(100vh - 24px);overflow:auto;box-shadow:0 12px 40px -24px rgba(30,20,70,.35)}
.nkx-ct-dau{display:flex;align-items:flex-start;gap:14px}
.nkx-ct-anh{width:56px;height:56px;border-radius:50%;overflow:hidden;flex:none;box-shadow:0 0 0 4px var(--nhan-nhat)}
.nkx-ct-ten{flex:1;min-width:0;display:flex;flex-direction:column;gap:3px;align-items:flex-start}
.nkx-ct-ten h2{margin:0;font-size:19px}
.nkx-ct-ten>small{display:inline-flex;align-items:center;gap:5px;font-size:12.5px;color:var(--chu3)}
.nkx-ct-ten .nkx-khach{margin-top:4px}
.nkx-ct-nut{display:flex;gap:6px;flex:none}
.nkx-ct-nut .nut{border:0}
.nkx-ct-doc{margin:12px 0;padding:8px 12px;border-radius:14px;background:linear-gradient(90deg,var(--nen),var(--the))}
.nkx-ct{display:grid;grid-template-columns:1fr 1fr;gap:14px}
.nkx-ct.mot{grid-template-columns:1fr}
.nkx-khoi{border-radius:20px;padding:14px 14px 12px;margin-bottom:12px;background:linear-gradient(180deg,var(--nen),color-mix(in srgb,var(--nen) 40%,var(--the)))}
.nkx-khoi h3{display:flex;align-items:center;gap:8px;margin:0 0 10px;font-size:14.5px}
.nkx-khoi h3 .nkx-ic{color:var(--nhan);width:17px;height:17px}
.nkx-khoi h3 small{margin-left:auto;font-weight:400;font-size:12px;color:var(--chu3);font-family:"IBM Plex Mono",monospace}
.nkx-van{font-size:14px;line-height:1.65;white-space:pre-wrap;color:var(--chu)}
.nkx-van.mo{color:var(--chu3);font-size:13px}
.nkx-o{width:100%;border:0;border-radius:14px;background:var(--the);padding:10px 12px;font:inherit;font-size:14px;line-height:1.55;color:var(--chu);resize:vertical;outline:none;box-shadow:inset 0 0 0 1px transparent}
.nkx-o:focus{box-shadow:0 0 0 3px var(--nhan-nhat)}
.nkx-o-ly-do{margin-top:6px;font-size:13px;padding:8px 12px}
.nkx-hang-phai{display:flex;justify-content:flex-end;margin-top:8px}
.nkx-luu-y{display:flex;align-items:center;gap:6px;font-size:12px;color:var(--chu3);margin:-4px 0 8px}
.nkx-luu-y .nkx-ic{width:14px;height:14px}
.nkx-nhan-thang{display:flex;justify-content:space-between;align-items:baseline;gap:8px;margin:10px 0 6px;font-size:12.5px;color:var(--chu2)}
.nkx-nhan-thang .nk-nghia{font-size:12.5px}
.nkx-thang{display:grid;grid-template-columns:repeat(5,1fr);gap:4px;background:var(--the);border-radius:14px;padding:4px}
.nkx-num{border:0;background:transparent;border-radius:10px;padding:8px 2px;min-height:40px;font:inherit;cursor:pointer;color:var(--chu2);display:flex;flex-direction:column;align-items:center;gap:1px}
.nkx-num b{font-size:13.5px;font-family:"IBM Plex Mono",monospace}
.nkx-num span{font-size:10px;line-height:1.2;color:var(--chu3);text-align:center;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}
.nkx-num:disabled{cursor:default}
.nkx-num:not(:disabled):hover{background:var(--nen)}
.nkx-num.chon{color:#fff}
.nkx-num.chon span{color:rgba(255,255,255,.85)}
.nkx-num.chon.m1,.nkx-num.chon.m2{background:linear-gradient(160deg,var(--loi),color-mix(in srgb,var(--loi) 75%,black))}
.nkx-num.chon.m3{background:linear-gradient(160deg,var(--canh),color-mix(in srgb,var(--canh) 75%,black))}
.nkx-num.chon.m4,.nkx-num.chon.m5{background:linear-gradient(160deg,var(--tot),color-mix(in srgb,var(--tot) 75%,black))}
.nkx-num.doi{box-shadow:inset 0 0 0 2px var(--nhan)}
.nkx-ly-do{margin-top:6px;font-size:12.5px;color:var(--chu2);padding-left:10px;background:linear-gradient(var(--nhan-nhat),var(--nhan-nhat)) left/3px 100% no-repeat}
.nkx-doi-chieu{margin-top:12px;padding:10px 12px;border-radius:14px;background:var(--the);font-size:13px}
.nkx-doi-chieu small{display:block;margin-top:4px;color:var(--chu3)}
.nkx-khoi .nk-cham-lai{margin-top:12px;padding:12px;border-radius:14px;background:var(--the);border:0}
.nkx-khoi .nk-cham-lai select,.nkx-khoi .nk-cham-lai input{border:0;background:var(--nen);border-radius:10px;padding:8px 10px}
.nkx-luoi-hinh{display:grid;grid-template-columns:repeat(auto-fill,minmax(96px,1fr));gap:8px}
.nkx-hinh{border:0;padding:0;background:transparent;border-radius:14px;overflow:hidden;cursor:zoom-in;position:relative;display:block;aspect-ratio:1}
.nkx-hinh img,.nkx-hinh>div{width:100%!important;height:100%!important;object-fit:cover;display:block}
.nkx-hinh>span{position:absolute;left:6px;bottom:6px;right:6px;font-size:10.5px;font-weight:600;color:#fff;background:rgba(15,12,40,.55);border-radius:8px;padding:2px 6px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;text-align:left}

/* ---------- bình luận kiểu trò chuyện ---------- */
.nkx-luong{display:flex;flex-direction:column;gap:12px;margin-bottom:12px}
.nkx-bl{display:flex;gap:10px;align-items:flex-start}
.nkx-bl-anh{width:32px;height:32px;border-radius:50%;overflow:hidden;flex:none}
.nkx-bl.tra-loi .nkx-bl-anh{width:26px;height:26px}
.nkx-bl-than{flex:1;min-width:0}
.nkx-bong{background:var(--the);border-radius:4px 18px 18px 18px;padding:9px 12px 10px;box-shadow:0 1px 2px rgba(30,20,70,.05)}
.nkx-bl.cua-toi .nkx-bong{background:linear-gradient(160deg,var(--nhan-nhat),var(--the))}
.nkx-bl-dau{display:flex;align-items:center;gap:8px;flex-wrap:wrap}
.nkx-bl-dau b{font-size:13.5px}
.nkx-bl-chu{margin-top:4px;font-size:13.5px;line-height:1.55;white-space:pre-wrap;color:var(--chu)}
.nkx-bl-hinh{display:flex;gap:6px;flex-wrap:wrap;margin-top:8px}
.nkx-bl-hinh button{border:0;padding:0;border-radius:10px;overflow:hidden;cursor:zoom-in;background:transparent}
.nkx-bl-chan{display:flex;align-items:center;gap:10px;margin:4px 0 0 4px}
.nkx-bl-chan small{font-size:11.5px;color:var(--chu3)}
.nkx-tra{display:inline-flex;align-items:center;gap:4px;border:0;background:transparent;font:inherit;font-size:12px;font-weight:600;color:var(--nhan);cursor:pointer;padding:2px 4px;border-radius:8px}
.nkx-tra .nkx-ic{width:14px;height:14px}
.nkx-tra:hover{background:var(--nhan-nhat)}
.nkx-bl-nhom{display:flex;flex-direction:column;gap:10px;margin-top:10px;padding-left:4px}
.nkx-loai{display:inline-flex;align-items:center;gap:4px;border:0;border-radius:999px;padding:2px 9px 2px 7px;font:inherit;font-size:11.5px;font-weight:600}
.nkx-loai .nkx-ic{width:13px;height:13px}
.nkx-loai.hoi{background:color-mix(in srgb,var(--canh) 16%,transparent);color:var(--canh)}
.nkx-loai.gop-y{background:var(--nhan-nhat);color:var(--nhan)}
.nkx-loai.xac-nhan{background:color-mix(in srgb,var(--tot) 14%,transparent);color:var(--tot)}
.nkx-loai.khoa{background:var(--nen);color:var(--chu3);padding:3px}
.nkx-soan{position:sticky;bottom:0;margin:4px -6px 0;padding:10px 6px 8px;background:linear-gradient(0deg,var(--nen) 70%,transparent);border-radius:0 0 16px 16px}
.nkx-soan.tra-loi{position:static;margin:8px 0 0;padding:0;background:transparent}
.nkx-soan-loai{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}
.nkx-soan-loai .nkx-loai{cursor:pointer;padding:6px 12px 6px 9px;font-size:12.5px;min-height:32px;background:var(--the);color:var(--chu2)}
.nkx-soan-loai .nkx-loai.chon.hoi{background:var(--canh);color:#fff}
.nkx-soan-loai .nkx-loai.chon.gop-y{background:var(--nhan);color:#fff}
.nkx-soan-loai .nkx-loai.chon.xac-nhan{background:var(--tot);color:#fff}
.nkx-soan-dong{display:flex;align-items:flex-end;gap:8px;background:var(--the);border-radius:22px;padding:5px;box-shadow:0 6px 20px -14px rgba(30,20,70,.4)}
.nkx-soan-dong .nkx-nut-ic{width:38px;height:38px;background:transparent}
.nkx-soan-o{flex:1;min-width:0;border:0;background:transparent;resize:none;font:inherit;font-size:14px;line-height:1.45;padding:9px 4px;max-height:160px;outline:none;color:var(--chu)}
.nkx-gui{width:40px;height:40px;border:0;border-radius:50%;background:linear-gradient(145deg,var(--nhan),color-mix(in srgb,var(--nhan) 70%,black));color:#fff;display:inline-flex;align-items:center;justify-content:center;cursor:pointer;flex:none}
.nkx-gui .nkx-ic{width:18px;height:18px}
.nkx-gui:disabled{opacity:.5}
.nkx-soan-tep{display:flex;gap:6px;flex-wrap:wrap;margin-top:6px}
.nkx-soan-tep span{display:inline-flex;align-items:center;gap:5px;background:var(--the);border-radius:999px;padding:3px 4px 3px 10px;font-size:12px;color:var(--chu2)}
.nkx-soan-tep button{border:0;background:var(--nen);border-radius:50%;width:22px;height:22px;display:inline-flex;align-items:center;justify-content:center;cursor:pointer;color:var(--chu3)}
.nkx-soan-tep .nkx-ic{width:13px;height:13px}

@media (max-width:1400px){.nkx.co-phai{grid-template-columns:230px minmax(0,1fr) minmax(0,1fr)}.nkx-ct{grid-template-columns:1fr}}
@media (max-width:1180px){.nkx,.nkx.co-phai{grid-template-columns:1fr}.nkx-trai{position:static}.nkx-so-luoi{grid-template-columns:repeat(4,1fr)}
  /* Màn hẹp: góc nhìn thành một hàng viên cuộn ngang — danh sách dọc 6 dòng đẩy bài đầu tiên xuống quá sâu. */
  .nkx-trai>h4:first-of-type{display:none}
  .nkx-goc{flex-direction:row;overflow-x:auto;gap:6px;scrollbar-width:none;padding-bottom:2px}
  .nkx-goc::-webkit-scrollbar{display:none}
  .nkx-goc-muc{flex:none;background:var(--the);border-radius:999px;padding:7px 12px;min-height:36px;font-size:13px}
  .nkx-goc-muc span{flex:none}
  .nkx-goc-muc.chon{background:var(--nhan);color:#fff}.nkx-goc-muc.chon .nkx-ic,.nkx-goc-muc.chon em{color:#fff}
}
@media (max-width:640px){
  .nkx-so-luoi{grid-template-columns:1fr 1fr}
  .nkx-the{padding:14px 14px 10px;border-radius:20px}
  .nkx-num span{display:none}
  .nkx-ct-dau{flex-wrap:wrap}
  .nkx-phai{padding:14px}
}

/* ===== dùng chung: khối "việc khẩn" gập (Sự cố y khoa, Tổng đài) — 24/09/2026 ===== */
.gap-khan{border-radius:16px;padding:10px 14px;margin-bottom:10px;background:linear-gradient(90deg,color-mix(in srgb,var(--canh) 14%,var(--the)),var(--the));font-size:13.5px;color:var(--chu)}
.gap-khan summary{cursor:pointer;list-style:none;color:var(--chu2)}
.gap-khan summary::-webkit-details-marker{display:none}
.gap-khan summary::before{content:"⚡ ";}
.gap-khan summary b{color:var(--canh)}
.gap-khan[open] summary{margin-bottom:4px}

/* ===== dùng chung: màn hẹp không được CẮT bảng / thanh thẻ (QC theo vị trí 24/09/2026) =====
   Ảnh 390px của KTV-VT, LABO-DP, KSNK: bảng Vô trùng mất cột KẾT QUẢ, bảng Labo mất HẠN VỀ/TRẠNG THÁI, thanh thẻ
   "Công việc của tôi" cụt chữ — không có dấu hiệu cuộn. Mọi bảng `.bang` trong nội dung màn tự cuộn ngang trên màn
   hẹp (bảng đã trong khung `.bang-cuon` thì giữ khung ấy); thanh thẻ không xuống dòng lộn xộn mà cuộn ngang. */
@media (max-width:640px){
  .chinh table.bang{display:block;max-width:100%;overflow-x:auto;-webkit-overflow-scrolling:touch}
  .chinh .bang-cuon>table.bang{display:table;overflow:visible}
  .chinh table.bang th{white-space:nowrap}
  .chinh table.bang td{min-width:72px}
  .chinh .thanh-tab{flex-wrap:nowrap;overflow-x:auto;-webkit-overflow-scrolling:touch;scrollbar-width:none;padding-bottom:2px}
  .chinh .thanh-tab::-webkit-scrollbar{display:none}
  .chinh .thanh-tab>*{flex:none}
}

/* ===== dùng chung: bảng xếp hạng (Hiệu suất đội…) — QC 24/09/2026: tổ ít chỉ số thì cột số chiếm hết bề ngang,
   tên người bị bẻ từng chữ một dòng. Cột số co theo nội dung, cột tên có sàn bề rộng. ===== */
.xep-hang td:nth-child(2){min-width:220px}
.xep-hang td:nth-child(2) small{display:block;margin-top:1px}
.xep-hang th:nth-child(n+3),.xep-hang td:nth-child(n+3){width:1%;white-space:nowrap;padding-left:24px;padding-right:18px}

/* ===== chế độ TỐI: trả lại nền (24/09/2026) — app.css dòng ~3192 đặt `:root{--nen;--chim}` sáng VÔ ĐIỀU KIỆN sau
   khối tối, nên máy bật chế độ tối vẫn nền sáng mà chữ đã chuyển sáng → tiêu đề khó đọc (tác tử HRM phát hiện). ===== */
@media (prefers-color-scheme:dark){:root:not([data-theme="light"]){--nen:#0B0F1E;--chim:#10162A}}
:root[data-theme="dark"]{--nen:#0B0F1E;--chim:#10162A}

/* Hôm nay: thẻ số và dòng lịch bấm được (24/09/2026). */
.the.so.bam,.moc.bam{cursor:pointer;transition:background .15s,transform .15s}
.the.so.bam:hover{transform:translateY(-1px);box-shadow:0 6px 18px rgba(15,23,42,.07)}
.moc.bam:hover{background:var(--chim)}
.the.so.bam:focus-visible,.moc.bam:focus-visible{outline:2px solid var(--nhan);outline-offset:2px}
