@font-face { font-family: "Be Vietnam Pro"; font-weight: 400; font-display: swap;
  src: url(vendor/font/bvp-400.woff2) format("woff2");
  unicode-range: U+0102-0103, U+0110-0111, U+0128-0129, U+0168-0169, U+01A0-01A1, U+01AF-01B0, U+0300-0301, U+0303-0304, U+0308-0309, U+0323, U+0329, U+1EA0-1EF9, U+20AB; }
@font-face { font-family: "Be Vietnam Pro"; font-weight: 600; font-display: swap;
  src: url(vendor/font/bvp-600.woff2) format("woff2");
  unicode-range: U+0102-0103, U+0110-0111, U+0128-0129, U+0168-0169, U+01A0-01A1, U+01AF-01B0, U+0300-0301, U+0303-0304, U+0308-0309, U+0323, U+0329, U+1EA0-1EF9, U+20AB; }
@font-face { font-family: "Be Vietnam Pro"; font-weight: 400; font-display: swap; src: url(vendor/font/bvp-latin-400.woff2) format("woff2"); }
@font-face { font-family: "Be Vietnam Pro"; font-weight: 600; font-display: swap; src: url(vendor/font/bvp-latin-600.woff2) format("woff2"); }

:root { --tblr-font-sans-serif: "Be Vietnam Pro", "Segoe UI", Arial, sans-serif; --tblr-primary: #1e5aa8; --tblr-primary-rgb: 30,90,168; }
body { font-feature-settings: normal; }
/* ===== khung chung (mọi trang): nền sáng, viền mỏng, không bóng, màu chỉ ở dữ liệu và một nút chính ===== */
:root { --tblr-body-bg: #f7f8fa; --tblr-border-color: #e6e8ec; --tblr-card-box-shadow: none; }
.page { background: #f7f8fa; }
/* thanh bên tối (người dùng chọn giữ 31/10/2026) */
.thanh-ben { background: #1b2434 !important; }
.thanh-ben .navbar-brand { color: #fff; }
.thanh-ben .navbar-brand-ten { font-size: 14px; font-weight: 600; }
.thanh-ben .navbar-brand-ten small { font-size: 12px; color: #aab3c2; opacity: 1; }
.dau-sp { flex: none; display: inline-flex; align-items: center; justify-content: center; width: 36px; height: 36px;
  border-radius: 8px; background: var(--tblr-primary); color: #fff; font-size: 12px; font-weight: 600; letter-spacing: .02em; }
.thanh-ben .nav-link { color: #c9d1dd; border-radius: 6px; margin: 1px 8px; padding: 7px 10px; font-size: 14px; }
.thanh-ben .nav-link-icon { color: #8e9aad; }
.thanh-ben .nav-link:hover { background: rgba(255, 255, 255, .06); color: #fff; }
.thanh-ben .nav-item.active > .nav-link { background: var(--tblr-primary); color: #fff; font-weight: 600; }
.thanh-ben .nav-item.active > .nav-link .nav-link-icon { color: #fff; }
.thanh-ben .nav-item.active > .nav-link::after { display: none; }
.thanh-ben .nhan-nhom { font-size: 12px; color: #8e9aad; pointer-events: none; }
.page-wrapper > .navbar { background: #fff !important; }
.page-header { margin-top: 20px; }
.card { border: 1px solid #e6e8ec; box-shadow: none; border-radius: 8px; }
.card-header { border-bottom: 1px solid #f0f1f3; }
.card-title { font-size: 16px; font-weight: 600; }
.table thead th { text-transform: none; letter-spacing: 0; font-size: 12px; font-weight: 400; color: #5f6368;
  background: transparent; border-bottom: 1px solid #e6e8ec; }
.table > :not(caption) > * > * { border-bottom-color: #f0f1f3; }
.table td.num, .table th.num { text-align: right; font-variant-numeric: tabular-nums; }
.badge { font-weight: 500; }
.btn { box-shadow: none; }
.form-label { font-weight: 500; }
.btn > .ti:first-child { margin-right: .3rem; }
.btn > .ti:only-child { margin-right: 0; }
.page-title { gap: .45rem; }
.navbar-brand-ten { line-height: 1.15; font-size: .85rem; font-weight: 600; white-space: normal; }
.navbar-brand-ten small { display: block; font-weight: 400; opacity: .75; font-size: .72rem; }
.dong-ho { font-variant-numeric: tabular-nums; }
.dong-ho.sap-het { color: var(--tblr-danger) !important; font-weight: 600; }
.bang-kq td, .bang-kq th { vertical-align: middle; }
.bang-kq .chu { max-width: 260px; }
.bang-kq .dia-chi { max-width: 280px; color: var(--tblr-secondary); font-size: .8rem; }
.seri { font-family: ui-monospace, Consolas, monospace; font-weight: 600; letter-spacing: .02em; }
.chi-xem { user-select: none; -webkit-user-select: none; }
.chi-xem img { -webkit-user-drag: none; user-drag: none; pointer-events: none; display: block; margin: 0 auto 12px; max-width: 100%;
  box-shadow: 0 1px 6px rgba(0,0,0,.18); background: #fff; min-height: 300px; }
.khung-xem { background: #e9ecef; padding: 16px; border-radius: 6px; }
.dong-thoi-gian { position: relative; padding-left: 28px; }
.dong-thoi-gian::before { content: ""; position: absolute; left: 9px; top: 4px; bottom: 4px; width: 2px; background: var(--tblr-border-color); }
.su-kien { position: relative; margin-bottom: 18px; }
.su-kien::before { content: ""; position: absolute; left: -24px; top: 8px; width: 12px; height: 12px; border-radius: 50%;
  background: var(--tblr-primary); border: 2px solid #fff; box-shadow: 0 0 0 2px var(--tblr-primary); }
.gcn-the { border: 1px solid var(--tblr-border-color); border-radius: 6px; padding: 6px 10px; background: var(--tblr-bg-surface); font-size: .82rem; }
.gcn-the.khop { border-color: var(--tblr-primary); background: rgba(30,90,168,.06); }
/* cây hình thành thửa */
.cay { font-size: .86rem; }
.cay-goc + .cay-goc { margin-top: 18px; padding-top: 14px; border-top: 1px dashed var(--tblr-border-color); }
.cay-nut { padding: 6px 10px; border-radius: 6px; border: 1px solid var(--tblr-border-color); background: var(--tblr-bg-surface); display: inline-block; max-width: 100%; }
.cay-nut.khop { border-color: var(--tblr-primary); background: rgba(30,90,168,.07); }
.cay-nut.lap { color: var(--tblr-secondary); border-style: dashed; }
.cay-bd { color: #495057; margin-left: 10px; }
.cay-bd > div { margin-top: 2px; }
.cay-su-kien { margin: 6px 0 6px 14px; padding-left: 14px; border-left: 2px solid var(--tblr-primary); }
.cay-tieu-de { padding: 4px 0 6px; color: var(--tblr-primary); }
.cay-con { padding-left: 6px; }
.cay-nhanh { position: relative; padding: 4px 0 4px 18px; }
.cay-nhanh::before { content: ""; position: absolute; left: 0; top: 18px; width: 14px; border-top: 2px solid var(--tblr-border-color); }
.cay-nhanh.cha-khac { opacity: .95; }
.mui-ten { font-size: 1.4rem; color: var(--tblr-secondary); align-self: center; }
/* bảng phân quyền gọn */
.bang-quyen td, .bang-quyen th { padding: 6px 6px; }
.bang-quyen td:first-child { min-width: 150px; }
.bang-quyen .o-so { width: 64px; padding: 2px 4px; text-align: center; }
.bang-quyen .vach { border-left: 2px solid #e6ebf1; }
.bang-quyen tr.nhom th { font-size: .75rem; padding-bottom: 2px; border-bottom: 0; }
/* ===== Tra cứu: token theo quy tắc màn hình ứng dụng (một viền, một khoảng lưới, màu chỉ ở nút chính) ===== */
:root { --g-vien: #e6e8ec; --g-ke: #f0f1f3; --g-dieu-khien: #d1d5db; --g-chu: #14171c; --g-phu: #5f6368;
  --g-nen-phu: #f7f8fa; --g-gap: 16px; --g-r: 8px; }
.the-tim, .the-gan-day, .the-kq { background: #fff; border: 1px solid var(--g-vien); border-radius: var(--g-r); }
.the-tim { padding: 20px; }
.luoi-tim { display: grid; gap: var(--g-gap); grid-template-columns: repeat(12, minmax(0, 1fr)); align-items: end; }
.c-seri { grid-column: span 3; } .c-to { grid-column: span 1; } .c-thua { grid-column: span 2; }
.c-chu { grid-column: span 4; } .c-cccd { grid-column: span 2; }
.c-xa, .c-xa-cu { grid-column: span 3; }
.c-nut { grid-column: span 6; display: flex; align-items: flex-end; gap: var(--g-gap); justify-content: flex-end; }
.c-xa-cu.d-none + .c-nut { grid-column: span 9; }
.the-tim .form-label { font-size: 14px; font-weight: 500; color: var(--g-chu); margin-bottom: 6px; }
.the-tim .form-control, .the-tim .form-select { height: 38px; border-color: var(--g-dieu-khien); font-size: 14px; }
.the-tim .form-control::placeholder { color: #6b6b6b; }
.the-tim .input-icon-addon { color: #8a8f98; }
.the-tim .input-icon-addon .ti { font-size: 15px; }
.the-tim .form-control:focus, .the-tim .form-select:focus { border-color: var(--tblr-primary); box-shadow: 0 0 0 3px rgba(30, 90, 168, .14); }
.page-wrapper { min-width: 0; }
.the-tim .btn .ti, .the-kq .btn .ti { margin-right: 6px; font-size: 15px; }
.the-kq .btn .ti:only-child { margin-right: 0; }
.page-title { font-size: 24px; font-weight: 600; }
.nhom-nut { display: flex; gap: 8px; flex: none; }
.nhom-nut .btn { height: 38px; padding: 0 16px; }
#nut-tim { min-width: 112px; }
#nut-tim:disabled { background: #e9ecef; border-color: #e9ecef; color: var(--g-phu); opacity: 1; }
.nang-cao { margin-right: auto; font-size: 14px; color: var(--g-chu); padding-left: 2.6rem; min-height: 38px;
  display: flex; align-items: center; white-space: nowrap; }
.nang-cao .form-check-input { margin-top: 0; margin-right: 10px; }
.nang-cao .nc-mo-ta { font-size: 13px; color: var(--g-phu); }
.nang-cao.text-secondary .form-check-label { color: var(--g-phu); }
/* tìm gần đây */
.the-gan-day { padding: 16px 20px 8px; }
.tieu-de-khoi { font-size: 16px; font-weight: 600; margin: 0 0 8px; color: var(--g-chu); }
.ds-gan-day { list-style: none; margin: 0; padding: 0; }
.ds-gan-day li + li { border-top: 1px solid var(--g-ke); }
.ds-gan-day a { display: grid; grid-template-columns: minmax(0, 1fr) 120px 140px; gap: var(--g-gap); align-items: center;
  min-height: 44px; color: var(--g-chu); text-decoration: none; margin: 0 -8px; padding: 0 8px; border-radius: 6px; }
.ds-gan-day a:hover { background: var(--g-nen-phu); }
.ds-gan-day a:focus-visible { outline: 2px solid var(--tblr-primary); outline-offset: -2px; }
.gd-nd { overflow: hidden; text-overflow: ellipsis; white-space: nowrap; font-size: 14px; }
.gd-so, .gd-luc { text-align: right; font-size: 13px; color: var(--g-phu); white-space: nowrap; }
.bang-gan-day .o-dk { display: flex; flex-wrap: wrap; gap: 6px; }
.dk { display: inline-flex; align-items: center; height: 26px; border: 1px solid var(--g-vien); border-radius: 6px;
  padding: 0 8px; font-size: 13px; color: var(--g-chu); background: #fff; white-space: nowrap; }
.dk-nhan { color: var(--g-phu); margin-right: 6px; }
.bang-gan-day .the-nhan { margin-top: 0; }
@media (max-width: 639px) {
  .bang-gan-day .o-dk { grid-column: 1; grid-row: 1; }
  .bang-gan-day .o-kieu, .bang-gan-day .o-so, .bang-gan-day .o-luc { grid-column: 1; display: inline !important;
    font-size: 12px; color: var(--g-phu); text-align: left !important; }
  .bang-gan-day .o-kieu { grid-row: 2; } .bang-gan-day .o-so { grid-row: 3; } .bang-gan-day .o-luc { grid-row: 4; }
  .bang-gan-day .o-so::after { content: " kết quả"; }
}
.the-nhan.loi { background: #ffedea; color: #831c1e; }
/* dải hạn mức: một khối chia vạch, không phải hàng thẻ */
.dai-hm { display: grid; grid-template-columns: repeat(auto-fit, minmax(150px, 1fr)); }
.hm-o { padding: 14px 20px; }
.hm-o + .hm-o { border-left: 1px solid var(--g-ke); }
.hm-nhan { font-size: 12px; color: var(--g-phu); }
.hm-so { font-size: 14px; color: var(--g-phu); margin: 2px 0 8px; }
.hm-so b { font-size: 22px; font-weight: 600; color: var(--g-chu); }
.hm-thanh { height: 4px; background: #eef0f3; border-radius: 2px; overflow: hidden; }
.hm-thanh span { display: block; height: 100%; background: var(--tblr-primary); }
.hm-thanh span.het { background: #c4242a; }
.dai-kpi .hm-o { color: inherit; text-decoration: none; }
.dai-kpi .hm-o:hover { background: var(--g-nen-phu); }
.kpi-so { font-size: 24px; font-weight: 600; color: var(--g-chu); margin-top: 2px; }
.kpi-so.xau { color: #c4242a; }
.the-nhan.muc-cao { background: #ffedea; color: #831c1e; }
.the-nhan.muc-tb { background: #fff4e5; color: #8a4b08; }
.the-nhan.muc-thap { background: #eef0f3; color: #3d434c; }
.list-group-item .the-nhan { margin-top: 0; }
.page-center { background: #f7f8fa; }
.dau-dang-nhap { display: flex; align-items: center; gap: 12px; }
.dau-dang-nhap h1 { font-size: 20px; font-weight: 600; }
.dau-dang-nhap .dau-sp { width: 44px; height: 44px; font-size: 13px; }
.card-md .card-body { padding: 28px; }
/* sơ đồ lịch sử thửa đất */
.ct-than { padding: 4px 20px 20px; }
.ct-nut { position: relative; margin-top: 10px; }
.ct-dau { display: flex; flex-wrap: wrap; align-items: baseline; gap: 4px 12px; padding: 8px 12px; border: 1px solid var(--g-vien);
  border-radius: 8px; background: #fff; }
.ct-nut.khop > .ct-dau { border-color: #9cc3ee; background: #f3f8fe; }
.ct-nut.lap > .ct-dau { border-style: dashed; background: var(--g-nen-phu); }
.ct-dau .seri { font-family: inherit; font-weight: 600; font-size: 15px; letter-spacing: 0; font-variant-numeric: tabular-nums; }
.ct-ngay { font-size: 13px; color: var(--g-phu); }
.ct-thua { font-size: 14px; }
.ct-chu { font-size: 14px; font-weight: 500; }
.ct-dau .the-nhan { margin-top: 0; }
.ct-bd { display: flex; gap: 10px; align-items: baseline; font-size: 13px; margin: 6px 0 0 22px; padding-left: 12px;
  border-left: 2px solid var(--g-vien); }
.ct-bd.phu { color: var(--g-phu); }
.ct-bd-ngay { flex: none; width: 78px; color: var(--g-phu); }
.ct-bd-nd { color: var(--g-phu); }
.ct-bd-chu { min-width: 0; flex: 1; overflow: hidden; display: -webkit-box; -webkit-line-clamp: 1; -webkit-box-orient: vertical; cursor: help; }
.ct-bd-chu:hover, .ct-bd-chu:focus { -webkit-line-clamp: unset; outline: none; }
.ct-bd .the-nhan { margin: 0 0 0 auto; flex: none; }
.ct-su-kien { margin: 10px 0 0 22px; padding-left: 12px; border-left: 2px solid var(--tblr-primary); }
.ct-sk-dau { display: flex; flex-wrap: wrap; align-items: center; gap: 4px 10px; background: #eef4fc; color: #133d73;
  border-radius: 6px; padding: 6px 10px; font-size: 13px; }
.ct-sk-nhan { font-weight: 600; }
.ct-phep { color: #133d73; }
.ct-sk-dau .the-nhan { margin-top: 0; }
.ct-con { padding-left: 18px; position: relative; }
.ct-con > .ct-nut::before { content: ""; position: absolute; left: -18px; top: 20px; width: 14px; border-top: 2px solid var(--tblr-primary); }
@media (max-width: 639px) { .ct-than { padding: 4px 12px 16px; } .ct-con { padding-left: 10px; } .ct-bd .the-nhan { display: none; } }
/* trang hồ sơ */
.luoi-ho-so { display: grid; grid-template-columns: 340px minmax(0, 1fr); gap: var(--g-gap); align-items: start; }
.hs-than { padding: 0 20px 20px; }
.hs-tom-tat { font-size: 14px; line-height: 1.55; color: var(--g-chu); margin: 0 0 16px; }
.gieng { background: var(--g-nen-phu); border-radius: 8px; padding: 6px 12px; margin: 0 0 12px; }
.gieng > div { display: flex; justify-content: space-between; gap: 12px; min-height: 32px; align-items: center; }
.gieng > div + div { border-top: 1px solid #eceef1; }
.gieng dt { font-weight: 400; font-size: 13px; color: var(--g-phu); }
.gieng dd { margin: 0; font-size: 13px; color: var(--g-chu); text-align: right; font-weight: 500; }
.hs-tep { font-size: 12px; color: var(--g-phu); overflow: hidden; text-overflow: ellipsis; white-space: nowrap; margin-bottom: 12px; }
.nhan-nho { font-size: 12px; color: var(--g-phu); margin: 16px 0 6px; }
.o-tai { display: flex; gap: 8px; }
.o-tai .form-control { height: 34px; font-size: 13px; }
.o-tai .btn { height: 34px; white-space: nowrap; gap: 6px; }
.ds-trung { margin: 0; padding-left: 18px; font-size: 12px; color: var(--g-phu); }
.ds-trung li { overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
.thong-bao { background: #fffbeb; border: 1px solid #fde68a; color: #92400e; font-size: 13px; border-radius: 6px; padding: 8px 12px; }
.gcn-dong { padding: 16px 20px; border-top: 1px solid var(--g-ke); }
.gcn-dau { display: flex; align-items: center; gap: 8px; }
.gcn-dau .seri { font-size: 16px; font-weight: 600; font-variant-numeric: tabular-nums; font-family: inherit; letter-spacing: 0; }
.gcn-dau .the-nhan { margin-top: 0; }
.gcn-ngay { margin-left: auto; font-size: 13px; color: var(--g-phu); }
.gcn-than { display: grid; grid-template-columns: minmax(0, 1fr) 240px; gap: var(--g-gap); margin-top: 8px; }
.gcn-chu { font-size: 14px; font-weight: 500; }
.gcn-thua { font-size: 14px; margin-top: 2px; }
.gcn-dong .phu { font-size: 12px; color: var(--g-phu); margin-top: 2px; }
.gcn-hd { display: flex; flex-direction: column; gap: 8px; }
.gcn-hd > .btn { justify-content: flex-start; height: 34px; gap: 6px; font-size: 13px; }
.bien-dong ol { list-style: none; margin: 0; padding: 0; }
.bien-dong li { display: grid; grid-template-columns: 84px minmax(0, 1fr); gap: 12px; font-size: 13px; padding: 6px 0; border-top: 1px solid var(--g-ke); }
.bd-ngay { color: var(--g-phu); }
@media (max-width: 991px) { .luoi-ho-so { grid-template-columns: 1fr; } }
@media (max-width: 639px) { .gcn-than { grid-template-columns: 1fr; } .gcn-ngay { margin-left: 0; } .gcn-dau { flex-wrap: wrap; } }
.khoi-trong { font-size: 14px; color: var(--g-phu); margin: 4px 0 12px; }
.num { font-variant-numeric: tabular-nums; }
/* bảng kết quả */
.the-kq { overflow: hidden; }
.kq-dau { display: flex; align-items: center; gap: var(--g-gap); padding: 14px 20px; }
.kq-dau .tieu-de-khoi { margin: 0; }
.kq-dau .kq-mo-ta { font-size: 13px; color: var(--g-phu); }
.bang-kq { margin: 0; font-size: 14px; }
.bang-kq thead th { text-transform: none; letter-spacing: 0; font-size: 12px; font-weight: 400; color: var(--g-phu);
  background: transparent; border-bottom: 1px solid var(--g-vien); padding-top: 8px; padding-bottom: 8px; white-space: nowrap; }
.bang-kq thead th a { color: inherit; text-decoration: none; }
.bang-kq thead th a:hover { color: var(--g-chu); }
.bang-kq td { border-bottom: 1px solid var(--g-ke); padding-top: 10px; padding-bottom: 10px; }
.bang-kq tbody tr:last-child td { border-bottom: 0; }
.bang-kq tbody tr:hover td { background: var(--g-nen-phu); }
.bang-kq th:first-child, .bang-kq td:first-child { padding-left: 20px; }
.bang-kq th:last-child, .bang-kq td:last-child { padding-right: 20px; }
.bang-kq .seri { font-family: inherit; font-weight: 600; letter-spacing: 0; font-variant-numeric: tabular-nums; color: var(--g-chu); }
.bang-kq .phu { display: block; font-size: 12px; color: var(--g-phu); margin-top: 2px; }
.bang-kq .chu { max-width: 340px; font-weight: 500; }
.bang-kq .dia-chi { max-width: 340px; color: var(--g-phu); font-size: 12px; font-weight: 400; }
.the-nhan { display: inline-flex; flex: none; white-space: nowrap; align-items: center; height: 20px; padding: 0 7px;
  border-radius: 4px; font-size: 11px; font-weight: 500; margin-top: 4px; }
.the-nhan.moi { background: #dcfae5; color: #04250e; } .the-nhan.cu { background: #eef0f3; color: #3d434c; }
.the-nhan.lq { background: #e7f0fb; color: #133d73; }
.bang-kq .phu-o { color: var(--g-phu); font-size: 13px; }
.bang-kq .hanh-dong { white-space: nowrap; text-align: right; }
.bang-kq .hanh-dong .btn { height: 30px; padding: 0 10px; font-size: 13px; }
.kq-chan { display: flex; align-items: center; padding: 10px 20px; border-top: 1px solid var(--g-vien); font-size: 13px; color: var(--g-phu); }
@media (max-width: 991px) {
  .c-seri, .c-chu { grid-column: span 6; } .c-to, .c-thua { grid-column: span 3; } .c-cccd { grid-column: span 6; }
  .c-xa, .c-xa-cu { grid-column: span 6; } .c-nut, .c-xa-cu.d-none + .c-nut { grid-column: 1 / -1; }
}
.the-kq .table-responsive { position: relative; }
.the-tim .btn, .the-kq .btn { gap: 6px; } .the-tim .btn .ti, .the-kq .btn .ti { margin: 0; }
/* điện thoại: bảng -> danh sách dòng hai tầng (không bỏ trường nào, không cuộn ngang) */
@media (max-width: 639px) {
  .bang-kq thead { display: none; }
  .bang-kq, .bang-kq tbody { display: block; }
  .bang-kq tr { display: grid; grid-template-columns: minmax(0, 1fr) auto; column-gap: 12px; row-gap: 2px;
    padding: 12px 16px; border-bottom: 1px solid var(--g-ke); }
  .bang-kq tbody tr:last-child { border-bottom: 0; }
  .bang-kq td { display: block; border: 0 !important; padding: 0 !important; background: none !important; }
  .bang-kq .o-seri { grid-column: 1; grid-row: 1; }
  .bang-kq .o-hd { grid-column: 2; grid-row: 1 / span 2; align-self: center; }
  .bang-kq .o-chu { grid-column: 1 / -1; grid-row: 3; max-width: none; margin-top: 4px; }
  .bang-kq .o-thua, .bang-kq .o-dt, .bang-kq .o-ngay, .bang-kq .o-xa { grid-column: 1 / -1; display: inline; text-align: left;
    font-size: 13px; color: var(--g-phu); text-align: left !important; }
  .bang-kq .o-thua { grid-row: 4; } .bang-kq .o-dt { grid-row: 5; } .bang-kq .o-ngay { grid-row: 6; } .bang-kq .o-xa { grid-row: 7; }
  .bang-kq .o-dt::before { content: "Diện tích "; } .bang-kq .o-dt::after { content: " m²"; }
  .bang-kq .o-ngay::before { content: "Cấp ngày "; } .bang-kq .o-xa::before { content: "Xã cũ "; }
  .bang-kq .o-thua .phu { display: inline; margin-left: 6px; }
  .kq-dau { padding: 12px 16px; } .kq-chan { padding: 10px 16px; }
}
@media (max-width: 575px) {
  .the-tim { padding: 16px; }
  .c-seri, .c-chu, .c-cccd, .c-xa, .c-xa-cu { grid-column: 1 / -1; } .c-to, .c-thua { grid-column: span 6; }
  .c-nut { flex-wrap: wrap; } .nang-cao { width: 100%; white-space: normal; } .nhom-nut { width: 100%; } .nhom-nut .btn { flex: 1; height: 44px; }
  .ds-gan-day a { grid-template-columns: minmax(0, 1fr) auto; } .gd-luc { display: none; }
}
.ma-qr svg { width: 260px; height: 260px; background: #fff; }
.ma-du-phong code { font-size: 1.05rem; letter-spacing: .08em; }
.bang-quyen th.xoay { writing-mode: vertical-rl; transform: rotate(180deg); white-space: nowrap; font-weight: 500; padding: 8px 4px; }
.bang-quyen input[type=number] { width: 78px; }
.htmx-indicator { display: none; }
.htmx-request .htmx-indicator, .htmx-request.htmx-indicator { display: inline-block; }
@media print { body { display: none !important; } }

/* ===== rà soát: ảnh hồ sơ bên trái (cuộn riêng), các ô cần soát bên phải ===== */
.rs-luoi { display: grid; grid-template-columns: minmax(0, 1fr) 440px; gap: var(--g-gap); align-items: start; }
.rs-xem { background: #fff; border: 1px solid var(--g-vien); border-radius: var(--g-r); overflow: hidden; }
.rs-cong-cu { display: flex; align-items: center; gap: 8px; padding: 8px 12px; border-bottom: 1px solid var(--g-ke); }
.rs-cong-cu .phu { font-size: 13px; color: var(--g-phu); min-width: 0; }
.rs-trang-nhanh { display: flex; flex-wrap: wrap; gap: 4px; padding: 8px 12px; border-bottom: 1px solid var(--g-ke); }
.rs-trang-nhanh a { min-width: 28px; height: 26px; display: inline-flex; align-items: center; justify-content: center; padding: 0 6px;
  border: 1px solid var(--g-vien); border-radius: 5px; font-size: 12px; color: var(--g-chu); text-decoration: none;
  font-variant-numeric: tabular-nums; }
.rs-trang-nhanh a:hover { background: var(--g-nen-phu); }
.rs-trang-nhanh a.can-xem { background: #fff4e5; border-color: #f0b86e; color: #8a4b08; font-weight: 600; }
.rs-anh { position: relative; height: calc(100vh - 230px); min-height: 480px; overflow: auto; border-radius: 0; }
.rs-anh img { width: var(--rs-co, 100%); max-width: none; transition: transform .15s; }
.rs-nhan-trang { text-align: center; font-size: 12px; color: var(--g-phu); margin: 4px 0; }
.rs-nhan-trang.can-xem { color: #8a4b08; font-weight: 600; }
.rs-phai { position: sticky; top: 76px; max-height: calc(100vh - 96px); overflow: auto; padding-right: 2px; }
.rs-diem { background: #fff; border: 1px solid var(--g-vien); border-left: 3px solid #f0b86e; border-radius: var(--g-r);
  padding: 12px 14px; margin-bottom: 10px; }
.rs-diem.da-soat { border-left-color: #2f9e5b; }
.rs-diem-dau { display: flex; align-items: center; gap: 8px; }
.rs-truong { font-weight: 600; font-size: 15px; color: var(--g-chu); }
.rs-phu { font-size: 12px; color: var(--g-phu); margin-top: 2px; }
.rs-cua { font-size: 13px; color: var(--g-phu); }
.rs-nhay { display: inline-flex; align-items: center; gap: 4px; margin-top: 6px; font-size: 13px; font-weight: 500; }
.rs-cham { display: inline-block; width: 10px; height: 10px; border-radius: 3px; background: #fff4e5; border: 1px solid #f0b86e;
  vertical-align: -1px; }
.rs-ghi-chu { font-size: 13px; background: var(--g-nen-phu); border-radius: 6px; padding: 6px 8px; margin-top: 8px; color: #3d434c; }
.rs-lua-chon { display: grid; gap: 6px; margin-top: 10px; }
.rs-chon { display: flex; gap: 8px; align-items: flex-start; border: 1px solid var(--g-vien); border-radius: 6px; padding: 7px 10px;
  cursor: pointer; font-size: 14px; word-break: break-word; }
.rs-chon:hover { background: var(--g-nen-phu); }
.rs-chon:has(input[type=radio]:checked) { border-color: var(--tblr-primary); background: #e7f0fb; }
.rs-chon input[type=radio] { margin-top: 4px; flex: none; }
.rs-chon > span { flex: 1; min-width: 0; }
.rs-chon small { display: block; font-size: 11px; color: var(--g-phu); }
.rs-khong { color: #831c1e; }
.rs-ca-hs { margin-top: 8px; font-size: 13px; }
.rs-ca-hs-ly { background: #fff4e0; border: 1px solid #f2c27a; border-radius: 6px; padding: 7px 10px; color: #6b3f00; }
.rs-ca-hs-hd { margin-top: 6px; color: var(--g-phu); }
.rs-da-chon { margin-top: 8px; font-size: 14px; display: flex; align-items: center; flex-wrap: wrap; }
.rs-da-chon .phu { font-size: 12px; color: var(--g-phu); margin-left: 4px; }
.rs-dai { margin-top: 8px; font-size: 12px; }
.rs-dai pre { white-space: pre-wrap; max-height: 220px; overflow: auto; font-size: 11px; background: var(--g-nen-phu); padding: 6px; }
.rs-xong { display: flex; align-items: center; gap: 8px; background: #dcfae5; color: #04250e; border-radius: var(--g-r);
  padding: 10px 12px; margin-bottom: 10px; font-weight: 500; }
.rs-chua { font-size: 13px; color: var(--g-phu); margin-bottom: 8px; }
.rs-tom-tat { background: #fff; border: 1px solid var(--g-vien); border-radius: var(--g-r); padding: 8px 12px; margin-bottom: 10px; font-size: 13px; }
.rs-tom-tat summary { cursor: pointer; color: var(--g-chu); font-weight: 500; }
.rs-tom-tat p { margin: 8px 0 0; }
.rs-gcn { margin: 8px 0 0; padding-left: 18px; }
.rs-gcn li + li { margin-top: 4px; }
.hs-ra-soat { margin-top: 12px; }
.hs-ra-soat li { font-size: 13px; white-space: normal; color: var(--g-chu); }
@media (max-width: 991.98px) {
  .rs-luoi { grid-template-columns: 1fr; }
  .rs-phai { position: static; max-height: none; }
  .rs-anh { height: 70vh; }
}
