/* ui-saas — 24/09/2026 */
/* =====================================================================================
   HÀNH TRÌNH KHÁCH ĐĂNG KÝ — làm lại theo Stitch (docs/ra-ux/stitch-saas/3·4·5·6) + cùng ngôn ngữ
   cho Tài khoản của tôi · Tài khoản nhân viên · Xác minh phòng khám. Nạp SAU app.css nên đè được.

   Luật nhìn của chủ dự án (24/09/2026): KHÔNG viền quanh thẻ/dòng/ô — tách vùng bằng nền nhạt và
   chuyển màu rất nhẹ; khối bo 16–24px; nhiều khoảng trống; ít chữ, biểu tượng nét mảnh + nhãn ngắn;
   MỘT nút tím đậm mỗi màn, còn lại là nút nền nhạt / nút chữ; vùng bấm ≥ 44px; 390px và 1440px.
   Mọi màu qua biến của app.css :root — không mã hex trong tệp này.
   ===================================================================================== */

.saas-ico{flex:none;display:block}

/* ---------- 1 · KHUNG NỀN SÁNG CHƯA ĐĂNG NHẬP (4.html) ---------- */
.dn.dn-sang{background:var(--nen);display:flex;justify-content:center;align-items:flex-start;
            padding:48px 16px 40px;min-height:100vh}
.dn-cot{width:100%;max-width:440px;display:flex;flex-direction:column;gap:24px}
.dn-logo-dau{display:flex;justify-content:center}
.dn-logo-dau .logo-d135{flex-wrap:wrap;justify-content:center;gap:10px}
.dn-logo-dau .logo-chu{font-size:25px;letter-spacing:.01em}
.dn-logo-dau .logo-chu b{font-weight:800}
.dn-logo-dau .logo-so{font-weight:700}
.dn-logo-dau .logo-phu{text-align:center;font-size:12.5px;margin-top:2px;color:var(--chu3)}
.dn-nhom-the{display:flex;flex-direction:column;gap:16px;width:100%}
.dn-cot .dn-the{max-width:none;border-radius:24px;padding:28px 24px 26px;gap:16px;box-shadow:var(--bong)}
.dn.dn-sang > .dn-the{border-radius:24px;box-shadow:var(--bong)}
.dn-sang .dn-tua{font-size:22px;font-weight:700;letter-spacing:-.015em}
.dn-the-ico{width:48px;height:48px;border-radius:16px;display:grid;place-items:center;
            background:var(--nhan-nhat);color:var(--nhan)}
.dn-the-ico-canh{background:var(--canh-nhat);color:var(--canh)}

/* ô nhập: KHÔNG viền — nền nhạt, rê chuột đậm hơn một nấc, bấm vào thì nền trắng + vòng tím */
.dn-sang .dn-truong{gap:8px}
.dn-sang .dn-nhan{font-size:13px;font-weight:600;color:var(--chu)}
.dn-nhan-hang{display:flex;align-items:center;justify-content:space-between;gap:8px;min-height:20px}
.dn-nhan-hang .dn-lk{min-height:44px;margin:-12px 0;font-size:13px}
.dn-sang .dn-vao{min-height:50px;border:0;border-radius:14px;background:var(--nen);padding:12px 16px;
                 font-size:15px;color:var(--chu);font-family:inherit;transition:background .15s,box-shadow .15s}
.dn-sang .dn-vao:hover{background:var(--chim)}
.dn-sang .dn-vao:focus{outline:none;background:var(--the);box-shadow:0 0 0 2px var(--nhan)}
.dn-sang .dn-vao[aria-invalid="true"]{background:var(--loi-nhat);color:var(--loi)}
.dn-sang .dn-vao[aria-invalid="true"]:focus{box-shadow:0 0 0 2px var(--loi)}
.dn-sang select.dn-vao{appearance:none;-webkit-appearance:none;padding-right:44px;cursor:pointer;
  background-image:linear-gradient(45deg,transparent 50%,var(--chu3) 50%),linear-gradient(135deg,var(--chu3) 50%,transparent 50%);
  background-position:calc(100% - 22px) 52%,calc(100% - 16px) 52%;background-size:6px 6px;background-repeat:no-repeat}
.dn-sang .dn-vao-boc .dn-vao{padding-right:56px}
.dn-sang .dn-hien{right:3px;min-width:48px;display:grid;place-items:center;color:var(--chu3);border-radius:12px}
.dn-sang .dn-hien:hover{color:var(--nhan);text-decoration:none}
.dn-sang .dn-loi{font-size:12.5px;margin-top:-2px}
.dn-sang .dn-bao-loi{display:flex;align-items:center;gap:10px;border-radius:14px;padding:12px 14px;font-size:13.5px;line-height:1.45}
.dn-sang .dn-bao-loi .dn-lk{margin-left:auto;min-height:32px}
.dn-sang .dn-dan{font-size:14px;color:var(--chu2);line-height:1.6}
.dn-sang .dn-dan .dn-lk{min-height:0;display:inline;padding:0;font-size:inherit}
.dn-sang .dn-quen{display:flex;gap:10px;align-items:flex-start;background:var(--nhan-nhat);color:var(--chu);
                  border-radius:14px;padding:12px 14px;font-size:13px;line-height:1.5}
.dn-sang .dn-quen .saas-ico{color:var(--nhan);margin-top:1px}

/* nút: một tím đậm (chuyển màu rất nhẹ) · Google là nút nền nhạt · nút phụ trắng chữ tím */
.dn-sang .dn-nut-chinh{min-height:52px;border-radius:14px;font-size:15.5px;font-weight:700;display:flex;align-items:center;
  justify-content:center;gap:10px;background:linear-gradient(180deg,color-mix(in srgb,var(--nhan) 88%,var(--the)),var(--nhan));
  box-shadow:0 10px 22px -14px var(--nhan)}
.dn-sang .dn-nut-chinh:hover{filter:brightness(1.06)}
.dn-sang .dn-nut-vien{min-height:52px;border:0;border-radius:14px;background:var(--nen);color:var(--chu);font-size:15px;gap:10px}
.dn-sang .dn-nut-vien:hover{background:var(--chim)}
.dn-sang .dn-g{color:var(--chu2)}
.dn-sang .dn-hoac{font-size:12.5px;margin:-2px 0}
.dn-sang .dn-hoac::before,.dn-sang .dn-hoac::after{background:var(--chim)}
.dn-nut-nhat{min-height:52px;border:0;border-radius:16px;background:var(--the);color:var(--nhan);font:inherit;
             font-size:14.5px;font-weight:700;display:flex;align-items:center;justify-content:center;gap:10px;
             padding:10px 16px;cursor:pointer;transition:background .15s}
.dn-nut-nhat:hover{background:var(--nhan-nhat)}
.dn-sang .dn-nut-rong{margin-top:2px}

/* dải tab (Đăng nhập · Demo · Dev) thành công tắc phân đoạn trên nền nhạt */
.dn-sang .dn-tab-dai{background:var(--nen);border-radius:14px;padding:4px;margin:0;gap:4px;flex-wrap:nowrap}
.dn-sang .dn-tab{flex:1 1 auto;border-radius:11px;min-height:40px;font-weight:600;font-size:13.5px;white-space:nowrap;padding:8px 10px}
.dn-sang .dn-tab.chon{background:var(--the);color:var(--nhan);box-shadow:0 1px 3px color-mix(in srgb,var(--chu) 12%,transparent)}

/* thẻ hổ phách "quá số thiết bị" + thẻ chọn phòng khám — nằm RIÊNG dưới thẻ đăng nhập */
.dn-sang .dn-canh-bao{margin:0;border-radius:24px;padding:20px 18px 18px;gap:14px;
  background:linear-gradient(180deg,var(--canh-nhat),color-mix(in srgb,var(--canh-nhat) 55%,var(--the)))}
.dn-sang .dn-canh-nhan{background:linear-gradient(180deg,var(--nhan-nhat),color-mix(in srgb,var(--nhan-nhat) 55%,var(--the)))}
.dn-canh-dau{display:flex;gap:12px;align-items:flex-start}
.dn-canh-ico{flex:none;width:40px;height:40px;border-radius:13px;display:grid;place-items:center;background:var(--the);color:var(--canh)}
.dn-canh-nhan .dn-canh-ico{color:var(--nhan)}
.dn-sang .dn-canh-tua{font-size:15px;line-height:1.35}
.dn-sang .dn-canh-mo{font-size:13px;margin-top:3px;line-height:1.45}
.dn-sang .dn-ds-may{gap:8px}
.dn-sang .dn-may{border:0;border-radius:16px;min-height:64px;padding:10px 14px;gap:12px;
                 background:color-mix(in srgb,var(--the) 62%,transparent);transition:background .15s}
