/* bản 3.3: chế độ máy chủ – ẩn nút không có quyền / chỉ có ở bản Windows (máy chủ vẫn kiểm quyền từng API) */
.may-chu #cdChon, .may-chu [data-chontm], .may-chu #cdDoiDL, .may-chu #cdDatXuat, .may-chu #cdLoiTat, .may-chu #cdDLMacDinh,
.may-chu #cdXuatMacDinh, .may-chu #cdMo, .may-chu [data-motm] { display: none !important; }
.k-xoa_soquy [data-sqxoa] { display: none !important; }
.k-sua_soquy #sqLuu, .k-sua_soquy #sqThem, .k-sua_soquy #sqThemDong, .k-sua_soquy #sqmGhi, .k-sua_soquy #sqDoiHT,
.k-sua_soquy #sqDoiKM, .k-sua_soquy #sqApLai { display: none !important; }
.k-nap_soquy #sqNap, .k-nap_soquy #napGhi { display: none !important; }
.k-caidat #cdLuu, .k-caidat #cdMacDinh, .k-caidat [data-duyet], .k-caidat [data-boduyet] { display: none !important; }
/* bản 3.3.0: chức năng 3.2.2–3.2.4 – chuyển đổi, duyệt, sửa / xóa danh mục cần "caidat"; tạo mới từ phiếu sổ quỹ vẫn hiện */
.k-caidat #cdChayLai, .k-caidat [data-cdduyet], .k-caidat [data-mlxoa], .k-caidat [data-dbxoa], .k-caidat [data-dbsua],
.k-caidat [data-dbthemdt], .k-caidat [data-dbbidanh], .k-caidat #dbForm, .k-caidat #dbLuu { display: none !important; }
.k-chot [data-gf="save"] { display: none !important; }
.k-saoluu #slNgay, .k-saoluu [data-slkhoiphuc] { display: none !important; }
/* bản 3.4.3: duyệt đợt khối lượng tổ đội – chỉ quản trị (máy chủ kiểm quyền quantri ở /api/duyetkl) */
.k-quantri [data-duyetkl] { display: none !important; }

/* 4.5.0: thanh tài khoản không nổi (trước đây cố định góc trái dưới, che số phiên bản ở chân trang) */
#gf-thanh { display: flex; flex-wrap: wrap; gap: 6px 12px; align-items: center; justify-content: center; margin: 18px auto 0; max-width: 1100px;
  background: #fff; border: 1px solid #E1E6EE; border-radius: 10px; padding: 6px 14px; font: 12.5px "Segoe UI", Roboto, Arial, sans-serif; color: #4A5568; }
