/* RC326-U27: scoped UX repairs and visual discovery. No arbitrary theme-wide overrides. */
.sk-auth-shell .sk-auth-card .sk-auth-language{display:flex!important;align-items:center!important;justify-content:flex-end!important;max-width:100%;min-width:0;padding:10px 12px;margin:0 0 14px;border:1px solid #d9e4f0;border-radius:14px;background:#f5f8ff}
.sk-auth-shell .sk-auth-card .sk-auth-language label{display:grid!important;grid-template-columns:auto minmax(175px,260px);gap:12px;align-items:center;justify-content:end;width:100%;min-width:0;margin:0!important;color:#304460!important;line-height:1.35}
.sk-auth-shell .sk-auth-card .sk-auth-language label span{display:block!important;position:static!important;max-width:none!important;min-width:max-content!important;width:auto!important;white-space:nowrap!important;overflow:visible!important;line-height:1.4!important;letter-spacing:normal!important}
.sk-auth-shell .sk-auth-card .sk-auth-language select{display:block;box-sizing:border-box;width:100%;min-width:0;min-height:46px;max-width:100%;border-radius:12px;background:#fff!important;color:#13233d!important;font-size:15px!important;line-height:1.3}
.sk-auth-shell .sk-auth-card .sk-auth-brand{flex-wrap:wrap;gap:12px}
.sk-auth-shell .sk-auth-card .sk-auth-copy h1{color:#142742!important;line-height:1.16!important}
.sk-auth-shell .sk-auth-card .sk-auth-copy p,.sk-auth-shell .sk-auth-card .sk-auth-brand small{color:#536681!important}
@media(max-width:560px){.sk-auth-shell .sk-auth-card .sk-auth-language label{grid-template-columns:1fr;gap:6px;justify-content:stretch}.sk-auth-shell .sk-auth-card .sk-auth-language{padding:9px}.sk-auth-shell .sk-auth-card .sk-auth-language select{min-height:48px}}
/* The legacy atlasses remain fully functional; only source-backed swipe cards are new. */
.sk27-story{--sk27-ink:#152742;--sk27-muted:#40526e;color:var(--sk27-ink);border-radius:21px;border:1px solid #cedaf0;background:linear-gradient(165deg,#f6f7ff,#eaf9ff);margin:18px 16px 24px;padding:17px 0 16px;box-shadow:0 15px 40px #172b5014}
.sk27-story *{box-sizing:border-box}.sk27-story-head{padding:0 20px 14px;display:flex;justify-content:space-between;align-items:start;gap:15px}
.sk27-story-head h4{color:#1b2d53!important;font-size:clamp(19px,2.7vw,25px)!important;margin:4px 0!important;line-height:1.25}
.sk27-story-head p{color:#435777!important;margin:3px 0;font-size:13px;line-height:1.55}
.sk27-kicker{color:#6237bd!important;font-weight:900;font-size:11px;letter-spacing:.085em}
.sk27-count{background:#fff;color:#243a62;border:1px solid #c7d7f2;border-radius:99px;padding:7px 11px;font-size:12px;font-weight:850;white-space:nowrap}
.sk27-rail{display:flex;gap:14px;overflow-x:auto;scroll-snap-type:x mandatory;overscroll-behavior-inline:contain;scrollbar-width:thin;padding:4px 20px 14px;scroll-padding-inline:20px;outline-offset:3px}
.sk27-card{scroll-snap-align:start;flex:0 0 min(100%,420px);min-height:310px;border-radius:21px;border:1px solid #abc1f4;padding:19px 20px;display:flex;flex-direction:column;justify-content:space-between;gap:13px;box-shadow:0 8px 20px #1a2c4b16;color:#17294c;background:linear-gradient(140deg,#d7e9ff,#e9deff)}
.sk27-tone-1{background:linear-gradient(140deg,#ffdde1,#ffeeca)}.sk27-tone-2{background:linear-gradient(140deg,#d3fff0,#dff5ff)}.sk27-tone-3{background:linear-gradient(140deg,#ffe2ff,#e5e3ff)}.sk27-tone-4{background:linear-gradient(140deg,#fff3ce,#fbe4d9)}.sk27-tone-5{background:linear-gradient(140deg,#c9e9ff,#e1fcd7)}
.sk27-card-top,.sk27-card-foot{display:flex;align-items:center;justify-content:space-between;gap:10px}
.sk27-art{font-size:55px;line-height:1.2;filter:drop-shadow(0 5px 3px #17385a20);user-select:none}
.sk27-card-step{color:#31415e;background:#ffffffad;border:1px solid #ffffffa8;border-radius:40px;padding:6px 9px;font-size:11px;font-weight:800}
.sk27-card-body h5{color:#142544!important;font-size:clamp(20px,3vw,25px)!important;line-height:1.25!important;margin:5px 0!important;overflow-wrap:anywhere}
.sk27-card-body p{color:#243d62!important;font-size:clamp(14px,1.7vw,16px)!important;line-height:1.58!important;overflow-wrap:anywhere;margin:8px 0 0!important}
.sk27-card-foot{font-size:12px;color:#4b326d;font-weight:800}
.sk27-story :is(button){font:inherit;cursor:pointer;touch-action:manipulation}
.sk27-card-foot button,.sk27-controls button{min-height:44px;min-width:44px;border:1px solid #8669c8;border-radius:12px;background:#fff;color:#432c82;font-weight:800;padding:8px 14px}
.sk27-controls{padding:3px 20px 0;display:flex;gap:12px;justify-content:space-between;align-items:center}
.sk27-controls span{font-size:11px;color:#536481;text-align:center}.sk27-controls button:disabled{opacity:.55;cursor:not-allowed}
.sk27-story button:focus-visible,.sk27-rail:focus-visible{outline:3px solid #7344d8;outline-offset:3px}
:is(html.lessonsky-dark body,body.lessonsky-dark) .sk27-story{background:#142842;border-color:#375774}
:is(html.lessonsky-dark body,body.lessonsky-dark) .sk27-story-head :is(h4,p),:is(html.lessonsky-dark body,body.lessonsky-dark) .sk27-controls span{color:#e6f1ff!important}
@media(max-width:560px){.sk27-story{margin:15px 0;padding:14px 0}.sk27-story-head{padding:0 13px 12px}.sk27-rail{padding:4px 13px 14px;gap:11px;scroll-padding-inline:13px}.sk27-card{flex-basis:min(100%,calc(100vw - 45px));min-height:340px;padding:17px}.sk27-controls{padding:0 13px}.sk27-controls span{display:none}}
@media(prefers-reduced-motion:reduce){.sk27-story *{scroll-behavior:auto!important;animation:none!important;transition:none!important}}
@media(forced-colors:active){.sk27-story,.sk27-card,.sk27-card-foot button,.sk27-controls button{forced-color-adjust:auto;border:1px solid CanvasText;background:Canvas;color:CanvasText}}
/* Contrast patch for LessonSky-owned landing feature, not for an unrelated WordPress theme. */
.sk117-home-features:not(.lessonsky-dark) :is(h2,h3){color:#10243e!important;opacity:1!important}
.sk117-home-features:not(.lessonsky-dark) :is(p,small){color:#344d6b!important;opacity:1!important}
:is(html.lessonsky-dark body,body.lessonsky-dark) .sk117-home-features :is(h2,h3,p,small){color:#eef4ff!important;opacity:1!important}

/* U27: student level reuses the persisted evidence-only gamification snapshot. */
.sk27-level-ribbon{display:grid;grid-template-columns:minmax(0,1fr) minmax(160px,230px);align-items:center;gap:14px;padding:16px 19px;border:1px solid #bcb1ed;border-radius:18px;margin:12px 0 18px;background:linear-gradient(110deg,#eae7ff,#e3f5ff);color:#162746;box-shadow:0 7px 20px #232d6414}
.sk27-level-eyebrow{display:block;color:#583db1!important;font-weight:850;font-size:10px;letter-spacing:.08em}
.sk27-level-ribbon strong{display:block;color:#192957!important;margin:5px 0;font-size:clamp(19px,2.6vw,23px);line-height:1.25}
.sk27-level-ribbon p{margin:3px 0!important;color:#40567a!important;font-size:12px;line-height:1.5}
.sk27-level-right{display:grid;gap:9px;align-items:center}
.sk27-level-right a{display:inline-block;text-align:right;color:#4731a1!important;font-size:13px;font-weight:850;text-decoration:underline}
.sk27-level-track{width:100%;height:11px;border-radius:99px;background:#c4c4ee;overflow:hidden}
.sk27-level-track>span{display:block;height:100%;background:linear-gradient(90deg,#6354ed,#22a4ca);border-radius:inherit}
:is(html.lessonsky-dark body,body.lessonsky-dark) .sk27-level-ribbon{background:linear-gradient(110deg,#242c57,#143e56);border-color:#5464a0}
:is(html.lessonsky-dark body,body.lessonsky-dark) .sk27-level-ribbon :is(strong,p,.sk27-level-eyebrow,a){color:#eef4ff!important}
@media(max-width:640px){.sk27-level-ribbon{grid-template-columns:1fr;gap:10px}.sk27-level-right a{text-align:left}}
