/*
 * AI申报通首页专用浅色主题
 * 版本：2026-08-11 P1
 * 作用域：仅 body.home-page，避免影响企业端、机构端和后台页面。
 */

body.home-page {
  --home-bg: #f7f8fa;
  --home-surface: #ffffff;
  --home-surface-soft: #f3f4f6;
  --home-hover: #f6f7f8;
  --home-border: #e8eaed;
  --home-border-strong: #dadde2;
  --home-text: #17191c;
  --home-text-secondary: #62666d;
  --home-text-muted: #737981;
  --home-placeholder: #969ba3;
  --home-disabled: #babec5;
  --home-button: #181a1d;
  --home-button-hover: #2b2e32;
  --home-accent: #2563eb;
  --home-accent-soft: #eff6ff;
  --home-success: #16803c;
  --home-warning: #9a6400;
  --home-danger: #c93636;
  --home-shadow: 0 18px 54px rgba(23, 25, 28, 0.07);
  --home-shadow-hover: 0 24px 64px rgba(23, 25, 28, 0.11);
  background: var(--home-bg) !important;
  color: var(--home-text) !important;
  font-family: -apple-system, BlinkMacSystemFont, "SF Pro Display", "Segoe UI", "PingFang SC", "Hiragino Sans GB", "Microsoft YaHei", sans-serif !important;
  font-synthesis: none;
  letter-spacing: -0.01em;
}

/* 核心内容不能依赖滚动脚本才出现，避免旧 reveal 状态造成整段空白。 */
.home-page .reveal,
.home-page.js-anim .reveal,
html.js-anim .home-page .reveal {
  opacity: 1 !important;
  transform: none !important;
}

.home-page::before,
.home-page::after {
  display: none !important;
}

.home-page a,
.home-page button,
.home-page input,
.home-page select {
  -webkit-tap-highlight-color: transparent;
}

.home-page a:focus-visible,
.home-page button:focus-visible,
.home-page input:focus-visible,
.home-page select:focus-visible {
  outline: 3px solid rgba(37, 99, 235, 0.22) !important;
  outline-offset: 2px;
}

/* 顶部导航：浅色、半透明、低对比度边框。 */
.home-page > .nav,
.home-page > nav.nav {
  height: 68px;
  padding: 0 max(28px, calc((100vw - 1440px) / 2 + 28px));
  background: rgba(255, 255, 255, 0.86) !important;
  color: var(--home-text) !important;
  border-bottom: 1px solid rgba(218, 221, 226, 0.82) !important;
  box-shadow: none !important;
  backdrop-filter: saturate(180%) blur(22px);
  -webkit-backdrop-filter: saturate(180%) blur(22px);
}

.home-page .nav-brand {
  gap: 11px;
}

.home-page .nav-logo {
  width: 36px;
  height: 36px;
  border-radius: 11px;
  background: var(--home-text) !important;
  box-shadow: 0 6px 18px rgba(23, 25, 28, 0.13);
}

.home-page .nav-logo svg {
  width: 20px;
  height: 20px;
}

.home-page .nav-title {
  color: var(--home-text) !important;
  font-size: 18px;
  font-weight: 720;
  letter-spacing: -0.02em;
}

.home-page .nav-right {
  gap: 10px;
}

.home-page .nav-link,
.home-page .nav a {
  color: var(--home-text-secondary) !important;
}

.home-page .nav-link {
  padding: 8px 12px;
  border-radius: 9px;
  font-size: 14px;
  font-weight: 540;
}

.home-page .nav-link:hover,
.home-page .nav a:hover {
  color: var(--home-text) !important;
  background: var(--home-hover);
}

.home-page .nav-auth-btn {
  min-height: 38px;
  padding: 8px 16px;
  border: 1px solid var(--home-border-strong);
  border-radius: 10px;
  background: var(--home-surface);
  color: var(--home-text) !important;
  box-shadow: none;
}

.home-page .nav-auth-btn:hover {
  border-color: #c6c9cf;
  background: var(--home-hover);
  color: var(--home-text) !important;
}

