/* LessonSky RC114 — accessible contrast pairs, focus and compact mobile content. No outbound assets. */
/* Light: pale background + navy foreground; dark: slate background + pale foreground. */
html:not(.lessonsky-dark) body :is(.sk103-placement,.sk-learn-library-shell,.sk-habit-recovery) :is(.sk-empty,.sk-placeholder,.sk-notice,.sk-hint-box){background:#eef4fd!important;color:#1c3856!important;border-color:#a9c0d9!important}
html.lessonsky-dark body :is(.sk103-placement,.sk-learn-library-shell,.sk-habit-recovery) :is(.sk-empty,.sk-placeholder,.sk-notice,.sk-hint-box){background:#22354d!important;color:#edf5ff!important;border-color:#577391!important}
/* Secondary text keeps full opacity without dimming status icons or decorative badges. */
html:not(.lessonsky-dark) body :is(.sk103-placement,.sk-learn-library-shell,.sk-habit-recovery) :is(.sk-help,.sk-description,.sk-muted,.hint,figcaption){color:#354e69!important;opacity:1!important}
html.lessonsky-dark body :is(.sk103-placement,.sk-learn-library-shell,.sk-habit-recovery) :is(.sk-help,.sk-description,.sk-muted,.hint,figcaption){color:#d0e0f1!important;opacity:1!important}
/* Table row alternate shade and focus readability in guidance on both backgrounds. */
html:not(.lessonsky-dark) body .sk103-placement :is(.sk103-overflow,.sk103-search){color:#1c3856}
html.lessonsky-dark body .sk103-placement :is(.sk103-overflow,.sk103-search){color:#edf5ff}
body :is(.sk103-placement,.sk-learn-library-shell,.sk-habit-recovery,.sk-profile-center) :is(a,button,input,select,textarea,[role="tab"],[role="button"]):focus-visible{outline-width:3px!important;outline-style:solid!important;outline-offset:3px!important}
html:not(.lessonsky-dark) body :is(.sk103-placement,.sk-learn-library-shell,.sk-habit-recovery,.sk-profile-center) :is(a,button,input,select,textarea,[role="tab"],[role="button"]):focus-visible{outline-color:#144882!important}
html.lessonsky-dark body :is(.sk103-placement,.sk-learn-library-shell,.sk-habit-recovery,.sk-profile-center) :is(a,button,input,select,textarea,[role="tab"],[role="button"]):focus-visible{outline-color:#b5dcff!important}
/* Preserve fixed navigation in portrait; prevent clipped actions and text on small devices. */
@media(max-width:760px){
 body :is(.sk103-placement,.sk-learn-library-shell,.sk-habit-recovery,.sk-profile-center){min-width:0;max-width:100%;box-sizing:border-box}
 body :is(.sk103-placement,.sk-learn-library-shell,.sk-habit-recovery,.sk-profile-center) :is(.sk-card,.sk-panel,.sk-lesson-card,.sk-habit-card){min-width:0;max-width:100%;box-sizing:border-box}
 body :is(.sk103-placement,.sk-learn-library-shell,.sk-habit-recovery,.sk-profile-center) :is(h1,h2,h3,h4,p,summary,label){overflow-wrap:break-word;word-break:normal}
 body :is(.sk103-placement,.sk-learn-library-shell,.sk-habit-recovery,.sk-profile-center) :is(button,.sk-btn){max-width:100%;white-space:normal}
 body:is(.lessonsky-android-app,.lessonsky-huawei-app,.lessonsky-ios-app) .sk-mobile-nav :is(a,button){touch-action:manipulation}
}
/* Smaller landscape WebView: allow the page to scroll without overlapping a form control. */
@media(max-height:480px) and (orientation:landscape){
 body:is(.lessonsky-android-app,.lessonsky-huawei-app,.lessonsky-ios-app):not(.lessonsky-assessment-document){scroll-padding-bottom:calc(var(--sk-mobile-nav-h,76px) + 16px)}
 body:is(.lessonsky-android-app,.lessonsky-huawei-app,.lessonsky-ios-app) :is(input,textarea,select){scroll-margin-bottom:calc(var(--sk-mobile-nav-h,76px) + 16px)}
}
@media(prefers-reduced-motion:reduce){body :is(.sk103-placement,.sk-learn-library-shell,.sk-habit-recovery) :is(.sk-card,.sk-panel,button){transition-duration:0.01ms!important}}
@media(forced-colors:active){body :is(.sk103-placement,.sk-learn-library-shell,.sk-habit-recovery) :is(.sk-empty,.sk-placeholder,.sk-notice,.sk-hint-box){background:Canvas!important;color:CanvasText!important;border-color:CanvasText!important}}
