/* ============================================================
   行止官网 · pages.css
   首页各板块 + 下载页 / 政策页 / 帮助中心 专属样式
   ============================================================ */

/* ============ 首页 · Hero ============ */
.hero{
  position:relative;
  display:flex;flex-direction:column;align-items:center;
  gap:52px;
  padding:84px var(--gutter) 72px;
}
.hero-aura{
  position:absolute;top:-320px;left:560px;
  width:820px;height:820px;border-radius:50%;
  background:radial-gradient(circle, rgba(107,168,160,.28) 0%, rgba(107,168,160,0) 70%);
  filter:blur(40px);
  pointer-events:none;z-index:0;
}
.hero > *:not(.hero-aura){position:relative;z-index:1}
.hero-copy{display:flex;flex-direction:column;align-items:center;gap:28px;width:100%;max-width:840px;text-align:center}
.headline{display:flex;flex-direction:column;gap:4px;width:100%}
.headline h1{
  font-size:62px;font-weight:500;line-height:82px;letter-spacing:2px;
}
.headline .line-1{color:var(--dark)}
.headline .line-2{color:var(--sage-deep)}
.subheadline{font-size:18px;font-weight:300;line-height:34px;color:var(--gray);max-width:660px}
.cta-row{display:flex;align-items:center;justify-content:center;gap:16px;flex-wrap:wrap}

/* ============ 首页 · 功能 / 使用 ============ */
.features{background:var(--white);padding:110px 0 130px;display:flex;flex-direction:column;gap:110px}
.features .section-inner--flow{--flow-gap:110px}
.band-dark .section-inner--flow{--flow-gap:70px}
.footer .section-inner--flow{--flow-gap:52px}

/* ============ 子页通用页头 ============ */
.page-head{
  position:relative;
  display:flex;flex-direction:column;align-items:center;gap:22px;
  padding:80px var(--gutter) 0;text-align:center;
}
.page-title{font-size:44px;font-weight:500;line-height:60px;letter-spacing:1px;color:var(--dark)}
.page-desc{font-size:16px;font-weight:300;line-height:30px;color:var(--gray);max-width:660px}
.page-note{font-size:13px;color:var(--footnote)}
.page-body{padding:64px 0 110px}
.page-body .section-inner--flow{--flow-gap:80px}
.block{display:flex;flex-direction:column;gap:40px}
.section-inner--narrow{max-width:calc(860px + var(--gutter) * 2)}
.crumbs{display:flex;align-items:center;gap:8px;font-size:13px;color:var(--footnote)}
.crumbs a{color:var(--gray);transition:color .2s ease}
.crumbs a:hover{color:var(--sage-deep)}

/* ============ 长文（隐私政策 / 用户协议） ============ */
.prose{background:var(--white);border:1px solid var(--sage-line);border-radius:28px;padding:52px 56px;box-shadow:var(--sh-card)}
.prose h2{position:relative;font-size:22px;font-weight:500;line-height:34px;letter-spacing:.5px;color:var(--dark);margin-top:44px}
.prose h2:first-child{margin-top:0}
.prose h2::before{content:"";display:block;width:26px;height:2px;border-radius:1px;background:var(--sage);margin-bottom:16px}
.prose h3{font-size:17px;font-weight:500;line-height:28px;color:var(--gray-strong);margin-top:28px}
.prose p{font-size:15px;font-weight:300;line-height:28px;color:var(--gray);margin-top:14px}
.prose ul{display:flex;flex-direction:column;gap:10px;margin:14px 0 0;padding:0;list-style:none}
.prose li{position:relative;padding-left:20px;font-size:15px;font-weight:300;line-height:28px;color:var(--gray)}
.prose li::before{content:"";position:absolute;left:0;top:11px;width:6px;height:6px;border-radius:50%;background:var(--sage)}
.prose a{color:var(--sage-deep);text-decoration:underline;text-underline-offset:3px}
.prose strong{font-weight:500;color:var(--gray-strong)}
.callout{
  display:flex;align-items:flex-start;gap:12px;
  background:var(--sage-tint);border-radius:20px;padding:24px 26px;margin-top:26px;
}
.callout img{width:18px;height:18px;flex-shrink:0;margin-top:5px}
.callout p{margin:0;font-size:14px;font-weight:400;line-height:26px;color:var(--deep)}

