.professorPage{padding-bottom:28px}
.professorHeader{display:flex;align-items:flex-start;justify-content:space-between;gap:18px}
.professorIntro{max-width:720px}
.professorIntro h2{margin:.2rem 0 .45rem}
.professorIntro p{margin:0;color:var(--muted);line-height:1.55}
.professorHeaderActions{display:flex;align-items:center;justify-content:flex-end;gap:10px;flex-wrap:wrap}
.professorNewConversation{width:auto;min-height:44px}
.professorWorkspace{width:min(100%,980px);margin:18px auto 0;display:grid;gap:14px}
.professorConversation{display:flex;flex-direction:column;gap:12px;min-height:260px;padding:18px;border:1px solid var(--line);border-radius:18px;background:#17120f;overflow:visible}
.professorTurn{max-width:84%;padding:12px 14px;border-radius:16px;border:1px solid var(--line);background:#211a15}
.professorTurn.user{align-self:flex-end;background:#302116;border-color:#704721}
.professorTurn.assistant{align-self:flex-start}
.professorTurn strong{display:block;margin-bottom:5px;color:#efbd7e;font-size:12px}
.professorTurn p{margin:0;white-space:pre-wrap;line-height:1.58;color:inherit}
.professorEmpty{margin:auto;color:var(--muted);font-size:14px;line-height:1.55;text-align:center;max-width:520px}
.professorComposer{position:sticky;bottom:10px;z-index:3;padding:14px;border:1px solid var(--line);border-radius:18px;background:#0d1d2b;box-shadow:0 14px 34px rgba(0,0,0,.26)}
.professorComposer[aria-busy="true"]{opacity:.88}
.professorModeBar{display:flex;gap:8px;overflow-x:auto;padding-bottom:10px;scrollbar-width:thin}
.professorModeButton{width:auto;min-width:max-content;min-height:42px;padding:9px 14px;border:1px solid var(--line);border-radius:999px;background:transparent;color:inherit;font-weight:700;cursor:pointer}
.professorModeButton.active,.professorModeButton[aria-pressed="true"]{border-color:#9b6a2d;background:#302116;color:#f2c181}
.professorInputLabel{display:block;margin:0 0 6px;font-size:12px;font-weight:800;color:#efbd7e}
.professorInputRow{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:10px;align-items:end}
.professorInputRow textarea{width:100%;min-height:58px;max-height:160px;resize:none;overflow:auto;border-radius:14px}
.professorSend{min-width:96px;min-height:48px}
.professorComposerMeta{display:flex;justify-content:space-between;gap:10px;align-items:center;margin-top:7px;color:var(--muted);font-size:12px}
.professorLive{min-height:18px;margin-top:4px;color:var(--muted);font-size:12px}
.professorLive[data-state="success"]{color:#b9d8b7}
.professorLive[data-state="error"]{color:#f3b5aa}
.professorSourcesPanel,.professorHelp{border:1px solid var(--line);border-radius:14px;background:#15120f}
.professorSourcesPanel>summary,.professorHelp>summary{cursor:pointer;padding:12px 14px;font-weight:800;color:#efbd7e;min-height:44px;display:flex;align-items:center}
.professorSources{display:grid;gap:8px;padding:0 12px 12px}
.professorSource{display:grid;gap:5px;padding:10px 12px;border:1px solid var(--line);border-radius:12px;background:#1b1511}
.professorSource b{font-size:13px}
.professorSource small{color:var(--muted)}
.professorHelpBody{padding:0 14px 12px;color:var(--muted);font-size:13px}
.professorHelpBody p{margin:6px 0}
.professorMetricRow{padding:8px 10px;border-top:1px solid var(--line);font-size:12px;color:var(--muted)}
.statusPill[data-state="error"]{background:#4b211d;color:#f3b5aa}
.statusPill[data-state="locked"]{background:#34291f;color:#cfb89e}
.statusPill[data-state="ready"]{background:#2f281a;color:#efc17e}
@media(max-width:900px){
  .professorHeader{flex-direction:column}
  .professorHeaderActions{width:100%;justify-content:space-between}
  .professorTurn{max-width:92%}
}
@media(max-width:640px){
  .professorWorkspace{gap:10px}
  .professorConversation{min-height:220px;padding:12px;border-radius:14px}
  .professorTurn{max-width:97%;padding:11px 12px}
  .professorComposer{bottom:6px;padding:10px;border-radius:14px}
  .professorModeBar{margin:0 -2px;padding-bottom:8px}
  .professorModeButton{min-height:44px;padding:9px 13px}
  .professorInputRow{grid-template-columns:minmax(0,1fr) auto;gap:8px}
  .professorSend{min-width:76px;padding-left:12px;padding-right:12px}
  .professorHeaderActions{align-items:stretch}
}
@media(max-width:380px){
  .professorHeaderActions{flex-direction:column}
  .professorInputRow{grid-template-columns:1fr}
  .professorSend{width:100%}
  .professorTurn{max-width:100%}
}
@media(prefers-reduced-motion:reduce){
  .professorComposer,.professorModeButton{scroll-behavior:auto;transition:none}
}
