/* Student record forms and grade sheets: readable, reachable controls on phones. */
.student-record-page .main { min-width:0; }
.student-record-page :is(.card,fieldset,label,.actions) { min-width:0; }
.student-record-page :is(h1,h2,h3,p,legend,.status,.pill) { overflow-wrap:anywhere; }
.student-record-page :is(input,select,textarea) { max-width:100%; min-width:0; font-size:1rem; }
.student-record-page .main { line-height:1.5; }
.student-record-page #details { display:grid; gap:18px; margin-top:18px; }
.student-record-page #monthlyRoster { margin-top:24px; }
.student-record-page #rosterList>p { padding:16px 0; border-bottom:1px solid #dedede; }
.student-record-page #actionStatus { margin-bottom:0; }
.student-record-page #actionStatus:empty { display:none; }
@media (max-width:680px) {
  .student-record-page .main { padding:24px 14px max(32px,env(safe-area-inset-bottom)); }
  .student-record-page .main .card { padding:16px; }
  .student-record-page .main .grid { grid-template-columns:minmax(0,1fr); }
  .student-record-page .main .actions { display:grid; grid-template-columns:minmax(0,1fr); width:100%; gap:12px; }
  .student-record-page .main .button { min-height:48px; max-width:100%; white-space:normal; line-height:1.4; font-size:1rem; }
  .student-record-page :is(select,input:not([type=radio]):not([type=checkbox])) { min-height:48px; }
  .student-record-page .grade-choices { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:10px; }
  .student-record-page .grade-choices label:last-child { grid-column:1/-1; }
  .student-record-page .grade-choices label { min-height:48px; justify-content:center; }
  .student-record-page .lesson-outcomes { display:grid; gap:10px; padding:12px; }
  .student-record-page .lesson-outcomes label { min-height:48px; margin:0; border:1px solid #bbc6d1; border-radius:8px; padding:10px; }
  .student-record-page .lesson-outcomes label:has(input:checked) { background:#eaf2fa; outline:2px solid #153b61; font-weight:700; }
  .student-record-page label:has(>input[type=checkbox]) { display:flex; align-items:flex-start; gap:12px; padding:12px 0; line-height:1.6; }
  .student-record-page input[type=checkbox] { width:22px; height:22px; flex:0 0 22px; margin:2px 0; }
  .student-record-page .main summary { min-height:44px; padding:10px 0; cursor:pointer; }
  .student-record-page .main :is(input,select,textarea,button) { scroll-margin-block:24px; }
}

/* Compact, keyboard-accessible grade and location disclosures. */
#pendingSheets summary,.profile-location>summary{min-height:48px;padding:12px 4px;cursor:pointer;overflow-wrap:anywhere}
#pendingSheets summary strong,.profile-location>summary strong{margin-right:12px}
#pendingSheets summary .pill,.profile-location>summary .pill{display:inline-block;margin:4px}
.grade-overview-body{padding-top:12px}.grade-instructor{border-top:1px solid #e1e5ea}.grade-instructor-body{padding:8px 0 18px}.profile-location+.profile-location{margin-top:12px}
@media(max-width:600px){#pendingSheets .pending-sheet{flex-wrap:wrap;gap:10px}.profile-location>.accordion-detail{padding:10px}.profile-location .program-student{min-width:0}}
