/* ==========================================================================
   WordPress 专属样式
   assets/css/style.css 是从效果稿搬过来的设计系统，不要往里加 WP 的东西；
   文章正文、分页、页头条、404 这些只有主题里才有的部件放这里。
   两个文件共用 style.css 顶部的 :root 令牌。
   ========================================================================== */

/* 管理员登录时 WP 会插一条 32px 的顶栏，sticky 头部要让开，否则被压住 */
body.admin-bar .topfix{top:32px}
@media screen and (max-width:782px){body.admin-bar .topfix{top:46px}}

/* ── 语言切换（EN / ZH）─────────────────────────────────────────────
   放在顶栏 Account 左边。用两字母标签而不是国旗：国旗代表国家不代表语言，
   中文用哪面旗都会得罪一部分人。 */
.lang{display:flex;align-items:center;gap:2px;padding:2px;border-radius:var(--r-full);background:rgba(15,23,32,.06)}
.lang__i{
  display:grid;place-items:center;min-width:30px;height:24px;padding:0 8px;
  border-radius:var(--r-full);font:600 11px/1 var(--f-body);letter-spacing:.03em;
  color:var(--tx-2);transition:all .18s var(--ease)
}
.lang__i:hover{color:var(--ink-900)}
.lang__i.is-on{background:var(--lime-500);color:var(--on-accent)}
@media (max-width:660px){.lang{display:none}}

/* 促销条填了链接时整条可点，给一点悬停反馈 */
.promo--link{display:block;transition:filter .2s var(--ease)}
.promo--link:hover{filter:brightness(1.06)}

