/* ===================================================================
   设计系统 —— 两个站点共用（浅色主题 / 专业仪器感 / 移动优先）
   主色按站点通过 :root 覆盖（site.theme_color 写入 meta，CSS 用默认值）
   =================================================================== */
:root{
  --brand:#0f4c81;         /* 主色 */
  --brand-dk:#0b3a63;
  --brand-lt:#eaf2f9;
  --accent:#c8102e;        /* 强调/涨红色（中文习惯：促销） */
  --ok:#0f7b52;
  --warn:#b45309;
  --ink:#16202b;
  --ink-2:#47586b;
  --ink-3:#7a8a9b;
  --line:#e2e8ef;
  --bg:#ffffff;
  --soft:#f6f9fc;
  --radius:10px;
  --wrap:1180px;
  --shadow:0 1px 2px rgba(16,32,48,.04),0 8px 24px rgba(16,32,48,.06);
  --font:-apple-system,BlinkMacSystemFont,"Segoe UI","Helvetica Neue","PingFang SC","Microsoft YaHei",sans-serif;
}
*{box-sizing:border-box}
html{scroll-behavior:smooth}
body{margin:0;background:var(--bg);color:var(--ink);font:16px/1.65 var(--font);-webkit-font-smoothing:antialiased}
img{max-width:100%;height:auto;display:block}
a{color:var(--brand);text-decoration:none}
a:hover{text-decoration:underline}
h1,h2,h3,h4{line-height:1.25;margin:0 0 .5em;color:var(--ink);letter-spacing:-.01em}
h1{font-size:clamp(26px,3.4vw,40px)}
h2{font-size:clamp(21px,2.4vw,28px)}
h3{font-size:18px}
p{margin:0 0 1em}
.wrap{max-width:var(--wrap);margin:0 auto;padding:0 20px}
.skip{position:absolute;left:-9999px}
.skip:focus{left:12px;top:12px;background:#fff;padding:10px 14px;border-radius:8px;z-index:99;box-shadow:var(--shadow)}

/* ---------------- 顶栏 ---------------- */
.site-head{position:sticky;top:0;z-index:50;background:rgba(255,255,255,.96);backdrop-filter:saturate(1.4) blur(8px);border-bottom:1px solid var(--line)}
.head-in{display:flex;align-items:center;gap:18px;height:64px}
.logo{display:flex;align-items:center;gap:9px;font-weight:700;color:var(--ink);text-decoration:none}
.logo:hover{text-decoration:none}
.logo-mark{display:grid;place-items:center;width:30px;height:30px;border-radius:8px;background:var(--brand);color:#fff;font-size:15px;font-weight:800}
.logo-text{font-size:16.5px;letter-spacing:-.02em;white-space:nowrap}
.main-nav{display:flex;align-items:center;gap:2px;margin-left:6px;flex:1}
.main-nav>a,.nav-drop>a{padding:8px 11px;border-radius:8px;color:var(--ink-2);font-size:14.5px;font-weight:500}
.main-nav>a:hover,.nav-drop>a:hover{background:var(--soft);color:var(--brand);text-decoration:none}
.main-nav a[aria-current]{color:var(--brand)}
.nav-drop{position:relative}
.drop-panel{position:absolute;top:100%;left:0;display:none;gap:26px;background:#fff;border:1px solid var(--line);border-radius:var(--radius);box-shadow:var(--shadow);padding:18px 22px;min-width:560px}
.nav-drop:hover .drop-panel{display:flex}
.drop-col{min-width:170px}
.drop-head{display:block;font-weight:600;font-size:14px;margin-bottom:8px;color:var(--brand)}
.drop-col ul{list-style:none;margin:0;padding:0}
.drop-col li a{display:block;padding:4px 0;font-size:13.5px;color:var(--ink-2)}
.lang-sw{display:flex;gap:2px;align-items:center;font-size:13px}
.lang-sw a{padding:5px 9px;border-radius:7px;color:var(--ink-3)}
.lang-sw a.active{background:var(--brand-lt);color:var(--brand);font-weight:600}

/* ---------------- 按钮 ---------------- */
.btn{display:inline-flex;align-items:center;justify-content:center;gap:7px;padding:11px 20px;border-radius:9px;font-size:15px;font-weight:600;border:1px solid transparent;cursor:pointer;transition:.15s;text-decoration:none}
.btn:hover{text-decoration:none;transform:translateY(-1px)}
.btn-primary{background:var(--brand);color:#fff}
.btn-primary:hover{background:var(--brand-dk)}
.btn-outline{border-color:var(--line);color:var(--brand);background:#fff}
.btn-outline:hover{border-color:var(--brand);background:var(--brand-lt)}
.btn-ghost{background:rgba(255,255,255,.14);color:#fff;border-color:rgba(255,255,255,.4)}
.btn-ghost:hover{background:rgba(255,255,255,.24)}
/* 浅色容器里的幽灵按钮：白字版本只适合深色底（首屏/CTA 带），
   在购买框与结果面板里要换成描边版，否则几乎不可见 */
.buy-box .btn-ghost,.ok-panel .btn-ghost,.pdp-buy .btn-ghost{background:#fff;color:var(--brand);border-color:var(--line)}
.buy-box .btn-ghost:hover,.ok-panel .btn-ghost:hover,.pdp-buy .btn-ghost:hover{border-color:var(--brand);background:var(--brand-lt)}
.btn-sm{padding:8px 14px;font-size:13.5px}
.btn-block{width:100%;margin-top:10px}
.head-cta{padding:8px 15px;font-size:13.5px;background:var(--brand-lt);color:var(--brand);border-color:transparent}
.head-cta:hover{background:var(--brand);color:#fff}

/* ---------------- 首屏 ---------------- */
.hero{background:linear-gradient(150deg,#0f4c81 0%,#123f66 55%,#0b2f4d 100%);color:#fff;padding:56px 0 0}
.hero-in{display:grid;grid-template-columns:1.15fr .85fr;gap:40px;align-items:start}
.hero h1{color:#fff;margin-bottom:14px}
.eyebrow{text-transform:uppercase;letter-spacing:.14em;font-size:12px;font-weight:700;color:#9fc4e0;margin-bottom:10px}
.lede{font-size:17px;color:var(--ink-2);max-width:62ch}
.hero .lede{color:#d8e7f3;font-size:17.5px}
.hero-cta{display:flex;gap:12px;flex-wrap:wrap;margin-top:22px}
.trust{list-style:none;margin:0;padding:26px 0 30px;display:grid;gap:14px}
.trust li{background:rgba(255,255,255,.09);border:1px solid rgba(255,255,255,.16);border-radius:var(--radius);padding:13px 16px}
.trust b{display:block;color:#fff;font-size:14.5px}
.trust span{color:#c3d8e8;font-size:13.5px}

/* ---------------- 区块 ---------------- */
.sec{padding:48px 0}
.sec-alt{background:var(--soft)}
.sec-head{margin-bottom:22px;max-width:70ch}
.sec-head p{color:var(--ink-2);margin:0}
.sec-head h2 a{color:inherit}
.more{margin-top:22px}
.grid-3{display:grid;grid-template-columns:repeat(3,1fr);gap:22px}
.cat-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:14px}
.cat-card{border:1px solid var(--line);border-radius:var(--radius);padding:16px;background:#fff;transition:.15s;display:block}
.cat-card:hover{border-color:var(--brand);box-shadow:var(--shadow);text-decoration:none;transform:translateY(-2px)}
.cat-name{display:block;font-weight:650;color:var(--ink);font-size:15px}
.cat-meta{display:block;font-size:12.5px;color:var(--ink-3);margin:3px 0 7px}
.cat-d{display:block;font-size:13px;color:var(--ink-2)}
.val-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:22px}
.val{border-left:3px solid var(--brand);background:var(--soft);padding:16px 18px;border-radius:0 var(--radius) var(--radius) 0}
.val h3{font-size:16px;margin-bottom:6px}
.val p{margin:0;color:var(--ink-2);font-size:14.5px}
.cta-band{background:var(--brand-lt);text-align:center}
.cta-band .hero-cta{justify-content:center}
.cta-band .btn-ghost{background:#fff;color:var(--brand);border-color:var(--brand)}

/* ---------------- 商品卡 ---------------- */
.card{position:relative;display:flex;flex-direction:column;border:1px solid var(--line);border-radius:var(--radius);background:#fff;overflow:hidden;transition:.15s}
.card:hover{box-shadow:var(--shadow);border-color:#cfdae6}
.card-img{display:block;background:var(--soft);aspect-ratio:4/3;overflow:hidden}
.card-img img{width:100%;height:100%;object-fit:cover;transition:.3s}
.card:hover .card-img img{transform:scale(1.03)}
.img-ph{display:grid;place-items:center;width:100%;height:100%;color:var(--ink-3);font-size:13px;text-align:center;padding:10px;background:repeating-linear-gradient(45deg,#f6f9fc,#f6f9fc 10px,#eef4f9 10px,#eef4f9 20px)}
.img-ph.lg{aspect-ratio:4/3;border-radius:var(--radius);font-size:15px}
.card-t{font-size:15px;margin:14px 16px 6px;font-weight:600}
.card-t a{color:var(--ink)}
.card-s{margin:0 16px 12px;font-size:13.5px;color:var(--ink-2);flex:1}
.card-b{display:flex;align-items:baseline;gap:8px;margin:0 16px 10px;flex-wrap:wrap}
.price{font-weight:700;color:var(--ink);font-size:17px}
.price-old{color:var(--ink-3);text-decoration:line-through;font-size:13.5px}
.price.xl{font-size:27px}
.price-enq{font-size:14px;color:var(--brand);font-weight:600}
.card-sku{font-size:11.5px;color:var(--ink-3);margin-left:auto;font-family:ui-monospace,Menlo,monospace}
.card-a{margin:0 16px 16px}
.card-a .btn{width:100%}
.pill{position:absolute;top:10px;left:10px;z-index:2;background:var(--accent);color:#fff;font-size:11.5px;font-weight:700;padding:4px 9px;border-radius:20px}
.card-post .card-t{margin-bottom:4px}
.card-post .meta{margin:0 16px 8px;font-size:12px;color:var(--ink-3)}

/* ---------------- 页头/面包屑 ---------------- */
.page-head{padding:30px 0 8px}
.crumbs{padding:18px 0 0}
.crumbs ol{list-style:none;display:flex;flex-wrap:wrap;gap:7px;margin:0;padding:0;font-size:13px;color:var(--ink-3)}
.crumbs li+li::before{content:"›";margin-right:7px;color:#c3ceda}
.crumbs a{color:var(--ink-2)}
.prose-block{max-width:820px;padding:14px 20px 30px}
.prose-block h2{margin-top:32px}
.prose-block h3{margin-top:24px}
.prose-block ul,.prose-block ol{padding-left:22px}
.prose-block li{margin-bottom:7px}
.prose-block table{width:100%;border-collapse:collapse;margin:16px 0;font-size:14.5px}
.prose-block th,.prose-block td{border:1px solid var(--line);padding:9px 12px;text-align:left}
.prose-block th{background:var(--soft);font-weight:600}
.chip-row{display:flex;gap:9px;flex-wrap:wrap;padding:6px 0 4px}
.chip{border:1px solid var(--line);border-radius:20px;padding:6px 14px;font-size:13.5px;color:var(--ink-2);background:#fff}
.chip:hover{border-color:var(--brand);color:var(--brand);text-decoration:none}
.list-head{display:flex;justify-content:space-between;align-items:center;padding:14px 0 14px;color:var(--ink-3);font-size:13.5px;border-bottom:1px solid var(--line);margin-bottom:22px}
.empty{padding:30px 0;color:var(--ink-3)}
.chip-warn{border-color:#f3d9b6;background:#fffaf2;color:var(--warn);font-weight:600}
.chip-warn:hover{border-color:var(--warn);color:var(--warn);text-decoration:none}
.empty-cat{background:var(--soft);border:1px solid var(--line);border-left:4px solid var(--warn);border-radius:10px;padding:22px 26px;margin:6px 0 10px}
.empty-cat h2{margin:0 0 10px;font-size:19px}
.empty-cat p{margin:9px 0;font-size:14.5px;color:var(--ink-2)}
.empty-cat a{color:var(--brand);font-weight:600}

/* ---------------- 商品详情 ---------------- */
.pdp{display:grid;grid-template-columns:1.05fr .95fr;gap:44px;padding:22px 20px 34px}
.pdp-main{border:1px solid var(--line);border-radius:var(--radius);background:var(--soft);aspect-ratio:4/3;object-fit:cover;width:100%}
.pdp-thumbs{display:grid;grid-template-columns:repeat(4,1fr);gap:10px;margin-top:12px}
.pdp-thumbs img{border:1px solid var(--line);border-radius:8px;aspect-ratio:4/3;object-fit:cover;background:var(--soft)}
.pdp-brand{font-size:12.5px;letter-spacing:.1em;text-transform:uppercase;color:var(--ink-3);font-weight:700;margin-bottom:6px}
.pdp-rate{font-size:14px;color:var(--warn);margin-bottom:10px}
.pdp-rate span{color:var(--ink-3)}
.buy-box{border:1px solid var(--line);border-radius:var(--radius);padding:18px;margin-top:16px;background:var(--soft)}
.buy-box .price.xl{display:block;margin-bottom:2px}
.tax-note{display:block;font-size:12.5px;color:var(--ink-3);margin-bottom:12px}
.buy-facts{list-style:none;margin:16px 0 0;padding:14px 0 0;border-top:1px solid var(--line);font-size:13.5px;color:var(--ink-2)}
.buy-facts li{margin-bottom:5px}
.note{border-radius:var(--radius);padding:13px 16px;font-size:14px;margin-top:14px;border:1px solid var(--line);background:#fff}
.note-warn{background:#fffaf2;border-color:#f3d9b6}
.note-warn b{color:var(--warn)}
/* 译文未就绪提示（该语言版本标为 noindex，只给访客看） */
.lang-todo{margin:18px 0 0;padding:11px 15px;border-radius:var(--radius);border:1px dashed var(--line);
  background:var(--soft);color:var(--ink-2);font-size:13.5px}
.lang-todo::before{content:"ⓘ ";font-weight:700;color:var(--brand)}
.pdp-body{display:grid;grid-template-columns:1fr 1fr;gap:38px;padding-bottom:10px}
.pdp-col h2{font-size:19px;padding-bottom:8px;border-bottom:2px solid var(--brand-lt)}
.feat-list{padding-left:20px;margin:0}
.feat-list li{margin-bottom:8px;color:var(--ink-2)}
.spec-table{width:100%;border-collapse:collapse;font-size:14.5px}
.spec-table th{width:40%;text-align:left;background:var(--soft);font-weight:600;color:var(--ink-2)}
.spec-table th,.spec-table td{border:1px solid var(--line);padding:8px 12px}
.faq{margin-top:14px}
.faq details{border:1px solid var(--line);border-radius:var(--radius);padding:12px 16px;margin-bottom:10px;background:#fff}
.faq summary{cursor:pointer;font-weight:600;font-size:15px}
.faq-a{margin-top:10px;color:var(--ink-2);font-size:14.5px}
.post{max-width:820px}
.inq{border:1px solid var(--line);border-radius:var(--radius);padding:22px;max-width:640px;margin-bottom:40px;background:var(--soft)}
.inq label{display:block;font-size:14px;font-weight:600;margin-bottom:14px;color:var(--ink-2)}
.inq input,.inq select,.inq textarea{width:100%;margin-top:6px;padding:10px 12px;border:1px solid var(--line);border-radius:8px;font:15px var(--font);background:#fff;font-weight:400;color:var(--ink)}
.inq .req{color:var(--accent)}
.form-note{font-size:12.5px;color:var(--ink-3);margin:10px 0 0}

/* ---------------- 页脚 ---------------- */
.site-foot{background:#0d1b26;color:#b9c8d6;margin-top:56px;font-size:14px}
.foot-grid{display:grid;grid-template-columns:1.5fr 1fr 1fr 1fr;gap:30px;padding:44px 20px 30px}
.site-foot h4{color:#fff;font-size:14px;margin-bottom:12px}
.site-foot ul{list-style:none;margin:0;padding:0}
.site-foot li{margin-bottom:7px}
.site-foot a{color:#b9c8d6}
.site-foot a:hover{color:#fff}
.foot-logo{color:#fff;font-weight:700;font-size:17px;margin-bottom:10px}
.foot-brand p{margin:0 0 10px;max-width:34ch}
.badge-line{display:inline-block;border:1px solid rgba(255,255,255,.25);border-radius:20px;padding:5px 12px;font-size:12.5px;color:#dce7f0}
.foot-contact{display:flex;gap:22px;flex-wrap:wrap;padding:16px 20px;border-top:1px solid rgba(255,255,255,.1);font-size:13.5px}
.foot-legal{padding:14px 20px;border-top:1px solid rgba(255,255,255,.1);font-size:12.5px;color:#8fa2b4}
.foot-legal p{margin:0 0 5px}
.foot-bottom{display:flex;justify-content:space-between;gap:16px;flex-wrap:wrap;padding:16px 20px 30px;border-top:1px solid rgba(255,255,255,.1);font-size:12.5px;color:#8fa2b4}
.foot-note{max-width:62ch}

/* ---------------- 询价单生成器（人工确认订单） ---------------- */
.inq-inline{margin-top:14px;padding-top:14px;border-top:1px dashed var(--line)}
.inq-fields{display:flex;flex-direction:column;gap:9px;margin-top:11px}
.inq-fields label{display:block;font-size:12.5px;color:var(--ink-2);font-weight:600}
.inq-fields input,.inq-fields textarea{
  display:block;width:100%;margin-top:4px;border:1px solid var(--line);border-radius:8px;
  padding:7px 10px;font:inherit;font-size:15px;background:#fff;color:var(--ink)
}
.inq-fields input:focus,.inq-fields textarea:focus{outline:2px solid var(--brand-lt);border-color:var(--brand)}
.inq-out{margin-top:12px}
.inq-out:empty{display:none}
.inq-ready{
  background:var(--brand-lt);border:1px solid #cfe1f0;color:var(--brand-dk);
  border-radius:9px;padding:9px 12px;font-size:13.5px;margin-bottom:9px
}
.inq-ready.warn{background:#fff8ec;border-color:#f2d9a8;color:#7c2d12}
.inq-text{
  background:var(--soft);border:1px solid var(--line);border-radius:9px;
  padding:12px 14px;font-size:12.5px;line-height:1.65;white-space:pre-wrap;
  word-break:break-word;max-height:280px;overflow:auto;margin:0 0 10px;
  font-family:ui-monospace,SFMono-Regular,Menlo,Consolas,monospace
}
.inq-acts{display:flex;gap:8px;flex-wrap:wrap;margin-bottom:8px}
@media print{.inq-inline,.inq-out{display:none}}

/* ---------------- 社区板块（买家交流 / 二手专区 / 技术交流 / 经验文章） ---------------- */
.thread{background:#fff;border:1px solid var(--line);border-radius:var(--radius);padding:18px 20px;margin-top:14px}
.thread-head{display:flex;justify-content:space-between;gap:12px;align-items:baseline;flex-wrap:wrap;margin-bottom:6px}
.thread h3{margin:0;font-size:16.5px}
.thread-head .meta{margin:0}
.thread .meta{font-size:12.5px;color:var(--ink-3)}
.thread-reply{margin-top:10px;padding:10px 14px;border-left:3px solid var(--brand-soft,#dce8e2);background:var(--bg-soft,#f7f9f8);border-radius:0 8px 8px 0}
.thread-reply p{margin:0 0 2px;font-size:14px}
.thread-link{margin-top:8px;font-size:13.5px}
.thread-link a{color:var(--brand);font-weight:600}
.listing .listing-price{font-size:17px;font-weight:700;color:var(--brand);margin:6px 0 2px}
.chip-soft{display:inline-block;border:1px solid var(--line);border-radius:20px;padding:3px 12px;font-size:12px;color:var(--ink-2);background:#fff}

/* ---------------- 授权证书 ---------------- */
.cert-figure{margin:18px auto 20px;max-width:560px;text-align:center}
.cert-figure img{width:100%;height:auto;border:1px solid var(--line);border-radius:10px;box-shadow:0 6px 24px rgba(20,40,70,.10)}
.cert-figure figcaption{font-size:12.5px;color:var(--ink-3);margin-top:8px}

/* ===================================================================
   在线支付：购物车按钮 / 抽屉 / 结账页 / 支付结果页
   =================================================================== */
/* 顶栏购物车按钮 */
.cart-btn{position:relative;display:inline-flex;align-items:center;gap:5px;padding:8px 12px;border:1px solid var(--line);background:#fff;border-radius:9px;font-size:15px;cursor:pointer;color:var(--ink)}
.cart-btn:hover{border-color:var(--brand);color:var(--brand)}
.cart-n{position:absolute;top:-7px;right:-7px;min-width:19px;height:19px;padding:0 5px;border-radius:10px;background:var(--accent);color:#fff;font-size:11.5px;font-weight:700;line-height:19px;text-align:center}
body.no-scroll{overflow:hidden}

/* 购物车抽屉 */
.cart-drawer{position:fixed;inset:0;z-index:90}
.cart-back{position:absolute;inset:0;background:rgba(12,24,36,.42)}
.cart-panel{position:absolute;top:0;right:0;bottom:0;width:min(430px,92vw);background:#fff;display:flex;flex-direction:column;box-shadow:-8px 0 40px rgba(12,24,36,.22);animation:cartIn .18s ease-out}
@keyframes cartIn{from{transform:translateX(24px);opacity:.6}to{transform:none;opacity:1}}
.cart-head{display:flex;align-items:center;justify-content:space-between;padding:16px 20px;border-bottom:1px solid var(--line)}
.cart-head h2{margin:0;font-size:18px}
.cart-x{border:0;background:none;font-size:24px;line-height:1;cursor:pointer;color:var(--ink-3);padding:0 4px}
.cart-x:hover{color:var(--ink)}
.cart-lines{flex:1;overflow:auto;padding:14px 20px}
.cart-line,.co-line{display:grid;grid-template-columns:1fr auto auto;gap:10px;align-items:center;padding:11px 0;border-bottom:1px solid var(--line)}
.cart-line{grid-template-columns:1fr auto auto auto}
.cart-line:last-child,.co-line:last-child{border-bottom:0}
.cl-main{display:flex;flex-direction:column;gap:2px;font-size:14px;min-width:0}
.cl-main a{color:var(--ink);font-weight:600}
.cl-sku{font-size:11.5px;color:var(--ink-3);font-family:ui-monospace,SFMono-Regular,Menlo,monospace}
.cl-qty{display:flex;align-items:center;gap:6px;font-size:14px}
.cl-qty button{width:26px;height:26px;border:1px solid var(--line);background:#fff;border-radius:7px;cursor:pointer;font-size:14px;line-height:1;color:var(--ink-2)}
.cl-qty button:hover{border-color:var(--brand);color:var(--brand)}
.cl-lab{font-size:12px;color:var(--ink-3)}
.cl-sum{font-weight:700;font-size:14px;white-space:nowrap}
.cl-del{border:0;background:none;color:var(--ink-3);cursor:pointer;font-size:13px;padding:4px}
.cl-del:hover{color:var(--accent)}
.cart-foot{padding:16px 20px 20px;border-top:1px solid var(--line);background:var(--soft)}
.cart-toast{position:fixed;left:50%;bottom:26px;transform:translateX(-50%);z-index:95;background:#0d1b26;color:#fff;padding:11px 20px;border-radius:10px;font-size:14px;box-shadow:var(--shadow);opacity:1;transition:opacity .4s,transform .4s}
.cart-toast.out{opacity:0;transform:translate(-50%,8px)}

/* 商品页购买按钮组 */
.buy-acts{display:grid;gap:8px;margin:14px 0 0}
.buy-alt{margin:10px 0 0;font-size:13px}
.buy-alt a{color:var(--brand)}
.pay-badges{display:flex;flex-wrap:wrap;gap:6px;margin:14px 0 6px}
.pay-badge{border:1px solid var(--line);border-radius:6px;padding:3px 9px;font-size:11.5px;color:var(--ink-2);background:#fff;white-space:nowrap}
.pay-safe{margin:0;font-size:12.5px;color:var(--ink-3)}

/* 结账页 */
.checkout{display:grid;grid-template-columns:1.45fr 1fr;gap:34px;align-items:start;padding-bottom:56px}
.co-form{margin:0}
.co-h{font-size:15px;text-transform:uppercase;letter-spacing:.06em;color:var(--brand);margin:26px 0 12px;padding-bottom:7px;border-bottom:2px solid var(--brand-lt)}
.co-form .co-h:first-child{margin-top:0}
.co-grid{display:grid;grid-template-columns:1fr 1fr;gap:12px 16px}
.co-grid label,.co-form>label{display:block;font-size:13px;font-weight:600;color:var(--ink-2);margin-bottom:4px}
.co-grid label.co-wide{grid-column:1/-1}
.co-form input,.co-form select,.co-form textarea{width:100%;margin-top:5px;padding:10px 12px;border:1px solid var(--line);border-radius:8px;font:15px var(--font);background:#fff;font-weight:400;color:var(--ink)}
.co-form input:focus,.co-form select:focus,.co-form textarea:focus{outline:2px solid var(--brand-lt);border-color:var(--brand)}
.co-form .req{color:var(--accent)}
.co-note{font-size:12.5px;color:var(--ink-2);background:var(--brand-lt);border-left:3px solid var(--brand);border-radius:0 8px 8px 0;padding:10px 14px;margin:12px 0}
.pay-methods{display:grid;grid-template-columns:1fr 1fr;gap:9px;margin:0 0 16px}
.pay-opt{display:flex;align-items:center;gap:9px;border:1px solid var(--line);border-radius:9px;padding:11px 13px;font-size:14px;cursor:pointer;background:#fff;font-weight:500}
.pay-opt:hover{border-color:var(--brand)}
.pay-opt:has(input:checked){border-color:var(--brand);background:var(--brand-lt);font-weight:600}
.pay-opt input{width:auto;margin:0;accent-color:var(--brand)}
.co-msg{margin:14px 0;padding:12px 15px;border-radius:9px;font-size:14px}
.co-msg.err{background:#fef2f2;border:1px solid #fecaca;color:#991b1b}
.co-sec{font-size:12.5px;color:var(--ink-3);margin:12px 0 0;text-align:center}
.co-sum{position:sticky;top:84px;background:var(--soft);border:1px solid var(--line);border-radius:var(--radius);padding:20px 22px}
.co-sum h2{font-size:17px;margin:0 0 12px}
.co-lines{max-height:none;margin-bottom:10px}
.co-total{margin:12px 0 0;font-size:14px}
.co-total>div{display:flex;justify-content:space-between;gap:12px;padding:6px 0}
.co-total dt{color:var(--ink-2)}
.co-total dd{margin:0;font-weight:600}
.co-total .co-grand{border-top:1px solid var(--line);margin-top:6px;padding-top:10px;font-size:17px}
.co-total .co-grand dd{color:var(--brand)}
.co-back{margin:14px 0 0;font-size:13.5px}
.small{font-size:12.5px}

/* 支付结果页 */
.ok-panel{max-width:660px;border:1px solid var(--line);border-radius:var(--radius);padding:26px 28px;background:var(--soft);margin-bottom:46px}
.ok-panel.warn{background:#fffbeb;border-color:#fde68a}
.co-ref{font-size:15px;margin-bottom:8px}
.co-ref b{font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-size:16px}
.co-steps{margin:6px 0 16px;padding-left:20px;color:var(--ink-2);font-size:14.5px}
.co-steps li{margin-bottom:7px}
.co-acts{display:flex;gap:10px;flex-wrap:wrap;margin:18px 0 0}
.lang-todo{background:#fffbeb;border:1px solid #fde68a;border-radius:8px;padding:9px 14px;font-size:13.5px;color:#7c2d12;margin:14px 0}

@media (max-width:1024px){
  .checkout{grid-template-columns:1fr}
  .co-sum{position:static}
}
@media (max-width:640px){
  .co-grid,.pay-methods{grid-template-columns:1fr}
  .co-panel-narrow{}
  .cart-panel{width:100%}
}

/* ---------------- 响应式 ---------------- */
@media (max-width:1024px){
  .grid-3,.val-grid,.cat-grid{grid-template-columns:repeat(2,1fr)}
  .hero-in,.pdp,.pdp-body{grid-template-columns:1fr}
  .foot-grid{grid-template-columns:1fr 1fr}
  .main-nav{display:none}
}
@media (max-width:640px){
  .grid-3,.val-grid,.cat-grid,.foot-grid{grid-template-columns:1fr}
  .hero{padding-top:36px}
  .sec{padding:34px 0}
  .head-in{gap:10px}
  .head-cta{display:none}
}
@media print{
  .site-head,.site-foot,.hero-cta,.card-a{display:none}
  body{font-size:11pt}
}
