/* =========================================================
   昆迪信息官网 - 深色科技感视觉层 v4
   内容不变，仅增强视觉与动效
   设计基调：深蓝黑底 + 霓虹渐变(青/蓝/紫) + 玻璃拟态
   ========================================================= */

/* ---------- 设计变量翻转 ---------- */
:root {
  --color-primary: #3b82f6 !important;
  --color-primary-light: #60a5fa !important;
  --color-primary-dark: #2563eb !important;
  --color-neutral-100: #0d1526 !important;   /* 原浅色背景 -> 深色 */
  --color-neutral-200: #1a2440 !important;
  --color-neutral-800: #dbe6f5 !important;   /* 原深色文字 -> 浅色 */
  --color-neutral-900: #eaf2ff !important;
}

/* ---------- 全局深色背景 ---------- */
html { scroll-behavior: smooth; }

body {
  background: radial-gradient(1200px 800px at 80% -10%, rgba(59, 130, 246, .12), transparent 60%),
    radial-gradient(1000px 600px at 10% 110%, rgba(0, 212, 255, .08), transparent 55%),
    linear-gradient(160deg, #070b16 0%, #0a1224 40%, #0d1b2a 70%, #0a1224 100%) !important;
  background-attachment: fixed !important;
  color: #dbe6f5 !important;
}

::selection { background: rgba(0, 212, 255, .25); color: #fff; }

/* 全局文字适配深色 */
h1, h2, h3, h4, h5, h6 {
  color: #eaf2ff !important;
}
p, li, td, th, blockquote, strong, em {
  color: #c3d4ea !important;
}
span, div, label {
  color: inherit;
}
.content-text p, .content-text h2, .vision-content p {
  color: #c3d4ea !important;
}

/* ---------- 粒子背景层 ---------- */
#qdParticles {
  position: fixed;
  inset: 0;
  z-index: 0;
  pointer-events: none;
}
body > *:not(#qdParticles):not(script):not(style):not(nav):not(.floating-toolbar):not(#qrModal) {
  position: relative;
  z-index: 1;
}

/* 浮动工具栏：固定定位，不随内容层改变 */
.floating-toolbar {
  position: fixed !important;
  top: 50% !important;
  right: 20px !important;
  bottom: auto !important;
  left: auto !important;
  transform: translateY(-50%);
  z-index: 1000 !important;
  display: flex;
  flex-direction: column;
  gap: 10px;
}
.floating-toolbar .toolbar-button {
  position: relative !important;
  right: 0 !important;
  top: 0 !important;
}
#qrModal {
  position: fixed !important;
  z-index: 2000 !important;
}

