/* Trang chủ – Setup quán trọn gói */
.tlh{
  --tlh-red:#D7182A; --tlh-red-d:#B01020; --tlh-navy:#0F2A44; --tlh-navy-2:#16395C;
  --tlh-yellow:#FFC20E; --tlh-green:#0D7A3D; --tlh-ink:#1B1D21; --tlh-ink-2:#4A4F57;
  --tlh-mute:#8A9099; --tlh-line:#DFE4EA; --tlh-bg:#EEF1F5; --tlh-zalo:#0068FF;
  color:var(--tlh-ink);
}
.tlh *{box-sizing:border-box}
.tlh h2,.tlh h3{margin:0;color:inherit;letter-spacing:0}
.tlh p,.tlh ul{margin:0}
.tlh a{text-decoration:none}
.tlh button{margin:0;min-height:0;line-height:inherit;text-transform:none;letter-spacing:0;font:inherit;cursor:pointer;border:0;background:none;color:inherit}
.tlh img{display:block}

/* ---------- Panels / tabs ---------- */
.tlh-panel{display:none}
.tlh-panel.is-active{display:block;animation:tlhFade .25s ease}
@keyframes tlhFade{from{opacity:0;transform:translateY(4px)}to{opacity:1;transform:none}}

/* ---------- Product card ---------- */
.tlh-grid{display:grid;gap:14px}
.tlh-grid--4{grid-template-columns:repeat(4,minmax(0,1fr))}
.tlh-card{background:#fff;border:1px solid var(--tlh-line);border-radius:14px;overflow:hidden;display:flex;flex-direction:column;transition:border-color .15s,box-shadow .15s,transform .15s}
.tlh-card:hover{border-color:var(--tlh-navy);box-shadow:0 10px 24px rgba(15,42,68,.12);transform:translateY(-2px)}
.tlh-card__img{position:relative;display:block;aspect-ratio:1/1;padding:12px;background:#fff}
.tlh-card__img img{width:100%;height:100%;object-fit:contain;margin:0}
.tlh-card__save{position:absolute;right:0;top:12px;background:var(--tlh-yellow);color:var(--tlh-navy);font-size:12px;font-weight:700;line-height:1;padding:7px 10px 7px 15px;clip-path:polygon(10px 0,100% 0,100% 100%,10px 100%,0 50%)}
.tlh-card__body{padding:0 14px 14px;display:flex;flex-direction:column;gap:9px;flex:1}
.tlh-card__title{font-size:13.5px!important;font-weight:400;line-height:1.44!important;height:39px;overflow:hidden;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical}
.tlh-card__title a{color:var(--tlh-ink)}
.tlh-card__title a:hover{color:var(--tlh-red)}
.tlh-card__price{font-size:17px;font-weight:700;color:var(--tlh-red);min-height:52px;display:flex;align-items:center}
.tlh-cmp{display:grid;gap:6px;font-size:12px;color:var(--tlh-ink-2)}
.tlh-cmp__row{display:grid;grid-template-columns:auto 1fr;align-items:baseline;gap:3px 8px}
.tlh-cmp__row del,.tlh-cmp__row b{text-align:right;white-space:nowrap}
.tlh-cmp__row del{color:var(--tlh-mute);font-size:12px}
.tlh-cmp__row b{color:var(--tlh-red);font-size:17px;font-weight:700}
.tlh-cmp__row i{grid-column:1/-1;display:block;height:7px;border-radius:99px;background:#D7DDE5}
.tlh-cmp__row.is-now i{background:linear-gradient(90deg,#FF5A3C,var(--tlh-red))}
.tlh-card__act{margin-top:auto;display:grid;grid-template-columns:1fr auto;gap:6px}
.tlh-btn,.tlh-zalo{display:flex;align-items:center;justify-content:center;border-radius:8px;font-size:13px;font-weight:700;padding:9px 12px;line-height:1.2;transition:background .15s}
.tlh-btn{background:var(--tlh-navy);color:#fff!important}
.tlh-btn:hover{background:var(--tlh-navy-2)}
.tlh-zalo{background:#E8F0FF;color:var(--tlh-zalo)!important}
.tlh-zalo:hover{background:#D5E3FF}

/* ---------- [tlh_hot] ---------- */
.tlh-hot{background:var(--tlh-bg);padding:40px 0}
.tlh-hot__wrap{display:grid;grid-template-columns:250px minmax(0,1fr);gap:20px;align-items:start}
.tlh-hot__side{background:var(--tlh-navy);color:#fff;border-radius:16px;padding:24px 18px;position:sticky;top:100px}
.tlh-hot__badge{display:inline-block;background:var(--tlh-yellow);color:var(--tlh-navy);font-weight:700;font-size:12px;padding:5px 10px;border-radius:6px;transform:rotate(-2deg)}
.tlh-hot__title{font-size:26px!important;font-weight:700;line-height:1.15!important;margin:14px 0 8px!important;text-transform:uppercase;color:#fff!important}
.tlh-hot__desc{font-size:13px;color:#A8BBD0;line-height:1.5;margin-bottom:18px!important}
.tlh-hot__tabs{display:flex;flex-direction:column;gap:4px}
.tlh-hot__tabs button{display:flex;width:100%;justify-content:space-between;align-items:center;padding:11px 14px;border-radius:10px;font-weight:700;font-size:14px;color:#D4DEE9;text-align:left;transition:background .15s}
.tlh-hot__tabs button:hover{background:rgba(255,255,255,.08)}
.tlh-hot__tabs button small{background:rgba(255,255,255,.12);border-radius:999px;padding:2px 9px;font-size:12px;font-weight:700}
.tlh-hot__tabs button.is-active{background:#fff;color:var(--tlh-navy)}
.tlh-hot__tabs button.is-active small{background:var(--tlh-red);color:#fff}
.tlh-hot__call{margin-top:18px;border-top:1px solid rgba(255,255,255,.12);padding-top:16px;font-size:13px;color:#A8BBD0}
.tlh-hot__call a{display:block;margin-top:6px;font-size:20px;font-weight:700;color:var(--tlh-yellow)}
.tlh-more{display:flex;justify-content:center;margin-top:20px}
.tlh-more a{background:#fff;border:1px solid #CBD3DD;border-radius:10px;padding:12px 26px;font-weight:700;font-size:14px;color:var(--tlh-navy)}
.tlh-more a:hover{border-color:var(--tlh-navy)}

/* ---------- [tlh_combos] ---------- */
.tlh-combo{background:var(--tlh-navy);color:#fff;padding:52px 0;position:relative;overflow:hidden}
.tlh-combo:before{content:"";position:absolute;right:-120px;top:-120px;width:420px;height:420px;border-radius:50%;border:60px solid rgba(255,194,14,.08)}
.tlh-combo .container{position:relative}
.tlh-combo__head{display:flex;align-items:flex-end;gap:20px;margin-bottom:26px}
.tlh-combo__head h2{font-size:32px!important;font-weight:700;line-height:1.15!important;color:#fff!important}
.tlh-combo__head h2 em{font-style:normal;color:var(--tlh-yellow)}
.tlh-combo__head p{color:#A8BBD0;font-size:15px;margin-top:8px!important}
.tlh-combo__head > a{margin-left:auto;color:var(--tlh-yellow);font-weight:700;font-size:14px;white-space:nowrap}
.tlh-combo__grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px}
.tlh-cb{background:#fff;color:var(--tlh-ink);border-radius:18px;padding:22px;display:flex;flex-direction:column}
.tlh-cb__top{display:flex;align-items:center;gap:12px}
.tlh-cb__icon{width:48px;height:48px;border-radius:12px;background:#FFF6DB;display:grid;place-items:center;font-size:24px;flex:none}
.tlh-cb__top h3{font-size:18px!important;font-weight:700;line-height:1.3!important}
.tlh-cb__top small{color:var(--tlh-mute);font-size:12.5px}
.tlh-cb__items{margin:18px 0;display:flex;flex-direction:column;gap:10px}
.tlh-cb__item{display:grid;grid-template-columns:52px minmax(0,1fr) auto;gap:12px;align-items:center;font-size:12.5px;color:var(--tlh-ink)!important}
.tlh-cb__item img{width:52px;height:52px;object-fit:contain;border-radius:8px;background:#F5F7F9;padding:3px;margin:0}
.tlh-cb__item b{font-weight:700;display:block;line-height:1.35;overflow:hidden;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical}
.tlh-cb__item em{color:var(--tlh-mute);font-size:12px;font-style:normal;display:block}
.tlh-cb__item strong{white-space:nowrap}
.tlh-cb__item:hover b{color:var(--tlh-red)}
.tlh-cb__total{margin-top:auto;border-top:1px dashed #CBD3DD;padding-top:14px;display:flex;align-items:flex-end;justify-content:space-between;gap:10px}
.tlh-cb__total small{font-size:12px;color:var(--tlh-mute);display:block}
.tlh-cb__total span{font-size:24px;font-weight:700;color:var(--tlh-red)}
.tlh-cb__total .tlh-cb__save{background:#E7F6EE;color:var(--tlh-green);font-weight:700;font-size:13px;padding:6px 10px;border-radius:8px;white-space:nowrap}
.tlh-cb__go{margin-top:14px;text-align:center;background:var(--tlh-red);color:#fff!important;border-radius:10px;padding:13px;font-weight:700;font-size:14px;transition:background .15s}
.tlh-cb__go:hover{background:var(--tlh-red-d)}

/* ---------- [tlh_needs] ---------- */
.tlh-needs{background:var(--tlh-bg);padding:36px 0 6px}
.tlh-needs .container{display:flex;align-items:center;gap:10px;flex-wrap:wrap}
.tlh-needs strong{font-size:16px;margin-right:6px}
.tlh-needs a{background:#fff;border:1px solid #D3DAE3;padding:8px 14px;border-radius:999px;font-weight:700;font-size:13px;color:var(--tlh-ink)}
.tlh-needs a:hover{border-color:var(--tlh-navy);color:var(--tlh-navy)}

/* ---------- [tlh_rows] ---------- */
.tlh-rows{background:var(--tlh-bg);padding:4px 0 10px}
.tlh-row{padding-top:30px}
.tlh-row__head{display:flex;align-items:center;gap:14px;margin-bottom:14px}
.tlh-row__head h2{flex:none;width:auto!important;font-size:22px!important;font-weight:700;color:var(--tlh-navy)!important;display:flex;gap:10px;align-items:center;white-space:nowrap}
.tlh-row__head h2:before{content:"";width:6px;height:24px;border-radius:3px;background:var(--tlh-red)}
.tlh-row__head nav{display:flex;gap:6px;margin-left:8px;flex-wrap:wrap;width:auto}
.tlh-row__head nav button{white-space:nowrap}
.tlh-row__head nav button{font-size:13px;font-weight:700;padding:7px 12px;border-radius:8px;background:#fff;border:1px solid var(--tlh-line);color:var(--tlh-ink-2)}
.tlh-row__head nav button.is-active{background:var(--tlh-navy);color:#fff;border-color:var(--tlh-navy)}
.tlh-row__arrows{margin-left:auto;display:flex;gap:6px}
.tlh-row__arrows button{width:36px;height:36px;border-radius:50%;background:#fff;border:1px solid var(--tlh-line);display:grid;place-items:center;font-weight:700;font-size:18px;color:var(--tlh-navy)}
.tlh-row__arrows button:hover{border-color:var(--tlh-navy)}
.tlh-row__all{font-size:14px;font-weight:700;color:var(--tlh-red);white-space:nowrap}
.tlh-track{display:grid;grid-auto-flow:column;grid-auto-columns:calc((100% - 4*14px)/5);gap:14px;overflow-x:auto;scroll-snap-type:x mandatory;scroll-behavior:smooth;scrollbar-width:none;padding-bottom:4px}
.tlh-track::-webkit-scrollbar{display:none}
.tlh-track > .tlh-card{scroll-snap-align:start}

/* ---------- [tlh_split] ---------- */
.tlh-split{background:var(--tlh-bg);padding:44px 0}
.tlh-split__wrap{display:grid;grid-template-columns:1fr 1fr;gap:18px}
.tlh-sp{border-radius:20px;padding:30px;display:flex;flex-direction:column;gap:12px;scroll-margin-top:120px}
.tlh-sp.is-sell{background:var(--tlh-yellow);color:var(--tlh-navy)}
.tlh-sp.is-buy{background:#fff;border:1px solid var(--tlh-line)}
.tlh-sp > small{font-weight:700;font-size:12px;letter-spacing:.12em;text-transform:uppercase}
.tlh-sp.is-buy > small{color:var(--tlh-red)}
.tlh-sp h3{font-size:26px!important;font-weight:700;line-height:1.2!important}
.tlh-sp ul{list-style:none;padding:0;display:grid;gap:8px;font-size:14px}
.tlh-sp li{margin:0!important}
.tlh-sp li:before{content:"✓";font-weight:700;margin-right:8px;color:var(--tlh-red)}
.tlh-sp.is-highlight{box-shadow:0 0 0 3px var(--tlh-red);transition:box-shadow .3s}
.tlh-sp__btns{display:flex;gap:8px;margin-top:6px}
.tlh-sp__btns a{flex:1;text-align:center;border-radius:10px;padding:13px;font-weight:700;font-size:14px;background:var(--tlh-navy);color:#fff!important}
.tlh-sp__btns a + a{background:var(--tlh-zalo)}
/* Contact Form 7 trong khối bán/mua */
.tlh-sp__form .wpcf7-form{display:grid;grid-template-columns:1fr 1fr auto;gap:8px;margin:6px 0 0}
.tlh-sp__form .wpcf7-form > p{display:contents}
.tlh-sp__form .wpcf7-form br{display:none}
.tlh-sp__form .wpcf7-form-control-wrap{display:block}
.tlh-sp__form input[type=text],.tlh-sp__form input[type=tel]{width:100%;height:46px;margin:0;font-size:14px;padding:0 14px;border-radius:10px;border:1px solid rgba(15,42,68,.2);background:#fff;box-shadow:none}
.tlh-sp__form input[type=submit]{height:46px;margin:0;border-radius:10px;padding:0 20px;font-weight:700;font-size:14px;text-transform:none;letter-spacing:0;background:var(--tlh-navy);color:#fff;border:0}
.tlh-sp.is-buy .tlh-sp__form input[type=submit]{background:var(--tlh-red)}
.tlh-sp__form .wpcf7-spinner{position:absolute}
.tlh-sp__form .wpcf7-response-output{grid-column:1/-1;margin:4px 0 0!important;border-radius:8px;font-size:13px}
.tlh-sp__form .wpcf7-not-valid-tip{font-size:12px}

/* ---------- [tlh_stores] ---------- */
.tlh-stores{background:#fff;border-top:1px solid var(--tlh-line);padding:36px 0 48px}
.tlh-stores h2{font-size:22px!important;font-weight:700;color:var(--tlh-navy)!important;margin-bottom:16px!important}
.tlh-stores__grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px}
.tlh-st{border:1px solid var(--tlh-line);border-radius:14px;padding:16px;font-size:13px;line-height:1.5;display:flex;flex-direction:column;gap:6px}
.tlh-st b{font-size:12px;color:var(--tlh-red);text-transform:uppercase;letter-spacing:.06em}
.tlh-st strong{font-size:13.5px;color:var(--tlh-navy)}
.tlh-st__links{margin-top:auto;display:flex;flex-wrap:wrap;gap:4px 12px}
.tlh-st a{font-weight:700;color:var(--tlh-navy)}
.tlh-st a.is-map{color:var(--tlh-red)}

/* ---------- Tablet ---------- */
@media (max-width:1100px){
  .tlh-grid--4{grid-template-columns:repeat(3,minmax(0,1fr))}
  .tlh-track{grid-auto-columns:calc((100% - 3*14px)/4)}
  .tlh-stores__grid{grid-template-columns:repeat(3,minmax(0,1fr))}
}
@media (max-width:849px){
  .tlh-hot__wrap{grid-template-columns:minmax(0,1fr)}
  .tlh-hot__side,.tlh-hot__main{min-width:0}
  .tlh-hot__side{position:static}
  .tlh-hot__tabs{flex-direction:row;overflow-x:auto}
  .tlh-hot__tabs button{width:auto;white-space:nowrap;gap:8px}
  .tlh-combo__grid,.tlh-split__wrap{grid-template-columns:minmax(0,1fr)}
  .tlh-combo__head{flex-direction:column;align-items:flex-start}
  .tlh-combo__head > a{margin-left:0}
  .tlh-track{grid-auto-columns:calc((100% - 2*14px)/3)}
  .tlh-row__head{flex-wrap:wrap}
}

/* ---------- Thanh liên hệ dưới đáy (mobile) ---------- */
.tlh-mbar{display:none}

/* ---------- Mobile ---------- */
@media (max-width:549px){
  /* Vùng cuộn ngang tràn sát mép màn hình */
  .tlh-combo__grid,.tlh-track,.tlh-stores__grid,.tlh-needs .container,.tlh-hot__tabs,.tlh-row__head nav{
    margin-left:-15px;margin-right:-15px;padding-left:15px;padding-right:15px;scroll-padding-left:15px;
    overflow-x:auto;scrollbar-width:none;-webkit-overflow-scrolling:touch;scroll-snap-type:x mandatory}
  .tlh-combo__grid::-webkit-scrollbar,.tlh-stores__grid::-webkit-scrollbar,.tlh-needs .container::-webkit-scrollbar,.tlh-hot__tabs::-webkit-scrollbar,.tlh-row__head nav::-webkit-scrollbar{display:none}

  /* Thẻ sản phẩm */
  .tlh-grid{gap:10px}
  .tlh-grid--4{grid-template-columns:repeat(2,minmax(0,1fr))}
  .tlh-card{border-radius:12px}
  .tlh-card:hover{transform:none}
  .tlh-card__img{padding:8px}
  .tlh-card__save{top:8px;font-size:11px;padding:6px 8px 6px 13px}
  .tlh-card__body{padding:0 10px 10px;gap:7px}
  .tlh-card__title{font-size:12.5px!important;height:36px;line-height:1.44!important}
  .tlh-cmp{gap:4px}
  .tlh-cmp__row{grid-template-columns:1fr}
  .tlh-cmp__row span{display:none}
  .tlh-cmp__row del,.tlh-cmp__row b{text-align:left}
  .tlh-cmp__row del{font-size:11px}
  .tlh-cmp__row b{font-size:15px}
  .tlh-cmp__row i{height:5px}
  .tlh-card__price{font-size:15px;min-height:44px}
  .tlh-card__act{grid-template-columns:1fr 38px;gap:5px}
  .tlh-btn,.tlh-zalo{font-size:12px;padding:8px 6px}
  .tlh-zalo{font-size:11px}

  /* Hot */
  .tlh-hot{padding:0 0 26px}
  .tlh-hot .container{padding-left:15px;padding-right:15px}
  .tlh-hot__wrap{gap:14px}
  .tlh-hot__side{margin:0 -15px;border-radius:0;padding:18px 15px 14px;background:linear-gradient(160deg,var(--tlh-navy) 0%,var(--tlh-navy-2) 100%)}
  .tlh-hot__badge{font-size:11px}
  .tlh-hot__title{font-size:22px!important;margin:10px 0 4px!important}
  .tlh-hot__title br{display:none}
  .tlh-hot__desc{font-size:12px;margin-bottom:12px!important}
  .tlh-hot__tabs{flex-direction:row;gap:6px;padding-bottom:2px}
  .tlh-hot__tabs button{flex:none;width:auto;white-space:nowrap;gap:6px;padding:8px 12px;font-size:13px;background:rgba(255,255,255,.1);scroll-snap-align:start}
  .tlh-hot__call{display:none}
  .tlh-more{margin-top:14px}
  .tlh-more a{width:100%;text-align:center;padding:12px}

  /* Combo */
  .tlh-combo{padding:32px 0}
  .tlh-combo:before{width:260px;height:260px;border-width:40px;right:-90px;top:-90px}
  .tlh-combo__head{margin-bottom:16px;gap:8px}
  .tlh-combo__head h2{font-size:23px!important}
  .tlh-combo__head p{font-size:13px;margin-top:6px!important}
  .tlh-combo__head > a{font-size:13px}
  .tlh-combo__grid{display:flex;gap:12px}
  .tlh-cb{flex:0 0 86%;padding:18px;border-radius:16px;scroll-snap-align:start}
  .tlh-cb__items{margin:14px 0}
  .tlh-cb__item{grid-template-columns:44px minmax(0,1fr) auto;gap:10px}
  .tlh-cb__item img{width:44px;height:44px}
  .tlh-cb__total span{font-size:21px}

  /* Nhu cầu */
  .tlh-needs{padding:24px 0 0}
  .tlh-needs .container{flex-wrap:nowrap;gap:8px}
  .tlh-needs strong{display:none}
  .tlh-needs a{flex:none;white-space:nowrap;scroll-snap-align:start}

  /* Hàng theo danh mục */
  .tlh-row{padding-top:24px}
  .tlh-row__head{flex-wrap:wrap;gap:10px;margin-bottom:12px}
  .tlh-row__head h2{font-size:19px!important}
  .tlh-row__head h2:before{height:20px;width:5px}
  .tlh-row__arrows{display:none}
  .tlh-row__all{margin-left:auto;font-size:13px}
  .tlh-row__head nav{order:3;flex:0 0 calc(100% + 30px);flex-wrap:nowrap;margin-left:-15px}
  .tlh-row__head nav button{flex:none;scroll-snap-align:start}
  .tlh-track{grid-auto-columns:46%;gap:10px}

  /* Bán / Mua */
  .tlh-split{padding:28px 0}
  .tlh-split__wrap{gap:12px}
  .tlh-sp{padding:22px 18px;border-radius:16px;gap:10px;scroll-margin-top:80px}
  .tlh-sp h3{font-size:21px!important}
  .tlh-sp ul{font-size:13px}
  .tlh-sp__form .wpcf7-form{grid-template-columns:1fr}
  .tlh-sp__form input[type=submit]{width:100%}

  /* Kho hàng */
  .tlh-stores{padding:26px 0 30px}
  .tlh-stores h2{font-size:19px!important;margin-bottom:12px!important}
  .tlh-stores__grid{display:flex;gap:10px}
  .tlh-st{flex:0 0 70%;scroll-snap-align:start}

  /* Thanh liên hệ dưới đáy */
  .tlh-mbar{display:grid;grid-template-columns:1fr 1fr 1.15fr;position:fixed;left:0;right:0;bottom:0;z-index:99;background:#fff;
    border-top:1px solid var(--tlh-line);box-shadow:0 -6px 20px rgba(15,42,68,.12);padding:6px 8px calc(6px + env(safe-area-inset-bottom));gap:6px}
  .tlh-mbar a{display:flex;align-items:center;justify-content:center;gap:6px;height:44px;border-radius:10px;font-weight:700;font-size:13px;color:var(--tlh-navy)!important;background:var(--tlh-bg)}
  .tlh-mbar span{font-size:15px;line-height:1}
  .tlh-mbar a.is-zalo{background:#E8F0FF;color:var(--tlh-zalo)!important}
  .tlh-mbar a.is-zalo span{font-weight:700;font-size:12px;width:20px;height:20px;border-radius:6px;background:var(--tlh-zalo);color:#fff;display:grid;place-items:center}
  .tlh-mbar a.is-quote{background:var(--tlh-red);color:#fff!important}
  body.home{padding-bottom:calc(58px + env(safe-area-inset-bottom))}
  body.home .back-to-top{bottom:74px}
}