.dn-sang .dn-may:hover{background:var(--the);border:0}
.dn-sang .dn-may:has(.dn-radio:checked){background:var(--the);box-shadow:0 6px 18px -14px color-mix(in srgb,var(--chu) 60%,transparent)}
.dn-sang .dn-radio{appearance:none;-webkit-appearance:none;margin:0;width:22px;height:22px;border-radius:50%;
                   background:var(--the);box-shadow:inset 0 0 0 2px var(--vien);cursor:pointer;transition:box-shadow .15s}
.dn-sang .dn-radio:checked{box-shadow:inset 0 0 0 7px var(--nhan)}
.dn-sang .dn-radio:focus-visible{outline:2px solid var(--nhan);outline-offset:2px}
.dn-sang .dn-may-hinh{flex:none;width:40px;height:40px;border-radius:12px;display:grid;place-items:center;
                      background:var(--nen);color:var(--chu2);font-size:0}
.dn-sang .dn-may:has(.dn-radio:checked) .dn-may-hinh{background:var(--nhan-nhat);color:var(--nhan)}
.dn-sang .dn-may-ten b{font-size:14px;display:flex;align-items:center;flex-wrap:wrap;gap:4px 8px}
.dn-sang .dn-may-ten small{font-size:12.5px;margin-top:2px}
.dn-dang-chon{display:none;font-size:11px;font-weight:600;padding:2px 8px;border-radius:20px;background:var(--nhan-nhat);color:var(--nhan)}
.dn-may:has(.dn-radio:checked) .dn-dang-chon{display:inline-block}

/* chân màn: hai lối chữ */
.dn-chan-lk{display:flex;flex-direction:column;align-items:center;gap:0;margin-top:4px}
.dn-sang .dn-chan{font-size:14px;margin:0}
.dn-lk-phu{color:var(--chu2);font-weight:500;gap:6px}
.dn-lk-phu:hover{color:var(--nhan)}

/* ---------- 2 · ĐĂNG KÝ DÙNG THỬ — tràn hết màn, trái 40% tím nhạt (3.html) ---------- */
.dn.dn-dk-trang{display:block;padding:0;background:var(--the)}
.dn-dk-trang .dn-dk{max-width:none;width:100%;min-height:100vh;border-radius:0;box-shadow:none;padding:0;gap:0;overflow:visible}
.dn-dk-trang .dn-dk-trai{gap:36px;padding:56px 64px 40px;
  background:linear-gradient(170deg,var(--nhan-nhat) 0%,color-mix(in srgb,var(--nhan-nhat) 60%,var(--the)) 100%)}
.dn-dk-trang .dn-dk-trai .logo-d135 .logo-chu{font-size:22px}
.dn-dk-trang .dn-dk-trai .logo-d135 .logo-chu b{font-weight:800}
.dn-dk-trang .dn-dk-trai .logo-d135 .logo-so{font-weight:700}
.dn-dk-mo-dau{display:flex;flex-direction:column;gap:12px}
.dn-dk-trang .dn-dk-tua{font-size:36px;line-height:1.22;letter-spacing:-.025em;font-weight:700;max-width:460px}
.dn-dk-phu{margin:0;color:var(--chu2);font-size:15px;line-height:1.6;max-width:460px}
.dn-dk-trang .dn-dk-buoc{gap:20px;max-width:460px}
.dn-dk-trang .dn-dk-buoc-o{font-size:15px;color:var(--chu);align-items:center;gap:14px;line-height:1.45}
.dn-dk-trang .dn-dk-so{width:30px;height:30px;font-size:12.5px;margin:0;
  box-shadow:0 6px 14px -8px var(--nhan)}
.dn-dk-trang .dn-dk-ghi{border:0;border-radius:20px;padding:20px 22px;display:flex;flex-direction:column;gap:6px;
  box-shadow:var(--bong);max-width:460px;font-size:14px}
.dn-dk-ghi-nhan{display:flex;align-items:center;gap:8px;color:var(--nhan);font-size:12.5px;font-weight:700;letter-spacing:.03em;margin-bottom:4px}
.dn-dk-trang .dn-dk-ghi b{font-size:16px;line-height:1.4}
.dn-dk-trang .dn-dk-ghi small{font-size:12.5px;color:var(--chu3)}
.dn-dk-chan{margin-top:auto;font-size:13px;color:var(--chu2)}
.dn-dk-chan b{color:var(--chu);font-weight:600}

.dn-dk-trang .dn-dk-phai{padding:64px 64px 48px;display:flex;justify-content:center;align-items:flex-start;background:var(--the)}
.dn-dk-form{width:100%;max-width:700px;display:flex;flex-direction:column;gap:22px}
.dn-dk-dau{display:flex;align-items:flex-start;justify-content:space-between;gap:12px 24px;flex-wrap:wrap;margin-bottom:4px}
.dn-dk-trang .dn-dk-dau .dn-tua{font-size:30px;letter-spacing:-.02em}
.dn-dk-dau .dn-dan{margin:0}
.dn-dk-dau .dn-dan.dn-nho{margin-top:4px;font-size:13.5px}
.dn-dk-dau .dn-dan .dn-lk{font-size:14px;min-height:44px;display:inline-flex;vertical-align:middle}
.dn-sang .dn-luoi{gap:20px 24px}
.dn-luoi-rong{grid-column:1/-1;min-width:0}

/* thanh độ mạnh mật khẩu ba nấc + luật §1 ngay dưới ô */
.dn-manh{display:flex;flex-direction:column;gap:8px;margin-top:4px}
.dn-manh-vach{display:grid;grid-template-columns:repeat(3,1fr);gap:8px}
.dn-manh-vach i{height:5px;border-radius:3px;background:var(--chim);transition:background .2s}
.dn-manh-1 .dn-manh-vach i:nth-child(1){background:var(--loi)}
.dn-manh-2 .dn-manh-vach i:nth-child(-n+2){background:var(--canh)}
.dn-manh-3 .dn-manh-vach i{background:var(--tot)}
.dn-manh-chu{display:flex;justify-content:space-between;gap:8px;font-size:12.5px;color:var(--chu3)}
.dn-manh-chu b{font-weight:600;white-space:nowrap}
.dn-manh-1 .dn-manh-chu b{color:var(--loi)}
.dn-manh-2 .dn-manh-chu b{color:var(--canh)}
.dn-manh-3 .dn-manh-chu b{color:var(--tot)}

/* quy mô: ba thẻ nền nhạt, thẻ chọn tím nhạt + vòng tích tím */
.dn-sang .dn-quy-mo{gap:12px}
.dn-sang .dn-quy-o{border:0;background:var(--nen);border-radius:18px;padding:18px 12px 16px;min-height:112px;
                   gap:4px;justify-content:center;transition:background .15s}
.dn-sang .dn-quy-o:hover{background:var(--chim)}
.dn-sang .dn-quy-o.chon{background:var(--nhan-nhat)}
.dn-quy-vong{width:24px;height:24px;border-radius:50%;display:grid;place-items:center;margin-bottom:6px;
             background:var(--the);color:transparent;box-shadow:inset 0 0 0 1.5px var(--vien)}
.dn-quy-o.chon .dn-quy-vong{background:var(--nhan);color:var(--the);box-shadow:0 4px 10px -4px var(--nhan)}
.dn-sang .dn-quy-o b{font-size:14.5px}
.dn-sang .dn-quy-o small{font-size:12.5px;color:var(--chu2)}
.dn-sang .dn-quy-o:has(.dn-radio:focus-visible){outline:2px solid var(--nhan);outline-offset:2px}

.dn-sang .dn-dong-y{align-items:center;font-size:14px;gap:12px;min-height:44px}
.dn-sang .dn-dong-y .dn-lk{font-size:14px;min-height:0;display:inline}
.dn-sang .dn-dong-y input{width:20px;height:20px;margin:0}
.dn-dk-form .dn-chan.dn-nho{font-size:13px;color:var(--chu3)}
.dn-dk-form .dn-chan b{color:var(--chu2);font-weight:600}

