
@media (max-width: 760px) {
  .admin-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }

  .admin-node-lines {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }

  .admin-detail-grid {
    grid-template-columns: 1fr;
  }
}

@media (max-width: 640px) {
  body {
    padding:
      calc(14px + env(safe-area-inset-top))
      calc(12px + env(safe-area-inset-right))
      calc(26px + env(safe-area-inset-bottom))
      calc(12px + env(safe-area-inset-left));
  }

  .hero {
    margin-bottom: 14px;
  }

  .brand {
    padding: 0 6px;
    font-size: clamp(26px, 12vw, 56px);
  }

  .brand .miniapp-only-inline,
  .brand .browser-only-inline {
    font-size: 0.98em;
  }

  .title {
    margin-top: 14px;
    font-size: clamp(14px, 4.4vw, 20px);
  }

  .gate-panel,
  .step,
  .support-card,
  .panel,
  .admin-mobile-bar,
  .admin-sidebar {
    border-radius: 24px;
  }

  .connection-panel {
    padding: 0;
  }

  .button {
    font-size: 14px;
  }

  .button-icon::before {
    width: 18px;
    height: 18px;
    flex-basis: 18px;
  }

  .step h2 {
    font-size: clamp(16px, 4.2vw, 20px);
  }

  .actions {
    flex-direction: column;
  }

  .actions > *,
  .button,
  .admin-actions .button,
  .admin-head-actions .button {
    width: 100%;
  }

  .admin-layout {
    grid-template-columns: 1fr;
  }

  .admin-menu-button {
    display: inline-flex;
    align-items: center;
  }

  body.is-admin-miniapp.admin-menu-open .admin-menu-overlay {
    display: block;
  }

  .admin-sidebar {
    position: fixed;
    top: calc(10px + env(safe-area-inset-top));
    left: calc(10px + env(safe-area-inset-left));
    bottom: calc(10px + env(safe-area-inset-bottom));
    width: min(84vw, 290px);
    min-height: 0;
    z-index: 25;
    transform: translateX(-115%);
    transition: transform 180ms ease;
  }

  body.is-admin-miniapp.admin-menu-open .admin-sidebar {
    transform: translateX(0);
  }

  .admin-section-head {
    flex-direction: column;
    align-items: stretch;
  }
}
