/* C / ONE — scoped to the authorized student learning workspace. */
body[data-student-mode=true]{--ink:#332d38;--muted:#756a7c;--brand:#786294;--brand-pressed:#68517f;--brand-soft:#f0ebf5;--stroke:#e7e0ec;--lavender:#eee7f4;background:#fff;color:var(--ink)}
body[data-student-mode=true] #workspace>article{max-width:900px;margin:auto}
body[data-student-mode=true] #studentFlowNav{max-width:720px;margin:0 auto 18px;border-color:#eee7f2;border-radius:22px;background:#fff9;box-shadow:none;backdrop-filter:blur(15px)}
body[data-student-mode=true] #studentFlowNav a{font-size:12px;font-weight:550;color:#786f82}
body[data-student-mode=true] #studentFlowNav a[aria-current]{background:#eee4f3;color:#6b4675;box-shadow:none;border-radius:18px}
body[data-student-mode=true] #studentExperience .student-hero{display:none}
body[data-student-mode=true][data-student-page=studentExperience] #studyHome{display:none}
body[data-student-mode=true] #oneHome{max-width:440px;margin:0 auto;padding:6px 0 4px}
body[data-student-mode=true] .one-home-intro{display:flex;align-items:center;justify-content:space-between;gap:14px;color:#81748b;font-size:12px;line-height:1.7;margin:0 0 12px}
body[data-student-mode=true] .one-home-intro>span:last-child{font-size:9px;letter-spacing:.12em;white-space:nowrap}
body[data-student-mode=true] #oneHome h2{font-size:39px;font-weight:600;line-height:1.13;letter-spacing:-1.7px;margin:0 0 24px;color:#3e3048}
body[data-student-mode=true] #oneHome h2 em{font-style:normal;color:#a47fa5}
body[data-student-mode=true] .one-hero{position:relative;min-height:260px;overflow:hidden;border-radius:32px 32px 13px 32px;background:radial-gradient(ellipse at 95% 6%,#d7ddfb,transparent 70%),linear-gradient(140deg,#efe4f1,#f9e5df);color:#4c3b51}
body[data-student-mode=true] .one-hero-tag{position:absolute;top:20px;left:22px;color:#795e7b;font-size:11px;z-index:1}
body[data-student-mode=true] .one-hero-copy{position:relative;padding:165px 23px 22px;z-index:1}
body[data-student-mode=true] .one-hero-copy h3{font-size:25px;font-weight:550;line-height:1.25;letter-spacing:-.8px;margin:0 0 7px;color:#4c3b51}
body[data-student-mode=true] .one-hero-copy p{font-size:12px;line-height:1.7;color:#7f647e;margin:0;max-width:340px}
body[data-student-mode=true] .one-sculpture{position:absolute;inset:0;pointer-events:none;overflow:hidden}
body[data-student-mode=true] .one-sculpture>i{position:absolute;border-radius:50%;box-shadow:inset 4px 4px 7px #ffffff80,5px 10px 17px #95739320}
body[data-student-mode=true] .one-sculpture>i:first-child{width:145px;height:145px;right:32px;top:20px;border:25px solid #b8a7d7;transform:rotateX(22deg) rotateY(-34deg) rotateZ(22deg);mask:radial-gradient(transparent 41%,#000 42%)}
body[data-student-mode=true] .one-sculpture>i:nth-child(2){width:124px;height:124px;right:101px;top:45px;border:23px solid #f1bcb3;transform:rotateX(10deg) rotateY(33deg) rotateZ(-18deg);mask:radial-gradient(transparent 40%,#000 41%)}
body[data-student-mode=true] .one-sculpture>i:nth-child(3){width:33px;height:33px;right:35px;top:94px;background:radial-gradient(circle at 28% 24%,#fbf9e9,#c4bb83)}
body[data-student-mode=true] .one-sculpture>span{position:absolute;left:22px;top:51px;font-size:65px;font-weight:300;color:#8b719866;letter-spacing:-4px;line-height:1}
body[data-student-mode=true] .one-primary{display:flex;align-items:center;justify-content:space-between;gap:16px;width:100%;min-height:54px;margin:14px 0 0;padding:16px 20px!important;border:0!important;border-radius:18px!important;background:#44354f!important;color:white!important;text-decoration:none;font-size:14px!important;font-weight:600!important;line-height:1.5;box-shadow:none;white-space:normal;text-align:left}
body[data-student-mode=true] .one-primary:after{content:'→';font-size:20px;font-weight:400}
body[data-student-mode=true] .one-home-more{max-width:440px;margin:0 auto;border-bottom:1px solid var(--stroke);padding:3px 0;border-radius:0;background:none;box-shadow:none}
body[data-student-mode=true] .one-home-more>summary{font-size:12px;min-height:48px;display:flex;align-items:center;justify-content:space-between;padding:10px 0;cursor:pointer}
body[data-student-mode=true] .one-home-more>summary:after{content:'＋';font-size:16px;color:#8d789b}
body[data-student-mode=true] .one-home-more[open]>summary:after{content:'−'}
body[data-student-mode=true] .one-home-more .learning-shortcuts{grid-template-columns:repeat(3,minmax(0,1fr));margin:8px 0 18px;gap:7px}
body[data-student-mode=true] .one-home-more .learning-shortcuts a{font-size:11px;border-radius:17px;min-height:70px;padding:12px 4px;background:white;box-shadow:none}
body[data-student-mode=true] .one-home-more .home-insight{grid-template-columns:1fr;box-shadow:none}
body[data-student-mode=true] #progressPanel{max-width:760px;margin:auto;background:none;border:0;box-shadow:none;padding:10px 0!important}
body[data-student-mode=true] #progressPanel>h2{font-size:14px;font-weight:600;text-align:center;color:#6d5978;margin:0 0 13px;letter-spacing:0}
body[data-student-mode=true] #progressPanel>.page-hint{background:transparent;margin:0 0 12px;padding:0;font-size:12px;color:var(--muted)}
body[data-student-mode=true] .one-eyebrow{font-size:10px;letter-spacing:.1em;font-weight:550;color:#84768d}
body[data-student-mode=true] .one-map-intro h3{white-space:pre-line;font-size:33px;line-height:1.16;letter-spacing:-1.3px;font-weight:550;color:#6f527a;margin:12px 0 15px}
body[data-student-mode=true] .one-map-intro p{font-size:12px;line-height:1.8;color:#87768f;margin:0 0 20px}
body[data-student-mode=true] .one-map-path{position:relative}
body[data-student-mode=true] .one-map-path:before{content:'';position:absolute;top:20px;bottom:30px;left:30px;border-left:1px dashed #d8cbe1}
body[data-student-mode=true] .one-map-island{position:relative;background:#fff;border:1px solid #eee6f1;border-radius:23px;margin:0 0 12px;padding:0 17px;box-shadow:none}
body[data-student-mode=true] .one-map-island.one-map-featured{background:#eee6f6;border-color:#e8dff0;margin-left:16px}
body[data-student-mode=true] .one-map-island>summary{list-style:none;display:flex;align-items:center;gap:12px;padding:19px 0;cursor:pointer;min-height:94px}
body[data-student-mode=true] .one-map-island>summary::-webkit-details-marker{display:none}
body[data-student-mode=true] .one-map-index{width:31px;height:31px;flex:none;display:grid;place-items:center;background:#f2ecf7;color:#9e85ae;border-radius:50%;font-size:10px}
body[data-student-mode=true] .one-map-featured .one-map-index{background:#b79fca;color:white}
body[data-student-mode=true] .one-map-copy{flex:1;min-width:0}
body[data-student-mode=true] .one-map-copy small{display:block;font-size:10px;color:#8f7b9e;line-height:1.5}
body[data-student-mode=true] .one-map-copy strong{font-size:20px;line-height:1.3;color:#72547f;display:block;font-weight:550;margin:4px 0;overflow-wrap:anywhere}
body[data-student-mode=true] .one-map-copy>span{display:block;font-size:11px;color:#84748d;overflow-wrap:anywhere}
body[data-student-mode=true] .one-map-state{font-size:10px;color:#866c97;white-space:nowrap}
body[data-student-mode=true] .one-map-island>p{font-size:12px;line-height:1.7;margin:7px 0 13px;color:#735f80}
body[data-student-mode=true] .one-map-actions{display:flex;flex-wrap:wrap;gap:7px;padding:0 0 16px}
body[data-student-mode=true] .one-map-actions a{display:flex;align-items:center;min-height:44px;padding:8px 12px;font-size:11px;border:1px solid #ddcfe6;border-radius:12px;color:#6e4d7c;text-decoration:none}
body[data-student-mode=true] .one-note,body[data-student-mode=true] .one-empty{font-size:12px;line-height:1.8;color:#81718b;margin:18px 0}
body[data-student-mode=true] .one-graph-detail{border:1px solid var(--stroke)!important;padding:0 16px!important;border-radius:19px;background:#fff}
body[data-student-mode=true] .one-graph-detail>summary{font-size:13px;min-height:48px;display:flex;align-items:center}
body[data-student-mode=true] #progressOverview .overview-item{background:#f0eaf7;border-radius:19px;padding:17px 10px}
body[data-student-mode=true] #progressOverview .overview-item:nth-child(2){background:#f6e9e9}
body[data-student-mode=true] #progressOverview .overview-item:nth-child(3){background:#ecf0ea}
body[data-student-mode=true] #progressScores{border-radius:23px;padding:17px;margin-top:15px}
body[data-student-mode=true] #progressScores h3{font-size:15px}
body[data-student-mode=true] #aiReview{max-width:620px;margin:auto}
body[data-student-mode=true][data-student-page=aiReview] #aiPanel{padding:8px 0!important;background:none;border:0;box-shadow:none}
body[data-student-mode=true] .one-review-title{white-space:pre-line;font-size:33px!important;line-height:1.15;letter-spacing:-1.3px;color:#624b6e;font-weight:550;margin:10px 0 16px}
body[data-student-mode=true] #reviewBack{border:0!important;padding:2px 0!important;min-height:40px!important;font-size:11px!important;background:none!important;margin-bottom:0;color:#82718c!important}
body[data-student-mode=true] #aiJobState{font-size:12px;line-height:1.6;font-weight:500;margin:0 0 12px;color:#8c7b97;overflow-wrap:anywhere}
body[data-student-mode=true] .one-review-sources,body[data-student-mode=true] .one-review-info{border-top:1px solid var(--stroke);padding:4px 0}
body[data-student-mode=true] .one-review-sources>summary,body[data-student-mode=true] .one-review-info>summary{min-height:44px;padding:10px 0;font-size:12px;color:#7c6788;cursor:pointer}
body[data-student-mode=true] .one-review-sources img{max-height:65vh;object-fit:contain}
body[data-student-mode=true] #reviewProgress{font-size:11px;margin:10px 0;background:#f3edf7;border:0;border-radius:12px;padding:10px 12px;line-height:1.5}
body[data-student-mode=true] .one-review-hint{font-size:11px;color:#7c6d87;line-height:1.7;margin:13px 0 8px}
body[data-student-mode=true] .one-review-warning{display:flex;align-items:center;gap:10px;justify-content:space-between;background:#faf0e9;border:1px solid #f0dfd4;border-radius:14px;padding:8px 12px;margin:10px 0}
body[data-student-mode=true] .one-review-warning p{font-size:10px;line-height:1.5;margin:0;color:#8a5d47}
body[data-student-mode=true] .one-review-warning button{background:transparent!important;color:#8a5d47!important;padding:4px!important;font-size:10px!important;min-height:44px;white-space:nowrap}
body[data-student-mode=true] .one-review-pager{display:flex;gap:7px;align-items:center;flex-wrap:wrap;margin:10px 0 16px}
body[data-student-mode=true] .one-review-pager strong{flex-basis:100%;font-size:12px;color:#81678f;font-weight:550;margin-bottom:2px}
body[data-student-mode=true] .one-review-pager button{border:1px solid #e4d9ec!important;background:#fff!important;color:#7d608a!important;border-radius:13px;padding:10px 12px!important;min-height:44px;font-size:11px;font-weight:500!important;margin:0!important}
body[data-student-mode=true] #aiRows{display:block}
body[data-student-mode=true] #aiRows>.review-question[data-one-offscreen=true]{display:none!important}
body[data-student-mode=true] #aiRows>.review-question{background:#f0ebf7;border:1px solid #e3d9ed;border-radius:27px;padding:22px 19px;margin:0 0 18px;box-shadow:0 6px 0 -1px #dfd5e9;min-width:0}
body[data-student-mode=true] #aiRows>.review-question legend{font-size:12px;color:#8b7399;font-weight:500;padding:0 6px}
body[data-student-mode=true] #aiRows .answer-pair{gap:13px;margin:12px 0 20px}
body[data-student-mode=true] #aiRows .answer-pair label{background:#ffffff70;border:1px solid #dfd4e8;padding:13px 14px 8px;border-radius:16px;font-size:11px;color:#8b7b97;margin:0;min-width:0}
body[data-student-mode=true] #aiRows .answer-pair label:last-child{background:#fff;border-color:#fff}
body[data-student-mode=true] #aiRows .answer-pair input{background:transparent!important;border:0!important;box-shadow:none;font-size:30px!important;font-weight:500;color:#775483;min-height:65px;padding:8px 0!important;text-align:left;border-radius:0;line-height:1.3}
body[data-student-mode=true] #aiRows label:has([data-field=reviewed]){display:flex;align-items:center;gap:10px;min-height:48px;font-size:12px;color:#6f597c;line-height:1.6}
body[data-student-mode=true] #aiRows [data-field=reviewed]{width:22px;min-height:22px;flex:none;accent-color:#8c6b9d;margin:0}
body[data-student-mode=true] #aiRows .row-advanced{margin:10px 0 0;border-color:#ddcfe7}
body[data-student-mode=true] #aiRows .row-advanced summary{min-height:44px;font-size:11px;color:#8d749b;padding:11px 0}
body[data-student-mode=true] .answer-outcome{background:#eadfed;border-radius:13px;font-size:12px;color:#895574;margin:14px 0}
body[data-student-mode=true] .answer-outcome[data-outcome=correct]{background:#e5ede7;color:#4d7359}
body[data-student-mode=true] #aiConfirm{width:100%;border-radius:18px;background:#44354f;min-height:54px;font-size:14px}
body[data-student-mode=true] #aiCoverageReview{padding:18px;border-radius:22px;background:#fff;border:0;margin-top:20px}
body[data-student-mode=true] #aiReview[data-paper-only=true] #aiCoverageReview label:has(#aiPagesVerified),body[data-student-mode=true] #aiReview[data-paper-only=true] #aiCoverageReview label:has(#aiQuestionsVerified){display:none}
body[data-student-mode=true] #aiWarningSummary{border-radius:22px;background:#fffaf6;padding:16px;margin:22px 0}
body[data-student-mode=true] #aiWarningSummary h4{font-size:14px;line-height:1.6}
body[data-student-mode=true] #aiWarningSummary p{font-size:12px;line-height:1.8}
body[data-student-mode=true] #bottomNav{background:#fff;border-color:#ebe2f0;box-shadow:0 7px 25px #62427e0b;border-radius:24px}
body[data-student-mode=true] #bottomNav button{font-size:11px;font-weight:550!important}
body[data-student-mode=true] #bottomNav button[aria-current=page]{background:#eee4f3;color:#74517e}
body[data-student-mode=true] a:focus-visible,body[data-student-mode=true] button:focus-visible{outline:3px solid #9b688a;outline-offset:3px}
@media(max-width:600px){body[data-student-mode=true]>header{min-height:56px;padding:6px 18px}body[data-student-mode=true]>main{padding:15px 20px 28px!important}body[data-student-mode=true] #oneHome h2{font-size:35px}body[data-student-mode=true] .one-hero{min-height:250px}body[data-student-mode=true] .one-hero-copy{padding-top:155px}body[data-student-mode=true] .one-hero-copy h3{font-size:23px}body[data-student-mode=true] #studentFlowNav a{font-size:10px;letter-spacing:-.3px;padding:7px 3px}body[data-student-mode=true] #studentFlowNav{margin-bottom:16px}body[data-student-mode=true] #progressPanel>h2{font-size:13px}body[data-student-mode=true] .one-map-intro h3{font-size:30px}body[data-student-mode=true] .one-map-island{padding:0 13px}body[data-student-mode=true] .one-map-island>summary{gap:9px}body[data-student-mode=true] .one-map-copy strong{font-size:19px}body[data-student-mode=true] .one-map-copy>span{font-size:10px}body[data-student-mode=true] .one-map-state{font-size:9px}body[data-student-mode=true] #aiRows>.review-question{padding:19px 15px}body[data-student-mode=true] #aiRows .answer-pair label{padding:12px}body[data-student-mode=true] .one-review-title{font-size:30px!important}}
@media(max-width:350px){body[data-student-mode=true]>main{padding-left:15px!important;padding-right:15px!important}body[data-student-mode=true] #oneHome h2{font-size:32px}.one-sculpture>i{opacity:.9}body[data-student-mode=true] .one-map-copy strong{font-size:17px}body[data-student-mode=true] .one-map-index{width:25px;height:25px}body[data-student-mode=true] .one-map-state{white-space:normal;max-width:37px}}
@media(prefers-reduced-motion:no-preference){body[data-student-mode=true] .one-map-island[open]{animation:oneReveal .22s ease-out}@keyframes oneReveal{from{opacity:.6;transform:translateY(4px)}to{opacity:1;transform:none}}}
body[data-student-mode=true] .one-review-pager strong{flex:1;min-width:110px;line-height:1.6}
body[data-student-mode=true] .one-review-pager button{font-size:10px;padding:8px 10px!important}
body[data-student-mode=true] .one-review-navigation{display:flex;justify-content:space-between;gap:12px;margin:12px 0 17px}
body[data-student-mode=true] .one-review-navigation button{min-height:46px;background:#eee5f4;color:#74547f;border:1px solid #e0d3e8;border-radius:14px;font-size:12px;padding:11px 15px}
body[data-student-mode=true] #oneReviewTitle{scroll-margin-top:8px}
body[data-student-mode=true] #aiReviewStatus:empty{display:none}
body[data-student-mode=true] .one-review-warning{padding:4px 10px}
body[data-student-mode=true] .one-review-warning button{min-height:44px}
body[data-student-mode=true] #aiRows>.review-question{padding-top:16px;padding-bottom:16px}
body[data-student-mode=true] #aiRows .answer-pair{margin-top:6px;margin-bottom:12px}
body[data-student-mode=true] #aiRows .answer-outcome{padding:9px 12px;margin:8px 0}
body[data-student-mode=true] #aiRows [data-field=reviewed]{order:-1}
@media(prefers-reduced-motion:no-preference){body[data-student-mode=true] #aiRows>.review-question[data-one-offscreen=false]{animation:oneCardIn .2s ease-out}@keyframes oneCardIn{from{opacity:.55;transform:translateX(7px)}to{opacity:1;transform:none}}}

body[data-student-mode=true] .one-home-intro>span:first-child{min-width:0;overflow-wrap:anywhere}
body[data-student-mode=true] .one-map-copy small{overflow-wrap:anywhere}

/* ONE / white canvas extension: student pages only; existing events and fields remain. */
body[data-student-mode=true]{--canvas:#fff;--surface:#fff;--surface-soft:#f7f7f8;--stroke:#e8e6eb;--muted:#69636e;background:#fff}
body[data-student-mode=true]>main,body[data-student-mode=true] #workspace,body[data-student-mode=true] #workspace>article,body[data-student-mode=true] .flow-section{background:#fff}
body[data-student-mode=true]>header,body[data-student-mode=true] .legal-footer,body[data-student-mode=true] #studentFlowNav{background:#fff;backdrop-filter:none}
body[data-student-mode=true] .flow-section.area{max-width:760px;margin:0 auto 20px;border:0;border-radius:0;box-shadow:none;padding:12px 0 24px}
body[data-student-mode=true] .flow-section>h2,body[data-student-mode=true] #uploadStageContent>h2{font-size:30px;line-height:1.2;letter-spacing:-1.1px;font-weight:600;color:#3e3048;margin:12px 0 20px}
body[data-student-mode=true] .section-kicker{color:#786980;font-size:10px;letter-spacing:.12em}
body[data-student-mode=true] .page-hint,body[data-student-mode=true] .helper{font-size:13px;line-height:1.8;color:#69636e;background:none}
body[data-student-mode=true] .flow-section :is(input:not([type=checkbox]):not([type=radio]),select,textarea){border:1px solid #ddd8e2;border-radius:15px;background:#fff;color:#332d38;min-height:48px;padding:12px 14px;font:inherit;max-width:100%;width:100%}
body[data-student-mode=true] .flow-section label{font-size:13px;line-height:1.65;color:#5b5262}
body[data-student-mode=true] .flow-section :is(input[type=checkbox],input[type=radio]){accent-color:#82608e;width:21px;min-width:21px;min-height:21px}
body[data-student-mode=true] .flow-section button{min-height:46px;border-radius:15px;background:#44354f;color:#fff;font-size:13px;font-weight:550;line-height:1.6;white-space:normal}
body[data-student-mode=true] .flow-section button:disabled{background:#f1eff3;color:#746c7b;cursor:default}
body[data-student-mode=true] .flow-section :is(.secondary-action,.pagination button,#questionJump button){background:#f4f1f7;color:#72527f;border:1px solid #e5dfea}
body[data-student-mode=true] .flow-section :is(fieldset,details){min-width:0}
body[data-student-mode=true] .flow-section fieldset{border:1px solid #e6e1eb;border-radius:22px;background:#fff;padding:18px;margin:16px 0}
body[data-student-mode=true] .flow-section details:not(.one-map-island):not(.one-home-more){border:1px solid #e8e4ec;border-radius:19px;background:#fff;box-shadow:none;padding:6px 16px;margin:12px 0}
body[data-student-mode=true] .flow-section summary{min-height:46px;line-height:1.6;cursor:pointer;overflow-wrap:anywhere}
body[data-student-mode=true] :is(#conceptRows>.area,#questionThreads details,#resourceCards>article,#practiceSets>article,#recallQueue>article,#schoolCurriculum>.area){background:#fff;border:1px solid #e6e1eb;border-radius:24px;box-shadow:none;margin:14px 0}
body[data-student-mode=true] :is(#conceptPanel,#practicePanel,#questionInbox,#schoolPanel,#studentPanel,#resourcePanel,#studyHome,#personalAccessPanel) h3{font-size:19px;font-weight:600;line-height:1.4;letter-spacing:-.4px;color:#4c3b56}
body[data-student-mode=true] :is(.compact-search,.filter-grid,.question-tools){gap:12px;min-width:0}
body[data-student-mode=true] .compact-search{align-items:end}
body[data-student-mode=true] .compact-search label{min-width:0;flex:1}
body[data-student-mode=true] :is(.question-message,.question-answer){border-radius:19px;padding:17px;line-height:1.8}
body[data-student-mode=true] .question-message{background:#f8f7fa}
body[data-student-mode=true] .question-answer{background:#f0e8f5}
body[data-student-mode=true] .upload-quota{background:#f8f5fa;border:1px solid #e9dfef;border-radius:22px}
body[data-student-mode=true] .upload-quota[data-locked=true]{background:#f4f4f5;border-color:#d8d5dc}
body[data-student-mode=true] .upload-steps li{background:#f7f7f8;border-radius:16px}
body[data-student-mode=true] .page-queue img{border-radius:17px}
body[data-student-mode=true] :is(.profile-summary,.school-current,.setting-summary){border-radius:22px;background:#f8f7fa;border-color:#e8e2ed}
body[data-student-mode=true] .profile-initial{background:#eee5f4;color:#74517e;border-radius:22px}
body[data-student-mode=true] .flow-section a.inline-link{color:#72527f;border-color:#e6ddea;border-radius:14px;min-height:44px;line-height:1.6}
body[data-student-mode=true] :is(#studyActions>.study-action,#studyRecommendations>article){background:#fff;border:1px solid #e6e1eb;border-radius:24px}
body[data-student-mode=true] .progress-chart{background:#fff}
body:has(#login:not([hidden])){background:#fff}
body:has(#login:not([hidden])) #login{border-color:#e6e1eb;box-shadow:none;border-radius:28px}
body:has(#login:not([hidden])) #login button{border-radius:16px}
@media(max-width:600px){body[data-student-mode=true] .flow-section>h2,body[data-student-mode=true] #uploadStageContent>h2{font-size:28px}body[data-student-mode=true] .filter-grid{grid-template-columns:minmax(0,1fr)}body[data-student-mode=true] .question-tools{display:flex;flex-wrap:wrap}body[data-student-mode=true] .question-tools label{min-width:0;flex-basis:100%}body[data-student-mode=true] :is(#conceptRows>.area,#resourceCards>article){padding:18px}body[data-student-mode=true] .flow-section :is(input:not([type=checkbox]):not([type=radio]),select,textarea){font-size:16px}body[data-student-mode=true] .flow-section fieldset{padding:16px}}

body[data-student-mode=true] :is(h2,h3){word-break:keep-all;overflow-wrap:anywhere}
body:has(#login:not([hidden])) :is(header,.legal-footer){background:#fff}
body:has(#login:not([hidden])) #login :is(input:not([type=checkbox]),select){border-radius:15px;min-height:48px;border-color:#ddd8e2}
body:has(#login:not([hidden])) #login button:not(:disabled){background:#44354f;color:#fff;min-height:48px}
body:has(#login:not([hidden])) #login h1{color:#3e3048;letter-spacing:-1px;word-break:keep-all}

body:has(#login:not([hidden])) #login :is(#authLoginTab,#authSignupTab)[aria-pressed=false]{background:#fff;color:#72677b;border:1px solid #e6e1eb}
body:has(#login:not([hidden])) #login input:not([type=checkbox]){background:#fff}
body:has(#login:not([hidden])) #login #showPassword{background:#f3eff6;color:#72527f;border:1px solid #e6e1eb}

/* 이어 mobile language: approved home, answer review and map; no backend changes. */
body[data-student-mode=true] :is(#oneHome,#aiReview,#progressPanel,#practicePanel){--ieo-red:#786294;--ieo-ink:#232426;--ieo-muted:#62656a;--ieo-stroke:#e4e4e4;color:var(--ieo-ink)}
body[data-student-mode=true] #workspace>article{max-width:820px}
body[data-student-mode=true]>header{background:#fff;border-color:#eee}
body[data-student-mode=true] #studentFlowNav{background:#fff;border:0;border-bottom:1px solid #eee;border-radius:0;backdrop-filter:none;box-shadow:none;gap:4px}
body[data-student-mode=true] #studentFlowNav a{color:#62656a;font-size:12px;border-radius:0;min-height:44px}
body[data-student-mode=true] #studentFlowNav a[aria-current]{color:#68517f;background:transparent;border-bottom:2px solid #786294}
body[data-student-mode=true] #oneHome h2{color:#232426;font-size:34px;line-height:1.3;font-weight:700;letter-spacing:-1.4px}
body[data-student-mode=true] #oneHome h2 em{color:#786294}
body[data-student-mode=true] .one-home-intro{color:#62656a;font-size:12px;margin:12px 0 26px}
body[data-student-mode=true] .one-home-intro>span:last-child{font-size:10px;letter-spacing:1.2px}
body[data-student-mode=true] .one-hero{background:white;border:0;border-radius:0;border-top:1px solid #e4e4e4;border-bottom:1px solid #e4e4e4;min-height:0;padding:22px 0;overflow:visible}
body[data-student-mode=true] .one-hero-tag{position:static;color:#62656a;font-size:11px}
body[data-student-mode=true] .ieo-step{display:flex;gap:16px;align-items:center;padding:22px 0;color:#62656a;font-size:12px;line-height:1.7}
body[data-student-mode=true] .ieo-step>span:first-child{display:grid;place-items:center;border:1px solid #c8b7d5;color:#68517f;background:#f0ebf5;width:52px;height:52px;border-radius:50%;font-size:17px;flex:none}
body[data-student-mode=true] .one-hero-copy{padding:0}
body[data-student-mode=true] .one-hero-copy h3{color:#232426;font-size:23px;line-height:1.4;margin:0 0 12px;font-weight:650}
body[data-student-mode=true] .one-hero-copy p{font-size:14px;color:#62656a;line-height:1.8}
body[data-student-mode=true] :is(#oneHome,#progressPanel) .one-primary{background:#252629!important;border-radius:16px!important;color:white!important;min-height:56px;font-size:15px!important}
body[data-student-mode=true] .one-home-more>summary{color:#50545b}
body[data-student-mode=true] .one-review-title{color:#232426;font-size:32px!important;line-height:1.3;font-weight:700}
body[data-student-mode=true] #aiRows>.review-question{background:#fff;border:1px solid #e4e4e4;box-shadow:none;border-radius:18px;padding:20px 18px}
body[data-student-mode=true] #aiRows :is(legend,label){color:#50545b}
body[data-student-mode=true] #aiRows .answer-pair label{background:#f0ebf5;border:1px solid #d5c8e0;border-radius:14px;color:#68517f}
body[data-student-mode=true] #aiRows .answer-pair label:last-child{background:#fff;border-color:#ddd}
body[data-student-mode=true] #aiRows .answer-pair input{color:#232426!important;font-size:27px!important;min-height:54px}
body[data-student-mode=true] #aiRows .row-advanced summary,body[data-student-mode=true] .one-review-info>summary,body[data-student-mode=true] .one-review-sources>summary{color:#50545b;font-size:13px}
body[data-student-mode=true] #aiRows [data-field=reviewed]{accent-color:#786294}
body[data-student-mode=true] .one-review-pager strong,body[data-student-mode=true] #aiJobState{color:#62656a;font-size:12px}
body[data-student-mode=true] .one-review-pager button,body[data-student-mode=true] .one-review-navigation button{background:#fff!important;color:#50545b!important;border:1px solid #ddd!important;border-radius:12px;font-size:12px!important}
body[data-student-mode=true] .one-review-warning{background:#fff5e7;border-color:#efdfc5;border-radius:12px}
body[data-student-mode=true] .one-review-warning p,body[data-student-mode=true] .one-review-warning button{color:#805327!important;font-size:12px!important}
body[data-student-mode=true] #aiConfirm{background:#252629!important;border-radius:16px;min-height:56px}
body[data-student-mode=true] #aiConfirm:disabled{background:#e9e9e9!important;color:#62656a}
body[data-student-mode=true] #aiReview .answer-outcome{background:#f0ebf5;color:#68517f}
body[data-student-mode=true] #aiReview .answer-outcome[data-outcome=correct]{background:#eef5ec;color:#385b35}
body[data-student-mode=true] .one-map-intro h3{font-size:32px;color:#232426;line-height:1.3;font-weight:700}
body[data-student-mode=true] .one-map-intro :is(p,.one-eyebrow){color:#62656a}
body[data-student-mode=true] .one-map-island,body[data-student-mode=true] .one-map-island:first-child{background:#fff!important;box-shadow:none;border:0;border-bottom:1px solid #ddd;border-radius:0;padding:20px 0;margin:0}
body[data-student-mode=true] .one-map-path:before{display:none}
body[data-student-mode=true] .one-map-index{border:1px solid #d5c8e0;background:#f0ebf5;color:#68517f}
body[data-student-mode=true] .one-map-copy strong{color:#232426;font-size:21px;line-height:1.4}
body[data-student-mode=true] .one-map-copy :is(small,span),body[data-student-mode=true] .one-map-island p{color:#62656a;font-size:13px}
body[data-student-mode=true] .one-map-state{background:#f0ebf5;color:#68517f;font-size:12px}
body[data-student-mode=true] .ieo-relations{list-style:none;padding:0;margin:26px 0}
body[data-student-mode=true] .ieo-relations li{position:relative;padding:0 0 24px 25px;margin-left:7px;border-left:1px solid #dca7a0}
body[data-student-mode=true] .ieo-relations li:last-child{border-left:0;padding-bottom:0}
body[data-student-mode=true] .ieo-relations li:before{content:'';position:absolute;left:-5px;top:8px;border:1px solid #786294;background:#fff;width:9px;height:9px;border-radius:50%}
body[data-student-mode=true] .ieo-relations small{display:block;color:#62656a;font-size:12px}
body[data-student-mode=true] .ieo-relations strong{display:block;font-size:17px;font-weight:600;line-height:1.6}
body[data-student-mode=true] .one-map-actions{display:flex;flex-direction:column;align-items:stretch;gap:14px}
body[data-student-mode=true] .ieo-basis{background:white!important;border:0!important;border-top:1px solid #eee!important;border-radius:0!important;padding:4px 0!important}
body[data-student-mode=true] .one-map-island>summary{list-style:none;min-height:64px}
body[data-student-mode=true] #oneSourceSheet{background:white;color:#232426;width:calc(100% - 24px);max-width:680px;max-height:85svh;border:1px solid #ddd;border-radius:20px;padding:60px 22px 22px}
body[data-student-mode=true] #oneSourceSheet::backdrop{background:#15171c66}
body[data-student-mode=true] #oneSourceSheet h2{font-size:23px;margin-top:0}
body[data-student-mode=true] #oneSourceSheet img{max-width:100%;height:auto;max-height:65svh;object-fit:contain}
body[data-student-mode=true] .ieo-sheet-close{position:absolute;right:12px;top:10px;background:white;color:#232426;border:1px solid #ddd;min-height:44px;border-radius:12px}
body[data-student-mode=true] #ieoPracticeSteps{display:flex;gap:8px;flex-wrap:wrap;margin:22px 0}
body[data-student-mode=true] #ieoPracticeSteps button{flex:1;background:white;border:1px solid #ddd;color:#62656a;min-height:44px;padding:9px;font-size:12px}
body[data-student-mode=true] #ieoPracticeSteps [aria-pressed=true]{border-color:#786294;background:#f0ebf5;color:#68517f}
body[data-student-mode=true] #practiceRun>article.study-action{border-radius:0;border:0;border-top:1px solid #ddd;padding:20px 0;background:white;box-shadow:none}
body[data-student-mode=true] #practicePanel :is(button[type=submit],.study-action>button:last-child){background:#252629;color:white}
body[data-student-mode=true] #practicePanel .practice-option{border-radius:12px;min-height:48px;background:#fff;border:1px solid #ddd;padding:12px}
body[data-student-mode=true] #practicePanel .practice-option:has(input:checked){background:#f0ebf5;border-color:#786294}
body[data-student-mode=true] :is(#oneHome,#aiReview,#progressPanel,#practicePanel) :is(button,a,input,summary,select,textarea):focus-visible{outline:3px solid #3d68be;outline-offset:3px}
@media(max-width:600px){body[data-student-mode=true]>main{padding-left:24px!important;padding-right:24px!important}body[data-student-mode=true] #studentFlowNav{display:flex;flex-wrap:wrap;justify-content:space-between}body[data-student-mode=true] #studentFlowNav a{font-size:12px;flex:1 1 60px;text-align:center}body[data-student-mode=true] .one-hero-copy{padding:0}body[data-student-mode=true] .one-map-copy strong{font-size:19px}body[data-student-mode=true] .one-map-island>summary{flex-wrap:wrap}body[data-student-mode=true] .one-map-state{margin-left:auto}}
@media(prefers-reduced-motion:reduce){body[data-student-mode=true] :is(#oneHome,#aiReview,#progressPanel,#practicePanel) *{animation:none!important;transition:none!important;scroll-behavior:auto!important}}

body[data-student-mode=true] #studentFlowNav{width:100%;display:grid;grid-template-columns:repeat(5,minmax(0,1fr));padding:4px 0}body[data-student-mode=true] #studentFlowNav a{min-width:0;white-space:normal;line-height:1.5}body[data-student-mode=true] #bottomNav button[aria-current=page]{background:#f0ebf5;color:#68517f}

/* Keep the active problem plain even when the existing activity decorator adds classes. */
body[data-student-mode=true] #practicePanel #practiceRun>article.study-action{border-radius:0!important;border:0!important;border-top:1px solid #ddd!important;padding:24px 0!important;background:#fff!important;box-shadow:none!important}
body[data-student-mode=true] #practicePanel :is(h3,h4){color:#232426}
body[data-student-mode=true] #practicePanel #practiceRun>button{background:#fff;color:#50545b;border:1px solid #ddd}
body[data-student-mode=true] #practicePanel #practiceRun>article>button{background:#252629;color:#fff}
body[data-student-mode=true] #practicePanel #ieoPracticeSteps button{border-radius:12px;background:#fff;color:#62656a;border:1px solid #ddd}
body[data-student-mode=true] #practicePanel #ieoPracticeSteps [aria-pressed=true]{background:#f0ebf5;border-color:#786294;color:#68517f}

body[data-student-mode=true] #oneLearningMap .one-map-index{background:#f0ebf5!important;color:#68517f!important;border:1px solid #d5c8e0}body[data-student-mode=true] #oneLearningMap .one-note{font-size:12px;color:#62656a}

/* Confirmed-record subject timeline and wrong-type overview. */
body[data-student-mode=true]{--brand:#b82e47;--brand-pressed:#97243a;--brand-soft:#fff0f2;--stroke:#e9dfe2;--ink:#303035;--muted:#727078;background:#fff}
body[data-student-mode=true] #studentFlowNav a[aria-current]{background:#f0ebf5;color:#68517f}
body[data-student-mode=true] #oneHome h2 em{color:#786294}
body[data-student-mode=true] .one-primary{background:#68517f!important}
.graph-comparison{background:#fff;padding:20px 0;margin:14px 0 30px;border-top:1px solid #eee;border-bottom:1px solid #eee}
.graph-comparison h3{font-size:27px;letter-spacing:-1px;margin:0 0 14px!important}
.graph-bar-row{margin:20px 0}.graph-bar-row strong,.graph-bar-row span{display:block;font-size:14px}.graph-bar-track{height:14px;background:#f0ebf5;border-radius:10px;margin-top:9px;overflow:hidden}.graph-bar-track i{display:block;height:100%;background:#786294}.graph-comparison :focus-visible{outline:3px solid #786294;outline-offset:3px}



.graph-comparison .graph-open-wrong{min-height:44px;min-width:44px;padding:8px 12px;background:#f0ebf5;color:#59466e;border:1px solid #d8cce2;border-radius:12px;font-weight:700;cursor:pointer}
body[data-student-mode=true] #practiceRun .practice-availability{display:block;padding:15px 17px;border-radius:16px;background:#f5f5f5;color:#232426;font-size:14px;font-weight:650;line-height:1.6}
body[data-student-mode=true] #practiceRun .practice-availability[data-empty=true]{background:#fff3f0;color:#8c322d}
body[data-student-mode=true] #practiceOriginGuide[data-review-status=review_required]{border:1px solid #e4e4e4;border-left:4px solid #786294;background:#fff;border-radius:16px;padding:18px}
body[data-student-mode=true] #practiceOriginGuide[data-review-status=review_required] h4{margin-top:0;color:#232426}
body[data-student-mode=true] #practicePolicy{margin:10px 0 18px;padding:0;border:0;background:transparent}
body[data-student-mode=true] #practicePolicy>summary{display:inline-flex;align-items:center;min-height:44px;color:#62656a;font-size:13px;font-weight:600;cursor:pointer}
body[data-student-mode=true] #practicePolicy>p{max-width:65ch;margin:4px 0 14px;color:#62656a;font-size:13px;line-height:1.7}

/* Account entry: compact, calm, one clear action; native-sized touch targets. */
body:has(#login:not([hidden])){background:#fff}
body:has(#login:not([hidden])) main{max-width:760px;padding-top:clamp(22px,7vh,72px)!important}
body:has(#login:not([hidden])) #login{max-width:520px;margin:0 auto;padding:clamp(24px,5vw,42px)!important;border:1px solid #eee9ed;border-radius:30px;box-shadow:0 18px 60px rgba(57,35,45,.06)}
body:has(#login:not([hidden])) #login .eyebrow{color:#ab3042;letter-spacing:.12em;font-size:11px;font-weight:800}
body:has(#login:not([hidden])) #login h1{font-size:clamp(28px,6vw,38px);line-height:1.18;margin:14px 0 8px;color:#241b23}
body:has(#login:not([hidden])) #authIntro{font-size:14px;color:#69626b;line-height:1.5;margin-bottom:24px}
body:has(#login:not([hidden])) .auth-tabs{padding:4px;border:1px solid #ede8ed;background:#f7f5f7;border-radius:16px}
body:has(#login:not([hidden])) .auth-tabs button{min-height:46px;font-size:14px;font-weight:700;border:0!important;border-radius:12px!important}
body:has(#login:not([hidden])) .auth-tabs button[aria-pressed=true]{background:#fff;color:#8f2038;box-shadow:0 2px 9px rgba(43,27,39,.08)}
body:has(#login:not([hidden])) #authForm label{font-size:13px;font-weight:700;color:#302930}
body:has(#login:not([hidden])) #authForm input:not([type=checkbox]){min-height:52px;font-size:16px;border:1px solid #e2dce1;border-radius:14px}
body:has(#login:not([hidden])) #authSubmit{min-height:52px;border-radius:14px;background:#ae2d47;color:#fff;font-size:16px;font-weight:750;box-shadow:none}
body:has(#login:not([hidden])) #authBack{background:transparent;color:#6e5f69;border:0;box-shadow:none}
.legal-choices{min-width:0}
.legal-choices .legal-item{display:flex!important;align-items:flex-start;gap:12px;min-width:0;padding:12px 0;margin:0!important;border-bottom:1px solid #efebef;line-height:1.4!important;font-size:13px!important;font-weight:650!important}
.legal-choices .legal-item:last-of-type{border-bottom:0}
.legal-choices .legal-item input[type=checkbox]{appearance:auto;flex:0 0 20px;width:20px;height:20px;min-width:20px;margin:0!important;accent-color:#ad3048}
.legal-choices .legal-item span{display:flex;align-items:center;flex-wrap:wrap;gap:4px 7px;min-width:0;overflow-wrap:anywhere;word-break:keep-all}
.legal-choices .legal-item em{font-style:normal;font-size:10px;color:#9d2841;background:#fff1f3;padding:2px 6px;border-radius:6px;white-space:nowrap}
.legal-choices .legal-item a{font-size:11px;color:#66606b;text-decoration:underline;white-space:nowrap;margin-left:auto}
body:has(#login:not([hidden])) #authLegalStep{border:0;background:#fff;padding:0;margin:16px 0}
body:has(#login:not([hidden])) #authLegalStep>p{color:#716b72;font-size:12px;margin:6px 0 12px}
body:has(#login:not([hidden])) .account-summary{background:#f8f5f7;color:#685d66;font-size:12px}
@media(max-width:600px){body:has(#login:not([hidden])) main{padding:16px 16px 112px!important}body:has(#login:not([hidden])) #login{border:0;border-radius:0;padding:16px 4px!important;box-shadow:none}body:has(#login:not([hidden])) .legal-footer{height:auto!important;min-height:44px!important}}

body:has(#login:not([hidden])) #login .auth-tabs button[aria-pressed=true]:not(:disabled){background:#fff;color:#9d2841;box-shadow:0 2px 9px rgba(43,27,39,.08)}
body:has(#login:not([hidden])) #login #authSubmit:not(:disabled){background:#ae2d47;color:#fff}
body:has(#login:not([hidden])) #login #authBack:not(:disabled){background:transparent;color:#6e5f69;border:0;box-shadow:none;text-decoration:underline;text-underline-offset:3px}

/* Character artwork remains decorative and never covers account actions. */
body:has(#login:not([hidden])) #login .auth-hero{display:grid;grid-template-columns:minmax(0,1fr) clamp(112px,32vw,158px);align-items:center;gap:8px;min-height:174px}
body:has(#login:not([hidden])) #login .auth-hero-copy{min-width:0}
body:has(#login:not([hidden])) #login .auth-hero-copy .eyebrow{margin-top:0}
body:has(#login:not([hidden])) #login .auth-hero-copy h1{overflow-wrap:normal;word-break:keep-all}
body:has(#login:not([hidden])) #login .auth-hero-copy #authIntro{margin-bottom:0}
body:has(#login:not([hidden])) #login .auth-mascot{align-self:center;width:100%;aspect-ratio:1;pointer-events:none}
body:has(#login:not([hidden])) #login .auth-mascot img{display:block;width:100%;height:100%;object-fit:contain}
body:has(#login:not([hidden])) #login .auth-mascot img.auth-mascot-signup{display:none}
body:has(#login:not([hidden])) #login:has(#authSignupTab[aria-pressed=true]) .auth-mascot img.auth-mascot-login{display:none}
body:has(#login:not([hidden])) #login:has(#authSignupTab[aria-pressed=true]) .auth-mascot img.auth-mascot-signup{display:block}
body:has(#login:not([hidden])) #login .auth-tabs{margin-top:14px}
@media(max-width:360px){body:has(#login:not([hidden])) #login .auth-hero{grid-template-columns:minmax(0,1fr) 106px;gap:4px}body:has(#login:not([hidden])) #login .auth-hero-copy h1{font-size:26px}}

/* One school-supply companion per student feature section; headings reserve the space. */
:is(#studyHome,#aiPanel,#conceptPanel,#progressPanel,#practicePanel)>h2{display:flex;align-items:center;justify-content:space-between;gap:12px;min-height:84px;word-break:keep-all}
:is(#studyHome,#aiPanel,#conceptPanel,#progressPanel,#practicePanel)>h2::after{content:"";display:block;flex:0 0 78px;width:78px;height:78px;background-position:center;background-repeat:no-repeat;background-size:contain;pointer-events:none}
#studyHome>h2::after{background-image:url('/brand/crayon-3d.png?v=3')}
#aiPanel>h2::after{background-image:url('/brand/mechanical-pencil-3d.png?v=3')}
#conceptPanel>h2::after{background-image:url('/brand/ballpoint-3d.png?v=3')}
#progressPanel>h2::after{background-image:url('/brand/colored-pencil-3d.png?v=3')}
#practicePanel>h2::after{background-image:url('/brand/eraser-3d.png?v=3')}
@media(max-width:360px){:is(#studyHome,#aiPanel,#conceptPanel,#progressPanel,#practicePanel)>h2::after{flex-basis:64px;width:64px;height:64px}}

/* Subject hub v1.3: latest backend and review flow stay unchanged. */
body[data-student-mode=true] #oneHome{max-width:480px;margin:0 auto;padding:8px 0 24px}
body[data-student-mode=true] #oneHome .one-home-intro{display:flex;justify-content:space-between;gap:12px;color:#717177;font-size:12px;font-weight:700;letter-spacing:.04em}
body[data-student-mode=true] #oneHome .one-hero{background:#252629;color:#fff;border:0;border-radius:26px;padding:24px;min-height:0;margin:16px 0 20px}
body[data-student-mode=true] #oneHome .one-hero-tag{color:#f6aaaa;font-size:12px;font-weight:800}
body[data-student-mode=true] #oneHome .one-hero-copy{padding:32px 0 12px}
body[data-student-mode=true] #oneHome .one-hero-copy h2{color:#fff;font-size:29px;line-height:1.22;margin:0 0 10px;white-space:normal}
body[data-student-mode=true] #oneHome .one-hero-copy p{color:#e5e5e7;font-size:14px;line-height:1.5}
body[data-student-mode=true] #oneHomePrimary{background:#d43e4f!important;color:#fff!important;border-radius:16px!important;min-height:50px;width:100%}
body[data-student-mode=true] .one-subject-shelf{margin-top:26px}
body[data-student-mode=true] .one-subject-title{font-size:20px;color:#232426;margin:0 0 4px}
body[data-student-mode=true] .one-subject-hint{font-size:13px;color:#6c6d73;margin:0 0 14px}
body[data-student-mode=true] .one-subject-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}
body[data-student-mode=true] .one-subject-card{display:flex;flex-direction:column;align-items:flex-start;text-align:left;position:relative;gap:10px;min-width:0;min-height:128px;padding:15px;background:#f7f7f8;border:1px solid #e8e8ea;border-radius:19px;color:#252629}
body[data-student-mode=true] .one-subject-card:hover{border-color:#c93a4b}
body[data-student-mode=true] .one-subject-icon{display:grid;place-items:center;width:36px;height:36px;border-radius:12px;background:#f1dde0;color:#a22c3d;font-size:16px;font-weight:800}
body[data-student-mode=true] .one-subject-copy{display:flex;flex-direction:column;gap:3px;min-width:0}
body[data-student-mode=true] .one-subject-copy strong{font-size:18px}
body[data-student-mode=true] .one-subject-copy small{font-size:12px;color:#6c6d73;line-height:1.4}
body[data-student-mode=true] .one-subject-arrow{position:absolute;right:15px;top:15px;color:#a22c3d}
body[data-student-mode=true] .one-subject-add{display:flex;align-items:center;justify-content:center;min-height:128px;border:1px dashed #c7c7ca;border-radius:19px;color:#56565c;font-weight:700;font-size:13px;text-decoration:none}
body[data-student-mode=true] .one-home-links{display:flex;gap:10px;margin-top:18px}
body[data-student-mode=true] .one-home-links a{display:grid;place-items:center;flex:1;min-height:49px;background:#fff;border:1px solid #dcdde0;border-radius:15px;color:#222;text-decoration:none;font-weight:700}
body[data-student-mode=true] .one-back-subject{background:none;border:0;padding:6px 0;color:#56565b}
body[data-student-mode=true] .one-selected-subject{font-size:23px;color:#252629;margin:4px 0 16px}
body[data-student-mode=true] #oneLearningMap .one-map-heading{white-space:normal;color:#252629}
body[data-student-mode=true] [data-subject][hidden]{display:none!important}
@media(max-width:360px){body[data-student-mode=true] .one-subject-card{min-height:118px;padding:12px}body[data-student-mode=true] #oneHome .one-hero{padding:18px}body[data-student-mode=true] #oneHome .one-hero-copy h2{font-size:25px}}


body[data-student-mode=true] #studentFlowNav{grid-template-columns:repeat(2,minmax(0,1fr))!important}
/* One named companion per student page; the existing heading art is replaced. */
:is(#studyHome,#aiPanel,#conceptPanel,#progressPanel,#practicePanel)>h2::after{display:none!important}
body:not([data-student-mode=true]) .student-mascot{display:none}
body[data-student-mode=true] .student-mascot{display:flex;align-items:center;gap:12px;margin:0 0 15px;padding:8px 12px;border:1px solid #eee8ea;border-radius:18px;background:#fff9fa}
body[data-student-mode=true] .student-mascot img{width:60px;height:60px;object-fit:contain;flex:none}
body[data-student-mode=true] .student-mascot figcaption{display:flex;flex-direction:column;gap:3px;font-size:12px;line-height:1.45;color:#66636a}
body[data-student-mode=true] .student-mascot figcaption strong{font-size:14px;color:#a72e48}
body[data-student-mode=true][data-student-page=aiReview] #aiPanel>.student-mascot{display:none}

body[data-student-mode=true] .photo-quality-summary:not([hidden]){margin:8px 0;padding:9px 12px;border-radius:12px;background:#f0ebf5;color:#823c2b;font-size:12px;line-height:1.45}
body[data-student-mode=true] .photo-quality-summary p{margin:0;overflow-wrap:anywhere}

/* Account pages keep consent links in the document flow, clear of the primary action. */
@media(max-width:600px){
 body:has(#login:not([hidden])) main{padding-bottom:28px!important}
 body:has(#login:not([hidden])) .legal-footer{position:static;display:flex;justify-content:center;gap:10px 18px;padding:20px 16px;min-height:0}
 body:has(#login:not([hidden])) .legal-footer a:nth-child(n+3){display:none}
}

/* Returning members can finish required consent without a cramped footer. */
@media(max-width:600px){
 body:has(#legalGate:not([hidden])) main{padding-bottom:28px!important}
 body:has(#legalGate:not([hidden])) .legal-footer{position:static;display:flex;justify-content:center;gap:10px 18px;padding:20px 16px;min-height:0}
 body:has(#legalGate:not([hidden])) .legal-footer a:nth-child(n+3){display:none}
 body:has(#legalGate:not([hidden])) #legalGateForm>button{width:100%;min-height:48px}
}
