/* Keep the scene quiet; reveal voice controls on hover or keyboard focus. */
#floating-companion .companion-voice{position:absolute;right:-8px;bottom:1px;z-index:4;display:grid;place-items:center;width:30px;height:30px;padding:6px;border:1px solid #d6e3df;border-radius:4px;background:#fffffff2;color:#74837f;box-shadow:0 1px 4px #203a3020;cursor:pointer;touch-action:manipulation}
#floating-companion .companion-voice svg{width:17px;height:17px;pointer-events:none}
#floating-companion .companion-voice[aria-pressed=true]{color:#267458;border-color:#abd0bd;background:#effaf3}
#floating-companion .companion-voice:hover{border-color:#6aab89}
#floating-companion .companion-voice:focus-visible{outline:2px solid #478bdb;outline-offset:3px}
#floating-companion.is-speaking .companion-caption i{box-shadow:0 0 0 3px #62bba730}
#floating-companion.is-small .companion-voice{right:-12px;bottom:-10px}
.dark #floating-companion .companion-voice{background:#243931;color:#c6d8cf;border-color:#536c60}
.dark #floating-companion .companion-voice[aria-pressed=true]{background:#244f3d;color:#aff0c7}
@media(pointer:coarse){#floating-companion .companion-voice{width:36px;height:36px;right:-12px;bottom:-3px}}
#floating-companion .companion-voice-settings{position:absolute;right:-8px;bottom:34px;z-index:4;display:grid;place-items:center;width:30px;height:25px;padding:5px;border:1px solid #d6e3df;border-radius:4px;background:#fffffff2;color:#74837f;cursor:pointer;touch-action:manipulation}
#floating-companion .companion-voice-settings svg{width:15px;height:15px;pointer-events:none}
#floating-companion :is(.companion-voice,.companion-voice-settings){opacity:0;visibility:hidden;pointer-events:none;transition:opacity .15s}
#floating-companion:is(:hover,:focus-within) :is(.companion-voice,.companion-voice-settings){opacity:1;visibility:visible;pointer-events:auto}
#floating-companion.is-dragging :is(.companion-voice,.companion-voice-settings){opacity:0;visibility:hidden;pointer-events:none}
#floating-companion .companion-voice-settings:focus-visible{outline:2px solid #478bdb;outline-offset:3px}
#floating-companion .companion-voice-panel{position:absolute;right:-8px;bottom:64px;z-index:6;width:220px;padding:10px;border:1px solid #d6e3df;border-radius:4px;background:#fff;color:#354b42;box-shadow:0 3px 12px #203a3020;font-size:12px;text-align:left;line-height:1.5}
#floating-companion .companion-voice-panel label{display:block;margin-bottom:6px;font-weight:600}
#floating-companion .companion-voice-row{display:flex;gap:6px}
#floating-companion .companion-voice-row select{flex:1;min-width:0;height:30px;padding:2px 5px;border:1px solid #cedcd4;border-radius:3px;background:#fff;color:inherit;font:inherit}
#floating-companion .companion-voice-preview{padding:3px 9px;border:1px solid #abd0bd;border-radius:3px;background:#effaf3;color:#267458;font:inherit;cursor:pointer}
#floating-companion .companion-voice-status{display:block;margin-top:6px;font-size:11px;color:#73847c}
#floating-companion .companion-voice-settings[hidden],#floating-companion .companion-voice-panel[hidden]{display:none!important}
#floating-companion.near-left .companion-voice-panel{left:0;right:auto}
#floating-companion.near-top .companion-voice-panel{top:64px;bottom:auto}
#floating-companion.is-small .companion-voice-settings{right:-12px;bottom:24px}
.dark #floating-companion .companion-voice-settings,.dark #floating-companion .companion-voice-panel{background:#243931;color:#c6d8cf;border-color:#536c60}
.dark #floating-companion .companion-voice-row select{background:#243931;color:#c6d8cf;border-color:#536c60}
@media(pointer:coarse){#floating-companion .companion-voice-settings{width:36px;height:32px;right:-12px;bottom:36px}#floating-companion .companion-voice-panel{bottom:73px}}
#child-companion-voice{position:fixed;right:88px;bottom:16px;z-index:31;display:grid;place-items:center;width:34px;height:34px;padding:7px;border:1px solid #d6e3df;border-radius:4px;background:#fffffff2;color:#74837f;cursor:pointer;touch-action:manipulation}
#child-companion-voice[hidden]{display:none!important}
#child-companion-voice svg{width:18px;height:18px;pointer-events:none}
#child-companion-voice[aria-pressed=true]{color:#267458;border-color:#abd0bd;background:#effaf3}
#child-companion-voice:focus-visible{outline:2px solid #478bdb;outline-offset:3px}
.dark #child-companion-voice{background:#243931;color:#c6d8cf;border-color:#536c60}
