/* ==========================================================================
   品牌收口 + 扁平化（低玻璃）+ 协议居中
   主题色严格使用 #0C3386（浅色/深色均以品牌蓝为主）
   ========================================================================== */

/* ---------- 浅色模式 ---------- */
@media (prefers-color-scheme: light) {
  :root {
    --cyan: #0c3386;
    --cyan-soft: #0a2c73;
    --blue: #0c3386;
    --violet: #0c3386;
    --gradient-brand: linear-gradient(115deg, #0c3386 0%, #1550a8 62%, #3c6bb8 100%);
    --gradient-text: linear-gradient(100deg, #0c3386 0%, #1550a8 60%, #3c6bb8 100%);
  }

  .header-shell,
  .site-header.is-scrolled .header-shell {
    background: #ffffff !important;
    border-color: rgba(12, 51, 134, 0.13) !important;
    box-shadow: 0 4px 14px -12px rgba(12, 51, 134, 0.28) !important;
  }
  .nav__link.is-active,
  .nav__link.is-active:hover {
    background: #0c3386 !important;
    color: #ffffff !important;
    box-shadow: none !important;
  }
  .btn--primary,
  .header__cta {
    background: #0c3386 !important;
    color: #ffffff !important;
    box-shadow: none !important;
  }
  .btn--primary:hover,
  .header__cta:hover {
    background: #0a2c73 !important;
  }
  .btn--glass {
    background: #ffffff !important;
    border-color: rgba(12, 51, 134, 0.14) !important;
    color: #0c3386 !important;
    box-shadow: none !important;
  }
  .btn--glass:hover { background: #f8faff !important; border-color: rgba(12, 51, 134, 0.28) !important; }
  .link-arrow,
  .link-arrow:hover,
  .text-link:hover,
  .copy-btn:hover { color: #0c3386 !important; }
  .eyebrow {
    background: #ffffff !important;
    border-color: rgba(12, 51, 134, 0.12) !important;
    color: #0c3386 !important;
  }
  .eyebrow--plain { background: transparent !important; border-color: transparent !important; }
  .tag {
    background: rgba(12, 51, 134, 0.06) !important;
    border-color: rgba(12, 51, 134, 0.15) !important;
    color: #0c3386 !important;
  }
  .tag--violet { background: rgba(12, 51, 134, 0.05) !important; border-color: rgba(12, 51, 134, 0.13) !important; color: #1550a8 !important; }
  .tag--mint { background: rgba(47, 158, 111, 0.07) !important; border-color: rgba(47, 158, 111, 0.2) !important; color: #237a55 !important; }
  .tag--amber { background: rgba(169, 120, 31, 0.06) !important; border-color: rgba(169, 120, 31, 0.2) !important; color: #8a641f !important; }
  .tag--muted { background: #f7f9fd !important; border-color: rgba(12, 51, 134, 0.1) !important; color: var(--ink-3) !important; }
  .filter-btn.is-active { background: #0c3386 !important; }
  .subscribe-btn, .pagination__link.is-active { background: #0c3386 !important; }

  /* 平整卡片：不再使用玻璃渐变与反光 */
  .glass,
  .glass-card,
  .glass-panel,
  .glass-tile,
  .glass-window,
  .glass-figure,
  .legal-document,
  .cta-band__inner,
  .float-card,
  .partner-showcase,
  .map-panel__card,
  .metric,
  .eyebrow,
  .legal-tabs__link,
  .to-top {
    background: #ffffff !important;
    border: 1px solid rgba(12, 51, 134, 0.1) !important;
    box-shadow: none !important;
    -webkit-backdrop-filter: none !important;
    backdrop-filter: none !important;
  }
  .glass-card::before,
  .glass-card::after,
  .glass-panel::before,
  .glass-panel::after,
  .glass-window::before,
  .glass-window::after,
  .float-card::after,
  .cta-band__inner::before,
  .cta-band__inner::after { display: none !important; }
  .cta-band__inner { background: #f0f5fd !important; border-color: rgba(12, 51, 134, 0.1) !important; }
  .glass-card:hover,
  .glass-panel:hover,
  .glass-window:hover,
  .hover-lift:hover {
    border-color: rgba(12, 51, 134, 0.22) !important;
    box-shadow: none !important;
    transform: translateY(-3px);
  }
  .hero__badge,
  .partner-showcase,
  .map-panel__card,
  .legal-document { border-color: rgba(12, 51, 134, 0.1) !important; }
  .legal-tabs__link.is-current {
    background: #0c3386 !important;
    border-color: #0c3386 !important;
    color: #ffffff !important;
  }
  .metric__num,
  .gradient-text {
    background-image: linear-gradient(100deg, #0c3386 0%, #1550a8 72%, #2f5c9e 100%) !important;
    -webkit-background-clip: text !important;
    background-clip: text !important;
    -webkit-text-fill-color: transparent !important;
  }
  .hero__badge strong,
  .fact-row strong,
  .solution-card h3,
  .case-metric strong,
  .contact-card__value { color: #0b1b33; }

  /* 协议页居中 */
  .legal-content { max-width: 960px; margin-inline: auto; }
  .legal-tabs { justify-content: center; }
  .legal-document { max-width: 960px; margin-inline: auto; }
  .legal-document + .legal-document { margin-top: 20px; }
  .page-hero.legal-hero .page-hero__inner { max-width: 1180px; }
}

/* ---------- 深色模式 ---------- */
@media (prefers-color-scheme: dark) {
  :root {
    --cyan: #9db9e6;
    --cyan-soft: #d7e4f7;
    --blue: #0c3386;
    --violet: #0c3386;
    --gradient-brand: linear-gradient(115deg, #0c3386 0%, #1550a8 65%, #3c6bb8 100%);
    --gradient-text: linear-gradient(100deg, #f4f8ff 0%, #d7e4f7 55%, #9db9e6 100%);
  }
  .btn--primary,
  .header__cta {
    background: #0c3386 !important;
    color: #ffffff !important;
    box-shadow: none !important;
  }
  .btn--primary:hover { background: #0a2c73 !important; }
  .nav__link.is-active,
  .nav__link.is-active:hover {
    background: #0c3386 !important;
    color: #ffffff !important;
    box-shadow: none !important;
  }
  .nav__link::after { background: #4a76c4 !important; }
  .link-arrow { color: #9db9e6 !important; }
  .link-arrow:hover { color: #ffffff !important; }
  .eyebrow { color: #9db9e6 !important; }
  .tag {
    background: rgba(157, 185, 230, 0.08) !important;
    border-color: rgba(157, 185, 230, 0.2) !important;
    color: #b9cee9 !important;
  }
  .tag--mint { color: #7dd8b0 !important; }

  /* 深色模式同样扁平化：去掉玻璃高光与重阴影 */
  .glass,
  .glass-card,
  .glass-panel,
  .glass-tile,
  .glass-window,
  .glass-figure,
  .legal-document,
  .cta-band__inner,
  .float-card,
  .partner-showcase,
  .metric,
  .to-top {
    background: #0a1423 !important;
    border-color: rgba(157, 185, 230, 0.12) !important;
    box-shadow: none !important;
    -webkit-backdrop-filter: none !important;
    backdrop-filter: none !important;
  }
  .glass-card::before,
  .glass-card::after,
  .glass-panel::before,
  .glass-panel::after,
  .glass-window::before,
  .glass-window::after,
  .float-card::after,
  .cta-band__inner::before,
  .cta-band__inner::after { display: none !important; }
  .cta-band__inner { background: #0a1526 !important; }
  .glass-card:hover,
  .glass-panel:hover,
  .glass-window:hover,
  .hover-lift:hover {
    border-color: rgba(157, 185, 230, 0.24) !important;
    box-shadow: none !important;
    transform: translateY(-3px);
  }
  .legal-tabs__link.is-current {
    background: #0c3386 !important;
    border-color: #0c3386 !important;
    color: #ffffff !important;
  }
  .legal-content { max-width: 960px; margin-inline: auto; }
  .legal-tabs { justify-content: center; }
  .legal-document { max-width: 960px; margin-inline: auto; }
}

/* ==========================================================================
   协议页面：正式文件排版（桌面/移动端）
   ========================================================================== */
.legal-masthead {
  padding: 112px 0 0;
  background: transparent;
}
.legal-masthead .container { max-width: 1120px; }
.legal-masthead .breadcrumb { margin-bottom: 18px; }
.legal-masthead__row {
  display: flex;
  align-items: flex-end;
  justify-content: space-between;
  gap: 32px;
  padding-bottom: 20px;
  border-bottom: 1px solid var(--line);
}
.legal-masthead__kicker {
  margin: 0 0 7px;
  color: var(--ink-3);
  font-family: var(--font-display);
  font-size: 10px;
  letter-spacing: 0.16em;
  text-transform: uppercase;
}
.legal-masthead__title {
  margin: 0;
  color: var(--ink);
  font-family: var(--font-display);
  font-size: clamp(32px, 4.4vw, 46px);
  font-weight: 600;
  letter-spacing: -0.02em;
  line-height: 1.15;
}
.legal-masthead__meta {
  display: flex;
  margin: 0;
  overflow: hidden;
  border: 1px solid var(--line);
  border-radius: 12px;
  background: transparent;
}
.legal-masthead__meta > div {
  padding: 9px 15px;
  border-left: 1px solid var(--line);
}
.legal-masthead__meta > div:first-child { border-left: 0; }
.legal-masthead__meta dt {
  color: var(--ink-3);
  font-size: 9.5px;
  letter-spacing: 0.08em;
}
.legal-masthead__meta dd {
  margin: 3px 0 0;
  color: var(--ink);
  font-size: 12.5px;
  font-weight: 600;
  white-space: nowrap;
}

.legal-section {
  padding: 18px 0 clamp(58px, 7vw, 88px) !important;
}
.legal-content {
  max-width: 1120px;
  margin-inline: auto;
}
.legal-tabs {
  justify-content: center;
  margin: 0 0 20px;
}
.legal-shell {
  display: grid;
  grid-template-columns: 208px minmax(0, 1fr);
  gap: clamp(28px, 4vw, 48px);
  align-items: start;
}
.legal-toc {
  position: sticky;
  top: 108px;
  padding: 2px 0 0 16px;
  border-left: 1px solid var(--line);
}
.legal-toc__title {
  margin: 0 0 12px;
  color: var(--ink-3);
  font-family: var(--font-display);
  font-size: 9.5px;
  letter-spacing: 0.16em;
}
.legal-toc__list { margin: 0; padding: 0; list-style: none; }
.legal-toc__list li { margin: 0 0 9px; }
.legal-toc__list a {
  display: block;
  color: var(--ink-3);
  font-size: 12.2px;
  line-height: 1.55;
}
.legal-toc__list a:hover { color: var(--cyan); }

.legal-body {
  min-width: 0;
  padding: clamp(26px, 3.2vw, 42px);
  border: 1px solid var(--line);
  border-radius: 16px;
}
.legal-body .legal-document {
  max-width: none !important;
  margin: 0 !important;
  padding: 0 !important;
  border: 0 !important;
  border-radius: 0 !important;
  background: none !important;
  box-shadow: none !important;
}
.legal-body .legal-document + .legal-document {
  margin-top: 28px !important;
  padding-top: 28px !important;
  border-top: 1px solid var(--line) !important;
}
.legal-body .legal-document__head {
  display: flex;
  align-items: flex-start;
  justify-content: space-between;
  gap: 20px;
  margin: 0 0 16px;
  padding-bottom: 14px;
  border-bottom: 1px solid var(--line);
}
.legal-body .legal-document__head h2 { margin: 0; font-size: clamp(21px, 2.4vw, 26px); }
.legal-body .legal-document__head .eyebrow { display: none !important; }
.legal-body .legal-version { display: none !important; }
.legal-body .updated {
  margin: 0 0 18px;
  color: var(--ink-3);
  font-size: 11.5px;
  letter-spacing: 0.02em;
}
.legal-body h3 { margin: 26px 0 9px; font-size: 16px; line-height: 1.5; }
.legal-body p { margin: 0 0 12px; font-size: 14px; line-height: 1.92; }
.legal-body ul { margin: 0 0 14px; padding-left: 1.25em; }
.legal-body li { margin-bottom: 6px; font-size: 13.8px; line-height: 1.85; }
.legal-body a { color: var(--cyan); text-decoration: underline; text-underline-offset: 3px; }
.legal-body .data-inventory { display: grid; gap: 10px; margin: 14px 0 16px; }
.legal-body .data-inventory__item { padding: 15px 16px; border-radius: 10px; }
.legal-body .data-inventory__item p { margin: 5px 0; }
.legal-body .data-inventory__item span { font-size: 11.5px; }
.legal-body .legal-links { display: grid; grid-template-columns: 1fr 1fr; gap: 8px; margin: 16px 0 0; }
.legal-body .legal-links a { padding: 12px 13px; border-radius: 10px; }
.legal-body .legal-links a strong { font-size: 12.5px; }
.legal-body .legal-links a span { font-size: 10.5px; }
.legal-body .legal-status { margin: 14px 0 18px; padding: 16px; border-radius: 10px; }
.legal-body .legal-status strong { font-size: 14px; }
.legal-body .legal-contact-card { grid-template-columns: 1fr 1.4fr; margin: 16px 0; border-radius: 10px; }
.legal-body .legal-contact-card > div { padding: 15px 17px; }
.legal-body .legal-contact-card span { font-size: 10.5px; }
.legal-body .legal-contact-card strong,
.legal-body .legal-contact-card a { font-size: 13px; }

@media (prefers-color-scheme: light) {
  .legal-masthead__meta { background: #ffffff; }
  .legal-body { background: #ffffff; }
  .legal-body .data-inventory__item { background: #f7f9fd; border-color: rgba(12, 51, 134, 0.08); }
  .legal-body .legal-links a { background: #f8fafd; border-color: rgba(12, 51, 134, 0.09); }
  .legal-body .legal-status { background: rgba(47, 158, 111, 0.05); border-color: rgba(47, 158, 111, 0.2); }
  .legal-body .legal-contact-card { background: rgba(12, 51, 134, 0.07); border-color: rgba(12, 51, 134, 0.1); }
  .legal-body .legal-contact-card > div { background: #ffffff; }
}
@media (prefers-color-scheme: dark) {
  .legal-masthead__meta { background: #0a1423; }
  .legal-body { background: #0a1423; }
  .legal-body .data-inventory__item { background: #0d1a2e; border-color: rgba(157, 185, 230, 0.12); }
  .legal-body .legal-links a { background: #0d1a2e; border-color: rgba(157, 185, 230, 0.12); }
  .legal-body .legal-status { background: rgba(66, 184, 131, 0.05); border-color: rgba(66, 184, 131, 0.18); }
  .legal-body .legal-contact-card { background: rgba(157, 185, 230, 0.1); border-color: rgba(157, 185, 230, 0.12); }
  .legal-body .legal-contact-card > div { background: #0a1423; }
}

/* 协议页在手机端尽量紧凑，不浪费纵向空间 */
@media (max-width: 960px) {
  .legal-shell { grid-template-columns: minmax(0, 1fr); gap: 0; }
  .legal-toc { display: none; }
}
@media (max-width: 768px) {
  .legal-masthead { padding-top: 88px; }
  .legal-masthead .breadcrumb { margin-bottom: 14px; }
  .legal-masthead__row { display: block; padding-bottom: 16px; }
  .legal-masthead__title { font-size: clamp(29px, 8.4vw, 38px); }
  .legal-masthead__meta {
    display: grid;
    grid-template-columns: 1fr 1fr;
    margin-top: 16px;
    border-radius: 10px;
  }
  .legal-masthead__meta > div {
    padding: 9px 12px;
    border-top: 1px solid var(--line);
    border-left: 0;
  }
  .legal-masthead__meta > div:nth-child(-n+2) { border-top: 0; }
  .legal-masthead__meta > div:nth-child(2n) { border-left: 1px solid var(--line); }
  .legal-masthead__meta > div:last-child { grid-column: 1 / -1; border-top: 1px solid var(--line); }
  .legal-section { padding: 12px 0 48px !important; }
  .legal-tabs {
    flex-wrap: wrap;
    justify-content: center;
    gap: 6px;
    margin-bottom: 14px;
    overflow: visible;
  }
  .legal-tabs__link { padding: 8px 12px; font-size: 11.5px; }
  .legal-body { padding: 18px 15px; border-radius: 12px; }
  .legal-body .legal-document__head { margin-bottom: 12px; padding-bottom: 11px; }
  .legal-body .legal-document__head h2 { font-size: 21px; }
  .legal-body h3 { margin: 22px 0 8px; font-size: 15.5px; }
  .legal-body p { margin-bottom: 10px; font-size: 13.5px; line-height: 1.88; }
  .legal-body li { font-size: 13px; line-height: 1.82; }
  .legal-body .updated { font-size: 11px; margin-bottom: 14px; }
  .legal-body .legal-links { grid-template-columns: 1fr; }
  .legal-body .legal-status { padding: 13px; }
  .legal-body .legal-contact-card { grid-template-columns: 1fr; }
  .legal-body .legal-contact-card > div { padding: 13px 14px; }
}

/* ==========================================================================
   移动端 Footer：更紧凑、两列信息、协议区不再堆成一长列
   ========================================================================== */
@media (max-width: 900px) {
  .footer__inner { grid-template-columns: 1fr 1fr; gap: 26px 20px; }
  .footer__brand, .footer__contact-col { grid-column: 1 / -1; }
}
@media (max-width: 768px) {
  .site-footer { padding-top: 46px; }
  .footer__inner { grid-template-columns: 1fr 1fr; gap: 24px 18px; padding-bottom: 28px; }
  .footer__brand { grid-column: 1 / -1; }
  .footer__contact-col { grid-column: 1 / -1; }
  .footer__brand .brand { margin-bottom: 14px; }
  .footer__brand .brand__logo { height: 34px; }
  .footer__desc { max-width: none; font-size: 12.5px; line-height: 1.8; }
  .footer__social { margin-top: 14px; gap: 8px; }
  .social-link { width: 36px; height: 36px; border-radius: 10px; }
  .footer__title { margin-bottom: 10px; font-size: 11.5px; letter-spacing: 0.12em; }
  .footer__links a { padding: 3px 0; font-size: 12.5px; }
  .footer__contact {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 10px 16px;
  }
  .footer__contact li { gap: 2px; }
  .footer__contact li:nth-child(3) { grid-column: 1 / -1; }
  .footer__contact span { font-size: 9.5px; letter-spacing: 0.1em; }
  .footer__contact a,
  .footer__contact address,
  .footer__contact p { font-size: 12.5px; line-height: 1.65; }
  .footer__bottom { flex-direction: column; align-items: flex-start; gap: 8px; padding-block: 16px; }
  .footer__legal {
    display: flex !important;
    flex-wrap: wrap;
    align-items: center;
    gap: 6px 12px;
    font-size: 11.5px;
    line-height: 1.7;
  }
  .footer__beian { gap: 4px; }
  .footer__beian img { width: 13px; height: 14px; }
}


/* 首屏收敛：去掉跨屏 HUD 文字，避免宽屏下与标题、3D 抢位置 */
.hero { overflow: clip; }
.hero__interface,
.hero__scroll { display: none !important; }
.hero__canvas { filter: none; }
@media (min-width: 1600px) {
  .container { max-width: 1440px; }
  .hero__inner { grid-template-columns: minmax(0, 1.02fr) minmax(0, 0.98fr); }
  .hero__content { max-width: 640px; }
}

