/* =========================================================================
   幻墨电竞 · 粉金珠宝盒全站皮肤
   用户端 / 打手端 / 老板端 / 公开主页 / 登录 / 反馈 / 教程 / 小票
   只覆盖视觉与动效，不改动业务逻辑。
   ========================================================================= */

/* ---------------- 主题变量 ---------------- */
body.jewel-theme {
  --jw-page: #fff9f5;
  --jw-page-2: #fff3f5;
  --jw-surface: #fffdfb;
  --jw-surface-2: #fff6f8;
  --jw-ink: #4a3540;
  --jw-ink-2: #6c525e;
  --jw-soft: #8f7480;
  --jw-pink: #e8678c;
  --jw-pink-deep: #b23b63;
  --jw-pink-soft: #f7b3c6;
  --jw-gold: #c9a46a;
  --jw-gold-deep: #a57b3f;
  --jw-gold-light: #f4e4c6;
  --jw-line: rgba(201, 164, 106, .34);
  --jw-line-soft: rgba(201, 164, 106, .18);
  --jw-highlight: rgba(255, 255, 255, .92);
  --jw-card-grad: linear-gradient(145deg, #fffdfb 0%, #fff8f6 54%, #fff7f1 100%);
  --jw-card-grad-2: linear-gradient(150deg, #fffdfa 0%, #fff4f7 58%, #fdf6ed 100%);
  --jw-gold-grad: linear-gradient(135deg, #f6e7c8, #d3aa67 46%, #a97a3e);
  --jw-rose-grad: linear-gradient(135deg, #f5a3b9, #e8678c 54%, #c3476d);
  --jw-shadow: 0 14px 38px rgba(151, 80, 103, .10), 0 2px 6px rgba(151, 80, 103, .04);
  --jw-shadow-soft: 0 7px 20px rgba(151, 80, 103, .075);
  --jw-radius: 20px;
  --jw-radius-sm: 14px;
  --jw-chart-grid: rgba(201, 164, 106, .22);
  --jw-chart-text: #8f7480;
  --jw-chart-gold: #b88943;

  /* 兼容旧组件变量，让旧类一起换色 */
  --bg: var(--jw-page);
  --surface: var(--jw-surface);
  --card: #fffdfb;
  --card2: #fff5f7;
  --border: #ead7d2;
  --border-soft: #f2e4df;
  --text: var(--jw-ink);
  --muted: var(--jw-soft);
  --accent: var(--jw-pink);
  --accent2: var(--jw-pink-soft);
  --pink: var(--jw-pink);
  --pink-dark: var(--jw-pink-deep);
  --orange: #b98a4b;
  --green: #5e9e79;
  --red: #c44e5d;
  --radius: 20px;
  --shadow: var(--jw-shadow-soft);
  --pro-line: rgba(201, 164, 106, .28);
  --pro-line-soft: rgba(201, 164, 106, .14);
  --pro-shadow: var(--jw-shadow-soft);
  --pro-radius: 18px;
}

html[data-theme="dark"] body.jewel-theme {
  --jw-page: #1d141a;
  --jw-page-2: #21161d;
  --jw-surface: #281d24;
  --jw-surface-2: #33232c;
  --jw-ink: #f7e9e2;
  --jw-ink-2: #e4ccc8;
  --jw-soft: #c1a5b0;
  --jw-pink: #ed8da8;
  --jw-pink-deep: #f3aac0;
  --jw-pink-soft: #8e455e;
  --jw-gold: #e3c080;
  --jw-gold-deep: #cfa45e;
  --jw-gold-light: #5f4828;
  --jw-line: rgba(227, 192, 128, .26);
  --jw-line-soft: rgba(227, 192, 128, .13);
  --jw-highlight: rgba(255, 255, 255, .07);
  --jw-card-grad: linear-gradient(145deg, #2c2027 0%, #271c23 56%, #302128 100%);
  --jw-card-grad-2: linear-gradient(150deg, #2d2028 0%, #2a1e26 58%, #34232a 100%);
  --jw-gold-grad: linear-gradient(135deg, #f0d8a8, #d1a560 46%, #9d7037);
  --jw-rose-grad: linear-gradient(135deg, #d77b98, #b94a6d 54%, #8f2f4d);
  --jw-shadow: 0 18px 44px rgba(0, 0, 0, .36), 0 2px 6px rgba(0, 0, 0, .2);
  --jw-shadow-soft: 0 9px 24px rgba(0, 0, 0, .24);
  --jw-chart-grid: rgba(227, 192, 128, .17);
  --jw-chart-text: #c1a5b0;
  --jw-chart-gold: #e3c080;

  --bg: var(--jw-page);
  --surface: var(--jw-surface);
  --card: #2b1f26;
  --card2: #36242d;
  --border: #5a3d49;
  --border-soft: #49333d;
  --text: var(--jw-ink);
  --muted: var(--jw-soft);
  --accent: var(--jw-pink);
  --accent2: #8d4c62;
  --pink-dark: #f3aac0;
  --orange: #e0b878;
  --green: #78bd98;
  --red: #ec8a96;
}

/* 新图标是高清矢量渲染，关闭旧像素渲染 */
body.jewel-theme .nav-ico,
body.jewel-theme .me-ico,
body.jewel-theme .me-ico-lg,
body.jewel-theme .tri-item img,
body.jewel-theme .qi-ico-img,
body.jewel-theme .feed-ico-img,
body.jewel-theme .pb-ico,
body.jewel-theme .qe-img,
body.jewel-theme .guide-item img {
  image-rendering: auto;
}

/* ---------------- 页面底色 ---------------- */
html:not([data-theme="dark"]) body.jewel-theme {
  background-color: var(--jw-page) !important;
  background-image:
    radial-gradient(circle at 8% 2%, rgba(232, 103, 140, .10), transparent 34%),
    radial-gradient(circle at 94% 4%, rgba(201, 164, 106, .16), transparent 33%),
    radial-gradient(circle at 50% 104%, rgba(232, 103, 140, .07), transparent 48%),
    repeating-linear-gradient(118deg, rgba(201, 164, 106, .028) 0 1px, transparent 1px 17px),
    linear-gradient(125deg, #fffbf6 0%, #fff7f8 52%, #fdf8f0 100%) !important;
  background-size: auto, auto, auto, auto, auto !important;
  background-attachment: fixed !important;
  color: var(--jw-ink);
}
html[data-theme="dark"] body.jewel-theme {
  background-color: var(--jw-page) !important;
  background-image:
    radial-gradient(circle at 8% 2%, rgba(232, 103, 140, .16), transparent 36%),
    radial-gradient(circle at 94% 4%, rgba(201, 164, 106, .12), transparent 34%),
    radial-gradient(circle at 50% 104%, rgba(232, 103, 140, .08), transparent 48%),
    repeating-linear-gradient(118deg, rgba(227, 192, 128, .022) 0 1px, transparent 1px 17px),
    linear-gradient(125deg, #1f151b 0%, #24171f 52%, #21161b 100%) !important;
  background-size: auto, auto, auto, auto, auto !important;
  background-attachment: fixed !important;
}
body.jewel-theme ::selection { background: rgba(232, 103, 140, .22); color: var(--jw-pink-deep); }
body.jewel-theme ::-webkit-scrollbar-track { background: #f7ebdf; }
body.jewel-theme ::-webkit-scrollbar-thumb {
  background: linear-gradient(180deg, #e9a7b8, #d4aa67);
  border: 2px solid #f7ebdf;
}
html[data-theme="dark"] body.jewel-theme ::-webkit-scrollbar-track { background: #21161d; }
html[data-theme="dark"] body.jewel-theme ::-webkit-scrollbar-thumb { border-color: #21161d; }

body.jewel-theme .content { background: transparent; }
body.jewel-theme .site-footer { color: var(--jw-soft); }
body.jewel-theme .site-footer a { color: var(--jw-gold-deep); }

/* ---------------- 侧栏 / 顶栏 ---------------- */
body.jewel-theme .sidenav .brand {
  margin-bottom: 8px;
  padding: 10px 9px 14px;
  border-radius: 16px;
  background: linear-gradient(135deg, rgba(255, 255, 255, .62), rgba(255, 241, 246, .38));
  border: 1px solid var(--jw-line-soft);
  box-shadow: inset 0 1px 0 rgba(255, 255, 255, .7);
}
html[data-theme="dark"] body.jewel-theme .sidenav .brand {
  background: linear-gradient(135deg, rgba(255, 255, 255, .035), rgba(232, 103, 140, .05));
  box-shadow: inset 0 1px 0 rgba(255, 255, 255, .05);
}
body.jewel-theme .sidenav .brand-name { color: var(--jw-pink-deep); letter-spacing: .06em; }
body.jewel-theme .sidenav .brand-sub { color: var(--jw-soft); letter-spacing: .08em; }
body.jewel-theme .sidenav .nav-group-title {
  font-size: 10px;
  font-weight: 800;
  letter-spacing: .16em;
  padding: 12px 12px 5px;
  color: var(--jw-gold-deep);
}
body.jewel-theme .staff-app .topbar,
body.jewel-theme .topbar {
  background: linear-gradient(90deg, rgba(255, 252, 248, .94), rgba(255, 244, 247, .9)) !important;
  border-bottom: 1px solid var(--jw-line) !important;
  box-shadow: 0 6px 20px rgba(151, 80, 103, .05);
  backdrop-filter: blur(16px);
}
html[data-theme="dark"] body.jewel-theme .staff-app .topbar,
html[data-theme="dark"] body.jewel-theme .topbar {
  background: linear-gradient(90deg, rgba(40, 29, 36, .96), rgba(34, 23, 29, .94)) !important;
}
body.jewel-theme .topbar-kicker { color: var(--jw-gold-deep); letter-spacing: .16em; }
body.jewel-theme .topbar-title { color: var(--jw-ink); letter-spacing: -.02em; }
body.jewel-theme .topbar-actions .icon-btn,
body.jewel-theme .topbar-actions .avatar-btn {
  background: var(--jw-card-grad);
  border: 1px solid var(--jw-line);
  box-shadow: inset 0 1px 0 var(--jw-highlight), 0 3px 10px rgba(151, 80, 103, .06);
}
body.jewel-theme .topbar-actions .icon-btn:hover,
body.jewel-theme .topbar-actions .avatar-btn:hover {
  border-color: var(--jw-gold);
  color: var(--jw-pink-deep);
  transform: translateY(-1px);
}

/* ---------------- 通用标题 ---------------- */
body.jewel-theme .page-title {
  position: relative;
  display: flex;
  align-items: center;
  gap: 10px;
  flex-wrap: wrap;
  margin: 3px 0 17px;
  padding-left: 15px;
  font-size: 23px;
  font-weight: 900;
  letter-spacing: .035em;
  color: var(--jw-ink);
}
body.jewel-theme .page-title::before {
  content: "";
  position: absolute;
  left: 0;
  top: 50%;
  width: 4px;
  height: 22px;
  border-radius: 4px;
  transform: translateY(-50%);
  background: linear-gradient(180deg, #f2d7a2, #c9a46a 48%, #b23b63);
  box-shadow: 0 0 8px rgba(201, 164, 106, .3);
}
body.jewel-theme .page-title .sub {
  display: inline-flex;
  align-items: center;
  padding: 2px 9px;
  border: 1px solid var(--jw-line-soft);
  border-radius: 999px;
  background: rgba(255, 250, 242, .72);
  color: var(--jw-soft);
  font-size: 11px;
  font-weight: 700;
}
html[data-theme="dark"] body.jewel-theme .page-title .sub { background: rgba(255, 255, 255, .035); }

/* ---------------- 通用卡片 ---------------- */
body.jewel-theme .card,
body.jewel-theme .me-card,
body.jewel-theme .order-card,
body.jewel-theme .price-board,
body.jewel-theme .players-filters,
body.jewel-theme .wallet-top,
body.jewel-theme .kpi,
body.jewel-theme .table-wrap,
body.jewel-theme .main-rule,
body.jewel-theme .home-notice-board,
body.jewel-theme .growth-entry,
body.jewel-theme .jewel-ticket,
body.jewel-theme .jewel-menu-body,
body.jewel-theme .jewel-side,
body.jewel-theme .jewel-menu-hero,
body.jewel-theme .jewel-prod-card,
body.jewel-theme .stat-card,
body.jewel-theme .quick-item,
body.jewel-theme .feed-row,
body.jewel-theme .pro-empty {
  background: var(--jw-card-grad);
  border: 1px solid var(--jw-line);
  border-radius: var(--jw-radius);
  box-shadow: inset 0 1px 0 var(--jw-highlight), var(--jw-shadow-soft);
}
body.jewel-theme .card,
body.jewel-theme .me-card,
body.jewel-theme .order-card,
body.jewel-theme .players-filters,
body.jewel-theme .main-rule,
body.jewel-theme .home-notice-board,
body.jewel-theme .growth-entry {
  position: relative;
}
body.jewel-theme .card::after,
body.jewel-theme .me-card::after,
body.jewel-theme .order-card::after,
body.jewel-theme .players-filters::after,
body.jewel-theme .home-notice-board::after,
body.jewel-theme .growth-entry::after {
  content: "";
  position: absolute;
  inset: 5px;
  border: 1px solid var(--jw-line-soft);
  border-radius: calc(var(--jw-radius) - 5px);
  pointer-events: none;
}
body.jewel-theme .card:hover,
body.jewel-theme .me-card:hover,
body.jewel-theme .order-card:hover {
  border-color: rgba(201, 164, 106, .58);
}
body.jewel-theme .card h3,
body.jewel-theme .me-card-head {
  color: var(--jw-ink);
  letter-spacing: .04em;
}
body.jewel-theme .card h3::before {
  content: "✦";
  color: var(--jw-gold);
  font-size: 12px;
  font-weight: 900;
  text-shadow: 0 0 8px rgba(201, 164, 106, .35);
}
body.jewel-theme .me-card-head { font-size: 14px; font-weight: 900; }
body.jewel-theme .me-more { color: var(--jw-gold-deep); font-weight: 800; }
body.jewel-theme .small.muted,
body.jewel-theme .muted { color: var(--jw-soft); }
body.jewel-theme .bold { color: var(--jw-ink); }

/* ---------------- 按钮 ---------------- */
body.jewel-theme .btn {
  min-height: 36px;
  padding: 8px 17px;
  border: 1px solid rgba(201, 164, 106, .55);
  border-radius: 13px;
  background: var(--jw-rose-grad);
  color: #fffaf7;
  font-size: 13px;
  font-weight: 800;
  letter-spacing: .03em;
  box-shadow:
    inset 0 1px 0 rgba(255, 255, 255, .5),
    inset 0 -1px 0 rgba(120, 30, 60, .18),
    0 4px 12px rgba(178, 59, 99, .16);
  transition: transform .18s ease, box-shadow .18s ease, filter .18s ease;
}
body.jewel-theme .btn:hover {
  filter: brightness(1.04) saturate(1.03);
  transform: translateY(-1px);
  box-shadow:
    inset 0 1px 0 rgba(255, 255, 255, .55),
    0 8px 18px rgba(178, 59, 99, .2);
}
body.jewel-theme .btn:active { transform: translateY(1px) scale(.995); box-shadow: inset 0 1px 0 rgba(255, 255, 255, .35), 0 2px 5px rgba(178, 59, 99, .16); }
body.jewel-theme .btn.ghost {
  background: linear-gradient(150deg, rgba(255, 253, 248, .96), rgba(255, 246, 248, .94));
  color: var(--jw-pink-deep);
  border-color: var(--jw-line);
  box-shadow: inset 0 1px 0 rgba(255, 255, 255, .8), 0 3px 10px rgba(151, 80, 103, .05);
}
body.jewel-theme .btn.ghost:hover { background: #fff4f6; border-color: rgba(201, 164, 106, .62); color: var(--jw-pink-deep); }
body.jewel-theme .btn.gold {
  background: linear-gradient(135deg, #f7e7c7, #dcb478 48%, #b98745);
  color: #5a3a1e;
  border-color: rgba(169, 122, 62, .55);
  text-shadow: 0 1px 0 rgba(255, 255, 255, .4);
}
body.jewel-theme .btn.cyan {
  background: linear-gradient(135deg, #f4e6ca, #d1ad72);
  color: #5c3f24;
  border-color: rgba(169, 122, 62, .5);
}
body.jewel-theme .btn.danger { background: linear-gradient(135deg, #dd7b88, #b94352); }
body.jewel-theme .btn.small {
  min-height: 30px;
  padding: 4px 11px;
  border-radius: 10px;
  font-size: 11.5px;
}
body.jewel-theme .btn.block { width: 100%; }
body.jewel-theme .btn:disabled { filter: grayscale(.2); opacity: .48; }
body.jewel-theme #wxLoginBtn,
body.jewel-theme #lgWxBtn {
  background: linear-gradient(135deg, #5aa981, #2f7a58) !important;
  border-color: rgba(201, 164, 106, .5) !important;
  color: #fffaf7 !important;
  box-shadow: inset 0 1px 0 rgba(255, 255, 255, .3), 0 4px 12px rgba(47, 122, 88, .16);
}
body.jewel-theme .pay-wx-btn {
  background: linear-gradient(135deg, #5aa981, #2f7a58) !important;
  border-color: rgba(201, 164, 106, .5) !important;
  color: #fffaf7 !important;
  box-shadow: inset 0 1px 0 rgba(255, 255, 255, .3), 0 4px 12px rgba(47, 122, 88, .16);
}
body.jewel-theme .pay-option.primary {
  border-color: rgba(90, 169, 129, .55);
  background: rgba(90, 169, 129, .08);
}
body.jewel-theme .po-check { color: #4d9b73; }
body.jewel-theme .pay-hero-ico.wx {
  background: rgba(90, 169, 129, .10);
  border-color: rgba(90, 169, 129, .32);
}
html[data-theme="dark"] body.jewel-theme .btn.ghost {
  background: linear-gradient(150deg, rgba(48, 35, 43, .96), rgba(42, 30, 37, .96));
  color: var(--jw-pink-deep);
  box-shadow: inset 0 1px 0 rgba(255, 255, 255, .06), 0 3px 10px rgba(0, 0, 0, .16);
}
html[data-theme="dark"] body.jewel-theme .btn.ghost:hover { background: #3a2732; }

/* ---------------- 控件 ---------------- */
body.jewel-theme .input,
body.jewel-theme .select,
body.jewel-theme .textarea {
  min-height: 38px;
  border: 1px solid var(--jw-line);
  border-radius: 12px;
  background: rgba(255, 253, 248, .9);
  color: var(--jw-ink);
  box-shadow: inset 0 1px 2px rgba(120, 69, 84, .045);
  font-weight: 600;
}
body.jewel-theme .input::placeholder,
body.jewel-theme .textarea::placeholder { color: #bca6ad; }
body.jewel-theme .input:focus,
body.jewel-theme .select:focus,
body.jewel-theme .textarea:focus {
  border-color: rgba(201, 164, 106, .75);
  box-shadow: 0 0 0 3px rgba(232, 103, 140, .09), inset 0 1px 2px rgba(120, 69, 84, .035);
}
body.jewel-theme .field label { color: var(--jw-ink-2); }
html[data-theme="dark"] body.jewel-theme .input,
html[data-theme="dark"] body.jewel-theme .select,
html[data-theme="dark"] body.jewel-theme .textarea {
  background: rgba(39, 28, 35, .9);
  border-color: var(--jw-line-soft);
}

/* ---------------- 标签 / 胶囊 / 筛选 ---------------- */
body.jewel-theme .chip,
body.jewel-theme .cats .chip,
body.jewel-theme .tabs .tab,
body.jewel-theme .rank-board-tab,
body.jewel-theme .rank-period {
  border-width: 1px;
  border-color: var(--jw-line);
  background: linear-gradient(145deg, rgba(255, 253, 248, .94), rgba(255, 245, 247, .9));
  color: var(--jw-ink-2);
  box-shadow: inset 0 1px 0 rgba(255, 255, 255, .72);
}
body.jewel-theme .chip.active,
body.jewel-theme .cats .chip.active,
body.jewel-theme .tabs .tab.active,
body.jewel-theme .rank-board-tab.active,
body.jewel-theme .rank-period.active {
  background: var(--jw-rose-grad);
  border-color: rgba(201, 164, 106, .55);
  color: #fffaf7;
  box-shadow: inset 0 1px 0 rgba(255, 255, 255, .34), 0 5px 14px rgba(178, 59, 99, .16);
}
body.jewel-theme .tag {
  border: 1px solid var(--jw-line);
  background: rgba(255, 249, 238, .8);
  color: var(--jw-gold-deep);
  border-radius: 8px;
}
body.jewel-theme .tag.hot {
  background: rgba(255, 239, 243, .86);
  border-color: rgba(232, 103, 140, .28);
  color: var(--jw-pink-deep);
}
body.jewel-theme .badge {
  border-width: 1px;
  border-color: var(--jw-line-soft);
}
html[data-theme="dark"] body.jewel-theme .chip,
html[data-theme="dark"] body.jewel-theme .cats .chip,
html[data-theme="dark"] body.jewel-theme .tabs .tab,
html[data-theme="dark"] body.jewel-theme .rank-board-tab,
html[data-theme="dark"] body.jewel-theme .rank-period {
  background: linear-gradient(145deg, rgba(46, 33, 41, .96), rgba(38, 27, 34, .96));
  box-shadow: inset 0 1px 0 rgba(255, 255, 255, .05);
}

/* ---------------- 金额 / 状态 ---------------- */
body.jewel-theme .money { color: var(--jw-pink-deep); }
body.jewel-theme .money.pos { color: #528f6c; }
body.jewel-theme .money.neg { color: #bd4b59; }
body.jewel-theme .wallet-balance {
  color: var(--jw-pink-deep);
  background: linear-gradient(120deg, #7b3a53, #c3476d 48%, #b88943);
  -webkit-background-clip: text;
  background-clip: text;
  -webkit-text-fill-color: transparent;
  filter: drop-shadow(0 1px 0 rgba(255, 255, 255, .35));
}
html[data-theme="dark"] body.jewel-theme .money { color: #f1a8bd; }
html[data-theme="dark"] body.jewel-theme .money.pos { color: #82c7a1; }
html[data-theme="dark"] body.jewel-theme .money.neg { color: #ef929d; }
html[data-theme="dark"] body.jewel-theme .wallet-balance {
  background: linear-gradient(120deg, #ffd9e2, #f2b2c4 48%, #e8c47f);
  -webkit-background-clip: text;
  background-clip: text;
  -webkit-text-fill-color: transparent;
}

/* ---------------- 表格 ---------------- */
body.jewel-theme .table-wrap {
  overflow: auto;
  padding: 0;
  background: var(--jw-card-grad);
  border: 1px solid var(--jw-line);
  border-radius: 18px;
}
body.jewel-theme .tbl th {
  background: linear-gradient(180deg, rgba(255, 246, 235, .78), rgba(255, 239, 243, .55));
  color: var(--jw-gold-deep);
  font-size: 11px;
  font-weight: 900;
  letter-spacing: .035em;
  border-bottom: 1px solid var(--jw-line-soft);
}
body.jewel-theme .tbl td {
  border-bottom: 1px solid rgba(201, 164, 106, .10);
  color: var(--jw-ink-2);
}
body.jewel-theme .tbl tbody tr:hover td { background: rgba(255, 240, 244, .55); }
body.jewel-theme .tbl tbody tr:nth-child(even) td { background: rgba(255, 251, 245, .35); }
html[data-theme="dark"] body.jewel-theme .tbl th { background: rgba(255, 255, 255, .035); }
html[data-theme="dark"] body.jewel-theme .tbl tbody tr:hover td { background: rgba(232, 103, 140, .08); }
html[data-theme="dark"] body.jewel-theme .tbl tbody tr:nth-child(even) td { background: rgba(255, 255, 255, .018); }

/* ---------------- 弹窗 / 轻提示 / 空态 ---------------- */
body.jewel-theme .modal-mask {
  background: rgba(45, 26, 36, .42);
  backdrop-filter: blur(6px) saturate(1.05);
}
body.jewel-theme .modal {
  position: relative;
  background: var(--jw-card-grad-2);
  border: 1px solid rgba(201, 164, 106, .55);
  border-radius: 24px;
  box-shadow:
    inset 0 1px 0 rgba(255, 255, 255, .8),
    0 30px 70px rgba(73, 30, 46, .24);
  animation: jwModalIn .34s cubic-bezier(.22, 1, .36, 1);
}
body.jewel-theme .modal::before {
  content: "";
  position: absolute;
  left: 22px;
  right: 22px;
  top: 0;
  height: 2px;
  border-radius: 0 0 4px 4px;
  background: linear-gradient(90deg, transparent, #d7b273 24%, #f4dfb1 50%, #d7b273 76%, transparent);
  opacity: .85;
}
body.jewel-theme .modal::after {
  content: "";
  position: absolute;
  inset: 7px;
  border: 1px solid var(--jw-line-soft);
  border-radius: 18px;
  pointer-events: none;
}
body.jewel-theme .modal h3 {
  display: flex;
  align-items: center;
  gap: 7px;
  color: var(--jw-ink);
  letter-spacing: .04em;
}
body.jewel-theme .modal h3::before { content: "✦"; color: var(--jw-gold); font-size: 12px; }
@keyframes jwModalIn {
  from { opacity: 0; transform: translateY(16px) scale(.97); filter: blur(5px); }
  to { opacity: 1; transform: none; filter: blur(0); }
}
body.jewel-theme .toast {
  background: linear-gradient(145deg, rgba(255, 253, 248, .98), rgba(255, 244, 247, .98));
  border: 1px solid rgba(201, 164, 106, .55);
  color: var(--jw-ink);
  border-radius: 14px;
  box-shadow: 0 16px 36px rgba(73, 30, 46, .16), inset 0 1px 0 rgba(255, 255, 255, .8);
  backdrop-filter: blur(14px);
}
body.jewel-theme .toast.err { border-color: rgba(196, 78, 93, .55); color: #a93d4a; }
body.jewel-theme .toast.ok { border-color: rgba(90, 152, 113, .5); color: #467d5c; }
body.jewel-theme .empty { color: var(--jw-soft); }
body.jewel-theme .empty .ico {
  display: inline-flex;
  width: 58px;
  height: 58px;
  align-items: center;
  justify-content: center;
  border-radius: 50%;
  background: linear-gradient(145deg, #fff9ef, #ffeaf0);
  border: 1px solid var(--jw-line);
  box-shadow: inset 0 1px 0 rgba(255, 255, 255, .8), 0 5px 14px rgba(151, 80, 103, .08);
  font-size: 26px;
}
html[data-theme="dark"] body.jewel-theme .empty .ico { background: linear-gradient(145deg, #33242c, #2a1d24); }

/* ---------------- 主题切换按钮 ---------------- */
body.jewel-theme #themeToggle {
  right: 16px;
  bottom: 18px;
  width: 44px;
  height: 44px;
  border-radius: 50%;
  border: 1px solid rgba(201, 164, 106, .55);
  background: linear-gradient(145deg, rgba(255, 253, 248, .96), rgba(255, 241, 245, .94));
  color: var(--jw-pink-deep);
  box-shadow: inset 0 1px 0 rgba(255, 255, 255, .82), 0 7px 18px rgba(151, 80, 103, .14);
  backdrop-filter: blur(14px);
  font-size: 0;
  transition: transform .3s ease, box-shadow .3s ease, border-color .3s ease;
}
body.jewel-theme #themeToggle:hover { transform: rotate(12deg) translateY(-2px); border-color: var(--jw-gold); }
body.jewel-theme #themeToggle svg { width: 20px; height: 20px; }
html[data-theme="dark"] body.jewel-theme #themeToggle {
  background: linear-gradient(145deg, rgba(45, 32, 40, .94), rgba(35, 24, 30, .94));
  color: #f0c98a;
}
body.jewel-theme .theme-toggle-public {
  border: 1px solid var(--jw-line) !important;
  background: rgba(255, 253, 248, .8) !important;
  color: var(--jw-pink-deep) !important;
  box-shadow: inset 0 1px 0 rgba(255, 255, 255, .7);
}
body.jewel-theme .theme-toggle-public svg { width: 18px; height: 18px; }

/* ---------------- 加载骨架 ---------------- */
body.jewel-theme .sk-card,
body.jewel-theme .sk-line,
body.jewel-theme .skeleton {
  background: linear-gradient(100deg, rgba(255, 243, 238, .7) 20%, rgba(255, 255, 255, .95) 42%, rgba(255, 243, 238, .7) 64%);
  background-size: 220% 100%;
  animation: jwShimmer 1.4s linear infinite;
}
@keyframes jwShimmer { from { background-position: 120% 0; } to { background-position: -120% 0; } }

/* =========================================================================
   用户端 · 首页
   ========================================================================= */
body.jewel-theme .jewel-promise-strip {
  background:
    linear-gradient(90deg, rgba(255, 250, 243, .9), rgba(255, 244, 247, .82), rgba(255, 250, 243, .9));
  border: 1px solid var(--jw-line-soft);
  box-shadow: inset 0 1px 0 rgba(255, 255, 255, .78);
}
body.jewel-theme .jewel-promise-strip span {
  position: relative;
  color: var(--jw-gold-deep);
  letter-spacing: .11em;
}
body.jewel-theme .jewel-promise-strip span + span::before {
  content: "✦";
  margin-right: 8px;
  color: rgba(201, 164, 106, .55);
  font-size: 8px;
}
body.jewel-theme .jewel-ticket { position: relative; overflow: hidden; }
body.jewel-theme .jewel-ticket::before {
  content: "";
  position: absolute;
  right: -30px;
  top: -70px;
  width: 180px;
  height: 180px;
  border-radius: 50%;
  background: radial-gradient(circle, rgba(232, 103, 140, .12), transparent 68%);
  pointer-events: none;
}
body.jewel-theme .jewel-cta {
  border: 1px solid rgba(201, 164, 106, .58);
  background: var(--jw-rose-grad);
  box-shadow: inset 0 1px 0 rgba(255, 255, 255, .48), 0 7px 18px rgba(178, 59, 99, .2);
}
body.jewel-theme .jewel-cta.ghost {
  background: linear-gradient(145deg, rgba(255, 253, 248, .92), rgba(255, 243, 246, .9));
  color: var(--jw-pink-deep);
}
body.jewel-theme .jewel-tutorial {
  border-color: var(--jw-line) !important;
  background: rgba(255, 249, 240, .7) !important;
  color: var(--jw-gold-deep) !important;
}
body.jewel-theme .tri-item {
  border: 1px solid var(--jw-line);
  background: var(--jw-card-grad);
  box-shadow: inset 0 1px 0 var(--jw-highlight), var(--jw-shadow-soft);
}
body.jewel-theme .tri-item:hover { border-color: rgba(201, 164, 106, .62); transform: translateY(-3px); }
body.jewel-theme .tri-item .t-label { color: var(--jw-ink); }
body.jewel-theme .tri-item .t-sub {
  display: block;
  margin-top: -2px;
  color: var(--jw-soft);
  font-size: 9.5px;
  font-weight: 600;
  letter-spacing: .02em;
}
body.jewel-theme .jewel-home .tri-item img {
  width: 50px;
  height: 50px;
  padding: 8px;
  border-radius: 16px;
  border: 1px solid var(--jw-line);
  background: linear-gradient(145deg, #fffaf2, #ffeaf0);
  box-shadow: inset 0 1px 0 rgba(255, 255, 255, .8), 0 4px 12px rgba(151, 80, 103, .08);
}
html[data-theme="dark"] body.jewel-theme .jewel-home .tri-item img {
  background: linear-gradient(145deg, #3a2831, #2c1e25);
}

/* 首页四宫格：新插画 + 文案层，不再用 low-res 图标硬放大 */
body.jewel-theme .jewel-home .fun-grid {
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 10px;
  margin: 12px 0 2px;
}
body.jewel-theme .jewel-home .fun-card {
  position: relative;
  display: flex;
  flex-direction: column;
  overflow: hidden;
  border: 1px solid var(--jw-line);
  border-radius: 18px;
  background: var(--jw-card-grad);
  box-shadow: inset 0 1px 0 var(--jw-highlight), var(--jw-shadow-soft);
  transition: transform .28s cubic-bezier(.22, 1, .36, 1), box-shadow .28s ease, border-color .28s ease;
}
body.jewel-theme .jewel-home .fun-card .fc-art {
  position: relative;
  aspect-ratio: 600 / 420;
  padding: 0;
  background: transparent;
  overflow: hidden;
}
body.jewel-theme .jewel-home .fun-card .fc-art::after { display: none; }
body.jewel-theme .jewel-home .fun-card img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  display: block;
  transform: none;
  border-radius: 17px 17px 0 0;
  transition: transform .55s cubic-bezier(.22, 1, .36, 1), filter .3s ease;
}
body.jewel-theme .jewel-home .fun-card .fc-copy {
  padding: 8px 10px 9px;
  text-align: left;
  border-top: 1px solid var(--jw-line-soft);
  background: linear-gradient(180deg, rgba(255, 252, 247, .92), rgba(255, 244, 247, .8));
}
body.jewel-theme .jewel-home .fun-card .fc-copy b {
  display: block;
  color: var(--jw-ink);
  font-size: 12.5px;
  font-weight: 900;
  letter-spacing: .04em;
  line-height: 1.3;
}
body.jewel-theme .jewel-home .fun-card .fc-copy small {
  display: block;
  margin-top: 2px;
  color: var(--jw-soft);
  font-size: 9px;
  font-weight: 600;
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
}
body.jewel-theme .jewel-home .fun-card .fc-arrow {
  position: absolute;
  top: 9px;
  right: 9px;
  width: 20px;
  height: 20px;
  display: flex;
  align-items: center;
  justify-content: center;
  border-radius: 50%;
  border: 1px solid rgba(201, 164, 106, .4);
  background: rgba(255, 253, 248, .78);
  color: var(--jw-gold-deep);
  font-size: 12px;
  font-weight: 900;
  backdrop-filter: blur(8px);
  opacity: 0;
  transform: translateY(3px);
  transition: opacity .25s, transform .25s;
}
body.jewel-theme .jewel-home .fun-card:hover {
  transform: translateY(-4px);
  border-color: rgba(201, 164, 106, .62);
  box-shadow: inset 0 1px 0 var(--jw-highlight), 0 16px 30px rgba(151, 80, 103, .13);
}
body.jewel-theme .jewel-home .fun-card:hover img { transform: scale(1.025); }
body.jewel-theme .jewel-home .fun-card:hover .fc-arrow { opacity: 1; transform: none; }
body.jewel-theme .jewel-home .fun-card.active {
  border-color: var(--jw-gold);
  outline: 0;
  box-shadow: inset 0 0 0 1px rgba(201, 164, 106, .28), 0 12px 26px rgba(178, 59, 99, .15);
}
body.jewel-theme .jewel-home .fun-card.active .fc-copy { background: linear-gradient(180deg, rgba(255, 246, 236, .96), rgba(255, 235, 241, .9)); }
html[data-theme="dark"] body.jewel-theme .jewel-home .fun-card .fc-copy { background: linear-gradient(180deg, rgba(44, 31, 39, .95), rgba(37, 25, 32, .92)); }
html[data-theme="dark"] body.jewel-theme .jewel-home .fun-card .fc-art { background: radial-gradient(110px 80px at 50% 36%, rgba(255, 255, 255, .05), transparent 70%), var(--jw-card-grad-2); }
html[data-theme="dark"] body.jewel-theme .jewel-home .fun-card .fc-arrow { background: rgba(40, 28, 35, .82); }

@media (max-width: 720px) {
  body.jewel-theme .jewel-home .fun-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  body.jewel-theme .jewel-home .fun-card .fc-copy b { font-size: 12px; }
}

body.jewel-theme .jewel-section-head b { color: var(--jw-ink); }
body.jewel-theme .jewel-section-head span { color: var(--jw-gold-deep); }
body.jewel-theme .jewel-section-head small { color: var(--jw-soft); }
body.jewel-theme .main-rule .mr-title { color: var(--jw-pink-deep); }
body.jewel-theme .main-rule .mr-text { color: var(--jw-ink-2); }
body.jewel-theme .home-notice-head { color: var(--jw-gold-deep); }
body.jewel-theme .home-notice-head a { color: var(--jw-pink-deep); }
body.jewel-theme .growth-entry { border-color: var(--jw-line); }
body.jewel-theme .growth-entry .ge-title { color: var(--jw-ink); }

/* 首页 / 选单商品卡微调 */
body.jewel-theme .jewel-prod-card { transition: transform .3s cubic-bezier(.22, 1, .36, 1), box-shadow .3s ease, border-color .3s ease; }
body.jewel-theme .jewel-prod-card:hover { transform: translateY(-4px); border-color: rgba(201, 164, 106, .62); box-shadow: inset 0 1px 0 var(--jw-highlight), 0 18px 34px rgba(151, 80, 103, .13); }
body.jewel-theme .jewel-prod-card .pc-title { color: var(--jw-ink); }
body.jewel-theme .jewel-prod-card .pc-price { color: var(--jw-pink-deep); }
body.jewel-theme .jewel-prod-card .pc-add {
  border: 1px solid rgba(201, 164, 106, .55);
  background: var(--jw-rose-grad);
  box-shadow: inset 0 1px 0 rgba(255, 255, 255, .42), 0 4px 12px rgba(178, 59, 99, .18);
}

/* =========================================================================
   用户端 · 选单 / 选打手 / 订单 / 我的 / 钱包
   ========================================================================= */
body.jewel-theme .jewel-menu-hero,
body.jewel-theme .jewel-menu-body,
body.jewel-theme .jewel-side { border-color: var(--jw-line); }
body.jewel-theme .jewel-side .jewel-side-item.active {
  background: var(--jw-rose-grad);
  color: #fff9f4;
  border-color: rgba(201, 164, 106, .55);
  box-shadow: inset 0 1px 0 rgba(255, 255, 255, .35), 0 5px 14px rgba(178, 59, 99, .15);
}
body.jewel-theme .jewel-menu-note { color: var(--jw-gold-deep); }

body.jewel-theme .players-head h2 {
  color: var(--jw-ink);
  font-size: 27px;
  letter-spacing: .02em;
}
body.jewel-theme .players-head p b { color: var(--jw-pink-deep); }
body.jewel-theme .players-rank-link {
  border: 1px solid var(--jw-line);
  border-radius: 999px;
  padding: 6px 12px;
  background: linear-gradient(145deg, #fff9ec, #fff0f4);
  color: var(--jw-gold-deep) !important;
  font-weight: 900;
  box-shadow: inset 0 1px 0 rgba(255, 255, 255, .8), 0 3px 10px rgba(151, 80, 103, .06);
}
body.jewel-theme .players-search .input { background: rgba(255, 253, 248, .94); }
body.jewel-theme .players-search .btn { min-width: 78px; }
body.jewel-theme .players-filters::after { display: none; }
body.jewel-theme .players-filters { padding: 12px 14px; }
body.jewel-theme .players-filter-row select { background-color: rgba(255, 253, 248, .9); }

body.jewel-theme .price-board { overflow: hidden; }
body.jewel-theme .price-board .pb-head {
  background: linear-gradient(90deg, rgba(255, 241, 236, .94), rgba(255, 239, 243, .9));
  color: var(--jw-pink-deep);
  border-bottom: 1px solid var(--jw-line-soft);
}
body.jewel-theme .price-board .pb-head .small { color: var(--jw-gold-deep); }
body.jewel-theme .price-board td .price { color: var(--jw-gold-deep); }
body.jewel-theme .price-board th { color: var(--jw-soft); border-bottom-color: var(--jw-line-soft); }
body.jewel-theme .price-board td { border-bottom-color: var(--jw-line-soft); }
body.jewel-theme .pb-group-title .unit-tag {
  background: rgba(255, 238, 243, .9);
  color: var(--jw-pink-deep);
  border: 1px solid rgba(232, 103, 140, .18);
}

/* 打手卡 */
body.jewel-theme .atelier-player-card {
  position: relative;
  border: 1px solid var(--jw-line);
  border-radius: 22px;
  background: var(--jw-card-grad);
  box-shadow: inset 0 1px 0 var(--jw-highlight), var(--jw-shadow-soft);
  overflow: hidden;
  transition: transform .3s cubic-bezier(.22, 1, .36, 1), box-shadow .3s ease, border-color .3s ease;
}
body.jewel-theme .atelier-player-card::after {
  content: "";
  position: absolute;
  inset: 5px;
  border: 1px solid var(--jw-line-soft);
  border-radius: 17px;
  pointer-events: none;
  z-index: 3;
}
body.jewel-theme .atelier-player-card:hover {
  transform: translateY(-4px);
  border-color: rgba(201, 164, 106, .62);
  box-shadow: inset 0 1px 0 var(--jw-highlight), 0 20px 40px rgba(151, 80, 103, .14);
}
body.jewel-theme .atelier-cover { border-bottom: 1px solid var(--jw-line-soft); }
body.jewel-theme .atelier-cover.preset-rose {
  background:
    radial-gradient(360px 180px at 18% 12%, rgba(255, 241, 216, .38), transparent 64%),
    linear-gradient(132deg, #7d3a52 0%, #c56f88 48%, #e2b27a 118%);
}
body.jewel-theme .atelier-avatar {
  border: 3px solid #fffaf3;
  box-shadow: 0 0 0 1px rgba(201, 164, 106, .5), 0 8px 18px rgba(73, 30, 46, .14);
}
body.jewel-theme .atelier-name { color: var(--jw-ink); }
body.jewel-theme .atelier-meta { color: var(--jw-soft); }
body.jewel-theme .atelier-price b { color: var(--jw-gold-deep); font-size: 23px; }
body.jewel-theme .atelier-price small { color: var(--jw-soft); }
body.jewel-theme .atelier-badge {
  border: 1px solid var(--jw-line-soft);
  background: rgba(255, 249, 239, .75);
  color: var(--jw-gold-deep);
}
body.jewel-theme .atelier-badge.rose { background: rgba(255, 237, 242, .85); color: var(--jw-pink-deep); border-color: rgba(232, 103, 140, .2); }
body.jewel-theme .atelier-chip { border: 1px solid rgba(255, 255, 255, .25); background: rgba(50, 26, 38, .32); backdrop-filter: blur(8px); }
body.jewel-theme .atelier-stats {
  border: 1px solid var(--jw-line-soft);
  background: linear-gradient(145deg, rgba(255, 251, 245, .86), rgba(255, 245, 247, .78));
}
body.jewel-theme .atelier-stats b { color: var(--jw-ink); }
body.jewel-theme .atelier-stats span { color: var(--jw-soft); }
body.jewel-theme .atelier-voice {
  border: 1px solid var(--jw-line-soft);
  background: linear-gradient(120deg, rgba(255, 248, 238, .9), rgba(255, 240, 245, .82));
}
body.jewel-theme .atelier-voice .av-text { color: var(--jw-gold-deep); }
body.jewel-theme .atelier-actions .atelier-ghost {
  border: 1px solid var(--jw-line);
  background: linear-gradient(145deg, rgba(255, 253, 248, .95), rgba(255, 244, 247, .92));
  color: var(--jw-pink-deep);
  box-shadow: inset 0 1px 0 rgba(255, 255, 255, .8);
}
body.jewel-theme .atelier-actions .atelier-gift {
  border: 1px solid rgba(201, 164, 106, .48);
  background: linear-gradient(145deg, #fff9ed, #ffe9e5);
  color: var(--jw-gold-deep);
}
body.jewel-theme .atelier-actions .atelier-main {
  background: var(--jw-rose-grad);
  border: 1px solid rgba(201, 164, 106, .55);
  box-shadow: inset 0 1px 0 rgba(255, 255, 255, .38), 0 5px 14px rgba(178, 59, 99, .15);
  color: #fffaf7;
}
html[data-theme="dark"] body.jewel-theme .atelier-stats,
html[data-theme="dark"] body.jewel-theme .atelier-voice { background: rgba(255, 255, 255, .035); }

/* 订单 */
body.jewel-theme .order-card {
  overflow: hidden;
  padding: 15px 16px 15px 19px;
}
body.jewel-theme .order-card::before {
  content: "";
  position: absolute;
  left: 0;
  top: 13px;
  bottom: 13px;
  width: 3px;
  border-radius: 0 4px 4px 0;
  background: linear-gradient(180deg, #f2d7a2, #d4a762 48%, #e8678c);
  opacity: .8;
}
body.jewel-theme .order-card::after { left: 7px; }
body.jewel-theme .oc-title { color: var(--jw-ink); font-size: 14px; }
body.jewel-theme .oc-body { color: var(--jw-soft); line-height: 1.75; }
body.jewel-theme .order-card .badge { box-shadow: none; }
body.jewel-theme .match-pulse {
  display: inline-flex;
  align-items: center;
  gap: 7px;
  padding: 6px 10px;
  border-radius: 9px;
  background: rgba(255, 242, 245, .8);
  border: 1px solid rgba(232, 103, 140, .16);
  color: var(--jw-pink-deep);
  font-size: 11.5px;
  font-weight: 700;
}
body.jewel-theme .count-chip {
  display: inline-flex;
  padding: 6px 10px;
  border-radius: 9px;
  background: rgba(255, 247, 232, .85);
  border: 1px solid var(--jw-line-soft);
  color: var(--jw-gold-deep);
  font-size: 11.5px;
  font-weight: 800;
}

/* 我的 */
body.jewel-theme .me-header {
  position: relative;
  margin: 0 0 12px;
  padding: 18px 18px;
  border: 1px solid var(--jw-line);
  border-radius: 22px;
  background:
    radial-gradient(220px 140px at 90% 0%, rgba(201, 164, 106, .16), transparent 68%),
    var(--jw-card-grad-2);
  box-shadow: inset 0 1px 0 var(--jw-highlight), var(--jw-shadow-soft);
  overflow: hidden;
}
body.jewel-theme .me-header::after {
  content: "";
  position: absolute;
  right: -42px;
  bottom: -70px;
  width: 170px;
  height: 170px;
  border-radius: 50%;
  border: 1px solid rgba(201, 164, 106, .18);
  box-shadow: 0 0 0 26px rgba(201, 164, 106, .035), 0 0 0 52px rgba(232, 103, 140, .022);
  pointer-events: none;
}
body.jewel-theme .me-avatar {
  width: 66px;
  height: 66px;
  border: 3px solid #fffaf4;
  background: linear-gradient(145deg, #fff6e9, #ffe6ed);
  box-shadow: 0 0 0 1px rgba(201, 164, 106, .48), 0 8px 18px rgba(151, 80, 103, .12);
  font-size: 31px;
}
body.jewel-theme .me-nick { color: var(--jw-ink); font-weight: 900; }
body.jewel-theme .me-id { color: var(--jw-gold-deep); }
body.jewel-theme .me-sub { color: var(--jw-soft); }
body.jewel-theme .me-edit {
  border: 1px solid var(--jw-line);
  background: rgba(255, 252, 246, .7);
  color: var(--jw-gold-deep);
  border-radius: 999px;
  font-weight: 800;
}
body.jewel-theme .me-duo {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 12px;
  align-items: stretch;
  background: transparent;
  border: 0;
  box-shadow: none;
  padding: 0;
}
body.jewel-theme .me-duo::after { display: none; }
body.jewel-theme .me-duo-item {
  position: relative;
  padding: 16px 12px 15px;
  border: 1px solid var(--jw-line);
  border-radius: 19px;
  background:
    radial-gradient(130px 100px at 90% 0%, rgba(201, 164, 106, .14), transparent 70%),
    var(--jw-card-grad);
  box-shadow: inset 0 1px 0 var(--jw-highlight), var(--jw-shadow-soft);
  overflow: hidden;
  transition: transform .24s ease, border-color .24s ease;
}
body.jewel-theme .me-duo-item:hover { transform: translateY(-2px); border-color: rgba(201, 164, 106, .6); }
body.jewel-theme .me-duo-div { display: none; }
body.jewel-theme .me-duo-t { color: var(--jw-ink); font-weight: 900; }
body.jewel-theme .me-duo-s { color: var(--jw-soft); }
body.jewel-theme .me-ico-lg {
  width: 58px;
  height: 58px;
  padding: 12px;
  border-radius: 18px;
  border: 1px solid var(--jw-line);
  background: linear-gradient(145deg, #fffaf1, #ffe9ef);
  box-shadow: inset 0 1px 0 rgba(255, 255, 255, .82), 0 5px 14px rgba(151, 80, 103, .07);
}
body.jewel-theme .me-order4 { gap: 3px; }
body.jewel-theme .me-o4 {
  position: relative;
  padding: 11px 3px 9px;
  border-radius: 14px;
  color: var(--jw-ink-2);
  transition: background .2s, color .2s, transform .2s;
}
body.jewel-theme .me-o4:hover { background: rgba(255, 239, 243, .55); transform: translateY(-1px); }
body.jewel-theme .me-o4.active { color: var(--jw-pink-deep); background: rgba(255, 236, 242, .8); font-weight: 900; }
body.jewel-theme .me-o4 .me-ico {
  width: 42px;
  height: 42px;
  padding: 7px;
  border-radius: 13px;
  border: 1px solid var(--jw-line-soft);
  background: rgba(255, 250, 243, .8);
  filter: saturate(1.15) contrast(1.04);
}
body.jewel-theme .me-grid {
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 6px 2px;
}
body.jewel-theme .me-g {
  position: relative;
  padding: 10px 2px 9px;
  border-radius: 14px;
  color: var(--jw-ink-2);
  font-size: 11.5px;
  font-weight: 700;
  transition: background .2s, transform .2s, color .2s;
}
body.jewel-theme .me-g:hover { background: rgba(255, 239, 243, .55); color: var(--jw-pink-deep); transform: translateY(-1px); }
body.jewel-theme .me-g .me-ico {
  width: 43px;
  height: 43px;
  padding: 8px;
  border-radius: 14px;
  border: 1px solid var(--jw-line-soft);
  background: linear-gradient(145deg, #fffaf2, #ffe9ef);
  box-shadow: inset 0 1px 0 rgba(255, 255, 255, .84), 0 3px 9px rgba(151, 80, 103, .05);
  filter: saturate(1.16) contrast(1.03);
  transition: transform .24s ease, box-shadow .24s ease;
}
body.jewel-theme .me-g:hover .me-ico { transform: scale(1.05) translateY(-1px); box-shadow: inset 0 1px 0 rgba(255, 255, 255, .84), 0 6px 14px rgba(151, 80, 103, .1); }
body.jewel-theme .me-g .me-g-text {
  display: block;
  margin: 0;
  color: inherit;
  font-size: 11.5px;
  font-weight: 700;
  line-height: 1.3;
}
body.jewel-theme .me-g .me-dot { top: 10px; right: calc(50% - 22px); }
body.jewel-theme .me-tool-sub {
  display: flex;
  align-items: center;
  gap: 8px;
  margin: 16px 2px 5px;
  color: var(--jw-gold-deep);
  font-size: 11px;
  font-weight: 900;
  letter-spacing: .12em;
}
body.jewel-theme .me-tool-sub::after { content: ""; flex: 1; height: 1px; background: linear-gradient(90deg, var(--jw-line), transparent); }
body.jewel-theme .me-more-toggle {
  width: 100%;
  margin-top: 8px;
  padding: 10px 14px;
  border: 1px solid var(--jw-line-soft);
  border-radius: 12px;
  background: rgba(255, 249, 240, .54);
  color: var(--jw-gold-deep);
  font: inherit;
  font-size: 12px;
  font-weight: 800;
  cursor: pointer;
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 8px;
}
body.jewel-theme .me-more-toggle span { transition: transform .25s ease; }
body.jewel-theme .me-more-toggle.open span { transform: rotate(180deg); }
body.jewel-theme .me-grid-more { margin-top: 6px; }
body.jewel-theme .me-grid-more[hidden] { display: none; }
body.jewel-theme .me-footer { color: var(--jw-soft); }
body.jewel-theme .vip-card {
  border: 1px solid rgba(201, 164, 106, .55);
  background:
    radial-gradient(320px 180px at 88% 0%, rgba(201, 164, 106, .22), transparent 70%),
    linear-gradient(145deg, #3c2430, #5d3444 52%, #6d4a38);
  box-shadow: inset 0 1px 0 rgba(255, 255, 255, .12), 0 18px 36px rgba(73, 30, 46, .2);
  border-radius: 20px;
}
body.jewel-theme .vip-logo { background: var(--jw-gold-grad); color: #4e311c; }

/* 钱包 */
body.jewel-theme .jewel-wallet-hero {
  position: relative;
  padding: 26px 16px 22px !important;
  text-align: center;
  overflow: hidden;
}
body.jewel-theme .jewel-wallet-hero .jwh-ornament {
  position: absolute;
  right: 20px;
  top: 12px;
  color: rgba(201, 164, 106, .52);
  font-size: 24px;
  animation: jwFloat 4s ease-in-out infinite;
}
body.jewel-theme .jewel-wallet-hero .wallet-safe {
  display: inline-flex;
  align-items: center;
  gap: 3px;
  margin-top: 4px;
  color: #528f6c;
  font-size: 11px;
  font-weight: 800;
  letter-spacing: .06em;
}
body.jewel-theme .wallet-top {
  border: 1px solid var(--jw-line) !important;
  background:
    radial-gradient(250px 160px at 85% 0%, rgba(201, 164, 106, .2), transparent 70%),
    var(--jw-card-grad-2) !important;
  box-shadow: inset 0 1px 0 var(--jw-highlight), var(--jw-shadow);
  position: relative;
  overflow: hidden;
}
body.jewel-theme .wallet-top::after {
  content: "";
  position: absolute;
  left: 50%;
  bottom: -64px;
  width: 300px;
  height: 150px;
  transform: translateX(-50%);
  border-radius: 50%;
  border: 1px solid rgba(201, 164, 106, .16);
  box-shadow: 0 0 0 28px rgba(232, 103, 140, .025);
  pointer-events: none;
}
body.jewel-theme .wallet-top .wallet-balance { font-size: 40px; line-height: 1.25; }
body.jewel-theme .wallet-top .small { color: var(--jw-soft); }
body.jewel-theme .wallet-top .small[style] { color: var(--jw-gold-deep) !important; }

/* 商品详情 */
body.jewel-theme .pd-cat {
  background: var(--jw-rose-grad);
  border: 1px solid rgba(201, 164, 106, .55);
  border-radius: 999px;
  color: #fffaf7;
  box-shadow: inset 0 1px 0 rgba(255, 255, 255, .35), 0 3px 9px rgba(178, 59, 99, .15);
}
body.jewel-theme .pd-cat.cat-fun { background: linear-gradient(135deg, #b46a8b, #843653); }
body.jewel-theme .pd-cat.cat-blue { background: linear-gradient(135deg, #e3c084, #b38445); color: #4f3217; }
body.jewel-theme .pd-price { color: var(--jw-pink-deep); }
body.jewel-theme .pd-price span { font-weight: 900; }
body.jewel-theme .pd-sales { color: var(--jw-soft); }
body.jewel-theme .pd-title,
body.jewel-theme .pd-sec-title { color: var(--jw-ink); }
body.jewel-theme .pd-desc { color: var(--jw-ink-2); }
body.jewel-theme .pd-img {
  border: 1px solid var(--jw-line);
  border-radius: 16px;
  background: linear-gradient(145deg, #fff8ed, #ffe9ef);
}
body.jewel-theme .img-gallery .ig-item {
  border: 1px solid var(--jw-line);
  background: var(--jw-card-grad);
}
body.jewel-theme .img-gallery .ig-item img { background: transparent; }
body.jewel-theme .img-dots .dot { background: var(--jw-line); }
body.jewel-theme .img-dots .dot.on { background: var(--jw-gold); }

/* 商品详情 / 下单全屏页 */
body.jewel-theme .op-page {
  background-color: var(--jw-page);
  background-image:
    radial-gradient(circle at 12% 0%, rgba(232, 103, 140, .10), transparent 38%),
    radial-gradient(circle at 92% 2%, rgba(201, 164, 106, .14), transparent 36%),
    linear-gradient(125deg, #fffbf6, #fff6f8 55%, #fdf8f0);
  color: var(--jw-ink);
}
body.jewel-theme .op-top {
  height: 54px;
  background: rgba(255, 252, 248, .94);
  border-bottom: 1px solid var(--jw-line);
  backdrop-filter: blur(16px);
  box-shadow: 0 4px 16px rgba(151, 80, 103, .045);
}
body.jewel-theme .op-x { color: var(--jw-pink-deep); }
body.jewel-theme .op-brand { color: var(--jw-ink); letter-spacing: .04em; }
body.jewel-theme .op-dots { color: var(--jw-gold-deep); }
body.jewel-theme .op-scroll { padding: 13px; }
body.jewel-theme .op-card {
  background: var(--jw-card-grad);
  border: 1px solid var(--jw-line);
  border-radius: 18px;
  box-shadow: inset 0 1px 0 var(--jw-highlight), var(--jw-shadow-soft);
}
body.jewel-theme .op-prod-title { color: var(--jw-ink); }
body.jewel-theme .op-prod-desc { color: var(--jw-soft); }
body.jewel-theme .op-prod-price,
body.jewel-theme .op-bar-total { color: var(--jw-pink-deep); }
body.jewel-theme .op-img {
  border-radius: 13px;
  border: 1px solid var(--jw-line);
  background: linear-gradient(145deg, #fff8ed, #ffe9ef);
}
body.jewel-theme .op-qty-row { border-top-color: var(--jw-line-soft); }
body.jewel-theme .op-qty-label { color: var(--jw-ink-2); }
body.jewel-theme .op-q-btn {
  border: 1px solid var(--jw-line);
  background: rgba(255, 249, 240, .8);
  color: var(--jw-pink-deep);
  border-radius: 9px;
}
body.jewel-theme .op-label { color: var(--jw-ink-2); }
body.jewel-theme .op-opt { color: var(--jw-soft); }
body.jewel-theme .op-reg-btn {
  border: 1px solid var(--jw-line);
  background: rgba(255, 249, 240, .7);
  color: var(--jw-ink-2);
  border-radius: 12px;
}
body.jewel-theme .op-reg-btn.active {
  background: var(--jw-rose-grad);
  border-color: rgba(201, 164, 106, .55);
  color: #fffaf7;
  box-shadow: inset 0 1px 0 rgba(255, 255, 255, .36), 0 4px 12px rgba(178, 59, 99, .14);
}
body.jewel-theme .op-input,
body.jewel-theme .op-select-inner {
  border: 1px solid var(--jw-line);
  background: rgba(255, 253, 248, .86);
  color: var(--jw-ink);
  border-radius: 11px;
}
body.jewel-theme .op-target-list {
  border: 1px solid var(--jw-line-soft);
  background: var(--jw-card-grad);
  border-radius: 12px;
}
body.jewel-theme .op-target-item { color: var(--jw-ink-2); border-bottom-color: var(--jw-line-soft); }
body.jewel-theme .op-target-item:hover { background: rgba(255, 239, 243, .65); }
body.jewel-theme .op-bar {
  min-height: 66px;
  background: rgba(255, 251, 245, .95);
  border-top: 1px solid var(--jw-line);
  backdrop-filter: blur(18px);
  box-shadow: 0 -8px 24px rgba(151, 80, 103, .07);
}
body.jewel-theme .op-bar-label { color: var(--jw-soft); }
body.jewel-theme .op-pay-btn {
  height: 44px;
  padding: 0 34px;
  border: 1px solid rgba(201, 164, 106, .55);
  border-radius: 13px;
  background: var(--jw-rose-grad);
  color: #fffaf7;
  font-size: 15px;
  font-weight: 800;
  box-shadow: inset 0 1px 0 rgba(255, 255, 255, .4), 0 5px 14px rgba(178, 59, 99, .18);
}
body.jewel-theme .op-pay-btn:active { transform: translateY(1px); box-shadow: inset 0 1px 0 rgba(255, 255, 255, .3), 0 2px 6px rgba(178, 59, 99, .16); }
body.jewel-theme .op-steps { padding: 11px 14px 5px; }
body.jewel-theme .op-step .n { background: rgba(255, 250, 243, .8); border-color: var(--jw-line); }
body.jewel-theme .op-step.on .n,
body.jewel-theme .op-step.done .n { background: var(--jw-rose-grad); border-color: rgba(201, 164, 106, .5); color: #fffaf7; }
body.jewel-theme .op-step.on { color: var(--jw-pink-deep); }
body.jewel-theme .op-step-line { background: var(--jw-line-soft); }
body.jewel-theme .op-coupon-item {
  border: 1px solid var(--jw-line-soft);
  background: var(--jw-card-grad);
  color: var(--jw-ink-2);
  border-radius: 12px;
}
body.jewel-theme .op-coupon-item.on { border-color: var(--jw-gold); background: rgba(255, 239, 243, .7); }
body.jewel-theme .op-target-chip {
  background: rgba(255, 246, 238, .8);
  border: 1px solid var(--jw-line-soft);
  color: var(--jw-ink-2);
  border-radius: 999px;
}
html[data-theme="dark"] body.jewel-theme .op-page {
  background-color: #1d141a;
  background-image:
    radial-gradient(circle at 12% 0%, rgba(232, 103, 140, .16), transparent 38%),
    radial-gradient(circle at 92% 2%, rgba(201, 164, 106, .12), transparent 36%),
    linear-gradient(125deg, #1f151b, #24171f 55%, #21161b);
}
html[data-theme="dark"] body.jewel-theme .op-top { background: rgba(40, 29, 36, .94); }
html[data-theme="dark"] body.jewel-theme .op-img,
html[data-theme="dark"] body.jewel-theme .op-q-btn,
html[data-theme="dark"] body.jewel-theme .op-reg-btn,
html[data-theme="dark"] body.jewel-theme .op-input,
html[data-theme="dark"] body.jewel-theme .op-select-inner {
  background: rgba(255, 255, 255, .045);
}
html[data-theme="dark"] body.jewel-theme .op-bar { background: rgba(40, 29, 36, .95); }
html[data-theme="dark"] body.jewel-theme .op-step .n { background: rgba(255, 255, 255, .06); }

/* 打手攻略 */
body.jewel-theme .guide-item {
  background: var(--jw-card-grad);
  border: 1px solid var(--jw-line-soft);
  border-radius: 16px;
  box-shadow: inset 0 1px 0 var(--jw-highlight), var(--jw-shadow-soft);
  overflow: hidden;
}
body.jewel-theme .guide-item:hover { border-color: rgba(201, 164, 106, .58); transform: translateY(-3px); }
body.jewel-theme .guide-item img { border-bottom: 1px solid var(--jw-line-soft); }
body.jewel-theme .guide-item.empty { border-style: solid; }
body.jewel-theme .guide-item.empty .gi-img-empty { height: 112px; width: 100%; object-fit: cover; }
body.jewel-theme .guide-item .gi-name { color: var(--jw-ink); }
body.jewel-theme .guide-item .gi-sub { color: var(--jw-soft); }
html[data-theme="dark"] body.jewel-theme .guide-item { background: var(--jw-card-grad); }

/* 成长中心 */
body.jewel-theme .growth-hero {
  background:
    radial-gradient(260px 160px at 90% 0%, rgba(201, 164, 106, .16), transparent 68%),
    var(--jw-card-grad-2);
}
body.jewel-theme .gh-ico {
  width: 66px;
  height: 66px;
  background: linear-gradient(145deg, #fff9ee, #ffe8ef);
  border: 1px solid var(--jw-line);
  box-shadow: inset 0 1px 0 rgba(255, 255, 255, .8), 0 6px 16px rgba(151, 80, 103, .08);
}
body.jewel-theme .gh-level { color: var(--jw-pink-deep); }
body.jewel-theme .gh-points b { color: var(--jw-ink); }
body.jewel-theme .growth-bar { background: rgba(201, 164, 106, .13); border-color: var(--jw-line-soft); }
body.jewel-theme .growth-bar > span,
body.jewel-theme .gt-progress > span { background: linear-gradient(90deg, #e9a0b5, #d4a861); }
body.jewel-theme .growth-rules { background: rgba(255, 249, 240, .66); color: var(--jw-soft); border: 1px solid var(--jw-line-soft); }
body.jewel-theme .growth-task {
  background: var(--jw-card-grad);
  border: 1px solid var(--jw-line);
  border-radius: 16px;
  box-shadow: inset 0 1px 0 var(--jw-highlight), var(--jw-shadow-soft);
}
body.jewel-theme .growth-task.done { border-color: rgba(94, 158, 121, .45); }
body.jewel-theme .gt-ico {
  background: linear-gradient(145deg, #fff9ee, #ffe8ef);
  border: 1px solid var(--jw-line-soft);
}
body.jewel-theme .gt-title { color: var(--jw-ink); }
body.jewel-theme .gt-desc { color: var(--jw-soft); }
body.jewel-theme .gt-progress { background: rgba(201, 164, 106, .12); }
body.jewel-theme .badge-item {
  background: var(--jw-card-grad);
  border: 1px solid var(--jw-line-soft);
  border-radius: 16px;
  box-shadow: inset 0 1px 0 var(--jw-highlight);
}
body.jewel-theme .badge-item.owned { border-color: var(--jw-gold); box-shadow: inset 0 1px 0 var(--jw-highlight), var(--jw-shadow-soft); }
body.jewel-theme .bi-title { color: var(--jw-ink); }
body.jewel-theme .bi-desc,
body.jewel-theme .bi-cond { color: var(--jw-soft); }
body.jewel-theme .bi-cond { border-top-color: var(--jw-line-soft); }
body.jewel-theme .growth-log { border-bottom-color: var(--jw-line-soft); color: var(--jw-ink-2); }
body.jewel-theme .growth-log .pos { color: #528f6c; }
body.jewel-theme .rank-row {
  border-bottom: 1px solid var(--jw-line-soft);
  color: var(--jw-ink-2);
}
body.jewel-theme .rank-row.me { background: rgba(255, 239, 243, .55); }
body.jewel-theme .rank-avatar {
  background: linear-gradient(145deg, #fff9ee, #ffe8ef);
  border: 1px solid var(--jw-line-soft);
}
body.jewel-theme .rank-val { color: var(--jw-pink-deep); }
html[data-theme="dark"] body.jewel-theme .gh-ico,
html[data-theme="dark"] body.jewel-theme .gt-ico,
html[data-theme="dark"] body.jewel-theme .rank-avatar {
  background: linear-gradient(145deg, #38262f, #2b1e25);
}
html[data-theme="dark"] body.jewel-theme .growth-rules { background: rgba(255, 255, 255, .04); }

/* 注册向导 */
body.jewel-theme .wz-card {
  background: var(--jw-card-grad);
  border: 1px solid var(--jw-line);
  border-radius: 20px;
  box-shadow: inset 0 1px 0 var(--jw-highlight), var(--jw-shadow-soft);
}
body.jewel-theme .wz-card:hover { border-color: rgba(201, 164, 106, .62); transform: translateY(-3px); }
body.jewel-theme .wz-card-t { color: var(--jw-pink-deep); }
body.jewel-theme .wz-card-s { color: var(--jw-soft); }
body.jewel-theme .wz-chip {
  background: rgba(255, 253, 248, .82);
  border: 1px solid var(--jw-line);
  color: var(--jw-ink-2);
}
body.jewel-theme .wz-chip:hover,
body.jewel-theme .wz-chip.on {
  background: rgba(255, 239, 243, .72);
  border-color: var(--jw-gold);
  color: var(--jw-pink-deep);
}
body.jewel-theme .wz-tips,
body.jewel-theme .wz-sum,
body.jewel-theme .wz-details .inner {
  background: var(--jw-card-grad);
  border-color: var(--jw-line);
  color: var(--jw-soft);
}
body.jewel-theme .wz-details summary { color: var(--jw-gold-deep); }
body.jewel-theme .wz-done-t { color: var(--jw-pink-deep); }
body.jewel-theme .wz-done-s { color: var(--jw-soft); }
body.jewel-theme .wz-warn {
  background: rgba(255, 243, 226, .82);
  border-color: rgba(201, 164, 106, .5);
  color: #7f5a2d;
  border-radius: 13px;
}
html[data-theme="dark"] body.jewel-theme .wz-chip,
html[data-theme="dark"] body.jewel-theme .wz-tips,
html[data-theme="dark"] body.jewel-theme .wz-sum,
html[data-theme="dark"] body.jewel-theme .wz-details .inner {
  background: var(--jw-card-grad);
  color: var(--jw-soft);
}
html[data-theme="dark"] body.jewel-theme .wz-warn {
  background: rgba(201, 164, 106, .08);
  border-color: var(--jw-line);
  color: var(--jw-gold);
}

/* 聊天窗 */
body.jewel-theme .chat-item { border-bottom-color: var(--jw-line-soft); color: var(--jw-ink-2); }
body.jewel-theme .chat-item:hover { background: rgba(255, 239, 243, .55); }
body.jewel-theme .chat-win {
  background: var(--jw-page);
  color: var(--jw-ink);
}
body.jewel-theme .cw-head {
  background: rgba(255, 252, 248, .94);
  border-bottom: 1px solid var(--jw-line);
  backdrop-filter: blur(16px);
}
body.jewel-theme .cw-back { color: var(--jw-pink-deep); }
body.jewel-theme .cw-title { color: var(--jw-ink); }
body.jewel-theme .cw-subhead {
  background: rgba(255, 248, 241, .7);
  border-bottom: 1px solid var(--jw-line-soft);
  color: var(--jw-soft);
}
body.jewel-theme .cw-body {
  background:
    radial-gradient(circle at 10% 4%, rgba(232, 103, 140, .06), transparent 32%),
    radial-gradient(circle at 90% 2%, rgba(201, 164, 106, .08), transparent 32%),
    var(--jw-page);
}
body.jewel-theme .cw-ava {
  background: var(--jw-rose-grad);
  border-color: rgba(201, 164, 106, .35);
  box-shadow: 0 3px 9px rgba(151, 80, 103, .12);
}
body.jewel-theme .cw-sender { color: var(--jw-soft); }
body.jewel-theme .cw-bubble {
  background: var(--jw-card-grad);
  color: var(--jw-ink);
  border: 1px solid var(--jw-line-soft);
  box-shadow: 0 3px 10px rgba(151, 80, 103, .08);
}
body.jewel-theme .cw-msg.me .cw-bubble {
  background: var(--jw-rose-grad);
  color: #fffaf7;
  border-color: rgba(255, 255, 255, .2);
}
body.jewel-theme .cw-time,
body.jewel-theme .cw-time-line { color: var(--jw-soft); }
body.jewel-theme .cw-foot {
  background: rgba(255, 252, 248, .94);
  border-top: 1px solid var(--jw-line);
  backdrop-filter: blur(16px);
}
body.jewel-theme .cw-imgbtn {
  background: rgba(255, 249, 240, .8);
  border: 1px solid var(--jw-line-soft);
  color: var(--jw-gold-deep);
  border-radius: 11px;
}
body.jewel-theme .cw-input {
  border: 1px solid var(--jw-line);
  border-radius: 18px;
  background: rgba(255, 253, 248, .86);
  color: var(--jw-ink);
}
body.jewel-theme .cw-sendbtn {
  background: var(--jw-rose-grad);
  border: 1px solid rgba(201, 164, 106, .45);
  border-radius: 18px;
  color: #fffaf7;
}
body.jewel-theme .cw-bgbtn {
  background: linear-gradient(145deg, #fff9ec, #ffe9ef);
  border: 1px solid var(--jw-line);
  color: var(--jw-gold-deep);
  border-radius: 999px;
}
body.jewel-theme .cw-quick .cq {
  border: 1px solid var(--jw-line-soft);
  background: rgba(255, 250, 242, .78);
  color: var(--jw-ink-2);
}
body.jewel-theme .cw-quick .cq:active {
  background: var(--jw-rose-grad);
  color: #fffaf7;
}
body.jewel-theme .cw-sticker-panel {
  background: var(--jw-card-grad);
  border-top: 1px solid var(--jw-line);
}
body.jewel-theme .cw-sticker-head { color: var(--jw-ink-2); }
body.jewel-theme .cw-sticker-head span { color: var(--jw-soft); }
body.jewel-theme .cw-bg-item { color: var(--jw-ink-2); }
body.jewel-theme .cw-bg-item.on { background: rgba(255, 239, 243, .7); }
body.jewel-theme .cw-bg-thumb { border-color: var(--jw-line); }
html[data-theme="dark"] body.jewel-theme .cw-bgbtn {
  background: linear-gradient(145deg, #3a2a24, #33231f);
  border-color: var(--jw-line);
  color: var(--jw-gold);
}
html[data-theme="dark"] body.jewel-theme .cw-quick .cq {
  background: rgba(255, 255, 255, .055);
  border-color: var(--jw-line-soft);
  color: var(--jw-ink-2);
}
html[data-theme="dark"] body.jewel-theme .cw-sticker-panel { background: var(--jw-card-grad); }
html[data-theme="dark"] body.jewel-theme .cw-sticker-head { color: var(--jw-ink-2); }
html[data-theme="dark"] body.jewel-theme .cw-bg-item { color: var(--jw-ink-2); }
html[data-theme="dark"] body.jewel-theme .cw-bg-item.on { background: rgba(232, 103, 140, .10); }
html[data-theme="dark"] body.jewel-theme .chat-win,
html[data-theme="dark"] body.jewel-theme .cw-head,
html[data-theme="dark"] body.jewel-theme .cw-foot { background: #281d24; }
html[data-theme="dark"] body.jewel-theme .cw-body { background: var(--jw-page); }
html[data-theme="dark"] body.jewel-theme .cw-subhead { background: #22171d; border-color: var(--jw-line-soft); }
html[data-theme="dark"] body.jewel-theme .cw-bubble { background: var(--jw-card-grad); color: var(--jw-ink); }
html[data-theme="dark"] body.jewel-theme .cw-msg.me .cw-bubble { background: var(--jw-rose-grad); }
html[data-theme="dark"] body.jewel-theme .cw-input,
html[data-theme="dark"] body.jewel-theme .cw-imgbtn { background: rgba(255, 255, 255, .055); color: var(--jw-ink); }

/* =========================================================================
   用户端 · 招募 / 权益 / 配装
   ========================================================================= */
body.jewel-theme .jewel-page-hero {
  position: relative;
  margin-bottom: 15px;
  border: 1px solid var(--jw-line);
  border-radius: 24px;
  overflow: hidden;
  background: var(--jw-card-grad-2);
  box-shadow: inset 0 1px 0 var(--jw-highlight), var(--jw-shadow);
}
body.jewel-theme .jewel-page-hero img {
  display: block;
  width: 100%;
  height: 218px;
  object-fit: cover;
  object-position: center 45%;
}
body.jewel-theme .jewel-page-hero::after {
  content: "";
  position: absolute;
  z-index: 1;
  inset: 0;
  background: linear-gradient(180deg, transparent 42%, rgba(55, 22, 35, .42) 100%);
  pointer-events: none;
}
body.jewel-theme .jewel-page-hero > img { position: relative; z-index: 0; }
body.jewel-theme .jewel-page-hero-copy {
  position: absolute;
  z-index: 2;
  left: 22px;
  bottom: 20px;
  right: 22px;
  color: #fff9f4;
  text-shadow: 0 2px 10px rgba(53, 18, 31, .35);
}
body.jewel-theme .jewel-page-hero-copy small {
  display: block;
  color: #f8e4b9;
  font-size: 10px;
  font-weight: 900;
  letter-spacing: .18em;
  text-transform: uppercase;
}
body.jewel-theme .jewel-page-hero-copy b {
  display: block;
  margin-top: 2px;
  font-size: 27px;
  font-weight: 900;
  letter-spacing: .04em;
}
body.jewel-theme .jewel-page-hero-copy p {
  margin-top: 4px;
  color: rgba(255, 249, 242, .82);
  font-size: 12px;
  font-weight: 600;
  max-width: 460px;
}
body.jewel-theme .jewel-rights-hero {
  position: relative;
  display: grid;
  grid-template-columns: 160px minmax(0, 1fr);
  gap: 14px;
  align-items: center;
  padding: 18px;
  margin-bottom: 14px;
  border: 1px solid var(--jw-line);
  border-radius: 23px;
  background:
    radial-gradient(280px 180px at 90% 0%, rgba(201, 164, 106, .18), transparent 68%),
    var(--jw-card-grad-2);
  box-shadow: inset 0 1px 0 var(--jw-highlight), var(--jw-shadow);
  overflow: hidden;
}
body.jewel-theme .jewel-rights-hero img { width: 100%; height: 144px; object-fit: contain; display: block; }
body.jewel-theme .jewel-rights-hero .jrh-kicker { color: var(--jw-gold-deep); font-size: 9px; font-weight: 900; letter-spacing: .2em; }
body.jewel-theme .jewel-rights-hero h2 { margin: 4px 0 6px; color: var(--jw-ink); font-size: 25px; font-weight: 900; letter-spacing: .04em; }
body.jewel-theme .jewel-rights-hero p { color: var(--jw-soft); font-size: 12px; line-height: 1.8; }
body.jewel-theme .jewel-rights-chips { display: flex; gap: 5px; flex-wrap: wrap; margin-top: 9px; }
body.jewel-theme .jewel-rights-chips span {
  padding: 3px 9px;
  border: 1px solid var(--jw-line);
  border-radius: 999px;
  background: rgba(255, 250, 242, .72);
  color: var(--jw-gold-deep);
  font-size: 9.5px;
  font-weight: 800;
}
@media (max-width: 600px) {
  body.jewel-theme .jewel-rights-hero { grid-template-columns: 1fr; text-align: center; }
  body.jewel-theme .jewel-rights-hero img { height: 138px; }
}
body.jewel-theme .rights-list {
  display: flex;
  flex-direction: column;
  gap: 9px;
}
body.jewel-theme .rights-item {
  position: relative;
  padding: 11px 12px 11px 42px;
  border: 1px solid var(--jw-line-soft);
  border-radius: 14px;
  background: rgba(255, 252, 247, .58);
}
body.jewel-theme .rights-item .ri-no {
  position: absolute;
  left: 11px;
  top: 11px;
  width: 23px;
  height: 23px;
  display: flex;
  align-items: center;
  justify-content: center;
  border-radius: 50%;
  border: 1px solid var(--jw-line);
  background: linear-gradient(145deg, #fff9ec, #ffe9ef);
  color: var(--jw-gold-deep);
  font-size: 10px;
  font-weight: 900;
}
body.jewel-theme .rights-item b { color: var(--jw-ink); }
body.jewel-theme .rights-item .small { color: var(--jw-soft); }
body.jewel-theme .loadout-soon {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 10px;
  margin-top: 14px;
}
body.jewel-theme .loadout-slot {
  padding: 18px 12px;
  border: 1px solid var(--jw-line);
  border-radius: 17px;
  background: var(--jw-card-grad);
  text-align: center;
  box-shadow: inset 0 1px 0 var(--jw-highlight), var(--jw-shadow-soft);
}
body.jewel-theme .loadout-slot .ls-ico {
  width: 54px;
  height: 54px;
  margin: 0 auto 8px;
  display: flex;
  align-items: center;
  justify-content: center;
  border-radius: 17px;
  border: 1px solid var(--jw-line);
  background: linear-gradient(145deg, #fff9ee, #ffe8ef);
  font-size: 24px;
}
body.jewel-theme .loadout-slot b { display: block; color: var(--jw-ink); font-size: 13px; font-weight: 900; }
body.jewel-theme .loadout-slot small { display: block; margin-top: 3px; color: var(--jw-soft); font-size: 10px; line-height: 1.55; }
@media (max-width: 600px) { body.jewel-theme .loadout-soon { grid-template-columns: 1fr; } }

/* =========================================================================
   打手端
   ========================================================================= */
body.jewel-theme.jewel-staff .content,
body.jewel-theme.jewel-staff .staff-app .content { background: transparent; }
body.jewel-theme .train-card {
  background: var(--jw-card-grad);
  border: 1px solid var(--jw-line);
  border-radius: 18px;
  box-shadow: inset 0 1px 0 var(--jw-highlight), var(--jw-shadow-soft);
  overflow: hidden;
  transition: transform .24s ease, border-color .24s ease, box-shadow .24s ease;
}
body.jewel-theme .train-card:hover {
  transform: translateY(-3px);
  border-color: rgba(201, 164, 106, .58);
  box-shadow: inset 0 1px 0 var(--jw-highlight), 0 14px 28px rgba(151, 80, 103, .12);
}
body.jewel-theme .train-cover {
  background:
    radial-gradient(180px 100px at 50% 20%, rgba(255, 255, 255, .72), transparent 70%),
    linear-gradient(145deg, #fff8ed, #ffe8ee);
  border-bottom: 1px solid var(--jw-line-soft);
}
body.jewel-theme .train-cover-ico { width: 52px; height: 52px; object-fit: contain; }
body.jewel-theme .train-title { color: var(--jw-ink); }
body.jewel-theme .train-cert {
  color: var(--jw-gold-deep);
  background: rgba(201, 164, 106, .14);
  border: 1px solid var(--jw-line-soft);
}
body.jewel-theme .train-sum,
body.jewel-theme .train-meta { color: var(--jw-soft); }
body.jewel-theme .train-bar { background: rgba(201, 164, 106, .13); }
body.jewel-theme .train-bar span { background: linear-gradient(90deg, #e8a0b5, #d4a45f); }
body.jewel-theme .lesson-list { background: var(--jw-card-grad); border-color: var(--jw-line); }
html[data-theme="dark"] body.jewel-theme .train-cover {
  background:
    radial-gradient(180px 100px at 50% 20%, rgba(255, 255, 255, .05), transparent 70%),
    linear-gradient(145deg, #35242c, #2b1e25);
}
html[data-theme="dark"] body.jewel-theme .train-bar span { background: linear-gradient(90deg, #d77b98, #c49a5b); }

body.jewel-theme .stat-card {
  position: relative;
  background: var(--jw-card-grad);
  border: 1px solid var(--jw-line);
  border-radius: 18px;
  box-shadow: inset 0 1px 0 var(--jw-highlight), var(--jw-shadow-soft);
  overflow: hidden;
  transition: transform .24s ease, border-color .24s ease, box-shadow .24s ease;
}
body.jewel-theme .stat-card::after {
  content: "";
  position: absolute;
  right: -28px;
  top: -36px;
  width: 110px;
  height: 110px;
  border-radius: 50%;
  background: radial-gradient(circle, rgba(201, 164, 106, .12), transparent 68%);
  pointer-events: none;
}
body.jewel-theme .stat-card:hover { transform: translateY(-2px); border-color: rgba(201, 164, 106, .58); }
body.jewel-theme .stat-label { color: var(--jw-gold-deep); letter-spacing: .08em; }
body.jewel-theme .stat-value { color: var(--jw-ink); }
body.jewel-theme .stat-value.green { color: #4e916c; }
body.jewel-theme .stat-value.gold { color: var(--jw-gold-deep); }
body.jewel-theme .stat-sub { color: var(--jw-soft); }
body.jewel-theme .quick-grid { gap: 9px; }
body.jewel-theme .quick-item {
  position: relative;
  background: linear-gradient(145deg, rgba(255, 253, 248, .94), rgba(255, 245, 247, .86));
  border: 1px solid var(--jw-line-soft);
  border-radius: 14px;
  box-shadow: inset 0 1px 0 rgba(255, 255, 255, .74), 0 3px 10px rgba(151, 80, 103, .04);
  transition: transform .22s ease, border-color .22s ease, background .22s ease;
}
body.jewel-theme .quick-item:hover { transform: translateY(-2px); border-color: var(--jw-line); background: #fff8f4; }
body.jewel-theme .quick-item .qi-ico,
body.jewel-theme .quick-item .qi-ico-img {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 34px;
  height: 34px;
  border-radius: 11px;
  background: linear-gradient(145deg, #fff8ed, #ffe8ee);
  border: 1px solid var(--jw-line-soft);
}
body.jewel-theme .quick-item .qi-ico-img {
  padding: 7px;
  object-fit: contain;
  flex: 0 0 34px;
}
body.jewel-theme .quick-item .qi-name { color: var(--jw-ink-2); font-weight: 800; }
body.jewel-theme .feed-ico-img {
  width: 23px;
  height: 23px;
  object-fit: contain;
  display: block;
}
body.jewel-theme .feed-row {
  border: 1px solid var(--jw-line-soft);
  border-radius: 13px;
  background: rgba(255, 252, 247, .6);
  box-shadow: none;
}
body.jewel-theme .feed-row:hover { border-color: var(--jw-line); background: rgba(255, 247, 244, .82); }
body.jewel-theme .feed-title { color: var(--jw-ink); }
body.jewel-theme .feed-sub { color: var(--jw-soft); }
body.jewel-theme .feed-amt { color: #4e916c; }
body.jewel-theme .feed-amt.neg { color: #bd4b59; }
body.jewel-theme .feed-ico {
  background: linear-gradient(145deg, #fff8ec, #ffe8ee);
  border: 1px solid var(--jw-line-soft);
  box-shadow: inset 0 1px 0 rgba(255, 255, 255, .8);
}
body.jewel-theme .section-head h2 {
  color: var(--jw-ink);
  letter-spacing: .045em;
}
body.jewel-theme .section-head .right { color: var(--jw-gold-deep); }
body.jewel-theme .pro-empty {
  color: var(--jw-soft);
  border: 1px dashed var(--jw-line);
  background: rgba(255, 251, 245, .48);
}
body.jewel-theme .filter-bar {
  background: rgba(255, 251, 245, .55);
  border: 1px solid var(--jw-line-soft);
  border-radius: 14px;
  padding: 8px 10px;
}
body.jewel-theme .staff-pro .order-card,
body.jewel-theme .staff-pro .hall-card,
body.jewel-theme .staff-pro .earn-card {
  border: 1px solid var(--jw-line);
  background: var(--jw-card-grad);
  box-shadow: inset 0 1px 0 var(--jw-highlight), var(--jw-shadow-soft);
}

/* =========================================================================
   老板端
   ========================================================================= */
body.jewel-theme.jewel-boss .content.wide { background: transparent; }
body.jewel-theme.jewel-boss .kpi {
  position: relative;
  border: 1px solid var(--jw-line);
  border-radius: 17px;
  background: var(--jw-card-grad);
  box-shadow: inset 0 1px 0 var(--jw-highlight), var(--jw-shadow-soft);
}
body.jewel-theme.jewel-boss .kpi::after { color: var(--jw-gold); }
body.jewel-theme.jewel-boss .kpi .label { color: var(--jw-gold-deep); letter-spacing: .04em; }
body.jewel-theme.jewel-boss .kpi .value { color: var(--jw-ink); }
body.jewel-theme.jewel-boss .kpi .value.gold { color: var(--jw-gold-deep); }
body.jewel-theme.jewel-boss .kpi .value.accent { color: var(--jw-pink-deep); }
body.jewel-theme.jewel-boss .nav-search {
  background: rgba(255, 248, 239, .7);
  border: 1px solid var(--jw-line);
  color: var(--jw-ink-2);
  box-shadow: inset 0 1px 0 rgba(255, 255, 255, .7);
}
body.jewel-theme.jewel-boss .nav-search kbd { background: #fffaf2; border-color: var(--jw-line-soft); color: var(--jw-gold-deep); }
body.jewel-theme.jewel-boss .tabs .tab { box-shadow: inset 0 1px 0 rgba(255, 255, 255, .7); }
body.jewel-theme.jewel-boss .btn { min-height: 34px; }
body.jewel-theme.jewel-boss .table-wrap { border-radius: 16px; }
body.jewel-theme.jewel-boss .tbl { font-size: 12.5px; }
body.jewel-theme.jewel-boss .tbl th { padding: 9px 10px; }
body.jewel-theme.jewel-boss .tbl td { padding: 9px 10px; }
body.jewel-theme.jewel-boss .fb-admin-tab {
  border: 1px solid var(--jw-line-soft);
  background: rgba(255, 251, 245, .6);
  color: var(--jw-soft);
}
body.jewel-theme.jewel-boss .fb-admin-tab.on {
  background: var(--jw-rose-grad);
  border-color: rgba(201, 164, 106, .5);
  color: #fffaf6;
}
body.jewel-theme.jewel-boss .fb-admin-kpi,
body.jewel-theme.jewel-boss .fb-admin-card {
  border: 1px solid var(--jw-line);
  background: var(--jw-card-grad);
  box-shadow: inset 0 1px 0 var(--jw-highlight), var(--jw-shadow-soft);
}
body.jewel-theme.jewel-boss .chart-card,
body.jewel-theme.jewel-boss .dash-card { border-color: var(--jw-line); }

/* =========================================================================
   公开主页 / 大神榜
   ========================================================================= */
body.jewel-theme.jewel-public {
  --pf-bg: #fff9f5;
  --pf-card: #fffdfb;
  --pf-soft: #fff7f5;
  --pf-soft-2: #fff0f3;
  --pf-line: rgba(201, 164, 106, .26);
  --pf-line-strong: rgba(201, 164, 106, .42);
  --pf-ink: #4a3540;
  --pf-muted: #8f7480;
  --pf-rose: #e8678c;
  --pf-gold: #b88943;
  --pf-gold-soft: #f4e4c6;
  --pf-shadow: 0 14px 38px rgba(151, 80, 103, .10);
  --pf-shadow-soft: 0 7px 20px rgba(151, 80, 103, .075);
}
html[data-theme="dark"] body.jewel-theme.jewel-public {
  --pf-bg: #1d141a;
  --pf-card: #2a1e25;
  --pf-soft: #33242c;
  --pf-soft-2: #3b2933;
  --pf-line: rgba(227, 192, 128, .22);
  --pf-line-strong: rgba(227, 192, 128, .36);
  --pf-ink: #f7e9e2;
  --pf-muted: #c1a5b0;
  --pf-rose: #ed8da8;
  --pf-gold: #e3c080;
  --pf-gold-soft: #5b4428;
  --pf-shadow: 0 18px 46px rgba(0, 0, 0, .38);
  --pf-shadow-soft: 0 9px 24px rgba(0, 0, 0, .24);
}
body.jewel-theme.jewel-public .pf-card,
body.jewel-theme.jewel-public .pf-service,
body.jewel-theme.jewel-public .rank-list,
body.jewel-theme.jewel-public .rank-podium-card,
body.jewel-theme.jewel-public .rank-hero {
  background: var(--jw-card-grad);
  border-color: var(--jw-line);
  box-shadow: inset 0 1px 0 var(--jw-highlight), var(--jw-shadow-soft);
}
body.jewel-theme.jewel-public .pf-card,
body.jewel-theme.jewel-public .pf-service,
body.jewel-theme.jewel-public .rank-hero { position: relative; }
body.jewel-theme.jewel-public .pf-card::after,
body.jewel-theme.jewel-public .pf-service::after,
body.jewel-theme.jewel-public .rank-hero::after {
  border-color: var(--jw-line-soft);
}
body.jewel-theme.jewel-public .pf-profile-card,
body.jewel-theme.jewel-public .pf-shell > .pf-profile { border-color: var(--jw-line); }
body.jewel-theme .pf-cover.preset-rose,
body.jewel-theme .atelier-cover.preset-rose,
body.jewel-theme .home-cover.preset-rose,
body.jewel-theme .cover-preset.preset-rose,
body.jewel-theme.jewel-public .pf-cover.preset-rose {
  background:
    radial-gradient(420px 220px at 20% 18%, rgba(255, 238, 210, .34), transparent 62%),
    radial-gradient(360px 180px at 85% 100%, rgba(255, 195, 210, .22), transparent 64%),
    linear-gradient(132deg, #8f4b64 0%, #d9879d 48%, #efc18a 118%);
}
body.jewel-theme .home-cover {
  border: 1px solid var(--jw-line);
  box-shadow: inset 0 1px 0 rgba(255, 255, 255, .18), var(--jw-shadow-soft);
}
body.jewel-theme .pf-cover:not(.preset-rose):not(.preset-midnight):not(.preset-gold):not(.preset-jade):not(.preset-ember):not(.preset-silver):not(.has-img) {
  background:
    radial-gradient(420px 220px at 20% 18%, rgba(255, 238, 210, .34), transparent 62%),
    radial-gradient(360px 180px at 85% 100%, rgba(255, 195, 210, .22), transparent 64%),
    linear-gradient(132deg, #8f4b64 0%, #d9879d 48%, #efc18a 118%);
}
body.jewel-theme.jewel-public .pf-cover.preset-gold {
  background:
    radial-gradient(380px 200px at 80% 10%, rgba(255, 235, 189, .28), transparent 65%),
    linear-gradient(132deg, #3f2d1b 0%, #806337 52%, #dbb273 122%);
}
body.jewel-theme.jewel-public .pf-statbar {
  background: linear-gradient(145deg, rgba(255, 252, 246, .9), rgba(255, 244, 247, .82));
  border-color: var(--jw-line);
}
body.jewel-theme.jewel-public .pf-ava-fallback,
body.jewel-theme.jewel-public .pf-avatar,
body.jewel-theme.jewel-public .rank-podium-ava,
body.jewel-theme.jewel-public .rank-ava {
  border-color: rgba(201, 164, 106, .42);
  box-shadow: inset 0 1px 0 rgba(255, 255, 255, .55), 0 5px 14px rgba(151, 80, 103, .10);
}
body.jewel-theme.jewel-public .pf-tabs {
  background: rgba(255, 249, 242, .7);
  border: 1px solid var(--jw-line-soft);
  border-radius: 999px;
}
body.jewel-theme.jewel-public .pf-tab.active { color: var(--jw-pink-deep); }
body.jewel-theme.jewel-public .pf-tab-line { background: var(--jw-gold); }
body.jewel-theme.jewel-public .pf-dock {
  border: 1px solid rgba(201, 164, 106, .52);
  background: rgba(255, 251, 245, .9);
  box-shadow: 0 18px 44px rgba(73, 30, 46, .16), inset 0 1px 0 rgba(255, 255, 255, .8);
  backdrop-filter: blur(20px) saturate(1.1);
}
html[data-theme="dark"] body.jewel-theme.jewel-public .pf-dock { background: rgba(42, 30, 37, .92); }
body.jewel-theme.jewel-public .pf-book-btn {
  background: var(--jw-rose-grad);
  border: 1px solid rgba(201, 164, 106, .5);
  box-shadow: inset 0 1px 0 rgba(255, 255, 255, .4), 0 6px 16px rgba(178, 59, 99, .18);
}
body.jewel-theme.jewel-public .pf-gift-btn {
  border: 1px solid var(--jw-line);
  background: linear-gradient(145deg, #fff9ec, #ffe9e5);
  color: var(--jw-gold-deep);
}
body.jewel-theme.jewel-public .pf-icon-btn {
  border: 1px solid var(--jw-line);
  background: rgba(255, 252, 247, .78);
  color: var(--jw-gold-deep);
  box-shadow: inset 0 1px 0 rgba(255, 255, 255, .75);
}
body.jewel-theme.jewel-public .pf-icon-btn svg { width: 18px; height: 18px; }
body.jewel-theme.jewel-public .rank-board-tab.active { background: var(--jw-rose-grad); }
body.jewel-theme.jewel-public .rank-podium-card.first { border-color: rgba(201, 164, 106, .5); }
body.jewel-theme.jewel-public .rank-row { border-bottom-color: var(--jw-line-soft); }
body.jewel-theme.jewel-public .rank-go { border-color: var(--jw-line); color: var(--jw-pink-deep); }
body.jewel-theme.jewel-public .rank-value b,
body.jewel-theme.jewel-public .rank-podium-value { color: var(--jw-gold-deep); }
body.jewel-theme.jewel-public .pf-topbar { position: relative; }
body.jewel-theme.jewel-public .pf-brand { color: var(--jw-ink); }

/* =========================================================================
   登录 / 反馈 / 教程 / 小票
   ========================================================================= */
body.jewel-theme.jewel-login .login-wrap {
  background:
    radial-gradient(circle at 12% 6%, rgba(232, 103, 140, .14), transparent 38%),
    radial-gradient(circle at 88% 2%, rgba(201, 164, 106, .18), transparent 38%),
    radial-gradient(circle at 50% 100%, rgba(232, 103, 140, .06), transparent 50%),
    linear-gradient(125deg, #fffaf4, #fff4f7 55%, #fdf8ef);
}
body.jewel-theme.jewel-login .login-wrap::before { display: none; }
body.jewel-theme.jewel-login .login-wrap::after {
  content: "✦";
  color: var(--jw-gold);
  left: 10%;
  top: 14%;
  font-size: 28px;
  opacity: .5;
}
body.jewel-theme.jewel-login .login-card {
  background: var(--jw-card-grad-2);
  border: 1px solid rgba(201, 164, 106, .55);
  border-radius: 26px;
  box-shadow: inset 0 1px 0 rgba(255, 255, 255, .82), 0 30px 70px rgba(73, 30, 46, .16);
  position: relative;
}
body.jewel-theme.jewel-login .login-card::before {
  content: "";
  position: absolute;
  inset: 7px;
  border: 1px solid var(--jw-line-soft);
  border-radius: 20px;
  pointer-events: none;
}
body.jewel-theme.jewel-login .login-hero img {
  width: 92px;
  height: 92px;
  border-radius: 26px;
  border: 3px solid #fffaf2;
  box-shadow: 0 0 0 1px rgba(201, 164, 106, .48), 0 10px 24px rgba(151, 80, 103, .13);
  background: linear-gradient(145deg, #fff9ed, #ffe8ef);
}
body.jewel-theme.jewel-login .login-hero h1 { color: var(--jw-pink-deep); text-shadow: none; font-size: 24px; }
body.jewel-theme.jewel-login .login-hero h1 .em { color: var(--jw-gold-deep); }
body.jewel-theme.jewel-login .login-hero p { color: var(--jw-soft); }
body.jewel-theme.jewel-login .demo-btn {
  background: linear-gradient(145deg, rgba(255, 253, 248, .92), rgba(255, 245, 247, .88));
  border: 1px solid var(--jw-line-soft);
  border-radius: 13px;
}
body.jewel-theme.jewel-login .demo-btn:hover { background: #fff5f7; border-color: var(--jw-line); transform: translateY(-2px); }
body.jewel-theme.jewel-login .demo-btn .dn { color: var(--jw-ink); }
body.jewel-theme.jewel-login .demo-btn .dr { color: var(--jw-gold-deep); }
body.jewel-theme.jewel-login .divider { color: var(--jw-gold-deep); }
body.jewel-theme.jewel-login .divider::before,
body.jewel-theme.jewel-login .divider::after {
  background: repeating-linear-gradient(90deg, rgba(201, 164, 106, .42) 0 6px, transparent 6px 11px);
  height: 1px;
}

body.jewel-theme.jewel-feedback.fb-page {
  background-color: #fff9f5 !important;
  background-image:
    radial-gradient(circle at 10% 4%, rgba(232, 103, 140, .12), transparent 34%),
    radial-gradient(circle at 92% 3%, rgba(201, 164, 106, .16), transparent 34%),
    repeating-linear-gradient(118deg, rgba(201, 164, 106, .026) 0 1px, transparent 1px 17px),
    linear-gradient(125deg, #fffbf6, #fff4f7 55%, #fdf8f0) !important;
}
body.jewel-theme.jewel-feedback .fb-board {
  border: 1px solid var(--jw-line) !important;
  border-radius: 24px !important;
  background:
    radial-gradient(300px 180px at 88% 0%, rgba(201, 164, 106, .16), transparent 68%),
    linear-gradient(145deg, #fffdf9, #fff4f6 58%, #fdf6ed) !important;
  box-shadow: inset 0 1px 0 rgba(255, 255, 255, .8), var(--jw-shadow) !important;
}
body.jewel-theme.jewel-feedback .fb-board::before { display: none !important; }
body.jewel-theme.jewel-feedback .fb-board h1 {
  color: var(--jw-ink) !important;
  text-shadow: none !important;
  font-size: 30px !important;
}
body.jewel-theme.jewel-feedback .fb-kicker { color: var(--jw-gold-deep) !important; }
body.jewel-theme.jewel-feedback .fb-board-head p { color: var(--jw-soft) !important; }
body.jewel-theme.jewel-feedback .fb-write {
  border: 1px solid rgba(201, 164, 106, .55) !important;
  background: var(--jw-rose-grad) !important;
  color: #fffaf7 !important;
  box-shadow: inset 0 1px 0 rgba(255, 255, 255, .4), 0 5px 14px rgba(178, 59, 99, .16) !important;
}
body.jewel-theme.jewel-feedback .fb-stat,
body.jewel-theme.jewel-feedback .fb-notice,
body.jewel-theme.jewel-feedback .fb-spotlight,
body.jewel-theme.jewel-feedback .fb-post,
body.jewel-theme.jewel-feedback .fb-card,
body.jewel-theme.jewel-feedback .fb-compose {
  border: 1px solid var(--jw-line) !important;
  background: var(--jw-card-grad) !important;
  box-shadow: inset 0 1px 0 var(--jw-highlight), var(--jw-shadow-soft) !important;
  color: var(--jw-ink) !important;
}
body.jewel-theme.jewel-feedback .fb-notice b,
body.jewel-theme.jewel-feedback .fb-spotlight b { color: var(--jw-pink-deep) !important; }
body.jewel-theme.jewel-feedback .fb-notice span,
body.jewel-theme.jewel-feedback .fb-section-title { color: var(--jw-gold-deep) !important; }
body.jewel-theme.jewel-feedback .fb-public-tip {
  background: rgba(255, 244, 247, .72) !important;
  border: 1px solid var(--jw-line-soft) !important;
  border-left: 3px solid var(--jw-pink) !important;
  color: var(--jw-ink-2) !important;
}
body.jewel-theme.jewel-feedback .fb-theme,
body.jewel-theme.jewel-feedback .fb-back {
  border: 1px solid var(--jw-line) !important;
  background: rgba(255, 252, 247, .82) !important;
  color: var(--jw-gold-deep) !important;
}
body.jewel-theme.jewel-feedback .fb-brand-mark { background: var(--jw-rose-grad) !important; box-shadow: inset 0 1px 0 rgba(255, 255, 255, .38) !important; }

body.jewel-theme.jewel-notice body,
body.jewel-theme.jewel-notice { background-color: #fff9f5; }
body.jewel-theme.jewel-notice .wrap,
body.jewel-theme.jewel-notice .container,
body.jewel-theme.jewel-notice .card {
  border-color: var(--jw-line) !important;
  background: var(--jw-card-grad) !important;
  box-shadow: inset 0 1px 0 var(--jw-highlight), var(--jw-shadow-soft) !important;
}

body.jewel-theme.jewel-receipt { background: var(--jw-page); }
body.jewel-theme.jewel-receipt .wrap { background: transparent; }
body.jewel-theme.jewel-receipt .receipt-box,
body.jewel-theme.jewel-receipt .state {
  border-color: var(--jw-line) !important;
  box-shadow: 0 24px 60px rgba(73, 30, 46, .18) !important;
}

/* =========================================================================
   动效
   ========================================================================= */
@keyframes jwRise {
  from { opacity: 0; transform: translateY(12px); filter: blur(3px); }
  to { opacity: 1; transform: translateY(0); filter: blur(0); }
}
@keyframes jwRiseSoft {
  from { opacity: 0; transform: translateY(6px); }
  to { opacity: 1; transform: translateY(0); }
}
@keyframes jwSheen {
  0% { transform: translateX(-160%) skewX(-18deg); }
  55%, 100% { transform: translateX(260%) skewX(-18deg); }
}
@keyframes jwFloat {
  0%, 100% { transform: translateY(0); }
  50% { transform: translateY(-5px); }
}
@keyframes jwPulseGlow {
  0%, 100% { box-shadow: 0 0 0 0 rgba(201, 164, 106, .18); }
  50% { box-shadow: 0 0 0 7px rgba(201, 164, 106, 0); }
}
.jw-rise { animation: jwRise .55s cubic-bezier(.22, 1, .36, 1) both; animation-delay: calc(var(--jw-i, 0) * 45ms); }
.jw-rise-soft { animation: jwRiseSoft .4s ease both; animation-delay: calc(var(--jw-i, 0) * 35ms); }

.jw-progress {
  position: fixed;
  left: 0;
  top: 0;
  width: 100%;
  height: 2px;
  z-index: 9999;
  pointer-events: none;
  transform: scaleX(0);
  transform-origin: 0 50%;
  opacity: 0;
  background: linear-gradient(90deg, transparent, #e8b877 18%, #e8678c 52%, #d5ad6d 82%, transparent);
  box-shadow: 0 0 10px rgba(201, 164, 106, .55);
}
.jw-progress.on { animation: jwProgress .72s cubic-bezier(.22, 1, .36, 1) both; }
@keyframes jwProgress {
  0% { transform: scaleX(0); opacity: 1; }
  55% { transform: scaleX(.72); opacity: 1; }
  100% { transform: scaleX(1); opacity: 0; }
}

body.jewel-theme .jewel-prod-card .pc-media::after {
  content: "";
  position: absolute;
  z-index: 2;
  top: -20%;
  left: -40%;
  width: 32%;
  height: 140%;
  background: linear-gradient(100deg, transparent, rgba(255, 255, 255, .3), transparent);
  transform: translateX(-160%) skewX(-18deg);
  pointer-events: none;
  animation: jwSheen 7s ease-in-out infinite;
}
body.jewel-theme .jewel-prod-card,
body.jewel-theme .jewel-prod-card .pc-media { position: relative; overflow: hidden; }
body.jewel-theme .jewel-home .jewel-cta { position: relative; overflow: hidden; }
body.jewel-theme .jewel-home .jewel-cta::after {
  content: "";
  position: absolute;
  inset: 0;
  background: linear-gradient(105deg, transparent 30%, rgba(255, 255, 255, .24) 44%, transparent 58%);
  transform: translateX(-130%);
  transition: transform .7s ease;
}
body.jewel-theme .jewel-home .jewel-cta:hover::after { transform: translateX(130%); }

.jw-ripple {
  position: absolute;
  width: 12px;
  height: 12px;
  border-radius: 50%;
  background: rgba(255, 255, 255, .45);
  transform: translate(-50%, -50%) scale(0);
  animation: jwRipple .58s ease-out forwards;
  pointer-events: none;
  z-index: 5;
}
@keyframes jwRipple { to { transform: translate(-50%, -50%) scale(14); opacity: 0; } }
body.jewel-theme .btn,
body.jewel-theme .jewel-cta,
body.jewel-theme .me-g,
body.jewel-theme .tri-item,
body.jewel-theme .quick-item,
body.jewel-theme .rank-board-tab,
body.jewel-theme .rank-period,
body.jewel-theme .pf-book-btn,
body.jewel-theme .demo-btn { position: relative; overflow: hidden; }

body.jewel-theme .jewel-prod-card .pc-media img,
body.jewel-theme .atelier-cover-img { transition: transform .6s cubic-bezier(.22, 1, .36, 1); }
body.jewel-theme .jewel-prod-card:hover .pc-media img,
body.jewel-theme .atelier-player-card:hover .atelier-cover-img { transform: scale(1.035); }

/* 鼠标跟随高光（仅用于没有自定义 ::before 的卡片） */
body.jewel-theme .atelier-player-card,
body.jewel-theme .stat-card { --jw-mx: 50%; --jw-my: 0%; }
body.jewel-theme .atelier-player-card::before,
body.jewel-theme .stat-card::before {
  content: "";
  position: absolute;
  inset: 0;
  border-radius: inherit;
  background: radial-gradient(240px circle at var(--jw-mx) var(--jw-my), rgba(255, 255, 255, .18), transparent 60%);
  opacity: 0;
  pointer-events: none;
  transition: opacity .3s ease;
  z-index: 2;
}
body.jewel-theme .atelier-player-card:hover::before,
body.jewel-theme .stat-card:hover::before { opacity: 1; }

/* 减少动态偏好 */
@media (prefers-reduced-motion: reduce) {
  body.jewel-theme *,
  body.jewel-theme *::before,
  body.jewel-theme *::after {
    animation-duration: .001ms !important;
    animation-iteration-count: 1 !important;
    transition-duration: .001ms !important;
    scroll-behavior: auto !important;
  }
  .jw-rise, .jw-rise-soft { animation: none !important; opacity: 1 !important; transform: none !important; filter: none !important; }
}

/* =========================================================================
   深色主题补充：压掉旧样式里写死的浅色块
   ========================================================================= */
html[data-theme="dark"] body.jewel-theme .jewel-home .tri-item .t-label,
html[data-theme="dark"] body.jewel-theme .jewel-home .tri-item .t-sub {
  color: var(--jw-ink) !important;
}
html[data-theme="dark"] body.jewel-theme .jewel-home .tri-item .t-sub { color: var(--jw-soft) !important; }
html[data-theme="dark"] body.jewel-theme .jewel-home .tri-item img,
html[data-theme="dark"] body.jewel-theme .jewel-home .me-ico,
html[data-theme="dark"] body.jewel-theme .me-g .me-ico,
html[data-theme="dark"] body.jewel-theme .me-o4 .me-ico,
html[data-theme="dark"] body.jewel-theme .me-ico-lg {
  background: linear-gradient(145deg, #38262f, #2b1e25) !important;
  border-color: var(--jw-line-soft) !important;
  box-shadow: inset 0 1px 0 rgba(255, 255, 255, .055), 0 3px 9px rgba(0, 0, 0, .16) !important;
}
html[data-theme="dark"] body.jewel-theme .jewel-home .fun-card img { filter: brightness(.88) saturate(.95); }
html[data-theme="dark"] body.jewel-theme .jewel-home .fun-card:hover img { filter: brightness(.94) saturate(1); }
html[data-theme="dark"] body.jewel-theme .jewel-tutorial {
  background: rgba(255, 255, 255, .055) !important;
  color: var(--jw-gold) !important;
}
html[data-theme="dark"] body.jewel-theme .me-edit {
  background: rgba(255, 255, 255, .055);
  color: var(--jw-gold);
}
html[data-theme="dark"] body.jewel-theme .me-more-toggle {
  background: rgba(255, 255, 255, .045);
  color: var(--jw-gold);
  border-color: var(--jw-line-soft);
}
html[data-theme="dark"] body.jewel-theme .me-g:hover,
html[data-theme="dark"] body.jewel-theme .me-o4:hover,
html[data-theme="dark"] body.jewel-theme .me-o4.active { background: rgba(232, 103, 140, .09); }
html[data-theme="dark"] body.jewel-theme .quick-item,
html[data-theme="dark"] body.jewel-theme .feed-row,
html[data-theme="dark"] body.jewel-theme .pro-empty,
html[data-theme="dark"] body.jewel-theme .filter-bar {
  background: var(--jw-card-grad) !important;
  border-color: var(--jw-line-soft) !important;
  box-shadow: inset 0 1px 0 rgba(255, 255, 255, .04), 0 4px 14px rgba(0, 0, 0, .14) !important;
}
html[data-theme="dark"] body.jewel-theme .quick-item:hover,
html[data-theme="dark"] body.jewel-theme .feed-row:hover { background: #33242c !important; }
html[data-theme="dark"] body.jewel-theme .quick-item .qi-ico,
html[data-theme="dark"] body.jewel-theme .quick-item .qi-ico-img {
  background: linear-gradient(145deg, #3a2731, #2b1e25);
  border-color: var(--jw-line-soft);
}
html[data-theme="dark"] body.jewel-theme .quick-item .qi-name { color: var(--jw-ink-2); }
html[data-theme="dark"] body.jewel-theme .quick-item:hover { border-color: var(--jw-line); }
html[data-theme="dark"] body.jewel-theme .staff-pro .quick-item,
html[data-theme="dark"] body.jewel-theme .staff-pro .feed-row { color: var(--jw-ink); }
html[data-theme="dark"] body.jewel-theme .filter-bar { color: var(--jw-ink-2); }

html[data-theme="dark"] body.jewel-theme.jewel-login .demo-btn {
  background: linear-gradient(145deg, #35242c, #2b1e25) !important;
  border-color: var(--jw-line-soft) !important;
}
html[data-theme="dark"] body.jewel-theme.jewel-login .demo-btn .dn { color: var(--jw-ink) !important; }
html[data-theme="dark"] body.jewel-theme.jewel-login .demo-btn .dr { color: var(--jw-gold) !important; }
html[data-theme="dark"] body.jewel-theme.jewel-login .tabs .tab {
  background: rgba(255, 255, 255, .055);
  border-color: var(--jw-line-soft);
  color: var(--jw-ink);
}
html[data-theme="dark"] body.jewel-theme.jewel-login .tabs .tab.active {
  background: var(--jw-rose-grad);
  color: #fffaf7;
  border-color: rgba(201, 164, 106, .5);
}

/* 反馈页：深色下把旧告示栏的浅色块换成暗色珠宝盒 */
html[data-theme="dark"] body.jewel-theme.jewel-feedback.fb-page {
  background-color: #1d141a !important;
  background-image:
    radial-gradient(circle at 10% 4%, rgba(232, 103, 140, .16), transparent 34%),
    radial-gradient(circle at 92% 3%, rgba(201, 164, 106, .12), transparent 34%),
    repeating-linear-gradient(118deg, rgba(227, 192, 128, .02) 0 1px, transparent 1px 17px),
    linear-gradient(125deg, #1f151b, #24171f 55%, #21161b) !important;
  color: var(--jw-ink);
}
html[data-theme="dark"] body.jewel-theme.jewel-feedback .fb-board {
  background:
    radial-gradient(300px 180px at 88% 0%, rgba(201, 164, 106, .10), transparent 68%),
    var(--jw-card-grad-2) !important;
  border-color: var(--jw-line) !important;
  box-shadow: inset 0 1px 0 rgba(255, 255, 255, .06), var(--jw-shadow) !important;
}
html[data-theme="dark"] body.jewel-theme.jewel-feedback .fb-board h1 { color: var(--jw-ink) !important; text-shadow: none !important; }
html[data-theme="dark"] body.jewel-theme.jewel-feedback .fb-board-head p { color: var(--jw-soft) !important; }
html[data-theme="dark"] body.jewel-theme.jewel-feedback .fb-kicker { color: var(--jw-gold) !important; }
html[data-theme="dark"] body.jewel-theme.jewel-feedback .fb-stat {
  background: rgba(255, 255, 255, .055) !important;
  border-color: var(--jw-line-soft) !important;
  color: var(--jw-ink) !important;
}
html[data-theme="dark"] body.jewel-theme.jewel-feedback .fb-public-tip {
  background: rgba(255, 255, 255, .045) !important;
  border-color: var(--jw-line-soft) !important;
  border-left-color: var(--jw-pink) !important;
  color: var(--jw-ink-2) !important;
}
html[data-theme="dark"] body.jewel-theme.jewel-feedback .fb-toolbar {
  background: rgba(43, 30, 37, .9) !important;
  border-color: var(--jw-line-soft) !important;
}
html[data-theme="dark"] body.jewel-theme.jewel-feedback .fb-card,
html[data-theme="dark"] body.jewel-theme.jewel-feedback .fb-empty,
html[data-theme="dark"] body.jewel-theme.jewel-feedback .fb-notice,
html[data-theme="dark"] body.jewel-theme.jewel-feedback .fb-spotlight,
html[data-theme="dark"] body.jewel-theme.jewel-feedback .fb-compose {
  background: var(--jw-card-grad) !important;
  border-color: var(--jw-line-soft) !important;
  color: var(--jw-ink) !important;
  box-shadow: inset 0 1px 0 rgba(255, 255, 255, .04), 0 4px 14px rgba(0, 0, 0, .16) !important;
}
html[data-theme="dark"] body.jewel-theme.jewel-feedback .fb-empty { border-style: dashed !important; }
html[data-theme="dark"] body.jewel-theme.jewel-feedback .fb-card h3,
html[data-theme="dark"] body.jewel-theme.jewel-feedback .fb-card-foot { color: var(--jw-ink) !important; }
html[data-theme="dark"] body.jewel-theme.jewel-feedback .fb-excerpt { color: var(--jw-soft) !important; }
html[data-theme="dark"] body.jewel-theme.jewel-feedback .fb-notice b,
html[data-theme="dark"] body.jewel-theme.jewel-feedback .fb-spotlight b { color: var(--jw-pink-deep) !important; }
html[data-theme="dark"] body.jewel-theme.jewel-feedback .fb-notice span,
html[data-theme="dark"] body.jewel-theme.jewel-feedback .fb-spotlight p { color: var(--jw-ink-2) !important; }
html[data-theme="dark"] body.jewel-theme.jewel-feedback .fb-tabs .fb-tab { color: var(--jw-soft); }
html[data-theme="dark"] body.jewel-theme.jewel-feedback .fb-mini { background: rgba(255, 255, 255, .05); color: var(--jw-ink); border-color: var(--jw-line-soft); }

/* 教程页深色 */
html[data-theme="dark"] body.jewel-theme.jewel-notice {
  --ink: #f7e9e2;
  --muted: #c1a5b0;
  --line: #4c3540;
  --bg: #1d141a;
  --card: #2a1e25;
  --pink-soft: rgba(232, 103, 140, .12);
  background-color: #1d141a !important;
  background-image:
    radial-gradient(1200px 600px at 50% -10%, rgba(232, 103, 140, .14) 0%, rgba(232, 103, 140, 0) 60%),
    linear-gradient(125deg, #1f151b, #24171f 55%, #21161b) !important;
  color: var(--jw-ink);
}
html[data-theme="dark"] body.jewel-theme.jewel-notice .hero {
  background:
    radial-gradient(260px 170px at 90% 0%, rgba(227, 192, 128, .16), transparent 70%),
    var(--jw-card-grad-2) !important;
  border-color: var(--jw-line) !important;
  box-shadow: inset 0 1px 0 rgba(255, 255, 255, .06), var(--jw-shadow-soft);
}
html[data-theme="dark"] body.jewel-theme.jewel-notice .hero::after {
  background: radial-gradient(circle, rgba(201, 164, 106, .15), rgba(232, 103, 140, .04) 55%, transparent 72%) !important;
}
html[data-theme="dark"] body.jewel-theme.jewel-notice .hero h1,
html[data-theme="dark"] body.jewel-theme.jewel-notice .hero p { color: var(--jw-ink) !important; }
html[data-theme="dark"] body.jewel-theme.jewel-notice .card {
  background: var(--jw-card-grad) !important;
  border-color: var(--jw-line) !important;
  box-shadow: inset 0 1px 0 rgba(255, 255, 255, .05), var(--jw-shadow-soft) !important;
  color: var(--jw-ink);
}
html[data-theme="dark"] body.jewel-theme.jewel-notice .step-body p,
html[data-theme="dark"] body.jewel-theme.jewel-notice .step-body li,
html[data-theme="dark"] body.jewel-theme.jewel-notice .faq-a,
html[data-theme="dark"] body.jewel-theme.jewel-notice .bellbox span { color: var(--jw-ink-2) !important; }
html[data-theme="dark"] body.jewel-theme.jewel-notice .tip {
  background: rgba(94, 158, 121, .12) !important;
  border-color: rgba(94, 158, 121, .3) !important;
  color: #a9dbc0 !important;
}
html[data-theme="dark"] body.jewel-theme.jewel-notice .warn {
  background: rgba(196, 78, 93, .12) !important;
  border-color: rgba(196, 78, 93, .3) !important;
  color: #f0b1ba !important;
}
html[data-theme="dark"] body.jewel-theme.jewel-notice .note {
  background: rgba(201, 164, 106, .09) !important;
  border-color: var(--jw-line) !important;
  color: var(--jw-gold) !important;
}
html[data-theme="dark"] body.jewel-theme.jewel-notice .short {
  background: var(--jw-card-grad-2) !important;
  border: 1px solid var(--jw-line);
  color: var(--jw-ink);
}
html[data-theme="dark"] body.jewel-theme.jewel-notice .short h3 { color: var(--jw-gold) !important; }
html[data-theme="dark"] body.jewel-theme.jewel-notice .short p,
html[data-theme="dark"] body.jewel-theme.jewel-notice .short ol,
html[data-theme="dark"] body.jewel-theme.jewel-notice .short li { color: var(--jw-ink) !important; }
html[data-theme="dark"] body.jewel-theme.jewel-notice .faq-item { border-top-color: var(--jw-line-soft); }
html[data-theme="dark"] body.jewel-theme.jewel-notice .foot { color: var(--jw-soft); }

html[data-theme="dark"] body.jewel-theme.jewel-public .pf-statbar {
  background: linear-gradient(180deg, rgba(255, 255, 255, .045), transparent 100%);
  border-color: var(--jw-line);
}
html[data-theme="dark"] body.jewel-theme.jewel-public .pf-statbar b { color: var(--jw-ink); }
html[data-theme="dark"] body.jewel-theme.jewel-public .pf-statbar span { color: var(--jw-soft); }
html[data-theme="dark"] body.jewel-theme.jewel-public .pf-tabs {
  background: rgba(255, 255, 255, .035);
  border-color: var(--jw-line-soft);
}
html[data-theme="dark"] body.jewel-theme.jewel-public .pf-icon-btn {
  background: rgba(43, 30, 37, .82);
  color: var(--jw-gold);
  border-color: var(--jw-line);
  box-shadow: inset 0 1px 0 rgba(255, 255, 255, .06);
}
html[data-theme="dark"] body.jewel-theme .theme-toggle-public {
  background: rgba(43, 30, 37, .82) !important;
  color: var(--jw-gold) !important;
  border-color: var(--jw-line) !important;
}
html[data-theme="dark"] body.jewel-theme.jewel-public .pf-gift-btn {
  background: linear-gradient(145deg, #3d2b24, #35251f);
  color: var(--jw-gold);
  border-color: var(--jw-line);
}
html[data-theme="dark"] body.jewel-theme .atelier-badge {
  background: rgba(255, 255, 255, .055);
  border-color: var(--jw-line-soft);
  color: var(--jw-gold);
}
html[data-theme="dark"] body.jewel-theme .atelier-badge.rose {
  background: rgba(232, 103, 140, .12);
  border-color: rgba(232, 103, 140, .24);
  color: #f2b4c5;
}
html[data-theme="dark"] body.jewel-theme .atelier-actions .atelier-ghost,
html[data-theme="dark"] body.jewel-theme .players-rank-link {
  background: linear-gradient(145deg, #35242c, #2b1e25);
  border-color: var(--jw-line);
  color: var(--jw-gold);
}
html[data-theme="dark"] body.jewel-theme .atelier-actions .atelier-gift {
  background: linear-gradient(145deg, #3e2d25, #35241f);
  border-color: var(--jw-line);
  color: var(--jw-gold);
}
html[data-theme="dark"] body.jewel-theme .atelier-voice {
  background: linear-gradient(120deg, rgba(255, 255, 255, .055), rgba(232, 103, 140, .06));
}
html[data-theme="dark"] body.jewel-theme .atelier-voice .av-text { color: var(--jw-gold); }
html[data-theme="dark"] body.jewel-theme .jewel-prod-card .pc-add { border-color: var(--jw-line); }
html[data-theme="dark"] body.jewel-theme .players-filters,
html[data-theme="dark"] body.jewel-theme .price-board .pb-head {
  background: var(--jw-card-grad) !important;
}
html[data-theme="dark"] body.jewel-theme .price-board .pb-head { background: linear-gradient(90deg, #3a2730, #36232a) !important; }

/* 移动端 */
@media (max-width: 720px) {
  body.jewel-theme.has-tabbar #themeToggle {
    right: 12px;
    bottom: calc(82px + env(safe-area-inset-bottom, 0px));
    width: 38px;
    height: 38px;
  }
  body.jewel-theme.has-tabbar #themeToggle svg { width: 17px; height: 17px; }
  /* 用户端手机版保留白天/黑夜切换：做成带文字的胶囊，避免只看到一个不明显的圆点 */
  body.jewel-theme.jewel-user #themeToggle {
    display: inline-flex !important;
    width: auto;
    min-width: 70px;
    height: 38px;
    padding: 0 10px;
    gap: 5px;
    border-radius: 999px;
    font-size: 10px;
  }
  body.jewel-theme.jewel-user #themeToggle svg { width: 16px; height: 16px; }
  body.jewel-theme.jewel-user #themeToggle::after {
    font-size: 10px;
    font-weight: 800;
    letter-spacing: .08em;
    line-height: 1;
  }
  html:not([data-theme="dark"]) body.jewel-theme.jewel-user #themeToggle::after { content: "夜间"; }
  html[data-theme="dark"] body.jewel-theme.jewel-user #themeToggle::after { content: "日间"; }
  body.jewel-theme .content { padding-bottom: calc(108px + env(safe-area-inset-bottom, 0px)); }
  body.jewel-theme .page-title { font-size: 21px; margin-bottom: 14px; }
  body.jewel-theme .card { padding: 14px; border-radius: 18px; }
  body.jewel-theme .card::after,
  body.jewel-theme .me-card::after,
  body.jewel-theme .order-card::after { inset: 4px; border-radius: 14px; }
  body.jewel-theme .me-duo { gap: 9px; }
  body.jewel-theme .me-duo-item { padding: 13px 8px; border-radius: 16px; }
  body.jewel-theme .me-ico-lg { width: 50px; height: 50px; padding: 10px; border-radius: 15px; }
  body.jewel-theme .me-grid { grid-template-columns: repeat(4, minmax(0, 1fr)); }
  body.jewel-theme .me-g { font-size: 10.5px; }
  body.jewel-theme .me-g .me-ico { width: 38px; height: 38px; padding: 7px; border-radius: 12px; }
  body.jewel-theme .me-o4 { font-size: 11px; }
  body.jewel-theme .me-o4 .me-ico { width: 38px; height: 38px; padding: 6px; }
  body.jewel-theme .wallet-top .wallet-balance { font-size: 34px; }
  body.jewel-theme .jewel-page-hero img { height: 170px; }
  body.jewel-theme .jewel-page-hero-copy { left: 16px; bottom: 14px; right: 16px; }
  body.jewel-theme .jewel-page-hero-copy b { font-size: 22px; }
  body.jewel-theme .atelier-player-card::after { inset: 4px; border-radius: 17px; }
  body.jewel-theme .stat-card { border-radius: 15px; }
  body.jewel-theme .quick-item .qi-ico { width: 30px; height: 30px; border-radius: 10px; }
}

/* 极窄屏：品牌条优先保证店名可读，教程入口让位 */
@media (max-width: 360px) {
  body.jewel-user.jewel-theme .jewel-tutorial { display: none !important; }
  body.jewel-user.jewel-theme .jewel-brand .bb-name { font-size: 15px; letter-spacing: .03em; }
  body.jewel-user.jewel-theme .jewel-brand .bb-sub { font-size: 9.5px; }
}
