.trainerVoiceInput{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:center;grid-gap:10px 14px;gap:10px 14px;margin-top:-2px;padding:11px 12px 11px 14px;border:1px solid rgba(119,110,235,.16);border-radius:12px;background:linear-gradient(145deg,rgba(19,23,62,.72),rgba(8,15,42,.82));box-shadow:inset 0 1px 0 rgba(255,255,255,.02)}.trainerVoiceStatus{min-width:0;display:flex;align-items:center;gap:9px;color:#929cc1;font-size:11px;line-height:1.4}.trainerVoiceDot{width:7px;height:7px;flex:0 0 7px;border-radius:999px;background:#7567dd;box-shadow:0 0 11px rgba(116,95,232,.28)}.trainerVoiceDotLive{background:#ff6e7c;box-shadow:0 0 14px rgba(255,82,104,.55);animation:trainerVoicePulse 1.05s ease-in-out infinite}@keyframes trainerVoicePulse{0%,to{opacity:1;transform:scale(1)}50%{opacity:.42;transform:scale(.82)}}.trainerVoiceButton{min-height:38px;padding:8px 13px;border:1px solid rgba(144,111,255,.28);border-radius:10px;color:#d8d1ff;background:linear-gradient(135deg,rgba(103,70,213,.24),rgba(51,53,126,.24));font-size:11px;font-weight:800;white-space:nowrap;transition:transform .15s ease,border-color .15s ease,background .15s ease}.trainerVoiceButton:hover:not(:disabled){transform:translateY(-1px);border-color:rgba(171,137,255,.48);background:linear-gradient(135deg,rgba(116,76,233,.34),rgba(61,60,145,.32))}.trainerVoiceButtonRecording{color:#ffb0b8;border-color:rgba(255,91,111,.28);background:rgba(255,75,96,.08)}.trainerVoiceButton:disabled{cursor:default;opacity:.58;transform:none}.trainerVoiceError{grid-column:1/-1;color:#ff9da8;font-size:10px;line-height:1.45}@media (max-width:560px){.trainerVoiceInput{grid-template-columns:1fr}.trainerVoiceButton{width:100%}}