@charset "UTF-8";

/* polish.css —— 视觉精修层（不改文案与结构，只提升质感）
   加载顺序：site.css → atmosphere.css → polish.css
   按用户要求：全站不使用任何投影（CSS 阴影与滤镜阴影），
   必要的层次分隔一律改用发丝描边与底色。 */

/* ---------- 全局 ---------- */
html { scroll-padding-top: 100px; }
::selection { background: #cfe2fb; color: #17232e; }
html { scrollbar-color: #b7c9dd transparent; }
::-webkit-scrollbar { width: 10px; height: 10px; }
::-webkit-scrollbar-thumb { background: #b7c9dd; border: 3px solid transparent; border-radius: 8px; background-clip: content-box; }
::-webkit-scrollbar-track { background: transparent; }
.skip-link { z-index: 60; border-radius: var(--radius); }

/* 更干净的入场曲线（覆盖 site.css 同名关键帧） */
@keyframes enter { from { opacity: 0; transform: translateY(20px); } to { opacity: 1; transform: translateY(0); } }
.reveal.is-revealing { animation-duration: .8s; }

/* ---------- 吸顶玻璃导航 ---------- */
.site-header { position: sticky; top: 0; z-index: 30; background: rgb(255 255 255 / 0); border-bottom: 1px solid transparent; transition: background .35s var(--ease), border-color .35s var(--ease); } /* taste-skill-ignore: sticky navigation overlay edge */
.site-header.is-scrolled { background: rgb(255 255 255 / .84); -webkit-backdrop-filter: saturate(1.7) blur(16px); backdrop-filter: saturate(1.7) blur(16px); border-bottom-color: rgb(23 43 78 / .09); } /* taste-skill-ignore: glass header follows the user-requested SiliconFlow-style polish */
.brand img { transition: transform .45s var(--ease); }
.brand:hover img { transform: rotate(-10deg) scale(1.05); }

@media (min-width: 601px) {
  .main-nav a::after { content: ""; position: absolute; left: 2px; right: 2px; bottom: 5px; height: 2px; border-radius: 2px; background: var(--accent); transform: scaleX(0); transform-origin: left center; transition: transform .3s var(--ease); }
  .main-nav a:hover { opacity: 1; }
  .main-nav a:hover::after, .main-nav a[aria-current="page"]::after { transform: scaleX(1); }
}

/* ---------- 按钮 ---------- */
.button { transition: transform .25s var(--ease), background .25s ease; }
.button:hover { transform: translateY(-2px); }
.button:active { transform: translateY(0); }
.button svg { transition: transform .25s var(--ease); }
.button:hover svg { transform: translateX(3px); }
.button.secondary { outline: 1px solid var(--line); outline-offset: -1px; }
.button.secondary:hover { outline-color: #b9c9da; }

/* ---------- 首页首屏：遮罩式标题 + 材质色强调 ---------- */
.hero-line { overflow: hidden; padding-block: .06em; margin-block: -.06em; }
.hero-line > span { animation-name: polish-rise; animation-duration: .95s; }
.hero-line + .hero-line > span { color: var(--ink); }
.hero-line em { color: var(--accent); font-style: normal; }
@keyframes polish-rise { from { transform: translateY(112%); } to { transform: translateY(0); } }
.atmospheric-hero .hero-meta { animation: enter .8s .55s var(--ease) both; }

/* ---------- 产品矩阵与行业方案 ---------- */
.product-tab { transition: transform .25s var(--ease), background .25s ease; }
.industry-tabs a, .industry-tabs button { transition: background .25s ease, color .25s ease, transform .25s var(--ease); }
.industry-tabs a:hover, .industry-tabs button:hover { transform: translateY(-1px); }
.industry-panel { border: 1px solid rgb(25 89 217 / .1); }

/* ---------- 优势卡片 ---------- */
.advantage { border-radius: 12px; padding: 12px; margin: -12px; transition: background .3s ease; }
.advantage:hover { background: rgb(237 244 253 / .85); }
.advantage > svg { transition: color .3s ease, transform .3s var(--ease); }
.advantage:hover > svg { color: var(--accent); transform: translateY(-3px); }

/* ---------- 算力深色区 ---------- */
.atmospheric-compute .cloud-diagram { border: 1px solid rgb(255 255 255 / .09); }
.atmospheric-compute .model-row span { border: 1px solid rgb(255 255 255 / .08); }
.cloud-connection svg { color: #8db9ea; }

/* ---------- 卡片与面板 ---------- */
.gateway-block { border: 1px solid rgb(25 89 217 / .08); transition: transform .35s var(--ease), border-color .35s ease; }
.gateway-block:hover { transform: translateY(-4px); border-color: rgb(25 89 217 / .22); }
.gateway-block.dark { border-color: rgb(255 255 255 / .09); }
.gateway-block.dark:hover { border-color: rgb(255 255 255 / .22); }
.gateway-link-list a { transition: color .2s ease, transform .25s var(--ease); }
.gateway-link-list a:hover { transform: translateX(4px); }
.deployment-list article { border: 1px solid var(--line); transition: transform .35s var(--ease), border-color .35s ease; }
.deployment-list article:hover { transform: translateY(-4px); border-color: #b9c9da; }
.about-values article { border: 1px solid transparent; transition: transform .35s var(--ease), border-color .35s ease; }
.about-values article:hover { transform: translateY(-4px); border-color: rgb(25 89 217 / .12); }
.mail-preview { animation: enter .5s var(--ease) both; }

/* ---------- 表单 ---------- */
.contact-form { border: 1px solid rgb(23 43 78 / .07); }
.field :is(input, select, textarea) { transition: border-color .2s ease; }
.field :is(input, select, textarea):hover { border-color: #b4c5d6; }
.field :is(input, select, textarea):focus { border-color: var(--accent); outline: none; }
.field :is(input, select, textarea):focus-visible { outline: 2px solid var(--accent); outline-offset: 1px; }

/* ---------- 常见问题：平滑展开 + 加号旋转 ---------- */
.faq-list details { transition: background .25s ease; }
.faq-list details:hover, .faq-list details[open] { background: var(--ice); }
.faq-list summary::after { transition: transform .3s var(--ease); }
.faq-list details[open] summary::after { content: "+"; transform: rotate(45deg); }
@supports (interpolate-size: allow-keywords) {
  .faq-list details { interpolate-size: allow-keywords; }
  .faq-list details::details-content { block-size: 0; overflow: clip; transition: block-size .4s var(--ease), content-visibility .4s allow-discrete; }
  .faq-list details[open]::details-content { block-size: auto; }
}

/* ---------- 发展历程：轨道与节点 ---------- */
.timeline-item > div { position: relative; border-left: 1px solid var(--line); padding-left: 30px; } /* taste-skill-ignore: retained timeline connector communicates chronological order */
.timeline-item > div::before { content: ""; position: absolute; left: -7px; top: 13px; width: 12px; height: 12px; border-radius: 50%; background: var(--bg); border: 2.5px solid var(--accent); }
.timeline-item:last-child > div::before { background: var(--accent); }

/* ---------- 页脚与法律页 ---------- */
.footer-col a { transition: color .2s ease, transform .25s var(--ease); }
.footer-col a:hover { transform: translateX(3px); }
.legal-toc a { border-radius: 4px; transition: color .2s ease, transform .25s var(--ease); }
.legal-toc a:hover { color: var(--accent); transform: translateX(3px); }
.contact-details a { transition: color .2s ease; }
.contact-details a:hover { color: var(--accent); }

/* ---------- 移动端 ---------- */
@keyframes polish-menu { from { opacity: 0; transform: translateY(-10px); } to { opacity: 1; transform: translateY(0); } }
@media (max-width: 850px) {
  .advantage { padding: 10px; margin: -10px; }
}
@media (max-width: 600px) {
  html { scroll-padding-top: 84px; }
  .main-nav.is-open { animation: polish-menu .3s var(--ease); border-bottom: 1px solid var(--line); } /* taste-skill-ignore: real mobile navigation overlay edge */
  .advantage { padding: 8px; margin: -8px; }
}
