.page-faq{
  --faq-gap:clamp(18px,3.4vw,34px);
  background:var(--ink-night);
  color:var(--lamp);
  overflow-x:clip;
}

/* ---------- 首屏 ---------- */
.page-faq .faq-hero{
  position:relative;
  overflow:hidden;
  padding:clamp(24px,4.5vw,54px) 0 clamp(30px,5vw,64px);
  background:
    radial-gradient(72% 92% at 94% 0%,rgba(28,110,140,.58) 0%,rgba(28,110,140,0) 62%),
    radial-gradient(64% 74% at 2% 100%,rgba(53,242,196,.13) 0%,rgba(53,242,196,0) 66%),
    var(--ink-night);
  border-bottom:1px solid var(--line-soft);
}
.page-faq .faq-hero::after{
  content:"";
  position:absolute;
  right:-14%;
  bottom:-46%;
  width:min(58%,520px);
  aspect-ratio:1;
  border-radius:50%;
  background:conic-gradient(from 200deg,rgba(53,242,196,.16),rgba(255,180,58,.12),rgba(28,110,140,0) 72%);
  pointer-events:none;
}
.page-faq .faq-hero__grid{
  position:relative;
  z-index:1;
  display:grid;
  gap:var(--faq-gap);
  align-items:center;
}
.page-faq .faq-hero__copy{min-width:0;}
.page-faq .faq-hero h1{
  font-family:var(--font-display);
  font-size:clamp(34px,7.2vw,62px);
  font-weight:800;
  line-height:1.08;
  letter-spacing:-.02em;
  margin:14px 0 0;
  color:var(--lamp);
}
.page-faq .faq-hero__lede{
  margin:18px 0 0;
  max-width:46ch;
  font-size:clamp(16px,1.7vw,18px);
  line-height:1.75;
  color:var(--fog);
}
.page-faq .faq-hero__meta{
  display:flex;
  flex-wrap:wrap;
  gap:10px;
  list-style:none;
  margin:22px 0 0;
  padding:0;
}
.page-faq .faq-hero__media{
  position:relative;
  width:100%;
  max-width:400px;
  margin:0 auto;
  border-radius:var(--r-xl);
  overflow:hidden;
  border:1px solid var(--line-neon);
  box-shadow:var(--shadow-deep);
  background:linear-gradient(150deg,rgba(28,110,140,.55),var(--ink-cabin));
}
.page-faq .faq-hero__media img{
  display:block;
  width:100%;
  height:auto;
  aspect-ratio:3/4;
  object-fit:cover;
}
.page-faq .faq-hero__media figcaption{
  position:absolute;
  left:0;right:0;bottom:0;
  padding:34px 16px 14px;
  font-size:13px;
  font-style:italic;
  line-height:1.6;
  color:var(--lamp);
  background:linear-gradient(to top,rgba(7,16,24,.94),rgba(7,16,24,0));
}

/* ---------- 热门问题胶囊 ---------- */
.page-faq .faq-hot{
  padding:clamp(26px,4vw,44px) 0;
  background:var(--ink-cabin);
  border-bottom:1px solid var(--line-soft);
}
.page-faq .faq-hot__head{
  display:flex;
  flex-wrap:wrap;
  align-items:baseline;
  justify-content:space-between;
  gap:6px 24px;
  margin-bottom:18px;
}
.page-faq .faq-hot__head h2{
  font-family:var(--font-display);
  font-size:clamp(24px,3.4vw,34px);
  font-weight:800;
  letter-spacing:-.01em;
  line-height:1.15;
  margin:0;
  color:var(--lamp);
}
.page-faq .faq-hot__head p{
  margin:0;
  font-size:15px;
  color:var(--fog);
}
.page-faq .faq-hot__list{
  list-style:none;
  margin:0;
  padding:0;
  display:flex;
  flex-wrap:wrap;
  gap:10px;
}
.page-faq .faq-chip{
  display:inline-flex;
  align-items:center;
  gap:9px;
  min-height:44px;
  padding:8px 18px 8px 8px;
  border-radius:var(--r-pill);
  border:1px solid var(--line);
  background:rgba(159,179,200,.06);
  color:var(--lamp);
  font-size:15px;
  line-height:1.35;
  text-decoration:none;
  transition:border-color var(--dur),background var(--dur);
}
.page-faq .faq-chip:hover,
.page-faq .faq-chip:focus-visible{
  border-color:var(--neon);
  background:rgba(53,242,196,.12);
}
.page-faq .faq-chip:focus-visible{
  outline:2px solid var(--neon);
  outline-offset:2px;
}
.page-faq .faq-chip__k{
  flex:0 0 auto;
  padding:4px 9px;
  border-radius:var(--r-pill);
  background:var(--amber);
  color:var(--ink-cabin);
  font-family:var(--font-mono);
  font-size:11px;
  font-weight:700;
  letter-spacing:.06em;
}
.page-faq .faq-chip__k--alert{background:var(--alert);}
.page-faq .faq-chip__k--device{background:var(--neon);}
.page-faq .faq-chip__k--media{background:var(--grass);}
.page-faq .faq-chip__k--reach{background:var(--fog);}

