.ait-shell { max-width:1760px; margin:0 auto; padding:12px 16px 24px; }
header.wrap { max-width:1760px; margin:0 auto; padding:16px 16px 0; }
.ait-layout {
  display:grid;
  grid-template-columns: 200px minmax(420px, 1fr) minmax(220px, 280px);
  grid-template-rows: auto auto;
  gap:12px;
  max-width:1760px;
  margin:0 auto;
  padding:12px 16px 24px;
}
.ait-board-wrap {
  grid-column: 1 / -1;
  min-height: 500px;
}
.ait-board-wrap iframe {
  width:100%;
  min-height:480px;
  height:min(62vh, 720px);
  border:0;
  border-radius:10px;
  background:#0b1220;
  display:block;
}
.ait-board-wrap[hidden] { display:none; }
.ait-board-toolbar { display:flex; flex-wrap:wrap; gap:8px; margin-bottom:8px; }
.ait-board-activity { font-size:.9rem; color:#067647; min-height:1.2em; }
.ait-tabs { display:none; }
@media (max-width: 1100px) {
  .ait-layout { grid-template-columns: 1fr; }
  .ait-tabs { display:flex; gap:8px; margin:0 16px; }
  .ait-avatar-wrap.collapsed, .ait-meta.collapsed { display:none; }
}
@media (max-width: 960px) {
  .ait-layout { grid-template-columns: 1fr; }
}
.ait-card { background:#fff; border:1px solid #dbe3ef; border-radius:12px; padding:14px; }
.ait-avatar-wrap { display:flex; flex-direction:column; align-items:center; gap:10px; }
#tutorAvatarCanvas { width:180px; height:180px; border-radius:50%; background:#0f2744; display:block; max-width:100%; }
@media (max-width: 640px) {
  #tutorAvatarCanvas { width:140px; height:140px; }
  .ait-controls { position: sticky; bottom: 0; background: #fff; padding-bottom: 8px; z-index: 2; }
}
@media (prefers-reduced-motion: reduce) {
  #tutorAvatarCanvas { animation: none !important; }
}
@media (prefers-contrast: more) {
  .ait-avatar-wrap { outline: 2px solid #0f2744; }
  #tutorStateLabel { font-size: 1rem; }
}
#avatarRenderMode { font-size: 0.85rem; max-width: 100%; }
.ait-state { font-weight:700; letter-spacing:.04em; font-size:.85rem; }
.ait-chat { height:380px; overflow:auto; display:flex; flex-direction:column; gap:8px; padding:8px; background:#f8fafc; border-radius:8px; }
.ait-msg { max-width:92%; padding:8px 10px; border-radius:10px; font-size:.95rem; }
.ait-msg.student { align-self:flex-end; background:#dbeafe; }
.ait-msg.tutor { align-self:flex-start; background:#ecfdf3; }
.ait-msg.system { align-self:center; background:#f1f5f9; font-size:.85rem; }
.ait-msg .ts { display:block; font-size:.7rem; color:#64748b; margin-top:4px; }
.ait-controls { display:flex; flex-wrap:wrap; gap:8px; margin-top:10px; }
.ait-controls input[type="text"] { flex:1; min-width:160px; padding:8px; }
.ait-meta dt { font-size:.75rem; color:#64748b; margin-top:8px; }
.ait-meta dd { margin:0; font-weight:600; }
.ait-banner { padding:8px 10px; border-radius:8px; margin-bottom:10px; background:#fffaeb; color:#b54708; font-size:.9rem; }
.ait-banner.ok { background:#ecfdf3; color:#067647; }
.ait-banner.err { background:#fef3f2; color:#b42318; }
.ait-visual { min-height:72px; background:#0b1220; border-radius:10px; color:#94a3b8; display:flex; align-items:center; justify-content:center; padding:12px; text-align:center; margin-bottom:10px; }
#remoteAudio { display:none; }
.muted { color:#64748b; }
