:root{--ink:#17211F;--muted:#52625E;--paper:#fff;--green:#0B2923;--line:#C8D2D0;--accent:#188F87}
*{box-sizing:border-box}body{margin:0;background:var(--paper);color:var(--ink);font:18px/1.55 Calibri,Carlito,Arial,sans-serif}button,input,select{font-family:inherit}a{color:#1F6FB2;text-underline-offset:3px}a:hover{text-decoration-thickness:2px}a:focus-visible,button:focus-visible,summary:focus-visible{outline:3px solid #188F87;outline-offset:3px}.skip{position:absolute;top:-100px;background:white;padding:12px;z-index:10}.skip:focus{top:0}
.package-brand{padding:14px max(20px,calc((100vw - 1080px)/2));display:flex;align-items:center;justify-content:space-between;gap:18px;border-bottom:1px solid var(--line);font-size:16px;background:#EAF2EF}.brand-home{display:flex;align-items:center;gap:12px;color:var(--green);text-decoration:none;min-width:0}.package-brand img{width:44px;height:44px;object-fit:contain;border-radius:0;flex-shrink:0}.package-brand .brand-home span{font-size:16px;line-height:1.25;color:var(--green)}.brand-home strong,.brand-home small{display:block}.brand-home small{font-size:14px;font-weight:normal;margin-top:3px;color:var(--muted)}.package-brand nav{display:flex;gap:20px;flex-shrink:0}.package-brand nav a{padding:6px 0}
main{max-width:1080px;margin:auto;padding:28px 24px 20px}h1{font-size:clamp(28px,4vw,42px);line-height:1.15;margin:0 0 12px;letter-spacing:-.02em;color:var(--green)}h2{font-size:25px;line-height:1.25;margin:28px 0 14px}p{margin:0 0 20px}.intro{color:var(--muted);margin:0 0 22px}.video-number{font-size:14px;color:var(--muted);margin:0 0 8px}.levels{margin-bottom:0}.levels button[data-level=easy]{background:#EAF2EF;border-color:#188F87}.levels button[data-level=easy][aria-pressed=true]{background:#0B2923;color:white}.levels button:not([data-level=easy])[aria-pressed=true]{background:white;color:#0B2923;box-shadow:inset 0 -3px #188F87}.levels button:not([data-level=easy]){background:white;color:#0B2923}
#explanation{max-width:none;margin:20px 0 26px;padding:0 2px;border-bottom:1px solid var(--line)}#explanation h2{font-size:26px;margin:0 0 16px}#explanation p{margin:0 0 18px}#stage-sources{padding-bottom:18px}.explorer{margin-top:0}.video-navigation{display:grid;grid-template-columns:1fr 1fr;gap:12px;margin:18px 0 0;padding:0}.video-navigation a{display:flex;flex-direction:column;justify-content:center;align-items:flex-start;border:1px solid var(--line);border-radius:7px;padding:7px 12px;min-height:44px;text-decoration:none;font-size:15px;line-height:1.3;background:#fff;color:#0B2923}.video-navigation a:last-child{align-items:flex-end;text-align:right}.video-navigation a:hover{background:#EAF2EF;border-color:#188F87}.video-navigation small{font-size:12px;color:var(--muted);margin-bottom:2px}.references{max-width:none;margin:22px 0 0;padding-top:15px}.package-footer{max-width:1032px;margin:10px auto 0;padding:18px 0 26px;border-top:1px solid var(--line);display:flex;flex-wrap:wrap;gap:12px 24px;font-size:14px;color:var(--muted)}.package-footer span{margin-left:auto}
.collection-subtitle{font-size:21px;color:var(--muted);margin:0 0 24px}.collection-intro{max-width:760px}.topic-list{padding-left:32px;max-width:850px;margin:24px 0}.topic-list li{padding:0 0 0 6px;border-bottom:1px solid #e0e7e5}.topic-list li::marker{color:var(--muted);font-size:16px}.topic-list a{display:flex;justify-content:space-between;gap:16px;padding:12px 4px;line-height:1.3;text-decoration:none}.topic-list a:hover{text-decoration:underline}.topic-list small{color:var(--muted);font-size:14px;white-space:nowrap;padding-top:3px}.index-about{margin-top:28px;font-size:16px}.about-copy{max-width:790px;margin:0}.about-copy p{margin-bottom:22px}.version-note{font-size:14px;color:var(--muted)}
@media(max-width:650px){.package-brand{padding:12px;gap:12px;flex-wrap:wrap}.package-brand nav{gap:18px}.package-brand .brand-home span{font-size:15px}main{padding:22px 12px 20px}.package-footer{margin:8px 12px 0;padding:16px 0 24px;gap:10px 20px}.package-footer span{margin-left:0}.video-navigation{gap:8px}.video-navigation a{padding:7px 8px;font-size:13px;overflow-wrap:anywhere}#explanation{padding:0 4px}#explanation h2{font-size:23px}.topic-list{padding-left:25px}.topic-list a{font-size:17px}}