/* ---------- 主体：索引 + 手风琴 ---------- */
.page-faq .faq-body{
  display:grid;
  gap:clamp(22px,3.4vw,44px);
  padding-top:clamp(28px,4.4vw,56px);
  padding-bottom:clamp(32px,5vw,64px);
}
.page-faq .faq-side{min-width:0;}
.page-faq .faq-side__inner{
  display:flex;
  flex-direction:column;
  gap:12px;
}
.page-faq .faq-side__nav{
  display:flex;
  flex-direction:column;
  gap:8px;
  min-width:0;
}
.page-faq .faq-side__nav .spy-link{
  display:flex;
  align-items:center;
  min-height:44px;
  padding:10px 18px;
  border-radius:var(--r-pill);
  border:1px solid var(--line);
  background:rgba(159,179,200,.05);
  color:var(--lamp);
  font-size:15px;
  text-decoration:none;
  transition:border-color var(--dur),background var(--dur),color var(--dur);
}
.page-faq .faq-side__nav .spy-link:hover{
  border-color:var(--line-neon);
}
.page-faq .faq-side__nav .spy-link.is-active{
  border-color:var(--neon);
  background:rgba(53,242,196,.14);
  color:var(--neon);
}
.page-faq .faq-side__nav .spy-link:focus-visible{
  outline:2px solid var(--neon);
  outline-offset:2px;
}
.page-faq .faq-side__panel{
  display:grid;
  gap:10px;
  padding:16px;
  border-radius:var(--r-lg);
  border:1px solid var(--line);
  background:var(--ink-cabin);
}
.page-faq .faq-side__panel .panel__head{
  font-family:var(--font-mono);
  font-size:12px;
  letter-spacing:.06em;
  color:var(--fog);
}
.page-faq .faq-side__panel .panel__k{
  font-size:14px;
  color:var(--fog);
}
.page-faq .faq-side__panel .panel__v{
  font-size:14px;
  color:var(--amber);
}

.page-faq .faq-main{min-width:0;}

/* ---------- 章节 ---------- */
.page-faq .faq-sec{
  scroll-margin-top:96px;
  padding-bottom:clamp(24px,3.2vw,38px);
  margin-bottom:clamp(24px,3.2vw,38px);
  border-bottom:1px solid var(--line-soft);
}
.page-faq .faq-sec:last-of-type{border-bottom:0;}
.page-faq .faq-sec__head{
  display:grid;
  grid-template-columns:auto 1fr;
  gap:4px 12px;
  align-items:baseline;
  padding-bottom:14px;
  border-bottom:2px solid var(--line);
  margin-bottom:6px;
}
.page-faq .faq-sec__no{
  font-size:13px;
  letter-spacing:.08em;
  color:var(--amber);
}
.page-faq .faq-sec__head h2{
  margin:0;
  font-family:var(--font-display);
  font-size:clamp(24px,3.4vw,36px);
  font-weight:800;
  letter-spacing:-.01em;
  line-height:1.12;
  color:var(--lamp);
}
.page-faq .faq-sec__head p{
  grid-column:1/-1;
  margin:0;
  font-size:15px;
  line-height:1.7;
  color:var(--fog);
}
.page-faq .faq-sec__more{
  margin:18px 0 0;
  font-size:15px;
}
.page-faq .faq-sec__more a{
  color:var(--neon);
  text-decoration:none;
  border-bottom:1px solid rgba(53,242,196,.4);
  padding-bottom:2px;
}
.page-faq .faq-sec__more a:hover{border-bottom-color:var(--neon);}