/* ---------- 导航栏：深色毛玻璃 ---------- */
nav[data-astro-cid-j7pv25f6],
nav {
  background: rgba(8, 13, 26, .72) !important;
  backdrop-filter: saturate(160%) blur(16px) !important;
  -webkit-backdrop-filter: saturate(160%) blur(16px) !important;
  border-bottom: 1px solid rgba(0, 212, 255, .12) !important;
  box-shadow: 0 4px 24px -8px rgba(0, 0, 0, .5) !important;
  transition: box-shadow .4s ease, background .4s ease;
}
nav.scrolled {
  background: rgba(6, 10, 22, .88) !important;
  box-shadow: 0 8px 32px -8px rgba(0, 0, 0, .7), 0 1px 0 rgba(0, 212, 255, .08) !important;
}
nav .logo,
nav .logo span,
nav .logo a,
.nav-content .logo {
  color: #fff !important;
}
nav .logo img {
  background: #fff !important;
  border-radius: 8px !important;
  padding: 2px !important;
  box-shadow: 0 0 0 1px rgba(0, 212, 255, .2), 0 2px 8px rgba(0, 0, 0, .4) !important;
}
nav .nav-links a,
.nav-links a {
  color: #c3d4ea !important;
  text-shadow: 0 1px 2px rgba(0,0,0,.3);
}
nav .nav-links a:hover,
.nav-links a:hover {
  color: #00d4ff !important;
}
nav .nav-links a::after {
  background: linear-gradient(90deg, #00d4ff, #7b2ff7) !important;
  box-shadow: 0 0 8px rgba(0, 212, 255, .6);
}

/* ---------- 各页面 Hero：深色科技感 ---------- */
.hero,
.about-hero,
.services-hero,
.contact-hero,
.privacy-hero,
.terms-hero,
.sitemap-hero,
.service-detail-hero,
section[class*="hero"] {
  position: relative !important;
  overflow: hidden !important;
  background:
    radial-gradient(800px 400px at 20% 0%, rgba(59, 130, 246, .18), transparent 60%),
    radial-gradient(600px 300px at 85% 100%, rgba(0, 212, 255, .12), transparent 55%),
    radial-gradient(500px 300px at 60% 40%, rgba(123, 47, 247, .10), transparent 60%),
    linear-gradient(160deg, #0d1b2a 0%, #0a1224 55%, #111c36 100%) !important;
}

/* 科技网格线背景 */
.hero::before,
.about-hero::before,
.services-hero::before,
.contact-hero::before,
.privacy-hero::before,
.terms-hero::before,
.sitemap-hero::before,
.service-detail-hero::before {
  content: '';
  position: absolute;
  inset: 0;
  z-index: 0;
  background-image:
    linear-gradient(rgba(0, 212, 255, .05) 1px, transparent 1px),
    linear-gradient(90deg, rgba(0, 212, 255, .05) 1px, transparent 1px);
  background-size: 48px 48px;
  mask-image: radial-gradient(ellipse 80% 70% at 50% 40%, #000 40%, transparent 100%);
  -webkit-mask-image: radial-gradient(ellipse 80% 70% at 50% 40%, #000 40%, transparent 100%);
  pointer-events: none;
}

/* Hero 主标题：霓虹渐变流光 */
.hero h1,
.about-hero h1,
.services-hero h1,
.contact-hero h1,
.privacy-hero h1,
.terms-hero h1,
.sitemap-hero h1,
.service-detail-hero h1 {
  background: linear-gradient(115deg, #00f5d4 0%, #00d4ff 30%, #3b82f6 55%, #7b2ff7 80%, #00f5d4 100%);
  background-size: 220% auto;
  -webkit-background-clip: text;
  background-clip: text;
  -webkit-text-fill-color: transparent;
  color: #fff;
  filter: drop-shadow(0 0 18px rgba(0, 212, 255, .35));
  animation: neonFlow 5s linear infinite, heroRise .9s cubic-bezier(.22, 1, .36, 1) both;
  z-index: 1;
  position: relative;
}
@keyframes neonFlow {
  0% { background-position: 0% center; }
  100% { background-position: -220% center; }
}
@keyframes heroRise {
  from { opacity: 0; transform: translateY(30px); }
  to   { opacity: 1; transform: translateY(0); }
}

/* Hero 副标题/描述文字 */
.hero p,
.about-hero p,
.services-hero p,
.contact-hero p,
.privacy-hero p,
.terms-hero p,
.sitemap-hero p,
.service-detail-hero p {
  color: #c3d4ea !important;
  z-index: 1;
  position: relative;
}

/* ---------- CTA 按钮：霓虹渐变 ---------- */
.hero .cta-button,
a.cta-button,
.service-link {
  position: relative;
  overflow: hidden;
  background: linear-gradient(120deg, #00d4ff, #7b2ff7) !important;
  border: none !important;
  color: #fff !important;
  border-radius: 10px !important;
  box-shadow: 0 4px 20px -4px rgba(0, 212, 255, .5) !important;
  transition: transform .3s cubic-bezier(.34, 1.56, .64, 1), box-shadow .3s ease !important;
}
.hero .cta-button:hover,
a.cta-button:hover,
.service-link:hover {
  transform: translateY(-3px) scale(1.03) !important;
  box-shadow: 0 12px 36px -6px rgba(123, 47, 247, .6) !important;
}
.hero .cta-button::before,
a.cta-button::before,
.service-link::before {
  content: '';
  position: absolute;
  top: 0; left: -120%;
  width: 70%; height: 100%;
  background: linear-gradient(100deg, transparent, rgba(255,255,255,.5), transparent);
  transform: skewX(-20deg);
  animation: btnSweep 3.2s ease-in-out infinite;
}
@keyframes btnSweep {
  0% { left: -130%; }
  55% { left: 130%; }
  100% { left: 130%; }
}

/* ---------- 内容区：深色 ---------- */
.features,
.content-section,
.services-section,
.process-section,
.contact-section,
.privacy-section,
.terms-section,
.sitemap-section,
.privacy-content,
.terms-content,
.sitemap-content,
.content-grid,
.contact-grid {
  background: transparent !important;
}

/* 隐私/条款/地图内容文字 */
.privacy-content p, .privacy-content li,
.terms-content p, .terms-content li,
.sitemap-content p, .sitemap-content li {
  color: #c3d4ea !important;
}
.privacy-content h2, .privacy-content h3,
.terms-content h2, .terms-content h3,
.sitemap-content h2, .sitemap-content h3 {
  color: #eaf2ff !important;
  border-bottom-color: rgba(120, 180, 255, .15) !important;
}

/* 高亮框 */
.highlight-box {
  background: rgba(0, 212, 255, .06) !important;
  border: 1px solid rgba(0, 212, 255, .25) !important;
  border-radius: 10px !important;
  color: #c3d4ea !important;
}
section.features {
  background: linear-gradient(180deg, rgba(13, 21, 38, .6), rgba(10, 18, 36, .9)) !important;
}

/* ---------- 卡片：深色玻璃拟态 ---------- */
.feature-card,
.feature-card[class],
.industry-card,
.industry-card[class],
.client-card,
.client-card[class],
.service-card,
.service-card[class],
.process-step,
.process-step[class],
.tech-icon-item,
.tech-icon-item[class],
.contact-item,
.contact-item[class],
.contact-form,
.contact-form[class],
.stats,
.stats[class] {
  background: linear-gradient(160deg, rgba(255,255,255,.06), rgba(255,255,255,.02)) !important;
  border: 1px solid rgba(120, 180, 255, .20) !important;
  border-radius: 14px !important;
  box-shadow: 0 4px 24px -8px rgba(0, 0, 0, .5), inset 0 1px 0 rgba(255,255,255,.06) !important;
  backdrop-filter: blur(8px);
  -webkit-backdrop-filter: blur(8px);
  transition: transform .4s cubic-bezier(.34, 1.56, .64, 1), box-shadow .4s ease, border-color .4s ease !important;
}
.feature-card:hover,
.feature-card[class]:hover,
.industry-card:hover,
.industry-card[class]:hover,
.client-card:hover,
.client-card[class]:hover,
.service-card:hover,
.service-card[class]:hover,
.process-step:hover,
.process-step[class]:hover,
.tech-icon-item:hover,
.tech-icon-item[class]:hover,
.contact-item:hover,
.contact-item[class]:hover {
  transform: translateY(-8px) !important;
  border-color: rgba(0, 212, 255, .45) !important;
  box-shadow: 0 16px 40px -12px rgba(0, 212, 255, .25), inset 0 1px 0 rgba(255,255,255,.08) !important;
}

/* 卡片顶部霓虹线 */
.feature-card::before,
.service-card::before,
.industry-card::before {
  content: '';
  position: absolute;
  top: 0; left: 0; right: 0;
  height: 2px;
  background: linear-gradient(90deg, transparent, #00d4ff, #7b2ff7, transparent);
  background-size: 200% 100%;
  opacity: .6;
  animation: cardBar 3s linear infinite;
}
@keyframes cardBar {
  0% { background-position: 0% 0; }
  100% { background-position: 200% 0; }
}

/* 卡片文字 */
.feature-card h3,
.feature-card[class] h3,
.service-card h3,
.service-card[class] h3,
.industry-title,
.industry-title[class],
.client-name,
.client-name[class],
.step-title,
.step-title[class],
.tech-icon-item span {
  color: #eaf2ff !important;
}
.feature-card p,
.service-card p,
.industry-description,
.client-industry,
.service-features {
  color: #9fb6d4 !important;
}

/* 卡片图标容器 */
.feature-card-icon,
.industry-icon,
.client-icon,
.contact-icon,
.service-icon,
.tech-icon-item div {
  background: rgba(0, 212, 255, .10) !important;
  border-radius: 12px !important;
  transition: transform .5s cubic-bezier(.34, 1.56, .64, 1), box-shadow .3s ease !important;
}
.feature-card:hover .feature-card-icon,
.industry-card:hover .industry-icon,
.client-card:hover .client-icon {
  transform: translateY(-4px) scale(1.1) !important;
  box-shadow: 0 0 24px rgba(0, 212, 255, .35) !important;
}

/* ---------- 章节标题：霓虹下划线 ---------- */
.section-title {
  position: relative;
  padding-bottom: .6rem;
}
.section-title::after {
  content: '';
  position: absolute;
  left: 50%; bottom: 0;
  width: 64px; height: 3px;
  border-radius: 3px;
  transform: translateX(-50%);
  background: linear-gradient(90deg, #00d4ff, #7b2ff7);
  box-shadow: 0 0 12px rgba(0, 212, 255, .5);
}

/* ---------- 统计数字：霓虹青 ---------- */
.stat-number,
.counting-number,
.stat-number[style*="font-weight"],
[style*="font-size: 2rem"][style*="font-weight: bold"] {
  color: #00f5d4 !important;
  text-shadow: 0 0 20px rgba(0, 245, 212, .4) !important;
}
.stat-label {
  color: #9fb6d4 !important;
}

/* ---------- 关于页 vision ---------- */
.company-vision-section,
.vision-content {
  background: transparent !important;
}
.vision-content p {
  color: #c3d4ea !important;
  background: rgba(255,255,255,.04) !important;
  border: 1px solid rgba(120, 180, 255, .12) !important;
  border-radius: 12px !important;
}

/* ---------- 流程步骤 ---------- */
.process-steps {
  background: transparent !important;
}
.step-number {
  background: linear-gradient(135deg, #00d4ff, #7b2ff7) !important;
  box-shadow: 0 0 20px rgba(0, 212, 255, .4) !important;
}

/* ---------- 表单 ---------- */
.contact-form input,
.contact-form textarea,
.contact-form select {
  background: rgba(255,255,255,.06) !important;
  border: 1px solid rgba(120, 180, 255, .2) !important;
  color: #eaf2ff !important;
  border-radius: 8px !important;
}
.contact-form input:focus,
.contact-form textarea:focus {
  border-color: #00d4ff !important;
  box-shadow: 0 0 16px rgba(0, 212, 255, .25) !important;
  outline: none;
}
.contact-form label {
  color: #c3d4ea !important;
}
.contact-details {
  color: #c3d4ea !important;
}

/* ---------- 服务详情页内容 ---------- */
.service-detail-content {
  background: transparent !important;
}
.service-section {
  background: rgba(255,255,255,.03) !important;
  border: 1px solid rgba(120, 180, 255, .10) !important;
  border-radius: 14px !important;
}

/* ---------- 链接 ---------- */
a { color: #60a5fa !important; }
a:hover { color: #00d4ff !important; }

/* ---------- 页脚：纯黑蓝 ---------- */
footer {
  background: linear-gradient(180deg, #060a16, #0a1224 100%) !important;
  color: #9fb6d4 !important;
  border-top: 1px solid rgba(0, 212, 255, .08) !important;
}
footer a, footer p, footer .copyright, footer .footer-links a, footer .footer-legal a {
  color: #9fb6d4 !important;
}
footer a:hover, footer .footer-links a:hover, footer .footer-legal a:hover {
  color: #00d4ff !important;
}

/* ---------- 滚动入场 ---------- */
.qd-reveal { opacity: 1; transform: none; }
.qd-reveal.qd-prep {
  opacity: 0;
  transform: translateY(28px);
  transition: opacity .8s cubic-bezier(.22, 1, .36, 1), transform .8s cubic-bezier(.22, 1, .36, 1);
}
.qd-reveal.qd-in { opacity: 1; transform: translateY(0); }

/* ---------- Hero 光斑 ---------- */
.qd-orb {
  position: absolute;
  border-radius: 50%;
  pointer-events: none;
  filter: blur(55px);
  opacity: .4;
  z-index: 0;
  animation: orbFloat 14s ease-in-out infinite;
}
.qd-orb.o1 {
  width: 300px; height: 300px;
  background: radial-gradient(circle, rgba(0, 212, 255, .35), transparent 70%);
  top: 10%; left: -5%;
}
.qd-orb.o2 {
  width: 250px; height: 250px;
  background: radial-gradient(circle, rgba(123, 47, 247, .30), transparent 70%);
  bottom: 5%; right: -5%;
  animation-delay: -5s;
}
.qd-orb.o3 {
  width: 200px; height: 200px;
  background: radial-gradient(circle, rgba(0, 245, 212, .25), transparent 70%);
  top: 55%; left: 60%;
  animation-delay: -9s;
}
@keyframes orbFloat {
  0%, 100% { transform: translateY(0) scale(1); }
  50% { transform: translateY(-28px) scale(1.1); }
}

/* ---------- 减少动效 ---------- */
@media (prefers-reduced-motion: reduce) {
  .qd-reveal { opacity: 1 !important; transform: none !important; transition: none !important; }
  .hero h1 { animation: none !important; }
  .hero .cta-button::before { display: none; }
}

/* ---------- 响应式 ---------- */
@media (max-width: 768px) {
  nav .nav-links { gap: 1rem; }
  .feature-card:hover, .service-card:hover { transform: translateY(-4px) !important; }
}

/* ---------- 网站地图页 ---------- */
.sitemap-section {
  background: transparent !important;
}
.sitemap-grid {
  background: transparent !important;
}
.page-card {
  background: rgba(255,255,255,.04) !important;
  border: 1px solid rgba(120, 180, 255, .15) !important;
  border-radius: 12px !important;
  transition: transform .3s ease, border-color .3s ease !important;
}
.page-card:hover {
  transform: translateY(-4px) !important;
  border-color: rgba(0, 212, 255, .4) !important;
}
.page-icon {
  color: #00d4ff !important;
}
.page-title {
  color: #eaf2ff !important;
}
.page-description {
  color: #9fb6d4 !important;
}
.page-url {
  background: rgba(0, 212, 255, .08) !important;
  color: #00d4ff !important;
  border-radius: 6px !important;
}
.site-stats {
  background: transparent !important;
}
.stats-grid {
  background: transparent !important;
}

/* ---------- 关于页内联样式容器 ---------- */
[style*="background: #f8fafc"],
[style*="background:#f8fafc"],
[style*="background: #f1f5f9"],
[style*="background:#f1f5f9"] {
  background: rgba(255, 255, 255, .04) !important;
  border: 1px solid rgba(120, 180, 255, .12) !important;
}
[style*="color: #1e293b"],
[style*="color:#1e293b"],
[style*="color: #4b5563"],
[style*="color:#4b5563"],
[style*="color: #333"] {
  color: #c3d4ea !important;
}
[style*="color: #1e40af"],
[style*="color:#1e40af"] {
  color: #00d4ff !important;
}
/* 内联数字 */
[style*="font-weight: bold"][style*="color: var(--color-primary)"] {
  color: #00f5d4 !important;
  text-shadow: 0 0 16px rgba(0, 245, 212, .35) !important;
}
[style*="color: var(--color-neutral-800)"] {
  color: #c3d4ea !important;
}
