/* Learner surfaces only. This stylesheet is deliberately absent from conference.html. */
html[data-learner-theme]{--lx-bg:#f8f4ee;--lx-surface:#fffdfa;--lx-raised:#f2ece5;--lx-ink:#18253b;--lx-muted:#536176;--lx-border:#cec7c1;--lx-accent:#8a1f39;--lx-good:#20604c;--lx-focus:#8a1f39;--ink:var(--lx-ink);--muted:var(--lx-muted);--paper:var(--lx-surface);--line:var(--lx-border);--paper-ink:var(--lx-ink);--paper-muted:var(--lx-muted)}
html[data-learner-theme=dark]{--lx-bg:#101b2c;--lx-surface:#1b2a40;--lx-raised:#263750;--lx-ink:#f7f4ef;--lx-muted:#c1ccdd;--lx-border:#718099;--lx-accent:#ffb1c4;--lx-good:#a0e4c1;--lx-focus:#f3d598;--diag-navy:var(--lx-ink);--diag-muted:var(--lx-muted);--diag-border:var(--lx-border);--diag-burgundy:var(--lx-accent)}
html[data-learner-theme] body{background:var(--lx-bg);color:var(--lx-ink);padding-bottom:80px;line-height:1.8}
html[data-learner-theme] :is(input,textarea,select){background:var(--lx-surface);color:var(--lx-ink);border-color:var(--lx-border);caret-color:var(--lx-accent);font-size:max(16px,1em)}
html[data-learner-theme] :is(input,textarea)::placeholder{color:var(--lx-muted);opacity:1}
html[data-learner-theme] :is(input,textarea):autofill{-webkit-text-fill-color:var(--lx-ink);box-shadow:0 0 0 1000px var(--lx-surface) inset}
html[data-learner-theme] :is(a,button,input,textarea,select,summary):focus-visible{outline:3px solid var(--lx-focus);outline-offset:4px}
.learnerThemeToggle{position:fixed;inset-inline-end:18px;bottom:18px;z-index:80;border:1px solid var(--lx-border);border-radius:99px;padding:10px 18px;min-height:46px;background:var(--lx-surface);color:var(--lx-ink);font:600 14px/1.5 system-ui,Tahoma,sans-serif;box-shadow:0 6px 24px #0002;cursor:pointer}
html[data-learner-theme] :is(.v9-top,.en-top,.top,.courseTop,.demoTop){background:var(--lx-surface);color:var(--lx-ink);border-color:var(--lx-border)}
html[data-learner-theme] :is(.v9-app,.en-main,.wrap,.courseWrap,.demoWrap){max-width:1180px;margin-inline:auto}
html[data-learner-theme] :is(.loginCard,.loginForm,.formCard,.heroSide,.simpleProfile,.resultCard,.week,.skill,.badge,.actionCard:not(.primary),.diagHeader,.diagCard,.diagScoreCard,.stageCard,.qualityExample,.qualityJurisdictions,.hero-card,.course-card,.progressReport,.caseAnswerStep,.paper,.resultMetric,.taskCard,.reviewCard){background:var(--lx-surface);color:var(--lx-ink);border-color:var(--lx-border)}
html[data-learner-theme] :is(.prompt,.feedback,.scope,.progressSkill,.legalCitation,.legalStudyArticle,.caseFacts,.caseReview>div,.nextAdvice,.diagNotice,.note,.demoPill,.demoGhost,.topbtn,.topBtn,.tipCard,.weekIcon,.skillIcon,.profilePill,.progressTag,.empty,.readBox,.recallEvidence,.answerSaving){background:var(--lx-raised);color:var(--lx-ink);border-color:var(--lx-border)}
html[data-learner-theme] :is(.loginForm p,.field label,.rememberRow,.loginForm small,.formCard>p,.formCard label small,.caseFacts p,.caseHelp,.caseHint,.caseIntro,.caseGuidance,.caseReview p,.progressReport small,.diagScoreCard small,.qualityCaption,.qualityLead,.stageCard p,.stageCard small,.demoHeroCopy p){color:var(--lx-muted)}
html[data-learner-theme] :is(.brand b,.brandLearn,.en-brand b,.v9-brand b,.sectionHead h2,.formCard h2,.loginForm h2,.qualityHeroTitle,.qualitySlide h2,.stageCard h2,.simpleProfile h3,.simpleSkillCard b,.simpleSkillCard strong,.week b,.skill b,.badge b,.progressReport h2,.progressSkill h3,.progressSkill strong,.caseAnswerStep h3,.caseReview b,.taskType,.diagEyebrow,.diagScoreLabel,.diagScoreValue,.caseStepCount,.caseEyebrow){color:var(--lx-ink)}
html[data-learner-theme] :is(.loginForm a,.formCard a,.diagLinks a,.heading a,.past summary,.allSessions summary,.qualityHeroSubtitle,.caseStatus){color:var(--lx-accent)}
html[data-learner-theme] :is(.btn.secondary,.btn.soft-outline,.secondary,.passwordToggle,.caseBack,.diagLinks a,.session,.levelCard,.choice,.caseStep,.lang a){background:var(--lx-surface);color:var(--lx-ink);border:1px solid var(--lx-border)}
html[data-learner-theme] :is(.btn.primary,.actionCard.primary,.caseNext,#serverNext,#beginLegalQuestions,#adaptiveSubmit,.stageCard button:not(.secondary),.momentDownload){background:#8a1f39;color:#fff;border-color:#8a1f39}
html[data-learner-theme] :is(.choice:has(input:checked),.caseStep.active,.session.active,.levelCard.complete){background:var(--lx-raised);color:var(--lx-accent);border-color:var(--lx-accent)}
html[data-learner-theme] :is(.completionState,.caseStep.filled,.criterionCorrect){color:var(--lx-good)}
html[data-learner-theme=dark] :is([role=alert],.error,#status.error){color:#ffb9ca;background:#3d273b}
html[data-learner-theme=dark] :is(.lexHomeLang,.qualityCarouselControls button,.lang-switch,.diagScoreTrack,.skillMeter,.momentJourney span,.caseMainQuestion){background:#263750;color:#f7f4ef;border-color:#718099}
html[data-learner-theme=dark] :is(.brandTop,.brandTop b,.brandHero,.brandHero h1,.loginBrand p,.loginBrand small,.brandPoints,.heroMain,.heroMain h1,.heroMain p,.heroMain .eyebrow,.intro,.intro h1,.intro p){color:#fff}
html[data-learner-theme] .loginBrand{background:linear-gradient(0deg,#111d31 12%,#111d3199 65%,#111d3155),url('conference-media/student-law.webp') center/cover;min-height:660px;padding:32px;color:#fff}
html[data-learner-theme] .loginBrand .brandHero{margin-top:120px}
html[data-learner-theme] .brandHero h1{font-size:clamp(30px,3vw,44px);line-height:1.45;color:#fff}
html[data-learner-theme] .brandHero p{color:#f4efe7;font-size:16px}
html[data-learner-theme] .brandPoints{display:grid;gap:8px;margin-top:20px}.brandPoint{font-size:14px}
html[data-learner-theme] .loginForm{padding:clamp(24px,4vw,42px)}
html[data-learner-theme] .loginForm>p{font-size:15px;line-height:1.85}
.learnerJourney{display:grid;grid-template-columns:repeat(3,1fr);gap:12px;margin:24px 0}.learnerJourney>div{border:1px solid var(--lx-border);border-radius:18px;padding:18px;background:var(--lx-surface)}.learnerJourney b{color:var(--lx-accent);display:block;font-size:22px}.learnerJourney strong{display:block;font-size:17px}.learnerJourney p{margin:5px 0;color:var(--lx-muted);font-size:14px}
.learnerWelcome{padding:24px;border:1px solid var(--lx-border);border-radius:22px;background:var(--lx-surface);display:flex;align-items:center;justify-content:space-between;gap:22px;margin:20px 0}.learnerWelcome h2{margin:0;font-size:26px}.learnerWelcome p{margin:6px 0;color:var(--lx-muted)}.learnerWelcome a{display:inline-flex;padding:12px 24px;border-radius:12px;background:#8a1f39;color:#fff;text-decoration:none;font-weight:750;white-space:nowrap}
html[data-learner-theme] #studentTrainingApp{min-width:0}html[data-learner-theme] body:has(#studentTrainingApp)>main{background:var(--lx-surface);border:1px solid var(--lx-border);max-width:1100px}
html[data-learner-theme] .stage:has(#adaptiveEssay){background:var(--lx-surface)}html[data-learner-theme] .prompt{font-size:1.08rem;line-height:2;border-inline-start:4px solid #c7a66a;padding:22px}
.criterionFeedback{list-style:none;padding:0;display:grid;gap:12px}.criterionFeedback li{padding:16px;border:1px solid var(--lx-border);border-radius:14px;background:var(--lx-surface)}.criterionFeedback blockquote{margin:10px 0;padding:8px 14px;border-inline-start:3px solid var(--lx-accent);color:var(--lx-muted)}.criterionFeedback p{margin:6px 0}
html[data-learner-theme] .legalStudyArticle blockquote{font-size:1.15rem;line-height:2.1;color:var(--lx-ink)}html[data-learner-theme] .legalStudyArticle figcaption{border-color:var(--lx-border);color:var(--lx-accent)}
html[data-learner-theme] .momentHero{background:var(--lx-raised);color:var(--lx-ink)}html[data-learner-theme] :is(.momentHero h2,.momentHero p,.momentKicker){color:var(--lx-ink)}
@media(max-width:760px){html[data-learner-theme] .loginBrand{min-height:320px;padding:24px}.loginBrand .brandTop{display:none}html[data-learner-theme] .loginBrand .brandHero{margin-top:60px}html[data-learner-theme] .brandPoints{display:none}.learnerJourney{grid-template-columns:1fr}.learnerWelcome{flex-direction:column;align-items:stretch}.learnerWelcome a{justify-content:center}.learnerThemeToggle{bottom:12px;inset-inline-end:12px}.criterionFeedback li{padding:12px}}
@media(prefers-reduced-motion:reduce){html[data-learner-theme] *{scroll-behavior:auto!important;transition:none!important;animation:none!important}}
@media print{.learnerThemeToggle{display:none}}

html[data-learner-theme][lang=en]{direction:ltr}

html[data-learner-theme] .loginBrand{background-position:76% center}
html[data-learner-theme] .loginForm .actions{display:flex;flex-wrap:wrap;gap:10px}
html[data-learner-theme] .loginForm .actions>.btn{flex:1 1 45%;font-size:14px}
html[data-learner-theme] .loginForm .actions>.primary{flex-basis:100%}
html[data-learner-theme] :is(.overline,.section-overline){color:var(--lx-accent)}
@media(max-width:900px){html[data-learner-theme] .loginCard{grid-template-columns:1fr}html[data-learner-theme] .loginBrand{min-height:280px;padding:24px;background-position:76% 30%}html[data-learner-theme] .loginBrand .brandHero{margin-top:60px}html[data-learner-theme] .brandPoints{display:none}html[data-learner-theme] .brandHero h1{font-size:30px}.loginBrand .brandTop{display:none}}

html[data-learner-theme] #showcaseApp :is(.stageCard p,.stageCard small,.stageProgressText,.stageProgressText bdi,.demoFooter,.cycleLead,.cycleSmall){color:var(--lx-muted)}
html[data-learner-theme] #showcaseApp :is(.legalPaper,.cycleSmall,.cyclePath,.planCard,.metric){background:var(--lx-raised);color:var(--lx-ink);border-color:var(--lx-border)}
html[data-learner-theme] #showcaseApp :is(.legalPaper .txt,.legalPaper small,.metric b,.metric span,.planCard h3,.demoBrand b){color:var(--lx-ink)}
html[data-learner-theme] #showcaseApp :is(input,textarea){background:var(--lx-surface);color:var(--lx-ink);border-color:var(--lx-border)}
html[data-learner-theme] #showcaseApp .demoEyebrow{background:var(--lx-raised);color:var(--lx-ink);border-color:var(--lx-border)}
html[data-learner-theme] #showcaseApp .demoLang{background:var(--lx-surface);color:var(--lx-ink);border-color:var(--lx-border)}
html[data-learner-theme] #showcaseApp .demoLang[aria-current=page]{background:#8a1f39;color:white}

html[data-learner-theme] :is(.stageCard p,.taskCard p,.entry-intro p,.pilot-course-copy p,.brand small,.v9-brand small,.en-brand small,.demoBrand small){color:var(--lx-muted)!important}
html[data-learner-theme] :is(.qualityMethod,.cycleSmall,.cyclePath,.diagHeader>button,.stageCard details,.simpleSkillCard,.snapshotCard){background:var(--lx-surface);color:var(--lx-ink);border-color:var(--lx-border)}
html[data-learner-theme] :is(.qualityMethod h2,.qualityJurisdictions h2,.qualityMethod p,.qualityJurisdictions p,.qualityExample p,.qualityExample span,.qualityExample small){color:var(--lx-ink)}
html[data-learner-theme] .diagCard button:not(.secondary){background:#8a1f39;color:#fff}
html[data-learner-theme] :is(.rubricEvidence,.cycleLead,.cycleSmall,.cyclePath,.stageCard summary){color:var(--lx-ink)}
html[data-learner-theme] .loginBrand :is(.en-brand small,.brandTop small){color:#fff!important}

html[data-learner-theme] :is(.legalStudyEyebrow,.legalStudy a,.legalCitation a,.caseEyebrow){color:var(--lx-accent)}
html[data-learner-theme=dark] .momentRing.memory .ringValue{stroke:#ffb1c4}
html[data-learner-theme=dark] .momentRing.meaning .ringValue{stroke:#85d6cc}

html[data-learner-theme] .loginBrand h1{font-family:inherit}
@media(max-width:900px){.loginBrand>.en-brand{display:none}}

/* Preserve the conference promotion's original palette in both themes; geometry stays in conference-promo.css. */
html[data-learner-theme] .wsqHomeFeature{background:#f9f4ef}
html[data-learner-theme] .wsqEventCTA{background:#fffdfb;color:#111d31;border-color:#e5d9d9;border-top-color:#8a1f39}
html[data-learner-theme] .wsqEventCopy strong{color:#111d31}
html[data-learner-theme] .wsqParticipantName{color:#142b5f}
html[data-learner-theme] .wsqEventName{color:#8a1f39}
html[data-learner-theme] .wsqParticipantName>span{color:#8f1d3f}
html[data-learner-theme] .wsqEventCopy small{color:#586174}
html[data-learner-theme] .wsqEventAction{background:#8a1f39;color:#fff}
.wsqParticipant,.wsqEventAction{text-decoration:none}
html[data-learner-theme] #showcaseApp :is(.skillCard,.criterion,.deliveryState){background:var(--lx-surface);color:var(--lx-ink);border-color:var(--lx-border)}
html[data-learner-theme] #showcaseApp :is(.skillCard h3,.skillCard .skillValue,.criterion>div span){color:var(--lx-ink)}
html[data-learner-theme] #showcaseApp :is(.skillCard p,.criterion small){color:var(--lx-muted)!important}
html[data-learner-theme] #showcaseApp .criterion blockquote{background:var(--lx-raised);color:var(--lx-ink)}
html[data-learner-theme] #showcaseApp .resultExplanation :is(p,h3,small){color:#fff!important}
html[data-learner-theme] #showcaseApp .skillTrack{background:var(--lx-raised)}
html[data-learner-theme] :is(.criterion.supported,.criterionCorrect){border-inline-start:4px solid var(--lx-good)}
html[data-learner-theme] :is(.criterion.supported,.criterionCorrect) :is(b,small,p,blockquote){color:var(--lx-good)!important}
html[data-learner-theme]{--lx-wrong:#a71d36;--lx-partial:#79540c}
html[data-learner-theme=dark]{--lx-wrong:#ff9da9;--lx-partial:#f3d598}
html[data-learner-theme] :is(.criterion.contradicted,.criterion.conflicting,.criterionIncorrect){border-inline-start:4px solid var(--lx-wrong)}
html[data-learner-theme] :is(.criterion.contradicted,.criterion.conflicting,.criterionIncorrect) :is(b,small,p,blockquote){color:var(--lx-wrong)!important}
html[data-learner-theme] .criterionPartial :is(b,p,blockquote){color:var(--lx-partial)!important}
.learnerBrandHome{display:inline-flex;align-items:center;gap:inherit;color:inherit;text-decoration:none;max-width:100%;min-width:0}
.learnerLogoOrbit{display:inline-flex;position:relative;flex:none;align-items:center;justify-content:center;isolation:isolate;border-radius:50%;background:radial-gradient(ellipse,#ffffffed 0%,#ffffffc4 48%,#ffffff20 72%);box-shadow:0 0 16px #ffffff60}
.learnerLogoOrbit>img{display:block;max-width:100%;object-fit:contain;filter:drop-shadow(0 0 4px #fff9)}
.learnerLogoOrbit:before{content:'';position:absolute;inset:-3px;border:1px solid #ffffffdd;border-radius:50%;pointer-events:none;box-shadow:0 0 4px #fff8}
.learnerLogoOrbit:after{content:'';position:absolute;inset:-3px;border-radius:50%;background:radial-gradient(circle at 50% 1%,#fff 0 3px,#efafc4 4px,transparent 5px);animation:learnerMoon 12s linear infinite;pointer-events:none}
@keyframes learnerMoon{to{transform:rotate(360deg)}}
/* Keep the original header flex placement after giving branding a home link. */
.v9-topin>.learnerBrandHome,.en-topin>.learnerBrandHome{margin-left:auto;margin-right:0;max-width:calc(100% - 106px)}
@media(prefers-reduced-motion:reduce){.learnerLogoOrbit:after{animation:none}}


html[data-learner-theme] #showcaseApp .criterion.supported{border-inline-start:4px solid var(--lx-good)}
html[data-learner-theme] #showcaseApp .criterion.supported :is(b,small,blockquote){color:var(--lx-good)!important}
html[data-learner-theme] #showcaseApp :is(.criterion.contradicted,.criterion.conflicting){border-inline-start:4px solid var(--lx-wrong)}
html[data-learner-theme] #showcaseApp :is(.criterion.contradicted,.criterion.conflicting) :is(b,small,blockquote){color:var(--lx-wrong)!important}
html[data-learner-theme=dark] .demoWrap>p[role=status]{background:var(--lx-raised)!important;color:var(--lx-ink)!important;border-color:var(--lx-border)!important}

html[data-learner-theme] #beginLegalQuestions{padding:14px 24px;border-radius:12px;font:700 16px/1.6 inherit;cursor:pointer}

html[data-learner-theme] .progressSkill strong.assessmentMissing{grid-row:2;display:block;font-size:1rem;line-height:1.8;padding:22px 12px;margin:12px 0;border:1px dashed var(--lx-border);border-radius:12px;color:var(--lx-muted)}
html[data-learner-theme] .assessmentRecovery{padding:20px;margin:16px 0;border:1px solid var(--lx-border);border-radius:14px;background:var(--lx-raised);color:var(--lx-ink)}
html[data-learner-theme] .assessmentRecovery p{margin:0 0 12px}
html[data-learner-theme] .learnerLogoOrbit>img{background:transparent!important;border-radius:50%}
html[data-learner-theme] :is(.mark,.v9-mark,.demoLogo,.diagLogo):has(.learnerLogoOrbit){background:transparent!important;box-shadow:none;border-color:transparent}

/* Article numbers keep the same distinctive identity in every learning stage. */
html[data-learner-theme]{--lx-article-ink:#634008;--lx-article-bg:#f7e6b7;--lx-article-border:#b58a32}
html[data-learner-theme=dark]{--lx-article-ink:#ffe4aa;--lx-article-bg:#49381d;--lx-article-border:#c6a56c}
html[data-learner-theme] strong.legalArticleNumber{display:inline;font-weight:850;color:var(--lx-article-ink)!important;background:var(--lx-article-bg);border:1px solid var(--lx-article-border);border-radius:.4em;padding:.04em .32em;box-decoration-break:clone;-webkit-box-decoration-break:clone;line-height:inherit}

/* Calm correction colors: reserve rose for labels; read long explanations in neutral ink. */
html[data-learner-theme=dark]{--lx-wrong:#e4aab2}
html[data-learner-theme=dark] :is(.criterion.contradicted,.criterion.conflicting,.criterionIncorrect){border-inline-start-color:#a16c79;background:linear-gradient(100deg,#302b3b33,transparent),var(--lx-surface)}
html[data-learner-theme=dark] :is(.criterion.contradicted,.criterion.conflicting,.criterionIncorrect) :is(p,small){color:#dce4ed!important}
html[data-learner-theme=dark] :is(.criterion.contradicted,.criterion.conflicting,.criterionIncorrect) blockquote{color:#c1ccdd!important;border-inline-start-color:#a16c79}
html[data-learner-theme=dark] .criterionPartial :is(p,blockquote){color:#dce4ed!important}
.examSummary{padding:14px 18px;border:1px solid var(--lx-border);border-radius:12px;color:var(--lx-ink);background:var(--lx-raised)}

/* The issued credentials must use one consistent palette, including their nested text and actions. */
html[data-learner-theme] .conferenceAccount{background:var(--lx-raised);color:var(--lx-ink);border-color:var(--lx-border)}
html[data-learner-theme] .conferenceAccount :is(.studentGreeting,p){color:var(--lx-ink)}
html[data-learner-theme] .conferenceAccount .studentGreeting span{color:var(--lx-accent)}
html[data-learner-theme] .conferenceAccount strong{background:var(--lx-surface);color:var(--lx-ink);border-color:var(--lx-border)}
html[data-learner-theme] .conferenceAccount small{color:var(--lx-muted)}
html[data-learner-theme] .conferenceAccount .accountButtons button{background:var(--lx-surface);color:var(--lx-ink);border-color:var(--lx-border)}
html[data-learner-theme] .conferenceAccount .accountButtons .startBtn{background:#8f1d3f;color:#fff;border-color:#8f1d3f}
html[data-learner-theme] #status.ok{color:var(--lx-good)}

html[data-learner-theme] .top>.brand{color:var(--lx-ink)}
html[data-learner-theme] .top>.brand em,html[data-learner-theme] .top>.langs a{color:var(--lx-accent)}


/* Oct 2026 learner readability: clearly spaced legal questions, no decorative tiny text. */
html[data-learner-theme] #studentTrainingApp .stage{font-size:1.055rem;line-height:1.95}
html[data-learner-theme] #studentTrainingApp :is(.prompt,.clearQuestionPrompt){font-size:clamp(1.1rem,1.45vw,1.19rem);line-height:2.05;font-weight:500;overflow-wrap:anywhere}
html[data-learner-theme] #studentTrainingApp :is(#adaptiveEssay,#legalCasePart){font-size:1.125rem;line-height:1.95;min-height:170px}
html[data-learner-theme] #studentTrainingApp :is(.stage h1,.stage h2){line-height:1.65}
html[data-learner-theme] .questionComparison{background:var(--lx-surface);border:1px solid var(--lx-border);border-inline-start:4px solid #b58129;border-radius:14px;padding:14px 16px;margin:16px 0}
html[data-learner-theme] .questionComparison>strong{display:block;color:var(--lx-ink);font-size:1.02rem;margin-bottom:8px}
html[data-learner-theme] .questionComparison p{display:flex;align-items:flex-start;gap:10px;line-height:1.85;padding:9px 10px;margin:7px 0;background:var(--lx-raised);border-radius:10px;color:var(--lx-ink);white-space:normal}
html[data-learner-theme] .comparisonNumber{display:inline-flex;flex:none;align-items:center;justify-content:center;width:27px;height:27px;border-radius:50%;background:#8a1f39;color:white;font-weight:800;font-size:.9rem}
html[data-learner-theme] .questionFollowup{margin-top:16px;font-weight:650;color:var(--lx-ink)}
/* Notebook-style article bookmarks: soft paper tabs, readable in either learner theme. */
html[data-learner-theme]{
 --lx-tab-paper:#f3e2c7;--lx-tab-ink:#49361d;--lx-tab-edge:#bca17b;--lx-tab-spine:#826278;
}
html[data-learner-theme=dark]{
 --lx-tab-paper:#34445c;--lx-tab-ink:#ffeac3;--lx-tab-edge:#9daec5;--lx-tab-spine:#e0b981;
}
html[data-learner-theme] .legalNumberRail{
 position:sticky;top:8px;z-index:12;display:flex;gap:10px;align-items:center;
 margin:0 0 20px;padding:8px 12px;
 background:var(--lx-surface);color:var(--lx-ink);
 border:1px solid var(--lx-border);border-inline-start:3px solid var(--lx-tab-spine);
 border-radius:11px;box-shadow:0 2px 9px #0000000d;max-width:100%;overflow:hidden;
}
html[data-learner-theme] .legalNumberRailCaption{
 font-size:.78rem;line-height:1.5;font-weight:650;color:var(--lx-muted);white-space:nowrap;
}
html[data-learner-theme] .legalNumberRailNumbers{
 display:flex;align-items:center;gap:7px;overflow:auto;min-width:0;scrollbar-width:thin;
}
html[data-learner-theme] .legalNumberChip{
 display:flex;flex-direction:column;justify-content:center;align-items:center;gap:0;
 white-space:nowrap;flex:none;min-width:62px;min-height:59px;
 padding:5px 11px 11px;
 background:var(--lx-tab-paper);color:var(--lx-tab-ink);
 border:1px solid var(--lx-tab-edge);border-top:3px solid var(--lx-tab-spine);
 border-radius:7px 7px 2px 2px;
 clip-path:polygon(0 0,100% 0,100% calc(100% - 6px),50% 100%,0 calc(100% - 6px));
 filter:drop-shadow(0 2px 2px #00000012);
}
html[data-learner-theme] .legalNumberChip small{
 font-size:.69rem;line-height:1.3;letter-spacing:.015em;color:var(--lx-tab-ink);opacity:.83;
}
html[data-learner-theme] .legalNumberChip strong{
 font-size:1.35rem;line-height:1.45;font-weight:750;color:var(--lx-tab-ink);
 font-variant-numeric:tabular-nums;
}
@media(min-width:1540px){
 html[data-learner-theme] .legalNumberRail{
  position:fixed;inset-inline-start:18px;top:clamp(115px,17vh,175px);width:112px;z-index:14;
  flex-direction:column;align-items:stretch;gap:7px;padding:10px 8px;
  max-height:calc(100dvh - 160px);overflow:auto;
 }
 html[data-learner-theme] .legalNumberRailCaption{text-align:center;white-space:normal;font-size:.72rem}
 html[data-learner-theme] .legalNumberRailNumbers{flex-direction:column;align-items:center;gap:8px;overflow:visible}
 html[data-learner-theme] .legalNumberChip{width:79px}
}
@media(max-width:600px){
 html[data-learner-theme] .legalNumberRail{top:4px;padding:5px 8px;gap:8px;border-radius:10px}
 html[data-learner-theme] .legalNumberRailCaption{font-size:.72rem}
 html[data-learner-theme] .legalNumberChip{min-width:51px;min-height:50px;padding:4px 8px 10px}
 html[data-learner-theme] .legalNumberChip strong{font-size:1.2rem}
 html[data-learner-theme] .legalNumberChip small{font-size:.64rem}
 html[data-learner-theme] .questionComparison{padding:10px}
 html[data-learner-theme] #studentTrainingApp .stage{font-size:1rem}
}
@media(prefers-reduced-motion:reduce){html[data-learner-theme] .legalNumberRail{scroll-behavior:auto}}
/* Contrast repair on dark diagnostic introduction and next-step links. */
html[data-learner-theme=dark] body:has(#officialDiagnostic) :is(.diagNotice,.diagFooter,.diagBrandCopy small,.diagCard p,.diagCard legend,.diagProgressHeader,.diagCard .choice,.diagHeader>p,.diagHeader small){color:var(--lx-ink)}
html[data-learner-theme=dark] body:has(#officialDiagnostic) :is(.diagNotice,.diagCard,.diagHeader,.diagLinks a,.diagCard .choice){background:var(--lx-surface);border-color:var(--lx-border)}
html[data-learner-theme=dark] body:has(#officialDiagnostic) :is(.diagHeader .diagLinks a,.diagFooter,.diagCard h2,.diagCard label,.diagCard fieldset legend){color:#f7f4ef}
html[data-learner-theme=dark] body:has(#officialDiagnostic) :is(.diagNotice,.diagCard p,.diagCard small,.diagCard .diagProgressHeader){color:#d9e4f2}
html[data-learner-theme=dark] body:has(#officialDiagnostic) .diagCard .choice:has(input:checked){background:var(--lx-raised);border-color:var(--lx-accent);color:#fff}
html[data-learner-theme=dark] body:has(#officialDiagnostic) .diagCard :is(a,.actionCard){color:#fff;background:#8a1f39}
html[data-learner-theme=dark] body:has(#officialDiagnostic) .diagCard :is(button,#serverNext){color:white}
html[data-learner-theme=dark] body:has(#studentTrainingApp) :is(.learnerWelcome p,.nextAdvice,.stage>p,.stage h1,.stage h2,.heading p){color:var(--lx-ink)}
@media(prefers-reduced-motion:reduce){html[data-learner-theme] .legalNumberRail{scroll-behavior:auto}}

/* Accessible question reading sizes in both diagnostic and guided legal practice. */
html[data-learner-theme] #officialDiagnostic>h2{font-size:clamp(1.2rem,2.3vw,1.48rem);line-height:1.8}
html[data-learner-theme] #officialDiagnostic :is(.choice,fieldset legend){font-size:clamp(1.05rem,1.35vw,1.13rem);line-height:1.8}
html[data-learner-theme] #officialDiagnostic textarea{font-size:1.12rem;line-height:1.95}
html[data-learner-theme] .legalCaseGuide :is(.caseHelp,.caseFacts p,.caseMainQuestion h3){font-size:clamp(1.06rem,1.35vw,1.15rem);line-height:1.95}
html[data-learner-theme=dark] #officialDiagnostic :is(p,small,.diagProgressHeader,.diagProgressHeader span,fieldset legend){color:#e6ecf5}
html[data-learner-theme=dark] #officialDiagnostic :is(h2,h3,label,.choice,.diagScoreLabel){color:#f7f4ef}
html[data-learner-theme=dark] :is(.stageCard p,.stageCard small,.stageCard .next,.stageCard a,.stage .taskType,.progressReport>p){color:var(--lx-ink)}

/* Showcase/diagnostic entry: fix pale-on-pale introductory labels in dark mode. */
html[data-learner-theme=dark] :is(.demoIntro .demoEyebrow,.demoIntro .stageProgressText,.demoIntro .demoIntroLead,.demoStage .stageCard>p,.stageCard .demoEyebrow,.studentHeroSide h3,.studentHeroSide p){color:#f1f5fb!important}
html[data-learner-theme=dark] :is(.demoStage .stageCard,.studentHeroSide){background:var(--lx-surface);border-color:var(--lx-border)}
html[data-learner-theme=dark] :is(.demoStage .stageCard a,.demoStage .stageCard small){color:#f1f5fb}

/* LexLearn learner visual system · 2026-10-28
   Consistent brand, accessible type and quiet surfaces. Scores, stages and
   educational logic are untouched. */
html[data-learner-theme] {
  --lx-bg:#F9F4EF;
  --lx-surface:#fffdfb;
  --lx-raised:#f2ebe5;
  --lx-ink:#18243a;
  --lx-muted:#526075;
  --lx-border:#d1c6c0;
  --lx-accent:#8A1F39;
  --lx-focus:#8A1F39;
}
html[data-learner-theme=dark] {
  --lx-bg:#111D31;
  --lx-surface:#1b2a40;
  --lx-raised:#283a54;
  --lx-ink:#F9F4EF;
  --lx-muted:#ccd6e5;
  --lx-border:#70839d;
  --lx-accent:#f0b6c7;
  --lx-focus:#f0b6c7;
}
html[data-learner-theme] body {font-size:max(16px,1rem);line-height:1.8}
html[data-learner-theme] :is(.diagHeader,.diagCard,.diagScoreCard,.resultCard,.stageCard,.progressReport,.caseAnswerStep,.taskCard,.reviewCard,.qualityExample,.formCard) {
  border-radius:18px;
  box-shadow:0 10px 28px #111d310b;
}
html[data-learner-theme=dark] :is(.diagHeader,.diagCard,.diagScoreCard,.resultCard,.stageCard,.progressReport,.caseAnswerStep,.taskCard,.reviewCard,.qualityExample,.formCard) {
  box-shadow:0 10px 28px #0003;
}
html[data-learner-theme] :is(.stageCard,.resultCard,.progressReport,.diagCard,.caseAnswerStep,.taskCard,.reviewCard) {
  min-width:0;
  overflow-wrap:anywhere;
}
html[data-learner-theme] :is(.diagCard,.stageCard,.caseAnswerStep,.taskCard) :is(h2,h3) {line-height:1.5}
html[data-learner-theme] :is(.diagCard,.caseFacts,.caseMainQuestion,.reviewCard) :is(p,label,legend) {
  line-height:1.9;
}
html[data-learner-theme] :is(button,.btn,.actionCard,.caseNext,.caseBack,#serverNext,#beginLegalQuestions) {
  min-height:44px;
}
html[data-learner-theme] :is(input:not([type=checkbox]):not([type=radio]),select,textarea) {font-size:max(16px,1em)}
html[data-learner-theme] :is(progress,input[type=range]) {accent-color:#8A1F39}
html[data-learner-theme=dark] :is(progress,input[type=range]) {accent-color:#f0b6c7}
html[data-learner-theme] :is(.diagProgressTrack,.progressLine,.skillMeter) {border-radius:999px;overflow:hidden}
html[data-learner-theme] :is(.diagCard,.stageCard,.resultCard,.caseAnswerStep) :is(a,button,input,textarea,select):focus-visible {
  outline:3px solid var(--lx-focus);
  outline-offset:3px;
}
@media(max-width:600px){
  html[data-learner-theme] :is(.diagCard,.stageCard,.resultCard,.caseAnswerStep,.taskCard) {border-radius:15px}
}
@media print{
  html[data-learner-theme] :is(.diagCard,.stageCard,.resultCard,.caseAnswerStep,.taskCard) {box-shadow:none}
}
