body[data-page-key="faq"] { margin:0; min-width:320px; background:#fdf8ef; color:#2a1c15; font-family:"Microsoft YaHei","PingFang SC",sans-serif; overflow-x:hidden; }
body[data-page-key="faq"] *, body[data-page-key="faq"] *::before, body[data-page-key="faq"] *::after { box-sizing:border-box; }
.faq-page { min-height:60vh; padding:calc(var(--site-notice-height,40px) + var(--site-nav-height,82px) + 58px) 0 96px; background:#fdf8ef; }
body.notice-closed .faq-page { padding-top:calc(var(--site-nav-height,82px) + 58px); }
.faq-layout { width:min(100% - 56px,1304px); margin:0 auto; }
.faq-page a { text-decoration:none; }
body[data-page-key="faq"] #siteHeader a { text-decoration:none; }
.faq-hero { margin-bottom:32px; }
.faq-hero h1 { margin:0 0 12px; color:#6e3d2f; font-family:"Source Han Serif SC","Songti SC","STSong","SimSun",Georgia,serif; font-size:clamp(32px,3.2vw,44px); line-height:1.25; }
.faq-hero p { margin:0; color:#6d655d; font-size:16px; line-height:1.75; }
.faq-category-nav { display:flex; flex-wrap:wrap; gap:10px; margin:0 0 42px; }
.faq-category-nav a { display:inline-flex; align-items:center; min-height:42px; padding:8px 18px; border:1px solid #fcc92c; border-radius:24px; background:#fcc92c; color:#6e3d2f; font-size:14px; font-weight:700; line-height:1.4; transition:background-color .2s ease,border-color .2s ease,color .2s ease; }
.faq-category-nav a:hover { border-color:#eab51a; background:#eab51a; }
.faq-category-nav a:focus-visible, .faq-item summary:focus-visible, .faq-related a:focus-visible { outline:3px solid #c8910a; outline-offset:3px; }
.faq-groups { display:grid; gap:46px; }
.faq-group { scroll-margin-top:calc(var(--site-notice-height,40px) + var(--site-nav-height,82px) + 24px); }
body.notice-closed .faq-group { scroll-margin-top:calc(var(--site-nav-height,82px) + 24px); }
.faq-group h2 { margin:0 0 18px; color:#6e3d2f; font-family:"Source Han Serif SC","Songti SC","STSong","SimSun",Georgia,serif; font-size:clamp(23px,2.2vw,30px); line-height:1.35; }
.faq-list { display:grid; gap:12px; }
.faq-item { min-width:0; border:1px solid rgba(110,61,47,.12); background:#fff; }
.faq-item summary { position:relative; display:flex; align-items:center; min-height:68px; padding:18px 66px 18px 24px; color:#523126; font-size:17px; font-weight:600; line-height:1.6; cursor:pointer; list-style:none; }
.faq-item summary::-webkit-details-marker { display:none; }
.faq-item summary::after { content:"+"; position:absolute; top:50%; right:24px; display:grid; width:26px; height:26px; place-items:center; transform:translateY(-50%); color:#9a6f08; font-family:Arial,sans-serif; font-size:25px; font-weight:400; line-height:1; }
.faq-item[open] summary::after { content:"−"; }
.faq-item summary:hover { color:#8a5b13; }
.faq-answer { padding:0 24px 22px; color:#5f554c; font-size:15px; line-height:1.85; }
.faq-answer p { margin:0; }
.faq-related { display:flex; flex-wrap:wrap; gap:8px 20px; margin-top:13px; }
.faq-related a { color:#986d0b; font-size:14px; font-weight:600; text-decoration:none; }
.faq-related a:hover { color:#6e3d2f; text-decoration:none; }
@media (max-width:680px) {
  .faq-page { padding-top:calc(var(--site-notice-height,40px) + var(--site-nav-height,82px) + 34px); padding-bottom:70px; }
  body.notice-closed .faq-page { padding-top:calc(var(--site-nav-height,82px) + 34px); }
  .faq-layout { width:min(100% - 32px,1304px); }
  .faq-hero { margin-bottom:24px; }
  .faq-hero h1 { font-size:32px; }
  .faq-hero p { font-size:15px; }
  .faq-category-nav { gap:8px; margin-bottom:32px; }
  .faq-category-nav a { min-height:40px; padding:8px 14px; font-size:13px; }
  .faq-groups { gap:34px; }
  .faq-group h2 { margin-bottom:14px; font-size:24px; }
  .faq-list { gap:10px; }
  .faq-item summary { min-height:62px; padding:15px 52px 15px 17px; font-size:15px; }
  .faq-item summary::after { right:16px; }
  .faq-answer { padding:0 17px 18px; font-size:14px; line-height:1.8; }
  .faq-related { gap:8px 16px; }
}
@media (prefers-reduced-motion:reduce) {
  .faq-category-nav a { transition:none; }
}
