@charset "UTF-8";
/* =====================================================
   998雪糕网 商城全站CSS  mall.css
   版本: 2.0  日期: 2026-04-18
   ===================================================== */

/* ---- 颜色变量（须在任何使用 var(--*) 的规则之前） ---- */
:root{
  --red:#e4393c;
  --jd-red:#e1251b;
  --jd-red-hover:#c81623;
  --jd-cat-bg:#b1191a;
  --jd-cat-bg2:#9e0e15;
  --jd-wrap:1190px;
  --jd-cat-w:190px;
  --jd-side-w:290px;
  --jd-banner-h:420px;
  --red-dark:#c0272a;
  --orange:#ff6600;
  --gray-bg:#f5f5f5;
  --gray-border:#e0e0e0;
  --gray-text:#999;
  --white:#fff;
  --shadow:0 2px 8px rgba(0,0,0,.1);
  --shadow-hover:0 8px 24px rgba(0,0,0,.15);
  --radius:8px;
}

/* ---- 全局重置（合并原 style1 的 * 重置，避免依赖 style1 加载顺序） ---- */
*,*::before,*::after{box-sizing:border-box;margin:0;padding:0;list-style:none}
body{margin:0;padding:0;font-family:-apple-system,BlinkMacSystemFont,"PingFang SC","Hiragino Sans GB","Microsoft YaHei","Helvetica Neue",Arial,sans-serif;font-size:14px;line-height:1.5;color:#333;background:#f4f4f4}
a,img{border:0}
a{text-decoration:none;color:inherit}
a:hover{color:var(--jd-red);text-decoration:none}
img{max-width:100%;display:block}
/* =====================================================
   PC 顶部导航
   ===================================================== */
.mall-topbar .inner{max-width:var(--jd-wrap,1190px);margin:0 auto;padding:0 10px;display:flex;justify-content:space-between;align-items:center}

/* =====================================================
   京东式顶栏：浅灰工具条 + 白底主搜 + 白底导航 + 分类悬停浮层
   ===================================================== */
.jd-sticky-top{
  position:sticky;top:0;z-index:1000;
  background:#fff;
  box-shadow:0 1px 8px rgba(0,0,0,.08);
  overflow:visible;
}
.jd-topbar{background:#e3e4e5!important;color:#999!important;height:auto;line-height:1.5;padding:6px 0;border-bottom:1px solid #d9d9d9}
.jd-topbar .mall-topbar-welcome{display:none}
.jd-topbar-inner{display:flex;justify-content:space-between;align-items:center;gap:12px;flex-wrap:wrap;font-size:12px}
.jd-topbar-loc{color:#666}
.jd-topbar-links a,.jd-topbar-links{color:#999}
.jd-topbar-links a:hover{color:var(--jd-red)}
.jd-topbar-links .sep{margin:0 8px;color:#ccc;opacity:1}
.jd-topbar-reg{color:var(--jd-red)!important;font-weight:600}

.jd-ico-loc{display:inline-block;width:8px;height:8px;margin-right:6px;border-radius:50%;background:#aaa;vertical-align:1px}
.jd-mini-cart-ico{
  width:24px;height:24px;flex-shrink:0;
  background:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23e1251b' stroke-width='1.8' stroke-linejoin='round'%3E%3Cpath d='M5 6h2l1.2 12h9.1L19 8H7'/%3E%3Ccircle cx='10' cy='19' r='1.4' fill='%23e1251b' stroke='none'/%3E%3Ccircle cx='17' cy='19' r='1.4' fill='%23e1251b' stroke='none'/%3E%3C/svg%3E") center/contain no-repeat;
}

.jd-header{background:#fff;border-bottom:none;padding:24px 0 18px}
.jd-header-inner{max-width:var(--jd-wrap,1190px);margin:0 auto;padding:0 10px;display:flex;align-items:flex-start;gap:32px}
.jd-logo-block{flex-shrink:0;display:flex;flex-direction:column;gap:6px;min-width:0}
.jd-logo{display:block;line-height:0}
.jd-logo img{height:56px;width:auto;max-width:190px;object-fit:contain}
.jd-logo-sub{margin:0;font-size:12px;color:#999;line-height:1.35;max-width:200px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}

.jd-header-center{flex:1;min-width:0;max-width:560px;margin:0 auto 0 0}
.jd-search{display:flex;height:38px;border:2px solid var(--jd-red);border-radius:0;overflow:hidden;background:#fff}
.jd-search input{flex:1;border:none;padding:0 14px;font-size:14px;outline:none;color:#333}
.jd-search input::placeholder{color:#c2c2c2}
.jd-search button{width:88px;background:var(--jd-red);color:#fff;border:none;font-size:15px;font-weight:700;cursor:pointer;flex-shrink:0;letter-spacing:.02em}
.jd-search button:hover{background:var(--jd-red-hover)}

.jd-hotwords{display:flex;flex-wrap:wrap;gap:6px 12px;margin-top:6px;font-size:12px;line-height:1.4;justify-content:flex-start}
.jd-hotwords a{color:#999}
.jd-hotwords a:hover{color:var(--jd-red)}

.jd-header-right{flex-shrink:0;display:flex;flex-direction:column;align-items:flex-end;gap:10px}
.jd-mini-cart{
  display:flex;align-items:center;gap:10px;
  min-width:156px;padding:10px 14px;border:1px solid #e3e4e5;border-radius:2px;background:#fff;
  color:var(--jd-red)!important;font-size:12px;transition:border-color .2s,box-shadow .2s;
}
.jd-mini-cart:hover{border-color:var(--jd-red);box-shadow:0 0 0 1px rgba(225,37,27,.12)}
.jd-mini-cart-txt{display:flex;flex-direction:column;align-items:flex-start;line-height:1.35}
.jd-mini-cart-txt .t1{color:var(--jd-red);font-weight:600}
.jd-mini-cart-txt .t2{color:#999;font-size:11px}

.jd-header-mini{display:flex;gap:12px;font-size:12px}
.jd-mini-link{color:#666;padding:2px 0}
.jd-mini-link:hover{color:var(--jd-red)}

/* 主导航行 */
.jd-nav-row{background:#fff;border-bottom:1px solid #e4e4e4;overflow:visible}
.jd-nav-row-inner{max-width:var(--jd-wrap,1190px);margin:0 auto;padding:0 10px;display:flex;align-items:stretch;min-height:42px;overflow:visible}
.jd-nav-cats-wrap{position:relative;flex-shrink:0}
.jd-nav-cats-trigger{
  display:flex;align-items:center;justify-content:center;
  width:var(--jd-cat-w,190px);height:100%;min-height:42px;
  background:var(--jd-red);color:#fff!important;font-size:16px;font-weight:700;
  text-align:center;transition:background .2s;letter-spacing:.04em;
}
.jd-nav-cats-trigger:hover{background:var(--jd-red-hover);color:#fff!important}

.jd-nav-links{display:flex;flex-wrap:wrap;align-items:center;flex:1;gap:0;padding:0 6px 0 4px}
.jd-nav-links a{
  padding:0 16px;height:42px;line-height:42px;font-size:15px;color:#333;white-space:nowrap;border-radius:0;
  transition:color .15s,background .15s;
}
.jd-nav-links a:hover{color:var(--jd-red);background:transparent}
.jd-nav-links a.cur{color:var(--jd-red);font-weight:700}

.jd-nav-channel-end{margin-left:auto;align-self:center;padding:0 4px 0 10px;font-size:13px;color:#666;white-space:nowrap;line-height:42px}
.jd-nav-channel-end:hover{color:var(--jd-red)}

/* 全部分类悬停浮层 */
.jd-nav-mega{
  display:none;
  position:absolute;left:0;top:100%;
  width:min(990px,calc(100vw - 30px));min-height:380px;
  background:#fff;border:1px solid #ddd;
  box-shadow:0 6px 20px rgba(0,0,0,.12);
  z-index:1002;
}
.jd-nav-cats-wrap:hover .jd-nav-mega{display:block}
.jd-mega-inner{position:relative;min-height:380px}
.jd-mega-master{width:var(--jd-cat-w,190px);margin:0;padding:10px 0;background:#f7f7f7;border-right:1px solid #eee;min-height:380px}
.jd-mega-li{position:relative}
.jd-mega-master-a{
  display:flex;align-items:center;justify-content:space-between;
  padding:10px 14px;font-size:13px;color:#333;border-left:3px solid transparent;
}
.jd-mega-master-a:hover{background:#fff;border-left-color:var(--jd-red);color:var(--jd-red)}
.jd-mega-arr{font-style:normal;color:#bbb;font-size:14px}
.jd-mega-sub{
  display:none;
  position:absolute;left:calc(var(--jd-cat-w, 190px) - 1px);top:0;right:0;bottom:0;
  background:#fff;padding:14px 18px;overflow:auto;
}
.jd-mega-li:hover .jd-mega-sub{display:block}
.jd-mega-sub-head{margin:0 0 12px;padding-bottom:10px;border-bottom:1px solid #f0f0f0;font-size:13px}
.jd-mega-sub-head a{color:#666;font-weight:600}
.jd-mega-sub-head a:hover{color:var(--jd-red)}
.jd-mega-sub-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:8px 14px}
.jd-mega-sub-grid a{font-size:13px;color:#555;padding:4px 0}
.jd-mega-sub-grid a:hover{color:var(--jd-red)}
.jd-mega-empty{margin:12px 0 0;font-size:13px;color:#999;line-height:1.6}

/* 兼容旧 class：内页若仍引用 .mall-search 可单独覆盖 */
.mall-logo{flex-shrink:0}
.mall-logo img{height:50px;width:auto}
.mall-logo-text{font-size:22px;font-weight:700;color:var(--red);white-space:nowrap}

.mall-search{display:flex;height:44px;width:100%;max-width:600px;background:#fff;border-radius:12px;overflow:hidden;padding:2px;box-shadow:0 2px 10px rgba(0,0,0,.12)}
.mall-header-tools{display:flex;align-items:center;gap:14px;flex-shrink:0}
.mall-header-tools .icon{font-size:22px;line-height:1}
.mall-cart-btn{position:relative}
.mall-cart-badge{position:absolute;top:-6px;right:-8px;background:#ff6600;color:#fff;font-size:10px;min-width:16px;height:16px;border-radius:8px;display:flex;align-items:center;justify-content:center;padding:0 3px}


/* =====================================================
   首页 · 类京东三栏主视觉 + 推荐大卡
   ===================================================== */
.jd-home{padding-bottom:28px;background:#f4f4f4}
.jd-home .inner{max-width:var(--jd-wrap,1190px);margin:0 auto;padding:0 10px}
.jd-home .jd-stage.inner{
  margin-top:8px;padding:8px;background:#fff;
  border-radius:0;box-shadow:0 1px 2px rgba(0,0,0,.04);border:1px solid #e6e6e6;
}

/* 京东式「猜你喜欢」标题条（对齐京东字重与字距） */
.jd-feed-title{display:flex;align-items:center;justify-content:center;gap:20px;margin:6px 0 18px;padding:0 8px}
.jd-feed-title__line{flex:1;height:1px;max-width:220px;background:linear-gradient(90deg,transparent,rgba(0,0,0,.1))}
.jd-feed-title__line:last-child{background:linear-gradient(90deg,rgba(0,0,0,.1),transparent)}
.jd-feed-title__text{font-size:22px;font-weight:700;color:#1a1a1a;letter-spacing:.2em;white-space:nowrap;margin:0}
@media(max-width:600px){
  .jd-feed-title__text{font-size:16px;letter-spacing:.1em}
  .jd-feed-title__line{max-width:72px}
}
.jd-hero-wrap{display:grid;grid-template-columns:var(--jd-cat-w,190px) minmax(0,1fr) var(--jd-side-w,290px);gap:10px;margin-top:0;align-items:stretch}
.jd-cat-tower{
  background:linear-gradient(180deg,var(--jd-cat-bg,#b1191a) 0%,var(--jd-cat-bg2,#9e0e15) 100%);
  border-radius:0;overflow:hidden;box-shadow:none;border:none;
}
.jd-cat-tower-head{background:rgba(0,0,0,.12);color:#fff;font-weight:700;font-size:13px;padding:0 10px;height:40px;display:flex;align-items:center;justify-content:center;border-bottom:1px solid rgba(255,255,255,.15);letter-spacing:.08em}
.jd-cat-tower-list{max-height:calc(var(--jd-banner-h, 420px) + 40px);overflow:auto;background:transparent}
.jd-cat-tower-list li{border-bottom:1px solid rgba(255,255,255,.1)}
.jd-cat-tower-list a{display:flex;align-items:center;gap:8px;padding:9px 12px;font-size:14px;color:#fff!important;transition:background .12s,padding-left .12s}
.jd-cat-tower-list a:hover{background:rgba(255,255,255,.12);color:#fff!important;padding-left:14px}
.jd-cat-ico{color:rgba(255,255,255,.75);font-size:10px;opacity:1;font-family:Arial,sans-serif}

.jd-hero-main{display:flex;flex-direction:column;gap:10px;min-width:0}
.jd-hero-top{display:grid;grid-template-columns:1fr 250px;gap:10px;min-height:0;align-items:stretch}
.jd-hero-banner{
  position:relative;border-radius:0;overflow:hidden;background:#f5f5f5;
  min-height:var(--jd-banner-h,420px);height:var(--jd-banner-h,420px);box-shadow:none;border:1px solid #e8e8e8;
}
.jd-hero-banner-link{display:block;height:100%;line-height:0}
.jd-hero-banner-link img{width:100%;height:100%;object-fit:cover;min-height:var(--jd-banner-h,420px);position:relative;z-index:1}
.jd-hero-banner-fallback{
  position:absolute;inset:0;display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;color:#fff;padding:24px;z-index:0;
  background:linear-gradient(135deg,var(--jd-red) 0%,#ff6b6b 100%);
}
.jd-hero-banner-fallback h2{margin:0 0 10px;font-size:28px;font-weight:800;letter-spacing:.04em}
.jd-hero-banner-fallback p{margin:0 0 16px;font-size:15px;opacity:.95}
.jd-hero-banner-fallback a{display:inline-block;padding:10px 28px;background:#fff;color:var(--jd-red);border-radius:2px;font-weight:700;font-size:14px}

.jd-hero-deals{background:#fafafa;border-radius:0;padding:0 0 6px;box-shadow:none;border:1px solid #e8e8e8;display:flex;flex-direction:column;gap:0;min-height:var(--jd-banner-h,420px)}
.jd-hero-deals-head{
  font-size:15px;font-weight:800;color:#333;padding:12px 12px 10px;margin:0;
  border-bottom:1px solid #eee;background:#fff;
  display:flex;align-items:center;gap:8px;
}
.jd-hero-deals-head::before{content:'';width:3px;height:14px;background:var(--jd-red);border-radius:1px;flex-shrink:0}
.jd-deal-cell{display:flex;gap:10px;align-items:center;padding:10px 12px;border-bottom:1px solid #eee;background:#fff;transition:background .12s;border-radius:0}
.jd-deal-cell:last-child{border-bottom:none}
.jd-deal-cell:hover{background:#fff7f7}
.jd-deal-img{width:60px;height:60px;flex-shrink:0;border-radius:0;overflow:hidden;border:1px solid #eee;background:#fff}
.jd-deal-img img{width:100%;height:100%;object-fit:contain}
.jd-deal-info{min-width:0;display:flex;flex-direction:column;gap:4px}
.jd-deal-title{font-size:12px;color:#333;line-height:1.4;max-height:2.8em;overflow:hidden;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical}
.jd-deal-price{font-size:16px;font-weight:800;color:var(--jd-red);font-family:Arial,"JDZhengHT","Microsoft YaHei",sans-serif}
.jd-deal-price::before{content:'¥';font-size:11px;margin-right:1px}

.jd-hero-quad{display:grid;grid-template-columns:repeat(4,1fr);gap:10px}
.jd-quad-cell{
  background:#fff;border-radius:0;padding:12px 10px;border:1px solid #e8e8e8;box-shadow:none;
  display:flex;flex-direction:column;gap:4px;transition:transform .2s,box-shadow .2s,border-color .2s;
}
.jd-quad-cell:hover{transform:translateY(-1px);box-shadow:0 2px 10px rgba(0,0,0,.06);border-color:#ddd}
.jd-quad-t{font-size:14px;font-weight:700;color:#333}
.jd-quad-s{font-size:12px;color:#999}

.jd-user-tower{background:transparent;display:flex;flex-direction:column;gap:10px}
.jd-user-card{
  background:#fff;border-radius:0;padding:16px 14px;border:1px solid #e8e8e8;
  box-shadow:0 2px 8px rgba(0,0,0,.04);
  display:flex;gap:14px;align-items:flex-start;
  border-top:3px solid var(--jd-red);
}
.jd-user-avatar{width:52px;height:52px;border-radius:50%;background:#fff;display:flex;align-items:center;justify-content:center;flex-shrink:0;border:2px solid #ffe0e0;box-shadow:0 0 0 1px #fff inset}
.jd-user-avatar-inner{display:block;width:24px;height:24px;border-radius:50%;background:linear-gradient(180deg,var(--jd-red),var(--jd-red-hover));opacity:.95}
.jd-user-hi{margin:0;font-size:15px;font-weight:700;color:#333;letter-spacing:.02em}
.jd-user-sub{margin:4px 0 12px;font-size:12px;color:#999}
.jd-user-btns{display:flex;flex-wrap:wrap;gap:8px}
.jd-btn-primary{display:inline-flex;align-items:center;justify-content:center;min-width:72px;padding:7px 14px;border-radius:2px;background:var(--jd-red);color:#fff!important;font-size:13px;font-weight:600;border:none;cursor:pointer;line-height:1.2}
.jd-btn-primary:hover{filter:brightness(.95);color:#fff!important}
.jd-btn-ghost{display:inline-flex;align-items:center;justify-content:center;min-width:72px;padding:7px 12px;border-radius:2px;border:1px solid #dcdcdc;background:#fff;color:#666!important;font-size:13px;line-height:1.2}
.jd-btn-ghost:hover{border-color:var(--jd-red);color:var(--jd-red)!important;background:#fff5f5}

.jd-user-shortcuts{display:grid;grid-template-columns:repeat(4,1fr);gap:6px;background:#fff;border-radius:0;padding:10px 8px;border:1px solid #e8e8e8;box-shadow:0 1px 4px rgba(0,0,0,.03)}
.jd-user-shortcuts a{display:flex;flex-direction:column;align-items:center;gap:4px;font-size:11px;color:#666;padding:6px 2px;border-radius:2px}
.jd-user-shortcuts a:hover{background:#fff5f5;color:var(--jd-red)}
.jd-user-shortcuts span{display:flex;width:28px;height:28px;border-radius:2px;background:#fff0f0;color:var(--jd-red);font-weight:700;align-items:center;justify-content:center;font-size:12px}

.jd-user-brands{background:#fff;border-radius:0;padding:10px 12px;border:1px solid #e8e8e8;box-shadow:0 1px 4px rgba(0,0,0,.03)}
.jd-user-brands-head{font-size:13px;font-weight:700;margin:0 0 8px;color:#333}
.jd-user-brands-scroll{display:flex;flex-wrap:wrap;gap:6px 8px;max-height:88px;overflow:auto}
.jd-user-brands-scroll a{font-size:12px;padding:4px 10px;border-radius:2px;background:#f5f5f5;color:#555;border:1px solid #eee}
.jd-user-brands-scroll a:hover{background:#fff5f5;color:var(--jd-red);border-color:#ffd0d0}

.jd-user-notice{background:#fff;border-radius:0;padding:10px 12px;border:1px solid #e8e8e8;box-shadow:0 1px 4px rgba(0,0,0,.03);flex:1;min-height:0}
.jd-user-notice-head{font-size:13px;font-weight:700;margin:0 0 6px;color:#333}
.jd-user-notice-body{font-size:12px;color:#888;line-height:1.65;max-height:5em;overflow:hidden}

.jd-rec-section{margin-top:12px;background:#fff;border-radius:0;padding:18px 16px 22px;border:1px solid #e6e6e6;box-shadow:0 1px 2px rgba(0,0,0,.04)}
.jd-rec-head{display:flex;align-items:flex-end;justify-content:space-between;margin-bottom:16px;gap:12px;padding-bottom:0;border-top:none;border-bottom:1px solid #eee}
.jd-rec-tabs{display:flex;gap:0;flex-wrap:wrap;border-bottom:none}
.jd-rec-tab{
  border:none;background:transparent;padding:10px 18px 12px;font-size:15px;font-weight:400;color:#666;border-radius:0;cursor:pointer;
  border-bottom:2px solid transparent;margin-bottom:-1px;
}
.jd-rec-tab:hover{color:var(--jd-red);background:transparent}
.jd-rec-tab.is-active{color:var(--jd-red);font-weight:700;background:transparent;border-bottom-color:var(--jd-red)}
.jd-rec-more{font-size:12px;color:#999;padding-bottom:10px}
.jd-rec-more:hover{color:var(--jd-red)}
.jd-rec-panel{display:none}
.jd-rec-panel.is-active{display:block}
.jd-rec-grid{display:flex;flex-wrap:wrap;gap:12px;margin:0;padding:0;align-items:stretch}
.jd-rec-grid > .jd-rec-card-wrap{box-sizing:border-box;width:calc((100% - 48px) / 5);flex:0 0 calc((100% - 48px) / 5);min-width:0}
.jd-rec-grid--5 > .jd-rec-card-wrap{width:calc((100% - 48px) / 5);flex:0 0 calc((100% - 48px) / 5)}
.jd-rec-card{
  display:block;background:#fff;border-radius:0;overflow:hidden;border:1px solid #f0f0f0;
  transition:transform .18s,box-shadow .18s,border-color .18s;
}
.jd-rec-card:hover{transform:translateY(-2px);box-shadow:0 4px 14px rgba(0,0,0,.08);border-color:#e8e8e8}
.jd-rec-card-img{aspect-ratio:1/1;background:#fff;display:flex;align-items:center;justify-content:center;padding:12px}
.jd-rec-card-img img{width:100%;height:100%;object-fit:contain}
.jd-rec-card-body{padding:10px 12px 14px;background:#fff}
.jd-rec-card-title{margin:0 0 8px;font-size:13px;font-weight:400;color:#333;line-height:1.45;height:2.9em;overflow:hidden;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical}
.jd-rec-card-price{display:flex;align-items:baseline;gap:8px}
.jd-rec-card-price .p{font-size:18px;font-weight:800;color:var(--jd-red);font-family:Arial,"JDZhengHT","Microsoft YaHei",sans-serif}
.jd-rec-card-price .p::before{content:'¥';font-size:12px}
.jd-rec-card-price .o{font-size:12px;color:#bbb;text-decoration:line-through}
.jd-rec-card-price .o:empty{display:none}

.jd-floor{margin-top:16px;background:#fff;border-radius:0;padding:14px 16px 18px;border:1px solid #ebebeb;box-shadow:none}
.jd-floor--muted{background:#fafafa}
.jd-floor-head{display:flex;align-items:center;justify-content:space-between;margin-bottom:12px}
.jd-floor-head h2{margin:0;font-size:17px;font-weight:800;color:#333;display:flex;align-items:center;gap:8px}
.jd-floor-head h2::before{content:'';width:4px;height:18px;background:var(--jd-red);border-radius:1px}
.jd-floor-head a{font-size:13px;color:#999}
.jd-floor-head a:hover{color:var(--jd-red)}

.jd-strip{margin-top:12px;background:#fff;border-radius:0;padding:12px 14px;display:flex;flex-wrap:wrap;align-items:center;gap:8px 10px;border:1px solid #ebebeb;box-shadow:none}
.jd-strip-label{font-size:13px;color:#999;font-weight:600;margin-right:4px}
.jd-strip a{font-size:13px;padding:4px 12px;border-radius:999px;background:#f7f7f7;color:#555}
.jd-strip a:hover{background:#fff5f5;color:var(--jd-red)}

.jd-flink{display:flex;flex-wrap:wrap;gap:10px 14px}
.jd-flink a{font-size:13px;color:#666}
.jd-flink a:hover{color:var(--jd-red)}

@media(max-width:1100px){
  .jd-hero-wrap{grid-template-columns:1fr}
  .jd-cat-tower{order:2}
  .jd-hero-main{order:1}
  .jd-user-tower{order:3;flex-direction:row;flex-wrap:wrap}
  .jd-user-tower>*{flex:1;min-width:200px}
  .jd-hero-top{grid-template-columns:1fr}
  .jd-rec-grid > .jd-rec-card-wrap,.jd-rec-grid--5 > .jd-rec-card-wrap{width:calc((100% - 24px) / 3);flex:0 0 calc((100% - 24px) / 3)}
}
@media(max-width:768px){
  .jd-hero-quad{grid-template-columns:repeat(2,1fr)}
  .jd-rec-grid > .jd-rec-card-wrap,.jd-rec-grid--5 > .jd-rec-card-wrap{width:calc((100% - 12px) / 2);flex:0 0 calc((100% - 12px) / 2)}
  .jd-header-inner{flex-wrap:wrap}
  .jd-logo-sub{white-space:normal;max-width:100%}
  .jd-header-center{order:3;width:100%;max-width:100%}
  .jd-header-right{width:100%;flex-direction:row;justify-content:space-between;align-items:center}
  .jd-nav-mega{width:min(100vw - 24px,990px);max-width:calc(100vw - 24px)}
}

/* =====================================================
   品牌导航栏
   ===================================================== */
.brand-nav{background:#fff;padding:12px 0;border-bottom:1px solid #eee;overflow:hidden}
.brand-nav .inner{max-width:1200px;margin:0 auto;padding:0 15px;display:flex;align-items:center;gap:8px;flex-wrap:wrap}
.brand-nav .label{font-size:13px;color:#999;flex-shrink:0;margin-right:4px}
.brand-nav a{display:inline-block;padding:4px 12px;border:1px solid #e0e0e0;border-radius:20px;font-size:13px;color:#555;transition:all .2s;white-space:nowrap}
.brand-nav a:hover{border-color:#e4393c;color:#e4393c;background:#fff5f5}

/* =====================================================
   首页 Banner
   ===================================================== */
.mall-banner{background:#fff;margin-bottom:12px}
.mall-banner .inner{max-width:1200px;margin:0 auto;padding:12px 15px}
.banner-wrap{border-radius:var(--radius);overflow:hidden;background:linear-gradient(135deg,#e4393c 0%,#ff6b35 100%);min-height:200px;display:flex;align-items:center;justify-content:center;position:relative}
.banner-wrap img{width:100%;height:auto;display:block}
.banner-placeholder{text-align:center;color:#fff;padding:40px}
.banner-placeholder h2{font-size:32px;margin:0 0 10px}
.banner-placeholder p{font-size:16px;opacity:.9;margin:0 0 20px}
.banner-placeholder a{display:inline-block;padding:10px 32px;background:#fff;color:#e4393c;border-radius:24px;font-weight:600;font-size:15px}

/* =====================================================
   首页布局：左侧分类 + 右侧内容
   ===================================================== */
.mall-main{max-width:1200px;margin:0 auto;padding:0 15px 20px;display:flex;gap:12px}
.mall-sidebar{width:200px;flex-shrink:0}
.mall-content{flex:1;min-width:0}

/* 侧边栏分类 */
.sidebar-cats{background:#fff;border-radius:var(--radius);overflow:hidden}
.sidebar-cats .title{background:#e4393c;color:#fff;padding:12px 16px;font-size:14px;font-weight:600}
.sidebar-cats ul li a{display:block;padding:10px 16px;font-size:13px;color:#444;border-bottom:1px solid #f5f5f5;transition:all .2s}
.sidebar-cats ul li a:hover{background:#fff5f5;color:#e4393c;padding-left:22px}

/* =====================================================
   商品区块
   ===================================================== */
.goods-section{background:#fff;border-radius:var(--radius);margin-bottom:12px;overflow:hidden}
.goods-section-head{display:flex;align-items:center;justify-content:space-between;padding:14px 16px;border-bottom:1px solid #f0f0f0}
.goods-section-head h2{font-size:16px;font-weight:700;color:#333;margin:0;display:flex;align-items:center;gap:8px}
.goods-section-head h2::before{content:'';display:inline-block;width:4px;height:18px;background:#e4393c;border-radius:2px}
.goods-section-head a.more{font-size:13px;color:#999}
.goods-section-head a.more:hover{color:#e4393c}

/* 商品网格 */
.goods-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:1px;background:#f0f0f0}
.goods-grid.col-5{grid-template-columns:repeat(5,1fr)}
.goods-grid.col-3{grid-template-columns:repeat(3,1fr)}

/* 商品卡片 */
.goods-card{background:#fff;transition:box-shadow .25s,transform .25s;cursor:pointer;position:relative}
.goods-card:hover{box-shadow:var(--shadow-hover);z-index:2;transform:translateY(-2px)}
.goods-card a.card-link{display:block;padding:12px 12px 0}
.goods-card .card-img{width:100%;aspect-ratio:1/1;overflow:hidden;background:#fafafa;border-radius:4px;margin-bottom:8px}
.goods-card .card-img img{width:100%;height:100%;object-fit:contain;transition:transform .35s}
.goods-card:hover .card-img img{transform:scale(1.06)}
.goods-card .card-title{font-size:13px;color:#333;line-height:1.5;height:2.8em;overflow:hidden;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;margin-bottom:6px}
.goods-card .card-price{padding:0 12px 12px;display:flex;align-items:baseline;gap:6px;flex-wrap:wrap}
.goods-card .price-now{font-size:20px;font-weight:700;color:#e4393c;font-family:Arial,sans-serif}
.goods-card .price-now::before{content:'¥';font-size:13px}
.goods-card .price-old{font-size:12px;color:#bbb;text-decoration:line-through}
.goods-card .price-old::before{content:'¥';font-size:11px}
.goods-card .card-btn{display:block;margin:0 12px 12px;padding:7px 0;background:#e4393c;color:#fff;text-align:center;border-radius:4px;font-size:13px;transition:background .2s}
.goods-card .card-btn:hover{background:#c0272a}

/* 商品标签 */
.goods-card .card-tags{position:absolute;top:8px;left:8px;display:flex;flex-direction:column;gap:3px}
.tag{display:inline-block;padding:2px 6px;border-radius:3px;font-size:11px;font-weight:600;color:#fff;line-height:1.4}
.tag-hot{background:#e4393c}
.tag-new{background:#52c41a}
.tag-sale{background:#ff6600}
.tag-rec{background:#1890ff}

/* =====================================================
   商品列表页
   ===================================================== */
.list-page:not(.jd-store-page){max-width:1210px;margin:0 auto;padding:14px 15px}

/* 面包屑 */
.breadcrumb{background:#fff;padding:10px 16px;border-radius:var(--radius);margin-bottom:10px;font-size:13px;color:#999}
.breadcrumb a{color:#666}
.breadcrumb a:hover{color:#e4393c}
.breadcrumb .sep{margin:0 6px}

/* 排序栏 */
.sort-bar{background:#fff;padding:10px 16px;border-radius:var(--radius);margin-bottom:10px;display:flex;align-items:center;gap:8px;flex-wrap:wrap}
.sort-bar .label{font-size:13px;color:#999;margin-right:4px}
.sort-btn{padding:5px 14px;border:1px solid #ddd;border-radius:4px;font-size:13px;color:#555;cursor:pointer;transition:all .2s;background:#fff}
.sort-btn:hover,.sort-btn.active{border-color:#e4393c;color:#e4393c;background:#fff5f5}

/* 列表商品网格 */
.list-goods-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:10px}

/* =====================================================
   商品详情页
   ===================================================== */
.detail-page{max-width:1200px;margin:0 auto;padding:12px 15px}
.detail-wrap{background:#fff;border-radius:var(--radius);padding:24px;display:flex;gap:32px;margin-bottom:12px}
.detail-gallery{width:400px;flex-shrink:0}
.detail-gallery .main-img{width:100%;aspect-ratio:1/1;border:1px solid #eee;border-radius:var(--radius);overflow:hidden;background:#fafafa;margin-bottom:8px}
.detail-gallery .main-img img{width:100%;height:100%;object-fit:contain}
.detail-gallery .thumbs{display:flex;gap:6px;flex-wrap:wrap}
.detail-gallery .thumbs img{width:60px;height:60px;object-fit:contain;border:2px solid #eee;border-radius:4px;cursor:pointer}
.detail-gallery .thumbs img:hover,.detail-gallery .thumbs img.active{border-color:#e4393c}

.detail-info{flex:1;min-width:0}
.detail-info h1{font-size:20px;font-weight:700;color:#333;margin:0 0 12px;line-height:1.4}
.detail-price-box{background:#fafafa;border-radius:var(--radius);padding:16px;margin-bottom:16px}
.detail-price-box .price-label{font-size:13px;color:#999;margin-bottom:4px}
.detail-price-box .price-main{font-size:36px;font-weight:700;color:#e4393c;font-family:Arial,sans-serif}
.detail-price-box .price-main::before{content:'¥';font-size:20px}
.detail-price-box .price-market{font-size:13px;color:#bbb;text-decoration:line-through;margin-top:4px}
.detail-price-box .price-market::before{content:'市场价 ¥'}
.detail-meta{display:flex;flex-direction:column;gap:10px;margin-bottom:20px;font-size:14px}
.detail-meta .row{display:flex;gap:8px}
.detail-meta .row .k{color:#999;width:70px;flex-shrink:0}
.detail-meta .row .v{color:#333}
.detail-actions{display:flex;gap:10px;flex-wrap:wrap}
.btn-buy{padding:12px 40px;background:#e4393c;color:#fff;border:none;border-radius:4px;font-size:16px;cursor:pointer;transition:background .2s}
.btn-buy:hover{background:#c0272a}
.btn-cart{padding:12px 40px;background:#ff6600;color:#fff;border:none;border-radius:4px;font-size:16px;cursor:pointer;transition:background .2s}
.btn-cart:hover{background:#e05500}
.btn-contact{padding:12px 32px;background:#fff;color:#e4393c;border:2px solid #e4393c;border-radius:4px;font-size:15px;cursor:pointer;transition:all .2s}
.btn-contact:hover{background:#e4393c;color:#fff}

/* 商品描述 */
.detail-desc{background:#fff;border-radius:var(--radius);padding:24px;margin-bottom:12px}
.detail-desc .tab-head{display:flex;border-bottom:2px solid #e4393c;margin-bottom:16px}
.detail-desc .tab-head span{padding:10px 24px;font-size:15px;cursor:pointer;color:#666}
.detail-desc .tab-head span.active{color:#e4393c;border-bottom:2px solid #e4393c;margin-bottom:-2px;font-weight:600}
.detail-desc .content{font-size:14px;line-height:1.8;color:#444}
.detail-desc .content img{max-width:100%;height:auto}

/* 推荐商品 */
.rec-section{background:#fff;border-radius:var(--radius);padding:16px;margin-bottom:12px}
.rec-section h3{font-size:15px;font-weight:700;margin:0 0 12px;color:#333;border-left:4px solid #e4393c;padding-left:10px}
.rec-grid{display:grid;grid-template-columns:repeat(5,1fr);gap:8px}
.rec-card{text-align:center;padding:8px}
.rec-card img{width:100%;aspect-ratio:1/1;object-fit:contain;border-radius:4px;background:#fafafa;margin-bottom:6px}
.rec-card .name{font-size:12px;color:#555;overflow:hidden;white-space:nowrap;text-overflow:ellipsis}
.rec-card .price{font-size:14px;color:#e4393c;font-weight:700}
.rec-card .price::before{content:'¥';font-size:11px}

/* =====================================================
   京东式服务保障条（页脚上方）
   ===================================================== */
.jd-service-band{background:#fafafa;border-top:1px solid #ebebeb;border-bottom:1px solid #ebebeb;margin-top:20px}
.jd-service-band-inner{max-width:1210px;margin:0 auto;padding:20px 15px;display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:0;align-items:stretch}
.jd-service-item{display:flex;align-items:center;gap:14px;padding:0 18px;border-right:1px solid #e8e8e8;min-height:52px}
.jd-service-item:first-child{padding-left:4px}
.jd-service-item:last-child{border-right:none;padding-right:4px}
.jd-service-txt{display:flex;flex-direction:column;gap:2px;line-height:1.35}
.jd-service-txt strong{font-size:15px;font-weight:700;color:#333}
.jd-service-txt span{font-size:12px;color:#999}
.jd-svc-ico{flex-shrink:0;width:40px;height:40px;border-radius:50%;border:2px solid var(--jd-red);position:relative;box-sizing:border-box;background:#fff}
.jd-svc-ico--z::after{content:'';position:absolute;left:50%;top:50%;width:10px;height:14px;border:2px solid var(--jd-red);border-top:none;border-radius:0 0 6px 6px;transform:translate(-50%,-55%)}
.jd-svc-ico--s::after{content:'';position:absolute;left:50%;top:50%;width:16px;height:10px;border:2px solid var(--jd-red);border-radius:2px;transform:translate(-50%,-50%)}
.jd-svc-ico--sh::after{content:'✓';position:absolute;left:50%;top:50%;transform:translate(-50%,-52%);font-size:16px;font-weight:800;color:var(--jd-red);line-height:1}
.jd-svc-ico--x::after{content:'';position:absolute;left:50%;top:50%;width:14px;height:14px;border:2px solid var(--jd-red);border-radius:50%;transform:translate(-50%,-50%)}
@media(max-width:900px){
  .jd-service-band-inner{grid-template-columns:repeat(2,minmax(0,1fr));gap:16px 12px;padding:16px 12px}
  .jd-service-item{border-right:none;padding:0 6px!important}
}

/* =====================================================
   PC 底部
   ===================================================== */
.mall-footer{background:#2d2d2d;color:#aaa;margin-top:20px}
.mall-footer .inner{max-width:1200px;margin:0 auto;padding:32px 15px 20px;display:grid;grid-template-columns:2fr 1fr 1fr 1fr;gap:32px}
.mall-footer h4{color:#fff;font-size:14px;margin:0 0 14px;padding-bottom:8px;border-bottom:1px solid #444}
.mall-footer ul li{margin-bottom:8px}
.mall-footer ul li a{color:#aaa;font-size:13px;transition:color .2s}
.mall-footer ul li a:hover{color:#fff}
.mall-footer .contact-info{font-size:13px;line-height:2}
.mall-footer .contact-info .phone{font-size:22px;color:#fff;font-weight:700;margin:8px 0}
.mall-footer-bottom{background:#222;text-align:center;padding:14px 15px;font-size:12px;color:#666}
.mall-footer-bottom a{color:#888}
.mall-footer-bottom a:hover{color:#aaa}

/* =====================================================
   手机端样式
   ===================================================== */
.m-header{position:fixed;top:0;left:0;right:0;z-index:1000;background:#e4393c;height:50px;display:flex;align-items:center;padding:0 12px;gap:10px}
.m-header .m-logo{color:#fff;font-size:16px;font-weight:700;flex:1;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.m-header .m-search-btn,.m-header .m-cart-btn{color:#fff;font-size:20px;flex-shrink:0;position:relative}
.m-header .m-cart-badge{position:absolute;top:-4px;right:-6px;background:#ff6600;color:#fff;font-size:9px;min-width:14px;height:14px;border-radius:7px;display:flex;align-items:center;justify-content:center;padding:0 2px}

.m-search-bar{background:#e4393c;padding:0 12px 10px;display:none}
.m-search-bar.show{display:flex;gap:8px}
.m-search-bar input{flex:1;height:36px;border:none;border-radius:4px;padding:0 12px;font-size:14px;outline:none}
.m-search-bar button{height:36px;padding:0 16px;background:#c0272a;color:#fff;border:none;border-radius:4px;font-size:14px}

.m-body{padding-top:50px;padding-bottom:60px;background:#f5f5f5}

/* 手机端品牌导航 */
.m-brands{background:#fff;padding:12px;margin-bottom:8px;overflow-x:auto;white-space:nowrap;-webkit-overflow-scrolling:touch}
.m-brands::-webkit-scrollbar{display:none}
.m-brands a{display:inline-block;padding:5px 14px;border:1px solid #eee;border-radius:20px;font-size:13px;color:#555;margin-right:6px}
.m-brands a:hover{border-color:#e4393c;color:#e4393c}

/* 手机端商品网格 */
.m-goods-section{background:#fff;margin-bottom:8px;border-radius:var(--radius);overflow:hidden}
.m-goods-head{display:flex;align-items:center;justify-content:space-between;padding:12px 12px 8px}
.m-goods-head h3{font-size:15px;font-weight:700;margin:0;color:#333;display:flex;align-items:center;gap:6px}
.m-goods-head h3::before{content:'';display:inline-block;width:3px;height:16px;background:#e4393c;border-radius:2px}
.m-goods-head a{font-size:12px;color:#999}
.m-goods-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:1px;background:#f0f0f0}
.m-goods-card{background:#fff;padding:10px}
.m-goods-card .img-wrap{width:100%;aspect-ratio:1/1;overflow:hidden;background:#fafafa;border-radius:4px;margin-bottom:8px}
.m-goods-card .img-wrap img{width:100%;height:100%;object-fit:contain}
.m-goods-card .name{font-size:13px;color:#333;line-height:1.4;height:2.6em;overflow:hidden;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;margin-bottom:6px}
.m-goods-card .price{font-size:18px;font-weight:700;color:#e4393c;font-family:Arial,sans-serif}
.m-goods-card .price::before{content:'¥';font-size:12px}
.m-goods-card .price-old{font-size:11px;color:#bbb;text-decoration:line-through}
.m-goods-card .price-old::before{content:'¥';font-size:10px}

/* 手机端底部导航 */
.m-footer-nav{position:fixed;bottom:0;left:0;right:0;z-index:1000;background:#fff;border-top:1px solid #eee;display:flex;height:56px}
.m-footer-nav a{flex:1;display:flex;flex-direction:column;align-items:center;justify-content:center;font-size:10px;color:#666;gap:2px;transition:color .2s}
.m-footer-nav a.active,.m-footer-nav a:hover{color:#e4393c}
.m-footer-nav .nav-icon{font-size:20px;line-height:1}
.m-footer-nav .cart-wrap{position:relative}
.m-footer-nav .cart-badge{position:absolute;top:-2px;right:-6px;background:#e4393c;color:#fff;font-size:9px;min-width:14px;height:14px;border-radius:7px;display:flex;align-items:center;justify-content:center;padding:0 2px}

/* =====================================================
   通用工具类
   ===================================================== */
.inner{max-width:1200px;margin:0 auto;padding:0 15px}
.clearfix::after{content:'';display:table;clear:both}
.text-red{color:var(--jd-red)}
.text-gray{color:#999}
.mt8{margin-top:8px}
.mb8{margin-bottom:8px}
.mt12{margin-top:12px}
.mb12{margin-bottom:12px}

/* =====================================================
   首页三栏（类京东：左分类 + 中内容 + 右 B2B 侧栏）
   ===================================================== */
.mall-home-layout{display:flex;gap:12px;max-width:1200px;margin:0 auto;padding:0 15px 20px;align-items:flex-start}
.mall-aside-right{width:210px;flex-shrink:0;background:#fff;border-radius:var(--radius);overflow:hidden;box-shadow:var(--shadow)}
.b2b-side-block{padding:14px 14px 12px;border-bottom:1px solid #f0f0f0}
.b2b-side-block:last-child{border-bottom:none}
.b2b-side-block h4{margin:0 0 10px;font-size:14px;font-weight:700;color:#333}
.b2b-side-block p{font-size:12px;color:#666;line-height:1.7;margin:0 0 8px}
.b2b-badges{display:flex;flex-wrap:wrap;gap:6px;margin-top:8px}
.b2b-badge{font-size:11px;padding:4px 8px;background:#fff5f5;color:#c0272a;border:1px solid #ffccc7;border-radius:4px;line-height:1.3}
.b2b-side-cta{display:block;text-align:center;padding:10px;background:#e4393c;color:#fff!important;font-size:13px;font-weight:600;border-radius:4px;margin-top:8px;transition:background .2s}
.b2b-side-cta:hover{background:#c0272a;color:#fff!important}
.b2b-announce{font-size:12px;color:#c0272a;line-height:1.6;max-height:4.8em;overflow:hidden}
.b2b-side-list li{font-size:12px;color:#555;line-height:2;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.b2b-side-list li a{color:#555}
.b2b-side-list li a:hover{color:#e4393c}

/* =====================================================
   顶栏 / 页脚 / 悬浮 / 微信弹层（简洁版）
   ===================================================== */
.mall-topbar-welcome{font-weight:400}
.mall-topbar-welcome strong{font-weight:600;color:#fff}
.mall-topbar-links a{color:rgba(255,255,255,.9)}
.mall-footer-h{font-size:14px;font-weight:600;color:#fff;margin:0 0 12px;padding-bottom:8px;border-bottom:1px solid #444}
.mall-footer-intro{color:#bbb;font-size:13px;line-height:1.75;margin:0 0 12px}
.mall-footer-bottom a,.mall-footer-bottom span a{color:#888;margin-left:12px}
.mall-footer-bottom a:first-of-type{margin-left:16px}
.mall-float-tools{position:fixed;right:12px;bottom:100px;z-index:998;display:flex;flex-direction:column;gap:8px}
.jd-side-rail{
  position:fixed;right:0;top:50%;transform:translateY(-50%);z-index:997;
  display:flex;flex-direction:column;gap:0;width:54px;
  box-shadow:-1px 0 8px rgba(0,0,0,.1);border-radius:0;overflow:hidden;border:1px solid #e8e8e8;border-right:none;background:#fff;
}
.jd-side-rail a{
  display:flex;flex-direction:column;align-items:center;justify-content:center;gap:3px;
  min-height:58px;padding:8px 4px;font-size:11px;color:#666;background:#fff;
  border-bottom:1px solid #f0f0f0;transition:background .15s,color .15s;line-height:1.2;text-align:center;
}
.jd-side-rail a:last-child{border-bottom:none}
.jd-side-rail a:hover{background:#fff5f5;color:var(--jd-red)}
.jd-rail-ico{font-size:17px;line-height:1;opacity:.9}
.jd-rail-txt{font-size:11px;color:#999}
.jd-side-rail a:hover .jd-rail-txt{color:var(--jd-red)}
.mall-float-qq,.mall-float-tel{display:flex;width:48px;height:48px;border-radius:50%;align-items:center;justify-content:center;text-decoration:none;color:#fff;font-size:20px;line-height:1;box-shadow:0 2px 12px rgba(0,0,0,.18)}
.mall-float-qq{background:#e4393c}
.mall-float-tel{background:#ff6600}
#wechat-modal.wechat-modal{position:fixed;inset:0;background:rgba(0,0,0,.65);z-index:9999;align-items:center;justify-content:center}
#wechat-modal.wechat-modal[style*="flex"]{display:flex!important}
.wechat-modal-box{background:#fff;padding:24px 20px;border-radius:8px;max-width:300px;width:90%;text-align:center;box-shadow:0 8px 32px rgba(0,0,0,.2)}
.wechat-modal-title{font-size:16px;font-weight:600;color:#333;margin:0 0 8px}
.wechat-modal-wxid{font-size:13px;color:#666;margin:0 0 12px}
.wechat-modal-wxid strong{color:#e4393c}
.wechat-modal-img{width:200px;height:200px;object-fit:contain;margin:0 auto 12px;display:block;border:1px solid #eee;border-radius:4px}
.wechat-modal-close{width:100%;padding:10px;background:#e4393c;color:#fff;border:none;border-radius:4px;font-size:14px;cursor:pointer}

/* 商品详情页补充（原 view_product 内联样式收敛） */
.detail-page{font-size:14px;color:#333;line-height:1.6}
.detail-page .breadcrumb{font-size:12px;color:#999;padding:10px 0}
.detail-page .breadcrumb a{color:#666}
.detail-gallery{width:420px;flex-shrink:0}
.detail-gallery .main-img{width:420px;height:420px;border:1px solid #eee;overflow:hidden;background:#fafafa;margin:0 auto 10px;display:flex;align-items:center;justify-content:center}
.detail-gallery .main-img img{max-width:100%;max-height:100%;object-fit:contain}
.detail-gallery .thumbs{display:flex;gap:8px;justify-content:center;flex-wrap:wrap}
.detail-gallery .thumbs img{width:56px;height:56px;object-fit:contain;border:2px solid #eee;cursor:pointer;background:#fafafa}
.detail-gallery .thumbs img:hover,.detail-gallery .thumbs img.active{border-color:#e4393c}
.detail-info h1{font-size:18px;font-weight:700;margin:0 0 12px;line-height:1.45}
.detail-price-box{background:#fef0f0;border:1px solid #fde2e2;padding:16px 20px;margin-bottom:16px}
.detail-price-box .price-label{font-size:12px;color:#999;margin-bottom:4px}
.detail-price-box .price-main{font-size:26px;font-weight:700;color:#e4393c;font-family:Arial,sans-serif}
.detail-price-box .price-main::before{content:'¥';font-size:15px}
.detail-price-box .price-market{font-size:12px;color:#999;text-decoration:line-through;margin-top:4px}
.detail-meta .row{display:flex;gap:8px;font-size:13px;margin-bottom:8px}
.detail-meta .row .k{color:#999;width:72px;flex-shrink:0}
.detail-desc .tab-head{display:flex;border-bottom:2px solid #e4393c;margin-bottom:12px}
.detail-desc .tab-head span{padding:10px 18px;font-size:14px;cursor:pointer;color:#666}
.detail-desc .tab-head span.active{color:#e4393c;font-weight:600}
.detail-tip{margin-top:14px;font-size:13px;color:#888;line-height:1.6}

/* 列表 / 文章阅读区（未加 jd-store-page 的模板保持原宽） */
.list-page:not(.jd-store-page),
.article-page:not(.jd-store-page){
  max-width:1210px;
  margin:0 auto;
  padding:14px 15px 28px;
}
.page-breadcrumb{font-size:13px;color:#888;margin-bottom:14px;padding:12px 16px;background:#fff;border-radius:12px;border:1px solid #eee;box-shadow:0 1px 3px rgba(0,0,0,.04)}
.page-breadcrumb a{color:#666}
.page-breadcrumb a:hover{color:var(--jd-red)}
.content-split{display:flex;gap:14px;align-items:flex-start}
.content-split__main{flex:1;min-width:0;background:#fff;border-radius:12px;border:1px solid #eee;padding:20px 22px;box-shadow:0 1px 3px rgba(0,0,0,.04)}
.content-split__side{width:200px;flex-shrink:0;background:#fff;border-radius:12px;border:1px solid #eee;padding:12px 0;box-shadow:0 1px 3px rgba(0,0,0,.04)}
.content-split__side h2{font-size:13px;font-weight:600;margin:0 0 8px;padding:0 14px;color:#333}
.content-split__side ul li a{display:block;padding:8px 14px;font-size:13px;color:#555;border-bottom:1px solid #f5f5f5}
.content-split__side ul li a:hover{background:#fff5f5;color:var(--jd-red)}
.article-meta{font-size:13px;color:#888;margin:0 0 16px}
.article-prose img{max-width:100%;height:auto}
.seo-table{width:100%;border-collapse:collapse;font-size:14px}
.seo-table th,.seo-table td{padding:10px 12px;border:1px solid #eee;text-align:left}
.page-list-title{font-size:18px;margin:0 0 16px;font-weight:700;color:#333}

/* =====================================================
   京东式 · 内页壳（分类聚合 / 文章列表 / 文章详情 / 专题图集等）
   ===================================================== */
.jd-store-page{
  max-width:none!important;
  width:100%;
  margin:0!important;
  padding:12px 0 36px!important;
  background:#f4f4f4;
  min-height:46vh;
}
.jd-store-page__inner{
  max-width:var(--jd-wrap,1190px);
  margin:0 auto;
  padding:0 10px;
}
.jd-store-page .page-breadcrumb{
  margin:0 0 10px;
  padding:10px 14px;
  background:#fff;
  border:1px solid #e8e8e8;
  border-radius:0;
  box-shadow:0 1px 2px rgba(0,0,0,.04);
}
.jd-store-page .content-split{margin:0}
.jd-store-page .content-split__side{
  width:198px;
  border-radius:0;
  border:1px solid #e8e8e8;
  padding:0;
  box-shadow:0 1px 2px rgba(0,0,0,.04);
  overflow:hidden;
}
.jd-store-page .content-split__side h2{
  margin:0;
  padding:11px 14px;
  font-size:14px;
  font-weight:700;
  color:#fff;
  background:var(--jd-red);
}
.jd-store-page .content-split__side ul{padding:6px 0;margin:0}
.jd-store-page .content-split__side ul li a{
  padding:9px 14px;
  font-size:13px;
  color:#333;
  border-bottom:1px solid #f2f2f2;
  border-left:3px solid transparent;
}
.jd-store-page .content-split__side ul li:last-child a{border-bottom:none}
.jd-store-page .content-split__side ul li a:hover{
  background:#fff5f5;
  color:var(--jd-red);
  border-left-color:var(--jd-red);
}
.jd-store-page .content-split__main{
  border-radius:0;
  border:1px solid #e8e8e8;
  padding:22px 24px 28px;
  box-shadow:0 1px 2px rgba(0,0,0,.04);
}
.jd-store-page .page-list-title,
.jd-store-page .content-split__main > header h1,
.jd-store-page article header h1{
  font-size:22px;
  font-weight:700;
  color:#1a1a1a;
  margin:0 0 14px;
  padding-bottom:12px;
  border-bottom:1px solid #eee;
  position:relative;
}
.jd-store-page .page-list-title::after,
.jd-store-page .content-split__main > header h1::after,
.jd-store-page article header h1::after{
  content:'';
  position:absolute;
  left:0;
  bottom:-1px;
  width:72px;
  height:2px;
  background:var(--jd-red);
}
.jd-store-page .seo-table th{background:#fafafa;font-weight:600;color:#333;border-color:#eee}
.jd-store-page .seo-table td{border-color:#eee;color:#444}
.jd-store-page .seo-table tbody tr:hover td{background:#fff8f8}
.jd-store-page .article-prose{font-size:15px;line-height:1.85;color:#333}
.jd-store-page .article-prose p{margin:.75em 0}
.jd-store-page .jd-article-card__link{padding:14px 6px}
.jd-store-page .jd-article-card__title{font-weight:500}
.jd-store-page .jd-fenlei-grid{margin-top:14px}
.jd-store-page .jd-fenlei-block{
  border:1px solid #e8e8e8;
  border-radius:0;
  box-shadow:0 1px 2px rgba(0,0,0,.04);
  padding:18px 18px 16px;
}
.jd-store-page .jd-fenlei-block h2{
  border-bottom:2px solid var(--jd-red);
  font-size:16px;
  font-weight:700;
}
.jd-store-page .jd-fenlei-block h2 a:hover{color:var(--jd-red)}
.jd-store-page .jd-brand-grid li a{border-radius:0;border-color:#e8e8e8}
.jd-store-page .jd-brand-grid li a:hover{border-color:var(--jd-red)}
.jd-store-page__single{
  max-width:900px;
  margin:14px auto 0;
  padding:22px 24px;
  background:#fff;
  border:1px solid #e8e8e8;
  box-shadow:0 1px 2px rgba(0,0,0,.04);
}
.jd-store-page .jd-store-page__inner > .page-list-title{margin-top:0}
.jd-store-page .jd-store-page__inner > .jd-article-cards,
.jd-store-page .jd-store-page__inner > .jd-brand-grid,
.jd-store-page .jd-fenlei-lead{margin:-4px 0 16px;color:#888;font-size:13px;line-height:1.6}
.jd-store-page .jd-fenlei-empty{font-size:13px;margin:0;color:#999}
.jd-store-page .jd-gallery-wrap{margin-top:8px}
.jd-store-page .jd-gallery-title{font-size:16px;font-weight:700;color:#333;margin:0 0 12px;padding-bottom:8px;border-bottom:1px solid #eee;position:relative}
.jd-store-page .jd-gallery-title::after{content:'';position:absolute;left:0;bottom:-1px;width:40px;height:2px;background:var(--jd-red)}
.jd-store-page .jd-store-page__inner > .mt12{
  margin-top:12px;
  padding:14px 16px!important;
  background:#fff!important;
  border:1px solid #e8e8e8!important;
  border-radius:0!important;
  text-align:center;
}
@media(max-width:900px){
  .jd-store-page .content-split{flex-direction:column}
  .jd-store-page .content-split__side{width:100%!important}
}

/* 首页横幅更紧凑 */
.banner-placeholder{padding:28px 20px}
.banner-placeholder h1,.banner-placeholder h2{font-size:26px;margin:0 0 8px}
.banner-placeholder p{font-size:14px;margin:0 0 14px;opacity:.95}
.brand-nav{padding:10px 0}

/* 专题/图集列表卡片、分类页、品牌墙 */
.jd-article-cards{list-style:none;margin:0;padding:0}
.jd-article-card{border-bottom:1px solid #f0f0f0}
.jd-article-card:last-child{border-bottom:none}
.jd-article-card__link{display:flex;gap:14px;padding:14px 0;align-items:flex-start;color:inherit;text-decoration:none;transition:background .15s}
.jd-article-card__link:hover{background:#fff9f9}
.jd-article-card__thumb{flex-shrink:0}
.jd-article-card__thumb img{display:block;border:1px solid #eee;border-radius:4px;object-fit:cover}
.jd-article-card__body{flex:1;min-width:0}
.jd-article-card__title{display:block;font-size:15px;font-weight:600;color:#333;margin-bottom:6px;line-height:1.45}
.jd-article-card__meta{font-size:12px;color:#999}
.jd-gallery-wrap{margin:8px 0 16px}
.jd-gallery-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(140px,1fr));gap:12px}
.jd-gallery-grid img{width:100%;height:140px;object-fit:cover;border:1px solid #eee;border-radius:4px;background:#fafafa}
.jd-fenlei-page .jd-fenlei-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(280px,1fr));gap:16px;margin-top:12px}
.jd-fenlei-block{background:#fff;border:1px solid #eee;border-radius:8px;padding:16px 18px}
.jd-fenlei-block h2{margin:0 0 12px;font-size:16px;padding-bottom:8px;border-bottom:2px solid #e4393c}
.jd-fenlei-block h2 a{color:#333;text-decoration:none}
.jd-fenlei-block h2 a:hover{color:#e4393c}
.jd-fenlei-block ul{list-style:none;margin:0;padding:0;display:flex;flex-wrap:wrap;gap:8px 16px}
.jd-fenlei-block li a{font-size:13px;color:#666;text-decoration:none}
.jd-fenlei-block li a:hover{color:#e4393c}
.jd-brand-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(120px,1fr));gap:16px;list-style:none;margin:0;padding:0}
.jd-brand-grid li a{display:block;text-align:center;background:#fff;border:1px solid #eee;border-radius:8px;padding:14px 10px;text-decoration:none;color:#333;transition:box-shadow .2s,border-color .2s}
.jd-brand-grid li a:hover{border-color:#e4393c;box-shadow:0 2px 12px rgba(228,57,60,.1)}
.jd-brand-grid img{width:80px;height:80px;object-fit:contain;display:block;margin:0 auto 8px}
.jd-brand-grid .name{font-size:13px}

/* =====================================================
   响应式
   ===================================================== */
@media(max-width:1200px){
  .goods-grid{grid-template-columns:repeat(3,1fr)}
  .list-goods-grid{grid-template-columns:repeat(3,1fr)}
  .rec-grid{grid-template-columns:repeat(4,1fr)}
  .mall-footer .inner{grid-template-columns:1fr 1fr}
}
@media(max-width:900px){
  .mall-aside-right{display:none}
  .mall-sidebar{display:none}
  .goods-grid{grid-template-columns:repeat(2,1fr)}
  .list-goods-grid{grid-template-columns:repeat(2,1fr)}
  .detail-wrap{flex-direction:column}
  .detail-gallery{width:100%}
  .mall-footer .inner{grid-template-columns:1fr 1fr}
}
@media(max-width:600px){
  .jd-header-inner{flex-wrap:wrap;gap:8px}
  .jd-search{width:100%}
  .jd-side-rail{display:none}
  .jd-nav-links{display:none}
  .jd-nav-channel-end{display:none}
  .jd-nav-cats-trigger{width:100%}
  .goods-grid{grid-template-columns:repeat(2,1fr)}
  .rec-grid{grid-template-columns:repeat(3,1fr)}
  .mall-footer .inner{grid-template-columns:1fr}
}

/* ===== 2026-05 京东对标整改补丁 ===== */
.jd-carousel{position:relative;overflow:hidden}
.jd-carousel-viewport{overflow:hidden;width:100%}
.jd-carousel-track{display:flex;transition:transform .45s ease}
.jd-carousel-slide{flex:0 0 100%;min-width:100%}
.jd-carousel-dots{position:absolute;left:0;right:0;bottom:12px;display:flex;justify-content:center;gap:8px;z-index:3}
.jd-carousel-dot{width:10px;height:10px;border-radius:50%;border:none;background:rgba(255,255,255,.55);cursor:pointer;padding:0}
.jd-carousel-dot.is-active{background:#fff;box-shadow:0 0 0 2px rgba(225,37,27,.5)}
.jd-carousel:has(.jd-carousel-slide img[src]) .jd-hero-banner-fallback{display:none}

.jd-region-select{border:none;background:transparent;color:#666;font-size:12px;cursor:pointer;max-width:88px}
.jd-topbar-drop{position:relative;display:inline-block}
.jd-topbar-drop-menu{display:none;position:absolute;top:100%;left:0;min-width:140px;background:#fff;border:1px solid #eee;box-shadow:0 4px 12px rgba(0,0,0,.1);z-index:1001;padding:6px 0}
.jd-topbar-drop-menu a{display:block;padding:8px 14px;font-size:12px;color:#666;white-space:nowrap}
.jd-topbar-drop:hover .jd-topbar-drop-menu{display:block}
.jd-search-wrap{position:relative}
.jd-search-suggest{position:absolute;left:0;right:0;top:100%;margin-top:4px;background:#fff;border:1px solid #eee;box-shadow:0 6px 18px rgba(0,0,0,.1);z-index:1002;padding:10px;font-size:12px}
.jd-suggest-group strong{display:block;color:#999;margin-bottom:6px}
.jd-suggest-group a{display:inline-block;margin:0 8px 6px 0;color:#666}
.jd-mini-cart-wrap{position:relative}
.jd-cart-badge{position:absolute;top:-4px;left:18px;min-width:16px;height:16px;padding:0 4px;border-radius:8px;background:var(--jd-red);color:#fff;font-size:11px;line-height:16px;text-align:center}
.jd-coupon-badge-mini{position:absolute;top:-4px;right:-4px;min-width:18px;height:18px;padding:0 4px;border-radius:9px;background:#ff7b00;color:#fff;font-size:10px;line-height:18px;text-align:center;font-weight:700}
.jd-coupon-badge-mini[hidden]{display:none}
.jd-cart-pop{position:absolute;top:100%;right:0;width:280px;margin-top:8px;background:#fff;border:1px solid #eee;box-shadow:0 8px 24px rgba(0,0,0,.12);z-index:1002;padding:14px}
.jd-cart-pop-btn{display:block;margin-top:10px;text-align:center;background:var(--jd-red);color:#fff!important;padding:8px;border-radius:2px}
.jd-cart-pop-empty{font-size:12px;color:#999;margin:8px 0}

.jd-seckill{margin-top:12px;background:#fff;border:1px solid #ebebeb;padding:14px 16px}
.jd-seckill-head{display:flex;align-items:center;gap:12px;margin-bottom:12px}
.jd-seckill-title{margin:0;font-size:20px;font-weight:800;color:var(--jd-red)}
.jd-seckill-sub{margin:0;font-size:13px;color:#666}
.jd-seckill-sub strong{color:var(--jd-red);font-size:16px;margin-left:4px}
.jd-seckill-more{margin-left:auto;font-size:13px;color:#999}

.jd-rec-card-wrap{position:relative;display:flex;flex-direction:column;background:#fff;border:1px solid #f0f0f0;transition:box-shadow .2s,transform .2s}
.jd-rec-card-wrap:hover{box-shadow:0 4px 14px rgba(0,0,0,.08);transform:translateY(-2px)}
.jd-rec-card-wrap .jd-rec-card{flex:1;border:none}
.jd-rec-tag{position:absolute;top:8px;left:8px;z-index:2;font-size:11px;padding:2px 6px;border-radius:2px;color:#fff}
.jd-rec-tag--hot{background:var(--jd-red)}
.jd-rec-tag--new{background:#ff7b00}
.jd-rec-card-meta{font-size:11px;color:#999;margin:0 0 6px;display:flex;gap:6px;flex-wrap:wrap}
.jd-rec-meta-sep{color:#ddd}
.jd-rec-addcart{display:block;margin:0 10px 10px;padding:7px;text-align:center;background:#fff;border:1px solid var(--jd-red);color:var(--jd-red)!important;font-size:13px;border-radius:2px}
.jd-rec-addcart:hover{background:var(--jd-red);color:#fff!important}
.jd-rec-card-wrap:hover .jd-rec-addcart{background:var(--jd-red);color:#fff!important}

.jd-quad-cell{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:6px;padding:14px 8px;background:#fafafa;border:1px solid #eee;text-align:center;min-height:88px}
.jd-quad-ico{width:36px;height:36px;border-radius:50%;background:linear-gradient(135deg,#ffe8e6,#fff)}
.jd-quad-cell--new .jd-quad-ico{background:linear-gradient(135deg,#e8f4ff,#fff)}
.jd-quad-cell--tg .jd-quad-ico{background:linear-gradient(135deg,#e8fff0,#fff)}
.jd-quad-cell--pf .jd-quad-ico{background:linear-gradient(135deg,#fff5e6,#fff)}
.jd-quad-cell--hot .jd-quad-ico{background:linear-gradient(135deg,#ffe6f0,#fff)}
.jd-user-notice-scroll{max-height:72px;overflow:hidden;line-height:1.5;font-size:12px;color:#666}

.jd-plist-page{padding:12px 0 24px}
.jd-breadcrumb{font-size:12px;color:#999;margin-bottom:12px;padding:8px 0}
.jd-breadcrumb .sep{margin:0 6px;color:#ccc}
.jd-plist-layout{display:grid;grid-template-columns:200px 1fr;gap:14px}
.jd-plist-side-box{background:#fff;border:1px solid #eee;padding:12px;margin-bottom:12px}
.jd-plist-side-title{margin:0 0 10px;font-size:14px;font-weight:700;border-left:3px solid var(--jd-red);padding-left:8px}
.jd-plist-cats li a{display:block;padding:6px 0;font-size:13px;color:#555;border-bottom:1px dashed #f0f0f0}
.jd-plist-tags{display:flex;flex-wrap:wrap;gap:6px}
.jd-plist-tags a{font-size:12px;padding:4px 10px;background:#f7f7f7;border-radius:999px;color:#666}
.jd-plist-toolbar{display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:10px;margin-bottom:14px;background:#fff;padding:12px 14px;border:1px solid #eee}
.jd-plist-title{margin:0;font-size:18px;font-weight:700}
.jd-plist-sort a{margin-left:12px;font-size:13px;color:#666}
.jd-plist-sort a:hover{color:var(--jd-red)}
.jd-pager{margin-top:20px;padding:14px 12px;background:#fff;border:1px solid #eee;text-align:center;font-size:13px;clear:both}
.jd-pager ul,.jd-pager ol,.jd-pager .pagination{display:flex;flex-wrap:wrap;justify-content:center;align-items:center;gap:6px;list-style:none;margin:0 auto;padding:0}
.jd-pager li{display:inline-flex;list-style:none;margin:0;padding:0;float:none}
.jd-pager a,.jd-pager span,.jd-pager li a,.jd-pager li span{display:inline-block;min-width:34px;padding:6px 12px;border:1px solid #ddd;background:#fff;color:#666;font-size:13px;line-height:1.4;border-radius:2px;text-decoration:none;box-sizing:border-box}
.jd-pager a:hover{border-color:var(--jd-red);color:var(--jd-red)}
.jd-pager .current,.jd-pager .active a,.jd-pager .active span,.jd-pager li.active a,.jd-pager li.active span{background:var(--jd-red);color:#fff!important;border-color:var(--jd-red)}
.jd-pager .disabled span,.jd-pager li.disabled span{color:#ccc;border-color:#eee;background:#fafafa;cursor:default}
.jd-plist-main--full{max-width:100%}
.jd-plist-grid{min-height:120px}
.jd-plist-main{background:transparent}
.jd-pager .ey_pagination{display:flex;flex-wrap:wrap;justify-content:center;gap:6px}
.jd-pager .ey_pagination a,.jd-pager .ey_pagination span{display:inline-block;min-width:34px;padding:6px 12px;border:1px solid #ddd;background:#fff;color:#666;font-size:13px;border-radius:2px}
.jd-pager .ey_pagination .current{background:var(--jd-red);color:#fff!important;border-color:var(--jd-red)}

.jd-item-page{padding:12px 0 24px}
.jd-item-wrap{display:grid;grid-template-columns:420px 1fr;gap:24px;background:#fff;border:1px solid #eee;padding:20px;margin-bottom:12px}
.jd-item-main-img{border:1px solid #f0f0f0;padding:12px;text-align:center}
.jd-item-main-img img{max-width:100%;max-height:400px;object-fit:contain;margin:0 auto}
.jd-item-thumbs{display:flex;gap:8px;margin-top:10px;flex-wrap:wrap}
.jd-item-thumb{border:2px solid transparent;padding:0;background:#fff;cursor:pointer}
.jd-item-thumb.is-active{border-color:var(--jd-red)}
.jd-item-thumb img{width:56px;height:56px;object-fit:contain}
.jd-item-title{margin:0 0 8px;font-size:20px;font-weight:700;line-height:1.4}
.jd-item-sub{font-size:13px;color:#999;margin-bottom:14px}
.jd-item-price-box{background:#fff5f5;padding:14px;margin-bottom:14px}
.jd-item-price-label{font-size:13px;color:#999;margin-right:8px}
.jd-item-price{font-size:28px;font-weight:800;color:var(--jd-red)}
.jd-item-price::before{content:'¥';font-size:14px}
.jd-item-price-old{margin-left:10px;font-size:14px;color:#bbb;text-decoration:line-through}
.jd-item-meta .row{display:flex;gap:10px;margin-bottom:8px;font-size:13px}
.jd-item-meta .k{color:#999;min-width:48px}
.jd-item-qty{display:flex;align-items:center;gap:12px;margin:16px 0}
.jd-qty-stepper{display:inline-flex;border:1px solid #ddd}
.jd-qty-stepper button{width:32px;height:32px;border:none;background:#f7f7f7;cursor:pointer}
.jd-qty-stepper input{width:48px;height:32px;border:none;border-left:1px solid #ddd;border-right:1px solid #ddd;text-align:center}
.jd-item-actions{display:flex;flex-wrap:wrap;gap:10px}
.jd-btn-cart,.jd-btn-buy{padding:12px 28px;font-size:15px;font-weight:700;border:none;cursor:pointer;text-align:center}
.jd-btn-cart{background:var(--jd-red);color:#fff!important}
.jd-btn-buy{background:#ffbc00;color:#333!important}
.jd-btn-ghost{padding:12px 20px;border:1px solid #ddd;background:#fff;cursor:pointer}
.jd-item-tip{font-size:12px;color:#999;margin-top:12px}
.jd-item-tabs{background:#fff;border:1px solid #eee;margin-bottom:12px}
.jd-item-tab-head{display:flex;border-bottom:1px solid #eee}
.jd-item-tab-head button{padding:12px 20px;border:none;background:#fff;font-size:14px;cursor:pointer;border-bottom:2px solid transparent}
.jd-item-tab-head button.is-active{color:var(--jd-red);border-bottom-color:var(--jd-red);font-weight:700}
.jd-item-tab-panel{display:none;padding:16px 20px;font-size:14px;line-height:1.8}
.jd-item-tab-panel.is-active{display:block}
.jd-item-notice-list{padding-left:20px;color:#555}

@media(max-width:900px){
  .jd-plist-layout{grid-template-columns:1fr}
  .jd-plist-side{display:none}
  .jd-item-wrap{grid-template-columns:1fr}
}

/* ===== P2：活动入口 / 领券 / 评价 / 侧栏 / 弹窗 ===== */
.jd-activity-band{display:grid;grid-template-columns:repeat(6,1fr);gap:10px;margin-top:12px;background:#fff;border:1px solid #ebebeb;padding:14px 12px}
.jd-activity-item{display:flex;flex-direction:column;align-items:center;gap:6px;padding:10px 6px;border-radius:4px;transition:background .15s,transform .15s}
.jd-activity-item:hover{background:#fff7f7;transform:translateY(-2px)}
.jd-activity-ico{width:44px;height:44px;border-radius:50%;background:linear-gradient(135deg,#ffe8e6,#fff)}
.jd-activity-item--cp .jd-activity-ico{background:linear-gradient(135deg,#fff0e0,#fff)}
.jd-activity-item--tg .jd-activity-ico{background:linear-gradient(135deg,#e8fff0,#fff)}
.jd-activity-item--biz .jd-activity-ico{background:linear-gradient(135deg,#e8f0ff,#fff)}
.jd-activity-t{font-size:14px;font-weight:700;color:#333}
.jd-activity-s{font-size:11px;color:#999}

.jd-coupon-center{margin-top:12px;background:#fff;border:1px solid #ebebeb;padding:16px}
.jd-coupon-center-head{display:flex;align-items:center;flex-wrap:wrap;gap:10px;margin-bottom:14px}
.jd-coupon-center-title{margin:0;font-size:20px;font-weight:800;color:var(--jd-red)}
.jd-coupon-center-sub{margin:0;font-size:13px;color:#999;flex:1}
.jd-coupon-center-link{font-size:13px;color:var(--jd-red)}
.jd-coupon-list{display:grid;grid-template-columns:repeat(4,1fr);gap:12px}
.jd-coupon-card{display:flex;align-items:stretch;background:linear-gradient(90deg,#fff5f5 0%,#fff 40%);border:1px solid #ffd6d6;border-radius:4px;overflow:hidden;min-height:96px}
.jd-coupon-card__val{display:flex;align-items:center;justify-content:center;min-width:76px;background:var(--jd-red);color:#fff;flex-direction:column;padding:8px}
.jd-coupon-card__val small{font-size:12px}
.jd-coupon-card__val strong{font-size:28px;line-height:1;font-weight:800}
.jd-coupon-card--ship .jd-coupon-card__val strong{font-size:18px}
.jd-coupon-card__body{flex:1;padding:10px 12px;font-size:12px;color:#666}
.jd-coupon-card__body h3{margin:0 0 4px;font-size:14px;color:#333}
.jd-coupon-card__tag{display:inline-block;margin-top:4px;padding:1px 6px;background:#fff0f0;color:var(--jd-red);border-radius:2px;font-size:11px}
.jd-coupon-get{align-self:center;margin-right:10px;padding:8px 14px;border:none;background:var(--jd-red);color:#fff;font-size:13px;cursor:pointer;white-space:nowrap;border-radius:2px}
.jd-coupon-get.is-got{background:#ccc;cursor:default}
.jd-coupon-tip{margin:12px 0 0;font-size:12px;color:#999;line-height:1.6}

.jd-item-coupons{display:flex;flex-wrap:wrap;align-items:center;gap:8px;margin-bottom:14px;padding:10px 12px;background:#fafafa;border:1px dashed #eee}
.jd-item-coupons-label{font-size:13px;color:#999}
.jd-item-coupon-tag{font-size:12px;padding:3px 8px;border:1px solid #ffc9c9;color:var(--jd-red);background:#fff}
.jd-item-coupon-tag--ship{border-color:#b7e4c7;color:#2e7d32}
.jd-item-coupon-btn{margin-left:auto;padding:4px 12px;border:1px solid var(--jd-red);background:#fff;color:var(--jd-red);cursor:pointer;font-size:12px}

.jd-reviews{margin-top:0;padding:0}
.jd-reviews-head{display:flex;align-items:center;flex-wrap:wrap;gap:12px;margin-bottom:14px;padding-bottom:12px;border-bottom:1px solid #eee}
.jd-reviews-title{margin:0;font-size:16px;font-weight:700}
.jd-reviews-score-num{font-size:28px;font-weight:800;color:var(--jd-red);margin-right:8px}
.jd-reviews-score-txt{font-size:13px;color:#999}
.jd-reviews-login{margin-left:auto;font-size:13px;color:var(--jd-red)}
.jd-review-list{list-style:none;margin:0;padding:0}
.jd-review-item{padding:14px 0;border-bottom:1px solid #f0f0f0}
.jd-review-user{display:flex;align-items:center;gap:10px;margin-bottom:8px}
.jd-review-avatar{width:32px;height:32px;border-radius:50%;background:#f0f0f0;display:flex;align-items:center;justify-content:center;font-size:13px;color:#666}
.jd-review-name{font-weight:600;font-size:13px}
.jd-review-star{margin-left:auto;font-size:12px;color:#ff7b00}
.jd-review-content{margin:0 0 8px;font-size:14px;line-height:1.6;color:#333}
.jd-review-imgs{display:flex;flex-wrap:wrap;gap:8px;margin-bottom:8px}
.jd-review-imgs img{border:1px solid #eee;object-fit:cover}
.jd-review-meta{font-size:12px;color:#999;margin:0}
.jd-review-reply{margin-top:8px;padding:10px;background:#fafafa;font-size:13px;color:#555}
.jd-reviews-empty{font-size:13px;color:#999;text-align:center;padding:24px}

.jd-rec-tag--sale{left:auto;right:8px;background:#ff7b00}

.jd-side-rail a .jd-rail-ico{display:block;width:22px;height:22px;margin:0 auto 4px;background:center/contain no-repeat}
.jd-rail-ico--cart{background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23e1251b' stroke-width='1.8'%3E%3Cpath d='M5 6h2l1.2 12h9.1L19 8H7'/%3E%3Ccircle cx='10' cy='19' r='1.4' fill='%23e1251b' stroke='none'/%3E%3Ccircle cx='17' cy='19' r='1.4' fill='%23e1251b' stroke='none'/%3E%3C/svg%3E")}
.jd-rail-ico--coupon{background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='%23e1251b'%3E%3Cpath d='M4 8h16a2 2 0 012 2v1a2 2 0 010 4v1a2 2 0 01-2 2H4a2 2 0 01-2-2v-1a2 2 0 010-4V10a2 2 0 012-2z'/%3E%3C/svg%3E")}
.jd-rail-ico--user{background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='%23666'%3E%3Ccircle cx='12' cy='8' r='4'/%3E%3Cpath d='M4 20c0-4 4-6 8-6s8 2 8 6'/%3E%3C/svg%3E")}
.jd-rail-ico--wx{background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='%2328c445'%3E%3Cpath d='M8 10a2 2 0 110-4 2 2 0 010 4zm8 0a2 2 0 110-4 2 2 0 010 4zM4 14c2 2 4 3 8 3s6-1 8-3'/%3E%3C/svg%3E")}
.jd-rail-ico--kf{background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='%23666'%3E%3Cpath d='M4 6h16v8H9l-3 3V14H4z'/%3E%3C/svg%3E")}
.jd-rail-ico--fb{background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='%23666'%3E%3Cpath d='M4 4h16v12H7l-3 3v-3H4z'/%3E%3C/svg%3E")}
.jd-rail-ico--top{background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23666' stroke-width='2'%3E%3Cpath d='M12 5l-6 6h4v8h4v-8h4z'/%3E%3C/svg%3E")}
.jd-side-rail{opacity:1;pointer-events:auto}
.jd-side-rail.is-visible{opacity:1}

.jd-modal{position:fixed;inset:0;z-index:2000;display:flex;align-items:center;justify-content:center;padding:20px}
.jd-modal[hidden]{display:none!important}
.jd-modal-mask{position:absolute;inset:0;background:rgba(0,0,0,.45)}
.jd-modal-box{position:relative;width:100%;max-width:420px;background:#fff;padding:20px;border-radius:4px;box-shadow:0 12px 40px rgba(0,0,0,.2)}
.jd-modal-title{margin:0 0 8px;font-size:18px}
.jd-modal-desc{margin:0 0 14px;font-size:13px;color:#999}
.jd-feedback-form label{display:block;margin-bottom:12px;font-size:13px;color:#666}
.jd-feedback-form select,.jd-feedback-form input,.jd-feedback-form textarea{width:100%;margin-top:6px;padding:8px 10px;border:1px solid #ddd;font-size:14px}
.jd-modal-actions{display:flex;justify-content:flex-end;gap:10px;margin-top:8px}

.jd-toast{position:fixed;left:50%;bottom:80px;transform:translateX(-50%) translateY(12px);background:rgba(0,0,0,.78);color:#fff;padding:10px 18px;border-radius:4px;font-size:14px;z-index:3000;opacity:0;transition:opacity .25s,transform .25s;pointer-events:none}
.jd-toast.is-show{opacity:1;transform:translateX(-50%) translateY(0)}

.jd-user-notice-scroll.is-scroll .jd-notice-marquee{display:inline-block;white-space:nowrap;animation:jdNoticeMarquee 18s linear infinite}
.jd-notice-gap{display:inline-block;width:48px}
@keyframes jdNoticeMarquee{0%{transform:translateX(0)}100%{transform:translateX(-50%)}}

@media(max-width:1100px){
  .jd-activity-band{grid-template-columns:repeat(3,1fr)}
  .jd-coupon-list{grid-template-columns:repeat(2,1fr)}
}
@media(max-width:768px){
  .jd-activity-band{grid-template-columns:repeat(2,1fr)}
  .jd-coupon-list{grid-template-columns:1fr}
  .jd-coupon-card{flex-wrap:wrap}
  .jd-coupon-get{width:calc(100% - 20px);margin:0 10px 10px}
}

/* ===== P0 补丁：轮播占位 / 导航 / 浮动条 ===== */
.jd-carousel.is-ready .jd-hero-banner-fallback{display:none!important}
.jd-nav-row{background:var(--jd-red);border-bottom-color:#c81623}
.jd-nav-links a{color:#fff}
.jd-nav-links a.cur,.jd-nav-links a:hover{color:#fff;background:rgba(0,0,0,.12)}
.jd-nav-channel-end{color:#fff!important}
.jd-page .mall-float-tools{display:none}
.jd-coupon-badge-mini{position:absolute;top:-4px;right:-4px;min-width:16px;height:16px;padding:0 4px;font-size:10px;line-height:16px;text-align:center;background:#ffbc00;color:#333;border-radius:8px}
.jd-mini-cart-wrap{position:relative}
.jd-rec-card-img{background:#f7f7f7}
.jd-rec-card-img img{min-height:80px}
@media(max-width:600px){
  .jd-side-rail{display:flex}
  .jd-page .mall-float-tools{display:flex}
}

/* 独立购物车：顶栏登录态 + 迷你车弹层 */
.sac-user-auth strong#sacUserNick{font-weight:700;color:var(--jd-red)}
.jd-cart-pop-list{list-style:none;margin:0 0 10px;padding:0;max-height:200px;overflow:auto}
.jd-cart-pop-item{display:flex;justify-content:space-between;gap:8px;padding:6px 0;border-bottom:1px dashed #f0f0f0;font-size:12px;line-height:1.4}
.jd-cart-pop-item .t{flex:1;color:#333;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.jd-cart-pop-item .q{color:#999;flex-shrink:0}
.jd-cart-pop-sum{margin:0 0 10px;font-size:13px;color:var(--jd-red);font-weight:700}
button.jd-btn-cart{border:none;cursor:pointer;text-decoration:none;display:inline-block}
