.sp-name-fields { display:grid; grid-template-columns:minmax(100px,.7fr) repeat(2,minmax(0,1fr)); gap:12px; margin-top:12px; }
.sp-name-fields > label { display:grid; align-content:start; gap:6px; min-width:0; }
.sp-name-fields :is(input,select) { width:100%; min-width:0; }
.sp-name-hint { display:block; margin-top:8px; color:var(--sp-text-muted,#607089); }
.sp-user-name[aria-label] { display:inline-flex; flex-wrap:nowrap; align-items:baseline; gap:.3em; min-width:0; max-width:100%; overflow:hidden; white-space:nowrap; text-align:start; }
.sp-user-name > span { min-width:0; max-width:100%; overflow:hidden; white-space:nowrap; text-overflow:ellipsis; }
.sp-user-name > span:first-child:not(:last-child) { flex:none; font-variant-numeric:tabular-nums; }
.student-info { min-width:0; flex:1; }
@media (max-width:600px) { .sp-name-fields { grid-template-columns:minmax(0,1fr); } }
