.chat-heading{display:flex;align-items:center;justify-content:space-between;gap:14px}.chat-heading h2{margin:0}.chat-heading .text-button{width:auto;font-size:.8rem;white-space:nowrap}.chat-transcript{max-height:48vh;min-height:150px;overflow-y:auto;overscroll-behavior:contain;scrollbar-gutter:stable;padding:4px}.chat-transcript .bubble p{white-space:pre-wrap}.chat-status{min-height:1.4em;margin:0;padding:0 8px;color:var(--blue)}.chat-status:empty{display:none}.chat-error{border:1px solid var(--orange);background:#fff8ee}.chat-sources{font-size:.82rem;margin-top:12px}.chat-controls{display:flex;gap:12px;align-items:center}.chat-controls select{min-width:0;flex:1}.tutor-panel .chat-controls .button{width:auto;flex-shrink:0}.tutor-panel[aria-busy=true] .chat-status:before{content:"";display:inline-block;width:8px;height:8px;margin-right:8px;border-radius:50%;background:currentColor;animation:chat-pulse 1s ease-in-out infinite}.chat-composer p{margin:0}.chat-exercise{margin-top:16px}.embedded .chat-heading{align-items:flex-start}.embedded .chat-heading h2{font-size:1.1rem}.embedded .chat-controls{flex-wrap:wrap}.embedded .chat-controls select{width:100%}.embedded .chat-controls .button{width:100%}.embedded .chat-transcript{max-height:40vh}.chat-error .text-button{margin-top:8px}.tutor-panel button:disabled,.tutor-panel input:disabled{opacity:.65;cursor:wait}@keyframes chat-pulse{50%{opacity:.3}}@media(prefers-reduced-motion:reduce){.tutor-panel[aria-busy=true] .chat-status:before{animation:none}}@media(max-width:720px){.chat-heading{flex-wrap:wrap}.chat-transcript,.embedded .chat-transcript{max-height:45dvh}.chat-controls{flex-wrap:wrap}.chat-controls select{width:100%}}
.tutor-panel.embedded .chat-controls{flex-wrap:nowrap}.tutor-panel.embedded .chat-controls select{width:auto}.tutor-panel.embedded .chat-controls .button{width:auto}@media(max-width:720px){.tutor-panel.embedded .chat-transcript{max-height:32dvh;min-height:100px}.tutor-panel.embedded .chat-composer{padding:14px}.tutor-panel.embedded .tutor-notice{padding:14px}}
