/* KIỂU TRANG — bản demo Nhà may Vest (việc sổ 20261104-29). Khung THORBIZ: nền trắng, xanh #2563EB (đổi ở Cài đặt → màu chủ đạo),
   menu dọc trái ở quản trị; vàng CHỈ cho sao đánh giá. Quản trị ≥1100px vừa MỘT màn: .than cao 100vh, danh sách cuộn trong khối.
   Nút ≥44px, chữ ≥12px, chữ người gõ overflow-wrap:anywhere, lưới minmax(0,1fr). */
:root{
  --xanh:#2563EB; --xanh-dam:color-mix(in srgb,var(--xanh) 80%,#000); --xanh-nhat:color-mix(in srgb,var(--xanh) 8%,#fff); --xanh-vien:color-mix(in srgb,var(--xanh) 30%,#fff);
  --nen:#F6F7FB; --the:#fff; --vien:#E3E8F0; --chu-dam:#0F172A; --chu:#1E293B; --chu-mo:#526077;
  --vang:#C98A0B; --sao-rong:#CBD5E1; --do:#B91C1C; --do-nhat:#FEF2F2; --xanh-la:#0F766E; --xanh-la-nhat:#E7F7F1;
}
*{box-sizing:border-box;margin:0;padding:0}
html{-webkit-text-size-adjust:100%}
body{background:var(--nen);color:var(--chu);font:15px/1.55 "Segoe UI",system-ui,-apple-system,Roboto,sans-serif}
a{color:var(--xanh);text-decoration:none}
button{font:inherit;cursor:pointer;color:inherit;background:none;border:0}
input,select,textarea{font:inherit;color:var(--chu)}
img{max-width:100%;display:block}
h1{font-size:26px;line-height:1.25;color:var(--chu-dam)}
h2{font-size:18px;color:var(--chu-dam);margin-bottom:10px}
h3{font-size:15px;color:var(--chu-dam)}
p,dd,dt,b,span,h1,h2,h3,li,label,small{overflow-wrap:anywhere}
small{font-size:12.5px}
.an{display:none!important}
.an-tep{position:absolute;width:1px;height:1px;opacity:0;overflow:hidden;pointer-events:none}
.the{background:var(--the);border:1px solid var(--vien);border-radius:14px}
.khoi{padding:16px}
.chu-mo{color:var(--chu-mo);font-size:13.5px}
.nut,.nut-vien,.nut-hd{display:inline-flex;align-items:center;justify-content:center;gap:6px;min-height:44px;border-radius:10px;font-weight:700;font-size:14.5px;padding:0 16px;text-align:center;line-height:1.2}
.nut{background:var(--xanh);color:#fff;border:1px solid var(--xanh)}
.nut:hover{background:var(--xanh-dam)}
.nut[disabled]{background:#CBD5E1;border-color:#CBD5E1;color:#334155;cursor:not-allowed}
.nut-vien{background:var(--the);color:var(--chu);border:1px solid var(--vien)}
.nut-vien:hover,.nut-vien.dang-chon{border-color:var(--xanh);color:var(--xanh-dam)}
.nut-hd{background:var(--xanh-nhat);color:var(--xanh-dam);border:1px solid var(--xanh-vien)}
.nut-lon{min-height:52px;font-size:16px;padding:0 22px}
.nut-rong{width:100%}
.loi{color:var(--do);font-size:14px;font-weight:600;min-height:0}
.loi:empty{display:none}
.loi.hien{background:var(--do-nhat);border-radius:10px;padding:10px 12px}
.bao-xanh{background:var(--xanh-la-nhat);color:var(--xanh-la);border-radius:12px;padding:12px 14px;font-weight:600;margin-bottom:12px}
.bao-luu{font-weight:700;color:var(--xanh-la);font-size:14px}
.huy-hieu{display:inline-flex;align-items:center;min-height:24px;padding:0 8px;border-radius:999px;background:#EEF2F7;color:#334155;font-size:12px;font-weight:700}
.huy-hieu.xanh-la{background:var(--xanh-la-nhat);color:var(--xanh-la)}
.chip{display:inline-block;margin:2px 4px 2px 0;padding:2px 9px;border-radius:999px;background:var(--xanh-nhat);color:var(--xanh-dam);font-size:12.5px;font-weight:600}
.o-nhap{display:flex;flex-direction:column;gap:6px;margin-bottom:12px;min-width:0}
.o-nhap>span{font-weight:700;font-size:13.5px;color:var(--chu)}
.o-nhap input:not([type=checkbox]):not([type=file]),.o-nhap select,.o-nhap textarea,.o-tim{width:100%;min-height:44px;border:1px solid #CBD5E1;border-radius:10px;padding:9px 12px;background:#fff}
.o-nhap input[type=color]{padding:4px;width:88px}
.o-nhap textarea{resize:vertical}
.o-nhap :focus,.o-tim:focus{outline:2px solid var(--xanh-vien);border-color:var(--xanh)}
.logo{width:40px;height:40px;border-radius:10px;flex:none;background:var(--xanh);color:#fff;font-weight:800;font-size:17px;display:inline-flex;align-items:center;justify-content:center}
img.logo{object-fit:cover;background:#fff;border:1px solid var(--vien)}
.thuong-hieu{display:flex;align-items:center;gap:10px;color:var(--chu-dam);min-width:0;min-height:44px}
.thuong-hieu .ten-tiem{font-weight:800;font-size:16px}
/* sao: vàng chỉ dùng ở đây */
.sao-vang{display:inline-flex;font-size:17px;letter-spacing:1px;line-height:1}
.sao-vang .day{color:var(--vang)}
.sao-vang .rong{color:var(--sao-rong)}
/* thẻ giữ chỗ khi chưa có ảnh mẫu */
.giu-cho{width:100%;height:100%;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:6px;padding:14px;color:#64748B;background:linear-gradient(160deg,#F8FAFC,#E9EEF5)}
.giu-cho .bong-vest{width:44%;max-width:120px;height:auto}
.giu-cho-1{background:linear-gradient(160deg,#FFFDF8,#F3ECE0);color:#7C6A4D}
.giu-cho-2{background:linear-gradient(160deg,#F7F7FA,#E6E4EE);color:#4C4A63}
.giu-cho-3{background:linear-gradient(160deg,#F6FAF9,#E1ECEA);color:#3F625C}
.giu-cho-nhom{font-weight:800;font-size:14px;letter-spacing:.04em;text-transform:uppercase}
.giu-cho-chu{font-size:12px}

/* ============================ KHÁCH ============================ */
.dau-khach{background:var(--the);border-bottom:1px solid var(--vien);position:sticky;top:0;z-index:20}
.thanh-khach{max-width:1160px;margin:0 auto;padding:8px 16px;display:flex;align-items:center;justify-content:space-between;gap:10px;flex-wrap:wrap}
.menu-khach{display:flex;gap:8px;flex-wrap:wrap}
.than-khach{max-width:1160px;margin:0 auto;padding:18px 16px 32px}
.khoi-khach{margin-bottom:26px}
.dau-khoi{display:flex;align-items:center;justify-content:space-between;gap:10px;margin-bottom:12px;flex-wrap:wrap}
.dau-khoi h2{margin:0}
.hero{display:grid;grid-template-columns:minmax(0,1fr);gap:18px;align-items:center;margin-bottom:28px}
.hero-chu{display:flex;flex-direction:column;gap:12px}
.khau-hieu{color:var(--xanh-dam);font-weight:700;font-size:14px;letter-spacing:.03em}
.ten-tiem-lon{font-size:32px}
.gioi-thieu{font-size:16px;color:#334155;max-width:560px}
.hang-nut{display:flex;gap:10px;flex-wrap:wrap}
.hero-anh{border-radius:18px;overflow:hidden;aspect-ratio:4/3;border:1px solid var(--vien);background:#fff}
.hero-anh img{width:100%;height:100%;object-fit:cover}
@media (min-width:900px){.hero{grid-template-columns:minmax(0,1.1fr) minmax(0,.9fr);gap:36px}.ten-tiem-lon{font-size:42px}}
.luoi-mau{display:grid;grid-template-columns:minmax(0,1fr);gap:14px}
@media (min-width:560px){.luoi-mau{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media (min-width:1000px){.luoi-mau{grid-template-columns:repeat(4,minmax(0,1fr))}}
.the-mau{background:var(--the);border:1px solid var(--vien);border-radius:14px;overflow:hidden;display:flex;flex-direction:column}
.anh-mau{aspect-ratio:4/5;background:#fff;overflow:hidden}
.anh-mau img{width:100%;height:100%;object-fit:cover}
.than-mau{padding:12px 14px 14px;display:flex;flex-direction:column;gap:6px;flex:1}
.than-mau p{font-size:13.5px;color:#334155}
.than-mau .nut-dat-mau{margin-top:auto}
.nhan-nhom{font-size:12px;font-weight:800;letter-spacing:.05em;text-transform:uppercase;color:var(--xanh-dam)}
.loc-nhom{display:flex;gap:8px;flex-wrap:wrap;margin:14px 0}
.rieng{padding:18px;display:flex;flex-direction:column;gap:10px;align-items:flex-start}
.quy-trinh{list-style:none;display:grid;grid-template-columns:minmax(0,1fr);gap:10px;margin-top:12px}
@media (min-width:700px){.quy-trinh{grid-template-columns:repeat(3,minmax(0,1fr))}}
.quy-trinh li{display:flex;gap:10px;background:var(--the);border:1px solid var(--vien);border-radius:12px;padding:12px}
.quy-trinh .so{flex:none;width:30px;height:30px;border-radius:50%;background:var(--xanh-nhat);color:var(--xanh-dam);font-weight:800;display:flex;align-items:center;justify-content:center}
.quy-trinh p{font-size:13.5px;color:var(--chu-mo)}
.lien-he{padding:18px;display:flex;flex-direction:column;gap:10px;align-items:flex-start}
.chan-khach{border-top:1px solid var(--vien);background:var(--the);padding:16px;text-align:center;font-size:13.5px;display:flex;flex-direction:column;gap:4px}
/* đặt lịch */
.khung-dat{max-width:760px;margin:0 auto;display:flex;flex-direction:column;gap:14px}
.khung-dat h1{margin-bottom:-6px}
.luoi-ngay{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));gap:6px}
.luoi-ngay .ngay{min-height:54px;border:1px solid var(--vien);border-radius:10px;background:#fff;display:flex;flex-direction:column;align-items:center;justify-content:center;padding:4px 2px;line-height:1.2}
.luoi-ngay .ngay .thu{font-size:12px;color:var(--chu-mo);font-weight:700}
.luoi-ngay .ngay .ngay-so{font-size:13px;font-weight:700}
.luoi-ngay .ngay.chon{background:var(--xanh);border-color:var(--xanh);color:#fff}
.luoi-ngay .ngay.chon .thu{color:#fff}
.luoi-ngay .ngay[disabled]{background:#F1F5F9;color:#64748B;cursor:not-allowed}
.luoi-gio{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px}
.luoi-gio>p{grid-column:1/-1}
@media (min-width:700px){.luoi-gio{grid-template-columns:repeat(5,minmax(0,1fr))}}
.o-gio{min-height:54px;border:1px solid var(--xanh-vien);border-radius:10px;background:#fff;display:flex;flex-direction:column;align-items:center;justify-content:center;line-height:1.2}
.o-gio b{font-size:15px}
.o-gio small{font-size:12px;color:var(--chu-mo)}
.o-gio.chon{background:var(--xanh);border-color:var(--xanh);color:#fff}
.o-gio.chon small{color:#fff}
.o-gio[disabled]{background:#F1F5F9;border-color:var(--vien);color:#64748B;cursor:not-allowed}
.o-gio[disabled] b{text-decoration:line-through}
.nut-tep{align-self:flex-start;cursor:pointer}
.xem-anh{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:8px}
.anh-nho{position:relative;aspect-ratio:1;border-radius:10px;overflow:hidden;border:1px solid var(--vien)}
.anh-nho img{width:100%;height:100%;object-fit:cover}
.anh-nho button{position:absolute;right:0;top:0;min-width:44px;min-height:44px;background:rgba(15,23,42,.72);color:#fff;font-size:18px;border-radius:0 0 0 10px}
/* trang đơn */
.dau-don{display:flex;flex-direction:column;gap:10px;margin-bottom:14px}
.chao{color:var(--xanh-dam);font-weight:700}
.thong-tin-don{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}
.thong-tin-don>div{background:var(--nen);border-radius:10px;padding:10px 12px;display:flex;flex-direction:column}
.thong-tin-don .nhan{font-size:12px;color:var(--chu-mo);font-weight:700;text-transform:uppercase;letter-spacing:.04em}
.thong-tin-don b{font-size:16px}
.luu-link{display:flex;gap:10px;align-items:center;flex-wrap:wrap}
.hai-cot-don{display:grid;grid-template-columns:minmax(0,1fr);gap:14px}
@media (min-width:900px){.hai-cot-don{grid-template-columns:minmax(0,1fr) minmax(0,1fr)}}
.cot-phai-don{display:flex;flex-direction:column;gap:14px;min-width:0}
.noi-bat{border:2px solid var(--xanh);box-shadow:0 6px 20px -12px var(--xanh)}
.dong-thoi-gian{list-style:none;position:relative}
.dong-thoi-gian .buoc{display:flex;gap:12px;position:relative;padding:8px 10px;border-radius:12px}
.dong-thoi-gian .buoc:not(:last-child)::after{content:"";position:absolute;left:19px;top:30px;bottom:-10px;width:2px;background:var(--vien)}
.dong-thoi-gian .cham{flex:none;width:20px;height:20px;border-radius:50%;border:2px solid #CBD5E1;background:#fff;margin-top:2px;position:relative;z-index:1}
.dong-thoi-gian .xong .cham{background:var(--xanh-la);border-color:var(--xanh-la)}
.dong-thoi-gian .xong::after{background:var(--xanh-la)!important}
.dong-thoi-gian .hien-tai{background:var(--xanh-nhat)}
.dong-thoi-gian .hien-tai .cham{background:var(--xanh);border-color:var(--xanh);box-shadow:0 0 0 5px var(--xanh-vien)}
.noi-buoc{flex:1;min-width:0;display:flex;flex-direction:column;gap:2px}
.hang-buoc{display:flex;justify-content:space-between;gap:8px}
.ten-buoc{font-weight:700}
.sap-toi .ten-buoc{color:var(--chu-mo);font-weight:600}
.ngay-buoc{font-size:13px;color:var(--chu-mo);font-weight:600;white-space:nowrap}
.trang-thai{font-size:12px;font-weight:700;color:var(--chu-mo);text-transform:uppercase;letter-spacing:.04em}
.xong .trang-thai{color:var(--xanh-la)}
.hien-tai .trang-thai{color:var(--xanh-dam)}
.mo-ta-buoc{font-size:13.5px;color:#334155}
.ghi-chu-buoc{font-size:13.5px;background:#fff;border:1px dashed var(--xanh-vien);border-radius:8px;padding:6px 10px;margin-top:4px}
.mau-nho{display:flex;gap:12px;align-items:center}
.anh-mau-nho{width:84px;height:104px;border-radius:10px;overflow:hidden;flex:none;border:1px solid var(--vien)}
.anh-mau-nho img{width:100%;height:100%;object-fit:cover}
.anh-mau-nho .giu-cho .giu-cho-nhom,.anh-mau-nho .giu-cho .giu-cho-chu{display:none}
.anh-mau-nho .giu-cho .bong-vest{width:70%}
.anh-khach{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:8px;margin-top:8px}
.anh-khach img{aspect-ratio:1;object-fit:cover;border-radius:10px;border:1px solid var(--vien);width:100%}
#mau-da-chon h3{margin-top:12px}
.bang-so-do{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}
.bang-so-do dl>div{display:flex;justify-content:space-between;gap:6px;border-bottom:1px solid #EEF2F7;padding:6px 0;font-size:14px}
.bang-so-do dt{color:var(--chu-mo)}
.bang-so-do dd{font-weight:700}
.hai-lua-chon{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;margin-bottom:12px}
.chon-cach.chon{background:var(--xanh);color:#fff;border-color:var(--xanh)}
#phan-lay h3{margin:6px 0 8px}
#phan-lay .luoi-gio{margin-top:10px}
#nhan-hang .loi{margin:8px 0}
.tom-nhan{font-weight:700;font-size:16px;margin:6px 0 10px}
.da-luu{color:var(--xanh-la);font-weight:700}
.chon-sao{display:flex;gap:4px}
.chon-sao button{width:48px;height:48px;font-size:30px;color:var(--sao-rong);border-radius:10px}
.chon-sao button.sang{color:var(--vang)}
.loi-khach{margin:10px 0;font-size:15px}
.anh-ph{max-width:220px;border-radius:10px;border:1px solid var(--vien);margin-top:6px}
.khong-thay{max-width:560px;margin:30px auto;display:flex;flex-direction:column;gap:12px;align-items:flex-start}
/* đăng nhập */
.trang-dn{min-height:100vh;display:flex;align-items:center;justify-content:center;padding:20px}
.giua{width:min(420px,100%);display:flex;flex-direction:column;gap:14px}
.form-dn{display:flex;flex-direction:column;gap:6px}
.form-dn h1{font-size:22px;margin-bottom:8px}

/* ============================ QUẢN TRỊ ============================ */
.menu-trai{background:var(--the);border-right:1px solid var(--vien);display:flex;flex-direction:column;gap:14px;padding:16px 12px}
.menu-trai .chu-hieu{display:flex;flex-direction:column;min-width:0;line-height:1.25}
.menu-trai .chu-hieu small{color:var(--chu-mo);font-size:12px}
.ds-muc{display:flex;flex-direction:column;gap:4px}
.muc{display:flex;align-items:center;gap:10px;min-height:44px;padding:0 12px;border-radius:10px;color:#334155;font-weight:600;font-size:14.5px}
.muc svg{width:19px;height:19px;flex:none;fill:none;stroke:currentColor;stroke-width:1.9;stroke-linecap:round;stroke-linejoin:round}
.muc:hover{background:#F1F5F9}
.muc.dang-mo{background:var(--xanh-nhat);color:var(--xanh-dam);font-weight:800;box-shadow:inset 3px 0 0 var(--xanh)}
.chan-menu{margin-top:auto;display:flex;flex-direction:column;gap:8px}
.chan-menu form,.chan-menu .nut-vien{width:100%}
.chan-menu form .nut-vien{width:100%}
.than{display:flex;flex-direction:column;gap:14px;padding:16px 22px;min-width:0}
.dau-man{display:flex;align-items:center;justify-content:space-between;gap:10px;flex-wrap:wrap}
.dau-man h1{font-size:22px}
.cong-cu{display:flex;align-items:center;gap:8px;flex-wrap:wrap}
.nhom-nut{display:flex;gap:6px}
.o-tim{width:240px}
.noi-dung{display:flex;flex-direction:column;gap:14px;min-width:0}
.nhan-khoi{font-size:12.5px;letter-spacing:.06em;text-transform:uppercase;color:var(--chu-mo);font-weight:800}
.ds{display:flex;flex-direction:column;gap:8px}
@media (min-width:1100px){
  body.qt{display:grid;grid-template-columns:244px minmax(0,1fr)}
  body.qt .menu-trai{position:sticky;top:0;height:100vh;overflow-y:auto}
  body.qt .than{height:100vh}
  body.qt .noi-dung{flex:1;min-height:0}
  .cuon{overflow-y:auto;min-height:0}
  .ba-cot,.hai-cot-ph,.luoi-tuan{grid-template-rows:minmax(0,1fr)}
  .khung-cd{overflow-y:auto}
}
@media (max-width:1099px){
  .menu-trai{border-right:0;border-bottom:1px solid var(--vien);padding:10px 12px;gap:8px}
  .ds-muc{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:4px}
  .muc{padding:0 8px;font-size:13px;gap:6px;justify-content:center}
  .muc svg{display:none}
  .chan-menu{flex-direction:row}
  .chan-menu>*{flex:1}
  .than{padding:14px 12px}
  .o-tim{width:100%}
  .cong-cu{width:100%}
}
/* tổng quan */
.tq{display:flex;flex-direction:column;gap:14px;min-height:0;flex:1}
.hang-so{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}
.o-so{padding:14px 16px;display:flex;flex-direction:column;gap:2px}
.o-so .nhan{font-size:12.5px;font-weight:800;letter-spacing:.05em;text-transform:uppercase;color:var(--chu-mo)}
.o-so b{font-size:30px;color:var(--chu-dam);line-height:1.15}
.ba-cot{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;flex:1;min-height:0}
@media (max-width:1099px){.ba-cot,.hang-so{grid-template-columns:minmax(0,1fr)}}
#theo-buoc{list-style:none;display:flex;flex-direction:column;gap:4px}
#theo-buoc a{display:grid;grid-template-columns:minmax(0,1.3fr) minmax(0,1fr) 32px;align-items:center;gap:8px;min-height:44px;color:var(--chu);font-size:14px;padding:0 6px;border-radius:8px}
#theo-buoc a:hover{background:#F1F5F9}
#theo-buoc b{text-align:right}
.thanh{height:8px;background:#EEF2F7;border-radius:99px;overflow:hidden;display:block}
.thanh i{display:block;height:100%;background:var(--xanh);border-radius:99px}
.dong-phan-hoi{border:1px solid var(--vien);border-radius:12px;padding:10px 12px;display:flex;flex-direction:column;gap:4px}
.dau-ph{display:flex;align-items:center;gap:8px;flex-wrap:wrap}
.ma-don-nho{min-height:44px;color:var(--xanh-dam);font-weight:700;font-size:13px;padding:0 4px}
.dong-phan-hoi p{font-size:14px}
/* lịch đo */
.nhan-ngay{font-size:15px}
.ds-hen{display:flex;flex-direction:column;gap:8px;flex:1}
.lich-hen{display:grid;grid-template-columns:64px minmax(0,1fr) auto;gap:12px;align-items:center;border:1px solid var(--vien);border-radius:12px;padding:8px 12px;background:#fff}
.gio-hen{font-size:18px;font-weight:800;color:var(--xanh-dam)}
.tt-hen{display:flex;flex-direction:column;min-width:0}
.ten-hen{min-height:44px;text-align:left;font-weight:800;font-size:15px;color:var(--chu-dam);padding:0}
.ten-hen:hover{color:var(--xanh-dam)}
.ghi-chu-hen{font-size:13px;color:#334155}
.nut-hen{display:flex;gap:8px;align-items:center;flex-wrap:wrap;justify-content:flex-end}
@media (max-width:700px){.lich-hen{grid-template-columns:52px minmax(0,1fr)}.nut-hen{grid-column:1/-1;justify-content:flex-start}}
.luoi-tuan{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));gap:8px;flex:1;min-height:0}
.ngay-tuan{padding:10px 8px;display:flex;flex-direction:column;gap:8px;min-height:0;overflow-y:auto}
.ngay-tuan.hom-nay{border-color:var(--xanh);background:var(--xanh-nhat)}
.ngay-tuan h3{font-size:13.5px}
.lich-hen.gon{display:block;padding:0;border:0;background:none}
.the-hen{width:100%;min-height:44px;text-align:left;border:1px solid var(--vien);border-radius:10px;background:#fff;padding:6px 8px;font-size:13px;line-height:1.3}
.the-hen b{color:var(--xanh-dam)}
@media (max-width:1099px){.luoi-tuan{grid-template-columns:minmax(0,1fr)}}
/* đơn hàng */
.bang-buoc{display:grid;grid-auto-flow:column;grid-auto-columns:236px;gap:12px;overflow:auto;padding-bottom:8px}
@media (min-width:1100px){.bang-buoc{flex:1;min-height:0;grid-template-rows:minmax(0,1fr)}}
@media (max-width:1099px){.bang-buoc{grid-auto-columns:78%;max-height:none}}
.cot{background:#F1F4F9;border-radius:14px;display:flex;flex-direction:column;min-height:0;padding:8px}
.dau-cot{display:flex;justify-content:space-between;align-items:center;gap:6px;padding:4px 6px 8px;font-weight:800;font-size:13.5px;color:var(--chu-dam)}
.dem{background:#fff;border-radius:99px;padding:0 9px;font-size:12.5px;color:var(--chu-mo)}
.ds-the{display:flex;flex-direction:column;gap:8px;overflow-y:auto;min-height:0;flex:1}
.the-don{text-align:left;background:#fff;border:1px solid var(--vien);border-radius:12px;padding:10px 12px;display:flex;flex-direction:column;gap:2px;min-height:44px}
.the-don:hover{border-color:var(--xanh)}
.the-don .ma{font-size:12px;font-weight:800;color:var(--xanh-dam);letter-spacing:.03em}
.the-don .sao-vang{font-size:13px}
.trong{font-size:13px;padding:6px}
/* mẫu vest */
.cuon-ngoai{overflow-y:auto;min-height:0;flex:1}
.luoi-mau-qt{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}
@media (min-width:1100px){.luoi-mau-qt{grid-template-columns:repeat(4,minmax(0,1fr))}}
@media (min-width:1700px){.luoi-mau-qt{grid-template-columns:repeat(6,minmax(0,1fr))}}
.the-mau-qt{overflow:hidden;display:flex;flex-direction:column}
.the-mau-qt .anh-mau{aspect-ratio:4/3}
.the-mau-qt.da-an{opacity:.65}
/* phản hồi */
.hai-cot-ph{display:grid;grid-template-columns:300px minmax(0,1fr);gap:12px;flex:1;min-height:0}
@media (max-width:1099px){.hai-cot-ph{grid-template-columns:minmax(0,1fr)}}
.tom-ph{display:flex;flex-direction:column;gap:6px;align-self:start}
.tom-ph .nhan{font-size:12.5px;font-weight:800;letter-spacing:.05em;text-transform:uppercase;color:var(--chu-mo)}
.so-lon{font-size:44px;line-height:1.1;color:var(--chu-dam)}
.tom-ph .sao-vang{font-size:22px}
.phan-bo{list-style:none;display:flex;flex-direction:column;gap:6px;margin-top:10px}
.phan-bo li{display:grid;grid-template-columns:40px minmax(0,1fr) 28px;gap:8px;align-items:center;font-size:13.5px}
.phan-bo li b{text-align:right}
/* cài đặt */
.tab-cd{display:flex;gap:8px;flex-wrap:wrap}
.khung-cd{flex:1;min-height:0;display:flex;flex-direction:column;gap:12px}
.luoi-2{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:0 16px}
.luoi-3{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:0 12px}
@media (max-width:700px){.luoi-2,.luoi-3{grid-template-columns:minmax(0,1fr)}}
.hang-logo{display:flex;align-items:center;gap:10px}
.hang-luu{display:flex;align-items:center;gap:10px;flex-wrap:wrap}
.nhom-lich{display:flex;flex-direction:column;gap:8px}
.thu-lich{display:flex;flex-wrap:wrap;gap:6px;margin-bottom:6px}
.chon-thu{display:inline-flex;align-items:center;gap:6px;min-height:44px;padding:0 10px;border:1px solid var(--vien);border-radius:10px;font-weight:700;font-size:13.5px;cursor:pointer}
.chon-thu input{width:18px;height:18px}
.dau-bang-buoc,.dong-buoc{display:grid;grid-template-columns:34px minmax(0,1fr) minmax(0,1.6fr) 190px 150px;gap:8px;align-items:center}
.dau-bang-buoc{font-size:12.5px;font-weight:800;color:var(--chu-mo);text-transform:uppercase;letter-spacing:.04em;padding:0 4px}
.ds-buoc{display:flex;flex-direction:column;gap:6px}
.dong-buoc{background:#fff;border:1px solid var(--vien);border-radius:12px;padding:6px}
.dong-buoc input,.dong-buoc select{min-height:44px;border:1px solid #CBD5E1;border-radius:9px;padding:6px 10px;width:100%;background:#fff}
.dong-buoc .so-buoc{font-weight:800;text-align:center;color:var(--xanh-dam)}
.dong-buoc .nut-dong{display:flex;gap:4px}
.dong-buoc .nut-dong button{min-width:44px;min-height:44px;border:1px solid var(--vien);border-radius:9px;background:#fff;font-size:13px;font-weight:700}
@media (max-width:1099px){.dau-bang-buoc{display:none}.dong-buoc{grid-template-columns:34px minmax(0,1fr)}.dong-buoc>*:nth-child(n+3){grid-column:2}}
/* cửa sổ */
.cua-so{position:fixed;inset:0;background:rgba(15,23,42,.52);display:none;align-items:center;justify-content:center;padding:24px;z-index:100}
.cua-so.mo{display:flex}
.hop{background:#fff;border-radius:16px;width:min(980px,100%);max-height:calc(100vh - 48px);display:flex;flex-direction:column;overflow:hidden;box-shadow:0 30px 60px -20px rgba(15,23,42,.4)}
.hop.hep{width:min(620px,100%)}
.dau-hop{display:flex;align-items:center;justify-content:space-between;gap:10px;padding:10px 10px 10px 20px;border-bottom:1px solid var(--vien)}
.dau-hop h2{margin:0;font-size:18px}
.dong-x{width:44px;height:44px;border-radius:10px;font-size:26px;line-height:1;color:var(--chu-mo);flex:none}
.dong-x:hover{background:#F1F5F9;color:var(--chu-dam)}
.than-hop{overflow-y:auto;padding:16px 20px 20px;min-height:0}
@media (max-width:700px){.cua-so{padding:8px}.hop{max-height:calc(100vh - 16px)}.than-hop{padding:12px}}
.cs-don{display:grid;grid-template-columns:minmax(0,1.2fr) minmax(0,1fr);gap:16px}
@media (max-width:800px){.cs-don{grid-template-columns:minmax(0,1fr)}}
.cs-don section{border:1px solid var(--vien);border-radius:12px;padding:12px;margin-bottom:12px}
.cs-don h3{font-size:12.5px;letter-spacing:.05em;text-transform:uppercase;color:var(--chu-mo);margin-bottom:6px}
.cs-dong{display:flex;justify-content:space-between;gap:10px;font-size:14px;padding:3px 0}
.cs-dong span:first-child{color:var(--chu-mo)}
.cs-dong span:last-child{font-weight:700;text-align:right}
.buoc-dieu-khien{background:var(--xanh-nhat);border-color:var(--xanh-vien)!important}
#buoc-hien-tai{font-size:18px;font-weight:800;color:var(--xanh-dam);margin-bottom:8px}
.hang-buoc-nut{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}
.tin-gui-khach{background:#FFFFFF;border:1px dashed var(--xanh-vien);border-radius:10px;padding:10px 12px;margin-top:10px;font-size:13.5px}
.tin-gui-khach b{display:block;font-size:12.5px;text-transform:uppercase;letter-spacing:.05em;color:var(--xanh-dam)}
.tin-gui-khach small{display:block;color:var(--chu-mo);margin-top:4px}
.lich-su{list-style:none;font-size:13.5px;display:flex;flex-direction:column;gap:4px}
.anh-luoi{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:6px}
.anh-luoi a{display:block;min-height:44px}
.anh-luoi img{aspect-ratio:1;object-fit:cover;border-radius:8px;width:100%}
.luoi-so-do{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:0 10px}
@media (max-width:700px){.luoi-so-do{grid-template-columns:repeat(2,minmax(0,1fr))}}
.hd-phan{border-left:3px solid var(--xanh);padding:4px 0 4px 12px;margin:12px 0}
.hd-phan b{display:block;color:var(--chu-dam)}
/* sửa 04/11 sau khi nhìn ảnh: dòng hẹn gọn (Tổng quan, tuần) + ngày không gãy giữa chữ */
.the-hen{display:flex;flex-direction:column;align-items:flex-start;gap:2px}
.the-hen .dong-1{font-size:14px;color:var(--chu-dam)}
.the-hen .dong-2{font-size:12.5px;color:var(--chu-mo)}
.luoi-tuan .the-hen .dong-1{font-size:13px}
.luoi-ngay .ngay .thu,.luoi-ngay .ngay .ngay-so{overflow-wrap:normal;white-space:nowrap}
@media (max-width:420px){.luoi-ngay{gap:4px}.luoi-ngay .ngay{padding:4px 0}.luoi-ngay .ngay .ngay-so{font-size:12px;letter-spacing:-.02em}.khung-dat .khoi{padding:14px 12px}}
.cs-don .luoi-so-do{grid-template-columns:repeat(3,minmax(0,1fr))}
.bang-buoc{grid-auto-columns:212px}
@media (max-width:1099px){.bang-buoc{grid-auto-columns:78%}}

/* ===================== VÒNG 2 (cửa thiết kế 04/11) ===================== */
/* ảnh mẫu 4:3 mọi cỡ màn (ảnh thật 1200×900; 390 không dài lê thê) */
.anh-mau{aspect-ratio:4/3}
.anh-mau img,.hero-anh img{width:100%;height:100%;object-fit:cover}
/* thẻ giữ chỗ (mẫu tiệm thêm sau chưa có ảnh): nền dịu mỗi nhóm một tông, không vàng/be — vàng chỉ cho sao */
.giu-cho{background:#EEF2F8;padding:10px}
.giu-cho-0{background:#EAF0F8}
.giu-cho-1{background:#EEF1F4}
.giu-cho-2{background:#F0EEF6}
.giu-cho-3{background:#EAF3F1}
.giu-cho .bong-vest{width:auto;height:78%;max-width:70%}
.anh-mau-nho .giu-cho .bong-vest{height:80%}
/* trang chủ: câu lợi ích to, tên tiệm nhỏ, 3 lời hứa, dải hành trình ngay dưới */
.ten-tiem-nho{font-size:14px;font-weight:800;letter-spacing:.08em;text-transform:uppercase;color:var(--xanh-dam)}
.tieu-de-chinh{font-size:32px;line-height:1.18;letter-spacing:-.01em}
@media (min-width:900px){.tieu-de-chinh{font-size:44px}.hero{margin-bottom:18px}}
.khau-hieu{color:#334155;font-weight:600;font-size:15px;letter-spacing:0}
.loi-hua{list-style:none;display:grid;grid-template-columns:minmax(0,1fr);gap:8px}
.loi-hua li{display:flex;gap:10px;align-items:flex-start}
.loi-hua .dau-tich{flex:none;width:26px;height:26px;border-radius:50%;background:var(--xanh);color:#fff;font-weight:800;font-size:14px;display:flex;align-items:center;justify-content:center;margin-top:1px}
.loi-hua b{display:block;font-size:15px;color:var(--chu-dam)}
.loi-hua span{font-size:13.5px;color:var(--chu-mo)}
.hero-anh{box-shadow:0 24px 48px -28px rgba(15,23,42,.45)}
.khoi-hanh-trinh .dau-khoi{margin-bottom:10px}
.dai-hanh-trinh{list-style:none;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px}
@media (min-width:900px){.dai-hanh-trinh{grid-template-columns:repeat(9,minmax(0,1fr))}}
.dai-hanh-trinh li{background:var(--the);border:1px solid var(--vien);border-radius:12px;padding:10px 8px;display:flex;flex-direction:column;align-items:center;gap:6px;text-align:center;min-height:84px}
.dai-hanh-trinh .so{width:28px;height:28px;border-radius:50%;background:var(--xanh-nhat);color:var(--xanh-dam);font-weight:800;font-size:13px;display:flex;align-items:center;justify-content:center}
.dai-hanh-trinh .ten{font-size:13px;font-weight:700;line-height:1.3;color:var(--chu-dam);overflow-wrap:normal}
.khoang-ngay{margin:-4px 0 8px;font-size:13px}
.luoi-ngay .ngay .ngay-so{font-size:15px}
/* tổng quan */
.dai-qua-han{background:#FDE2E2;border:1px solid #F5A3A3;border-radius:14px;padding:10px 14px;display:flex;align-items:center;gap:12px;flex-wrap:wrap;color:#7F1D1D}
.dau-qh{font-size:15px;display:flex;align-items:center;gap:8px}
.so-qua-han{background:#B91C1C;color:#fff;border-radius:999px;min-width:30px;height:30px;padding:0 9px;display:inline-flex;align-items:center;justify-content:center;font-size:16px}
.ds-qh{display:flex;gap:8px;flex-wrap:wrap}
.qua-han-don{min-height:44px;background:#fff;border:1px solid #F5A3A3;border-radius:10px;padding:0 12px;font-size:13.5px;color:#7F1D1D;text-align:left}
.qua-han-don:hover{border-color:#B91C1C}
.qua-han-don span{color:#991B1B}
.o-so{padding:16px 18px;gap:4px;justify-content:center}
.o-so b{font-size:44px;line-height:1.05;letter-spacing:-.02em}
.o-so .dong-sao{display:flex;align-items:center;gap:8px}
.dong-da-giao{display:flex;justify-content:space-between;align-items:center;min-height:44px;margin-top:8px;padding:0 6px;border-top:1px dashed var(--vien);color:var(--chu);font-size:14px;font-weight:700}
.dong-da-giao b{color:var(--xanh-la)}
/* đơn hàng: dải bước + nhóm đơn */
.dai-buoc{display:grid;grid-template-columns:repeat(var(--so-buoc,9),minmax(0,1fr));gap:8px}
@media (max-width:1099px){.dai-buoc{grid-template-columns:repeat(3,minmax(0,1fr))}}
.o-buoc{background:var(--the);border:1px solid var(--vien);border-radius:12px;padding:8px 8px 10px;display:flex;flex-direction:column;align-items:flex-start;gap:2px;text-align:left;min-height:84px;position:relative}
.o-buoc .so{font-size:12px;font-weight:800;color:var(--chu-mo)}
.o-buoc .ten{font-size:13px;font-weight:700;line-height:1.25;color:var(--chu-dam);overflow-wrap:normal;word-break:normal}
.o-buoc .dem{margin-top:auto;font-size:24px;line-height:1;color:var(--xanh-dam)}
.o-buoc:hover{border-color:var(--xanh)}
.o-buoc.trong{background:#F8FAFC}
.o-buoc.trong .ten,.o-buoc.trong .dem{color:#64748B}
.o-buoc.trong .dem{font-weight:600}
.o-buoc.chon{background:var(--xanh);border-color:var(--xanh)}
.o-buoc.chon .so,.o-buoc.chon .ten,.o-buoc.chon .dem{color:#fff}
.goi-y-loc{margin-top:-6px}
.ds-don{display:flex;flex-direction:column;gap:14px;overflow-y:auto;min-height:0;padding-right:2px}
@media (min-width:1100px){.ds-don{flex:1}}
.ds-don .cot{background:none;padding:0;display:block;border-radius:0}
.ds-don .cot.an{display:none}
.ds-don .dau-cot{justify-content:flex-start;gap:8px;padding:0 0 8px;font-size:14px;margin:0;color:var(--chu-dam)}
.ds-don .dau-cot .dem{background:var(--xanh-nhat);color:var(--xanh-dam);font-size:12.5px}
.ds-don .ds-the{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;overflow:visible}
@media (min-width:1100px){.ds-don .ds-the{grid-template-columns:repeat(4,minmax(0,1fr))}}
@media (min-width:1700px){.ds-don .ds-the{grid-template-columns:repeat(6,minmax(0,1fr))}}
@media (max-width:520px){.ds-don .ds-the{grid-template-columns:minmax(0,1fr)}}
.ds-don .the-don{overflow-wrap:normal}
.ds-don .the-don b,.ds-don .the-don .chu-mo{overflow-wrap:break-word}
.ds-don .trong{grid-column:1/-1}
/* lịch tuần: ngày đủ dd/mm/yyyy xuống dòng gọn */
.ngay-tuan h3{display:flex;flex-wrap:wrap;gap:0 6px}
.ngay-tuan .ngay-day{overflow-wrap:normal;white-space:nowrap}
/* cài đặt */
.hang-mau-logo{display:grid;grid-template-columns:auto minmax(0,1fr);gap:0 24px}
.hang-mau{display:inline-flex;align-items:center;gap:10px;min-height:44px}
.o-nhap input#tiem-mau{width:48px;height:44px;padding:2px;border-radius:10px;flex:none;cursor:pointer}
#tiem-mau-chu{font:600 13px/1 ui-monospace,Consolas,monospace;color:var(--chu-mo);background:#F1F5F9;border-radius:6px;padding:5px 8px}
.ds-khung{display:flex;flex-direction:column;gap:6px}
.khung-dong{display:flex;align-items:flex-end;gap:8px;flex-wrap:wrap}
.o-gio-chon{display:flex;flex-direction:column;gap:4px;font-size:12.5px;font-weight:700;color:var(--chu-mo)}
.o-gio-chon select{min-height:44px;min-width:104px;border:1px solid #CBD5E1;border-radius:10px;padding:6px 10px;background:#fff;font-weight:600}
.xoa-khung{min-width:44px;font-size:20px;padding:0}
.them-khung{align-self:flex-start;margin-top:6px}
.luoi-3 .o-nhap>span{white-space:nowrap;overflow-wrap:normal}
.dau-bang-buoc,.dong-buoc{grid-template-columns:34px minmax(0,1fr) minmax(0,1.5fr) 180px 96px 150px}
.dong-buoc input.buoc-qua-han{text-align:center}
@media (max-width:1099px){.dong-buoc{grid-template-columns:34px minmax(0,1fr)}}
.o-buoc .dem{background:none;padding:0;border-radius:0}
.anh-mau-nho{width:120px;height:90px}
