/* ===== 响应式规则（移动端硬规则：≤1024 提前切列，≤640 单列） ===== */
@media (max-width:1024px){
  .grid-4{grid-template-columns:repeat(2,1fr)}
  .grid-3{grid-template-columns:repeat(2,1fr)}
  .detail-layout{grid-template-columns:1fr}
  .toc-aside{position:static;max-height:none;margin-bottom:24px}
  .list-layout{grid-template-columns:1fr}
  .cat-side{position:static}
  .footer-grid{grid-template-columns:repeat(2,1fr)}
  .hero h1{font-size:32px}
}
@media (max-width:640px){
  .grid-4,.grid-3,.grid-2{grid-template-columns:1fr}
  .hero{padding:60px 0 72px}
  .hero h1{font-size:26px}
  .hero p.lead{font-size:15.5px}
  .section{padding:40px 0}
  .section-head h2{font-size:22px}
  .article-body{padding:24px 20px}
  .article-head h1{font-size:24px}
  .page-head h1{font-size:24px}
  .footer-grid{grid-template-columns:1fr}
  .float-capsule{right:10px;padding:6px 5px}
  .cap-btn{font-size:11px;padding:7px 6px;gap:4px}
  .cap-btn svg{width:18px;height:18px}
  .cap-divider{width:20px}
  .header-inner{height:56px}
  .nav-toggle{display:flex}
  .site-nav{display:none;position:absolute;top:56px;left:0;right:0;background:#fff;border-bottom:1px solid var(--line);flex-direction:column;padding:10px 18px 16px;box-shadow:0 12px 24px rgba(23,35,59,.1)}
  .site-nav.open{display:flex}
  .card-modal-img{width:min(300px,80vw);height:auto;aspect-ratio:3/5}
}
