.afra-speech-input {
    position: fixed;
    inset: auto;
    margin: 0;
    padding: 2px;
    border: 1px solid var(--bs-border-color, #d5dce5);
    border-radius: 8px;
    background: var(--bs-body-bg, #fff);
    color: var(--bs-body-color, #212529);
    box-shadow: 0 3px 12px rgba(0, 0, 0, .15);
    z-index: 2147483001;
    display: flex;
    align-items: center;
    gap: 6px;
    max-width: calc(100vw - 16px);
    font-size: 12px;
    opacity: .35;
    transition: opacity .15s ease;
}
.afra-speech-input:hover,
.afra-speech-input:focus-within,
.afra-speech-input.is-recording { opacity: 1; }
.afra-speech-input[hidden] { display: none; }
.afra-speech-input button {
    display: grid;
    place-items: center;
    width: 24px;
    height: 24px;
    padding: 4px;
    border: 0;
    border-radius: 6px;
    background: var(--afra-accent, #087f8c);
    color: #fff;
    cursor: pointer;
    flex-shrink: 0;
}
.afra-speech-input button[aria-pressed="true"] { background: #c53030; }
.afra-speech-input button:focus-visible { outline: 2px solid currentColor; outline-offset: 2px; }
.afra-speech-input svg { width: 16px; height: 16px; }
.afra-speech-input-status:empty { display: none; }
.afra-speech-input-status { overflow-wrap: anywhere; }
