/* Scoped to guarded operational phone UX; no viewport-only global overrides. */
body.peMobileStudents12351:has(#mobileStudentSelector) #app.studentScreen > :is(.pe87Crumb,.pe87PageHead,.studentRosterTools,.studentRosterToolsSpacer,.classPdfLauncher,.studentWaitingGrid){display:none!important}
body.peMobileStudents12351:has(#mobileStudentSelector) #app.studentScreen{padding:12px!important;overflow:visible!important}
body.peMobileStudents12351:has(#mobileStudentSelector) #app.studentScreen #mobileStudentSelector{margin:0 0 14px!important;padding:14px!important;border:1px solid #d8e3ed!important;border-radius:18px!important;background:#fff!important}
body.peMobileStudents12351:has(#mobileStudentSelector) #mobileStudentSelector .mobileStudentSelectorTitle{margin:0 0 10px!important;display:flex!important;gap:8px!important;font-size:19px!important}
body.peMobileStudents12351:has(#mobileStudentSelector) #mobileStudentSelector [data-sf51-class]{width:100%!important;min-height:58px!important;display:grid!important;grid-template-columns:minmax(0,1fr) 24px!important;gap:3px 8px!important;align-items:center!important;text-align:left!important;border:1px solid #c8d8e6!important;background:#f8fbfe!important;border-radius:12px!important;padding:10px 12px!important;color:#203c56!important}
body.peMobileStudents12351:has(#mobileStudentSelector) [data-sf51-context]{font-size:11px!important;color:#637b8e!important}
body.peMobileStudents12351:has(#mobileStudentSelector) [data-sf51-class-name]{font-size:17px!important;grid-column:1!important}
body.peMobileStudents12351:has(#mobileStudentSelector) .sf51-chevron{grid-column:2!important;grid-row:1 / 3!important;display:grid!important;place-items:center!important;align-self:stretch!important;font-size:23px!important;line-height:1!important}
body.peMobileStudents12351:has(#mobileStudentSelector) #mobileStudentSelector[data-sf51-expanded="false"] :is(.mobileStudentSelectorGrid,#mStudentLoadClass){display:none!important}
body.peMobileStudents12351:has(#mobileStudentSelector) #mobileStudentSelector .mobileStudentSelectorGrid{grid-template-columns:repeat(3,minmax(0,1fr))!important;gap:8px!important;margin-top:12px!important}
body.peMobileStudents12351:has(#mobileStudentSelector) #mobileStudentSelector .mobileStudentPerson{display:none!important}
body.peMobileStudents12351:has(#mobileStudentSelector) #mobileStudentSelector .mobilePickerField{grid-column:auto!important}
body.peMobileStudents12351:has(#mobileStudentSelector) #mobileStudentSelector .mobilePickerField >span{font-size:12px!important}
body.peMobileStudents12351:has(#mobileStudentSelector) #mobileStudentSelector .mobileContextPickerButton{padding:0 8px!important;font-size:15px!important}
body.peMobileStudents12351:has(#mobileStudentSelector) #mobileStudentSelector #mStudentLoadClass{margin-top:10px!important;min-height:46px!important}
body.peMobileStudents12351:has(#mobileStudentSelector) #app.studentScreen > .studentSplit{display:block!important;min-height:0!important;height:auto!important;max-height:none!important;overflow:visible!important;padding:0!important;border:0!important;background:transparent!important}
body.peMobileStudents12351:has(#mobileStudentSelector) #app.studentScreen > .studentSplit > .list{display:block!important;width:100%!important;min-width:0!important;max-height:none!important;height:auto!important;overflow:visible!important;border:0!important;padding:0!important;background:transparent!important;box-shadow:none!important}
body.peMobileStudents12351:has(#mobileStudentSelector) #app.studentScreen .listHead{display:none!important}
body.peMobileStudents12351:has(#mobileStudentSelector) [data-sf51-roster-tools]{display:flex!important;align-items:center!important;justify-content:space-between!important;gap:8px!important;margin:0 0 10px!important}
body.peMobileStudents12351:has(#mobileStudentSelector) [data-sf51-roster-label]{font-size:18px!important;color:#213c55!important}
body.peMobileStudents12351:has(#mobileStudentSelector) [data-sf51-manage]{min-height:42px!important;padding:8px 12px!important;border:1px solid #d0dce7!important;border-radius:11px!important;background:#fff!important;color:#36566e!important;font-size:13px!important;font-weight:800!important}
body.peMobileStudents12351:has(#mobileStudentSelector) #app .studentRosterSearch12317{display:flex!important;margin:0 0 12px!important;min-height:44px!important;border-radius:11px!important;background:#fff!important}
body.peMobileStudents12351:has(#mobileStudentSelector) #app .studentRosterSearch12317 input{font-size:16px!important;text-align:left!important;min-width:0!important}
body.peMobileStudents12351:has(#mobileStudentSelector) #app #studentList{display:grid!important;grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:0!important;width:100%!important;height:auto!important;max-height:none!important;overflow:visible!important;padding:0!important;border:1px solid #d3dfeb!important;border-radius:15px!important;background:#fff!important}
body.peMobileStudents12351:has(#mobileStudentSelector) #app #studentList > .studentBtn{display:flex!important;flex-wrap:wrap!important;align-items:center!important;justify-content:center!important;align-content:center!important;gap:6px!important;min-width:0!important;min-height:76px!important;height:auto!important;width:100%!important;margin:0!important;padding:13px 8px!important;border:0!important;border-bottom:1px solid #e1e8f0!important;border-radius:0!important;background:#fff!important;box-shadow:none!important;color:#25455e!important;text-align:center!important}
body.peMobileStudents12351:has(#mobileStudentSelector) #app #studentList > .studentBtn:nth-child(odd){border-right:1px solid #e1e8f0!important}
body.peMobileStudents12351:has(#mobileStudentSelector) #app #studentList > .studentBtn:first-child{border-top-left-radius:14px!important}
body.peMobileStudents12351:has(#mobileStudentSelector) #app #studentList > .studentBtn:nth-child(2){border-top-right-radius:14px!important}
body.peMobileStudents12351:has(#mobileStudentSelector) #app #studentList > .studentBtn[hidden]{display:none!important}
body.peMobileStudents12351:has(#mobileStudentSelector) #app #studentList .num{width:auto!important;min-width:0!important;background:transparent!important;border:0!important;color:#71869a!important;font-size:12px!important}
body.peMobileStudents12351:has(#mobileStudentSelector) #app #studentList .name{font-size:15px!important;min-width:0!important;max-width:100%!important;white-space:normal!important;overflow-wrap:anywhere!important}
body.peMobileStudents12351:has(#mobileStudentSelector) #app #studentList > .studentBtn{flex-wrap:nowrap!important}
body.peMobileStudents12351:has(#mobileStudentSelector) #app #studentList .num{flex:0 0 auto!important}
body.peMobileStudents12351:has(#mobileStudentSelector) #app #studentList .name{width:auto!important;flex:0 1 auto!important}
body.peMobileStudents12351:has(#mobileStudentSelector) #app #studentList .name > .badge{display:inline!important;margin:0!important;padding:0!important;border:0!important;border-radius:0!important;background:transparent!important;box-shadow:none!important;color:#25455e!important;font-size:14px!important;line-height:1.4!important;white-space:normal!important}
body.peMobileStudents12351:has(#mobileStudentSelector) #app #studentList .name .count{font-size:10px!important;color:#68849b!important}
body.peMobileStudents12351:has(#mobileStudentSelector) #app #studentList .studentStatusBadge{display:inline-flex!important;font-size:10px!important;padding:3px 5px!important}
body.peMobileStudents12351:has(#mobileStudentSelector) #app #studentList > :is(.empty,.studentRosterSearchEmpty12317){grid-column:1/-1!important;min-height:90px!important;padding:24px 12px!important;text-align:center!important}
body.peMobileStudents12351:has(#mobileStudentSelector) #app #studentDetail:not([data-sf51-open="true"]){display:none!important}
body.peMobileStudents12351:has(#mobileStudentSelector).sf51-detail-open::before{content:"";position:fixed;inset:0;background:rgba(20,39,57,.5);z-index:12998;pointer-events:auto}
body.peMobileStudents12351:has(#mobileStudentSelector) #app.studentScreen #studentDetail[data-sf51-open="true"]{display:block!important;position:fixed!important;z-index:13000!important;inset:max(8px,env(safe-area-inset-top)) 8px max(8px,env(safe-area-inset-bottom))!important;width:auto!important;height:auto!important;min-height:0!important;max-height:none!important;max-width:none!important;margin:0!important;padding:0 14px 24px!important;overflow-x:hidden!important;overflow-y:auto!important;overscroll-behavior:contain!important;border:1px solid #d7e3ed!important;border-radius:20px!important;background:#fff!important;box-shadow:0 20px 60px #13283d40!important;scroll-padding-top:120px!important}
body.peMobileStudents12351:has(#mobileStudentSelector) #app #studentDetail > [data-sf51-detail-head]{position:sticky!important;top:0!important;z-index:3!important;display:flex!important;align-items:center!important;justify-content:space-between!important;gap:10px!important;margin:0 -14px 12px!important;padding:16px 14px!important;background:#f0f7fd!important;border-bottom:1px solid #dbe5ef!important;text-align:left!important}
body.peMobileStudents12351:has(#mobileStudentSelector) #app #studentDetail > [data-sf51-detail-head]{width:calc(100% + 28px)!important;max-width:none!important;box-sizing:border-box!important}
body.peMobileStudents12351:has(#mobileStudentSelector) [data-sf51-detail-head] h2{margin:4px 0 0!important;font-size:21px!important;line-height:1.3!important;text-align:left!important;color:#203d56!important}
body.peMobileStudents12351:has(#mobileStudentSelector) [data-sf51-student-context]{font-size:12px!important;color:#6c8194!important;font-weight:700!important}
body.peMobileStudents12351:has(#mobileStudentSelector) [data-sf51-student-status]{display:block;font-size:11px!important;color:#805a36!important;margin-top:6px!important}
body.peMobileStudents12351:has(#mobileStudentSelector) .sf51-detail-controls{display:flex!important;align-items:center!important;gap:6px!important;flex-shrink:0!important}
body.peMobileStudents12351:has(#mobileStudentSelector) .sf51-detail-controls button{display:grid!important;place-items:center!important;width:40px!important;height:40px!important;min-width:40px!important;min-height:40px!important;padding:0!important;border:1px solid #cddbe7!important;border-radius:11px!important;background:#fff!important;color:#36546c!important;font-size:20px!important}
body.peMobileStudents12351:has(#mobileStudentSelector) .sf51-detail-controls button[hidden]{display:none!important}
body.peMobileStudents12351:has(#mobileStudentSelector) #app #studentDetail > [data-sf51-record-links]{display:grid!important;grid-template-columns:repeat(3,minmax(0,1fr))!important;gap:6px!important;margin:0 0 16px!important}
body.peMobileStudents12351:has(#mobileStudentSelector) [data-sf51-record-links] button{display:grid!important;place-items:center!important;gap:5px!important;min-width:0!important;min-height:65px!important;padding:9px 3px!important;border:1px solid #d7e2ec!important;border-radius:12px!important;background:#f7fafd!important;color:#345872!important;font-size:11px!important;line-height:1.35!important;white-space:normal!important;word-break:keep-all!important}
body.peMobileStudents12351:has(#mobileStudentSelector) [data-sf51-record-links] button >span{font-size:20px!important}
body.peMobileStudents12351:has(#mobileStudentSelector) [data-sf51-record-links] button[aria-pressed="true"]{border-color:#3996d5!important;background:#e8f5ff!important;color:#126194!important}
body.peMobileStudents12351:has(#mobileStudentSelector) #app #studentDetail[data-sf51-view="profile"] > [data-sf51-part]:not([data-sf51-part="profile"]),
body.peMobileStudents12351:has(#mobileStudentSelector) #app #studentDetail[data-sf51-view="attendance"] > [data-sf51-part]:not([data-sf51-part="attendance"]),
body.peMobileStudents12351:has(#mobileStudentSelector) #app #studentDetail[data-sf51-view="paps"] > [data-sf51-part]:not([data-sf51-part="paps"]),
body.peMobileStudents12351:has(#mobileStudentSelector) #app #studentDetail[data-sf51-view="assessment"] > [data-sf51-part]:not([data-sf51-part="assessment"]){display:none!important}
body.peMobileStudents12351:has(#mobileStudentSelector) #app #studentDetail .studentDetailTitleText{display:none!important}
body.peMobileStudents12351:has(#mobileStudentSelector) #app #studentDetail .studentDetailTitleRow{display:flex!important;justify-content:flex-end!important;margin:0 0 10px!important}
body.peMobileStudents12351:has(#mobileStudentSelector) #app #studentDetail .heroPhoto{width:90px!important;height:90px!important;margin:0 auto!important}
body.peMobileStudents12351:has(#mobileStudentSelector) #app #studentDetail .heroPhotoActions{display:flex!important;flex-wrap:wrap!important;justify-content:center!important;margin:10px 0 15px!important;font-size:11px!important}
body.peMobileStudents12351:has(#mobileStudentSelector) #app #studentDetail .studentInfoCard{display:grid!important;grid-template-columns:1fr!important;gap:12px!important;padding:14px!important;border-radius:14px!important}
body.peMobileStudents12351:has(#mobileStudentSelector) #app #studentDetail .studentInfoCard >div{display:block!important;width:auto!important;min-width:0!important}
body.peMobileStudents12351:has(#mobileStudentSelector) #app #studentDetail .studentInfoCard .label{text-align:left!important;margin:0 0 6px!important;font-size:12px!important}
body.peMobileStudents12351:has(#mobileStudentSelector) #app #studentDetail .studentInfoCard input{width:100%!important;font-size:16px!important;min-height:44px!important;text-align:left!important}
body.peMobileStudents12351:has(#mobileStudentSelector) #app #studentDetail #genderSegment{display:grid!important;grid-template-columns:repeat(3,minmax(0,1fr))!important;gap:4px!important}
body.peMobileStudents12351:has(#mobileStudentSelector) #app #studentDetail #genderSegment button{min-width:0!important;font-size:12px!important;padding:8px 3px!important}
body.peMobileStudents12351:has(#mobileStudentSelector) #app #studentDetail .studentNoteRow{display:grid!important;grid-template-columns:minmax(0,1fr) auto!important;gap:8px!important}
body.peMobileStudents12351:has(#mobileStudentSelector) #app #studentDetail #noteDate{grid-column:1/-1!important;font-size:16px!important;width:100%!important}
body.peMobileStudents12351:has(#mobileStudentSelector) #app #studentDetail #noteText{font-size:16px!important;width:100%!important}
body.peMobileStudents12351:has(#mobileStudentSelector) #app #studentDetail .noteItem{min-width:0!important;overflow-wrap:anywhere!important}
body.peMobileStudents12351:has(#mobileStudentSelector) #app #studentDetail > :is(#studentAttendance12220,#studentPapsSummary,.studentAssessmentSection){width:100%!important;max-width:none!important;min-width:0!important;height:auto!important;max-height:none!important;margin:0!important;padding:12px!important;border:1px solid #dce6ee!important;border-radius:14px!important;box-sizing:border-box!important;background:#fff!important}
body.peMobileStudents12351:has(#mobileStudentSelector) #studentAttendance12220 .studentAttendanceHeading{display:none!important}
body.peMobileStudents12351:has(#mobileStudentSelector) #studentAttendance12220 .studentAttendanceSemesters{display:none!important}
body.peMobileStudents12351:has(#mobileStudentSelector) [data-sf51-attendance-period],body.peMobileStudents12351:has(#mobileStudentSelector) #studentAssessmentSummary .academicToolbar{display:grid!important;grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:8px!important;align-items:center!important;margin:0 0 12px!important}
body.peMobileStudents12351:has(#mobileStudentSelector) [data-sf51-attendance-period] label{display:grid!important;gap:5px!important;font-size:12px!important;font-weight:750!important;color:#697f90!important}
body.peMobileStudents12351:has(#mobileStudentSelector) [data-sf51-attendance-period] select,body.peMobileStudents12351:has(#mobileStudentSelector) #studentAssessmentSummary .academicToolbar select{width:100%!important;min-width:0!important;height:44px!important;min-height:44px!important;padding:7px 10px!important;border:1px solid #cfdce7!important;border-radius:10px!important;background:#fff!important;font-size:16px!important;color:#294a63!important;box-sizing:border-box!important;text-align:center!important}
body.peMobileStudents12351:has(#mobileStudentSelector) #studentAssessmentSummary .academicToolbar >span{display:none!important}
body.peMobileStudents12351:has(#mobileStudentSelector) #app.studentScreen #studentDetail > .studentAssessmentSection{display:block!important}
body.peMobileStudents12351:has(#mobileStudentSelector) #app.studentScreen #studentDetail > .studentAssessmentSection >h3{display:block!important;width:100%!important;margin:0 0 12px!important;white-space:normal!important;text-align:left!important}
body.peMobileStudents12351:has(#mobileStudentSelector) #app #studentDetail #studentAssessmentSummary{display:block!important;width:100%!important;min-width:0!important;margin:0!important}
body.peMobileStudents12351:has(#mobileStudentSelector) #app #studentDetail #studentAssessmentSummary .academicToolbar{display:grid!important;grid-template-columns:repeat(2,minmax(0,1fr))!important;width:100%!important;margin:0 0 12px!important;gap:8px!important}
body.peMobileStudents12351:has(#mobileStudentSelector) #app #studentDetail #studentAssessmentSummary .academicToolbar select{width:100%!important;min-width:0!important;max-width:none!important;height:44px!important;min-height:44px!important;padding:7px 10px!important;border-radius:10px!important;font-size:16px!important;box-sizing:border-box!important;text-align:center!important}
body.peMobileStudents12351:has(#mobileStudentSelector) #studentAttendance12220 .studentAttendanceToolbar{justify-content:flex-end!important;margin-bottom:10px!important}
body.peMobileStudents12351:has(#mobileStudentSelector) #studentAttendance12220 .studentAttendanceStats{display:grid!important;grid-template-columns:repeat(3,minmax(0,1fr))!important;gap:8px!important}
body.peMobileStudents12351:has(#mobileStudentSelector) #app #studentDetail #studentAttendance12220 button.studentAttendanceStat{padding:12px 6px!important;min-height:82px!important;border-radius:12px!important;text-align:center!important;align-items:center!important;justify-content:center!important}
body.peMobileStudents12351:has(#mobileStudentSelector) #app #studentDetail #studentAttendance12220 button.studentAttendanceStat::after{display:none!important;content:none!important}
body.peMobileStudents12351:has(#mobileStudentSelector) #studentAttendance12220 .studentAttendanceStatValue b{font-size:25px!important}
body.peMobileStudents12351:has(#mobileStudentSelector) #studentDetail .studentAssessmentSection >h3{font-size:17px!important;margin:0 0 12px!important;text-align:left!important}
body.peMobileStudents12351:has(#mobileStudentSelector) #studentDetail #studentPapsSummary .mobilePapsMetricRow{display:grid!important;grid-template-columns:minmax(0,1fr) auto!important;gap:8px!important;padding:13px 10px!important;text-align:left!important}
body.peMobileStudents12351:has(#mobileStudentSelector) #studentDetail #studentPapsSummary .mobilePapsMetricTitle{text-align:left!important;grid-column:1!important;font-size:13px!important}
body.peMobileStudents12351:has(#mobileStudentSelector) #studentDetail #studentPapsSummary .mobilePapsValue{grid-column:2!important;grid-row:1!important;font-size:19px!important;font-weight:850!important;text-align:right!important}
body.peMobileStudents12351:has(#mobileStudentSelector) #studentDetail #studentPapsSummary .mobilePapsBadgeSlot{grid-column:1/-1!important;grid-row:2!important;text-align:left!important;justify-content:flex-start!important}
body.peMobileStudents12351:has(#mobileStudentSelector) #studentDetail :is(.papsGrade,.overallGradeBadge,.studentAssessmentGradeBadge){border:0!important;border-radius:999px!important;padding:5px 10px!important;display:inline-flex!important;align-items:center!important;justify-content:center!important;font-weight:850!important;min-width:44px!important;font-size:12px!important}
body.peMobileStudents12351:has(#mobileStudentSelector) #studentDetail :is(.grade1,.g1,.studentAssessmentGradeA){background:#dcfce7!important;color:#166534!important}
body.peMobileStudents12351:has(#mobileStudentSelector) #studentDetail :is(.grade2,.g2,.studentAssessmentGradeB){background:#dbeafe!important;color:#1e40af!important}
body.peMobileStudents12351:has(#mobileStudentSelector) #studentDetail :is(.grade3,.g3,.studentAssessmentGradeC){background:#fef3c7!important;color:#92400e!important}
body.peMobileStudents12351:has(#mobileStudentSelector) #studentDetail :is(.grade4,.g4){background:#ffedd5!important;color:#9a3412!important}
body.peMobileStudents12351:has(#mobileStudentSelector) #studentDetail :is(.grade5,.g5){background:#fee2e2!important;color:#991b1b!important}
body.peMobileStudents12351:has(#mobileStudentSelector) #app #studentDetail #studentAssessmentSummary .studentAssessmentGradeA{background:#dcfce7!important;color:#166534!important}
body.peMobileStudents12351:has(#mobileStudentSelector) #app #studentDetail #studentAssessmentSummary .studentAssessmentGradeB{background:#dbeafe!important;color:#1e40af!important}
body.peMobileStudents12351:has(#mobileStudentSelector) #app #studentDetail #studentAssessmentSummary .studentAssessmentGradeC{background:#fef3c7!important;color:#92400e!important}
body.peMobileStudents12351:has(#mobileStudentSelector) .sf51-management-backdrop{position:fixed;inset:0;z-index:14000;background:#172c4155;display:flex;align-items:flex-end;padding:8px;box-sizing:border-box}
body.peMobileStudents12351:has(#mobileStudentSelector) .sf51-management{width:100%;max-height:85dvh;overflow:auto;background:#fff;border:1px solid #d9e4ee;border-radius:20px;padding:16px;box-sizing:border-box;color:#294861}
body.peMobileStudents12351:has(#mobileStudentSelector) .sf51-management header{display:flex;align-items:center;justify-content:space-between;gap:10px;margin-bottom:12px}
body.peMobileStudents12351:has(#mobileStudentSelector) .sf51-management h2{margin:0;font-size:20px}
body.peMobileStudents12351:has(#mobileStudentSelector) .sf51-management [data-sf51-menu-close]{width:40px;height:40px;padding:0;background:#fff;border:1px solid #d5e0eb;border-radius:10px;font-size:18px;color:#36546c}
body.peMobileStudents12351:has(#mobileStudentSelector) [data-sf51-management-list]{display:grid;gap:8px}
body.peMobileStudents12351:has(#mobileStudentSelector) [data-sf51-forward]{display:flex;align-items:center;gap:12px;min-height:58px;padding:12px 14px;border:1px solid #d9e4ed;border-radius:12px;background:#f9fbfe;color:#355570;font-size:15px;text-align:left}
body.peMobileStudents12351:has(#mobileStudentSelector) [data-sf51-forward].is-danger{color:#a33434;background:#fff6f6;border-color:#f3d3d3}
body.peMobileStudents12351:has(#mobileStudentSelector) [hidden]{display:none!important}
@media(prefers-reduced-motion:no-preference){body.peMobileStudents12351:has(#mobileStudentSelector) [data-sf51-class] .sf51-chevron{transition:transform .18s ease}body.peMobileStudents12351:has(#mobileStudentSelector) [data-sf51-expanded="true"] .sf51-chevron{transform:rotate(180deg)}}
