/* ===== Section framework (Greenshift) ===== */
.wp-section{display:flex;justify-content:center;flex-direction:column;align-items:center;padding-right:var(--wp--spacing--side, min(3vw, 20px));padding-left:var(--wp--spacing--side, min(3vw, 20px));padding-top:var(--wp--spacing--top, 0px);padding-bottom:var(--wp--spacing--bottom, 0px);margin-top:0px;margin-bottom:0px;position:relative;}
.wp-content-wrap{max-width:100%;width:var(--wp--style--global--wide-size, 1200px);}

/* ===== Design tokens on each band (no :root) ===== */
.dtre-band{
  --brand-h:255;
  --brand:oklch(0.58 0.18 var(--brand-h));
  --brand-600:oklch(0.54 0.19 var(--brand-h));
  --brand-700:oklch(0.47 0.18 var(--brand-h));
  --brand-300:oklch(0.78 0.10 var(--brand-h));
  --brand-100:oklch(0.95 0.035 var(--brand-h));
  --brand-50:oklch(0.975 0.018 var(--brand-h));
  --brand-grad:linear-gradient(135deg, oklch(0.62 0.18 calc(var(--brand-h) - 18)), oklch(0.52 0.19 calc(var(--brand-h) + 14)));
  --coral:oklch(0.66 0.17 32);
  --green:oklch(0.62 0.15 152);
  --green-soft:oklch(0.95 0.05 152);
  --amber:oklch(0.78 0.14 78);
  --ink:oklch(0.26 0.02 260);
  --ink-2:oklch(0.42 0.015 260);
  --ink-3:oklch(0.60 0.012 260);
  --line:oklch(0.92 0.006 260);
  --line-2:oklch(0.95 0.005 260);
  --bg:oklch(0.985 0.004 260);
  --surface:#fff;
  --surface-2:oklch(0.975 0.006 260);
  --r-sm:7px; --r:7px; --r-lg:7px; --r-xl:7px; --r-pill:7px;
  --sh-sm:0 1px 2px rgba(20,30,60,.06), 0 1px 1px rgba(20,30,60,.04);
  --sh:0 4px 14px -4px rgba(28,40,90,.12), 0 2px 6px -2px rgba(28,40,90,.08);
  --sh-lg:0 18px 40px -12px rgba(28,40,90,.22), 0 6px 14px -6px rgba(28,40,90,.12);
  --gap:16px;
  font-family:"Inter", system-ui, sans-serif;
  color:var(--ink);
  font-size:15px;
  line-height:1.5;
}
.dtre-band :where(div,section,nav,header,footer,a,span,button,ul,li,input,form,svg,h1,h2,h3,h4,h5,h6,p,small,b,i){box-sizing:border-box;}
.dtre-band :where(h1,h2,h3,h4,h5,h6,p){margin-top:0;margin-bottom:0;}
.dtre-band :where(ul){list-style:none;margin-top:0;margin-bottom:0;padding-left:0;}
.dtre-band :where(a){color:inherit;text-decoration:none;cursor:pointer;}
.dtre-band :where(button){font-family:inherit;cursor:pointer;border:none;background:none;color:inherit;}
.dtre-band :where(svg){display:inline-block;vertical-align:middle;}
.dtre-ico{display:inline-flex;align-items:center;justify-content:center;line-height:0;}

