.hidden {
  display: none !important;
}

@keyframes pulse-animation {
  0% {
    transform: scale(1);
    opacity: 1;
  }
  100% {
    transform: scale(2);
    opacity: 0;
  }
}

.pulse {
  animation: pulse-animation 1.5s infinite;
}

/* Accessibility improvements */
*:focus {
  outline: 3px solid #2ca6a4; /* High contrast focus ring */
  outline-offset: 2px;
}

button {
  cursor: pointer;
  -webkit-tap-highlight-color: transparent;
}

/* Ensure text has sufficient contrast */
.text-gray-700 {
  color: #374151;
}

/* Improve touch targets */
button {
  min-height: 44px;
  min-width: 44px;
}

/* Custom styles for BlindCab UI */
body {
  font-family: 'DM Sans', -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, sans-serif;
}

input {
  font-family: inherit;
}

/* Microphone listening state */
@keyframes mic-pulse {
  0% {
    box-shadow: 0 0 0 0 rgba(44, 166, 164, 0.6);
    background: rgba(44, 166, 164, 0.25);
  }
  70% {
    box-shadow: 0 0 0 14px rgba(44, 166, 164, 0);
    background: rgba(44, 166, 164, 0.4);
  }
  100% {
    box-shadow: 0 0 0 0 rgba(44, 166, 164, 0);
    background: rgba(44, 166, 164, 0.25);
  }
}

.mic-listening {
  animation: mic-pulse 1.2s ease-out infinite;
  background: rgba(239, 68, 68, 0.18) !important;
  color: #b91c1c;
}

.mic-listening svg,
.mic-listening i {
  color: #b91c1c !important;
}
