/* ============================================
   龙慧云 · AI测评页高对比度修复层
   目标：让卡片/文字/按钮在深色星空背景上绝对清晰可读
   仅作用于已引入本文件的AI测评页（beauty/face/daily-fortune/name-score/past-life/personality/tarot）
   ============================================ */

/* === 1. 页面内容屏保：保证内容层在星空背景之上 === */
.starry, .mystic-bg {
  z-index: 0 !important;
  pointer-events: none !important;
}

#app > *:not(.starry):not(.mystic-bg) {
  position: relative !important;
  z-index: 1 !important;
}

/* === 2. 所有卡片/结果面板统一深色玻璃卡片 === */
.past-life-card, .score-card, .desc-card, .beauty-card, .celeb-card,
.detail-card, .dim-card, .trait-card, .result-card, .result-summary,
.card-detail-card, .result-type-card, .result-desc-card, .ai-content-card,
.question-opt, .pick-slot, .card-reveal, .cross-promo, .unlock-section {
  background: #FFFFFF !important;
  color: #1F2937 !important;
  border: 1px solid #E5E7EB !important;
  box-shadow: 0 2px 12px rgba(0,0,0,0.06) !important;
}

/* 颜值分析卡片：深色玻璃 */
.beauty-card, .celeb-card, .result-score-card, .result-face-desc {
  background: #FFFFFF !important;
  color: #1F2937 !important;
  border: 1px solid #E5E7EB !important;
  box-shadow: 0 2px 12px rgba(0,0,0,0.06) !important;
}

/* 卡片内所有文字强制白色 */
.past-life-card *, .score-card *, .desc-card *, .beauty-card *, .celeb-card *,
.detail-card *, .dim-card *, .trait-card *, .result-card *, .result-summary *,
.card-detail-card *, .result-type-card *, .result-desc-card *, .ai-content-card *,
.question-opt *, .pick-slot *, .card-reveal *, .cross-promo *, .unlock-section * {
  color: #1F2937 !important;
}

/* 子文字轻微降亮 */
.score-label, .score-unit, .result-score-label, .detail-content, .dim-card-detail,
.dim-card-score, .trait-card-detail, .trait-card-stars, .result-summary-text,
.home-subtitle, .home-counter, .home-date, .result-disclaimer, .unlock-hint,
.detail-lock-text, .dim-lock-text, .trait-lock-text, .cross-promo-desc,
.past-description, .past-era, .desc-card, .card-detail-desc, .result-type-tagline {
  color: #6B7280 !important;
}

/* 锁定提示要高亮 */
.detail-lock-text, .dim-lock-text, .trait-lock-text, .dim-lock-icon, .trait-lock-icon {
  color: #2563EB !important;
}

/* === 3. 首页入口区加深色玻璃底 === */
.home-screen, .pick-screen, .question-screen, .quiz-screen, .loading-screen, .result-screen, .reveal-screen {
  min-height: 100vh !important;
}

.home-screen {
  background: #FFFFFF !important;
  padding: 60px 20px 120px !important;
  border-left: 1px solid rgba(199, 194, 255, 0.25) !important;
  border-right: 1px solid rgba(199, 194, 255, 0.25) !important;
}

.home-title, .pick-title, .reveal-title, .question-text, .score-name, .result-type-code,
.result-score-num, .score-num, .card-detail-name, .card-detail-status, .past-title, .score-grade {
  color: #1F2937 !important;
  text-shadow: 0 2px 8px rgba(0, 0, 0, 0.5) !important;
}

.home-subtitle, .pick-subtitle, .question-subtitle, .reveal-subtitle {
  color: #6B7280 !important;
}

.logo-icon {
  box-shadow: 0 8px 30px rgba(0, 0, 0, 0.5) !important;
}

/* === 4. 输入框/选择框 === */
.birth-input, .name-input, input[type="text"], input[type="password"], input[type="tel"], textarea, select,
.question-opt, .quiz-option, .pick-slot, .upload-option {
  background: rgba(36, 24, 69, 0.9) !important;
  border: 1px solid #E5E7EB !important;
  color: #1F2937 !important;
  border-radius: 12px !important;
}

.birth-input::placeholder, .name-input::placeholder, input::placeholder, textarea::placeholder {
  color: #A99FD8 !important;
}

