/* SBUSH AI multimodal composer: image questions, voice input and read-aloud. */
.ai-composer-tools { display:flex; flex-direction:column; gap:8px; }
.ai-composer-actions,.ai-float-input-tools { display:flex; align-items:center; gap:8px; flex-wrap:wrap; }
.ai-attach-btn,.ai-voice-btn { display:inline-flex; align-items:center; justify-content:center; gap:7px; min-height:38px; padding:8px 12px; border:1px solid rgba(125,151,203,.24); border-radius:11px; color:#c9d8f2; background:rgba(86,111,165,.10); font-family:inherit; font-size:11px; font-weight:700; line-height:1.2; cursor:pointer; transition:background .16s ease,border-color .16s ease,transform .16s ease; }
.ai-attach-btn:hover,.ai-voice-btn:hover { border-color:rgba(81,210,231,.55); background:rgba(73,188,211,.13); transform:translateY(-1px); }
.ai-attach-btn:disabled { opacity:.55; cursor:wait; }
.ai-voice-btn.is-listening { color:#fff; border-color:rgba(255,105,126,.8); background:rgba(190,54,83,.24); box-shadow:0 0 0 3px rgba(230,74,105,.10); animation:aiMicPulse 1.1s ease-in-out infinite; }
@keyframes aiMicPulse { 50% { box-shadow:0 0 0 6px rgba(230,74,105,.04); } }
.ai-speech-status { min-height:16px; color:#83d9e7; font-size:10px; }
.ai-image-preview { display:flex; align-items:center; gap:10px; width:max-content; max-width:100%; padding:7px 9px; border:1px solid rgba(93,207,222,.26); border-radius:12px; color:#b9dce8; background:rgba(54,140,160,.10); font-size:10px; }
.ai-image-preview img { display:block; width:64px; height:64px; object-fit:cover; border-radius:8px; background:#101b30; }
.ai-image-preview button { width:28px; height:28px; border:1px solid rgba(150,169,205,.20); border-radius:8px; color:inherit; background:rgba(255,255,255,.06); font-size:18px; cursor:pointer; }
.ai-input-note { display:block; margin-top:7px; color:#7183a2; font-size:9px; line-height:1.5; }
.ai-message-image { display:block; width:auto; max-width:min(260px,100%); max-height:220px; object-fit:contain; margin-top:8px; border:1px solid rgba(140,160,200,.22); border-radius:10px; background:rgba(0,0,0,.10); }
.ai-read-aloud { display:inline-flex; align-items:center; gap:5px; min-height:30px; margin-top:9px; padding:5px 9px; border:1px solid rgba(95,195,216,.25); border-radius:9px; color:#9de3ee; background:rgba(49,157,181,.10); font-family:inherit; font-size:10px; font-weight:700; line-height:1; cursor:pointer; }
.ai-read-aloud:hover,.ai-read-aloud.is-speaking { border-color:rgba(100,219,225,.65); color:#e1fcff; background:rgba(49,157,181,.22); }
.ai-float-input-tools { padding:7px 12px 0; }
.ai-attach-btn-compact,.ai-voice-btn-compact { min-height:31px; width:34px; padding:5px; border-radius:9px; font-size:14px; }
.ai-float-form { padding-top:7px; }
.ai-float-message .ai-read-aloud { min-height:27px; margin-top:7px; font-size:9px; }
body:not(.dark) .ai-attach-btn,body:not(.dark) .ai-voice-btn { color:#405574; border-color:rgba(65,86,133,.18); background:rgba(75,111,173,.06); }
body:not(.dark) .ai-voice-btn.is-listening { color:#8b263e; border-color:rgba(190,54,83,.6); background:rgba(190,54,83,.10); }
body:not(.dark) .ai-speech-status { color:#167e91; }
body:not(.dark) .ai-image-preview { color:#36576a; border-color:rgba(45,151,174,.22); background:rgba(45,151,174,.07); }
body:not(.dark) .ai-read-aloud { color:#176d80; border-color:rgba(45,151,174,.22); background:rgba(45,151,174,.07); }
body:not(.dark) .ai-read-aloud:hover,body:not(.dark) .ai-read-aloud.is-speaking { color:#0e5262; background:rgba(45,151,174,.14); }
@media(max-width:600px) {
  .ai-composer-actions { gap:7px; }
  .ai-attach-btn,.ai-voice-btn { min-height:42px; padding-inline:12px; font-size:12px; }
  .ai-image-preview img { width:58px; height:58px; }
  .ai-message-image { max-width:100%; max-height:190px; }
  .ai-float-input-tools { padding-inline:10px; }
  .ai-float-form { grid-template-columns:minmax(0,1fr) 44px; }
}
@media(prefers-reduced-motion:reduce) { .ai-voice-btn.is-listening { animation:none; } }
