:root {
  color-scheme: dark;
}

html {
  scroll-behavior: smooth;
  background: #070b14;
}

body {
  background: #070b14;
  text-rendering: optimizeLegibility;
}

.synonai-skip-link {
  position: fixed;
  top: 12px;
  left: 16px;
  z-index: 9999;
  padding: 10px 16px;
  border-radius: 9px;
  background: #e8fff8;
  color: #06231d;
  font: 600 14px/1.2 "Noto Sans SC", sans-serif;
  text-decoration: none;
  transform: translateY(-160%);
  transition: transform 180ms ease;
}

.synonai-skip-link:focus {
  transform: translateY(0);
}

#root a:focus-visible,
#root button:focus-visible,
.synonai-skip-link:focus-visible {
  outline: 2px solid #5eead4;
  outline-offset: 4px;
}

/* Framer Motion 仍负责首屏动效；短暂兜底后，离屏内容不再永久停在透明初始态。 */
html.synonai-reveal-complete #root [style*="opacity: 0"][style*="transform"] {
  opacity: 1 !important;
  transform: none !important;
}

.synonai-aidd-entry,
.synonai-aidd-hero-link {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 8px;
  border: 1px solid rgba(0, 212, 170, 0.42);
  color: #b8fff0;
  background: rgba(0, 212, 170, 0.08);
  text-decoration: none;
  transition: border-color 180ms ease, background 180ms ease, transform 180ms ease;
}

.synonai-aidd-entry:hover,
.synonai-aidd-hero-link:hover {
  border-color: rgba(94, 234, 212, 0.78);
  background: rgba(0, 212, 170, 0.14);
  transform: translateY(-1px);
}

.synonai-aidd-entry {
  padding: 9px 16px;
  border-radius: 10px;
  font-size: 14px;
  font-weight: 600;
  white-space: nowrap;
}

.synonai-aidd-hero-link {
  min-height: 52px;
  padding: 14px 28px;
  border-radius: 12px;
  font-size: 16px;
  font-weight: 600;
}

.synonai-noscript {
  max-width: 760px;
  margin: 15vh auto;
  padding: 32px;
  color: #e8fff8;
  font-family: "Noto Sans SC", sans-serif;
}

.synonai-noscript p {
  margin: 18px 0 26px;
  color: #9ec7be;
  line-height: 1.8;
}

.synonai-noscript a {
  color: #5eead4;
}

@media (max-width: 767px) {
  .synonai-aidd-entry {
    width: 100%;
    margin-top: 10px;
  }

  .synonai-aidd-hero-link {
    width: 100%;
  }
}

@media (prefers-reduced-motion: reduce) {
  html {
    scroll-behavior: auto;
  }

  *,
  *::before,
  *::after {
    animation-duration: 0.01ms !important;
    animation-iteration-count: 1 !important;
    transition-duration: 0.01ms !important;
  }

  #root [style*="opacity: 0"][style*="transform"] {
    opacity: 1 !important;
    transform: none !important;
  }
}
