/* 深浅双主题切换层：控件、双套背景资源与两个主题共享的局部修正 */

html { background:var(--ink) }

.theme-toggle {
  position:relative;display:grid;place-items:center;flex:0 0 38px;width:38px;height:38px;padding:0;
  color:var(--gold-l);background:rgba(255,255,255,.025);border:1px solid var(--border);border-radius:50%;
  cursor:pointer;overflow:hidden;-webkit-tap-highlight-color:transparent;
  transition:color var(--trans),background var(--trans),border-color var(--trans),transform var(--trans),box-shadow var(--trans);
}
.theme-toggle:hover,.theme-toggle:focus-visible {
  color:var(--gold);border-color:rgba(200,168,75,.38);background:rgba(200,168,75,.08);
  box-shadow:none;transform:translateY(-1px);
}
.theme-toggle:active { transform:scale(.94) }
.theme-toggle__icon {
  position:absolute;width:18px;height:18px;fill:none;stroke:currentColor;stroke-width:1.7;stroke-linecap:round;stroke-linejoin:round;
  transition:opacity .28s ease,transform .42s cubic-bezier(.2,.8,.2,1);
}
.theme-toggle__icon--sun { opacity:1;transform:rotate(0deg) scale(1) }
.theme-toggle__icon--moon { opacity:0;transform:rotate(-38deg) scale(.62) }

html[data-theme="light"] .theme-toggle {
  color:#0066CC;background:rgba(255,255,255,.82);border-color:rgba(29,29,31,.11);
  box-shadow:0 7px 22px rgba(29,29,31,.06);
}
html[data-theme="light"] .theme-toggle:hover,
html[data-theme="light"] .theme-toggle:focus-visible {
  color:#0071E3;border-color:rgba(0,113,227,.28);background:rgba(0,113,227,.055);box-shadow:0 7px 22px rgba(29,29,31,.06);
}
html[data-theme="light"] .theme-toggle__icon--sun { opacity:0;transform:rotate(38deg) scale(.62) }
html[data-theme="light"] .theme-toggle__icon--moon { opacity:1;transform:rotate(0deg) scale(1) }

html[data-theme="dark"] .hero__backdrop { background-image:url('images/dark/hero-geo-bg.jpg') }
html[data-theme="light"] .hero__backdrop { background-image:url('images/light/hero-geo-bg.jpg') }
html[data-theme="dark"] .contact::before { background-image:url('images/dark/hero-geo-bg.jpg') }
html[data-theme="light"] .contact::before { background-image:url('images/light/hero-geo-bg.jpg') }
html[data-theme="dark"] .services::before,
html[data-theme="light"] .services::before {
  background-position:center;background-repeat:no-repeat;background-size:cover;
}
html[data-theme="dark"] .services::before { background-image:url('images/dark/services-network-background.jpg');opacity:.34;filter:saturate(.88) }
html[data-theme="light"] .services::before { background-image:url('images/light/services-network-background.jpg');opacity:.72;filter:saturate(.72) }
html[data-theme="dark"] .proof::before { background-image:url('images/dark/proof-citation-background.jpg');opacity:.46;filter:saturate(.9) }
html[data-theme="light"] .proof::before { background-image:url('images/light/proof-citation-background.jpg');opacity:.44;filter:saturate(.72) }

/* 最终首页的流程区统一去除分割线、图片遮罩、边框与阴影 */
.method__visual {
  align-self:center;
  aspect-ratio:1122 / 1402;
  background:transparent;border:0;box-shadow:none;
}
.method__visual::before,.method__visual::after { display:none }
html[data-theme="dark"] .method::before { background:radial-gradient(circle at 76% 50%,rgba(200,168,75,.085),transparent 28%) }
html[data-theme="light"] .method::before { background:radial-gradient(circle at 76% 50%,rgba(0,113,227,.07),transparent 28%) }
html[data-theme="dark"] .method__visual figcaption span { color:var(--gold-l) }
html[data-theme="dark"] .method__visual figcaption strong { color:#fff;text-shadow:none }
html[data-theme="light"] .method__visual figcaption span { color:var(--gold) }
html[data-theme="light"] .method__visual figcaption strong { color:var(--text);text-shadow:none }

html.theme-changing *,html.theme-changing *::before,html.theme-changing *::after {
  transition-duration:.28s!important;
}

@media(max-width:768px) {
  .nav__inner { gap:.75rem }
  .theme-toggle { margin-left:auto }
  .nav__toggle { margin-left:0 }
}

@media(prefers-reduced-motion:reduce) {
  .theme-toggle,.theme-toggle__icon { transition:none }
}
