/* Learning shares the app's tokens. Sections use the canvas; choices use
   one surface. Source names, dates and completion states remain visible. */
.sc-hub,.sc-page{max-width:860px;margin:32px auto 56px}
body main :is(.sc-hub,.sc-page)>header{display:block;height:auto;min-height:0;width:100%;max-width:none;position:static;padding:0;margin:0 0 28px;background:transparent!important;border:0;box-shadow:none;grid-template-columns:none}
body main :is(.sc-hub,.sc-page)>header>h1{display:block;width:100%;min-width:0;max-width:none;font-size:clamp(28px,3vw,36px);font-weight:700;line-height:1.4;letter-spacing:-.035em;margin:0 0 12px;writing-mode:horizontal-tb;overflow-wrap:anywhere;word-break:keep-all}
.sc-hub p,.sc-page p{line-height:1.75;color:var(--muted,#b8bbc2)}
body main :is(.sc-hub,.sc-page)>header>p{margin:12px 0;max-width:68ch}
body main .sc-page>header>p:last-child:not(:first-of-type){font-size:13px;color:var(--muted)!important}
body main .sc-hub>header>p{max-width:45ch;font-size:15px}
.sc-tracks{display:grid;grid-template-columns:1fr 1fr;gap:16px;margin:32px 0 20px}
.sc-tracks>a{display:flex;flex-direction:column;gap:12px;padding:26px;border:0;border-radius:16px;background:var(--surface,#17181a);font-weight:400;text-decoration:none}
.sc-tracks strong{font-size:23px;line-height:1.4;font-weight:700}
.sc-tracks small{font-weight:400;font-size:14px;line-height:1.7;max-width:28ch}
.sc-tracks b{margin-top:12px;font-size:14px;font-weight:500}
.sc-tracks b>span{float:right;margin-left:20px;color:var(--gold)!important}
.sc-next{background:transparent;border:0;border-top:1px solid var(--line);padding:20px 0;margin:28px 0}
.sc-next>small{font-size:12px;font-weight:500;color:var(--muted)!important}
.sc-next>a{display:flex;align-items:center;justify-content:space-between;gap:16px;min-height:52px;text-decoration:none;margin-top:8px}
.sc-next strong{font-size:18px;font-weight:600;line-height:1.55}
.sc-next span{font-size:14px;white-space:nowrap;color:var(--gold)!important}
.sc-nav{display:flex;max-width:860px;margin:0 auto 28px;padding:0;gap:24px;border-bottom:1px solid var(--line);flex-wrap:wrap}
.sc-nav a{display:inline-flex;align-items:center;min-height:44px;border-bottom:2px solid transparent;padding:12px 0;color:var(--muted);font-size:14px;font-weight:500}
.sc-library-link,.sc-parent,.sc-course-return a{display:inline-flex;align-items:center;min-height:44px;padding:10px 0;font-size:14px;font-weight:500}
.sc-steps,.sc-paths,.sc-video-steps{list-style:none;margin:0;padding:0}
.sc-steps>li,.sc-video-steps>li{display:flex;gap:14px;align-items:flex-start;padding:22px 0;border-bottom:1px solid var(--line)}
.sc-steps a{display:flex;flex:1;min-width:0;flex-direction:column;gap:6px;min-height:44px;text-decoration:none}
.sc-steps strong,.sc-paths strong,.sc-video-steps strong{font-size:18px;font-weight:600;line-height:1.5;overflow-wrap:anywhere}
.sc-steps small,.sc-paths small,.sc-video-steps small{font-weight:400;font-size:14px;line-height:1.65}
.sc-step-number{font-variant-numeric:tabular-nums;flex:0 0 24px;padding-top:3px;font-size:13px;color:var(--muted)!important}
.sc-completed{font-size:13px;white-space:nowrap}
.sc-paths{display:grid;grid-template-columns:1fr 1fr;gap:0 28px}
.sc-paths li{border-bottom:1px solid var(--line)}
.sc-paths a{display:flex;flex-direction:column;gap:8px;padding:24px 0;text-decoration:none}
.sc-paths span,.sc-paths b{font-size:13px;font-weight:400}
.sc-video-steps a{display:flex;flex:1;gap:18px;text-decoration:none;min-width:0}
.sc-video-steps img{width:140px;aspect-ratio:16/9;height:auto;object-fit:cover;background:var(--surface-raised);flex-shrink:0;align-self:flex-start;border-radius:8px}
.sc-video-steps a>span{display:flex;flex-direction:column;gap:8px;min-width:0}
.sc-video-steps b{font-size:13px;font-weight:500}
.sc-page h2,.sc-my-learning h2{font-size:21px;font-weight:600;line-height:1.45;margin:0 0 18px}
.sc-page h2:not(:first-child){margin-top:32px}
.sc-lesson{max-width:760px}.sc-lesson-section{margin:36px 0}
.sc-lesson-section li{line-height:1.8;margin:12px 0}.sc-lesson-section li::marker{color:var(--muted)}
.sc-lesson-section ul{padding-left:24px}.sc-lesson-section p{max-width:68ch}
.sc-fit{display:flex;flex-wrap:wrap;border-bottom:1px solid var(--line);padding-bottom:20px;gap:12px 28px;margin:20px 0;font-size:14px}
.sc-fit dt{color:var(--muted);font-size:12px}.sc-fit dd{margin:6px 0;line-height:1.6}
.sc-sources{margin:32px 0;padding:20px 0;background:transparent;border:0;border-top:1px solid var(--line);border-radius:0}
.sc-sources summary{cursor:pointer;min-height:44px;font-weight:600}
.sc-sources ul{list-style:none;margin:0;padding:0}
.sc-sources li{padding:12px 0;display:flex;flex-direction:column;gap:8px;border-bottom:1px solid var(--line)}
.sc-sources a{display:inline-flex;min-height:44px;align-items:center;overflow-wrap:anywhere;text-decoration:underline;text-underline-offset:4px}
.sc-sources p,.sc-sources small{font-size:13px;line-height:1.7}
.sc-learning-state{border-top:1px solid var(--line);margin-top:28px;padding:20px 0}
.sc-learning-state button,.sc-admin button{min-height:44px;padding:10px 16px;border:1px solid var(--control-line);border-radius:10px;background:var(--surface-raised);color:var(--ink);cursor:pointer}
.sc-learning-state button[aria-pressed=true]{border-color:var(--gold);background:#323025}
.sc-learning-state p{font-size:14px}
.sc-course-return{display:flex;justify-content:space-between;align-items:center;gap:12px;flex-wrap:wrap;margin:20px 0}
.sc-my-learning{margin:24px 0 40px}
.sc-my-learning>a{display:inline-flex;min-height:44px;align-items:center;padding:10px 0}
.sc-empty,.sc-scope-note,.sc-finished{padding:16px 20px;background:var(--surface);border-radius:10px;line-height:1.75;font-size:14px}
.sc-search-results{margin:20px 0;padding:20px 0;border:0;border-top:1px solid var(--line);border-radius:0}
.sc-search-results h2{margin:0 0 16px;font-size:22px}
.sc-search-results a{display:flex;flex-direction:column;gap:8px;min-height:44px;padding:16px 0}
.sc-search-results ol{list-style:none;padding:0}.sc-search-results li{border-bottom:1px solid var(--line)}
.sc-partner{max-width:860px;margin:40px auto;padding:20px 0;border-top:1px solid var(--line)}
.sc-partner small{display:block}.sc-partner a{display:inline-flex;min-height:44px;align-items:center}
.study-video-status{display:flex;align-items:center;flex-wrap:wrap;gap:8px 20px;padding:16px 0;font-size:14px;line-height:1.7}
.study-video-status a,.sc-learning-state>a{display:inline-flex;align-items:center;min-height:44px;padding:8px 0}
.study-player .study-video-status{padding:16px}
body main .sc-nav a[aria-current=page]{color:var(--gold)!important;border-bottom-color:var(--gold)}
body main:has(>.sc-hub)>:is(.study-action-tabs,.study-controls){max-width:860px;margin-inline:auto}
@media(max-width:640px){.sc-tracks,.sc-paths{grid-template-columns:1fr}.sc-tracks{gap:12px}.sc-tracks>a{padding:24px}.sc-tracks strong{font-size:22px}.sc-tracks small{max-width:none}.sc-next>a{flex-wrap:wrap}.sc-next strong{flex:1;min-width:170px}.sc-fit{flex-direction:column}.sc-hub,.sc-page{margin-top:28px}.sc-nav{gap:20px}.sc-nav a{font-size:13px}.sc-video-steps a{gap:12px}.sc-video-steps img{width:96px}.sc-video-steps strong{font-size:16px}.sc-video-steps small{font-size:13px}.study-player{max-height:90dvh;overflow-y:auto}}
@media(prefers-reduced-motion:no-preference){.sc-tracks a{transition:background .15s}.sc-tracks a:hover{background:var(--surface-raised)}}

/* Review tools keep explicit input boundaries and save states. */
.sc-admin{border-top:1px solid var(--line);margin:32px 0;padding-top:24px}
.sc-admin form{display:grid;grid-template-columns:1fr 1fr;gap:16px;margin:20px 0}
.sc-admin label{display:flex;flex-direction:column;gap:8px;color:var(--ink);font-size:14px}
.sc-admin input,.sc-admin textarea,.sc-admin select{min-height:44px;width:100%;box-sizing:border-box;padding:10px 12px;background:var(--control-bg);color:var(--ink);border:1px solid var(--control-line);border-radius:10px;font:inherit}
.sc-admin textarea{min-height:160px;line-height:1.6}.sc-admin .sc-wide{grid-column:1/-1}
.sc-admin-list{display:flex;flex-direction:column;gap:8px}.sc-admin-list button{text-align:left}
.sc-admin label.sc-check{flex-direction:row;align-items:center}.sc-admin .sc-check input{width:24px;flex-shrink:0}
.sc-admin [role=status]{color:var(--muted);line-height:1.65;overflow-wrap:anywhere}.sc-admin [role=status][data-error=true]{color:#ffb8b3}
.sc-video-admin-filter{display:grid;grid-template-columns:1fr 1fr auto;gap:16px;margin:20px 0}
.sc-video-admin-filter label{display:flex;flex-direction:column;gap:8px}.sc-video-admin-filter p{grid-column:1/-1}
.sc-video-admin-pagination{display:flex;gap:16px;margin:16px 0}.sc-admin-card input[type=text]:read-only{color:var(--muted)}
@media(max-width:640px){.sc-admin form,.sc-video-admin-filter{grid-template-columns:1fr}}

body main#main .sc-start-link{display:inline-flex;align-items:center;gap:20px;min-height:44px;margin:0 0 16px;font-size:15px;color:var(--gold)!important}
body main#main .sc-start-link span{color:var(--gold)!important}
.sc-video-steps img[hidden]{display:none!important}
.sc-course-return [data-study-course-link][hidden]{display:none!important}
.sc-video-steps li[id]{scroll-margin-block:90px}
.sc-video-steps li.is-return-target>a{outline:1px solid var(--gold);outline-offset:6px;border-radius:6px}
.sc-video-steps li.is-return-target .sc-step-number{color:var(--gold)}

.sc-steps [data-study-guide-row]{scroll-margin-block:90px}
.sc-steps [data-study-guide-row].is-return-target>a{outline:1px solid var(--gold);outline-offset:6px;border-radius:6px}
.sc-steps [data-study-guide-row].is-return-target .sc-step-number{color:var(--gold)}
