.pet-speech{margin-top:18px;padding:18px;border:1px solid #e7ddcd;border-radius:20px;background:#fffaf0;color:#55473d;text-align:left}
.pet-speech h3{margin:0 0 12px;font-size:1.05rem;color:#584833}
.pet-speech-form label{display:block;margin-bottom:7px;font-size:.85rem;font-weight:700}
.pet-speech-line{display:flex;gap:8px}
.pet-speech input{box-sizing:border-box;min-width:0;flex:1;width:100%;padding:11px 12px;border:1px solid #dbd0bc;border-radius:12px;background:#fff;color:#493d30;font:inherit;font-size:.9rem}
.pet-speech button{min-height:42px;border:1px solid #ded3bf;border-radius:12px;padding:9px 13px;background:#fff;color:#584833;font:inherit;font-size:.84rem;font-weight:700;cursor:pointer;transition:background .15s,transform .15s}
.pet-speech button:hover:not(:disabled){background:#f5ecd8;transform:translateY(-1px)}
.pet-speech button:disabled{opacity:.5;cursor:not-allowed}
.pet-speech input:focus-visible,.pet-speech button:focus-visible{outline:3px solid #cf8a64;outline-offset:3px}
.pet-speech [type=submit]{background:#dfedca;border-color:#b4ce93;color:#36542b}
.pet-speech-shortcuts{display:flex;flex-wrap:wrap;gap:6px;margin:9px 0 13px}
.pet-speech-shortcuts button{font-size:.76rem;padding:7px 9px;min-height:36px;background:transparent}
.pet-speech-actions{display:flex;gap:8px;flex-wrap:wrap;align-items:center}
.pet-speech .pet-record{background:#eadffa;border-color:#d6c0ef;color:#61407f}
.pet-speech[data-voice-state=recording] .pet-record,.pet-speech[data-voice-state=requesting] .pet-record{background:#f9dedb;border-color:#e2aaa5;color:#813d37}
.pet-speech-status{min-height:2.6em;margin:10px 0 5px;font-size:.81rem;line-height:1.4;color:#64513d}
.pet-speech-note{margin:0;font-size:.69rem;line-height:1.5;color:#807362}
.pet-speech [hidden]{display:none!important}
@media(max-width:420px){.pet-speech{padding:14px}.pet-speech-line{gap:6px}.pet-speech button{padding:9px 11px}.pet-speech-shortcuts{gap:5px}}
@media(prefers-reduced-motion:reduce){.pet-speech button{transition:none}.pet-speech button:hover:not(:disabled){transform:none}}