/* ===== Utility bar ===== */
.dtre-utilband{background:linear-gradient(180deg,#fff,var(--surface-2));border-bottom:1px solid var(--line);}
.dtre-utilbar{display:flex;gap:24px;justify-content:center;flex-wrap:wrap;align-items:center;min-height:38px;padding:6px 0;}
.dtre-util{display:inline-flex;align-items:center;gap:7px;font-size:12.5px;font-weight:500;color:var(--ink-2);}
.dtre-util .dtre-ico{color:var(--brand);}
.dtre-util b{color:var(--ink);font-weight:700;}

/* ===== Header ===== */
.dtre-headerband{background:var(--brand-grad);color:#fff;box-shadow:0 6px 20px -10px rgba(40,40,110,.5);}
.dtre-header{display:flex;align-items:center;gap:14px;min-height:66px;padding:11px 0;flex-wrap:wrap;}
.dtre-logo{display:inline-flex;align-items:baseline;gap:2px;font-weight:800;font-size:25px;letter-spacing:-.02em;color:#fff;line-height:1;}
.dtre-logo .dtre-dot{color:var(--amber);}
.dtre-logo small{font-size:11px;line-height:1.2;font-weight:600;opacity:.85;margin-left:6px;align-self:center;}
.dtre-catbtn{display:inline-flex;align-items:center;gap:8px;background:rgba(255,255,255,.16);color:#fff;padding:10px 14px;border-radius:var(--r-pill);font-weight:600;font-size:14px;line-height:1;white-space:nowrap;}
.dtre-locbtn{display:inline-flex;align-items:center;gap:8px;color:#fff;font-size:13px;line-height:1.2;opacity:.95;white-space:nowrap;}
.dtre-locbtn .dtre-ico{background:rgba(255,255,255,.18);border-radius:50%;padding:5px;}
.dtre-locbtn small{display:block;font-size:11px;line-height:1.2;opacity:.8;}
.dtre-locbtn b{font-weight:700;font-size:13.5px;line-height:1.2;}
.dtre-search{flex:1;min-width:200px;display:flex;align-items:center;gap:8px;background:#fff;color:var(--ink);border-radius:var(--r-pill);padding:0 8px 0 16px;height:44px;box-shadow:var(--sh-sm);}
.dtre-search input{flex:1;border:none;outline:none;height:100%;background:none;color:var(--ink);font-size:15px;}
.dtre-search .dtre-go{background:var(--brand-grad);color:#fff;width:34px;height:34px;border-radius:50%;display:inline-flex;align-items:center;justify-content:center;flex:0 0 auto;}
.dtre-hicons{display:flex;align-items:center;gap:4px;}
.dtre-hbtn{display:inline-flex;flex-direction:column;align-items:center;gap:3px;color:#fff;padding:7px 11px;border-radius:var(--r);font-size:11.5px;line-height:1.2;font-weight:500;position:relative;white-space:nowrap;}
.dtre-hbtn:hover{background:rgba(255,255,255,.16);}
.dtre-hbadge{position:absolute;top:-6px;right:-8px;background:var(--coral);color:#fff;font-size:10px;line-height:1;font-weight:800;min-width:17px;height:17px;padding:0 4px;border-radius:var(--r-pill);display:flex;align-items:center;justify-content:center;border:2px solid #fff;}

/* ===== Main band ===== */
.dtre-main{background:var(--bg);}
.dtre-mainwrap{padding-top:18px;padding-bottom:8px;}

/* ===== Home top: rail + hero ===== */
.dtre-hometop{display:grid;grid-template-columns:248px minmax(0,1fr);gap:var(--gap);align-items:stretch;}
.dtre-catrail{background:#fff;border:1px solid var(--line);border-radius:var(--r-lg);padding:6px;display:flex;flex-direction:column;justify-content:space-between;position:relative;}
.dtre-railrow-wrap{position:static;}
.dtre-railrow{display:flex;align-items:center;gap:9px;padding:2px 10px;border-radius:7px;font-size:12.5px;line-height:1.25;font-weight:600;color:var(--ink);}
.dtre-railrow:hover{background:var(--brand-50);color:var(--brand-700);}
.dtre-railico{width:26px;height:26px;border-radius:7px;background:var(--brand-50);color:var(--brand);display:flex;align-items:center;justify-content:center;flex:0 0 auto;}
.dtre-railrow:hover .dtre-railico{background:var(--brand);color:#fff;}
.dtre-raillbl{flex:1;min-width:0;}
.dtre-railchev{margin-left:auto;color:var(--ink-3);}
/* rail flyout = the relocated mega-menu (shows category brands/services on hover, beside the banner) */
.dtre-railfly{position:absolute;top:0;left:calc(100% + 8px);min-height:100%;width:min(640px,54vw);background:#fff;border:1px solid var(--line);border-radius:var(--r-lg);box-shadow:var(--sh-lg);padding:20px 22px;display:none;z-index:60;box-sizing:border-box;}
.dtre-railrow-wrap:hover > .dtre-railfly{display:block;}
.dtre-railrow-wrap:hover > .dtre-railrow{background:var(--brand-50);}
.dtre-railrow-wrap:hover > .dtre-railrow,.dtre-railrow-wrap:hover > .dtre-railrow .dtre-raillbl{color:var(--brand-700);}
.dtre-railrow-wrap:hover > .dtre-railrow .dtre-railico{background:var(--brand);color:#fff;}
.dtre-railfly .dtre-mega-cols{display:grid;grid-template-columns:repeat(3,1fr);gap:16px 18px;}
.dtre-railfly .dtre-mega-gt{font-size:13px;font-weight:800;color:var(--ink);margin-bottom:8px;line-height:1.25;}
.dtre-railfly ul{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:2px;}
.dtre-railfly li a{display:block;font-size:12.5px;line-height:1.4;color:var(--ink-2);padding:2px 0;}
.dtre-railfly li a:hover{color:var(--brand-700);}

/* Hero */
.dtre-hero{display:grid;grid-template-columns:minmax(0,1fr) 198px;gap:var(--gap);}
.dtre-hero-main{position:relative;border-radius:var(--r-xl);overflow:hidden;min-height:365px;color:#fff;background:var(--brand-grad);display:flex;}
.dtre-blob{position:absolute;border-radius:50%;filter:blur(8px);opacity:.5;}
.dtre-hero-content{position:relative;z-index:2;padding:38px 40px;display:flex;flex-direction:column;justify-content:center;max-width:58%;}
.dtre-kicker{font-size:13px;line-height:1.3;font-weight:700;letter-spacing:.04em;text-transform:uppercase;opacity:.9;}
.dtre-hero-h{font-size:40px;line-height:1.04;font-weight:800;margin:10px 0 6px;letter-spacing:-.02em;}
.dtre-hero-p{font-size:15px;line-height:1.5;opacity:.92;margin:0 0 20px;max-width:340px;}
.dtre-hero-cta{display:flex;gap:12px;align-items:center;flex-wrap:wrap;}
.dtre-hero-save{display:inline-flex;align-items:center;gap:10px;background:rgba(255,255,255,.16);border:1px solid rgba(255,255,255,.3);padding:10px 16px;border-radius:var(--r-pill);font-weight:700;font-size:13px;line-height:1.2;width:max-content;}
.dtre-hero-save b{font-size:22px;line-height:1;color:var(--amber);}
.dtre-hero-art{position:absolute;right:0;bottom:0;top:0;width:46%;display:flex;align-items:center;justify-content:center;}
.dtre-hero-device{width:62%;aspect-ratio:.62;border-radius:7px;background:rgba(255,255,255,.14);border:1.5px solid rgba(255,255,255,.35);box-shadow:0 30px 60px -20px rgba(0,0,0,.4);transform:rotate(8deg);}
.dtre-hero-dots{position:absolute;bottom:16px;left:40px;display:flex;gap:7px;z-index:3;}
.dtre-hero-dots span{width:8px;height:8px;border-radius:50%;background:rgba(255,255,255,.45);}
.dtre-hero-dots span.dtre-on{background:#fff;width:22px;border-radius:7px;}
.dtre-hero-side{display:flex;flex-direction:column;gap:var(--gap);}
.dtre-promo-tile{position:relative;flex:1;border-radius:var(--r-lg);padding:16px 18px;overflow:hidden;color:#fff;min-height:84px;display:flex;flex-direction:column;justify-content:center;}
.dtre-promo-tile h4{margin:0;font-size:15px;line-height:1.25;font-weight:800;}
.dtre-promo-tile .dtre-big{font-size:26px;line-height:1;font-weight:800;margin:3px 0;}
.dtre-promo-tile small{font-size:11.5px;line-height:1.3;opacity:.9;}

/* ===== Service strip ===== */
.dtre-servstrip{display:grid;grid-template-columns:repeat(4,1fr);gap:var(--gap);margin-top:18px;}
.dtre-serv{display:flex;align-items:center;gap:12px;background:var(--surface);border:1px solid var(--line);border-radius:var(--r-lg);padding:14px 16px;}
.dtre-serv .dtre-si{width:44px;height:44px;border-radius:7px;background:var(--brand-50);color:var(--brand);display:flex;align-items:center;justify-content:center;flex:0 0 auto;}
.dtre-serv h5{margin:0;font-size:14px;line-height:1.25;font-weight:800;}
.dtre-serv small{color:var(--ink-3);font-size:12px;line-height:1.3;}

/* ===== Flash sale ===== */
.dtre-flash{margin-top:34px;border-radius:var(--r-xl);padding:22px;position:relative;overflow:hidden;background:linear-gradient(135deg, oklch(0.95 0.04 var(--brand-h)), oklch(0.93 0.05 30));border:1px solid var(--line);}
.dtre-flash-head{display:flex;align-items:center;gap:16px;flex-wrap:wrap;margin-bottom:18px;}
.dtre-flash-badge{display:inline-flex;align-items:center;gap:10px;background:var(--brand-grad);color:#fff;padding:10px 18px;border-radius:var(--r-pill);font-weight:800;font-size:18px;line-height:1.2;box-shadow:var(--sh);}
.dtre-flash-badge .dtre-ico{color:var(--amber);}
.dtre-flash-tabs{display:flex;gap:8px;}
.dtre-chip{padding:7px 14px;border-radius:var(--r-pill);font-size:13px;line-height:1.2;font-weight:600;background:var(--surface);border:1.5px solid var(--line);color:var(--ink-2);white-space:nowrap;}
.dtre-chip.dtre-active{background:var(--brand);border-color:var(--brand);color:#fff;box-shadow:0 6px 14px -6px var(--brand);}
.dtre-countdown{margin-left:auto;display:flex;align-items:center;gap:8px;font-weight:700;font-size:13px;line-height:1.2;color:var(--ink-2);}
.dtre-cdbox{display:flex;gap:5px;}
.dtre-cdbox span{background:var(--ink);color:#fff;font-weight:800;font-size:15px;line-height:1;min-width:34px;height:36px;border-radius:7px;display:flex;align-items:center;justify-content:center;font-variant-numeric:tabular-nums;}
.dtre-cdbox i{color:var(--ink-3);font-style:normal;align-self:center;}

/* ===== Grid + cards ===== */
.dtre-grid{display:grid;gap:var(--gap);}
.dtre-cards5{grid-template-columns:repeat(5,minmax(0,1fr));}
.dtre-card{background:var(--surface);border:1px solid var(--line);border-radius:var(--r-lg);padding:16px;display:flex;flex-direction:column;position:relative;min-width:0;}
.dtre-card:hover{transform:translateY(-3px);box-shadow:var(--sh-lg);border-color:var(--brand-300);}
.dtre-ribbon{position:absolute;top:0;left:0;background:var(--coral);color:#fff;font-size:11.5px;line-height:1.2;font-weight:800;padding:5px 11px 5px 10px;border-radius:var(--r-lg) 0 7px 0;z-index:2;}
.dtre-thumb{position:relative;border-radius:var(--r);overflow:hidden;aspect-ratio:1/1;display:flex;align-items:center;justify-content:center;background:repeating-linear-gradient(135deg, rgba(255,255,255,.5) 0 9px, transparent 9px 18px), var(--thumb-tone, #eef2ff);margin-bottom:12px;}
.dtre-ph{font-family:"Inter", system-ui, sans-serif;font-size:11px;line-height:1.35;color:var(--ink-3);background:rgba(255,255,255,.7);padding:5px 9px;border-radius:7px;text-align:center;max-width:80%;}
.dtre-installment{position:absolute;top:8px;right:8px;background:#fff;color:var(--brand-700);font-size:10.5px;line-height:1.1;font-weight:800;padding:4px 8px;border-radius:var(--r-pill);border:1px solid var(--brand-100);}
.dtre-pname{font-size:13.5px;font-weight:600;line-height:1.34;color:var(--ink);min-height:36px;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;}
.dtre-pricerow{display:flex;align-items:baseline;gap:8px;flex-wrap:wrap;margin-top:8px;}
.dtre-price{font-size:17px;line-height:1.2;font-weight:800;color:var(--coral);letter-spacing:-.01em;}
.dtre-old{font-size:12.5px;line-height:1.2;color:var(--ink-3);text-decoration:line-through;}
.dtre-metas{margin-top:8px;display:flex;flex-direction:column;gap:4px;}
.dtre-metaline{font-size:11.5px;line-height:1.4;color:var(--ink-2);}
.dtre-metaline b{color:var(--coral);font-weight:800;}
.dtre-tags{display:flex;gap:6px;flex-wrap:wrap;margin-top:9px;}
.dtre-tagpill{display:inline-flex;align-items:center;gap:4px;font-size:11px;line-height:1.2;font-weight:600;padding:4px 9px;border-radius:var(--r-pill);}
.dtre-tag-green{background:var(--green-soft);color:var(--green);}
.dtre-tag-blue{background:var(--brand-50);color:var(--brand-700);}
.dtre-tag-amber{background:oklch(0.96 0.05 85);color:oklch(0.5 0.12 70);}
.dtre-rating{display:inline-flex;align-items:center;gap:5px;margin-top:10px;font-size:12px;line-height:1.2;color:var(--ink-2);}
.dtre-rating .dtre-ico{color:var(--amber);}
.dtre-rating b{color:var(--ink);font-weight:800;}
.dtre-cardfoot{margin-top:auto;padding-top:12px;display:flex;gap:8px;}
.dtre-btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;font-weight:700;font-size:14px;line-height:1.2;padding:11px 18px;border-radius:var(--r-pill);white-space:nowrap;}
.dtre-btn-primary{background:var(--brand-grad);color:#fff;box-shadow:0 8px 18px -8px var(--brand);}
.dtre-btn-coral{background:linear-gradient(135deg,oklch(0.7 0.16 38),oklch(0.62 0.18 28));color:#fff;box-shadow:0 8px 18px -8px var(--coral);}
.dtre-btn-soft{background:var(--brand-50);color:var(--brand-700);}
.dtre-btn-lg{padding:14px 24px;font-size:15px;}
.dtre-btn-sm{padding:8px 14px;font-size:13px;}
.dtre-addbtn{flex:1;}

/* ===== Section header ===== */
.dtre-section{margin-top:34px;}
.dtre-sec-head{display:flex;align-items:center;gap:14px;margin-bottom:16px;flex-wrap:wrap;}
.dtre-sec-title{display:flex;align-items:center;gap:10px;font-size:21px;line-height:1.2;font-weight:800;letter-spacing:-.01em;margin:0;}
.dtre-sec-title::before{content:"";width:5px;height:24px;border-radius:7px;background:var(--brand-grad);}
.dtre-sec-tabs{display:flex;gap:8px;flex-wrap:wrap;margin-left:4px;}
.dtre-sec-link{margin-left:auto;display:inline-flex;align-items:center;gap:6px;font-weight:700;font-size:13.5px;line-height:1.2;color:var(--brand-700);}

/* ===== Scroller ===== */
.dtre-scroller{display:grid;grid-auto-flow:column;grid-auto-columns:minmax(204px,1fr);gap:var(--gap);overflow-x:auto;scroll-snap-type:x mandatory;padding-bottom:6px;scrollbar-width:thin;}
.dtre-scroller > *{scroll-snap-align:start;}

/* ===== Accessory tiles ===== */
.dtre-acc-grid{display:grid;grid-template-columns:repeat(6,1fr);gap:var(--gap);}
.dtre-acc-tile{display:flex;flex-direction:column;align-items:center;gap:10px;padding:14px;border-radius:var(--r-lg);background:var(--surface);border:1px solid var(--line);}
.dtre-acc-tile:hover{transform:translateY(-3px);box-shadow:var(--sh);}
.dtre-acc-img{width:74px;height:74px;border-radius:7px;display:flex;align-items:center;justify-content:center;background:var(--tone);position:relative;overflow:hidden;}
.dtre-acc-img::after{content:"";position:absolute;inset:0;background:repeating-linear-gradient(135deg, rgba(255,255,255,.35) 0 7px, transparent 7px 14px);}
.dtre-acc-tile span{font-size:12.5px;font-weight:600;text-align:center;color:var(--ink);line-height:1.3;}

/* ===== Banners ===== */
.dtre-banner-grid{display:grid;gap:var(--gap);}
.dtre-bg3{grid-template-columns:repeat(3,1fr);}
.dtre-bg4{grid-template-columns:repeat(4,1fr);}
.dtre-banner{border-radius:var(--r-lg);padding:20px 22px;color:#fff;position:relative;overflow:hidden;min-height:110px;display:flex;flex-direction:column;justify-content:center;}
.dtre-banner h4{margin:0;font-size:18px;line-height:1.25;font-weight:800;}
.dtre-banner p{margin:6px 0 0;font-size:13px;line-height:1.4;opacity:.92;}
.dtre-hssv-pill{display:inline-flex;align-items:center;gap:5px;background:rgba(255,255,255,.2);color:#fff;font-size:11px;line-height:1.2;font-weight:700;padding:4px 9px;border-radius:var(--r-pill);width:max-content;margin-bottom:8px;}

/* ===== News ===== */
.dtre-news-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:var(--gap);}
.dtre-news-card{background:var(--surface);border:1px solid var(--line);border-radius:var(--r-lg);overflow:hidden;}
.dtre-news-card:hover{transform:translateY(-3px);box-shadow:var(--sh);}
.dtre-news-thumb{aspect-ratio:16/9;background:var(--tone);position:relative;display:flex;align-items:flex-end;padding:10px;}
.dtre-news-thumb::after{content:"";position:absolute;inset:0;background:repeating-linear-gradient(135deg, rgba(255,255,255,.4) 0 8px, transparent 8px 16px);}
.dtre-nt{position:relative;z-index:2;background:#fff;color:var(--brand-700);font-size:11px;line-height:1.2;font-weight:700;padding:3px 9px;border-radius:var(--r-pill);}
.dtre-news-card h5{margin:0;padding:14px;font-size:14px;line-height:1.4;font-weight:700;}

/* ===== Footer ===== */
.dtre-footband{background:var(--surface-2);border-top:1px solid var(--line);}
.dtre-foot-grid{display:grid;grid-template-columns:1.3fr 1fr 1fr 1.1fr;gap:30px;padding:40px 0 24px;}
.dtre-footband h6{margin:0 0 14px;font-size:13px;line-height:1.3;font-weight:800;letter-spacing:.04em;text-transform:uppercase;color:var(--ink);}
.dtre-footband ul{display:flex;flex-direction:column;gap:9px;}
.dtre-footband li a{font-size:13px;line-height:1.4;color:var(--ink-2);}
.dtre-footband li a:hover{color:var(--brand-700);}
.dtre-foot-logo{font-weight:800;font-size:24px;line-height:1;color:var(--brand-700);margin-bottom:10px;}
.dtre-foot-contact{font-size:13px;line-height:1.5;color:var(--ink-2);display:flex;flex-direction:column;gap:7px;}
.dtre-foot-contact b{color:var(--ink);}
.dtre-socials{display:flex;gap:9px;margin-top:6px;}
.dtre-socials a{width:38px;height:38px;border-radius:7px;background:#fff;border:1px solid var(--line);display:flex;align-items:center;justify-content:center;color:var(--brand);}
.dtre-socials a:hover{background:var(--brand);color:#fff;}
.dtre-news-signup{display:flex;flex-direction:column;gap:10px;margin-top:8px;}
.dtre-finput{width:100%;height:44px;border:1.5px solid var(--line);border-radius:var(--r);padding:0 14px;background:#fff;outline:none;font-size:14px;}
.dtre-finput:focus{border-color:var(--brand);}
.dtre-btn-block{width:100%;}
.dtre-foot-keywords{border-top:1px solid var(--line);padding:22px 0;}
.dtre-kw-title{font-size:13px;line-height:1.3;font-weight:800;text-transform:uppercase;letter-spacing:.04em;color:var(--ink-2);margin-bottom:10px;}
.dtre-kw-cloud{font-size:12.5px;line-height:2;color:var(--ink-3);}
.dtre-kw-cloud a{color:var(--ink-3);}
.dtre-kw-sep{margin:0 8px;color:var(--line);}
.dtre-foot-bottom{border-top:1px solid var(--line);padding:18px 0;text-align:center;font-size:12px;line-height:1.5;color:var(--ink-3);}

/* ===== Responsive ===== */
@media (max-width:1080px){ .dtre-cards5{grid-template-columns:repeat(4,1fr);} }
@media (max-width:980px){ .dtre-hbtn .dtre-lbl,.dtre-locbtn .dtre-txt{display:none;} }
@media (max-width:900px){
  .dtre-hometop{grid-template-columns:1fr;} .dtre-catrail{display:none;}
  .dtre-hero{grid-template-columns:1fr;} .dtre-hero-side{flex-direction:row;} .dtre-hero-content{max-width:100%;}
  .dtre-acc-grid{grid-template-columns:repeat(4,1fr);}
  .dtre-news-grid{grid-template-columns:repeat(2,1fr);}
  .dtre-bg3,.dtre-bg4{grid-template-columns:repeat(2,1fr);}
  .dtre-foot-grid{grid-template-columns:1fr 1fr;}
}
@media (max-width:780px){ .dtre-servstrip{grid-template-columns:repeat(2,1fr);} }
@media (max-width:680px){
  .dtre-cards5{grid-template-columns:repeat(2,1fr);}
  .dtre-hero-content{padding:26px 22px;} .dtre-hero-h{font-size:30px;} .dtre-hero-art{display:none;} .dtre-hero-side{flex-direction:column;}
  .dtre-acc-grid{grid-template-columns:repeat(3,1fr);}
  .dtre-foot-grid{grid-template-columns:1fr;}
}
/* ===== Breadcrumb ===== */
.dtre-crumb{display:flex;flex-wrap:wrap;align-items:center;gap:6px;font-size:13px;line-height:1.4;color:var(--ink-3);margin:14px 0 6px;}
.dtre-crumb a{color:var(--ink-2);}
.dtre-crumb a:hover{color:var(--brand-700);}
.dtre-crumb span.dtre-sep{color:var(--line);}
.dtre-crumb b{color:var(--ink);font-weight:600;}

/* ===== Category landing ===== */
.dtre-cat-h1{font-size:24px;line-height:1.2;font-weight:800;margin:6px 0 18px;letter-spacing:-.01em;}
.dtre-cat-blk-label{font-size:13.5px;line-height:1.3;font-weight:800;margin:14px 0 9px;}
.dtre-brandbar{display:flex;flex-wrap:wrap;gap:8px;}
.dtre-brand-cell{min-width:92px;height:40px;padding:0 16px;display:inline-flex;align-items:center;justify-content:center;border:1px solid var(--line);border-radius:7px;background:#fff;font-size:13px;line-height:1.2;font-weight:800;color:var(--ink-2);}
.dtre-brand-cell:hover{border-color:var(--brand-300);color:var(--brand-700);}
.dtre-subchips{display:flex;flex-wrap:wrap;gap:8px;}

/* featured rail */
.dtre-featbox{margin:22px 0 6px;border:1px solid oklch(0.9 0.05 22);border-radius:var(--r-lg);overflow:hidden;background:linear-gradient(180deg, oklch(0.97 0.04 22), #fff 120px);padding:0 12px 14px;}
.dtre-featbox-head{display:flex;align-items:center;justify-content:center;gap:10px;height:52px;margin:0 -12px 8px;background:linear-gradient(90deg, var(--coral), oklch(0.62 0.2 18));color:#fff;font-weight:800;font-size:18px;line-height:1.2;letter-spacing:.04em;}
.dtre-featbox .dtre-scroller{padding-top:4px;}
.dtre-featbox .dtre-card{width:208px;}

/* sort */
.dtre-sortwrap{margin:16px 0;}
.dtre-sortlbl{font-size:13.5px;line-height:1.3;font-weight:800;margin-bottom:8px;}
.dtre-select{height:42px;border:1.5px solid var(--line);border-radius:7px;padding:0 12px;background:#fff;color:var(--ink);outline:none;width:220px;font-size:14px;}

/* related red pills */
.dtre-cat-related{display:flex;gap:8px;flex-wrap:wrap;align-items:center;margin-top:26px;padding-top:18px;border-top:1px dashed var(--line);}
.dtre-cat-related-lbl{font-size:13px;line-height:1.3;font-weight:800;color:var(--ink-2);margin-right:4px;}
.dtre-pill-red{background:var(--coral);color:#fff;font-size:12.5px;line-height:1.2;font-weight:600;padding:7px 14px;border-radius:var(--r-pill);}
.dtre-pill-red:hover{filter:brightness(1.06);}

/* SEO + info two-col */
.dtre-cat-seo{display:grid;grid-template-columns:1.7fr 1fr;gap:30px;margin-top:32px;align-items:start;}
.dtre-toc{background:var(--surface-2);border:1px solid var(--line);border-radius:var(--r-lg);padding:16px 16px 16px 34px;margin:0 0 18px;font-size:13.5px;line-height:1.9;color:var(--brand-700);}
.dtre-toc-h{font-weight:800;color:var(--ink);font-size:14px;line-height:1.3;margin:0 0 6px -18px;list-style:none;}
.dtre-toc li{cursor:pointer;}
.dtre-toc li:hover{text-decoration:underline;}
.dtre-cat-blurb{font-size:14.5px;line-height:1.75;color:var(--ink-2);margin:0;}
.dtre-cat-blurb b{color:var(--ink);}
.dtre-infolist{margin:0;padding-left:18px;font-size:13px;line-height:1.5;color:var(--ink-2);display:flex;flex-direction:column;gap:8px;list-style:disc;}
.dtre-infolist b{color:var(--coral);}
.dtre-panelbox{background:linear-gradient(180deg,var(--brand-50),#fff 120px);border:1px solid var(--brand-100);border-radius:var(--r-lg);padding:18px;}
.dtre-panelbox-h{display:flex;align-items:center;gap:8px;font-weight:800;font-size:15px;line-height:1.3;color:var(--brand-700);margin-bottom:12px;}

/* video card */
.dtre-videocard{position:relative;border-radius:var(--r-lg);overflow:hidden;aspect-ratio:16/9;background:linear-gradient(135deg,var(--brand-600),var(--brand-700));display:flex;align-items:center;justify-content:center;margin:16px 0;}
.dtre-videocard::after{content:"";position:absolute;inset:0;background:repeating-linear-gradient(135deg,rgba(255,255,255,.08) 0 10px,transparent 10px 20px);}
.dtre-videocard .dtre-play{width:64px;height:64px;border-radius:50%;background:#fff;color:var(--coral);display:flex;align-items:center;justify-content:center;z-index:2;box-shadow:var(--sh-lg);}
.dtre-videocard .dtre-vtitle{position:absolute;bottom:12px;left:14px;color:#fff;font-weight:800;font-size:15px;line-height:1.3;z-index:2;}

/* FAQ accordion (native details) */
.dtre-faq{display:flex;flex-direction:column;gap:10px;}
.dtre-faq details{border:1px solid var(--line);border-radius:var(--r);background:#fff;overflow:hidden;}
.dtre-faq summary{list-style:none;cursor:pointer;padding:14px 16px;font-size:14px;line-height:1.4;font-weight:700;color:var(--ink);display:flex;align-items:center;justify-content:space-between;gap:10px;}
.dtre-faq summary::-webkit-details-marker{display:none;}
.dtre-faq summary::after{content:"+";font-size:20px;line-height:1;color:var(--brand);font-weight:700;}
.dtre-faq details[open] summary::after{content:"–";}
.dtre-faq summary:hover{background:var(--brand-50);}
.dtre-faq .dtre-faq-a{padding:0 16px 14px;font-size:13.5px;line-height:1.6;color:var(--ink-2);}

/* Q&A */
.dtre-qa{margin-top:36px;}
.dtre-qa-title{font-size:16px;line-height:1.3;font-weight:800;padding-bottom:12px;border-bottom:1px solid var(--line);}
.dtre-qa-title span{color:var(--ink-3);font-weight:600;font-size:13px;}
.dtre-qa-compose{display:flex;gap:12px;align-items:flex-start;margin:16px 0 8px;}
.dtre-qa-ava,.dtre-qa-dot{width:38px;height:38px;border-radius:50%;flex:0 0 auto;background:var(--brand-grad);color:#fff;display:flex;align-items:center;justify-content:center;font-weight:800;font-size:15px;}
.dtre-qa-compose textarea{flex:1;min-height:64px;border:1.5px solid var(--line);border-radius:7px;padding:11px 13px;font-size:13.5px;resize:vertical;outline:none;font-family:inherit;}
.dtre-qa-compose textarea:focus{border-color:var(--brand-300);}
.dtre-qa-list{display:flex;flex-direction:column;gap:18px;margin-top:14px;}
.dtre-qa-item{border-bottom:1px solid var(--line-2);padding-bottom:16px;}
.dtre-qa-row{display:flex;gap:12px;}
.dtre-qa-name{font-weight:700;font-size:14px;line-height:1.3;display:flex;align-items:center;gap:10px;}
.dtre-qa-name i{font-style:normal;font-weight:500;font-size:12px;color:var(--ink-3);}
.dtre-qa-q{font-size:13.5px;line-height:1.5;color:var(--ink-2);margin-top:4px;}
.dtre-qa-reply{margin:12px 0 0 50px;background:var(--surface-2);border-radius:7px;padding:12px 14px;}
.dtre-qa-admin{display:inline-flex;align-items:center;gap:6px;font-size:11.5px;line-height:1.2;font-weight:800;color:#fff;background:var(--coral);padding:3px 9px;border-radius:var(--r-pill);margin-bottom:7px;}
.dtre-qa-reply p{margin:0;font-size:13px;line-height:1.55;color:var(--ink-2);}

.dtre-empty{text-align:center;padding:60px 20px;color:var(--ink-3);}
.dtre-input{width:100%;height:44px;border:1.5px solid var(--line);border-radius:var(--r);padding:0 14px;background:#fff;outline:none;font-size:14px;}
.dtre-input:focus{border-color:var(--brand);}

/* ===== News page ===== */
.dtre-news-layout{display:grid;grid-template-columns:218px minmax(0,1fr);gap:24px;align-items:start;margin-top:6px;}
.dtre-news-nav{display:flex;flex-direction:column;gap:2px;background:#fff;border:1px solid var(--line);border-radius:var(--r-lg);padding:8px;}
.dtre-news-nav-item{display:flex;align-items:center;gap:10px;padding:10px 12px;border-radius:7px;font-size:13px;line-height:1.3;font-weight:600;color:var(--ink-2);text-align:left;}
.dtre-news-nav-item .dtre-ico{color:var(--ink-3);}
.dtre-news-nav-item:hover,.dtre-news-nav-item.dtre-on{background:var(--brand-50);color:var(--brand-700);}
.dtre-news-nav-item.dtre-on .dtre-ico{color:var(--brand);}
.dtre-news-hero{display:grid;grid-template-columns:320px minmax(0,1fr);gap:20px;border:1px solid var(--line);border-radius:var(--r-lg);overflow:hidden;background:#fff;margin-bottom:18px;}
.dtre-news-hero-thumb{aspect-ratio:16/10;background:var(--tone);position:relative;}
.dtre-news-hero-thumb::after{content:"";position:absolute;inset:0;background:repeating-linear-gradient(135deg,rgba(255,255,255,.5) 0 8px,transparent 8px 16px);}
.dtre-news-hero-body{padding:22px 22px 22px 0;display:flex;flex-direction:column;justify-content:center;}
.dtre-news-hero-body h2{font-size:22px;line-height:1.2;font-weight:800;margin:0 0 10px;letter-spacing:-.01em;}
.dtre-news-hero-body p{font-size:14px;line-height:1.6;color:var(--ink-2);margin:0 0 14px;}
.dtre-news-tag{position:absolute;top:12px;left:12px;z-index:2;display:inline-flex;align-items:center;gap:5px;font-size:11.5px;line-height:1.2;font-weight:800;padding:5px 10px;border-radius:var(--r-pill);background:#fff;color:var(--brand-700);box-shadow:var(--sh-sm);}
.dtre-news-tag.dtre-hot{background:var(--coral);color:#fff;}
.dtre-news-meta{display:inline-flex;align-items:center;gap:6px;font-size:12px;line-height:1.2;color:var(--ink-3);font-weight:600;}
.dtre-news-list{display:flex;flex-direction:column;gap:14px;}
.dtre-news-row{display:grid;grid-template-columns:190px minmax(0,1fr);gap:18px;border:1px solid var(--line);border-radius:var(--r-lg);overflow:hidden;background:#fff;}
.dtre-news-row:hover{box-shadow:var(--sh);}
.dtre-news-row-thumb{aspect-ratio:16/10;background:var(--tone);position:relative;}
.dtre-news-row-thumb::after{content:"";position:absolute;inset:0;background:repeating-linear-gradient(135deg,rgba(255,255,255,.5) 0 8px,transparent 8px 16px);}
.dtre-news-row-body{padding:14px 16px 14px 0;}
.dtre-news-row-body h3{font-size:16px;line-height:1.3;font-weight:700;margin:0 0 6px;}
.dtre-news-row-body p{font-size:13px;line-height:1.55;color:var(--ink-2);margin:0 0 10px;}

/* ===== Trade-in page ===== */
.dtre-ti-hero{position:relative;border-radius:var(--r-lg);overflow:hidden;background:var(--brand-grad);color:#fff;display:flex;align-items:center;min-height:150px;margin:4px 0 22px;}
.dtre-ti-hero-art{position:absolute;right:0;top:0;bottom:0;width:42%;background:repeating-linear-gradient(135deg,rgba(255,255,255,.12) 0 14px,transparent 14px 28px);}
.dtre-ti-hero-txt{position:relative;z-index:2;padding:26px 34px;}
.dtre-ti-kicker{font-size:12.5px;line-height:1.3;font-weight:700;letter-spacing:.05em;text-transform:uppercase;opacity:.9;}
.dtre-ti-hero-txt h1{font-size:34px;line-height:1.1;font-weight:800;margin:6px 0 6px;letter-spacing:-.01em;}
.dtre-ti-hero-txt h1 b{color:var(--amber);}
.dtre-ti-hero-txt p{font-size:14px;line-height:1.6;opacity:.92;margin:0;max-width:420px;}
.dtre-ti-section-title{text-align:center;font-size:20px;line-height:1.3;font-weight:800;letter-spacing:.04em;background:var(--surface-2);border-radius:var(--r-lg);padding:14px;margin:0 0 16px;}
.dtre-ti-tabs{display:flex;gap:8px;justify-content:center;flex-wrap:wrap;margin-bottom:16px;}
.dtre-ti-tab{padding:8px 22px;border-radius:var(--r-pill);font-size:13px;line-height:1.2;font-weight:800;letter-spacing:.03em;border:1.5px solid var(--line);background:#fff;color:var(--ink-2);}
.dtre-ti-tab.dtre-on{background:var(--coral);border-color:var(--coral);color:#fff;}
.dtre-ti-search{display:flex;align-items:center;gap:10px;max-width:420px;margin:0 auto 22px;border:1.5px solid var(--line);border-radius:var(--r-pill);padding:0 16px;height:44px;background:#fff;}
.dtre-ti-search input{border:none;outline:none;flex:1;font-size:14px;background:transparent;}
.dtre-ti-grid{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:var(--gap);}
.dtre-ti-card{background:#fff;border:1px solid var(--line);border-radius:var(--r-lg);padding:14px;text-align:center;}
.dtre-ti-card:hover{box-shadow:var(--sh-lg);border-color:var(--brand-300);}
.dtre-ti-card-thumb{aspect-ratio:1/1;border-radius:7px;background:var(--tone);display:flex;align-items:center;justify-content:center;margin-bottom:10px;}
.dtre-ti-card-thumb .dtre-ph{font-family:"Inter", system-ui, sans-serif;font-size:11px;color:var(--ink-3);}
.dtre-ti-card-name{font-size:13px;line-height:1.35;font-weight:700;min-height:36px;}
.dtre-ti-card-price{font-size:12.5px;line-height:1.3;color:var(--ink-2);margin-top:8px;}
.dtre-ti-card-price b{color:var(--coral);font-size:15px;font-weight:800;}
.dtre-ti-form{margin-top:28px;background:var(--surface-2);border:1px solid var(--line);border-radius:var(--r-lg);padding:24px;text-align:center;}
.dtre-ti-form h3{font-size:18px;line-height:1.3;font-weight:800;margin:0 0 4px;}
.dtre-ti-form p{font-size:13.5px;line-height:1.5;color:var(--ink-2);margin:0 0 16px;}
.dtre-ti-form-grid{display:grid;grid-template-columns:1fr 1fr;gap:12px;max-width:620px;margin:0 auto;}
.dtre-ti-input-wide{grid-column:1 / -1;}
.dtre-ti-submit{grid-column:1 / -1;justify-self:center;min-width:200px;}

@media (max-width:980px){ .dtre-ti-grid{grid-template-columns:repeat(4,minmax(0,1fr));} }
@media (max-width:880px){ .dtre-cat-seo{grid-template-columns:1fr;} .dtre-news-layout{grid-template-columns:1fr;} .dtre-news-nav{flex-direction:row;flex-wrap:wrap;} .dtre-news-hero{grid-template-columns:1fr;} .dtre-news-hero-body{padding:18px;} .dtre-news-row{grid-template-columns:130px minmax(0,1fr);} .dtre-ti-form-grid{grid-template-columns:1fr;} }
@media (max-width:680px){ .dtre-ti-grid{grid-template-columns:repeat(2,minmax(0,1fr));} .dtre-ti-form-grid{grid-template-columns:1fr;} }
/* ===== Product detail (PDP) responsive ===== */
@media (max-width:920px){ .dtre-pdp2{grid-template-columns:1fr!important;} .dtre-pdp-buy{order:-1;} }

/* ===== Booking ===== */
.dtre-stepper{display:flex;align-items:center;gap:0;margin:8px 0 26px;flex-wrap:wrap;}
.dtre-step{display:flex;align-items:center;gap:10px;}
.dtre-step-num{width:32px;height:32px;border-radius:50%;display:flex;align-items:center;justify-content:center;font-weight:800;font-size:14px;flex:0 0 auto;background:var(--surface-2);color:var(--ink-3);}
.dtre-step-num.dtre-on{background:var(--brand);color:#fff;}
.dtre-step-num.dtre-done{background:var(--green);color:#fff;}
.dtre-step-line{flex:1;height:2px;background:var(--line);margin:0 12px;min-width:18px;}
.dtre-bkcard{background:#fff;border:1px solid var(--line);border-radius:var(--r-xl);padding:24px;}
.dtre-bk-devs{display:grid;grid-template-columns:repeat(auto-fill,minmax(150px,1fr));gap:12px;}
.dtre-bk-dev{display:flex;flex-direction:column;align-items:center;gap:10px;padding:22px 12px;border-radius:var(--r-lg);border:1.5px solid var(--line);background:#fff;cursor:pointer;}
.dtre-bk-dev.dtre-on,.dtre-bk-dev:hover{border-color:var(--brand);background:var(--brand-50);}
.dtre-bk-dev .dtre-si{width:48px;height:48px;border-radius:7px;background:var(--brand-50);color:var(--brand);display:flex;align-items:center;justify-content:center;}
.dtre-bk-dev.dtre-on .dtre-si{background:var(--brand);color:#fff;}
.dtre-svc-grid{display:grid;grid-template-columns:1fr 1fr;gap:12px;}
.dtre-svc{display:flex;gap:14px;align-items:center;padding:16px;border-radius:var(--r-lg);text-align:left;border:1.5px solid var(--line);background:#fff;cursor:pointer;}
.dtre-svc:hover{border-color:var(--brand-300);}
.dtre-svc .dtre-si{width:46px;height:46px;border-radius:7px;background:var(--brand-50);color:var(--brand);display:flex;align-items:center;justify-content:center;flex:0 0 auto;}
.dtre-bk-radio{width:100%;text-align:left;display:flex;align-items:center;gap:12px;padding:14px 16px;border-radius:var(--r);background:#fff;border:1.5px solid var(--line);cursor:pointer;}
.dtre-bk-radio:hover{border-color:var(--brand-300);}
.dtre-bk-radio .dtre-si{width:38px;height:38px;border-radius:7px;background:var(--surface-2);color:var(--ink-3);display:flex;align-items:center;justify-content:center;flex:0 0 auto;}
.dtre-bk-radio .dtre-dot{width:22px;height:22px;border-radius:50%;border:2px solid var(--line);flex:0 0 auto;}
.dtre-date{width:64px;padding:12px 0;border-radius:7px;text-align:center;border:1.5px solid var(--line);background:#fff;cursor:pointer;}
.dtre-date.dtre-on{border-color:var(--brand);background:var(--brand-50);}
.dtre-slot{padding:11px 0;border-radius:7px;font-weight:700;font-size:14px;border:1.5px solid var(--line);background:#fff;cursor:pointer;text-align:center;}
.dtre-slot.dtre-on{border-color:var(--brand);background:var(--brand);color:#fff;}
.dtre-slotgrid{display:grid;grid-template-columns:repeat(auto-fill,minmax(90px,1fr));gap:10px;}
.dtre-bk-h{margin:18px 0 12px;font-size:18px;line-height:1.3;font-weight:800;}

/* ===== Booking — overflow-proof + mobile =====
   ROOT CAUSE of the mobile blow-out: the Greenshift framework sets
   `.wp-content-wrap{width:var(--wide-size,1200px);max-width:100%}`. The booking
   wrapper adds an inline `style="max-width:880px"`, which *replaces* the
   framework's responsive `max-width:100%` → it keeps `width:1200px` capped to
   880px and can no longer shrink below 880 on a phone (overflows the viewport).
   Restore a fluid width so it becomes `min(100%, 880px)`. */
.dtre-mainwrap[style*="max-width"]{width:100%;}
/* The contact form uses inline 2-col grids (`grid-template-columns:1fr 1fr`).
   `1fr` = `minmax(auto,1fr)`, so a long <select> option (device/service names)
   can still blow the track out; force `minmax(0,1fr)` so tracks can shrink. */
.dtre-bkcard{max-width:100%;}
.dtre-bkcard form > div[style*="grid-template-columns"]{grid-template-columns:minmax(0,1fr) minmax(0,1fr)!important;}
.dtre-bkcard .dtre-input,.dtre-bkcard select.dtre-input,.dtre-bkcard textarea.dtre-input{width:100%;min-width:0;max-width:100%;box-sizing:border-box;}
.dtre-bkcard select.dtre-input{max-width:100%;}
@media (max-width:600px){
  .dtre-bkcard{padding:16px;}
  .dtre-bkcard form > div[style*="grid-template-columns"]{grid-template-columns:1fr!important;gap:12px!important;margin-bottom:12px!important;}
  .dtre-bk-h{font-size:16px;margin:16px 0 10px;}
  /* stepper: compact numbered progress (labels hidden) so it never wraps awkwardly */
  .dtre-stepper{margin:6px 0 18px;}
  .dtre-step{gap:0;}
  .dtre-step > span:last-child{display:none;}
  .dtre-step-num{width:28px;height:28px;font-size:13px;}
  .dtre-step-line{margin:0 6px;min-width:10px;}
  /* device grid: 2 tidy columns instead of 150px-min auto-fill */
  .dtre-bk-devs{grid-template-columns:1fr 1fr;gap:10px;}
  .dtre-bk-dev{padding:16px 10px;}
  /* dates: even row, no off-screen overflow */
  .dtre-date{flex:1 1 56px;width:auto;}
  /* final action row: stack full-width, ≥44px tap targets, primary on top */
  .dtre-bkcard form > div[style*="justify-content:space-between"]{flex-direction:column-reverse;gap:10px!important;}
  .dtre-bkcard form > div[style*="justify-content:space-between"] > .dtre-btn{width:100%;justify-content:center;}
}

/* ===== Booking — sticky "Đặt lịch ngay" CTA (mobile), above the bottom nav bar ===== */
.dtre-bk-cta{display:none;}
@media (max-width:900px){
  .dtre-bk-cta{display:block;position:fixed;left:0;right:0;bottom:calc(72px + env(safe-area-inset-bottom,0px));z-index:340;padding:8px 12px;background:rgba(255,255,255,.94);backdrop-filter:saturate(1.4) blur(6px);-webkit-backdrop-filter:saturate(1.4) blur(6px);border-top:1px solid var(--line);}
  .dtre-bk-cta .dtre-btn{width:100%;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:1px;padding:10px;border-radius:12px;line-height:1.15;min-height:52px;}
  .dtre-bk-cta .dtre-btn small{font-size:11px;font-weight:500;opacity:.92;}
  /* the in-form action row is replaced by the sticky CTA on mobile */
  .dtre-bkcard form > div[style*="justify-content:space-between"]{display:none!important;}
  /* room so the last field isn't hidden behind the CTA + bottom nav */
  .dtre-bkcard{margin-bottom:130px;}
}

/* ===== Checkout ===== */
.dtre-co-wrap{max-width:920px;margin:0 auto;padding:0 16px 60px;}
.dtre-co-top{position:relative;display:flex;align-items:center;justify-content:center;height:56px;border-bottom:1px solid var(--line);margin-top:6px;}
.dtre-co-top h1{font-size:17px;line-height:1.3;font-weight:800;margin:0;}
.dtre-co-tabs{display:grid;grid-template-columns:1fr 1fr;border-bottom:1px solid var(--line);margin-bottom:22px;}
.dtre-co-tabs button{padding:14px 0;font-size:14px;line-height:1.2;font-weight:800;letter-spacing:.03em;color:var(--ink-3);position:relative;}
.dtre-co-tabs button.dtre-on{color:var(--coral);}
.dtre-co-tabs button.dtre-on::after{content:"";position:absolute;left:0;right:0;bottom:-1px;height:2.5px;background:var(--coral);}
.dtre-co-prod-list{display:flex;flex-direction:column;gap:12px;}
.dtre-co-prod{display:flex;gap:16px;align-items:flex-start;border:1px solid var(--line);border-radius:var(--r-lg);padding:14px 16px;background:#fff;}
.dtre-co-pthumb{width:62px;height:62px;border-radius:7px;flex:0 0 auto;background:repeating-linear-gradient(135deg,rgba(255,255,255,.5) 0 7px,transparent 7px 14px),var(--tone,#eef2ff);}
.dtre-co-pmain{flex:1;min-width:0;}
.dtre-co-pname{font-weight:800;font-size:15px;line-height:1.3;}
.dtre-co-imei{display:inline-block;margin-top:6px;font-size:11.5px;line-height:1.2;font-weight:600;color:var(--brand-700);background:var(--brand-50);padding:3px 9px;border-radius:7px;letter-spacing:.04em;}
.dtre-co-pstore{font-size:12.5px;line-height:1.3;color:var(--green);margin-top:7px;font-weight:600;}
.dtre-co-pqty{font-size:13px;line-height:1.3;color:var(--ink-2);white-space:nowrap;}
.dtre-co-pqty b{color:var(--ink);}
.dtre-co-upsell{border:1px solid oklch(0.9 0.05 22);border-radius:var(--r-lg);overflow:hidden;margin-top:14px;}
.dtre-co-upsell-head{display:flex;align-items:center;gap:8px;padding:12px 16px;font-weight:800;font-size:13.5px;line-height:1.3;color:var(--coral);background:oklch(0.97 0.03 22);}
.dtre-co-upsell-row{display:flex;align-items:center;gap:14px;padding:12px 16px;border-top:1px solid var(--line-2);}
.dtre-co-upsell-thumb{width:42px;height:42px;border-radius:7px;background:var(--surface-2);color:var(--ink-3);display:flex;align-items:center;justify-content:center;flex:0 0 auto;}
.dtre-co-upsell-txt{flex:1;min-width:0;font-size:13.5px;line-height:1.4;}
.dtre-co-upsell-txt b{display:block;color:var(--coral);font-size:13px;margin-top:2px;}
.dtre-co-upsell-btn{font-weight:800;font-size:13px;color:var(--coral);padding:7px 16px;border-radius:var(--r-pill);border:1.5px solid var(--coral);}
.dtre-co-sec{font-size:15px;line-height:1.3;font-weight:800;text-transform:uppercase;letter-spacing:.02em;margin:26px 0 14px;}
.dtre-co-grid2{display:grid;grid-template-columns:1fr 1fr;gap:14px;margin-bottom:14px;}
.dtre-co-field{display:block;margin-bottom:14px;position:relative;}
.dtre-co-grid2 .dtre-co-field{margin-bottom:0;}
.dtre-co-flabel{position:absolute;top:-7px;left:12px;background:#fff;padding:0 5px;font-size:11.5px;line-height:1.2;color:var(--ink-3);z-index:1;}
.dtre-co-input{width:100%;height:50px;border:1.5px solid var(--line);border-radius:7px;padding:0 13px;background:#fff;font-size:14px;outline:none;}
.dtre-co-input:focus{border-color:var(--brand-300);}
.dtre-co-select{position:relative;}
.dtre-co-select select{width:100%;height:50px;border:1.5px solid var(--line);border-radius:7px;padding:0 38px 0 13px;background:#fff;font-size:14px;color:var(--ink);appearance:none;outline:none;cursor:pointer;}
.dtre-co-select .dtre-ico{position:absolute;right:13px;top:50%;transform:translateY(-50%);color:var(--ink-3);pointer-events:none;}
.dtre-co-check,.dtre-co-terms{display:flex;align-items:flex-start;gap:9px;font-size:13px;line-height:1.5;color:var(--ink-2);cursor:pointer;}
.dtre-co-check{align-items:center;margin-top:4px;}
.dtre-co-check input,.dtre-co-terms input{width:17px;height:17px;accent-color:var(--brand);flex:0 0 auto;margin-top:1px;}
.dtre-co-terms{margin-top:18px;}
.dtre-co-terms a{color:var(--brand-700);text-decoration:underline;}
.dtre-co-terms b{color:var(--ink);}
.dtre-co-ship-opts{display:flex;gap:28px;margin-bottom:16px;}
.dtre-co-radio{display:flex;align-items:center;gap:8px;font-size:14px;line-height:1.3;font-weight:600;color:var(--ink-2);cursor:pointer;}
.dtre-co-radio input{width:18px;height:18px;accent-color:var(--coral);}
.dtre-co-note{width:100%;min-height:78px;padding:12px 13px;resize:vertical;border:1.5px solid var(--line);border-radius:7px;font-size:14px;font-family:inherit;outline:none;}
.dtre-co-bar{position:sticky;bottom:0;background:#fff;border:1px solid var(--line);border-radius:var(--r-lg) var(--r-lg) 0 0;margin:26px -16px 0;padding:14px 20px 18px;box-shadow:0 -10px 30px -12px rgba(28,40,90,.18);z-index:20;}
.dtre-co-bar-row{display:flex;justify-content:space-between;align-items:baseline;font-size:15px;line-height:1.3;font-weight:800;}
.dtre-co-bar-row b{color:var(--coral);font-size:19px;}
.dtre-co-bar-note{display:flex;align-items:center;gap:6px;font-size:12px;line-height:1.3;color:var(--brand-700);margin-top:3px;}
.dtre-co-bar-btn{width:100%;margin-top:12px;font-size:15px;letter-spacing:.03em;}
.dtre-co-discount{display:flex;gap:10px;margin-bottom:18px;}
.dtre-co-discount input{flex:1;height:48px;border:1.5px solid var(--line);border-radius:7px;padding:0 14px;font-size:14px;outline:none;}
.dtre-co-discount button{padding:0 20px;border-radius:7px;background:var(--surface-2);color:var(--ink-3);font-weight:700;font-size:14px;border:1.5px solid var(--line);}
.dtre-co-summary{border:1px solid var(--line);border-radius:var(--r-lg);padding:16px 18px;}
.dtre-co-sum-row{display:flex;justify-content:space-between;font-size:14px;line-height:1.4;color:var(--ink-2);padding:5px 0;}
.dtre-co-sum-total{border-top:1px solid var(--line);margin-top:6px;padding-top:12px;font-weight:800;color:var(--ink);font-size:15px;}
.dtre-co-pays{display:flex;flex-direction:column;gap:10px;}
.dtre-co-pay{display:flex;align-items:center;gap:14px;padding:14px 16px;border:1.5px solid var(--line);border-radius:var(--r-lg);background:#fff;text-align:left;}
.dtre-co-pay.dtre-on{border-color:var(--coral);}
.dtre-co-pay-logo{width:42px;height:42px;border-radius:7px;flex:0 0 auto;display:flex;align-items:center;justify-content:center;background:color-mix(in srgb, var(--lc,var(--coral)) 12%, #fff);color:var(--lc,var(--coral));}
.dtre-co-pay-letters{font-weight:800;font-size:12px;}
.dtre-co-pay-body{flex:1;min-width:0;}
.dtre-co-pay-body b{display:block;font-size:14.5px;line-height:1.3;font-weight:700;}
.dtre-co-pay-body i{font-style:normal;font-size:12px;line-height:1.3;color:var(--ink-3);}
.dtre-co-pay-dot{width:20px;height:20px;border-radius:50%;border:2px solid var(--line);flex:0 0 auto;}
.dtre-co-pay.dtre-on .dtre-co-pay-dot{border:6px solid var(--coral);}
.dtre-co-recap{border:1px solid var(--line);border-radius:var(--r-lg);padding:16px 18px;margin-top:22px;}
.dtre-co-recap-h{font-weight:800;font-size:14.5px;line-height:1.3;text-transform:uppercase;margin-bottom:10px;}
.dtre-co-recap-row{font-size:13.5px;line-height:1.5;color:var(--ink-2);padding:4px 0;}
.dtre-co-recap-row b{color:var(--ink);}
.dtre-co-ok{width:86px;height:86px;border-radius:50%;background:var(--green-soft);color:var(--green);display:flex;align-items:center;justify-content:center;margin:0 auto 20px;}

/* ===== Search results ===== */
.dtre-search-grid{display:grid;grid-template-columns:minmax(0,1fr) 300px;gap:24px;align-items:start;}
.dtre-search-side{background:#fff;border:1px solid var(--line);border-radius:var(--r-lg);padding:16px;}
.dtre-cards3{grid-template-columns:repeat(3,minmax(0,1fr));}
@media (max-width:880px){ .dtre-search-grid{grid-template-columns:1fr;} .dtre-search-side{display:none;} .dtre-svc-grid{grid-template-columns:1fr;} .dtre-co-grid2{grid-template-columns:1fr;} }
@media (max-width:680px){ .dtre-cards3{grid-template-columns:repeat(2,minmax(0,1fr));} }
/* ===== Slider arrows for scrollers ===== */
.dtre-scroller-wrap{position:relative;}
.dtre-scroll-btn{position:absolute;top:42%;transform:translateY(-50%);width:42px;height:42px;border-radius:50%;background:#fff;box-shadow:var(--sh-lg);display:flex;align-items:center;justify-content:center;z-index:6;border:1px solid var(--line);color:var(--ink);font-size:22px;line-height:1;cursor:pointer;}
.dtre-scroll-btn:hover{color:var(--brand);border-color:var(--brand-300);}
.dtre-scroll-btn.dtre-left{left:-14px;}
.dtre-scroll-btn.dtre-right{right:-14px;}
@media (max-width:680px){ .dtre-scroll-btn{display:none;} }

/* ===== Top util bar: running slider on mobile ===== */
.dtre-utiltrack{display:flex;gap:24px;flex-wrap:wrap;align-items:center;justify-content:center;}
.dtre-util-dup{display:none;}
@media (max-width:760px){
  .dtre-utilbar{overflow:hidden;justify-content:flex-start;}
  .dtre-utiltrack{flex-wrap:nowrap;justify-content:flex-start;width:max-content;animation:dtre-marquee 16s linear infinite;}
  .dtre-util-dup{display:inline-flex;}
  .dtre-util{white-space:nowrap;}
}
@keyframes dtre-marquee{ from{transform:translateX(0);} to{transform:translateX(-50%);} }

/* ===== Mega menu (Danh mục) ===== */
.dtre-catbtn-wrap{position:relative;}
.dtre-mega{position:absolute;top:calc(100% + 8px);left:0;width:290px;background:#fff;color:var(--ink);border-radius:var(--r-lg);box-shadow:var(--sh-lg);border:1px solid var(--line);z-index:300;opacity:0;visibility:hidden;transform:translateY(6px);transition:opacity .15s, transform .15s, visibility .15s;}
.dtre-catbtn-wrap:hover .dtre-mega, .dtre-mega.dtre-open{opacity:1;visibility:visible;transform:none;}
.dtre-mega-row{position:relative;border-bottom:1px solid var(--line-2);}
.dtre-mega-row:last-child{border-bottom:none;}
.dtre-mega-rowlink{display:flex;align-items:center;gap:11px;padding:10px 14px;font-size:13.5px;font-weight:500;color:var(--ink);cursor:pointer;}
.dtre-mega-row:hover>.dtre-mega-rowlink{background:var(--brand-50);color:var(--brand-700);}
.dtre-mico{width:30px;height:30px;border-radius:7px;background:var(--brand-50);color:var(--brand);display:flex;align-items:center;justify-content:center;flex:0 0 auto;}
.dtre-mega-row:hover .dtre-mico{background:var(--brand);color:#fff;}
.dtre-mchev{margin-left:auto;color:var(--ink-3);}
.dtre-mega-fly{position:absolute;left:100%;top:0;min-height:100%;width:min(780px,68vw);background:#fff;border:1px solid var(--line);border-radius:var(--r-lg);box-shadow:var(--sh-lg);padding:20px 22px;margin-left:6px;display:none;z-index:310;}
.dtre-mega-row:hover>.dtre-mega-fly{display:block;}
.dtre-mega-cols{display:grid;grid-template-columns:repeat(3,1fr);gap:18px 18px;}
.dtre-mega-gt{font-size:13px;font-weight:800;color:var(--ink);margin-bottom:8px;line-height:1.25;}
.dtre-mega-fly ul{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:2px;}
.dtre-mega-fly li a{display:block;font-size:12.5px;line-height:1.4;color:var(--ink-2);padding:2px 0;}
.dtre-mega-fly li a:hover{color:var(--brand-700);}
.dtre-mega-close{display:none;}
@media (max-width:900px){
  .dtre-catbtn-wrap:hover .dtre-mega{opacity:0;visibility:hidden;transform:translateY(6px);}
  .dtre-mega.dtre-open{opacity:1;visibility:visible;transform:none;}
  .dtre-mega{position:fixed;top:64px;left:8px;right:8px;width:auto;max-height:78vh;overflow:auto;}
  .dtre-mega-close{display:flex;align-items:center;justify-content:flex-end;padding:8px 14px;font-weight:700;color:var(--ink-3);cursor:pointer;}
  .dtre-mega-fly{position:static;width:auto;box-shadow:none;border:none;border-radius:0;margin-left:0;padding:6px 0 10px 41px;display:none;}
  .dtre-mega-row.dtre-open>.dtre-mega-fly{display:block;}
  .dtre-mega-row:hover>.dtre-mega-fly{display:none;}
  .dtre-mega-cols{grid-template-columns:1fr;gap:10px;}
  .dtre-mchev{transition:transform .2s;}
  .dtre-mega-row.dtre-open .dtre-mchev{transform:rotate(90deg);}
}

/* ===== Mobile product card fixes (no button overflow, less cramped) ===== */
.dtre-addbtn{flex:1 1 auto;min-width:0;box-sizing:border-box;max-width:100%;}
.dtre-cardfoot{width:100%;}
.dtre-card .dtre-btn{box-sizing:border-box;max-width:100%;}
@media (max-width:680px){
  .dtre-card{padding:11px;}
  .dtre-grid{gap:10px;}
  .dtre-cardfoot{padding-top:10px;}
  .dtre-cardfoot .dtre-btn{width:100%;padding:9px 8px;font-size:12px;line-height:1.15;white-space:normal;gap:5px;}
  .dtre-pname{font-size:12.5px;min-height:34px;}
  .dtre-price{font-size:15px;}
  .dtre-metaline{font-size:11px;}
  .dtre-tagpill{font-size:10px;padding:3px 7px;}
  .dtre-installment{font-size:9.5px;padding:3px 6px;}
  .dtre-ribbon{font-size:10.5px;padding:4px 9px;}
}
/* scroller cards a touch wider on phones */
@media (max-width:680px){ .dtre-scroller{grid-auto-columns:minmax(170px,72%);} }

/* ===== Mobile polish v2 (2026-06-18): tap targets ≥44px, overflow guard, mega close ===== */
/* Overflow insurance — embeds/media never push the page wide */
.dtre-band img,.dtre-band svg,.dtre-band video,.dtre-band iframe{max-width:100%;}

@media (max-width:680px){
  /* Tap targets ≥44px on primary controls */
  .dtre-catbtn{min-height:44px;padding:11px 16px;}
  .dtre-hbtn{min-height:44px;justify-content:center;}
  .dtre-chip{min-height:40px;display:inline-flex;align-items:center;}
  .dtre-cardfoot .dtre-btn{min-height:44px;}
  .dtre-sec-link{min-height:40px;}
  /* Card breathing room + clearer price */
  .dtre-grid{gap:12px;}
  .dtre-price{font-size:15.5px;}
  /* Momentum scrolling for horizontal sliders */
  .dtre-scroller{-webkit-overflow-scrolling:touch;scroll-padding-left:12px;}
}

/* Mega menu mobile drawer: bigger tap rows + prominent sticky close bar */
@media (max-width:900px){
  .dtre-mega{top:60px;border-radius:7px;box-shadow:0 24px 60px -12px rgba(20,30,60,.4);}
  .dtre-mega-close{position:sticky;top:0;background:#fff;border-bottom:1px solid var(--line);
    justify-content:center;gap:8px;padding:14px;font-size:15px;color:var(--brand-700);min-height:48px;z-index:2;}
  .dtre-mega-rowlink{min-height:52px;padding:13px 16px;font-size:14.5px;}
  .dtre-mega-fly li a{min-height:40px;display:flex;align-items:center;font-size:13.5px;}
}

/* ≤430px — densest phones: tighten chrome, keep 2-col comfortable */
@media (max-width:430px){
  .dtre-card{padding:10px;}
  .dtre-sec-title{font-size:18px;}
  .dtre-section{margin-top:26px;}
}

/* Respect reduced-motion: stop infinite marquee/animations */
@media (prefers-reduced-motion: reduce){
  .dtre-utiltrack{animation:none!important;}
  .dtre-card:hover,.dtre-acc-tile:hover,.dtre-news-card:hover{transform:none;}
}

/* ===== Fab floating button (scroll-to-top + đặt lịch) ===== */
.dtre-fab{position:fixed;right:16px;bottom:16px;z-index:240;display:flex;flex-direction:column;align-items:flex-end;gap:10px;}
.dtre-fab-top{width:46px;height:46px;border-radius:50%;background:#fff;border:1px solid var(--line);box-shadow:var(--sh-lg);color:var(--ink);display:flex;align-items:center;justify-content:center;cursor:pointer;opacity:0;visibility:hidden;transform:translateY(8px);transition:opacity .25s,transform .25s,visibility .25s;}
.dtre-fab.dtre-show .dtre-fab-top{opacity:1;visibility:visible;transform:none;}
.dtre-fab-main{display:inline-flex;align-items:center;gap:8px;background:var(--brand-grad);color:#fff;padding:13px 20px;border-radius:var(--r-pill);box-shadow:0 12px 26px -8px var(--brand);font-weight:700;font-size:14px;line-height:1;}
.dtre-fab-main span{white-space:nowrap;}
@media (max-width:600px){
  .dtre-fab-main span{display:none;}
  .dtre-fab-main{padding:14px;border-radius:50%;}
}

/* Mega flyout badge (HOT/NEW) */
.dtre-mega-badge{display:inline-block;margin-left:6px;background:var(--coral);color:#fff;font-size:9px;font-weight:800;letter-spacing:.02em;padding:1px 6px;border-radius:7px;vertical-align:middle;text-transform:uppercase;}

/* ===== Selectable option pickers (PDP variant/color/imei, gallery thumb) ===== */
.dtre-pickopt{cursor:pointer;}
.dtre-pick{border:1.5px solid var(--line);background:#fff;color:var(--ink);transition:border-color .15s,background .15s,color .15s;}
.dtre-pick:hover{border-color:var(--brand-300);}
.dtre-pick.dtre-on{border:2px solid var(--brand);background:var(--brand-50);}
.dtre-pick-color.dtre-on{color:var(--brand-700);}
.dtre-gthumb{outline:1px solid var(--line);}
.dtre-gthumb.dtre-on{outline:2.5px solid var(--brand);}

/* Listing brand filter active */
.dtre-brand-cell.dtre-active{border-color:var(--brand);background:var(--brand-50);color:var(--brand-700);}

/* ===== Search dropdown (header suggestions) ===== */
.dtre-search-wrap{position:relative;flex:1;min-width:0;display:flex;}
.dtre-search-wrap .dtre-search{flex:1;}
.dtre-search-dd{position:absolute;top:calc(100% + 6px);left:0;right:0;background:#fff;border:1px solid var(--line);border-radius:var(--r-lg);box-shadow:var(--sh-lg);padding:14px;z-index:320;opacity:0;visibility:hidden;transform:translateY(6px);transition:opacity .15s,transform .15s,visibility .15s;max-height:70vh;overflow:auto;}
.dtre-search-dd.dtre-open{opacity:1;visibility:visible;transform:none;}
.dtre-sdd-sec{font-size:12px;font-weight:800;text-transform:uppercase;letter-spacing:.03em;color:var(--ink-3);margin:4px 0 8px;}
.dtre-sdd-trends{display:flex;flex-wrap:wrap;gap:8px;margin-bottom:12px;}
.dtre-sdd-chip{padding:6px 12px;border-radius:var(--r-pill);background:var(--surface-2);border:1px solid var(--line);font-size:12.5px;font-weight:600;color:var(--ink-2);}
.dtre-sdd-chip:hover{background:var(--brand-50);color:var(--brand-700);border-color:var(--brand-300);}
.dtre-sdd-cats{display:flex;flex-direction:column;gap:2px;}
.dtre-sdd-cat{display:flex;align-items:center;gap:10px;padding:9px 10px;border-radius:7px;font-size:13.5px;color:var(--ink);}
.dtre-sdd-cat .dtre-ico{color:var(--ink-3);}
.dtre-sdd-cat:hover{background:var(--brand-50);color:var(--brand-700);}

/* ===== Cart drawer (slide-in, WooCommerce Store API) ===== */
.dtre-cartdrawer{position:fixed;inset:0;z-index:400;visibility:hidden;}
.dtre-cartdrawer.dtre-open{visibility:visible;}
.dtre-cd-overlay{position:absolute;inset:0;background:rgba(15,18,40,.45);opacity:0;transition:opacity .25s;}
.dtre-cartdrawer.dtre-open .dtre-cd-overlay{opacity:1;}
.dtre-cd-panel{position:absolute;top:0;right:0;height:100%;width:min(400px,92vw);background:var(--bg);box-shadow:-12px 0 40px -10px rgba(20,30,60,.35);display:flex;flex-direction:column;transform:translateX(100%);transition:transform .28s cubic-bezier(.4,0,.2,1);}
.dtre-cartdrawer.dtre-open .dtre-cd-panel{transform:none;}
.dtre-cd-head{display:flex;align-items:center;justify-content:space-between;padding:18px;border-bottom:1px solid var(--line);font-size:16px;background:#fff;}
.dtre-cd-x{width:36px;height:36px;border-radius:50%;background:var(--surface-2);border:none;font-size:16px;cursor:pointer;color:var(--ink-2);}
.dtre-cd-body{flex:1;overflow:auto;padding:12px 16px;display:flex;flex-direction:column;gap:12px;}
.dtre-cd-empty{text-align:center;color:var(--ink-3);padding:40px 16px;font-size:14px;}
.dtre-cd-item{display:flex;gap:12px;align-items:center;background:#fff;border:1px solid var(--line);border-radius:var(--r);padding:10px;}
.dtre-cd-thumb{width:54px;height:54px;border-radius:7px;background:var(--surface-2) center/cover no-repeat;flex:0 0 auto;}
.dtre-cd-it-main{min-width:0;}
.dtre-cd-it-name{font-size:13.5px;font-weight:600;line-height:1.35;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;}
.dtre-cd-it-meta{font-size:12.5px;color:var(--ink-3);margin-top:4px;}
.dtre-cd-foot{border-top:1px solid var(--line);padding:16px;background:#fff;display:flex;flex-direction:column;gap:10px;}
.dtre-cd-total{display:flex;justify-content:space-between;font-size:15px;font-weight:700;}
.dtre-cd-total b{color:var(--coral);}

/* Booking option active states (svc/store) — dev/date/slot already styled */
.dtre-svc.dtre-on{border-color:var(--brand);background:var(--brand-50);}
.dtre-svc.dtre-on .dtre-si{background:var(--brand);color:#fff;}
.dtre-bk-radio.dtre-on{border-color:var(--brand);background:var(--brand-50);}
.dtre-bk-radio.dtre-on .dtre-si{background:var(--brand);color:#fff;}
.dtre-bk-radio.dtre-on .dtre-dot{border:6px solid var(--brand);}

/* =========================================================
   MOBILE REDESIGN v3 (2026-06-18): header gọn, bottom bar,
   category drawer, "Xem thêm" sheet, card không nút (cả thẻ bấm)
   Breakpoint mobile = ≤900px (đồng bộ mega/drawer)
   ========================================================= */

/* ---- Bottom navigation bar (mobile only) ---- */
.dtre-bottombar{display:none;}
.dtre-bb-item,.dtre-cdw-row,.dtre-ms-link,.dtre-card-stretch{text-decoration:none;}
.dtre-catdrawer,.dtre-moresheet{position:fixed;inset:0;z-index:420;visibility:hidden;}
.dtre-card-stretch{display:none;}
@media (max-width:900px){
  .dtre-bottombar{display:grid;grid-template-columns:repeat(5,1fr);position:fixed;left:0;right:0;bottom:0;z-index:350;background:#fff;border-top:1px solid var(--line);box-shadow:0 -4px 20px -8px rgba(20,30,60,.18);padding:6px 4px;padding-bottom:max(6px,env(safe-area-inset-bottom,6px));}
  .dtre-bb-item{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:3px;background:none;border:none;color:var(--ink-2);font:600 10.5px/1.1 inherit;padding:5px 1px;margin:0 2px;border-radius:7px;cursor:pointer;text-align:center;min-height:46px;transition:background .15s,color .15s;}
  .dtre-bb-ico{display:flex;}
  .dtre-bb-lbl{white-space:nowrap;}
  .dtre-bb-item.dtre-on{background:var(--brand-50);color:var(--brand-700);}
  .dtre-bb-item:active{opacity:.55;}
  body{padding-bottom:66px;}
  .dtre-fab{bottom:74px;}

  /* ---- Mobile header: logo + location + cart (row1), search full-width (row2) ---- */
  .dtre-catbtn-wrap{display:none!important;}
  .dtre-hbtn:not([data-carttoggle]){display:none;}
  .dtre-header{gap:10px 10px;min-height:auto;padding:10px 0;align-items:center;}
  .dtre-logo{order:1;font-size:21px;}
  .dtre-logo small{display:none;}
  .dtre-locbtn{order:2;margin-left:auto;padding:6px 10px;background:rgba(255,255,255,.16);border-radius:var(--r-pill);}
  .dtre-locbtn .dtre-txt{display:flex!important;flex-direction:column;max-width:92px;}
  .dtre-locbtn .dtre-txt b{white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:92px;}
  .dtre-hicons{order:3;gap:0;}
  .dtre-hbtn[data-carttoggle]{flex-direction:row;gap:6px;background:rgba(255,255,255,.16);border-radius:var(--r-pill);padding:7px 12px;}
  .dtre-hbtn[data-carttoggle] .dtre-lbl{display:inline;font-size:12px;}
  .dtre-search-wrap{order:4;flex-basis:100%;width:100%;}
  .dtre-search{width:100%;min-width:0;}

  /* ---- Product card: bỏ nút, cả thẻ bấm ---- */
  .dtre-card{position:relative;}
  .dtre-card-stretch{display:block;position:absolute;inset:0;z-index:1;border-radius:inherit;}
  .dtre-card .dtre-cardfoot{display:none;}
}

/* ---- Card 2 cột thoáng trên điện thoại ---- */
@media (max-width:680px){
  .dtre-cards5,.dtre-cards3{grid-template-columns:repeat(2,minmax(0,1fr));}
  .dtre-grid{gap:10px;}
  .dtre-card{padding:10px;border-radius:7px;}
  .dtre-thumb{margin-bottom:10px;}
  .dtre-pname{font-size:13px;min-height:36px;}
  .dtre-price{font-size:16px;}
  .dtre-metaline{font-size:11px;}
}

/* ---- Category drawer: 2-pane browser (rail + content) ---- */
.dtre-catdrawer.dtre-open{visibility:visible;}
.dtre-cdw-overlay{position:absolute;inset:0;background:rgba(15,18,40,.45);opacity:0;transition:opacity .25s;}
.dtre-catdrawer.dtre-open .dtre-cdw-overlay{opacity:1;}
.dtre-cdw-panel{position:absolute;top:0;left:0;bottom:0;width:min(640px,100%);background:#fff;display:flex;flex-direction:column;transform:translateX(-100%);transition:transform .28s cubic-bezier(.4,0,.2,1);box-shadow:12px 0 40px -10px rgba(20,30,60,.35);}
.dtre-catdrawer.dtre-open .dtre-cdw-panel{transform:none;}
.dtre-cdw-head{display:flex;align-items:center;justify-content:space-between;padding:14px 16px;border-bottom:1px solid var(--line);font-size:16px;flex:0 0 auto;}
.dtre-cdw-x{width:36px;height:36px;border-radius:50%;background:var(--surface-2);border:none;font-size:16px;cursor:pointer;color:var(--ink-2);}
.dtre-cdw-2pane{flex:1;display:grid;grid-template-columns:104px 1fr;min-height:0;}
.dtre-cdw-rail{overflow:auto;background:var(--surface-2);border-right:1px solid var(--line);-webkit-overflow-scrolling:touch;}
.dtre-cdw-tab{width:100%;display:flex;flex-direction:column;align-items:center;gap:5px;padding:12px 6px;background:none;border:none;cursor:pointer;position:relative;color:var(--ink-2);}
.dtre-cdw-tab.dtre-on{background:#fff;color:var(--brand-700);}
.dtre-cdw-tab.dtre-on::after{content:"";position:absolute;right:-1px;top:50%;transform:translateY(-50%);border:7px solid transparent;border-right-color:#fff;}
.dtre-cdw-thumb{width:52px;height:52px;border-radius:7px;margin-bottom:0;display:flex;align-items:center;justify-content:center;}
.dtre-cdw-thico{color:var(--brand);}
.dtre-cdw-tlbl{font-size:11px;font-weight:600;line-height:1.25;text-align:center;}
.dtre-cdw-content{overflow:auto;padding:14px;-webkit-overflow-scrolling:touch;}
.dtre-cdw-view{display:none;}
.dtre-cdw-view.dtre-on{display:block;}
.dtre-cdw-vhead{display:flex;align-items:center;justify-content:space-between;gap:10px;margin-bottom:14px;}
.dtre-cdw-vhead b{font-size:16px;}
.dtre-cdw-all{color:var(--coral);font-weight:700;font-size:13px;white-space:nowrap;display:inline-flex;align-items:center;gap:4px;}
.dtre-cdw-vsec{font-size:12px;font-weight:800;text-transform:uppercase;letter-spacing:.03em;color:var(--ink-3);margin:14px 0 8px;}
.dtre-cdw-brands{display:flex;flex-wrap:wrap;gap:8px;}
.dtre-cdw-brand{padding:8px 14px;border:1px solid var(--line);border-radius:7px;font-size:13px;font-weight:600;color:var(--ink);background:#fff;}
.dtre-cdw-brand:active{border-color:var(--brand);color:var(--brand-700);}
.dtre-cdw-feats{display:grid;grid-template-columns:repeat(3,1fr);gap:10px;}
.dtre-cdw-feat{display:flex;flex-direction:column;gap:6px;color:var(--ink);}
.dtre-cdw-fthumb{aspect-ratio:1/1;border-radius:7px;margin-bottom:0;}
.dtre-cdw-fname{font-size:12px;line-height:1.3;font-weight:600;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;}
.dtre-cdw-fprice{font-size:12.5px;font-weight:800;color:var(--coral);}
.dtre-cdw-promo{display:flex;align-items:center;gap:12px;padding:18px;border:1px solid var(--line);border-radius:var(--r-lg);font-weight:700;color:var(--brand-700);background:var(--brand-50);}
.dtre-cdw-promo-ico{color:var(--brand);}
@media (max-width:900px){ .dtre-cdw-panel{bottom:66px;} }

/* ---- "Xem thêm" bottom sheet ---- */
.dtre-moresheet.dtre-open{visibility:visible;}
.dtre-ms-overlay{position:absolute;inset:0;background:rgba(15,18,40,.45);opacity:0;transition:opacity .25s;}
.dtre-moresheet.dtre-open .dtre-ms-overlay{opacity:1;}
.dtre-ms-panel{position:absolute;left:0;right:0;bottom:0;background:#fff;border-radius:7px 7px 0 0;padding:8px 16px;padding-bottom:max(16px,env(safe-area-inset-bottom,16px));transform:translateY(100%);transition:transform .3s cubic-bezier(.4,0,.2,1);max-height:82vh;overflow:auto;}
.dtre-moresheet.dtre-open .dtre-ms-panel{transform:none;}
.dtre-ms-grip{width:40px;height:4px;border-radius:7px;background:var(--line);margin:8px auto 6px;}
.dtre-ms-head{display:flex;align-items:center;justify-content:space-between;margin-bottom:12px;font-size:16px;}
.dtre-ms-x{width:34px;height:34px;border-radius:50%;background:var(--surface-2);border:none;font-size:15px;cursor:pointer;color:var(--ink-2);}
.dtre-ms-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:10px;margin-bottom:16px;}
.dtre-ms-link{display:flex;flex-direction:column;align-items:center;gap:8px;padding:14px 8px;border:1px solid var(--line);border-radius:var(--r);font-size:12.5px;font-weight:600;color:var(--ink);text-align:center;}
.dtre-ms-link:active{background:var(--brand-50);}
.dtre-ms-ico{width:40px;height:40px;border-radius:7px;background:var(--brand-50);color:var(--brand);display:flex;align-items:center;justify-content:center;}
.dtre-ms-contact{display:flex;flex-direction:column;gap:8px;align-items:center;}
.dtre-ms-hours{font-size:12.5px;color:var(--ink-3);}

/* "Xem thêm" sheet — footer link columns */
.dtre-ms-cols{display:grid;grid-template-columns:1fr 1fr;gap:16px;margin-bottom:16px;}
.dtre-ms-col h6{font-size:12px;font-weight:800;text-transform:uppercase;letter-spacing:.03em;color:var(--ink);margin:0 0 8px;}
.dtre-ms-col ul{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:7px;}
.dtre-ms-col li a{font-size:13px;color:var(--ink-2);}
.dtre-ms-col li a:active{color:var(--brand-700);}
