/* SLH 2.0 R2: desktop/tablet learning shell (PREVIEW until Nitin OKs). Same colours/fonts as the site. */
.s2-prog{position:absolute;left:0;right:0;bottom:0;height:3px;pointer-events:none;overflow:hidden}
.s2-prog i{display:block;height:100%;background:var(--acc,#e0a526);transform-origin:0 50%;transform:scaleX(0)}
.s2-course,.s2-toc{display:none}
@media (min-width:1180px){
 html.s2-on main.s2-grid{display:grid!important;grid-template-columns:220px minmax(0,1fr) 210px;column-gap:28px;max-width:1500px;margin:0 auto;padding:0 20px;align-items:start}
 html.s2-on main.s2-grid>*{grid-column:2;min-width:0}
 html.s2-on main.s2-grid>.s2-course{grid-column:1;grid-row:1/span 40}
 html.s2-on main.s2-grid>.s2-toc{grid-column:3;grid-row:1/span 40}
 html.s2-on main.s2-grid>article.lrn{max-width:780px;width:100%;margin-left:auto;margin-right:auto}
 .s2-course,.s2-toc{display:block;position:sticky;top:84px;max-height:calc(100vh - 104px);overflow:auto;font-size:14px;line-height:1.35;padding:14px 0 24px;scrollbar-width:thin}
 .s2-course .s2-sub{display:block;font-weight:800;font-size:15px;padding:8px 10px;margin-bottom:6px;color:inherit;text-decoration:none;border-radius:10px}
 .s2-course .s2-sub:hover{background:rgba(127,127,127,.12)}
 .s2-course ol,.s2-toc ol{list-style:none;margin:0;padding:0}
 .s2-course li a{display:flex;gap:10px;align-items:flex-start;padding:7px 10px;min-height:32px;border-radius:10px;color:inherit;text-decoration:none;opacity:.82}
 .s2-course li a b{min-width:22px;font-variant-numeric:tabular-nums;opacity:.7;font-weight:700}
 .s2-course li a:hover{opacity:1;background:rgba(127,127,127,.12)}
 .s2-course li.on a{opacity:1;font-weight:700;background:rgba(224,165,38,.14);box-shadow:inset 3px 0 0 var(--acc,#e0a526)}
 .s2-toc .s2-h{margin:0 0 8px;padding:0 10px;font-size:12px;font-weight:800;letter-spacing:.06em;text-transform:uppercase;opacity:.7}
 .s2-toc li a{display:flex;gap:8px;padding:6px 10px;min-height:28px;border-radius:8px;color:inherit;text-decoration:none;opacity:.75;border-left:2px solid transparent}
 .s2-toc li a>span:first-child{opacity:.7;font-variant-numeric:tabular-nums}
 .s2-toc li a:hover{opacity:1}
 .s2-toc li a.on{opacity:1;font-weight:700;border-left-color:var(--acc,#e0a526);background:rgba(224,165,38,.10)}
 html.s2-on article.lrn>details.toc{display:none}
}
@media (min-width:1180px) and (max-width:1439.98px){html.s2-on main.s2-grid{grid-template-columns:200px minmax(0,1fr) 190px;column-gap:22px;padding:0 14px}}
/* tablet 768-1179: contents list stays inline (collapsible), opened by default */
@media (prefers-reduced-motion:reduce){.s2-prog i{transition:none}}
