﻿/* ============================================
   宁帅商贸 - 全站样式 "奢华黑金" 设计系统 V7
   深黑 · 香槟金 · 象牙白 · 大理石丝绸纹理
   ============================================ */
/* ============================================
   宁帅商贸 - 全站样式 "奢华浅金" 设计系统 V10
   象牙白 · 古铜金 · 深棕黑 · 丝绸亚麻纹理
   ============================================ */
/* ============================================
   宁帅商贸 - 全站样式 "纯白·金" 设计系统 V11
   纯白 · 浅金 · 深棕黑 · 丝绢纹理
   ============================================ */
:root {
  --color-primary: #1A1A1A; --color-primary-dark: #000000;
  --color-primary-soft: rgba(168,135,75,0.08); --color-primary-light: #2D2A22;
  --color-accent: #A8874B; --color-accent-dark: #7A5E2E; --color-accent-light: #C9A56A;
  --color-gold: #A8874B; --color-gold-soft: #E5D2A8; --color-champagne: #C9A56A;
  --color-ivory: #1A1A1A; --color-text: #1A1A1A;
  --color-text-light: #5C5040; --color-text-muted: #8A7E6A;
  --color-bg: #FFFFFF; --color-bg-soft: #FBF8F2; --color-bg-section: #F5F0E4;
  --color-bg-deep: #EFE8D6; --color-card: #FFFFFF;
  --color-border: #E8E0CC; --color-border-soft: rgba(168,135,75,0.14);
  --color-border-gold: rgba(168,135,75,0.40);
  --color-success: #5A7A3A; --color-danger: #A8453A; --color-warning: #B8923A;
  --shadow-xs: 0 1px 2px rgba(60,40,10,0.04); --shadow-sm: 0 1px 3px rgba(60,40,10,0.06);
  --shadow: 0 4px 12px rgba(60,40,10,0.06); --shadow-md: 0 10px 25px rgba(60,40,10,0.08);
  --shadow-lg: 0 20px 40px rgba(60,40,10,0.10); --shadow-xl: 0 30px 60px rgba(60,40,10,0.12);
  --shadow-gold: 0 12px 36px rgba(168,135,75,0.20);
  --gradient-warm: linear-gradient(135deg,#C9A56A 0%,#A8874B 100%);
  --gradient-gold: linear-gradient(135deg,#A8874B,#C9A56A);
  --gradient-soft: linear-gradient(180deg,#FFFFFF 0%,#FBF8F2 100%);
  --gradient-dark: linear-gradient(135deg,#F5F0E4 0%,#FBF8F2 100%);
  --gradient-accent: linear-gradient(135deg,#FBF8F2,#FFFFFF);
  --gradient-marble: linear-gradient(135deg,#FBF8F2 0%,#FFFFFF 50%,#F5F0E4 100%);
  --gradient-silk: linear-gradient(115deg,rgba(168,135,75,0.05) 0%,transparent 38%,rgba(168,135,75,0.07) 62%,transparent 100%);
  --gradient-text-gold: linear-gradient(135deg,#C9A56A 0%,#A8874B 50%,#7A5E2E 100%);
  --radius-xs:0px; --radius-sm:0px; --radius:0px; --radius-md:0px;
  --radius-lg:0px; --radius-xl:0px; --radius-2xl:0px;
  --max-width:1280px; --max-width-wide:1440px;
  --font-sans:"Inter",-apple-system,"PingFang SC","Microsoft YaHei","Helvetica Neue",sans-serif;
  --font-serif:"Cormorant Garamond","Playfair Display","Songti SC","SimSun",Georgia,serif;
  --font-display:"Cinzel","Cormorant Garamond","Songti SC",serif;
}
* { box-sizing:border-box; margin:0; padding:0; }
html { scroll-behavior:smooth; }
body {
  font-family:var(--font-sans); font-size:15px; line-height:1.65; color:var(--color-text);
  background:var(--color-bg);
  background-image:radial-gradient(ellipse at 15% 0%,rgba(168,135,75,0.06) 0%,transparent 45%),radial-gradient(ellipse at 85% 100%,rgba(168,135,75,0.04) 0%,transparent 40%),linear-gradient(180deg,#FFFFFF 0%,#FBF8F2 100%);
  background-attachment:fixed; min-height:100vh; display:flex; flex-direction:column;
  -webkit-font-smoothing:antialiased; -moz-osx-font-smoothing:grayscale;
}
img { max-width:100%; display:block; }
a { color:var(--color-text); text-decoration:none; transition:color 0.25s; }
a:hover { color:var(--color-accent); }
button { font-family:inherit; cursor:pointer; border:none; background:none; }
input,textarea,select {
  font-family:inherit; font-size:14px; padding:12px 14px; border:1px solid var(--color-border);
  border-radius:0; background:rgba(255,255,255,0.03);
  transition:border-color 0.25s,box-shadow 0.25s,background 0.25s; outline:none;
  width:100%; color:var(--color-text); letter-spacing:0.02em;
}
input:focus,textarea:focus,select:focus {
  border-color:var(--color-accent); background:rgba(201,169,97,0.04);
  box-shadow:0 0 0 1px rgba(201,169,97,0.30),0 0 20px rgba(201,169,97,0.10);
}
input::placeholder,textarea::placeholder { color:var(--color-text-muted); }
textarea { resize:vertical; min-height:100px; }
h1,h2,h3,h4,h5,h6 { font-family:var(--font-serif); letter-spacing:0.03em; font-weight:500; line-height:1.22; color:var(--color-text); }
h1{font-size:40px} h2{font-size:32px} h3{font-size:24px} h4{font-size:19px} h5{font-size:17px} h6{font-size:15px}
.container { max-width:var(--max-width); margin:0 auto; padding:0 28px; width:100%; }
.container-wide { max-width:var(--max-width-wide); margin:0 auto; padding:0 28px; width:100%; }
main { flex:1; padding-bottom:40px; }
.text-gold { background:var(--gradient-text-gold); -webkit-background-clip:text; background-clip:text; color:transparent; }

/* 顶条 */
.topbar { background:#FFFFFF; color:var(--color-text-light); font-size:11.5px; padding:9px 0; position:relative; letter-spacing:0.14em; text-transform:uppercase; border-bottom:1px solid var(--color-border-gold); }
.topbar::after { display:none; }
.topbar a { color:var(--color-text-light); }
.topbar a:hover { color:var(--color-accent); }
.topbar-inner { display:flex; justify-content:space-between; align-items:center; gap:16px; }
.topbar-info { display:flex; gap:24px; flex-wrap:wrap; }
.topbar-info span { display:inline-flex; align-items:center; gap:6px; }
.topbar-kicker { color:var(--color-accent); font-weight:600; }
.topbar-links { display:flex; gap:20px; align-items:center; }
.topbar-links a,.topbar-inline-btn,.topbar-auth-btn { color:var(--color-text-light); font-size:11.5px; letter-spacing:0.14em; text-transform:uppercase; background:transparent; border:none; padding:0; transition:color 0.25s; }
.topbar-links a:hover,.topbar-inline-btn:hover,.topbar-auth-btn:hover { color:var(--color-accent); }
.topbar-auth-btn.strong { color:var(--color-accent); }
.topbar-member { color:var(--color-accent); }

/* 主导航 */
.navbar { background:rgba(255,255,255,0.92); backdrop-filter:saturate(200%) blur(20px); -webkit-backdrop-filter:saturate(200%) blur(20px); box-shadow:0 1px 0 var(--color-border-gold),0 6px 24px rgba(60,40,10,0.06); position:sticky; top:0; z-index:100; border-bottom:1px solid var(--color-border-gold); }
.navbar::before { content:""; position:absolute; top:0; left:0; right:0; height:1px; background:linear-gradient(90deg,transparent 0%,var(--color-accent) 50%,transparent 100%); opacity:0.6; }
.navbar-inner { display:grid; grid-template-columns:auto 1fr auto; align-items:center; height:88px; gap:32px; }
.brand { display:flex; align-items:center; gap:14px; flex-shrink:0; text-decoration:none; color:var(--color-text); }
.brand:hover { color:var(--color-text); }
.brand img { height:44px; width:auto; }
.brand-text { display:flex; flex-direction:column; line-height:1.1; }
.brand-text .meta { font-size:10px; color:var(--color-text-muted); letter-spacing:0.24em; text-transform:uppercase; margin-bottom:5px; }
.brand-text .name { font-family:var(--font-display); font-size:22px; font-weight:600; color:var(--color-text); letter-spacing:0.06em; }
.brand-text .slogan { font-size:10px; color:var(--color-accent); letter-spacing:0.26em; margin-top:4px; text-transform:uppercase; }
.brand-mark { display:inline-flex; align-items:center; justify-content:center; width:48px; height:48px; border-radius:0; background:var(--gradient-dark); border:1px solid var(--color-accent); color:var(--color-accent); font-family:var(--font-display); font-size:16px; font-weight:700; letter-spacing:0.05em; flex-shrink:0; position:relative; }
.brand-mark::before { content:""; position:absolute; inset:3px; border:1px solid rgba(201,169,97,0.20); }
.brand-mark-lg { display:inline-flex; align-items:center; justify-content:center; width:56px; height:56px; border-radius:0; background:var(--gradient-dark); border:1px solid var(--color-accent); color:var(--color-accent); font-family:var(--font-display); font-size:20px; font-weight:700; letter-spacing:0.05em; flex-shrink:0; }
.navbar-center { display:flex; align-items:center; gap:20px; flex:1; }
.nav-list { display:flex; gap:4px; list-style:none; flex-shrink:0; }
.nav-list a { position:relative; display:block; padding:12px 18px; color:var(--color-text-light); font-size:12.5px; font-weight:500; border-radius:0; letter-spacing:0.16em; text-transform:uppercase; transition:color 0.25s; }
.nav-list a:hover { color:var(--color-accent); }
.nav-list a.active { color:var(--color-accent); }
.nav-list a.active::after { content:""; position:absolute; left:18px; right:18px; bottom:6px; height:1px; background:var(--color-accent); }
.nav-list a.hot::after { content:"HOT"; position:absolute; top:4px; right:6px; font-size:8px; font-weight:700; color:#0A0A0C; background:var(--color-accent); padding:1px 5px; border-radius:0; letter-spacing:0.5px; font-family:var(--font-sans); }
.nav-search { flex:1; max-width:340px; position:relative; }
.nav-search input { width:100%; padding:12px 50px 12px 16px; border-radius:0; background:rgba(255,255,255,0.04); border:1px solid var(--color-border); font-size:13px; color:var(--color-text); letter-spacing:0.02em; }
.nav-search input:focus { background:rgba(201,169,97,0.04); border-color:var(--color-accent); }
.nav-search input::placeholder { color:var(--color-text-muted); }
.nav-search::before { content:""; position:absolute; left:16px; top:50%; transform:translateY(-50%); width:14px; height:14px; border:1.5px solid var(--color-text-muted); border-radius:50%; pointer-events:none; z-index:1; }
.nav-search::after { content:""; position:absolute; left:24px; top:calc(50% + 4px); width:6px; height:1.5px; background:var(--color-text-muted); transform:rotate(45deg); pointer-events:none; z-index:1; }
.nav-search .search-btn { position:absolute; right:4px; top:50%; transform:translateY(-50%); background:var(--gradient-gold); color:#0A0A0C; padding:8px 14px; border-radius:0; font-size:12px; font-weight:700; letter-spacing:0.1em; text-transform:uppercase; }
.nav-actions { display:flex; align-items:center; gap:10px; }
.nav-actions a,.nav-actions button { display:inline-flex; align-items:center; gap:6px; color:var(--color-text-light); font-size:11.5px; letter-spacing:0.14em; text-transform:uppercase; padding:10px 14px; border-radius:0; border:1px solid var(--color-border); background:rgba(255,255,255,0.02); transition:all 0.25s; position:relative; }
.nav-actions a:hover,.nav-actions button:hover { border-color:var(--color-accent); color:var(--color-accent); background:rgba(201,169,97,0.06); }
.cart-icon { position:relative; }
.cart-icon .cart-emoji { font-size:11px; letter-spacing:0.16em; color:var(--color-text); }
.cart-count { position:absolute; top:-4px; right:-4px; background:var(--color-accent); color:#0A0A0C; font-size:10px; font-weight:700; padding:2px 5px; border-radius:0; min-width:18px; text-align:center; display:none; line-height:1.4; letter-spacing:0; }
.cart-count.active { display:block; }
.nav-user { display:inline-flex; align-items:center; gap:8px; padding:10px 14px; border-radius:0; background:rgba(255,255,255,0.02); border:1px solid var(--color-border); font-weight:500; letter-spacing:0.14em; text-transform:uppercase; font-size:11.5px; }
.nav-user:hover { border-color:var(--color-accent); color:var(--color-accent); }
.nav-user span { color:var(--color-text-muted); font-size:10px; }
.nav-user strong { color:var(--color-text); font-size:12px; }
.nav-auth-btn { display:inline-flex; align-items:center; padding:10px 18px; border:1px solid var(--color-border); background:transparent; color:var(--color-text-light); font-size:11.5px; letter-spacing:0.16em; text-transform:uppercase; border-radius:0; transition:all 0.25s; }
.nav-auth-btn:hover { border-color:var(--color-accent); color:var(--color-accent); }
.nav-auth-btn.solid { background:var(--gradient-gold); color:#0A0A0C; border-color:var(--color-accent); font-weight:700; }
.nav-auth-btn.solid:hover { color:#0A0A0C; box-shadow:0 8px 24px rgba(201,169,97,0.32); }
.mobile-menu-btn { display:none; font-size:11px; color:var(--color-text); padding:10px 14px; letter-spacing:0.16em; text-transform:uppercase; border:1px solid var(--color-border); }

/* 分类胶囊 */
.category-strip { background:#FBF8F2; border-bottom:1px solid var(--color-border); padding:14px 0; overflow-x:auto; }
.category-strip-inner { display:flex; gap:10px; justify-content:center; flex-wrap:wrap; }
.cat-pill { display:inline-flex; align-items:center; gap:8px; padding:9px 22px; border-radius:0; background:rgba(255,255,255,0.02); color:var(--color-text-light); font-size:12px; font-weight:500; letter-spacing:0.14em; text-transform:uppercase; transition:all 0.25s; white-space:nowrap; border:1px solid var(--color-border); }
.cat-pill:hover { border-color:var(--color-accent); color:var(--color-accent); background:rgba(201,169,97,0.06); }
.cat-pill.active { background:var(--gradient-gold); color:#0A0A0C; border-color:var(--color-accent); box-shadow:0 4px 16px rgba(201,169,97,0.28); font-weight:700; }
.cat-pill .emoji { font-size:14px; color:var(--color-accent); }
.cat-pill.active .emoji { color:#0A0A0C; }
/* ============================================
   Part 2: Hero / 商品卡 / 通用区块 / 页脚
   ============================================ */

/* Hero 区（非 minimal 首页备用） */
.hero { position:relative; min-height:560px; display:flex; align-items:center; overflow:hidden; background:var(--gradient-dark); }
.hero::before { content:""; position:absolute; inset:0; background:var(--gradient-silk); pointer-events:none; }
.hero::after { content:""; position:absolute; inset:0; background:radial-gradient(ellipse at 30% 40%,rgba(201,169,97,0.10) 0%,transparent 55%); pointer-events:none; }
.hero-inner { position:relative; z-index:2; display:grid; grid-template-columns:1.1fr 0.9fr; gap:48px; align-items:center; padding:80px 0; }
.hero-copy { position:relative; }
.hero-eyebrow { display:inline-flex; align-items:center; gap:10px; font-size:11px; letter-spacing:0.32em; text-transform:uppercase; color:var(--color-accent); margin-bottom:24px; padding:6px 16px; border:1px solid var(--color-border-gold); background:rgba(201,169,97,0.05); }
.hero-eyebrow::before { content:""; width:24px; height:1px; background:var(--color-accent); }
.hero-title { font-family:var(--font-display); font-size:64px; line-height:1.08; letter-spacing:0.04em; margin-bottom:24px; color:var(--color-ivory); font-weight:600; }
.hero-title em { font-style:normal; background:var(--gradient-text-gold); -webkit-background-clip:text; background-clip:text; color:transparent; display:inline-block; }
.hero-lede { font-size:17px; line-height:1.8; color:var(--color-text-light); max-width:520px; margin-bottom:36px; letter-spacing:0.02em; }
.hero-actions { display:flex; gap:16px; flex-wrap:wrap; }
.hero-visual { position:relative; height:480px; border:1px solid var(--color-border-gold); background:var(--gradient-marble); overflow:hidden; }
.hero-visual::before { content:""; position:absolute; inset:0; background:linear-gradient(135deg,rgba(201,169,97,0.08) 0%,transparent 50%,rgba(212,175,55,0.06) 100%); }
.hero-float-card { position:absolute; bottom:-24px; left:-24px; background:rgba(255,255,255,0.96); backdrop-filter:blur(20px); border:1px solid var(--color-border-gold); padding:24px 28px; min-width:260px; box-shadow:var(--shadow-gold); }
.hero-float-card .label { font-size:10px; letter-spacing:0.3em; text-transform:uppercase; color:var(--color-accent); margin-bottom:8px; }
.hero-float-card .value { font-family:var(--font-serif); font-size:24px; color:var(--color-ivory); }
.hero-meta { display:flex; gap:32px; margin-top:40px; padding-top:28px; border-top:1px solid var(--color-border); }
.hero-meta-item .k { font-size:10px; letter-spacing:0.24em; text-transform:uppercase; color:var(--color-text-muted); margin-bottom:6px; }
.hero-meta-item .v { font-family:var(--font-serif); font-size:18px; color:var(--color-text); }

/* 通用区块 */
.section { padding:80px 0; position:relative; }
.section-header { text-align:center; margin-bottom:56px; }
.section-kicker { font-size:11px; letter-spacing:0.32em; text-transform:uppercase; color:var(--color-accent); margin-bottom:16px; display:inline-flex; align-items:center; gap:12px; }
.section-kicker::before,.section-kicker::after { content:""; width:32px; height:1px; background:var(--color-border-gold); }
.section-title { font-family:var(--font-display); font-size:42px; color:var(--color-ivory); letter-spacing:0.04em; font-weight:600; }
.section-title em { font-style:normal; color:var(--color-accent); }
.section-sub { font-size:15px; color:var(--color-text-light); margin-top:14px; max-width:560px; margin-left:auto; margin-right:auto; line-height:1.7; }

/* 商品卡 pcard V8 - 奢华黑金瀑布流 */
.pcard-grid { display:grid; grid-template-columns:repeat(4,1fr); gap:32px 24px; }
.pcard { position:relative; background:transparent; transition:all 0.4s cubic-bezier(0.2,0.8,0.2,1); display:flex; flex-direction:column; }
.pcard:hover { transform:translateY(-6px); }
.pcard-img { position:relative; aspect-ratio:3/4; overflow:hidden; background:var(--gradient-dark); border:1px solid var(--color-border); transition:border-color 0.4s,box-shadow 0.4s; display:block; }
.pcard:hover .pcard-img { border-color:var(--color-border-gold); box-shadow:0 16px 40px rgba(0,0,0,0.5),0 0 0 1px rgba(201,169,97,0.20); }
.pcard-img::before { content:""; position:absolute; inset:0; background:linear-gradient(180deg,transparent 60%,rgba(0,0,0,0.25) 100%); z-index:1; pointer-events:none; }
.pcard-img img { width:100%; height:100%; object-fit:cover; transition:transform 0.8s cubic-bezier(0.2,0.8,0.2,1); display:block; }
.pcard:hover .pcard-img img { transform:scale(1.06); }
.pcard-img-fallback { position:absolute; inset:0; background:var(--gradient-marble); }
.pcard-badge { position:absolute; top:0; left:0; z-index:2; background:var(--gradient-gold); color:#0A0A0C; font-size:10px; font-weight:700; padding:6px 12px; letter-spacing:0.2em; text-transform:uppercase; }
.pcard-badge.dark { background:#FFFFFF; color:var(--color-accent-dark); border:1px solid var(--color-accent); }
.pcard-body { padding:18px 2px 0; text-align:center; }
.pcard-meta { display:flex; align-items:center; justify-content:center; gap:10px; font-size:10px; letter-spacing:0.24em; text-transform:uppercase; color:var(--color-text-muted); margin-bottom:10px; }
.pcard-meta .dot { width:4px; height:4px; background:var(--color-accent); border-radius:50%; }
.pcard-name { font-family:var(--font-serif); font-size:17px; color:var(--color-ivory); line-height:1.45; margin-bottom:8px; min-height:48px; letter-spacing:0.01em; font-weight:500; transition:color 0.3s; }
.pcard:hover .pcard-name { color:var(--color-accent); }
.pcard-name a { color:inherit; text-decoration:none; }
.pcard-desc { font-size:12px; color:var(--color-text-muted); margin-bottom:14px; line-height:1.6; min-height:38px; letter-spacing:0.04em; }
.pcard-foot { display:flex; align-items:center; justify-content:space-between; gap:8px; padding-top:14px; border-top:1px solid var(--color-border); margin-top:auto; }
.pcard-price { display:flex; align-items:baseline; gap:8px; }
.pcard-price .now { font-family:var(--font-serif); font-size:22px; color:var(--color-accent); font-weight:600; letter-spacing:0.02em; }
.pcard-price .old { font-size:12px; color:var(--color-text-muted); text-decoration:line-through; }
.pcard-cart { background:transparent; color:var(--color-ivory); font-size:10px; font-weight:700; padding:8px 14px; letter-spacing:0.2em; text-transform:uppercase; transition:all 0.3s; border:1px solid var(--color-border); }
.pcard-cart:hover { background:var(--gradient-gold); color:#0A0A0C; border-color:var(--color-accent); box-shadow:0 4px 16px rgba(201,169,97,0.32); }

/* product-card（列表页通用） */
.product-card { position:relative; background:var(--color-card); border:1px solid var(--color-border); transition:all 0.4s; overflow:hidden; display:flex; flex-direction:column; }
.product-card:hover { border-color:var(--color-border-gold); box-shadow:var(--shadow-gold); }
.product-card-img { position:relative; aspect-ratio:1/1; overflow:hidden; background:var(--gradient-dark); }
.product-card-img img { width:100%; height:100%; object-fit:cover; transition:transform 0.6s; }
.product-card:hover .product-card-img img { transform:scale(1.05); }
.product-card-body { padding:18px 20px; flex:1; display:flex; flex-direction:column; }
.product-card-cat { font-size:10px; letter-spacing:0.2em; text-transform:uppercase; color:var(--color-accent); margin-bottom:8px; }
.product-card-name { font-family:var(--font-serif); font-size:16px; color:var(--color-text); margin-bottom:6px; line-height:1.4; }
.product-card-price { margin-top:auto; padding-top:12px; border-top:1px solid var(--color-border); font-family:var(--font-serif); font-size:20px; color:var(--color-accent); font-weight:600; }

/* 品牌故事 */
.brand-story { padding:96px 0; position:relative; background:var(--gradient-dark); overflow:hidden; }
.brand-story::before { content:""; position:absolute; inset:0; background:var(--gradient-silk); pointer-events:none; }
.brand-story-inner { position:relative; z-index:2; display:grid; grid-template-columns:1fr 1fr; gap:64px; align-items:center; }
.brand-story-text .kicker { font-size:11px; letter-spacing:0.32em; text-transform:uppercase; color:var(--color-accent); margin-bottom:20px; }
.brand-story-text h2 { font-family:var(--font-display); font-size:44px; color:var(--color-ivory); line-height:1.15; margin-bottom:24px; letter-spacing:0.03em; }
.brand-story-text h2 em { font-style:normal; color:var(--color-accent); }
.brand-story-text p { font-size:16px; line-height:1.9; color:var(--color-text-light); margin-bottom:16px; }
.brand-story-visual { position:relative; height:420px; border:1px solid var(--color-border-gold); background:var(--gradient-marble); overflow:hidden; }

/* qual-grid 资质 */
.qual-grid { display:grid; grid-template-columns:repeat(4,1fr); gap:24px; margin-top:56px; }
.qual-item { text-align:center; padding:36px 20px; border:1px solid var(--color-border); background:rgba(255,255,255,0.02); transition:all 0.3s; }
.qual-item:hover { border-color:var(--color-border-gold); background:rgba(201,169,97,0.04); }
.qual-icon { font-size:28px; color:var(--color-accent); margin-bottom:16px; }
.qual-title { font-family:var(--font-serif); font-size:18px; color:var(--color-text); margin-bottom:8px; }
.qual-desc { font-size:13px; color:var(--color-text-light); line-height:1.6; }

/* category-entries */
.category-entries { display:grid; grid-template-columns:repeat(4,1fr); gap:20px; }
.cat-entry { position:relative; aspect-ratio:4/5; overflow:hidden; border:1px solid var(--color-border); background:var(--gradient-dark); }
.cat-entry:hover { border-color:var(--color-border-gold); }
.cat-entry-img { position:absolute; inset:0; }
.cat-entry-img img { width:100%; height:100%; object-fit:cover; transition:transform 0.6s; }
.cat-entry:hover .cat-entry-img img { transform:scale(1.08); }
.cat-entry::after { content:""; position:absolute; inset:0; background:linear-gradient(180deg,transparent 40%,rgba(0,0,0,0.55) 100%); }
.cat-entry-body { position:absolute; bottom:0; left:0; right:0; padding:24px; z-index:2; }
.cat-entry-body .num { font-size:10px; letter-spacing:0.3em; color:var(--color-accent); margin-bottom:8px; }
.cat-entry-body .name { font-family:var(--font-serif); font-size:22px; color:var(--color-ivory); margin-bottom:4px; }
.cat-entry-body .count { font-size:12px; color:var(--color-text-light); }

/* ============================================
   Part 2: Hero / 商品卡 / 通用区块 / 页脚
   ============================================ */

/* Hero 区（非 minimal 首页备用） */
.hero { position:relative; min-height:560px; display:flex; align-items:center; overflow:hidden; background:var(--gradient-dark); }
.hero::before { content:""; position:absolute; inset:0; background:var(--gradient-silk); pointer-events:none; }
.hero::after { content:""; position:absolute; inset:0; background:radial-gradient(ellipse at 30% 40%,rgba(201,169,97,0.10) 0%,transparent 55%); pointer-events:none; }
.hero-inner { position:relative; z-index:2; display:grid; grid-template-columns:1.1fr 0.9fr; gap:48px; align-items:center; padding:80px 0; }
.hero-copy { position:relative; }
.hero-eyebrow { display:inline-flex; align-items:center; gap:10px; font-size:11px; letter-spacing:0.32em; text-transform:uppercase; color:var(--color-accent); margin-bottom:24px; padding:6px 16px; border:1px solid var(--color-border-gold); background:rgba(201,169,97,0.05); }
.hero-eyebrow::before { content:""; width:24px; height:1px; background:var(--color-accent); }
.hero-title { font-family:var(--font-display); font-size:64px; line-height:1.08; letter-spacing:0.04em; margin-bottom:24px; color:var(--color-ivory); font-weight:600; }
.hero-title em { font-style:normal; background:var(--gradient-text-gold); -webkit-background-clip:text; background-clip:text; color:transparent; display:inline-block; }
.hero-lede { font-size:17px; line-height:1.8; color:var(--color-text-light); max-width:520px; margin-bottom:36px; letter-spacing:0.02em; }
.hero-actions { display:flex; gap:16px; flex-wrap:wrap; }
.hero-visual { position:relative; height:480px; border:1px solid var(--color-border-gold); background:var(--gradient-marble); overflow:hidden; }
.hero-visual::before { content:""; position:absolute; inset:0; background:linear-gradient(135deg,rgba(201,169,97,0.08) 0%,transparent 50%,rgba(212,175,55,0.06) 100%); }
.hero-float-card { position:absolute; bottom:-24px; left:-24px; background:rgba(255,255,255,0.96); backdrop-filter:blur(20px); border:1px solid var(--color-border-gold); padding:24px 28px; min-width:260px; box-shadow:var(--shadow-gold); }
.hero-float-card .label { font-size:10px; letter-spacing:0.3em; text-transform:uppercase; color:var(--color-accent); margin-bottom:8px; }
.hero-float-card .value { font-family:var(--font-serif); font-size:24px; color:var(--color-ivory); }
.hero-meta { display:flex; gap:32px; margin-top:40px; padding-top:28px; border-top:1px solid var(--color-border); }
.hero-meta-item .k { font-size:10px; letter-spacing:0.24em; text-transform:uppercase; color:var(--color-text-muted); margin-bottom:6px; }
.hero-meta-item .v { font-family:var(--font-serif); font-size:18px; color:var(--color-text); }

/* 通用区块 */
.section { padding:80px 0; position:relative; }
.section-header { text-align:center; margin-bottom:56px; }
.section-kicker { font-size:11px; letter-spacing:0.32em; text-transform:uppercase; color:var(--color-accent); margin-bottom:16px; display:inline-flex; align-items:center; gap:12px; }
.section-kicker::before,.section-kicker::after { content:""; width:32px; height:1px; background:var(--color-border-gold); }
.section-title { font-family:var(--font-display); font-size:42px; color:var(--color-ivory); letter-spacing:0.04em; font-weight:600; }
.section-title em { font-style:normal; color:var(--color-accent); }
.section-sub { font-size:15px; color:var(--color-text-light); margin-top:14px; max-width:560px; margin-left:auto; margin-right:auto; line-height:1.7; }

/* 商品卡 pcard V8 - 奢华黑金瀑布流 */
.pcard-grid { display:grid; grid-template-columns:repeat(4,1fr); gap:32px 24px; }
.pcard { position:relative; background:transparent; transition:all 0.4s cubic-bezier(0.2,0.8,0.2,1); display:flex; flex-direction:column; }
.pcard:hover { transform:translateY(-6px); }
.pcard-img { position:relative; aspect-ratio:3/4; overflow:hidden; background:var(--gradient-dark); border:1px solid var(--color-border); transition:border-color 0.4s,box-shadow 0.4s; display:block; }
.pcard:hover .pcard-img { border-color:var(--color-border-gold); box-shadow:0 16px 40px rgba(0,0,0,0.5),0 0 0 1px rgba(201,169,97,0.20); }
.pcard-img::before { content:""; position:absolute; inset:0; background:linear-gradient(180deg,transparent 60%,rgba(0,0,0,0.25) 100%); z-index:1; pointer-events:none; }
.pcard-img img { width:100%; height:100%; object-fit:cover; transition:transform 0.8s cubic-bezier(0.2,0.8,0.2,1); display:block; }
.pcard:hover .pcard-img img { transform:scale(1.06); }
.pcard-img-fallback { position:absolute; inset:0; background:var(--gradient-marble); }
.pcard-badge { position:absolute; top:0; left:0; z-index:2; background:var(--gradient-gold); color:#0A0A0C; font-size:10px; font-weight:700; padding:6px 12px; letter-spacing:0.2em; text-transform:uppercase; }
.pcard-badge.dark { background:#FFFFFF; color:var(--color-accent-dark); border:1px solid var(--color-accent); }
.pcard-body { padding:18px 2px 0; text-align:center; }
.pcard-meta { display:flex; align-items:center; justify-content:center; gap:10px; font-size:10px; letter-spacing:0.24em; text-transform:uppercase; color:var(--color-text-muted); margin-bottom:10px; }
.pcard-meta .dot { width:4px; height:4px; background:var(--color-accent); border-radius:50%; }
.pcard-name { font-family:var(--font-serif); font-size:17px; color:var(--color-ivory); line-height:1.45; margin-bottom:8px; min-height:48px; letter-spacing:0.01em; font-weight:500; transition:color 0.3s; }
.pcard:hover .pcard-name { color:var(--color-accent); }
.pcard-name a { color:inherit; text-decoration:none; }
.pcard-desc { font-size:12px; color:var(--color-text-muted); margin-bottom:14px; line-height:1.6; min-height:38px; letter-spacing:0.04em; }
.pcard-foot { display:flex; align-items:center; justify-content:space-between; gap:8px; padding-top:14px; border-top:1px solid var(--color-border); margin-top:auto; }
.pcard-price { display:flex; align-items:baseline; gap:8px; }
.pcard-price .now { font-family:var(--font-serif); font-size:22px; color:var(--color-accent); font-weight:600; letter-spacing:0.02em; }
.pcard-price .old { font-size:12px; color:var(--color-text-muted); text-decoration:line-through; }
.pcard-cart { background:transparent; color:var(--color-ivory); font-size:10px; font-weight:700; padding:8px 14px; letter-spacing:0.2em; text-transform:uppercase; transition:all 0.3s; border:1px solid var(--color-border); }
.pcard-cart:hover { background:var(--gradient-gold); color:#0A0A0C; border-color:var(--color-accent); box-shadow:0 4px 16px rgba(201,169,97,0.32); }

/* product-card（列表页通用） */
.product-card { position:relative; background:var(--color-card); border:1px solid var(--color-border); transition:all 0.4s; overflow:hidden; display:flex; flex-direction:column; }
.product-card:hover { border-color:var(--color-border-gold); box-shadow:var(--shadow-gold); }
.product-card-img { position:relative; aspect-ratio:1/1; overflow:hidden; background:var(--gradient-dark); }
.product-card-img img { width:100%; height:100%; object-fit:cover; transition:transform 0.6s; }
.product-card:hover .product-card-img img { transform:scale(1.05); }
.product-card-body { padding:18px 20px; flex:1; display:flex; flex-direction:column; }
.product-card-cat { font-size:10px; letter-spacing:0.2em; text-transform:uppercase; color:var(--color-accent); margin-bottom:8px; }
.product-card-name { font-family:var(--font-serif); font-size:16px; color:var(--color-text); margin-bottom:6px; line-height:1.4; }
.product-card-price { margin-top:auto; padding-top:12px; border-top:1px solid var(--color-border); font-family:var(--font-serif); font-size:20px; color:var(--color-accent); font-weight:600; }

/* 品牌故事 */
.brand-story { padding:96px 0; position:relative; background:var(--gradient-dark); overflow:hidden; }
.brand-story::before { content:""; position:absolute; inset:0; background:var(--gradient-silk); pointer-events:none; }
.brand-story-inner { position:relative; z-index:2; display:grid; grid-template-columns:1fr 1fr; gap:64px; align-items:center; }
.brand-story-text .kicker { font-size:11px; letter-spacing:0.32em; text-transform:uppercase; color:var(--color-accent); margin-bottom:20px; }
.brand-story-text h2 { font-family:var(--font-display); font-size:44px; color:var(--color-ivory); line-height:1.15; margin-bottom:24px; letter-spacing:0.03em; }
.brand-story-text h2 em { font-style:normal; color:var(--color-accent); }
.brand-story-text p { font-size:16px; line-height:1.9; color:var(--color-text-light); margin-bottom:16px; }
.brand-story-visual { position:relative; height:420px; border:1px solid var(--color-border-gold); background:var(--gradient-marble); overflow:hidden; }

/* qual-grid 资质 */
.qual-grid { display:grid; grid-template-columns:repeat(4,1fr); gap:24px; margin-top:56px; }
.qual-item { text-align:center; padding:36px 20px; border:1px solid var(--color-border); background:rgba(255,255,255,0.02); transition:all 0.3s; }
.qual-item:hover { border-color:var(--color-border-gold); background:rgba(201,169,97,0.04); }
.qual-icon { font-size:28px; color:var(--color-accent); margin-bottom:16px; }
.qual-title { font-family:var(--font-serif); font-size:18px; color:var(--color-text); margin-bottom:8px; }
.qual-desc { font-size:13px; color:var(--color-text-light); line-height:1.6; }

/* category-entries */
.category-entries { display:grid; grid-template-columns:repeat(4,1fr); gap:20px; }
.cat-entry { position:relative; aspect-ratio:4/5; overflow:hidden; border:1px solid var(--color-border); background:var(--gradient-dark); }
.cat-entry:hover { border-color:var(--color-border-gold); }
.cat-entry-img { position:absolute; inset:0; }
.cat-entry-img img { width:100%; height:100%; object-fit:cover; transition:transform 0.6s; }
.cat-entry:hover .cat-entry-img img { transform:scale(1.08); }
.cat-entry::after { content:""; position:absolute; inset:0; background:linear-gradient(180deg,transparent 40%,rgba(0,0,0,0.55) 100%); }
.cat-entry-body { position:absolute; bottom:0; left:0; right:0; padding:24px; z-index:2; }
.cat-entry-body .num { font-size:10px; letter-spacing:0.3em; color:var(--color-accent); margin-bottom:8px; }
.cat-entry-body .name { font-family:var(--font-serif); font-size:22px; color:var(--color-ivory); margin-bottom:4px; }
.cat-entry-body .count { font-size:12px; color:var(--color-text-light); }

   Part 3: 按钮 / 卡片 / 表单 / 模态框 / Toast / 分页 / 标签
   ============================================ */

/* 按钮 */
.btn { display:inline-flex; align-items:center; justify-content:center; gap:8px; padding:14px 28px; font-size:13px; font-weight:600; letter-spacing:0.14em; text-transform:uppercase; border:1px solid var(--color-border); background:transparent; color:var(--color-text); cursor:pointer; transition:all 0.3s; border-radius:0; font-family:var(--font-sans); }
.btn:hover { border-color:var(--color-accent); color:var(--color-accent); }
.btn-primary { background:var(--gradient-gold); color:#0A0A0C; border-color:var(--color-accent); font-weight:700; }
.btn-primary:hover { color:#0A0A0C; box-shadow:0 8px 24px rgba(201,169,97,0.32); transform:translateY(-1px); }
.btn-ghost { background:transparent; border:1px solid var(--color-border); color:var(--color-text-light); }
.btn-ghost:hover { border-color:var(--color-accent); color:var(--color-accent); background:rgba(201,169,97,0.04); }
.btn-dark { background:#FFFFFF; color:var(--color-accent-dark); border-color:var(--color-accent); }
.btn-dark:hover { color:var(--color-ivory); border-color:var(--color-accent-light); }
.btn-lg { padding:16px 36px; font-size:14px; }
.btn-sm { padding:8px 16px; font-size:11px; }
.btn-block { display:flex; width:100%; }
.btn:disabled { opacity:0.4; cursor:not-allowed; }

/* 通用卡片 */
.card { background:var(--color-card); border:1px solid var(--color-border); padding:28px; transition:all 0.3s; }
.card:hover { border-color:var(--color-border-gold); }
.card-title { font-family:var(--font-serif); font-size:20px; color:var(--color-text); margin-bottom:12px; }
.card-body { font-size:14px; color:var(--color-text-light); line-height:1.7; }

/* 标签/徽章 */
.badge { display:inline-flex; align-items:center; gap:4px; padding:4px 10px; font-size:10px; font-weight:700; letter-spacing:0.14em; text-transform:uppercase; border-radius:0; }
.badge-gold { background:var(--gradient-gold); color:#0A0A0C; }
.badge-dark { background:#FFFFFF; color:var(--color-accent-dark); border:1px solid var(--color-accent); }
.badge-outline { background:transparent; color:var(--color-accent); border:1px solid var(--color-accent); }
.tag { display:inline-flex; align-items:center; padding:3px 10px; font-size:11px; color:var(--color-text-light); border:1px solid var(--color-border); letter-spacing:0.06em; }

/* 面包屑 */
.breadcrumb { padding:20px 0; border-bottom:1px solid var(--color-border); background:rgba(0,0,0,0.2); }
.breadcrumb .container { display:flex; align-items:center; gap:8px; font-size:12px; color:var(--color-text-muted); letter-spacing:0.06em; }
.breadcrumb a { color:var(--color-text-light); }
.breadcrumb a:hover { color:var(--color-accent); }
.breadcrumb .sep { color:var(--color-border); }
.breadcrumb .current { color:var(--color-accent); }

/* 表单 */
.form-group { margin-bottom:20px; }
.form-label { display:block; font-size:12px; letter-spacing:0.14em; text-transform:uppercase; color:var(--color-text-light); margin-bottom:8px; }
.form-row { display:grid; grid-template-columns:1fr 1fr; gap:16px; }
.form-hint { font-size:12px; color:var(--color-text-muted); margin-top:6px; }

/* 模态框 */
.modal-mask { position:fixed; inset:0; background:rgba(20,15,5,0.45); backdrop-filter:blur(8px); z-index:1000; display:flex; align-items:center; justify-content:center; padding:24px; opacity:0; pointer-events:none; transition:opacity 0.3s; }
.modal-mask.active { opacity:1; pointer-events:auto; }
.modal-shell { background:var(--color-card); border:1px solid var(--color-border-gold); max-width:560px; width:100%; padding:36px; position:relative; box-shadow:var(--shadow-xl); transform:translateY(20px); transition:transform 0.3s; }
.modal-mask.active .modal-shell { transform:translateY(0); }
.modal-close { position:absolute; top:16px; right:16px; width:36px; height:36px; display:inline-flex; align-items:center; justify-content:center; background:transparent; border:1px solid var(--color-border); color:var(--color-text-light); font-size:18px; transition:all 0.25s; }
.modal-close:hover { border-color:var(--color-accent); color:var(--color-accent); }
.modal-title { font-family:var(--font-display); font-size:24px; color:var(--color-ivory); margin-bottom:16px; }
.modal-body { font-size:14px; color:var(--color-text-light); line-height:1.8; }
.modal-foot { display:flex; gap:12px; justify-content:flex-end; margin-top:28px; padding-top:20px; border-top:1px solid var(--color-border); }

/* Toast */
.toast { position:fixed; top:32px; left:50%; transform:translateX(-50%) translateY(-120px); background:var(--color-card); border:1px solid var(--color-border-gold); color:var(--color-text); padding:14px 28px; font-size:13px; letter-spacing:0.06em; z-index:2000; box-shadow:var(--shadow-xl); transition:transform 0.4s cubic-bezier(0.2,0.8,0.2,1); pointer-events:none; }
.toast.show { transform:translateX(-50%) translateY(0); }
.toast.success { border-color:var(--color-success); }
.toast.warn { border-color:var(--color-warning); }
.toast.danger { border-color:var(--color-danger); }
.toast::before { content:""; display:inline-block; width:6px; height:6px; background:var(--color-accent); margin-right:10px; vertical-align:middle; }
.toast.success::before { background:var(--color-success); }
.toast.warn::before { background:var(--color-warning); }
.toast.danger::before { background:var(--color-danger); }

/* 分页 */
.pagination { display:flex; gap:6px; justify-content:center; align-items:center; padding:32px 0; }
.pagination a,.pagination span { display:inline-flex; align-items:center; justify-content:center; min-width:40px; height:40px; padding:0 12px; border:1px solid var(--color-border); color:var(--color-text-light); font-size:13px; transition:all 0.25s; }
.pagination a:hover { border-color:var(--color-accent); color:var(--color-accent); }
.pagination .current { background:var(--gradient-gold); color:#0A0A0C; border-color:var(--color-accent); font-weight:700; }
.pagination .disabled { opacity:0.3; pointer-events:none; }

/* 空状态 */
.empty-state { text-align:center; padding:80px 24px; }
.empty-state-icon { font-size:48px; color:var(--color-text-muted); margin-bottom:20px; }
.empty-state-title { font-family:var(--font-serif); font-size:24px; color:var(--color-text); margin-bottom:12px; }
.empty-state-desc { font-size:14px; color:var(--color-text-light); margin-bottom:28px; }

/* 加载 */
.loading { display:inline-flex; align-items:center; gap:8px; color:var(--color-text-muted); font-size:13px; letter-spacing:0.06em; }
.loading::before { content:""; width:16px; height:16px; border:2px solid var(--color-border); border-top-color:var(--color-accent); border-radius:50%; animation:spin 0.8s linear infinite; }
@keyframes spin { to { transform:rotate(360deg); } }

/* 工具类 */
.text-center { text-align:center; }
.text-right { text-align:right; }
.text-muted { color:var(--color-text-muted); }
.text-accent { color:var(--color-accent); }
.text-ivory { color:var(--color-ivory); }
.font-serif { font-family:var(--font-serif); }
.font-display { font-family:var(--font-display); }
.mt-0{margin-top:0} .mt-8{margin-top:8px} .mt-16{margin-top:16px} .mt-24{margin-top:24px} .mt-32{margin-top:32px} .mt-48{margin-top:48px}
.mb-0{margin-bottom:0} .mb-8{margin-bottom:8px} .mb-16{margin-bottom:16px} .mb-24{margin-bottom:24px} .mb-32{margin-bottom:32px} .mb-48{margin-bottom:48px}
.hidden { display:none !important; }
.flex { display:flex; }
.flex-center { display:flex; align-items:center; justify-content:center; }
.gap-8{gap:8px} .gap-16{gap:16px} .gap-24{gap:24px}
/* ============================================
   Part 4: 登录注册 / 协议页 / 商家页
   ============================================ */

/* 登录注册页 */
.auth-page { min-height:calc(100vh - 88px); display:flex; align-items:center; justify-content:center; padding:64px 24px; position:relative; }
.auth-page::before { content:""; position:absolute; inset:0; background:radial-gradient(ellipse at center,rgba(201,169,97,0.06) 0%,transparent 60%); pointer-events:none; }
.auth-shell { position:relative; z-index:2; width:100%; max-width:480px; background:var(--color-card); border:1px solid var(--color-border-gold); padding:48px 40px; box-shadow:var(--shadow-xl); }
.auth-shell::before { content:""; position:absolute; top:0; left:0; right:0; height:2px; background:var(--gradient-gold); }
.auth-kicker { font-size:11px; letter-spacing:0.32em; text-transform:uppercase; color:var(--color-accent); margin-bottom:16px; display:block; }
.auth-title { font-family:var(--font-display); font-size:32px; color:var(--color-ivory); margin-bottom:12px; letter-spacing:0.03em; }
.auth-sub { font-size:14px; color:var(--color-text-light); margin-bottom:32px; line-height:1.7; }
.auth-tabs { display:flex; gap:0; margin-bottom:32px; border-bottom:1px solid var(--color-border); }
.auth-tab { flex:1; padding:14px 0; text-align:center; font-size:13px; letter-spacing:0.16em; text-transform:uppercase; color:var(--color-text-muted); background:transparent; border:none; border-bottom:2px solid transparent; transition:all 0.25s; cursor:pointer; }
.auth-tab:hover { color:var(--color-text-light); }
.auth-tab.active { color:var(--color-accent); border-bottom-color:var(--color-accent); }
.auth-form { display:flex; flex-direction:column; gap:20px; }
.auth-form.hidden { display:none; }
.auth-field { display:flex; flex-direction:column; gap:8px; }
.auth-field label { font-size:11px; letter-spacing:0.18em; text-transform:uppercase; color:var(--color-text-light); }
.auth-field input { padding:14px 16px; }
.auth-check { display:flex; align-items:flex-start; gap:10px; font-size:12px; color:var(--color-text-light); line-height:1.6; cursor:pointer; }
.auth-check input { width:auto; margin-top:2px; }
.auth-check a { color:var(--color-accent); text-decoration:underline; }
.auth-submit { margin-top:8px; padding:16px; font-size:13px; font-weight:700; letter-spacing:0.18em; text-transform:uppercase; background:var(--gradient-gold); color:#0A0A0C; border:none; cursor:pointer; transition:all 0.3s; }
.auth-submit:hover { box-shadow:0 8px 24px rgba(201,169,97,0.32); transform:translateY(-1px); }
.auth-note { text-align:center; font-size:12px; color:var(--color-text-muted); margin-top:24px; padding-top:20px; border-top:1px solid var(--color-border); line-height:1.6; }
.auth-divider { display:flex; align-items:center; gap:16px; margin:24px 0; }
.auth-divider::before,.auth-divider::after { content:""; flex:1; height:1px; background:var(--color-border); }
.auth-divider span { font-size:11px; letter-spacing:0.2em; text-transform:uppercase; color:var(--color-text-muted); }
.auth-error { color:var(--color-danger); font-size:12px; margin-top:6px; }

/* 协议页 / 政策页 */
.policy-page { padding:64px 0; }
.policy-header { text-align:center; margin-bottom:48px; padding-bottom:32px; border-bottom:1px solid var(--color-border); }
.policy-header .kicker { font-size:11px; letter-spacing:0.32em; text-transform:uppercase; color:var(--color-accent); margin-bottom:12px; display:block; }
.policy-header h1 { font-family:var(--font-display); font-size:36px; color:var(--color-ivory); margin-bottom:8px; }
.policy-header .updated { font-size:12px; color:var(--color-text-muted); }
.policy-body { max-width:760px; margin:0 auto; font-size:15px; line-height:1.9; color:var(--color-text-light); }
.policy-body h2 { font-family:var(--font-serif); font-size:24px; color:var(--color-text); margin:40px 0 16px; padding-left:16px; border-left:2px solid var(--color-accent); }
.policy-body h3 { font-size:18px; color:var(--color-text); margin:28px 0 12px; }
.policy-body p { margin-bottom:16px; }
.policy-body ul,.policy-body ol { margin:16px 0 16px 24px; }
.policy-body li { margin-bottom:8px; line-height:1.8; }
.policy-body strong { color:var(--color-ivory); }
.policy-body a { color:var(--color-accent); text-decoration:underline; }
.policy-toc { background:rgba(255,255,255,0.02); border:1px solid var(--color-border); padding:24px 28px; margin-bottom:40px; }
.policy-toc h4 { font-size:12px; letter-spacing:0.2em; text-transform:uppercase; color:var(--color-accent); margin-bottom:16px; }
.policy-toc ol { list-style:none; margin:0; counter-reset:toc; }
.policy-toc li { counter-increment:toc; margin-bottom:8px; }
.policy-toc li::before { content:counter(toc,decimal-leading-zero); color:var(--color-accent); font-family:var(--font-serif); margin-right:12px; }
.policy-toc a { color:var(--color-text-light); font-size:14px; }
.policy-toc a:hover { color:var(--color-accent); }

/* 商家入驻页 */
.merchant-page { padding:64px 0; }
.merchant-hero { text-align:center; margin-bottom:56px; }
.merchant-hero .kicker { font-size:11px; letter-spacing:0.32em; text-transform:uppercase; color:var(--color-accent); margin-bottom:16px; display:block; }
.merchant-hero h1 { font-family:var(--font-display); font-size:42px; color:var(--color-ivory); margin-bottom:16px; line-height:1.2; }
.merchant-hero p { font-size:16px; color:var(--color-text-light); max-width:560px; margin:0 auto; line-height:1.8; }
.merchant-benefits { display:grid; grid-template-columns:repeat(3,1fr); gap:24px; margin-bottom:56px; }
.merchant-benefit { padding:36px 28px; border:1px solid var(--color-border); background:rgba(255,255,255,0.02); text-align:center; transition:all 0.3s; }
.merchant-benefit:hover { border-color:var(--color-border-gold); background:rgba(201,169,97,0.04); }
.merchant-benefit-icon { font-size:32px; color:var(--color-accent); margin-bottom:20px; }
.merchant-benefit h3 { font-family:var(--font-serif); font-size:20px; color:var(--color-text); margin-bottom:12px; }
.merchant-benefit p { font-size:13px; color:var(--color-text-light); line-height:1.7; }
.merchant-form { max-width:640px; margin:0 auto; background:var(--color-card); border:1px solid var(--color-border-gold); padding:40px; }
.merchant-form h2 { font-family:var(--font-display); font-size:24px; color:var(--color-ivory); margin-bottom:24px; text-align:center; }
.merchant-steps { display:grid; grid-template-columns:repeat(4,1fr); gap:16px; margin-bottom:56px; }
.merchant-step { text-align:center; position:relative; }
.merchant-step-num { width:48px; height:48px; margin:0 auto 16px; display:flex; align-items:center; justify-content:center; border:1px solid var(--color-accent); background:var(--gradient-dark); color:var(--color-accent); font-family:var(--font-display); font-size:18px; font-weight:600; }
.merchant-step h4 { font-size:14px; color:var(--color-text); margin-bottom:6px; }
.merchant-step p { font-size:12px; color:var(--color-text-muted); line-height:1.5; }

/* 支付模态框 */
.pay-modal-mask { position:fixed; inset:0; background:rgba(20,15,5,0.45); backdrop-filter:blur(8px); z-index:1100; display:flex; align-items:center; justify-content:center; padding:24px; opacity:0; pointer-events:none; transition:opacity 0.3s; }
.pay-modal-mask.active { opacity:1; pointer-events:auto; }
.pay-modal-shell { background:var(--color-card); border:1px solid var(--color-border-gold); max-width:420px; width:100%; padding:40px 32px; text-align:center; position:relative; box-shadow:var(--shadow-xl); transform:translateY(20px) scale(0.96); transition:transform 0.3s; }
.pay-modal-mask.active .pay-modal-shell { transform:translateY(0) scale(1); }
.pay-modal-close { position:absolute; top:12px; right:12px; width:32px; height:32px; display:flex; align-items:center; justify-content:center; background:transparent; border:1px solid var(--color-border); color:var(--color-text-light); font-size:16px; cursor:pointer; transition:all 0.25s; }
.pay-modal-close:hover { border-color:var(--color-accent); color:var(--color-accent); }
.pay-modal-title { font-family:var(--font-display); font-size:20px; color:var(--color-ivory); margin-bottom:8px; letter-spacing:0.04em; }
.pay-modal-amount { font-family:var(--font-serif); font-size:36px; color:var(--color-accent); font-weight:600; margin:20px 0; }
.pay-modal-qr { width:200px; height:200px; margin:0 auto 20px; background:#F5F1E8; padding:12px; border:1px solid var(--color-border-gold); }
.pay-modal-qr img { width:100%; height:100%; object-fit:contain; }
.pay-modal-hint { font-size:13px; color:var(--color-text-light); margin-bottom:24px; line-height:1.6; }
.pay-modal-cancel { width:100%; padding:14px; font-size:13px; letter-spacing:0.16em; text-transform:uppercase; background:transparent; border:1px solid var(--color-border); color:var(--color-text-light); cursor:pointer; transition:all 0.25s; }
.pay-modal-cancel:hover { border-color:var(--color-accent); color:var(--color-accent); }
/* ============================================
   Part 5: auth-modal 登录注册弹窗
   ============================================ */

.auth-modal-mask { position:fixed; inset:0; background:rgba(20,15,5,0.45); backdrop-filter:blur(10px); z-index:1200; display:flex; align-items:center; justify-content:center; padding:24px; opacity:0; pointer-events:none; transition:opacity 0.35s; }
.auth-modal-mask.active { opacity:1; pointer-events:auto; }
.auth-modal-shell { display:grid; grid-template-columns:0.85fr 1fr; max-width:920px; width:100%; background:var(--color-card); border:1px solid var(--color-border-gold); position:relative; box-shadow:var(--shadow-xl); transform:scale(0.96) translateY(16px); transition:transform 0.35s cubic-bezier(0.2,0.8,0.2,1); overflow:hidden; }
.auth-modal-mask.active .auth-modal-shell { transform:scale(1) translateY(0); }
.auth-modal-close { position:absolute; top:16px; right:16px; z-index:10; width:36px; height:36px; display:inline-flex; align-items:center; justify-content:center; background:rgba(255,255,255,0.9); border:1px solid var(--color-border); color:var(--color-text-light); font-size:20px; cursor:pointer; transition:all 0.25s; }
.auth-modal-close:hover { border-color:var(--color-accent); color:var(--color-accent); }

/* 左侧品牌区 */
.auth-modal-side { background:var(--gradient-dark); padding:48px 36px; display:flex; flex-direction:column; justify-content:center; position:relative; overflow:hidden; }
.auth-modal-side::before { content:""; position:absolute; inset:0; background:var(--gradient-silk); pointer-events:none; }
.auth-modal-side::after { content:""; position:absolute; top:0; left:0; right:0; height:1px; background:linear-gradient(90deg,transparent,var(--color-accent),transparent); }
.auth-modal-kicker { position:relative; z-index:2; font-size:10px; letter-spacing:0.32em; text-transform:uppercase; color:var(--color-accent); margin-bottom:24px; display:block; }
.auth-modal-side h2 { position:relative; z-index:2; font-family:var(--font-display); font-size:28px; color:var(--color-ivory); line-height:1.3; margin-bottom:20px; letter-spacing:0.02em; }
.auth-modal-side p { position:relative; z-index:2; font-size:13px; color:var(--color-text-light); line-height:1.8; margin-bottom:32px; }
.auth-modal-points { position:relative; z-index:2; display:flex; flex-direction:column; gap:16px; }
.auth-modal-points > div { display:flex; flex-direction:column; gap:2px; padding-left:16px; border-left:1px solid var(--color-border-gold); }
.auth-modal-points strong { font-size:13px; color:var(--color-text); letter-spacing:0.06em; }
.auth-modal-points span { font-size:12px; color:var(--color-text-muted); }

/* 右侧表单区 */
.auth-modal-main { padding:48px 40px; display:flex; flex-direction:column; }
.auth-modal-tabs { display:flex; gap:0; margin-bottom:32px; border-bottom:1px solid var(--color-border); }
.auth-modal-tab { flex:1; padding:12px 0; text-align:center; font-size:12px; letter-spacing:0.18em; text-transform:uppercase; color:var(--color-text-muted); background:transparent; border:none; border-bottom:2px solid transparent; transition:all 0.25s; cursor:pointer; font-family:var(--font-sans); }
.auth-modal-tab:hover { color:var(--color-text-light); }
.auth-modal-tab.active { color:var(--color-accent); border-bottom-color:var(--color-accent); }
.auth-modal-form { display:flex; flex-direction:column; gap:18px; }
.auth-modal-form[hidden] { display:none; }
.auth-modal-intro { margin-bottom:8px; }
.auth-modal-intro h3 { font-family:var(--font-serif); font-size:20px; color:var(--color-text); margin-bottom:6px; }
.auth-modal-intro p { font-size:12px; color:var(--color-text-muted); }
.auth-modal-field { display:flex; flex-direction:column; gap:6px; }
.auth-modal-field label { font-size:10px; letter-spacing:0.2em; text-transform:uppercase; color:var(--color-text-light); }
.auth-modal-field input { padding:12px 14px; font-size:14px; }
.auth-modal-field.is-error input { border-color:var(--color-danger); }
.auth-modal-error { color:var(--color-danger); font-size:11px; margin-top:2px; }
.auth-modal-check { display:flex; align-items:flex-start; gap:8px; font-size:12px; color:var(--color-text-light); line-height:1.6; cursor:pointer; margin-top:4px; }
.auth-modal-check input { width:auto; margin-top:3px; }
.auth-modal-check a { color:var(--color-accent); text-decoration:underline; }
.auth-modal-submit { margin-top:8px; padding:14px; font-size:13px; font-weight:700; letter-spacing:0.18em; text-transform:uppercase; background:transparent; border:1px solid var(--color-accent); color:var(--color-accent); cursor:pointer; transition:all 0.3s; }
.auth-modal-submit:hover { background:var(--gradient-gold); color:#0A0A0C; box-shadow:0 8px 24px rgba(201,169,97,0.28); }
.auth-modal-submit.solid { background:var(--gradient-gold); color:#0A0A0C; }
.auth-modal-submit.solid:hover { box-shadow:0 8px 24px rgba(201,169,97,0.32); transform:translateY(-1px); }
.auth-modal-note { text-align:center; font-size:11px; color:var(--color-text-muted); margin-top:20px; padding-top:16px; border-top:1px solid var(--color-border); line-height:1.6; }

body.auth-modal-open { overflow:hidden; }
/* ============================================
   Part 6: ed-* 编辑式画廊样式（核心）
   ============================================ */

/* ed-nav 极简导航 */
.ed-nav { position:sticky; top:0; z-index:100; background:rgba(255,255,255,0.94); backdrop-filter:saturate(200%) blur(20px); -webkit-backdrop-filter:saturate(200%) blur(20px); border-bottom:1px solid var(--color-border-gold); box-shadow:0 4px 20px rgba(60,40,10,0.06); }
.ed-nav::before { content:""; position:absolute; top:0; left:0; right:0; height:1px; background:linear-gradient(90deg,transparent 0%,var(--color-accent) 50%,transparent 100%); opacity:0.7; }
.ed-nav-inner { display:grid; grid-template-columns:auto 1fr auto; align-items:center; height:72px; gap:32px; }
.ed-nav-brand { display:flex; flex-direction:column; text-decoration:none; color:var(--color-text); line-height:1.15; }
.ed-nav-brand:hover { color:var(--color-accent); }
.ed-nav-brand-cn { font-family:var(--font-display); font-size:20px; font-weight:600; color:var(--color-ivory); letter-spacing:0.06em; }
.ed-nav-brand-en { font-size:9px; letter-spacing:0.28em; text-transform:uppercase; color:var(--color-accent); margin-top:4px; }
.ed-nav-list { display:flex; gap:4px; list-style:none; justify-content:center; }
.ed-nav-list a { display:block; padding:10px 18px; font-size:12px; font-weight:500; color:var(--color-text-light); letter-spacing:0.16em; text-transform:uppercase; transition:color 0.25s; position:relative; }
.ed-nav-list a:hover { color:var(--color-accent); }
.ed-nav-list a.active { color:var(--color-accent); }
.ed-nav-list a.active::after { content:""; position:absolute; left:18px; right:18px; bottom:4px; height:1px; background:var(--color-accent); }
.ed-nav-right { display:flex; align-items:center; gap:20px; }
.ed-nav-link { display:inline-flex; align-items:center; gap:6px; font-size:11px; letter-spacing:0.16em; text-transform:uppercase; color:var(--color-text-light); transition:color 0.25s; position:relative; }
.ed-nav-link:hover { color:var(--color-accent); }
.ed-nav-count { display:inline-flex; align-items:center; justify-content:center; min-width:18px; height:18px; padding:0 5px; background:var(--color-accent); color:#0A0A0C; font-size:10px; font-weight:700; }
.ed-nav-count:empty { display:none; }
.ed-nav-right .nav-auth-btn { display:inline-flex; align-items:center; padding:8px 16px; border:1px solid var(--color-border); background:transparent; color:var(--color-text-light); font-size:11px; letter-spacing:0.16em; text-transform:uppercase; transition:all 0.25s; }
.ed-nav-right .nav-auth-btn:hover { border-color:var(--color-accent); color:var(--color-accent); }
.ed-nav-right .nav-auth-btn.solid { background:var(--gradient-gold); color:#0A0A0C; border-color:var(--color-accent); font-weight:700; }
.ed-nav-right .nav-auth-btn.solid:hover { color:#0A0A0C; box-shadow:0 6px 20px rgba(201,169,97,0.28); }
.ed-nav-right .nav-user { display:inline-flex; align-items:center; gap:8px; padding:8px 14px; border:1px solid var(--color-border); background:rgba(255,255,255,0.02); font-size:11px; letter-spacing:0.14em; text-transform:uppercase; }
.ed-nav-right .nav-user:hover { border-color:var(--color-accent); color:var(--color-accent); }
.ed-nav-right .nav-user span { color:var(--color-text-muted); font-size:10px; }
.ed-nav-right .nav-user strong { color:var(--color-text); font-size:12px; }

/* ed-main 主区域 */
.ed-main { flex:1; }

/* ed-hero 卷首语 - 商品轮播 V9 */
.ed-hero { position:relative; min-height:680px; display:flex; align-items:center; overflow:hidden; }
.ed-hero-stage { position:absolute; inset:0; background-color:var(--gradient-dark); background-size:cover; background-position:center; opacity:0.18; z-index:0; transition:background-image 0.8s ease-in-out; }
.ed-hero-image { position:absolute; inset:0; background:var(--gradient-dark); z-index:1; }
.ed-hero-image::before { content:""; position:absolute; inset:0; background:radial-gradient(ellipse at 25% 35%,rgba(201,169,97,0.20) 0%,transparent 55%),radial-gradient(ellipse at 85% 75%,rgba(201,169,97,0.10) 0%,transparent 50%); }
.ed-hero-image::after { content:""; position:absolute; inset:0; background:linear-gradient(90deg,rgba(255,255,255,0.92) 0%,rgba(255,255,255,0.65) 50%,rgba(255,255,255,0.20) 100%); }
.ed-hero-content { position:relative; z-index:2; padding:80px 28px; width:100%; }
.ed-hero-grid { display:grid; grid-template-columns:1fr 460px; gap:64px; align-items:center; }
.ed-hero-text { max-width:640px; }
.ed-hero-eyebrow { font-size:11px; letter-spacing:0.36em; text-transform:uppercase; color:var(--color-accent); margin-bottom:28px; display:inline-flex; align-items:center; gap:14px; }
.ed-hero-eyebrow::before { content:""; width:48px; height:1px; background:var(--color-accent); }
.ed-hero-title { font-family:var(--font-display); font-size:64px; line-height:1.08; letter-spacing:0.04em; color:var(--color-ivory); margin-bottom:24px; font-weight:600; }
.ed-hero-title em { font-style:normal; display:block; background:var(--gradient-text-gold); -webkit-background-clip:text; background-clip:text; color:transparent; margin-top:6px; }
.ed-hero-lede { font-size:17px; line-height:1.9; color:var(--color-text-light); max-width:560px; letter-spacing:0.02em; }
.ed-hero-meta { display:flex; flex-wrap:wrap; gap:24px 32px; margin-top:36px; padding-top:24px; border-top:1px solid var(--color-border-gold); }
.ed-hero-meta span { font-size:11px; letter-spacing:0.24em; text-transform:uppercase; color:var(--color-text-muted); }
.ed-hero-meta span::before { content:""; display:inline-block; width:6px; height:6px; background:var(--color-accent); margin-right:10px; vertical-align:middle; }
.ed-hero-actions { display:flex; gap:14px; margin-top:40px; flex-wrap:wrap; }

/* ed-hero-carousel 轮播卡 */
.ed-hero-carousel { position:relative; }
.ed-hero-carousel-track { position:relative; min-height:560px; }
.ed-hero-slide { animation:heroSlideIn 0.6s cubic-bezier(0.2,0.8,0.2,1) both; }
.ed-hero-slide.entering { opacity:0; transform:translateY(12px); }
@keyframes heroSlideIn { from { opacity:0; transform:translateY(12px); } to { opacity:1; transform:translateY(0); } }
.ed-hero-card { background:rgba(255,255,255,0.94); backdrop-filter:blur(20px); -webkit-backdrop-filter:blur(20px); border:1px solid var(--color-border-gold); box-shadow:0 24px 60px rgba(60,40,10,0.18),0 0 0 1px rgba(168,135,75,0.10); overflow:hidden; }
.ed-hero-card-img { position:relative; aspect-ratio:3/4; overflow:hidden; background:var(--gradient-dark); border-bottom:1px solid var(--color-border-gold); }
.ed-hero-card-img img { width:100%; height:100%; object-fit:cover; transition:transform 1s ease; }
.ed-hero-slide:hover .ed-hero-card-img img { transform:scale(1.04); }
.ed-hero-card-img::after { content:""; position:absolute; inset:0; background:linear-gradient(180deg,rgba(255,255,255,0.05) 0%,transparent 30%,transparent 70%,rgba(0,0,0,0.30) 100%); pointer-events:none; }
.ed-hero-badge { position:absolute; top:16px; left:0; z-index:2; background:var(--gradient-gold); color:#1A1A1A; font-size:10px; font-weight:700; padding:7px 14px; letter-spacing:0.2em; text-transform:uppercase; }
.ed-hero-badge.dark { background:#FFFFFF; color:var(--color-accent-dark); border:1px solid var(--color-accent); }
.ed-hero-card-meta { position:absolute; top:16px; right:16px; z-index:2; display:flex; flex-direction:column; align-items:flex-end; gap:6px; }
.ed-hero-card-num { font-size:10px; letter-spacing:0.24em; text-transform:uppercase; color:var(--color-text); background:rgba(255,255,255,0.85); backdrop-filter:blur(8px); padding:5px 10px; border:1px solid var(--color-border-gold); }
.ed-hero-card-cat { font-size:10px; letter-spacing:0.24em; text-transform:uppercase; color:var(--color-accent-dark); background:rgba(255,255,255,0.85); backdrop-filter:blur(8px); padding:5px 10px; border:1px solid var(--color-border-gold); }
.ed-hero-card-body { padding:24px 24px 26px; }
.ed-hero-card-kicker { font-size:10px; letter-spacing:0.24em; text-transform:uppercase; color:var(--color-text-muted); margin-bottom:10px; }
.ed-hero-card-name { font-family:var(--font-serif); font-size:18px; line-height:1.4; color:var(--color-ivory); margin-bottom:10px; min-height:50px; letter-spacing:0.01em; font-weight:500; }
.ed-hero-card-desc { font-size:12px; line-height:1.7; color:var(--color-text-light); margin-bottom:18px; min-height:60px; display:-webkit-box; -webkit-line-clamp:3; -webkit-box-orient:vertical; overflow:hidden; }
.ed-hero-card-foot { display:flex; align-items:center; justify-content:space-between; gap:14px; padding-top:16px; border-top:1px solid var(--color-border); }
.ed-hero-card-price { display:flex; align-items:baseline; gap:8px; }
.ed-hero-card-price .now { font-family:var(--font-serif); font-size:24px; color:var(--color-accent); font-weight:600; letter-spacing:0.02em; }
.ed-hero-card-price .old { font-size:12px; color:var(--color-text-muted); text-decoration:line-through; }
.ed-hero-card-btn { background:var(--gradient-gold); color:#0A0A0C; font-size:10px; font-weight:700; padding:10px 18px; letter-spacing:0.2em; text-transform:uppercase; border:1px solid var(--color-accent); transition:all 0.3s; }
.ed-hero-card-btn:hover { box-shadow:0 6px 20px rgba(201,169,97,0.4); transform:translateY(-1px); }

/* ed-hero-indicators 指示器 */
.ed-hero-indicators { display:flex; gap:8px; justify-content:center; margin-top:18px; }
.ed-hero-dot { width:32px; height:3px; padding:0; background:var(--color-border); border:none; cursor:pointer; transition:background 0.3s; position:relative; overflow:hidden; }
.ed-hero-dot span { position:absolute; inset:0; background:var(--color-accent); transform:scaleX(0); transform-origin:left; transition:transform 0.4s ease; }
.ed-hero-dot.active span { transform:scaleX(1); }
.ed-hero-dot:hover { background:rgba(201,169,97,0.20); }

/* 响应式 */
@media (max-width:1200px) {
  .ed-hero-title { font-size:54px; }
  .ed-hero-grid { gap:40px; }
  .ed-hero-carousel-track { min-height:520px; }
}
@media (max-width:992px) {
  .ed-hero { min-height:auto; padding:24px 0; }
  .ed-hero-grid { grid-template-columns:1fr; gap:40px; }
  .ed-hero-title { font-size:46px; }
  .ed-hero-carousel-track { min-height:0; }
  .ed-hero-carousel { max-width:480px; margin:0 auto; width:100%; }
}
@media (max-width:768px) {
  .ed-hero-content { padding:56px 20px; }
  .ed-hero-title { font-size:36px; }
  .ed-hero-lede { font-size:15px; }
  .ed-hero-actions { gap:10px; }
  .ed-hero-actions .ed-btn { padding:14px 24px; font-size:12px; }
  .ed-hero-card-name { font-size:16px; min-height:46px; }
  .ed-hero-card-price .now { font-size:20px; }
  .ed-hero-card-btn { padding:8px 14px; font-size:9px; }
}
@media (max-width:480px) {
  .ed-hero-title { font-size:30px; }
  .ed-hero-meta { gap:16px 20px; }
}

/* ed-section 通用区块 */
.ed-section { padding:96px 0; position:relative; border-top:1px solid var(--color-border); }
.ed-section:first-child { border-top:none; }
.ed-num { font-size:11px; letter-spacing:0.36em; text-transform:uppercase; color:var(--color-accent); margin-bottom:32px; text-align:center; }

/* ed-toc 目录列表 */
.ed-toc-list { list-style:none; max-width:760px; margin:0 auto; }
.ed-toc-list li { border-bottom:1px solid var(--color-border); }
.ed-toc-list li:first-child { border-top:1px solid var(--color-border); }
.ed-toc-item { display:grid; grid-template-columns:60px 1fr 40px; align-items:center; gap:24px; padding:28px 8px; transition:all 0.3s; text-decoration:none; color:var(--color-text); }
.ed-toc-item:hover { background:rgba(201,169,97,0.04); padding-left:20px; padding-right:20px; }
.ed-toc-num { font-family:var(--font-display); font-size:22px; color:var(--color-accent); font-weight:600; letter-spacing:0.04em; }
.ed-toc-text { font-family:var(--font-serif); font-size:22px; color:var(--color-ivory); line-height:1.4; letter-spacing:0.02em; }
.ed-toc-text small { display:block; font-family:var(--font-sans); font-size:10px; letter-spacing:0.24em; text-transform:uppercase; color:var(--color-text-muted); margin-top:6px; }
.ed-toc-arrow { font-size:20px; color:var(--color-text-muted); transition:all 0.3s; text-align:right; }
.ed-toc-item:hover .ed-toc-arrow { color:var(--color-accent); transform:translateX(8px); }

/* ed-note 编辑笔记 */
.ed-note { padding:96px 0; position:relative; border-top:1px solid var(--color-border); overflow:hidden; }
.ed-note::before { content:""; position:absolute; inset:0; background:var(--gradient-silk); pointer-events:none; }
.ed-note-grid { display:grid; grid-template-columns:1fr 1fr; gap:64px; align-items:center; position:relative; z-index:2; }
.ed-note-reverse .ed-note-grid { direction:rtl; }
.ed-note-reverse .ed-note-grid > * { direction:ltr; }
.ed-note-img { position:relative; height:480px; border:1px solid var(--color-border-gold); background:var(--gradient-marble); overflow:hidden; }
.ed-note-img img { width:100%; height:100%; object-fit:cover; transition:transform 0.8s cubic-bezier(0.2,0.8,0.2,1); }
.ed-note-grid:hover .ed-note-img img { transform:scale(1.04); }
.ed-note-img::before { content:""; position:absolute; inset:0; background:linear-gradient(135deg,rgba(5,5,7,0.10) 0%,transparent 40%,rgba(201,169,97,0.08) 100%); z-index:1; pointer-events:none; }
.ed-note-img-1::after { content:"01"; position:absolute; bottom:24px; right:24px; font-family:var(--font-display); font-size:80px; color:rgba(201,169,97,0.12); font-weight:700; line-height:1; }
.ed-note-img-2::after { content:"02"; position:absolute; bottom:24px; right:24px; font-family:var(--font-display); font-size:80px; color:rgba(201,169,97,0.12); font-weight:700; line-height:1; }
.ed-note-text h2 { font-family:var(--font-display); font-size:40px; color:var(--color-ivory); line-height:1.15; margin-bottom:24px; letter-spacing:0.03em; }
.ed-note-text p { font-size:16px; line-height:1.9; color:var(--color-text-light); margin-bottom:16px; }
.ed-note-text .ed-link-arrow { display:inline-flex; align-items:center; gap:8px; margin-top:20px; font-size:12px; letter-spacing:0.2em; text-transform:uppercase; color:var(--color-accent); transition:gap 0.3s; }
.ed-note-text .ed-link-arrow:hover { gap:16px; }

/* ed-list 作品列表 */
.ed-list-head { display:flex; align-items:flex-end; justify-content:space-between; gap:24px; margin-bottom:40px; padding-bottom:20px; border-bottom:1px solid var(--color-border); }
.ed-list-head h2 { font-family:var(--font-display); font-size:32px; color:var(--color-ivory); letter-spacing:0.03em; }
.ed-list-count { font-size:12px; letter-spacing:0.2em; text-transform:uppercase; color:var(--color-text-muted); }
.ed-list { list-style:none; }
.ed-list li { border-bottom:1px solid var(--color-border); }
.ed-list-item { display:grid; grid-template-columns:50px 1fr 120px 120px 100px; align-items:center; gap:24px; padding:24px 8px; transition:all 0.3s; text-decoration:none; color:var(--color-text); }
.ed-list-item:hover { background:rgba(201,169,97,0.04); padding-left:20px; padding-right:20px; }
.ed-list-num { font-family:var(--font-display); font-size:18px; color:var(--color-accent); font-weight:600; }
.ed-list-name { font-family:var(--font-serif); font-size:20px; color:var(--color-ivory); line-height:1.4; letter-spacing:0.01em; }
.ed-list-name small { display:block; font-family:var(--font-sans); font-size:10px; letter-spacing:0.2em; text-transform:uppercase; color:var(--color-text-muted); margin-top:6px; }
.ed-list-cat { font-size:11px; letter-spacing:0.18em; text-transform:uppercase; color:var(--color-text-light); }
.ed-list-price { font-family:var(--font-serif); font-size:18px; color:var(--color-accent); font-weight:600; }
.ed-list-action { font-size:11px; letter-spacing:0.18em; text-transform:uppercase; color:var(--color-text-muted); transition:all 0.3s; text-align:right; }
.ed-list-item:hover .ed-list-action { color:var(--color-accent); }

/* ed-list-head 补充（多行结构） */
.ed-list-kicker { font-size:11px; letter-spacing:0.32em; text-transform:uppercase; color:var(--color-accent); margin-bottom:10px; }
.ed-list-foot { text-align:center; margin-top:56px; padding-top:40px; border-top:1px solid var(--color-border); }

/* ed-about 关于本期 */
.ed-about { padding:96px 0; border-top:1px solid var(--color-border); position:relative; }
.ed-about .ed-num { text-align:left; }
.ed-title { font-family:var(--font-display); font-size:48px; color:var(--color-ivory); line-height:1.15; margin-bottom:48px; letter-spacing:0.03em; }
.ed-title em { font-style:normal; color:var(--color-accent); }
.ed-about-grid { display:grid; grid-template-columns:repeat(3,1fr); gap:32px 48px; }
.ed-about-item { padding-left:24px; border-left:1px solid var(--color-border-gold); }
.ed-about-item h4 { font-family:var(--font-serif); font-size:20px; color:var(--color-accent); margin-bottom:12px; letter-spacing:0.02em; }
.ed-about-item p { font-size:14px; line-height:1.8; color:var(--color-text-light); }

/* ed-end 末页 */
.ed-end { padding:96px 0; text-align:center; border-top:1px solid var(--color-border); position:relative; }
.ed-end::before { content:""; position:absolute; top:0; left:50%; transform:translateX(-50%); width:80px; height:1px; background:var(--color-accent); }
.ed-end-mark { font-family:var(--font-display); font-size:24px; color:var(--color-accent); letter-spacing:0.3em; margin-bottom:20px; }
.ed-end-note { font-size:14px; color:var(--color-text-muted); line-height:2; letter-spacing:0.06em; }


/* ed-page 业务页通用 */
.ed-page { flex:1; padding:56px 0; }
.ed-breadcrumb { display:flex; align-items:center; gap:8px; font-size:11px; letter-spacing:0.16em; text-transform:uppercase; color:var(--color-text-muted); margin-bottom:40px; padding-bottom:16px; border-bottom:1px solid var(--color-border); }
.ed-breadcrumb a { color:var(--color-text-light); }
.ed-breadcrumb a:hover { color:var(--color-accent); }
.ed-breadcrumb .sep { color:var(--color-border); }
.ed-breadcrumb .current { color:var(--color-accent); }
.ed-page-head { margin-bottom:48px; padding-bottom:32px; border-bottom:1px solid var(--color-border); }
.ed-page-num { font-size:11px; letter-spacing:0.32em; text-transform:uppercase; color:var(--color-accent); margin-bottom:16px; }
.ed-page-title { font-family:var(--font-display); font-size:42px; color:var(--color-ivory); letter-spacing:0.03em; margin-bottom:12px; line-height:1.15; }
.ed-page-title em { font-style:normal; color:var(--color-accent); }
.ed-page-sub { font-size:15px; color:var(--color-text-light); line-height:1.7; }

/* ed-btn 编辑式按钮 */
.ed-btn { display:inline-flex; align-items:center; justify-content:center; gap:8px; padding:12px 24px; font-size:11px; font-weight:600; letter-spacing:0.18em; text-transform:uppercase; border:1px solid var(--color-border); background:transparent; color:var(--color-text-light); cursor:pointer; transition:all 0.3s; font-family:var(--font-sans); text-decoration:none; }
.ed-btn:hover { border-color:var(--color-accent); color:var(--color-accent); }
.ed-btn-primary { background:var(--gradient-gold); color:#0A0A0C; border-color:var(--color-accent); font-weight:700; }
.ed-btn-primary:hover { color:#0A0A0C; box-shadow:0 8px 24px rgba(201,169,97,0.28); transform:translateY(-1px); }
.ed-btn-ghost { background:transparent; border:1px solid var(--color-border); color:var(--color-text-light); }
.ed-btn-ghost:hover { border-color:var(--color-accent); color:var(--color-accent); background:rgba(201,169,97,0.04); }
.ed-btn-lg { padding:16px 36px; font-size:13px; }
.ed-btn-sm { padding:8px 16px; font-size:10px; }
.ed-btn-block { display:flex; width:100%; }

/* ed-card 卡片头 */
.ed-card-head { display:flex; align-items:flex-end; justify-content:space-between; gap:16px; margin-bottom:28px; padding-bottom:16px; border-bottom:1px solid var(--color-border); }
.ed-card-title { font-family:var(--font-display); font-size:22px; color:var(--color-ivory); letter-spacing:0.02em; }
.ed-card-num { font-size:11px; letter-spacing:0.2em; text-transform:uppercase; color:var(--color-text-muted); }

/* ed-item 商品行（购物袋等） */
.ed-item-row { padding:24px 0; border-bottom:1px solid var(--color-border); }
.ed-item-row:first-child { border-top:1px solid var(--color-border); }
.ed-item-img { width:80px; height:100px; overflow:hidden; background:var(--gradient-dark); border:1px solid var(--color-border); }
.ed-item-img img { width:100%; height:100%; object-fit:cover; }
.ed-item-name { font-family:var(--font-serif); font-size:17px; color:var(--color-text); margin-bottom:4px; letter-spacing:0.01em; }
.ed-item-meta { font-size:11px; letter-spacing:0.16em; text-transform:uppercase; color:var(--color-text-muted); }
.ed-item-price-sub { font-size:14px; color:var(--color-text-light); }
.ed-item-price-strong { font-family:var(--font-serif); font-size:18px; color:var(--color-accent); font-weight:600; }
.ed-total-val { color:var(--color-accent) !important; }

/* ed-radio 单选 */
.ed-radio-group { display:flex; flex-direction:column; gap:12px; }
.ed-radio { display:flex; align-items:center; gap:12px; padding:14px 18px; border:1px solid var(--color-border); cursor:pointer; transition:all 0.25s; }
.ed-radio:hover { border-color:var(--color-border-gold); }
.ed-radio input { width:auto; }
.ed-radio.active,.ed-radio input:checked + span { color:var(--color-accent); }
.ed-radio input:checked ~ * { color:var(--color-accent); }
.ed-radio.active { border-color:var(--color-accent); background:rgba(201,169,97,0.04); }
.ed-radio-label { font-size:14px; color:var(--color-text); flex:1; }
.ed-radio-price { font-family:var(--font-serif); font-size:16px; color:var(--color-accent); font-weight:600; }

/* ed-total 结算条 */
.ed-total { display:flex; flex-direction:column; gap:8px; padding:24px; border:1px solid var(--color-border-gold); background:rgba(255,255,255,0.02); }
.ed-total-row { display:flex; justify-content:space-between; font-size:13px; color:var(--color-text-light); }
.ed-total-row strong { color:var(--color-text); }
.ed-total-grand { display:flex; justify-content:space-between; align-items:center; padding-top:16px; margin-top:8px; border-top:1px solid var(--color-border); }
.ed-total-grand .label { font-size:12px; letter-spacing:0.2em; text-transform:uppercase; color:var(--color-text-muted); }
.ed-total-grand .val { font-family:var(--font-serif); font-size:32px; color:var(--color-accent); font-weight:600; }

/* ed-empty 空状态 */
.ed-empty { text-align:center; padding:80px 24px; }
.ed-empty-num { font-size:12px; letter-spacing:0.3em; text-transform:uppercase; color:var(--color-accent); margin-bottom:24px; }
.ed-empty-title { font-family:var(--font-display); font-size:28px; color:var(--color-ivory); margin-bottom:12px; }
.ed-empty-desc { font-size:14px; color:var(--color-text-light); margin-bottom:32px; line-height:1.7; }

/* ed-user 用户中心 */
.ed-user-stat-grid { display:grid; grid-template-columns:repeat(4,1fr); gap:16px; margin-bottom:40px; }
.ed-user-stat { display:flex; flex-direction:column; align-items:center; padding:28px 20px; border:1px solid var(--color-border); background:rgba(255,255,255,0.02); transition:all 0.3s; text-decoration:none; color:inherit; }
.ed-user-stat:hover { border-color:var(--color-border-gold); background:rgba(201,169,97,0.04); }
.ed-user-stat-num { font-family:var(--font-display); font-size:36px; color:var(--color-accent); font-weight:600; margin-bottom:8px; }
.ed-user-stat-label { font-size:11px; letter-spacing:0.2em; text-transform:uppercase; color:var(--color-text-muted); }
.ed-user-grid { display:grid; grid-template-columns:280px 1fr; gap:32px; }
.ed-user-side { display:flex; flex-direction:column; gap:24px; }
.ed-user-card { padding:28px; border:1px solid var(--color-border-gold); background:var(--gradient-dark); text-align:center; }
.ed-user-card h3 { font-family:var(--font-display); font-size:22px; color:var(--color-ivory); margin-bottom:8px; }
.ed-user-card .phone { font-size:13px; color:var(--color-text-muted); margin-bottom:16px; letter-spacing:0.06em; }
.ed-user-card .level { display:inline-block; padding:6px 16px; border:1px solid var(--color-accent); color:var(--color-accent); font-size:11px; letter-spacing:0.16em; text-transform:uppercase; }
.ed-user-nav { list-style:none; border:1px solid var(--color-border); }
.ed-user-nav li { border-bottom:1px solid var(--color-border); }
.ed-user-nav li:last-child { border-bottom:none; }
.ed-user-nav a { display:block; padding:14px 20px; font-size:13px; color:var(--color-text-light); transition:all 0.25s; }
.ed-user-nav a:hover { color:var(--color-accent); background:rgba(201,169,97,0.04); padding-left:28px; }

/* ed-auth 登录注册页 */
.ed-auth { min-height:calc(100vh - 72px); display:flex; align-items:center; justify-content:center; padding:48px 24px; position:relative; }
.ed-auth::before { content:""; position:absolute; inset:0; background:radial-gradient(ellipse at center,rgba(201,169,97,0.06) 0%,transparent 60%); pointer-events:none; }

/* ed-addr 地址簿 */
.ed-addr-list { display:grid; grid-template-columns:repeat(2,1fr); gap:16px; }
.ed-addr-card { padding:24px; border:1px solid var(--color-border); position:relative; transition:all 0.3s; }
.ed-addr-card:hover { border-color:var(--color-border-gold); }
.ed-addr-card.default { border-color:var(--color-accent); }
.ed-addr-card.default::before { content:"默认"; position:absolute; top:0; right:0; background:var(--gradient-gold); color:#0A0A0C; font-size:10px; font-weight:700; padding:4px 12px; letter-spacing:0.14em; }
.ed-addr-name { font-family:var(--font-serif); font-size:18px; color:var(--color-text); margin-bottom:8px; }
.ed-addr-phone { font-size:13px; color:var(--color-accent); margin-bottom:8px; }
.ed-addr-detail { font-size:13px; color:var(--color-text-light); line-height:1.6; margin-bottom:16px; }
.ed-addr-actions { display:flex; gap:8px; }

/* ed-checkout 结算页 */
.ed-checkout-grid { display:grid; grid-template-columns:1fr 360px; gap:32px; }
.ed-checkout-section { padding:28px; border:1px solid var(--color-border); margin-bottom:20px; }
.ed-checkout-section h3 { font-family:var(--font-display); font-size:18px; color:var(--color-ivory); margin-bottom:20px; padding-bottom:12px; border-bottom:1px solid var(--color-border); }

/* ed-order 订单页 */
.ed-order-card { border:1px solid var(--color-border); margin-bottom:20px; transition:border-color 0.3s; }
.ed-order-card:hover { border-color:var(--color-border-gold); }
.ed-order-head { display:flex; justify-content:space-between; align-items:center; padding:16px 24px; border-bottom:1px solid var(--color-border); background:rgba(255,255,255,0.02); }
.ed-order-no { font-size:12px; letter-spacing:0.16em; text-transform:uppercase; color:var(--color-text-muted); }
.ed-order-status { font-size:11px; letter-spacing:0.14em; text-transform:uppercase; color:var(--color-accent); padding:4px 12px; border:1px solid var(--color-accent); }
.ed-order-body { padding:20px 24px; }
.ed-order-foot { display:flex; justify-content:space-between; align-items:center; padding:16px 24px; border-top:1px solid var(--color-border); }
.ed-order-total { font-family:var(--font-serif); font-size:20px; color:var(--color-accent); font-weight:600; }
.ed-order-actions { display:flex; gap:8px; }

/* ed-detail 商品详情 */
.ed-detail-grid { display:grid; grid-template-columns:1fr 1fr; gap:48px; margin-bottom:64px; }
.ed-detail-gallery { position:relative; }
.ed-detail-main-img { aspect-ratio:3/4; overflow:hidden; border:1px solid var(--color-border-gold); background:var(--gradient-dark); }
.ed-detail-main-img img { width:100%; height:100%; object-fit:cover; }
.ed-detail-thumbs { display:grid; grid-template-columns:repeat(4,1fr); gap:12px; margin-top:12px; }
.ed-detail-thumb { aspect-ratio:1/1; overflow:hidden; border:1px solid var(--color-border); cursor:pointer; transition:border-color 0.25s; }
.ed-detail-thumb:hover,.ed-detail-thumb.active { border-color:var(--color-accent); }
.ed-detail-thumb img { width:100%; height:100%; object-fit:cover; }
.ed-detail-info h1 { font-family:var(--font-display); font-size:36px; color:var(--color-ivory); margin-bottom:16px; line-height:1.2; }
.ed-detail-meta { display:flex; gap:16px; margin-bottom:24px; padding-bottom:20px; border-bottom:1px solid var(--color-border); }
.ed-detail-meta span { font-size:11px; letter-spacing:0.16em; text-transform:uppercase; color:var(--color-text-muted); }
.ed-detail-price { display:flex; align-items:baseline; gap:12px; margin-bottom:24px; }
.ed-detail-price .now { font-family:var(--font-serif); font-size:40px; color:var(--color-accent); font-weight:600; }
.ed-detail-price .old { font-size:16px; color:var(--color-text-muted); text-decoration:line-through; }
.ed-detail-desc { font-size:15px; line-height:1.9; color:var(--color-text-light); margin-bottom:28px; padding:24px; border-left:2px solid var(--color-accent); background:rgba(201,169,97,0.03); }
.ed-detail-attrs { display:grid; grid-template-columns:repeat(2,1fr); gap:12px; margin-bottom:28px; }
.ed-detail-attr { display:flex; gap:8px; font-size:13px; }
.ed-detail-attr .k { color:var(--color-text-muted); min-width:80px; }
.ed-detail-attr .v { color:var(--color-text); }
.ed-detail-actions { display:flex; gap:12px; }
.ed-detail-section { margin-top:48px; padding-top:32px; border-top:1px solid var(--color-border); }
.ed-detail-section h2 { font-family:var(--font-display); font-size:24px; color:var(--color-ivory); margin-bottom:24px; }

/* ed-store 店铺页 */
.ed-store-head { padding:48px 0; border-bottom:1px solid var(--color-border); margin-bottom:40px; text-align:center; }
.ed-store-head h1 { font-family:var(--font-display); font-size:36px; color:var(--color-ivory); margin-bottom:12px; }
.ed-store-head p { font-size:14px; color:var(--color-text-light); }

/* ed-filter 筛选条 */
.ed-filter { display:flex; gap:8px; flex-wrap:wrap; margin-bottom:32px; padding-bottom:24px; border-bottom:1px solid var(--color-border); }
.ed-filter-item { padding:8px 16px; border:1px solid var(--color-border); font-size:11px; letter-spacing:0.14em; text-transform:uppercase; color:var(--color-text-light); cursor:pointer; transition:all 0.25s; background:transparent; }
.ed-filter-item:hover { border-color:var(--color-accent); color:var(--color-accent); }
.ed-filter-item.active { background:var(--gradient-gold); color:#0A0A0C; border-color:var(--color-accent); font-weight:700; }

/* ed-grid 通用网格 */
.ed-grid-2 { display:grid; grid-template-columns:repeat(2,1fr); gap:24px; }
.ed-grid-3 { display:grid; grid-template-columns:repeat(3,1fr); gap:24px; }
.ed-grid-4 { display:grid; grid-template-columns:repeat(4,1fr); gap:20px; }

/* ed-evaluate 评价 */
.ed-evaluate-card { padding:24px; border:1px solid var(--color-border); margin-bottom:16px; }
.ed-evaluate-head { display:flex; align-items:center; gap:12px; margin-bottom:16px; }
.ed-evaluate-avatar { width:40px; height:40px; border-radius:50%; background:var(--gradient-gold); display:flex; align-items:center; justify-content:center; color:#0A0A0C; font-weight:700; font-size:14px; }
.ed-evaluate-user { font-size:14px; color:var(--color-text); }
.ed-evaluate-time { font-size:11px; color:var(--color-text-muted); letter-spacing:0.06em; }
.ed-evaluate-stars { color:var(--color-accent); font-size:14px; margin-bottom:8px; }
.ed-evaluate-text { font-size:14px; color:var(--color-text-light); line-height:1.7; }
/* ============================================
   Part 7: 响应式 @media
   ============================================ */

/* 大屏 1200px */
@media (max-width:1200px) {
  .container,.container-wide { padding:0 24px; }
  .hero-title { font-size:52px; }
  .ed-hero-title { font-size:56px; }
  .footer-top { grid-template-columns:1.5fr 1fr 1fr 1fr; }
  .pcard-grid { grid-template-columns:repeat(3,1fr); }
  .merchant-benefits { grid-template-columns:repeat(2,1fr); }
  .merchant-steps { grid-template-columns:repeat(2,1fr); gap:24px; }
}

/* 平板 992px */
@media (max-width:992px) {
  .container,.container-wide { padding:0 20px; }
  .hero-inner { grid-template-columns:1fr; gap:32px; }
  .hero-title { font-size:44px; }
  .hero-visual { height:360px; }
  .ed-hero { min-height:520px; }
  .ed-hero-title { font-size:44px; }
  .ed-hero-lede { font-size:16px; }
  .ed-note-grid { grid-template-columns:1fr; gap:40px; }
  .ed-note-reverse .ed-note-grid { direction:ltr; }
  .ed-note-img { height:320px; }
  .brand-story-inner { grid-template-columns:1fr; gap:40px; }
  .brand-story-visual { height:320px; }
  .footer-hero { grid-template-columns:1fr; gap:32px; }
  .footer-top { grid-template-columns:1fr 1fr; gap:32px; }
  .footer-hero-meta { grid-template-columns:1fr; }
  .pcard-grid { grid-template-columns:repeat(2,1fr); }
  .qual-grid { grid-template-columns:repeat(2,1fr); }
  .category-entries { grid-template-columns:repeat(2,1fr); }
  .ed-list-item { grid-template-columns:40px 1fr 100px; gap:16px; }
  .ed-list-item .ed-list-cat,.ed-list-item .ed-list-action { display:none; }
  .ed-about-grid { grid-template-columns:repeat(2,1fr); }
  .ed-title { font-size:36px; }
  .ed-detail-grid { grid-template-columns:1fr; gap:32px; }
  .ed-checkout-grid { grid-template-columns:1fr; }
  .ed-user-grid { grid-template-columns:1fr; }
  .auth-modal-shell { grid-template-columns:1fr; max-width:480px; }
  .auth-modal-side { display:none; }
  .ed-grid-4 { grid-template-columns:repeat(3,1fr); }
  .merchant-benefits { grid-template-columns:1fr; }
}

/* 手机 768px */
@media (max-width:768px) {
  body { font-size:14px; }
  .container,.container-wide { padding:0 16px; }
  .navbar-inner { height:64px; grid-template-columns:auto 1fr auto; gap:12px; }
  .brand-text .meta,.brand-text .slogan { display:none; }
  .brand-text .name { font-size:18px; }
  .brand-mark { width:40px; height:40px; font-size:14px; }
  .nav-list { display:none; position:fixed; top:64px; left:0; right:0; background:rgba(10,10,12,0.98); backdrop-filter:blur(20px); flex-direction:column; padding:16px; gap:0; border-bottom:1px solid var(--color-border-gold); }
  .nav-list.mobile-open { display:flex; }
  .nav-list a { padding:14px 20px; border-bottom:1px solid var(--color-border); }
  .nav-search { display:none; }
  .mobile-menu-btn { display:inline-flex; }
  .nav-actions a,.nav-actions button { padding:8px 12px; font-size:10px; }
  .nav-user span { display:none; }

  .ed-nav-inner { height:60px; grid-template-columns:auto auto; gap:16px; }
  .ed-nav-list { display:none; }
  .ed-nav-brand-cn { font-size:17px; }
  .ed-nav-brand-en { font-size:8px; }
  .ed-nav-right { gap:12px; }
  .ed-nav-link { font-size:10px; }

  .hero { min-height:440px; }
  .hero-inner { padding:48px 0; }
  .hero-title { font-size:36px; }
  .hero-lede { font-size:15px; }
  .hero-meta { flex-wrap:wrap; gap:20px; }

  .ed-hero { min-height:440px; }
  .ed-hero-content { padding:64px 20px; }
  .ed-hero-title { font-size:36px; }
  .ed-hero-lede { font-size:15px; }
  .ed-hero-meta { flex-direction:column; gap:16px; }

  .section { padding:56px 0; }
  .section-title { font-size:28px; }
  .ed-section { padding:64px 0; }
  .ed-note { padding:64px 0; }
  .ed-about { padding:64px 0; }
  .ed-end { padding:64px 0; }
  .ed-page { padding:40px 0; }
  .ed-page-title { font-size:30px; }

  .ed-toc-item { grid-template-columns:40px 1fr; gap:16px; padding:20px 4px; }
  .ed-toc-arrow { display:none; }
  .ed-toc-text { font-size:17px; }

  .ed-note-text h2 { font-size:28px; }
  .ed-note-img { height:240px; }
  .ed-note-img-1::after,.ed-note-img-2::after { font-size:48px; }

  .ed-list-head h2 { font-size:24px; }
  .ed-list-item { grid-template-columns:32px 1fr 90px; gap:12px; padding:16px 4px; }
  .ed-list-name { font-size:16px; }
  .ed-list-price { font-size:15px; }

  .ed-about-grid { grid-template-columns:1fr; gap:24px; }
  .ed-title { font-size:28px; }

  .ed-footer { padding:48px 0 24px; }
  .ed-footer-meta { grid-template-columns:1fr; }

  .pcard-grid { grid-template-columns:repeat(2,1fr); gap:12px; }
  .pcard-body { padding:14px 16px; }
  .pcard-name { font-size:14px; min-height:auto; }
  .pcard-price .now { font-size:18px; }

  .qual-grid { grid-template-columns:1fr; }
  .category-entries { grid-template-columns:1fr; }
  .footer-top { grid-template-columns:1fr; gap:24px; }
  .footer-hero { padding-bottom:32px; margin-bottom:32px; }

  .ed-detail-grid { gap:24px; }
  .ed-detail-info h1 { font-size:26px; }
  .ed-detail-price .now { font-size:30px; }
  .ed-detail-attrs { grid-template-columns:1fr; }
  .ed-detail-actions { flex-wrap:wrap; }

  .ed-checkout-grid { gap:20px; }
  .ed-user-stat-grid { grid-template-columns:repeat(2,1fr); gap:12px; }
  .ed-user-grid { grid-template-columns:1fr; }
  .ed-user-stat-num { font-size:28px; }

  .auth-shell { padding:32px 24px; }
  .auth-title { font-size:26px; }
  .form-row { grid-template-columns:1fr; }
  .modal-shell { padding:24px 20px; }
  .auth-modal-shell { max-width:100%; }
  .auth-modal-main { padding:32px 24px; }

  .ed-addr-list { grid-template-columns:1fr; }
  .ed-grid-2,.ed-grid-3,.ed-grid-4 { grid-template-columns:1fr; }
  .merchant-steps { grid-template-columns:1fr 1fr; }
  .merchant-form { padding:28px 20px; }

  .pay-modal-shell { max-width:100%; padding:32px 20px; }
  .pay-modal-qr { width:180px; height:180px; }
  .pay-modal-amount { font-size:28px; }
}

/* 小手机 480px */
@media (max-width:480px) {
  .hero-title { font-size:30px; }
  .ed-hero-title { font-size:30px; }
  .section-title { font-size:24px; }
  .ed-page-title { font-size:24px; }
  .ed-note-text h2 { font-size:24px; }
  .ed-title { font-size:24px; }
  .pcard-grid { grid-template-columns:1fr; }
  .ed-user-stat-grid { grid-template-columns:1fr; }
  .ed-detail-actions { flex-direction:column; }
  .ed-detail-actions .ed-btn { width:100%; }
  .merchant-steps { grid-template-columns:1fr; }
  .ed-toc-text { font-size:15px; }
  .ed-list-head { flex-direction:column; align-items:flex-start; gap:8px; }
  .auth-shell { padding:24px 20px; }
  .ed-btn { padding:12px 20px; font-size:10px; }
  .ed-btn-lg { padding:14px 28px; font-size:12px; }
}

/* 打印 */
@media print {
  .navbar,.ed-nav,.topbar,.footer,.ed-footer,.category-strip,#authModalMask { display:none !important; }
  body { background:#fff; color:#000; }
  main { padding:0; }
}
/* ============================================
   Part 8: ed-detail 商品详情 + ed-form 表单补充
   ============================================ */

/* ed-detail 商品详情页 */
.ed-detail-main { display:grid; grid-template-columns:1fr 1fr; gap:48px; margin-bottom:64px; }
.ed-detail-img { aspect-ratio:3/4; overflow:hidden; border:1px solid var(--color-border-gold); background:var(--gradient-dark); position:relative; }
.ed-detail-img img { width:100%; height:100%; object-fit:cover; }
.ed-detail-img-fallback { width:100%; height:100%; display:flex; align-items:center; justify-content:center; }
.ed-detail-info { display:flex; flex-direction:column; }
.ed-detail-top { display:flex; justify-content:space-between; align-items:baseline; font-family:var(--font-serif); font-size:11px; letter-spacing:0.2em; text-transform:uppercase; color:var(--color-text-light); margin-bottom:16px; padding-bottom:12px; border-bottom:1px solid var(--color-border); }
.ed-detail-title { font-family:var(--font-display); font-size:32px; color:var(--color-ivory); line-height:1.25; margin-bottom:8px; letter-spacing:0.02em; }
.ed-detail-sub { font-size:13px; color:var(--color-text-muted); margin-bottom:24px; letter-spacing:0.06em; }
.ed-detail-price { display:flex; align-items:baseline; gap:12px; margin-bottom:16px; padding:16px 0; border-top:1px solid var(--color-border); border-bottom:1px solid var(--color-border); }
.ed-detail-price-now { font-family:var(--font-serif); font-size:36px; color:var(--color-accent); font-weight:600; }
.ed-detail-price-old { font-size:14px; color:var(--color-text-muted); text-decoration:line-through; }
.ed-detail-price-save { font-size:12px; color:var(--color-accent); padding:2px 8px; border:1px solid var(--color-border-gold); }
.ed-detail-meta-line { font-size:12px; color:var(--color-text-muted); margin-bottom:24px; letter-spacing:0.06em; line-height:1.7; }
.ed-detail-option { margin-bottom:24px; }
.ed-detail-option-label { font-size:11px; letter-spacing:0.2em; text-transform:uppercase; color:var(--color-text-light); margin-bottom:12px; }
.ed-detail-btns { display:flex; gap:8px; flex-wrap:wrap; }
.ed-detail-opt-btn { padding:8px 18px; border:1px solid var(--color-border); background:transparent; color:var(--color-text-light); font-size:13px; cursor:pointer; transition:all 0.25s; }
.ed-detail-opt-btn:hover { border-color:var(--color-accent); color:var(--color-accent); }
.ed-detail-opt-btn.active { border-color:var(--color-accent); background:rgba(201,169,97,0.08); color:var(--color-accent); font-weight:600; }
.ed-detail-qty { display:flex; align-items:center; gap:0; }
.ed-detail-qty input { width:56px; text-align:center; padding:8px 4px; border:1px solid var(--color-border); border-left:none; border-right:none; background:rgba(255,255,255,0.02); }
.ed-detail-actions { display:flex; gap:12px; margin-top:32px; }
.ed-detail-promise { margin-top:24px; padding:20px; border:1px solid var(--color-border); background:rgba(255,255,255,0.02); }
.ed-detail-promise p { font-size:12px; color:var(--color-text-light); line-height:1.8; }
.ed-detail-promise strong { color:var(--color-accent); }

.ed-detail-tabs-section { margin-top:48px; border-top:1px solid var(--color-border); padding-top:32px; }
.ed-detail-tabs { display:flex; gap:0; border-bottom:1px solid var(--color-border); margin-bottom:32px; }
.ed-detail-tab { padding:14px 28px; font-size:13px; letter-spacing:0.16em; text-transform:uppercase; color:var(--color-text-muted); background:transparent; border:none; border-bottom:2px solid transparent; transition:all 0.25s; cursor:pointer; font-family:var(--font-sans); }
.ed-detail-tab:hover { color:var(--color-text-light); }
.ed-detail-tab.active { color:var(--color-accent); border-bottom-color:var(--color-accent); }
.ed-detail-tab-content { display:none; }
.ed-detail-tab-content.active { display:block; }

/* ed-spec 规格列表 */
.ed-spec-list { display:grid; grid-template-columns:repeat(2,1fr); gap:0; }
.ed-spec-row { display:flex; gap:12px; padding:14px 0; border-bottom:1px solid var(--color-border); }
.ed-spec-row:nth-child(odd) { padding-right:24px; }
.ed-spec-label { font-size:12px; letter-spacing:0.1em; color:var(--color-text-muted); min-width:80px; flex-shrink:0; }
.ed-spec-value { font-size:13px; color:var(--color-text); flex:1; }

/* ed-eval 评价 */
.ed-eval-item { padding:20px 0; border-bottom:1px solid var(--color-border); }
.ed-eval-head { display:flex; justify-content:space-between; align-items:center; margin-bottom:12px; }
.ed-eval-user { font-size:14px; color:var(--color-text); font-weight:500; margin-right:12px; }
.ed-eval-stars { color:var(--color-accent); font-size:13px; letter-spacing:2px; }
.ed-eval-date { font-size:11px; color:var(--color-text-muted); letter-spacing:0.06em; }
.ed-eval-text { font-size:14px; color:var(--color-text-light); line-height:1.8; }

/* ed-detail-related 相关推荐 */
.ed-detail-related { margin-top:64px; padding-top:48px; border-top:1px solid var(--color-border); }
.ed-related-grid { display:grid; grid-template-columns:repeat(4,1fr); gap:24px; }
.ed-related-item { display:flex; flex-direction:column; }
.ed-related-img { width:100%; aspect-ratio:3/4; overflow:hidden; background:var(--gradient-dark); border:1px solid var(--color-border); margin-bottom:12px; }
.ed-related-img img { width:100%; height:100%; object-fit:cover; transition:opacity 0.3s; }
.ed-related-item:hover .ed-related-img img { opacity:0.88; }
.ed-related-top { display:flex; justify-content:space-between; font-size:10px; letter-spacing:0.2em; text-transform:uppercase; color:var(--color-text-muted); margin-bottom:6px; }
.ed-related-name { font-family:var(--font-serif); font-size:15px; color:var(--color-text); line-height:1.4; margin-bottom:4px; }
.ed-related-price { font-family:var(--font-serif); font-size:16px; color:var(--color-accent); font-weight:600; }

/* ed-form 表单补充 */
.ed-form-section { padding:28px 0; border-bottom:1px solid var(--color-border); }
.ed-form-section:last-child { border-bottom:none; }
.ed-form-row { display:grid; grid-template-columns:1fr 1fr; gap:20px; }
.ed-form-group { margin-bottom:20px; display:flex; flex-direction:column; gap:8px; }
.ed-form-label { font-size:11px; letter-spacing:0.18em; text-transform:uppercase; color:var(--color-text-light); }
.ed-input { padding:12px 14px; border:1px solid var(--color-border); border-radius:0; background:rgba(255,255,255,0.03); color:var(--color-text); font-size:14px; font-family:inherit; transition:border-color 0.25s,box-shadow 0.25s; outline:none; width:100%; letter-spacing:0.02em; }
.ed-input:focus { border-color:var(--color-accent); background:rgba(201,169,97,0.04); box-shadow:0 0 0 1px rgba(201,169,97,0.30); }
.ed-input::placeholder { color:var(--color-text-muted); }
textarea.ed-input { resize:vertical; min-height:80px; }

/* ed-radio 补充（复杂结构） */
.ed-radio { display:flex; align-items:center; gap:14px; padding:16px 18px; border:1px solid var(--color-border); cursor:pointer; transition:all 0.25s; margin-bottom:10px; }
.ed-radio:hover { border-color:var(--color-border-gold); }
.ed-radio input { width:auto; margin:0; }
.ed-radio input:checked ~ .ed-radio-mark { border-color:var(--color-accent); background:var(--color-accent); }
.ed-radio input:checked ~ .ed-radio-body .ed-radio-title { color:var(--color-accent); }
.ed-radio-mark { width:18px; height:18px; border:1px solid var(--color-border); border-radius:50%; flex-shrink:0; transition:all 0.25s; }
.ed-radio-body { flex:1; }
.ed-radio-title { font-size:14px; color:var(--color-text); margin-bottom:4px; }
.ed-radio-desc { font-size:12px; color:var(--color-text-muted); line-height:1.5; }

/* ed-total-row 补充 */
.ed-total-row { display:flex; justify-content:space-between; align-items:baseline; padding:12px 0; font-size:14px; color:var(--color-text-light); }
.ed-total-row.grand { border-top:1px solid var(--color-border-gold); margin-top:12px; padding-top:20px; font-size:16px; }
.ed-total-row.grand span:first-child { font-size:12px; letter-spacing:0.2em; text-transform:uppercase; color:var(--color-text-muted); }
.ed-total-row.grand .ed-total-val { font-family:var(--font-serif); font-size:32px; color:var(--color-accent); font-weight:600; }

/* ed-btn-outline 补充 */
.ed-btn-outline { background:transparent; border:1px solid var(--color-accent); color:var(--color-accent); }
.ed-btn-outline:hover { background:var(--gradient-gold); color:#0A0A0C; }

/* 响应式补充 */
@media (max-width:768px) {
  .ed-detail-main { grid-template-columns:1fr; gap:32px; }
  .ed-spec-list { grid-template-columns:1fr; }
  .ed-spec-row:nth-child(odd) { padding-right:0; }
  .ed-form-row { grid-template-columns:1fr; }
  .ed-related-grid { grid-template-columns:repeat(2,1fr); }
  .ed-detail-actions { flex-direction:column; }
  .ed-detail-actions .ed-btn { width:100%; }
}
@media (max-width:480px) {
  .ed-related-grid { grid-template-columns:1fr; }
}
/* ============================================
   Part 9: ed-auth登录注册 / ed-tab / ed-order / ed-step / ed-store 补充
   ============================================ */

/* ed-auth 登录注册页 */
.ed-auth { min-height:calc(100vh - 72px); display:grid; grid-template-columns:1fr 1fr; position:relative; }
.ed-auth-visual { position:relative; overflow:hidden; background:var(--gradient-dark); display:flex; align-items:center; justify-content:center; }
.ed-auth-visual::before { content:""; position:absolute; inset:0; background:var(--gradient-silk); pointer-events:none; }
.ed-auth-visual::after { content:""; position:absolute; inset:0; background:radial-gradient(ellipse at 30% 40%,rgba(201,169,97,0.10) 0%,transparent 55%); pointer-events:none; }
.ed-auth-visual-img { position:absolute; inset:0; background:var(--gradient-marble); opacity:0.3; }
.ed-auth-visual-content { position:relative; z-index:2; padding:64px 48px; max-width:480px; }
.ed-auth-visual-eyebrow { font-size:11px; letter-spacing:0.32em; text-transform:uppercase; color:var(--color-accent); margin-bottom:24px; display:inline-flex; align-items:center; gap:12px; }
.ed-auth-visual-eyebrow::before { content:""; width:32px; height:1px; background:var(--color-accent); }
.ed-auth-visual-title { font-family:var(--font-display); font-size:40px; color:var(--color-ivory); line-height:1.2; margin-bottom:20px; letter-spacing:0.03em; }
.ed-auth-visual-title em { font-style:normal; color:var(--color-accent); display:block; margin-top:8px; }
.ed-auth-visual-lede { font-size:15px; line-height:1.9; color:var(--color-text-light); }
.ed-auth-form-side { display:flex; align-items:center; justify-content:center; padding:48px 24px; }
.ed-auth-form-wrap { width:100%; max-width:400px; }
.ed-auth-back { display:inline-block; font-size:11px; letter-spacing:0.16em; text-transform:uppercase; color:var(--color-text-muted); margin-bottom:32px; transition:color 0.25s; }
.ed-auth-back:hover { color:var(--color-accent); }
.ed-auth-tabs { display:flex; gap:0; margin-bottom:32px; border-bottom:1px solid var(--color-border); }
.ed-auth-tab { flex:1; padding:14px 0; text-align:center; font-size:12px; letter-spacing:0.18em; text-transform:uppercase; color:var(--color-text-muted); background:transparent; border:none; border-bottom:2px solid transparent; transition:all 0.25s; cursor:pointer; font-family:var(--font-sans); }
.ed-auth-tab:hover { color:var(--color-text-light); }
.ed-auth-tab.active { color:var(--color-accent); border-bottom-color:var(--color-accent); }
.ed-auth-form { display:none; flex-direction:column; gap:20px; }
.ed-auth-form.active { display:flex; }
.ed-auth-form-head { margin-bottom:8px; }
.ed-auth-form-head h2 { font-family:var(--font-display); font-size:24px; color:var(--color-ivory); margin-bottom:6px; }
.ed-auth-form-head p { font-size:13px; color:var(--color-text-muted); }
.ed-auth-field { display:flex; flex-direction:column; gap:8px; }
.ed-auth-field label { font-size:11px; letter-spacing:0.18em; text-transform:uppercase; color:var(--color-text-light); }
.ed-auth-submit { margin-top:8px; padding:14px; font-size:13px; font-weight:700; letter-spacing:0.18em; text-transform:uppercase; background:var(--gradient-gold); color:#0A0A0C; border:none; border:1px solid var(--color-accent); cursor:pointer; transition:all 0.3s; }
.ed-auth-submit:hover { box-shadow:0 8px 24px rgba(201,169,97,0.32); transform:translateY(-1px); }
.ed-auth-note { text-align:center; font-size:11px; color:var(--color-text-muted); margin-top:16px; padding-top:16px; border-top:1px solid var(--color-border); line-height:1.6; }
.ed-auth-check { display:flex; align-items:flex-start; gap:8px; font-size:12px; color:var(--color-text-light); line-height:1.6; cursor:pointer; }
.ed-auth-check input { width:auto; margin-top:3px; }
.ed-auth-check a { color:var(--color-accent); text-decoration:underline; }

/* ed-tab 选项卡（订单列表） */
.ed-tab { display:inline-flex; align-items:center; padding:10px 20px; font-size:12px; letter-spacing:0.16em; text-transform:uppercase; color:var(--color-text-muted); background:transparent; border:1px solid var(--color-border); cursor:pointer; transition:all 0.25s; font-family:var(--font-sans); }
.ed-tab:hover { border-color:var(--color-border-gold); color:var(--color-text-light); }
.ed-tab.active { background:var(--gradient-gold); color:#0A0A0C; border-color:var(--color-accent); font-weight:700; }

/* ed-order 订单卡片补充 */
.ed-order { border:1px solid var(--color-border); margin-bottom:20px; transition:border-color 0.3s; }
.ed-order:hover { border-color:var(--color-border-gold); }
.ed-order-head { display:flex; justify-content:space-between; align-items:center; padding:16px 24px; border-bottom:1px solid var(--color-border); background:rgba(255,255,255,0.02); }
.ed-order-num { font-family:var(--font-serif); font-size:13px; color:var(--color-text); letter-spacing:0.02em; }
.ed-order-date { font-size:11px; color:var(--color-text-muted); letter-spacing:0.06em; margin-top:4px; }
.ed-order-status { font-size:11px; letter-spacing:0.14em; text-transform:uppercase; color:var(--color-accent); padding:4px 12px; border:1px solid var(--color-accent); }
.ed-order-status.pending_pay { color:var(--color-warning); border-color:var(--color-warning); }
.ed-order-status.pending_ship { color:var(--color-text-light); border-color:var(--color-text-light); }
.ed-order-status.shipped { color:var(--color-accent); border-color:var(--color-accent); }
.ed-order-status.completed { color:var(--color-success); border-color:var(--color-success); }
.ed-order-items { padding:16px 24px; }
.ed-order-item-line { display:grid; grid-template-columns:60px 1fr auto; gap:16px; align-items:center; padding:12px 0; border-bottom:1px solid var(--color-border); }
.ed-order-item-line:last-child { border-bottom:none; }
.ed-order-foot { display:flex; justify-content:space-between; align-items:center; padding:16px 24px; border-top:1px solid var(--color-border); flex-wrap:wrap; gap:12px; }
.ed-order-total { font-size:13px; color:var(--color-text-light); }
.ed-order-total strong { font-family:var(--font-serif); font-size:20px; color:var(--color-accent); font-weight:600; margin-left:8px; }
.ed-order-actions { display:flex; gap:8px; flex-wrap:wrap; }

/* ed-step 订单进度步骤 */
.ed-step { display:flex; flex-direction:column; align-items:center; gap:8px; position:relative; flex:1; }
.ed-step-num { width:36px; height:36px; display:flex; align-items:center; justify-content:center; border:1px solid var(--color-border); background:var(--color-bg); color:var(--color-text-muted); font-family:var(--font-serif); font-size:14px; font-weight:600; transition:all 0.3s; }
.ed-step.done .ed-step-num { border-color:var(--color-accent); background:var(--gradient-gold); color:#0A0A0C; }
.ed-step-label { font-size:11px; letter-spacing:0.1em; color:var(--color-text-muted); text-align:center; }
.ed-step.done .ed-step-label { color:var(--color-text); }
.ed-steps { display:flex; gap:0; align-items:flex-start; position:relative; }
.ed-steps::before { content:""; position:absolute; top:18px; left:18px; right:18px; height:1px; background:var(--color-border); z-index:0; }

/* ed-store 店铺页补充 */
.ed-store-header { margin-bottom:40px; }
.ed-store-meta { display:grid; grid-template-columns:repeat(4,1fr); gap:16px; padding:24px; border:1px solid var(--color-border); background:rgba(255,255,255,0.02); }
.ed-store-meta-item { text-align:center; }
.ed-store-meta-item .label { font-size:10px; letter-spacing:0.2em; text-transform:uppercase; color:var(--color-text-muted); margin-bottom:8px; }
.ed-store-meta-item .value { font-family:var(--font-serif); font-size:18px; color:var(--color-accent); font-weight:600; margin-bottom:4px; }
.ed-store-meta-item .desc { font-size:11px; color:var(--color-text-muted); }

/* ed-addr 补充 */
.ed-addr-info { flex:1; }
.ed-addr-actions { display:flex; gap:8px; flex-wrap:wrap; }
.ed-addr-actions .ed-btn { padding:6px 14px; font-size:11px; }

/* 响应式补充 */
@media (max-width:992px) {
  .ed-auth { grid-template-columns:1fr; }
  .ed-auth-visual { display:none; }
  .ed-store-meta { grid-template-columns:repeat(2,1fr); }
}
@media (max-width:768px) {
  .ed-steps { flex-direction:column; gap:24px; }
  .ed-steps::before { display:none; }
  .ed-order-head { flex-direction:column; align-items:flex-start; gap:8px; }
  .ed-order-foot { flex-direction:column; align-items:stretch; }
  .ed-store-meta { grid-template-columns:1fr; }
  .ed-order-item-line { grid-template-columns:50px 1fr; }
  .ed-order-item-line > *:nth-child(3) { grid-column:1 / -1; text-align:right; }
}
/* ============================================
   Part 10: pay-modal 支付弹窗补充样式
   ============================================ */

/* pay-modal 使用的 .modal 样式（兼容 pay-modal.js） */
.modal-mask .modal { background:var(--color-card); border:1px solid var(--color-border-gold); max-width:420px; width:100%; padding:40px 32px; text-align:center; position:relative; box-shadow:var(--shadow-xl); transform:translateY(20px) scale(0.96); transition:transform 0.3s; }
.modal-mask.active .modal { transform:translateY(0) scale(1); }
.modal-mask .modal-close { position:absolute; top:12px; right:12px; width:32px; height:32px; display:flex; align-items:center; justify-content:center; background:transparent; border:1px solid var(--color-border); color:var(--color-text-light); font-size:16px; cursor:pointer; transition:all 0.25s; }
.modal-mask .modal-close:hover { border-color:var(--color-accent); color:var(--color-accent); }
.modal-mask .modal-title { font-family:var(--font-display); font-size:20px; color:var(--color-ivory); margin-bottom:20px; letter-spacing:0.04em; }
.modal-mask .modal-body { font-size:14px; color:var(--color-text-light); line-height:1.8; }
.modal-qr { width:200px; height:200px; margin:0 auto 20px; background:#F5F1E8; padding:12px; border:1px solid var(--color-border-gold); }
.modal-qr img { width:100%; height:100%; object-fit:contain; }
.modal-amount { font-size:14px; color:var(--color-text-light); margin-bottom:16px; letter-spacing:0.06em; }
.modal-amount .price { font-family:var(--font-serif); font-size:28px; color:var(--color-accent); font-weight:600; margin-left:8px; }
.modal-tip { font-size:13px; color:var(--color-text-muted); line-height:1.8; margin-bottom:24px; }
.modal-actions { display:flex; gap:12px; }
.modal-actions .btn { width:100%; justify-content:center; }

/* 工具类补充 */
.text-sm { font-size:12px; }
.text-light { color:var(--color-text-light); }

/* ed-page-num 样式确保 */
.ed-page-num { font-size:11px; letter-spacing:0.32em; text-transform:uppercase; color:var(--color-accent); margin-bottom:16px; }

/* ed-card-head 补充 */
.ed-card-head { display:flex; align-items:flex-end; justify-content:space-between; gap:16px; margin-bottom:28px; padding-bottom:16px; border-bottom:1px solid var(--color-border); }
.ed-card-title { font-family:var(--font-display); font-size:22px; color:var(--color-ivory); letter-spacing:0.02em; }
.ed-card-num { font-size:11px; letter-spacing:0.2em; text-transform:uppercase; color:var(--color-text-muted); }
/* ============================================
   Part X: 页脚 V4 - 深色奢华底（与白底主体强对比）
   ============================================ */

/* ============================================
   .ft  - 首页/分类页主用 footer（5栏 + 顶部宣语 + 承诺chip）
   ============================================ */
.ft { background:#0A0A0C; color:#E5D2A8; position:relative; border-top:1px solid rgba(168,135,75,0.35); }
.ft::before { content:""; position:absolute; top:0; left:0; right:0; height:1px; background:linear-gradient(90deg,transparent 0%,#A8874B 25%,#C9A56A 50%,#A8874B 75%,transparent 100%); opacity:0.7; }
.ft::after { content:""; position:absolute; inset:0; background:radial-gradient(ellipse at 20% 0%,rgba(168,135,75,0.06) 0%,transparent 50%),radial-gradient(ellipse at 80% 100%,rgba(168,135,75,0.04) 0%,transparent 45%); pointer-events:none; }
.ft .container { position:relative; z-index:1; }

/* 顶部宣语带 */
.ft-band { padding:96px 0 80px; border-bottom:1px solid rgba(168,135,75,0.20); position:relative; }
.ft-band::before { content:""; position:absolute; left:50%; top:24px; transform:translateX(-50%); width:60px; height:1px; background:#A8874B; }
.ft-band-inner { text-align:center; max-width:920px; margin:0 auto; }
.ft-band-kicker { font-size:11px; letter-spacing:0.42em; text-transform:uppercase; color:#A8874B; margin-bottom:32px; }
.ft-band-title { font-family:var(--font-display); font-size:64px; line-height:1.1; color:#FFFFFF; letter-spacing:0.05em; margin-bottom:24px; font-weight:500; }
.ft-band-title em { font-style:normal; background:linear-gradient(135deg,#C9A56A 0%,#A8874B 50%,#7A5E2E 100%); -webkit-background-clip:text; background-clip:text; color:transparent; }
.ft-band-desc { font-size:16px; line-height:2; color:rgba(229,210,168,0.72); max-width:720px; margin:0 auto 56px; letter-spacing:0.04em; }
.ft-band-meta { display:grid; grid-template-columns:repeat(3,1fr); gap:0; max-width:880px; margin:0 auto; border:1px solid rgba(168,135,75,0.20); }
.ft-band-cell { padding:24px 20px; text-align:center; border-right:1px solid rgba(168,135,75,0.20); }
.ft-band-cell:last-child { border-right:none; }
.ft-band-cell-k { display:block; font-size:10px; letter-spacing:0.28em; text-transform:uppercase; color:rgba(229,210,168,0.55); margin-bottom:10px; }
.ft-band-cell-v { display:block; font-family:var(--font-serif); font-size:20px; color:#E5D2A8; font-weight:500; letter-spacing:0.04em; }

/* 主链接区 */
.ft-main { padding:80px 0 0; }
.ft-grid { display:grid; grid-template-columns:2.2fr 1fr 1fr 1fr 1.2fr; gap:48px; padding-bottom:64px; border-bottom:1px solid rgba(168,135,75,0.18); }

/* 品牌区 */
.ft-brand-row { display:flex; align-items:center; gap:16px; margin-bottom:24px; padding-bottom:24px; border-bottom:1px solid rgba(168,135,75,0.18); }
.ft-brand-mark { display:inline-flex; align-items:center; justify-content:center; width:56px; height:56px; background:linear-gradient(135deg,#1A1A1A 0%,#050505 100%); border:1px solid #A8874B; color:#A8874B; font-family:var(--font-display); font-size:18px; font-weight:700; letter-spacing:0.05em; flex-shrink:0; position:relative; }
.ft-brand-mark::before { content:""; position:absolute; inset:3px; border:1px solid rgba(168,135,75,0.25); }
.ft-brand-info { display:flex; flex-direction:column; }
.ft-brand-name { font-family:var(--font-display); font-size:22px; color:#FFFFFF; letter-spacing:0.06em; margin-bottom:4px; }
.ft-brand-en { font-size:10px; letter-spacing:0.30em; text-transform:uppercase; color:#A8874B; }
.ft-brand-tagline { font-size:13px; line-height:1.85; color:rgba(229,210,168,0.65); margin-bottom:24px; letter-spacing:0.04em; }
.ft-contact { list-style:none; }
.ft-contact li { display:grid; grid-template-columns:64px 1fr; gap:14px; padding:10px 0; border-bottom:1px dashed rgba(168,135,75,0.10); font-size:13px; align-items:baseline; }
.ft-contact .k { font-size:10px; letter-spacing:0.26em; text-transform:uppercase; color:rgba(168,135,75,0.70); font-weight:600; }
.ft-contact li > span:last-child { color:#E5D2A8; letter-spacing:0.02em; line-height:1.6; }

/* 链接栏 */
.ft-col h4 { font-size:11px; letter-spacing:0.30em; text-transform:uppercase; color:#A8874B; margin-bottom:24px; font-family:var(--font-sans); font-weight:600; padding-bottom:12px; border-bottom:1px solid rgba(168,135,75,0.18); }
.ft-col ul { list-style:none; }
.ft-col li { margin-bottom:12px; }
.ft-col a { font-size:13px; color:rgba(229,210,168,0.72); transition:all 0.25s; display:inline-flex; align-items:center; letter-spacing:0.04em; }
.ft-col a:hover { color:#FFFFFF; }
.l-dot { display:inline-block; width:0; height:1px; background:#A8874B; margin-right:0; transition:width 0.3s,margin-right 0.3s; flex-shrink:0; }
.ft-col a:hover .l-dot { width:14px; margin-right:8px; }

/* 承诺chip 行 */
.ft-promises { display:grid; grid-template-columns:repeat(4,1fr); gap:0; padding:32px 0 64px; }
.ft-promise { display:flex; flex-direction:column; align-items:center; text-align:center; padding:24px 16px; border-right:1px solid rgba(168,135,75,0.15); position:relative; }
.ft-promise:last-child { border-right:none; }
.ft-promise::before { content:""; position:absolute; top:0; left:50%; transform:translateX(-50%); width:32px; height:1px; background:linear-gradient(90deg,transparent 0%,#A8874B 50%,transparent 100%); opacity:0.5; }
.ft-promise-no { font-family:var(--font-display); font-size:11px; letter-spacing:0.28em; color:#A8874B; margin-bottom:10px; font-weight:600; }
.ft-promise-t { font-family:var(--font-serif); font-size:18px; color:#FFFFFF; letter-spacing:0.06em; margin-bottom:6px; font-weight:500; }
.ft-promise-d { font-size:11px; color:rgba(229,210,168,0.55); letter-spacing:0.10em; }

/* 底部备案区 */
.ft-legal { background:#050507; padding:32px 0; border-top:1px solid rgba(168,135,75,0.20); }
.ft-legal-inner { display:flex; justify-content:space-between; align-items:center; flex-wrap:wrap; gap:16px; }
.ft-copyright { font-size:11px; letter-spacing:0.16em; color:rgba(229,210,168,0.50); text-transform:uppercase; }
.ft-icp { font-size:11px; color:rgba(229,210,168,0.50); letter-spacing:0.06em; }
.ft-icp a { color:rgba(229,210,168,0.65); transition:color 0.25s; }
.ft-icp a:hover { color:#A8874B; }
.ft-beian { font-family:var(--font-serif); letter-spacing:0.04em; }
.ft-legal-sep { margin:0 12px; color:rgba(168,135,75,0.30); }
.ft-addr { font-size:11px; color:rgba(229,210,168,0.40); letter-spacing:0.06em; flex-basis:100%; text-align:center; margin-top:8px; padding-top:16px; border-top:1px dashed rgba(168,135,75,0.10); }

/* 响应式 */
@media (max-width:1200px) { .ft-band-title { font-size:52px; } .ft-grid { grid-template-columns:2fr 1fr 1fr 1fr 1fr; gap:36px; } }
@media (max-width:992px) {
  .ft-band { padding:72px 0 56px; }
  .ft-band-title { font-size:42px; }
  .ft-band-desc { font-size:14px; }
  .ft-grid { grid-template-columns:1fr 1fr; gap:48px 32px; padding-bottom:48px; }
  .ft-brand { grid-column:1/-1; }
  .ft-promises { grid-template-columns:repeat(2,1fr); }
  .ft-promise { border-right:none; }
  .ft-promise:nth-child(odd) { border-right:1px solid rgba(168,135,75,0.15); }
  .ft-band-meta { grid-template-columns:1fr; }
  .ft-band-cell { border-right:none; border-bottom:1px solid rgba(168,135,75,0.20); }
  .ft-band-cell:last-child { border-bottom:none; }
}
@media (max-width:768px) {
  .ft-band { padding:56px 0 40px; }
  .ft-band-title { font-size:34px; }
  .ft-main { padding:56px 0 0; }
  .ft-grid { grid-template-columns:1fr; gap:40px; }
  .ft-promises { grid-template-columns:1fr; }
  .ft-promise { border-right:none !important; border-bottom:1px solid rgba(168,135,75,0.15); }
  .ft-promise:last-child { border-bottom:none; }
  .ft-legal-inner { flex-direction:column; text-align:center; }
  .ft-copyright, .ft-icp { text-align:center; }
  .ft-contact li { grid-template-columns:54px 1fr; }
}

/* ============================================
   .mft - 业务页极简 footer（深色双栏）
   ============================================ */
.mft { background:#0A0A0C; color:#E5D2A8; position:relative; border-top:1px solid rgba(168,135,75,0.30); margin-top:64px; }
.mft::before { content:""; position:absolute; top:0; left:0; right:0; height:1px; background:linear-gradient(90deg,transparent 0%,#A8874B 30%,#C9A56A 50%,#A8874B 70%,transparent 100%); opacity:0.7; }
.mft::after { content:""; position:absolute; inset:0; background:radial-gradient(ellipse at 50% 0%,rgba(168,135,75,0.05) 0%,transparent 50%); pointer-events:none; }
.mft .container { position:relative; z-index:1; }
.mft-top { display:grid; grid-template-columns:1.4fr 2.6fr; gap:56px; padding:64px 0 48px; border-bottom:1px solid rgba(168,135,75,0.18); }
.mft-brand-row { display:flex; align-items:center; gap:14px; margin-bottom:20px; padding-bottom:20px; border-bottom:1px solid rgba(168,135,75,0.18); }
.mft-brand-mark { display:inline-flex; align-items:center; justify-content:center; width:48px; height:48px; background:linear-gradient(135deg,#1A1A1A 0%,#050505 100%); border:1px solid #A8874B; color:#A8874B; font-family:var(--font-display); font-size:15px; font-weight:700; letter-spacing:0.05em; flex-shrink:0; }
.mft-brand-info { display:flex; flex-direction:column; }
.mft-brand-name { font-family:var(--font-display); font-size:18px; color:#FFFFFF; letter-spacing:0.06em; margin-bottom:3px; }
.mft-brand-en { font-size:9px; letter-spacing:0.30em; text-transform:uppercase; color:#A8874B; }
.mft-tagline { font-size:12px; line-height:1.85; color:rgba(229,210,168,0.62); letter-spacing:0.04em; max-width:340px; }
.mft-cols { display:grid; grid-template-columns:repeat(4,1fr); gap:32px; }
.mft-col h4 { font-size:10px; letter-spacing:0.30em; text-transform:uppercase; color:#A8874B; margin-bottom:20px; font-family:var(--font-sans); font-weight:600; padding-bottom:10px; border-bottom:1px solid rgba(168,135,75,0.18); }
.mft-col ul { list-style:none; }
.mft-col li { margin-bottom:10px; }
.mft-col a { font-size:12.5px; color:rgba(229,210,168,0.72); transition:color 0.25s; letter-spacing:0.04em; }
.mft-col a:hover { color:#FFFFFF; }
.mft-contact li { display:flex; gap:10px; align-items:baseline; }
.mft-contact .k { font-size:9px; letter-spacing:0.26em; text-transform:uppercase; color:rgba(168,135,75,0.70); font-weight:600; min-width:42px; }
.mft-contact li > span:last-child { color:#E5D2A8; font-size:12px; line-height:1.5; }

.mft-bottom { padding:24px 0 28px; text-align:center; }
.mft-copyright { font-size:11px; letter-spacing:0.16em; text-transform:uppercase; color:rgba(229,210,168,0.50); margin-bottom:8px; }
.mft-icp { font-size:11px; color:rgba(229,210,168,0.55); letter-spacing:0.06em; margin-bottom:6px; }
.mft-icp a { color:rgba(229,210,168,0.65); transition:color 0.25s; }
.mft-icp a:hover { color:#A8874B; }
.mft-sep { margin:0 10px; color:rgba(168,135,75,0.30); }
.mft-addr { font-size:11px; color:rgba(229,210,168,0.40); letter-spacing:0.06em; padding-top:12px; margin-top:14px; border-top:1px dashed rgba(168,135,75,0.10); }

@media (max-width:992px) {
  .mft-top { grid-template-columns:1fr; gap:40px; padding:48px 0 40px; }
  .mft-cols { grid-template-columns:repeat(2,1fr); gap:32px 24px; }
}
@media (max-width:768px) {
  .mft-top { padding:40px 0 32px; }
  .mft-cols { grid-template-columns:1fr; gap:32px; }
  .mft-cols .mft-col { border-bottom:1px solid rgba(168,135,75,0.10); padding-bottom:24px; }
  .mft-cols .mft-col:last-child { border-bottom:none; padding-bottom:0; }
}