/* Student pages: one task at a time, with a persistent five-item dock. */
body[data-student-mode=true] #bottomNav{display:block!important;position:fixed;left:50%;right:auto;bottom:calc(52px + env(safe-area-inset-bottom))!important;transform:translateX(-50%);width:min(680px,calc(100% - 20px));max-width:680px;padding:6px!important;border:1px solid #e8dce1;border-radius:24px;background:#fff;box-shadow:0 8px 30px #30202a18;z-index:25}
body[data-student-mode=true] #bottomNav>button[data-tab]{display:none!important}
body[data-student-mode=true] #studentFlowNav{display:grid!important;grid-template-columns:repeat(5,minmax(0,1fr))!important;gap:2px;width:100%!important;margin:0!important;padding:0!important;border:0!important;border-radius:0!important;background:transparent!important;box-shadow:none!important;backdrop-filter:none!important}
body[data-student-mode=true] #studentFlowNav[hidden]{display:none!important}
body[data-student-mode=true] #studentFlowNav a{display:flex!important;flex-direction:column;align-items:center;justify-content:center;gap:3px;min-width:0;min-height:56px!important;padding:6px 2px!important;border:0!important;border-radius:17px!important;background:transparent;color:#6d6269!important;font-size:11px!important;font-weight:650!important;line-height:1.15!important;text-align:center;text-decoration:none;white-space:nowrap!important}
body[data-student-mode=true] #studentFlowNav a svg{width:22px;height:22px;stroke-linecap:round;stroke-linejoin:round;flex:none}
body[data-student-mode=true] #studentFlowNav a[aria-current=page]{background:#fff0f2!important;color:#a42a37!important;box-shadow:none!important}
body[data-student-mode=true] #studentFlowNav a:focus-visible{outline:3px solid #8d3861;outline-offset:-2px}
body[data-student-mode=true] #logout{display:none!important}
body[data-student-mode=true] main>section:has(>#ownerSetupToggle){display:none!important}
body[data-student-mode=true] #scope,body[data-student-mode=true] #licenseStatus{display:none!important}
body[data-student-mode=true]:not([data-student-page=studentExperience]) #welcome{display:none!important}
body[data-student-mode=true] main{padding-bottom:calc(172px + env(safe-area-inset-bottom))!important}
body[data-student-mode=true] #pageDirectory{display:none!important}
body[data-student-mode=true] #studentPanel,body[data-student-mode=true] .settings-page{width:100%;max-width:760px;box-sizing:border-box;margin:0 auto 20px}
.settings-back{display:inline-flex;align-items:center;min-height:44px;margin:-8px 0 14px;color:#8d3040;text-decoration:none;font-size:14px;font-weight:650}
.settings-list{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;margin-top:18px}
.settings-link{position:relative;display:flex;flex-direction:column;justify-content:center;gap:5px;min-height:76px;padding:17px 44px 17px 18px;border:1px solid #e8e1e4;border-radius:19px;background:#fff;color:#332d32;text-decoration:none;line-height:1.4}
.settings-link strong{font-size:16px;font-weight:700}
.settings-link span{font-size:12px;color:#766d72}
.settings-link b{position:absolute;right:17px;top:50%;transform:translateY(-50%);font-size:25px;font-weight:400;color:#ad5263}
.settings-link:focus-visible{outline:3px solid #a42a37;outline-offset:2px}
#studentPanel .profile-summary{margin:8px 0 12px}
#studentPanel>h2{margin-bottom:18px}
#profileSettingsPanel>details,#schoolSettingsPanel>details,#accessSettingsPanel>details{margin-top:16px}
#schoolSettingsPanel .region-settings{margin:0;border:0;padding:0;box-shadow:none}
#schoolSettingsPanel .region-settings>h3{display:none}
#schoolSettingsPanel .region-settings>p{font-size:13px;line-height:1.5;margin:4px 0 12px}
#schoolSettingsPanel .region-settings form>label{margin:8px 0}
#schoolSettingsPanel .domestic-school-link{margin-top:18px}
body[data-learning-region=personal] .domestic-school-link{display:none!important}
#accessSettingsPanel #personalAccessPanel{box-shadow:none;margin:14px 0;background:#fff8f8}
#accessSettingsPanel #inviteAccept{margin-top:20px;padding-top:20px;border-top:1px solid #e8e1e4}
#accessSettingsPanel #individualPlanPanel{box-shadow:none;margin-top:18px;background:#fff}
#accountSettingsPanel #researchPreference{box-shadow:none;margin:12px 0}
.settings-legal{display:grid;gap:2px;margin-top:16px;border-top:1px solid #e8e1e4}
body[data-student-mode=true] #accountSettingsPanel .settings-legal{display:grid!important;grid-template-columns:1fr!important}
.settings-legal a{display:flex;align-items:center;min-height:48px;border-bottom:1px solid #eee7e9;color:#503f48;text-decoration:none}
#settingsRoleSwitch{display:grid;gap:8px;margin-top:18px}
#settingsRoleSwitch:empty{display:none}
#settingsRoleSwitch button{display:flex;align-items:center;gap:10px;width:100%;min-height:48px;text-align:left;background:#f8f3f4;color:#59343d}
.settings-signout{width:100%;margin-top:18px;background:#f7f1f2!important;color:#7a2737!important}
#profileSettingsPanel #profileSave,#schoolSettingsPanel #learningCountrySave,#accessSettingsPanel #inviteAccept button{background:#a42a37;color:#fff}
#accountSettingsPanel .account-delete-link{display:flex;align-items:center;min-height:48px;margin-top:8px;color:#8d3040;text-decoration:none}
.related-pages{display:flex;gap:8px;flex-wrap:wrap;margin:0 0 18px}
.related-pages a{display:inline-flex;align-items:center;min-height:44px;padding:9px 13px;border:1px solid #eadfe1;border-radius:14px;background:#fff9fa;color:#873540;text-decoration:none;font-size:13px;font-weight:650}
@media(max-width:600px){.settings-list{grid-template-columns:1fr}.settings-link{min-height:68px;padding-top:13px;padding-bottom:13px}body[data-student-mode=true] #bottomNav{width:calc(100% - 16px)}body[data-student-mode=true] #studentFlowNav a{min-height:52px!important}body[data-student-mode=true] #studentFlowNav a svg{width:21px;height:21px}}
@media(max-width:350px){body[data-student-mode=true] #studentFlowNav a{font-size:10px!important}body[data-student-mode=true] #studentPanel .profile-summary{margin-bottom:7px}body[data-student-mode=true] #studentPanel>h2{margin-bottom:10px}body[data-student-mode=true] .settings-list{gap:7px;margin-top:10px}body[data-student-mode=true] .settings-list .settings-link{min-height:59px;padding-top:9px;padding-bottom:9px}}
body[data-student-mode=true] #studentFlowNav{grid-template-columns:repeat(3,minmax(0,1fr))!important}
body[data-student-mode=true] .legal-footer{display:none!important}
body[data-student-mode=true] #bottomNav{bottom:calc(10px + env(safe-area-inset-bottom))!important}
body[data-student-mode=true] main{padding-bottom:calc(100px + env(safe-area-inset-bottom))!important}
body[data-student-mode=true] #aiPanel h2:focus:not(:focus-visible){outline:none!important;box-shadow:none!important}
body[data-student-mode=true] #uploadPhotoStage{padding-bottom:8px}
body[data-student-mode=true] #uploadContinue{display:block;width:100%;min-height:52px;margin:22px 0 8px;border-radius:17px;background:#786294;color:#fff;font-weight:750}
body[data-student-mode=true] #uploadContinue:disabled{background:#e9e4e5;color:#71696d}
body[data-student-mode=true] #uploadContinue[hidden],#aiProcessing[hidden]{display:none!important}
body[data-student-mode=true] #aiPanel details[hidden]{display:none!important}
.ai-processing{margin:18px 0;padding:20px;border:1px solid #f0d8dc;border-radius:20px;background:#fff7f8;color:#3b252b}
.ai-processing h3{margin:8px 0 4px;font-size:18px}.ai-processing p{margin:0 0 12px;color:#64565a}.ai-processing ol{display:flex;gap:8px;list-style:none;padding:0;margin:0}.ai-processing li{flex:1;padding:8px 5px;border-radius:9px;background:#fff;text-align:center;font-size:11px;color:#78676c}
.ai-processing-spinner{width:25px;height:25px;border:3px solid #dcd0e7;border-top-color:#786294;border-radius:50%;animation:ieo-processing 1s linear infinite}
.ai-processing-mascot{display:block;width:84px;height:84px;object-fit:contain;margin:0 auto 8px;animation:ieo-mascot-wait 2.4s ease-in-out infinite}.ai-processing [data-step][data-active=true]{background:#786294;color:#fff;font-weight:700}.ai-question-transcript{margin:10px 0;padding:12px 14px;background:#fff;border:1px solid #e9e4e1;border-radius:12px;white-space:pre-wrap;line-height:1.55}.ai-question-transcript p{margin:0 0 8px}.ai-question-transcript ol{margin:0;padding-left:22px}
@keyframes ieo-mascot-wait{0%,100%{transform:translateY(0) rotate(-3deg)}50%{transform:translateY(-9px) rotate(3deg)}}
.ai-processing[data-state=review] .ai-processing-spinner,.ai-processing[data-state=stored] .ai-processing-spinner,.ai-processing[data-state=failed] .ai-processing-spinner,.ai-processing[data-state=uncertain] .ai-processing-spinner{animation:none;border-color:#786294}
@keyframes ieo-processing{to{transform:rotate(360deg)}}@media(prefers-reduced-motion:reduce){.ai-processing-spinner,.ai-processing-mascot{animation:none}}
body[data-student-mode=true] #uploadSheetBackdrop:not([hidden]){display:block;position:fixed;inset:0;border:0;border-radius:0;background:#1f172064;z-index:70}
body[data-student-mode=true] #uploadDetailsStage:not([hidden]){display:flex;flex-direction:column;position:fixed;left:0;right:0;bottom:0;z-index:71;max-height:min(92dvh,680px);overflow:hidden;box-sizing:border-box;padding:20px max(20px,calc((100vw - 560px)/2)) calc(24px + env(safe-area-inset-bottom));border-radius:28px 28px 0 0;background:#fff;box-shadow:0 -12px 40px #2d152132}
body[data-student-mode=true] #uploadDetailsStage .upload-details-scroll{min-height:0;overflow-y:auto;overscroll-behavior:contain}
body[data-student-mode=true] #uploadDetailsStage h3{margin:4px 0 10px;font-size:23px}
body[data-student-mode=true] #uploadDetailsStage label{display:block;margin:7px 0}
body[data-student-mode=true] #uploadDetailsStage :is(input,select){width:100%;box-sizing:border-box;min-height:48px}
body[data-student-mode=true] #uploadDetailsStage #aiSubmit{position:static!important;flex:none;display:block;width:100%;min-height:52px;margin:16px 0 0;border-radius:17px;background:#786294;color:#fff;font-weight:750;box-shadow:none!important}
body[data-student-mode=true] #uploadDetailsStage #aiSubmit:disabled{background:#e9e4e5;color:#71696d}
body[data-student-mode=true] .upload-photo-card{position:relative;display:inline-flex;vertical-align:top;align-items:center;justify-content:center;width:88px;height:110px;margin:8px 9px 6px 0;border:1px solid #eadfe2;border-radius:15px;background:#faf7f8;overflow:visible}
body[data-student-mode=true] .upload-photo-card img{display:block;width:100%;height:100%;object-fit:cover;border-radius:14px}
body[data-student-mode=true] .upload-photo-number{position:absolute;left:7px;bottom:7px;padding:3px 7px;border-radius:9px;background:#fffE;color:#332b30;font-size:11px;font-weight:750}
body[data-student-mode=true] .upload-photo-remove{position:absolute;right:-9px;top:-9px;display:grid;place-items:center;width:28px;height:28px;min-height:28px!important;padding:0!important;border:2px solid white;border-radius:50%;background:#ba344a;color:#fff;font-size:19px;line-height:1}
body[data-student-mode=true] .upload-photo-remove:focus-visible{outline:3px solid #612439;outline-offset:2px}
.settings-ai-consent{padding:18px;margin:16px 0;border:1px solid #eadfe2;border-radius:18px;background:#fff}
.settings-ai-consent h3{margin:0 0 8px;font-size:17px}
.settings-ai-consent p{font-size:13px;line-height:1.55;color:#5f555a}
.settings-ai-consent button{width:100%;min-height:44px;margin:5px 0}
.legal-ai-note{margin:2px 0 14px 34px;font-size:12px;line-height:1.5;color:#655b60}
body[data-student-mode=true] #aiPanel .photo-source>label{position:absolute!important;width:1px!important;height:1px!important;overflow:hidden!important;clip-path:inset(50%)!important;white-space:nowrap!important}
body[data-student-mode=true] #aiPanel .photo-source>details{display:none!important}
body[data-student-mode=true] #aiPanel .photo-source{border:1px solid #eee4e6;border-radius:18px;padding:16px;margin:12px 0;background:#fff}
body[data-student-mode=true] #aiPanel .photo-source legend{font-size:16px;font-weight:750;color:#29242a}
.photo-chooser{display:flex;align-items:center;gap:12px;flex-wrap:wrap;margin:10px 0}
.photo-chooser .photo-choice{flex:1 1 100px;min-width:0;min-height:48px;margin:0;padding:10px 7px;border:1px solid #e7cfd4;border-radius:14px;background:#fff!important;color:#8f2a3e!important;font-size:12px;white-space:nowrap}
.photo-chooser .photo-choice:first-child{background:#786294!important;color:#fff!important;border-color:#786294}
.one-home-upload,.one-home-map,#oneHomePrimary,#uploadContinue{white-space:nowrap;word-break:keep-all;max-width:100%;font-size:clamp(12px,3.5vw,15px)}
#legacyAnswerSources[hidden]{display:none!important}
#aiReview[data-paper-only=true] #oneReviewCardHint{display:none!important}


#aiReview[data-paper-only=true] .one-review-info>p{display:none!important}
#paperOnlyOverview{padding:18px;border:1px solid #eadce0;border-radius:18px;background:#fff9fa;margin:14px 0}
#paperOnlyOverview h3{margin:0 0 8px;color:#7d2940}
#paperOnlyOverview p{margin:8px 0;font-size:14px;line-height:1.55}
.subject-manager{margin:16px 0;padding:15px;border:1px solid #eadfe2;border-radius:18px;background:#fff}
.subject-manager>summary{cursor:pointer;color:#8f2a3e;font-weight:750;min-height:32px}
.subject-manager form{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr) auto auto;gap:8px;margin:12px 0}
.subject-manager form :is(select,input,button){min-width:0;min-height:44px;margin:0}
.subject-chips{display:flex;flex-wrap:wrap;gap:8px}
.subject-chips>span{display:inline-flex;align-items:center;gap:8px;padding:5px 6px 5px 13px;border-radius:999px;background:#fff3f5;color:#662734;font-size:13px}
.subject-chips button{min-height:32px;padding:4px 9px;border-radius:999px;background:#fff!important;color:#8f2a3e!important;font-size:12px}
@media(max-width:600px){.subject-manager form{grid-template-columns:1fr 1fr}.subject-manager form select,.subject-manager form input{grid-column:1/-1}}
.photo-add{width:52px;height:52px;border-radius:16px!important;background:#bd3f4b!important;color:#fff!important;font-size:30px!important;line-height:1!important;padding:0!important}
.photo-choices{display:flex;gap:8px;flex-wrap:wrap}.photo-choices[hidden]{display:none!important}.photo-choices button{min-height:44px;border:1px solid #eadfe2;background:#fff!important;color:#45343b!important;border-radius:14px!important}
.settings-alert-wrap{margin:8px 0}.settings-alert-wrap button{width:100%;min-height:48px;text-align:left;border:1px solid #ecdfe2!important;background:#fff6f7!important;color:#813240!important}
body[data-student-mode=true] :is(#studyHome,#aiPanel,#conceptPanel,#progressPanel,#practicePanel)>h2::after{display:none!important}
.page-mascot{display:grid;grid-template-columns:64px 1fr;grid-template-rows:auto auto;align-items:center;column-gap:12px;margin:8px 0 16px}.page-mascot img{grid-row:1/3;width:64px;height:64px;object-fit:contain}.page-mascot figcaption{font-size:13px;font-weight:800;color:#a73643}.page-mascot p{margin:2px 0 0;font-size:13px;color:#625b60;line-height:1.45}
.subject-timeline{margin:16px 0 24px;padding:18px;border:1px solid #e9e4e6;border-radius:22px;background:#fff}.subject-timeline h3{margin:0 0 14px}.learning-timeline{display:block;width:100%;height:auto;max-height:230px}.exam-title-list{display:grid;gap:8px;margin-top:12px}.exam-title-row{display:flex;justify-content:space-between;align-items:center;gap:8px;padding:12px;border-radius:14px;background:#faf8f9}.exam-title-row div{display:grid;gap:3px;min-width:0}.exam-title-row strong{overflow-wrap:anywhere}.exam-title-row small{font-size:12px;color:#70676c}.wrong-type-badge{flex:none;padding:6px 9px;border-radius:100px;background:#fae8eb;color:#973441;font-size:12px;font-weight:750}.one-home-upload,.one-home-map{display:inline-flex;min-height:44px;align-items:center;margin:8px 8px 0 0;padding:10px 15px;border-radius:14px;text-decoration:none}.one-home-upload{background:#bd3f4b;color:#fff}.one-home-map{background:#f5f1f2;color:#5c424a}
