/* Trang "Tin phòng cho thuê" (trước đăng nhập) — dùng chung cho app (Capacitor) và web điện thoại.
   Ngôn ngữ thiết kế lấy từ Trang chủ app: header gradient xanh bo đáy, thẻ trắng bo tròn lớn, thanh tab nổi.
   Điểm nhấn riêng: "biển số phòng" (xanh lá = đang trống, hổ phách = sắp trống) thay cho ảnh phòng.
   Mọi màu lấy từ biến CSS: web có thể ghi đè --qlt-b / --qlt-bd ở :root của trang. */
.qlt-root{
  --qlt-b:#2F58D2; --qlt-bd:#2A4BB5; --qlt-bx:#1F3A94; --qlt-bg:#F2F5FB; --qlt-card:#fff; --qlt-tx:#16203A; --qlt-mu:#5A6585; --qlt-ln:#E1E7F5;
  --qlt-ok:#16794A; --qlt-ok1:#2FA45E; --qlt-ok2:#17663C; --qlt-okbg:#E3F5EA;
  --qlt-warn:#9A5B00; --qlt-wn1:#F2A93B; --qlt-wn2:#C77700; --qlt-warnbg:#FFF1D6; --qlt-er:#C0392B; --qlt-heart:#E5484D;
  --qlt-shadow:0 8px 24px rgba(31,58,148,.10);
  --qlt-tab-h:62px;
  font-family:Arial,"Liberation Sans",Helvetica,sans-serif;
  color:var(--qlt-tx); background:var(--qlt-bg); -webkit-text-size-adjust:100%;
  min-height:100vh; min-height:100dvh; overflow-x:hidden;
  padding-bottom:calc(var(--qlt-tab-h) + env(safe-area-inset-bottom,0px) + 34px);
}
.qlt-root *{box-sizing:border-box;-webkit-tap-highlight-color:transparent}
:where(.qlt-root) :is(button,input,select){font:inherit;color:inherit}
:where(.qlt-root) a{color:inherit;text-decoration:none}
.qlt-root svg{display:block;flex:none}
.qlt-root :focus-visible{outline:3px solid rgba(47,88,210,.45);outline-offset:2px}