@media (min-width:900px){
  .dn-dk-trang .dn-dk{grid-template-columns:minmax(380px,40%) 1fr;max-width:none}
}
@media (max-width:1180px) and (min-width:900px){
  .dn-dk-trang .dn-dk-trai{padding:48px 40px 32px}
  .dn-dk-trang .dn-dk-phai{padding:56px 40px 40px}
  .dn-dk-trang .dn-dk-tua{font-size:30px}
}
@media (max-width:899px){
  /* Màn hẹp: dải tím chỉ còn dấu + câu hứa + khối Beta; bốn bước là giới thiệu, trình khởi tạo sẽ đi qua
     đúng các bước ấy — nhường chỗ để biểu mẫu lên sớm trong khung nhìn. */
  .dn-dk-trang .dn-dk-trai{padding:24px 20px 22px;gap:16px}
  .dn-dk-trang .dn-dk-tua{font-size:24px}
  .dn-dk-trang .dn-dk-buoc,.dn-dk-phu,.dn-dk-chan{display:none}
  .dn-dk-trang .dn-dk-ghi{padding:14px 16px;border-radius:16px;gap:2px}
  .dn-dk-ghi-nhan{margin-bottom:2px}
  .dn-dk-trang .dn-dk-ghi b{font-size:14.5px}
  .dn-dk-trang .dn-dk-phai{padding:24px 20px 40px}
  .dn-dk-trang .dn-dk-dau .dn-tua{font-size:24px}
  .dn-dk-form{gap:18px}
}
@media (max-width:560px){
  .dn.dn-sang{padding:28px 16px 32px}
  .dn.dn-dk-trang{padding:0}
  .dn-cot{gap:20px}
  .dn-cot .dn-the{padding:22px 18px 20px;border-radius:22px}
  .dn-sang .dn-luoi{grid-template-columns:1fr;gap:18px}
  .dn-sang .dn-quy-mo{grid-template-columns:1fr;gap:8px}
  .dn-sang .dn-quy-o{min-height:60px;flex-direction:row;justify-content:flex-start;gap:12px;padding:12px 16px;text-align:left}
  .dn-sang .dn-quy-o .dn-quy-vong{margin:0}
  .dn-sang .dn-quy-o small{margin-left:auto;text-align:right}
  .dn-sang .dn-canh-bao{padding:18px 14px 14px}
}

/* ---------- 3 · MẢNH DÙNG CHUNG CỦA CÁC MÀN TRONG APP (khởi tạo · gói · tài khoản · xác minh) ---------- */
/* ô nhập không viền, nền nhạt — chỉ trong các màn của tệp này */
:is(.kt-man,.tk-than,.tknv-than,.tknv-hop,.xm-than) :is(input[type=text],input[type=email],input[type=password],input:not([type]),select){
  width:100%;min-height:48px;border:0;border-radius:12px;background:var(--nen);padding:11px 14px;font:inherit;font-size:14.5px;
  color:var(--chu);transition:background .15s,box-shadow .15s}
:is(.kt-man,.tk-than,.tknv-than,.tknv-hop,.xm-than) :is(input[type=text],input[type=email],input[type=password],input:not([type]),select):hover{background:var(--chim)}
:is(.kt-man,.tk-than,.tknv-than,.tknv-hop,.xm-than) :is(input[type=text],input[type=email],input[type=password],input:not([type]),select):focus{
  outline:none;background:var(--the);box-shadow:0 0 0 2px var(--nhan)}
:is(.kt-man,.tk-than,.tknv-hop) select{appearance:none;-webkit-appearance:none;padding-right:40px;cursor:pointer;
  background-image:linear-gradient(45deg,transparent 50%,var(--chu3) 50%),linear-gradient(135deg,var(--chu3) 50%,transparent 50%);
  background-position:calc(100% - 20px) 52%,calc(100% - 14px) 52%;background-size:6px 6px;background-repeat:no-repeat}
:is(.kt-man,.tk-than,.tknv-hop) .o-luoi.kt-luoi{padding:0;gap:18px 20px}
:is(.kt-man,.tk-than,.tknv-hop) .o-luoi>.o{margin:0}
:is(.kt-man,.tk-than,.tknv-hop) .o-luoi>.o>label{font-size:13px;font-weight:600;color:var(--chu);margin-bottom:8px}

/* nút trong các màn này: bo 12, cao 44; nút phụ = nền nhạt KHÔNG viền; nút chữ tím */
:is(.kt-man,.goi-than,.tk-than,.tknv-than,.xm-than,.goi-dau-nut) .nut{min-height:44px;border-radius:12px;padding:10px 18px;
  display:inline-flex;align-items:center;justify-content:center;gap:8px;font-size:14px}
:is(.kt-man,.goi-than,.tk-than,.tknv-than,.xm-than) .nut.phu{border:0;background:var(--nen);color:var(--chu)}
:is(.kt-man,.goi-than,.tk-than,.tknv-than,.xm-than) .nut.phu:hover{background:var(--chim);filter:none}
:is(.kt-man,.goi-than,.tk-than,.tknv-than,.xm-than) .nut.nho{min-height:40px;padding:8px 14px;font-size:13px;border-radius:11px}
.kt-nut-chu{display:inline-flex;align-items:center;gap:8px;min-height:44px;padding:8px 10px;border:0;border-radius:12px;
  background:none;color:var(--nhan);font:inherit;font-size:14px;font-weight:600;cursor:pointer}
.kt-nut-chu:hover{background:var(--nhan-nhat)}
.kt-nut-chu:disabled{color:var(--chu3);cursor:default;background:none;opacity:.6}
.kt-nut-ico{flex:none;width:44px;height:44px;display:grid;place-items:center;border:0;border-radius:12px;background:none;
  color:var(--chu3);cursor:pointer}
.kt-nut-ico:hover{background:var(--loi-nhat);color:var(--loi)}
.kt-nut-chep{white-space:nowrap}

/* ---------- 4 · KHỞI TẠO PHÒNG KHÁM (5.html) ---------- */
/* Trình khởi tạo đứng riêng như 5.html: ẩn thanh bên + nút mở thanh bên, bỏ lề của `.chinh`.
   Lối ra vẫn có: "Lưu và làm tiếp sau" ở đầu màn về Hôm nay (thanh bên hiện lại). */
.khung:has(.kt-man){grid-template-columns:1fr}
.khung:has(.kt-man) > .ben,.khung:has(.kt-man) > .lop-ben{display:none}
.vo-app:has(.kt-man) .nut-mo-ben{display:none}
.khung:has(.kt-man) > .chinh{padding:0;max-width:none}
.kt-man{gap:0;min-height:100vh;display:flex;flex-direction:column;background:var(--nen)}
.kt-man .dau{margin:0}

.kt-dau{display:grid;grid-template-columns:1fr auto 1fr;align-items:center;gap:16px;background:var(--the);
  border-radius:0;padding:12px 32px;min-height:68px;box-shadow:0 1px 0 var(--chim)}
