/* Custom CSS for Kristīna Stepanova Physiotherapy Booking */
@import url('https://fonts.googleapis.com/css2?family=Plus+Jakarta+Sans:wght@400;500;600;700;800;900&display=swap');

:root {
  --primary: #0d9488;
  --primary-hover: #0f766e;
  --primary-light: #f0fdfa;
  --primary-dark: #115e59;
}

html {
  -webkit-text-size-adjust: 100%;
  text-size-adjust: 100%;
  box-sizing: border-box;
  overflow-x: hidden !important;
  max-width: 100vw !important;
  width: 100% !important;
}

*, *:before, *:after {
  box-sizing: inherit;
  min-width: 0; /* Prevents flex children from overflowing */
}

body {
  font-family: 'Plus Jakarta Sans', system-ui, -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, Oxygen, Ubuntu, Cantarell, sans-serif;
  -webkit-tap-highlight-color: transparent;
  scroll-behavior: smooth;
  overflow-x: hidden !important;
  max-width: 100vw !important;
  width: 100% !important;
  min-width: 320px;
}

/* Global text wrap & overflow protection */
p, span, h1, h2, h3, h4, h5, h6, a, button, label {
  overflow-wrap: break-word;
  word-wrap: break-word;
}

/* Fix iOS Safari auto-zoom on form inputs */
@media screen and (max-width: 768px) {
  input[type="text"],
  input[type="tel"],
  input[type="date"],
  input[type="password"],
  select,
  textarea {
    font-size: 16px !important;
  }
}

/* Custom scrollbar for horizontal date pills */
.no-scrollbar::-webkit-scrollbar {
  display: none;
  width: 0;
  height: 0;
}
.no-scrollbar {
  -ms-overflow-style: none;
  scrollbar-width: none;
  -webkit-overflow-scrolling: touch;
}

/* Smooth modal transitions & mobile drawer */
.drawer-mobile {
  max-height: 90vh;
  overflow-y: auto;
  -webkit-overflow-scrolling: touch;
}

@media (max-width: 640px) {
  .drawer-mobile {
    border-bottom-left-radius: 0;
    border-bottom-right-radius: 0;
    padding-bottom: max(1.5rem, env(safe-area-inset-bottom));
  }
}

/* Google Translate / External Banner suppression */
.goog-te-banner-frame,
.goog-te-banner-frame.skiptranslate,
iframe.goog-te-banner-frame,
.goog-te-gadget,
#goog-gt-tt,
.goog-tooltip,
.goog-tooltip:hover,
.VIpgJd-yAWNEb-VIpgJd-fmcmS-sn54Q,
.VIpgJd-ZVi9od-OR9Bfe-bN97Pc,
.VIpgJd-ZVi9od-aZ2wEe-wOHMyf,
.skiptranslate {
  display: none !important;
  visibility: hidden !important;
  height: 0 !important;
  width: 0 !important;
  opacity: 0 !important;
  pointer-events: none !important;
}

body {
  top: 0px !important;
  position: static !important;
}

.goog-text-highlight {
  background-color: transparent !important;
  border: none !important;
  box-shadow: none !important;
}

#google_translate_element {
  display: none !important;
}

/* Language selector active pill */
.lang-btn.active {
  background-color: #0d9488;
  color: #ffffff;
  border-color: #0d9488;
  box-shadow: 0 2px 6px rgba(13, 148, 136, 0.25);
}
