/* pages.css — 首屏 / 首页分区 */
.ytd-hero{ position:relative; padding-block:clamp(40px,6vw,72px); background:var(--c-bg); }
.ytd-hero__grid{ display:grid; grid-template-columns:1.08fr .92fr; gap:var(--sp-8); align-items:center; }
.ytd-hero__title{ margin:var(--sp-4) 0; }
.ytd-hero__text{ max-width:56ch; }
.ytd-hero__cta{ display:flex; gap:var(--sp-3); flex-wrap:wrap; margin-top:var(--sp-6); }
.ytd-hero__facts{ display:flex; gap:var(--sp-8); flex-wrap:wrap; margin-top:var(--sp-8); padding-top:var(--sp-6); border-top:1px solid var(--c-line); }
.ytd-hero__fact b{ display:block; font-size:var(--fs-24); font-weight:var(--fw-semibold); color:var(--c-ink); line-height:1.2; font-variant-numeric:tabular-nums; }
.ytd-hero__fact span{ font-size:var(--fs-13); color:var(--c-muted); }
.ytd-hero__media .ytd-media{ width:100%; aspect-ratio:4/3; }

/* cover 版式 */
.ytd-hero--cover{ padding:0; }
.ytd-hero--cover .ytd-hero__bg{
  position:relative; background-size:cover; background-position:center;
  min-height:clamp(420px,62vh,620px); display:flex; align-items:center;
}
.ytd-hero--cover .ytd-hero__bg::before{
  content:""; position:absolute; inset:0;
  background:linear-gradient(100deg, rgba(11,34,55,.88) 0%, rgba(11,34,55,.66) 46%, rgba(11,34,55,.12) 100%);
}
[dir="rtl"] .ytd-hero--cover .ytd-hero__bg::before{
  background:linear-gradient(260deg, rgba(11,34,55,.88) 0%, rgba(11,34,55,.66) 46%, rgba(11,34,55,.12) 100%);
}
.ytd-hero--cover .ytd-hero__inner{ position:relative; z-index:1; padding-block:var(--sp-9); }
.ytd-hero--cover .ytd-hero__inner .ytd-eyebrow{ color:var(--c-accent-300); }
.ytd-hero--cover .ytd-hero__inner .ytd-h1{ color:#fff; }
.ytd-hero--cover .ytd-hero__inner .ytd-sub{ color:#fff; }
.ytd-hero--cover .ytd-hero__facts{ border-top-color:rgba(255,255,255,.25); }
.ytd-hero--cover .ytd-hero__fact b{ color:#fff; }
.ytd-hero--cover .ytd-hero__fact span{ color:var(--c-on-dark-2); }

@media (max-width:1023px){
  .ytd-hero__grid{ grid-template-columns:1fr; gap:var(--sp-6); }
  .ytd-hero__copy{ order:1; }
  .ytd-hero__media{ order:2; display:none; }
  .ytd-hero__cta .ytd-btn{ flex:1 1 auto; }
}

/* 信任条 */
.ytd-trust{
  position:relative; z-index:2; margin-top:calc(var(--sp-6) * -1);
  background:#fff; border:1px solid var(--c-line); border-radius:var(--r-md);
  box-shadow:var(--sh-sm); padding:var(--sp-5) var(--sp-6);
  display:grid; grid-template-columns:repeat(4,1fr); gap:var(--sp-5);
}
.ytd-trust__item{ display:flex; align-items:center; gap:var(--sp-3); }
.ytd-trust__item b{ display:block; font-size:var(--fs-14); font-weight:var(--fw-semibold); color:var(--c-ink); }
.ytd-trust__item span{ font-size:var(--fs-12); color:var(--c-muted); }
@media (max-width:1023px){ .ytd-trust{ grid-template-columns:repeat(2,1fr); } }
@media (max-width:559px){ .ytd-trust{ grid-template-columns:1fr; padding:var(--sp-4); } }

/* 分类卡 */
.ytd-cat-card{ display:block; background:#fff; border:1px solid var(--c-line); border-radius:var(--r-md); overflow:hidden;
  transition:border-color var(--dur) var(--ease),box-shadow var(--dur) var(--ease),transform var(--dur) var(--ease); }
.ytd-cat-card:hover{ border-color:var(--c-primary-300); box-shadow:var(--sh-xs); transform:translateY(-2px); }
.ytd-cat-card .ytd-media{ aspect-ratio:4/3; }
.ytd-cat-card__body{ padding:var(--sp-4); }
.ytd-cat-card__name{ display:flex; align-items:center; justify-content:space-between; gap:var(--sp-3); font-size:var(--fs-15); font-weight:var(--fw-semibold); color:var(--c-ink); }
.ytd-cat-card__count{ font-size:var(--fs-12); color:var(--c-muted); margin-top:var(--sp-2); font-variant-numeric:tabular-nums; }

/* 数据指标 */
.ytd-stats{ display:grid; grid-template-columns:repeat(4,1fr); gap:var(--sp-6); }
.ytd-stat{ text-align:center; }
.ytd-stat b{ display:block; font-size:clamp(28px,3.4vw,44px); font-weight:var(--fw-semibold); line-height:1.1; color:var(--c-accent-300); font-variant-numeric:tabular-nums; letter-spacing:var(--ls-tight); }
.ytd-stat span{ display:block; margin-top:var(--sp-2); font-size:var(--fs-14); color:var(--c-on-dark-2); }
.ytd-section--light-stats .ytd-stat b{ color:var(--c-primary); }
.ytd-section--light-stats .ytd-stat span{ color:var(--c-muted); }
@media (max-width:767px){ .ytd-stats{ grid-template-columns:repeat(2,1fr); gap:var(--sp-5); } }

/* ---------------- 编号步骤 / 服务 ---------------- */
.ytd-steps-grid{ display:grid; grid-template-columns:repeat(4,1fr); gap:var(--sp-6); counter-reset:ytd-step; }
.ytd-step{ position:relative; padding-top:var(--sp-5); border-top:2px solid var(--c-line); }
.ytd-step::before{
  counter-increment:ytd-step; content:counter(ytd-step,decimal-leading-zero);
  position:absolute; top:-14px; inset-inline-start:0;
  background:var(--c-accent-700); color:#fff; font-size:var(--fs-12); font-weight:var(--fw-semibold);
  padding:2px 8px; border-radius:var(--r-xs);
}
.ytd-step h4{ margin-bottom:var(--sp-2); }
.ytd-step p{ font-size:var(--fs-14); color:var(--c-body); }
@media (max-width:1023px){ .ytd-steps-grid{ grid-template-columns:repeat(2,1fr); } }
@media (max-width:559px){ .ytd-steps-grid{ grid-template-columns:1fr; } }

/* ---------------- 图文交替（实力区） ---------------- */
.ytd-split{ display:grid; grid-template-columns:1fr 1fr; gap:var(--sp-8); align-items:center; }
.ytd-split__copy,.ytd-split__body{ min-width:0; }
.ytd-split__copy > * + *,.ytd-split__body > * + *{ margin-top:var(--sp-4); }
.ytd-split--reverse .ytd-split__media{ order:2; }
.ytd-split--reverse .ytd-split__copy{ order:1; }
.ytd-split__points{ display:grid; grid-template-columns:repeat(3,1fr); gap:var(--sp-5); margin-top:var(--sp-6); }
.ytd-split__point b{ display:block; font-size:var(--fs-24); font-weight:var(--fw-semibold); color:var(--c-primary); line-height:1.2; font-variant-numeric:tabular-nums; }
.ytd-split__point span{ font-size:var(--fs-13); color:var(--c-muted); }
@media (max-width:1023px){
  .ytd-split{ grid-template-columns:1fr; gap:var(--sp-6); }
  .ytd-split--reverse .ytd-split__media{ order:0; }
}

/* ---------------- logo 墙 / 证书墙 / 时间轴 / 占比条 ---------------- */
.ytd-logos{ display:grid; grid-template-columns:repeat(6,1fr); gap:var(--sp-5); }
.ytd-logos img{ filter:grayscale(1); opacity:.7; transition:filter var(--dur) var(--ease),opacity var(--dur) var(--ease); }
.ytd-logos a:hover img{ filter:none; opacity:1; }
.ytd-certs{ display:grid; grid-template-columns:repeat(4,1fr); gap:var(--sp-4); }
.ytd-certs img{ aspect-ratio:3/4; object-fit:contain; background:#fff; border:1px solid var(--c-line); border-radius:var(--r-sm); padding:var(--sp-3); transition:transform var(--dur) var(--ease); }
.ytd-certs a:hover img{ transform:scale(1.03); }
@media (max-width:1023px){ .ytd-logos{ grid-template-columns:repeat(4,1fr); } .ytd-certs{ grid-template-columns:repeat(3,1fr); } }
@media (max-width:767px){ .ytd-logos{ grid-template-columns:repeat(3,1fr); } .ytd-certs{ grid-template-columns:repeat(2,1fr); } }

.ytd-timeline{ position:relative; display:grid; grid-template-columns:repeat(5,1fr); gap:var(--sp-5); }
.ytd-timeline::before{ content:""; position:absolute; top:8px; inset-inline:0; height:1px; background:var(--c-line-2); }
.ytd-timeline__item{ position:relative; text-align:center; display:grid; gap:var(--sp-2); justify-items:center; }
.ytd-timeline__dot{ width:17px; height:17px; border-radius:50%; background:#fff; border:3px solid var(--c-primary-300); }
.ytd-timeline__item.is-current .ytd-timeline__dot{ background:var(--c-accent); border-color:#fff; box-shadow:0 0 0 3px var(--c-accent); }
.ytd-timeline__year{ font-size:var(--fs-18); font-weight:var(--fw-semibold); color:var(--c-primary); font-variant-numeric:tabular-nums; }
.ytd-timeline__item.is-current .ytd-timeline__year{ color:var(--c-accent-600); }
@media (max-width:767px){
  .ytd-timeline{ grid-template-columns:1fr; gap:var(--sp-6); text-align:start; justify-items:start; padding-inline-start:var(--sp-6); }
  .ytd-timeline::before{ top:0; bottom:0; inset-inline-start:8px; width:1px; height:auto; }
  .ytd-timeline__item{ justify-items:start; }
}

.ytd-bars{ display:grid; gap:var(--sp-4); }
.ytd-bar{ display:grid; grid-template-columns:120px 1fr 56px; align-items:center; gap:var(--sp-4); font-size:var(--fs-14); }
.ytd-bar__track{ height:10px; border-radius:var(--r-xs); background:var(--c-soft); overflow:hidden; }
.ytd-bar__fill{ height:100%; background:var(--c-primary); }
.ytd-bar__val{ text-align:end; font-size:var(--fs-13); color:var(--c-muted); font-variant-numeric:tabular-nums; }
@media (max-width:559px){ .ytd-bar{ grid-template-columns:88px 1fr 48px; } }

/* ---------------- 媒体 ---------------- */
.ytd-media{ position:relative; overflow:hidden; background:var(--c-soft); display:block; }
.ytd-media img{ width:100%; height:100%; object-fit:cover; }
.ytd-media--empty{ display:flex; align-items:center; justify-content:center; color:var(--c-line-2); }

/* ---------------- 商品卡（网格视图） ---------------- */
.ytd-pcard{ display:flex; flex-direction:column; background:#fff; border:1px solid var(--c-line); border-radius:var(--r-md); overflow:hidden;
  transition:border-color var(--dur) var(--ease),box-shadow var(--dur) var(--ease),transform var(--dur) var(--ease); }
.ytd-pcard:hover{ border-color:var(--c-primary-300); box-shadow:var(--sh-xs); transform:translateY(-2px); }
.ytd-pcard .ytd-media{ aspect-ratio:4/3; }
.ytd-pcard__badges{ position:absolute; top:var(--sp-3); inset-inline-end:var(--sp-3); display:flex; flex-direction:column; gap:var(--sp-1); align-items:flex-end; }
.ytd-pcard__body{ display:flex; flex-direction:column; gap:var(--sp-2); padding:var(--sp-4); flex:1; }
.ytd-pcard__cat{ font-size:var(--fs-12); color:var(--c-muted); }
.ytd-pcard__title{ font-size:var(--fs-15); font-weight:var(--fw-semibold); color:var(--c-ink); line-height:var(--lh-snug);
  display:-webkit-box; -webkit-line-clamp:2; -webkit-box-orient:vertical; overflow:hidden; min-height:2.9em; }
.ytd-pcard__title a{ color:inherit; }
.ytd-pcard__specs{ display:flex; flex-wrap:wrap; gap:var(--sp-1); }
.ytd-pcard__foot{ margin-top:auto; padding-top:var(--sp-2); display:flex; flex-wrap:wrap; gap:var(--sp-2); align-items:center; }
.ytd-pcard__price{ font-size:var(--fs-16); font-weight:var(--fw-semibold); color:var(--c-ink); font-variant-numeric:tabular-nums; }
.ytd-pcard__actions{ display:grid; grid-template-columns:1fr 1fr; gap:var(--sp-2); margin-top:var(--sp-3); }

/* ---------------- 商品卡（列表视图 · 横排大卡） ---------------- */
.ytd-plist{ display:grid; gap:var(--sp-4); }
.ytd-plist__item{
  display:grid; grid-template-columns:180px 1fr; gap:var(--sp-5);
  padding:var(--sp-4); background:#fff; border:1px solid var(--c-line); border-radius:var(--r-md);
  transition:border-color var(--dur) var(--ease),box-shadow var(--dur) var(--ease);
}
.ytd-plist__item:hover{ border-color:var(--c-primary-300); box-shadow:var(--sh-xs); }
.ytd-plist__item .ytd-media{ aspect-ratio:4/3; border-radius:var(--r-sm); }
.ytd-plist__body{ display:flex; flex-direction:column; gap:var(--sp-2); }
.ytd-plist__title{ font-size:var(--fs-16); font-weight:var(--fw-semibold); color:var(--c-ink); }
.ytd-plist__desc{ font-size:var(--fs-14); color:var(--c-body);
  display:-webkit-box; -webkit-line-clamp:2; -webkit-box-orient:vertical; overflow:hidden; }
.ytd-plist__row{ display:flex; align-items:center; justify-content:space-between; gap:var(--sp-4); margin-top:auto; padding-top:var(--sp-3); flex-wrap:wrap; }
@media (max-width:767px){ .ytd-plist__item{ grid-template-columns:1fr; } }

/* ---------------- 列表页版式 ---------------- */
.ytd-shop-banner{ background:var(--c-soft); padding-block:var(--sp-8); }
.ytd-shop-layout{ display:grid; grid-template-columns:240px 1fr; gap:var(--sp-8); align-items:start; padding-block:var(--sp-8) var(--sp-9); }
.ytd-sidebar{ position:sticky; top:96px; display:grid; gap:var(--sp-6); }
.ytd-facet > h4{ font-size:var(--fs-14); margin-bottom:var(--sp-3); }
.ytd-toolbar{
  display:flex; align-items:center; justify-content:space-between; gap:var(--sp-4); flex-wrap:wrap;
  padding-bottom:var(--sp-4); margin-bottom:var(--sp-5); border-bottom:1px solid var(--c-line);
}
.ytd-toolbar__count{ font-size:var(--fs-14); color:var(--c-body); }
.ytd-toolbar__count b{ color:var(--c-ink); font-variant-numeric:tabular-nums; }
.ytd-toolbar__right{ display:flex; align-items:center; gap:var(--sp-3); flex-wrap:wrap; }
.ytd-chips-active{ display:flex; flex-wrap:wrap; gap:var(--sp-2); margin-bottom:var(--sp-5); }
@media (max-width:1023px){
  .ytd-shop-layout{ grid-template-columns:1fr; }
  .ytd-sidebar{ position:static; }
}

/* ============================================================
   首页区块布局变体（后台「首页设置 → 布局」切换）
   ============================================================ */

/* hero: center 纯文字版式 */
.ytd-hero--center{ text-align:center; }
.ytd-hero--center .ytd-hero__grid{ grid-template-columns:1fr; }
.ytd-hero--center .ytd-hero__copy{ max-width:78ch; margin-inline:auto; }
.ytd-hero--center .ytd-hero__text{ margin-inline:auto; }
.ytd-hero--center .ytd-hero__cta{ justify-content:center; }
.ytd-hero--center .ytd-hero__facts{ justify-content:center; gap:var(--sp-9); }
.ytd-hero__inner--center{ text-align:center; }
.ytd-hero__inner--center .ytd-hero__facts{ justify-content:center; }

/* trust: grid2 / inline */
.ytd-trust--grid2{ grid-template-columns:repeat(2,1fr); }
.ytd-trust--inline{ margin-top:0; box-shadow:none; border:0; padding:var(--sp-4) 0; }
.ytd-trust--inline .ytd-trust__item{ gap:var(--sp-2); }
.ytd-trust--inline .ytd-trust__item b{ font-size:var(--fs-13); }
@media (max-width:767px){
  .ytd-trust--grid2{ grid-template-columns:1fr; }
  .ytd-trust--inline{ flex-direction:column; align-items:flex-start; gap:var(--sp-3); }
}

/* categories: compact 横向紧凑 */
.ytd-cat-row{
  display:grid; grid-template-columns:repeat(auto-fill,minmax(148px,1fr)); gap:var(--sp-4);
}
.ytd-cat-row > li > a{
  display:grid; grid-template-columns:48px 1fr; grid-template-rows:auto auto;
  column-gap:var(--sp-3); align-items:center;
  padding:var(--sp-3); border:1px solid var(--c-line); border-radius:var(--r-md);
  transition:border-color var(--dur) var(--ease),box-shadow var(--dur) var(--ease),transform var(--dur) var(--ease);
}
.ytd-cat-row > li > a:hover{ border-color:var(--c-primary-300); box-shadow:var(--sh-xs); transform:translateY(-2px); }
.ytd-cat-row .ytd-media{ grid-row:1 / span 2; aspect-ratio:1/1; border-radius:var(--r-sm); }
.ytd-cat-row__name{ font-size:var(--fs-14); font-weight:var(--fw-semibold); color:var(--c-ink); line-height:1.3; }
.ytd-cat-row__count{ font-size:var(--fs-12); color:var(--c-muted); font-variant-numeric:tabular-nums; }

/* about: text 纯文字版式 */
.ytd-split--single{ grid-template-columns:1fr; max-width:82ch; margin-inline:auto; }
.ytd-split--single .ytd-split__points{ margin-top:var(--sp-7); }

/* cta: card 居中卡片 */
.ytd-cta__card{ max-width:820px; margin-inline:auto; padding:var(--sp-8) var(--sp-6); box-shadow:var(--sh-sm); }
.ytd-cta__btns--center{ justify-content:center; }

/* 自定义板块 */
.ytd-custom{ scroll-margin-top:96px; }
.ytd-custom__plain{ max-width:82ch; }
.ytd-custom__body{ margin-top:4px; }
.ytd-custom__body > *:first-child{ margin-top:0; }
.ytd-card--on-dark{ background:rgba(255,255,255,.06); border-color:var(--c-on-dark-line); }
.ytd-card--on-dark h3{ color:#fff; }
.ytd-on-dark-2{ color:var(--c-on-dark-2); }

/* news: list 横向列表 */
.ytd-alist{ border-top:1px solid var(--c-line); }
.ytd-alist__item{ border-bottom:1px solid var(--c-line); }
.ytd-alist__item a{
  display:grid; grid-template-columns:120px 1fr 140px; gap:var(--sp-4); align-items:center;
  padding-block:var(--sp-4); font-size:var(--fs-14);
}
.ytd-alist__item a:hover .ytd-alist__title{ color:var(--c-primary); }
.ytd-alist__date{ font-size:var(--fs-13); color:var(--c-muted); font-variant-numeric:tabular-nums; }
.ytd-alist__title{ font-size:var(--fs-15); font-weight:var(--fw-medium); color:var(--c-ink); }
.ytd-alist__cate{ font-size:var(--fs-12); color:var(--c-muted); text-align:end; }
@media (max-width:767px){
  .ytd-alist__item a{ grid-template-columns:1fr; gap:4px; }
  .ytd-alist__cate{ text-align:start; }
}

/* ---------------- 商品详情 ---------------- */
.ytd-single-top{ display:grid; grid-template-columns:5fr 7fr; gap:var(--sp-8); align-items:start; padding-block:var(--sp-6) var(--sp-8); }
.ytd-gallery{ position:relative; }
.ytd-gallery__img{ width:100%; height:100%; object-fit:contain; background:var(--c-soft); display:block; }
.ytd-gallery__main{ border:1px solid var(--c-line); border-radius:var(--r-md); overflow:hidden; background:var(--c-soft); }
.ytd-gallery__main .ytd-media{ aspect-ratio:1/1; }
.ytd-gallery__thumbs{ display:flex; gap:var(--sp-2); margin-top:var(--sp-3); overflow-x:auto; }
.ytd-gallery__thumb{ width:76px; flex:0 0 76px; border:1px solid var(--c-line); border-radius:var(--r-sm); overflow:hidden; cursor:pointer; opacity:.72; }
.ytd-gallery__thumb.is-active{ border-color:var(--c-primary); opacity:1; }
.ytd-gallery__thumb .ytd-media{ aspect-ratio:1/1; }
.ytd-single-info > * + *{ margin-top:var(--sp-5); }
.ytd-single-info__meta{ display:flex; flex-wrap:wrap; gap:var(--sp-5); font-size:var(--fs-13); color:var(--c-muted); }
.ytd-single-info__meta b{ color:var(--c-ink-2); font-weight:var(--fw-medium); }
.ytd-facts{ display:grid; grid-template-columns:repeat(4,1fr); gap:var(--sp-4); background:var(--c-soft); border:1px solid var(--c-line); border-radius:var(--r-md); padding:var(--sp-4); }
.ytd-facts dt{ font-size:var(--fs-12); color:var(--c-muted); margin-bottom:var(--sp-1); }
.ytd-facts dd{ margin:0; font-size:var(--fs-14); font-weight:var(--fw-semibold); color:var(--c-ink); font-variant-numeric:tabular-nums; }
.ytd-assure{ display:grid; grid-template-columns:repeat(3,1fr); gap:var(--sp-4); padding-top:var(--sp-5); border-top:1px solid var(--c-line); }
.ytd-assure b{ display:block; font-size:var(--fs-13); font-weight:var(--fw-semibold); color:var(--c-ink); }
.ytd-assure span{ font-size:var(--fs-12); color:var(--c-muted); }

.ytd-tabs{ border-top:1px solid var(--c-line); border-bottom:1px solid var(--c-line); }
.ytd-tabs__list{ display:flex; gap:var(--sp-6); overflow-x:auto; }
.ytd-tabs__list a,.ytd-tabs__list button{
  flex:0 0 auto; padding-block:var(--sp-4); font-size:var(--fs-15); color:var(--c-body);
  background:none; border:0; border-bottom:2px solid transparent; cursor:pointer;
}
.ytd-tabs__list .is-active{ color:var(--c-primary); font-weight:var(--fw-semibold); border-bottom-color:var(--c-primary); }
.ytd-tabs__panel{ padding-block:var(--sp-8); }
.ytd-ptable{ border:1px solid var(--c-line); border-radius:var(--r-md); overflow:hidden; }
.ytd-ptable__group{ border-bottom:1px solid var(--c-line); }
.ytd-ptable__group:last-child{ border-bottom:0; }
.ytd-ptable__head{
  display:flex; align-items:center; justify-content:space-between; gap:var(--sp-4);
  padding:var(--sp-3) var(--sp-4); background:var(--c-soft);
  font-size:var(--fs-13); font-weight:var(--fw-semibold); color:var(--c-ink-2);
}
.ytd-ptable__row{ display:flex; gap:var(--sp-5); padding:var(--sp-3) var(--sp-4); border-top:1px solid var(--c-line); font-size:var(--fs-14); }
.ytd-ptable__row dt{ width:34%; color:var(--c-muted); flex:0 0 34%; margin:0; }
.ytd-ptable__row dd{ margin:0; color:var(--c-body); flex:1; }
@media (max-width:1023px){
  .ytd-single-top{ grid-template-columns:1fr; }
  .ytd-facts{ grid-template-columns:repeat(2,1fr); }
  .ytd-assure{ grid-template-columns:1fr; }
}