/* ============================================================
 * CKPUB 传奇发布站 - 前台样式
 * 传奇红金主题：#c92b1b / #f3d47c / #2c2316
 * ============================================================ */
*, *::before, *::after { box-sizing: border-box; margin:0; padding:0; caret-color:transparent; }
html, body { font-family: "PingFang SC", "Microsoft YaHei", sans-serif; color:#2a1d12; background:#fbf7f0; min-width:1440px; }
/* 防止窗口恢复时页面空白：提升主内容区到独立合成层 */
.list-page, .content .container { transform: translateZ(0); }
a { color: inherit; text-decoration: none; }
a:hover { color:#c92b1b; }
img { max-width:100%; display:block; }
ul { list-style:none; }
button { cursor:pointer; border:none; font-family:inherit; }
input, select, textarea { font-family:inherit; outline:none; caret-color:auto; }
code { background:#f3ece0; padding:0 4px; border-radius:3px; }

/* --------- 布局工具 --------- */
.wrap { width: 1420px; margin: 0 auto; }
.page-home .content .container { width: 1420px; margin: 0 auto; }
.flex { display:flex; }
.between { justify-content: space-between; }
.middle { align-items: center; }
.right { text-align:right; }
.center { text-align:center; }
.sep { margin:0 6px; color:#cfbf9f; }
.muted { color:#9a8a6c; }
.small { font-size:12px; }
.ok { color:#2f8545; }
.warn { color:#c97a1b; }
.amount { color:#c92b1b; font-weight:600; }
.chip { display:inline-block; padding:3px 10px; border-radius:999px; background:#efe7d4; color:#6b583b; margin-right:6px; font-size:12px; }
.chip.active { background:#c92b1b; color:#fff; }
.badge { display:inline-block; padding:2px 8px; border-radius:4px; background:#f3d47c; color:#5a3f0c; font-size:12px; vertical-align:middle; }
.badge.gift { background:linear-gradient(90deg,#e23f2e,#c92b1b); color:#fff; }
.badge.top { background:#2c2316; color:#f3d47c; }

/* --------- 按钮 --------- */
.btn { display:inline-block; padding:7px 16px; border-radius:6px; background:#e9dfc8; color:#4a3a1e; font-size:14px; border:1px solid #d9ccac; cursor:pointer; text-decoration:none; }
.btn:hover { background:#ddcfa9; }
.btn.full { width:100%; }
.btn.big { padding:12px 28px; font-size:16px; }
.btn-primary { background:linear-gradient(180deg,#e23f2e,#c92b1b); color:#fff; border-color:#c92b1b; box-shadow:0 2px 0 #7a1810; }
.btn-primary:hover { filter:brightness(1.05); color:#fff; }
.btn-gift { background:linear-gradient(180deg,#f6c65b,#d99a1b); color:#5a3400; border-color:#c38c16; box-shadow:0 2px 0 #8a5e10; }
.btn-gift b { color:#a30b0b; margin:0 3px; }
.btn-gift:hover { color:#5a3400; }
.btn-gift .quota { display:block; font-size:11px; color:#6a4500; margin-top:2px; }
.btn-gift-view { background:linear-gradient(180deg,#7ab87a,#5a9f5a) !important; color:#fff !important; border-color:#5a9f5a !important; box-shadow:0 2px 0 #3a7f3a !important; }
.btn-gift-view:hover { filter:brightness(1.05); }
.btn-disabled { background:#eee; color:#aaa; border-color:#ddd; }
.btn-go { min-width:86px; text-align:center; }

/* --------- 顶部公告条 --------- */
.topbar { background:#2c2316; color:#e8dcb8; font-size:12px; line-height:32px; width:1420px; margin:0 auto; }
.topbar a { color:#f3d47c; }
.topbar .healthy { color:#f3d47c; }

/* --------- 头部 --------- */
.site-header { background:#fff; border-bottom:3px solid #c92b1b; padding:18px 0 6px; width:1420px; margin:0 auto; }
.logo { display:flex; align-items:baseline; flex-shrink:0; }
.logo-main { font-size:36px; font-weight:900; color:#c92b1b; letter-spacing:-1px; font-family:Georgia, serif; }
.logo-sub { margin-left:6px; font-size:14px; color:#8a6a22; background:#f3d47c; padding:2px 8px; border-radius:3px; }
.search-form { display:flex; align-items:center; border:2px solid #c92b1b; border-radius:30px; overflow:hidden; background:#fff; width:520px !important; flex-shrink:0 !important; }
.search-form input { flex:1; border:none; padding:8px 14px; font-size:14px; min-width:0; }
.chk-gift { display:flex; align-items:center; padding:0 8px; color:#5a3400; font-size:13px; white-space:nowrap; }
.chk-gift input { margin-right:4px; }
.btn-search { background:#c92b1b; color:#fff; padding:8px 22px; font-size:14px; border-radius:30px; margin-right:2px; }
.header-cta { flex-shrink:0; }
.header-cta .btn-contract { display:block; padding:10px 18px; background:linear-gradient(90deg,#f6c65b,#d99a1b); color:#5a3400; border-radius:30px; font-weight:600; box-shadow:0 2px 0 #8a5e10; }
.hot-keys { padding:6px 8px 0; font-size:13px; color:#8a7144; line-height:1.7; }
.hot-keys .label { color:#9a8a6c; font-weight:500; }
.hot-keys .key { display:inline-block; margin:0 4px; color:#c92b1b; text-decoration:none; }
.hot-keys .key:hover { text-decoration:underline; }

/* 搜索结果关键词高亮 */
mark.kw-highlight { background:#ffe066; color:#c92b1b; padding:0 2px; border-radius:2px; font-weight:600; }
/* 通用关键词高亮（广告列表等） */
.highlight { background:#fff59d; color:#c92b1b; font-weight:700; padding:0 1px; border-radius:2px; }
#searchResultCount { display:none; padding:8px 14px; margin:0 0 8px; background:#fff8e0; border:1px solid #f0d48e; border-radius:4px; font-size:13px; color:#8a5a00; font-weight:500; }
.hot-keys .key.active-kw { background:#c92b1b; color:#fff; padding:1px 7px; border-radius:10px; }
.hot-keys .key.active-kw:hover { text-decoration:none; }

/* --------- 分类导航 --------- */
.site-nav { background:linear-gradient(180deg,#3a2a17,#2c2316); border-bottom:3px solid #c92b1b; width:1420px; margin:0 auto; overflow:hidden; }
.nav-list { display:flex; flex-wrap:nowrap; white-space:nowrap; }
.nav-list li { flex:0 0 auto; }
.nav-list li a { display:block; padding:14px 12px; color:#f3d47c; font-size:15px; position:relative; white-space:nowrap; overflow:hidden; text-overflow:ellipsis; }
.nav-list li a:hover { color:#fff; background:rgba(255,255,255,.05); }
.nav-list li.active a { color:#fff; background:#c92b1b; }

/* --------- 主体 --------- */
.site-main { padding:20px 0 40px; min-height:600px; }
body.page-user .site-main { padding:20px 0 40px; }
.btn-back-home { display:inline-flex; align-items:center; gap:3px; padding:3px 10px; background:#c92b1b; color:#fff; border-radius:3px; font-size:12px; font-weight:500; text-decoration:none; transition:all .15s; line-height:1.4; }
.btn-back-home:hover { background:#e23f2e; color:#fff; }
.site-footer-simple { background:#2c2316; color:#9a8a6c; padding:16px 0; margin-top:40px; }
.site-footer-simple .footer-icp { border:none; padding:0; }
.site-footer-simple .footer-icp .sep { margin:0 6px; }
.block-head { display:flex; align-items:center; padding:10px 4px; margin:16px 0 10px; border-bottom:2px solid #f3d47c; }
.block-head h3 { font-size:18px; color:#2c2316; margin-right:10px; }
.block-head .icon-dot { width:14px; height:14px; border-radius:3px; background:#c92b1b; margin-right:8px; transform:rotate(45deg); }
.block-head .icon-dot.new { background:#f6c65b; }
.block-head .icon-dot.gift { background:linear-gradient(135deg,#f6c65b,#d99a1b); }
.block-head .more { margin-left:auto; color:#c92b1b; font-size:13px; }
.block-head .hint { margin-left:12px; color:#8a7144; font-size:13px; }

/* --------- 广告卡片 --------- */
.ad-grid { display:grid; gap:14px; }
.ad-grid.cols-4 { grid-template-columns: repeat(4, 1fr); }
.ad-grid.cols-6 { grid-template-columns: repeat(6, 1fr); }
.ad-grid.cols-8 { grid-template-columns: repeat(6, 1fr); }
/* 响应式布局已禁用，保持固定宽度不变形 */
.ad-card { background:#fff; border:1px solid #e8dcb8; border-radius:8px; overflow:hidden; display:flex; flex-direction:column; transition:transform .15s, box-shadow .15s; }
.ad-card:hover { transform:translateY(-2px); box-shadow:0 6px 18px rgba(100,50,0,.12); border-color:#f3d47c; }
.ad-card.gift-highlight { background:linear-gradient(180deg,#fff8e0,#fff); border-color:#f6c65b; }
.ad-thumb { position:relative; aspect-ratio: 16/9; background:#2c2316; overflow:hidden; }
.ad-thumb img { width:100%; height:100%; object-fit:cover; }
.ad-thumb-placeholder { width:100%; height:100%; display:flex; align-items:center; justify-content:center; background:linear-gradient(135deg,#c92b1b,#8a1810); color:#f3d47c; font-weight:700; font-size:18px; text-align:center; padding:10px; }
.ad-thumb-placeholder .version-text { text-shadow:0 2px 6px rgba(0,0,0,.5); }
.tag-top, .tag-hot, .tag-gift { position:absolute; top:8px; padding:2px 7px; font-size:11px; color:#fff; border-radius:3px; font-weight:600; }
.tag-top { left:8px; background:#2c2316; color:#f3d47c; }
.tag-hot { left:8px; background:linear-gradient(90deg,#e23f2e,#c92b1b); }
.tag-top + .tag-hot { left:56px; }
.tag-gift { right:8px; background:linear-gradient(90deg,#f6c65b,#d99a1b); color:#5a3400; }
.ad-body { padding:10px 12px 14px; display:flex; flex-direction:column; gap:6px; flex:1; }
.ad-title-row { display:flex; flex-direction:column; line-height:1.3; }
.ad-name { font-weight:700; color:#2c2316; font-size:15px; }
.ad-name:hover { color:#c92b1b; }
.ad-sub { font-size:12px; color:#c92b1b; font-weight:600; letter-spacing:.5px; }
.ad-cats .cat-chip { display:inline-block; background:#f3ece0; color:#7a5b28; padding:1px 8px; font-size:11px; border-radius:3px; margin-right:4px; }
.ad-desc { font-size:12px; color:#6b583b; line-height:1.5; height:36px; overflow:hidden; }
.ad-actions { display:flex; gap:8px; margin-top:auto; padding-top:6px; }
.ad-actions .btn { flex:1; padding:6px 8px; font-size:13px; text-align:center; display:flex; align-items:center; justify-content:center; flex-direction:column; line-height:1.2; }
.ad-meta { display:flex; justify-content:space-between; font-size:11px; color:#9a8a6c; padding-top:4px; border-top:1px dashed #e8dcb8; }

/* --------- 首页 --------- */
.home-banner { border-radius:8px; overflow:hidden; border:1px solid #f3d47c; margin:6px 0 14px; }
.swiper { width:100%; aspect-ratio: 24 / 5; background:#2c2316; display:flex; align-items:stretch; }
.swiper .banner-item { flex:1; display:flex; }
.swiper .banner-item img { width:100%; height:100%; object-fit:cover; }
.home-cooperate { margin:20px 0; }
.cpc-banner { display:block; padding:22px; border-radius:10px; background:linear-gradient(90deg,#c92b1b,#8a1810); color:#fff; text-align:center; box-shadow:0 4px 0 #5a0f08; }
.cpc-banner .cpc-main { font-size:22px; font-weight:700; }
.cpc-banner .cpc-sub { font-size:14px; color:#f3d47c; margin-top:4px; }
.cpc-banner:hover { color:#fff; filter:brightness(1.05); }

/* 右侧签到按钮（固定定位，不随页面滑动） */
.float-signin { position:fixed; right:20px; top:240px; z-index:999; width:56px; height:56px; border-radius:50%; background:linear-gradient(180deg,#e23f2e,#c92b1b); color:#fff; display:flex; align-items:center; justify-content:center; box-shadow:0 4px 14px rgba(201,43,27,.45); text-decoration:none; font-size:16px; font-weight:700; letter-spacing:1px; transition:transform .15s, box-shadow .15s; }
.float-signin:hover { transform:scale(1.1); color:#fff; box-shadow:0 6px 20px rgba(201,43,27,.55); }

/* 礼包弹窗 - 会员兑换信息条 */
.gm-exchange-info { background:#fff8e0; border:1px solid #f0d48e; border-radius:6px; padding:10px 14px; margin-bottom:12px; }
.gm-exchange-info .gm-exchange-line { font-size:15px; color:#5a3400; font-weight:600; margin-bottom:4px; }
.gm-exchange-info .gm-coins-line { font-size:13px; color:#6a4500; margin-bottom:2px; }
.gm-exchange-info .gm-coins-line b { color:#c92b1b; font-weight:700; }
.gm-exchange-info .gm-quota-line { font-size:13px; color:#6a4500; }
.gm-exchange-info .gm-quota-line b { color:#c92b1b; font-weight:700; }

/* 礼包弹窗 - 警告小字 */
.gm-warn-tip { margin-top:12px; padding:10px 12px; background:#fff4f0; border:1px solid #f5c8b8; border-radius:4px; font-size:12px; color:#a30b0b; line-height:1.7; }

/* 礼包弹窗 - 已抢光按钮 */
.btn-gift[disabled] { background:#aaa !important; color:#fff !important; border-color:#999 !important; cursor:not-allowed !important; box-shadow:none !important; }

/* --------- 领取记录页 --------- */
.claims-page { background:#fff; border:1px solid #e8dcb8; border-radius:8px; padding:20px 24px; margin:10px 0 30px; }
.claims-title { font-size:22px; color:#2c2316; font-weight:700; margin-bottom:10px; text-align:center; }
.claims-tip { font-size:13px; color:#8a5a00; background:#fff8e0; border:1px solid #f0d48e; border-radius:4px; padding:8px 12px; margin-bottom:16px; text-align:center; }
.claims-table-wrap { overflow-x:auto; }
.claims-table { width:100%; border-collapse:collapse; font-size:13px; }
.claims-table thead th { background:linear-gradient(180deg,#faf4e5,#f3e8c8); color:#5a3f0c; font-weight:600; padding:10px 8px; text-align:center; border-bottom:2px solid #c92b1b; border-right:1px solid #d9ccac; white-space:nowrap; }
.claims-table thead th:last-child { border-right:none; }
.claims-table tbody td { padding:8px; text-align:center; border-bottom:1px solid #f0e6d0; border-right:1px solid #f0e6d0; font-size:13px; color:#2c2316; }
.claims-table tbody td:last-child { border-right:none; }
.claims-table tbody tr:hover { background:#fffbe8; }
.claims-status { display:inline-block; padding:2px 8px; border-radius:3px; font-size:12px; font-weight:600; }
.claims-status.st-done { background:#e6f9ee; color:#2f8545; }
.claims-status.st-pending { background:#fff4d6; color:#8a5e10; }
.claims-status.st-reject { background:#ffeaea; color:#c92b1b; }
.claims-empty { padding:40px 0; text-align:center; color:#9a8a6c; }
.claims-foot { padding:10px 8px; text-align:center; font-size:13px; color:#5a3f0c; background:#faf4e5; font-weight:600; }

.gift-block .ad-actions .btn-gift { box-shadow:0 2px 0 #5a3400; }

/* --------- 列表/详情 --------- */
.list-crumb { padding:6px 2px; color:#8a7144; font-size:13px; }
.list-crumb b { color:#2c2316; font-weight:600; }
.empty { padding:60px 20px; text-align:center; color:#9a8a6c; background:#fff; border:1px dashed #e8dcb8; border-radius:8px; }
.empty.ok { color:#2f8545; border-color:#bfe5c9; background:#f2fbf4; }
.pager { padding:20px 4px; }
.pager ul.pagination { list-style:none; padding:0; margin:0; display:flex; justify-content:center; gap:6px; }
.pager ul.pagination li { display:inline-block; }
.pager ul.pagination li a, .pager ul.pagination li span {
  display:inline-block; padding:5px 12px; border:1px solid #e0d2b0; border-radius:4px;
  font-size:13px; color:#5a4a2e; text-decoration:none; background:#fff; transition:all .2s;
}
.pager ul.pagination li a:hover { border-color:#c92b1b; color:#c92b1b; }
.pager ul.pagination li.active span { background:#c92b1b; color:#fff; border-color:#c92b1b; }
.pager ul.pagination li.disabled span { color:#b0a48c; cursor:not-allowed; background:#f7f2e6; }

/* --------- 列表表格样式（首页游戏列表） --------- */
.ad-list-wrap { background:#fff; border:1px solid #d9ccac; border-radius:8px; overflow:hidden; }
.ad-future-wrap { background:#fff; border:1px dashed #d4b87a; border-radius:8px; margin-top:2px; }
.ad-future-wrap .ad-list-tbl tbody tr { background:#fefaf0; }
.ad-future-wrap .ad-list-tbl tbody tr:hover { background:#f8eed2; }
.ad-list-row.ad-future-row .col-recommend span { letter-spacing:1px; }
.ad-list-tbl { border-collapse:collapse; font-size:13px; table-layout:fixed; width:1273px; }
.ad-list-tbl thead th {
  background:#f0e2bf;
  color:#2c1e04;
  font-weight:600;
  padding:10px 6px;
  text-align:center;
  border-bottom:2px solid #c92b1b;
  border-right:1px solid #d9ccac;
  white-space:nowrap;
  box-sizing:border-box;
}
.ad-list-tbl thead th:last-child { border-right:none; }
.ad-list-tbl tbody tr {
  background:#fdf8ed;
  border-bottom:1px solid #f0e6d0;
  transition:background .15s;
  height:34px;
}
.ad-list-tbl tbody tr:hover {
  background:#f7ecd0;
}
.ad-list-tbl tbody tr:last-child { border-bottom:none; }
.ad-list-tbl td {
  padding:0 6px;
  vertical-align:middle;
  text-align:center;
  white-space:nowrap;
  overflow:visible;
  border-right:1px solid #f0e6d0;
  height:34px;
  box-sizing:border-box;
}
.ad-list-tbl td:last-child { border-right:none; }

/* 列宽 - 固定像素（总和 = 表格宽度 1273px） */
.col-recommend { width:45px; }
.col-name { width:120px; text-align:left; }
.col-ip { width:120px; text-align:left; }
.col-line { width:90px; }
.col-version { width:250px; text-align:left; }
.col-rating { width:80px; padding:0; cursor:pointer; user-select:none; }
.col-gift { width:325px; text-align:left; }
.col-qq { width:92px; }
.col-action { width:76px; }
.col-welfare { width:75px; }

/* ============ 评分列样式（红金奢华主题） ============ */
.col-rating .rating-wrapper {
  display:flex;
  flex-direction:column;
  align-items:center;
  justify-content:center;
  line-height:1.1;
  padding:3px 0;
  transition:transform .15s;
}
.col-rating:hover .rating-wrapper {
  transform:scale(1.05);
}
.col-rating:hover {
  background:linear-gradient(180deg,#fff8e1,#ffe9a8) !important;
}
.rating-stars {
  position:relative;
  display:inline-block;
  font-size:15px;
  letter-spacing:2px;
  line-height:1.1;
  color:#ddd;
  text-shadow:0 1px 0 rgba(0,0,0,.08);
}
.rating-stars .rating-stars-base {
  color:#d9cfb3;
}
.rating-stars .rating-stars-fill {
  position:absolute;
  left:0; top:0;
  display:inline-block;
  width:0;
  overflow:hidden;
  white-space:nowrap;
  background:linear-gradient(135deg,#ffcf52,#f3d47c 40%,#ffb400);
  -webkit-background-clip:text;
  background-clip:text;
  -webkit-text-fill-color:transparent;
  color:#f3b500;
  filter:drop-shadow(0 1px 0 rgba(190,132,0,.35));
}
.rating-count {
  display:flex;
  align-items:baseline;
  justify-content:center;
  gap:4px;
  margin-top:3px;
  font-size:11px;
  white-space:nowrap;
}
.rating-count .rating-num {
  font-size:13px;
  color:#c92b1b;
  font-weight:700;
}
.rating-count .rating-total {
  color:#7b6743;
}
.rating-count .rating-empty {
  color:#a89b7c;
}
.rating-count .rating-warn {
  color:#8a5e10;
  background:#fff4d6;
  border:1px dashed #d8bd7d;
  font-style:normal;
  border-radius:10px;
  padding:1px 6px;
  margin-left:4px;
  font-size:11px;
  line-height:1;
  display:inline-block;
}


/* 推荐徽章 */
.ad-list-tbl .rec-badge {
  display:inline-block;
  padding:3px 8px;
  border-radius:3px;
  font-size:12px;
  font-weight:700;
}
.ad-list-tbl .rec-top { background:#2c2316; color:#f3d47c; }
.ad-list-tbl .rec-hot { background:linear-gradient(90deg,#e23f2e,#c92b1b); color:#fff; }
.ad-list-tbl .rec-default { background:#f3ece0; color:#6b583b; }

/* 保障徽章 - 流光渐变流动 */
.ad-list-tbl .rec-guarantee {
  background-image:linear-gradient(90deg,#c92b1b,#f3d47c,#c92b1b) !important;
  background-size:200% 100% !important;
  background-position:0% 0;
  color:#fff !important;
  font-size:13px;
  font-weight:700;
  text-shadow:0 1px 2px rgba(0,0,0,0.4);
  border:1px solid #f3d47c;
  cursor:pointer;
  position:relative;
  z-index:1;
  overflow:hidden;
  animation:guaranteeFlow 1.6s linear infinite, guaranteeGlow 2.4s ease-in-out infinite;
}
@keyframes guaranteeFlow {
  0%   { background-position:0% 0; }
  100% { background-position:200% 0; }
}
/* 流光扫过光带 */
.ad-list-tbl .rec-guarantee::after {
  content:'';
  position:absolute;
  top:0;
  left:-60%;
  width:32%;
  height:100%;
  background:linear-gradient(100deg,transparent,rgba(255,255,255,0.85),rgba(255,255,255,0.35),transparent);
  transform:skewX(-20deg);
  animation:guaranteeShine 2.4s ease-in-out infinite;
}
@keyframes guaranteeShine {
  0%   { left:-60%; }
  55%  { left:120%; }
  100% { left:120%; }
}
/* 边缘柔和呼吸发光 */
@keyframes guaranteeGlow {
  0%,100% { box-shadow:0 0 4px rgba(201,43,27,0.4),0 0 0 1px rgba(243,212,124,0.3); }
  50%     { box-shadow:0 0 14px rgba(243,212,124,0.7),0 0 0 1px rgba(243,212,124,0.6); }
}
/* 保障tooltip（全局浮层） */
.guarantee-tooltip {
  position:fixed;
  background:linear-gradient(180deg,#2c0a06,#1a0503);
  color:#f3d47c;
  padding:12px 16px;
  border-radius:8px;
  border:1px solid #c92b1b;
  font-size:13px;
  font-weight:400;
  line-height:1.8;
  white-space:pre-line;
  box-shadow:0 4px 16px rgba(0,0,0,0.5);
  z-index:99999;
  pointer-events:none;
  display:none;
  max-width:300px;
}
.guarantee-tooltip::before {
  content:'';
  position:absolute;
  top:-7px;
  left:50%;
  transform:translateX(-50%);
  border:7px solid transparent;
  border-top-color:#c92b1b;
  border-bottom:none;
}

/* 可点击单元格链接 */
.ad-list-tbl .cell-link {
  color:#000;
  text-decoration:none;
  font-weight:normal;
  white-space:nowrap;
}
.ad-list-tbl .cell-link:hover { color:#c92b1b; text-decoration:underline; }
.ad-list-tbl .name-link { font-size:14px; }
.ad-list-tbl .ip-link {
  font-size:14px;
  color:#000;
  font-weight:normal;
}
.ad-list-tbl .col-version span {
  font-size:13px;
  color:#000;
  font-weight:normal;
}

/* 版本介绍 */
.ad-list-tbl .version-text {
  color:#000;
  font-size:13px;
  font-weight:normal;
  white-space:nowrap;
}

/* 礼包 - 单行，固定宽度对齐，不换行 */
.ad-list-tbl .gift-row {
  display:flex;
  align-items:center;
  white-space:nowrap;
  font-size:12.6px;
  margin-left:0;
  height:34px;
  line-height:34px;
}
.ad-list-tbl .gift-text {
  display:block;
  white-space:nowrap;
  color:#c92b1b;
  font-weight:700;
  box-sizing:border-box;
}
.ad-list-tbl .gift-text.gift-amount {
  flex:1 1 auto;
  min-width:0;
  white-space:nowrap;
}
.ad-list-tbl .gift-text.gift-quota-label {
  flex:0 0 26px;
  margin-left:3px;
  color:#5a4a2e;
  font-weight:400;
  white-space:nowrap;
}
.ad-list-tbl .gift-text.gift-quota-num {
  flex:0 0 46px;
  margin-left:1px;
  margin-right:3px;
  color:#5a4a2e;
  font-weight:400;
  text-align:left;
  white-space:nowrap;
}
.ad-list-tbl .btn-gift {
  flex:0 0 66px;
  width:66px;
  margin-left:0;
  margin-right:4px;
  transform:translateX(-3px);
  text-align:center;
  font-size:12.6px;
  box-sizing:border-box;
  overflow:hidden;
  white-space:nowrap;
  letter-spacing:1px;  
}
.ad-list-tbl .btn-gift.btn-gift-countdown {
  font-size:11.5px;
  letter-spacing:0;
  padding:1px 2px;
  line-height:22px;
}
.ad-list-tbl .btn-gift.btn-gift-countdown .countdown-text {
  font-weight:700;
  font-size:12px;
}

.btn-gift {
  display:inline-block;
  padding:1px 6px;
  background:linear-gradient(180deg,#f6c65b,#d99a1b);
  color:#5a3400;
  border:1px solid #c38c16;
  border-radius:3px;
  font-size:13px;
  font-weight:700;
  cursor:pointer;
  transition:filter .15s;
  white-space:nowrap;
  line-height:22px;
  height:24px;
}
.btn-gift:hover { filter:brightness(1.05); }
.btn-claims-link {
  display:inline-block;
  padding:1px 6px;
  background:#f3ece0;
  color:#6b583b;
  border:1px solid #d9ccac;
  border-radius:3px;
  font-size:12px;
  font-weight:600;
  text-decoration:none;
  white-space:nowrap;
  transition:background .15s;
  flex:0 0 56px;
  line-height:21px;
  height:24px;
  text-align:center;
  transform:translateX(-1px) translateY(1px);
  box-sizing:border-box;
}
.btn-claims-link:hover { background:#e8dcb8; color:#6b583b; }

/* 进入网站按钮 */
.btn-enter {
  color:#000;
  font-size:14px;
  text-decoration:none;
  white-space:nowrap;
  cursor:pointer;
}
.btn-enter:hover { color:#c92b1b; text-decoration:underline; }

/* 官方福利按钮 */
.btn-welfare {
  color:#c92b1b;
  font-size:14px;
  font-weight:600;
  text-decoration:none;
  white-space:nowrap;
  cursor:pointer;
}
.btn-welfare:hover { text-decoration:underline; }
.detail-hero { display:grid; grid-template-columns: 420px 1fr; gap:24px; background:#fff; padding:18px; border-radius:10px; border:1px solid #e8dcb8; margin-bottom:20px; }
.detail-cover { background:#2c2316; border-radius:8px; aspect-ratio: 16/9; overflow:hidden; }
.detail-cover img { width:100%; height:100%; object-fit:cover; }
.detail-cover-placeholder { width:100%; height:100%; display:flex; align-items:center; justify-content:center; color:#f3d47c; font-size:24px; }
.detail-meta h1 { font-size:24px; color:#2c2316; display:flex; align-items:center; gap:10px; }
.detail-meta .sub { color:#c92b1b; font-size:16px; font-weight:600; margin:6px 0 10px; }
.detail-meta .ver-desc { color:#5a4a2e; line-height:1.8; }
.detail-actions { display:flex; gap:12px; margin:14px 0; }
.detail-info-row { display:grid; grid-template-columns:repeat(3,1fr); gap:10px; border-top:1px dashed #e8dcb8; padding-top:14px; }
.detail-info-row li { padding:6px 12px; background:#faf4e5; border-radius:6px; font-size:13px; display:flex; justify-content:space-between; }
.gift-detail-card { background:#fff; padding:18px; border:1px solid #f3d47c; border-radius:8px; }
.gift-row { display:flex; padding:8px 0; border-bottom:1px dashed #f3d47c; }
.gift-row:last-child { border-bottom:none; }
.gift-row label { width:120px; color:#8a7144; flex-shrink:0; }
.gift-row span { color:#2c2316; }

/* --------- 登录/注册 --------- */
.auth-page { padding:40px 0; }
.auth-card { width:420px; margin:0 auto; background:#fff; padding:30px; border-radius:12px; border:1px solid #e8dcb8; box-shadow:0 6px 24px rgba(100,50,0,.08); }
.auth-card.big { width:540px; }
.auth-card h3 { text-align:center; color:#c92b1b; margin-bottom:20px; font-size:22px; }

/* --------- 表单 --------- */
.form-row { margin-bottom:14px; }
.form-row label { display:block; font-size:13px; color:#5a4a2e; margin-bottom:5px; }
.form-row label .req { color:#c92b1b; }
.form-row.grid-2 { display:grid; grid-template-columns:1fr 1fr; gap:14px; }
.form-row.grid-3 { display:grid; grid-template-columns:repeat(3,1fr); gap:14px; }
.form-row.grid-4 { display:grid; grid-template-columns:repeat(4,1fr); gap:14px; }
.form-row input[type=text],
.form-row input[type=password],
.form-row input[type=email],
.form-row input[type=number],
.form-row input[type=datetime-local],
.form-row textarea,
.form-row select {
  width:100%; padding:9px 12px; border:1px solid #d9ccac; border-radius:6px; font-size:14px; background:#fefcf5;
}
.form-row input:focus, .form-row textarea:focus, .form-row select:focus { border-color:#c92b1b; background:#fff; box-shadow:0 0 0 3px rgba(201,43,27,.08); }
.form-row .captcha-row { display:flex; gap:10px; align-items:center; }
.form-row .captcha-row input { flex:1; }
.form-row .captcha-row img { width:120px; height:40px; border-radius:4px; cursor:pointer; border:1px solid #e8dcb8; }
.form-row.agreement label { display:flex; align-items:center; font-size:13px; color:#5a4a2e; gap:6px; }
.form-tip { color:#8a7144; font-size:12px; margin-top:6px; }
.chk { display:flex; align-items:center; gap:6px; color:#5a4a2e; }

/* --------- 用户中心 --------- */
.user-page { display:grid; grid-template-columns:220px 1fr; gap:20px; }
.user-side { background:#fff; border:1px solid #e8d9b0; border-radius:8px; padding:14px; height:fit-content; }
.side-head { text-align:center; padding-bottom:12px; border-bottom:1px dashed #e8d9b0; }
.side-head .avatar { width:64px; height:64px; line-height:64px; text-align:center; border-radius:50%; background:#faf6ed; color:#2a1c05; border:2px solid #e4d091; font-size:26px; font-weight:700; margin:0 auto 8px; }
.side-head .name { font-weight:600; color:#2c2316; }
.side-menu { margin-top:10px; }
.side-menu li a { display:block; padding:10px 12px; border-radius:6px; color:#5a4a2e; }
.side-menu li a:hover { background:#faf6ed; }
.side-menu li.active a { background:#faf6ed; color:#2a1c05; font-weight:600; border:1px solid #e4d091; }
.stat-grid { display:grid; grid-template-columns:repeat(4,1fr); gap:14px; margin-bottom:18px; }
.stat-card { background:#fff; border:1px solid #e8d9b0; border-radius:8px; padding:18px; }
.stat-card .k { font-size:12px; color:#8a7144; }
.stat-card .v { font-size:26px; font-weight:700; color:#2c2316; margin-top:4px; }
.stat-card .v small { font-size:13px; font-weight:400; color:#9a8a6c; }
.stat-card .v.ok { color:#2f8545; }
.stat-card .v.warn { color:#c97a1b; }
.panel { background:#fff; border:1px solid #e8d9b0; border-radius:8px; padding:16px; }
.panel + .panel { margin-top:18px; }
.panel-head { font-size:16px; font-weight:700; color:#2c2316; padding-bottom:10px; margin-bottom:12px; border-bottom:1px solid #f3ece0; }
.panel-foot { padding-top:12px; }
.info-list li { display:flex; padding:8px 4px; border-bottom:1px dashed #f3ece0; }
.info-list li span { width:110px; color:#8a7144; font-size:13px; }
.info-list li b { color:#2c2316; font-weight:500; }
.info-list li.active { background:#faf6ed; border-left:3px solid #a8731a; padding-left:8px; }
.info-list li.active span { color:#5c441d; font-weight:600; }
.info-list li.active b { color:#2a1c05; font-weight:700; }

/* --------- 金币清零提示 --------- */
.coin-tip { background:#fff4e6; border:1px solid #f5c65b; border-radius:8px; padding:10px 16px; margin:12px 0; color:#c97a1b; font-size:14px; font-weight:600; text-align:center; }

/* --------- 签到页面 --------- */
.signin-hero { background:linear-gradient(135deg,#fff8e8,#f5e6c8); border:1px solid #e8dcb8; border-radius:10px; padding:24px; display:flex; align-items:center; justify-content:space-between; gap:20px; }
.signin-hero-info { display:flex; flex-direction:column; gap:8px; }
.signin-coins-display { display:flex; align-items:baseline; gap:8px; }
.signin-coins-display .coin-icon { font-size:14px; color:#8a7144; }
.signin-coins-display .coin-num { font-size:36px; font-weight:700; color:#c92b1b; }
.signin-vip-tag { display:inline-block; padding:3px 12px; background:#2c2316; color:#f5c65b; border-radius:20px; font-size:13px; font-weight:600; width:fit-content; }
.signin-action { text-align:center; }
.btn-signin { display:block; width:160px; padding:14px 0; font-size:18px; font-weight:700; color:#fff; background:linear-gradient(180deg,#e8422e,#c92b1b); border:none; border-radius:30px; cursor:pointer; box-shadow:0 3px 0 #8a1e12; transition:all .2s; }
.btn-signin:hover { transform:translateY(-1px); box-shadow:0 4px 0 #8a1e12; }
.btn-signin:active { transform:translateY(1px); box-shadow:0 1px 0 #8a1e12; }
.btn-signin.done { background:#ccc; box-shadow:0 3px 0 #999; cursor:default; }
.signin-hint { margin-top:8px; font-size:13px; color:#8a7144; }
.signin-hint b { color:#c92b1b; }
.signin-table { width:100%; border-collapse:collapse; }
.signin-table th, .signin-table td { border-bottom:1px solid #f3ece0; padding:8px 12px; text-align:left; font-size:13px; }
.signin-table th { background:#faf4e5; color:#5a4a2e; font-weight:600; }
.signin-table td:nth-child(2) { color:#c92b1b; font-weight:600; }

/* --------- 表格 --------- */
.tbl { width:100%; border-collapse: collapse; }
.tbl th, .tbl td { border-bottom:1px solid #f3ece0; padding:10px 12px; text-align:left; vertical-align:top; font-size:13px; }
.tbl th { background:#faf4e5; color:#5a4a2e; font-weight:600; }
.tbl tr:hover td { background:#fffbe8; }
.tbl td a { color:#c92b1b; margin-right:8px; }

.msg-list li { padding:12px 8px; border-bottom:1px solid #f3ece0; display:flex; gap:10px; align-items:flex-start; }
.msg-list .type { padding:3px 8px; border-radius:4px; background:#eee; font-size:12px; flex-shrink:0; }
.msg-list .type.t1 { background:#e6f2ff; color:#1f5fa3; }
.msg-list .type.t2 { background:#ffe8e8; color:#c92b1b; }
.msg-list .type.t3 { background:#fff4d6; color:#8a5e10; }
.msg-list .type.t4 { background:#e6f9ee; color:#2f8545; }
.msg-list .msg-body { flex:1; }
.msg-list .title { font-weight:600; color:#2c2316; }
.msg-list .content { color:#6b583b; font-size:13px; margin-top:4px; }
.msg-list .time { font-size:12px; color:#9a8a6c; flex-shrink:0; }
.msg-item.read .title { color:#6b583b; font-weight:400; }

/* --------- 合作页 --------- */
.contact-page { padding:24px; background:#fff; border:1px solid #e8dcb8; border-radius:10px; margin:14px auto; }
.contact-page h2 { color:#c92b1b; margin-bottom:8px; }
.contact-page .lead { color:#5a4a2e; margin-bottom:20px; }
.contact-form { width:620px; max-width:100%; }

/* --------- VIP Upgrade Page --------- */
.vip-hero { position:relative; border-radius:10px; overflow:hidden; margin-bottom:18px; box-shadow:0 4px 14px rgba(201,43,27,.15); }
.vip-hero-bg { position:absolute; inset:0; background:linear-gradient(135deg,#c92b1b 0%,#8a1810 50%,#5a0f08 100%); }
.vip-hero-bg::before { content:''; position:absolute; inset:0; background:radial-gradient(ellipse at 30% 50%,rgba(243,212,124,.18),transparent 70%); }
.vip-hero-bg::after { content:''; position:absolute; inset:0; background:repeating-linear-gradient(45deg,transparent,transparent 18px,rgba(243,212,124,.04) 18px,rgba(243,212,124,.04) 36px); }
.vip-hero-content { position:relative; padding:20px 24px; text-align:center; color:#fff; }
.vip-hero-content h2 { font-size:20px; margin-bottom:5px; text-shadow:0 2px 4px rgba(0,0,0,.3); color:#fff; letter-spacing:2px; }
.vip-hero-content h2::before, .vip-hero-content h2::after { content:'◆'; color:#f3d47c; font-size:13px; margin:0 8px; vertical-align:middle; }
.vip-hero-content p { font-size:12px; opacity:.9; margin-bottom:8px; color:#f3d47c; letter-spacing:1px; }
.vip-hero-current { display:inline-block; background:rgba(0,0,0,.25); border:1px solid rgba(243,212,124,.5); border-radius:16px; padding:4px 16px; font-size:12px; color:#fff; }
.vip-current-name { color:#f3d47c; font-weight:700; }

.vip-cards { display:flex; gap:30px; justify-content:space-between; margin-bottom:24px; padding:4px 0; }
.vip-card { flex:1; max-width:288px; border-radius:10px; overflow:hidden; position:relative; display:flex; flex-direction:column; transition:transform .25s,box-shadow .25s; background:#fff; }
.vip-card:hover { transform:translateY(-4px); }
.vip-card-lv1 { border:2px solid #c0c0c0; box-shadow:0 4px 14px rgba(180,180,180,.25); margin-right:20px; }
.vip-card-lv2 { border:2px solid #e6a800; box-shadow:0 4px 16px rgba(230,168,0,.3); }
.vip-card-lv3 { border:2px solid #c92b1b; box-shadow:0 5px 18px rgba(201,43,27,.35); margin-left:20px; }
.vip-card.current { box-shadow:0 0 0 3px rgba(243,212,124,.5),0 6px 20px rgba(0,0,0,.15); }
.vip-card.disabled { opacity:.5; filter:grayscale(.4); }
.vip-card.disabled:hover { transform:none; }
.vip-badge-current { position:absolute; top:-1px; right:-1px; background:linear-gradient(135deg,#f3d47c,#d99a1b); color:#5a3f0c; font-size:10px; font-weight:700; padding:3px 10px; border-radius:0 10px 0 10px; z-index:2; box-shadow:0 2px 6px rgba(0,0,0,.2); }

.vip-card-header { padding:26px 16px 20px; text-align:center; position:relative; }
.vip-card-lv1 .vip-card-header { background:linear-gradient(180deg,#fafafa 0%,#e0e0e0 100%); }
.vip-card-lv2 .vip-card-header { background:linear-gradient(180deg,#fff8d6 0%,#f3d47c 100%); }
.vip-card-lv3 .vip-card-header { background:linear-gradient(180deg,#c92b1b 0%,#5a0f08 100%); color:#fff; }
.vip-card-lv3 .vip-card-header::before { content:''; position:absolute; inset:0; background:radial-gradient(circle at 50% 30%,rgba(243,212,124,.25),transparent 70%); pointer-events:none; }
.vip-card-icon { width:52px; height:52px; margin:0 auto 12px; border-radius:50%; display:flex; align-items:center; justify-content:center; position:relative; }
.vip-icon-silver { background:linear-gradient(135deg,#f0f0f0,#b8b8b8); box-shadow:0 2px 8px rgba(192,192,192,.45),inset 0 1px 2px rgba(255,255,255,.6); }
.vip-icon-silver::after { content:''; width:29px; height:29px; background:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='%23888'%3E%3Cpath d='M12 2L2 7l10 5 10-5-10-5zM2 17l10 5 10-5M2 12l10 5 10-5'/%3E%3C/svg%3E") center/contain no-repeat; }
.vip-icon-gold { background:linear-gradient(135deg,#fff5b0,#e6a800); box-shadow:0 2px 8px rgba(230,168,0,.45),inset 0 1px 2px rgba(255,255,255,.6); }
.vip-icon-gold::after { content:''; width:29px; height:29px; background:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='%238a5e10'%3E%3Cpath d='M12 2L2 7l10 5 10-5-10-5zM2 17l10 5 10-5M2 12l10 5 10-5'/%3E%3C/svg%3E") center/contain no-repeat; }
.vip-icon-diamond { background:linear-gradient(135deg,#f3d47c,#d99a1b); box-shadow:0 2px 10px rgba(243,212,124,.5),inset 0 1px 2px rgba(255,255,255,.6); }
.vip-icon-diamond::after { content:''; width:29px; height:29px; background:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='%235a0f08'%3E%3Cpath d='M12 2L2 7l10 5 10-5-10-5zM2 17l10 5 10-5M2 12l10 5 10-5'/%3E%3C/svg%3E") center/contain no-repeat; }
.vip-level-name { font-size:23px; font-weight:800; color:#2c2316; line-height:1.2; letter-spacing:1px; }
.vip-card-lv3 .vip-level-name { color:#f3d47c; }
.vip-level-sub { font-size:13px; color:#8a7144; margin-top:3px; letter-spacing:2px; font-weight:600; }
.vip-card-lv3 .vip-level-sub { color:#f3d47c; opacity:.8; }

.vip-card-body { padding:16px 18px; flex:1; background:#fff; }
.vip-feature-item { display:flex; align-items:center; gap:10px; padding:10px 0; border-bottom:1px dashed #f0e6d0; }
.vip-feature-item:last-child { border-bottom:none; }
.vip-feature-icon { width:31px; height:31px; border-radius:7px; flex-shrink:0; display:flex; align-items:center; justify-content:center; background:#fff5f0; }
.vip-icon-coin { background:#fff5e0; }
.vip-icon-coin::after { content:''; width:17px; height:17px; background:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='%23d99a1b'%3E%3Cpath d='M12 2C6.48 2 2 6.48 2 12s4.48 10 10 10 10-4.48 10-10S17.52 2 12 2zm1 17h-2v-1.5c-1.66 0-3-.84-3-2h2c0 .55.71 1 1.5 1s1.5-.45 1.5-1c0-.66-1.08-.97-2.31-1.36C9.32 14.72 8 14.11 8 12.5c0-1.16.84-2 2-2V9h2v1.5c1.66 0 3 .84 3 2h-2c0-.55-.71-1-1.5-1s-1.5.45-1.5 1c0 .66 1.08.97 2.31 1.36C14.68 15.28 16 15.89 16 17.5c0 1.16-.84 2-2 2V19z'/%3E%3C/svg%3E") center/contain no-repeat; }
.vip-icon-discount { background:#fff0f0; }
.vip-icon-discount::after { content:''; width:17px; height:17px; background:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='%23c92b1b'%3E%3Cpath d='M19 9h-4V5c0-1.1-.9-2-2-2h-2c-1.1 0-2 .9-2 2v4H5c-1.1 0-2 .9-2 2v2c0 1.1.9 2 2 2h4v4c0 1.1.9 2 2 2h2c1.1 0 2-.9 2-2v-4h4c1.1 0 2-.9 2-2v-2c0-1.1-.9-2-2-2z'/%3E%3C/svg%3E") center/contain no-repeat; }
.vip-icon-gift { background:#fff8e0; }
.vip-icon-gift::after { content:''; width:17px; height:17px; background:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='%23c92b1b'%3E%3Cpath d='M20 6h-2.18c.11-.31.18-.65.18-1a2.996 2.996 0 0 0-5.5-1.65l-.5.67-.5-.68C10.88 2.44 9.5 2 8.5 2 6.57 2 5 3.57 5 5.5c0 .35.07.69.18 1H4c-1.11 0-1.99.89-1.99 2L2 19c0 1.11.89 2 2 2h16c1.11 0 2-.89 2-2V8c0-1.11-.89-2-2-2zm-5-2c.55 0 1 .45 1 1s-.45 1-1 1-1-.45-1-1 .45-1 1-1zM8.5 4c.55 0 1 .45 1 1s-.45 1-1 1-1-.45-1-1 .45-1 1-1zM20 19H4v-2h16v2zm0-5H4V8h5.08L7 10.83 8.62 12 11 8.76l1-1.36 1 1.36L15.38 12 17 10.83 14.92 8H20v6z'/%3E%3C/svg%3E") center/contain no-repeat; }
.vip-feature-info { flex:1; }
.vip-feature-label { font-size:13px; color:#8a7144; margin-bottom:3px; }
.vip-feature-value { font-size:17px; font-weight:700; color:#2c2316; }
.vip-feature-value small { font-size:12px; color:#9a8a6c; font-weight:400; }
.vip-feature-value.discount { color:#c92b1b; font-size:20px; }

.vip-card-bottom { padding:16px 20px 20px; background:linear-gradient(180deg,#fafafa,#f5f0e8); }
.vip-card-lv3 .vip-card-bottom { background:linear-gradient(180deg,#fafafa,#fff5f0); }
.btn-vip-upgrade { width:100%; padding:13px; border:none; border-radius:8px; font-size:16px; font-weight:700; cursor:pointer; transition:all .25s; color:#fff; letter-spacing:1px; position:relative; overflow:hidden; }
.vip-card-lv1 .btn-vip-upgrade { background:linear-gradient(135deg,#b8b8b8,#888); box-shadow:0 2px 0 #6a6a6a; }
.vip-card-lv2 .btn-vip-upgrade { background:linear-gradient(135deg,#f3d47c,#d99a1b); color:#5a3f0c; box-shadow:0 2px 0 #8a5e10; }
.vip-card-lv3 .btn-vip-upgrade { background:linear-gradient(135deg,#e23f2e,#c92b1b); box-shadow:0 2px 0 #7a1810; }
.btn-vip-upgrade:hover { filter:brightness(1.08); transform:translateY(-1px); box-shadow:0 3px 10px rgba(0,0,0,.18); }
.btn-vip-upgrade:active { transform:translateY(1px); box-shadow:0 1px 0 rgba(0,0,0,.2); }
.btn-vip-upgrade:disabled { cursor:not-allowed; transform:none; box-shadow:none; filter:none; }
.btn-vip-upgrade.btn-current { background:linear-gradient(135deg,#f3d47c,#d99a1b); color:#5a3f0c; box-shadow:0 2px 0 #8a5e10; }
.btn-vip-upgrade.btn-greyed { background:#e8e0d0; color:#aaa; box-shadow:none; }

.vip-benefits { background:#fff; border:1px solid #f0e6d0; border-radius:10px; overflow:hidden; box-shadow:0 3px 10px rgba(180,140,60,.1); }
.vip-benefits-title { padding:16px 24px; font-size:18px; font-weight:700; color:#5a3f0c; border-bottom:2px solid #c92b1b; background:linear-gradient(180deg,#fff8e0,#f3e8c8); display:flex; align-items:center; }
.vip-benefits-title::before { content:'◆'; color:#c92b1b; margin-right:10px; font-size:15px; }
.vip-compare-table { width:100%; border-collapse:collapse; }
.vip-compare-table th, .vip-compare-table td { padding:12px 16px; text-align:center; border-bottom:1px solid #f5f0e0; font-size:16px; }
.vip-compare-table th { background:#faf4e5; color:#5a3f0c; font-weight:700; border-bottom:2px solid #c92b1b; }
.vip-compare-table th:first-child, .vip-compare-table td:first-child { text-align:left; color:#2c2316; font-weight:600; background:#fffaf0; }
.vip-compare-table .col-silver { color:#888; font-weight:600; }
.vip-compare-table .col-gold { color:#b8860b; font-weight:600; }
.vip-compare-table .col-diamond { color:#c92b1b; font-weight:700; }
.vip-compare-table tbody tr:hover td { background:#fffbe8; }
.vip-compare-table tbody tr:last-child td { border-bottom:none; }

/* --------- Modal --------- */
.modal-mask { position:fixed; inset:0; background:rgba(30,15,5,.65); display:flex; align-items:center; justify-content:center; z-index:999; }
.modal-wrap { width:450px; max-width:94%; background:#fff; border-radius:8px; overflow:hidden; box-shadow:0 20px 60px rgba(0,0,0,.3); border:1px solid #c92b1b; }
.modal-wrap.small { width:480px; }
.modal-head { padding:14px 20px; text-align:center; position:relative; background:linear-gradient(180deg,#c92b1b,#8a1810); color:#fff; }
.modal-head .ad-name { font-size:18px; font-weight:700; color:#fff; }
.modal-close { position:absolute; right:14px; top:50%; transform:translateY(-50%); font-size:22px; color:#fff; line-height:1; padding:4px 8px; }
.modal-close:hover { color:#f3d47c; }
.modal-body { padding:20px 24px; }

/* 金额显示 */
.gm-amount-row { text-align:center; margin:12px 0 6px; }
.gm-amount { font-size:42px; font-weight:700; color:#c92b1b; line-height:1; }
.gm-amount-unit { font-size:20px; font-weight:700; color:#c92b1b; margin-left:4px; }

/* 数量行 */
.gm-quota-row { text-align:center; font-size:13px; color:#888; margin-bottom:4px; }
.gm-quota-row span { color:#c92b1b; font-weight:600; }

/* 兑换说明 */
.gm-exchange-row { text-align:center; font-size:14px; color:#5a4a2e; margin-bottom:18px; }

/* 表单行 - 内联布局 */
.form-row-inline { display:flex; align-items:center; margin-bottom:14px; }
.form-row-inline label { width:80px; text-align:right; padding-right:12px; font-size:14px; color:#333; flex-shrink:0; white-space:nowrap; }
.form-row-inline input,
.form-row-inline select { flex:1; height:38px; border:1px solid #ddd; border-radius:4px; padding:0 10px; font-size:14px; outline:none; }
.form-row-inline input:focus,
.form-row-inline select:focus { border-color:#c92b1b; }

/* 居中按钮 */
.gm-actions-center { text-align:center; margin:20px 0 14px; }
.btn-gift-submit { display:inline-block; background:linear-gradient(180deg,#e23f2e,#c92b1b); color:#fff; border:none; padding:10px 56px; font-size:16px; border-radius:4px; cursor:pointer; box-shadow:0 2px 0 #7a1810; }
.btn-gift-submit:hover { filter:brightness(1.05); }

/* 底部信息栏 */
.gm-bottom-bar { display:flex; justify-content:space-between; align-items:center; padding:10px 0; border-top:1px solid #eee; font-size:13px; color:#666; }
.gm-bottom-bar b { color:#c92b1b; font-weight:700; }
.gm-vip-upgrade a { color:#c92b1b; text-decoration:none; }
.gm-vip-upgrade a:hover { text-decoration:underline; }

/* 警告提示 */
.gm-warn-tip { margin-top:14px; padding:10px 12px; background:#fff8e0; border:1px solid #f3d47c; border-radius:4px; font-size:12px; color:#8a6a22; line-height:1.8; text-align:center; }

/* 旧样式保留兼容 */
.gm-tip { background:#fff8e0; border:1px solid #f3d47c; border-radius:6px; padding:10px 14px; display:flex; justify-content:space-between; align-items:center; margin-bottom:14px; }
.gm-tip .ad-subtitle { color:#5a3400; font-weight:600; }
.gm-go { color:#c92b1b; }
.gm-checks { margin:8px 0 14px; }
.gm-checks li { padding:8px 0; border-bottom:1px dashed #f3ece0; display:flex; justify-content:space-between; align-items:center; font-size:14px; }
.gm-checks li .ok { color:#2f8545; }
.gm-checks li .no { color:#c92b1b; }
.gm-actions { display:flex; gap:10px; justify-content:flex-end; margin-top:10px; }
.gm-actions .btn { padding:9px 18px; }
.gm-result { padding:16px; background:#f2fbf4; border:1px dashed #86c799; border-radius:6px; color:#2f8545; font-size:14px; line-height:1.8; }
.gm-result.warn { background:#fff4d6; border-color:#e4bf66; color:#8a5e10; }
.gm-result.err { background:#ffeaea; border-color:#e9a7a7; color:#c92b1b; }

/* --------- 规则列表 --------- */
.rule-list { padding:0 0 0 22px; line-height:1.9; }
.rule-list li { margin-bottom:6px; color:#5a4a2e; }

/* --------- 404 --------- */
.page-404 { background:#fbf7f0; padding:80px 0; }
.page-404 .code { font-size:120px; font-weight:900; color:#c92b1b; line-height:1; }
.page-404 .msg { color:#5a4a2e; margin:10px 0 24px; }

/* --------- Toast --------- */
.toast { position:fixed; top:30px; left:50%; transform:translateX(-50%); padding:10px 18px; background:rgba(30,15,5,.88); color:#fff; border-radius:6px; z-index:9999; font-size:14px; box-shadow:0 6px 20px rgba(0,0,0,.2); }
.toast.ok { background:#2f8545; }
.toast.err { background:#c92b1b; }

/* --------- 页脚 --------- */
/* PC端：site-footer 背景色横向铺满整个页面（body全宽），内容区保持 wrap 居中 */
.site-footer {
  background:#2c2316; color:#c7b68d; margin-top:20px; border-top:4px solid #c92b1b; padding-top:24px;
  width: 100% !important; display:block;
}
/* 页脚内部内容仍保持 1420px 固定宽度居中，避免内容与首页/导航/主体错位 */
.site-footer .footer-main,
.site-footer .footer-icp {
  width: 1420px; margin-left: auto; margin-right: auto;
}
.footer-main .footer-row { display:grid; grid-template-columns:2fr 1fr 1fr; gap:30px; padding:10px 0 26px; }
.footer-col h3 { color:#f3d47c; margin-bottom:10px; font-size:18px; }
.footer-col h4 { color:#f3d47c; margin-bottom:10px; font-size:15px; }
.footer-col li { padding:4px 0; color:#c7b68d; font-size:13px; }
.footer-col a { color:#f3d47c; }
.footer-col .slogan { margin:6px 0 10px; color:#e8dcb8; line-height:1.7; }
.footer-col .disclaimer { color:#8a7144; font-size:12px; line-height:1.7; }
.footer-icp { padding:14px 0; border-top:1px dashed #4d3a21; color:#8a7144; font-size:12px; }
.footer-icp a { color:#c7b68d; }
.footer-icp .healthy-tip { margin-top:6px; color:#8a7144; }
/* 简单版页脚同理：背景全屏，内部内容居中 */
.site-footer-simple {
  background:#2c2316; color:#9a8a6c; padding:16px 0; margin-top:40px;
  width: 100%; display:block;
}

/* ============================================================
 * 移动端响应式适配
 * ============================================================ */

/* 平板（≤1024px） */
@media (max-width: 1024px) {
  html, body { min-width: 100% !important; }
  .wrap, .topbar, .site-header, .site-nav { width: 100% !important; }
  .page-home .content .container { width: 100% !important; }
  .ad-grid.cols-4, .ad-grid.cols-6, .ad-grid.cols-8 { grid-template-columns: repeat(2, 1fr) !important; }
  .detail-hero { grid-template-columns: 1fr !important; }
  .vip-cards { flex-direction: column !important; align-items: center !important; gap: 16px !important; }
  .vip-card { max-width: 100% !important; margin: 0 !important; width: 100% !important; }
  .vip-card-lv1, .vip-card-lv3 { margin: 0 !important; }
}

/* 手机（≤768px） */
@media (max-width: 768px) {
  html, body { min-width: 100% !important; font-size: 14px; }
  .wrap, .topbar, .site-header, .site-nav { width: 100% !important; }
  .page-home .content .container { width: 100% !important; }

  /* 顶部公告条 */
  .topbar { line-height: 28px; font-size: 11px; padding: 0 10px; }
  .topbar .wrap { flex-direction: column; align-items: stretch; gap: 4px; }
  .topbar .sep { display: none; }
  .topbar-right { display: flex; flex-wrap: wrap; gap: 4px 8px; }

  /* 头部 */
  .site-header { padding: 10px 0 6px; border-bottom-width: 2px; }
  .site-header .wrap { flex-direction: column; align-items: stretch; gap: 10px; padding: 0 12px; }
  .logo { justify-content: center; }
  .logo-main { font-size: 28px; }
  .search-form { width: 100% !important; }
  .header-cta { text-align: center; }
  .header-cta .btn-contract { display: inline-block; }

  /* 分类导航 */
  .site-nav { border-bottom-width: 2px; }
  .nav-list { overflow-x: auto; -webkit-overflow-scrolling: touch; padding: 0 10px; }
  .nav-list li a { padding: 10px 10px; font-size: 14px; }

  /* 主体 */
  .site-main { padding: 12px 0 30px; }
  .wrap { padding: 0 10px; }

  /* 首页广告卡片网格 → 单列 */
  .ad-grid.cols-4, .ad-grid.cols-6, .ad-grid.cols-8 { grid-template-columns: 1fr !important; }

  /* ========== 游戏列表页面 → 强制完整桌面布局 + JS transform:scale 整体缩放 ========== */
  /* 重置 html/body min-width，避免撑破视口 */
  html:has(body.page-inner),
  body.page-inner { min-width: 0 !important; }
  body.page-inner > .topbar,
  body.page-inner > .site-header,
  body.page-inner > .site-nav,
  body.page-inner > .site-main,
  body.page-inner > .site-footer {
    width: 1420px !important; max-width: 1420px !important;
    margin-left: auto !important; margin-right: auto !important;
  }
  body.page-inner .topbar { line-height: 32px !important; font-size: 12px !important; padding: 0 !important; }
  body.page-inner .topbar .wrap { width: 1420px !important; max-width: 1420px !important; padding: 0 !important; flex-direction: row !important; align-items: center !important; gap: 0 !important; }
  body.page-inner .topbar .sep { display: inline !important; }
  body.page-inner .topbar-right { flex-wrap: nowrap !important; }
  body.page-inner .site-header { padding: 18px 0 6px !important; border-bottom-width: 3px !important; }
  body.page-inner .site-header .wrap { width: 1420px !important; max-width: 1420px !important; padding: 0 !important; flex-direction: row !important; align-items: center !important; gap: 0 !important; }
  body.page-inner .site-nav { border-bottom-width: 3px !important; }
  body.page-inner .site-nav .wrap { width: 1420px !important; max-width: 1420px !important; padding: 0 !important; }
  body.page-inner .site-nav .nav-list { overflow: visible !important; padding: 0 !important; }
  body.page-inner .site-nav .nav-list li a { padding: 14px 12px !important; font-size: 15px !important; }
  body.page-inner .logo { justify-content: flex-start !important; }
  body.page-inner .logo-main { font-size: 36px !important; }
  body.page-inner .search-form { width: 520px !important; }
  body.page-inner .header-cta { text-align: auto !important; }
  body.page-inner .site-main { padding: 20px 0 40px !important; }
  body.page-inner .site-main .wrap { width: 1420px !important; max-width: 1420px !important; padding: 0 !important; margin-left: auto !important; margin-right: auto !important; }
  body.page-inner .ad-list-wrap { overflow: hidden !important; }
  body.page-inner .ad-list-tbl { width: 1420px !important; table-layout: fixed !important; font-size: 14px !important; }
  body.page-inner .site-footer { width: 1420px !important; max-width: 1420px !important; }
  body.page-inner .footer-main .footer-row { grid-template-columns: 2fr 1fr 1fr !important; gap: 30px !important; padding: 10px 0 26px !important; }
  body.page-inner .footer-col h3 { font-size: 18px !important; }
  body.page-inner .footer-col h4 { font-size: 15px !important; }
  body.page-inner .footer-col li { font-size: 13px !important; }
  body.page-inner .float-signin { right: 20px !important; bottom: auto !important; top: 240px !important; width: 56px !important; height: 56px !important; font-size: 16px !important; }
  body.page-inner .panel .tbl,
  body.page-inner .tbl { display: table !important; overflow: visible !important; }
  body.page-inner .tbl th,
  body.page-inner .tbl td { white-space: nowrap !important; }

  /* 用户中心 → 单列 */
  .user-page { grid-template-columns: 1fr !important; }
  .user-side { position: static !important; margin-bottom: 14px; }
  .side-menu { display: flex; flex-wrap: wrap; gap: 6px; }
  .side-menu li { flex: 1 1 auto; }
  .side-menu li a { padding: 8px 10px; text-align: center; font-size: 13px; }
  .stat-grid { grid-template-columns: repeat(2, 1fr) !important; gap: 10px !important; }
  .stat-card { padding: 12px 10px; }
  .stat-card .v { font-size: 20px; }
  .info-list li { flex-wrap: wrap; }
  .info-list li span { width: 90px; font-size: 12px; }
  .info-list li b { font-size: 12px; word-break: break-all; }

  /* 面板 */
  .panel { padding: 12px 10px; }
  .panel-head { font-size: 15px; }
  .panel-foot { display: flex; flex-wrap: wrap; gap: 8px; }
  .panel-foot .btn { flex: 1; text-align: center; }
  /* 表格水平滚动：仅表格滚动，不影响面板其他内容 */
  .tbl { display: block; overflow-x: auto; -webkit-overflow-scrolling: touch; }
  .tbl th, .tbl td { white-space: normal; }
  .tbl th, .tbl td.nowrap { white-space: nowrap; }

  /* 表单 */
  .form-row.grid-2, .form-row.grid-3, .form-row.grid-4 { grid-template-columns: 1fr !important; }

  /* 登录/注册卡片 */
  .auth-card { width: 100% !important; max-width: 400px; padding: 20px 16px; }
  .auth-card.big { width: 100% !important; max-width: 400px; }

  /* 详情页 */
  .detail-hero { grid-template-columns: 1fr !important; gap: 14px; padding: 14px; }
  .detail-meta h1 { font-size: 18px; }
  .detail-info-row { grid-template-columns: 1fr !important; }
  .detail-actions { flex-wrap: wrap; }

  /* VIP升级页 */
  .vip-cards { flex-direction: column !important; align-items: stretch !important; gap: 14px !important; }
  .vip-card { max-width: 100% !important; margin: 0 !important; width: 100% !important; }
  .vip-card-lv1, .vip-card-lv3 { margin: 0 !important; }
  .vip-compare-table { font-size: 13px; }
  .vip-compare-table th, .vip-compare-table td { padding: 8px 6px; }

  /* 签到页 */
  .signin-hero { flex-direction: column; gap: 14px; padding: 16px; }
  .signin-coins-display .coin-num { font-size: 28px; }
  .btn-signin { width: 100%; }

  /* 礼包弹窗 */
  .modal-wrap { width: 94% !important; max-width: 94% !important; }
  .modal-body { padding: 14px 12px; }
  .gm-amount { font-size: 32px; }
  .form-row-inline { flex-direction: column; align-items: stretch; gap: 4px; }
  .form-row-inline label { width: auto; text-align: left; padding-right: 0; }
  .btn-gift-submit { padding: 10px 20px; font-size: 14px; }

  /* 合作页 */
  .contact-form { width: 100%; }

  /* 页脚 */
  .footer-main .footer-row { grid-template-columns: 1fr !important; gap: 16px; }

  /* 浮动签到按钮 */
  .float-signin { right: 10px; top: auto; bottom: 20px; width: 48px; height: 48px; font-size: 14px; }

  /* 首页横幅 */
  .swiper { aspect-ratio: 16/9; }
  .home-banner { border-radius: 6px; margin: 6px 0 10px; }
  .cpc-banner { padding: 14px; }
  .cpc-banner .cpc-main { font-size: 16px; }
  .cpc-banner .cpc-sub { font-size: 12px; }

  /* 首页布局覆盖（main.min.css冲突保护） */
  .page-home .header, .page-home .nav, .page-home .content,
  .page-home .container, .page-home .header .container, .page-home .nav .container,
  .page-home .header .logo, .page-home .header .logo img {
    width: 100% !important; max-width: 100% !important; min-width: 0 !important;
  }
  .page-home .header .nav .container { flex-wrap: wrap; gap: 4px; padding: 0 10px; }
  .page-home .header .logo img { max-width: 100%; height: auto; }
  .page-home .content .container { padding: 0 10px; }

  /* 领取记录页 */
  .claims-page { padding: 14px 10px; }
  .claims-table { font-size: 12px; }

  /* 分页 */
  .pager ul.pagination li a, .pager ul.pagination li span { padding: 4px 8px; font-size: 12px; }
}

/* ============ 微信扫码登录入口（登录页 + 弹窗） ============ */
.wx-login-divider {
  display: flex; align-items: center; text-align: center; margin: 20px 0 16px;
  color: #b9a881; font-size: 12px;
}
.wx-login-divider::before, .wx-login-divider::after {
  content: ""; flex: 1; height: 1px; background: #e3cc97;
}
.wx-login-divider span { padding: 0 14px; }

.wx-login-btn {
  display: flex; align-items: center; justify-content: center; gap: 8px;
  width: 100%; padding: 12px 20px; border-radius: 8px; text-decoration: none;
  background: linear-gradient(90deg, #07c160, #2aae6a); color: #fff; font-size: 15px; font-weight: 600;
  box-shadow: 0 4px 12px rgba(7,193,96,.25); transition: filter .12s, transform .12s;
}
.wx-login-btn:hover { filter: brightness(1.05); transform: translateY(-1px); color: #fff; text-decoration: none; }
.wx-login-btn .wx-ico { font-size: 20px; }

.wx-login-sub { text-align: center; margin: 10px 0 0; font-size: 12px; color: #8a7858; }

/* 首页弹窗中的微信登录入口 */
.login-modal .wx-quick-entry {
  margin-top: 12px; padding-top: 12px; border-top: 1px dashed #e3cc97; text-align: center;
}
.login-modal .wx-quick-entry a {
  display: inline-flex; align-items: center; gap: 6px;
  padding: 8px 18px; border-radius: 8px; text-decoration: none;
  background: linear-gradient(90deg, #07c160, #2aae6a); color: #fff; font-size: 13px; font-weight: 600;
  box-shadow: 0 3px 8px rgba(7,193,96,.2); transition: filter .12s;
}
.login-modal .wx-quick-entry a:hover { filter: brightness(1.05); color: #fff; text-decoration: none; }
.login-modal .wx-quick-entry .wx-tip { display: block; margin-top: 6px; font-size: 11px; color: #8a7858; }

/* 微信二维码展示区 */
.wx-qr-box { margin-top: 8px; }
.wx-qr-area { text-align: center; min-height: 60px; }
.wx-qr-img {
  width: 200px; height: 200px; border: 1px solid #e3cc97; border-radius: 8px;
  display: block; margin: 0 auto 8px; background: #fff;
}
.wx-qr-tip { font-size: 13px; color: #42150a; margin-bottom: 4px; }
.wx-qr-tip.expired { color: #c92b1b; font-weight: 600; }
.wx-qr-status { font-size: 12px; color: #8a7858; }
.wx-qr-status.scanned { color: #e07a1c; }
.wx-qr-status.ok { color: #2f8545; font-weight: 600; }
.wx-qr-status.err { color: #c92b1b; }
.wx-qr-loading { padding: 20px; font-size: 13px; color: #8a7858; }
.wx-qr-err { padding: 12px; font-size: 13px; color: #c92b1b; }

/* 首页弹窗内的二维码区 */
.login-modal .wx-qr-area { padding: 8px 0; }
.login-modal .wx-qr-img { width: 160px; height: 160px; }

/* ============ 登录弹窗 · 统一设计语言（覆盖 main.min.css） ============ */
/* 弹窗容器由 layer.js 生成，需穿透 layer 样式 */
body .layui-layer-login { background:transparent !important; box-shadow:none !important; border:none !important; }
body .layui-layer-login .layui-layer-content { overflow:visible !important; }

/* 新弹窗主容器 */
.login-modal-v2 {
  width:680px; height:auto; min-height:0;
  background:#fff; border-radius:12px; overflow:hidden;
  display:flex; box-shadow:0 8px 40px rgba(0,0,0,.18);
}
/* 品牌区（左 42%）：深青墨渐变 */
.login-modal-v2 .lm-brand {
  width:42%; padding:32px 28px; position:relative; overflow:hidden;
  background:linear-gradient(160deg, #1a3a4a 0%, #245560 50%, #2f6b75 100%);
  display:flex; flex-direction:column; justify-content:space-between;
}
.login-modal-v2 .lm-brand::before {
  content:""; position:absolute; top:-60px; right:-60px; width:240px; height:240px;
  border-radius:50%; background:radial-gradient(circle, rgba(255,255,255,.07) 0%, transparent 70%);
  pointer-events:none;
}
.login-modal-v2 .lm-brand-inner { position:relative; z-index:1; display:flex; flex-direction:column; gap:20px; }
.login-modal-v2 .lm-domain { font-size:32px; font-weight:900; color:#fff; letter-spacing:1px; line-height:1.2; }
.login-modal-v2 .lm-underline { width:60px; height:3px; background:linear-gradient(90deg, #f0c878, #c97a1b); border-radius:2px; margin-top:6px; }
.login-modal-v2 .lm-features { display:flex; flex-direction:column; gap:12px; margin-top:4px; }
.login-modal-v2 .lm-feature { display:flex; align-items:center; gap:8px; color:rgba(255,255,255,.88); font-size:13.5px; line-height:1.4; }
.login-modal-v2 .lm-feature::before { content:""; width:6px; height:6px; border-radius:50%; background:#f0c878; flex-shrink:0; }
.login-modal-v2 .lm-collect {
  position:relative; z-index:1; margin-top:auto;
  background:rgba(255,255,255,.08); border:1px solid rgba(255,255,255,.15);
  border-radius:8px; padding:12px 14px; backdrop-filter:blur(4px);
}
.login-modal-v2 .lm-collect-title { color:#fff; font-size:14px; font-weight:600; text-align:center; }
.login-modal-v2 .lm-collect-sub { color:rgba(255,255,255,.6); font-size:12px; text-align:center; margin-top:2px; }

/* 登录区（右 58%）：暖白底 */
.login-modal-v2 .lm-login { flex:1; padding:28px 30px; display:flex; flex-direction:column; gap:16px; background:#fffdf8; }
.login-modal-v2 .lm-login-head { text-align:center; }
.login-modal-v2 .lm-login-title { font-size:18px; font-weight:700; color:#333; margin:0; }
.login-modal-v2 .lm-login-sub { font-size:12.5px; color:#999; margin-top:4px; }

/* 微信扫码区 */
.login-modal-v2 .lm-qr-box { text-align:center; }
.login-modal-v2 .lm-qr-title { font-size:13px; color:#6b583b; margin-bottom:10px; font-weight:600; }
.login-modal-v2 .lm-qr-area { min-height:80px; display:flex; flex-direction:column; align-items:center; justify-content:center; }
.login-modal-v2 .lm-qr-area .wx-qr-img { width:140px; height:140px; border-radius:8px; border:1px solid #f0e8d8; margin:0 auto; }
.login-modal-v2 .lm-qr-area .wx-qr-loading { font-size:13px; color:#8a7858; padding:20px; }
.login-modal-v2 .lm-qr-area .wx-qr-err { font-size:13px; color:#c92b1b; padding:12px; }
.login-modal-v2 .lm-qr-area .wx-qr-tip { margin-top:12px; }
.login-modal-v2 .lm-qr-area .wx-qr-status { margin-top:2px; }
.login-modal-v2 .lm-qr-status { font-size:12px; color:#8a7858; margin-top:8px; }
.login-modal-v2 .lm-qr-status.scanned { color:#c97a1b; font-weight:600; }
.login-modal-v2 .lm-qr-status.ok { color:#2f8545; font-weight:600; }
.login-modal-v2 .lm-qr-status.err { color:#c92b1b; }

/* 微信登录按钮 */
.login-modal-v2 .lm-wx-btn {
  display:inline-flex; align-items:center; gap:6px;
  padding:8px 20px; border-radius:8px; border:none; cursor:pointer;
  background:linear-gradient(135deg, #1a6b6b 0%, #2f8585 100%); color:#fff;
  font-size:13px; font-weight:600; transition:all .2s;
}
.login-modal-v2 .lm-wx-btn:hover { transform:translateY(-1px); box-shadow:0 3px 10px rgba(26,107,107,.3); }
.login-modal-v2 .lm-wx-tip { font-size:11px; color:#aaa; margin-top:6px; }

/* 分隔线 */
.login-modal-v2 .lm-divider { display:flex; align-items:center; gap:10px; margin:4px 0; }
.login-modal-v2 .lm-divider::before, .login-modal-v2 .lm-divider::after { content:""; flex:1; height:1px; background:linear-gradient(90deg, transparent, #e8e0d0, transparent); }
.login-modal-v2 .lm-divider span { font-size:12px; color:#bbb; }

/* 账号密码登录按钮 */
.login-modal-v2 .lm-account-btn {
  display:block; text-align:center; text-decoration:none;
  padding:11px 0; border-radius:8px; font-size:14px; font-weight:600;
  background:linear-gradient(135deg, #c97a1b 0%, #a85a10 100%); color:#fff;
  transition:all .22s;
}
.login-modal-v2 .lm-account-btn:hover { transform:translateY(-2px); box-shadow:0 4px 14px rgba(201,122,27,.35); }

/* 注册链接 */
.login-modal-v2 .lm-register { text-align:center; font-size:13px; color:#888; }
.login-modal-v2 .lm-register a { color:#c97a1b; text-decoration:none; font-weight:600; }
.login-modal-v2 .lm-register a:hover { text-decoration:underline; }

/* 协议 */
.login-modal-v2 .lm-agreement { text-align:center; font-size:11.5px; color:#bbb; line-height:1.6; }
.login-modal-v2 .lm-agreement a { color:#8a7858; text-decoration:none; }
.login-modal-v2 .lm-agreement a:hover { color:#c97a1b; }

/* 关闭按钮 */
.login-modal-v2 .lm-close {
  position:absolute; top:8px; right:10px; z-index:10;
  width:28px; height:28px; border:none; background:rgba(255,255,255,.12);
  border-radius:50%; color:#fff; font-size:16px; cursor:pointer; line-height:28px;
  transition:background .2s;
}
.login-modal-v2 .lm-close:hover { background:rgba(255,255,255,.25); }

/* 响应式 */
@media (max-width:768px){
  .login-modal-v2 { width:94vw; flex-direction:column; }
  .login-modal-v2 .lm-brand { width:100%; padding:20px 18px; }
  .login-modal-v2 .lm-login { padding:20px 18px; }
  .login-modal-v2 .lm-domain { font-size:26px; }
}
