/* Adds controls to the canonical composer; never replaces the input/send path. */
html body #pro-conversas .v105-compose:has(.chat-dictation-mic),html body.fx260-pro-shell.fx260-pro-shell #pro-conversas .v105-compose:has(.chat-dictation-mic){flex-wrap:wrap!important}
html body #pro-conversas .v105-compose .chat-dictation-mic,html body.fx260-pro-shell.fx260-pro-shell #pro-conversas .v105-compose .chat-dictation-mic{display:grid!important;place-items:center;width:44px!important;height:44px;min-width:44px!important;flex:0 0 44px!important;padding:9px!important;border:1px solid #b5dacc!important;border-radius:12px;background:#f0faf5!important;color:#087f60!important;cursor:pointer}
.chat-dictation-mic svg{width:23px;height:23px}.chat-dictation-mic:disabled{opacity:.55;cursor:not-allowed}
html body #pro-conversas .v105-compose .chat-dictation-mic[data-locked="true"],html body.fx260-pro-shell.fx260-pro-shell #pro-conversas .v105-compose .chat-dictation-mic[data-locked="true"],html body .chat-dictation-mic[data-locked="true"]{display:inline-flex!important;align-items:center;justify-content:center;gap:6px;width:auto!important;min-width:94px!important;flex:0 0 auto!important;white-space:nowrap;font-size:11px;font-weight:750}
html body #pro-conversas .chat-dictation-status,html body.fx260-pro-shell.fx260-pro-shell #pro-conversas .v105-compose .chat-dictation-status{flex:0 0 100%;box-sizing:border-box;display:flex!important;align-items:center;flex-wrap:wrap;gap:8px;padding:10px 12px;border:1px solid #cce5db;border-radius:12px;background:#f1faf6;color:#175545;font-size:12px;line-height:1.5;overflow-wrap:anywhere}
.chat-dictation-status>span{flex:1 1 140px}.chat-dictation-status time{font-variant-numeric:tabular-nums;white-space:nowrap}
html body #pro-conversas .chat-dictation-status button{font:inherit;padding:8px 12px;min-height:44px;border:1px solid #b5dacc;border-radius:10px;background:#fff;color:#087f60;cursor:pointer}
html body #pro-conversas .chat-dictation-status [data-dictation-action="finish"]{background:#087f60;color:#fff}
.chat-dictation-mic:focus-visible,.chat-dictation-status button:focus-visible{outline:2px solid #087f60;outline-offset:2px}
html body #pro-conversas .v105-compose textarea#v106ProMsg,html body.fx260-pro-shell.fx260-pro-shell #pro-conversas .v105-compose textarea#v106ProMsg{display:block!important;flex:1 1 100%!important;width:100%!important;min-width:0!important;min-height:48px!important;max-height:180px!important;box-sizing:border-box;resize:none;padding:12px 14px!important;border:1px solid #d4e0e7;border-radius:14px;background:#fff;color:#18394a;font:inherit;font-size:16px!important;line-height:1.5!important;white-space:pre-wrap;overflow-wrap:anywhere}
html body #pro-conversas .v105-compose:has(.chat-dictation-mic) [data-v106-send]{margin-left:auto}
html body #pro-conversas .chat-dictation-status[data-phase="ready"]{order:-1;background:#f3f7ff!important;border-color:#dce6fa!important;color:#173b67!important;gap:6px}
.chat-dictation-status[data-phase="ready"]>strong,.chat-dictation-status[data-phase="ready"]>span,.chat-dictation-status details{flex:0 0 100%!important;min-width:0}
.chat-dictation-status details{overflow:visible;max-height:none}.chat-dictation-status summary{cursor:pointer;color:#1766e8;font-weight:600;padding:6px 0}.chat-dictation-status details p{white-space:pre-wrap;margin:6px 0;overflow-wrap:anywhere}
html body #pro-conversas .chat-dictation-status:is([data-phase="recording"],[data-phase="processing"],[data-phase="permission"]){justify-content:center;text-align:center;padding:16px 12px;background:#f5fbf8}
.chat-dictation-status:is([data-phase="recording"],[data-phase="processing"],[data-phase="permission"])>span,.chat-dictation-status small{flex:0 0 100%!important}.chat-dictation-status small{color:#607b78;line-height:1.5}
html body #pro-conversas .chat-dictation-visual{display:grid!important;place-items:center;width:52px;height:52px;flex:0 0 52px;border-radius:50%;background:#d9f5e9;color:#087f60}.chat-dictation-visual svg{width:28px;height:28px}
html body #pro-conversas .chat-dictation-visual .chat-dictation-spinner{display:block!important;width:22px;height:22px;border:3px solid #b5dacc;border-top-color:#087f60;border-radius:50%;animation:dictation-spin 1s linear infinite}
@keyframes dictation-spin{to{transform:rotate(360deg)}}
/* The proposal lives in the dialog top layer, outside the original chat shell. */
html body dialog.visit-modal-card [data-proposal-chat] .chat-dictation-mic{display:grid!important;place-items:center;width:44px!important;height:44px;min-width:44px;flex:0 0 44px;padding:9px!important;border:1px solid #b5dacc!important;border-radius:12px;background:#f0faf5!important;color:#087f60!important}
html body dialog.visit-modal-card [data-proposal-chat] .chat-dictation-status{display:flex!important;align-items:center;flex-wrap:wrap;gap:8px;margin-top:12px;padding:12px;border:1px solid #cce5db;border-radius:12px;background:#f1faf6;color:#175545;font-size:13px;line-height:1.5;overflow-wrap:anywhere}
html body dialog.visit-modal-card [data-proposal-chat] .chat-dictation-status button{display:inline-flex!important;align-items:center;min-height:44px;padding:8px 12px;border:1px solid #b5dacc;border-radius:10px;background:#fff;color:#087f60;font:inherit}
html body dialog.visit-modal-card [data-proposal-chat] .chat-dictation-status [data-dictation-action="finish"]{background:#087f60;color:#fff}
html body dialog.visit-modal-card [data-proposal-chat] .chat-dictation-status[data-phase="ready"]{background:#f3f7ff;color:#173b67;border-color:#dce6fa}
html body dialog.visit-modal-card [data-proposal-chat] .chat-dictation-visual{display:grid!important;place-items:center;width:52px;height:52px;border-radius:50%;background:#d9f5e9;color:#087f60}
html body dialog.visit-modal-card [data-proposal-chat] .chat-dictation-spinner{display:block!important;width:22px;height:22px;border:3px solid #b5dacc;border-top-color:#087f60;border-radius:50%;animation:dictation-spin 1s linear infinite}
html body dialog.visit-modal-card [data-proposal-chat] [data-dictation-quota]{display:block;margin-top:10px;color:#607b78}
@media(prefers-reduced-motion:reduce){.chat-dictation-spinner{animation:none}}
@media(max-width:767px){
 html body.fx260-pro-shell.fx260-pro-shell #pro-conversas .v105-compose:has(.chat-dictation-mic){position:static!important;flex-shrink:0!important}
 html body #pro-conversas .chat-dictation-status:is([data-phase="recording"],[data-phase="processing"],[data-phase="permission"]){order:-1}
 html body.fx260-pro-shell.fx260-pro-shell #pro-conversas.pro-ux-progressive[data-pro-ux-pane="chat"] .v105-conv-main:has(.chat-dictation-mic){height:auto!important;max-height:none!important;overflow:visible!important;touch-action:pan-y}
 html body.fx260-pro-shell.fx260-pro-shell #pro-conversas.pro-ux-progressive[data-pro-ux-pane="chat"] .v105-conv-main:has(.chat-dictation-mic) .v105-chat{min-height:80px!important;height:clamp(80px,calc(var(--pro-ux-viewport,100dvh) - 560px),240px)!important;max-height:240px!important;flex:0 0 auto!important;overscroll-behavior-y:auto!important}
 html body.fx260-pro-shell.fx260-pro-shell #pro-conversas .v105-compose:has(.chat-dictation-mic){overflow:visible!important;overflow-anchor:none;touch-action:pan-y}
 html body #pro-conversas .chat-dictation-status{touch-action:pan-y}
 html body #pro-conversas .v105-compose:has(.chat-dictation-mic) #v106ProMsg,html body.fx260-pro-shell.fx260-pro-shell #pro-conversas .v105-compose:has(.chat-dictation-mic) #v106ProMsg{flex:1 1 100%!important;width:100%!important;box-sizing:border-box}
 html body #pro-conversas .v105-compose:has(.chat-dictation-mic) [data-v106-send]{margin-left:auto}
 html body #pro-conversas .chat-dictation-status>span{flex-basis:calc(100% - 110px)}
}
