/* ===== 平板 ===== */
@media (max-width: 1024px) {
  .hero h1 { font-size: 2.5rem; }
  .feature-grid { grid-template-columns: repeat(2, 1fr); }
  .tech-grid { grid-template-columns: repeat(2, 1fr); }
  .download-grid { grid-template-columns: repeat(3, 1fr); }
  .footer-links { gap: 40px; }
}

/* ===== 手机 ===== */
@media (max-width: 768px) {
  .nav-links { display: none; }
  .nav-links.open {
    display: flex; flex-direction: column; position: absolute; top: 100%; left: 0; right: 0;
    background: var(--bg-card); padding: 16px 24px; border-bottom: 1px solid var(--border); gap: 12px; z-index: 99;
  }
  .nav-links.open a { padding: 8px 0; font-size: 1rem; }
  .mobile-menu { display: block; }

  .hero { padding: 100px 0 60px; min-height: auto; }
  .hero-content { grid-template-columns: 1fr; gap: 32px; text-align: center; }
  .hero h1 { font-size: 2rem; }
  .hero-buttons { justify-content: center; flex-wrap: wrap; }
  .hero-desc br { display: none; }

  .app-window { border-radius: 8px; }
  .query-body { min-height: 200px; }

  .features, .showcase, .tech, .download { padding: 60px 0; }
  .section-title { font-size: 1.5rem; }
  .section-desc { font-size: 0.9rem; margin-bottom: 32px; }

  .feature-grid { grid-template-columns: 1fr 1fr; gap: 12px; }
  .feature-card { padding: 20px 16px; }
  .feature-card h3 { font-size: 0.95rem; }
  .feature-card p { font-size: 0.8rem; }

  .showcase-tabs { flex-wrap: wrap; gap: 6px; }
  .tab-btn { padding: 6px 14px; font-size: 0.85rem; }
  .mock-tree { display: none; }
  .mock-db-tabs { overflow-x: auto; -webkit-overflow-scrolling: touch; }
  .mock-grid-wrap { overflow-x: auto; -webkit-overflow-scrolling: touch; }

  .tech-grid { grid-template-columns: 1fr 1fr; gap: 14px; }
  .tech-card { padding: 24px 16px; }
  .tech-name { font-size: 1.1rem; }

  .download-grid { grid-template-columns: 1fr; gap: 12px; }
  .download-card { flex-direction: row; justify-content: flex-start; text-align: left; padding: 18px 16px; }
  .download-card .dl-info { text-align: left; }

  .footer { padding: 40px 0 0; }
  .footer-content { flex-direction: column; gap: 24px; }
  .footer-links { gap: 32px; }

  .subpage { padding-top: 96px; }
  .doc-block { padding: 20px; }
}

/* ===== 小屏 ===== */
@media (max-width: 480px) {
  .container { padding: 0 14px; }
  .hero h1 { font-size: 1.6rem; }
  .hero-desc { font-size: 0.9rem; }
  .btn { padding: 10px 20px; font-size: 0.85rem; }
  .feature-grid { grid-template-columns: 1fr; gap: 10px; }
  .tech-grid { grid-template-columns: 1fr; gap: 10px; }
  .footer-links { flex-direction: column; gap: 20px; }
}
