/* v4.7.2 — Standalone Trip Planning mode selector and four-column module grid */
.jmit-trip-planning-mode .v1-builder-title { margin-top: 1.25rem; }
.jmit-trip-planning-mode .v1-builder-content { min-height: 22rem; }

.jmit-planning-grid {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 1rem;
  padding: .25rem 0 1.5rem;
}
.jmit-planning-tile {
  min-height: 10rem;
  border: 1px solid #dce3eb;
  border-radius: 1.25rem;
  background: #fff;
  color: #233a55;
  padding: 1.25rem;
  text-align: left;
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  gap: .55rem;
  cursor: pointer;
  box-shadow: 0 8px 25px rgba(24, 43, 66, .05);
  transition: transform .15s ease, border-color .15s ease, box-shadow .15s ease;
}
.jmit-planning-tile:hover,
.jmit-planning-tile:focus-visible {
  border-color: #d76d2b;
  box-shadow: 0 12px 30px rgba(24, 43, 66, .1);
  transform: translateY(-2px);
  outline: none;
}
.jmit-planning-tile-icon {
  width: 2.75rem;
  height: 2.75rem;
  display: grid;
  place-items: center;
  border-radius: .9rem;
  background: #fff1e7;
  color: #d76d2b;
}
.jmit-planning-tile-icon svg { width: 1.45rem; height: 1.45rem; }
.jmit-planning-tile b { font-size: 1rem; line-height: 1.2; }
.jmit-planning-tile small { color: #748195; line-height: 1.4; }
.jmit-planning-back {
  border: 1px solid rgba(215, 109, 43, .35);
  border-radius: 999px;
  background: #fff7f0;
  color: #9a4317;
  font: inherit;
  font-weight: 800;
  padding: .7rem 1rem;
  cursor: pointer;
  white-space: nowrap;
}
.jmit-planning-back:hover,
.jmit-planning-back:focus-visible { background: #ffeadb; outline: 2px solid rgba(215,109,43,.22); outline-offset: 2px; }

@media (max-width: 1100px) {
  .jmit-planning-grid { grid-template-columns: repeat(3, minmax(0, 1fr)); }
}
@media (max-width: 800px) {
  .jmit-planning-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
}
@media (max-width: 520px) {
  .jmit-planning-grid { grid-template-columns: 1fr; }
  .jmit-planning-tile { min-height: 8rem; }
}