/* ── 页头条（非首页的标题区）───────────────────────────────────────── */
.pagehead{
  position:relative;padding:44px 0 40px;color:#fff;
  background:radial-gradient(78% 140% at 70% 30%,var(--ink-900),var(--ink-950) 60%,var(--ink-950));
  overflow:hidden
}
.pagehead::after{
  content:"";position:absolute;inset:0;opacity:.12;pointer-events:none;
  background-image:var(--circuit);background-size:180px 180px;
  mask-image:radial-gradient(90% 90% at 85% 40%,#000,transparent 72%)
}
.pagehead>.container{position:relative}
.pagehead__h{font-size:clamp(26px,3vw,40px);letter-spacing:-.03em}
.pagehead__h span{color:var(--lime-400)}
.pagehead__meta{margin-bottom:10px;font-size:12.5px;color:var(--tx-inv-2)}
.pagehead__meta a{color:var(--lime-400)}
.pagehead__sep{margin:0 7px;opacity:.5}
.pagehead__p{margin-top:12px;max-width:62ch;font-size:14.5px;color:#b9c7d4}
/* 页头带紧跟着正文区时，.sec 默认的 76px 顶距会空出一大截——收成 44px，
   和页头自身的节奏一致（所有 pagehead+sec 页面通吃：结算/购物车/关于…） */
.pagehead+.sec{padding-top:44px}

/* ── 正文排版 ──────────────────────────────────────────────────────── */
/* 正文栏限宽是为了可读性，但要居中 —— 靠左会在 1320px 容器里留出半屏空白 */
.prose{max-width:72ch;margin-inline:auto;font-size:16px;line-height:1.75;color:var(--tx-2)}
.prose>*+*{margin-top:1.1em}
.prose h2,.prose h3,.prose h4{color:var(--tx);margin-top:1.9em;line-height:1.25}
.prose h2{font-size:26px}
.prose h3{font-size:20px}
.prose h4{font-size:17px}
.prose a{color:var(--lime-700);text-decoration:underline;text-underline-offset:3px}
.prose a:hover{color:var(--lime-600)}
.prose ul,.prose ol{padding-left:1.3em}
.prose ul{list-style:disc}
.prose ol{list-style:decimal}
.prose li+li{margin-top:.4em}
.prose img{border-radius:var(--r);height:auto}
.prose blockquote{
  margin-inline:0;padding:14px 20px;border-left:3px solid var(--lime-500);
  background:var(--surface);border-radius:0 var(--r-sm) var(--r-sm) 0;color:var(--tx)
}
.prose code{
  padding:2px 6px;border-radius:4px;background:var(--surface);
  font:500 .88em/1.5 ui-monospace,"SF Mono",Menlo,monospace;color:#0b3d1e
}
.prose pre{
  padding:16px 18px;border-radius:var(--r);overflow-x:auto;
  background:var(--ink-900);color:#dbe7f0
}
.prose pre code{background:none;color:inherit;padding:0}
.prose table{width:100%;border-collapse:collapse;font-size:14px;display:block;overflow-x:auto}
/* ★ display:block 的表格，width:100% 只作用在外层块盒上，内部列还是按内容收缩，
   右边会空一截。文档表列宽可控，直接用 display:table 让它真正撑满；
   窄屏再退回可横向滚动的 block。 */
.prose .dl-table{display:table;width:100%}
@media (max-width:640px){.prose .dl-table{display:block;overflow-x:auto}}
.prose th,.prose td{padding:10px 12px;border-bottom:1px solid var(--line);text-align:left}
.prose th{color:var(--tx);font-weight:700;background:var(--surface-2)}
.prose hr{margin:2em 0}

/* ── 外部资源卡片（/community/ 页）────────────────────────────────── */
.resgrid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;margin-top:1.6em}
.prose a.resc, .resc{
  position:relative;display:block;padding:18px 20px;border:1px solid var(--line);
  border-radius:var(--r);background:#fff;text-decoration:none;color:var(--tx-2);
  transition:border-color .15s var(--ease),transform .2s var(--ease),box-shadow .2s var(--ease)
}
.prose a.resc:hover, .resc:hover{border-color:var(--lime-500);transform:translateY(-2px);box-shadow:var(--sh-1);color:var(--tx-2)}
/* ★ 卡片在 .prose 里 —— .prose h3 带 margin-top:1.9em，权重 (0,1,1) 压过
   单类选择器，会把标题推到卡片中段。这里全部带上 .prose 前缀提权。 */
.prose .resc__tag, .resc__tag{
  display:inline-block;margin-bottom:10px;padding:3px 9px;border-radius:var(--r-full);
  background:var(--ink-900);color:var(--lime-400);
  font-family:var(--f-disp);font-size:10px;font-weight:700;letter-spacing:.12em;text-transform:uppercase
}
/* h/p 用 span 渲染（wpautop 安全），这里补回块级表现 */
.prose .resc__h, .resc__h{display:block;margin:0 0 6px;font-size:16px;font-weight:700;color:var(--tx);letter-spacing:-.01em;line-height:1.3}
.prose .resc__p, .resc__p{display:block;margin:0;font-size:13px;line-height:1.6;color:var(--tx-3)}
.resc__go{
  position:absolute;top:16px;right:16px;width:22px;height:22px;border-radius:50%;
  display:grid;place-items:center;border:1px solid var(--line);color:var(--tx-3);
  transition:all .18s var(--ease)
}
.resc__go .ic{width:11px;height:11px;transform:rotate(-45deg)}
.resc:hover .resc__go{background:var(--lime-500);border-color:var(--lime-500);color:var(--ink-950)}
@media (max-width:640px){.resgrid{grid-template-columns:1fr}}
/* 封面按正文栏对齐，并锁定比例 —— 竖构图的图片按原比例铺满容器宽度时，
   会高到把正文顶到第二屏之外。 */
.prose__cover{max-width:72ch;margin:0 auto 28px;aspect-ratio:16/9;border-radius:var(--r-lg);overflow:hidden}
.prose__cover img{width:100%;height:100%;object-fit:cover;display:block}

/* ── 文章列表 ──────────────────────────────────────────────────────── */
.postlist{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:20px}
.post{padding:0;overflow:hidden}
.post__media{display:block;aspect-ratio:3/2;background:var(--surface);overflow:hidden}
.post__media img{width:100%;height:100%;object-fit:cover;transition:transform .4s var(--ease-out)}
.post:hover .post__media img{transform:scale(1.05)}
.post__ph{display:grid;place-items:center;width:100%;height:100%;color:var(--tx-3)}
.post__ph .ic{width:32px;height:32px}
.post__meta{padding:14px 16px 0;font-size:11.5px;color:var(--tx-3)}
.post__t{padding:6px 16px 0;font-size:17px;line-height:1.3}
.post__t a:hover{color:var(--lime-700)}
/* 整卡可点：标题链接铺满卡片，图与 Read more 就不必各自再当一个链接 */
.post__t a::after{content:"";position:absolute;inset:0;z-index:1}
.post__x{padding:8px 16px 0;font-size:13.5px;color:var(--tx-2)}
.post .link{margin:14px 16px 18px}

.empty{font-size:15px;color:var(--tx-2);margin-bottom:18px}

/* 分页 */
.nav-links{display:flex;gap:8px;justify-content:center;margin-top:34px;flex-wrap:wrap}
.nav-links .page-numbers{
  display:grid;place-items:center;min-width:38px;height:38px;padding:0 12px;
  border:1px solid var(--line);border-radius:var(--r-xs);
  font-family:var(--f-disp);font-size:14px;font-weight:600;color:var(--tx-2);
  transition:all .2s var(--ease)
}
.nav-links a.page-numbers:hover{border-color:var(--lime-500);color:var(--lime-700)}
.nav-links .page-numbers.current{background:var(--lime-500);border-color:var(--lime-500);color:var(--on-accent)}
.nav-links .ic{width:17px;height:17px}

/* 上下篇 */
.postnav{display:flex;justify-content:space-between;gap:16px;margin-top:40px;padding-top:22px;border-top:1px solid var(--line)}
.postnav__i a{font-size:13.5px;font-weight:600;color:var(--tx-2)}
.postnav__i a:hover{color:var(--lime-700)}
.postnav__i--next{margin-left:auto;text-align:right}

/* ── 正文里的搜索表单（顶栏那个是独立的）─────────────────────────── */
.search--inline{max-width:440px;box-shadow:0 0 0 1px var(--line)}
.search--inline input{font-size:14px}

/* ── 404 ───────────────────────────────────────────────────────────── */
.e404__in{max-width:620px;padding-block:20px}
.e404__code{
  font-family:var(--f-disp);font-size:clamp(64px,10vw,120px);font-weight:800;
  line-height:.9;letter-spacing:-.05em;
  background:linear-gradient(160deg,var(--lime-500),#1f5c37);
  -webkit-background-clip:text;background-clip:text;color:transparent
}
.e404__h{margin-top:14px;font-size:clamp(22px,2.6vw,32px)}
.e404__p{margin-top:12px;font-size:15px;color:var(--tx-2)}
.e404__cta{display:flex;gap:12px;margin:24px 0 28px;flex-wrap:wrap}
/* btn--ghost 是给深色底设计的；浅色底上要换成深描边，否则整颗按钮看不见 */
.btn--ghost.btn--dark{background:#fff;color:var(--tx);border-color:var(--line)}
.btn--ghost.btn--dark:hover{background:var(--surface);border-color:var(--tx-3)}

/* ==========================================================================
   WooCommerce
   我们的样式表在 Woo 之后加载，所以同权重下这里的规则生效，不用堆 !important。
   只覆盖看得见的那几处，Woo 自己那套（数量框、变体选择、选项卡行为）留着，
   全部重写的成本远大于收益，而且它每次大版本都会动。
   ========================================================================== */

.pagehead--woo{padding:30px 0 26px}
/* v2 详情页（Seeed 式）：深色页头带收成浅色面包屑条 ——
   深色带只有一行面包屑会显得秃，浅色条更贴电商详情页惯例 */
.pdp-v2 .pagehead--woo.pagehead--crumb{
  background:#fff;color:var(--tx-3);
  border-bottom:1px solid var(--line)
}
.pdp-v2 .pagehead--woo.pagehead--crumb::after{display:none}
.pdp-v2 .pagehead--woo .crumb,.pdp-v2 .pagehead--woo .crumb a{color:var(--tx-3)}
.pdp-v2 .pagehead--woo .crumb a:hover{color:var(--lime-700)}
/* 只有面包屑、没有标题的页头条（商品/方案详情页）——收成一条细带 */
.pagehead--crumb{padding:14px 0}
.pagehead__crumb{margin-bottom:10px}
.pagehead--crumb .pagehead__crumb{margin-bottom:0}
.crumb,.crumb a{font-size:12px;color:var(--tx-inv-2)}
.crumb a:hover{color:var(--lime-400)}

/* ── 商品列表 ──────────────────────────────────────────────────────── */
.woo ul.products{
  display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:16px;
  margin:0;padding:0;list-style:none
}
.woo ul.products::before,.woo ul.products::after{display:none}   /* Woo 的清浮动伪元素会撑出一行空隙 */
.woo ul.products li.product{width:auto!important;margin:0!important;float:none!important}
.woo ul.products li.product .card__media{height:196px}

.woo .woocommerce-result-count{margin:0 0 18px;font-size:13px;color:var(--tx-3)}
.woo .woocommerce-ordering{float:right;margin:-42px 0 18px}
.woo .woocommerce-ordering select{
  height:36px;padding:0 12px;border:1px solid var(--line);border-radius:var(--r-xs);
  background:#fff;font-size:13px;color:var(--tx-2)
}
.woo .woocommerce-pagination ul{display:flex;gap:8px;justify-content:center;border:0;margin-top:30px}
.woo .woocommerce-pagination li{border:0}
.woo .woocommerce-pagination a,.woo .woocommerce-pagination span{
  display:grid;place-items:center;min-width:38px;height:38px;padding:0 12px;
  border:1px solid var(--line);border-radius:var(--r-xs);
  font-family:var(--f-disp);font-size:14px;font-weight:600;color:var(--tx-2)
}
.woo .woocommerce-pagination .current{background:var(--lime-500);border-color:var(--lime-500);color:var(--on-accent)}

/* ── 商品详情 ──────────────────────────────────────────────────────── */
.woo div.product{display:grid;grid-template-columns:minmax(0,1.05fr) minmax(0,1fr);gap:44px}
.woo div.product .woocommerce-product-gallery{width:auto!important;float:none!important;margin:0}
/* v2 图库：Seeed 式左竖排缩略图。flex 容器 + order 把 thumbs 列放主图左侧，
   Woo 输出顺序是 .flex-viewport 在前、ol.flex-control-thumbs 在后，
   用 order 视觉对调，DOM/JS 不动。v1 走 Woo 默认横排。 */
.pdp-v2 .woo div.product .woocommerce-product-gallery{display:flex;gap:14px;align-items:flex-start}
.pdp-v2 .woo div.product .woocommerce-product-gallery .flex-viewport{order:2;flex:1;min-width:0}
.pdp-v2 .woo div.product .woocommerce-product-gallery ol.flex-control-thumbs{
  order:1;flex:0 0 66px;display:flex;flex-direction:column;gap:10px;
  margin:0;padding:0;list-style:none;max-height:560px;overflow-y:auto
}
.pdp-v2 .woo div.product .woocommerce-product-gallery ol.flex-control-thumbs li{
  width:100%!important;float:none!important;margin:0!important
}
.pdp-v2 .woo div.product .woocommerce-product-gallery ol.flex-control-thumbs img{
  width:100%;height:auto;display:block;border-radius:var(--r-xs);
  border:1.5px solid var(--line);opacity:.6;transition:opacity .15s var(--ease),border-color .15s var(--ease)
}
.pdp-v2 .woo div.product .woocommerce-product-gallery ol.flex-control-thumbs img:hover{opacity:1}
.pdp-v2 .woo div.product .woocommerce-product-gallery ol.flex-control-thumbs img.flex-active{
  opacity:1;border-color:var(--lime-600)
}
.woo div.product .woocommerce-product-gallery__image img{border-radius:var(--r-lg)}
/* v2 窄屏：缩略图收回到主图下方横排，竖列放不下 */
@media (max-width:640px){
  .pdp-v2 .woo div.product .woocommerce-product-gallery{flex-direction:column}
  .pdp-v2 .woo div.product .woocommerce-product-gallery .flex-viewport{order:1;width:100%}
  .pdp-v2 .woo div.product .woocommerce-product-gallery ol.flex-control-thumbs{
    order:2;flex:none;flex-direction:row;width:100%;max-height:none;overflow-x:auto
  }
  .pdp-v2 .woo div.product .woocommerce-product-gallery ol.flex-control-thumbs li{width:58px!important;flex:none}
}
.woo div.product .summary{width:auto!important;float:none!important;margin:0}
.woo div.product .product_title{font-size:clamp(24px,2.6vw,34px);letter-spacing:-.03em;margin:0 0 6px}
/* SKU/类目行提到标题下：紧凑一行，无边框（样式主体在下方 .product_meta） */
.woo div.product .pdp-meta{
  margin:0 0 14px;padding:0;border-top:0;
  display:flex;flex-wrap:wrap;align-items:center;gap:6px 12px;
  font-size:12.5px;color:var(--tx-3)
}
.woo div.product .pdp-meta > span + span::before{content:"";width:1px;height:11px;margin-right:6px;background:var(--line);flex:none}
.woo div.product .pdp-meta a{color:var(--lime-700);text-decoration:none}
.woo div.product .pdp-meta a:hover{text-decoration:underline}
.woo div.product .pdp-meta .sku{font-family:var(--f-disp);font-weight:600;color:var(--tx);letter-spacing:.02em}
/* v2：SKU 行下的显著询价 CTA —— Seeed 式深底药丸，跟加购同级 */
.woo div.product .pdp-rfq{margin:4px 0 14px}
.woo div.product .pdp-rfq .rfq-add{margin:0}
.pdp-v2 .woo div.product .pdp-rfq .btn{
  display:inline-flex;align-items:center;gap:8px;
  padding:11px 22px;border-radius:var(--r-sm);
  background:var(--ink-900);border-color:var(--ink-900);color:#fff;
  font-size:13.5px;font-weight:600;box-shadow:none
}
.pdp-v2 .woo div.product .pdp-rfq .btn:hover{background:var(--ink-800);border-color:var(--ink-800)}
.pdp-v2 .woo div.product .pdp-rfq .btn .ic{width:15px;height:15px;color:var(--lime-400)}
/* 价格下的关税/运费口径提示 */
.woo div.product .pdp-ship{margin:2px 0 0;font-size:12px;color:var(--tx-3)}
/* 库存状态行：状态点 + 文案（Woo availability 文案复用，如 "Only 3 left"） */
.woo div.product .pdp-stock{display:inline-flex;align-items:center;gap:7px;margin:4px 0 0;font-size:12.5px;color:var(--tx-2)}
.woo div.product .pdp-stock i{
  width:7px;height:7px;border-radius:50%;background:var(--lime-600);flex:none;
  box-shadow:0 0 0 3px rgba(var(--lime-500-rgb),.22)
}
.woo div.product .pdp-stock--out-of-stock i{background:#b3261e;box-shadow:0 0 0 3px rgba(179,38,30,.14)}
.woo div.product .pdp-stock--available-on-backorder i{background:#b7791f;box-shadow:0 0 0 3px rgba(183,121,31,.16)}
/* 同样要压过 Woo 的 `.woocommerce div.product p.price{color:#77a464}` */
.woocommerce div.product p.price,.woocommerce div.product span.price,
.woo div.product .price{
  display:block;margin:14px 0 6px;font-family:var(--f-disp);font-size:28px;font-weight:700;color:var(--tx)
}
.woo div.product .price del{font-size:18px;font-weight:500;color:var(--tx-3);margin-right:8px}
.woo div.product .price ins{text-decoration:none}
.woo div.product .woocommerce-product-details__short-description{color:var(--tx-2);line-height:1.7}
.woo div.product form.cart{display:flex;align-items:center;gap:12px;flex-wrap:wrap;margin:22px 0}
/* 数量组做成一颗胶囊：边框/圆角在容器上，JS 会往里面塞 −/+ 钮，
   无 JS 时就是带边框的纯输入框，外观等价 */
.woo div.product form.cart .quantity{
  display:inline-flex;align-items:stretch;
  border:1px solid var(--line);border-radius:var(--r-sm);overflow:hidden;background:#fff
}
.woo div.product form.cart .quantity input{
  width:56px;height:48px;padding:0 4px;text-align:center;
  border:0;border-radius:0;font-size:15px;appearance:textfield;-moz-appearance:textfield
}
/* 自绘步进钮后，原生 spinner 是重复控件且样式不可控 */
.woo div.product form.cart .quantity input::-webkit-outer-spin-button,
.woo div.product form.cart .quantity input::-webkit-inner-spin-button{-webkit-appearance:none;margin:0}
.qty__btn{
  flex:none;width:40px;border:0;background:transparent;cursor:pointer;
  font-family:var(--f-disp);font-size:18px;font-weight:600;color:var(--tx-3);
  transition:color .15s var(--ease),background-color .15s var(--ease)
}
.qty__btn:hover{color:var(--lime-700);background:var(--surface-2)}
.qty__btn:focus-visible{outline:2px solid var(--lime-500);outline-offset:-2px}
.qty__btn:first-child{border-right:1px solid var(--line)}
.qty__btn:last-child{border-left:1px solid var(--line)}

/* ── 可变商品：型号选择器 ─────────────────────────────────────────
   Woo 原生是一坨 table + 灰下拉，跟卡片设计完全脱节。
   改成「标签 + 大下拉框」，下拉跟筛选侧栏同一套控件语言。 */
.woo div.product form.variations_form table.variations{
  width:100%;margin:0 0 6px;border-collapse:collapse
}
.woo div.product form.variations_form table.variations th,
.woo div.product form.variations_form table.variations td{
  display:block;width:100%;padding:0;border:0;text-align:left
}
.woo div.product form.variations_form table.variations th.label{
  padding:12px 0 6px;font-family:var(--f-disp);font-size:12px;font-weight:700;
  letter-spacing:.07em;text-transform:uppercase;color:var(--tx-3)
}
.woo div.product form.variations_form table.variations select{
  width:100%;max-width:340px;height:46px;padding:0 40px 0 14px;
  border:1.5px solid var(--line);border-radius:var(--r-sm);background:#fff;
  font-size:14px;font-weight:600;color:var(--tx);cursor:pointer;
  appearance:none;-webkit-appearance:none;
  background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='8' viewBox='0 0 12 8'%3E%3Cpath d='M1 1.5 6 6.5 11 1.5' fill='none' stroke='%23677' stroke-width='2' stroke-linecap='round'/%3E%3C/svg%3E");
  background-repeat:no-repeat;background-position:right 14px center;
  transition:border-color .15s var(--ease)
}
.woo div.product form.variations_form table.variations select:hover{border-color:var(--tx-3)}
.woo div.product form.variations_form table.variations select:focus{border-color:var(--lime-500);outline:none}
/* ── 变体直选 chips（main.js 把 select 换成胶囊按钮，select 本体保留给
   Woo 的变体逻辑；JS 失败时天然回退成下拉）── */
.woo div.product form.variations_form select.lmt-vsel--hidden{
  position:absolute!important;width:1px;height:1px;padding:0;margin:-1px;
  clip:rect(0 0 0 0);clip-path:inset(50%);overflow:hidden;border:0
}
.lmt-vchips{display:flex;flex-wrap:wrap;gap:8px;padding:2px 0 6px}
.lmt-vchip{
  display:inline-flex;align-items:center;gap:7px;
  min-height:42px;padding:10px 18px;border-radius:var(--r-full);
  border:1.5px solid var(--line);background:#fff;cursor:pointer;
  font-family:var(--f-disp);font-size:13.5px;font-weight:600;letter-spacing:.01em;
  color:var(--tx);transition:border-color .15s var(--ease),background .15s var(--ease),transform .15s var(--ease)
}
.lmt-vchip:hover{border-color:var(--lime-600);color:var(--lime-700);transform:translateY(-1px)}
.lmt-vchip:focus-visible{outline:2px solid var(--lime-500);outline-offset:2px}
.lmt-vchip.is-on{
  background:var(--lime-500);border-color:var(--lime-500);color:var(--tx);
  box-shadow:0 6px 16px -6px rgba(var(--lime-500-rgb),.5)
}
.lmt-vchip.is-on::before{
  content:"";width:14px;height:14px;flex:none;
  background:currentColor;
  -webkit-mask:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath d='M5 12.5l4.5 4.5L19 7' fill='none' stroke='%23000' stroke-width='3' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E") center/contain no-repeat;
  mask:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath d='M5 12.5l4.5 4.5L19 7' fill='none' stroke='%23000' stroke-width='3' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E") center/contain no-repeat
}
.lmt-vchip.is-off{opacity:.38;text-decoration:line-through;cursor:not-allowed}
.lmt-vchip.is-off:hover{border-color:var(--line);color:var(--tx);transform:none}
.woo div.product form.variations_form .reset_variations{
  display:inline-block;margin-left:10px;font-size:12px;color:var(--tx-3);
  text-decoration:underline;vertical-align:middle
}
.woo div.product form.variations_form .reset_variations:hover{color:var(--tx)}
/* 选中变体后的价格/库存/描述区：衬底小卡片 */
.woo div.product .single_variation_wrap .woocommerce-variation{
  margin:4px 0 12px;padding:12px 16px;
  background:var(--surface-2);border:1px solid var(--line);border-radius:var(--r-sm)
}
.woo div.product .woocommerce-variation-price .price{
  font-size:24px;font-weight:800;letter-spacing:-.02em;margin:0 0 4px
}
.woo div.product .woocommerce-variation-availability .stock{
  margin:4px 0 0;font-size:12.5px;font-weight:600
}
.woo div.product .woocommerce-variation-availability .stock.in-stock{color:var(--lime-700,#5c8a1f)}
.woo div.product .woocommerce-variation-availability .stock.out-of-stock{color:#b3261e}
.woo div.product .woocommerce-variation-description{font-size:13px;color:var(--tx-2);margin-top:6px}
.woo div.product .woocommerce-variation-description p{margin:0}
/* 未选完型号时加购钮禁用态 */
.woo div.product form.cart .single_add_to_cart_button.disabled,
.woo div.product form.cart .single_add_to_cart_button:disabled{opacity:.45;cursor:not-allowed}
/* 询价是次级动作：跟加购钮拉开呼吸距，不挤成一块 */
.woo div.product form.cart button[name="lmt_do"]{margin-left:10px}

/* 加购按钮 loading/added 态重做 ── Woo 默认用 ::after 挂一个字体齿轮，
   绝对定位 top:.618em;right:1em —— 在我们的大按钮上飘到右上角被圆角裁掉。
   改成：文字隐去，纯 CSS 转环居中；成功后换成内联 ✓ 跟在文字后面。 */
.woo .button.loading,.woo .single_add_to_cart_button.loading,
.woo a.add_to_cart_button.loading{
  position:relative;color:transparent!important;pointer-events:none;text-shadow:none
}
.woo .button.loading::after,.woo .single_add_to_cart_button.loading::after,
.woo a.add_to_cart_button.loading::after{
  content:"";position:absolute;top:50%;left:50%;right:auto;bottom:auto;
  display:block;width:18px;height:18px;margin:-9px 0 0 -9px;
  font-family:inherit;font-size:0;vertical-align:baseline;
  border:2px solid rgba(var(--ink-950-rgb),.22);border-top-color:var(--ink-950);
  border-radius:50%;opacity:1;
  animation:lmtBtnSpin .65s linear infinite
}
@keyframes lmtBtnSpin{to{transform:rotate(360deg)}}
/* 白底/描边按钮上（如 View cart）转环用 lime 描顶，保证可见 */
.woo .btn--ghost.loading::after,.woo .btn--dark.loading::after{
  border-color:rgba(var(--ink-950-rgb),.15);border-top-color:var(--lime-600)
}
/* added：Woo 原样的 \e017 字体对勾同样有定位问题，换 CSS 对勾跟在文字后 */
.woo .single_add_to_cart_button.added::after,.woo .button.added::after,
.woo a.add_to_cart_button.added::after{
  content:"";position:static;display:inline-block;
  width:7px;height:12px;margin:0 0 2px 10px;
  border:solid var(--on-accent);border-width:0 2px 2px 0;
  transform:rotate(45deg);font-family:inherit;font-size:0;vertical-align:middle;
  opacity:1;animation:none
}

/* ── 阶梯报价表 ──────────────────────────────────────────────────────
   立创/微雪式横条：首格常规价（1+），其余各档连续格；
   命中档用 lime 描边+浅底高亮，跟着数量输入框走（JS 在 main.js）。 */
.lmt-tiers{margin:0 0 6px;font-size:13px}
.lmt-tiers[hidden]{display:none}  /* 变体切换用 hidden，display 会盖掉 UA 规则（cartd__n 同款坑） */
.lmt-tiers__cap{
  display:flex;align-items:baseline;justify-content:space-between;gap:12px;
  margin-bottom:7px;font-size:12px;font-weight:700;letter-spacing:.02em;color:var(--tx-2)
}
.lmt-tiers__rfq{font-size:12px;font-weight:500;color:var(--lime-700);text-decoration:none}
.lmt-tiers__rfq:hover{text-decoration:underline}
/* 行式列表：数量 | 单价 | 优惠徽章 三列，Digikey 式价格分段表 */
.lmt-tiers__row{
  display:flex;flex-direction:column;
  border:1px solid var(--line);border-radius:var(--r-xs);overflow:hidden
}
.lmt-tier{
  display:grid;grid-template-columns:56px 1fr auto;align-items:center;gap:12px;
  padding:9px 14px;background:#fff;border-top:1px solid var(--line-2);
  transition:background .12s var(--ease)
}
.lmt-tier:first-child{border-top:0}
.lmt-tier b{
  font-size:11px;font-weight:700;letter-spacing:.06em;color:var(--tx-3)
}
/* ★ 只给直接子级 span 块化 —— wc_price 内部还嵌着
   woocommerce-Price-currencySymbol 的 span，块化它会把 $ 和金额断成两行 */
.lmt-tier > span{
  font-family:var(--f-disp);font-size:14.5px;font-weight:700;color:var(--tx);
  white-space:nowrap
}
.lmt-tier.is-on{
  background:rgba(var(--lime-500-rgb),.08);
  box-shadow:inset 3px 0 0 var(--lime-600)  /* 左侧 lime 条指示命中档 */
}
.lmt-tier.is-on b{color:var(--lime-700)}
/* 节省徽章：右列的 −x% 小胶囊，三种优惠方式统一量化成百分比；
   常规价行（1+）没有徽章时列空着也成立 */
.lmt-tier__off{
  display:inline-block;padding:2px 8px;border-radius:999px;
  font-style:normal;font-size:11px;font-weight:700;letter-spacing:.02em;
  color:var(--lime-700);background:rgba(var(--lime-500-rgb),.18)
}
.lmt-tier.is-on .lmt-tier__off{background:var(--lime-500);color:var(--ink-900)}
/* 列表卡片的"低至"提示：跟在价格后面一小行 */
.lmt-aslow{display:block;font-size:11px;font-weight:500;color:var(--tx-3);line-height:1.3;margin-top:1px}
@media (max-width:560px){
  .lmt-tier{padding:8px 12px;grid-template-columns:48px 1fr auto}
  .lmt-tier > span{font-size:13.5px}
}

/* 右栏底部的服务承诺 */
.pdp-trust{
  display:grid;grid-template-columns:1fr 1fr;gap:10px 16px;
  margin:22px 0 0;padding:16px 0 0;border-top:1px solid var(--line);list-style:none
}
.pdp-trust li{display:flex;align-items:center;gap:9px;font-size:12.5px;color:var(--tx-2)}
.pdp-trust .ic{width:17px;height:17px;flex:none;color:var(--lime-700);stroke-width:1.6}
@media (max-width:560px){.pdp-trust{grid-template-columns:1fr}}

/* v1 版式：SKU/分类/标签仍在表单之后，一行竖线分隔 */
.pdp-v1 .woo div.product .product_meta{
  margin-top:20px;padding-top:16px;border-top:1px solid var(--line);
  display:flex;flex-wrap:wrap;align-items:center;gap:8px 14px;
  font-size:12.5px;color:var(--tx-3)
}
.pdp-v1 .woo div.product .product_meta > span{display:inline-flex;align-items:center;gap:5px}
.pdp-v1 .woo div.product .product_meta > span + span::before{
  content:"";width:1px;height:12px;margin-right:9px;background:var(--line);flex:none
}
.pdp-v1 .woo div.product .product_meta .sku{font-family:var(--f-disp);font-weight:600;color:var(--tx);letter-spacing:.02em}
.pdp-v1 .woo div.product .product_meta a{color:var(--lime-700)}
/* v2 的 meta 已上提（.pdp-meta）；这里只留窄屏折行兜底 */
@media (max-width:560px){
  .woo div.product .pdp-meta{flex-direction:column;align-items:flex-start;gap:6px}
  .woo div.product .pdp-meta > span + span::before{display:none}
  .pdp-v1 .woo div.product .product_meta{flex-direction:column;align-items:flex-start;gap:7px}
  .pdp-v1 .woo div.product .product_meta > span + span::before{display:none}

  /* 购买行三折不好看：数量胶囊收窄（± 钮 34px、框 40px）、加购按钮
     吃掉剩余宽度、询价钮收成 44px 图标方钮（aria-label 保留完整语义）。
     qty 输入框顺手抬 16px，防 iOS 聚焦放大页面。 */
  .woo div.product form.cart{gap:8px;flex-wrap:nowrap}
  .woo div.product form.cart .quantity input{width:40px;height:44px;font-size:16px}
  .woo div.product form.cart .qty__btn{width:34px;font-size:16px}
  .woo div.product form.cart .single_add_to_cart_button{flex:1;min-width:0;padding:0 12px}
  .woo div.product form.cart button[name="lmt_do"]{flex:none;width:44px;padding:0}
  .woo div.product form.cart button[name="lmt_do"] .rfq__t{display:none}

  /* 商品页页头条只有一行面包屑（标题在右栏摘要里），
     默认 30/26 内距是为带大标题的页头准备的——只剩导航时压扁 */
  .single-product .pagehead--woo{padding:14px 0}
  .single-product .pagehead__crumb{margin-bottom:0}
}
/* 选项卡与相关商品是整幅宽度，不参与上面那两栏 */
.woo div.product .woocommerce-tabs,
.woo div.product .related,
.woo div.product .upsells,
.woo .cross-sells{grid-column:1/-1;margin-top:16px}
/* ★ 选择器要写到 `.woocommerce div.product .woocommerce-tabs ul.tabs li`
   这个层级：Woo 自己就是这么写的（比 `.woo .woocommerce-tabs ul.tabs li` 多一层），
   少写一层就压不住，标签页会保持它默认那套"文件夹标签"外观 ——
   圆角凸起、灰底、还靠 ::before/::after 画拐角。
   形态：v1 胶囊标签（跟首页行业方案那排一致），v2 Seeed 式下划线标签。 */
.woocommerce div.product .woocommerce-tabs{margin-top:8px}
.woocommerce div.product .woocommerce-tabs ul.tabs{
  display:flex;flex-wrap:wrap;gap:8px;padding:0 0 18px;margin:0 0 24px;
  border:0;border-bottom:1px solid var(--line);list-style:none
}
.woocommerce div.product .woocommerce-tabs ul.tabs::before,
.woocommerce div.product .woocommerce-tabs ul.tabs::after{display:none}
.woocommerce div.product .woocommerce-tabs ul.tabs li{
  margin:0;padding:0;background:var(--surface);
  border:1px solid var(--line);border-radius:var(--r-xs);box-shadow:none
}
.woocommerce div.product .woocommerce-tabs ul.tabs li::before,
.woocommerce div.product .woocommerce-tabs ul.tabs li::after{display:none}
.woocommerce div.product .woocommerce-tabs ul.tabs li a{
  display:block;padding:9px 18px;
  font-family:var(--f-disp);font-size:13.5px;font-weight:600;color:var(--tx-2)
}
.woocommerce div.product .woocommerce-tabs ul.tabs li:hover{border-color:var(--lime-500)}
.woocommerce div.product .woocommerce-tabs ul.tabs li:hover a{color:var(--lime-700)}
.woocommerce div.product .woocommerce-tabs ul.tabs li.active{
  background:var(--lime-500);border-color:var(--lime-500);box-shadow:var(--sh-lime)
}
.woocommerce div.product .woocommerce-tabs ul.tabs li.active a{color:var(--on-accent)}

/* v2 覆盖：Seeed 式文字下划线标签（胶囊规则上面已给，这里全量压回） */
.pdp-v2 .woocommerce div.product .woocommerce-tabs ul.tabs{
  gap:0 28px;padding:0;margin-bottom:26px
}
.pdp-v2 .woocommerce div.product .woocommerce-tabs ul.tabs li{
  margin:0 0 -1px;background:none;border:0;border-radius:0;box-shadow:none
}
.pdp-v2 .woocommerce div.product .woocommerce-tabs ul.tabs li.active{
  background:none;box-shadow:none
}
.pdp-v2 .woocommerce div.product .woocommerce-tabs ul.tabs li a{
  padding:10px 2px 12px;font-size:14px;color:var(--tx-3);
  border-bottom:2px solid transparent;transition:color .15s var(--ease)
}
.pdp-v2 .woocommerce div.product .woocommerce-tabs ul.tabs li:hover{border:0}
.pdp-v2 .woocommerce div.product .woocommerce-tabs ul.tabs li:hover a{color:var(--tx)}
.pdp-v2 .woocommerce div.product .woocommerce-tabs ul.tabs li.active a{
  color:var(--tx);border-bottom-color:var(--lime-500)
}

/* 面板里的 h2 就是标签页文字本身（"Description" 上面又写一遍 Description），
   标签已经说明了当前是哪一块，去掉这层重复 */
.woocommerce div.product .woocommerce-tabs .panel > h2:first-child{display:none}
.woo .woocommerce-tabs .panel{max-width:72ch;color:var(--tx-2);line-height:1.75}
/* 短描述与长描述会被拼在一起输出，段落之间没有间距，看起来像一整块 */
.woo .woocommerce-tabs .panel p + p{margin-top:1em}

/* 「文档与下载」页签：资源卡（Wiki / Datasheet PDF 各一张） */
.pdp-docs{display:grid;grid-template-columns:repeat(auto-fill,minmax(250px,1fr));gap:14px;max-width:680px}
.pdp-docs__card{
  display:flex;flex-direction:column;gap:5px;padding:18px 20px;
  border:1px solid var(--line);border-radius:var(--r);background:#fff;
  color:var(--tx);text-decoration:none;
  transition:border-color .15s var(--ease),transform .15s var(--ease),box-shadow .15s var(--ease)
}
.pdp-docs__card:hover{border-color:var(--lime-600);transform:translateY(-1px);box-shadow:var(--sh-2)}
.pdp-docs__card .ic{width:20px;height:20px;color:var(--lime-700);margin-bottom:2px}
.pdp-docs__card b{font-family:var(--f-disp);font-size:14px;font-weight:600}
.pdp-docs__card span{font-size:12.5px;color:var(--tx-3);line-height:1.5}

/* 参数表 */
.woo .shop_attributes{width:100%;max-width:640px;border:1px solid var(--line);border-radius:var(--r);border-collapse:separate;border-spacing:0}
.woo .shop_attributes tr:nth-child(even){background:var(--surface-2)}
.woo .shop_attributes th{
  width:38%;padding:11px 14px;text-align:left;font-size:12.5px;font-weight:600;color:var(--tx);
  border-bottom:1px solid var(--line-2)
}
.woo .shop_attributes td{padding:11px 14px;font-size:13.5px;color:var(--tx-2);border-bottom:1px solid var(--line-2)}
.woo .shop_attributes tr:last-child th,.woo .shop_attributes tr:last-child td{border-bottom:0}
.woo .shop_attributes td p{margin:0}

/* ★ 图库放大镜按钮（JS 注入的 .gallery__trigger）两次出现定位漂移——
   它和「点图开灯箱」功能重复（photoswipe 灯箱自带缩放钮），直接隐藏。
   保留 position:relative 兜底其他绝对定位子元素。 */
.woo div.product .woocommerce-product-gallery{position:relative}
.woo div.product .woocommerce-product-gallery__trigger{display:none}
.woo .related>h2,.woo .upsells>h2,.woo .cross-sells>h2{font-size:22px;margin-bottom:18px}

/* ── 购物车 / 结算 / 账户 ──────────────────────────────────────────── */
.woo table.shop_table{border:1px solid var(--line);border-radius:var(--r);border-collapse:separate;border-spacing:0}
.woo table.shop_table th{background:var(--surface-2);font-size:12.5px;color:var(--tx);padding:12px 14px}
.woo table.shop_table td{padding:14px;border-top:1px solid var(--line-2);font-size:14px}
.woo table.shop_table img{width:56px;border-radius:var(--r-xs)}
.woo .cart_totals h2,.woo #order_review_heading,.woo .woocommerce-billing-fields h3{font-size:20px;margin-bottom:14px}
.woo .cart-collaterals .cart_totals{float:none;width:auto;max-width:420px;margin-left:auto}
.woo form .form-row label{display:block;font-size:12.5px;font-weight:600;margin-bottom:5px}
.woo form .form-row input.input-text,
.woo form .form-row textarea,
.woo form .form-row select,
.woo .select2-container .select2-selection--single{
  width:100%;min-height:44px;padding:10px 12px;
  border:1px solid var(--line);border-radius:var(--r-sm);font-size:14px;background:#fff
}
.woo form .form-row input.input-text:focus,.woo form .form-row textarea:focus{outline:none;border-color:var(--lime-500)}

/* ── 账户页：登录/注册面板 ────────────────────────────────────────────
   Woo 默认吐两个裸表单。这里在 form-login.php 覆盖层里包一块浅色卡片：
   左侧浅灰品牌轨（权益清单 + 安全状态），右侧表单细分隔线。 */
.woocommerce-account .sec,.sec:has(.lmt-auth){background:var(--surface-2)}
/* 无页头条的独立卡片页：顶部一层极淡的 lime 光晕衔接页头，页面不至于秃 */
.sec:has(.lmt-auth){
  padding-block:56px 64px;
  background:radial-gradient(72% 46% at 50% 0%,rgba(var(--lime-500-rgb),.07),transparent 68%),var(--surface-2)
}
.lmt-auth{
  display:grid;grid-template-columns:minmax(290px,32%) 1fr;
  max-width:1100px;margin:0 auto;overflow:hidden;
  background:#fff;border:1px solid var(--line);border-radius:var(--r-xl);
  box-shadow:0 26px 60px -34px rgba(var(--ink-950-rgb),.25)
}
.lmt-auth__rail{
  display:flex;flex-direction:column;padding:48px 40px 34px;
  border-right:1px solid var(--line);
  background:linear-gradient(165deg,rgba(var(--lime-500-rgb),.1),var(--surface-2) 52%)
}
.lmt-auth__eyebrow{
  display:flex;align-items:center;gap:9px;margin:0;
  font-size:10.5px;font-weight:700;letter-spacing:.26em;color:var(--lime-700)
}
.lmt-auth__dot{
  width:7px;height:7px;border-radius:50%;background:var(--lime-500);
  box-shadow:0 0 8px rgba(var(--lime-500-rgb),.7);animation:lmtAuthPulse 2.4s infinite
}
@keyframes lmtAuthPulse{0%,100%{opacity:1}50%{opacity:.3}}
.lmt-auth__title{margin:16px 0 30px;font-size:clamp(25px,2.4vw,32px);line-height:1.16;color:var(--tx);letter-spacing:-.02em}
.lmt-auth__specs{list-style:none;margin:0;padding:0}
.lmt-auth__specs li{
  padding:11px 0;border-top:1px solid var(--line);
  font-size:13.5px;color:var(--tx-2);display:flex;align-items:flex-start;gap:10px
}
.lmt-auth__specs .ic{width:17px;height:17px;margin-top:2px;color:var(--lime-700)}
.lmt-auth__foot{
  margin:auto 0 0;padding-top:28px;
  font-size:10.5px;letter-spacing:.16em;color:var(--tx-3);text-transform:uppercase
}
.lmt-auth__foot{display:flex;align-items:center;gap:8px;line-height:1.6}
.lmt-auth__foot .ic{width:14px;height:14px}
.lmt-auth__forms{padding:46px 46px 42px}
/* ★ Woo 容器改 grid 前必须先杀它的 clearfix 伪元素（伪元素也算格子，会把列挤错位），
   并且抹掉 Woo 给两列写的 float + width:47%（float 失效但宽度还在）。 */
.woo #customer_login{display:grid;grid-template-columns:1fr 1fr;gap:0;max-width:none;margin:0}
.woo #customer_login::before,.woo #customer_login::after{display:none}
.woo #customer_login>div{width:auto;float:none;margin:0;padding:0;display:flex;flex-direction:column}
.woo #customer_login>.u-column1{grid-column:1}
.woo #customer_login>.u-column2{grid-column:2;border-left:1px solid var(--line);padding-left:38px}
.woo #customer_login>.u-column1{padding-right:38px}
.lmt-auth__col{display:flex;flex-direction:column;flex:1}
.lmt-auth__tag{
  margin:0 0 8px;font-size:10px;font-weight:700;letter-spacing:.2em;
  color:var(--lime-700);text-transform:uppercase
}
.woo #customer_login h2{font-size:21px;color:var(--tx);margin-bottom:6px}
.woo #customer_login .lmt-formintro{display:block;margin:0 0 20px;font-size:13px;color:var(--tx-3);line-height:1.6}
.lmt-auth__note{margin:0 0 14px;font-size:13px;color:var(--tx-3);line-height:1.6}
/* 表单撑高对齐：少的列把按钮/尾链收到底边 */
.woo #customer_login form.login,.woo #customer_login form.register{flex:1;display:flex;flex-direction:column;margin:14px 0 0}
.woo #customer_login form.login .lost_password{margin-top:auto;padding-top:16px}
.woo #customer_login form.register>p:last-of-type{margin-top:auto;padding-top:16px}
.woo #customer_login form .form-row{margin:0 0 14px}
.woo #customer_login form p:last-child{margin-bottom:0}
.lmt-auth .form-row label{color:var(--tx-2);font-size:11px;letter-spacing:.08em;text-transform:uppercase}
.lmt-auth .form-row .required{color:var(--lime-700)}
.lmt-auth .input-text{
  min-height:48px;font-size:14.5px;padding-inline:14px;
  background:#fff;border:1px solid var(--line)!important;
  border-radius:var(--r-sm);color:var(--tx)
}
.lmt-auth .input-text:focus{border-color:var(--lime-500)!important;background:#fff;box-shadow:0 0 0 3px rgba(var(--lime-500-rgb),.18);outline:none}
.lmt-auth .input-text::placeholder{color:var(--tx-3)}
.lmt-auth .lmt-auth__options{display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:10px;margin:2px 0 20px;font-size:12px}
.lmt-auth .lmt-auth__options .woocommerce-form-login__rememberme{display:inline-flex;align-items:center;gap:8px;margin:0;font-size:12px;font-weight:400;color:var(--tx-2);letter-spacing:0;text-transform:none;cursor:pointer}
.lmt-auth .lmt-auth__options input{width:15px;height:15px;min-height:0;margin:0;accent-color:var(--lime-700)}
.lmt-auth__forgot{color:var(--lime-700);font-weight:500}
.lmt-auth__forgot:hover{text-decoration:underline;text-underline-offset:3px}
.lmt-auth .lmt-auth__submit .button{display:flex;align-items:center;justify-content:center;width:100%;min-height:48px;margin:0;padding:12px 20px;border:1px solid transparent;border-radius:10px;background:var(--lime-500);color:var(--on-accent);font-size:14px;font-weight:650;line-height:1.4;box-shadow:0 5px 12px -8px rgba(var(--lime-500-rgb),.65);transition:background .2s var(--ease),box-shadow .2s var(--ease)}
.lmt-auth .lmt-auth__submit .button:hover{background:var(--lime-400);box-shadow:0 8px 18px -10px rgba(var(--lime-500-rgb),.8)}
/* 「Remember me + Log in」同行 */
.woo #customer_login .form-row:has(.woocommerce-form-login__submit){display:flex;align-items:center;gap:14px;margin-top:6px}
.woo .woocommerce-form-login__rememberme{display:inline-flex;align-items:center;gap:7px;font-size:13px;color:var(--tx-2)}
.woo .woocommerce-form-login__rememberme input{width:auto;min-height:0;accent-color:var(--lime-500)}
.woo #customer_login .woocommerce-form-login__submit,
.woo #customer_login .woocommerce-form-register__submit{
  flex:1;width:100%;min-height:48px;font-size:14.5px;
  box-shadow:0 10px 26px -10px rgba(var(--lime-500-rgb),.55)
}
.woo form.login .lost_password{text-align:right;font-size:13px;margin-top:16px}
.woo .woocommerce-LostPassword a{color:var(--lime-700)}
.woo .woocommerce-LostPassword a:hover{color:var(--lime-600)}
/* 注册关闭时 Woo 吐裸表单（无两列容器），在面板里居中 */
.lmt-auth__forms>form.login{display:block;max-width:400px;margin-inline:auto}
.lmt-auth__forms>h2{color:var(--tx);text-align:center}
/* 单表单模式（登录/注册各占一页）：唯一一列居中、去掉双列的分隔线留白 */
.lmt-auth--single #customer_login{grid-template-columns:minmax(0,460px);justify-content:center}
.lmt-auth--single #customer_login>.u-column1{padding-right:0}
.lmt-auth--single #customer_login>.u-column2{border-left:0;padding-left:0}
.lmt-auth--single .lmt-auth__forms{padding:46px 52px 42px}
/* 单表单下 lost-password 贴着按钮走，底部锚点让给互跳链接行 */
.lmt-auth--single #customer_login form.login .lost_password{margin-top:8px;padding-top:4px;text-align:right}
/* 表单底部的互跳链接行（Don't have an account? / Already have an account?） */
.lmt-auth__switch{
  margin-top:auto;padding-top:22px;
  font-size:13px;color:var(--tx-3);text-align:center
}
.lmt-auth__switch a{color:var(--lime-700);font-weight:600}
.lmt-auth__switch a:hover{color:var(--lime-600)}
.lmt-auth .woocommerce-privacy-policy-text{margin:12px 0;font-size:12px;color:var(--tx-3);line-height:1.6}
@media (max-width:920px){
  .lmt-auth{grid-template-columns:1fr}
  .lmt-auth__rail{padding:30px 26px 22px;border-right:0;border-bottom:1px solid var(--line)}
  .lmt-auth__title{margin:12px 0 18px;font-size:22px}
  .lmt-auth__specs{display:grid;grid-template-columns:1fr 1fr;gap:0 18px}
  .lmt-auth__specs li{padding:8px 0;font-size:12.5px}
  .lmt-auth__foot{padding-top:18px}
  .lmt-auth__forms{padding:28px 24px 26px}
}
@media (max-width:640px){
  .woo #customer_login{grid-template-columns:1fr}
  .woo #customer_login>.u-column1{grid-column:auto;padding-right:0;padding-bottom:30px}
  .woo #customer_login>.u-column2{grid-column:auto;border-left:0;border-top:1px solid var(--line);padding-left:0;padding-top:30px}
}

/* ── 登录 / 注册弹窗：深色品牌轨 + 紧凑表单 ─────────────────────────── */
.authm{position:fixed;inset:0;z-index:130;display:grid;place-items:center;padding:24px}
.authm[hidden]{display:none}
.authm__scrim{position:absolute;inset:0;background:rgba(var(--ink-950-rgb),.68);backdrop-filter:blur(6px);animation:fade .2s var(--ease)}
.authm__panel{position:relative;z-index:1;width:min(820px,100%);max-height:calc(100vh - 48px);max-height:calc(100dvh - 48px);overflow:auto;overscroll-behavior:contain;background:#fff;border-radius:22px;box-shadow:0 32px 100px -24px rgba(0,0,0,.5);animation:authmIn .25s var(--ease-out)}
@keyframes authmIn{from{opacity:0;transform:translateY(12px) scale(.985)}}
.authm__x{position:absolute;top:14px;right:14px;z-index:3;display:grid;place-items:center;width:32px;height:32px;border-radius:50%;color:var(--tx-3);background:var(--surface-2);transition:background .2s var(--ease),color .2s var(--ease)}
.authm__x:hover{background:var(--line);color:var(--tx)}
.authm__x .ic{width:16px;height:16px}
.authm .lmt-auth{grid-template-columns:280px minmax(0,1fr);max-width:none;min-height:510px;margin:0;border:0;border-radius:0;box-shadow:none}
.authm .lmt-auth__rail{position:relative;isolation:isolate;overflow:hidden;padding:36px 28px 28px;border:0;background:radial-gradient(ellipse at 0 0,rgba(var(--lime-500-rgb),.15),transparent 70%),var(--ink-900)}
.authm .lmt-auth__rail::after{content:"";position:absolute;z-index:-1;inset:0;pointer-events:none;opacity:.14;background:linear-gradient(90deg,transparent 39px,rgba(var(--lime-500-rgb),.3) 40px,transparent 41px),linear-gradient(transparent 39px,rgba(var(--lime-500-rgb),.3) 40px,transparent 41px);background-size:40px 40px;mask-image:linear-gradient(transparent 30%,#000)}
.authm .lmt-auth__eyebrow{font-size:10px;letter-spacing:.22em;color:var(--lime-400)}
.authm .lmt-auth__dot{width:6px;height:6px;animation:none}
.authm .lmt-auth__title{max-width:220px;margin:26px 0 32px;color:#fff;font-size:30px;line-height:1.18;letter-spacing:-.035em}
.authm .lmt-auth__specs{display:flex;flex-direction:column;gap:20px}
.authm .lmt-auth__specs li{padding:0;border:0;gap:12px;font-size:12px;line-height:1.6;color:rgba(255,255,255,.72)}
.authm .lmt-auth__specs .ic{width:17px;height:17px;margin-top:1px;color:var(--lime-400)}
.authm .lmt-auth__foot{margin-top:auto;padding-top:38px;font-size:9px;letter-spacing:.08em;color:rgba(255,255,255,.42)}
.authm .lmt-auth__foot .ic{color:var(--lime-400)}
.authm .authm__forms{display:flex;flex-direction:column;min-width:0;padding:32px 36px 28px}
.authm__tabs{display:grid;grid-auto-flow:column;grid-auto-columns:1fr;gap:4px;margin:0 26px 26px 0;padding:4px;background:var(--surface-2);border:1px solid var(--line);border-radius:11px}
.authm__tab{min-height:34px;padding:7px 12px;border-radius:7px;text-align:center;font-size:12px;font-weight:600;line-height:1.3;color:var(--tx-3);transition:background .2s var(--ease),color .2s var(--ease)}
.authm__tab:hover{color:var(--tx)}
.authm__tab[aria-selected="true"]{color:var(--tx);background:#fff;box-shadow:0 1px 5px rgba(var(--ink-950-rgb),.08)}
.authm__pane{display:flex;flex:1;flex-direction:column}
.authm[data-authm-mode="login"] .authm__pane--reg,.authm[data-authm-mode="register"] .authm__pane--login{display:none}
.authm__intro{margin-bottom:24px}
.authm__heading{margin:0 0 7px;font-size:26px;font-weight:700;line-height:1.2;letter-spacing:-.035em;color:var(--tx)}
.authm__heading:focus{outline:none}
.authm__intro p{margin:0;font-size:12px;line-height:1.7;color:var(--tx-3)}
.authm form.login,.authm form.register{display:flex;flex:1;flex-direction:column;margin:0;padding:0;border:0}
.authm .lmt-formintro{display:none}
.authm form .form-row{margin:0 0 16px;padding:0}
.authm .form-row-wide>label{display:block;margin:0 0 7px;font-size:11px;font-weight:600;letter-spacing:0;text-transform:none;color:var(--tx-2)}
.authm .input-text{display:block;width:100%;min-height:46px;padding:12px 14px;border-radius:9px;background:var(--surface-2);font-size:13px;line-height:1.5;transition:background .2s var(--ease),border-color .2s var(--ease),box-shadow .2s var(--ease)}
.authm .input-text::placeholder{color:var(--tx-3);opacity:.65}
.authm .input-text:focus{background:#fff}
.authm .lmt-auth__options{margin:0 0 22px;font-size:11px}
.authm .lmt-auth__options .woocommerce-form-login__rememberme{font-size:11px}
.authm form .lmt-auth__submit{margin:0}
.authm .lmt-auth__submit .button{min-height:46px;font-size:13px}
.authm .lmt-auth__note{margin:0 0 18px;padding:12px 14px;border:1px solid rgba(var(--lime-500-rgb),.24);border-radius:9px;background:rgba(var(--lime-500-rgb),.07);color:var(--tx-2);font-size:12px;line-height:1.7}
.authm .woocommerce-privacy-policy-text{margin:0 0 20px;font-size:11px;line-height:1.7;color:var(--tx-3)}
.authm .woocommerce-privacy-policy-text p{margin:0}
.authm .woocommerce-privacy-policy-text a{color:var(--lime-700);text-decoration:underline;text-underline-offset:2px}
.authm .lmt-auth__switch{margin:24px 0 0;padding:18px 0 0;border-top:1px solid var(--line);font-size:11px;line-height:1.8}
.authm__notices{margin:0 0 18px;font-size:12px;line-height:1.6}
.authm__notices .woocommerce-error,.authm__notices .woocommerce-message{margin:0}
@media (max-width:700px){
  .authm{padding:16px}
  .authm__panel{width:min(440px,100%);max-height:calc(100vh - 32px);max-height:calc(100dvh - 32px);border-radius:18px}
  .authm .lmt-auth{grid-template-columns:minmax(0,1fr);min-height:0}
  .authm .lmt-auth__rail{display:none}
  .authm .authm__forms{padding:48px 24px 26px}
  .authm__tabs{margin:0 0 24px}
  .authm__intro{margin-bottom:22px}
  .authm__heading{font-size:24px}
  .authm .input-text{font-size:16px}
  .authm .lmt-auth__switch{margin-top:22px}
}
@media (prefers-reduced-motion:reduce){.authm__panel,.authm__scrim{animation:none}.lmt-auth__dot{animation:none}}

/* 已登录：控制台布局 —— 深色导轨 + 白色内容卡，与页头页脚的 ink 面同一语言 */
.woo .woocommerce-MyAccount-navigation{
  float:none;width:auto;
  background:var(--ink-900);border-radius:var(--r-lg);
  padding:18px 14px 12px;box-shadow:var(--sh-2)
}
/* 身份卡头：缩写圆牌 + 名字 + 邮箱 */
.woo .acct-id{
  display:flex;align-items:center;gap:12px;
  padding:2px 8px 15px;margin-bottom:10px;border-bottom:1px solid rgba(255,255,255,.09)
}
.woo .acct-id__ava{
  flex:0 0 40px;width:40px;height:40px;border-radius:50%;display:grid;place-items:center;
  background:linear-gradient(135deg,var(--lime-300),var(--lime-600));
  color:var(--ink-900);font-size:14px;font-weight:800;letter-spacing:.02em
}
.woo .acct-id__who{min-width:0}
.woo .acct-id__who b{
  display:block;color:var(--tx-inv);font-size:14px;font-weight:700;line-height:1.3;
  overflow:hidden;text-overflow:ellipsis;white-space:nowrap
}
.woo .acct-id__who em{
  display:block;font-style:normal;color:rgba(255,255,255,.42);font-size:11.5px;
  overflow:hidden;text-overflow:ellipsis;white-space:nowrap
}
.woo .woocommerce-MyAccount-navigation ul{
  display:flex;flex-direction:column;gap:2px;padding:0;background:none;border:0;border-radius:0
}
.woo .woocommerce-MyAccount-navigation li a{
  display:flex;align-items:center;gap:11px;padding:10px;border-radius:var(--r-xs);
  font-size:13.5px;font-weight:600;color:rgba(255,255,255,.62);transition:all .18s var(--ease)
}
.woo .woocommerce-MyAccount-navigation li a .ic{width:17px;height:17px;flex:0 0 auto;opacity:.55;transition:opacity .18s var(--ease)}
.woo .woocommerce-MyAccount-navigation li a:hover{background:rgba(255,255,255,.07);color:#fff}
.woo .woocommerce-MyAccount-navigation li a:hover .ic{opacity:.9}
.woo .woocommerce-MyAccount-navigation li.is-active a{background:var(--lime-500);color:var(--on-accent)}
.woo .woocommerce-MyAccount-navigation li.is-active a .ic{opacity:1}
/* 退出单独压一条分隔线 —— 破坏性操作和账户操作在视觉上分开 */
.woo .woocommerce-MyAccount-navigation li.woocommerce-MyAccount-navigation-link--customer-logout{
  margin-top:8px;padding-top:8px;border-top:1px solid rgba(255,255,255,.09)
}
.woo .woocommerce-MyAccount-content{
  float:none;width:auto;
  background:#fff;border:1px solid var(--line);border-radius:var(--r-lg);
  box-shadow:var(--sh-2);padding:28px 30px
}
.woo .woocommerce-MyAccount-content p{color:var(--tx-2);line-height:1.75}

/* 仪表盘：欢迎面板 + 快速磁贴（模板 woocommerce/myaccount/dashboard.php） */
.woo .acct-hi__k{
  margin:0 0 10px;font-size:11px;font-weight:800;letter-spacing:.14em;
  text-transform:uppercase;color:var(--lime-700)
}
.woo .acct-hi__t{margin:0 0 8px;font-family:var(--f-disp);font-size:clamp(22px,3vw,30px);font-weight:700;letter-spacing:-.01em;color:var(--tx)}
.woo .acct-hi__p{margin:0 0 22px;font-size:14px;color:var(--tx-2);max-width:52ch}
.woo .acct-tiles{display:grid;grid-template-columns:repeat(3,1fr);gap:14px;margin-bottom:16px}
.woo .acct-tile{
  position:relative;display:flex;align-items:center;gap:13px;
  padding:16px 15px;background:var(--surface);
  border:1px solid var(--line);border-radius:var(--r);transition:all .2s var(--ease)
}
.woo .acct-tile:hover{border-color:var(--ink-900);box-shadow:var(--sh-1);transform:translateY(-2px)}
.woo .acct-tile__ic{
  flex:0 0 38px;width:38px;height:38px;border-radius:var(--r-xs);
  background:var(--ink-900);display:grid;place-items:center
}
.woo .acct-tile__ic .ic{width:19px;height:19px;color:var(--lime-400)}
.woo .acct-tile__tx{min-width:0}
.woo .acct-tile__tx b{display:block;font-size:14px;font-weight:700;color:var(--tx)}
.woo .acct-tile__tx em{display:block;font-style:normal;font-size:11.5px;color:var(--tx-3);line-height:1.4}
.woo .acct-tile__n{
  position:absolute;top:-7px;right:-7px;min-width:20px;height:20px;padding:0 6px;
  border-radius:var(--r-full);background:var(--lime-500);color:var(--on-accent);
  font-size:11px;font-weight:800;display:grid;place-items:center;box-shadow:var(--sh-lime)
}
.woo .acct-tile__go{
  position:absolute;right:12px;top:50%;width:15px;height:15px;color:var(--tx-3);
  opacity:0;transform:translate(-5px,-50%);transition:all .2s var(--ease)
}
.woo .acct-tile:hover .acct-tile__go{opacity:1;transform:translate(0,-50%);color:var(--lime-700)}
.woo .acct-out{margin:0;font-size:13px;color:var(--tx-3)}
.woo .acct-out a{color:var(--lime-700);font-weight:600}

/* 地址端点：两列地址卡 */
.woo .woocommerce-Addresses{display:grid;grid-template-columns:1fr 1fr;gap:16px;margin-top:6px}
.woo .woocommerce-Addresses::before,.woo .woocommerce-Addresses::after{display:none}
.woo .woocommerce-Address{border:1px solid var(--line);border-radius:var(--r);padding:18px 18px 14px}
.woo .woocommerce-Address-title{display:flex;align-items:baseline;justify-content:space-between;gap:10px;margin:0 0 10px}
.woo .woocommerce-Address-title h3{font-size:15px;margin:0;white-space:nowrap}
/* Woo 的「Add Billing address」很长，不折行否则叠成竖排 */
.woo .woocommerce-Address-title a{flex:0 0 auto;white-space:nowrap;font-size:12.5px;font-weight:600;color:var(--lime-700)}
.woo .woocommerce-Address address{font-style:normal;color:var(--tx-2);font-size:13.5px;line-height:1.7}
/* 已登录的账户后台才分两栏。
   ★ 条件写成"存在账户导航"而不是"body 上有 woocommerce-account 类"：
     后者在未登录的登录/注册页也成立，会把那两张卡也卷进两栏网格里挤变形。 */
.woo .woocommerce:has(.woocommerce-MyAccount-navigation){
  display:grid;grid-template-columns:270px minmax(0,1fr);gap:26px;align-items:start
}
/* 同上：clearfix 伪元素会占掉第一格，把导航挤到右边、内容挤进窄列 */
.woo .woocommerce:has(.woocommerce-MyAccount-navigation)::before,
.woo .woocommerce:has(.woocommerce-MyAccount-navigation)::after{display:none}
.woo .woocommerce:has(.woocommerce-MyAccount-navigation) > .woocommerce-notices-wrapper{grid-column:1/-1}

@media (max-width:820px){
  .woo #customer_login{grid-template-columns:1fr}
  .woo .woocommerce:has(.woocommerce-MyAccount-navigation){grid-template-columns:1fr}
  /* 导轨压成一条横滑胶囊栏 —— 竖排菜单在窄屏会顶掉半屏内容 */
  .woo .woocommerce-MyAccount-navigation{padding:14px 12px 10px}
  .woo .acct-id{padding-bottom:12px}
  .woo .woocommerce-MyAccount-navigation ul{
    flex-direction:row;overflow-x:auto;scrollbar-width:none;gap:6px
  }
  .woo .woocommerce-MyAccount-navigation ul::-webkit-scrollbar{display:none}
  .woo .woocommerce-MyAccount-navigation li{flex:0 0 auto}
  .woo .woocommerce-MyAccount-navigation li a{padding:9px 12px;white-space:nowrap;font-size:13px}
  .woo .woocommerce-MyAccount-navigation li.woocommerce-MyAccount-navigation-link--customer-logout{
    margin-top:0;padding-top:0;border-top:0;
    margin-left:2px;padding-left:8px;border-left:1px solid rgba(255,255,255,.12)
  }
  .woo .woocommerce-MyAccount-content{padding:22px 18px}
  .woo .acct-tiles{grid-template-columns:1fr}
  .woo .woocommerce-Addresses{grid-template-columns:1fr}
}

/* Woo 的按钮统一成主题的按钮。
   ★ 选择器必须写到和 Woo 一样的权重：它用的是
   `.woocommerce a.button` / `.woocommerce #respond input#submit`（后者带 id），
   只写 `.woo .button` 压不住，按钮会保持它默认的紫色。
   我们的样式表在 Woo 之后加载，同权重即可胜出，不用 !important。 */
.woocommerce a.button,.woocommerce button.button,.woocommerce input.button,
.woocommerce #respond input#submit,
.woocommerce a.button.alt,.woocommerce button.button.alt,.woocommerce input.button.alt,
.woo .button,.woo button.button,.woo input.button,.woo a.button,
.woocommerce-message .button,.woocommerce-info .button{
  display:inline-flex;align-items:center;justify-content:center;gap:8px;
  height:46px;padding:0 22px;border-radius:var(--r-sm);border:0;
  background:var(--lime-500);color:var(--on-accent);
  font-family:var(--f-disp);font-weight:600;font-size:14.5px;line-height:1;
  transition:transform .18s var(--ease),background-color .18s var(--ease)
}
.woocommerce a.button:hover,.woocommerce button.button:hover,.woocommerce input.button:hover,
.woocommerce a.button.alt:hover,.woocommerce button.button.alt:hover,
.woocommerce #respond input#submit:hover,
.woo .button:hover,.woo button.button:hover,.woo input.button:hover,.woo a.button:hover{
  background:var(--lime-400);color:var(--on-accent);transform:translateY(-2px)
}
.woo .button.alt,.woo button.button.alt{box-shadow:var(--sh-lime)}
/* 次要按钮（继续购物、更新购物车）用描边 */
.woo .button[name="update_cart"],.woo .wc-backward{
  background:#fff;color:var(--tx);border:1px solid var(--line)
}
.woo .button[name="update_cart"]:hover,.woo .wc-backward:hover{background:var(--surface);color:var(--tx)}
.woo .button:disabled{opacity:.5;cursor:not-allowed;transform:none}

/* ── 购物车 / 结算（WooCommerce 区块版）─────────────────────────────
   ★ Woo 10 建的购物车与结算页用的是**区块**（wc-block-*），不是经典短代码，
     所以上面那些 .shop_table / .button 的样式在这两页一条都用不上。
     区块还是客户端渲染的，服务端 HTML 里看不到组件类名 —— 只能按
     WooCommerce Blocks 的标准类名写，改版时要回来核对。

   没有换回经典短代码：区块版在移动端和支付方式上是 Woo 的主推方向，
   而且它的自定义字段 API 正是这个站将来要加公司抬头/税号时要用的。 */
.wc-block-components-button:not(.is-link),
.wc-block-cart__submit-button,
.wc-block-components-checkout-place-order-button{
  background:var(--lime-500)!important;color:var(--on-accent)!important;
  border:0;border-radius:var(--r-sm);
  font-family:var(--f-disp);font-weight:600;font-size:15px;
  box-shadow:var(--sh-lime);transition:background-color .18s var(--ease),transform .18s var(--ease)
}
.wc-block-components-button:not(.is-link):hover,
.wc-block-cart__submit-button:hover,
.wc-block-components-checkout-place-order-button:hover{
  background:var(--lime-400)!important;transform:translateY(-2px)
}
.wc-block-components-button.is-link{color:var(--lime-700);text-underline-offset:3px}

/* 空购物车「New in store」推荐位的加购钮是 WP 区块默认黑钮，
   与全站绿色 CTA 不一致——只按 add_to_cart_button 类点名，不误伤别的区块按钮 */
.wp-block-button__link.add_to_cart_button{
  background:var(--lime-500);color:var(--on-accent);
  border-radius:var(--r-sm);font-family:var(--f-disp);font-weight:600;
  transition:background-color .18s var(--ease),transform .18s var(--ease)
}
.wp-block-button__link.add_to_cart_button:hover{background:var(--lime-400);transform:translateY(-2px)}

/* 空购物车：提示、操作与推荐商品形成连续的页面，不依赖 WP 的区块基础样式。 */
.woocommerce-cart .wp-block-woocommerce-empty-cart-block{padding:0}
.lmt-empty-cart{
  position:relative;isolation:isolate;overflow:hidden;margin:0 0 38px;padding:34px 24px 28px;
  border:1px solid var(--line);border-radius:var(--r-xl);text-align:center;
  background:radial-gradient(ellipse at 50% 0,rgba(var(--lime-500-rgb),.09),transparent 66%),var(--surface-2)
}
.lmt-empty-cart::before{
  content:"";position:absolute;inset:0;z-index:-1;opacity:.16;pointer-events:none;
  background-image:var(--circuit);background-size:180px;
  mask-image:linear-gradient(90deg,#000,transparent 28%,transparent 72%,#000)
}
.lmt-empty-cart__content{max-width:620px;margin-inline:auto}
.lmt-empty-cart__icon{
  display:grid;place-items:center;width:62px;height:62px;margin:0 auto 18px;
  color:var(--lime-400);background:var(--ink-900);border-radius:18px
}
.lmt-empty-cart__icon .ic{width:30px;height:30px;stroke-width:1.55}
.lmt-empty-cart .lmt-empty-cart__title{
  margin:0;font:700 clamp(25px,2.7vw,33px)/1.2 var(--f-disp);letter-spacing:-.035em;color:var(--tx)
}
.lmt-empty-cart .lmt-empty-cart__text{
  max-width:52ch;margin:12px auto 0;font-size:14px;line-height:1.7;color:var(--tx-2)
}
.lmt-empty-cart__actions{display:flex;justify-content:center;flex-wrap:wrap;gap:12px;margin-top:22px}
.lmt-empty-cart__actions .btn{height:46px;padding-inline:22px;font-size:13.5px}
.lmt-empty-cart__perks{
  display:flex;justify-content:center;flex-wrap:wrap;gap:12px 24px;
  margin:24px 0 0;padding:0;list-style:none
}
.lmt-empty-cart__perks li{display:flex;align-items:center;gap:6px;font-size:11.5px;font-weight:500;color:var(--tx-3)}
.lmt-empty-cart__perks .ic{width:14px;height:14px;color:var(--lime-700);stroke-width:2}
.woocommerce-cart .wp-block-woocommerce-empty-cart-block>.wp-block-heading{
  margin:0 0 20px;text-align:left;font:700 clamp(21px,2vw,25px)/1.3 var(--f-disp);letter-spacing:-.025em
}
.woocommerce-cart .wp-block-woocommerce-empty-cart-block .wc-block-grid__products{
  display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:20px;margin:0;padding:0;list-style:none
}
.woocommerce-cart .wp-block-woocommerce-empty-cart-block .wc-block-grid .wc-block-grid__product{
  display:flex;flex-direction:column;min-width:0;max-width:none;width:auto;margin:0;padding:0;
  overflow:hidden;text-align:left;background:#fff;border:1px solid var(--line);border-radius:var(--r-lg);
  transition:border-color .2s var(--ease),box-shadow .2s var(--ease)
}
.woocommerce-cart .wp-block-woocommerce-empty-cart-block .wc-block-grid__product:hover{
  border-color:rgba(var(--lime-500-rgb),.6);box-shadow:var(--sh-2)
}
.woocommerce-cart .wp-block-woocommerce-empty-cart-block .wc-block-grid__product-link{display:block;color:var(--tx)}
.woocommerce-cart .wp-block-woocommerce-empty-cart-block .wc-block-grid__product-image{
  display:block;aspect-ratio:4/3;margin:0;overflow:hidden;background:var(--surface)
}
.woocommerce-cart .wp-block-woocommerce-empty-cart-block .wc-block-grid__product-image img{
  display:block;width:100%;height:100%;object-fit:cover
}
.woocommerce-cart .wp-block-woocommerce-empty-cart-block .wc-block-grid__product-title{
  margin:0;padding:17px 18px 0;font:600 15px/1.45 var(--f-disp);letter-spacing:-.015em
}
.woocommerce-cart .wp-block-woocommerce-empty-cart-block .wc-block-grid__product-price{
  margin:10px 18px 16px;font:700 15px/1.5 var(--f-disp);color:var(--tx)
}
.woocommerce-cart .wp-block-woocommerce-empty-cart-block .wc-block-grid__product-price .lmt-aslow{
  display:block;margin-top:3px;font-size:11px;font-weight:500;color:var(--tx-3)
}
.woocommerce-cart .wp-block-woocommerce-empty-cart-block .wc-block-grid__product-add-to-cart{margin:auto 18px 18px}
.woocommerce-cart .wp-block-woocommerce-empty-cart-block .wc-block-grid__product-add-to-cart a{
  display:flex;align-items:center;justify-content:center;min-height:42px;width:100%;padding:10px 12px;
  font-size:12.5px;line-height:1.35;text-align:center;text-decoration:none
}
@media (max-width:900px){
  .woocommerce-cart .wp-block-woocommerce-empty-cart-block .wc-block-grid__products{grid-template-columns:repeat(2,minmax(0,1fr))}
}
@media (max-width:560px){
  .woocommerce-cart .pagehead{padding:24px 0}
  .woocommerce-cart .pagehead+.sec{padding-top:24px}
  .lmt-empty-cart{margin-bottom:30px;padding:28px 20px 24px;border-radius:var(--r-lg)}
  .lmt-empty-cart__icon{width:56px;height:56px;margin-bottom:16px;border-radius:16px}
  .lmt-empty-cart .lmt-empty-cart__text{font-size:13px}
  .lmt-empty-cart__actions{display:grid;grid-template-columns:minmax(0,1fr);gap:10px;margin-top:20px}
  .lmt-empty-cart__actions .btn{width:100%}
  .lmt-empty-cart__perks{gap:9px 16px;margin-top:20px}
  .lmt-empty-cart__perks li{font-size:10.5px}
  .woocommerce-cart .wp-block-woocommerce-empty-cart-block .wc-block-grid__products{gap:12px}
  .woocommerce-cart .wp-block-woocommerce-empty-cart-block .wc-block-grid__product-title{padding:12px 12px 0;font-size:13px}
  .woocommerce-cart .wp-block-woocommerce-empty-cart-block .wc-block-grid__product-price{margin:8px 12px 12px;font-size:13px}
  .woocommerce-cart .wp-block-woocommerce-empty-cart-block .wc-block-grid__product-add-to-cart{margin:auto 12px 12px}
}

.wc-block-components-title,
.wc-block-cart__totals-title,
.wc-block-checkout__main h2{font-family:var(--f-disp);letter-spacing:-.02em;color:var(--tx)}
.wc-block-components-totals-item__value,
.wc-block-components-totals-footer-item__value{font-family:var(--f-disp);font-weight:700;color:var(--tx)}

.wc-block-components-text-input input,
.wc-block-components-textarea,
.wc-block-components-combobox-control input{
  border-radius:var(--r-sm)!important;border-color:var(--line)!important
}
.wc-block-components-text-input.is-active input:focus,
.wc-block-components-text-input input:focus{
  outline:none!important;border-color:var(--lime-500)!important;
  box-shadow:0 0 0 3px rgba(var(--lime-500-rgb),.16)!important
}
.wc-block-components-quantity-selector{border-radius:var(--r-xs);border-color:var(--line)}

/* 区块版的侧栏合计块做成卡片，和站点其它区块一致 */
.wc-block-cart__sidebar .wc-block-components-sidebar,
.wc-block-checkout__sidebar .wc-block-components-sidebar{
  padding:22px;background:var(--surface-2);border:1px solid var(--line);border-radius:var(--r-lg)
}

/* Woo Blocks 给侧栏卡片自己上 sticky（top:24px）—— 会钻进吸顶页眉底下。
   让出头高，基准同商店筛选栏 .rail（吸顶区 + 14px 呼吸位）。窄屏 Woo 自己就不吸了。 */
@media (min-width: 700px) {
  .wc-block-cart__sidebar.is-sticky,
  .wc-block-checkout__sidebar.is-sticky{top:calc(var(--topfix-h) + 14px)}
}

/* ── 移动端结账/购物车 ─────────────────────────────────────────────
   Woo Blocks 的默认移动版式是"能跑"，间距和层级都没细调过：
   页头黑块占近半屏、顶部折叠摘要条是两根 hairline 夹一行裸字、
   各步骤间距不一。这里只做节奏和层级，不动表单控件本身。 */
@media (max-width:700px){
  /* 页头压扁 —— Checkout/Cart 页的任务是表单，不是品牌展示 */
  .woocommerce-checkout .pagehead--woo,
  .woocommerce-cart .pagehead--woo{padding:18px 0 16px}
  .woocommerce-checkout .pagehead__h,
  .woocommerce-cart .pagehead__h{font-size:clamp(22px,7vw,28px)}

  /* 顶部折叠订单摘要收成卡片：原来是上下两根 hairline 夹一行裸字 */
  .wp-block-woocommerce-checkout-order-summary-block{
    margin:2px 0 24px;
    background:var(--surface-2);border:1px solid var(--line);border-radius:var(--r-lg);overflow:hidden
  }
  .wp-block-woocommerce-checkout-order-summary-block .wc-block-components-checkout-order-summary__title{
    border:0;padding:15px 16px
  }
  .wp-block-woocommerce-checkout-order-summary-block .wc-block-components-checkout-order-summary__title-text{
    font-family:var(--f-disp);font-weight:700;font-size:14.5px
  }
  .wp-block-woocommerce-checkout-order-summary-block .wc-block-components-order-summary__content{
    padding:0 16px 16px
  }

  /* 步骤节奏统一：标题收小一档，各步间距拉齐 */
  .wc-block-checkout .wc-block-components-checkout-step{margin:0 0 28px}
  .wc-block-checkout .wc-block-components-checkout-step__title{font-size:16px}
  .wc-block-checkout__guest-checkout-notice{margin-top:-8px;font-size:12.5px;color:var(--tx-3)}

  /* 运费/支付的单选卡：圆角与全站控件一致，行内留白收紧 */
  .wc-block-components-radio-control__option{border-radius:var(--r-sm)!important}

  /* 底部合计卡与下单钮之间的呼吸 */
  .wc-block-checkout__actions{margin-top:20px}
  .wc-block-checkout__terms{font-size:12px;color:var(--tx-3)}

  /* 下单钮到底就结束 —— .sec 的 76px 底padding在手机上是半屏空白 */
  .woocommerce-checkout .sec:last-of-type,
  .woocommerce-cart .sec:last-of-type{padding-bottom:40px}
}

/* ── 订单确认页 ────────────────────────────────────────────────────
   这是整条链路上信任感最强的一屏，宽度收一收、信息分块，比铺满一整行好读 */
.woo .woocommerce-order{max-width:820px}
.woo .woocommerce-thankyou-order-received{
  font-family:var(--f-disp);font-size:20px;font-weight:700;color:var(--tx);margin-bottom:18px
}
.woo ul.order_details{
  display:flex;flex-wrap:wrap;gap:0;margin:0 0 26px;padding:16px 20px;list-style:none;
  background:var(--surface-2);border:1px solid var(--line);border-radius:var(--r-lg)
}
.woo ul.order_details li{
  flex:1 1 auto;padding:0 20px 0 0;margin:0 20px 0 0;border-right:1px solid var(--line);
  font-size:11px;letter-spacing:.06em;text-transform:uppercase;color:var(--tx-3)
}
.woo ul.order_details li:last-child{border-right:0;margin-right:0;padding-right:0}
.woo ul.order_details li strong{
  display:block;margin-top:5px;font-family:var(--f-disp);font-size:14.5px;
  letter-spacing:0;text-transform:none;color:var(--tx)
}
.woo .woocommerce-order h2,.woo .woocommerce-column__title{font-size:18px;margin:26px 0 12px}
.woo .woocommerce-customer-details address{
  padding:16px 18px;border:1px solid var(--line);border-radius:var(--r);
  font-style:normal;line-height:1.8;color:var(--tx-2)
}

/* ── 发货追踪卡（订单详情/访客查询页，inc/tracking.php） ───────────── */
.trk{
  margin:0 0 26px;padding:16px 20px;max-width:820px;
  background:var(--surface-2);border:1px solid var(--line);border-radius:var(--r-lg)
}
.trk__hd{display:flex;align-items:center;gap:9px;margin-bottom:12px}
.trk__hd .ic{width:18px;height:18px;color:var(--lime-600,var(--lime-500))}
.trk__t{margin:0;font-size:15px;font-weight:700}
.trk__date{margin-left:auto;font-size:12px;color:var(--tx-3)}
.trk__row{display:flex;align-items:baseline;gap:14px;padding:7px 0;border-top:1px dashed var(--line);font-size:13.5px}
.trk__row:first-of-type{border-top:0}
.trk__lab{min-width:110px;font-size:11px;letter-spacing:.05em;text-transform:uppercase;color:var(--tx-3)}
.trk__num{font-family:var(--f-mono,ui-monospace,monospace);letter-spacing:.02em}
.trk__go{margin-top:12px;display:inline-flex}
/* 实时轨迹：状态徽章 + 完整时间线（tracking-api.php 供数据） */
.trk__status{display:inline-flex;align-items:center;gap:7px;margin:14px 0 0;padding:5px 12px;
  border-radius:999px;font-size:12px;font-weight:700;letter-spacing:.03em;
  background:color-mix(in srgb,var(--lime-500) 14%,transparent);color:var(--lime-700,#5c8a1f)}
.trk__status .ic{width:14px;height:14px}
.trk__status--delivered{background:var(--lime-500);color:#08131a}
.trk__status--exception,.trk__status--failed,.trk__status--expired{background:#fdecea;color:#b3261e}
.trk__status--customs{background:#fff4e0;color:#8a5a00}
.trk__ev{margin:14px 0 0;padding:0 0 0 14px;list-style:none;border-left:2px solid var(--line);
  max-height:280px;overflow-y:auto}
.trk__ev-i{position:relative;padding:0 0 12px 14px;font-size:13px;line-height:1.5}
.trk__ev-i::before{content:'';position:absolute;left:-20px;top:6px;width:8px;height:8px;
  border-radius:50%;background:var(--line)}
.trk__ev-i:first-child::before{background:var(--lime-500);box-shadow:0 0 0 3px color-mix(in srgb,var(--lime-500) 25%,transparent)}
.trk__ev-i time{display:block;font-size:11px;letter-spacing:.04em;color:var(--tx-3);
  font-family:var(--f-mono,ui-monospace,monospace)}
.trk__ev-i span{color:var(--tx)}
.trk__ev-i em{color:var(--tx-3);font-style:normal}

/* 提示条 */
.woocommerce-message,.woocommerce-info,.woocommerce-error{
  display:flex;align-items:center;gap:12px;flex-wrap:wrap;
  padding:14px 18px;margin:0 0 22px;border-radius:var(--r-sm);
  border-top:0;background:var(--surface);font-size:14px;list-style:none
}
.woocommerce-message{background:#f1f8e6;border-left:3px solid var(--lime-500)}
.woocommerce-info{background:#eef3f8;border-left:3px solid #4a90d9}
.woocommerce-error{background:#fdecec;border-left:3px solid var(--hot)}
.woocommerce-message::before,.woocommerce-info::before,.woocommerce-error::before{display:none}
.woocommerce-message .button,.woocommerce-info .button{margin-left:auto;height:38px;padding:0 16px;font-size:13px}

/* 搜索/筛选 0 结果时的推荐块 */
.nopeek{margin-top:8px}
.nopeek__h{font-size:15px;font-weight:600;margin:0 0 14px;color:var(--ink-2,#4a5563)}

/* ── 询价篮 ────────────────────────────────────────────────────────── */
.rfq{display:grid;grid-template-columns:minmax(0,1.15fr) minmax(0,1fr);gap:32px;align-items:start}
.rfq__h{font-size:19px;margin-bottom:16px}

.rfq__items{border:1px solid var(--line);border-radius:var(--r);overflow:hidden}
.rfq__item{display:flex;align-items:center;gap:14px;padding:14px 16px}
.rfq__item+.rfq__item{border-top:1px solid var(--line-2)}
.rfq__thumb{width:56px;height:56px;flex:none;display:grid;place-items:center;background:var(--surface-2);border-radius:var(--r-xs);overflow:hidden}
.rfq__thumb img{width:100%;height:100%;object-fit:cover}
.rfq__thumb .ic{width:22px;height:22px;color:var(--tx-3)}
.rfq__meta{display:flex;flex-direction:column;gap:2px;min-width:0;flex:1}
.rfq__name{font-family:var(--f-disp);font-weight:600;font-size:14px}
.rfq__name:hover{color:var(--lime-700)}
.rfq__meta em{font-style:normal;font-size:11.5px;color:var(--tx-3)}
.rfq__price{font-weight:600}
.rfq__qty{font-family:var(--f-disp);font-weight:700;font-size:15px;color:var(--tx-2)}
.rfq__x{display:grid;place-items:center;width:30px;height:30px;border-radius:var(--r-full);color:var(--tx-3);transition:all .2s var(--ease)}
.rfq__x:hover{background:#fdecec;color:var(--hot)}
.rfq__x .ic{width:15px;height:15px}
.rfq__hint{margin-top:12px;font-size:12px;color:var(--tx-3)}

.rfq__form{padding:24px;background:var(--surface-2);border:1px solid var(--line);border-radius:var(--r-lg)}
.rfq__row{margin-bottom:14px}
.rfq__row label{display:block;font-size:12.5px;font-weight:600;margin-bottom:5px}
.rfq__row input,.rfq__row textarea{
  width:100%;padding:11px 13px;border:1px solid var(--line);border-radius:var(--r-sm);
  font-size:14px;font-family:inherit;background:#fff
}
.rfq__row textarea{resize:vertical;min-height:110px}
.rfq__row input:focus,.rfq__row textarea:focus{outline:none;border-color:var(--lime-500);box-shadow:0 0 0 3px rgba(var(--lime-500-rgb),.16)}
.rfq__grid2{display:grid;grid-template-columns:1fr 1fr;gap:14px}
.rfq__legal{margin-top:12px;font-size:11.5px;color:var(--tx-3);text-align:center}
/* 蜜罐字段：对人不可见，但不能用 display:none —— 部分机器人会跳过被隐藏的字段 */
.rfq__hp{position:absolute;left:-9999px;width:1px;height:1px;overflow:hidden}

.rfq-note{
  display:flex;align-items:center;gap:10px;padding:13px 16px;margin-bottom:22px;
  border-radius:var(--r-sm);font-size:14px
}
.rfq-note .ic{width:18px;height:18px;flex:none}
.rfq-note--ok{background:#f1f8e6;border-left:3px solid var(--lime-500);color:#2c4b12}
.rfq-note--err{background:#fdecec;border-left:3px solid var(--hot);color:#7a2020}


/* 商品页里询价按钮跟加购按钮并排 */
.rfq-add{display:inline-block;margin:0}
.woo div.product form.cart+.rfq-add{margin-top:-10px}

@media (max-width:900px){.rfq{grid-template-columns:1fr;gap:24px}}
@media (max-width:1080px){.woo ul.products{grid-template-columns:repeat(3,minmax(0,1fr))}}
@media (max-width:900px){
  .postlist{grid-template-columns:repeat(2,minmax(0,1fr))}
  .woo div.product{grid-template-columns:1fr;gap:24px}
  .woo .woocommerce-ordering{float:none;margin:0 0 16px}
  /* 平板竖屏单列后画廊 1:1 占满 ~700px 高，购买区被顶出首屏。
     收窄到 520px——图片仍清晰，标题/价格/按钮回到一屏内 */
  .woo div.product .woocommerce-product-gallery{max-width:520px}
}
@media (max-width:600px){
  .postlist{grid-template-columns:1fr}
  .prose{font-size:15.5px}
  .woo ul.products{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}
  .woo ul.products li.product .card__media{height:140px}
}

/* ── 联系页 ────────────────────────────────────────────────────────
   先给"多久能得到回应"，再让对方填表 —— 上来就是一张空表单转化最差 */
.contact{display:grid;grid-template-columns:minmax(0,.85fr) minmax(0,1.15fr);gap:36px;align-items:start}
.contact__h{font-size:clamp(21px,2.2vw,27px);letter-spacing:-.02em}
.contact__lead{margin-top:12px;font-size:14.5px;line-height:1.7;color:var(--tx-2)}
.contact__list{margin:26px 0 0;display:flex;flex-direction:column;gap:16px}
.contact__list li{display:flex;gap:12px}
.contact__list .ic{width:19px;height:19px;flex:none;margin-top:2px;color:var(--lime-700)}
.contact__list span{display:flex;flex-direction:column;gap:2px}
.contact__list b{font-size:13px}
.contact__list a{font-size:13.5px;color:var(--lime-700)}
.contact__list em{font-style:normal;font-size:13px;color:var(--tx-3)}
.contact__addr{
  margin-top:24px;padding:16px 18px;border-radius:var(--r);
  background:var(--surface-2);border:1px solid var(--line);
  font-size:13.5px;line-height:1.7;color:var(--tx-2)
}
.contact__addr b{display:block;margin-bottom:4px;font-size:13px;color:var(--tx)}
.contact__form{padding:26px;background:#fff;border:1px solid var(--line);border-radius:var(--r-lg);box-shadow:var(--sh-2)}
.contact__form select{
  width:100%;padding:11px 13px;border:1px solid var(--line);border-radius:var(--r-sm);
  font-size:14px;background:#fff;color:var(--tx)
}
@media (max-width:900px){.contact{grid-template-columns:1fr;gap:26px}}

/* ── FAQ（帮助中心用原生 <details>，无需 JS）──────────────────────── */
.prose details,.wide details{
  margin:0 0 10px;padding:0;border:1px solid var(--line);border-radius:var(--r);background:#fff
}
.prose details[open],.wide details[open]{border-color:rgba(var(--lime-500-rgb),.55)}
.prose summary,.wide summary{
  /* ★ 用 flex 而不是给 ::after 加 float：问题折行时 float 的标记会掉到
     最后一行的右下角（窄屏上问题几乎都折行，所以只在手机上看得出来）。
     flex + align-items:start 让它始终对齐第一行。 */
  display:flex;align-items:flex-start;justify-content:space-between;gap:14px;
  padding:15px 18px;cursor:pointer;list-style:none;
  font-family:var(--f-disp);font-weight:600;font-size:15px;color:var(--tx)
}
.prose summary::-webkit-details-marker,.wide summary::-webkit-details-marker{display:none}
.prose summary::after,.wide summary::after{
  content:"+";flex:none;font-size:19px;line-height:1.2;color:var(--lime-700);transition:transform .2s var(--ease)
}
.prose details[open] summary::after,.wide details[open] summary::after{content:"–"}
.prose details > *:not(summary),.wide details > *:not(summary){
  margin:0;padding:0 18px 16px;font-size:14.5px;line-height:1.75;color:var(--tx-2)
}

/* ── 资料下载表 ────────────────────────────────────────────────────── */
.dl-table{width:100%;border-collapse:separate;border-spacing:0;border:1px solid var(--line);border-radius:var(--r);overflow:hidden;font-size:14px}
.dl-table th{padding:12px 16px;text-align:left;font-size:12.5px;background:var(--surface-2);color:var(--tx)}
.dl-table td{padding:13px 16px;border-top:1px solid var(--line-2);color:var(--tx-2)}
.dl-table a{color:var(--lime-700);font-weight:600}
/* ★ 窄屏：表格四列硬挤在 390px 里，"LimerCam AI H7 — Datasheet" 会折成三行，
   整张表读不成。给个 min-width 让它真正溢出、由外层横向滚动 ——
   之前只写了 overflow-x:auto，但表格本身仍然收缩到容器宽度，等于没生效。 */
@media (max-width:640px){
  .prose .dl-table,.wide .dl-table{min-width:560px}
  /* 滚动容器：表格自己滚，页面不跟着横向滚 */
  .prose .dl-scroll,.wide .dl-scroll{
    overflow-x:auto;-webkit-overflow-scrolling:touch;
    /* 右缘的渐隐阴影提示"还有内容" —— 纯 CSS，靠 background-attachment:local
       让它在滚到底时自动消失，不用 JS 监听 scroll。
       没有这个提示的话，横向可滚在手机上几乎发现不了。 */
    background:
      linear-gradient(to right, #fff 30%, rgba(255,255,255,0)) left / 24px 100% no-repeat local,
      linear-gradient(to left,  #fff 30%, rgba(255,255,255,0)) right / 24px 100% no-repeat local,
      radial-gradient(farthest-side at 0 50%, rgba(21,32,41,.14), transparent) left / 12px 100% no-repeat scroll,
      radial-gradient(farthest-side at 100% 50%, rgba(21,32,41,.14), transparent) right / 12px 100% no-repeat scroll;
  }
}

/* ═══════════ 行业方案：归档与详情 ═══════════ */

.solgrid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px}
.solcard{
  position:relative;display:flex;flex-direction:column;overflow:hidden;
  background:#fff;border:1px solid var(--line);border-radius:var(--r-lg);
  box-shadow:var(--sh-1);transition:box-shadow .25s var(--ease-out),transform .25s var(--ease-out)
}
.solcard:hover{transform:translateY(-3px);box-shadow:var(--sh-3)}
.solcard__media{position:relative;display:block;height:186px;background:var(--ink-900);overflow:hidden}
.solcard__media .shot{position:absolute;inset:0}
.solcard__media .shot__img{width:100%;height:100%;object-fit:cover;filter:saturate(.72) brightness(.86)}
.solcard__media .dv{width:100%;height:100%;opacity:.85}
.solcard__body{padding:18px 20px 20px;display:flex;flex-direction:column;flex:1}
.solcard__t{font-size:17px;letter-spacing:-.01em}
/* 整卡可点：跟商品卡同一套拉伸链接的做法 */
.solcard__t a::after{content:"";position:absolute;inset:0;z-index:1}
.solcard__p{margin-top:9px;font-size:13px;line-height:1.6;color:var(--tx-3)}
.solcard__go{
  margin-top:auto;padding-top:14px;display:inline-flex;align-items:center;gap:7px;
  font:700 12.5px/1 var(--f-disp);color:var(--lime-700)
}
.solcard__go .ic{width:15px;height:15px;transition:transform .2s var(--ease-out)}
.solcard:hover .solcard__go .ic{transform:translateX(3px)}

/* 详情页：同一套 .sol 三栏，只是场景图更高、标题按 h1 走 */
.sol--single .sol__hero{min-height:300px}
.sol--single .sol__copy{padding:32px 26px}
.sol--single .sol__copy h1{font-size:clamp(23px,2.4vw,31px);letter-spacing:-.025em;color:#fff}
.sol--single .sol__copy p{margin-top:12px;font-size:13.5px;max-width:32ch}
.sol__body{margin-top:34px}

.solcta{
  display:flex;align-items:center;justify-content:space-between;gap:26px;flex-wrap:wrap;
  padding:28px 32px;border-radius:var(--r-lg);
  background:linear-gradient(120deg,var(--ink-900),var(--ink-800));
  border:1px solid rgba(var(--lime-500-rgb),.22)
}
.solcta h2{font-size:clamp(19px,2vw,24px);color:#fff;letter-spacing:-.02em}
.solcta p{margin-top:9px;font-size:13.5px;line-height:1.6;color:#b3c2ce;max-width:52ch}
.solcta__act{display:flex;gap:11px;flex-wrap:wrap}

@media (max-width:1080px){.solgrid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media (max-width:640px){
  .solgrid{grid-template-columns:1fr}
  .solcta{padding:22px}
}

/* 订阅结果提示 */
.subnote{margin-top:10px;font-size:12px;line-height:1.5}
.subnote--ok{color:var(--lime-400)}
.subnote--err{color:#f2a2a2}
.join .subnote{margin-top:9px;font-size:12.5px}
.join .subnote--ok{color:var(--lime-700)}
.join .subnote--err{color:#c0392b}

/* ★ 商品详情页保留了 Woo 的样式表（购物车/结算/账户要用），于是页面下方
   「相关商品」卡片的价格会被 Woo 的 `.woocommerce ul.products li.product .price`
   染成橄榄色 #958e09 —— 白底上只有 3.41:1。这里按同等权重压回来。 */
.woo ul.products li.product .card__foot .price,
.woo ul.products li.product .card__foot .price .amount{color:var(--tx)}

/* ── 订单查询表单 ─────────────────────────────────────────────────── */
/* Woo 的 track_order 是一张裸表单：label 与 input 同行、没有间距。
   页面本身文字不多，正文限宽居中，表单跟着走。 */
.woo .track_order{max-width:520px;margin:26px auto 0;padding:24px;
  background:#fff;border:1px solid var(--line);border-radius:var(--r-lg);box-shadow:var(--sh-2)}
.woo .track_order .form-row{display:block;margin:0 0 14px;width:auto;float:none;padding:0}
.woo .track_order label{display:block;margin-bottom:6px;font-size:13px;font-weight:600;color:var(--tx)}
.woo .track_order .button{width:100%}
.woo .track_order::before,.woo .track_order::after{display:none}
/* 表单前面那段说明也跟着限宽，否则一行拉满 1320px 很难读 */
.woo > .wide > p{max-width:72ch;margin-inline:auto}

/* ── 询价单空状态 ─────────────────────────────────────────────────── */
/* 靠左的一段字加一个按钮，右边空掉大半屏，看起来像页面没加载完 */
.rfq-empty{max-width:520px;margin:8px auto 0;padding:38px 32px;text-align:center;
  background:var(--surface-2);border:1px solid var(--line);border-radius:var(--r-lg)}
.rfq-empty .ic{display:block;margin:0 auto;width:34px;height:34px;color:var(--tx-3);stroke-width:1.4}
.rfq-empty h2{margin-top:14px;font-size:19px}
.rfq-empty p{margin:10px auto 20px;max-width:44ch;font-size:13.5px;line-height:1.65;color:var(--tx-3)}
/* 原来这里有一串 !important 去压 .prose 的段落样式 —— 现在空状态
   在 .wide 容器里（page.php 认出询价页），不再需要 */

/* ── 法务页的审阅警示 ─────────────────────────────────────────────── */
/* ★ 这不是排版偏好：条款/隐私/退换三页现在是未经法务审阅的占位稿，
   警示混在正文第一段里，很容易被当成普通说明直接上线。做成挡不住的色块。 */
.prose .lmt-warn{
  margin-bottom:28px;padding:16px 18px;border-radius:var(--r);
  background:#fff8e6;border:1px solid #f0c65a;border-left:4px solid #d9a318;
  font-size:14px;line-height:1.65;color:#5b4708
}
.prose .lmt-warn strong{color:#7a5c00}

/* About 页那句导语 */
.prose .lead{font-size:18px;line-height:1.6;color:var(--tx)}

/* ── 窄屏表单 ───────────────────────────────────────────────────────
   询价与联系表单的"姓名+邮箱""公司+电话"是两列。390px 下每列只剩约
   145px，填一个工作邮箱要横向滚动着看，是最容易让人放弃填写的地方。
   ★ 断点取 560px 而不是常见的 480px：iPhone 竖屏 390、Android 常见 412，
   都在 480 以上 —— 按 480 切的话真机上根本不生效。 */
@media (max-width:560px){
  .rfq__grid2{grid-template-columns:1fr;gap:0}
  /* 表单控件的字号必须 ≥16px，否则 iOS Safari 聚焦时会自动放大整个页面，
     用户填完一个字段就得手动缩回去 */
  .rfq__row input,.rfq__row textarea,.rfq__row select,
  .contact__form input,.contact__form select,.contact__form textarea,
  .woo input[type=text],.woo input[type=email],
  .woo input[type=tel],.woo input[type=password]{font-size:16px}
}

/* 「查看订单」页补的电汇收款信息 */
.lmt-paynote{margin-top:26px;padding:20px 22px;border-radius:var(--r);
  background:#fff8e6;border:1px solid #f0c65a;border-left:4px solid #d9a318}
.lmt-paynote h2{margin:0 0 8px;font-size:17px;color:#5b4708}
.lmt-paynote p{margin:0 0 10px;font-size:14px;line-height:1.7;color:#5b4708}
.lmt-paynote h2:not(:first-child){margin-top:14px;font-size:14px}
.lmt-paynote ul{margin:0;padding:0;list-style:none;font-size:14px;line-height:1.8;color:#5b4708}
.lmt-paynote li strong{color:#3d2f04}

/* ── 商店左栏分选 ────────────────────────────────────────────────────
   Seeed 式：左侧分选、右侧网格。分组顺序见 template-parts/shop-rail.php。 */
.shop-grid{display:grid;grid-template-columns:232px minmax(0,1fr);gap:28px;align-items:start}
.rail{position:sticky;top:calc(var(--topfix-h) + 14px)}
/* 折叠条的 summary 只在窄屏出现；桌面端整栏常开 */
.rail__m>summary{display:none;align-items:center;justify-content:space-between;
  height:42px;padding:0 14px;border:1px solid var(--line);border-radius:var(--r-xs);
  background:#fff;font-weight:700;font-size:13.5px;cursor:pointer;list-style:none}
.rail__m>summary::-webkit-details-marker{display:none}
.rail__chev{width:15px;height:15px;color:var(--tx-3);transition:transform .2s var(--ease)}
.rail__m[open]>summary .rail__chev{transform:rotate(180deg)}
.rail__on{display:inline-block;width:7px;height:7px;border-radius:50%;background:var(--lime-500);margin-left:5px;vertical-align:2px}

.rail__grp{padding:14px 0;border-bottom:1px solid var(--line-2)}
.rail__grp:first-of-type{padding-top:4px}
.rail__h{margin:0 0 10px;font:700 11px/1 var(--f-disp);letter-spacing:.09em;text-transform:uppercase;color:var(--tx-3)}
.rail__list{list-style:none;margin:0;padding:0}
.rail__opt{display:flex;align-items:center;gap:9px;padding:5px 0;font-size:13.5px;color:var(--tx-2);cursor:pointer}
.rail__opt:hover{color:var(--tx)}
.rail__opt input{accent-color:var(--lime-600);width:15px;height:15px;flex:none;margin:0;cursor:pointer}
.rail__opt.is-cur{font-weight:600;color:var(--tx)}
/* 类目两层：父类目行略重，子类目缩进一格、弱化一档 */
.rail__opt--top{font-weight:600;color:var(--tx)}
.rail__opt--top .rail__t{letter-spacing:-.005em}
.rail__opt--sub{padding-left:24px;color:var(--tx-3)}
.rail__opt--sub:hover{color:var(--tx)}
.rail__t{min-width:0}
.rail__n{margin-left:auto;font-size:11.5px;color:var(--tx-3)}
.rail__all{display:inline-block;margin-top:8px;font-size:12.5px;font-weight:600;color:var(--lime-700)}
.rail__all:hover{color:var(--lime-600);text-decoration:underline}
.rail__price{display:flex;align-items:center;gap:7px}
.rail__price input{
  width:100%;min-width:0;height:34px;padding:0 9px;border:1px solid var(--line);
  border-radius:var(--r-xs);font-size:13px;background:#fff;color:var(--tx)
}
.rail__price input:focus{outline:none;border-color:var(--lime-500);box-shadow:0 0 0 3px rgba(var(--lime-500-rgb),.16)}
.rail__price span{color:var(--tx-3)}
.rail__acts{display:flex;align-items:center;gap:14px;padding-top:14px}
.rail__apply{height:36px;padding:0 20px;font-size:13px}
.rail__clear{font-size:12.5px;font-weight:600;color:var(--tx-3)}
.rail__clear:hover{color:var(--hot)}

@media (max-width:980px){
  .shop-grid{grid-template-columns:1fr;gap:18px}
  .rail{position:static}
  .rail__m>summary{display:flex}
  .rail__form{padding:12px 14px 14px;border:1px solid var(--line);border-top:0;
    border-radius:0 0 var(--r-xs) var(--r-xs);background:#fff}
  .rail__m>summary{border-radius:var(--r-xs)}
  .rail__m[open]>summary{border-radius:var(--r-xs) var(--r-xs) 0 0}
}
.lmt-vchip__p{font-weight:400;opacity:.72;font-size:.92em}

/* ══════════════════════════════════════════════════════════════════
   bbPress 论坛主题化（阶段一社区）
   默认 bbPress 灰白表格套进 ink/lime 语言：卡式行、lime 强调、
   与阶梯表/账户控制台同一套圆角与分割线。
   ══════════════════════════════════════════════════════════════════ */
#bbpress-forums{font-size:14px;color:var(--tx)}
#bbpress-forums .bbp-breadcrumb{
  margin:0 0 18px;font-size:12.5px;color:var(--tx-3)
}
#bbpress-forums .bbp-breadcrumb a{color:var(--tx-3);font-weight:600}
#bbpress-forums .bbp-breadcrumb a:hover{color:var(--lime-700)}
#bbpress-forums .bbp-breadcrumb .bbp-breadcrumb-current{color:var(--tx)}

#bbpress-forums ul.bbp-forums,#bbpress-forums ul.bbp-topics,
#bbpress-forums ul.bbp-replies,#bbpress-forums ul.bbp-search-results{
  margin:0;padding:0;list-style:none;border:1px solid var(--line);
  border-radius:var(--r);overflow:hidden;background:#fff
}
#bbpress-forums li.bbp-header{
  display:flex;gap:16px;padding:10px 18px;background:var(--surface-2);
  border-bottom:1px solid var(--line);
  font-size:10.5px;font-weight:700;letter-spacing:.12em;text-transform:uppercase;color:var(--tx-3)
}
#bbpress-forums li.bbp-footer{padding:10px 18px;border-top:1px solid var(--line);
  background:var(--surface-2);font-size:12px;color:var(--tx-3)}
#bbpress-forums .bbp-body>ul>li{
  display:flex;align-items:center;gap:18px;padding:14px 18px;
  border-top:1px solid var(--line-2)
}
#bbpress-forums .bbp-body>ul>li:first-child{border-top:0}
#bbpress-forums .bbp-body>ul>li:nth-child(even){background:var(--surface-2)}
#bbpress-forums .bbp-body>ul>li:hover{background:rgba(var(--lime-500-rgb),.05)}

/* 板块行 */
#bbpress-forums .bbp-forum-info{flex:1;min-width:0}
#bbpress-forums .bbp-forum-title{
  display:block;font-family:var(--f-disp);font-size:16px;font-weight:700;
  color:var(--tx);text-decoration:none
}
#bbpress-forums .bbp-forum-title:hover{color:var(--lime-700)}
#bbpress-forums .bbp-forum-content{margin:4px 0 0;font-size:13px;color:var(--tx-3)}
#bbpress-forums .bbp-forum-topic-count,
#bbpress-forums .bbp-forum-reply-count{
  flex:none;min-width:64px;text-align:center;font-size:13px;color:var(--tx-2)
}
#bbpress-forums .bbp-forum-freshness{flex:none;width:170px;font-size:12px;color:var(--tx-3);text-align:right}
#bbpress-forums .bbp-forum-freshness a{color:var(--tx-2);font-weight:600}
#bbpress-forums .bbp-forum-freshness a:hover{color:var(--lime-700)}
#bbpress-forums .bbp-author-link{font-size:inherit;color:inherit}

/* 话题行 */
#bbpress-forums .bbp-topics .bbp-topic-title{flex:1;min-width:0}
#bbpress-forums .bbp-topic-title a.bbp-topic-permalink{
  font-weight:600;font-size:14.5px;color:var(--tx)
}
#bbpress-forums .bbp-topic-title a.bbp-topic-permalink:hover{color:var(--lime-700)}
#bbpress-forums .bbp-topic-meta{font-size:12px;color:var(--tx-3);margin-top:3px}
#bbpress-forums .bbp-topic-voice-count,#bbpress-forums .bbp-topic-reply-count{
  flex:none;min-width:56px;text-align:center;font-size:13px;color:var(--tx-2)
}
#bbpress-forums .bbp-topic-freshness{flex:none;width:150px;text-align:right;font-size:12px;color:var(--tx-3)}

/* 置顶/关闭/已解决等状态标 */
#bbpress-forums .bbp-row-actions{font-size:11px}
#bbpress-forums .sticky,#bbpress-forums .super-sticky{
  background:rgba(var(--lime-500-rgb),.07)!important;
  box-shadow:inset 3px 0 0 var(--lime-500)
}
#bbpress-forums .status-closed .bbp-topic-permalink{color:var(--tx-3)}

/* 单话题页的回复列表 */
#bbpress-forums .bbp-replies .bbp-body>ul>li{flex-direction:column;align-items:stretch;gap:0}
#bbpress-forums .bbp-reply-header{display:flex;justify-content:space-between;gap:12px;
  padding:8px 0;font-size:12px;color:var(--tx-3)}
#bbpress-forums .bbp-reply-author{display:flex;align-items:center;gap:10px;padding:6px 0 10px}
#bbpress-forums .bbp-reply-author img{border-radius:50%}
#bbpress-forums .bbp-reply-author .bbp-author-name{font-weight:700;color:var(--tx)}
#bbpress-forums .bbp-reply-author .bbp-author-role{
  font-size:10px;letter-spacing:.08em;text-transform:uppercase;color:var(--lime-700);
  background:rgba(var(--lime-500-rgb),.12);border-radius:4px;padding:2px 6px;margin-left:6px
}
#bbpress-forums .bbp-reply-content{font-size:14px;line-height:1.75;color:var(--tx)}
#bbpress-forums .bbp-reply-content p{margin:0 0 10px}

/* 发帖/回复表单 */
#bbpress-forums fieldset.bbp-form{
  margin:22px 0 0;padding:20px;border:1px solid var(--line);
  border-radius:var(--r);background:#fff
}
#bbpress-forums fieldset.bbp-form legend{
  padding:0 8px;font-family:var(--f-disp);font-size:15px;font-weight:700
}
#bbpress-forums fieldset.bbp-form label{display:block;margin:10px 0 6px;
  font-size:11px;font-weight:700;letter-spacing:.08em;text-transform:uppercase;color:var(--tx-2)}
#bbpress-forums input[type=text],#bbpress-forums input[type=password],
#bbpress-forums input[type=email],#bbpress-forums textarea,#bbpress-forums select{
  width:100%;min-height:44px;padding:10px 12px;font-size:14px;color:var(--tx);
  background:#fff;border:1px solid var(--line);border-radius:var(--r-xs);
  transition:border-color .15s var(--ease),box-shadow .15s var(--ease)
}
#bbpress-forums textarea{min-height:160px;resize:vertical}
#bbpress-forums input:focus,#bbpress-forums textarea:focus,#bbpress-forums select:focus{
  border-color:var(--lime-500);outline:none;
  box-shadow:0 0 0 3px rgba(var(--lime-500-rgb),.18)
}
#bbpress-forums .bbp-submit-wrapper{margin-top:14px}
#bbpress-forums button[type=submit],#bbpress-forums .bbp-submit{
  display:inline-flex;align-items:center;justify-content:center;
  height:44px;padding:0 26px;border:0;border-radius:var(--r-sm);cursor:pointer;
  background:var(--lime-500);color:var(--on-accent);
  font-family:var(--f-disp);font-size:14px;font-weight:600;
  box-shadow:var(--sh-lime);transition:background .15s var(--ease)
}
#bbpress-forums button[type=submit]:hover,#bbpress-forums .bbp-submit:hover{background:var(--lime-400)}

/* 通知条/分页/统计 */
#bbpress-forums .bbp-template-notice,#bbpress-forums .bbp-template-notice.info,
#bbpress-forums .bbp-template-notice.important{
  padding:12px 16px;margin:0 0 16px;border-radius:var(--r-xs);
  background:rgba(var(--lime-500-rgb),.1);border:1px solid rgba(var(--lime-500-rgb),.3);
  color:var(--tx);font-size:13px
}
#bbpress-forums .bbp-template-notice.error,#bbpress-forums .bbp-template-notice.warning{
  background:#fff4f1;border-color:#f3c5bb;color:#8c2f1b
}
#bbpress-forums .bbp-pagination{display:flex;justify-content:space-between;align-items:center;
  margin:14px 0;font-size:12.5px;color:var(--tx-3)}
#bbpress-forums .bbp-pagination-links a,#bbpress-forums .bbp-pagination-links span{
  display:inline-block;padding:4px 10px;margin-left:4px;border-radius:var(--r-xs);
  border:1px solid var(--line);background:#fff;color:var(--tx-2);font-size:12.5px
}
#bbpress-forums .bbp-pagination-links span.current{background:var(--ink-900);color:#fff;border-color:var(--ink-900)}
#bbpress-forums .bbp-pagination-links a:hover{border-color:var(--lime-500);color:var(--lime-700)}
#bbpress-forums .bbp-search-form{margin:0 0 18px}
#bbpress-forums .bbp-search-form #bbp_search{max-width:340px;display:inline-block}
#bbpress-forums .bbp-search-form .button{height:44px;vertical-align:top}
#bbpress-forums .bbp-topic-tags{font-size:11.5px;color:var(--tx-3)}
#bbpress-forums .bbp-topic-tags a{
  display:inline-block;padding:2px 8px;margin-left:5px;border-radius:var(--r-full);
  background:var(--surface-2);border:1px solid var(--line);color:var(--tx-2)
}
#bbpress-forums .bbp-topic-tags a:hover{border-color:var(--lime-500);color:var(--lime-700)}
/* 登录引导条（游客看话题页时的注册提示） */
#bbpress-forums .bbp-logged-in{
  padding:16px 18px;border:1px dashed rgba(var(--lime-500-rgb),.4);border-radius:var(--r);
  background:rgba(var(--lime-500-rgb),.05);font-size:13.5px
}
#bbpress-forums .bbp-logged-in a{color:var(--lime-700);font-weight:700}

@media (max-width:640px){
  #bbpress-forums .bbp-forum-freshness,#bbpress-forums .bbp-topic-freshness{width:110px}
  #bbpress-forums li.bbp-header .bbp-forum-freshness,
  #bbpress-forums li.bbp-header .bbp-topic-freshness{display:none}
  #bbpress-forums .bbp-body>ul>li{flex-wrap:wrap;padding:12px 14px}
}

/* /community/ 页：论坛导语 + 「外部社区」分隔标题（.wide 文章里，不走 .prose 节奏） */
.comm-lede{margin:0 0 18px;font-size:14px;color:var(--tx-2);max-width:64ch}
.comm-lede a{color:var(--lime-700);font-weight:600}
.comm-more{
  margin:34px 0 4px;padding-top:26px;border-top:1px solid var(--line);
  font-family:var(--f-disp);font-size:20px;font-weight:700;letter-spacing:-.01em;color:var(--tx)
}
.comm-more__p{margin:0 0 4px;font-size:13px;color:var(--tx-3)}
/* 分隔标题后的卡片区顶部留白收紧（resgrid 自带 1.6em 顶距） */
.comm-more__p+.resgrid{margin-top:1em}

/* ══════════ 文档中心 /docs/ ══════════ */

/* 归档页搜索条：压在深色页头里 */
.docsearch{
  display:flex;align-items:center;gap:0;margin-top:22px;max-width:620px;
  background:#fff;border-radius:14px;padding:6px 6px 6px 16px;
  box-shadow:0 10px 30px rgba(0,0,0,.28);
}
.docsearch__ic{width:17px;height:17px;color:var(--tx-3);flex:none}
.docsearch input{flex:1;min-width:0;border:0;outline:0;background:none;font-size:14.5px;color:var(--tx);padding:10px 12px}
.docsearch input::placeholder{color:var(--tx-3)}
.docsearch .btn{flex:none}
@media (max-width:560px){ .docsearch .btn{padding:9px 14px;font-size:13px} }

/* 分类卡栅格 */
.doccats{display:grid;grid-template-columns:repeat(3,1fr);gap:18px;list-style:none;margin:0;padding:0}
.doccat{
  background:var(--card,#fff);border:1px solid var(--line);border-radius:16px;padding:22px 22px 18px;
  display:flex;flex-direction:column;transition:border-color .15s,box-shadow .15s;
}
.doccat:hover{border-color:var(--lime-500);box-shadow:0 8px 24px rgba(15,23,32,.06)}
.doccat__h{
  display:flex;align-items:baseline;justify-content:space-between;gap:10px;
  font-family:var(--f-disp);font-size:17.5px;font-weight:700;letter-spacing:-.01em;color:var(--tx);text-decoration:none;
}
.doccat__n{
  font-size:11.5px;font-weight:600;color:var(--lime-700);background:var(--lime-300);
  border-radius:99px;padding:2px 9px;flex:none;
}
.doccat__p{margin:8px 0 0;font-size:13px;line-height:1.55;color:var(--tx-2)}
.doccat__l{list-style:none;margin:14px 0 0;padding:14px 0 0;border-top:1px solid var(--line-2);flex:1}
.doccat__l li{margin:0}
.doccat__l a{
  display:block;padding:5px 0 5px 14px;position:relative;
  font-size:13.5px;color:var(--tx-2);text-decoration:none;line-height:1.45;
}
.doccat__l a::before{content:"";position:absolute;left:0;top:13px;width:5px;height:5px;border-radius:50%;background:var(--line)}
.doccat__l a:hover{color:var(--lime-700)}
.doccat__l a:hover::before{background:var(--lime-500)}
.doccat__go{margin-top:12px;font-size:12.5px;font-weight:700;color:var(--lime-700);text-decoration:none}
@media (max-width:960px){ .doccats{grid-template-columns:repeat(2,1fr)} }
@media (max-width:620px){ .doccats{grid-template-columns:1fr} }

/* 文档列表（搜索结果 / 分类归档 / 最近更新共用） */
.doclist{list-style:none;margin:0;padding:0;max-width:820px}
.doclist--2col{display:grid;grid-template-columns:1fr 1fr;gap:0 36px;max-width:none}
.doclist__i{padding:16px 0;border-bottom:1px solid var(--line-2)}
.doclist__t{font-size:15.5px;font-weight:650;color:var(--tx);text-decoration:none}
.doclist__t:hover{color:var(--lime-700)}
.doclist__i p{margin:6px 0 0;font-size:13px;line-height:1.55;color:var(--tx-2)}
.doclist__meta{display:block;margin-top:6px;font-size:11.5px;color:var(--tx-3)}
.doclist__meta a{color:var(--lime-700);text-decoration:none;font-weight:600}
.docres__n{display:flex;align-items:baseline;justify-content:space-between;gap:14px;margin:0 0 6px;font-size:14px;color:var(--tx-2)}
.docsecs__h{
  margin:44px 0 4px;padding-top:30px;border-top:1px solid var(--line);
  font-family:var(--f-disp);font-size:21px;font-weight:700;letter-spacing:-.01em;color:var(--tx);
}
.docsubchips{display:flex;flex-wrap:wrap;gap:8px;list-style:none;margin:0 0 8px;padding:0}
.docsubchips a{
  display:inline-flex;align-items:baseline;gap:7px;padding:7px 14px;border-radius:99px;
  border:1px solid var(--line);font-size:13px;font-weight:600;color:var(--tx-2);text-decoration:none;
}
.docsubchips a:hover{border-color:var(--lime-500);color:var(--lime-700)}
.docsubchips em{font-style:normal;font-size:11px;color:var(--tx-3)}
@media (max-width:720px){ .doclist--2col{grid-template-columns:1fr} }

/* ── 文档详情页三栏 ── */
.pagehead--doc .pagehead__h{font-size:clamp(24px,2.6vw,34px)}
.crumbs{display:flex;flex-wrap:wrap;align-items:center;gap:8px;margin-bottom:14px;font-size:12.5px;color:var(--tx-inv-2)}
.crumbs a{color:var(--tx-inv-2);text-decoration:none}
.crumbs a:hover{color:var(--lime-400)}
.crumbs>span{opacity:.45}
.crumbs__cur{color:var(--tx-inv)}

.docpage{
  display:grid;grid-template-columns:236px minmax(0,1fr) 224px;gap:44px;align-items:start;
}
/* 左树 */
.docnav{position:sticky;top:96px;font-size:13.5px}
.docnav__g{border-bottom:1px solid var(--line-2)}
.docnav__g>summary{
  display:flex;align-items:center;justify-content:space-between;gap:8px;
  padding:11px 2px;cursor:pointer;list-style:none;
}
.docnav__g>summary::-webkit-details-marker{display:none}
.docnav__cat{font-weight:650;color:var(--tx);text-decoration:none;font-size:13.5px}
.docnav__cat:hover{color:var(--lime-700)}
.docnav__chev{width:13px;height:13px;color:var(--tx-3);transition:transform .15s}
.docnav__g[open] .docnav__chev{transform:rotate(180deg)}
.docnav__l{list-style:none;margin:0;padding:2px 0 12px}
.docnav__l a{
  display:block;padding:4px 0 4px 14px;border-left:2px solid var(--line-2);
  color:var(--tx-2);text-decoration:none;line-height:1.45;
}
.docnav__l a:hover{color:var(--tx)}
.docnav__l a.is-cur{border-color:var(--lime-500);color:var(--lime-700);font-weight:650;background:linear-gradient(90deg,rgba(var(--lime-500-rgb),.10),transparent)}
.docnav__sub{margin-top:6px}
.docnav__catlink{display:block;padding:4px 0 4px 14px;font-weight:650;font-size:12.5px;color:var(--tx-3);text-decoration:none;text-transform:uppercase;letter-spacing:.04em}
.docnav__sub ul{list-style:none;margin:0;padding:0}

/* 中栏正文：prose 已有排版，只补锚点滚动边距 */
.docbody{max-width:72ch}
.docbody h2[id],.docbody h3[id]{scroll-margin-top:96px}

/* 上下篇 */
.docpn{display:grid;grid-template-columns:1fr 1fr;gap:14px;margin-top:44px;padding-top:26px;border-top:1px solid var(--line)}
.docpn__i{
  display:block;padding:14px 18px;border:1px solid var(--line);border-radius:12px;
  text-decoration:none;transition:border-color .15s;
}
.docpn__i:hover{border-color:var(--lime-500)}
.docpn__i span{display:block;font-size:11px;letter-spacing:.06em;text-transform:uppercase;color:var(--tx-3)}
.docpn__i strong{display:block;margin-top:4px;font-size:14px;color:var(--tx);font-weight:650}
.docpn__i--next{text-align:right}

/* 右栏：TOC + 商品卡 */
.docrail{position:sticky;top:96px;font-size:13px}
.docrail__toc h2{
  margin:0 0 10px;font-size:11px;font-weight:700;letter-spacing:.09em;text-transform:uppercase;color:var(--tx-3);
}
.docrail__toc ul{list-style:none;margin:0;padding:0;border-left:2px solid var(--line-2)}
.docrail__toc a{display:block;padding:4px 0 4px 12px;color:var(--tx-2);text-decoration:none;line-height:1.4}
.docrail__toc a:hover{color:var(--lime-700)}
.docrail__toc .is-h3 a{padding-left:24px;font-size:12.5px;color:var(--tx-3)}
.docrail__prod{
  display:block;margin-top:30px;padding:16px;border:1px solid var(--line);border-radius:14px;
  background:var(--card,#fff);text-decoration:none;
}
.docrail__prod img{width:100%;height:auto;border-radius:8px;background:#f6f7f9}
.docrail__pl{display:block;font-size:10.5px;font-weight:700;letter-spacing:.09em;text-transform:uppercase;color:var(--lime-700);margin-bottom:10px}
.docrail__prod strong{display:block;margin-top:10px;font-size:14px;color:var(--tx);font-weight:650}
.docrail__prod em{display:block;margin-top:4px;font-style:normal;font-size:14px;color:var(--tx-2)}
.docrail__prod .btn{margin-top:12px;width:100%;justify-content:center}

@media (max-width:1080px){
  .docpage{grid-template-columns:220px minmax(0,1fr);gap:32px}
  .docrail{display:none}
}
@media (max-width:760px){
  .docpage{grid-template-columns:1fr;gap:0}
  .docnav{position:static;border:1px solid var(--line);border-radius:12px;padding:6px 14px;margin-bottom:26px;max-height:420px;overflow:auto}
}