/* ---- Header (cùng ngôn ngữ với Trang chủ app) ---- */
.qlt-hero{position:relative;overflow:hidden;color:#fff;border-radius:0 0 30px 30px;
  background:linear-gradient(150deg,#5878E0 0%,#2F58D2 38%,#2442A0 100%);
  padding:calc(env(safe-area-inset-top,0px) + 14px) 18px 50px}
.qlt-hero-art{position:absolute;right:-26px;bottom:-18px;width:210px;height:210px;color:#fff;opacity:.09;pointer-events:none}
.qlt-brand{position:relative;display:flex;align-items:center;gap:11px}
.qlt-brand img{width:42px;height:42px;border-radius:13px;background:#fff;padding:4px;object-fit:contain;box-shadow:0 4px 12px rgba(14,22,48,.22)}
.qlt-brand b{display:block;font-size:16.5px;line-height:1.2;font-weight:800}
.qlt-brand small{display:block;font-size:12.5px;opacity:.86;margin-top:1px}
.qlt-brand img.custom{padding:0}
.qlt-brand .qlt-grow{flex:1;min-width:0}
.qlt-brand .qlt-grow b{white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.qlt-iconbtn{width:40px;height:40px;border-radius:13px;border:1px solid rgba(255,255,255,.28);background:rgba(255,255,255,.14);color:#fff;display:grid;place-items:center;cursor:pointer}
.qlt-iconbtn:active{background:rgba(255,255,255,.28)}
.qlt-iconbtn.spin svg{animation:qlt-rot .8s linear infinite}
.qlt-hero h1{position:relative;margin:20px 0 5px;font-size:26px;line-height:1.18;font-weight:800;letter-spacing:-.2px}
.qlt-hero p{position:relative;margin:0;max-width:30em;font-size:14px;line-height:1.45;opacity:.92}
.qlt-stats{position:relative;display:flex;gap:10px;margin-top:16px}
.qlt-stat{flex:1;min-width:0;display:flex;align-items:center;gap:10px;padding:10px 12px;border-radius:16px;background:rgba(255,255,255,.14);border:1px solid rgba(255,255,255,.22);text-align:left;color:#fff;cursor:pointer}
.qlt-stat:active{background:rgba(255,255,255,.24)}
.qlt-stat strong{font-size:24px;line-height:1;font-weight:800;font-variant-numeric:tabular-nums}
.qlt-stat span{font-size:12.5px;line-height:1.25;opacity:.92}
.qlt-stat i{width:9px;height:9px;border-radius:50%;flex:none}
.qlt-stat.v i{background:#6FE0A0;box-shadow:0 0 0 3px rgba(111,224,160,.28)}
.qlt-stat.e i{background:#FFC862;box-shadow:0 0 0 3px rgba(255,200,98,.28)}

/* ---- Tìm kiếm ---- */
.qlt-search{margin:-27px 16px 0;position:relative;z-index:2}
.qlt-search label{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0)}
.qlt-search svg{position:absolute;left:16px;top:50%;transform:translateY(-50%);color:var(--qlt-b);pointer-events:none}
.qlt-search input{width:100%;height:54px;border:1px solid #E7ECF3;border-radius:27px;background:#fff;padding:0 46px 0 46px;font-size:16px;
  box-shadow:0 10px 28px rgba(24,48,90,.18);outline:none}
.qlt-search input:focus{border-color:var(--qlt-b);box-shadow:0 10px 28px rgba(24,48,90,.18),0 0 0 3px rgba(47,88,210,.18)}
.qlt-search input::placeholder{color:#8A95B3}
.qlt-search .qlt-clear{position:absolute;right:6px;top:50%;transform:translateY(-50%);width:42px;height:42px;border:0;background:none;color:var(--qlt-mu);display:none;place-items:center;cursor:pointer}
.qlt-search.has .qlt-clear{display:grid}

/* ---- Nổi bật ---- */
.qlt-sechead{display:flex;align-items:baseline;justify-content:space-between;gap:10px;padding:22px 18px 10px}
.qlt-sechead h2{margin:0;font-size:18px;line-height:1.2;font-weight:800;white-space:nowrap}
.qlt-sechead span{font-size:12.5px;color:var(--qlt-mu)}
.qlt-feats{display:flex;gap:12px;overflow-x:auto;scrollbar-width:none;padding:2px 18px 22px;margin-bottom:-14px;scroll-snap-type:x mandatory;scroll-padding:0 18px;-webkit-overflow-scrolling:touch}
.qlt-feats::-webkit-scrollbar{display:none}
.qlt-feat{flex:none;width:min(248px,72vw);scroll-snap-align:start;position:relative;overflow:hidden;text-align:left;border:0;cursor:pointer;color:#fff;border-radius:24px;padding:16px 16px 14px;
  background:linear-gradient(150deg,var(--qlt-ok1),var(--qlt-ok2));box-shadow:0 10px 22px rgba(23,102,60,.28)}
.qlt-feat.e{background:linear-gradient(150deg,var(--qlt-wn1),var(--qlt-wn2));box-shadow:0 10px 22px rgba(199,119,0,.26)}
.qlt-feat::after{content:"";position:absolute;right:-30px;top:-30px;width:120px;height:120px;border-radius:50%;background:rgba(255,255,255,.12)}
.qlt-feat-no{position:relative;display:flex;align-items:baseline;gap:6px;font-weight:800}
.qlt-feat-no small{font-size:12.5px;font-weight:700;opacity:.85}
.qlt-feat-no b{font-size:34px;line-height:1;letter-spacing:-.5px}
.qlt-feat-pr{position:relative;margin-top:10px;font-size:20px;font-weight:800;font-variant-numeric:tabular-nums}
.qlt-feat-pr small{font-size:12.5px;font-weight:600;opacity:.9}
.qlt-feat-loc{position:relative;margin-top:10px;padding-top:10px;border-top:1px solid rgba(255,255,255,.28);font-size:13px;line-height:1.35}
.qlt-feat-loc b{display:block;font-weight:700;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.qlt-feat-loc span{display:block;opacity:.88;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}

/* ---- Bộ lọc ---- */
.qlt-bar{padding:6px 0 0}
.qlt-seg{display:flex;gap:8px;overflow-x:auto;scrollbar-width:none;padding:2px 18px 12px;margin-bottom:-8px;scroll-snap-type:x proximity;scroll-padding:0 18px}
.qlt-seg::-webkit-scrollbar{display:none}
.qlt-chip{flex:none;display:flex;align-items:center;gap:7px;height:42px;padding:0 14px;border-radius:21px;border:1px solid #E7ECF3;background:#fff;
  font-weight:700;font-size:14px;color:var(--qlt-mu);cursor:pointer;scroll-snap-align:start;white-space:nowrap;box-shadow:0 2px 8px rgba(24,48,90,.06)}
.qlt-chip em{font-style:normal;font-size:12px;font-weight:800;min-width:22px;height:22px;border-radius:11px;display:grid;place-items:center;padding:0 6px;background:var(--qlt-bg);color:var(--qlt-mu)}
.qlt-chip[aria-pressed="true"]{background:var(--qlt-b);border-color:var(--qlt-b);color:#fff;box-shadow:0 6px 14px rgba(47,88,210,.32)}
.qlt-chip[aria-pressed="true"] em{background:rgba(255,255,255,.22);color:#fff}
.qlt-chip.sm{height:34px;padding:0 12px;font-size:13px;border-radius:17px;box-shadow:none;background:#E9EEFA;border-color:transparent;color:#3B4668}
.qlt-chip.sm[aria-pressed="true"]{background:#16203A;border-color:#16203A;color:#fff;box-shadow:none}
.qlt-seg.second{margin-top:2px}
.qlt-sep{flex:none;width:1px;margin:6px 2px;background:var(--qlt-ln)}
.qlt-meta{display:flex;align-items:center;justify-content:space-between;gap:10px;margin:14px 18px 0}
.qlt-count{font-size:13.5px;color:var(--qlt-mu)}
.qlt-count b{color:var(--qlt-tx);font-size:15px}
.qlt-sort{position:relative}
.qlt-sort select{appearance:none;-webkit-appearance:none;height:36px;border:1px solid #E7ECF3;background:#fff;border-radius:18px;padding:0 30px 0 13px;font-size:13.5px;font-weight:700;color:var(--qlt-tx)}
.qlt-sort svg{position:absolute;right:11px;top:50%;transform:translateY(-50%);pointer-events:none;color:var(--qlt-mu)}

/* ---- Thẻ phòng ---- */
.qlt-list{padding:10px 16px 0;display:grid;gap:14px}
.qlt-card{position:relative;background:var(--qlt-card);border-radius:26px;box-shadow:var(--qlt-shadow);overflow:hidden;border:1px solid #E9EEF8}
.qlt-card-main{display:block;width:100%;text-align:left;border:0;background:none;padding:16px 16px 14px;cursor:pointer}
.qlt-card-main:active{background:#F8FAFF}
.qlt-top{display:flex;gap:14px;align-items:stretch}
.qlt-info{flex:1;min-width:0;display:flex;flex-direction:column;justify-content:center;padding-right:34px}

/* Biển số phòng: điểm nhấn nhận diện */
.qlt-plate{flex:none;width:76px;min-height:84px;border-radius:20px;color:#fff;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:2px;position:relative;
  background:linear-gradient(150deg,var(--qlt-ok1),var(--qlt-ok2));box-shadow:inset 0 0 0 3px rgba(255,255,255,.2),0 6px 14px rgba(23,102,60,.28)}
.qlt-plate.e{background:linear-gradient(150deg,var(--qlt-wn1),var(--qlt-wn2));box-shadow:inset 0 0 0 3px rgba(255,255,255,.22),0 6px 14px rgba(199,119,0,.26)}
.qlt-plate small{font-size:11.5px;font-weight:700;opacity:.88;line-height:1}
.qlt-plate b{font-size:28px;line-height:1.05;font-weight:800;letter-spacing:-.4px;max-width:68px;overflow:hidden;text-overflow:clip;white-space:nowrap}
.qlt-plate b.m{font-size:22px}.qlt-plate b.l{font-size:17px}
.qlt-plate span{margin-top:3px;font-size:11px;font-weight:700;line-height:1;padding:3px 7px;border-radius:9px;background:rgba(255,255,255,.2)}
.qlt-price{font-size:23px;line-height:1.12;font-weight:800;color:var(--qlt-bd);font-variant-numeric:tabular-nums;letter-spacing:-.2px}
.qlt-price small{font-size:13px;font-weight:600;color:var(--qlt-mu);letter-spacing:0}
.qlt-badge{align-self:flex-start;display:inline-flex;align-items:center;gap:6px;height:26px;margin-top:7px;padding:0 11px;border-radius:13px;font-size:12.5px;font-weight:800;white-space:nowrap}
.qlt-badge i{width:7px;height:7px;border-radius:50%;background:currentColor}
.qlt-badge.vacant{background:var(--qlt-okbg);color:var(--qlt-ok)}
.qlt-badge.expiring{background:var(--qlt-warnbg);color:var(--qlt-warn)}
.qlt-tags{display:flex;flex-wrap:wrap;gap:6px;margin-top:13px}
.qlt-tag{display:inline-flex;align-items:center;height:27px;padding:0 10px;border-radius:14px;background:var(--qlt-bg);font-size:12.5px;font-weight:600;color:#3B4668}
.qlt-until{margin-top:12px;padding:10px 12px;border-radius:14px;background:#FFF8E8}
.qlt-until p{display:flex;justify-content:space-between;gap:8px;margin:0 0 7px;font-size:12.5px;font-weight:700;color:var(--qlt-warn)}
.qlt-until p span{font-weight:600;color:#7A6A45}
.qlt-until div{height:6px;border-radius:3px;background:#F6E2B8;overflow:hidden}
.qlt-until div i{display:block;height:100%;border-radius:3px;background:linear-gradient(90deg,var(--qlt-wn1),var(--qlt-wn2))}
.qlt-loc{display:flex;gap:9px;margin-top:13px;font-size:13.5px;line-height:1.4;color:#3B4668}
.qlt-loc svg{margin-top:2px;color:var(--qlt-b)}
.qlt-loc b{display:block;color:var(--qlt-tx);font-weight:700}
.qlt-fav{position:absolute;top:10px;right:10px;z-index:2;width:42px;height:42px;border:0;border-radius:50%;background:transparent;color:#9AA5C2;display:grid;place-items:center;cursor:pointer}
.qlt-fav:active{background:var(--qlt-bg)}
.qlt-fav[aria-pressed="true"]{color:var(--qlt-heart)}
.qlt-fav[aria-pressed="true"] svg{fill:currentColor}
.qlt-fav.pop svg{animation:qlt-pop .32s cubic-bezier(.3,1.6,.5,1)}
.qlt-foot{display:flex;align-items:center;gap:10px;padding:11px 16px 13px;border-top:1px solid var(--qlt-ln);background:#FAFBFF}
.qlt-av{flex:none;width:38px;height:38px;border-radius:50%;background:linear-gradient(140deg,#6D8BEA,#2F58D2);color:#fff;font-weight:800;font-size:15px;display:grid;place-items:center}
.qlt-who{flex:1;min-width:0;font-size:12.5px;color:var(--qlt-mu);line-height:1.3}
.qlt-who b{display:block;color:var(--qlt-tx);font-size:14px;font-weight:700;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.qlt-act{display:flex;gap:8px}
.qlt-btn{display:inline-flex;align-items:center;justify-content:center;gap:7px;height:42px;min-width:46px;padding:0 15px;border-radius:21px;border:0;font-weight:800;font-size:14px;cursor:pointer}
.qlt-btn.call{background:var(--qlt-b);color:#fff;box-shadow:0 6px 14px rgba(47,88,210,.3)}
.qlt-btn.call:active{background:var(--qlt-bd)}
.qlt-btn.zalo{background:#E8F0FF;color:var(--qlt-bd)}
.qlt-btn.ghost{background:#fff;border:1px solid #D9E1F3;color:var(--qlt-tx)}
.qlt-btn[aria-disabled="true"]{opacity:.45;pointer-events:none}
.qlt-more{display:block;margin:18px auto 0;height:48px;padding:0 28px;border-radius:24px;border:1.5px solid var(--qlt-b);background:#fff;color:var(--qlt-b);font-weight:800;cursor:pointer}
.qlt-more:active{background:#EEF3FF}

/* ---- Trạng thái rỗng / lỗi / skeleton ---- */
.qlt-state{margin:26px 16px 0;padding:34px 22px;background:#fff;border-radius:26px;text-align:center;box-shadow:var(--qlt-shadow)}
.qlt-state .ic{width:68px;height:68px;border-radius:50%;background:#EAF0FF;display:grid;place-items:center;margin:0 auto 14px;color:var(--qlt-b)}
.qlt-state h2{margin:0 0 6px;font-size:18px}
.qlt-state p{margin:0 0 18px;font-size:14px;line-height:1.5;color:var(--qlt-mu)}
.qlt-state .qlt-btn{margin:0 auto}
.qlt-sk{background:#fff;border-radius:26px;padding:16px;display:grid;grid-template-columns:76px 1fr;gap:10px 14px;box-shadow:var(--qlt-shadow)}
.qlt-sk i{display:block;height:14px;border-radius:7px;background:linear-gradient(90deg,#EAEFFA 25%,#F6F8FD 50%,#EAEFFA 75%);background-size:200% 100%;animation:qlt-sh 1.3s ease-in-out infinite}
.qlt-sk i:nth-child(1){grid-row:span 3;height:84px;border-radius:20px}
.qlt-sk i:nth-child(2){width:62%;height:22px;align-self:end}.qlt-sk i:nth-child(3){width:38%}.qlt-sk i:nth-child(4){grid-column:1/-1;height:40px;border-radius:14px}
.qlt-offline{margin:14px 16px 0;padding:11px 14px;border-radius:16px;background:var(--qlt-warnbg);color:var(--qlt-warn);font-size:13px;display:none}
.qlt-offline.show{display:block}
.qlt-updated{display:none!important;margin:0;padding:0;height:0}   /* ẩn dòng "Cập nhật lúc …" */

/* ---- Bảng chi tiết ---- */
.qlt-sheet-bg{position:fixed;inset:0;background:rgba(14,22,48,.5);opacity:0;pointer-events:none;transition:opacity .22s;z-index:40}
.qlt-sheet-bg.show{opacity:1;pointer-events:auto}
.qlt-sheet{position:fixed;left:0;right:0;bottom:0;z-index:41;background:#fff;border-radius:26px 26px 0 0;max-height:90vh;max-height:90dvh;display:flex;flex-direction:column;box-shadow:0 -10px 40px rgba(0,0,0,.2);
  transform:translateY(102%);transition:transform .28s cubic-bezier(.2,.8,.2,1);padding-bottom:env(safe-area-inset-bottom,0px);visibility:hidden}
.qlt-sheet.show{transform:none;visibility:visible}
.qlt-grab{width:42px;height:5px;border-radius:3px;background:#D3DAEC;margin:10px auto 4px;flex:none}
.qlt-sheet-head{display:flex;align-items:center;gap:14px;padding:10px 16px 12px}
.qlt-sheet-head .qlt-plate{width:66px;min-height:72px;border-radius:18px}
.qlt-sheet-head .qlt-plate b{font-size:24px}.qlt-sheet-head .qlt-plate b.m{font-size:19px}.qlt-sheet-head .qlt-plate b.l{font-size:15px}
.qlt-sheet-ttl{flex:1;min-width:0}
.qlt-sheet-ttl h2{margin:0;font-size:20px;line-height:1.2}
.qlt-sheet-ttl .qlt-price{margin-top:3px;font-size:19px}
.qlt-sheet-head .qlt-iconbtn{align-self:flex-start;background:#EEF2FB;border-color:transparent;color:#16203A}
.qlt-sheet-body{overflow:auto;padding:0 16px 8px;-webkit-overflow-scrolling:touch}
.qlt-sheet-body>.qlt-badge{margin-top:0}
.qlt-kv{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin:12px 0 14px}
.qlt-kv div{background:var(--qlt-bg);border-radius:16px;padding:11px 13px}
.qlt-kv span{display:block;font-size:12px;color:var(--qlt-mu)}
.qlt-kv b{display:block;margin-top:2px;font-size:15px}
.qlt-sec{margin:16px 0 6px;font-size:15px;font-weight:800;color:var(--qlt-tx)}
.qlt-note{font-size:14px;line-height:1.55;color:#2B3555;white-space:pre-line}
.qlt-sheet-act{display:flex;gap:10px;padding:12px 16px 14px;border-top:1px solid var(--qlt-ln)}
.qlt-sheet-act .qlt-btn{flex:1;height:50px;font-size:15px;border-radius:25px}
.qlt-sheet-act .qlt-btn.share{flex:none;width:50px;padding:0}

/* ---- Thanh tab nổi (giống thanh tab Trang chủ) ---- */
.qlt-tabs{position:fixed;left:0;right:0;bottom:0;z-index:30;display:flex;padding:6px 8px calc(6px + env(safe-area-inset-bottom,0px));
  background:rgba(255,255,255,.98);backdrop-filter:saturate(1.4) blur(12px);-webkit-backdrop-filter:saturate(1.4) blur(12px);
  border-top:1px solid #E7ECF3;border-radius:0;box-shadow:0 -4px 18px rgba(24,48,90,.07)}
.qlt-tab{flex:1;height:calc(var(--qlt-tab-h) - 12px);display:flex;flex-direction:column;align-items:center;justify-content:center;gap:3px;font-size:11.5px;font-weight:600;color:#7D8796;background:none;border:0;border-radius:12px;cursor:pointer}
.qlt-tab[aria-current="page"]{color:var(--qlt-b);background:none;font-weight:800}
.qlt-tab[aria-current="page"] svg{stroke-width:2.2}
.qlt-tab:active{background:none;opacity:.7}

@keyframes qlt-rot{to{transform:rotate(360deg)}}
@keyframes qlt-sh{to{background-position:-200% 0}}
@keyframes qlt-pop{50%{transform:scale(1.35)}}
@keyframes qlt-in{from{opacity:0;transform:translateY(12px)}to{opacity:1;transform:none}}
.qlt-list.first .qlt-card{animation:qlt-in .42s cubic-bezier(.2,.8,.2,1) both}
.qlt-list.first .qlt-card:nth-child(2){animation-delay:.07s}.qlt-list.first .qlt-card:nth-child(3){animation-delay:.14s}
.qlt-list.first .qlt-card:nth-child(n+4){animation-delay:.2s}
@media (min-width:720px) and (pointer:fine){
  .qlt-root{max-width:560px;margin:0 auto;box-shadow:0 0 0 1px var(--qlt-ln)}
  .qlt-tabs{left:50%;right:auto;width:560px;transform:translateX(-50%)}
  .qlt-sheet{max-width:560px;margin:0 auto}
}
@media (max-width:360px){.qlt-sechead span{display:none}}
@media (max-width:340px){
  .qlt-plate{width:66px}.qlt-hero h1{font-size:23px}.qlt-stat strong{font-size:21px}
}
@media (prefers-reduced-motion:reduce){.qlt-root *{animation:none!important;transition:none!important}}

/* Ẩn nút xoá mặc định của trình duyệt (đã có nút xoá riêng) */
.qlt-search input::-webkit-search-cancel-button,.qlt-search input::-webkit-search-decoration{-webkit-appearance:none;appearance:none;display:none}

/* ---- Banner (dùng chung ảnh banner Trang chủ web app) ---- */
.qlt-hero.has-banner{padding-top:0;background:linear-gradient(180deg,#58B3F0 0,#2F8DE8 38%,#2442A0 100%)}
.qlt-banner{position:relative;margin:0 -18px;padding-top:env(safe-area-inset-top,0px);aspect-ratio:1182/476;background:center top/cover no-repeat;
  -webkit-mask-image:linear-gradient(#000 82%,transparent);mask-image:linear-gradient(#000 82%,transparent)}
.qlt-hero.has-banner .qlt-brand{position:absolute;right:14px;top:calc(env(safe-area-inset-top,0px) + 10px);z-index:3}
.qlt-hero.has-banner .qlt-brand img,.qlt-hero.has-banner .qlt-brand .qlt-grow{display:none}
.qlt-hero.has-banner h1{margin-top:6px}
.qlt-hero.has-banner .qlt-hero-art{display:none}
/* ---- Ảnh phòng: slide vuông 600x600 ---- */
.qlt-gal{position:relative;width:100%;max-width:600px;margin:0 auto;aspect-ratio:1/1;background:#E9EEFA;overflow:hidden}
.qlt-card .qlt-gal{border-radius:26px 26px 0 0}
.qlt-sheet-body .qlt-gal{border-radius:20px;margin-bottom:14px}
.qlt-slides{display:flex;width:100%;height:100%;overflow-x:auto;scroll-snap-type:x mandatory;scrollbar-width:none;-webkit-overflow-scrolling:touch}
.qlt-slides::-webkit-scrollbar{display:none}
.qlt-slide{flex:0 0 100%;height:100%;scroll-snap-align:center;cursor:pointer}
.qlt-slide img{display:block;width:100%;height:100%;object-fit:cover}
.qlt-gnav{position:absolute;top:50%;transform:translateY(-50%);width:38px;height:38px;border-radius:50%;border:0;background:rgba(255,255,255,.88);color:#16203A;display:grid;place-items:center;cursor:pointer;box-shadow:0 2px 8px rgba(14,22,48,.25)}
.qlt-gnav.prev{left:10px}.qlt-gnav.next{right:10px}
.qlt-dots{position:absolute;left:0;right:0;bottom:10px;display:flex;justify-content:center;gap:6px;pointer-events:none}
.qlt-dots i{width:7px;height:7px;border-radius:50%;background:rgba(255,255,255,.6);box-shadow:0 0 0 1px rgba(14,22,48,.18)}
.qlt-dots i.on{background:#fff;width:18px;border-radius:4px}
.qlt-gcount{position:absolute;right:10px;bottom:10px;padding:3px 9px;border-radius:12px;background:rgba(14,22,48,.6);color:#fff;font-size:12px;font-weight:700}
.qlt-dots{bottom:14px}.qlt-gcount{top:10px;bottom:auto;right:56px}

/* ---- Ảnh phòng responsive: co giãn theo bề rộng màn hình, luôn vuông, không tràn ---- */
.qlt-gal{width:100%;max-width:min(600px,100%);max-height:78vh;max-height:78dvh}
.qlt-gal::before{content:"";display:block;padding-top:100%}                     /* dự phòng cho trình duyệt cũ chưa có aspect-ratio */
@supports (aspect-ratio:1/1){.qlt-gal::before{display:none}}
.qlt-gal .qlt-slides{position:absolute;inset:0}
.qlt-slide img{max-width:100%}
@media (max-width:360px){.qlt-gnav{width:32px;height:32px}.qlt-gnav.prev{left:6px}.qlt-gnav.next{right:6px}.qlt-gcount{right:48px;font-size:11px}}
@media (orientation:landscape) and (max-height:520px) and (min-width:560px){.qlt-gal{width:min(100%,70vh);max-height:none}}
@media (min-width:700px){.qlt-list{grid-template-columns:repeat(auto-fill,minmax(300px,1fr))}.qlt-card .qlt-gal{max-width:none}}

/* ---- Thanh tab dưới cố định chuẩn app: trang đứng yên, phần danh sách cuộn bên trong ---- */
html:has(.qlt-root),html:has(.qlt-root) body{height:100%;margin:0;overflow:hidden}
.qlt-root{position:fixed;inset:0;height:100%;min-height:0;overflow-y:auto;overflow-x:hidden;-webkit-overflow-scrolling:touch;overscroll-behavior:contain}
.qlt-tabs{position:fixed;transform:translate3d(0,0,0);-webkit-transform:translate3d(0,0,0);will-change:transform}
@media (min-width:700px) and (pointer:fine){.qlt-tabs{transform:translate3d(-50%,0,0)}}

/* ---- Chi tiết phòng: thông tin đầy đủ theo nhóm + tiện nghi ---- */
.qlt-sheet-body .qlt-sec:first-of-type{margin-top:14px}
.qlt-kv{margin:8px 0 6px}
.qlt-amen{display:flex;flex-wrap:wrap;gap:8px;margin-top:2px}
.qlt-amen .qlt-tag{height:32px;padding:0 13px;font-size:13px}
.qlt-tag.yes{background:var(--qlt-okbg);color:var(--qlt-ok)}
.qlt-tag.no{background:#FDECEA;color:var(--qlt-er)}

/* ---- Ảnh phòng: slide điện thoại mượt hơn (tối đa 5 ảnh) ---- */
.qlt-slides{overscroll-behavior-x:contain}
.qlt-slide{scroll-snap-stop:always}
.qlt-slide img{-webkit-user-drag:none;user-select:none;-webkit-touch-callout:none}
@media (hover:none){.qlt-gnav{display:none}}                       /* cảm ứng: vuốt ngang, không cần nút mũi tên */

/* ---- Ảnh phòng trên Web/Desktop: 1 ảnh lớn bên trái + tối đa 4 ảnh nhỏ bên phải (ảnh vuông 600x600 nên tỉ lệ 2:1 là cân đối) ---- */
.qlt-gg{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:8px;aspect-ratio:2/1;margin-bottom:14px;border-radius:20px;overflow:hidden;background:#E9EEFA}
.qlt-gmain{min-width:0;min-height:0;overflow:hidden;background:#E9EEFA}
.qlt-gside{min-width:0;min-height:0;display:grid;grid-template-columns:1fr 1fr;grid-template-rows:1fr 1fr;gap:8px}
.qlt-gg img{display:block;width:100%;height:100%;object-fit:cover;user-select:none}
.qlt-gthumb{min-width:0;min-height:0;padding:0;border:0;background:#E9EEFA;overflow:hidden;cursor:pointer;position:relative;transition:filter .15s,transform .15s}
.qlt-gthumb:hover{filter:brightness(1.07)}
.qlt-gthumb:hover img{transform:scale(1.04)}
.qlt-gthumb img{transition:transform .25s}
.qlt-gthumb:focus-visible{outline-offset:-3px}
.qlt-gmain img.fade{animation:qlt-gfade .28s ease both}
@keyframes qlt-gfade{from{opacity:.25;transform:scale(1.02)}to{opacity:1;transform:none}}
.qlt-gg.n1{grid-template-columns:minmax(0,1fr);aspect-ratio:1/1;max-width:min(100%,520px);margin-left:auto;margin-right:auto}
.qlt-gg.n2 .qlt-gside{grid-template-columns:1fr;grid-template-rows:1fr}
.qlt-gg.n3 .qlt-gside{grid-template-columns:1fr}
.qlt-gg.n4 .qlt-gside .qlt-gthumb:first-child{grid-column:1/-1}

/* Chi tiết phòng trên Web/Desktop: hộp thoại rộng ở giữa màn hình thay cho bảng trượt từ đáy */
@media (min-width:900px) and (pointer:fine){
  .qlt-sheet{left:50%;right:auto;top:50%;bottom:auto;width:min(980px,94vw);max-width:none;margin:0;max-height:90vh;border-radius:26px;padding-bottom:0;
    opacity:0;transform:translate(-50%,-46%) scale(.98);transition:transform .24s cubic-bezier(.2,.8,.2,1),opacity .2s,visibility .2s}
  .qlt-sheet.show{opacity:1;transform:translate(-50%,-50%)}
  .qlt-grab{display:none}
  .qlt-sheet-head{padding:18px 22px 12px}
  .qlt-sheet-body{padding:0 22px 10px}
  .qlt-sheet-act{padding:14px 22px 16px}
  .qlt-kv{grid-template-columns:repeat(3,minmax(0,1fr))}
}

/* Tiện nghi & Quy định: icon + "Tên: 01" đồng bộ với app quản lý */
.qlt-amen{gap:8px}
.qlt-amen .qlt-tag.qlt-am{height:auto;min-height:34px;padding:6px 13px 6px 10px;gap:7px;border-radius:17px;border:1px solid var(--qlt-ln,#E4E8F2);font-size:13px;font-weight:500;line-height:1.3;color:#3B4668}
.qlt-am .qlt-ami{flex:0 0 17px;color:var(--qlt-ok,#1F8A52)}
.qlt-am .qlt-am-t{min-width:0;overflow-wrap:anywhere}
.qlt-am em{font-style:normal}
.qlt-am b{font-weight:800;color:var(--qlt-tx,#1B2440);font-variant-numeric:tabular-nums}
.qlt-tag.yes .qlt-ami,.qlt-tag.no .qlt-ami{color:inherit}
.qlt-tag.yes{border-color:transparent!important}.qlt-tag.no{border-color:transparent!important}

/* ==== Tên tin "Cho thuê …" (thẻ + chi tiết) ==== */
.qlt-ttl{margin:0 0 4px;font-size:17px;line-height:1.28;font-weight:800;color:var(--qlt-bd);letter-spacing:-.15px;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;overflow-wrap:anywhere}
.qlt-info .qlt-price{font-size:19px;margin-bottom:6px}
.qlt-tags:empty{display:none}
.qlt-sheet-ttl h2{font-size:19px;line-height:1.28;overflow-wrap:anywhere}

/* ==== Head: màu nền và logo chỉnh trong admin ==== */
.qlt-hero.has-hcolor{background:linear-gradient(150deg,var(--qlt-hc1),var(--qlt-hc2))}
.qlt-hero.has-banner.has-hcolor{background:linear-gradient(180deg,var(--qlt-hc1) 0,var(--qlt-hc2) 100%)}
.qlt-hero.has-logo .qlt-brand img{display:block;width:auto;height:44px;max-width:150px;padding:5px 9px;object-fit:contain;border-radius:13px;background:#fff}
.qlt-hero.has-banner.has-logo .qlt-brand{left:14px;right:14px;justify-content:space-between}

/* ==== Web máy tính: khung KHÔNG full màn hình, chiều rộng chỉnh trong admin (--qlt-w) ==== */
@media (min-width:900px) and (pointer:fine){
  html:has(.qlt-root.qlt-framed),html:has(.qlt-root.qlt-framed) body{background:#E3E9F5!important}
  .qlt-root.qlt-framed{--qlt-fw:min(var(--qlt-w,1100px),calc(100vw - 48px));--qlt-gx:32px;
    inset:18px auto 0 max(24px,calc((100vw - var(--qlt-fw))/2));width:var(--qlt-fw);height:auto;
    border-radius:28px 28px 0 0;box-shadow:0 0 0 1px rgba(31,58,148,.08),0 22px 60px rgba(24,48,90,.20)}
  .qlt-framed .qlt-banner{height:clamp(220px,calc(var(--qlt-fw) * .3),420px)}
  .qlt-framed .qlt-hero{border-radius:0 0 32px 32px}
  .qlt-framed .qlt-hero h1{font-size:34px}
  .qlt-sheet{width:min(980px,calc(var(--qlt-fw,100vw) - 32px),94vw)}
  .qlt-hero.has-banner.has-logo .qlt-brand{left:auto;right:var(--qlt-gx);gap:12px;justify-content:flex-end}
}

/* chỉnh sau xem thử: tên tin màu tối (khác màu giá); head không ảnh trên máy tính: logo nằm góc phải, không đè thanh tab */
.qlt-ttl{color:var(--qlt-tx)}
@media (min-width:900px) and (pointer:fine){
  .qlt-hero:not(.has-banner){padding-top:84px}
  .qlt-hero:not(.has-banner) .qlt-brand{position:absolute;right:var(--qlt-gx);top:18px;left:auto;gap:12px}
  .qlt-hero:not(.has-banner) .qlt-brand .qlt-grow{text-align:right}
}

/* ==== Logo đầu trang: chỉ hiện nguyên logo (không nền / khung trắng) ==== */
.qlt-hero.has-logo .qlt-brand img{display:block;width:auto;height:46px;max-width:170px;padding:0;object-fit:contain;border-radius:0;background:none;box-shadow:none;filter:drop-shadow(0 1px 4px rgba(10,25,70,.28))}

/* ==== 3 tab: Trang chủ · Tin phòng · Quản lý ==== */
.qlt-root[data-view="home"] #qlSearch,.qlt-root[data-view="home"] #qlFeat,.qlt-root[data-view="home"] .qlt-bar,.qlt-root[data-view="home"] #qlBody,
.qlt-root[data-view="home"] #qlUpd,.qlt-root[data-view="home"] #qlOwnBar,.qlt-root[data-view="list"] #qlHome{display:none}
.qlt-hq{display:grid;grid-template-columns:1fr 1fr;gap:12px;margin:18px var(--qlt-gx,16px) 0}
.qlt-hcard{display:flex;flex-direction:column;align-items:flex-start;gap:2px;padding:16px;border:0;border-radius:24px;color:#fff;text-align:left;cursor:pointer;
  background:linear-gradient(150deg,var(--qlt-ok1),var(--qlt-ok2));box-shadow:0 10px 22px rgba(23,102,60,.26)}
.qlt-hcard.e{background:linear-gradient(150deg,var(--qlt-wn1),var(--qlt-wn2));box-shadow:0 10px 22px rgba(199,119,0,.24)}
.qlt-hcard b{font-size:34px;line-height:1.05;font-weight:800}.qlt-hcard span{font-size:13.5px;font-weight:700;opacity:.95}
.qlt-hcard em{display:inline-flex;align-items:center;gap:2px;margin-top:8px;font-style:normal;font-size:12.5px;font-weight:700;opacity:.9}
.qlt-promo{display:flex;align-items:flex-end;width:calc(100% - 2 * var(--qlt-gx,16px));height:150px;margin:14px var(--qlt-gx,16px) 0;padding:0;border:0;border-radius:26px;overflow:hidden;cursor:pointer;
  background:center/cover no-repeat;color:#fff;text-align:left;box-shadow:var(--qlt-shadow)}
.qlt-promo span{display:block;width:100%;padding:34px 18px 14px;font-size:13px;background:linear-gradient(transparent,rgba(12,28,80,.72))}
.qlt-promo b{display:block;font-size:19px;font-weight:800;margin-bottom:2px}
.qlt-home .qlt-sechead{padding-left:var(--qlt-gx,18px);padding-right:var(--qlt-gx,18px)}
.qlt-steps{display:grid;gap:10px;margin:0 var(--qlt-gx,16px)}
.qlt-steps>div{display:grid;grid-template-columns:34px 1fr;column-gap:12px;align-items:center;padding:13px 14px;background:#fff;border:1px solid #E9EEF8;border-radius:20px;box-shadow:0 2px 10px rgba(24,48,90,.05)}
.qlt-steps i{grid-row:1 / 3;width:34px;height:34px;border-radius:50%;display:grid;place-items:center;font-style:normal;font-weight:800;color:#fff;background:var(--qlt-b)}
.qlt-steps b{font-size:14.5px}.qlt-steps span{font-size:12.5px;color:var(--qlt-mu)}
.qlt-hmanage{display:flex;align-items:center;gap:12px;margin:16px var(--qlt-gx,16px) 0;padding:15px 16px;border-radius:22px;background:#EAF0FF;color:var(--qlt-bd);text-decoration:none}
.qlt-hmanage span{flex:1;font-size:12.5px;color:var(--qlt-mu);line-height:1.35}.qlt-hmanage b{display:block;font-size:15px;color:var(--qlt-tx)}
@media (min-width:900px) and (pointer:fine){.qlt-steps{grid-template-columns:repeat(3,1fr)}.qlt-hq{max-width:640px}}

/* ==== Lọc theo chủ trọ ==== */
.qlt-ownchip{display:flex;align-items:center;justify-content:space-between;gap:10px;margin:14px var(--qlt-gx,16px) 0;padding:10px 12px 10px 16px;border-radius:18px;background:#EAF0FF;font-size:13.5px;color:var(--qlt-mu)}
.qlt-ownchip b{color:var(--qlt-tx)}.qlt-ownchip button{border:0;background:var(--qlt-b);color:#fff;font-weight:700;font-size:12.5px;height:30px;padding:0 13px;border-radius:15px;cursor:pointer}

/* ==== Chi tiết phòng: biểu đồ giá /m² (xem thử, khoá "Mở App") ==== */
.qlt-chart{position:relative;margin-top:8px;border:1px solid var(--qlt-ln);border-radius:20px;background:#fff;overflow:hidden;padding:30px 6px 4px}
.qlt-unit{position:absolute;left:14px;top:9px;font-size:12px;color:var(--qlt-mu)}
.qlt-chart-svg{pointer-events:none;user-select:none}
.qlt-chart-lock{position:absolute;inset:0;display:flex;flex-direction:column;align-items:flex-start;justify-content:center;gap:12px;padding:0 24px}
.qlt-chart-lock p{margin:0;font-size:17px;font-weight:600;color:var(--qlt-tx)}
.qlt-chart-lock .qlt-btn{border-radius:10px;height:46px}
.qlt-legend{display:flex;flex-wrap:wrap;gap:8px 18px;margin:12px 2px 0;font-size:13px;color:var(--qlt-tx)}
.qlt-legend span{display:inline-flex;align-items:center}.qlt-legend i{display:inline-block;width:22px;height:3px;border-radius:2px;margin-right:7px}

/* ==== Báo xấu + thông tin người đăng (kiểu batdongsan) ==== */
.qlt-repbox{display:flex;align-items:center;gap:14px;width:100%;margin:18px 0 0;padding:16px 16px;border:1.5px solid var(--qlt-ln);border-radius:16px;background:#fff;text-align:left;font-size:14px;line-height:1.45;color:var(--qlt-tx);cursor:pointer}
.qlt-repbox svg{flex:none;color:var(--qlt-tx)}.qlt-repbox b{display:inline-flex;align-items:center;font-weight:800}
.qlt-pav{position:relative;flex:none;width:46px;height:46px;border-radius:50%;border:3px solid var(--qlt-b);background:#fff}
.qlt-pav span,.qlt-pav img{display:grid;place-items:center;width:100%;height:100%;border-radius:50%;object-fit:cover;background:linear-gradient(140deg,#6D8BEA,#2F58D2);color:#fff;font-weight:800;font-size:18px}
.qlt-pav .qlt-rib{position:absolute;right:-9px;bottom:-12px;width:19px;height:22px}
.qlt-pav.big{width:82px;height:82px;border:4px solid #fff;box-shadow:0 0 0 1px var(--qlt-ln)}.qlt-pav.big span,.qlt-pav.big img{font-size:30px}.qlt-pav.big .qlt-rib{right:-10px;bottom:-14px;width:30px;height:34px}
.qlt-ownc{margin-top:8px;border-radius:22px;background:linear-gradient(100deg,var(--qlt-b),var(--qlt-bx));padding:0 5px 5px}
.qlt-ownh{height:56px;display:grid;place-items:center;padding-left:0;color:#fff;font-weight:800;font-size:15.5px}
.qlt-ownb{position:relative;margin-top:-6px;padding:14px 14px 16px;border-radius:18px;background:#fff}
.qlt-ownb .qlt-pav.big{position:absolute;left:12px;top:-50px}
.qlt-ownn{min-height:40px;padding-left:96px;font-size:20px;font-weight:800;line-height:1.2;overflow-wrap:anywhere}
.qlt-ownst{display:flex;align-items:center;justify-content:space-around;gap:6px;margin:18px 0 12px;text-align:center}
.qlt-ownst>div{flex:1}.qlt-ownst small{display:block;font-size:13px;color:var(--qlt-mu);line-height:1.35}.qlt-ownst b{display:block;margin-top:8px;font-size:24px;font-weight:800}
.qlt-ownst i{flex:none;width:1px;height:46px;background:var(--qlt-ln)}
.qlt-ownlink{display:flex;align-items:center;justify-content:center;gap:4px;width:100%;margin-top:6px;padding:12px 0 2px;border:0;background:none;font-size:15.5px;font-weight:700;color:var(--qlt-tx);cursor:pointer}

/* ==== Thanh liên hệ dưới chi tiết: avatar · Zalo · Hiện số ==== */
.qlt-bar2{align-items:center;gap:12px}
.qlt-bar2 .qlt-pav{margin-right:2px}
.qlt-sheet-act .qlt-btn.zalo2{flex:none;width:auto;padding:0 18px;border:1.5px solid #D9E1F3;background:#fff;color:var(--qlt-tx);border-radius:14px;gap:9px}
.qlt-btn.zalo2 b{display:grid;place-items:center;width:24px;height:24px;border-radius:7px;background:#0068FF;color:#fff;font-size:14px;font-weight:800}
.qlt-sheet-act .qlt-btn.reveal{border-radius:14px;white-space:nowrap}

/* ==== Hộp báo xấu ==== */
.qlt-sheet-bg#qlRepBg{z-index:44}.qlt-sheet.qlt-rep{z-index:45}
.qlt-reasons{display:flex;flex-wrap:wrap;gap:8px;margin-top:8px}
.qlt-ta,.qlt-in{display:block;width:100%;box-sizing:border-box;margin-top:10px;padding:12px 14px;border:1.5px solid var(--qlt-ln);border-radius:14px;font:inherit;font-size:15px;color:var(--qlt-tx);background:#fff}
.qlt-ta:focus,.qlt-in:focus{outline:0;border-color:var(--qlt-b)}
.qlt-repmsg{min-height:20px;margin:12px 0 0;font-size:13.5px;color:var(--qlt-mu)}.qlt-repmsg.ok{color:var(--qlt-ok);font-weight:700}.qlt-repmsg.err{color:var(--qlt-er)}
.qlt-sub{font-size:13px;color:var(--qlt-mu)}
@media (min-width:900px) and (pointer:fine){.qlt-sheet.qlt-rep{width:min(560px,94vw)}}

/* ==== Avatar chủ trọ có viền của người dùng (khung SVG to hơn ảnh 1/0.68 lần, ảnh nằm giữa lỗ tròn) ==== */
.qlt-pav.fr{width:60px;height:60px;border:0;background:none;box-shadow:none;margin:-6px 0}
.qlt-pav.fr>img:not(.qlt-fr),.qlt-pav.fr>span{position:absolute;left:17.5%;top:17.5%;width:65%;height:65%;font-size:16px}
.qlt-pav.fr .qlt-fr{position:absolute;left:0;top:0;width:100%;height:100%;max-width:none;display:block;border-radius:0;background:none;object-fit:contain}
.qlt-pav.fr .qlt-rib{right:-3px;bottom:-5px;width:16px;height:19px}
.qlt-pav.big.fr{width:98px;height:98px;border:0;box-shadow:none;margin:0}
.qlt-pav.big.fr>span{font-size:26px}
.qlt-pav.big.fr .qlt-rib{right:4px;bottom:-2px;width:26px;height:30px}
.qlt-ownb .qlt-pav.big.fr{left:-2px;top:-60px}

/* ==== So sánh giá khu vực ==== */
.qlt-cmp{display:flex;flex-direction:column;gap:4px;margin-top:8px;padding:14px 16px;border-radius:16px;border:1px solid var(--qlt-ln);background:#fff}
.qlt-cmp b{font-size:16px;line-height:1.3}.qlt-cmp span{font-size:14px;color:var(--qlt-mu);line-height:1.4}.qlt-cmp em{font-style:normal;font-size:13.5px;font-weight:600;color:var(--qlt-tx);margin-top:2px}
.qlt-cmp.good{background:var(--qlt-okbg);border-color:#BFE6CC}.qlt-cmp.good b{color:var(--qlt-ok2)}
.qlt-cmp.fair{background:var(--qlt-bg)}.qlt-cmp.high{background:var(--qlt-warnbg);border-color:#F3D9A4}.qlt-cmp.high b{color:var(--qlt-warn)}
.qlt-hist{margin-top:10px;padding-top:30px}
.qlt-cmpst{display:flex;justify-content:space-around;gap:6px;margin:12px 0 0;text-align:center}.qlt-cmpst>div{flex:1}
.qlt-cmpst small{display:block;font-size:12.5px;color:var(--qlt-mu)}.qlt-cmpst b{display:block;margin-top:4px;font-size:15px}
.qlt-cmpnote{margin:10px 2px 0;font-size:12.5px;color:var(--qlt-mu);line-height:1.45}
.qlt-ai{display:flex;flex-direction:column;gap:4px;margin-top:8px;padding:14px 16px;border-radius:16px;border:1px solid #BFE6CC;background:var(--qlt-okbg)}
.qlt-ai em{font-style:normal;font-size:12px;font-weight:700;color:var(--qlt-ok2)}
.qlt-ai b{font-size:16px;line-height:1.3;color:var(--qlt-ok2)}
.qlt-ai p{margin:0;font-size:14.5px;line-height:1.5;color:var(--qlt-tx)}
.qlt-ai small{margin-top:4px;font-size:12px;color:var(--qlt-mu);line-height:1.4}

/* ==== Chọn khu vực: tỉnh/thành + xã/phường ==== */
.qlt-area{display:flex;gap:8px;margin:0 0 8px}
.qlt-area label{position:relative;flex:1;min-width:0;display:flex;align-items:center}
.qlt-area label svg{position:absolute;left:11px;color:var(--qlt-b);pointer-events:none}
.qlt-area select{width:100%;height:42px;padding:0 28px 0 12px;border:1px solid #E7ECF3;border-radius:14px;background:#fff;color:var(--qlt-tx);font:inherit;font-size:14px;font-weight:600;appearance:none;-webkit-appearance:none;text-overflow:ellipsis;
  background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12' viewBox='0 0 24 24' fill='none' stroke='%235A6585' stroke-width='3' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='m6 9 6 6 6-6'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right 11px center}
.qlt-area label:first-child select{padding-left:32px}
.qlt-area select:disabled{opacity:.55}
.qlt-area select:focus{outline:0;border-color:var(--qlt-b)}

/* ==== Ưu điểm / lưu ý ==== */
.qlt-pts{list-style:none;margin:8px 0 0;padding:0;display:flex;flex-direction:column;gap:8px}
.qlt-pts li{display:flex;gap:10px;align-items:flex-start;padding:11px 13px;border-radius:14px;font-size:14.5px;line-height:1.45}
.qlt-pts li i{flex:none;display:grid;place-items:center;width:22px;height:22px;border-radius:50%;font-style:normal;font-size:13px;font-weight:800;color:#fff;margin-top:1px}
.qlt-pts.pro li{background:var(--qlt-okbg)}.qlt-pts.pro li i{background:var(--qlt-ok1)}
.qlt-pts.con li{background:var(--qlt-warnbg)}.qlt-pts.con li i{background:var(--qlt-wn2)}

/* ---- Khoảng cách chuẩn: khung "Thông tin người đăng" cách thanh nút dưới (Gọi/Zalo/Hiện số) đủ thoáng, không bị dính/chèn vào nhau ---- */
.qlt-sheet-body{padding-bottom:20px}
.qlt-sheet-body>.qlt-ownc{margin-bottom:20px}
.qlt-sheet-act{margin-top:6px;box-shadow:0 -8px 18px -12px rgba(20,32,70,.22)}
@media (min-width:900px) and (pointer:fine){.qlt-sheet-body{padding-bottom:24px}}

/* ---- Biểu đồ: ghim giá + đường mức giá ---- */
.qlt-chart svg{overflow:visible}
.qlt-chart .qlt-pin{filter:drop-shadow(0 2px 3px rgba(20,32,70,.28))}

/* ==== Trang chủ (bản mới theo ảnh mẫu): banner · thẻ tìm kiếm · thống kê · 4 loại phòng · tin đăng nổi bật · tab 5 mục ==== */
.qlt-root[data-view="home"]{background:#fff}
.qlt-root[data-view="home"] .qlt-hero{display:none}
/* ======== TRANG CHỦ (tab Trang chủ) — dàn trang theo ảnh mẫu 1024 đơn vị ngang; 1 đơn vị = --u (theo bề ngang màn hình) ======== */
.qlt-root:has(.qlt-h2){background:#F8FBFE}
.qlt-h2{--g:#1B8F4F;--n:#10285E;--u:calc(min(100vw,560px)/1024);color:var(--qlt-tx);padding-bottom:6px;background:#F8FBFE;font-family:Arial,"Liberation Sans",Helvetica,sans-serif}
.qlt-h2 svg{display:block;flex:none}
.qlt-h2-ban{position:relative;padding-top:env(safe-area-inset-top,0px);background:#F8FBFE;overflow:hidden}
.qlt-h2-ban::before{content:"";position:absolute;left:0;right:0;top:0;height:calc(env(safe-area-inset-top,0px) + 10px);background:linear-gradient(#3C86CC calc(100% - 10px),rgba(60,134,204,0));z-index:1;pointer-events:none}
.qlt-h2-hi{position:relative;height:calc(var(--u)*628)}
.qlt-h2-img{position:absolute;left:0;top:0;width:100%;height:calc(var(--u)*470);object-fit:cover;user-select:none;-webkit-user-drag:none}
.qlt-h2-wave{position:absolute;left:0;top:calc(var(--u)*300);width:100%;height:calc(var(--u)*334);z-index:1;pointer-events:none}
.qlt-h2-ib{position:absolute;z-index:3;display:grid;place-items:center;width:max(40px,calc(var(--u)*60));height:max(40px,calc(var(--u)*60));transform:translate(-50%,-50%);color:#fff;text-decoration:none;top:calc(var(--u)*109)}
.qlt-h2-ib.b{left:calc(var(--u)*890)}
.qlt-h2-ib.u{left:calc(var(--u)*965)}
.qlt-h2-ib svg{width:max(22px,calc(var(--u)*46));height:max(22px,calc(var(--u)*46))}
.qlt-h2-dot{position:absolute;top:50%;left:50%;margin:max(-16px,calc(var(--u)*-34)) 0 0 max(2px,calc(var(--u)*8));width:max(7px,calc(var(--u)*15));height:max(7px,calc(var(--u)*15));border-radius:50%;background:#EF4444;border:1.5px solid #fff}
.qlt-h2-txt{position:absolute;z-index:2;left:calc(var(--u)*88);top:calc(var(--u)*352);right:calc(var(--u)*330)}
.qlt-h2-eb{margin:0;font-size:max(11px,calc(var(--u)*24));line-height:calc(var(--u)*34);font-weight:700;color:var(--g);white-space:nowrap}
.qlt-h2-h{margin:calc(var(--u)*4) 0 0 calc(var(--u)*2);font-size:max(17px,calc(var(--u)*47));line-height:calc(var(--u)*50);font-weight:800;letter-spacing:-.01em;color:var(--n);white-space:nowrap}
.qlt-h2-h span{color:var(--g)}
.qlt-h2-sub{margin:calc(var(--u)*10) 0 0 calc(var(--u)*3);font-size:max(11.5px,calc(var(--u)*23));line-height:calc(var(--u)*30);color:#4B5B7C;white-space:nowrap}
.qlt-h2-art{position:absolute;z-index:2;left:calc(var(--u)*684);top:calc(var(--u)*405);display:flex;align-items:flex-start;gap:calc(var(--u)*14)}
.qlt-h2-art>svg{width:calc(var(--u)*92);height:calc(var(--u)*92);margin-top:calc(var(--u)*2)}
.qlt-h2-art p{margin:calc(var(--u)*2) 0 0;white-space:nowrap;font:italic 600 max(9px,calc(var(--u)*23))/1.22 "Snell Roundhand","Segoe Script","Brush Script MT","Dancing Script",cursive;color:#16407F;transform:rotate(-9deg);transform-origin:0 100%}
.qlt-h2-art p svg.hh{display:inline-block;width:1em;height:1em;vertical-align:-.12em}
.qlt-h2-art p b{display:block;font-weight:800;font-style:italic;letter-spacing:.02em}
.qlt-h2-sr{position:absolute;z-index:3;left:calc(var(--u)*45);top:calc(var(--u)*548);width:calc(var(--u)*930);height:calc(var(--u)*80);display:flex;align-items:center;border-radius:999px;background:#fff;box-shadow:0 calc(var(--u)*5) calc(var(--u)*22) rgba(30,64,125,.13),0 0 0 1px rgba(30,64,125,.04)}
.qlt-h2-pin{flex:none;display:grid;color:var(--n);width:calc(var(--u)*86);place-items:center;margin-left:calc(var(--u)*10)}
.qlt-h2-pin svg{width:max(17px,calc(var(--u)*38));height:max(17px,calc(var(--u)*38))}
.qlt-h2-sr input{flex:1;min-width:0;height:100%;border:0;background:transparent;outline:0;padding:0 6px 0 calc(var(--u)*10);font-size:max(12.5px,calc(var(--u)*23));font-weight:500;font-family:inherit;color:var(--n);-webkit-appearance:none;appearance:none;border-radius:0}
.qlt-h2-sr input::placeholder{color:#5F6D8A;opacity:1}
.qlt-h2-sr input::-webkit-search-cancel-button,.qlt-h2-sr input::-webkit-search-decoration{-webkit-appearance:none;display:none}
.qlt-h2-flt{flex:none;display:flex;align-items:center;gap:calc(var(--u)*12);height:calc(var(--u)*52);padding:0 calc(var(--u)*22) 0 calc(var(--u)*24);margin-right:calc(var(--u)*12);border:0;border-left:1px solid #D4DCE8;background:none;color:var(--n);font-size:max(11px,calc(var(--u)*21));font-weight:500;font-family:inherit;border-radius:0;cursor:pointer;white-space:nowrap}
.qlt-h2-flt svg{width:max(15px,calc(var(--u)*34));height:max(15px,calc(var(--u)*34));color:#5A6683}
.qlt-h2-go{flex:none;display:grid;place-items:center;width:max(36px,calc(var(--u)*90));height:max(36px,calc(var(--u)*90));margin-right:calc(var(--u)*0);margin-left:0;position:relative;right:calc(var(--u)*0);border:0;border-radius:50%;background:linear-gradient(145deg,#22A055,#137A40);color:#fff;box-shadow:0 calc(var(--u)*5) calc(var(--u)*14) rgba(19,122,64,.35);cursor:pointer;padding:0}
.qlt-h2-go svg{width:max(18px,calc(var(--u)*42));height:max(18px,calc(var(--u)*42))}
.qlt-h2-st{display:grid;grid-template-columns:317fr 340fr 271fr;align-items:center;margin:calc(var(--u)*23) calc(var(--u)*48) 0;height:calc(var(--u)*111);border-radius:calc(var(--u)*24);background:linear-gradient(180deg,#EFF7FE,#E9F2FC);border:1px solid #D6E6F6}
.qlt-h2-st>div{display:flex;align-items:center;gap:calc(var(--u)*12);padding:0 calc(var(--u)*6) 0 calc(var(--u)*20);min-width:0}
.qlt-h2-st>div+div{position:relative}
.qlt-h2-st>div+div::before{content:"";position:absolute;left:0;top:calc(var(--u)*14);bottom:calc(var(--u)*14);width:1px;background:#CBDAEA}
.qlt-h2-st p{margin:0;min-width:0}
.qlt-h2-ci{flex:none;width:max(26px,calc(var(--u)*66));height:max(26px,calc(var(--u)*66));border-radius:50%;display:grid;place-items:center;color:#fff;box-shadow:0 calc(var(--u)*4) calc(var(--u)*10) rgba(31,99,208,.25)}
.qlt-h2-ci svg{width:55%;height:55%}
.qlt-h2-ci.g{color:#157F42;background:linear-gradient(145deg,#2DB566,#157F42);box-shadow:0 calc(var(--u)*4) calc(var(--u)*10) rgba(21,127,66,.28)}
.qlt-h2-ci.b{color:#1E62D0;background:linear-gradient(145deg,#4A9BF5,#1E62D0)}
.qlt-h2-st b{display:block;font-size:max(14px,calc(var(--u)*34));line-height:1.1;font-weight:800;color:var(--n)}
.qlt-h2-st small{display:block;margin-top:calc(var(--u)*3);font-size:max(8px,calc(var(--u)*16.5));line-height:1.3;color:#5F6F8C}
.qlt-h2-tl{display:grid;grid-template-columns:repeat(4,1fr);gap:calc(var(--u)*20);margin:calc(var(--u)*21) calc(var(--u)*49) 0 calc(var(--u)*49)}
.qlt-h2-t{position:relative;display:flex;flex-direction:column;align-items:flex-start;height:calc(var(--u)*179);padding:calc(var(--u)*14) calc(var(--u)*10) calc(var(--u)*14) calc(var(--u)*26);border:1px solid transparent;border-radius:calc(var(--u)*24);cursor:pointer;text-align:left;font-family:inherit;color:var(--n);box-shadow:0 calc(var(--u)*3) calc(var(--u)*10) rgba(30,70,120,.05)}
.qlt-h2-t .ci{width:max(28px,calc(var(--u)*74));height:max(28px,calc(var(--u)*74));border-radius:50%;display:grid;place-items:center;color:#fff}
.qlt-h2-t .ci svg{width:56%;height:56%}
.qlt-h2-t b{margin-top:calc(var(--u)*12);padding-right:calc(var(--u)*14);font-size:max(9px,calc(var(--u)*21));line-height:1.2;font-weight:800;color:var(--n);white-space:nowrap}
.qlt-h2-t svg.ch{position:absolute;right:calc(var(--u)*14);top:calc(var(--u)*105);width:max(9px,calc(var(--u)*20));height:max(9px,calc(var(--u)*20))}
.qlt-h2-t em{display:inline-flex;align-items:center;gap:calc(var(--u)*4);margin-top:auto;font-style:normal;font-size:max(9.5px,calc(var(--u)*19));font-weight:600;white-space:nowrap}
.qlt-h2-t em svg{width:max(9px,calc(var(--u)*18));height:max(9px,calc(var(--u)*18))}
.qlt-h2-t.t1{background:linear-gradient(160deg,#E4F7EA,#C8ECD5);border-color:#C3E8D1}
.qlt-h2-t.t1 .ci{color:#157F42;background:linear-gradient(145deg,#2DB566,#157F42)}.qlt-h2-t.t1 em,.qlt-h2-t.t1 svg.ch{color:#1B8F4F}
.qlt-h2-t.t2{background:linear-gradient(160deg,#DDEEFD,#C6E2FA);border-color:#BFDCF5}
.qlt-h2-t.t2 .ci{color:#1B5BD0;background:linear-gradient(145deg,#3C8CF0,#1B5BD0)}.qlt-h2-t.t2 em,.qlt-h2-t.t2 svg.ch{color:#1F63D0}
.qlt-h2-t.t3{background:linear-gradient(160deg,#FFEBD3,#FCD8B2);border-color:#F8D3A9}
.qlt-h2-t.t3 .ci{color:#F27D16;background:linear-gradient(145deg,#FFA845,#F27D16)}.qlt-h2-t.t3 em{color:#6A7284}.qlt-h2-t.t3 svg.ch{color:#F27D16}
.qlt-h2-t.t4{background:linear-gradient(160deg,#E9E5FA,#D6D0F4);border-color:#D0C9EF}
.qlt-h2-t.t4 .ci{color:#5A3DD0;background:linear-gradient(145deg,#7F6CEB,#5A3DD0)}.qlt-h2-t.t4 em{color:#5C6283}.qlt-h2-t.t4 svg.ch{color:#4B3FC4}
.qlt-h2-sh{display:flex;align-items:center;justify-content:space-between;margin:calc(var(--u)*27) calc(var(--u)*49) 0 calc(var(--u)*52)}
.qlt-h2-sh h2{display:flex;align-items:center;gap:calc(var(--u)*14);margin:0;font-size:max(14px,calc(var(--u)*28.5));line-height:1.2;font-weight:800;color:var(--n)}
.qlt-h2-sh h2 svg{width:max(20px,calc(var(--u)*38));height:max(22px,calc(var(--u)*42))}
.qlt-h2-all{display:inline-flex;align-items:center;gap:calc(var(--u)*8);border:0;background:none;font-size:max(11px,calc(var(--u)*17.5));font-weight:600;font-family:inherit;color:var(--n);cursor:pointer;padding:6px 0}
.qlt-h2-all svg{width:max(11px,calc(var(--u)*18));height:max(11px,calc(var(--u)*18))}
.qlt-hfs{display:flex;gap:calc(var(--u)*19);overflow-x:auto;padding:calc(var(--u)*8) calc(var(--u)*49) calc(var(--u)*20);scroll-snap-type:x mandatory;scroll-padding-left:calc(var(--u)*49);-webkit-overflow-scrolling:touch;scrollbar-width:none}
.qlt-hfs::-webkit-scrollbar{display:none}
.qlt-hf{position:relative;flex:none;width:calc(var(--u)*304);scroll-snap-align:start;background:#fff;border-radius:calc(var(--u)*22);box-shadow:0 calc(var(--u)*3) calc(var(--u)*14) rgba(25,55,110,.09);overflow:hidden}
.qlt-hf-main{display:block;width:100%;padding:0;border:0;background:none;text-align:left;cursor:pointer;font-family:inherit;color:inherit}
.qlt-hf-ph{position:relative;display:grid;place-items:center;aspect-ratio:304/171;background:#E6ECF5;color:#8A98B5;overflow:hidden}
.qlt-hf-ph img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;display:block}
.qlt-hf-pill{position:absolute;left:calc(var(--u)*16);top:calc(var(--u)*16);display:inline-flex;align-items:center;height:max(17px,calc(var(--u)*30));padding:0 max(7px,calc(var(--u)*14));border-radius:999px;background:#1FA45B;color:#fff;font-style:normal;font-size:max(8.5px,calc(var(--u)*15.5));font-weight:700;white-space:nowrap}
.qlt-hf-fav{position:absolute;right:calc(var(--u)*12);top:calc(var(--u)*11);width:max(24px,calc(var(--u)*38));height:max(24px,calc(var(--u)*38));padding:0;border:0;border-radius:50%;background:rgba(255,255,255,.28);display:grid;place-items:center;cursor:pointer;-webkit-backdrop-filter:blur(3px);backdrop-filter:blur(3px)}
.qlt-hf-fav svg{width:62%;height:62%;fill:none;stroke:#fff;stroke-width:2}
.qlt-hf-fav[aria-pressed="true"]{background:#fff}
.qlt-hf-fav[aria-pressed="true"] svg{fill:var(--qlt-heart);stroke:var(--qlt-heart)}
.qlt-hf-bd{display:block;padding:calc(var(--u)*12) calc(var(--u)*14) calc(var(--u)*16) calc(var(--u)*17)}
.qlt-hf-pr{display:block;font-size:max(10px,calc(var(--u)*21));line-height:1.25;font-weight:800;color:#168A4A;white-space:nowrap}
.qlt-hf-pr small{font-size:max(8px,calc(var(--u)*14));font-weight:700}
.qlt-hf-tt{display:-webkit-box;-webkit-line-clamp:3;-webkit-box-orient:vertical;overflow:hidden;margin-top:calc(var(--u)*7);font-size:max(9px,calc(var(--u)*16.5));line-height:1.32;font-weight:600;color:var(--n);min-height:2.64em}
.qlt-hf-lc{display:flex;align-items:center;gap:calc(var(--u)*10);margin-top:calc(var(--u)*9);font-size:max(8.5px,calc(var(--u)*14));color:#5F6C85}
.qlt-hf-lc svg{width:max(9px,calc(var(--u)*19));height:max(9px,calc(var(--u)*19));color:#5A6C99}
.qlt-hf-lc span{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.qlt-hf-ch{display:flex;flex-wrap:wrap;align-content:flex-start;margin-top:calc(var(--u)*15);padding-top:calc(var(--u)*13);height:calc(max(14px,calc(var(--u)*26)) + calc(var(--u)*13) + 1px);border-top:1px solid #EDF1F7;overflow:hidden}
.qlt-hf-ch i{display:inline-flex;align-items:center;height:max(14px,calc(var(--u)*26));gap:calc(var(--u)*8);padding:0 calc(var(--u)*14);font-style:normal;font-size:max(8.5px,calc(var(--u)*14));color:#4F5D78;white-space:nowrap}
.qlt-hf-ch i:first-child{padding-left:0}
.qlt-hf-ch i+i{border-left:1px solid #DFE5EF}
.qlt-hf-ch svg{width:max(9px,calc(var(--u)*18));height:max(9px,calc(var(--u)*18));color:#4F5D78}
.qlt-hf.sk .qlt-hf-ph,.qlt-hf.sk .qlt-hf-bd i{background:linear-gradient(90deg,#EEF2F8,#E3E9F3,#EEF2F8);background-size:200% 100%;animation:qltsk 1.2s linear infinite}
.qlt-hf.sk .qlt-hf-bd i{display:block;height:11px;border-radius:5px;margin:6px 0 10px}
.qlt-h2-empty{margin:6px calc(var(--u)*49) 14px;padding:18px;border-radius:14px;background:#F1F6FB;text-align:center;font-size:13px;color:var(--qlt-mu)}
.qlt-h2-empty button{border:0;background:none;color:var(--n);font-weight:700;text-decoration:underline;cursor:pointer}
/* thanh tab 5 mục (Trang chủ · Tìm phòng · Đăng tin · Tin nhắn · Cá nhân) */
.qlt-root .qlt-tab{position:relative;font-size:11px}
.qlt-root .qlt-tab[aria-current="page"]{color:#1B8F4F}
.qlt-root .qlt-tab[aria-current="page"]::after{content:"";position:absolute;left:50%;bottom:0;width:30px;height:3px;border-radius:2px;background:#1B8F4F;transform:translateX(-50%)}
.qlt-tab .f{display:none}
.qlt-tab[aria-current="page"] .f{display:block}
.qlt-tab[aria-current="page"] .o{display:none}
.qlt-tdot{position:absolute;top:5px;left:calc(50% + 6px);width:9px;height:9px;border-radius:50%;background:#EF4444;border:1.5px solid #fff}
/* ---- Thanh tab theo ảnh mẫu ---- */
.qlt-root{--qlt-tab-h:58px}
.qlt-tabs{background:#fff;border-top:1px solid #E8EDF4;box-shadow:none;padding:4px 6px calc(4px + env(safe-area-inset-bottom,0px))}
.qlt-root .qlt-tab{font-size:10px;font-weight:500;color:#8991A3;gap:3px}
.qlt-root .qlt-tab svg{width:23px;height:23px}
.qlt-root .qlt-tab[aria-current="page"]{color:#1B8F4F;font-weight:700}
.qlt-root .qlt-tab[aria-current="page"]::after{width:calc(min(100vw,560px)/1024*80);min-width:30px;height:3px;bottom:-2px}
.qlt-tdot{top:3px;left:calc(50% + 7px);width:8px;height:8px}

/* ======== DANH SÁCH KIỂU MỚI (điện thoại / app) — banner đầu trang + tìm kiếm & Lọc + chip tình trạng + bộ lọc thả xuống + thẻ tin theo ảnh mẫu ========
   Chỉ áp dụng khi root có .qlt-v2 (không áp cho bản máy tính nhúng trong website). Đổi tỉ lệ ảnh thẻ tin: biến --qlt-c2-ar (rộng/cao). */
.qlt-v2{--v2g:#1B8F4F;--v2g2:#2DAA5F;--v2n:#10285E;--v2m:#5F6F8C;--v2l:#E3ECF3;--qlt-c2-ar:3.7;background:#F4F9FD}
.qlt-v2 .qlt-hero,.qlt-v2 #qlSeg2,.qlt-v2 .qlt-area,.qlt-v2 #qlFeat,.qlt-v2 #qlStats{display:none!important}
.qlt-v2 .qlt-h2-top{padding-bottom:0}
.qlt-v2 .qlt-h2-hi{height:calc(var(--u)*546)}
.qlt-v2 .qlt-h2-ban{background:#F8FBFE}
/* tìm kiếm + nút Lọc */
.qlt-v2 .qlt-search{margin:6px 16px 0;z-index:2}
.qlt-v2 .qlt-search input{height:58px;border:1px solid var(--v2l);border-radius:29px;background:#fff;padding:0 118px 0 50px;font-size:16px;font-weight:500;color:var(--v2n);box-shadow:0 6px 18px rgba(16,40,94,.07)}
.qlt-v2 .qlt-search input::placeholder{color:#7C8AA5;font-weight:500}
.qlt-v2 .qlt-search input:focus{border-color:var(--v2g);box-shadow:0 8px 22px rgba(16,40,94,.1),0 0 0 3px rgba(27,143,79,.16)}
.qlt-v2 .qlt-search>svg{left:18px;color:#3F86D6;width:23px;height:23px}
.qlt-v2 .qlt-search .qlt-clear{right:100px}
.qlt-v2 .qlt-lockbtn{position:absolute;right:7px;top:50%;transform:translateY(-50%);display:flex;align-items:center;gap:8px;height:44px;padding:0 18px 0 15px;border:0;border-radius:22px;background:#E6F4EC;color:var(--v2g);font-size:16px;font-weight:700;cursor:pointer}
.qlt-v2 .qlt-lockbtn svg{position:static;transform:none;width:21px;height:21px;color:var(--v2g)}
.qlt-v2 .qlt-lockbtn:active{background:#D5EDE0}
/* chip tình trạng */
.qlt-v2 .qlt-bar{padding:12px 0 0}
.qlt-v2 .qlt-seg{gap:8px;padding:2px 14px 12px;margin-bottom:0}
.qlt-v2 .qlt-chip{height:46px;padding:0 8px 0 12px;gap:7px;border-radius:23px;border:1px solid var(--v2l);background:#fff;color:var(--v2n);font-size:14.5px;font-weight:700;white-space:nowrap;box-shadow:0 2px 8px rgba(16,40,94,.04)}
.qlt-v2 .qlt-chip em{min-width:34px;height:26px;border-radius:13px;padding:0 7px;font-size:12.5px;font-weight:700;background:#EEF3F8;color:#4B5B7C}
.qlt-v2 .qlt-chip .qd{flex:none;width:10px;height:10px;border-radius:50%;background:#B8C4D6}
.qlt-v2 .qlt-chip .qd.vacant{background:#4A9BF5}.qlt-v2 .qlt-chip .qd.expiring{background:#F2B94B}.qlt-v2 .qlt-chip .qd.saved{background:#E5484D}
.qlt-v2 .qlt-chip[aria-pressed="true"]{background:linear-gradient(135deg,var(--v2g2),var(--v2g));border-color:var(--v2g);color:#fff;box-shadow:0 8px 18px rgba(27,143,79,.28)}
.qlt-v2 .qlt-chip[aria-pressed="true"] em{background:rgba(255,255,255,.24);color:#fff}
.qlt-v2 .qlt-chip[aria-pressed="true"] .qd.all{background:#fff}
/* hàng bộ lọc thả xuống */
.qlt-dd{display:none}
.qlt-v2 .qlt-dd{display:flex;gap:8px;overflow-x:auto;scrollbar-width:none;padding:2px 14px 8px}
.qlt-v2 .qlt-dd::-webkit-scrollbar{display:none}
.qlt-v2 .qlt-dd:empty{display:none}
.qlt-dd-p{flex:none;display:flex;align-items:center;gap:8px;height:46px;padding:0 13px 0 14px;border:1px solid var(--v2l);border-radius:23px;background:#fff;color:var(--v2n);font-size:15.5px;font-weight:600;cursor:pointer;box-shadow:0 2px 8px rgba(16,40,94,.04);max-width:76vw}
.qlt-dd-p svg{color:var(--v2n)}
.qlt-dd-p>span{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.qlt-dd-p>svg:last-child{width:15px;height:15px;color:#5A6683}
.qlt-dd-p.on{border-color:var(--v2g);background:#F0FAF4;color:var(--v2g)}
.qlt-dd-p.on svg{color:var(--v2g)}
/* tiêu đề + sắp xếp */
.qlt-v2 .qlt-meta{margin:10px 16px 0;align-items:center;flex-wrap:nowrap}
.qlt-v2 .qlt-count{display:flex;align-items:baseline;gap:9px;min-width:0;white-space:nowrap;font-size:16px;color:var(--v2m)}
.qlt-v2 .qlt-count h2{margin:0;font-size:25px;line-height:1.15;font-weight:800;color:var(--v2n)}
.qlt-v2 .qlt-count span{font-size:16px;font-weight:500;color:var(--v2m)}
.qlt-v2 .qlt-sort{flex:none}
.qlt-v2 .qlt-sort select{height:46px;border-radius:23px;border:1px solid var(--v2l);padding:0 34px 0 40px;font-size:15.5px;font-weight:600;color:var(--v2n);box-shadow:0 2px 8px rgba(16,40,94,.04);
  background:#fff url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='22' height='22' viewBox='0 0 24 24' fill='none' stroke='%2310285E' stroke-width='1.9' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M8 19V5M4.5 8.5 8 5l3.5 3.5M16 5v14M12.5 15.5 16 19l3.5-3.5'/%3E%3C/svg%3E") no-repeat 13px 50%;background-size:20px}
.qlt-v2 .qlt-sort svg{right:13px;color:#5A6683;width:16px;height:16px}
/* thẻ tin */
.qlt-v2 .qlt-list{padding:12px 14px 0;gap:14px}
.qlt-c2{position:relative;background:#fff;border:1px solid #E6EEF5;border-radius:18px;box-shadow:0 3px 14px rgba(16,40,94,.06);overflow:hidden}
.qlt-c2-main{display:block;width:100%;padding:5px 5px 14px;border:0;background:none;text-align:left;cursor:pointer;font:inherit;color:inherit}
.qlt-c2-ph{position:relative;display:block;width:100%;aspect-ratio:var(--qlt-c2-ar);border-radius:14px;overflow:hidden;background:#E9F1F7}
.qlt-c2-ph img{display:block;width:100%;height:100%;object-fit:cover;object-position:center 45%}
.qlt-c2-ph>svg{position:absolute;left:50%;top:50%;transform:translate(-50%,-50%);color:#9DB0C6;width:40px;height:40px}
.qlt-c2-pill{position:absolute;left:10px;top:10px;display:inline-flex;align-items:center;gap:7px;height:34px;padding:0 15px 0 12px;border-radius:17px;background:linear-gradient(135deg,var(--v2g2),var(--v2g));color:#fff;font-style:normal;font-size:15px;font-weight:700;box-shadow:0 3px 8px rgba(16,40,94,.18)}
.qlt-c2-soon{position:absolute;left:10px;bottom:10px;display:inline-flex;align-items:center;height:26px;padding:0 11px;border-radius:13px;background:rgba(255,241,214,.96);color:#8A5200;font-style:normal;font-size:12.5px;font-weight:700}
.qlt-c2-bd{display:block;padding:12px 11px 0}
.qlt-c2-tt{display:block;font-size:18px;line-height:1.3;font-weight:800;color:var(--v2n);overflow-wrap:anywhere}
.qlt-c2-pr{display:block;margin-top:7px;font-size:23px;line-height:1.2;font-weight:800;color:var(--v2g)}
.qlt-c2-pr small{font-size:17px;font-weight:700;margin-left:1px}
.qlt-c2-lc{display:flex;align-items:center;gap:8px;margin-top:8px;font-size:15.5px;color:var(--v2m)}
.qlt-c2-lc svg{width:20px;height:20px;color:#6F7E99;flex:none}
.qlt-c2-mt{display:flex;flex-wrap:wrap;gap:8px 18px;margin-top:11px;font-size:15px;color:var(--v2m)}
.qlt-c2-mt i{display:inline-flex;align-items:center;gap:7px;font-style:normal}
.qlt-c2-mt svg{color:#6F7E99}
.qlt-c2-ch{display:flex;flex-wrap:wrap;gap:8px;margin-top:12px}
.qlt-c2-ch i{display:inline-flex;align-items:center;height:36px;padding:0 17px;border-radius:18px;background:#E8F5EC;color:#2F6B47;font-style:normal;font-size:15px;font-weight:600}
.qlt-c2-fav{position:absolute;right:15px;top:15px;display:grid;place-items:center;width:40px;height:40px;padding:0;border:0;border-radius:50%;background:rgba(104,116,132,.62);color:#fff;cursor:pointer;-webkit-backdrop-filter:blur(3px);backdrop-filter:blur(3px)}
.qlt-c2-fav svg{width:21px;height:21px}
.qlt-c2-fav[aria-pressed="true"]{background:#fff;color:var(--qlt-heart)}
.qlt-c2-fav[aria-pressed="true"] svg{fill:currentColor}
.qlt-v2 .qlt-list.first .qlt-c2{animation:qlt-in .42s cubic-bezier(.2,.8,.2,1) both}
.qlt-v2 .qlt-list.first .qlt-c2:nth-child(2){animation-delay:.07s}.qlt-v2 .qlt-list.first .qlt-c2:nth-child(n+3){animation-delay:.14s}
/* bảng chọn bộ lọc */
.qlt-pk{max-height:82vh;max-height:82dvh}
.qlt-pk-h{display:flex;align-items:center;justify-content:space-between;padding:16px 18px 8px}
.qlt-pk-h b{font-size:19px;font-weight:800;color:var(--v2n)}
.qlt-pk-b{overflow:auto;padding:0 14px 8px;-webkit-overflow-scrolling:touch}
.qlt-pk-b h3{margin:14px 4px 8px;font-size:14px;font-weight:700;color:var(--v2m);text-transform:uppercase;letter-spacing:.03em}
.qlt-pk-o{display:flex;align-items:center;justify-content:space-between;gap:10px;width:100%;min-height:50px;padding:0 6px 0 8px;border:0;border-bottom:1px solid #EEF3F8;background:none;text-align:left;font-size:16.5px;font-weight:600;color:var(--v2n);cursor:pointer}
.qlt-pk-o[aria-pressed="true"]{color:var(--v2g);font-weight:700}
.qlt-pk-o.go{border:1px solid var(--v2l);border-radius:14px;padding:0 14px;background:#fff}
.qlt-pk-back{display:block;margin:0 0 4px;padding:8px 8px;border:0;background:none;color:var(--v2g);font-size:15.5px;font-weight:700;cursor:pointer}
.qlt-pk-note{margin:8px 8px;font-size:14px;color:var(--v2m)}
.qlt-pk-cs{display:flex;flex-wrap:wrap;gap:9px;padding:2px 2px 4px}
.qlt-pk-c{height:42px;padding:0 17px;border:1px solid var(--v2l);border-radius:21px;background:#fff;color:var(--v2n);font-size:15.5px;font-weight:600;cursor:pointer}
.qlt-pk-c[aria-pressed="true"]{background:var(--v2g);border-color:var(--v2g);color:#fff}
.qlt-pk-f{display:flex;gap:10px;padding:12px 16px calc(14px + env(safe-area-inset-bottom,0px));border-top:1px solid #EEF3F8}
.qlt-pk-rs{flex:none;height:50px;padding:0 22px;border:1px solid var(--v2l);border-radius:25px;background:#fff;color:var(--v2n);font-size:16px;font-weight:700;cursor:pointer}
.qlt-pk-ok{flex:1;height:50px;border:0;border-radius:25px;background:linear-gradient(135deg,var(--v2g2),var(--v2g));color:#fff;font-size:16px;font-weight:800;cursor:pointer}

.qlt-pk-h .qlt-iconbtn{display:grid;place-items:center;width:40px;height:40px;padding:0;border:0;border-radius:50%;background:#EEF3F8;color:var(--v2n);cursor:pointer}

/* ======== v2b — bố cục đo theo ảnh mẫu (rộng 625 đơn vị); 1 đơn vị = --k, co giãn theo bề ngang màn hình ======== */
.qlt-v2{--k:calc(min(100vw,560px)/625);--qlt-c2-ar:3.62;background:linear-gradient(180deg,#F3F9FD 0,#F8FBFE 420px,#F5F9FC 100%)}
.qlt-v2 .qlt-search{margin:calc(var(--k)*10) calc(var(--k)*20) 0}
.qlt-v2 .qlt-search input{height:calc(var(--k)*58);border-radius:calc(var(--k)*29);padding:0 calc(var(--k)*128) 0 calc(var(--k)*62);font-size:max(13px,calc(var(--k)*19));font-weight:500;box-shadow:0 calc(var(--k)*4) calc(var(--k)*14) rgba(16,40,94,.06)}
.qlt-v2 .qlt-search>svg{left:calc(var(--k)*20);width:calc(var(--k)*28);height:calc(var(--k)*28);color:#4C86D0}
.qlt-v2 .qlt-search .qlt-clear{right:calc(var(--k)*116)}
.qlt-v2 .qlt-lockbtn{right:calc(var(--k)*3);height:calc(var(--k)*52);padding:0 calc(var(--k)*22) 0 calc(var(--k)*18);gap:calc(var(--k)*10);border-radius:calc(var(--k)*26);background:#E4F2EA;color:#1F6B45;font-size:max(13px,calc(var(--k)*19));font-weight:600}
.qlt-v2 .qlt-lockbtn svg{width:calc(var(--k)*30);height:calc(var(--k)*30);color:#1F6B45}
.qlt-v2 .qlt-bar{padding:calc(var(--k)*16) 0 0}
.qlt-v2 .qlt-seg{gap:calc(var(--k)*13);padding:0 calc(var(--k)*20) calc(var(--k)*16)}
.qlt-v2 .qlt-chip{height:calc(var(--k)*52);padding:0 calc(var(--k)*11) 0 calc(var(--k)*20);gap:calc(var(--k)*10);border-radius:calc(var(--k)*26);font-size:max(12px,calc(var(--k)*19));font-weight:600;box-shadow:0 calc(var(--k)*2) calc(var(--k)*8) rgba(16,40,94,.04)}
.qlt-v2 .qlt-chip em{min-width:calc(var(--k)*50);height:calc(var(--k)*30);border-radius:calc(var(--k)*15);padding:0 calc(var(--k)*10);font-size:max(10.5px,calc(var(--k)*16.5));font-weight:500;background:#EDF2F8;color:#52627F}
.qlt-v2 .qlt-chip .qd{width:calc(var(--k)*13);height:calc(var(--k)*13)}
.qlt-v2 .qlt-chip[aria-pressed="true"]{box-shadow:0 calc(var(--k)*6) calc(var(--k)*14) rgba(27,143,79,.26)}
.qlt-v2 .qlt-dd{gap:calc(var(--k)*14);padding:0 calc(var(--k)*20) calc(var(--k)*6)}
.qlt-dd-p{height:calc(var(--k)*48);padding:0 calc(var(--k)*16) 0 calc(var(--k)*14);gap:calc(var(--k)*10);border-radius:calc(var(--k)*24);font-size:max(12px,calc(var(--k)*18));font-weight:500;color:#10285E;box-shadow:0 calc(var(--k)*2) calc(var(--k)*8) rgba(16,40,94,.04)}
.qlt-dd-p svg{width:calc(var(--k)*26);height:calc(var(--k)*26)}
.qlt-dd-p>svg:last-child{width:calc(var(--k)*17);height:calc(var(--k)*17);margin-left:calc(var(--k)*4)}
.qlt-v2 .qlt-meta{margin:calc(var(--k)*20) calc(var(--k)*20) 0}
.qlt-v2 .qlt-count{gap:calc(var(--k)*14)}
.qlt-v2 .qlt-count h2{font-size:max(17px,calc(var(--k)*28));font-weight:800}
.qlt-v2 .qlt-count span{font-size:max(12px,calc(var(--k)*19));font-weight:500;color:#5F6F8C}
.qlt-v2 .qlt-sort select{height:calc(var(--k)*48);border-radius:calc(var(--k)*24);padding:0 calc(var(--k)*44) 0 calc(var(--k)*52);font-size:max(12.5px,calc(var(--k)*18));font-weight:500;background-position:calc(var(--k)*16) 50%;background-size:calc(var(--k)*26)}
.qlt-v2 .qlt-sort svg{right:calc(var(--k)*16);width:calc(var(--k)*17);height:calc(var(--k)*17)}
/* thẻ tin */
.qlt-v2 .qlt-list{padding:calc(var(--k)*12) calc(var(--k)*18) 0;gap:calc(var(--k)*16)}
.qlt-c2{border-radius:calc(var(--k)*16);border:1px solid #E8EFF5;box-shadow:0 calc(var(--k)*2) calc(var(--k)*10) rgba(16,40,94,.05)}
.qlt-c2-main{padding:calc(var(--k)*5) calc(var(--k)*5) calc(var(--k)*14)}
.qlt-c2-ph{border-radius:calc(var(--k)*10)}
.qlt-c2-pill{left:calc(var(--k)*10);top:calc(var(--k)*10);height:calc(var(--k)*32);gap:calc(var(--k)*8);padding:0 calc(var(--k)*14) 0 calc(var(--k)*11);border-radius:calc(var(--k)*16);font-size:max(11.5px,calc(var(--k)*16));font-weight:600;box-shadow:none}
.qlt-c2-pill svg{width:calc(var(--k)*22);height:calc(var(--k)*22)}
.qlt-c2-soon{left:calc(var(--k)*10);bottom:calc(var(--k)*10);height:calc(var(--k)*26);font-size:max(10.5px,calc(var(--k)*14))}
.qlt-c2-fav{right:calc(var(--k)*13);top:calc(var(--k)*13);width:calc(var(--k)*34);height:calc(var(--k)*34);background:rgba(110,122,138,.6)}
.qlt-c2-fav svg{width:calc(var(--k)*21);height:calc(var(--k)*21)}
.qlt-c2-bd{padding:calc(var(--k)*11) calc(var(--k)*10) 0}
.qlt-c2-tt{font-size:max(13.5px,calc(var(--k)*19));line-height:1.3;font-weight:700;color:#10285E}
.qlt-c2-pr{margin-top:calc(var(--k)*5);font-size:max(16.5px,calc(var(--k)*23));font-weight:800;color:#2F8F57}
.qlt-c2-pr small{font-size:max(15px,calc(var(--k)*21));font-weight:700}
.qlt-c2-lc{gap:calc(var(--k)*8);margin-top:calc(var(--k)*6);font-size:max(11.5px,calc(var(--k)*16));color:#5F6F8C}
.qlt-c2-lc svg{width:calc(var(--k)*19);height:calc(var(--k)*19);color:#6B7B96}
.qlt-c2-mt{flex-wrap:nowrap;justify-content:flex-start;gap:calc(var(--k)*30);margin-top:calc(var(--k)*13);font-size:max(11.5px,calc(var(--k)*16));color:#5F6F8C}
.qlt-c2-mt i{gap:calc(var(--k)*8);white-space:nowrap}
.qlt-c2-mt svg{width:calc(var(--k)*24);height:calc(var(--k)*24);color:#6B7B96}
.qlt-c2-ch{flex-wrap:wrap;gap:calc(var(--k)*10);margin-top:calc(var(--k)*13)}
.qlt-c2-ch i{height:calc(var(--k)*30);padding:0 calc(var(--k)*15);border-radius:calc(var(--k)*15);background:#E7F4EC;color:#2F6B47;font-size:max(10.5px,calc(var(--k)*15));font-weight:500}
/* ==== Trang Tin phòng (điện thoại / app) — bố cục theo ảnh mẫu: banner Hà Nội ở đầu trang ==== */
.qlt-v2 .qlt-search{margin:calc(var(--k)*10) calc(var(--k)*20) 0}
.qlt-v2 .qlt-bar{padding:calc(var(--k)*18) 0 0}
.qlt-v2{--qlt-c2-ar:3.7}
/* 3 ô trạng thái nằm vừa một hàng (Tất cả · Phòng trống · Sắp trống), chỉ cuộn khi có thêm ô "Đã lưu" */
.qlt-v2 .qlt-seg{gap:calc(var(--k)*11);padding:0 calc(var(--k)*20) calc(var(--k)*16)}
.qlt-v2 .qlt-seg .qlt-chip{flex:none;height:calc(var(--k)*50);padding:0 calc(var(--k)*8) 0 calc(var(--k)*16);gap:calc(var(--k)*8);font-size:max(10.5px,calc(var(--k)*17));font-weight:600;white-space:nowrap}
.qlt-v2 .qlt-seg .qlt-chip em{flex:none;min-width:calc(var(--k)*42);height:calc(var(--k)*30);padding:0 calc(var(--k)*8);font-size:max(10px,calc(var(--k)*15.5));font-weight:500}
.qlt-v2 .qlt-seg .qlt-chip .qd{flex:none;width:calc(var(--k)*13);height:calc(var(--k)*13)}
/* hàng bộ lọc: Tỉnh/thành · Mức giá · Loại phòng · Tiện ích (cuộn ngang) */
.qlt-v2 .qlt-dd{gap:calc(var(--k)*13);padding:0 calc(var(--k)*20) calc(var(--k)*6)}
.qlt-dd-p{height:calc(var(--k)*48);padding:0 calc(var(--k)*14) 0 calc(var(--k)*14);gap:calc(var(--k)*9);font-size:max(11.5px,calc(var(--k)*17));font-weight:500}
.qlt-dd-p svg{width:calc(var(--k)*24);height:calc(var(--k)*24)}
.qlt-dd-p>svg:last-child{width:calc(var(--k)*15);height:calc(var(--k)*15);margin-left:calc(var(--k)*2)}
/* thẻ tin */
.qlt-c2-ph{aspect-ratio:var(--qlt-c2-ar)}
.qlt-c2-pr small{font-size:max(13px,calc(var(--k)*20))}
.qlt-c2-mt{gap:calc(var(--k)*26)}
.qlt-c2-mt i{gap:calc(var(--k)*8)}
.qlt-c2-ch i{height:calc(var(--k)*32);padding:0 calc(var(--k)*16);font-size:max(11px,calc(var(--k)*15.5))}
/* ==== Chi tiết phòng (điện thoại / app) — trang đầy đủ theo ảnh mẫu ==== */
.qlt-root .qlt-sheet.qlt-d2{--u:calc(min(100vw,560px)/1024);--g:#1B8F4F;--n:#10285E;--m:#5F6F8C;--b:#1F5DB5;top:0;bottom:0;left:0;right:0;width:auto;max-width:none;max-height:none;height:100%;margin:0;border-radius:0;background:#fff;box-shadow:none;padding-bottom:0;display:flex;flex-direction:column;
  font-family:Arial,"Liberation Sans",Helvetica,sans-serif;color:var(--n);z-index:50}
.qlt-sheet-bg#qlBg{z-index:49}
@media (min-width:700px) and (pointer:fine){.qlt-root .qlt-sheet.qlt-d2{left:50%;right:auto;width:560px;transform:translate(-50%,102%);opacity:1}.qlt-root .qlt-sheet.qlt-d2.show{transform:translate(-50%,0)}}
.qlt-d2-sc{flex:1;min-height:0;overflow-y:auto;overflow-x:hidden;-webkit-overflow-scrolling:touch;overscroll-behavior:contain;background:#fff}
/* ảnh lớn */
.qlt-d2-hero{position:relative;height:calc(var(--u)*1024 + env(safe-area-inset-top,0px));background:#DCE9F2;overflow:hidden}
.qlt-d2-hero img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:center;cursor:pointer;user-select:none;-webkit-user-drag:none}
.qlt-d2-noimg{position:absolute;inset:0;display:grid;place-items:center;color:#9DB0C6}.qlt-d2-noimg svg{width:48px;height:48px}
.qlt-d2-shade{position:absolute;inset:0;pointer-events:none;background:linear-gradient(180deg,rgba(10,30,60,.34) 0,rgba(10,30,60,0) 38%,rgba(10,30,60,0) 70%,rgba(10,30,60,.28) 100%)}
.qlt-d2-logo{position:absolute;left:calc(var(--u)*130);top:calc(var(--u)*46 + env(safe-area-inset-top,0px));display:flex;align-items:center;gap:calc(var(--u)*10);color:#fff;pointer-events:none;text-shadow:0 1px 6px rgba(0,0,0,.35)}
.qlt-d2-logo svg{width:max(22px,calc(var(--u)*64));height:max(22px,calc(var(--u)*64));flex:none}
.qlt-d2-logo b{display:block;font-size:max(15px,calc(var(--u)*44));line-height:1;font-weight:800;letter-spacing:.01em}
.qlt-d2-logo small{display:block;margin-top:2px;font-size:max(8.5px,calc(var(--u)*17));font-weight:500;white-space:nowrap}
.qlt-d2-rb{display:grid;place-items:center;width:max(34px,calc(var(--u)*60));height:max(34px,calc(var(--u)*60));padding:0;border:0;border-radius:50%;background:#fff;color:#10285E;box-shadow:0 2px 10px rgba(10,30,60,.18);cursor:pointer}
.qlt-d2-rb svg{width:55%;height:55%}
.qlt-d2-rb.back{position:absolute;left:calc(var(--u)*44);top:calc(var(--u)*68 + env(safe-area-inset-top,0px))}
.qlt-d2-ra{position:absolute;right:calc(var(--u)*44);top:calc(var(--u)*62 + env(safe-area-inset-top,0px));display:flex;gap:calc(var(--u)*18)}
.qlt-d2-rb.fav[aria-pressed="true"]{color:#E5484D}.qlt-d2-rb.fav[aria-pressed="true"] svg{fill:currentColor}
.qlt-d2-hot{position:absolute;left:calc(var(--u)*34);bottom:calc(var(--u)*34);display:inline-flex;align-items:center;gap:calc(var(--u)*10);height:max(26px,calc(var(--u)*52));padding:0 calc(var(--u)*24) 0 calc(var(--u)*18);border-radius:999px;background:linear-gradient(135deg,#2DAA5F,#1B8F4F);color:#fff;font-size:max(12px,calc(var(--u)*24));font-weight:700}
.qlt-d2-hot svg{width:max(14px,calc(var(--u)*30));height:max(14px,calc(var(--u)*30))}
.qlt-d2-cnt{position:absolute;right:calc(var(--u)*30);bottom:calc(var(--u)*38);display:inline-flex;align-items:center;gap:calc(var(--u)*10);height:max(24px,calc(var(--u)*46));padding:0 calc(var(--u)*20) 0 calc(var(--u)*16);border-radius:999px;background:rgba(20,28,40,.62);color:#fff;font-size:max(11.5px,calc(var(--u)*23));font-weight:600;-webkit-backdrop-filter:blur(3px);backdrop-filter:blur(3px)}
.qlt-d2-cnt svg{width:max(14px,calc(var(--u)*28));height:max(14px,calc(var(--u)*28))}.qlt-d2-cnt i{font-style:normal}
/* thân trang */
.qlt-d2-bd{position:relative;margin-top:calc(var(--u)*-26);border-radius:calc(var(--u)*30) calc(var(--u)*30) 0 0;background:#fff;padding:calc(var(--u)*8) calc(var(--u)*32) calc(var(--u)*30)}
.qlt-d2-th{display:grid;grid-template-columns:repeat(5,1fr);gap:calc(var(--u)*12);margin:0 0 calc(var(--u)*22)}
.qlt-d2-t{position:relative;display:block;padding:0;border:0;border-radius:calc(var(--u)*14);overflow:hidden;background:#E6EEF5;aspect-ratio:1/1;cursor:pointer;outline:0}
.qlt-d2-t img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}
.qlt-d2-t.on{box-shadow:0 0 0 max(2px,calc(var(--u)*4)) var(--g)}.qlt-d2-t.on::after{content:"";position:absolute;inset:0;border-radius:inherit;box-shadow:inset 0 0 0 max(1.5px,calc(var(--u)*3)) #fff}
.qlt-d2-top{display:grid;grid-template-columns:minmax(0,1fr) max(122px,calc(var(--u)*272));column-gap:calc(var(--u)*28);align-items:start}
.qlt-d2-chips{display:flex;align-items:center;gap:calc(var(--u)*14);min-width:0}
.qlt-d2-c1,.qlt-d2-c2{display:inline-flex;align-items:center;gap:calc(var(--u)*10);height:max(26px,calc(var(--u)*50));padding:0 calc(var(--u)*20) 0 calc(var(--u)*16);border-radius:999px;font-size:max(12px,calc(var(--u)*23));font-weight:700;white-space:nowrap}
.qlt-d2-c1{background:linear-gradient(135deg,#2DAA5F,#1B8F4F);color:#fff}.qlt-d2-c2{background:#E3EEFB;color:var(--b)}.qlt-d2-c2.e{background:#FFF1D6;color:#8A5200}
.qlt-d2-c1 svg,.qlt-d2-c2 svg{width:max(13px,calc(var(--u)*26));height:max(13px,calc(var(--u)*26));flex:none}
.qlt-d2-save{display:flex;align-items:center;justify-content:center;gap:calc(var(--u)*14);height:max(32px,calc(var(--u)*62));padding:0;border:1.5px solid #D5E3F1;border-radius:calc(var(--u)*16);background:#fff;color:var(--n);font:inherit;font-size:max(12.5px,calc(var(--u)*26));font-weight:700;cursor:pointer}
.qlt-d2-save svg{width:max(17px,calc(var(--u)*38));height:max(17px,calc(var(--u)*38))}
.qlt-d2-save .t1{display:none}.qlt-d2-save[aria-pressed="true"] .t0{display:none}.qlt-d2-save[aria-pressed="true"] .t1{display:inline}
.qlt-d2-save[aria-pressed="true"]{color:#E5484D;border-color:#F3C7C9}.qlt-d2-save[aria-pressed="true"] svg{fill:currentColor}
.qlt-d2-main{grid-column:1;grid-row:2;min-width:0;padding-top:calc(var(--u)*14)}
.qlt-d2-side{grid-column:2;grid-row:2;display:flex;flex-direction:column;gap:calc(var(--u)*16);margin-top:calc(var(--u)*14)}
.qlt-d2-top .qlt-d2-save{grid-column:2;grid-row:1}
.qlt-d2-main h1{margin:0;font-size:max(18px,calc(var(--u)*43));line-height:1.18;font-weight:800;color:var(--n);overflow-wrap:anywhere}
.qlt-d2-pr{margin-top:calc(var(--u)*10);font-size:max(22px,calc(var(--u)*52));line-height:1.15;font-weight:800;color:var(--g)}
.qlt-d2-pr small{font-size:max(14px,calc(var(--u)*36));font-weight:700;margin-left:1px}
.qlt-d2-ad{display:flex;align-items:flex-start;gap:calc(var(--u)*10);margin-top:calc(var(--u)*14);font-size:max(12px,calc(var(--u)*22));font-weight:500;color:var(--b);line-height:1.35}
.qlt-d2-ad svg{flex:none;width:max(16px,calc(var(--u)*30));height:max(16px,calc(var(--u)*30));color:var(--b);margin-top:1px}
.qlt-d2-sc1,.qlt-d2-sc2{display:flex;align-items:center;gap:calc(var(--u)*14);padding:calc(var(--u)*14) calc(var(--u)*14);border-radius:calc(var(--u)*20);min-width:0}
.qlt-d2-sc1{background:#E8F6EE;color:#1B8F4F}.qlt-d2-sc1.e{background:#FFF4DE;color:#B7791F}
.qlt-d2-sc2{background:#fff;border:1px solid #DDEAF3;color:#2F8F57}
.qlt-d2-sc1 i{flex:none;width:max(20px,calc(var(--u)*46));height:max(20px,calc(var(--u)*46))}.qlt-d2-sc2 i{flex:none;width:max(24px,calc(var(--u)*56));height:max(24px,calc(var(--u)*56));display:grid;place-items:center}
.qlt-d2-sc1 i svg,.qlt-d2-sc2 i svg{width:100%;height:100%}
.qlt-d2-sc1 span,.qlt-d2-sc2 span{min-width:0;display:block}
.qlt-d2-sc1 b,.qlt-d2-sc2 b{display:block;font-size:max(11.5px,calc(var(--u)*21));line-height:1.25;font-weight:800;color:var(--n);overflow:hidden;text-overflow:ellipsis;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical}
.qlt-d2-sc1 small,.qlt-d2-sc2 small{display:block;margin-top:2px;font-size:max(10px,calc(var(--u)*19));line-height:1.3;color:#4E5F7C;font-weight:400}
/* thẻ thông tin 6 ô */
.qlt-d2-info{display:grid;grid-template-columns:repeat(3,1fr);margin-top:calc(var(--u)*30);padding:calc(var(--u)*20) calc(var(--u)*6);border-radius:calc(var(--u)*26);background:#EEF4FB;border:1px solid #E4EDF6}
.qlt-d2-ic{display:flex;align-items:center;gap:calc(var(--u)*16);padding:calc(var(--u)*18) calc(var(--u)*14);min-width:0}
.qlt-d2-ic:nth-child(-n+3){border-bottom:1px solid #DCE6F1}.qlt-d2-ic:not(:nth-child(3n+1)){border-left:1px solid #DCE6F1}
.qlt-d2-ic i{flex:none;display:grid;place-items:center;width:max(32px,calc(var(--u)*62));height:max(32px,calc(var(--u)*62));border-radius:50%;background:linear-gradient(135deg,#2F7DF0,#1F5DD0);color:#fff}
.qlt-d2-ic i.g{background:linear-gradient(135deg,#19B890,#0E9A78)}
.qlt-d2-ic i svg{width:54%;height:54%}.qlt-d2-ic i .qlt-d2-pi{display:grid;place-items:center;width:54%;height:54%}.qlt-d2-ic i .qlt-d2-pi svg{width:100%;height:100%}
.qlt-d2-ic span{min-width:0;display:block}
.qlt-d2-ic small{display:block;font-size:max(10.5px,calc(var(--u)*20));color:#5F6F8C;font-weight:400}
.qlt-d2-ic b{display:block;margin-top:2px;font-size:max(12.5px,calc(var(--u)*25));font-weight:800;color:var(--n);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
/* tiêu đề mục */
.qlt-d2-h{display:flex;align-items:center;gap:calc(var(--u)*16);margin:calc(var(--u)*36) 0 calc(var(--u)*18);font-size:max(14px,calc(var(--u)*25));font-weight:800;color:var(--n)}
.qlt-d2-h i{flex:none;display:grid;place-items:center;width:max(24px,calc(var(--u)*40));height:max(24px,calc(var(--u)*40));border-radius:50%;color:#fff;background:var(--g)}
.qlt-d2-h i.sq{border-radius:calc(var(--u)*10)}.qlt-d2-h i svg{width:62%;height:62%}
/* tiện nghi */
.qlt-d2-am{display:grid;grid-template-columns:repeat(auto-fill,minmax(max(104px,calc(var(--u)*300)),1fr));gap:calc(var(--u)*14)}
.qlt-d2-a{display:flex;align-items:center;gap:calc(var(--u)*12);min-width:0;padding:calc(var(--u)*12) calc(var(--u)*12);border-radius:calc(var(--u)*24);background:#F0F5FB;border:1px solid #E7EEF6}
.qlt-d2-a i{flex:none;display:grid;place-items:center;width:max(30px,calc(var(--u)*72));height:max(30px,calc(var(--u)*72));border-radius:50%;background:#fff;color:#1F5DB5;box-shadow:0 1px 4px rgba(16,40,94,.1)}
.qlt-d2-a i svg{width:56%;height:56%}
.qlt-d2-a b{min-width:0;font-size:max(10.5px,calc(var(--u)*21));line-height:1.25;font-weight:500;color:#33445F;overflow-wrap:anywhere}.qlt-d2-a em{font-style:normal;font-weight:700;color:var(--n)}
/* mô tả + liên hệ */
.qlt-d2-row{display:grid;grid-template-columns:minmax(0,1fr) max(150px,calc(var(--u)*364));column-gap:calc(var(--u)*26);align-items:start;margin-top:calc(var(--u)*4)}
.qlt-d2-desc{min-width:0}
.qlt-d2-nt{margin:0;font-size:max(12px,calc(var(--u)*22));line-height:1.6;color:#4A5A75;white-space:pre-line;display:-webkit-box;-webkit-line-clamp:3;-webkit-box-orient:vertical;overflow:hidden}
.qlt-d2-nt.open{display:block;-webkit-line-clamp:unset;overflow:visible}
.qlt-d2-more{display:inline-flex;align-items:center;gap:6px;margin-top:calc(var(--u)*26);padding:6px 0;border:0;background:none;color:var(--b);font:inherit;font-size:max(12.5px,calc(var(--u)*23));font-weight:600;cursor:pointer}
.qlt-d2-more svg{width:16px;height:16px;transition:transform .2s}.qlt-d2-more[aria-expanded="true"] svg{transform:rotate(180deg)}
.qlt-d2-call{margin-top:calc(var(--u)*36);padding:max(10px,calc(var(--u)*20));border-radius:calc(var(--u)*24);background:#EEF4FB;border:1px solid #E4EDF6}
.qlt-d2-who{display:flex;align-items:center;gap:calc(var(--u)*14);margin-bottom:calc(var(--u)*14)}
.qlt-d2-who i{flex:none;display:grid;place-items:center;width:max(20px,calc(var(--u)*40));color:var(--b)}.qlt-d2-who i svg{width:100%;height:auto;fill:currentColor;stroke:none}
.qlt-d2-who b{display:block;font-size:max(12.5px,calc(var(--u)*23));font-weight:800;color:var(--n)}.qlt-d2-who small{display:block;font-size:max(10.5px,calc(var(--u)*18));color:var(--b);font-weight:500}
.qlt-d2-ph,.qlt-d2-ch{display:flex;align-items:center;justify-content:center;gap:calc(var(--u)*14);width:100%;box-sizing:border-box;text-decoration:none}
.qlt-d2-ph{height:max(38px,calc(var(--u)*90));border-radius:999px;background:linear-gradient(135deg,#2F7DF0,#1F5DD0);color:#fff;font-size:max(13px,calc(var(--u)*30));font-weight:800;box-shadow:0 6px 14px rgba(31,93,208,.26);white-space:nowrap}
.qlt-d2-ph svg{width:max(16px,calc(var(--u)*34));height:max(16px,calc(var(--u)*34));flex:none}
.qlt-d2-ch{margin-top:calc(var(--u)*14);height:max(38px,calc(var(--u)*88));border-radius:999px;border:1.5px solid #BFD3F2;background:#fff;color:var(--b)}
.qlt-d2-ch svg{width:max(18px,calc(var(--u)*40));height:max(18px,calc(var(--u)*40));flex:none}
.qlt-d2-ch span{display:block;text-align:left}.qlt-d2-ch b{display:block;font-size:max(12.5px,calc(var(--u)*23));font-weight:800;color:var(--b)}.qlt-d2-ch small{display:block;font-size:max(10px,calc(var(--u)*17));color:var(--b);font-weight:500}
.qlt-d2-ph[aria-disabled="true"],.qlt-d2-ch[aria-disabled="true"]{opacity:.5;pointer-events:none}
/* quảng bá app */
.qlt-d2-pro{display:flex;align-items:center;gap:calc(var(--u)*18);margin-top:calc(var(--u)*34);padding:calc(var(--u)*14) calc(var(--u)*20);border-radius:calc(var(--u)*22);background:linear-gradient(100deg,#DDF3E4 0,#BDE6CB 55%,#A8DDB9 100%);overflow:hidden}
.qlt-d2-pm{flex:none;width:max(26px,calc(var(--u)*60))}.qlt-d2-pm svg{display:block;width:100%;height:auto}
.qlt-d2-pt{flex:1;min-width:0}.qlt-d2-pt b{display:block;font-size:max(11.5px,calc(var(--u)*24));line-height:1.25;font-weight:800;color:#14502F}.qlt-d2-pt small{display:block;margin-top:2px;font-size:max(10px,calc(var(--u)*19));color:#1F6B45}
.qlt-d2-sts{flex:none;display:flex;flex-direction:column;gap:calc(var(--u)*8)}
.qlt-d2-st{display:flex;align-items:center;gap:calc(var(--u)*10);height:max(26px,calc(var(--u)*50));padding:0 calc(var(--u)*16) 0 calc(var(--u)*12);border-radius:calc(var(--u)*12);background:#000;color:#fff;text-decoration:none}
.qlt-d2-st svg{flex:none;width:max(13px,calc(var(--u)*30));height:max(13px,calc(var(--u)*30))}.qlt-d2-st span{display:block;line-height:1}.qlt-d2-st small{display:block;font-size:max(6px,calc(var(--u)*12));opacity:.85}.qlt-d2-st b{display:block;font-size:max(9.5px,calc(var(--u)*21));font-weight:700}
/* phần thông tin thêm giữ từ bản cũ */
.qlt-sheet-body.qlt-d2-x{overflow:visible;padding:0 calc(var(--u)*32) calc(var(--u)*30);background:#fff}
/* thanh điều hướng dưới */
.qlt-d2-nav{flex:none;display:flex;padding:6px 8px calc(6px + env(safe-area-inset-bottom,0px));background:#fff;border-top:1px solid #E3EAF2;box-shadow:0 -4px 16px rgba(16,40,94,.05)}
.qlt-d2-nav>*{position:relative;flex:1;height:50px;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:3px;border:0;background:none;color:#7D8CA6;font:inherit;font-size:11.5px;font-weight:500;text-decoration:none;cursor:pointer}
.qlt-d2-nav svg{width:24px;height:24px}
.qlt-d2-nav>[aria-current="page"]{color:var(--g)}.qlt-d2-nav>[aria-current="page"]::after{content:"";position:absolute;bottom:0;left:30%;right:30%;height:3px;border-radius:2px;background:var(--g)}
.qlt-d2-nav .qlt-tdot{top:3px;left:calc(50% + 4px)}

/* Chấm báo phòng mới: ẩn khi hidden */
.qlt-tdot[hidden]{display:none!important}

/* Logo TROXANH trắng, tách nền, mờ 30% ở ảnh lớn trang chi tiết phòng */
.qlt-d2-logo.wm{display:block;text-shadow:none}
.qlt-d2-logo.wm img{position:static;display:block;width:calc(var(--u)*340);min-width:150px;max-width:62vw;height:auto;opacity:.3;cursor:default;pointer-events:none;object-fit:contain}

/* ==== Trang chủ Tin phòng: khối thống kê / loại phòng / tin nổi bật / thanh quảng bá / tin thường 2 cột + phân trang ==== */
.qlt-root .qlt-hm{background:transparent;padding-bottom:0}
@media (min-width:561px){
  /* màn rộng hơn điện thoại: các khối dùng cùng bố cục ảnh mẫu (rộng 1024) co theo chiều ngang khung, tối đa 1100px */
  .qlt-root .qlt-hm{--u:calc(min(100vw,var(--qlt-fw,100vw),1100px)/1024)}
}
@media (min-width:900px) and (pointer:fine){
  .qlt-root.qlt-framed.qlt-v2{--k:1.12px}                     /* banner + tìm kiếm + chip: cỡ vừa mắt trên máy tính */
  .qlt-root .qlt-hm .qlt-hfs{scrollbar-width:thin;scrollbar-color:#C5D3E6 transparent}
  .qlt-root .qlt-hm .qlt-hfs::-webkit-scrollbar{display:block;height:8px}
  .qlt-root .qlt-hm .qlt-hfs::-webkit-scrollbar-thumb{background:#C5D3E6;border-radius:4px}
}
/* thanh quảng bá: cao cố định 150px, rộng bằng chiều ngang web; ảnh tự cắt theo vị trí Admin chọn */
.qlt-promo{display:block;position:relative;width:100%;height:150px;margin:14px 0 0;overflow:hidden;background:#E6ECF5;text-decoration:none}
.qlt-promo img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;display:block}

/* tin thường: số tin mỗi hàng do admin chọn (WP Admin → Trang chủ Tin phòng) → biến --qlt-lc */
.qlt-v2 .qlt-list{grid-template-columns:repeat(var(--qlt-lc,1),minmax(0,1fr));gap:12px;padding:12px 14px 0}
.qlt-v2[data-lc="1"] .qlt-list{gap:14px}
.qlt-v2[data-lc="1"] .qlt-c2-ph{aspect-ratio:16/10}
.qlt-v2 .qlt-c2-ph{aspect-ratio:4/3}
.qlt-v2 .qlt-c2-ch{display:none}
.qlt-v2 .qlt-c2-tt{display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}
.qlt-v2 .qlt-c2-mt{flex-wrap:wrap;gap:6px 12px}
@media (min-width:900px) and (pointer:fine){
  .qlt-v2 .qlt-list{gap:18px;padding:16px 28px 0}
  .qlt-v2 .qlt-c2-ph{aspect-ratio:16/10}
}

/* điện thoại: chừa chỗ dưới cùng để tin cuối / phân trang không bị thanh tab cố định che (không phụ thuộc padding của khung cuộn) */
@media (max-width:899px), (pointer:coarse){
  .qlt-root{padding-bottom:0!important}
  .qlt-root::after{content:"";display:block;flex:none;height:calc(var(--qlt-tab-h) + env(safe-area-inset-bottom,0px) + 96px);pointer-events:none}
  .qlt-v2 .qlt-list+.qlt-pager{margin-bottom:12px}
}

/* phân trang */
.qlt-pager{display:flex;flex-wrap:wrap;justify-content:center;align-items:center;gap:8px;margin:22px 14px 6px}
.qlt-pg-n,.qlt-pg-b{min-width:42px;height:42px;padding:0 10px;border:1px solid #D8E4EE;border-radius:21px;background:#fff;color:#10285E;font:inherit;font-size:15px;font-weight:700;cursor:pointer;display:inline-grid;place-items:center}
.qlt-pg-n[aria-current="page"]{background:linear-gradient(135deg,#2DB566,#157F42);border-color:#157F42;color:#fff;cursor:default}
.qlt-pg-b:disabled{opacity:.4;cursor:not-allowed}
.qlt-pg-b svg{width:18px;height:18px}
.qlt-pg-gap{color:#7C8BA6;padding:0 2px}
.qlt-pg-n:not([aria-current]):hover,.qlt-pg-b:not(:disabled):hover{background:#EEF6F1}

/* hộp gia hạn tin nổi bật trong chi tiết phòng (chỉ hiện khi đã đăng nhập) */
.qlt-fx{margin:18px 0 0;padding:14px 16px;border:1px solid #CFE6D8;border-radius:16px;background:#F1FAF5;display:flex;flex-wrap:wrap;align-items:center;gap:10px 14px}
.qlt-fx>div{flex:1 1 180px;min-width:0}
.qlt-fx b{display:block;color:#10285E;font-size:15px}
.qlt-fx small{display:block;margin-top:2px;color:#5F6F8C;font-size:13px}
.qlt-fx .qlt-btn{flex:none}
.qlt-fx-m{flex-basis:100%;margin:0;font-size:13px;color:#5F6F8C}
.qlt-fx-m.ok{color:#157F42}.qlt-fx-m.er{color:var(--qlt-er)}

/* ==== Web MÁY TÍNH: dùng menu + độ rộng như trang chủ website (html.qlt-web do page-tin-phong.php đặt) ==== */
.qlt-desk-only{display:none}
@media (min-width:900px) and (pointer:fine){
  .qlt-desk-only{display:block}
  html.qlt-web,html.qlt-web body{height:auto!important;overflow:visible!important;background:var(--bg,#F5F8FE)!important}
  html.qlt-web body{overflow-x:clip!important}
  /* nội dung nằm trong khung .wrap của trang chủ: cùng bề rộng tối đa và lề hai bên với menu */
  html.qlt-web .qlt-root{position:static;inset:auto;height:auto;overflow:visible;width:100%;max-width:var(--wrap-max,1920px);margin:0 auto;
    padding:0 var(--gutter,40px);box-shadow:none;border-radius:0;
    --qlt-fw:calc(min(var(--qlt-bw,100vw),var(--wrap-max,1920px)) - 2 * var(--gutter,40px));--qlt-gx:0px}   /* theo % chiều ngang trang (--qlt-bw từ admin) */
  html.qlt-web .qlt-root.qlt-v2{--k:1.12px}
  html.qlt-web .qlt-root .qlt-hm{--u:calc(min(var(--qlt-fw),1440px)/1024)}
  html.qlt-web .qlt-root .qlt-h2-top{--u:calc(min(var(--qlt-fw),900px)/1024)}
  html.qlt-web .qlt-tabs{display:none}                          /* thanh tab dưới của app: trên web đã có menu */
  html.qlt-web .qlt-h2-ban{border-radius:0 0 28px 28px}
  html.qlt-web .qlt-promo{border-radius:14px}                   /* rộng bằng khung nội dung (bằng chiều ngang trang), cao 150px */
  html.qlt-web .qlt-sheet{width:min(980px,94vw)}
  /* Chi tiết phòng: rộng đúng bằng khung nội dung Tin phòng, đổi theo % chiều ngang trang trong admin */
  html.qlt-web #qlSheet{width:var(--qlt-fw);max-width:none}
  /* mép trái/phải các khối thẳng hàng với logo + menu (bỏ lề riêng của bản điện thoại) */
  html.qlt-web .qlt-h2-st,html.qlt-web .qlt-h2-tl,html.qlt-web .qlt-h2-sh{margin-left:0;margin-right:0}
  html.qlt-web .qlt-hfs{padding-left:0;padding-right:0;scroll-padding-left:0}
  html.qlt-web .qlt-v2 .qlt-search,html.qlt-web .qlt-v2 .qlt-meta{margin-left:0;margin-right:0}
  html.qlt-web .qlt-v2 .qlt-seg{padding-left:0;padding-right:0}
  html.qlt-web .qlt-v2 .qlt-list{padding-left:0;padding-right:0}
  html.qlt-web .qlt-h2-ban{margin:0}
}

/* Biểu đồ mảnh, gọn (so sánh mức giá + giá thuê theo quý) */
.qlt-chart{padding:26px 4px 2px;border-radius:16px;border-color:#E6EAF3;box-shadow:none}
.qlt-unit{font-size:11px;top:8px;letter-spacing:.1px}
.qlt-hist{padding-top:26px}
.qlt-chart .qlt-pin{filter:drop-shadow(0 1px 1.5px rgba(20,32,70,.18))}
.qlt-legend{gap:6px 14px;margin-top:10px;font-size:11.5px;color:var(--qlt-mu)}
.qlt-legend i{width:16px;height:2px;margin-right:6px}
.qlt-legend i[style*="border-radius:50%"]{width:8px!important;height:8px!important}
.qlt-cmpst small{font-size:11.5px}.qlt-cmpst b{font-size:14px;font-weight:700}

/* ===== Tin nổi bật: số tin mỗi hàng do admin chọn (data-fc trên khung; 0 = cuộn ngang) ===== */
.qlt-h2{--ub:calc(min(100vw,560px)/1024)}
[data-fc]:not([data-fc="0"]) .qlt-hfs{display:grid;grid-template-columns:repeat(var(--fc),minmax(0,1fr));gap:calc(var(--ub)*19);overflow:visible;scroll-snap-type:none;padding:calc(var(--ub)*8) calc(var(--ub)*49) calc(var(--ub)*20)}
[data-fc]:not([data-fc="0"]) .qlt-hf{width:auto;min-width:0}
.qlt-root[data-fc="1"] .qlt-hfs{--fc:1;--u:calc(var(--ub)*3.05)}
.qlt-root[data-fc="2"] .qlt-hfs{--fc:2;--u:calc(var(--ub)*1.49)}
.qlt-root[data-fc="3"] .qlt-hfs{--fc:3;--u:calc(var(--ub)*0.97)}
@media (min-width:900px) and (pointer:fine){
  html.qlt-web .qlt-root .qlt-hm{--ub:calc(min(var(--qlt-fw),1440px)/1024)}
  html.qlt-web [data-fc]:not([data-fc="0"]) .qlt-hfs{padding-left:0;padding-right:0}
  html.qlt-web .qlt-root[data-fc="1"] .qlt-hfs{--fc:1;--u:calc(var(--ub)*3.37)}
  html.qlt-web .qlt-root[data-fc="2"] .qlt-hfs{--fc:2;--u:calc(var(--ub)*1.65)}
  html.qlt-web .qlt-root[data-fc="3"] .qlt-hfs{--fc:3;--u:calc(var(--ub)*1.09)}
  html.qlt-web .qlt-root[data-fc="4"] .qlt-hfs{--fc:4;--u:calc(var(--ub)*0.8)}
}

/* ===== Tra cứu hoá đơn tiền phòng (dưới thanh tìm kiếm) ===== */
.qlt-inv{margin:10px 16px 6px;padding:12px 14px;background:#fff;border:1px solid #DCE6F2;border-radius:14px;box-sizing:border-box}
.qlt-inv-h{display:flex;align-items:center;gap:10px;margin-bottom:10px}
.qlt-inv-ic{width:34px;height:34px;border-radius:10px;background:#EAF2FD;color:#1F5DB5;display:inline-flex;align-items:center;justify-content:center;flex:none}
.qlt-inv-h b{display:block;font-size:14.5px;color:#14233A}
.qlt-inv-h small{display:block;font-size:12px;color:#6B7A90;margin-top:1px}
.qlt-inv-f{display:grid;grid-template-columns:1fr 1.3fr auto;gap:8px}
.qlt-inv-f input{min-width:0;height:42px;padding:0 12px;border:1px solid #CFDAE8;border-radius:10px;font-size:14px;background:#F8FBFE;color:#14233A;box-sizing:border-box}
.qlt-inv-f input:focus{outline:2px solid #1F5DB5;outline-offset:-1px;background:#fff}
.qlt-inv-go{height:42px;padding:0 16px;border:0;border-radius:10px;background:#1F5DB5;color:#fff;font-size:14px;font-weight:700;cursor:pointer;white-space:nowrap}
.qlt-inv-go:disabled{opacity:.6;cursor:default}
.qlt-inv-res:empty{display:none}
.qlt-inv-res{margin-top:10px;font-size:13.5px}
.qlt-inv-res.err{color:#B8433B;background:#FDF2F1;border-radius:10px;padding:9px 12px}
.qlt-inv-it{margin-top:10px;border:1px solid #DCE6F2;border-radius:12px;padding:10px;background:#F8FBFE}
.qlt-inv-it:first-child{margin-top:0}
.qlt-inv-top{display:flex;flex-direction:column;gap:2px;margin-bottom:8px}
.qlt-inv-top b{font-size:14px;color:#14233A}
.qlt-inv-top small,.qlt-inv-top span{font-size:12.5px;color:#4B5B72}
.qlt-inv-img{display:block;border:1px solid #DCE6F2;border-radius:8px;overflow:hidden;background:#fff}
.qlt-inv-img img{display:block;width:100%;height:auto}
.qlt-inv-dl{display:block;margin-top:9px;text-align:center;height:40px;line-height:40px;border-radius:10px;background:#1F5DB5;color:#fff !important;font-weight:700;font-size:14px;text-decoration:none}
@media (max-width:420px){.qlt-inv-f{grid-template-columns:1fr 1fr}.qlt-inv-go{grid-column:1 / -1}}

/* ---- Phòng đã cọc (kind = 'deposited') ---- */
.qlt-badge.deposited{background:#FFF1D6;color:#8A5200}
.qlt-stat.d i{background:#F2A516;box-shadow:0 0 0 3px rgba(242,165,22,.28)}
.qlt-c2-soon.dep{background:rgba(255,236,196,.97);color:#7A4A00}
.qlt-hf-dep{position:absolute;left:calc(var(--u)*16);bottom:calc(var(--u)*14);display:inline-flex;align-items:center;height:max(17px,calc(var(--u)*30));padding:0 max(7px,calc(var(--u)*14));border-radius:999px;background:rgba(255,236,196,.97);color:#7A4A00;font-style:normal;font-weight:700;font-size:max(10px,calc(var(--u)*17))}
.qlt-h2-dep h2 svg{color:#D98B00}

.qlt-d2-c2.d{background:#FFF1D6;color:#8A5200}
.qlt-d2-sc1.d{background:#FFF1D6;color:#8A5200}
.qlt-dep-note{display:flex;flex-direction:column;gap:3px;margin:12px 0;padding:12px 14px;border-radius:14px;background:#FFF4DE;border:1px solid #F2D9A0;color:#7A4A00;font-size:13px;line-height:1.45}
.qlt-dep-note b{font-size:14.5px;font-weight:800;color:#8A5200}

/* ---- Hạng thành viên theo thời gian tham gia ---- */
.qlt-rank{display:inline-flex;align-items:center;gap:4px;margin-top:7px;padding:3px 10px 3px 6px;border-radius:999px;background:var(--rkb);color:var(--rk);font-size:12px;font-weight:800;line-height:1;white-space:nowrap}
.qlt-rank svg{width:16px;height:16px;flex:none}
.qlt-rank svg path:last-child{fill:#fff}
.qlt-rank.rk1{--rk:#8A4F1D;--rkb:#F6E4D2}
.qlt-rank.rk2{--rk:#4B5A70;--rkb:#E6EBF2}
.qlt-rank.rk3{--rk:#8A6400;--rkb:#FFF1C2}
.qlt-rank.rk4{--rk:#0E6E8C;--rkb:#D9F1F8}
.qlt-rank.rk5{--rk:#2F49C9;--rkb:#E1E8FF}
.qlt-rank.rk6{--rk:#fff;--rkb:linear-gradient(135deg,#D6336C,#F59F00)}
.qlt-rank.rk6 svg path:last-child{fill:#D6336C}

/* ==== Tab "Tin phòng" (giống ảnh mẫu): header, nút sắp xếp, thẻ 1 tin / hàng (ảnh trái), quảng cáo, tin thường ==== */
.qlt-root[data-view="news"]>:not(#qlNews):not(.qlt-tabs):not(.qlt-sheet-bg):not(.qlt-sheet):not(.qlt-offline){display:none!important}
.qlt-root[data-view="news"]{background:#F4F9FD}
.qlt-news{display:none}
.qlt-root[data-view="news"] .qlt-news{display:block}
.qlt-nw-top{position:relative;height:calc(150px + env(safe-area-inset-top,0px));overflow:hidden;background:#BFE0F5}
.qlt-nw-top img{display:block;width:100%;height:100%;object-fit:cover;object-position:center top}
.qlt-nw-top::after{content:"";position:absolute;left:0;right:0;bottom:0;height:46px;background:linear-gradient(rgba(244,249,253,0),#F4F9FD)}
.qlt-nw-tb{position:absolute;z-index:2;right:14px;top:calc(12px + env(safe-area-inset-top,0px));display:flex;gap:10px}
.qlt-nw-ib{position:relative;display:grid;place-items:center;width:42px;height:42px;padding:0;border:0;border-radius:50%;background:#fff;box-shadow:0 2px 10px rgba(16,40,94,.18);cursor:pointer;text-decoration:none}
.qlt-nw-ib svg{width:22px;height:22px}
.qlt-nw-ib.s{color:#1B8F4F}.qlt-nw-ib.b{color:#1F5DB5}
.qlt-nw-ib.b i{position:absolute;right:8px;top:8px;width:9px;height:9px;border-radius:50%;background:#E5484D;border:2px solid #fff;box-sizing:content-box}
.qlt-nw-wrap{--nwg:#1B8F4F;--nwn:#10285E;--nwm:#5F6F8C;padding:0 14px 8px;font-family:Arial,"Liberation Sans",Helvetica,sans-serif;color:var(--nwn)}
.qlt-nw-head{padding:0 16px;margin-top:-6px;position:relative;z-index:1;font-family:Arial,"Liberation Sans",Helvetica,sans-serif}
.qlt-nw-head h1{margin:0;font-size:30px;line-height:1.15;font-weight:800;color:#10285E}
.qlt-nw-head p{margin:6px 0 0;font-size:14.5px;line-height:1.4;color:#5F6F8C}
.qlt-nw-chips{display:flex;align-items:center;gap:8px;margin:14px 0 14px;overflow-x:auto;scrollbar-width:none}
.qlt-nw-chips::-webkit-scrollbar{display:none}
.qlt-nw-chip{flex:none;display:inline-flex;align-items:center;gap:7px;height:42px;padding:0 15px;border:1px solid #E1EAF2;border-radius:21px;background:#fff;color:#1F5DB5;font:inherit;font-size:14px;font-weight:600;cursor:pointer;box-shadow:0 1px 6px rgba(16,40,94,.05)}
.qlt-nw-chip svg{flex:none}
.qlt-nw-chip[aria-pressed="true"]{background:linear-gradient(135deg,#2DAA5F,#157F42);border-color:#157F42;color:#fff}
.qlt-nw-cnt{flex:none;margin-left:auto;padding-left:6px;font-style:normal;font-size:15px;font-weight:700;color:#1F5DB5;white-space:nowrap}
.qlt-nw-sh{display:flex;align-items:center;justify-content:space-between;gap:10px;margin:20px 0 10px}
.qlt-nw-sh h2{margin:0;padding-left:10px;border-left:4px solid var(--nwg);font-size:20px;line-height:1.1;font-weight:800;color:var(--nwn)}
.qlt-nw-sh span{display:inline-flex;align-items:center;gap:3px;font-size:14px;font-weight:700;color:var(--nwn)}
.qlt-nw-sh span svg{width:16px;height:16px}
.qlt-nw-empty{margin:0 0 12px;padding:14px;border-radius:14px;background:#fff;border:1px dashed #CBD8E6;font-size:14px;color:var(--nwm)}
.qlt-nw-list{display:flex;flex-direction:column;gap:12px}
.qlt-nw{display:flex;align-items:stretch;gap:12px;padding:8px;background:#fff;border:1px solid #E6EEF5;border-radius:18px;box-shadow:0 3px 14px rgba(16,40,94,.06)}
.qlt-nw-ph{position:relative;flex:none;width:44%;min-height:140px;aspect-ratio:1.18/1;border-radius:14px;overflow:hidden;background:#E9F1F7}
.qlt-nw-phb{display:block;width:100%;height:100%;padding:0;border:0;background:none;cursor:pointer}
.qlt-nw-phb img{display:block;width:100%;height:100%;object-fit:cover}
.qlt-nw-phb>svg{position:absolute;left:50%;top:50%;transform:translate(-50%,-50%);width:36px;height:36px;color:#9DB0C6}
.qlt-nw-pill{position:absolute;left:7px;top:7px;display:inline-flex;align-items:center;gap:5px;height:26px;padding:0 11px 0 8px;border-radius:13px;background:linear-gradient(135deg,#3FA467,#1F8A4D);color:#fff;font-style:normal;font-size:12.5px;font-weight:700;pointer-events:none}
.qlt-nw-pill svg{width:16px;height:16px}
.qlt-nw-fl{position:absolute;left:7px;bottom:7px;display:inline-flex;align-items:center;gap:4px;height:26px;padding:0 11px 0 8px;border-radius:13px;font-style:normal;font-size:12.5px;font-weight:700;pointer-events:none}
.qlt-nw-fl.hot{background:#FFEFD2;color:#E8730C}
.qlt-nw-fl.soon{background:#FFF1D6;color:#8A5200;padding-left:11px}
.qlt-nw-fl.dep{background:#fff;color:#10285E;padding-left:11px}
.qlt-nw-fav{position:absolute;right:7px;top:7px;display:grid;place-items:center;width:34px;height:34px;padding:0;border:0;border-radius:50%;background:#fff;color:#A5B1C4;box-shadow:0 1px 6px rgba(16,40,94,.16);cursor:pointer}
.qlt-nw-fav svg{width:19px;height:19px}
.qlt-nw-fav[aria-pressed="true"]{color:#E5484D}
.qlt-nw-fav[aria-pressed="true"] svg{fill:currentColor}
.qlt-nw-bd{flex:1;min-width:0;display:flex;flex-direction:column;justify-content:center;padding:2px 2px 2px 0;border:0;background:none;text-align:left;font:inherit;color:inherit;cursor:pointer}
.qlt-nw-tt{display:-webkit-box;-webkit-line-clamp:3;-webkit-box-orient:vertical;overflow:hidden;font-size:15.5px;line-height:1.28;font-weight:800;color:var(--nwn);overflow-wrap:anywhere}
.qlt-nw-pr{display:block;margin-top:6px;font-size:19px;line-height:1.2;font-weight:800;color:var(--nwg)}
.qlt-nw-pr small{font-size:14px;font-weight:700;margin-left:1px}
.qlt-nw-lc{display:flex;align-items:center;gap:6px;margin-top:7px;font-size:14px;color:var(--nwm)}
.qlt-nw-lc svg{width:18px;height:18px;flex:none;color:#4F9BE0}
.qlt-nw-lc span{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.qlt-nw-st{display:flex;align-items:center;justify-content:space-between;gap:6px;margin-top:9px;padding:8px 10px;border-radius:11px;background:#EEF4FA;font-size:13px;color:#4C5F80}
.qlt-nw-st i{display:inline-flex;align-items:center;gap:5px;font-style:normal;white-space:nowrap}
.qlt-nw-st svg{width:18px;height:18px;flex:none;color:#6B7B96}
.qlt-nw-tr{display:flex;align-items:center;gap:6px;margin-top:9px;font-size:13.5px;font-weight:700;color:#1B8F4F}
.qlt-nw-tr>svg:first-child{width:17px;height:17px;flex:none}
.qlt-nw-tr>span{flex:1;min-width:0}
.qlt-nw-tr>svg:last-child{width:16px;height:16px;flex:none;color:#7D8CA6}
.qlt-nw-ad{position:relative;display:block;width:100%;margin:14px 0 0;border-radius:18px;overflow:hidden;background:#E9F1F7;box-shadow:0 3px 14px rgba(16,40,94,.08)}
.qlt-nw-ad img{display:block;width:100%;height:100%;object-fit:cover}
.qlt-nw-adtag{position:absolute;right:8px;top:8px;height:18px;padding:0 7px;display:inline-flex;align-items:center;border-radius:9px;background:rgba(16,40,94,.55);color:#fff;font-style:normal;font-size:10.5px;font-weight:600}
.qlt-nw-wrap .qlt-pager{margin-top:14px}
@media (max-width:360px){.qlt-nw-st{font-size:12px;padding:7px 8px}.qlt-nw-tt{font-size:14.5px}}
/* Thanh menu dưới: mọi tab cùng cỡ chữ, cùng độ đậm; tab đang chọn chỉ đổi màu + gạch chân */
.qlt-root .qlt-tab,.qlt-root .qlt-tab[aria-current="page"],.qlt-root .qlt-tab:active{font-size:11.5px;font-weight:600;line-height:1.2;letter-spacing:0}
.qlt-root .qlt-tab .f{display:block}.qlt-root .qlt-tab .o{display:none}
.qlt-d2-nav>*,.qlt-d2-nav>[aria-current="page"]{font-size:11.5px;font-weight:600}

/* ==== Tab "Tin phòng": hàng lọc tình trạng + Tỉnh/thành, Mức giá, Loại phòng, Tiện ích (dưới nút sắp xếp) ==== */
.qlt-nw-chips{margin-bottom:6px}
.qlt-nw-flt{margin:0 -14px 8px}
.qlt-v2 .qlt-nw-flt .qlt-seg{padding:2px 14px 10px;margin-bottom:0}
.qlt-v2 .qlt-nw-flt .qlt-dd{padding:2px 14px 6px}
.qlt-nw-wrap .qlt-ownchip{margin:12px 2px 0}

/* ===== QLNT v-nohscroll: KHÔNG trượt ngang trên điện thoại =====
   Thanh tab/chip/lọc -> xuống dòng; thẻ nổi bật/tin phòng -> lưới 2 cột; bảng -> danh sách thẻ (mỗi dòng 1 thẻ, nhãn bên trái – giá trị bên phải). */
@media (max-width:900px){
  html,html body{max-width:100%;overflow-x:clip}
  html body .fm-pills,html body .fm-tools,html body .tn-chips,html body .qla-tabs,html body .qla-nav,html body.qla-embed .qla-nav,
  html body .qlt-seg,html body .qlt-v2 .qlt-dd,html body .qlt-nw-chips,html body .qlt-dd,html body #sidebar,html body .co-notice-wrap{
    display:flex!important;flex-direction:row!important;flex-wrap:wrap!important;overflow:visible!important;overflow-x:visible!important;
    scroll-snap-type:none!important;margin-left:0!important;margin-right:0!important;gap:8px!important;width:auto!important;max-width:100%!important}
  html body .fm-pills>*,html body .fm-tools>*,html body .tn-chips>*,html body .qla-tabs>*,html body .qla-nav>*,html body .qlt-seg>*,
  html body .qlt-dd>*,html body .qlt-nw-chips>*{flex:0 1 auto!important;min-height:40px;scroll-snap-align:none!important;white-space:normal;max-width:100%}
  html body .qla-tabs{border-bottom:0!important}
  html body .qlt-feats,html body .qlt-hfs,html body .qlf-promo-row,html body .ql-testi-row{
    display:grid!important;grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:12px!important;overflow:visible!important;
    scroll-snap-type:none!important;margin-bottom:0!important;padding-left:14px!important;padding-right:14px!important}
  html body .qlt-feats>*,html body .qlt-hfs>*,html body .qlf-promo-row>*,html body .ql-testi-row>*{width:auto!important;min-width:0!important;max-width:none!important;flex:none!important}
  html body .ql-testi-row{grid-template-columns:1fr!important}
  /* Bảng -> thẻ */
  html body .tbl-wrap,html body #content .tbl-wrap,html body .qla-adm-scroll{overflow:visible!important;overflow-x:visible!important;border:0!important;background:transparent!important;box-shadow:none!important;max-width:100%!important}
  html body .tbl-wrap table,html body .qla-adm-scroll table,html body table.qlnt-hist,html body table.qla-adm-table{display:block!important;width:100%!important;min-width:0!important;white-space:normal!important;border:0!important}
  html body .tbl-wrap thead,html body .qla-adm-scroll thead,html body table.qlnt-hist thead,html body table.qla-adm-table thead{display:none!important}
  html body .tbl-wrap tbody,html body .tbl-wrap tfoot,html body .qla-adm-scroll tbody,html body table.qlnt-hist tbody,html body table.qla-adm-table tbody{display:block!important}
  html body .tbl-wrap tr,html body .qla-adm-scroll tr,html body table.qlnt-hist tr,html body table.qla-adm-table tr{display:block!important;margin:0 0 10px!important;padding:4px 14px!important;background:#fff!important;border:1px solid #E5EAF2!important;border-radius:14px!important;box-shadow:0 1px 2px rgba(22,32,58,.04)}
  html body .tbl-wrap td,html body .tbl-wrap th,html body .qla-adm-scroll td,html body table.qlnt-hist td,html body table.qla-adm-table td{
    display:flex!important;align-items:center;justify-content:space-between;gap:12px;width:auto!important;min-width:0!important;padding:9px 0!important;border:0!important;border-bottom:1px dashed #E9EEF3!important;
    text-align:right!important;white-space:normal!important;overflow-wrap:anywhere;background:transparent!important}
  html body .tbl-wrap td:last-child,html body .qla-adm-scroll td:last-child,html body table.qlnt-hist td:last-child,html body table.qla-adm-table td:last-child{border-bottom:0!important}
  html body .tbl-wrap td[data-label]::before,html body .qla-adm-scroll td[data-label]::before,html body table.qlnt-hist td[data-label]::before,html body table.qla-adm-table td[data-label]::before{
    content:attr(data-label);flex:0 0 40%;max-width:40%;text-align:left;font-size:12.5px;font-weight:600;color:#6F7F79}
  html body .tbl-wrap td input,html body .tbl-wrap td select{max-width:60%;min-height:40px}
  html body .tbl-wrap td[colspan]{justify-content:center;text-align:center!important}
}

/* ==== Tab "Thư viện": banner Hà Nội + tiêu đề trong tấm sóng + tìm kiếm/Lọc + danh mục + danh sách tài liệu tải về (quản trị: WP Admin → Ứng dụng di động → Thư viện tài liệu) ==== */
/* Mọi kích thước/chữ đo theo ảnh mẫu 1024 đơn vị ngang: 1 đơn vị = --u (theo bề ngang màn hình) → chữ và khoảng cách co giãn đúng tỉ lệ ảnh. */
.qlt-root[data-view="lib"]>:not(#qlLib):not(.qlt-tabs):not(.qlt-sheet-bg):not(.qlt-sheet):not(.qlt-offline){display:none!important}
.qlt-root[data-view="lib"]{background:#F8FBFE}
.qlt-lib{display:none}
.qlt-root[data-view="lib"] .qlt-lib{display:block}
.qlt-lib{--g:#1B8F4F;--nv:#10285E;--mu:#6B7A93;--u:calc(min(100vw,560px)/1024);font-family:Arial,"Liberation Sans",Helvetica,sans-serif;color:var(--nv)}
html.qlt-web .qlt-lib{--u:calc(min(var(--qlt-fw,100vw),900px)/1024)}
.qlt-lib .k-pdf{--k:#E5484D;--kb:#FDEDED}.qlt-lib .k-doc{--k:#2F6FD0;--kb:#E8F1FC}.qlt-lib .k-xls{--k:#1B8F4F;--kb:#E6F5EC}.qlt-lib .k-ppt{--k:#E8730C;--kb:#FDF0E3}.qlt-lib .k-zip{--k:#6B7280;--kb:#EEF0F3}.qlt-lib .k-img{--k:#7B61D6;--kb:#F0ECFB}.qlt-lib .k-other{--k:#7D8796;--kb:#EEF1F5}
/* -- banner -- */
.qlt-lib-ban .qlt-h2-ban{background:#fff}
.qlt-lib-ban .qlt-h2-ban::before{display:none}
.qlt-lib-ban .qlt-h2-hi{height:calc(var(--u)*540);overflow:hidden}
.qlt-lib-ban{padding-bottom:0}
.qlt-lib-ttl{position:absolute;z-index:2;left:calc(var(--u)*40);top:calc(var(--u)*360);width:calc(var(--u)*650);display:flex;align-items:center;gap:calc(var(--u)*26)}
.qlt-lib-back{flex:none;display:grid;place-items:center;width:max(30px,calc(var(--u)*62));height:max(30px,calc(var(--u)*62));margin:0;padding:0;border:0;border-radius:50%;background:none;color:var(--g);cursor:pointer;-webkit-tap-highlight-color:transparent}
.qlt-lib-back svg{width:max(20px,calc(var(--u)*48));height:max(20px,calc(var(--u)*48))}
.qlt-lib-back:active{opacity:.6}
.qlt-lib-tt{min-width:0}
.qlt-lib-tt h1{margin:0;font-size:max(20px,calc(var(--u)*57));line-height:1.12;font-weight:800;letter-spacing:-.01em;color:var(--n);white-space:nowrap}
.qlt-lib-tt p{margin:calc(var(--u)*6) 0 0;font-size:max(8px,calc(var(--u)*21));line-height:1.35;color:#5F6F8C}
.qlt-lib-wrap{padding:calc(var(--u)*4) calc(var(--u)*32) calc(var(--u)*10)}
/* -- tìm kiếm + Lọc -- */
.qlt-lib-search{display:flex;align-items:center;gap:calc(var(--u)*16)}
.qlt-lib-search label{flex:1;min-width:0;display:flex;align-items:center;gap:calc(var(--u)*16);height:calc(var(--u)*89);padding:0 calc(var(--u)*28);border-radius:999px;background:#fff;border:1.5px solid #D9E5F1;box-shadow:0 2px 10px rgba(16,40,94,.04);color:#2F6FD0}
.qlt-lib-search label svg{flex:none;width:calc(var(--u)*42);height:calc(var(--u)*42)}
.qlt-lib-search input{flex:1;min-width:0;height:100%;padding:0;border:0;outline:0;background:none;-webkit-appearance:none;appearance:none;font:inherit;font-size:max(11px,calc(var(--u)*26));color:var(--nv);text-overflow:ellipsis}
.qlt-lib-search input::placeholder{color:#8A97AD;text-overflow:ellipsis}
.qlt-lib-fb{flex:none;display:inline-flex;align-items:center;justify-content:center;gap:calc(var(--u)*12);height:calc(var(--u)*89);padding:0 calc(var(--u)*32);border:0;border-radius:999px;background:#E0F2E7;color:#157F42;font:inherit;font-size:max(10px,calc(var(--u)*27));font-weight:700;cursor:pointer}
.qlt-lib-fb svg{width:calc(var(--u)*42);height:calc(var(--u)*42)}
.qlt-lib-fb[aria-expanded="true"]{background:#1B8F4F;color:#fff}
.qlt-lib-fp{display:grid;gap:12px;margin-top:10px;padding:12px;border-radius:16px;background:#fff;border:1px solid #E1EAF2}
.qlt-lib-fp[hidden]{display:none}
.qlt-lib-fp small{display:block;margin-bottom:6px;font-size:11px;font-weight:700;color:#5F6F8C}
.qlt-lib-fp .r{display:flex;flex-wrap:wrap;gap:8px}
.qlt-lib-fc{height:30px;padding:0 12px;border:1px solid #DDE6F0;border-radius:15px;background:#F6F9FC;color:#2B4A7E;font:inherit;font-size:12px;font-weight:600;cursor:pointer}
.qlt-lib-fc[aria-pressed="true"]{background:#1B8F4F;border-color:#1B8F4F;color:#fff}
/* -- danh mục -- */
.qlt-lib-cats{display:flex;gap:calc(var(--u)*14);margin:calc(var(--u)*34) calc(var(--u)*-32) 0;padding:calc(var(--u)*4) calc(var(--u)*32) calc(var(--u)*8);overflow-x:auto;scrollbar-width:none}
.qlt-lib-cats::-webkit-scrollbar{display:none}
.qlt-lib-cat{position:relative;flex:1 0 calc(var(--u)*150);min-width:0;display:flex;flex-direction:column;align-items:center;gap:calc(var(--u)*12);padding:calc(var(--u)*14) calc(var(--u)*4) calc(var(--u)*14);border:1.5px solid #E6EDF5;border-radius:calc(var(--u)*24);background:#fff;font:inherit;color:var(--nv);cursor:pointer;box-shadow:0 2px 8px rgba(16,40,94,.03)}
.qlt-lib-cat .ci{display:grid;place-items:center;width:calc(var(--u)*100);height:calc(var(--u)*100);border-radius:50%;background:var(--lc);color:#fff}
.qlt-lib-cat .ci svg{width:calc(var(--u)*52);height:calc(var(--u)*52)}
.qlt-lib-cat b{font-size:max(9px,calc(var(--u)*25));line-height:1.2;font-weight:600;text-align:center;overflow-wrap:anywhere}
.qlt-lib-cat em{margin-top:calc(var(--u)*-2);font-size:max(9px,calc(var(--u)*24));line-height:1;font-style:normal;font-weight:500;color:#5F6F8C}
.qlt-lib-cat[aria-pressed="true"]{border-color:#2DAA5F;background:#E9F6EE}
.qlt-lib-cat[aria-pressed="true"] b{color:#157F42;font-weight:700}
.qlt-lib-cat[aria-pressed="true"] em{color:#157F42;font-weight:600}
/* -- tiêu đề danh sách + sắp xếp -- */
.qlt-lib-sh{display:flex;align-items:center;justify-content:space-between;gap:10px;margin:calc(var(--u)*40) 0 calc(var(--u)*28)}
.qlt-lib-sh h2{display:flex;align-items:center;gap:calc(var(--u)*24);min-width:0;margin:0;font-size:max(12px,calc(var(--u)*33));line-height:1.15;font-weight:800;color:var(--nv)}
.qlt-lib-sh h2 svg{flex:none;width:calc(var(--u)*40);height:calc(var(--u)*40);color:#2F6FD0;margin-left:calc(var(--u)*4)}
.qlt-lib-sh h2 span{min-width:0;overflow-wrap:anywhere}
.qlt-lib-sort{position:relative;flex:none}
.qlt-lib-sbtn{display:inline-flex;align-items:center;gap:calc(var(--u)*14);padding:8px 2px 8px 8px;border:0;background:none;color:#1F5DB5;font:inherit;font-size:max(10px,calc(var(--u)*26));font-weight:500;cursor:pointer}
.qlt-lib-sbtn svg{width:calc(var(--u)*20);height:calc(var(--u)*20)}
.qlt-lib-smenu{position:absolute;right:0;top:calc(100% + 2px);z-index:6;min-width:140px;padding:5px;border-radius:12px;background:#fff;border:1px solid #E1EAF2;box-shadow:0 10px 28px rgba(16,40,94,.18)}
.qlt-lib-smenu[hidden]{display:none}
.qlt-lib-smenu button{display:block;width:100%;padding:9px 11px;border:0;border-radius:8px;background:none;color:var(--nv);font:inherit;font-size:13px;font-weight:600;text-align:left;cursor:pointer}
.qlt-lib-smenu button[aria-checked="true"]{background:#E9F6EE;color:#157F42;font-weight:800}
.qlt-lib-n{flex:none;font-size:12px;font-weight:700;color:#1F5DB5}
/* -- thẻ tài liệu -- */
.qlt-lib-list{display:flex;flex-direction:column;gap:calc(var(--u)*20)}
.qlt-lib-doc{display:flex;align-items:center;gap:calc(var(--u)*10);padding:calc(var(--u)*24) calc(var(--u)*20) calc(var(--u)*24) calc(var(--u)*24);background:#fff;border:1px solid #E8EFF6;border-radius:calc(var(--u)*22);box-shadow:0 2px 10px rgba(16,40,94,.05)}
.qlt-lib-open{flex:1;min-width:0;display:flex;align-items:center;gap:calc(var(--u)*30);color:inherit;text-decoration:none}
.qlt-lib-th{position:relative;flex:none;display:grid;place-items:center;width:calc(var(--u)*115);height:calc(var(--u)*115);border-radius:calc(var(--u)*22);background:var(--kb,#EEF3F9);color:var(--k,#7D8796)}
.qlt-lib-th svg{width:calc(var(--u)*56);height:calc(var(--u)*68);margin-top:calc(var(--u)*-12)}
.qlt-lib-th em{position:absolute;left:50%;bottom:calc(var(--u)*17);transform:translateX(-50%);min-width:calc(var(--u)*62);padding:calc(var(--u)*3) calc(var(--u)*8);border-radius:calc(var(--u)*8);background:var(--k);color:#fff;font-size:max(6.5px,calc(var(--u)*17));line-height:1.25;font-style:normal;font-weight:800;text-align:center}
.qlt-lib-bd{flex:1;min-width:0;display:flex;flex-direction:column;gap:calc(var(--u)*7)}
.qlt-lib-bd .tt{display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;font-size:max(10px,calc(var(--u)*27));line-height:1.25;font-weight:700;color:var(--nv);overflow-wrap:anywhere}
.qlt-lib-bd .ds{display:-webkit-box;-webkit-line-clamp:1;-webkit-box-orient:vertical;overflow:hidden;font-size:max(8px,calc(var(--u)*20));line-height:1.35;color:var(--mu)}
.qlt-lib-mt{display:flex;align-items:center;gap:calc(var(--u)*40);margin-top:calc(var(--u)*8);font-size:max(8px,calc(var(--u)*19));color:var(--mu);white-space:nowrap}
.qlt-lib-mt i{display:inline-flex;align-items:center;gap:calc(var(--u)*10);font-style:normal}
.qlt-lib-mt i svg{flex:none;width:calc(var(--u)*24);height:calc(var(--u)*24);color:#3E6BB0}
.qlt-lib-dl{flex:none;display:inline-flex;align-items:center;justify-content:center;gap:calc(var(--u)*12);height:calc(var(--u)*62);padding:0 calc(var(--u)*28);border-radius:999px;background:linear-gradient(135deg,#2A9654,#1B7F45);color:#fff;font-size:max(10px,calc(var(--u)*24));font-weight:700;text-decoration:none;box-shadow:0 3px 8px rgba(27,127,69,.25)}
.qlt-lib-dl svg{width:calc(var(--u)*34);height:calc(var(--u)*34)}
.qlt-lib-dl:active{opacity:.85}
.qlt-lib-chev{flex:none;display:grid;place-items:center;width:calc(var(--u)*30);color:#8A97AD;text-decoration:none}
.qlt-lib-chev svg{width:calc(var(--u)*24);height:calc(var(--u)*24)}
.qlt-lib .qlt-state{margin-top:10px}
/* ===== v1.4.93 — Thư viện: số lượt tải, tài liệu tải nhiều xếp lên đầu, huy hiệu "Nổi bật" (từ 100 lượt) và nút "Xem" file bên cạnh "Tải về" ===== */
button.qlt-lib-open{appearance:none;-webkit-appearance:none;background:none;border:0;padding:0;margin:0;font:inherit;text-align:left;cursor:pointer;-webkit-tap-highlight-color:transparent}
.qlt-lib-acts{flex:none;display:inline-flex;align-items:center;gap:calc(var(--u)*14)}
.qlt-lib-vw{flex:none;display:inline-flex;align-items:center;justify-content:center;gap:calc(var(--u)*10);height:calc(var(--u)*62);padding:0 calc(var(--u)*24);border-radius:999px;border:1.5px solid #2A9654;background:#fff;color:#1B7F45;font:inherit;font-size:max(10px,calc(var(--u)*24));font-weight:700;cursor:pointer;-webkit-tap-highlight-color:transparent}
.qlt-lib-vw svg{width:calc(var(--u)*34);height:calc(var(--u)*34)}
.qlt-lib-vw:active{background:#E9F6EE}
.qlt-lib-doc.is-hot{border-color:#FFD7A3;background:linear-gradient(135deg,#FFFDF7,#FFF5E3);box-shadow:0 2px 12px rgba(245,140,20,.16)}
.qlt-lib-hot{align-self:flex-start;display:inline-flex;align-items:center;gap:calc(var(--u)*8);padding:calc(var(--u)*5) calc(var(--u)*16) calc(var(--u)*5) calc(var(--u)*12);border-radius:999px;background:linear-gradient(135deg,#FF8A1F,#F0481E);color:#fff;font-size:max(8px,calc(var(--u)*19));font-weight:800;line-height:1.2;box-shadow:0 2px 6px rgba(240,72,30,.28)}
.qlt-lib-hot svg{width:calc(var(--u)*24);height:calc(var(--u)*24)}
.qlt-lib-mt{flex-wrap:wrap;gap:calc(var(--u)*6) calc(var(--u)*30)}
.qlt-lib-mt i.dn{color:#C2570C;font-weight:700}
.qlt-lib-mt i.dn svg{color:#E8730C}
.qlt-lib-mt i.dn.vw{color:#1D6FB8;font-weight:700}
.qlt-lib-mt i.dn.vw svg{color:#2B8DE0}
/* -- xem trước file (toàn màn hình) -- */
html.qlt-lib-vo{overflow:hidden}
.qlt-lib-view{position:fixed;inset:0;z-index:2147483000;display:flex;flex-direction:column;background:#F3F6FB;color:#10285E;font-family:-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,"Helvetica Neue",Arial,sans-serif}
.qlt-lv-top{flex:none;display:flex;align-items:center;gap:10px;padding:calc(env(safe-area-inset-top,0px) + 10px) 12px 10px;background:#fff;border-bottom:1px solid #E3EAF3}
.qlt-lv-x{flex:none;display:grid;place-items:center;width:38px;height:38px;border:0;border-radius:50%;background:#EEF3F9;color:#10285E;cursor:pointer}
.qlt-lv-tt{flex:1;min-width:0;display:flex;flex-direction:column;gap:1px}
.qlt-lv-tt b{font-size:15px;line-height:1.25;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.qlt-lv-tt small{font-size:12px;color:#5F6F8C}
.qlt-lv-dl{flex:none;display:inline-flex;align-items:center;gap:6px;height:38px;padding:0 14px;border-radius:999px;background:linear-gradient(135deg,#2A9654,#1B7F45);color:#fff;font-size:13.5px;font-weight:700;text-decoration:none}
.qlt-lv-dl svg{width:18px;height:18px}
.qlt-lv-bd{position:relative;flex:1;min-height:0;display:flex;background:#E8EEF6;padding-bottom:env(safe-area-inset-bottom,0px)}
.qlt-lv-fr{flex:1;width:100%;height:100%;border:0;background:#fff}
.qlt-lv-img{margin:auto;max-width:100%;max-height:100%;object-fit:contain}
.qlt-lv-ld{position:absolute;left:50%;top:50%;transform:translate(-50%,-50%);display:flex;flex-direction:column;align-items:center;gap:10px;max-width:80%;padding:16px 20px;border-radius:14px;background:rgba(255,255,255,.94);box-shadow:0 4px 18px rgba(16,40,94,.15);font-size:13px;text-align:center;pointer-events:none}
.qlt-lv-ld i{width:26px;height:26px;border-radius:50%;border:3px solid #CFE3D8;border-top-color:#1B8F4F;animation:qltLvSp .8s linear infinite}
.qlt-lv-ld.slow i{display:none}
.qlt-lv-ld a{pointer-events:auto;color:#1B7F45;font-weight:700}
.qlt-lv-ld.done{display:none}
@keyframes qltLvSp{to{transform:rotate(360deg)}}

/* ===== v1.4.92 — Tab "Tin phòng" làm lại giống ảnh mẫu (banner sóng, tiêu đề + logo, tìm kiếm + Bản đồ, chip tình trạng 2 dòng, ô lọc, Sắp xếp, thẻ tin có huy hiệu + tiện ích) ===== */
.qlt-news{background:linear-gradient(#F7FAFE,#F3F7FD)}
.qlt-nwb{--nwu:min(100vw,560px);background:#F7FAFE;font-family:-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,"Helvetica Neue",Arial,sans-serif}
.qlt-nwb-hi{position:relative;height:calc(env(safe-area-inset-top,0px) + var(--nwu)*.345);overflow:hidden;background:#BFE0F5}
.qlt-nwb-hi>img{position:absolute;left:0;top:env(safe-area-inset-top,0px);width:100%;height:calc(100% - env(safe-area-inset-top,0px));object-fit:cover;object-position:center top;display:block;user-select:none;-webkit-user-drag:none}
.qlt-nwb-wave{position:absolute;left:0;bottom:-1px;width:100%;height:calc(var(--nwu)*.1);display:block}
.qlt-nwb-ib{position:absolute;z-index:3;top:calc(env(safe-area-inset-top,0px) + var(--nwu)*.045);display:grid;place-items:center;width:36px;height:36px;color:#fff;text-decoration:none}
.qlt-nwb-ib.b{right:calc(var(--nwu)*.115)}.qlt-nwb-ib.u{right:calc(var(--nwu)*.03)}
.qlt-nwb-ib svg{width:26px;height:26px;filter:drop-shadow(0 1px 2px rgba(0,0,0,.25))}
.qlt-nwb-ib i{position:absolute;right:7px;top:6px;width:8px;height:8px;border-radius:50%;background:#EF4444;border:1.5px solid #fff}
.qlt-nwb-hd{position:relative;z-index:2;display:flex;align-items:center;gap:13px;padding:0 14px;margin-top:-17px}
.qlt-nwb-lg{flex:none;width:25px;height:25px;display:block}.qlt-nwb-lg svg{width:100%;height:100%;display:block}
.qlt-nwb-hd h1{margin:0;font-size:24px;line-height:1.15;font-weight:800;color:#0F2D6B;letter-spacing:-.2px}
.qlt-nwb-sub{margin:5px 0 0;padding:0 14px;font-size:12.5px;line-height:1.4;color:#6F7E9A}
.qlt-news .qlt-nw-wrap{padding:12px 12px 10px;--nwg:#0E9B4A;--nwn:#10285E;--nwm:#5F6F8C}
.qlt-nw-sr{display:flex;gap:7px;align-items:stretch}
.qlt-nw-q{flex:1;min-width:0;display:flex;align-items:center;gap:9px;height:38px;padding:0 12px;background:#fff;border:1px solid #E6ECF5;border-radius:19px;box-shadow:0 2px 8px rgba(30,70,140,.06);color:#2E6FD6}
.qlt-nw-q svg{width:19px;height:19px;flex:none}
.qlt-nw-q input{flex:1;min-width:0;height:100%;border:0;outline:0;background:none;font:inherit;font-size:12.5px;color:#10285E;padding:0;-webkit-appearance:none;appearance:none}
.qlt-nw-q input::placeholder{color:#8A97B1;opacity:1}
.qlt-nw-q input::-webkit-search-cancel-button{display:none}
.qlt-nw-map{flex:none;display:inline-flex;align-items:center;justify-content:center;gap:6px;height:38px;padding:0 12px;background:#fff;border:1px solid #E6ECF5;border-radius:19px;box-shadow:0 2px 8px rgba(30,70,140,.06);color:#0E9B4A;font-size:12.5px;font-weight:700;text-decoration:none}
.qlt-nw-map svg{width:19px;height:19px}
.qlt-nwcs{display:flex;gap:8px;margin-top:12px;overflow-x:auto;scrollbar-width:none;padding:2px 1px 4px}
.qlt-nwcs::-webkit-scrollbar{display:none}
.qlt-nwc{flex:1 1 0;min-width:104px;display:flex;align-items:center;gap:8px;height:42px;padding:0 10px 0 12px;background:#fff;border:1px solid #E6ECF5;border-radius:18px;box-shadow:0 2px 8px rgba(30,70,140,.06);color:#10285E;font:inherit;text-align:left;cursor:pointer}
.qlt-nwc .tx{flex:1;min-width:0;display:flex;flex-direction:column;line-height:1.2}
.qlt-nwc b{font-size:12.5px;font-weight:700;white-space:nowrap}
.qlt-nwc small{font-size:11.5px;color:#7C8AA5;font-weight:500}
.qlt-nwc>svg{flex:none;width:13px;height:13px;color:#9AA7BF}
.qlt-nwc .ic{flex:none;display:grid;place-items:center}.qlt-nwc .ic svg{width:20px;height:20px}
.qlt-nwc .qd{flex:none;width:14px;height:14px;border-radius:50%;background:#B7C0D3;margin-right:1px}
.qlt-nwc .qd.vacant{background:#2D9CFF;box-shadow:0 0 0 3px rgba(45,156,255,.15)}
.qlt-nwc .qd.deposited{background:#F2A93B}.qlt-nwc .qd.saved{background:#E5484D}
.qlt-nwc[aria-pressed="true"]{background:linear-gradient(135deg,#17A857,#0B8C45);border-color:#0B8C45;color:#fff;box-shadow:0 4px 12px rgba(14,155,74,.28)}
.qlt-nwc[aria-pressed="true"] small{color:rgba(255,255,255,.92)}
.qlt-nwc[aria-pressed="true"]>svg{color:#fff}
.qlt-nwdd{margin-top:8px;display:flex;flex-direction:column;gap:7px}
.qlt-nwdd .r{display:flex;align-items:center;gap:8px;flex-wrap:nowrap}
.qlt-nwdd .qlt-dd-p{flex:none;display:inline-flex;align-items:center;gap:8px;height:36px;min-height:36px;padding:0 13px;background:#fff;border:1px solid #E6ECF5;border-radius:18px;box-shadow:0 2px 8px rgba(30,70,140,.05);color:#10285E;font:inherit;font-size:12.5px;font-weight:500;cursor:pointer}
.qlt-nwdd .qlt-dd-p>svg:first-child{width:18px;height:18px;color:#10285E}
.qlt-nwdd .qlt-dd-p>svg:last-child{width:14px;height:14px;color:#8A97B1;margin-left:2px}
.qlt-nwdd .qlt-dd-p.on{border-color:#0E9B4A;color:#0B7A3A;background:#F0FAF4}
.qlt-nw-sort{position:relative;margin-left:auto}
.qlt-nw-sb{display:inline-flex;align-items:center;gap:6px;height:36px;padding:0 4px;border:0;background:none;color:#1F5DB5;font:inherit;font-size:12.5px;font-weight:600;cursor:pointer}
.qlt-nw-sb svg{width:17px;height:17px}.qlt-nw-sb svg:last-child{width:14px;height:14px}
.qlt-nw-sm{position:absolute;right:0;top:100%;z-index:20;min-width:170px;padding:6px;background:#fff;border:1px solid #E1E8F2;border-radius:14px;box-shadow:0 10px 28px rgba(20,50,100,.18)}
.qlt-nw-sm[hidden]{display:none}
.qlt-nw-sm button{display:block;width:100%;padding:10px 12px;border:0;background:none;border-radius:9px;text-align:left;font:inherit;font-size:13px;color:#10285E;cursor:pointer}
.qlt-nw-sm button[aria-checked="true"]{background:#E8F6EE;color:#0B7A3A;font-weight:700}
.qlt-news .qlt-nw-list{gap:10px;margin-top:10px}
.qlt-news .qlt-nw-list+.qlt-nw-list{margin-top:10px}
.qlt-news .qlt-nw{align-items:stretch;gap:12px;padding:8px;background:#fff;border:1px solid #EDF1F7;border-radius:16px;box-shadow:0 3px 12px rgba(30,70,140,.07)}
.qlt-news .qlt-nw-ph{width:41%;min-height:128px;aspect-ratio:auto;border-radius:12px}
.qlt-news .qlt-nw-pill{left:6px;top:6px;height:24px;padding:0 10px 0 7px;gap:5px;border-radius:12px;background:#12A150;color:#fff;font-size:11px;font-weight:700;font-style:normal;box-shadow:0 1px 4px rgba(0,0,0,.18)}
.qlt-news .qlt-nw-pill svg{width:15px;height:15px}
.qlt-news .qlt-nw-pill.soon{background:#E58A00}.qlt-news .qlt-nw-pill.dep{background:#6B7A99}
.qlt-news .qlt-nw-fav{right:6px;top:6px;width:30px;height:30px;background:rgba(255,255,255,.95);color:#7A89A6;box-shadow:0 1px 4px rgba(0,0,0,.15)}
.qlt-news .qlt-nw-fav svg{width:17px;height:17px}
.qlt-news .qlt-nw-fl{left:6px;bottom:6px;height:24px;padding:0 10px 0 7px;gap:5px;border-radius:12px;font-size:11px;font-weight:700;font-style:normal}
.qlt-news .qlt-nw-fl svg{width:15px;height:15px}
.qlt-news .qlt-nw-fl.hot{background:#FFEFDB;color:#F26A1B}
.qlt-news .qlt-nw-fl.reg{background:#EAF2FF;color:#1F5DB5}
.qlt-news .qlt-nw-bd{position:relative;justify-content:flex-start;padding:2px 0 0;text-align:left}
.qlt-news .qlt-nw-tt{font-size:13.5px;line-height:1.3;font-weight:800;color:#0F2D6B;-webkit-line-clamp:2}
.qlt-news .qlt-nw-pr{margin-top:5px;font-size:18px;line-height:1.2;font-weight:800;color:var(--nwg)}
.qlt-news .qlt-nw-pr small{font-size:13px;font-weight:700;margin-left:2px}
.qlt-news .qlt-nw-lc{margin-top:5px;gap:5px;font-size:12px;color:#5F6F8C;padding-right:20px;position:relative}
.qlt-news .qlt-nw-lc svg{width:16px;height:16px;color:#2E8BE6}
.qlt-news .qlt-nw-lc .go{position:absolute;right:0;top:50%;transform:translateY(-50%);width:16px;height:16px;color:#2B3A5C;overflow:visible}
.qlt-news .qlt-nw-st{margin-top:7px;padding:5px 10px;border-radius:12px;background:#EAF1FC;color:#44546F;font-size:11.5px;font-weight:500;justify-content:flex-start}
.qlt-news .qlt-nw-st svg{width:16px;height:16px;color:#6B7B96}
.qlt-nw-am{display:flex;align-items:center;justify-content:space-between;gap:4px;margin-top:8px;font-size:11px;color:#5F6F8C}
.qlt-nw-am i{display:inline-flex;align-items:center;gap:4px;font-style:normal;white-space:nowrap;min-width:0}
.qlt-nw-am svg{width:17px;height:17px;flex:none;color:#0F2D6B}
.qlt-nw-go{display:none}
.qlt-nwb-hi{background:#F7FAFE}
.qlt-nwcs{gap:7px;padding:2px 2px 12px;margin-bottom:-6px}
.qlt-nwc{min-width:0;gap:7px;padding:0 8px 0 10px;border-radius:17px}
.qlt-nwc b{font-size:12px}.qlt-nwc small{font-size:11px}
.qlt-nwc>svg{width:11px;height:11px}
.qlt-nwc[aria-pressed="true"]{min-width:0}
.qlt-nwc .ic svg{width:19px;height:19px}.qlt-nwc .qd{width:13px;height:13px}
.qlt-nwdd .r{gap:7px}
.qlt-nwdd .qlt-dd-p{gap:6px;padding:0 11px;font-size:12px}
.qlt-nwdd .qlt-dd-p>svg:last-child{margin-left:0}
.qlt-nw-q{gap:8px;padding:0 10px}.qlt-nw-q input{font-size:12px}
.qlt-nw-map{padding:0 10px;gap:5px;font-size:12px}
/* hiệu chỉnh cỡ chữ/kích thước sát ảnh mẫu */
.qlt-nwb-hd{margin-top:-6px;gap:11px}.qlt-nwb-lg{width:23px;height:23px}
.qlt-nwb-hd h1{font-size:22px}.qlt-nwb-sub{font-size:11.5px;margin-top:4px}
.qlt-news .qlt-nw-wrap{padding:10px 12px 10px}
.qlt-nw-q,.qlt-nw-map{height:34px;border-radius:17px}.qlt-nw-q svg,.qlt-nw-map svg{width:17px;height:17px}
.qlt-nw-q input,.qlt-nw-map{font-size:11.5px}
.qlt-nwcs{margin-top:10px}
.qlt-nwc{height:36px;border-radius:16px;gap:6px}
.qlt-nwc b{font-size:11.5px}.qlt-nwc small{font-size:10.5px}
.qlt-nwc .ic svg{width:17px;height:17px}.qlt-nwc .qd{width:12px;height:12px}
.qlt-nwdd{gap:6px;margin-top:6px}
.qlt-nwdd .qlt-dd-p{height:32px;min-height:32px;font-size:11.5px;border-radius:16px;padding:0 10px}
.qlt-nwdd .qlt-dd-p>svg:first-child{width:16px;height:16px}.qlt-nwdd .qlt-dd-p>svg:last-child{width:12px;height:12px}
.qlt-nw-sb{height:32px;font-size:11.5px}.qlt-nw-sb svg{width:15px;height:15px}.qlt-nw-sb svg:last-child{width:12px;height:12px}
.qlt-news .qlt-nw-list{gap:8px;margin-top:6px}
.qlt-news .qlt-nw{gap:10px;padding:7px;border-radius:14px}
.qlt-news .qlt-nw-ph{min-height:112px;border-radius:11px}
.qlt-news .qlt-nw-pill,.qlt-news .qlt-nw-fl{height:22px;font-size:10.5px;padding:0 9px 0 6px}
.qlt-news .qlt-nw-pill svg,.qlt-news .qlt-nw-fl svg{width:14px;height:14px}
.qlt-news .qlt-nw-fav{width:26px;height:26px}.qlt-news .qlt-nw-fav svg{width:15px;height:15px}
.qlt-news .qlt-nw-tt{font-size:12.5px;line-height:1.28}
.qlt-news .qlt-nw-pr{font-size:16.5px;margin-top:4px}.qlt-news .qlt-nw-pr small{font-size:12px}
.qlt-news .qlt-nw-lc{font-size:11.5px;margin-top:4px}.qlt-news .qlt-nw-lc svg{width:15px;height:15px}
.qlt-news .qlt-nw-lc .go{width:14px;height:14px}
.qlt-news .qlt-nw-st{font-size:11px;padding:4px 9px;margin-top:6px}.qlt-news .qlt-nw-st svg{width:15px;height:15px}
.qlt-nw-am{font-size:10.5px;margin-top:7px}.qlt-nw-am svg{width:16px;height:16px}

/* v1.4.94 — Tab Thư viện: bỏ logo + chữ "TRO XANH – Đồng hành cùng bạn tìm phòng trọ" ở góc phải banner; tiêu đề/mô tả được rộng hơn */
.qlt-lib-ban .qlt-h2-art{display:none!important}
.qlt-lib-ttl{width:calc(var(--u)*900)}

/* ==== Phân tích khu vực (chi tiết tin phòng): so sánh toàn bộ tin quanh khu vực + lý do nên thuê ==== */
.qlt-ar{display:flex;flex-direction:column;gap:10px;margin-top:8px;padding:14px 16px;border-radius:16px;border:1px solid #BFE6CC;background:var(--qlt-okbg)}
.qlt-ar>em{font-style:normal;font-size:12px;font-weight:700;color:var(--qlt-ok2)}
.qlt-ar-h{font-size:16px;line-height:1.3;color:var(--qlt-ok2)}
.qlt-ar-st{display:flex;gap:6px}
.qlt-ar-st>div{flex:1;min-width:0;padding:8px 6px;border-radius:12px;background:#fff;border:1px solid #E4E8F2;text-align:center}
.qlt-ar-st small{display:block;font-size:11px;color:var(--qlt-mu);line-height:1.25}
.qlt-ar-st b{display:block;margin-top:3px;font-size:13.5px;color:var(--qlt-tx);font-variant-numeric:tabular-nums;overflow-wrap:anywhere}
.qlt-ar-st .good b{color:var(--qlt-ok2)}.qlt-ar-st .high b{color:var(--qlt-warn)}
.qlt-ar-ul{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:7px}
.qlt-ar-ul li{position:relative;padding-left:22px;font-size:14px;line-height:1.5;color:var(--qlt-tx)}
.qlt-ar-ul li:before{content:"✓";position:absolute;left:0;top:1px;width:16px;height:16px;border-radius:50%;background:var(--qlt-ok,#1F8A52);color:#fff;font-size:10px;font-weight:800;line-height:16px;text-align:center}
.qlt-ar-sub{font-size:12px;font-weight:700;color:var(--qlt-ok2)}
.qlt-ar-ch{display:flex;flex-wrap:wrap;gap:6px}
.qlt-ar-ch span{display:inline-flex;align-items:center;gap:5px;padding:5px 10px;border-radius:14px;background:#fff;border:1px solid #BFE6CC;font-size:12.5px;font-weight:600;color:var(--qlt-tx)}
.qlt-ar-ch i{font-style:normal;color:var(--qlt-ok,#1F8A52);font-weight:800}
.qlt-ar-ch em{font-style:normal;font-weight:500;color:var(--qlt-mu)}
.qlt-ar-urg{margin:0;padding:9px 11px;border-radius:12px;background:var(--qlt-warnbg);border:1px solid #F3D9A4;font-size:13.5px;line-height:1.45;color:var(--qlt-warn);font-weight:600}
.qlt-ar>small{font-size:12px;color:var(--qlt-mu);line-height:1.4}

/* ==== Tab "Ứng dụng": khung game Nhà Trọ Xanh nằm trên thanh tab dưới ==== */
.qlt-game{display:none}
.qlt-root[data-view="game"]>:not(#qlGame):not(.qlt-tabs):not(.qlt-sheet-bg):not(.qlt-sheet):not(.qlt-offline){display:none!important}
.qlt-root[data-view="game"]::after{display:none!important}
.qlt-root[data-view="game"] .qlt-game{display:block;position:fixed;left:0;right:0;top:0;bottom:calc(var(--qlt-tab-h) + env(safe-area-inset-bottom,0px));z-index:20;background:#E6F3FF}
.qlt-game-fr{display:block;width:100%;height:100%;border:0}
@media (min-width:700px) and (pointer:fine){.qlt-root[data-view="game"] .qlt-game{left:50%;right:auto;width:560px;transform:translateX(-50%)}}
