.microphone-container{box-shadow:0 0 10px 0 #5ebbff}.microphone{display:flex;justify-content:center;align-items:center;position:relative;z-index:10;box-shadow:0 10px 30px rgba(0,0,0,.3),inset 0 0 15px rgba(0,0,0,.2);transition:all .3s ease}.microphone.recording{background:#283038;animation:pulse 2s infinite;box-shadow:0 0 10px 0 #5ebbff}@keyframes pulse{0%{box-shadow:0 0 0 0 rgba(58,83,105,.7),0 0 20px rgba(58,83,105,.5),inset 0 0 15px rgba(0,0,0,.2)}70%{box-shadow:0 0 0 20px rgba(58,83,105,0),0 0 30px rgba(58,83,105,.8),inset 0 0 15px rgba(0,0,0,.2)}to{box-shadow:0 0 0 0 rgba(58,83,105,0),0 0 20px rgba(58,83,105,.5),inset 0 0 15px rgba(0,0,0,.2)}}.microphone-icon{width:50px;height:50px;fill:#fff;filter:drop-shadow(0 0 5px rgba(255,255,255,.3))}.ripple{position:absolute;border-radius:50%;background:rgba(255,42,42,.6);transform:scale(0);animation:ripple-animation 2s infinite;pointer-events:none}@keyframes ripple-animation{0%{transform:scale(0);opacity:1}to{transform:scale(4);opacity:0}}.ripple:nth-child(2){animation-delay:.5s}.ripple:nth-child(3){animation-delay:1s}.ripple:nth-child(4){animation-delay:1.5s}.status-text{position:absolute;bottom:-40px;left:50%;transform:translateX(-50%);color:hsla(0,0%,100%,.8);font-size:16px;font-weight:500;letter-spacing:1px;text-shadow:0 0 10px hsla(0,0%,100%,.3);transition:all .3s ease}.recording-text{color:#ff2a2a;text-shadow:0 0 10px rgba(255,42,42,.5);animation:text-glow 1.5s infinite alternate}@keyframes text-glow{0%{text-shadow:0 0 5px rgba(255,42,42,.5)}to{text-shadow:0 0 15px rgba(255,42,42,.8)}}