.question-opt.selected, .quiz-option.selected, .pick-slot.selected {
  background: rgba(22,93,255, 0.35) !important;
  border-color: #2563EB !important;
  box-shadow: 0 0 12px rgba(127, 229, 255, 0.35) !important;
}

/* === 5. 按钮绝对可见 === */
.btn-start, .btn-score, .btn-upload, .btn-unlock, .btn-action, .btn-perm-allow, .btn-ad-watch,
.lh-modal-btn, .lh-landing-cta, .btn-primary, .submit-btn {
  color: #1F2937 !important;
  text-shadow: 0 1px 3px rgba(0, 0, 0, 0.5) !important;
  box-shadow: 0 4px 18px rgba(0, 0, 0, 0.4) !important;
  border: 1px solid rgba(255, 255, 255, 0.2) !important;
}

.btn-action.share, .btn-perm-deny, .btn-ad-share, .btn-cancel, .btn-ad-close, .lh-modal-close, .lh-landing-close {
  background: rgba(45, 30, 79, 0.9) !important;
  color: #1F2937 !important;
  border: 1px solid #E5E7EB !important;
}

/* === 6. 弹窗/模态框 === */
.perm-modal, .upload-modal, .ad-modal, .lh-modal, .lh-landing {
  background: rgba(5, 5, 16, 0.88) !important;
}

.perm-modal-content, .upload-modal-content, .ad-modal-content, .lh-modal-box, .lh-landing-box {
  background: rgba(255,255,255,0.96) !important;
  color: #1F2937 !important;
  border: 1px solid rgba(199, 194, 255, 0.5) !important;
  box-shadow: 0 12px 40px rgba(0, 0, 0, 0.55) !important;
}

.perm-modal-title, .perm-modal-desc, .perm-modal-icon, .ad-modal-title, .ad-modal-sub, .upload-modal-title,
.upload-option-text, .upload-option-sub, .lh-modal-title, .lh-modal-tip, .lh-landing-brand, .lh-landing-desc, .lh-landing-sub {
  color: #1F2937 !important;
}

.lh-landing-brand, .lh-modal-title {
  text-shadow: 0 0 12px rgba(199, 194, 255, 0.4) !important;
}

/* === 7. 强制覆盖 inline 白底 === */
[style*="background:#fff" i], [style*="background:#ffffff" i], [style*="background:white" i],
[style*="background-color:#fff" i], [style*="background-color:#ffffff" i],
[style*="background: #fff" i], [style*="background: #ffffff" i],
[style*="background-color: #fff" i], [style*="background-color: #ffffff" i] {
  background: #FFFFFF !important;
  color: #1F2937 !important;
  border: 1px solid #E5E7EB !important;
}

/* === 8. 星标/进度条/评分 === */
.star-on, .star-off, .dim-stars, .trait-bar.active, .dim-card-score, .trait-card-stars,
.result-score-num, .score-num {
  color: #2563EB !important;
  text-shadow: 0 0 8px rgba(127, 229, 255, 0.4) !important;
}

.trait-bar { background: rgba(150, 140, 255, 0.35) !important; }
.trait-bar.active { background: #2563EB !important; }

.question-progress span { background: rgba(150, 140, 255, 0.35) !important; }
.question-progress span.active { background: #2563EB !important; }
.question-progress span.done { background: #B9B6F0 !important; }

/* === 9. 跨推链接 === */
.cross-promo-link {
  background: rgba(255,255,255,0.96) !important;
  color: #1F2937 !important;
  border: 1px solid rgba(199, 194, 255, 0.4) !important;
}

.cross-promo-title, .cross-promo-icon, .cross-promo-desc {
  color: #1F2937 !important;
}

/* === 10. 免责声明 === */
.global-disclaimer, .result-disclaimer {
  background: #FFFFFF !important;
  color: #6B7280 !important;
  border: 1px solid rgba(199, 194, 255, 0.2) !important;
}

/* === 11. 底部固定按钮 === */
.lh-fab, .lh-footer {
  z-index: 90 !important;
}

/* === 12. 减少动画偏好 === */
@media (prefers-reduced-motion: reduce) {
  *, *::before, *::after {
    animation-duration: 0.01ms !important;
    animation-iteration-count: 1 !important;
    transition-duration: 0.01ms !important;
  }
  .starry, .mystic-bg { display: none !important; }
}
