UNPKG

@memori.ai/memori-react

Version:

[![npm version](https://img.shields.io/github/package-json/v/memori-ai/memori-react)](https://www.npmjs.com/package/@memori.ai/memori-react) ![Tests](https://github.com/memori-ai/memori-react/workflows/CI/badge.svg?branch=main) ![TypeScript Support](https

143 lines (122 loc) 3.52 kB
.memori-chat-inputs--mic { z-index: 1; margin-left: 0.33rem; -webkit-tap-highlight-color: transparent; touch-action: manipulation; -webkit-touch-callout: none; -webkit-user-drag: none; -khtml-user-drag: none; -moz-user-drag: none; -o-user-drag: none; -webkit-user-select: none; user-select: none; } .memori-chat-inputs--mic svg { color: var(--memori-primary, #fff); font-size: 1em; -webkit-user-select: none; user-select: none; } .memori-chat-inputs--mic:hover, .memori-chat-inputs--mic:active, .memori-chat-inputs--mic:focus { border-color: var(--memori-primary) !important; color: var(--memori-primary, #fff); } .memori-chat-inputs--mic:active, .memori-chat-inputs--mic:focus { box-shadow: 0 0.2rem 0.33rem var(--memori-primary) !important; } /* Enhanced touch feedback for mobile */ @media (hover: none) and (pointer: coarse) { .memori-chat-inputs--mic:active { transform: scale(0.95); transition: transform 0.1s ease; } .memori-chat-inputs--mic:not(.memori-chat-inputs--mic--listening):active { background-color: rgba(0, 0, 0, 0.1); } } /* Prevent double-tap zoom on mobile - already defined above */ .memori-chat-inputs--mic:not(.memori-chat-inputs--mic--listening):active, .memori-chat-inputs--mic:not(.memori-chat-inputs--mic--listening):focus { color: var(--memori-primary) !important; } @keyframes micBtnActivePulse { 0% { transform: scale(1.25); } 25% { transform: scale(1.4); } 50% { transform: scale(1.3); } 75% { transform: scale(1.4); } 100% { transform: scale(1.2); } } .memori-chat-inputs--mic.memori-chat-inputs--mic--listening { position: relative; color: red !important; -webkit-tap-highlight-color: transparent; touch-action: manipulation; -webkit-touch-callout: none; transform: scale(1.5); } .memori-chat-inputs--mic.memori-chat-inputs--mic--listening::before, .memori-chat-inputs--mic.memori-chat-inputs--mic--listening::after { position: absolute; z-index: -1; top: 0; left: 0; width: 100%; height: 100%; border-radius: 50%; animation: micBtnActivePulse 2s infinite; background: var(--memori-primary); content: ''; opacity: 0.2; } .memori-chat-inputs--mic.memori-chat-inputs--mic--listening::after { top: 5%; left: 5%; width: 90%; height: 90%; animation-delay: 0.3s; opacity: 0.3; } .memori-chat-inputs--mic.memori-chat-inputs--mic--listening:active, .memori-chat-inputs--mic.memori-chat-inputs--mic--listening:focus { border-color: red !important; } .memori-chat-inputs--mic.memori-chat-inputs--mic--listening svg { color: red !important; } .memori-chat-inputs--mic-tooltip.memori-tooltip--align-topLeft .memori-tooltip--content { top: -50%; right: 115%; width: 100%; height: 100%; min-height: 35px; background: rgba(0, 0, 0, 0.8); color: #fff; font-size: 0.85em; opacity: 0; text-align: center; /* left: 0; */ transform: translateY(-100%); } /* Mobile-specific improvements for listening state */ @media (hover: none) and (pointer: coarse) { .memori-chat-inputs--mic.memori-chat-inputs--mic--listening { transform: scale(1.3); } .memori-chat-inputs--mic.memori-chat-inputs--mic--listening::before, .memori-chat-inputs--mic.memori-chat-inputs--mic--listening::after { animation-duration: 1.5s; } }