.kt-dau-trai{min-width:0}
.kt-dau-trai .logo-chu{font-size:18px}
.kt-dau-trai .logo-chu b{font-weight:800}
.kt-dau-trai .logo-so{font-weight:700}
.kt-dau .kt-dau-pk{display:inline-flex;align-items:center;gap:8px;max-width:none;background:var(--nen);color:var(--chu2);
  border-radius:20px;padding:8px 16px;font-size:13px;font-weight:500;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.kt-dau-pk b{color:var(--chu);font-weight:700;overflow:hidden;text-overflow:ellipsis}
.kt-cham{width:8px;height:8px;border-radius:50%;background:var(--tot);flex:none;box-shadow:0 0 0 3px var(--tot-nhat)}
.kt-luu-sau{justify-self:end;color:var(--chu)}

.kt-thanh-boc{background:var(--the);padding:22px 32px 18px;display:flex;flex-direction:column;align-items:center;gap:14px}
.kt-man .kt-thanh-buoc{display:grid;grid-auto-flow:column;grid-auto-columns:1fr;gap:0;width:100%;max-width:1160px;
  background:none;padding:0;border-radius:0;overflow:visible}
.kt-man .kt-buoc-o{position:relative;min-width:0;gap:10px}
.kt-man .kt-buoc-o::before,.kt-man .kt-buoc-o::after{content:'';position:absolute;top:17px;height:2px;background:var(--chim);z-index:0}
.kt-man .kt-buoc-o::before{left:0;right:calc(50% + 24px)}
.kt-man .kt-buoc-o::after{left:calc(50% + 24px);right:0}
.kt-man .kt-buoc-o:first-child::before,.kt-man .kt-buoc-o:last-child::after{display:none}
.kt-man .kt-buoc-o.kt-noi-truoc::before,.kt-man .kt-buoc-o.kt-noi-sau::after{background:var(--tot)}
.kt-man .kt-buoc-so{position:relative;z-index:1;width:36px;height:36px;font-size:13.5px;background:var(--nen);color:var(--chu3)}
.kt-man .kt-buoc-o.kt-xong .kt-buoc-so{background:var(--tot-nhat);color:var(--tot)}
.kt-man .kt-buoc-o.kt-dang .kt-buoc-so{background:var(--nhan);color:var(--the);box-shadow:0 0 0 5px var(--nhan-nhat)}
.kt-man .kt-buoc-o.kt-bo .kt-buoc-so{background:var(--chim)}
.kt-man .kt-buoc-ten{font-size:13px;color:var(--chu2);line-height:1.35;padding:0 4px}
.kt-man .kt-buoc-o.kt-xong .kt-buoc-ten{color:var(--chu)}
.kt-man .kt-buoc-o.kt-bo small{margin-top:-6px}
.kt-con-lai{display:inline-flex;align-items:center;gap:8px;font-size:13px;color:var(--chu2)}
.kt-con-lai .saas-ico{color:var(--nhan)}

.kt-man .kt-than{width:100%;max-width:1160px;margin:0 auto;padding:36px 32px 40px;
  grid-template-columns:minmax(0,1fr) 340px;gap:32px;flex:1}
.kt-man .kt-buoc-than{background:none;border-radius:0;padding:0;gap:20px}
.kt-dau-buoc .dau h2{font-size:28px;letter-spacing:-.02em}
.kt-dau-buoc .dau p{font-size:14.5px;color:var(--chu2);margin-top:6px}
.kt-khoi{background:var(--the);border-radius:22px;padding:24px 26px 26px;display:flex;flex-direction:column;gap:18px;
  box-shadow:0 1px 2px color-mix(in srgb,var(--chu) 4%,transparent)}
.kt-khoi-dau{display:flex;align-items:center;justify-content:space-between;gap:12px;flex-wrap:wrap}
.kt-khoi-dau h3{margin:0;font-size:16px;font-weight:700;display:flex;align-items:center;gap:10px}
.kt-khoi-dau h3::before{content:'';width:5px;height:18px;border-radius:3px;background:var(--nhan)}
.kt-khoi-phai{display:inline-flex;align-items:center;gap:6px;font-size:13px;color:var(--chu3)}

.kt-man .kt-ghe-ds{gap:10px}
.kt-man .kt-ghe-hang{gap:12px}
.kt-man .kt-ghe-so{width:32px;font-family:"IBM Plex Mono",monospace;font-size:13px;color:var(--chu3)}
.kt-khoi > .kt-nut-chu{align-self:flex-start}
.kt-ghe-ds + .kt-nut-chu{margin-left:32px}

.kt-man .kt-tich{grid-template-columns:repeat(auto-fill,minmax(200px,1fr));gap:12px}
.kt-man .kt-tich-o{position:relative;background:var(--nen);border-radius:16px;padding:14px 16px;min-height:60px;gap:12px;cursor:pointer;
  font-size:14px;font-weight:500;transition:background .15s}
.kt-man .kt-tich-o:hover{background:var(--chim)}
.kt-man .kt-tich-o input{position:absolute;opacity:0;width:1px;height:1px}
.kt-tich-hinh{width:36px;height:36px;border-radius:11px;display:grid;place-items:center;background:var(--the);color:var(--chu3)}
.kt-tich-ten{flex:1;min-width:0}
.kt-tich-dau{width:22px;height:22px;border-radius:50%;display:grid;place-items:center;background:var(--the);color:transparent;
  box-shadow:inset 0 0 0 1.5px var(--vien)}
.kt-man .kt-tich-o:has(input:checked){background:var(--nhan-nhat);color:var(--chu)}
.kt-man .kt-tich-o:has(input:checked) .kt-tich-hinh{color:var(--nhan)}
.kt-man .kt-tich-o:has(input:checked) .kt-tich-dau{background:var(--nhan);color:var(--the);box-shadow:none}
.kt-man .kt-tich-o:has(input:focus-visible){outline:2px solid var(--nhan);outline-offset:2px}
.kt-man .kt-tich-o:has(input:disabled){cursor:default}
.kt-man .kt-tich-o small{font-size:11.5px;color:var(--nhan);font-weight:600;margin:0}

/* bảng mời: không viền, đầu cột chữ nhỏ, ô nhập nền nhạt */
.kt-man .kt-moi-bang .bang{border:0;background:none;box-shadow:none;border-radius:0;overflow-x:auto}
.kt-man .kt-moi-bang .bang th{background:none;border:0;font-size:12px;color:var(--chu3);text-transform:none;letter-spacing:0;padding:0 8px 8px}
.kt-man .kt-moi-bang .bang td{border:0;padding:4px}
.kt-man .kt-moi-bang .bang td:first-child{padding-left:0}
.kt-man .kt-moi-bang select{min-width:150px}
.kt-man .kt-moi-bang input{min-width:130px}

.kt-man .kt-kq{background:linear-gradient(180deg,var(--tot-nhat),color-mix(in srgb,var(--tot-nhat) 50%,var(--the)));
  border-radius:22px;padding:20px 22px;gap:10px}
.kt-kq-tua{display:flex;align-items:center;gap:10px;color:var(--tot)}
.kt-kq-tua b{font-size:14.5px;color:var(--chu)}
.kt-man .kt-kq-dong{background:var(--the);border-radius:16px;padding:10px 12px;gap:10px 12px;font-size:13.5px}
.kt-kq-avt{flex:none;width:36px;height:36px;border-radius:11px;display:grid;place-items:center;background:var(--tot-nhat);color:var(--tot)}
.kt-man .kt-kq-dong.kt-loi .kt-kq-avt{background:var(--loi-nhat);color:var(--loi)}
.kt-kq-loi{color:var(--loi)}
.kt-man .kt-kq-ten{min-width:120px}
.kt-man .kt-kq-link{flex:1;min-width:180px;min-height:40px;font-size:12.5px}
.kt-kq-nut{display:flex;gap:8px;flex-wrap:wrap}

.kt-xong-het{display:flex;align-items:center;gap:14px;background:var(--the);border-radius:22px;padding:22px 24px}
.kt-xong-het b{font-size:17px}
.kt-xong-dau{width:56px;height:56px;border-radius:18px;display:grid;place-items:center;background:var(--tot-nhat);color:var(--tot)}

.kt-man .kt-than-phai{display:flex;flex-direction:column;gap:16px;position:sticky;top:20px}
.kt-man .kt-dung-san{position:static;border-radius:22px;padding:24px 24px 20px;
  background:linear-gradient(165deg,var(--nhan-nhat),color-mix(in srgb,var(--nhan-nhat) 45%,var(--the)))}
.kt-dung-san-tua{display:flex;align-items:center;gap:10px;color:var(--nhan);margin-bottom:16px}
.kt-man .kt-dung-san-tua b{margin:0;color:var(--chu);font-size:15.5px}
.kt-man .kt-dung-san ul{list-style:none;padding:0;gap:12px;font-size:14px;color:var(--chu2)}
.kt-dung-san li{display:flex;align-items:flex-start;gap:10px}
.kt-dung-san li .saas-ico{color:var(--tot);margin-top:3px}
.kt-man .kt-dung-san li b{display:inline;margin:0;color:var(--chu);font-weight:700}
.kt-man .kt-dung-san small{display:flex;gap:8px;align-items:flex-start;margin-top:18px;padding-top:14px;font-size:12.5px;
  color:var(--chu3);box-shadow:0 -1px 0 color-mix(in srgb,var(--nhan) 12%,transparent)}
.kt-dung-san small .saas-ico{margin-top:1px}

.kt-man .kt-chan{position:sticky;bottom:0;z-index:5;background:color-mix(in srgb,var(--the) 94%,transparent);
  backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px);border-radius:0;padding:12px 32px;
  box-shadow:0 -1px 0 var(--chim),0 -12px 24px -20px color-mix(in srgb,var(--chu) 40%,transparent);display:block}
.kt-chan-trong{max-width:1160px;margin:0 auto;display:flex;align-items:center;justify-content:space-between;gap:12px}
.kt-chan-phai{display:flex;align-items:center;gap:10px}
.kt-chan .kt-nut-chu{color:var(--chu)}
.kt-man .nut.kt-tiep{min-height:48px;padding:10px 24px;border-radius:14px;font-size:15px;
  background:linear-gradient(180deg,color-mix(in srgb,var(--nhan) 88%,var(--the)),var(--nhan));box-shadow:0 10px 22px -14px var(--nhan)}
.kt-man .nut.phu.kt-bo-qua{min-height:48px;border-radius:14px}