/* ---------- 配图 ---------- */
.page-faq .faq-fig{
  margin:18px 0 6px;
  border-radius:var(--r-lg);
  overflow:hidden;
  border:1px solid var(--line-soft);
  background:var(--ink-cabin);
}
.page-faq .faq-fig img{
  display:block;
  width:100%;
  height:auto;
  aspect-ratio:10/7;
  object-fit:cover;
}
.page-faq .faq-fig figcaption{
  padding:10px 14px;
  font-size:12.5px;
  font-style:italic;
  line-height:1.6;
  color:var(--fog);
}

/* ---------- 手风琴 ---------- */
.page-faq .qa{
  border-bottom:1px solid var(--line-soft);
  scroll-margin-top:104px;
}
.page-faq .qa:last-of-type{border-bottom:0;}
.page-faq .qa__q{
  display:grid;
  grid-template-columns:auto 1fr auto;
  gap:4px 12px;
  align-items:center;
  min-height:56px;
  padding:16px 0;
  cursor:pointer;
  list-style:none;
  font-size:clamp(16px,1.9vw,18px);
  font-weight:600;
  line-height:1.5;
  color:var(--lamp);
  transition:color var(--dur);
}
.page-faq .qa__q::-webkit-details-marker{display:none;}
.page-faq .qa__q:hover{color:var(--neon);}
.page-faq .qa__q:focus-visible{
  outline:2px solid var(--neon);
  outline-offset:4px;
  border-radius:var(--r-md);
}
.page-faq .qa__no{
  font-size:12.5px;
  letter-spacing:.08em;
  color:var(--fog);
}
.page-faq .qa__chev{
  width:26px;
  height:26px;
  border-radius:50%;
  border:1px solid var(--line);
  display:grid;
  place-items:center;
  transition:transform var(--dur),border-color var(--dur),background var(--dur);
}
.page-faq .qa__chev::before{
  content:"";
  width:7px;
  height:7px;
  margin-top:-3px;
  border-right:2px solid var(--fog);
  border-bottom:2px solid var(--fog);
  transform:rotate(45deg);
  transition:border-color var(--dur);
}
.page-faq .qa[open] .qa__chev{
  transform:rotate(180deg);
  border-color:var(--neon);
  background:rgba(53,242,196,.14);
}
.page-faq .qa[open] .qa__chev::before{
  border-color:var(--neon);
  margin-top:3px;
}
.page-faq .qa[open] .qa__q{color:var(--neon);}
.page-faq .qa__a{
  padding:0 0 20px;
  max-width:64ch;
  font-size:16px;
  line-height:1.8;
  color:var(--fog);
  animation:faqFade .28s ease both;
}
.page-faq .qa__a p{margin:0 0 .8em;}
.page-faq .qa__a p:last-child{margin-bottom:0;}
.page-faq .qa__a .mono{color:var(--amber);}
.page-faq .qa__a .btn{margin-top:14px;}

@keyframes faqFade{
  from{opacity:0;transform:translateY(-4px);}
  to{opacity:1;transform:none;}
}

/* ---------- 自查清单 ---------- */
.page-faq .check-list{
  list-style:none;
  margin:14px 0 0;
  padding:0;
  display:grid;
  gap:9px;
}
.page-faq .check-list li{
  position:relative;
  padding-left:28px;
  font-size:15px;
  line-height:1.65;
  color:var(--fog);
}
.page-faq .check-list li::before{
  content:"";
  position:absolute;
  left:2px;
  top:.42em;
  width:13px;
  height:7px;
  border-left:2px solid var(--grass);
  border-bottom:2px solid var(--grass);
  transform:rotate(-45deg);
}
.page-faq .check-list .mono{color:var(--amber);}

