.grappy-dictation { display:flex; flex-wrap:wrap; align-items:center; gap:5px; margin:3px 0 5px; font:12px Arial,sans-serif; color:#475569; }
.grappy-dictation[hidden] { display:none !important; }
.grappy-dictation button.grappy-dictation-mic { display:inline-flex; align-items:center; justify-content:center; flex:none; width:30px; min-width:30px; height:29px; min-height:29px; margin:0; padding:4px; border:1px solid #94a3b8; border-radius:5px; background:#fff; color:#1e40af; cursor:pointer; }
.grappy-dictation button.grappy-dictation-mic[aria-pressed="true"] { background:#b91c1c; border-color:#b91c1c; color:white; }
.grappy-dictation select { box-sizing:border-box; flex:none; width:auto; max-width:110px; height:29px; min-height:29px; margin:0; padding:3px 5px; border:1px solid #94a3b8; border-radius:5px; background:#fff; color:#334155; font:12px Arial,sans-serif; }
.grappy-dictation button:focus-visible, .grappy-dictation select:focus-visible { outline:2px solid #2563eb; outline-offset:2px; }
.grappy-dictation-status { flex:1 1 140px; font-weight:normal; overflow-wrap:anywhere; }
.grappy-dictation-status:empty { display:none; }

/* Single-line fields reveal their controls when selected, keeping dense forms compact. */
input + .grappy-dictation { display:none; }
input:focus + .grappy-dictation,
input + .grappy-dictation:focus-within,
input + .grappy-dictation:has([aria-pressed="true"]) { display:flex; }
