/* 本地复刻版补充样式（原站 app.css 之外的结果页/提示/后台适配） */
.hidden { display: none !important; }

/* 结果页 */
.entry-v1516-hero-copy h1 { margin: 10px 0 6px; }
.ok-chip { background: #e8f7ee; color: #177245; border: 1px solid #bfe8cf; }

.rental-timer { border: 1px solid var(--line, #e2e8f0); border-radius: 16px; padding: 16px; margin-bottom: 14px; background: #f8faff; }
.rental-timer label { display: block; color: #64748b; font-size: 12px; margin-bottom: 8px; }
.timer-row { display: flex; align-items: baseline; gap: 12px; flex-wrap: wrap; }
.timer-value { font-size: 30px; color: #3563e9; letter-spacing: 2px; font-variant-numeric: tabular-nums; }
.muted { color: #94a3b8; font-size: 12px; }

.credential-grid { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 12px; margin-bottom: 14px; }
@media (max-width: 640px) { .credential-grid { grid-template-columns: 1fr; } }
.credential-box { border: 1px solid #e2e8f0; border-radius: 14px; padding: 14px 16px; }
.credential-box label { display: block; color: #64748b; font-size: 12px; margin-bottom: 8px; }
.credential-row { display: flex; align-items: center; justify-content: space-between; gap: 10px; }
.credential-row strong { font-size: 15px; word-break: break-all; }
.credential-copy-button { border: 1px solid #dbe3ef; background: #fff; color: #3563e9; border-radius: 8px; padding: 4px 10px; font-size: 12px; cursor: pointer; }
.credential-copy-button:hover { background: #eef3ff; }

.token-box { border: 1px solid #c7d5ff; border-radius: 16px; padding: 16px; margin-bottom: 14px; background: #f5f8ff; }
.token-box label { display: block; color: #64748b; font-size: 12px; margin-bottom: 8px; }
.code-row { display: flex; align-items: center; gap: 14px; flex-wrap: wrap; }
.verify-code { font-size: 34px; letter-spacing: 8px; color: #111827; font-variant-numeric: tabular-nums; }
.auto-refresh { display: inline-flex; align-items: center; gap: 6px; font-size: 13px; color: #475569; cursor: pointer; }
.token-box > small { display: block; margin-top: 8px; }

.important-notice { border: 1px solid #fde2c8; background: #fff7e8; color: #9a4b00; border-radius: 16px; padding: 14px 16px; margin-bottom: 14px; }
.important-notice p { margin: 6px 0 0; font-size: 13px; line-height: 1.6; }

.compact-result-bottom { display: flex; gap: 12px; justify-content: center; margin-top: 6px; }
.compact-result-footer { margin-top: 18px; text-align: center; color: #94a3b8; font-size: 12px; }
.compact-result-hero p { color: #64748b; }

/* 按钮（复刻原站按钮基类，防止 CSS 缺失） */
.button { display: inline-flex; align-items: center; justify-content: center; gap: 6px; border-radius: 12px; padding: 10px 18px; font-size: 14px; cursor: pointer; border: 1px solid transparent; text-decoration: none; }
.button.primary { background: #3563e9; color: #fff; }
.button.primary:hover { background: #2b52c6; }
.button.secondary { background: #fff; border-color: #dbe3ef; color: #3563e9; }
.button.secondary:hover { background: #eef3ff; }
.button.danger { background: #fff; border-color: #f3c1c1; color: #d64545; }
.button.danger:hover { background: #fdf0f0; }

/* toast */
.app-toast { position: fixed; left: 50%; bottom: 36px; transform: translateX(-50%); background: rgba(17, 24, 39, .92); color: #fff; padding: 10px 18px; border-radius: 10px; font-size: 14px; z-index: 999; }
.entry-v1516-error { margin-top: 10px; background: #fdf0f0; color: #d64545; border: 1px solid #f3c1c1; border-radius: 12px; padding: 10px 14px; font-size: 14px; }

/* 促销按钮：button 元素重置，与原站 <a> 视觉完全一致 */
button.entry-v1516-promo-action,
button.result-v1516-promo-action {
  border: none;
  margin: 0;
  padding: 0;
  font: inherit;
  font-family: inherit;
  font-weight: 850;
  color: #fff;
  cursor: pointer;
  text-decoration: none;
  -webkit-appearance: none;
  appearance: none;
}
button.entry-v1516-promo-action:hover,
button.result-v1516-promo-action:hover { filter: brightness(.96); }

/* 广告内容支持换行显示 */
.entry-v1516-promo-copy strong,
.result-v1516-promo-copy strong { white-space: pre-line; }
.ad-item p { white-space: pre-line; }

/* 结果页广告墙：一行 2 个，多则换行 */
.ads-wall { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 14px; margin-top: 6px; }
.ads-wall .promotion-card { margin: 0; }
@media (max-width: 760px) { .ads-wall { grid-template-columns: 1fr; } }
/* 后台复选框不被全局 input 宽度撑满 */
.check-line input[type=checkbox] { width: auto; flex: 0 0 auto; margin: 0; }

/* 验证码大字号（字符间空格由 JS 插入，CSS 不再加字距） */
.result-v1516-token-card strong#verifyCode {
  font-size: 48px; font-weight: 900; color: #0f172a;
  letter-spacing: .04em; line-height: 1.15;
  margin: 10px 0 16px; font-family: ui-monospace, Consolas, monospace;
}
/* 封面占位内的小标签 */
.result-v1516-cover-placeholder .cover-label {
  position: absolute; top: 12px; left: 0; right: 0;
  text-align: center; font-size: 11px; font-weight: 700;
  color: rgba(255,255,255,.92); overflow: hidden; white-space: nowrap; text-overflow: ellipsis; padding: 0 6px;
}

/* 布局永远保持两侧留白（窄窗口不贴边，宽窗口与原站一致居中） */
.entry-v1516-layout { width: min(1120px, calc(100% - 48px)) !important; }
.result-v1516-layout { width: min(1160px, calc(100% - 48px)) !important; }
@media (max-width: 760px) {
  .entry-v1516-layout, .result-v1516-layout { width: calc(100% - 24px) !important; }
}

/* ===== 广告卡配色主题（结果页广告墙按顺序轮换，不再千篇一律） ===== */
.ads-wall .promotion-card { border-radius: 20px; transition: transform .15s ease; }
/* 橙色（默认，同原站促销卡） */
.promo-theme-orange { background: #fff7e8 !important; border: 1px solid #ffe0b2 !important; }
.promo-theme-orange .result-v1516-promo-copy span { color: #b45309; }
.promo-theme-orange .result-v1516-promo-copy strong { color: #9a4b00; }
.promo-theme-orange .result-v1516-promo-action { background: #f59e0b; color: #fff; }
/* 蓝色 */
.promo-theme-blue { background: #eff4ff !important; border: 1px solid #c7d7fe !important; }
.promo-theme-blue .result-v1516-promo-copy span { color: #2563eb; }
.promo-theme-blue .result-v1516-promo-copy strong { color: #1e3a8a; }
.promo-theme-blue .result-v1516-promo-action { background: #3563e9; color: #fff; }
/* 绿色 */
.promo-theme-green { background: #ecfdf3 !important; border: 1px solid #bbf0cf !important; }
.promo-theme-green .result-v1516-promo-copy span { color: #15803d; }
.promo-theme-green .result-v1516-promo-copy strong { color: #14532d; }
.promo-theme-green .result-v1516-promo-action { background: #22c55e; color: #fff; }
/* 紫色 */
.promo-theme-purple { background: #f5f1ff !important; border: 1px solid #ddd0fe !important; }
.promo-theme-purple .result-v1516-promo-copy span { color: #7c3aed; }
.promo-theme-purple .result-v1516-promo-copy strong { color: #4c1d95; }
.promo-theme-purple .result-v1516-promo-action { background: #7652e8; color: #fff; }
/* 粉色 */
.promo-theme-pink { background: #fff0f5 !important; border: 1px solid #fcd0e0 !important; }
.promo-theme-pink .result-v1516-promo-copy span { color: #db2777; }
.promo-theme-pink .result-v1516-promo-copy strong { color: #9d174d; }
.promo-theme-pink .result-v1516-promo-action { background: #ec4899; color: #fff; }
/* 各主题按钮通用形态（与原站一致：flex 居中 + 通栏） */
.ads-wall .result-v1516-promo-action {
  grid-column: 1/-1;
  display: flex; align-items: center; justify-content: center;
  min-height: 53px; border-radius: 12px;
  font-weight: 850; text-decoration: none; cursor: pointer;
  text-align: center;
}
.ads-wall .result-v1516-promo-action:hover { filter: brightness(.95); }

/* ---------- 导入弹窗关闭按钮 ---------- */
.app-dialog .dialog-card { position: relative; }
.dialog-close {
  position: absolute; top: 10px; right: 12px; width: 32px; height: 32px;
  border: none; background: transparent; border-radius: 8px;
  font-size: 22px; line-height: 1; color: #94a3b8; cursor: pointer;
  padding: 0;
}
.dialog-close:hover { background: #f1f5f9; color: #334155; }
