/* ===== 核心画质与多端性能锁死机制 ===== */
.always-on-top { position: relative; z-index: 2147483647 !important; }
.dropdown-top { position: absolute; z-index: 2147483647 !important; }

.page-bg {
  background:
    radial-gradient(circle at 15% 8%, rgba(56,189,248,.24), transparent 30%),
    radial-gradient(circle at 85% 0%, rgba(139,92,246,.26), transparent 26%),
    linear-gradient(145deg,#070B18 0%,#111A38 48%,#182452 100%);
}

.glass {
  background: rgba(255,255,255,.075);
  border: 1px solid rgba(255,255,255,.12);
  box-shadow: inset 0 1px 0 rgba(255,255,255,.08);
  backdrop-filter: blur(18px);
}

.soft-card {
  background: linear-gradient(180deg, rgba(255,255,255,.10), rgba(255,255,255,.055));
  border: 1px solid rgba(255,255,255,.12);
  box-shadow: 0 18px 45px rgba(0, 0, 0, 0.28);
}

.btn-gradient { background: linear-gradient(135deg, #38BDF8 0%, #8B5CF6 100%); }
.gold-gradient { background: linear-gradient(135deg, #FFE7A3 0%, #F6C453 50%, #E7942A 100%); }
.text-gradient {
  background: linear-gradient(90deg,#7DD3FC,#C4B5FD,#FDE68A);
  -webkit-background-clip: text;
  background-clip: text;
  color: transparent;
}
.safe-bottom { padding-bottom: calc(18px + env(safe-area-inset-bottom)); }
.tap-active:active { transform: scale(.98); }

/* ===== 微信支付扫码定位层 ===== */
.qrcode-wrap {
  position: relative !important;
  width: 320px !important;
  height: 320px !important;
  margin: 0 auto !important;
  display: block !important;
  background: #fff !important;
  border-radius: 18px !important;
  overflow: hidden !important;
}

.pay-qr-img {
  width: 320px !important;
  height: 320px !important;
  max-width: 100% !important;
  display: block !important;
  margin: 0 auto !important;
  object-fit: contain !important;
  user-select: auto !important;
}

.qr-logo {
  position: absolute !important;
  left: 50% !important;
  top: 50% !important;
  transform: translate(-50%,-50%) !important;
  width: 58px !important;
  height: 58px !important;
  border-radius: 14px !important;
  background: #fff !important;
  padding: 6px !important;
  z-index: 10 !important;
}

/* ===== 核心精修：立体浮雕会员、点数充值卡片视觉 ===== */
.zhj-vip-page .zhj-recharge-shell,
.zhj-vip-page .zhj-member-shell {
  background: linear-gradient(180deg,rgba(8,13,28,.82),rgba(9,15,34,.72)) !important;
  border: 1px solid rgba(255,255,255,.10) !important;
}

.zhj-recharge-grid > .zhj-ref-card,
.zhj-member-grid > .zhj-ref-card {
  position: relative !important;
  overflow: visible !important;  /* 允许卡片上的个人推荐标签溢出展示 */
  min-height: 350px;
  display: flex !important;
  flex-direction: column !important;
  border-radius: 28px !important;
  padding: 0 !important;
  isolation: isolate;
  background: linear-gradient(180deg,rgba(255,255,255,.14),rgba(255,255,255,.06)) !important;
  border: 1px solid rgba(255,255,255,.18) !important;
  box-shadow: 0 24px 70px rgba(0,0,0,.36), inset 0 1px 0 rgba(255,255,255,.16) !important;
}

.zhj-recharge-grid > .zhj-ref-card::before,
.zhj-member-grid > .zhj-ref-card::before {
  content: '';
  display: block;
  height: 172px;
  flex: 0 0 172px;
  background: linear-gradient(180deg,rgba(255,255,255,.18),rgba(255,255,255,.03));
  border-bottom: 1px solid rgba(255,255,255,.13);
  opacity: .96;
}

.zhj-recharge-grid > .zhj-ref-card::after,
.zhj-member-grid > .zhj-ref-card::after {
  content: '';
  position: absolute;
  top: 34px; left: 50%;
  width: 112px; height: 112px;
  transform: translateX(-50%);
  background-repeat: no-repeat;
  background-position: center;
  background-size: contain;
  filter: drop-shadow(0 14px 28px rgba(0,0,0,.25));
  z-index: 1;
}

.zhj-recharge-grid > .zhj-ref-card > *,
.zhj-member-grid > .zhj-ref-card > * { position: relative; z-index: 2; padding-left: 20px !important; padding-right: 20px !important; }
.zhj-recharge-grid > .zhj-ref-card h3,
.zhj-member-grid > .zhj-ref-card h3 { margin-top: -150px !important; padding-top: 24px !important; font-size: 26px !important; line-height: 1.08 !important; text-align: left !important; }
.zhj-recharge-grid > .zhj-ref-card .zhj-price-stack,
.zhj-member-grid > .zhj-ref-card .zhj-price-stack { margin-top: 124px !important; background: rgba(3,7,18,.46); border-top: 1px solid rgba(255,255,255,.10); padding-top: 18px !important; padding-bottom: 10px !important; }

.zhj-recharge-grid > .zhj-ref-card button,
.zhj-member-grid > .zhj-ref-card button { width: calc(100% - 40px) !important; margin-left: 20px !important; margin-right: 20px !important; margin-top: auto !important; margin-bottom: 20px !important; }

/* 炫彩顶衬及个性化图标方案绑定 */
.zhj-recharge-grid > .zhj-ref-card:nth-child(1)::before,.zhj-member-grid.personal > .zhj-ref-card:nth-child(1)::before{background:linear-gradient(180deg,rgba(186,230,253,.92),rgba(56,189,248,.20)) !important;}
.zhj-recharge-grid > .zhj-ref-card:nth-child(2)::before{background:linear-gradient(180deg,rgba(167,243,208,.82),rgba(20,83,45,.26)) !important;}
.zhj-recharge-grid > .zhj-ref-card:nth-child(3)::before,.zhj-member-grid.personal > .zhj-ref-card:nth-child(2)::before,.zhj-member-grid.enterprise > .zhj-ref-card:nth-child(2)::before{background:linear-gradient(180deg,rgba(253,230,138,.92),rgba(180,83,9,.34)) !important;}
.zhj-recharge-grid > .zhj-ref-card:nth-child(4)::before{background:linear-gradient(180deg,rgba(96,165,250,.88),rgba(30,64,175,.36)) !important;}
.zhj-recharge-grid > .zhj-ref-card:nth-child(5)::before,.zhj-member-grid.personal > .zhj-ref-card:nth-child(3)::before{background:linear-gradient(180deg,rgba(196,181,253,.92),rgba(91,33,182,.38)) !important;}
.zhj-recharge-grid > .zhj-ref-card:nth-child(6)::before,.zhj-member-grid.enterprise > .zhj-ref-card:nth-child(3)::before{background:linear-gradient(180deg,rgba(254,243,199,.92),rgba(120,113,108,.34)) !important;}
.zhj-member-grid.enterprise > .zhj-ref-card:nth-child(1)::before{background:linear-gradient(180deg,rgba(219,234,254,.92),rgba(56,189,248,.22)) !important;}

.zhj-recharge-grid > .zhj-ref-card::after{background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 140 140'%3E%3Cg fill='none' stroke='rgba(255,255,255,.78)' stroke-width='2'%3E%3Cpath d='M22 106 70 22l48 84H22Z'/%3E%3Cpath d='M70 22v84M46 66h48M34 88h72'/%3E%3Ccircle cx='70' cy='22' r='8'/%3E%3C/g%3E%3C/svg%3E");}
.zhj-member-grid.personal > .zhj-ref-card:nth-child(1)::after{background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 140 140'%3E%3Cg fill='none' stroke='rgba(255,255,255,.82)' stroke-width='3'%3E%3Cpath d='M30 88c30-8 42-26 52-58 18 22 12 54-10 72-18 15-42 11-42-14Z'/%3E%3Cpath d='M52 84c10-22 26-38 48-50'/%3E%3Cpath d='M26 108c16-2 30-8 42-20'/%3E%3C/g%3E%3C/svg%3E");}
.zhj-member-grid.personal > .zhj-ref-card:nth-child(2)::after,.zhj-member-grid.enterprise > .zhj-ref-card:nth-child(2)::after{background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 140 140'%3E%3Cg fill='none' stroke='rgba(255,255,255,.82)' stroke-width='2'%3E%3Cpath d='M42 90 70 74l28 16-28 16-28-16Z'/%3E%3Cpath d='M42 90V56l28-16 28 16v34M70 40v34M42 56l28 18 28-18'/%3E%3Cpath d='M24 112h92M92 104h22M100 96h14M108 88h6'/%3E%3C/g%3E%3C/svg%3E");}
.zhj-member-grid.personal > .zhj-ref-card:nth-child(3)::after,.zhj-member-grid.enterprise > .zhj-ref-card:nth-child(3)::after{background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 140 140'%3E%3Cg fill='none' stroke='rgba(255,255,255,.82)' stroke-width='3'%3E%3Cpath d='M28 96h84V50L96 62 70 38 44 62 28 50v46Z'/%3E%3Cpath d='M38 108h64M42 78h56M52 68h36'/%3E%3Ccircle cx='70' cy='38' r='5'/%3E%3C/g%3E%3C/svg%3E");}
.zhj-member-grid.enterprise > .zhj-ref-card:nth-child(1)::after{background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 140 140'%3E%3Cg fill='none' stroke='rgba(255,255,255,.82)' stroke-width='2.5'%3E%3Cpath d='M70 28 106 48v42L70 112 34 90V48l36-20Z'/%3E%3Cpath d='M34 48l36 22 36-22M70 70v42'/%3E%3Ccircle cx='32' cy='108' r='9'/%3E%3Ccircle cx='108' cy='108' r='9'/%3E%3Ccircle cx='70' cy='22' r='9'/%3E%3Cpath d='M40 104 62 82M100 104 78 82M70 31v32'/%3E%3C/g%3E%3C/svg%3E");}

/* 强制卡位顶部推荐标识浮雕发光 */
.vip-card-hot > .absolute.-top-4,
.zhj-member-grid .absolute.-top-4 {
  position: absolute !important;
  top: -24px !important; left: 50% !important;
  transform: translateX(-50%) !important;
  z-index: 999999 !important;
  display: inline-flex !important;
  align-items: center !important; justify-content: center !important;
  min-width: 120px !important; padding: 8px 24px !important;
  border-radius: 999px !important;
  background: linear-gradient(135deg,#ffe08a 0%,#ffb92d 100%) !important;
  color: #111 !important; font-size: 15px !important; font-weight: 900 !important;
  border: 2px solid rgba(255,255,255,.55) !important;
  box-shadow: 0 10px 30px rgba(255,185,45,.45) !important;
}

/* ===== 聚合单按钮尺寸死锁 ===== */
.recharge-btn,
.buy-vip-btn {
  display: flex !important; align-items: center !important; justify-content: center !important;
  width: 100% !important; height: 48px !important; min-height: 48px !important;
  border-radius: 18px !important; font-size: 15px !important; font-weight: 800 !important;
  border: none !important; outline: none !important; cursor: pointer !important;
}
.recharge-btn.btn-gradient, .buy-vip-btn.btn-gradient {
  background: linear-gradient(135deg, #38bdf8 0%, #3b82f6 48%, #8b5cf6 100%) !important;
  color: #fff !important; box-shadow: 0 12px 28px rgba(59,130,246,.28) !important;
}
.recharge-btn.gold-gradient, .buy-vip-btn.gold-gradient {
  background: linear-gradient(135deg, #fde68a 0%, #f6c453 48%, #f59e0b 100%) !important;
  color: #111827 !important; box-shadow: 0 12px 28px rgba(245,158,11,.28) !important;
}

/* ===== 核心专属三支付内置弹窗面板组件模型样式 ===== */
#zhjPayModal {
  display: none; position: fixed; inset: 0; z-index: 2147483647;
  background: rgba(2,6,23,.72); align-items: center; justify-content: center; padding: 18px;
}
.zhj-pay-panel {
  width: 440px; max-width: 94vw; border-radius: 28px; background: #fff; color: #111827; padding: 26px; position: relative; text-align: center;
}
.zhj-pay-close {
  position: absolute; right: 16px; top: 16px; width: 34px; height: 34px; border: 0; border-radius: 999px; background: #f3f4f6; color: #111827; font-size: 22px; cursor: pointer;
}
.zhj-pay-title { font-size: 24px; font-weight: 1000; margin: 4px 0 8px; }
.zhj-pay-price b { color: #ef2b6d; font-size: 32px; }
.zhj-pay-tabs { display: grid; grid-template-columns: repeat(3, 1fr); gap: 10px; margin-bottom: 18px; }
.zhj-pay-tab { height: 46px; border: 0; border-radius: 14px; background: #f3f4f6; font-weight: 900; cursor: pointer; }
.zhj-pay-tab.active.wechat { background: #16a34a; color: #fff; }
.zhj-pay-tab.active.alipay { background: #1677ff; color: #fff; }
.zhj-pay-tab.active.bank { background: #111827; color: #fff; }
#zhjPayContent { min-height: 292px; display: flex; align-items: center; justify-content: center; }
.zhj-qr-wrap { width: 340px; min-height: 340px; margin: 0 auto; padding: 10px; border: 1px solid #e5e7eb; border-radius: 20px; background: #fff; display: flex; flex-direction: column; align-items: center; justify-content: center; }
.zhj-bank-box { width: 100%; text-align: left; }
.zhj-bank-row { display: grid; grid-template-columns: 92px minmax(0,1fr) 38px; align-items: center; gap: 8px; min-height: 56px; padding: 8px 10px; border: 1px solid #e5e7eb; border-radius: 14px; margin-bottom: 10px; }
.zhj-bank-row span { color: #9ca3af; font-size: 20px; font-weight: 1000; }
.zhj-bank-row b { color: #111827; font-size: 15px; text-align: right; word-break: break-all; }
.zhj-copy-btn { width: 34px; height: 34px; border: 0; background: #f0f9ff; color: #0284c7; border-radius: 10px; cursor: pointer; display: flex; align-items: center; justify-content: center; }

.zhj-policy-sync { margin: 28px auto 0; max-width: 980px; border-radius: 28px; padding: 18px 20px; background: linear-gradient(135deg,rgba(34,211,238,.14),rgba(139,92,246,.16),rgba(246,196,83,.10)); border: 1px solid rgba(125,211,252,.22); }
.zhj-policy-sync-grid { display: grid; grid-template-columns: repeat(4,minmax(0,1fr)); gap: 12px; }
.zhj-policy-sync-item { border-radius: 18px; background: rgba(255,255,255,.07); border: 1px solid rgba(255,255,255,.11); padding: 14px; }
.zhj-policy-sync-item b { display: block; color: #67E8F9; font-size: 13px; margin-bottom: 5px; }
.zhj-policy-sync-item span { color: rgba(255,255,255,.68); font-size: 12px; line-height: 1.5; }

/* ===== 移动多端自适应分流锁死断点 ===== */
@media(max-width: 920px) {
  #pcSidebarContainer { display: none !important; }
  #mobileNavContainer { display: block !important; position: relative !important; z-index: 2147483000 !important; }
  main { padding-top: 96px !important; }
  
  .zhj-recharge-grid > .zhj-ref-card, .zhj-member-grid > .zhj-ref-card { min-height: 330px; border-radius: 24px !important; }
  .zhj-recharge-grid > .zhj-ref-card::before, .zhj-member-grid > .zhj-ref-card::before { height: 150px; flex-basis: 150px; }
  .zhj-recharge-grid > .zhj-ref-card::after, .zhj-member-grid > .zhj-ref-card::after { top: 36px; width: 82px; height: 82px; }
  .zhj-recharge-grid > .zhj-ref-card h3, .zhj-member-grid > .zhj-ref-card h3 { font-size: 22px !important; margin-top: -132px !important; }
  .zhj-recharge-grid > .zhj-ref-card .zhj-price-stack, .zhj-member-grid > .zhj-ref-card .zhj-price-stack { margin-top: 104px !important; }
  
  .vip-card-hot > .absolute.-top-4, .zhj-member-grid .absolute.-top-4 { top: -18px !important; min-width: 102px !important; padding: 6px 18px !important; font-size: 13px !important; }
  .recharge-btn, .buy-vip-btn { height: 46px !important; min-height: 46px !important; border-radius: 16px !important; font-size: 14px !important; }
  .zhj-policy-sync-grid { grid-template-columns: 1fr 1fr; }
  .zhj-policy-sync { padding: 14px; }
  .glass, .soft-card, .vip-card, .vip-card-hot { backdrop-filter: none !important; -webkit-backdrop-filter: none !important; }
}

@media(min-width: 921px) {
  #mobileNavContainer { display: none !important; }
  #pcSidebarContainer { display: block !important; }
  main, footer { margin-left: 220px !important; }
  main { padding-top: 40px !important; }
}