/* ============ 下载页 ============ */
.store-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(340px,100%),1fr));gap:32px}
.store-card{
  background:var(--white);border:1px solid var(--sage-line);border-radius:28px;padding:36px;
  display:flex;flex-direction:column;gap:24px;box-shadow:var(--sh-card);
  transition:transform .25s ease, box-shadow .25s ease;
}
.store-card:hover{transform:translateY(-4px);box-shadow:0 16px 36px -12px rgba(43,70,66,.16)}
.store-head{display:flex;align-items:center;gap:16px}
.store-mark{
  min-width:52px;height:44px;padding:0 14px;flex-shrink:0;border-radius:14px;background:var(--sage-tint);
  display:flex;align-items:center;justify-content:center;
  font-family:var(--font-num);font-size:13px;font-weight:500;letter-spacing:.5px;color:var(--sage-deep);
}
.store-name{font-size:21px;font-weight:500;line-height:28px;color:var(--dark)}
.store-platform{font-size:12px;letter-spacing:1px;color:var(--sage-deep)}
.qr-wrap{display:flex;align-items:center;gap:22px}
.qr-box{
  width:140px;height:140px;flex-shrink:0;padding:10px;
  background:var(--white);border:1px solid var(--sage-line);border-radius:18px;box-shadow:var(--sh-card-xs);
}
.qr-box img{width:100%;height:100%;image-rendering:pixelated}
.qr-cap{display:flex;flex-direction:column;gap:8px}
.qr-cap strong{font-size:15px;font-weight:500;line-height:24px;color:var(--dark)}
.qr-cap span{font-size:13px;font-weight:300;line-height:22px;color:var(--gray)}
.qr-url{font-family:var(--font-num);font-size:11px;letter-spacing:.2px;color:var(--footnote);word-break:break-all}
.store-meta{display:flex;flex-direction:column;gap:12px;padding-top:20px;border-top:1px solid var(--sage-line)}
.meta-row{display:flex;align-items:center;justify-content:space-between;gap:12px}
.meta-key{font-size:13px;color:var(--footnote)}
.meta-val{font-family:var(--font-num);font-size:13px;font-weight:500;color:var(--gray-strong)}
.store-actions{display:flex;align-items:center;gap:14px;flex-wrap:wrap}

/* App 未上架时两张商店卡的「审核中」状态块，替代原来的二维码 + 版本号 */
.store-status{
  display:flex;flex-direction:column;gap:10px;
  background:var(--sage-tint);border-radius:20px;padding:22px 24px;
}
.status-chip{
  align-self:flex-start;padding:4px 12px;border-radius:14px;
  background:var(--white);font-size:12px;font-weight:500;letter-spacing:.5px;color:var(--sage-deep);
}
.store-status p{margin:0;font-size:14px;font-weight:300;line-height:26px;color:var(--deep)}

.req-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(280px,100%),1fr));gap:24px}
.req-card{
  background:var(--white);border:1px solid var(--sage-line);border-radius:24px;padding:32px;
  display:flex;flex-direction:column;gap:14px;box-shadow:var(--sh-card-sm);
}
.req-title{font-size:17px;font-weight:500;color:var(--dark)}
.req-list{display:flex;flex-direction:column;gap:10px}
.req-item{display:flex;align-items:flex-start;gap:10px;font-size:14px;font-weight:300;line-height:26px;color:var(--gray)}
.req-item::before{content:"";width:6px;height:6px;border-radius:50%;background:var(--sage);flex-shrink:0;margin-top:10px}

