/* ============================================================
   NHẬP SỐ — thanh nhập nhanh bám trên bàn phím (mobile).
   Logic: js/nhap-so.js. Tiền tố "ns-" để không đụng lớp CSS khác
   (xem test/kiem-ten-lop.js về lớp trần ăn vào khung ảnh báo giá).
   ============================================================ */
.ns-thanh{
  position:fixed; left:0; right:0; top:0; z-index:110;
  padding:8px 12px 8px; background:var(--mat);
  border-top:1px solid var(--ke-2);
  box-shadow:0 -8px 24px -14px rgba(16,19,25,.28);
  will-change:transform;
  font-family:inherit;
}
.ns-thanh[hidden]{ display:none; }
body.dt-che-do .ns-thanh{ display:none; }

.ns-dong1{ display:flex; align-items:center; justify-content:space-between; gap:8px; min-height:34px; padding:0 0 8px; }
.ns-cong-cu{ display:flex; gap:6px; flex:none; }
.ns-cong-cu:empty{ display:none; }
.ns-nho{
  height:34px; padding:0 11px; border:0; border-radius:10px; background:var(--nen); color:var(--muc-2);
  font-family:inherit; font-size:13px; font-weight:650; white-space:nowrap; font-variant-numeric:tabular-nums;
  -webkit-tap-highlight-color:transparent; touch-action:manipulation;
}
.ns-nho:active{ background:var(--ke-2); }
.ns-nho--hoan{ background:var(--canh-nhat); color:var(--canh); }
.ns-nho{ display:inline-flex; align-items:center; gap:5px; }
.ns-nho svg{ flex:none; }
.ns-nhan{ flex:1; min-width:0; padding-left:2px; font-size:12.5px; color:var(--muc-2); white-space:nowrap; overflow:hidden; text-overflow:ellipsis; }
.ns-nhan[hidden]{ display:none; }
.ns-xem{ flex:1; min-width:0; text-align:right; font-size:15px; font-weight:750; color:var(--nhan-dam); font-variant-numeric:tabular-nums; white-space:nowrap; overflow:hidden; text-overflow:ellipsis; }
.ns-nhan:not([hidden]) + .ns-xem{ flex:none; max-width:62%; }
.ns-xem--phu{ font-size:12.5px; font-weight:500; color:var(--muc-3); }

.ns-dong2{ display:flex; align-items:center; gap:6px; }
.ns-chips{ flex:1; min-width:0; display:flex; gap:6px; }
.ns-chips:empty{ visibility:hidden; }
.ns-chip{
  flex:1 1 0; min-width:0; height:44px; padding:0 4px; border:0; border-radius:12px;
  background:var(--nhan-nhat); color:var(--nhan-dam); font-family:inherit; font-size:14px; font-weight:700;
  font-variant-numeric:tabular-nums; white-space:nowrap; overflow:hidden;
  -webkit-tap-highlight-color:transparent; touch-action:manipulation;
}
.ns-chip:active{ background:#DCE6FF; }
.ns-chip--000{ background:var(--nen); color:var(--muc); letter-spacing:.08em; }
.ns-chip--000:active{ background:var(--ke-2); }
.ns-xong{
  flex:none; height:44px; min-width:74px; padding:0 16px; border:0; border-radius:12px;
  background:var(--nhan); color:var(--tren-nhan); font-family:inherit; font-size:15px; font-weight:700;
  -webkit-tap-highlight-color:transparent; touch-action:manipulation;
}
.ns-xong:active{ background:var(--nhan-dam); }

/* Đang gõ trong tấm đáy: nới đáy tấm bằng chiều cao thanh để ô tick "Lưu cho
   lần sau"/nút của tấm không bị thanh che (máy không có bàn phím ảo, Android
   co khung nhìn khi mở bàn phím). */
body.ns-dang-nhap:not(.dt-che-do) .tam.mo,
body.ns-dang-nhap:not(.dt-che-do) .km-them-tam.mo{ padding-bottom:calc(var(--ns-cao, 110px) + 12px); }

/* Ô số trên mobile: ≥16px để iPhone không tự phóng to khi chạm (các ô số
   khác đã ≥16px sẵn; ô giá trong hộp "Thêm phiên bản" dùng .o 15px) */
body:not(.dt-che-do) .xt-pb-gia-o input.ns-o{ font-size:16px; }
