@media (max-width: 480px) {
  .card-body {
    flex-direction: column;
    gap: 0.5rem;
  }

  .info-resumen div {
    font-size: 0.9rem;
    word-break: break-word;
  }

  .logo {
    width: 60px;
  }

  .fab-feedback {
    width: 48px;
    height: 48px;
    font-size: 1.2rem;
  }
}

/* === Espaciado para formularios con navegación inferior === */
.form-padding-bottom {
  padding-bottom: 5rem; /* mejor en rem que en px para escalar mejor */
}

.bottom-space {
  height: 5rem;
  width: 100%;
}

@media (max-width: 600px) {
  .form-grid {
    grid-template-columns: 1fr !important;
    gap: 12px !important;
  }

  .campo {
    min-width: 0;
    width: 100%;
  }

  input, select {
    width: 100%;
    max-width: 100%;
    box-sizing: border-box;
  }

  .botones-dobles {
    flex-direction: column;
    gap: 10px;
  }

  .botones-dobles button {
    width: 100%;
  }

  body,
  .container,
  .app-container,
  .form-grid,
  .ruta-card,
  .card,
  .card-body {
    padding-left: 1rem;
    padding-right: 1rem;
  }
}