@media (max-width:980px){
  .kt-man .kt-than{grid-template-columns:1fr;padding:24px 16px 32px;gap:20px}
  .kt-man .kt-than-phai{position:static}
}
@media (max-width:820px){
  .kt-dau{grid-template-columns:1fr auto;padding:10px 16px;min-height:60px;gap:8px}
  .kt-dau .kt-dau-pk{grid-column:1/-1;grid-row:2;justify-self:start;max-width:100%}
  .kt-dau-pk-nhan{display:none}
  .kt-luu-sau span{display:none}
  .kt-thanh-boc{padding:16px 12px 14px;gap:10px}
  .kt-man .kt-buoc-ten{display:none}
  .kt-man .kt-buoc-o.kt-dang .kt-buoc-ten{display:block;position:absolute;top:44px;white-space:nowrap;left:50%;transform:translateX(-50%)}
  .kt-man .kt-buoc-o{padding-bottom:0}
  .kt-man .kt-thanh-buoc:has(.kt-dang){padding-bottom:22px}
  .kt-man .kt-buoc-o::before{right:calc(50% + 20px)}
  .kt-man .kt-buoc-o::after{left:calc(50% + 20px)}
  .kt-man .kt-buoc-so{width:32px;height:32px}
  .kt-man .kt-buoc-o::before,.kt-man .kt-buoc-o::after{top:15px}
  .kt-dau-buoc .dau h2{font-size:22px}
  .kt-khoi{padding:18px 16px 20px;border-radius:20px}
  .kt-ghe-ds + .kt-nut-chu{margin-left:0}
  .kt-man .kt-chan{padding:10px 16px calc(10px + env(safe-area-inset-bottom))}
  .kt-chan .kt-nut-chu span{display:none}
  .kt-man .nut.phu.kt-bo-qua{padding:10px 14px}
  .kt-man .o-luoi.kt-luoi{grid-template-columns:1fr}
  .kt-man .kt-tich{grid-template-columns:1fr 1fr}
}
@media (max-width:420px){
  .kt-man .kt-tich{grid-template-columns:1fr}
  .kt-man .nut.phu.kt-bo-qua{font-size:13px}
}

/* ---------- 5 · ĐẦU MÀN + THẺ SỐ CHUNG (gói · tài khoản nhân viên · tài khoản của tôi) ---------- */
:is(.goi-than,.tk-than,.tknv-than){display:flex;flex-direction:column;gap:20px}
/* nút chính ở đầu màn (goiNutNangCap / Mời nhân viên): cao 48, bo 14, chuyển màu nhẹ */
.dau .nut.goi-nut-nang,.dau .nut.tknv-nut-moi{min-height:48px;border-radius:14px;padding:10px 20px;display:inline-flex;align-items:center;gap:10px;font-size:14.5px}
.dau .nut.goi-nut-nang:not(.phu),.dau .nut.tknv-nut-moi{background:linear-gradient(180deg,color-mix(in srgb,var(--nhan) 88%,var(--the)),var(--nhan));
  box-shadow:0 10px 22px -14px var(--nhan)}
.dau .nut.phu.goi-nut-nang{border:0;background:var(--nhan-nhat);color:var(--nhan)}
.dau:has(.goi-nut-nang),.dau:has(.tknv-nut-moi){align-items:center}

:is(.goi-than,.tknv-than,.tk-than) .dai-so{gap:16px;margin:0;grid-template-columns:repeat(auto-fit,minmax(220px,1fr))}
:is(.goi-than,.tknv-than,.tk-than) .the.so{position:relative;border:0;border-radius:20px;box-shadow:0 1px 2px color-mix(in srgb,var(--chu) 4%,transparent);
  padding:20px 22px;display:flex;flex-direction:column;gap:6px;min-height:118px}
:is(.goi-than,.tknv-than,.tk-than) .the.so .l{order:-1;margin:0;font-size:12.5px;font-weight:600;color:var(--chu3);letter-spacing:.02em;padding-right:120px}
:is(.goi-than,.tknv-than,.tk-than) .the.so .n{font-size:26px;font-weight:600;line-height:1.2;color:var(--chu)}
:is(.goi-than,.tknv-than,.tk-than) .the.so .hang{margin:0!important}
:is(.goi-than,.tknv-than,.tk-than) .the.so .hang:empty{display:none}
.goi-so-chip{position:absolute;top:16px;right:16px}
.goi-thanh{height:6px;border-radius:4px;background:var(--chim);overflow:hidden;margin-top:auto}
.goi-thanh i{display:block;height:100%;border-radius:4px;background:var(--nhan)}
.goi-thanh.canh i{background:var(--canh)}

/* ---------- 6 · GÓI & THANH TOÁN (6.html) ---------- */
.goi-than .goi-beta{display:flex;align-items:center;gap:10px;border-radius:16px;padding:14px 18px;font-size:14px;
  background:linear-gradient(90deg,var(--nhan-nhat),color-mix(in srgb,var(--nhan-nhat) 40%,var(--the)))}
.goi-than .goi-canh{margin:0;border-radius:16px;padding:14px 18px;align-items:center;font-weight:600}
.goi-than .the.goi-gia{border:0;border-radius:24px;padding:28px;gap:24px;box-shadow:0 1px 2px color-mix(in srgb,var(--chu) 4%,transparent)}
.goi-gia-dau{padding-bottom:20px;box-shadow:0 1px 0 var(--chim)}
.goi-gia-dau h3{margin:0;font-size:19px}
.goi-gia-dau p{margin:4px 0 0;font-size:13.5px;color:var(--chu3)}
.goi-than .goi-ky-hop{background:var(--nen);padding:4px;border-radius:14px}
.goi-than .goi-ky{min-height:40px;border-radius:11px;padding:8px 16px;font-weight:600}
.goi-than .goi-ky.dang{box-shadow:0 1px 3px color-mix(in srgb,var(--chu) 12%,transparent)}
.goi-gia-luoi{display:grid;grid-template-columns:minmax(0,1.15fr) minmax(300px,.85fr);gap:28px;align-items:start}
.goi-gia-trai{display:flex;flex-direction:column;gap:12px}
.goi-than .goi-gia-than{background:none;padding:0;gap:14px}
.goi-gia-than > label{font-size:13.5px;font-weight:600;color:var(--chu)}
.goi-dem-hang{display:flex;align-items:center;gap:14px;flex-wrap:wrap}
.goi-dem-hang small{font-size:13px}
.goi-than .goi-dem{background:var(--nen);border-radius:16px;padding:4px;gap:4px}
.goi-dem-nut{width:44px;height:44px;border:0;border-radius:12px;background:var(--the);color:var(--chu);display:grid;place-items:center;cursor:pointer;
  box-shadow:0 1px 2px color-mix(in srgb,var(--chu) 8%,transparent)}
.goi-dem-nut:hover:not(:disabled){color:var(--nhan)}
.goi-dem-nut:disabled{background:none;box-shadow:none;color:var(--chu3);opacity:.6;cursor:default}
.goi-than .goi-dem-so{min-width:64px;font-size:19px;font-weight:600}
.goi-than .goi-tinh{border:0;padding:18px 20px;background:var(--nen);border-radius:18px;gap:12px}
.goi-than .goi-tinh-dong{font-size:14px;color:var(--chu2)}
.goi-than .goi-tinh-dong b{color:var(--chu);font-weight:500}
.goi-tinh-tot b{color:var(--tot)!important}
.goi-than .goi-tinh-tong{padding-top:14px;margin-top:2px;box-shadow:0 -1px 0 var(--chim);align-items:center;color:var(--chu);font-weight:700}
.goi-tinh-tien{display:flex;flex-direction:column;align-items:flex-end;gap:2px}
.goi-than .goi-tinh-tien b{font-size:22px;font-weight:600;color:var(--nhan)}
.goi-ghi-nho{margin:0;font-size:12.5px;color:var(--chu3);display:flex;gap:8px;align-items:flex-start;line-height:1.5}
.goi-ghi-nho .saas-ico{margin-top:2px}
.goi-ghi-beta{background:var(--nhan-nhat);color:var(--chu2);border-radius:14px;padding:12px 14px}
.goi-ghi-beta .saas-ico{color:var(--nhan)}

.goi-than .goi-tra,.goi-loi-ich{background:linear-gradient(170deg,var(--nen),color-mix(in srgb,var(--nen) 50%,var(--the)));border-radius:22px;padding:24px 22px;gap:14px}
.goi-tra-tua{font-size:14.5px}
.goi-tra-demo{margin:0;border-radius:14px;font-size:12.5px;align-items:flex-start;gap:8px}
.goi-than .goi-qr{width:220px;height:220px;border-radius:20px;padding:12px;box-shadow:0 8px 24px -18px color-mix(in srgb,var(--chu) 60%,transparent)}
.goi-than .goi-qr-trong{display:flex;flex-direction:column;align-items:center;gap:10px;font-size:13px;line-height:1.45}
.goi-than .goi-ngan-hang{font-size:13.5px;gap:4px}
.goi-than .goi-ngan-hang b{color:var(--chu)}
.goi-so-tien{margin-top:2px}
.goi-than .goi-noi-dung-hop{background:var(--the);border-radius:16px;padding:10px 10px 10px 16px;gap:10px;flex-wrap:nowrap}
.goi-noi-dung-trai{flex:1;min-width:0;display:flex;flex-direction:column;gap:2px}
.goi-than .goi-noi-dung-nhan{font-size:11px;font-weight:600;letter-spacing:.03em}
.goi-than .goi-noi-dung{min-width:0;width:100%;font-size:15px;padding:0;min-height:0;outline:none}
.goi-than .goi-cho{display:inline-flex;align-items:center;gap:8px;white-space:normal;text-align:center;padding:10px 16px;border-radius:16px;font-size:12.5px;line-height:1.4}
.goi-cho-cham{width:8px;height:8px;border-radius:50%;background:var(--nhan);flex:none;animation:goi-nhip 1.4s ease-in-out infinite}
@keyframes goi-nhip{0%,100%{opacity:1;transform:scale(1)}50%{opacity:.35;transform:scale(.7)}}
@media (prefers-reduced-motion:reduce){.goi-cho-cham{animation:none}}
.goi-loi-ich{display:flex;flex-direction:column}
.goi-loi-ich > b{font-size:14.5px}
.goi-loi-ich ul{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:12px}
.goi-loi-ich li{display:flex;align-items:center;gap:12px;font-size:14px;color:var(--chu2)}
.goi-loi-ico{flex:none;width:36px;height:36px;border-radius:11px;display:grid;place-items:center;background:var(--the);color:var(--nhan)}