/* ---------- 下一步 ---------- */
.page-faq .faq-next{
  margin-bottom:clamp(28px,4.4vw,52px);
  padding:clamp(22px,3.4vw,38px);
  border-radius:var(--r-xl);
  border:1px solid var(--line);
  background:linear-gradient(135deg,rgba(28,110,140,.4) 0%,rgba(7,16,24,.92) 64%);
  display:grid;
  gap:14px;
}
.page-faq .faq-next h2{
  margin:0;
  font-family:var(--font-display);
  font-size:clamp(22px,3vw,30px);
  font-weight:800;
  letter-spacing:-.01em;
  color:var(--lamp);
}
.page-faq .faq-next p{
  margin:0;
  max-width:52ch;
  font-size:15.5px;
  line-height:1.75;
  color:var(--fog);
}
.page-faq .faq-next__links{
  list-style:none;
  margin:0;
  padding:0;
  display:flex;
  flex-wrap:wrap;
  gap:10px;
}
.page-faq .faq-next__links a{
  display:inline-flex;
  align-items:center;
  min-height:44px;
  padding:9px 18px;
  border-radius:var(--r-pill);
  border:1px solid var(--line-neon);
  color:var(--lamp);
  font-size:15px;
  text-decoration:none;
  transition:background var(--dur),border-color var(--dur);
}
.page-faq .faq-next__links a:hover{
  background:rgba(53,242,196,.12);
  border-color:var(--neon);
}
.page-faq .faq-next__links a:focus-visible{
  outline:2px solid var(--neon);
  outline-offset:2px;
}

/* ---------- 移动端底部联络条 ---------- */
.page-faq .faq-bar{
  position:fixed;
  left:0;
  right:0;
  bottom:0;
  z-index:40;
  padding:10px var(--pad) calc(10px + env(safe-area-inset-bottom));
  background:rgba(7,16,24,.95);
  border-top:1px solid var(--line-neon);
  box-shadow:0 -14px 30px -22px rgba(0,0,0,.95);
}
.page-faq .faq-bar__inner{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:12px;
  max-width:var(--shell);
  margin:0 auto;
}
.page-faq .faq-bar__status{
  display:inline-flex;
  align-items:center;
  gap:8px;
  font-size:13.5px;
  color:var(--fog);
}
.page-faq{padding-bottom:78px;}

/* ---------- 响应式 ---------- */
@media (min-width:480px){
  .page-faq .faq-hero__media{max-width:440px;}
}

@media (min-width:720px){
  .page-faq .qa__a{padding-left:46px;}
}

@media (min-width:880px){
  .page-faq .faq-hero__grid{
    grid-template-columns:minmax(0,1.08fr) minmax(0,.92fr);
    gap:clamp(28px,4vw,56px);
  }
  .page-faq .faq-hero__media{max-width:100%;}
  .page-faq .faq-body{
    grid-template-columns:minmax(0,250px) minmax(0,1fr);
    gap:clamp(28px,4vw,58px);
    align-items:start;
  }
  .page-faq .faq-side__inner{
    position:sticky;
    top:96px;
  }
  .page-faq .faq-bar{display:none;}
  .page-faq{padding-bottom:0;}
}

@media (min-width:1100px){
  .page-faq .faq-body{grid-template-columns:minmax(0,272px) minmax(0,1fr);}
}

@media (max-width:879px){
  .page-faq .faq-side__inner{
    padding-bottom:14px;
    border-bottom:1px solid var(--line-soft);
  }
  .page-faq .faq-side__nav{
    flex-direction:row;
    overflow-x:auto;
    gap:8px;
    padding-bottom:4px;
    scrollbar-width:none;
  }
  .page-faq .faq-side__nav::-webkit-scrollbar{display:none;}
  .page-faq .faq-side__nav .spy-link{
    flex:0 0 auto;
    white-space:nowrap;
  }
  .page-faq .faq-side__panel{max-width:none;}
}

@media (prefers-reduced-motion:reduce){
  .page-faq *,
  .page-faq *::before,
  .page-faq *::after{
    animation-duration:.001ms !important;
    animation-iteration-count:1 !important;
    transition-duration:.001ms !important;
  }
}</style>
</main>
