.whatsapp-float {
  position: fixed;
  right: max(24px, env(safe-area-inset-right));
  bottom: max(24px, env(safe-area-inset-bottom));
  z-index: 1000;
  display: inline-flex;
  align-items: center;
  gap: 12px;
  text-decoration: none;
}
.whatsapp-label {
  padding: 12px 16px;
  border: 1px solid #dce4ed;
  border-radius: 8px;
  background: #fff;
  color: #0b2545;
  font: 700 14px/1.4 system-ui, sans-serif;
  box-shadow: 0 4px 14px rgba(11, 37, 69, 0.14);
}
.whatsapp-icon {
  display: grid;
  place-items: center;
  width: 60px;
  height: 60px;
  border-radius: 50%;
  background: #25d366;
  box-shadow: 0 6px 16px rgba(0, 0, 0, 0.18);
  transition: background-color 160ms ease;
}
.whatsapp-icon img { width: 36px; height: 36px; }
.whatsapp-float:hover .whatsapp-icon { background: #128c4a; }
.whatsapp-float:focus-visible { outline: 3px solid #0b2545; outline-offset: 5px; border-radius: 30px; }
.map-panel.map-live { background: #eef4fa; min-height: 380px; }
.map-panel.map-live::after { content: none; }
.map-live iframe { display: block; width: 100%; height: 380px; border: 0; }
.map-directions { display: flex; justify-content: flex-end; margin-top: 16px; }
.map-directions a { min-height: 44px; }
.floating-ai { pointer-events: none; }
.floating-ai-toggle, .floating-ai[aria-expanded="true"] .floating-ai-card { pointer-events: auto; }
@media (max-width: 620px) {
  .whatsapp-float { right: max(16px, env(safe-area-inset-right)); bottom: max(20px, env(safe-area-inset-bottom)); }
  .whatsapp-label { display: none; }
  .whatsapp-icon { width: 56px; height: 56px; }
  .map-panel.map-live { min-height: 320px; }
  .map-live iframe { height: 320px; }
}
@media (prefers-reduced-motion: reduce) { .whatsapp-icon { transition: none; } }