.home-page .nav-auth-primary,
.home-page .nav-auth-primary:hover {
  border-color: var(--home-button);
  background: var(--home-button) !important;
  color: #ffffff !important;
}

.home-page .nav-auth-primary:hover {
  border-color: var(--home-button-hover);
  background: var(--home-button-hover) !important;
}

.home-page .nav-logged-user {
  border: 1px solid var(--home-border);
  background: rgba(255, 255, 255, 0.76);
}

.home-page .nav-logged-user:hover {
  background: var(--home-hover);
}

.home-page .nav-logged-avatar {
  background: var(--home-button);
  color: #ffffff;
}

.home-page .nav-logged-name {
  color: var(--home-text-secondary) !important;
}

/* 首屏：不用深色大底，用空间、字体和极浅渐变建立层级。 */
.home-page .hero {
  min-height: 430px;
  padding: 146px 24px 88px;
  background:
    radial-gradient(circle at 50% -25%, rgba(37, 99, 235, 0.12), transparent 45%),
    linear-gradient(180deg, #ffffff 0%, #f7f8fa 100%) !important;
  color: var(--home-text) !important;
  border-bottom: 1px solid var(--home-border);
}

.home-page .hero-bg {
  background: transparent !important;
}

.home-page .hero-grid,
.home-page .hero-orbit {
  display: none;
}

.home-page .hero-content {
  max-width: 1080px;
}

.home-page .hero h1 {
  max-width: 980px;
  margin: 0 auto 24px;
  color: var(--home-text) !important;
  font-size: clamp(42px, 5.4vw, 76px);
  font-weight: 760;
  line-height: 1.08;
  letter-spacing: -0.055em;
  text-shadow: none;
}

.home-page .hero h1 .accent {
  color: var(--home-accent) !important;
  -webkit-text-fill-color: currentColor;
}

.home-page .hero-lead,
.home-page .hero p {
  max-width: 760px;
  margin-right: auto;
  margin-left: auto;
  color: var(--home-text-secondary) !important;
  font-size: clamp(17px, 1.65vw, 22px);
  line-height: 1.65;
  letter-spacing: -0.02em;
}

.home-page .hero-free {
  margin-top: 20px;
  padding: 8px 10px;
  border: 1px solid var(--home-border);
  border-radius: 999px;
  background: rgba(255, 255, 255, 0.8);
  color: var(--home-text-secondary) !important;
  font-size: 13px;
  font-weight: 600;
  box-shadow: 0 8px 24px rgba(23, 25, 28, 0.04);
}

.home-page .hero-free span + span {
  border-left-color: var(--home-border-strong);
}

/* 通用首页区块。 */
.home-page .try-strip,
.home-page .value-section,
.home-page .preview-section,
.home-page .diff-section,
.home-page .final-section,
.home-page .final-cta {
  background: var(--home-bg) !important;
  color: var(--home-text) !important;
}

.home-page .try-strip {
  margin-top: 0;
  padding: 72px 24px 48px;
}

.home-page .try-strip-inner,
.home-page .value-inner {
  max-width: 1240px;
  gap: 24px;
}

.home-page .try-box,
.home-page .value-card,
.home-page .preview-card,
.home-page .final-card,
.home-page .final-cap-card,
.home-page .diff-card-old,
.home-page .diff-card-new {
  background: var(--home-surface) !important;
  color: var(--home-text) !important;
  border-color: var(--home-border) !important;
  box-shadow: var(--home-shadow) !important;
}

.home-page .try-box,
.home-page .value-card,
.home-page .final-card {
  border: 1px solid var(--home-border) !important;
  border-radius: 24px;
}

.home-page .try-box {
  min-height: 354px;
  padding: 30px;
  overflow: visible;
}

.home-page .try-box::before,
.home-page .value-card::before,
.home-page .preview-card::before,
.home-page .final-card::before {
  display: none;
}

.home-page .try-box:hover,
.home-page .value-card:hover,
.home-page .preview-card:hover,
.home-page .final-card:hover,
.home-page .final-cap-card:hover,
.home-page .diff-card-new:hover {
  transform: translateY(-3px);
  background: var(--home-surface) !important;
  border-color: var(--home-border-strong) !important;
  box-shadow: var(--home-shadow-hover) !important;
}

.home-page .try-box-header {
  margin-bottom: 22px;
}

.home-page .try-box-icon,
.home-page .value-card-icon,
.home-page .final-card-icon,
.home-page .final-cap-icon,
.home-page .diff-card-old-icon,
.home-page .diff-card-new-icon {
  background: var(--home-accent-soft) !important;
  border-color: #dbeafe !important;
}

.home-page .try-box-icon svg,
.home-page .value-card-icon svg,
.home-page .final-card-icon svg,
.home-page .final-cap-icon svg,
.home-page .diff-card-old-icon svg,
.home-page .diff-card-new-icon svg {
  stroke: var(--home-accent) !important;
}

.home-page .try-box-title,
.home-page .value-card-title,
.home-page .value-card-bigtitle,
.home-page .value-feature-title,
.home-page .preview-card-label,
.home-page .preview-table-name,
.home-page .diff-header h2,
.home-page .diff-card-old-text,
.home-page .diff-card-new-text,
.home-page .diff-bottom-text,
.home-page .final-header h2,
.home-page .final-card h3,
.home-page .final-cap-title,
.home-page .final-bridge-text,
.home-page .final-cta-text,
.home-page .preview-bottom-primary,
.home-page .section-title {
  color: var(--home-text) !important;
  -webkit-text-fill-color: currentColor !important;
  text-shadow: none !important;
}

/* 旧首页这两处使用了行内白色文字，必须显式覆盖。 */
.home-page .preview-section > .reveal > h2 {
  color: var(--home-text) !important;
  -webkit-text-fill-color: currentColor !important;
}

.home-page .preview-section > .reveal > p {
  color: var(--home-text-secondary) !important;
}

.home-page .try-box-sub,
.home-page .try-box-status,
.home-page .value-feature-desc,
.home-page .value-card-summary,
.home-page .preview-data-label,
.home-page .preview-table-sub,
.home-page .preview-bottom-secondary,
.home-page .diff-header p,
.home-page .final-header p,
.home-page .final-card li,
.home-page .final-cap-desc,
.home-page .final-card-sub,
.home-page .final-cta-hint,
.home-page .section-desc {
  color: var(--home-text-secondary) !important;
}

.home-page .try-box-status {
  min-height: 20px;
  grid-column: 1 / -1;
  margin: 0;
}

.home-page .try-box-status.loading {
  color: var(--home-accent) !important;
}

.home-page .try-box-status.success {
  color: var(--home-success) !important;
}

.home-page .try-box-status.error {
  color: var(--home-danger) !important;
}

/* 首页检索表单。 */
.home-page .try-mini,
.home-page .try-policy-select {
  min-height: 46px;
  background: var(--home-surface-soft) !important;
  border: 1px solid var(--home-border-strong) !important;
  color: var(--home-text) !important;
  box-shadow: none !important;
}

.home-page .try-mini,
.home-page .try-policy-select {
  border-radius: 12px;
}

.home-page .try-mini:hover,
.home-page .try-policy-select:hover {
  background: var(--home-hover) !important;
  border-color: #c7cbd1 !important;
}

.home-page .try-mini:focus,
.home-page .try-policy-select:focus {
  border-color: var(--home-accent) !important;
  background: #ffffff !important;
  box-shadow: 0 0 0 4px rgba(37, 99, 235, 0.1) !important;
}

.home-page .try-policy-select::placeholder {
  color: var(--home-placeholder) !important;
}

.home-page .policy-combobox-toggle svg {
  stroke: var(--home-text-secondary) !important;
}

.home-page .policy-combobox-toggle {
  right: 8px;
  width: 34px;
  height: 34px;
  min-height: 0;
  padding: 0;
  border: 0 !important;
  border-radius: 9px;
  background: transparent !important;
  color: var(--home-text-secondary) !important;
  box-shadow: none !important;
  transform: translateY(-50%) !important;
}

.home-page .policy-combobox-toggle:hover {
  background: #e9ebee !important;
}

.home-page .policy-combobox.open .policy-combobox-toggle {
  transform: translateY(-50%) !important;
}

.home-page .policy-combobox-menu {
  background: #ffffff !important;
  border: 1px solid var(--home-border) !important;
  color: var(--home-text) !important;
  box-shadow: 0 20px 48px rgba(23, 25, 28, 0.14) !important;
}

.home-page .policy-combobox-option {
  color: var(--home-text) !important;
}

.home-page .policy-combobox-option:hover,
.home-page .policy-combobox-option.active {
  background: var(--home-hover) !important;
}

.home-page .policy-combobox-summary {
  color: var(--home-text-secondary) !important;
  border-bottom-color: var(--home-border) !important;
}

.home-page .try-box-btn,
.home-page .value-card-cta,
.home-page .final-card-btn,
.home-page .final-cta-btn {
  background: var(--home-button) !important;
  border: 1px solid var(--home-button) !important;
  color: #ffffff !important;
  box-shadow: none !important;
}

.home-page .try-box-btn {
  min-height: 46px;
  border-radius: 12px;
  font-weight: 650;
}

.home-page .try-box-btn:hover,
.home-page .value-card-cta:hover,
.home-page .final-card-btn:hover,
.home-page .final-cta-btn:hover {
  background: var(--home-button-hover) !important;
  border-color: var(--home-button-hover) !important;
  filter: none !important;
  box-shadow: 0 10px 28px rgba(23, 25, 28, 0.17) !important;
}

.home-page .try-box-result {
  min-height: 72px;
  margin-top: auto;
  padding: 20px;
  border: 1px solid var(--home-border) !important;
  border-radius: 16px;
  background: linear-gradient(135deg, #fbfbfc, #f5f6f8) !important;
}

.home-page .result-num,
.home-page .result-num-inline,
.home-page .preview-data-num,
.home-page .preview-table-amount,
.home-page .preview-stars {
  color: var(--home-text) !important;
}

.home-page .result-num,
.home-page .result-num-inline {
  background: none !important;
  -webkit-background-clip: border-box !important;
  background-clip: border-box !important;
  -webkit-text-fill-color: currentColor !important;
}

.home-page .result-label {
  color: var(--home-text-secondary) !important;
}

.home-page .result-link,
.home-page .value-feature-tag,
.home-page .section-label,
.home-page .diff-card-new-label,
.home-page .preview-center-text {
  color: var(--home-accent) !important;
}

.home-page .result-link:hover {
  color: #1d4ed8 !important;
}

/* 企业与机构价值卡。 */
.home-page .value-section {
  padding: 64px 24px 96px;
}

.home-page .value-card {
  padding: 42px 38px;
}

.home-page .value-card-header {
  margin-bottom: 24px;
}

.home-page .value-card-bigtitle {
  font-size: 25px;
  letter-spacing: -0.025em;
}

.home-page .value-feature {
  padding: 20px;
  background: var(--home-surface-soft) !important;
  border: 1px solid transparent !important;
}

.home-page .value-feature:hover {
  transform: translateX(2px);
  background: var(--home-hover) !important;
  border-color: var(--home-border) !important;
}

.home-page .value-feature-num {
  background: var(--home-text) !important;
  color: #ffffff !important;
  box-shadow: none;
}

.home-page .value-feature-tag {
  background: var(--home-accent-soft) !important;
  border-color: #dbeafe !important;
}

.home-page .value-card-footer {
  border-top-color: var(--home-border) !important;
}

.home-page .value-card-cta,
.home-page .final-card-btn,
.home-page .final-cta-btn {
  border-radius: 12px;
}

/* 产品预览：像系统窗口，而不是深色演示板。 */
.home-page .preview-section {
  padding: 108px 24px;
  border-top: 1px solid var(--home-border);
  border-bottom: 1px solid var(--home-border);
  box-shadow: none !important;
}

.home-page .preview-grid {
  max-width: 1240px;
}

.home-page .preview-card {
  overflow: hidden;
  border: 1px solid var(--home-border) !important;
  border-radius: 22px;
}

.home-page .preview-card-bar {
  background: var(--home-surface-soft) !important;
  border-bottom: 1px solid var(--home-border) !important;
}

.home-page .preview-card-body,
.home-page .preview-data-item,
.home-page .preview-table,
.home-page .preview-reminder {
  background: #ffffff !important;
  color: var(--home-text) !important;
  border-color: var(--home-border) !important;
}

.home-page .preview-table-head {
  background: var(--home-surface-soft) !important;
  color: var(--home-text-secondary) !important;
  border-color: var(--home-border) !important;
}

.home-page .preview-table-row {
  color: var(--home-text-secondary) !important;
  border-color: var(--home-border) !important;
}

.home-page .preview-reminder-icon {
  background: var(--home-accent-soft) !important;
  color: var(--home-accent) !important;
}

.home-page .preview-center-line {
  background: var(--home-border-strong) !important;
}

.home-page .preview-center-dot,
.home-page .preview-center-line::after {
  background: var(--home-accent) !important;
}

/* 差异对比。 */
.home-page .diff-section {
  padding: 108px 24px;
  background: #ffffff !important;
  border-bottom: 1px solid var(--home-border);
}

.home-page .diff-section::before,
.home-page .final-section::before {
  display: none;
}

.home-page .diff-card-old,
.home-page .diff-card-new {
  padding: 30px 32px;
  box-shadow: none !important;
}

.home-page .diff-card-old {
  background: var(--home-surface-soft) !important;
  border-right: 0 !important;
}

.home-page .diff-card-new {
  border-left: 0 !important;
}

.home-page .diff-card-old-label {
  color: var(--home-text-secondary) !important;
}

.home-page .diff-card-old-text {
  color: var(--home-text-secondary) !important;
}

.home-page .diff-arrow {
  background: linear-gradient(90deg, var(--home-surface-soft), #ffffff) !important;
}

.home-page .diff-arrow svg {
  stroke: var(--home-accent) !important;
}

.home-page .diff-bottom-text .highlight,
.home-page .final-bridge-text .accent,
.home-page .final-cta-text .highlight {
  color: var(--home-accent) !important;
  -webkit-text-fill-color: currentColor !important;
  background: none !important;
}

/* 收尾说明与 CTA。 */
.home-page .final-section {
  padding: 108px 24px 0;
}

.home-page .final-header h2 {
  font-size: clamp(36px, 4.4vw, 56px);
  letter-spacing: -0.045em;
  background: none !important;
}

.home-page .final-card {
  padding: 40px 36px;
}

.home-page .final-card li::before {
  background: var(--home-accent) !important;
}

.home-page .final-card li .tag-pass {
  background: #eefbf3 !important;
  color: var(--home-success) !important;
}

.home-page .final-card li .tag-fail {
  background: var(--home-surface-soft) !important;
  color: var(--home-text-secondary) !important;
}

.home-page .final-card li .tag-gap {
  background: #fff8e6 !important;
  color: var(--home-warning) !important;
}

.home-page .final-cap-card {
  padding: 32px 20px;
  border: 1px solid var(--home-border) !important;
  border-radius: 18px;
  box-shadow: none !important;
}

.home-page .final-cta {
  padding: 36px 0 72px;
}

/* 页脚保持克制的浅色收尾。 */
.home-page .site-footer {
  margin: 0 -24px;
  padding: 38px max(28px, calc((100vw - 1440px) / 2 + 28px));
  background: #ffffff !important;
  color: var(--home-text-secondary) !important;
  border-top: 1px solid var(--home-border) !important;
}

.home-page .site-footer a,
.home-page .footer-brand,
.home-page .footer-tagline,
.home-page .footer-qr-text {
  color: var(--home-text-secondary) !important;
}

.home-page .site-footer a:hover {
  color: var(--home-text) !important;
}

.home-page .footer-qr-img {
  background: var(--home-surface-soft) !important;
  border-color: var(--home-border) !important;
}

.home-page .footer-qr-img svg {
  stroke: var(--home-text-secondary) !important;
}

/* 首页身份选择弹层也使用同一视觉语言。 */
.home-page .identity-modal-bg {
  background: rgba(23, 25, 28, 0.38) !important;
  backdrop-filter: blur(8px);
  -webkit-backdrop-filter: blur(8px);
}

.home-page .identity-modal-box {
  background: #ffffff !important;
  color: var(--home-text) !important;
  border: 1px solid rgba(255, 255, 255, 0.7) !important;
  border-radius: 22px;
  box-shadow: 0 30px 90px rgba(23, 25, 28, 0.2) !important;
}

.home-page .identity-modal-title,
.home-page .identity-option-title,
.home-page .identity-option-name {
  color: var(--home-text) !important;
}

.home-page .identity-option {
  background: var(--home-surface-soft) !important;
  color: var(--home-text) !important;
  border-color: var(--home-border) !important;
}

.home-page .identity-option:hover {
  background: var(--home-hover) !important;
  border-color: var(--home-border-strong) !important;
}

.home-page .identity-option-desc,
.home-page .identity-modal-close {
  color: var(--home-text-secondary) !important;
}

.home-page .identity-modal-close {
  border-color: var(--home-border) !important;
}

@media (max-width: 900px) {
  .home-page > .nav,
  .home-page > nav.nav {
    height: 64px;
    padding: 0 20px !important;
  }

  .home-page .hero {
    min-height: 390px;
    padding: 128px 22px 72px;
  }

  .home-page .hero h1 {
    font-size: clamp(38px, 9vw, 58px);
  }

  .home-page .try-strip,
  .home-page .value-section,
  .home-page .preview-section,
  .home-page .diff-section,
  .home-page .final-section {
    padding-right: 20px;
    padding-left: 20px;
  }

  .home-page .try-strip-inner,
  .home-page .value-inner,
  .home-page .final-dual {
    grid-template-columns: 1fr;
  }

  .home-page .try-box {
    min-height: 0;
  }

  .home-page .preview-center {
    min-height: 56px;
  }

  .home-page .preview-center-text {
    writing-mode: horizontal-tb;
    letter-spacing: 2px;
  }

  .home-page .preview-center-line {
    width: 100%;
    height: 1px;
  }

  .home-page .site-footer {
    margin-right: -20px;
    margin-left: -20px;
    padding: 32px 20px;
  }
}

@media (max-width: 600px) {
  .home-page .nav-title {
    font-size: 17px;
  }

  .home-page .nav-logo {
    width: 34px;
    height: 34px;
  }

  .home-page .nav-auth-btn {
    min-height: 36px;
    padding: 7px 12px;
  }

  .home-page .hero {
    padding: 112px 18px 60px;
  }

  .home-page .hero h1 {
    font-size: 38px;
    letter-spacing: -0.045em;
  }

  .home-page .hero-lead,
  .home-page .hero p {
    font-size: 17px;
  }

  .home-page .hero-free {
    max-width: 100%;
    padding: 8px 12px;
    border-radius: 14px;
  }

  .home-page .try-strip {
    padding-top: 44px;
  }

  .home-page .try-box,
  .home-page .value-card,
  .home-page .final-card {
    padding: 26px 20px;
    border-radius: 20px;
  }

  .home-page .value-card-bigtitle {
    font-size: 21px;
  }

  .home-page .value-feature-desc,
  .home-page .value-feature-tag {
    margin-left: 0;
  }

  .home-page .diff-row {
    grid-template-columns: 1fr;
  }

  .home-page .diff-card-old,
  .home-page .diff-card-new {
    border: 1px solid var(--home-border) !important;
    border-radius: 16px !important;
  }

  .home-page .diff-arrow {
    min-height: 44px;
    transform: rotate(90deg);
    background: transparent !important;
  }

  .home-page .final-capabilities {
    grid-template-columns: 1fr 1fr;
    gap: 12px;
  }

  .home-page .site-footer {
    flex-direction: column;
    gap: 24px;
    align-items: flex-start;
  }
}

@media (prefers-reduced-motion: reduce) {
  .home-page *,
  .home-page *::before,
  .home-page *::after {
    scroll-behavior: auto !important;
    animation-duration: 0.01ms !important;
    animation-iteration-count: 1 !important;
    transition-duration: 0.01ms !important;
  }
}
