.account-profile-link { overflow: hidden; text-decoration: none; flex-shrink: 0; }
.account-profile-link img, .profile-avatar { display: block; border-radius: 50%; object-fit: cover; }
.account-profile-link:focus-visible { outline: 2px solid #203b59; outline-offset: 3px; }
.profile-grid { display: grid; grid-template-columns: repeat(auto-fit, minmax(min(100%, 22rem), 1fr)); gap: 1.25rem; align-items: start; }
.profile-grid .teacher-panel { margin-top: 0; }
.avatar-editor { display: grid; gap: .8rem; }
.avatar-reset { display: flex; gap: .5rem; align-items: center; }
.avatar-reset input { width: auto; }
.team-settings { max-width: 34rem; }
.team-request { display: flex; flex-wrap: wrap; align-items: center; gap: .6rem; margin: .65rem 0; }
.team-directory { display: grid; grid-template-columns: repeat(auto-fill, minmax(12rem, 1fr)); gap: 1rem; }
.team-card { padding: 1rem; border: 1px solid var(--line); border-radius: .5rem; background: white; overflow-wrap: anywhere; }
.team-card h4 { margin: .6rem 0 .3rem; }
.team-card p { margin: .3rem 0 .6rem; }
.parent-credentials { padding: 1rem; border: 2px solid var(--navy); background: var(--teal-light); overflow-wrap: anywhere; }
.profile-grid table { font-variant-numeric: tabular-nums; }