/* bảng hoá đơn: không viền, đầu cột nền nhạt bo tròn */
.goi-than .the.goi-hd{border:0;border-radius:24px;padding:24px 24px 18px;box-shadow:0 1px 2px color-mix(in srgb,var(--chu) 4%,transparent)}
.goi-hd-dau{display:flex;align-items:baseline;justify-content:space-between;gap:12px;margin-bottom:14px}
.goi-hd-dau h3{margin:0;font-size:18px}
.goi-hd-dau .chu3{font-size:13px}
.goi-hd-trong{display:flex;align-items:center;gap:12px;background:var(--nen);border-radius:16px;padding:14px 16px;font-size:14px;color:var(--chu2)}
:is(.goi-hd,.tknv-bang) .bang{border:0;box-shadow:none;background:none;border-radius:0}
:is(.goi-hd,.tknv-bang) .bang th{background:var(--nen);border:0;font-size:12.5px;font-weight:600;color:var(--chu2);text-transform:none;letter-spacing:0;padding:12px 14px}
:is(.goi-hd,.tknv-bang) .bang th:first-child{border-radius:12px 0 0 12px}
:is(.goi-hd,.tknv-bang) .bang th:last-child{border-radius:0 12px 12px 0}
:is(.goi-hd,.tknv-bang) .bang td{border:0;padding:14px;vertical-align:middle;box-shadow:0 1px 0 var(--chim)}
:is(.goi-hd,.tknv-bang) .bang tr:last-child td{box-shadow:none}
.goi-than .goi-chan{margin:4px 0 0;font-size:12.5px}

@media (max-width:1100px){
  .goi-gia-luoi{grid-template-columns:1fr}
}
@media (max-width:640px){
  .goi-than .the.goi-gia{padding:20px 16px;border-radius:22px}
  .goi-gia-dau{flex-direction:column;align-items:stretch}
  .goi-than .goi-ky-hop{display:flex}
  .goi-than .goi-ky{flex:1;padding:8px 10px;font-size:12.5px}
  .goi-than .goi-tinh{padding:14px}
  .goi-than .goi-tinh-dong{flex-direction:row;align-items:baseline;justify-content:space-between;gap:4px 12px}
  .goi-than .goi-tinh-dong b{text-align:right}
  .goi-than .goi-tra{padding:20px 14px}
  :is(.goi-than,.tknv-than,.tk-than) .the.so{min-height:0;padding:16px 18px}
  :is(.goi-than,.tknv-than,.tk-than) .the.so .n{font-size:22px}
  .dau .nut.goi-nut-nang,.dau .nut.tknv-nut-moi{width:100%;justify-content:center}
  .dau:has(.goi-nut-nang) > .hang,.dau:has(.tknv-nut-moi) > .hang{width:100%}
  .goi-than .the.goi-hd{padding:18px 14px 12px}
}
@media (max-width:640px){
  :is(.goi-than,.tknv-than,.tk-than) .dai-so{grid-template-columns:1fr 1fr;gap:10px}
  :is(.goi-than,.tknv-than,.tk-than) .the.so{padding:14px 14px;border-radius:18px;gap:4px}
  :is(.goi-than,.tknv-than,.tk-than) .the.so .n{font-size:18px}
  :is(.goi-than,.tknv-than,.tk-than) .the.so .l{padding-right:0;font-size:12px}
  .goi-so-chip{position:static;order:-2}
  .goi-so-chip .chip{font-size:10.5px;padding:2px 8px}
}

/* ---------- 7 · TÀI KHOẢN CỦA TÔI (taikhoan.js) ---------- */
.tk-luoi-man{display:grid;grid-template-columns:minmax(0,1.1fr) minmax(0,.9fr);gap:20px;align-items:start}
.tk-than .the{border:0;border-radius:24px;padding:24px;box-shadow:0 1px 2px color-mix(in srgb,var(--chu) 4%,transparent);display:flex;flex-direction:column;gap:16px}
.tk-the-dau{display:flex;align-items:center;gap:12px}
.tk-the-dau h3{margin:0;font-size:17px;flex:1}
.tk-the-ico{flex:none;width:40px;height:40px;border-radius:13px;display:grid;place-items:center;background:var(--nhan-nhat);color:var(--nhan)}
.tk-dem{font-size:13px;color:var(--chu3);white-space:nowrap}
.tk-dem b{font-size:15px;color:var(--chu);font-weight:600}
.tk-luat{margin:0;display:flex;gap:8px;align-items:flex-start;font-size:13px;color:var(--chu3);line-height:1.5}
.tk-luat .saas-ico{margin-top:2px}
.tk-ds-may{display:flex;flex-direction:column;gap:8px}
.tk-may{display:flex;align-items:center;gap:14px;min-height:68px;padding:12px 14px;border-radius:18px;background:var(--nen)}
.tk-may-nay{background:linear-gradient(90deg,var(--nhan-nhat),color-mix(in srgb,var(--nhan-nhat) 40%,var(--nen)))}
.tk-may-hinh{flex:none;width:42px;height:42px;border-radius:13px;display:grid;place-items:center;background:var(--the);color:var(--chu2)}
.tk-may-nay .tk-may-hinh{color:var(--nhan)}
.tk-may-ten{flex:1;min-width:0;display:flex;flex-direction:column;gap:2px}
.tk-may-ten b{font-size:14.5px;display:flex;align-items:center;gap:8px;flex-wrap:wrap}
.tk-may-ten small{font-size:12.5px;color:var(--chu3)}
.tk-dang-dung{font-size:12.5px;color:var(--nhan);font-weight:600;padding:0 6px}
.tk-than .nut.phu.tk-nut-ra{background:var(--the)}
.tk-than .nut.phu.tk-nut-ra:hover{background:var(--loi-nhat);color:var(--loi)}
.tk-than .tk-doi .bao{margin:0}
.tk-doi-nut{display:flex;justify-content:flex-end}
.tk-doi-nut .nut{min-width:160px}
@media (max-width:980px){ .tk-luoi-man{grid-template-columns:1fr} }
@media (max-width:640px){
  .tk-than .the{padding:18px 16px;border-radius:22px}
  .tk-than .o-luoi.kt-luoi{grid-template-columns:1fr}
  .tk-may{flex-wrap:wrap}
  .tk-doi-nut .nut{width:100%}
  .tk-than .nut.phu.tk-nut-ra span{display:none}
  .tk-may{flex-wrap:nowrap}
}

/* ---------- 8 · TÀI KHOẢN NHÂN VIÊN (taikhoannv.js) ---------- */
.tknv-than .the.tknv-bang{border:0;border-radius:24px;padding:24px 24px 14px;box-shadow:0 1px 2px color-mix(in srgb,var(--chu) 4%,transparent)}
.tknv-bang .goi-hd-dau h3{font-size:17px}
.tknv-bang .bang{overflow-x:auto}
.tknv-ten{display:flex;align-items:center;gap:12px;min-width:180px}
.tknv-avt{flex:none;width:38px;height:38px;border-radius:13px;display:grid;place-items:center;font-size:13px;font-weight:700;
  background:var(--nhan-nhat);color:var(--nhan)}