.changelog{display:flex;flex-direction:column;gap:24px}
.log-entry{
  background:var(--white);border:1px solid var(--sage-line);border-radius:24px;padding:36px;
  display:flex;flex-direction:column;gap:18px;box-shadow:var(--sh-card-sm);
}
.log-head{display:flex;align-items:baseline;gap:14px;flex-wrap:wrap}
.log-ver{font-family:var(--font-num);font-size:24px;font-weight:500;line-height:1;color:var(--sage-deep)}
.log-date{font-size:13px;color:var(--footnote)}
.log-latest{
  padding:4px 12px;border-radius:14px;background:var(--sage-tint);
  font-size:12px;font-weight:500;letter-spacing:.5px;color:var(--sage-deep);
}
.log-list{display:flex;flex-direction:column;gap:12px}
.log-item{display:flex;align-items:flex-start;gap:12px;font-size:15px;font-weight:300;line-height:28px;color:var(--gray)}
.log-item img{width:16px;height:16px;flex-shrink:0;margin-top:6px}

/* ============ 帮助中心 ============ */
.help-cats{display:flex;gap:10px;flex-wrap:wrap}
.faq-cat{
  height:40px;padding:0 18px;border-radius:20px;
  background:var(--white);border:1px solid var(--sage-line);
  font-size:14px;color:var(--gray);
  transition:background .2s ease, color .2s ease, border-color .2s ease;
}
.faq-cat:hover{border-color:var(--sage-border);color:var(--sage-deep)}
.faq-cat.is-active{background:var(--sage);border-color:var(--sage);color:#FFF}
.faq-list{display:flex;flex-direction:column;gap:14px}
.faq-item{
  background:var(--white);border:1px solid var(--sage-line);border-radius:22px;
  box-shadow:var(--sh-card-xs);overflow:hidden;
  transition:box-shadow .25s ease, border-color .25s ease;
}
.faq-item.is-open{box-shadow:var(--sh-card);border-color:var(--sage-border)}
.faq-q{
  width:100%;display:flex;align-items:center;justify-content:space-between;gap:20px;
  padding:22px 28px;text-align:left;
  font-size:16px;font-weight:500;line-height:26px;color:var(--dark);
}
.faq-q:hover{color:var(--sage-deep)}
.faq-icon{position:relative;width:16px;height:16px;flex-shrink:0}
.faq-icon::before,.faq-icon::after{
  content:"";position:absolute;background:var(--sage);border-radius:1px;
  transition:transform .3s ease, opacity .3s ease;
}
.faq-icon::before{left:0;top:7px;width:16px;height:2px}
.faq-icon::after{left:7px;top:0;width:2px;height:16px}
.faq-item.is-open .faq-icon::after{transform:rotate(90deg);opacity:0}
.faq-a{
  display:grid;grid-template-rows:0fr;visibility:hidden;
  transition:grid-template-rows .32s ease, visibility .32s ease;
}
.faq-item.is-open .faq-a{grid-template-rows:1fr;visibility:visible}
.faq-a-inner{overflow:hidden;min-height:0}
.faq-a-inner p{padding:0 28px 26px;font-size:15px;font-weight:300;line-height:28px;color:var(--gray)}
.faq-a-inner p + p{margin-top:12px}
.faq-a-inner a{color:var(--sage-deep);text-decoration:underline;text-underline-offset:3px}
.help-wrap{width:100%;max-width:860px;margin:0 auto;display:flex;flex-direction:column;gap:36px}
.faq-groups{display:flex;flex-direction:column;gap:56px}
.faq-group{display:flex;flex-direction:column;gap:20px}
.faq-group-label{font-size:13px;font-weight:500;letter-spacing:2px;color:var(--sage-deep)}
.faq-hidden{display:none !important}

.contact-card{
  background:var(--deep);border-radius:28px;padding:44px 48px;
  display:flex;align-items:center;justify-content:space-between;gap:32px;flex-wrap:wrap;
}
.contact-copy{display:flex;flex-direction:column;gap:12px;max-width:560px}
.contact-title{font-size:24px;font-weight:500;line-height:36px;color:var(--on-dark)}
.contact-desc{font-size:15px;font-weight:300;line-height:28px;color:var(--on-dark-muted)}
.btn-ghost--dark{border-color:rgba(248,246,242,.38);color:var(--on-dark)}
.btn-ghost--dark:hover{background:rgba(255,255,255,.10)}
