/* Henry Systems v2.1 RC4 — Shared component ownership
   Stable mobile dictation rules moved from app.css without visual changes. */

/* Build 057: stable mobile dictation experience */
.ask-input-shell {
  position: relative;
  min-width: 0;
}
.ask-input-shell .ask-input {
  width: 100%;
  height: 100%;
  box-sizing: border-box;
}
.dictation-status {
  position: absolute;
  inset: 0;
  width: 100%;
  border: 1px solid rgba(15,143,136,.35);
  border-radius: 999px;
  background: #fff;
  color: var(--teal-dark);
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 12px;
  padding: 0 14px;
  z-index: 2;
  touch-action: manipulation;
}
.dictation-status[hidden] { display: none !important; }
.dictation-status:disabled { opacity: 1; }
.dictation-status-copy {
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  font-size: 12px;
  line-height: 1.05;
  font-weight: 900;
  white-space: nowrap;
}
.dictation-status-copy small {
  margin-top: 3px;
  font-size: 9px;
  font-weight: 700;
  color: #61767a;
}
.voice-wave {
  height: 25px;
  display: flex;
  align-items: center;
  gap: 3px;
}
.voice-wave i {
  display: block;
  width: 3px;
  height: 8px;
  border-radius: 999px;
  background: currentColor;
  transition: height 80ms linear;
  transform-origin: center;
}
.voice-wave i:nth-child(2), .voice-wave i:nth-child(4) { height: 13px; }
.voice-wave i:nth-child(3) { height: 19px; }
.is-transcribing .voice-wave i {
  animation: askTranscribingWave 1.05s ease-in-out infinite;
  opacity: .75;
}
@keyframes askTranscribingWave {
  0%, 100% { transform: scaleY(.45); }
  50% { transform: scaleY(1); }
}
.dictate-nav-btn.is-recording {
  color: #a93d3d;
}
.dictate-nav-btn.is-recording svg {
  animation: askMicPulse 1.2s ease-in-out infinite;
}
@keyframes askMicPulse {
  0%, 100% { transform: scale(1); opacity: 1; }
  50% { transform: scale(1.08); opacity: .68; }
}
@media (prefers-reduced-motion: reduce) {
  .dictate-nav-btn.is-recording svg { animation: none; }
  .is-transcribing .voice-wave i { animation-duration: 1.8s; }
}
