/* ============================================================
   礼金簿 · 第二套风格：鎏金暖白（Gilded Warm White）
   移植自定稿原型：深棕金 + 香槟金 + 暖白
   启用方式：<html data-theme="gold">，由 /api/c/config 的 theme 字段下发
   生成脚本：tools/gen-theme-gold.py（勿手改本文件）
   对比度实测（#FAF6EF 纸面）：墨字 14.6 / 次字 7.9 / 三字 4.79 / 棕金强调 5.72
   棕金底（#8C6D3F）上白字 4.74 —— 全部达 AA
   ============================================================ */

:root[data-theme="gold"]{
  /* --- 主色：棕金（原型 --brand）--- */
  --red:#8C6D3F;        --red2:#B08D4F;      --red-d:#4A3A22;      --red-bright:#7A5C31;
  --red-deep:#6B5330;   --seal:#8C6D3F;      --lac-d:#2E2417;
  /* --- 金：原型 --gold / --gold-soft --- */
  --gold:#C9A86A;       --gold-d:#9C7C3E;    --gold-lt:#E3CF9E;    --gold-br:#9C7C3E;
  --gold-line:rgba(201,168,106,.55);  --gold-line-2:rgba(201,168,106,.45);
  /* --- 中性面：暖白（原型 --bg / --card / --bg-alt）--- */
  --bg:#FAF6EF;         --card:#FFFDF8;      --surface-2:#F2EBDE;  --paper:#FDFAF3;
  --scroll-hi:#FDFAF3;  --scroll-lo:#F2EBDE; --info-bg:#FDFAF3;
  /* --- 线 --- */
  --line:#E9E0CF;       --line-2:rgba(140,109,63,.28);  --rule-red:rgba(140,109,63,.20);
  /* --- 文字：原型墨阶 --- */
  --ink:#2B2118;        --ink2:#5A4A38;      --ink3:#7C6B50;       --ink-brown:#9C7C3E;
  /* --- 纸纹：鎏金是净面暖白，不做宣纸纤维（置为透明渐变以保 background 简写合法）--- */
  --grain:linear-gradient(rgba(0,0,0,0), rgba(0,0,0,0));
  /* --- 阴影：原型双层柔影（比朱漆更淡、更散）--- */
  --shadow:0 1px 2px rgba(46,36,23,.05), 0 6px 18px rgba(46,36,23,.05);
  --shadow-lg:0 4px 10px rgba(46,36,23,.08), 0 14px 34px rgba(46,36,23,.10);
  --shadow-red:0 4px 14px rgba(201,168,106,.25);
  --shadow-gold:0 4px 14px rgba(201,168,106,.25);
  /* --- 圆角：原型尺度 6/10/14/18/24（柔卡语言，比宣纸朱漆大一档）--- */
  --r-xs:6px; --r-sm:10px; --r-md:14px; --r-lg:18px; --r-xl:24px;
  /* --- 渐变 --- */
  --grad:linear-gradient(135deg,#8C6D3F 0%,#B08D4F 100%);
  --grad-amount:linear-gradient(180deg,#8C6D3F 0%,#6B5330 100%);
  --grad-line:linear-gradient(90deg,#8C6D3F,#C9A86A);
  --grad-header:linear-gradient(145deg,#2E2417 0%,#4A3A22 55%,#8C6D3F 100%);
  --grad-gold:linear-gradient(135deg,#FFFDF8 4%,#E3CF9E 34%,#C9A86A 70%,#E3CF9E 100%);
  /* --- 原型组件别名：让 8400 原型的组件 CSS 可直接复用（值对齐上方真值）--- */
  --brand:#8C6D3F; --brand-2:#B08D4F; --brand-deep:#2E2417; --brand-grad:#4A3A22;
  --gold-soft:#E3CF9E; --gold-deep:#9C7C3E;
  --bg-alt:#F2EBDE; --line-strong:#D8CBB0;
  --on-brand:#FFFDF8; --on-gold:#2E2417;
}

/* ============================================================
   硬编码层：app.css 中 54 处不走变量的朱红/旧金色值，按主题映射重发
   （自动生成，勿手改；改映射请改 tools/gen-theme-gold.py 后重跑）
   ============================================================ */

[data-theme="gold"] #phone::after{ box-shadow:1px 0 0 rgba(46,36,23,.45), inset 0 0 2px rgba(255,247,220,.6); }
[data-theme="gold"] .bell{ background:rgba(46,36,23,.26); }
[data-theme="gold"] .annbar .tag{ box-shadow:0 1px 3px rgba(46,36,23,.24); }
[data-theme="gold"] .swiper-dots i{ background:rgba(201,168,106,.5); }
[data-theme="gold"] .ad-slot .tag{ background:rgba(140,109,63,.88); }
[data-theme="gold"] .search{ border-bottom:1px solid rgba(140,109,63,.24); }
[data-theme="gold"] .spine i{ background:#2E2417; }
[data-theme="gold"] .track i{ box-shadow:0 0 0 1px rgba(122,92,49,.35); }
[data-theme="gold"] .pill:active{ background:rgba(140,109,63,.07); }
[data-theme="gold"] 0%, [data-theme="gold"] 100%{ box-shadow:0 6px 18px rgba(42,33,27,.5), 0 8px 28px rgba(201,168,106,.40); }
[data-theme="gold"] 50%{ box-shadow:0 6px 18px rgba(42,33,27,.5), 0 10px 40px rgba(201,168,106,.62); }
[data-theme="gold"] .quota-bar i + i{ box-shadow:inset 1px 0 0 rgba(201,168,106,.45); }
[data-theme="gold"] .seg a.on{ box-shadow:0 3px 10px rgba(140,109,63,.26); }
[data-theme="gold"] .input:focus{ border-color:rgba(140,109,63,.5); box-shadow:0 0 0 3px rgba(176,141,79,.14); }
[data-theme="gold"] .batch-summary{ border:1px solid rgba(201,168,106,.26); }
[data-theme="gold"] .ri-ops a.red{ background:rgba(140,109,63,.06); border-color:rgba(140,109,63,.2); }
[data-theme="gold"] .menu .mi{ border:1px solid rgba(140,109,63,.30); background:rgba(140,109,63,.045); }
[data-theme="gold"] .assistant-tip{ border:1px solid rgba(201,168,106,.26); }
[data-theme="gold"] .gcard:hover{ background:linear-gradient(90deg, rgba(201,168,106,.10), transparent 70%); }
[data-theme="gold"] .gcard-ava{ box-shadow:0 3px 10px rgba(140,109,63,.35), inset 0 1px 2px rgba(255,255,255,.28); }
[data-theme="gold"] .sub-avatar{ background:rgba(176,141,79,.14); }
[data-theme="gold"] .sub-del{ border:1px solid rgba(140,109,63,.3); }
[data-theme="gold"] .vip-banner{ background:linear-gradient(140deg,var(--red-deep),#8C6D3F 58%,#B08D4F); border:2px solid rgba(201,168,106,.4); }
[data-theme="gold"] .vip-banner::before{ background: radial-gradient(circle at 90% 20%, rgba(201,168,106,.2) 0%, transparent 45%), radial-gradient(circle at 10% 90%, rgba(201,168,106,.12) 0%, transparent 40%), radial-gradient(circle at 50% 50%, rgba(201,168,106,.05) 0%, transparent 60%); }
[data-theme="gold"] .vip-banner::after{ color:rgba(201,168,106,.1); }
[data-theme="gold"] .share-code{ text-shadow:0 1px 2px rgba(201,168,106,.2); }
[data-theme="gold"] .auth-page::before{ background: radial-gradient(circle at 85% 15%, rgba(201,168,106,.15) 0%, transparent 45%), radial-gradient(circle at 15% 85%, rgba(201,168,106,.1) 0%, transparent 40%); }
[data-theme="gold"] .auth-page::after{ background:linear-gradient(90deg,transparent,rgba(201,168,106,.6),transparent); }
[data-theme="gold"] .auth-logo{ border:2px solid rgba(201,168,106,.3); }
[data-theme="gold"] .auth-hero h1{ text-shadow:0 2px 10px rgba(42,33,27,.35), 0 0 20px rgba(201,168,106,.38); }
[data-theme="gold"] .btn-sms{ border:1px solid rgba(140,109,63,.28); }
[data-theme="gold"] .msg-ico{ border:1px solid rgba(140,109,63,.30); background:rgba(140,109,63,.045); }
[data-theme="gold"] .fb-type.on{ background:rgba(140,109,63,.055); }
[data-theme="gold"] .fb-reply{ border:1px solid rgba(201,168,106,.26); }
[data-theme="gold"] .toast{ border:1px solid rgba(201,168,106,.3); }
[data-theme="gold"] .toast.err{ background:rgba(107,83,48,.94); }
[data-theme="gold"] .scan-box::after{ background:linear-gradient(90deg,rgba(201,168,106,0),rgba(201,168,106,.55) 18%,#E3CF9E 50%,rgba(201,168,106,.55) 82%,rgba(201,168,106,0)); }
[data-theme="gold"] .scan-photo .scan-band{ background:linear-gradient(180deg,rgba(201,168,106,0),rgba(240,220,168,.26) 42%,rgba(201,168,106,.42) 78%,rgba(201,168,106,0)); }
[data-theme="gold"] .scan-photo .scan-beam{ background:linear-gradient(90deg,rgba(201,168,106,0),#C9A86A 13%,#E3CF9E 50%,#C9A86A 87%,rgba(201,168,106,0)); box-shadow:0 1px 3px rgba(42,33,27,.42), 0 0 16px 4px rgba(201,168,106,.5); }
[data-theme="gold"] .scan-photo .scan-badge--run{ border:1px solid rgba(201,168,106,.5); }
[data-theme="gold"] .scan-photo .scan-spin{ border-top-color:#E3CF9E; }
[data-theme="gold"] .wl-carousel{ box-shadow: 0 10px 26px rgba(107,83,48, .28); }
[data-theme="gold"] .wl-arr{ background: rgba(201,168,106,.9); }
[data-theme="gold"] .wl-dots i{ background: rgba(201,168,106,.45); }
[data-theme="gold"] .wl-nav-cta{ box-shadow: 0 3px 10px rgba(140,109,63, .3); }
[data-theme="gold"] .ldg-meta i{ border: 1px solid rgba(201,168,106,.26); }
[data-theme="gold"] .ldg-ops a.del{ border-color: rgba(140,109,63,.28); background: rgba(140,109,63,.04); }
[data-theme="gold"] .ldg-ops a.del:active{ background: rgba(140,109,63,.10); }
[data-theme="gold"] .stats-card::before{ background:linear-gradient(90deg, #8A6A1F, #E3CF9E 22%, #C9A86A 50%, #E3CF9E 78%, #8A6A1F); }
[data-theme="gold"] .stats-card::after{ background:linear-gradient(90deg, transparent, #C9A86A 28%, #E3CF9E 50%, #C9A86A 72%, transparent); }
[data-theme="gold"] .stats-title{ color:#E3CF9E; }
[data-theme="gold"] .stats-title i{ color:#E3CF9E; }
[data-theme="gold"] .stats-amount-value{ background:linear-gradient(168deg, #FFFBEE, #E3CF9E 40%, #C9A86A 76%, #F7EAC2); }
[data-theme="gold"] .ri-prog.expired .track i{ box-shadow:0 0 0 1px rgba(122,92,49,.6); }

/* ============================================================
   观感层：主视觉块对齐原型质感（深色金棕渐变 / 大圆角 / 极淡阴影）
   ============================================================ */

/* --- 页面底：原型是纯净暖白，去掉朱红竖纹与噪点，只留极淡金晕 --- */
[data-theme="gold"] #page{
  background-image:radial-gradient(70% 26% at 100% 12%, rgba(201,168,106,.10) 0%, transparent 60%),
                   linear-gradient(180deg,#FDFAF3 0%,#FAF6EF 46%,#F2EBDE 100%);
  background-size:auto, auto;
  background-repeat:no-repeat, no-repeat;
}

/* --- 顶部主视觉：原型 hero-card 的深色金棕渐变 + 金色光晕 --- */
[data-theme="gold"] .hero{
  background:radial-gradient(120% 90% at 18% -18%, rgba(227,207,158,.22), transparent 58%),
             linear-gradient(145deg,#2E2417 0%,#4A3A22 55%,#8C6D3F 100%);
  border:1px solid rgba(201,168,106,.25);
  box-shadow:0 14px 34px rgba(46,36,23,.28), inset 0 -1px 0 rgba(227,207,158,.45);
}
[data-theme="gold"] .hero::before{
  background-image:repeating-linear-gradient(48deg, rgba(227,207,158,.08) 0 2px, transparent 2px 10px),
                   repeating-linear-gradient(-48deg, rgba(227,207,158,.06) 0 2px, transparent 2px 13px);
}
[data-theme="gold"] .hero::after{
  background:linear-gradient(90deg, transparent, var(--gold-lt) 12%, var(--gold) 50%, var(--gold-lt) 88%, transparent) left top/100% 2px no-repeat;
}
/* 标题金字：background 简写会静默重置 background-clip，必须同时重写 clip */
[data-theme="gold"] .hero-title{
  background:linear-gradient(135deg,#FFFDF8 4%,#E3CF9E 34%,#C9A86A 70%,#E3CF9E 100%);
  -webkit-background-clip:text; background-clip:text;
  -webkit-text-fill-color:transparent; color:transparent;
  filter:drop-shadow(0 1px 0 rgba(46,36,23,.55)) drop-shadow(0 0 12px rgba(227,207,158,.26));
}
[data-theme="gold"] .hero-title .logo{
  background:var(--red-d); color:#FFFDF8; border-radius:8px;
  border:1.5px solid rgba(253,250,243,.78); box-shadow:0 2px 6px rgba(46,36,23,.5);
}

/* --- 账簿卡：原型 ledger-card（大圆角 + 极淡阴影 + 左侧金竖条）--- */
[data-theme="gold"] .book{
  background:var(--card); border:1px solid var(--line);
  border-radius:var(--r-md); box-shadow:var(--shadow);
}
[data-theme="gold"] .book::before{
  content:""; position:absolute; left:0; top:0; bottom:0; width:3px;
  background:linear-gradient(to bottom, var(--gold), var(--red2));
}
[data-theme="gold"] .book:hover{ transform:translateY(-1px); box-shadow:var(--shadow-lg); }

/* --- 底栏：原型 tabbar（白毛玻璃 + 棕金选中 + 中间悬浮金钮）--- */
[data-theme="gold"] #tabbar{
  background:rgba(255,253,248,.97);
  -webkit-backdrop-filter:saturate(1.6) blur(12px);
  backdrop-filter:saturate(1.6) blur(12px);
  border:1px solid var(--line);
  box-shadow:0 6px 18px rgba(46,36,23,.10), 0 -2px 10px rgba(46,36,23,.05);
}
[data-theme="gold"] .tab{ color:var(--ink3); }
[data-theme="gold"] .tab.on{ color:var(--red); }
[data-theme="gold"] .add-btn{
  background:linear-gradient(135deg, var(--red), var(--red2));
  color:#FFFDF8; outline:1px solid rgba(227,207,158,.5);
  box-shadow:0 4px 14px rgba(140,109,63,.38);
}
[data-theme="gold"] .add-btn svg{ fill:#FFFDF8; }

/* --- 卡片：柔和大圆角 + 极淡阴影 --- */
[data-theme="gold"] .card{
  background-image:linear-gradient(180deg, rgba(255,253,248,.7), rgba(46,36,23,.02));
  border-radius:var(--r-md); box-shadow:var(--shadow);
}
[data-theme="gold"] .pill.solid{ box-shadow:0 3px 10px rgba(140,109,63,.34); }

/* --- 统计区 / 我的头：深色金棕渐变 --- */
[data-theme="gold"] .stats-card{
  background:radial-gradient(130% 100% at 16% -22%, rgba(227,207,158,.16), transparent 60%),
             linear-gradient(145deg,#2E2417 0%,#4A3A22 55%,#8C6D3F 100%);
  box-shadow:0 6px 14px rgba(46,36,23,.18), 0 26px 58px rgba(46,36,23,.32);
}
[data-theme="gold"] .avatar{
  background:var(--grad-gold); color:var(--red-d); border:2px solid rgba(201,168,106,.55);
}

/* ============================================================
   首页（鎏金暖白，结构对齐 8400 定稿原型）
   组件类直接复用原型：topbar / banner-slide / hero-card / sec-title /
   ledger-card / list-row。朱漆主题走原 .hero/.book 结构，互不影响。
   ============================================================ */

/* --- 顶栏 --- */
[data-theme="gold"] .topbar{
  padding:calc(var(--safe-top) + 12px) 20px 14px;
  background:var(--card); border-bottom:1px solid var(--line);
  position:sticky; top:0; z-index:100;
}
[data-theme="gold"] .row-s{display:flex;justify-content:space-between;align-items:center;font-size:11px;color:var(--ink-3);margin-bottom:8px}
[data-theme="gold"] .row-b{display:flex;align-items:center;gap:10px}
[data-theme="gold"] .topbar-logo{
  width:34px; height:34px; border-radius:var(--r-sm);
  background:linear-gradient(135deg,var(--gold),var(--gold-soft));
  color:var(--on-gold); display:flex; align-items:center; justify-content:center;
  font-family:'LJ Serif','Songti SC','STSong','SimSun',serif; font-weight:700; font-size:16px;
  box-shadow:var(--shadow-gold); flex-shrink:0;
}
[data-theme="gold"] .topbar-title{font-family:'LJ Serif','Songti SC','STSong','SimSun',serif;font-size:17px;font-weight:600;letter-spacing:1px;color:var(--ink)}
[data-theme="gold"] .topbar-sub{font-size:10px;color:var(--ink-3);letter-spacing:2px;margin-top:2px}
[data-theme="gold"] .topbar-right{margin-left:auto;display:flex;gap:8px;align-items:center}
[data-theme="gold"] .icon-btn{
  width:34px; height:34px; border-radius:var(--r-sm);
  display:flex; align-items:center; justify-content:center;
  color:var(--ink-2); border:1px solid var(--line); background:var(--card);
  transition:all .15s; position:relative;
}
[data-theme="gold"] .icon-btn:active{background:var(--bg-alt)}
[data-theme="gold"] .icon-btn svg{width:17px; height:17px}
[data-theme="gold"] .icon-btn .badge-dot{position:absolute; top:5px; right:5px; width:8px; height:8px; border-radius:50%; background:var(--gold); box-shadow:0 0 0 2px var(--card)}

/* --- 页面容器 / 间距 --- */
[data-theme="gold"] .page-body{padding:16px 16px 110px}
[data-theme="gold"] .gap-xs{margin-top:6px}
[data-theme="gold"] .gap-s{margin-top:10px}
[data-theme="gold"] .gap-m{margin-top:16px}
[data-theme="gold"] .gap-l{margin-top:24px}

/* --- 首页 banner（原型渐变卡 + 文案 + 圆点）--- */
[data-theme="gold"] .banner-slide{
  position:relative; border-radius:var(--r-lg); overflow:hidden;
  background:linear-gradient(145deg,var(--brand-deep),var(--brand-grad));
  color:#fff; border:1px solid rgba(201,168,106,.22); touch-action:pan-y;
}
[data-theme="gold"] .banner-track{display:flex;transition:transform .45s ease}
[data-theme="gold"] .banner-item{
  flex:0 0 100%; min-width:0; min-height:150px;
  display:flex; flex-direction:column; justify-content:center;
  padding:26px 24px 40px; position:relative; z-index:1;
}
/* 鎏金暖白：B 端轮播图素材是「整张海报，文字已烤进图里」→ 有图时只渲图、不叠 DB 文案
   （否则图内文字与 title/description 重叠糊成一团）；无图才回落「金渐变底 + 文案」文字卡。 */
[data-theme="gold"] .banner-item.has-img{ min-height:0; padding:0; }
[data-theme="gold"] .banner-img{ display:block; width:100%; height:auto; position:relative; z-index:1; }
[data-theme="gold"] .banner-slide::after{
  content:''; position:absolute; top:-30px; right:-30px; width:160px; height:160px; z-index:0;
  background:radial-gradient(circle,rgba(201,168,106,.20) 0%,transparent 70%); border-radius:50%;
}
[data-theme="gold"] .banner-t{font-family:'LJ Serif','Songti SC','STSong','SimSun',serif;font-size:22px;font-weight:600;letter-spacing:2px;color:var(--gold-soft);position:relative;z-index:1}
[data-theme="gold"] .banner-s{font-size:12px;color:rgba(255,255,255,.55);margin-top:8px;letter-spacing:1px;position:relative;z-index:1}
[data-theme="gold"] .banner-dots{position:absolute;bottom:12px;left:24px;display:flex;gap:5px;z-index:1}
[data-theme="gold"] .banner-dots span{width:5px;height:5px;border-radius:50%;background:rgba(255,255,255,.3)}
[data-theme="gold"] .banner-dots span.on{width:14px;border-radius:3px;background:var(--gold)}

/* --- 公告条（复用原型 notice-bar 组件）--- */
[data-theme="gold"] .notice-bar{
  display:flex; gap:10px; align-items:center;
  padding:12px 14px; background:linear-gradient(90deg,rgba(201,168,106,.12),var(--card) 55%);
  border:1px solid var(--line); border-left:3px solid var(--gold); border-radius:var(--r-xs);
  font-size:12px; color:var(--ink); box-shadow:0 2px 10px rgba(140,109,63,.14);
}
/* 「公告」金徽标：让公告相对温馨提示一眼可辨且更醒目 */
[data-theme="gold"] .nb-tag{
  flex-shrink:0; padding:3px 9px; border-radius:6px;
  background:linear-gradient(135deg,var(--brand),var(--brand-2)); color:var(--on-brand);
  font-size:10px; font-weight:700; letter-spacing:2px;
  box-shadow:0 2px 6px rgba(140,109,63,.22);
}
[data-theme="gold"] .notice-bar .ic{
  width:22px; height:22px; border-radius:50%;
  background:linear-gradient(135deg,var(--gold),var(--gold-soft)); color:var(--on-gold);
  display:flex; align-items:center; justify-content:center; font-size:11px; flex-shrink:0;
  animation:nbPulse 2.4s ease-in-out infinite;
}
@keyframes nbPulse{0%,100%{transform:scale(1)}50%{transform:scale(1.09)}}
@media (prefers-reduced-motion:reduce){[data-theme="gold"] .notice-bar .ic{animation:none}}
/* 多条公告在条内逐条竖向滚动（行高 20px 与 startAnn 步进一致；单行超长省略） */
[data-theme="gold"] .notice-bar .annwrap{flex:1;min-width:0;height:20px;overflow:hidden}
[data-theme="gold"] .notice-bar .annlist{transition:transform .45s ease}
[data-theme="gold"] .notice-bar .annlist p{
  margin:0;height:20px;line-height:20px;font-size:12px;
  white-space:nowrap;overflow:hidden;text-overflow:ellipsis;
}
/* 温馨提示：常驻注脚（左侧金线小字），与公告卡片区分主次 */
[data-theme="gold"] .tip-line{
  display:flex;align-items:flex-start;
  padding:3px 2px 3px 10px;border-left:2px solid var(--gold);
  font-size:11px;color:var(--ink-3);line-height:1.65;
}

/* --- 礼金总览 hero-card --- */
[data-theme="gold"] .hero-card{
  background:linear-gradient(145deg,var(--brand-deep) 0%,var(--brand-grad) 55%,var(--brand) 100%);
  color:#fff; border-radius:var(--r-lg); padding:28px 24px;
  position:relative; overflow:hidden; box-shadow:var(--shadow-raised);
  border:1px solid rgba(201,168,106,.25);
}
[data-theme="gold"] .hero-card::after{
  content:''; position:absolute; top:-50px; right:-50px; width:180px; height:180px;
  background:radial-gradient(circle,rgba(201,168,106,.22) 0%,transparent 65%); border-radius:50%;
}
[data-theme="gold"] .hero-card::before{
  content:''; position:absolute; bottom:-40px; left:-30px; width:130px; height:130px;
  background:radial-gradient(circle,rgba(201,168,106,.12) 0%,transparent 65%); border-radius:50%;
}
[data-theme="gold"] .hero-label{font-family:'LJ Serif','Songti SC','STSong','SimSun',serif;font-size:11px;color:var(--gold);letter-spacing:8px;text-align:center;position:relative;z-index:1}
/* 礼金总额**全额显示**（不缩写）→ 46px 固定字号撑不住长金额：
   320px 屏实测，10 位数 ¥1,234,567,890 冲出 272px 内容宽 11px 被裁
   （.hero-card 有 overflow:hidden → 静默裁字）。
   改 clamp 自适应：≥390px 仍是原 46px 观感；窄屏随屏宽缩，30px 下限。
   覆盖到 9 位（¥999,999,999，320px 余 27px）—— 单一账簿足够；
   10 位以上仍会溢出，属可接受理论边界（不为它牺牲主视觉字号）。
   注：账簿页 .ledger-stat-v 用同一手法，两处对齐。 */
[data-theme="gold"] .hero-num{
  font-family:'LJ Serif','Songti SC','STSong','SimSun',serif;font-size:clamp(30px, 11.8vw, 46px);font-weight:700;letter-spacing:1px;
  text-align:center;margin-top:10px;line-height:1;position:relative;z-index:1;white-space:nowrap;
  background:linear-gradient(180deg,var(--gold-soft),var(--gold));-webkit-background-clip:text;background-clip:text;color:transparent;
  text-shadow:0 2px 16px rgba(201,168,106,.25);
}
[data-theme="gold"] .hero-num .unit{font-size:22px;font-weight:500;margin-right:4px}
[data-theme="gold"] .hero-stats{
  display:flex;justify-content:center;gap:28px;margin-top:20px;
  padding-top:18px;border-top:1px solid rgba(201,168,106,.30);position:relative;z-index:1;
}
[data-theme="gold"] .hero-stat{text-align:center}
[data-theme="gold"] .hero-stat-v{font-size:17px;font-weight:500;color:#fff}
[data-theme="gold"] .hero-stat-l{font-size:10px;color:#C9B98F;margin-top:2px;letter-spacing:1px}
/* 两格现金/微信：flex:1 等分 + space-between（保持原观感与字号 14px 不变）。
   Edge 实测（2026-09-28）：320px 屏格内容宽 101px，而 `¥1,015,804` 已占 105px
   → **当前演示数据就溢出 4px**；`.hero-card` 有 overflow:hidden，溢出即**静默裁字**。
   360px 以上余 2~51px（安全）。
   修法：① 允许换行（wrap）② 标签拒缩 ③ **金额不再强制 nowrap**
   —— 换行后金额独占一行仍不够时可在「¥」后折行，保住每一位数字（金额宁可折行不可裁）。 */
[data-theme="gold"] .hero-methods{display:flex;gap:8px;margin-top:16px;position:relative;z-index:1;min-width:0}
[data-theme="gold"] .hero-meth{
  flex:1 1 0;min-width:0;background:rgba(255,255,255,.06);border:1px solid rgba(201,168,106,.25);
  border-radius:var(--r-xs);padding:10px 14px;
  display:flex;flex-wrap:wrap;align-items:baseline;gap:4px;justify-content:space-between;
  font-size:11px;color:rgba(255,255,255,.55);
}
[data-theme="gold"] .hero-meth > span:first-child{flex:0 0 auto;white-space:nowrap}
[data-theme="gold"] .hero-meth .v{color:var(--gold-soft);font-family:'LJ Serif','Songti SC','STSong','SimSun',serif;font-size:14px;word-break:break-all}

/* --- 区块标题 --- */
[data-theme="gold"] .sec-title{
  font-family:'LJ Serif','Songti SC','STSong','SimSun',serif;font-size:15px;font-weight:600;color:var(--ink);
  display:flex;align-items:center;gap:8px;padding:0 4px;
}
[data-theme="gold"] .sec-title::before{content:'';width:3px;height:14px;border-radius:2px;background:linear-gradient(to bottom,var(--gold),var(--brand))}
[data-theme="gold"] .sec-title .more{
  margin-left:auto;font-size:11px;color:var(--ink-3);font-weight:400;
  display:flex;align-items:center;gap:2px;cursor:pointer;
}
[data-theme="gold"] .sec-title .more svg{width:12px;height:12px}

/* --- 账簿卡 --- */
[data-theme="gold"] .ledger-card{
  background:var(--card);border:1px solid var(--line);border-radius:var(--r-md);
  padding:14px 16px;position:relative;overflow:hidden;margin-top:10px;box-shadow:var(--shadow-card);
  transition:transform .15s,box-shadow .15s;cursor:pointer;
}
[data-theme="gold"] .ledger-card:active{transform:translateY(-1px);box-shadow:var(--shadow-raised)}
[data-theme="gold"] .ledger-card::before{content:'';position:absolute;left:0;top:0;bottom:0;width:3px;background:linear-gradient(to bottom,var(--gold),var(--brand))}
[data-theme="gold"] .ledger-head{display:flex;justify-content:space-between;align-items:flex-start}
[data-theme="gold"] .ledger-name{font-family:'LJ Serif','Songti SC','STSong','SimSun',serif;font-size:15px;font-weight:600;color:var(--ink)}
[data-theme="gold"] .ledger-meta{font-size:11px;color:var(--ink-3);margin-top:3px}
[data-theme="gold"] .ledger-amt{font-family:'LJ Serif','Songti SC','STSong','SimSun',serif;font-size:22px;font-weight:700;color:var(--brand);margin-top:10px;display:flex;align-items:baseline;gap:6px}
[data-theme="gold"] .ledger-amt .l{font-size:11px;font-weight:400;color:var(--ink-3)}

/* --- 账簿额度条（对齐 8400 原型 .quota-row）--- */
[data-theme="gold"] .quota-row{display:flex;align-items:center;gap:12px;padding:12px 14px;background:var(--card);border:1px solid var(--line);border-radius:var(--r-sm)}
[data-theme="gold"] .quota-label{font-size:12px;color:var(--ink-3)}
[data-theme="gold"] .quota-bar{flex:1;height:6px;background:var(--bg-alt);border-radius:3px;overflow:hidden}
[data-theme="gold"] .quota-bar-fill{height:100%;background:linear-gradient(90deg,var(--brand),var(--gold));border-radius:3px}
[data-theme="gold"] .quota-num{font-family:'LJ Serif','Songti SC','STSong','SimSun',serif;font-size:14px;font-weight:600;color:var(--brand)}

/* --- 封账进度条（对齐 8400 原型 .progress）--- */
[data-theme="gold"] .progress{height:6px;background:var(--bg-alt);border-radius:3px;overflow:hidden}
[data-theme="gold"] .progress-fill{height:100%;background:linear-gradient(90deg,var(--brand),var(--gold));border-radius:3px}
[data-theme="gold"] .track-cap{margin-top:6px;display:flex;justify-content:space-between;font-size:10px;letter-spacing:.1em;color:var(--ink-3)}
[data-theme="gold"] .track-cap b{color:var(--gold-deep);font-weight:700}

/* --- 状态标签（对齐 8400 原型 .tag / .tag-on / .tag-done）--- */
[data-theme="gold"] .tag{display:inline-block;padding:2px 10px;border-radius:10px;font-size:10px;letter-spacing:1px;font-weight:500}
[data-theme="gold"] .tag-on{background:rgba(201,168,106,.16);color:var(--gold-deep)}
[data-theme="gold"] .tag-done{background:var(--bg-alt);color:var(--ink-3)}

/* --- 最近宾客列表 --- */
[data-theme="gold"] .list-row{display:flex;align-items:center;gap:12px;padding:12px 0;border-top:1px solid var(--line)}
[data-theme="gold"] .list-row:first-child{border-top:none}
[data-theme="gold"] .list-row .avatar{
  width:40px;height:40px;border-radius:var(--r-sm);
  background:linear-gradient(135deg,var(--bg-alt),var(--line));color:var(--brand);
  display:flex;align-items:center;justify-content:center;
  font-family:'LJ Serif','Songti SC','STSong','SimSun',serif;font-weight:600;font-size:16px;flex-shrink:0;
}
[data-theme="gold"] .list-info{flex:1;min-width:0}
[data-theme="gold"] .list-name{font-size:14px;font-weight:500;color:var(--ink)}
[data-theme="gold"] .list-sub{font-size:11px;color:var(--ink-3);margin-top:2px}
[data-theme="gold"] .list-right{text-align:right;flex-shrink:0}
[data-theme="gold"] .list-num{font-family:'LJ Serif','Songti SC','STSong','SimSun',serif;font-size:16px;font-weight:600;color:var(--brand)}
[data-theme="gold"] .list-tag{font-size:10px;color:var(--ink-3);margin-top:2px}

/* --- 入场动画（与 8400 一致）--- */
@keyframes ljGoldFade{from{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}
[data-theme="gold"] .page-body>*{animation:ljGoldFade .35s ease both}
[data-theme="gold"] .page-body>*:nth-child(1){animation-delay:.03s}
[data-theme="gold"] .page-body>*:nth-child(2){animation-delay:.06s}
[data-theme="gold"] .page-body>*:nth-child(3){animation-delay:.09s}
[data-theme="gold"] .page-body>*:nth-child(4){animation-delay:.12s}
[data-theme="gold"] .page-body>*:nth-child(5){animation-delay:.15s}

/* --- 账簿页 Hero（对齐 8400 原型 .ledger-hero）--- */
[data-theme="gold"] .ledger-hero{
  background:linear-gradient(145deg,var(--brand-deep),var(--brand-grad));
  color:#fff;border-radius:var(--r-lg);padding:24px;border:1px solid rgba(201,168,106,.25);
  box-shadow:var(--shadow-raised);position:relative;overflow:hidden;margin-top:10px;
}
[data-theme="gold"] .ledger-hero::after{
  content:'';position:absolute;top:-40px;right:-30px;width:160px;height:160px;
  background:radial-gradient(circle,rgba(201,168,106,.20) 0%,transparent 65%);border-radius:50%;
}
[data-theme="gold"] .ledger-hero-t{font-family:'LJ Serif','Songti SC','STSong','SimSun',serif;font-size:20px;font-weight:600;letter-spacing:2px;color:var(--gold-soft);position:relative;z-index:1}
[data-theme="gold"] .ledger-hero-s{font-size:12px;color:rgba(255,255,255,.5);margin-top:4px;letter-spacing:1px;position:relative;z-index:1}
[data-theme="gold"] .ledger-stats{display:flex;gap:10px;margin-top:18px;position:relative;z-index:1;min-width:0}
/* 三格**不再等宽**（原型是 flex:1，那是按「7 / 24 / ¥1.2万」这种短数字画的）。
   礼金总额是全量显示的（见 renderLedgerGold 的 amountTxt），七位数 ¥1,015,804 在
   320px 视宽下要 111px，而等分只给 88px → 直接把 hero 卡右边界顶穿（用户截图）。
   改法：前两格按内容占宽（数字小、天然窄），第 3 格吃掉全部富余；都不收缩。 */
[data-theme="gold"] .ledger-stat{
  flex:0 0 auto;background:rgba(255,255,255,.06);border:1px solid rgba(201,168,106,.20);
  border-radius:var(--r-xs);padding:10px;text-align:center;min-width:0;
}
[data-theme="gold"] .ledger-stat:last-child{flex:1 1 auto}
/* 金额格字号自适应：clamp 下限 13px 保证 ≥10.5px 字号红线，上限仍是原型的 20px。
   纯 CSS 做不到「按内容长度精确收缩」，故再叠加容器查询兜底：金额格窄于 120px 时整体降档。
   两档叠加后，320px 视宽下金额格约 13px、390px 视宽下维持 20px —— 都不越界。 */
[data-theme="gold"] .ledger-stat-v{
  font-family:'LJ Serif','Songti SC','STSong','SimSun',serif;font-weight:600;color:var(--gold-soft);
  font-size:clamp(13px, 5.2vw, 20px);
}
/* 前两格（本账簿 / 宾客数）数字短，不需要跟着放大，固定中号更稳 */
[data-theme="gold"] .ledger-stat:not(:last-child) .ledger-stat-v{font-size:20px}
[data-theme="gold"] .ledger-stat-l{font-size:10px;color:rgba(255,255,255,.5);margin-top:2px;letter-spacing:1px}

/* --- 账簿页右下角悬浮「新建账簿」（取代原 topbar 右上角按钮）--- */
[data-theme="gold"] .fab-new{
  position:fixed; right:18px; bottom:calc(var(--safe-bot, 0px) + 88px); z-index:90;
  display:flex; align-items:center; gap:7px;
  padding:12px 18px; border:none; border-radius:26px;
  background:linear-gradient(135deg,var(--gold),var(--gold-soft)); color:var(--on-gold);
  font-family:inherit; font-size:13px; font-weight:700; letter-spacing:1px;
  box-shadow:0 8px 22px rgba(140,109,63,.38); cursor:pointer;
  transition:transform .12s,box-shadow .15s;
}
[data-theme="gold"] .fab-new:active{transform:scale(.96);box-shadow:0 4px 14px rgba(140,109,63,.32)}
[data-theme="gold"] .fab-new i{font-size:13px}

/* --- 按钮（对齐 8400 原型 .btn / .btn-primary / .btn-ghost / .btn-sm）--- */
[data-theme="gold"] .btn{
  display:flex;align-items:center;justify-content:center;gap:6px;
  width:100%;padding:14px 20px;border-radius:var(--r-sm);
  font-size:15px;font-weight:500;letter-spacing:2px;
  transition:transform .08s,box-shadow .15s;border:none;cursor:pointer;
}
[data-theme="gold"] .btn:active{transform:scale(.98)}
[data-theme="gold"] .btn-primary{background:linear-gradient(135deg,var(--brand),var(--brand-2));color:var(--on-brand);box-shadow:var(--shadow-raised)}
[data-theme="gold"] .btn-ghost{background:transparent;border:1px solid var(--line-strong);color:var(--ink)}
[data-theme="gold"] .btn-sm{padding:8px 14px;font-size:12px;border-radius:var(--r-sm);letter-spacing:1px}
/* 应用既有小按钮 .btn.sm 必须保持 width:auto —— 上面的 .btn{width:100%} 与 app.css 的
   .btn.sm 特异性相同且后加载，会把它覆盖成整行宽（激活页 goodsRow 曾因此被压垮）。 */
[data-theme="gold"] .btn.sm{width:auto;padding:8px 15px;font-size:12px;border-radius:var(--r-sm);letter-spacing:1px;display:inline-flex}
[data-theme="gold"] .btn-sm.btn-primary{color:var(--on-brand)}
[data-theme="gold"] .btn-sm.btn-ghost{color:var(--ink)}

/* --- 账簿卡动作行（对齐 8400 原型 .ledger-actions）--- */
[data-theme="gold"] .ledger-actions{display:flex;gap:6px;margin-top:12px}
[data-theme="gold"] .ledger-actions .btn{width:auto;padding:8px 14px;font-size:12px;letter-spacing:1px}

/* --- 搜索框（对齐 8400 原型 .search svg/input，覆盖朱漆的金填充图标）--- */
[data-theme="gold"] .search svg{width:16px;height:16px;color:var(--ink-3);fill:none;flex-shrink:0;margin-top:0}
[data-theme="gold"] .search input{font-size:14px;background:transparent}

/* --- 添加页（对齐 8400 原型 page-add）--- */
[data-theme="gold"] .field-label{font-size:12px;color:var(--ink-2);font-weight:500;margin-bottom:8px;display:flex;align-items:center;gap:4px}
[data-theme="gold"] .field-label .req{color:var(--brand)}
[data-theme="gold"] .tabs{display:flex;background:var(--bg-alt);border:1px solid var(--line);border-radius:var(--r-sm);padding:4px;gap:2px}
[data-theme="gold"] .tabs .tab{flex:1;padding:10px 4px;border-radius:var(--r-xs);font-size:12px;color:var(--ink-3);text-align:center;transition:all .15s}
[data-theme="gold"] .tabs .tab.on{background:var(--card);color:var(--brand);font-weight:600;box-shadow:var(--shadow-card);border-bottom:2px solid var(--gold)}
[data-theme="gold"] .book-chips{display:flex;gap:8px;overflow-x:auto;padding-bottom:4px}
[data-theme="gold"] .book-chips::-webkit-scrollbar{display:none}
[data-theme="gold"] .book-chip{flex-shrink:0;padding:8px 14px;border-radius:var(--r-xs);border:1px solid var(--line-strong);background:var(--card);font-size:12px;color:var(--ink-2);cursor:pointer;transition:all .12s}
[data-theme="gold"] .book-chip.active{background:var(--brand);color:var(--on-brand);border-color:var(--brand)}
[data-theme="gold"] .field{margin-bottom:14px}
[data-theme="gold"] .field label{font-size:12px;color:var(--ink-2);font-weight:500;margin-bottom:8px;display:flex;align-items:center;gap:4px}
[data-theme="gold"] .field label em{color:var(--brand);font-style:normal}
[data-theme="gold"] .input{width:100%;padding:12px 14px;border:1px solid var(--line-strong);border-radius:var(--r-sm);font-size:15px;background:var(--card);color:var(--ink);transition:border-color .15s,box-shadow .15s}
[data-theme="gold"] .chips{display:flex;flex-wrap:wrap;gap:6px}
[data-theme="gold"] .chips .chip{padding:6px 12px;border-radius:var(--r-xs);border:1px solid var(--line-strong);background:var(--card);font-size:12px;color:var(--ink-2);cursor:pointer;transition:all .12s}
[data-theme="gold"] .chips .chip.on{background:var(--brand);color:var(--on-brand);border-color:var(--brand)}
[data-theme="gold"] #amt-quick .chip{min-width:48px;text-align:center}
[data-theme="gold"] .pay-pick{display:flex;gap:8px}
[data-theme="gold"] .pay-pick a{flex:1;padding:14px;border-radius:var(--r-xs);border:1px solid var(--line-strong);background:var(--card);text-align:center;cursor:pointer;transition:all .15s;display:flex;flex-direction:column;align-items:center;gap:6px;font-size:12px;color:var(--ink-2)}
[data-theme="gold"] .pay-pick a i{font-size:22px;color:var(--ink-3)}
[data-theme="gold"] .pay-pick a.on{border-color:var(--brand);background:rgba(140,109,63,.08);box-shadow:inset 0 0 0 1px var(--brand);color:var(--brand);font-weight:600}
[data-theme="gold"] .pay-pick a.on i{color:var(--brand)}
[data-theme="gold"] .card-title{font-family:'LJ Serif','Songti SC','STSong','SimSun',serif;font-size:14px;font-weight:600;color:var(--ink);display:flex;align-items:center;justify-content:space-between}
[data-theme="gold"] .card-title .more{font-size:12px;color:var(--brand);font-weight:500;cursor:pointer;font-family:inherit}

/* --- 提醒页（对齐 8400/8500 原型 page-remind）--- */
[data-theme="gold"] .remind-head{
  display:flex;justify-content:space-between;align-items:flex-start;
  background:linear-gradient(145deg,var(--brand-deep),var(--brand-grad));
  color:#fff;border-radius:var(--r-lg);padding:22px;border:1px solid rgba(201,168,106,.25);
  box-shadow:var(--shadow-raised);position:relative;overflow:hidden;margin-top:10px;
}
[data-theme="gold"] .remind-head::after{
  content:'';position:absolute;top:-30px;right:-20px;width:120px;height:120px;
  background:radial-gradient(circle,rgba(201,168,106,.20) 0%,transparent 65%);border-radius:50%;
}
[data-theme="gold"] .remind-title{font-family:'LJ Serif','Songti SC','STSong','SimSun',serif;font-size:20px;font-weight:600;letter-spacing:2px;color:var(--gold-soft);position:relative;z-index:1}
[data-theme="gold"] .remind-sub{font-size:12px;color:rgba(255,255,255,.5);margin-top:4px;position:relative;z-index:1}
[data-theme="gold"] .remind-new-btn{
  padding:10px 16px;border-radius:var(--r-xs);position:relative;z-index:1;
  background:linear-gradient(135deg,var(--gold),var(--gold-soft));color:var(--on-gold);
  font-size:13px;font-weight:600;cursor:pointer;border:none;font-family:inherit;box-shadow:var(--shadow-gold);
}
[data-theme="gold"] .remind-sum{display:flex;gap:10px;margin-top:14px}
[data-theme="gold"] .remind-sum-item{flex:1;padding:14px;background:var(--card);border:1px solid var(--line);border-radius:var(--r-md);text-align:center;box-shadow:var(--shadow-card)}
[data-theme="gold"] .remind-sum-v{font-family:'LJ Serif','Songti SC','STSong','SimSun',serif;font-size:24px;font-weight:700;color:var(--brand)}
[data-theme="gold"] .remind-sum-l{font-size:10px;color:var(--ink-3);margin-top:2px;letter-spacing:1px}
[data-theme="gold"] .remind-sum-item{cursor:pointer;transition:border-color .15s ease,box-shadow .15s ease,background .15s ease}
[data-theme="gold"] .remind-sum-item.on{border-color:var(--gold);box-shadow:0 0 0 1px var(--gold) inset,var(--shadow-card);background:linear-gradient(180deg,rgba(201,168,106,.16),rgba(201,168,106,.05))}
[data-theme="gold"] .remind-sum-item.on .remind-sum-v{color:var(--gold-deep)}
[data-theme="gold"] .remind-sum-hint{font-size:10px;color:var(--ink-3);text-align:left;margin-top:8px;letter-spacing:.5px}
[data-theme="gold"] .remind-filterbar{display:flex;align-items:center;justify-content:space-between;gap:10px;margin-top:10px}
[data-theme="gold"] .remind-all{appearance:none;-webkit-appearance:none;font-family:inherit;border:1px solid var(--line-strong);background:var(--card);color:var(--ink-2);font-size:11px;padding:5px 14px;border-radius:14px;cursor:pointer;letter-spacing:.5px;white-space:nowrap;transition:border-color .15s ease,color .15s ease,background .15s ease}
[data-theme="gold"] .remind-all.on{border-color:var(--gold);color:var(--gold-deep);background:rgba(201,168,106,.12)}
[data-theme="gold"] .rm-guest-info{background:var(--info-bg);border:1px solid var(--gold-line);color:var(--ink-2)}
[data-theme="gold"] .rm-guest-info b{color:var(--brand)}
[data-theme="gold"] .remind-card{
  background:var(--card);border:1px solid var(--line);border-radius:var(--r-md);
  padding:16px;margin-top:12px;border-left:3px solid var(--brand);box-shadow:var(--shadow-card);
}
[data-theme="gold"] .remind-top{display:flex;justify-content:space-between;align-items:flex-start}
[data-theme="gold"] .remind-name{font-family:'LJ Serif','Songti SC','STSong','SimSun',serif;font-size:15px;font-weight:600;color:var(--ink)}
[data-theme="gold"] .remind-desc{font-size:12px;color:var(--ink-2);margin-top:8px;line-height:1.6}
[data-theme="gold"] .remind-book{font-size:11px;color:var(--ink-3);margin-top:6px}
[data-theme="gold"] .c-btn-sm{
  padding:6px 12px;border-radius:8px;background:var(--brand);color:#fff;font-size:12px;
  border:none;cursor:pointer;margin-right:6px;font-family:inherit;
}
[data-theme="gold"] .c-btn-sm.ghost{background:transparent;border:1px solid var(--line);color:var(--ink-2)}
[data-theme="gold"] .c-btn-sm.danger{background:var(--danger,#C0392B)}

/* --- 我的页（对齐 8400/8500 原型 page-mine）--- */
/* 用户身份条**不做深色卡**：与 MP 端同构（.mine-head 仅为 flex 行、无底色）。
   深色只留给唯一的 VIP 卡锚点，避免「用户卡与 VIP 卡都是深渐变、再次撞脸」。 */
[data-theme="gold"] .mine-head{
  background:transparent;border:none;box-shadow:none;border-radius:0;
  padding:8px 2px 4px;position:relative;
}
[data-theme="gold"] .mine-head::after{content:none}
[data-theme="gold"] .mine-user{display:flex;align-items:center;gap:14px;position:relative;z-index:1}
[data-theme="gold"] .mine-avatar{
  width:54px;height:54px;border-radius:16px;overflow:hidden;
  background:linear-gradient(135deg,var(--gold),var(--gold-soft));color:var(--on-gold);
  display:flex;align-items:center;justify-content:center;
  font-family:'LJ Serif','Songti SC','STSong','SimSun',serif;font-weight:700;font-size:24px;flex-shrink:0;
  box-shadow:var(--shadow-gold);cursor:pointer;
}
[data-theme="gold"] .mine-avatar img{width:100%;height:100%;object-fit:cover}
[data-theme="gold"] .mine-n-row{display:flex;align-items:center;gap:8px}
[data-theme="gold"] .mine-name{font-family:'LJ Serif','Songti SC','STSong','SimSun',serif;font-size:20px;font-weight:600;letter-spacing:1px;color:var(--ink)}
[data-theme="gold"] .mine-vip-badge{font-size:10px;padding:2px 8px;border-radius:6px;background:linear-gradient(135deg,var(--gold),var(--gold-soft));color:var(--on-gold);font-weight:600;letter-spacing:1px}
[data-theme="gold"] .mine-phone{font-size:12px;color:var(--ink-3);margin-top:4px}
[data-theme="gold"] .mine-edit{margin-left:auto;padding:8px 14px;border-radius:var(--r-xs);background:var(--card);border:1px solid var(--line-strong);font-size:12px;color:var(--ink-2);cursor:pointer;font-family:inherit}
/* VIP 卡升级为**深棕金渐变主视觉**（页面唯一锚点），与浅白信息卡拉开明度落差，
   解决「所有区块同构、无主次」问题（设计定调 §3/§5）。文字改浅金/白，
   烫印水印提亮，CTA 用金渐变按钮在深底上点睛。 */
[data-theme="gold"] .vip-card{
  margin-top:14px;padding:22px 20px;
  background:radial-gradient(130% 100% at 16% -22%, rgba(227,207,158,.18), transparent 60%),
             linear-gradient(145deg,#2E2417 0%,#4A3A22 55%,#8C6D3F 100%);
  color:#fff;border:1px solid rgba(201,168,106,.30);border-radius:var(--r-md);
  position:relative;overflow:hidden;
  box-shadow:0 6px 14px rgba(46,36,23,.18), 0 26px 58px rgba(46,36,23,.32);
}
[data-theme="gold"] .vip-card::after{
  content:'VIP';position:absolute;right:-12px;bottom:-22px;z-index:0;
  font-family:'Georgia',serif;font-size:76px;font-weight:900;
  color:rgba(227,207,158,.26);letter-spacing:4px;
}
[data-theme="gold"] .vip-badge,[data-theme="gold"] .vip-title,
[data-theme="gold"] .vip-sub,[data-theme="gold"] .vip-btn{position:relative;z-index:1}
[data-theme="gold"] .vip-badge{font-size:11px;padding:3px 10px;border-radius:6px;background:rgba(255,255,255,.16);color:var(--gold-soft);font-weight:600;letter-spacing:1px;display:inline-block}
[data-theme="gold"] .vip-title{font-family:'LJ Serif','Songti SC','STSong','SimSun',serif;font-size:22px;font-weight:700;color:#fff;margin-top:10px;letter-spacing:2px}
[data-theme="gold"] .vip-sub{font-size:12px;color:rgba(255,255,255,.62);margin-top:4px}
[data-theme="gold"] .vip-btn{margin-top:14px;padding:10px 20px;background:linear-gradient(135deg,var(--gold),var(--gold-soft));color:var(--on-gold);border:none;border-radius:var(--r-xs);font-size:13px;font-family:inherit;cursor:pointer;box-shadow:var(--shadow-gold)}
/* 金光溢动：斜向流光带周期性扫过 + 金辉呼吸外溢，凸显 VIP 高端感。
   流光放在 ::before（z-index:0，位于内容层之下）→ 只提亮底色、不冲淡文字；
   烫印水印占用 ::after，故此处用 ::before，二者不冲突。 */
[data-theme="gold"] .vip-card{animation:vip-glow 5.4s ease-in-out infinite}
[data-theme="gold"] .vip-card::before{
  content:'';position:absolute;top:-30%;bottom:-30%;left:0;width:46%;
  z-index:0;pointer-events:none;
  background:linear-gradient(100deg,rgba(255,247,222,0) 0%,rgba(255,247,222,.10) 30%,rgba(255,252,236,.58) 50%,rgba(255,247,222,.10) 70%,rgba(255,247,222,0) 100%);
  transform:translateX(-160%) skewX(-16deg);
  animation:vip-sheen 4.8s cubic-bezier(.45,.05,.25,1) infinite;
}
@keyframes vip-sheen{
  0%{transform:translateX(-160%) skewX(-16deg);opacity:0}
  12%{opacity:1}
  42%{transform:translateX(340%) skewX(-16deg);opacity:1}
  54%{transform:translateX(340%) skewX(-16deg);opacity:0}
  100%{transform:translateX(-160%) skewX(-16deg);opacity:0}
}
@keyframes vip-glow{
  0%,100%{box-shadow:0 6px 14px rgba(46,36,23,.18),0 26px 58px rgba(46,36,23,.32),0 0 0 0 rgba(201,168,106,0)}
  50%{box-shadow:0 6px 14px rgba(46,36,23,.18),0 26px 58px rgba(46,36,23,.32),0 0 30px 2px rgba(201,168,106,.34)}
}
/* 额度「可用」数：渐变烫金，作信息卡内的视觉焦点（次级焦点，不抢 VIP 主锚点） */
[data-theme="gold"] .mine-q-avail{
  background:linear-gradient(135deg,var(--brand),var(--gold));
  -webkit-background-clip:text;background-clip:text;color:transparent;
}
[data-theme="gold"] .share-code-box{
  display:flex;align-items:center;gap:14px;margin-top:12px;
  padding:14px;background:rgba(201,168,106,.07);
  border:1px dashed var(--gold-deep);border-radius:var(--r-sm);
}
[data-theme="gold"] .share-code{font-family:'Georgia',serif;font-size:22px;font-weight:700;letter-spacing:5px;color:var(--brand)}
[data-theme="gold"] .share-copy{margin-left:auto;padding:8px 14px;background:var(--brand);color:var(--on-brand);border:none;border-radius:var(--r-xs);font-size:12px;font-family:inherit;cursor:pointer}
[data-theme="gold"] .menu-list{padding:0 16px;background:var(--card);border:1px solid var(--line);border-radius:var(--r-md);box-shadow:var(--shadow-card)}
[data-theme="gold"] .menu-list a.menu-item{display:flex;align-items:center;gap:12px;padding:14px 0;border-top:1px solid var(--line);cursor:pointer;transition:background .1s;text-decoration:none}
[data-theme="gold"] .menu-list a.menu-item:first-child{border-top:none}
[data-theme="gold"] .menu-list a.menu-item:active{background:var(--bg-alt)}
[data-theme="gold"] .menu-ic{width:32px;height:32px;border-radius:var(--r-xs);background:rgba(201,168,106,.12);display:flex;align-items:center;justify-content:center;color:var(--gold-deep);flex-shrink:0;font-size:14px}
[data-theme="gold"] .menu-ic svg{width:16px;height:16px}
[data-theme="gold"] .menu-t{flex:1;font-size:14px;color:var(--ink)}
[data-theme="gold"] .menu-sub{font-size:11px;color:var(--ink-3)}
[data-theme="gold"] .menu-ar{width:14px;height:14px;color:var(--ink-4)}
[data-theme="gold"] .legal-links{text-align:center;padding:20px 0;font-size:11px;color:var(--ink-4);letter-spacing:1px}
[data-theme="gold"] .legal-links a{color:var(--ink-4);text-decoration:none}
[data-theme="gold"] .logout-btn{
  width:100%;padding:12px;background:transparent;border:1px solid var(--line);border-radius:var(--r-sm);
  color:var(--ink-3);font-size:12px;font-family:inherit;cursor:pointer;margin-top:10px;
}
[data-theme="gold"] .logout-btn:active{background:var(--bg-alt);color:var(--ink-2)}
[data-theme="gold"] .version-text{text-align:center;font-size:10px;color:var(--ink-4);margin-top:16px;letter-spacing:1px}

/* --- 登录/注册页（对齐 8400/8500 原型 login：浅纸底+深金渐变标题+金 tab）---
   只覆盖写死朱漆的属性，布局/表单逻辑不动。 */
[data-theme="gold"] .auth-page{background:var(--bg-alt)}
[data-theme="gold"] .auth-page::before{
  background:
    radial-gradient(circle at 85% 15%, rgba(201,168,106,.16) 0%, transparent 45%),
    radial-gradient(circle at 15% 85%, rgba(201,168,106,.10) 0%, transparent 40%);
}
[data-theme="gold"] .auth-hero{color:var(--ink)}
[data-theme="gold"] .auth-logo{box-shadow:var(--shadow-gold);border:2px solid rgba(201,168,106,.35);color:var(--on-gold)}
[data-theme="gold"] .auth-hero h1{
  color:var(--brand-deep);text-shadow:none;
  background:linear-gradient(180deg,var(--brand-deep) 0%,var(--brand) 60%,var(--gold-deep) 100%);
  -webkit-background-clip:text;background-clip:text;color:transparent;
}
[data-theme="gold"] .auth-hero p{color:var(--gold-deep);opacity:1;text-shadow:none}
[data-theme="gold"] .auth-tabs a.on::after{background:var(--gold)}
[data-theme="gold"] .agree input{accent-color:var(--brand)}
[data-theme="gold"] .agree a{color:var(--brand)}
[data-theme="gold"] .btn-sms{border:1px solid var(--line-strong);background:var(--card);color:var(--brand)}
[data-theme="gold"] .wl-carousel{box-shadow:0 10px 26px rgba(140,109,63,.22)}

/* --- 宣传页 welcome（对齐 8400/8500 原型：浅底+深金渐变大标题+金 CTA）--- */
[data-theme="gold"] .wl-hero{background:transparent;color:var(--ink);border-radius:0;padding:64px 24px 44px}
[data-theme="gold"] .wl-logo{
  border:1.5px solid rgba(201,168,106,.45);background:linear-gradient(135deg,var(--gold),var(--gold-soft));
  color:var(--on-gold);box-shadow:var(--shadow-gold);
}
[data-theme="gold"] .wl-hero h1{
  background:linear-gradient(180deg,var(--brand-deep) 0%,var(--brand) 60%,var(--gold-deep) 100%);
  -webkit-background-clip:text;background-clip:text;color:transparent;
}
[data-theme="gold"] .wl-hero p{color:var(--gold-deep);opacity:1;letter-spacing:4px}
[data-theme="gold"] .wl-ghost{color:var(--brand);opacity:1}
[data-theme="gold"] .wl-sec h2{
  background:linear-gradient(180deg,var(--brand),var(--gold-deep));
  -webkit-background-clip:text;background-clip:text;color:transparent;letter-spacing:4px;
}
[data-theme="gold"] .wl-feat .ico{color:var(--gold-deep)}
[data-theme="gold"] .wl-step .n{background:linear-gradient(135deg,var(--gold),var(--gold-soft));color:var(--on-gold)}
[data-theme="gold"] .wl-foot{border-top:1px solid var(--line)}

/* --- 推广页 welcome（DOM 对齐 8400/8500 原型 page-welcome）--- */
[data-theme="gold"] .welcome-nav{
  display:flex;align-items:center;gap:10px;
  padding:calc(var(--safe-top, 0px) + 12px) 20px 14px;
  background:transparent;position:sticky;top:0;z-index:100;
}
[data-theme="gold"] .welcome-logo{display:flex;align-items:center;gap:8px;font-family:'LJ Serif','Songti SC','STSong','SimSun',serif;font-size:17px;font-weight:700;letter-spacing:2px;color:var(--ink)}
[data-theme="gold"] .welcome-logo-mark{
  width:28px;height:28px;border-radius:8px;
  background:linear-gradient(135deg,var(--gold),var(--gold-soft));color:var(--on-gold);
  display:flex;align-items:center;justify-content:center;font-size:14px;
  animation:logoHalo 4.5s ease-in-out infinite;
}
@keyframes logoHalo{0%,100%{box-shadow:0 0 0 0 rgba(201,168,106,.45)}50%{box-shadow:0 0 0 8px rgba(201,168,106,0)}}
[data-theme="gold"] .welcome-nav-links{display:none;margin-left:auto;gap:24px;font-size:13px;color:var(--ink-2)}
[data-theme="gold"] .welcome-nav-links a{cursor:pointer}
[data-theme="gold"] .welcome-nav-links a:hover{color:var(--brand)}
@media (min-width:768px){[data-theme="gold"] .welcome-nav-links{display:flex}}
[data-theme="gold"] .welcome-nav-right{margin-left:auto;display:flex;gap:10px;align-items:center}
[data-theme="gold"] .welcome-login{font-size:13px;color:var(--ink-2);padding:8px 14px;border-radius:var(--r-xs);cursor:pointer}
[data-theme="gold"] .welcome-login:hover{background:var(--bg-alt)}
[data-theme="gold"] .welcome-register{
  font-size:13px;padding:8px 18px;border-radius:var(--r-xs);cursor:pointer;
  background:linear-gradient(135deg,var(--brand),var(--brand-2));color:var(--on-brand);font-weight:500;box-shadow:var(--shadow-card);
}
[data-theme="gold"] .welcome-hero{padding:64px 24px 52px;text-align:center;position:relative}
[data-theme="gold"] .welcome-hero-sub{font-family:'LJ Serif','Songti SC','STSong','SimSun',serif;font-size:13px;color:var(--gold-deep);letter-spacing:8px;margin-bottom:18px}
[data-theme="gold"] .welcome-hero-title{
  font-family:'LJ Serif','Songti SC','STSong','SimSun',serif;font-size:34px;font-weight:700;
  line-height:1.25;letter-spacing:2px;margin:0;
  background:linear-gradient(180deg,var(--brand-deep) 0%,var(--brand) 60%,var(--gold-deep) 100%);
  -webkit-background-clip:text;background-clip:text;color:transparent;
}
@media (min-width:768px){[data-theme="gold"] .welcome-hero-title{font-size:44px}}
[data-theme="gold"] .welcome-hero-desc{font-size:15px;color:var(--ink-3);max-width:480px;margin:20px auto 0;line-height:1.8}
[data-theme="gold"] .welcome-hero-cta{display:flex;gap:12px;justify-content:center;margin-top:34px;flex-wrap:wrap}
[data-theme="gold"] .welcome-features{padding:52px 24px;background:var(--card);border-top:1px solid var(--line);border-bottom:1px solid var(--line)}
[data-theme="gold"] .welcome-section-title{text-align:center;font-family:'LJ Serif','Songti SC','STSong','SimSun',serif;font-size:26px;font-weight:700;margin-bottom:8px;letter-spacing:4px;color:var(--ink)}
[data-theme="gold"] .welcome-section-title em{font-style:normal;background:linear-gradient(180deg,var(--brand),var(--gold-deep));-webkit-background-clip:text;background-clip:text;color:transparent}
[data-theme="gold"] .welcome-section-sub{text-align:center;font-size:12px;color:var(--ink-3);margin-bottom:36px;letter-spacing:3px}
[data-theme="gold"] .feature-grid{display:grid;grid-template-columns:1fr;gap:16px}
@media (min-width:600px){[data-theme="gold"] .feature-grid{grid-template-columns:repeat(2,1fr)}}
@media (min-width:900px){[data-theme="gold"] .feature-grid{grid-template-columns:repeat(3,1fr)}}
[data-theme="gold"] .feature-card{
  background:var(--card);border:1px solid var(--line);border-radius:var(--r-md);
  padding:24px;text-align:left;transition:all .25s;box-shadow:var(--shadow-card);
  position:relative;overflow:hidden;
}
[data-theme="gold"] .feature-card:hover{border-color:var(--gold);transform:translateY(-3px);box-shadow:var(--shadow-raised)}
[data-theme="gold"] .feature-icon{
  width:48px;height:48px;border-radius:14px;
  background:linear-gradient(135deg,var(--gold),var(--gold-soft));color:var(--on-gold);
  display:flex;align-items:center;justify-content:center;margin-bottom:16px;box-shadow:var(--shadow-gold);
  font-size:20px;transition:transform .3s cubic-bezier(.2,.7,.3,1);
}
[data-theme="gold"] .feature-card:hover .feature-icon{transform:translateY(-3px) rotate(-4deg) scale(1.06)}
[data-theme="gold"] .feature-icon svg{width:24px;height:24px}
[data-theme="gold"] .feature-title{font-family:'LJ Serif','Songti SC','STSong','SimSun',serif;font-size:16px;font-weight:600;margin-bottom:8px;color:var(--ink)}
[data-theme="gold"] .feature-desc{font-size:13px;color:var(--ink-3);line-height:1.6}
[data-theme="gold"] .welcome-flow{padding:52px 24px}
[data-theme="gold"] .flow-steps{display:flex;flex-direction:column;gap:0}
@media (min-width:768px){[data-theme="gold"] .flow-steps{flex-direction:row}}
[data-theme="gold"] .flow-step{
  flex:1;padding:28px 22px;border:1px solid var(--line);border-radius:var(--r-md);
  background:var(--card);margin-bottom:-1px;box-shadow:var(--shadow-card);position:relative;
}
@media (min-width:768px){[data-theme="gold"] .flow-step{margin-bottom:0;margin-left:-1px}[data-theme="gold"] .flow-step:first-child{margin-left:0}}
[data-theme="gold"] .flow-step::before{
  content:'';position:absolute;left:0;top:0;bottom:0;width:3px;
  background:linear-gradient(to bottom,var(--gold),var(--brand));
}
[data-theme="gold"] .flow-num{font-family:'LJ Serif','Songti SC','STSong','SimSun',serif;font-size:34px;font-weight:700;color:var(--gold-deep);line-height:1;margin-bottom:12px;transition:transform .3s}
[data-theme="gold"] .flow-step:hover .flow-num{transform:translateY(-3px) scale(1.1)}
[data-theme="gold"] .flow-title{font-family:'LJ Serif','Songti SC','STSong','SimSun',serif;font-size:17px;font-weight:600;margin-bottom:8px;color:var(--ink)}
[data-theme="gold"] .flow-desc{font-size:13px;color:var(--ink-3);line-height:1.7}
[data-theme="gold"] .welcome-faq{padding:52px 24px;background:var(--bg-alt)}
[data-theme="gold"] .faq-item{background:var(--card);border:1px solid var(--line);border-radius:var(--r-sm);margin-bottom:10px;overflow:hidden;box-shadow:var(--shadow-card)}
[data-theme="gold"] .faq-q{padding:16px 18px;font-size:14px;font-weight:500;color:var(--ink);display:flex;justify-content:space-between;align-items:center;cursor:pointer;transition:background .2s,color .2s}
[data-theme="gold"] .faq-item:hover .faq-q{background:rgba(201,168,106,.06)}
[data-theme="gold"] .faq-q svg{width:16px;height:16px;flex-shrink:0;color:var(--gold-deep);transition:transform .2s}
[data-theme="gold"] .faq-item.open .faq-q svg{transform:rotate(180deg)}
[data-theme="gold"] .faq-a{padding:0 18px 0;max-height:0;overflow:hidden;font-size:13px;color:var(--ink-3);line-height:1.7;transition:padding .2s,max-height .2s}
[data-theme="gold"] .faq-item.open .faq-a{padding:0 18px 16px;max-height:200px}
[data-theme="gold"] .welcome-footer{padding:32px 24px;text-align:center;background:var(--brand-deep);color:rgba(255,255,255,.5);font-size:12px;letter-spacing:2px}
[data-theme="gold"] .welcome-footer a{color:rgba(255,255,255,.5);text-decoration:none}

/* --- welcome 动效（照原型：hero 依次浮现 + 标题金色流光 + 光晕呼吸 + 滚动渐显 + CTA 波纹）--- */
[data-theme="gold"] .welcome-hero-sub,
[data-theme="gold"] .welcome-hero-title,
[data-theme="gold"] .welcome-hero-desc,
[data-theme="gold"] .welcome-hero-cta{
  opacity:0;transform:translateY(22px);
  animation:heroUp .8s cubic-bezier(.2,.7,.3,1) forwards;
}
[data-theme="gold"] .welcome-hero-sub{animation-delay:.05s}
[data-theme="gold"] .welcome-hero-title{animation-delay:.22s}
[data-theme="gold"] .welcome-hero-desc{animation-delay:.45s}
[data-theme="gold"] .welcome-hero-cta{animation-delay:.68s}
@keyframes heroUp{to{opacity:1;transform:translateY(0)}}
/* 大标题：金色流光往复（鎏金流动感） */
[data-theme="gold"] .welcome-hero-title{
  background-image:linear-gradient(110deg,var(--brand-deep) 32%,var(--gold) 50%,var(--brand-deep) 68%);
  background-size:220% 100%;
  animation:heroUp .8s cubic-bezier(.2,.7,.3,1) forwards,wlShimmer 6s ease-in-out infinite 1.6s;
}
@keyframes wlShimmer{0%,100%{background-position:0% 0}50%{background-position:100% 0}}
/* hero 中央光晕呼吸 */
[data-theme="gold"] .welcome-hero::after{
  content:'';position:absolute;top:44%;left:50%;transform:translate(-50%,-50%);
  width:340px;height:340px;border-radius:50%;pointer-events:none;
  background:radial-gradient(circle,rgba(201,168,106,.12),transparent 70%);
  animation:wlHalo 7s ease-in-out infinite;
}
@keyframes wlHalo{0%,100%{opacity:.45;transform:translate(-50%,-50%) scale(1)}50%{opacity:1;transform:translate(-50%,-50%) scale(1.1)}}
/* 滚动渐显（reveal + IntersectionObserver 加 .in） */
[data-theme="gold"] .reveal{opacity:0;transform:translateY(30px);transition:opacity .7s cubic-bezier(.2,.7,.3,1),transform .7s cubic-bezier(.2,.7,.3,1)}
[data-theme="gold"] .reveal.in{opacity:1;transform:translateY(0)}
[data-theme="gold"] .reveal-d1{transition-delay:.07s}
[data-theme="gold"] .reveal-d2{transition-delay:.14s}
[data-theme="gold"] .reveal-d3{transition-delay:.21s}
[data-theme="gold"] .reveal-d4{transition-delay:.28s}
[data-theme="gold"] .reveal-d5{transition-delay:.35s}
[data-theme="gold"] .reveal-d6{transition-delay:.42s}
[data-theme="gold"] .reveal.wst{opacity:0;transform:translateY(20px)}
[data-theme="gold"] .welcome-section-title,[data-theme="gold"] .welcome-section-sub{transition:opacity .6s,transform .6s}
[data-theme="gold"] .reveal.wst.in{opacity:1;transform:translateY(0)}
/* CTA 按钮光晕波纹 */
[data-theme="gold"] .welcome-hero-cta .btn{position:relative;overflow:hidden}
[data-theme="gold"] .welcome-hero-cta .btn::after{
  content:'';position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);
  width:0;height:0;border-radius:50%;background:rgba(255,255,255,.25);
  transition:width .45s ease,height .45s ease,opacity .45s ease;opacity:0;pointer-events:none;
}
[data-theme="gold"] .welcome-hero-cta .btn:hover::after{width:200px;height:200px;opacity:1}
[data-theme="gold"] .welcome-hero-cta .btn-primary,[data-theme="gold"] .welcome-hero-cta .btn-ghost{transition:transform .25s,box-shadow .25s}
[data-theme="gold"] .welcome-hero-cta .btn:hover{transform:translateY(-2px)}
/* 动效减弱偏好：全部动画直出终态 */
@media (prefers-reduced-motion:reduce){
  [data-theme="gold"] .welcome-hero-sub,[data-theme="gold"] .welcome-hero-title,
  [data-theme="gold"] .welcome-hero-desc,[data-theme="gold"] .welcome-hero-cta,
  [data-theme="gold"] .welcome-hero-title{
    animation:none;opacity:1;transform:none;background-position:0% 0;
  }
  [data-theme="gold"] .welcome-hero::after{animation:none;opacity:.45}
  [data-theme="gold"] .reveal,[data-theme="gold"] .reveal.wst{opacity:1;transform:none;transition:none}
  [data-theme="gold"] .welcome-logo-mark{animation:none}
  [data-theme="gold"] .vip-card{animation:none}
  [data-theme="gold"] .vip-card::before{animation:none;opacity:0}
}

/* ============================================================
   鎏金暖白 · 桌面大屏自适应（≥960px）
   与经典主题同口径：正文收敛到 860px 轴、内容居中，避免 banner / 卡片在 PC 宽屏通栏拉宽。
   顶栏保持通栏底纹、内部内容与正文同轴对齐（与经典 .subnav 同手法）。
   作用在 gold 全部页面（home/add/ledger/mine/remind 都用 .topbar + .page-body 骨架）。
   ============================================================ */
@media (min-width: 960px) {
  /* 顶栏：保留通栏底色，水平内边距 = 居中轴偏移 + 内容内距，使内部 logo/标题与正文左缘对齐 */
  [data-theme="gold"] .topbar{
    padding-left:max(28px, calc((100% - 860px)/2 + 28px));
    padding-right:max(28px, calc((100% - 860px)/2 + 28px));
  }
  /* 正文容器：收敛到 860px 轴、水平居中；上下内距沿用基础层（底 110px 留给悬浮 tabbar） */
  [data-theme="gold"] .page-body{
    max-width:860px; margin:0 auto;
    padding-left:28px; padding-right:28px;
  }
  /* 广告位：高比素材的 520px 窄档收窄在桌面轴上会造成「比卡片窄、居中悬浮」的错位
     （remind 页实测），gold 桌面一律铺满内容轴等比显示（与首页广告同口径）。
     窄屏窗口 <520px 时 max-width 本就不触发，无移动端回归。 */
  [data-theme="gold"] .page-body .ad-narrow{ max-width:100%; }
}
