.er-page { margin:0; background:#fff; color:#272233; font:15px/1.6 Arial,sans-serif; }
.er-resource-logo { position:absolute; top:10px; left:24px; display:block; width:46px; height:42px; z-index:2; }
.er-resource-logo>span { display:block; width:100%; height:100%; background:#8215FF; -webkit-mask:var(--er-logo-image) center / contain no-repeat; mask:var(--er-logo-image) center / contain no-repeat; }
.er-resource-logo:focus-visible { outline:2px solid #8215FF; outline-offset:4px; border-radius:4px; }
.er, .er * { box-sizing:border-box; }
.er { max-width:1240px; margin:0 auto; padding:54px 30px 80px; }
.er a:focus-visible, .er summary:focus-visible { outline:3px solid #a274d6; outline-offset:5px; }
.er-heading { text-align:center; margin-bottom:38px; }
.er-heading h1 { font-size:38px; line-height:1.25; font-weight:400; letter-spacing:-1px; margin:12px 0 16px; }
.er-heading h1>span+span { margin-left:.25em; }
.er-collection-heading { position:relative; display:block; }
.er-collection-heading h1 { text-align:center; }
.er-landing-back { position:absolute; left:calc((min(1240px, 100vw) - 100vw) / 2 - 10px); top:50%; transform:translateY(-50%); display:inline-flex; align-items:center; gap:9px; flex-shrink:0; color:#675777; font-size:15px; font-weight:600; text-decoration:none; }
.er-landing-back i { font-size:25px; line-height:1; flex-shrink:0; }
.er-back-content { display:inline-flex; align-items:center; gap:9px; }
.er-back-hover { position:absolute; inset:0; color:#8215FF; pointer-events:none; clip-path:inset(0 100% 0 0); transition:clip-path .15s ease-out; }
.er-landing-back:hover .er-back-hover, .er-landing-back:focus-visible .er-back-hover { clip-path:inset(0); }
@media(prefers-reduced-motion:reduce) { .er-back-hover { transition:none; } }
@media(max-width:1200px) { .er-collection-heading h1 { margin-left:160px; margin-right:160px; } }
@media(max-width:600px) { .er-collection-heading h1 { margin-left:85px; margin-right:85px; } .er-landing-back { max-width:80px; font-size:12px; gap:5px; text-align:left; } .er-landing-back i { font-size:22px; } }
.er-resource-section { margin-bottom:36px; scroll-margin-top:120px; }
.er-band { display:block; background:none; color:#8215FF; padding:0; }
#app .er-band h2 { margin:0; color:inherit; font-family:"Roboto",system-ui,-apple-system,"Segoe UI","Helvetica Neue",Arial,sans-serif; font-size:clamp(1.0625rem, 1rem + .3vw, 1.125rem); line-height:1.4; font-weight:800; letter-spacing:.035em; }
.er-band h2>span { padding:0 8px; opacity:.55; }
.er-card-grid { display:grid; grid-template-columns:repeat(5,minmax(0,1fr)); gap:18px; padding:20px 0 0; }
.er-card { min-width:0; background:#fff; border:1px solid #e7e2ed; border-radius:7px; overflow:hidden; display:flex; flex-direction:column; transition:box-shadow .15s,transform .15s; }
.er-card:hover { box-shadow:0 7px 22px #3d1b6512; transform:translateY(-2px); }
.er-card-cover { display:block; background:#f7f5fa; border-bottom:1px solid #eee9f3; padding:0; aspect-ratio:1 / 1.14; overflow:hidden; }
.er-card-cover img { display:block; width:100%; height:100%; object-fit:cover; object-position:top; }
.er-link-art { display:flex; flex-direction:column; align-items:center; justify-content:center; gap:16px; aspect-ratio:1 / 1.14; padding:20px 12px; background:linear-gradient(145deg,#f3ecfc,#e6d6f7); color:#7136a6; text-decoration:none; border-bottom:1px solid #eee9f3; }
.er-link-art:hover { background:#ebdef8; color:#572381; }
.er-link-art span { font-size:12px; font-weight:500; text-align:center; }
.er-link-art small { font-size:9px; color:#89749c; max-width:100%; overflow-wrap:anywhere; text-align:center; }
.er-landscape-card { grid-column:span 2; }
.er-link-art--thumbnail { display:block; aspect-ratio:auto; padding:0; background:#f7f5fa; overflow:hidden; }
.er-link-art--thumbnail:hover { background:#f0eaf7; }
.er-link-art--thumbnail img { display:block; width:100%; height:auto; min-height:0; }
.er-thumbnail-fallback { display:flex; flex-direction:column; align-items:center; justify-content:center; gap:16px; width:100%; }
.er-card-copy { display:flex; flex-direction:column; flex:1; padding:13px 12px 10px; }
.er-card h3 { margin:0 0 12px; font-size:16px; line-height:1.5; font-weight:500; }
.er-card h3 a { color:#342444; text-decoration:none; }
.er-card h3 a:hover { color:#7829c8; text-decoration:underline; }
.er-meta { color:#8a8194; font-size:10px; margin:0 0 12px; }
.er-meta>span { padding:0 4px; }
.er-back { display:inline-block; color:#72558b; text-decoration:none; font-size:13px; margin-bottom:28px; }
.er-detail { max-width:1100px; }
.er-detail-heading { position:relative; text-align:center; margin-bottom:28px; }
.er-detail-summary { max-width:820px; margin:0 auto 24px; text-align:center; color:#675777; font-size:17px; line-height:1.65; }
.er-pdf-toolbar { display:flex; justify-content:flex-end; padding:0 0 12px; }
.er-pdf-fullscreen { display:inline-flex; align-items:center; gap:9px; border:1px solid #8215FF; border-radius:6px; padding:9px 14px; color:#8215FF; background:#fff; font:600 15px/1.4 Arial,sans-serif; text-decoration:none; }
.er-pdf-fullscreen:hover { background:#f5edff; }
.er-pdf-fullscreen:focus-visible { outline:2px solid #8215FF; outline-offset:3px; }
.er-pdf-viewer:fullscreen { display:flex; flex-direction:column; box-sizing:border-box; padding:12px; background:#fff; }
.er-pdf-viewer:fullscreen .er-pdf { flex:1; height:0; min-height:0; }
.er-detail-heading .er-landing-back { left:calc((min(1100px, 100vw) - 100vw) / 2 - 10px); }
.er-eyebrow { color:#816b91; font-size:11px; letter-spacing:1px; }
.er-detail h1 { font-size:32px; line-height:1.3; font-weight:400; margin:10px 0 16px; color:#30233b; }
@media(max-width:1400px) { .er-detail-heading h1 { margin-left:160px; margin-right:160px; } }
@media(max-width:600px) { .er-detail-heading h1 { margin-left:85px; margin-right:85px; } }
.er-detail .er-meta { font-size:12px; }
.er-detail-actions { display:flex; flex-wrap:wrap; gap:12px; margin-top:22px; }
.er-primary-link, .er-download-link { display:inline-block; padding:10px 20px; border:1px solid #7028bd; border-radius:6px; font-size:13px; text-decoration:none; }
.er-primary-link { background:#7028bd; color:#fff; }
.er-download-link { color:#7028bd; background:#fff; }
.er-primary-link:hover { color:#fff; background:#592099; }
.er-download-link:hover { color:#592099; background:#f7f2fc; }
.er-pdf { display:block; width:100%; height:78vh; min-height:450px; border:1px solid #e6dfed; border-radius:5px; background:#faf9fc; }
.er-transcript { border-top:1px solid #e6dfed; margin-top:35px; padding-top:20px; }
.er-transcript summary { color:#554160; font-size:16px; cursor:pointer; }
.er-transcript>div { margin-top:20px; font-size:13px; line-height:1.9; color:#736c7b; max-width:850px; overflow-wrap:anywhere; }
.er-transcript p { white-space:pre-line; margin-bottom:18px; }
@media(min-width:900px) { .er-card-grid:has(>.er-card:only-child) { grid-template-columns:repeat(5,minmax(0,1fr)); } }
@media(max-width:1000px) { .er-card-grid { grid-template-columns:repeat(4,minmax(0,1fr)); gap:14px; } }
@media(max-width:760px) { .er { padding:32px 22px 50px; } .er-heading h1 { font-size:30px; } .er-card-grid { grid-template-columns:repeat(3,minmax(0,1fr)); } }
@media(max-width:520px) { .er { padding-left:16px; padding-right:16px; } .er-heading h1 { font-size:26px; } .er-card-grid { grid-template-columns:repeat(2,minmax(0,1fr)); gap:12px; } .er-band h2>span { padding:0 3px; } .er-detail h1 { font-size:25px; } .er-card-copy { padding:10px; } }
@media(prefers-reduced-motion:reduce) { .er-card { transition:none; } }

.er [hidden] { display:none!important; }
.er button:focus-visible { outline:3px solid #a274d6; outline-offset:4px; }
.er-video-card { grid-column:span 2; }
.er-video-cover { position:relative; display:block; width:100%; padding:0; border:0; background:#201232; aspect-ratio:16/9; cursor:pointer; overflow:hidden; }
.er-video-cover img { display:block; width:100%; height:100%; object-fit:cover; }
.er-video-play-icon { position:absolute; top:50%; left:50%; transform:translate(-50%,-50%); display:grid; place-items:center; width:64px; height:46px; border-radius:9px; color:#fff; background:#342148d9; box-shadow:0 2px 16px #0003; }
.er-video-cover:hover .er-video-play-icon { background:#7028bd; }
.er-video-title { padding:0; background:none; border:0; color:#342444; font:inherit; text-align:left; cursor:pointer; }
.er-video-title:hover { color:#7829c8; text-decoration:underline; }
.er-inline-player { margin:20px 0 10px; border:1px solid #e7e2ed; border-radius:8px; padding:16px; background:#faf8fd; scroll-margin-top:120px; }
.er-player-heading { display:flex; align-items:center; justify-content:space-between; gap:16px; margin-bottom:12px; }
.er-player-heading h3 { font-size:16px; font-weight:500; margin:0; color:#342444; }
.er-player-heading button { flex-shrink:0; border:1px solid #ddd0e8; border-radius:6px; background:white; color:#675777; padding:6px 12px; font:inherit; font-size:12px; cursor:pointer; }
.er-player-frame { aspect-ratio:16/9; background:#150d22; }
.er-player-frame iframe { width:100%; height:100%; border:0; display:block; }
.er-original-video { display:inline-block; margin-top:10px; font-size:11px; color:#816496; text-decoration:none; }
@media(max-width:520px) { .er-inline-player { padding:10px; } .er-player-heading h3 { font-size:13px; } .er-player-heading button { font-size:10px; padding:5px 8px; } }
.er-resource-type { display:flex; align-items:center; gap:5px; margin-top:auto; padding-top:8px; color:#6f6b75; font-size:14px; line-height:1.4; }
.er-resource-type svg { flex-shrink:0; color:#4b4058; }

@media(max-width:600px) { .er-back-content { gap:5px; } }

/* Edgenuity filters sit below Back, with the collection shifted to the right. */
.er.er-filtered { max-width:none; padding-left:24px; padding-right:24px; }
.er-filtered .er-collection-heading h1 { margin-left:200px; margin-right:200px; }
.er-filtered .er-landing-back { left:0; }
.er-filtered .er-resource-layout { display:grid; grid-template-columns:200px minmax(0,1fr); gap:32px; align-items:start; }
.er-filtered .er-results { width:100%; max-width:1240px; min-width:0; margin:0 auto; }
.er-filter-sidebar { position:sticky; top:24px; max-height:calc(100dvh - 48px); overflow:auto; padding:4px 10px 20px 0; color:#494154; }
.er-filter-sidebar h2 { margin:0 0 8px; font-size:18px; font-weight:600; }
.er-filter-sidebar>p { margin:0 0 24px; color:#8a8194; font-size:12px; line-height:1.6; }
.er-filter-sidebar fieldset { min-width:0; margin:0 0 23px; padding:0; border:0; }
.er-filter-sidebar legend { float:none; width:auto; margin:0 0 12px; font-size:13px; font-weight:600; color:#776686; }
.er-filter-option { display:flex; align-items:flex-start; gap:10px; margin-bottom:13px; font-size:13px; line-height:1.5; cursor:pointer; }
.er-filter-option input { flex-shrink:0; width:16px; height:16px; margin-top:2px; accent-color:#8215FF; cursor:pointer; }
.er-filter-option input:focus-visible { outline:2px solid #8215FF; outline-offset:3px; }
.er-clear-filters { padding:0; border:0; background:none; color:#8215FF; font:inherit; font-size:12px; text-decoration:underline; text-underline-offset:3px; cursor:pointer; }
.er-filter-empty { padding:50px 24px; border:1px solid #e7e2ed; border-radius:8px; text-align:center; color:#776686; }
@media(max-width:1300px) { .er-filtered .er-results .er-card-grid { grid-template-columns:repeat(3,minmax(0,1fr)); } }
@media(max-width:1000px) { .er-filtered .er-resource-layout { grid-template-columns:180px minmax(0,1fr); gap:24px; } .er-filtered .er-results .er-card-grid { grid-template-columns:repeat(2,minmax(0,1fr)); } }
@media(max-width:760px) {
  .er.er-filtered { padding-left:20px; padding-right:20px; }
  .er-filtered .er-collection-heading h1 { margin-left:95px; margin-right:95px; }
  .er-filtered .er-resource-layout { grid-template-columns:minmax(0,1fr); gap:24px; }
  .er-filter-sidebar { position:static; max-height:none; overflow:visible; padding:0 0 20px; border-bottom:1px solid #e7e2ed; }
  .er-filter-sidebar>p { margin-bottom:16px; }
  .er-filter-sidebar fieldset { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:0 18px; margin-bottom:10px; }
  .er-filter-sidebar legend { grid-column:1 / -1; }
  .er-filter-option { font-size:12px; }
}

.er-filter-title-row { position:relative; display:flex; align-items:center; gap:8px; margin-bottom:24px; }
.er-filter-title-row h2 { margin:0; }
.er-filter-help { display:inline-grid; place-items:center; flex-shrink:0; width:19px; height:19px; padding:0; border:1px solid #a390b7; border-radius:50%; background:#fff; color:#816798; font:600 12px/1 Arial,sans-serif; cursor:help; }
.er-filter-help:hover, .er-filter-help:focus-visible { border-color:#8215FF; color:#8215FF; }
.er-filter-tooltip { position:absolute; z-index:5; top:calc(100% + 8px); left:0; width:100%; padding:12px; border:1px solid #e3d6f0; border-radius:7px; background:#fff; box-shadow:0 5px 18px #39234f18; color:#675777; font-size:12px; line-height:1.65; visibility:hidden; opacity:0; transition:opacity .15s ease; }
.er-filter-help:hover ~ .er-filter-tooltip, .er-filter-help:focus-visible ~ .er-filter-tooltip, .er-filter-tooltip:hover { visibility:visible; opacity:1; }