#gf-thanh.gf-thanh-sb { margin: 8px 10px 6px; background: rgba(255,255,255,.08); border-color: rgba(255,255,255,.16); color: #DCE3F0; justify-content: flex-start; border-radius: 8px; padding: 7px 10px; }
#gf-thanh.gf-thanh-sb .gf-ten { color: #fff; width: 100%; }
#gf-thanh.gf-thanh-sb a { color: #A9C4FF; }
.gf-chan { max-width: 1100px; margin: 10px auto 24px; text-align: center; color: #6B7587; font-size: 12px; }
#gf-thanh a { color: #2F6FED; text-decoration: none; }
#gf-thanh a:hover { text-decoration: underline; }
#gf-thanh .gf-ten { font-weight: 600; color: #1B2433; }
@media print { #gf-thanh, #gf-bao { display: none !important; } }
#gf-bao { position: fixed; top: 10px; left: 50%; transform: translateX(-50%); z-index: 9001; display: none; gap: 10px; align-items: center;
  background: #FFF7DB; border: 1px solid #F5B547; border-radius: 10px; padding: 8px 14px; font: 13px "Segoe UI", Roboto, Arial, sans-serif;
  box-shadow: 0 6px 20px rgba(16,24,40,.12); max-width: 92vw; }
#gf-bao button { border: 1px solid #C9D2E0; background: #fff; border-radius: 6px; padding: 3px 10px; cursor: pointer; font: inherit; }
#gf-bao button[data-gf="tailai"] { background: #2F6FED; border-color: #2F6FED; color: #fff; }

/* trang đăng nhập / quản trị */
.gf-trang { margin: 0; min-height: 100vh; background: #F3F5F9; color: #1B2433; font: 14px "Segoe UI", Roboto, Arial, sans-serif; }
.gf-hop { max-width: 420px; margin: 8vh auto 0; background: #fff; border: 1px solid #E1E6EE; border-radius: 12px; padding: 26px 28px;
  box-shadow: 0 6px 20px rgba(16,24,40,.08); }
.gf-hop.rong { max-width: 1100px; margin-top: 3vh; }
.gf-hop h1 { font-size: 18px; margin: 0 0 4px; color: #1F3864; }
.gf-hop .mo { color: #6B7587; font-size: 12.5px; margin: 0 0 18px; }
.gf-hop label { display: block; font-size: 12.5px; color: #4A5568; margin: 12px 0 4px; }
.gf-hop input[type=text], .gf-hop input[type=password] { width: 100%; box-sizing: border-box; padding: 9px 11px; border: 1px solid #C9D2E0;
  border-radius: 8px; font: inherit; }
.gf-hop button { margin-top: 16px; padding: 9px 16px; border: 0; border-radius: 8px; background: #1F3864; color: #fff; font: inherit; cursor: pointer; }
.gf-hop button.phu { background: #fff; color: #1F3864; border: 1px solid #C9D2E0; }
.gf-hop button:disabled { opacity: .6; cursor: default; }
.gf-loi { color: #B42318; background: #FDECEA; border-radius: 8px; padding: 8px 10px; margin-top: 12px; display: none; }
.gf-ok { color: #15803D; background: #E7F6EC; border-radius: 8px; padding: 8px 10px; margin-top: 12px; display: none; }
.gf-qr { display: block; margin: 10px auto; width: 210px; height: 210px; image-rendering: pixelated; }
.gf-khoa { font-family: Consolas, monospace; background: #F3F5F9; border-radius: 6px; padding: 6px 8px; word-break: break-all; font-size: 13px; }
.gf-dp { columns: 2; font-family: Consolas, monospace; font-size: 15px; background: #F3F5F9; border-radius: 8px; padding: 10px 16px; }
.gf-an { display: none; }
.gf-bang { width: 100%; border-collapse: collapse; font-size: 13px; margin-top: 8px; }
.gf-bang th, .gf-bang td { border-bottom: 1px solid #EDF0F5; padding: 6px 8px; text-align: left; vertical-align: top; }
.gf-bang th { background: #F3F5F9; font-weight: 600; color: #4A5568; }
.gf-bang td.so { text-align: right; white-space: nowrap; }
.gf-bang button { margin: 0 4px 4px 0; padding: 4px 9px; font-size: 12px; }
.gf-tab { display: flex; gap: 6px; margin: 14px 0 6px; flex-wrap: wrap; }
.gf-tab button { margin: 0; }
.gf-quyen label { display: inline-flex; gap: 5px; margin: 4px 14px 4px 0; align-items: center; font-size: 13px; color: #1B2433; }
/* 4.5.0: khung sửa phiếu chung – ẩn nút không có quyền (máy chủ vẫn kiểm quyền từng API) */
.k-sua_soquy [data-kt-luusq], .k-xoa_soquy [data-kt-xoasq], .k-chot [data-kt-luutay], .k-chot [data-kt-huyct], .k-chot [data-kt-duaghi], .k-chot [data-kt-themtay], .k-chot [data-kt-duacp] { display: none !important; }

#th-account{position:fixed;right:12px;top:3px;z-index:999;background:white;padding:3px 10px;border-radius:5px;font-size:12px}.th-download{position:fixed;bottom:40px;right:12px;background:white;padding:12px;z-index:999}.th-download a{display:block}.th-server [data-pick],.th-server #bExtract,.th-server #bMove{display:none!important}.th-xem #bSave,.th-xem #bUndo,.th-xem #bCfg{display:none!important}

.th-xem #bScan,.th-xem #bEdit,.th-xem #bReset,.th-xem #bAdd{display:none!important}
