#teacher-profile-panel { max-width: 66rem; }
.teacher-profile-section { padding-block: 1.5rem; }
.teacher-profile-section + .teacher-profile-section { margin-top: 1rem; border-top: 1px solid var(--border); }
.teacher-profile-section-heading { display: flex; align-items: center; flex-wrap: wrap; gap: .75rem; }
.teacher-profile-section h3 { margin: 0; font-size: 1.1rem; }
.teacher-profile-privacy { color: var(--muted); font-size: .8rem; }
.teacher-profile-description { max-width: 48rem; color: var(--muted); margin-block: .5rem 1.25rem; }
.teacher-profile-facts, .teacher-profile-fields { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 1.5rem 2rem; padding: 0; margin: 1.5rem 0; border: 0; min-width: 0; }
.teacher-profile-facts dt { color: var(--muted); font-size: .85rem; }
.teacher-profile-facts dd { margin: .35rem 0 0; overflow-wrap: anywhere; white-space: pre-wrap; }
.teacher-profile-unset { color: var(--quiet); }
.teacher-profile-wide { grid-column: 1 / -1; }
.teacher-profile-field { display: grid; gap: .5rem; min-width: 0; }
.teacher-profile-field input, .teacher-profile-field textarea { width: 100%; min-width: 0; margin: 0; }
.teacher-profile-field textarea { resize: vertical; }
.teacher-profile-actions { display: flex; align-items: center; flex-wrap: wrap; gap: .75rem; }
.teacher-profile-actions button { min-height: 2.75rem; }
.teacher-profile-dirty, .teacher-profile-status { color: var(--muted); font-size: .9rem; }
.teacher-profile-status:empty { display: none; }
.teacher-profile-ai-state { font-weight: 600; margin-bottom: .25rem; }
.teacher-profile-empty { color: var(--muted); padding-block: 1.5rem; }
@media (max-width: 40rem) {
  .teacher-profile-facts, .teacher-profile-fields { grid-template-columns: minmax(0, 1fr); gap: 1.25rem; }
  .teacher-profile-section { padding-block: 1rem; }
  .teacher-profile-actions { align-items: stretch; }
  .teacher-profile-dirty { flex-basis: 100%; }
}
