/* =========================
   CLINICS GRID
========================= */

.clinics-grid {
  display: grid;
  grid-template-columns: 1fr;
  gap: 12px;
}

.clinic-card {
  width: 100%;
  border: 1px solid #d6e5f3;
  background: linear-gradient(180deg, #ffffff 0%, #f7fbff 100%);
  border-radius: 18px;
  padding: 14px;
  display: flex;
  align-items: center;
  gap: 12px;
  cursor: pointer;
  text-align: left;
  transition: transform 0.18s ease, box-shadow 0.18s ease, border-color 0.18s ease;
  box-shadow: 0 6px 16px rgba(32, 84, 139, 0.06);
}

.clinic-card:hover,
.clinic-card:focus,
.clinic-card:focus-visible {
  transform: translateY(-2px) scale(1.01) !important;

  background:
    radial-gradient(circle at top left, rgba(31, 162, 255, 0.10), transparent 34%),
    linear-gradient(135deg, #f2fbff 0%, #dff5ff 100%) !important;

  border-color: #86d8ff !important;
  color: #075fa8 !important;
  outline: none !important;

  box-shadow:
    0 12px 26px rgba(14, 165, 245, 0.14),
    0 0 0 2px rgba(103, 216, 255, 0.24) !important;
}

.clinic-card:active {
  transform: translateY(0) scale(0.99) !important;

  background:
    radial-gradient(circle at top left, rgba(31, 162, 255, 0.12), transparent 34%),
    linear-gradient(135deg, #e8f8ff 0%, #d2efff 100%) !important;

  border-color: #6fd0ff !important;
  color: #075fa8 !important;
  outline: none !important;

  box-shadow:
    0 8px 18px rgba(14, 165, 245, 0.14),
    0 0 0 2px rgba(103, 216, 255, 0.28) !important;
}

.clinic-card:hover .clinic-card-icon,
.clinic-card:focus .clinic-card-icon,
.clinic-card:focus-visible .clinic-card-icon,
.clinic-card:active .clinic-card-icon {
  background: linear-gradient(135deg, #e7f9ff 0%, #c9efff 100%) !important;
  color: #0878c9 !important;
}

.clinic-card:hover .clinic-card-title,
.clinic-card:focus .clinic-card-title,
.clinic-card:focus-visible .clinic-card-title,
.clinic-card:active .clinic-card-title {
  color: #075fa8 !important;
}

.clinic-card:hover .clinic-card-arrow,
.clinic-card:focus .clinic-card-arrow,
.clinic-card:focus-visible .clinic-card-arrow,
.clinic-card:active .clinic-card-arrow {
  color: #0878c9 !important;
}

.clinic-card-icon {
  width: 42px;
  height: 42px;
  min-width: 42px;
  border-radius: 50%;
  background: linear-gradient(135deg, #eaf5ff 0%, #d8ecff 100%);
  color: #0f67c5;
  display: flex;
  align-items: center;
  justify-content: center;
  font-size: 24px;
  font-weight: 800;
}

.clinic-card-text {
  display: flex;
  flex-direction: column;
  gap: 4px;
  flex: 1;
}

.clinic-card-title {
  font-size: 15px;
  font-weight: 800;
  color: #123b66;
  line-height: 1.35;
}

.clinic-card-subtitle {
  font-size: 12px;
  color: #6d7d90;
  font-weight: 600;
}

.clinic-card-arrow {
  font-size: 22px;
  color: #7b96af;
  font-weight: 700;
}

/* =========================
   SMALL RESPONSIVE TOUCH
========================= */

@media (min-width: 520px) {
  .clinics-grid {
    grid-template-columns: 1fr 1fr;
  }
}

/* =========================
   OPTIONAL BETTER BOT BOX
========================= */

.bot-message .info-card,
.bot-message .clinics-panel {
  margin-top: 2px;
}

/* =========================
   ANIMATION
========================= */

@keyframes fadeInUp {
  from {
    opacity: 0;
    transform: translateY(8px);
  }
  to {
    opacity: 1;
    transform: translateY(0);
  }
}




/* =========================
   COMPACT CLINICS MENU
========================= */

.clinics-panel {
  padding: 12px !important;
  border-radius: 18px !important;
}

.clinics-panel-title {
  font-size: 15px !important;
  margin-bottom: 4px !important;
}

.clinics-panel-subtitle {
  font-size: 12px !important;
  margin-bottom: 10px !important;
}

.clinics-grid {
  grid-template-columns: 1fr 1fr !important;
  gap: 8px !important;
  width: 100% !important;
  overflow: hidden !important;
}

.clinic-card {
  min-width: 0 !important;
  width: 100% !important;
  box-sizing: border-box !important;
  padding: 9px 10px !important;
  border-radius: 15px !important;
  gap: 8px !important;
}

.clinic-card-icon {
  width: 28px !important;
  height: 28px !important;
  min-width: 28px !important;
  font-size: 17px !important;
}

.clinic-card-title {
  font-size: 12px !important;
  line-height: 1.25 !important;
  letter-spacing: 0 !important;
}

.clinic-card-subtitle {
  display: none !important;
}

.clinic-card-arrow {
  font-size: 17px !important;
  min-width: 10px !important;
}

.clinic-card-text {
  min-width: 0 !important;
}

@media (max-width: 430px) {
  .clinics-grid {
    grid-template-columns: 1fr !important;
  }

  .clinic-card {
    padding: 10px 12px !important;
  }

  .clinic-card-title {
    font-size: 13px !important;
  }
}


/* =========================================================
   CLEAN CLINICS LIST - NO BROKEN WORDS
========================================================= */

.clinics-panel {
  padding: 12px !important;
  border-radius: 18px !important;
}

.clinics-panel-title {
  font-size: 15px !important;
  margin-bottom: 4px !important;
}

.clinics-panel-subtitle {
  font-size: 12px !important;
  margin-bottom: 10px !important;
  line-height: 1.35 !important;
}

.clinics-grid {
  display: grid !important;
  grid-template-columns: 1fr !important;
  gap: 7px !important;
  width: 100% !important;
  overflow: visible !important;
}

.clinic-card {
  width: 100% !important;
  min-width: 0 !important;
  box-sizing: border-box !important;

  display: grid !important;
  grid-template-columns: 30px 1fr 14px !important;
  align-items: center !important;
  gap: 9px !important;

  padding: 9px 11px !important;
  border-radius: 15px !important;

  text-align: left !important;
  
    outline: none !important;
  -webkit-tap-highlight-color: transparent;
}

.clinic-card-icon {
  width: 30px !important;
  height: 30px !important;
  min-width: 30px !important;

  font-size: 18px !important;
}

.clinic-card-text {
  min-width: 0 !important;
  display: block !important;
}

.clinic-card-title {
  display: block !important;

  font-size: 12.6px !important;
  line-height: 1.25 !important;
  font-weight: 850 !important;
  letter-spacing: 0 !important;

  white-space: normal !important;
  word-break: normal !important;
  overflow-wrap: normal !important;
  hyphens: none !important;

  color: #123b66 !important;
}

.clinic-card-subtitle {
  display: none !important;
}

.clinic-card-arrow {
  font-size: 18px !important;
  min-width: 12px !important;
  text-align: right !important;
}

