#voiceControlDock,#voiceControlHelp,.voiceSettings{font-family:inherit;color:#eff9ed;box-sizing:border-box;font-size:calc(14px * var(--site-font-scale,1));line-height:1.5}
#voiceControlDock *,#voiceControlHelp *,.voiceSettings *{box-sizing:border-box}
#voiceControlDock[hidden],#voiceControlHelp[hidden]{display:none!important}
#voiceControlDock{position:fixed;bottom:max(12px,env(safe-area-inset-bottom));left:12px;z-index:10050;width:min(380px,calc(100vw - 24px));padding:12px 14px;background:#10281af5;border:1px solid #92c75380;border-radius:16px;box-shadow:0 8px 32px #0006}
#voiceControlDock strong{display:flex;gap:8px;align-items:center;font-size:inherit}
#voiceControlDock strong:before{content:'';width:9px;height:9px;border-radius:50%;background:#a3b39c;flex-shrink:0}
#voiceControlDock[data-state="listening"] strong:before{background:#b6ed65;box-shadow:0 0 0 4px #b6ed6520}
#voiceControlDock[data-state="waiting"] strong:before{background:#ebc968;box-shadow:0 0 0 4px #ebc96820}
#voiceControlStatus{margin:6px 0;overflow-wrap:anywhere;max-height:5em;overflow:auto}
.voiceButtons{display:flex;gap:8px;flex-wrap:wrap}
#voiceControlDock button,#voiceControlHelp button,.voiceSettings button,.voiceSettings select{font:inherit;min-height:40px;white-space:normal;border:1px solid #83b05b80;border-radius:10px;background:#203a29;color:#f4fff0;padding:8px 12px;cursor:pointer}
.voiceSettings button:disabled{opacity:.55;cursor:not-allowed}
.voiceSettings{border:1px solid #78be2035;border-radius:16px;padding:18px;margin:18px 0}
.voiceSettings h4{margin:0 0 8px;font-size:calc(17px * var(--site-font-scale,1))}
.voiceSettings p{color:#bdceb8;margin:8px 0;font-size:calc(13px * var(--site-font-scale,1))}
.voiceSettings label{display:flex;align-items:center;gap:10px;margin:12px 0;cursor:pointer}
.voiceSettings input[type=checkbox]{width:20px;height:20px;flex-shrink:0;accent-color:#9ad643}
.voiceSettings select{width:100%;max-width:100%;margin-top:6px}
#voiceControlHelp{position:fixed;inset:5dvh 12px auto auto;z-index:10060;width:min(470px,calc(100vw - 24px));max-height:70dvh;overflow:auto;overscroll-behavior:contain;background:#10281afa;border:1px solid #92c75380;border-radius:18px;padding:20px;box-shadow:0 8px 32px #0008}
#voiceControlHelp h3{margin:0 0 12px;color:inherit;font-size:calc(20px * var(--site-font-scale,1))}
#voiceControlHelp li{margin:8px 0;overflow-wrap:anywhere}
#voiceControlHelp ol{padding-left:25px}
#voiceControlHelp [data-voice-close]{float:right;margin:0 0 8px 12px}
#voiceControlHelp .voiceOption{display:block;text-align:left;width:100%}
#voiceControlHelp .voiceOption b{color:#c4f08b;margin-right:8px}
[data-voice-focused]{outline:3px solid #b6ed65!important;outline-offset:3px}
#voiceControlDock button:focus-visible,#voiceControlHelp button:focus-visible,.voiceSettings :focus-visible{outline:3px solid #c4f08b;outline-offset:3px}
@media(max-width:600px){#voiceControlDock{font-size:13px;padding:9px 12px}#voiceControlDock button{padding:6px 9px;min-height:36px}#voiceControlHelp{max-height:60dvh}.voiceSettings{padding:14px}}
#leroyVoiceChat{position:fixed;right:16px;bottom:max(16px,env(safe-area-inset-bottom));z-index:10055;width:min(430px,calc(100vw - 32px));max-height:82dvh;overflow:auto;box-sizing:border-box;padding:20px;border:1px solid #9dc87580;border-radius:20px;background:#10271bf7;color:#eff9ed;box-shadow:0 12px 50px #0007;font:calc(15px * var(--site-font-scale,1))/1.5 system-ui,sans-serif;overscroll-behavior:contain}
#leroyVoiceChat[hidden]{display:none!important}
#leroyVoiceChat *{box-sizing:border-box}
#leroyVoiceChat header{display:flex;align-items:center;justify-content:space-between;gap:12px;position:static;background:none;padding:0;margin:0}
#leroyVoiceChat header strong{font-size:1.35em;color:#c4ef91}
#leroyVoiceChat .voiceChatNote{color:#c1cfbb;font-size:.83em;margin:12px 0}
#leroyVoiceChat button,#leroyVoiceChat a{font:inherit;background:#254931;color:#f2ffe9;border:1px solid #8fb96c70;border-radius:10px;padding:8px 12px;cursor:pointer;min-height:40px;text-decoration:none}
#leroyVoiceChat button:disabled{opacity:.5;cursor:wait}
#leroyVoiceChat label{display:block;margin-top:12px}
#leroyVoiceChat textarea{display:block;width:100%;resize:vertical;max-height:180px;min-height:72px;margin:6px 0;padding:12px;background:#081b10;color:#f2ffe9;border:1px solid #729c52;border-radius:12px;font:inherit}
#leroyVoiceChat .voiceChatMessages{max-height:30dvh;overflow:auto;overscroll-behavior:contain}
#leroyVoiceChat .voiceChatBubble{white-space:pre-wrap;overflow-wrap:anywhere;padding:12px;border-radius:12px;background:#263d2d;margin:10px 0}
#leroyVoiceChat .voiceChatBubble.user{margin-left:20px;background:#416322}
#leroyVoiceChat .voiceChatBubble.error{border:1px solid #e0b278}
#leroyVoiceChat [data-state]{font-size:.85em;color:#ceecb2}
#leroyVoiceChat :focus-visible{outline:3px solid #c4ef91;outline-offset:3px}
@media(max-width:700px){#leroyVoiceChat{right:12px;bottom:165px;width:calc(100vw - 24px);max-height:calc(100dvh - 185px);padding:14px}#leroyVoiceChat .voiceChatNote{font-size:12px}#leroyVoiceChat .voiceChatMessages{max-height:24dvh}}
/* A single, accessible launcher keeps the assistant available without covering the page. */
#voiceControlDock [data-voice-expand]{display:none}
#voiceControlDock [data-voice-hide]{position:absolute;top:8px;right:8px;min-height:32px;padding:4px 9px;font-size:12px}
#voiceControlDock>strong{padding-right:80px;min-height:32px}
#voiceControlDock[data-collapsed="true"]{width:52px;height:52px;padding:0;border-radius:50%;overflow:hidden}
#voiceControlDock[data-collapsed="true"]>*{display:none!important}
#voiceControlDock[data-collapsed="true"] [data-voice-expand]{display:grid!important;place-items:center;width:100%;height:100%;padding:12px;border:0;border-radius:50%;background:#173c24;color:#ccf9a2;min-height:0}
#voiceControlDock [data-voice-expand] svg{width:24px;height:24px}
#voiceControlDock[data-collapsed="true"][data-state="feedback"]{border-color:#cbf7a8}
#voiceControlDock[data-collapsed="true"][data-state="waiting"]{border-color:#ebc968}
