.week-selection[hidden],.material-preview[hidden],.access-preview img[hidden],.preview-empty[hidden]{display:none!important}
.preview-empty{min-height:340px;display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;padding:35px;background:#ffffff30;gap:15px;aspect-ratio:16/9}
.preview-empty>span{font-size:54px;color:#22242d35}.preview-empty strong{font:500 21px/1.3 'IBM Plex Sans',sans-serif;max-width:340px}.preview-empty p{font:13px/1.5 'IBM Plex Sans',sans-serif;max-width:300px;color:#62656d;margin:0}
.access-preview:disabled{cursor:default;opacity:1}.access-preview.is-empty:hover{border-color:#22242d25}
.identity-top>span:first-child{font-size:10px}.identity-header-controls .access-week-topic{font-size:12px}.identity-shortcuts a{font-size:13px}.access-preview strong{font-size:12px}.access-preview .mono{font-size:9px}.access-preview>span{font-size:11px}
.quick-context{font-size:10px;color:#555960;margin:10px 0 18px;letter-spacing:.04em}.quick-browse{display:inline-block;margin:20px 0 0;font-size:13px}.quick-status{font-size:12px;color:#555960}.week-sheet>h3{margin-top:0}.week-sheet .course-sketch{opacity:.55}.week-sheet #week-description{font-size:16px;line-height:1.45;max-width:540px}.week-sheet .sheet-footer{margin-top:28px}.week-section #week-prompt{font-size:10px}
.prepared-lessons{padding:28px 0 36px}.prepared-heading{display:flex;align-items:center;justify-content:space-between;gap:20px}.prepared-heading>.mono{font-size:10px}.prepared-heading p{font-size:13px;color:#62656d}.prepared-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:14px;margin-top:15px}.prepared-grid>a{display:flex;gap:12px;padding:14px;background:#eeeef040;border:1px solid #22242d25;transition:border-color .2s,transform .2s}.prepared-grid>a:hover{border-color:#22242d80;transform:translateY(-3px)}.prepared-grid img{width:72px;height:54px;object-fit:contain;background:#f8f8f4;flex:none}.prepared-grid>a>div{display:flex;flex-direction:column;gap:7px;min-width:0}.prepared-grid strong{font-size:14px;line-height:1.2}.prepared-grid a>div>span:last-child{font-size:11px;color:#62656d}.prepared-badge{font-size:8px;color:#354b43;letter-spacing:.03em}
.resource-context{display:flex;justify-content:space-between;align-items:center;gap:20px;padding:18px 0;border-top:1px solid #22242d25}.resource-context>.mono{font-size:10px;line-height:1.5}.resource-context-links{display:flex;gap:20px;flex-wrap:wrap}.resource-context-links>a{font-size:12px;border-bottom:1px solid #22242d50;padding:10px 0;min-height:44px;box-sizing:border-box}.resource-context-links>a:hover{color:#c44732;border-color:currentColor}.resource-context-links>a:focus-visible{outline:2px solid #c44732;outline-offset:4px}.resource-card p{font-size:14px;line-height:1.5}
.workspace-resource-dialog{max-width:640px;width:calc(100% - 32px);padding:26px;border:1px solid #22242d50;background:#f7f7f2;color:#22242d}.workspace-resource-dialog::backdrop{background:#22242d65}.workspace-resource-dialog .search-head h2{font-size:27px;letter-spacing:-.035em}.resource-dialog-context{font-size:10px;color:#62656d}.workspace-resource-list>a{display:flex;justify-content:space-between;align-items:center;gap:24px;border-top:1px solid #22242d25;padding:17px 0}.workspace-resource-list>a strong{font-size:15px;font-weight:500}.workspace-resource-list>a>span{font:11px 'IBM Plex Mono',monospace;white-space:nowrap}.workspace-resource-list p{font-size:15px;line-height:1.6}.workspace-resource-list .resource-dialog-browse{font-size:13px;margin-top:20px}
@media(max-width:1000px){.prepared-grid{grid-template-columns:1fr 1fr}.prepared-grid img{width:90px}.identity-top>span:first-child{font-size:9px}}
@media(max-width:760px){.prepared-heading{align-items:flex-start;flex-direction:column;gap:0}.prepared-grid{grid-template-columns:1fr}.prepared-grid img{width:95px;height:60px}.prepared-grid>a{padding:12px}.resource-context{flex-direction:column;align-items:flex-start;gap:10px}.preview-empty{min-height:180px;padding:22px;gap:8px}.preview-empty strong{font-size:16px}.preview-empty>span{font-size:35px}.preview-empty p{font-size:12px}.identity-top>span:first-child{font-size:7px}.identity-header-controls .access-week-topic{font-size:9px}.identity-cover.cover-open .identity-main,.identity-cover.elective.cover-open .identity-main{min-height:650px}.week-sheet #week-description{font-size:15px}.week-sheet .course-sketch{width:65px}.week-sheet .sheet-footer{margin-top:20px}}
@media(prefers-reduced-motion:reduce){.prepared-grid>a{transition:none}}
.week-sheet .quick-context{font-size:10px!important;line-height:1.4;margin:12px 0 18px!important}.quick-browse{margin-left:20px}.identity-week-menu{max-height:65vh;overflow-y:auto}.week-outcome-details{margin:5px 0 16px;border-top:1px solid #22242d25;padding-top:12px;font-family:'IBM Plex Sans',sans-serif}.week-outcome-details summary{font-size:12px;cursor:pointer}.week-outcome-list{list-style:none;margin:12px 0 0;padding:0}.week-outcome-list li{display:flex;flex-direction:column;gap:5px;margin:12px 0;font-size:13px;line-height:1.4}.week-outcome-list li>span:first-child{font:9px 'IBM Plex Mono',monospace;color:#62656d}
@media(max-width:760px){.quick-browse{display:block;margin-left:0;width:fit-content}.week-sheet .quick-context{font-size:9px!important}.week-outcome-list li{font-size:12px}}

:root{--paper:#fff;--page-tint:#fff!important}.site-header{background:#fff}.workspace-resource-dialog{background:#fff}

html,body,.courses-section,.resource-section{background:#fff!important}.hero{background-color:#fff!important}
.audience-switch button:hover{background:#c44732;border-color:#c44732;color:#fff}

/* Open files grow with the preview and links instead of a fixed mobile height. */
@media(max-width:760px){
 .identity-cover.cover-open .identity-main,.identity-cover.elective.cover-open .identity-main{min-height:0}
 .identity-cover.cover-open .identity-content,.identity-cover.elective.cover-open .identity-content{position:relative;inset:auto;margin-top:24px;padding-top:18px}
 .identity-cover.cover-open .identity-shortcuts{position:relative;inset:auto;width:100%;margin-top:24px;padding-bottom:24px}
 .identity-cover.cover-open .identity-art,.identity-cover.elective.cover-open .identity-art{position:absolute;top:30px;left:0;right:0;width:100%;margin:0;transform:translateX(0) scale(.4);transform-origin:100% 0}
 .identity-cover.elective.cover-open .identity-art{transform:translateX(0) scale(.35)}
 .identity-header-controls .identity-week-menu-toggle{min-height:44px;height:auto}
 .identity-header-controls .identity-week-menu-toggle:before{font-size:7px;line-height:1.3}
}
/* Keep material types separate from independent site pages. */
.resource-page-shortcuts{display:flex;flex-wrap:wrap;align-items:center;gap:12px 24px;padding:28px 0;border-bottom:1px solid #22242d25}.resource-page-shortcuts>.mono{width:100%}.resource-page-shortcuts a{font-size:14px;padding:10px 0;border-bottom:1px solid #22242d50}.resource-unavailable{opacity:.6;cursor:default}.resource-unavailable .resource-arrow{visibility:hidden}.cover-enter{display:inline-flex;gap:20px;margin-left:20px;padding:14px 0;border-bottom:1px solid currentColor;font-weight:600;font-size:14px}.cover-open .cover-enter{display:none}

/* Files open on their selected week; the coral action enters the real course. */
.identity-cover.cover-open .course-direct{display:inline-flex;align-items:center;justify-content:space-between;gap:36px;margin-left:0;padding:14px 20px;border-bottom:0;text-decoration:none}
.identity-cover.cover-open .course-direct:focus-visible{outline:3px solid #22242d;outline-offset:4px}

/* A scroll stack on touch screens, with room to read tall open files. */
@media(max-width:760px){
 .files{position:relative;overflow:visible}
 .folder.identity-cover{position:sticky;top:var(--mobile-stack-top,154px);margin-bottom:90px;z-index:calc(2 + var(--i))}
 .stack-tail{height:var(--mobile-stack-tail,160px)!important}
}