.tknv-avt.khoa{background:var(--chim);color:var(--chu3)}
.tknv-lh{color:var(--chu2);font-size:13.5px}
.tknv-viec{display:flex;gap:6px;justify-content:flex-end;flex-wrap:nowrap}
.tknv-than .nut.phu.tknv-khoa:hover{background:var(--loi-nhat);color:var(--loi)}
/* hộp mời / liên kết / báo giá (moHop) — chỉ phần thân của tệp này */
.tknv-hop .o-luoi.kt-luoi{grid-template-columns:1fr 1fr;padding:0;gap:16px}
.tknv-hop .o-luoi>.o{margin:0}
.tknv-hop .o-luoi>.o>label{display:block;font-size:13px;font-weight:600;color:var(--chu);margin-bottom:8px}
.tknv-hop .o-luoi>.o:first-child{grid-column:1/-1}
.tknv-hop .kt-kq-link{width:100%;min-height:48px;font-size:13px}
.tknv-nhac{display:flex;gap:8px;align-items:flex-start;margin-top:16px}
.tknv-nhac .saas-ico{margin-top:2px}
.tknv-gia{gap:14px}
.tknv-gia-mo{margin:0;display:flex;gap:10px;align-items:flex-start;background:var(--canh-nhat);color:var(--canh);border-radius:14px;padding:12px 14px;font-weight:600;font-size:13.5px}
.tknv-gia-mo .saas-ico{margin-top:1px}
.tknv-gia .tknv-gia-the{background:var(--nen);border-radius:18px;padding:16px 18px;gap:10px}
.tknv-gia .tknv-gia-dong{font-size:14px;color:var(--chu2)}
.tknv-gia .tknv-gia-dong b{color:var(--chu)}
.tknv-gia .tknv-gia-dong.kt-tong{border:0;box-shadow:0 -1px 0 var(--chim);padding-top:12px;color:var(--chu);font-weight:700}
.tknv-gia .tknv-gia-dong.kt-tong b{color:var(--nhan);font-size:18px}
.tknv-gia-chan{margin:0;font-size:13px}
.tknv-viec .nut{white-space:nowrap}
.tknv-than,.tknv-than .the.tknv-bang{min-width:0;max-width:100%}
@media (max-width:640px){
  .tknv-than .the.tknv-bang{padding:18px 14px 8px;border-radius:22px}
  .tknv-viec .nut span{display:none}
  .tknv-viec .nut{width:44px;height:44px;padding:0}
  .tknv-hop .o-luoi.kt-luoi{grid-template-columns:1fr}
  /* 390px: bảng 7 cột thành danh sách thẻ — tên + chip trạng thái, dưới là vị trí · liên hệ, việc ở phải.
     Hai cột "Lần cuối"/"Máy" là số phụ, ẩn ở màn hẹp (vẫn có ở màn rộng). */
  .tknv-bang .bang,.tknv-bang .bang-cuon{overflow:visible;max-height:none}
  .tknv-bang .bang table,.tknv-bang .bang tbody{display:block;width:100%;min-width:0}
  .tknv-bang .bang thead{display:none}
  .tknv-bang .bang tr{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:2px 10px;align-items:center;padding:12px 0;box-shadow:0 1px 0 var(--chim)}
  .tknv-bang .bang tr:last-child{box-shadow:none}
  .tknv-bang .bang td{display:block;padding:0;box-shadow:none;min-width:0}
  .tknv-bang .bang td:nth-child(1){grid-column:1;grid-row:1}
  .tknv-bang .bang td:nth-child(4){grid-column:2;grid-row:1;justify-self:end}
  .tknv-bang .bang td:nth-child(2){grid-column:1;grid-row:2;padding-left:50px;font-size:13px;color:var(--chu2)}
  .tknv-bang .bang td:nth-child(3){grid-column:1;grid-row:3;padding-left:50px;font-size:12.5px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
  .tknv-bang .bang td:nth-child(5),.tknv-bang .bang td:nth-child(6){display:none}
  .tknv-bang .bang td:nth-child(7){grid-column:2;grid-row:2 / span 2;justify-self:end}
  .tknv-bang .tknv-ten{min-width:0}
  .tknv-bang .tknv-ten b{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
}

/* ---------- 9 · XÁC MINH PHÒNG KHÁM (xacminh.js, khung ở app.js › veKhungXacMinh) ---------- */
.xm-khung{background:linear-gradient(180deg,color-mix(in srgb,var(--nhan-nhat) 55%,var(--nen)) 0,var(--nen) 320px)}
.xm-khung-dau{max-width:720px;padding:18px 20px;gap:14px}
.xm-khung-dau > b{font-size:18px;font-weight:800;letter-spacing:.01em}
.xm-khung-dau .nut.phu{border:0;background:var(--the);min-height:40px;border-radius:12px;padding:8px 14px;color:var(--chu2)}
.xm-khung-dau .nut.phu:hover{background:var(--loi-nhat);color:var(--loi)}
.xm-khung-than{max-width:720px;padding:8px 20px 56px}
.xm-than{max-width:none;background:var(--the);border-radius:28px;padding:32px 32px 30px;display:flex;flex-direction:column;gap:18px;
  box-shadow:0 1px 2px color-mix(in srgb,var(--chu) 4%,transparent),0 24px 48px -36px color-mix(in srgb,var(--nhan) 50%,transparent)}
.xm-than .dau{margin:0}
.xm-than .dau h2{font-size:26px}
.xm-than .dau p{font-size:14.5px;color:var(--chu2);margin-top:6px}
.xm-dau-ico{width:56px;height:56px;border-radius:18px;display:grid;place-items:center;background:var(--nhan-nhat);color:var(--nhan)}
.xm-dau-canh{background:var(--canh-nhat);color:var(--canh)}
.xm-quay-lon{width:26px;height:26px;border-width:3px}
.xm-than .xm-ly{margin:0;display:flex;gap:10px;align-items:flex-start;background:var(--nen);color:var(--chu2);border-radius:16px;padding:14px 16px;font-size:13.5px}
.xm-than .xm-ly .saas-ico{color:var(--nhan);margin-top:1px}
.xm-than .xm-sua{margin:0;border-radius:16px;padding:14px 16px;font-size:13.5px;display:flex;flex-direction:column;gap:4px}
.xm-sua-nhan{flex-direction:row!important;align-items:flex-start;gap:10px!important;background:var(--nhan-nhat)!important}
.xm-sua-nhan .saas-ico{color:var(--nhan);margin-top:1px}
.xm-sua-canh{background:var(--canh-nhat)!important}
.xm-than .xm-luoi{gap:14px}
.xm-than .xm-o{border:0;border-radius:22px;min-height:200px;padding:26px 18px 22px;gap:8px;
  background:linear-gradient(170deg,var(--nhan-nhat),color-mix(in srgb,var(--nhan-nhat) 40%,var(--the)));transition:transform .15s,box-shadow .15s}
.xm-than .xm-o:hover{background:linear-gradient(170deg,var(--nhan-nhat),var(--nhan-nhat));box-shadow:0 12px 28px -22px var(--nhan)}
.xm-than .xm-o:focus-within{outline:2px solid var(--nhan);outline-offset:2px}
.xm-than .xm-o-ico{width:56px;height:56px;border-radius:18px;background:var(--the);font-size:0;margin-bottom:4px}
.xm-than .xm-o b{font-size:14.5px;line-height:1.35}
.xm-than .xm-o small{font-size:12.5px;color:var(--chu2)}
.xm-o-nut{display:inline-flex;align-items:center;gap:6px;margin-top:6px;min-height:36px;padding:6px 14px;border-radius:12px;
  background:var(--the);color:var(--nhan);font-size:13px;font-weight:600}
.xm-o:has(.xm-anh) .xm-o-nut{display:none}
.xm-than .xm-anh{border-radius:14px;max-height:180px}
.xm-than .xm-nhac{margin:0;display:flex;gap:8px;align-items:flex-start;font-size:13px}
.xm-than .xm-nhac .saas-ico{margin-top:1px}
.xm-than .nut.xm-gui,.xm-than .nut.xm-vao{min-height:52px;border-radius:14px;font-size:15.5px;align-self:stretch;
  background:linear-gradient(180deg,color-mix(in srgb,var(--nhan) 88%,var(--the)),var(--nhan));box-shadow:0 10px 22px -14px var(--nhan)}
.xm-than .nut.phu.xm-gui-lai{align-self:flex-start;min-height:48px;border-radius:14px}

/* màn chờ: 7 bước nối bằng đường dọc, bước đang chạy tô tím nhạt */
.xm-khung-buoc{background:var(--nen);border-radius:22px;padding:18px 18px 10px;display:flex;flex-direction:column;gap:14px}
.xm-tien-do{display:grid;grid-template-columns:auto 1fr;align-items:baseline;gap:4px 8px;font-size:13px;color:var(--chu2)}
.xm-tien-do b{font-family:"IBM Plex Mono",monospace;font-size:16px;color:var(--chu)}
.xm-tien-do .goi-thanh{grid-column:1/-1;margin-top:4px}
.xm-than .xm-buoc-ds{gap:0}
.xm-than .xm-buoc{position:relative;border:0;background:none;border-radius:14px;padding:10px 10px 14px}
.xm-than .xm-buoc:not(:last-child)::after{content:'';position:absolute;left:24px;top:44px;bottom:-6px;width:2px;border-radius:2px;background:var(--chim)}
.xm-than .xm-buoc.xm-tt-dat:not(:last-child)::after{background:var(--tot-nhat)}
.xm-than .xm-tt-dang{background:var(--the)}
.xm-than .xm-buoc-ico{width:30px;height:30px;font-size:12px;font-family:"IBM Plex Mono",monospace}
.xm-dau-quay{background:var(--nen)}
.xm-than .xm-tt-cho .xm-buoc-ico{background:var(--the);color:var(--chu3)}
.xm-than .xm-tt-cho .xm-buoc-than b{color:var(--chu3);font-weight:500}
.xm-than .xm-buoc-than{padding-top:4px}
.xm-than .xm-buoc-than b{font-size:14px}
.xm-than .xm-cho{margin:0;display:flex;gap:8px;align-items:center;font-size:13px;color:var(--chu2)}
.xm-than .xm-cho .saas-ico{color:var(--nhan)}

/* đã duyệt */
.xm-than.xm-xong{align-items:center}
.xm-than .xm-dau-vuong{width:80px;height:80px;border-radius:26px;margin:4px auto 0;box-shadow:0 16px 32px -20px var(--tot)}
.xm-than .xm-tua{font-size:24px;margin:0}
.xm-than .xm-tom-tat{align-self:stretch;border:0;background:var(--nen);border-radius:20px;padding:6px 18px;gap:0;margin:0}
.xm-than .xm-dong{padding:13px 0;font-size:14px;box-shadow:0 1px 0 var(--chim)}
.xm-than .xm-dong:last-child{box-shadow:none}

@media (max-width:560px){
  .xm-khung-dau{padding:14px 16px}
  .xm-khung-than{padding:4px 12px 40px}
  .xm-than{padding:24px 18px 22px;border-radius:24px;gap:16px}
  .xm-than .dau h2{font-size:22px}
  .xm-than .xm-o{min-height:170px}
  .xm-than .xm-dong{flex-direction:column;gap:2px}
  .xm-than .xm-dong b{text-align:left}
}

/* Nút về trang chủ trên mọi màn chưa đăng nhập (đăng nhập · đăng ký · chọn ghế demo). */
.dn-ve-chu{position:fixed;top:14px;left:14px;z-index:30;display:inline-flex;align-items:center;gap:6px;padding:8px 14px 8px 10px;
  border-radius:999px;background:color-mix(in srgb,var(--the,#fff) 88%,transparent);backdrop-filter:blur(8px);color:var(--chu2,#475569);
  font-size:13.5px;font-weight:600;text-decoration:none;box-shadow:0 2px 10px rgba(15,23,42,.08)}
.dn-ve-chu:hover{color:var(--tim,#6D4AFF)}
a.dn-logo-dau{text-decoration:none;color:inherit}
@media (max-width:560px){.dn-ve-chu{top:10px;left:10px;padding:7px 12px 7px 8px;font-size:13px}}

/* ============ GIÁM SÁT VẬN HÀNH (giamsat.js, 25/09/2026) — nền nhạt, không viền, một nút tím ============ */
.gs-dai{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px;margin:4px 0 14px}
.gs-o{background:var(--the);border-radius:16px;padding:12px 14px;display:grid;grid-template-columns:auto 1fr;grid-template-rows:auto auto auto;column-gap:10px;align-items:center;box-shadow:var(--bong)}
.gs-o-ic{grid-row:span 3;width:38px;height:38px;border-radius:12px;background:var(--nhan-nhat);color:var(--nhan);display:grid;place-items:center;align-self:start}
.gs-o b{font-size:20px;line-height:1.15;font-variant-numeric:tabular-nums;color:var(--chu)}
.gs-o span:not(.gs-o-ic){font-size:12.5px;color:var(--chu2)}
.gs-o small{font-size:11.5px;color:var(--chu3)}
.gs-o.canh .gs-o-ic{background:var(--canh-nhat);color:var(--canh)} .gs-o.canh b{color:var(--canh)}
.gs-o.loi .gs-o-ic{background:var(--loi-nhat);color:var(--loi)} .gs-o.loi b{color:var(--loi)}
.gs-o.tot .gs-o-ic{background:var(--tot-nhat);color:var(--tot)}
.gs-luoi{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;align-items:start}
.gs-khoi{background:var(--the);border-radius:18px;padding:14px 16px;display:flex;flex-direction:column;gap:10px;box-shadow:var(--bong);min-width:0}
.gs-khoi-dau{display:flex;align-items:center;gap:10px}
.gs-khoi-dau b{font-size:15px;display:block}
.gs-khoi-dau small{font-size:12px;color:var(--chu3)}
.gs-khoi-ic{width:32px;height:32px;border-radius:10px;background:var(--nhan-nhat);color:var(--nhan);display:grid;place-items:center;flex:none}
.gs-muc{display:flex;flex-direction:column;gap:6px;background:var(--nen);border-radius:12px;padding:10px 12px}
.gs-muc-dau{display:flex;justify-content:space-between;align-items:baseline;gap:8px;font-size:13px;color:var(--chu2)}
.gs-muc-dau b{color:var(--chu);font-variant-numeric:tabular-nums}
.gs-muc .goi-thanh{margin-top:0}
.gs-ghi{font-size:11.5px;color:var(--chu3);line-height:1.4}
.gs-dong{display:grid;grid-template-columns:1fr auto;column-gap:10px;align-items:baseline;font-size:13px;padding:2px 2px}
.gs-dong>span{color:var(--chu2)}
.gs-dong>b{font-variant-numeric:tabular-nums}
.gs-dong>small{grid-column:1 / -1;font-size:11.5px;color:var(--chu3)}
.gs-dong.nho{font-size:12.5px}
.gs-nhom{display:flex;flex-direction:column;gap:6px}
.gs-nhom-dong{display:grid;grid-template-columns:minmax(0,9em) minmax(0,1fr) auto auto;gap:8px;align-items:center;font-size:12.5px}
.gs-nhom-ten{color:var(--chu2);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.gs-nhom-thanh{height:8px;border-radius:4px;background:var(--nen);overflow:hidden}
.gs-nhom-thanh i{display:block;height:100%;border-radius:4px;background:var(--nhan)}
.gs-nhom-dong b{font-variant-numeric:tabular-nums;text-align:right;min-width:4.5em}
.gs-nhom-dong small{color:var(--chu3);min-width:4em;text-align:right}
.gs-cot{width:100%;height:64px;display:block}
.gs-cot rect.co{fill:var(--nhan)} .gs-cot rect.khong{fill:var(--chim)}
.gs-chi-tiet{font-size:12.5px}
.gs-chi-tiet summary{cursor:pointer;color:var(--chu2);font-weight:600;padding:2px 0}
.gs-chi-tiet ol{margin:8px 0 0;padding-left:0;list-style:none;display:flex;flex-direction:column;gap:6px}
.gs-chi-tiet li{display:grid;grid-template-columns:minmax(0,1fr) auto;column-gap:10px}
.gs-chi-tiet li>span{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.gs-chi-tiet li>small{grid-column:1 / -1;color:var(--chu3)}
.gs-bang li>b{font-variant-numeric:tabular-nums} .gs-bang li>b.loi{color:var(--loi)}
.gs-tuyen{font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-size:11.5px}
.gs-tocdo{display:flex;flex-direction:column;gap:2px;background:var(--nen);border-radius:12px;padding:10px 12px}
.gs-tocdo b{font-size:18px} .gs-tocdo span{font-size:12.5px;color:var(--chu2)}
.gs-tocdo.tot{background:var(--tot-nhat)} .gs-tocdo.tot b{color:var(--tot)}
.gs-tocdo.loi{background:var(--loi-nhat)} .gs-tocdo.loi b{color:var(--loi)}
.gs-may{display:grid;grid-template-columns:1fr 1fr;gap:4px 14px;background:var(--nen);border-radius:12px;padding:8px 10px}
@media (max-width:900px){ .gs-dai{grid-template-columns:repeat(2,minmax(0,1fr))} .gs-luoi{grid-template-columns:1fr} }
@media (max-width:420px){ .gs-o{padding:10px 11px} .gs-o b{font-size:17px} .gs-o-ic{width:32px;height:32px} .gs-may{grid-template-columns:1fr} .gs-nhom-dong{grid-template-columns:minmax(0,7em) minmax(0,1fr) auto} .gs-nhom-dong small{display:none} }
.goi-thanh.loi i{background:var(--loi)}
