:root{--max-width:1300px;--gap:20px;--nav:250px;--sticky-top:1rem;--scroll-pad-bottom:calc(var(--anim-height) + 120px);--sticky-gap:1.5rem;--bg:#fff;--text-color:#123;--bgmask:#fffa;--border:1px solid #e5e7eb;--sticky-anim-bg:#1a30b0bc;--active-color:rgb(255,123,114);--section-heading:#000000;--section-heading-lighter:#555;--section-active-bg:#ffffffd7;--section-active-box-shadow:0 0 20px 2px #898989d7;--section-active-h2-color:green;--header-box-shadow:0 0 15px #ccc5;--header-background:linear-gradient(90deg,#58a500,#58a4009e);--header-text-color:#fff;--header-nav-background:#ffffff;--header-inner-nav-a-hover-color:#fff;--footer-box-shadow:0 0 15px #673AB7;--nav-active-color:#222;--nav-list-a-hover-color:#000;--sticky-anim-box-shadow:0 0 1rem 0.75rem #fff,0 0 0 1rem #ccc,0 0 0 1.25rem #aaa,0 0 0 1.35rem #666,.5rem .5rem 3rem #555,inset .25rem .25rem .75rem #3c4379;--conic-gradient-1:linear-gradient(to right in oklch,#f63b35,#f63b35 3%,#1265f0 7%,#477dff 17%,#2caf4f 20%,#72bb44 25%,#ffe523 27%,#ffcc25 30%,#ea4335 33%,#ea4335 45%,#1265f0 49%,#477dff 68%,#34a853 72%,#2caf4f 79%,#ffe523 82%,#ffcc25 87%,#f63b35 90%,#f63b35);--edge:#fff070;--arc:#ffffff;--accent:#3b82f6;--stroke-base:4;--ease-morph:cubic-bezier(.25,.1,.25,1);--ease-swap:cubic-bezier(.16,.84,.44,1);font-size:18px;--purple-darker:#633bac;--purple-dark:#6f42c1;--purple-light:#f4edff;--purple-20:#f9f5ff;--purple-100:#e2d9f3;--purple-300:#a98eda;--blue-100:#cfe2ff;--blue-50:#e6f0ff}.bg-blue-50{background-color:var(--blue-50)!important}.bg-blue-100{background-color:var(--blue-100)!important}.bg-purple-darker{background-color:var(--purple-darker)!important}.bg-purple-300{background-color:var(--purple-300)!important}.bg-purple-100{background-color:var(--purple-100)!important}html{scroll-padding-top:5rem}body>canvas{background:var(--bg);z-index:-2}.bgmask{background:var(--bgmask);z-index:-1;width:100%;height:100%;position:fixed;top:0;left:0}.container{max-width:var(--max-width);margin:0 auto;padding:16px}.grid-2{display:grid;grid-template-columns:var(--nav) 1fr;gap:var(--gap);align-items:start}.sidebar{position:sticky;top:0;align-self:start;max-height:calc(100svh - 2 * var(--sticky-top));overflow:auto;padding-right:4px}.sidebar-toc{color:var(--section-heading-lighter)}.nav-title{margin:.5rem 1rem;font-size:13px;text-transform:uppercase;letter-spacing:.04em;color:#666}.nav-list{list-style:none;padding:0;margin:0}.nav-list a{display:block;padding:.5rem 1rem}.nav-list a:hover{color:var(--nav-list-a-hover-color)}.nav-list a.active,.nav-list a.toc-active{background:var(--active-color);color:var(--nav-active-color);font-weight:500}.main{min-height:60vh}.sticky-anim{position:sticky;top:var(--sticky-top);z-index:1;background:var(--sticky-anim-bg);box-shadow:var(--sticky-anim-box-shadow);border-radius:10px;padding:12px;margin:1rem 1rem 3rem;backdrop-filter:blur(10px)}.anim-stage{display:inline-grid;place-items:center;width:-webkit-fill-available;height:auto;min-height:300px;max-width:100%}.anim-stage-effects{position:relative;width:100%;padding:1rem 0}.anim-stage svg{width:auto;height:auto;max-width:100%;max-height:80vh}.prose{line-height:1.75}.prose h2{margin:0 0 .5rem}.prose p{margin:.5rem 0}.prose ol,.prose ul{padding-left:1.25rem;margin:.5rem 0}.prose code{padding:.1rem .3rem;border-radius:4px}.topic-content section{scroll-margin-top:calc(var(--sticky-top) + var(--anim-height) + var(--sticky-gap)) + 1rem;padding:1rem;box-shadow:none;transition:background-color .25s ease,box-shadow .25s ease,transform .25s ease-in;opacity:.7;transform:scale(1);backdrop-filter:blur(5px);margin-bottom:1rem;border-radius:1rem}.topic-content section h2{color:var(--section-heading);font-size:20px;font-weight:200}.topic-content section:hover{cursor:pointer}.topic-content:after{height:calc(var(--anim-height) + 100vh)}.topic-content section:last-child{border-bottom:0}.topic-content:after{content:"";display:block;height:var(--scroll-pad-bottom)}.topic-content .section-active{opacity:1;background:var(--section-active-bg);border-radius:1rem;transform:scale(1);box-shadow:var(--section-active-box-shadow);transition:all .5s ease-in}.section-active h2{color:var(--section-active-h2-color);transition:color .25s ease}.starfield-canvas{position:fixed;inset:0;z-index:-1;pointer-events:none}.path-march{vector-effect:non-scaling-stroke;stroke-dasharray:24 12;animation:march 1s linear infinite}@keyframes march{to{stroke-dashoffset:-36}}@media (prefers-reduced-motion:reduce){.path-march{animation:none}}.aurora-bg,.topic-content .section-active{position:relative;background:transparent;color:inherit;overflow:hidden;z-index:0;border:0;border-radius:1rem}.aurora-bg:before,.topic-content .section-active:before{content:"";position:absolute;top:-100%;left:-50%;width:200%;height:300%;min-height:1000px;background:var(--conic-gradient-1);z-index:-1;scale:1 1;animation:rotateBorder 10s ease-in-out infinite}.aurora-bg:after,.topic-content .section-active:after{content:"";position:absolute;top:3px;left:3px;right:3px;bottom:3px;background-color:#fff;z-index:-1;border-radius:14px}@keyframes rotateBorder{0%{transform:rotate(0turn)}to{transform:rotate(-1turn)}}.floaty{display:inline-block;animation:floatY 2s cubic-bezier(.55,.01,.48,.98) 0s infinite alternate;will-change:transform}@keyframes floatY{0%{transform:translateY(0)}to{transform:translateY(calc(-1 * 1rem))}}.floaty:hover{animation-play-state:paused}.zoom-bounce{transform-origin:50% 50%;animation:zoomCycle 4s ease-in-out forwards}@keyframes zoomCycle{0%{transform:scale(0);transform-origin:50% 50%}20%{transform:scale(1.1)}30%{transform:scale(.95)}40%{transform:scale(1)}65%{transform:scale(1);opacity:1}90%{transform:scale(60);opacity:0;transform-origin:50% 50%}to{transform:scale(0);opacity:0;transform-origin:50% 50%}}svg text.center{text-anchor:middle;dominant-baseline:middle}@media (prefers-reduced-motion:reduce){.floaty{animation:none}}.section-audio{position:absolute;right:10px;bottom:10px}.sa-btn{display:grid;place-items:center;width:40px;height:40px;border-radius:2rem;border:0;background:rgba(31,41,55,.4);color:#fff;font-size:14px;line-height:1;cursor:pointer;box-shadow:0 4px 12px rgba(0,0,0,.35);transform:all .3s ease-in-out}.sa-btn:hover{background:rgba(31,41,55,.2)}.sa-btn:active{transform:scale(.96)}@media (max-width:1100px){.grid-2{grid-template-columns:var(--nav) 1fr}.sidebar:nth-child(2){display:none}}.nq-grid-4{display:grid;gap:.5rem;--cols:4;grid-template-columns:repeat(var(--cols),1fr);align-items:start}.nq-span-1{grid-column:span 1}.nq-span-2{grid-column:span 2}.nq-span-3{grid-column:span 3}.nq-span-4{grid-column:span 4}@media (max-width:575.98px){.nq-grid-4{--cols:1}}@media (min-width:576px) and (max-width:767.98px){.nq-grid-4{--cols:1}}@media (min-width:768px) and (max-width:991.98px){.nq-grid-4{--cols:2}}@media (min-width:992px) and (max-width:1199.98px){.nq-grid-4{--cols:2}}@media (min-width:1200px) and (max-width:1399.98px){.nq-grid-4{--cols:4}}@media (min-width:1400px){.nq-grid-4{--cols:4}}.nq-option{background:#fff;border-radius:.5rem;padding:.625rem .75rem;display:flex;align-items:center}.nq-option-inline{display:inline-flex;align-items:baseline;gap:.5rem}.nq-option-label{display:inline-flex;align-items:center;justify-content:center;border-radius:999px;padding:.1rem .45rem;min-width:1.5rem;line-height:1.1}.nq-option-text :where(p){margin:0}@media (max-width:420px){.nq-grid-4{grid-template-columns:1fr}}.sticky-sidebar{position:sticky;top:0;max-height:calc(100vh - 6rem);overflow:auto;overscroll-behavior:contain;-webkit-overflow-scrolling:touch;padding-right:0}.sticky-sidebar .list-group+.mb-4,.sticky-sidebar .mb-4+.mb-4{margin-top:.5rem}aside{overflow-y:hidden;scrollbar-gutter:stable}aside:hover{overflow-y:auto}aside::-webkit-scrollbar{width:8px}aside::-webkit-scrollbar-thumb{background:transparent;border-radius:4px}aside:hover::-webkit-scrollbar-thumb{background:rgba(0,0,0,.3)}aside:hover::-webkit-scrollbar-thumb:hover{background:rgba(0,0,0,.5)}p{margin:.5rem 0}.hide{display:none}footer .align-items-center{margin-left:0;margin-right:0}.breadcrumb{font-size:14px;margin-bottom:16px;display:flex;align-items:center;gap:6;flex-wrap:wrap;color:#374151}.unit-item{background-color:var(--bs-body-bg);transition:background-color .15s ease,border-color .15s ease,box-shadow .15s ease}.unit-item:hover{background-color:var(--bs-tertiary-bg);border-color:var(--bs-border-color-translucent);box-shadow:0 .25rem .5rem rgba(0,0,0,.05)}.unit-item:focus-visible{outline:0;box-shadow:0 0 0 .2rem rgba(var(--bs-primary-rgb),.25)}.text-label-xs{font-size:13px}.book-cover{background:#fcfcf7;border-radius:12px;box-shadow:0 2px 4px rgba(0,0,0,.4),0 7px 13px -3px rgba(0,0,0,.3),inset 0 -3px 0 rgba(0,0,0,.2);transition:all .25s ease-in-out}.download-button,.open-button,.share-button{display:flex;align-items:center}.list-group-item.white{background:#fff}.accordion-button{font-weight:600}.bg-primary-light{background:#006aff33}.fs-smaller{font-size:.8rem}td,th{padding:.25rem .5rem}.nav-list-depth-0>li{display:flex;align-items:center}.toc-section-num{font-size:.85rem;padding-right:.25rem}.row{max-width:100%}.button-expand-collapse{width:40px;height:-webkit-fill-available}.button-expand-collapse:hover{color:#fff;background-color:var(--bs-primary)}mjx-container{padding:0 10px}.MJX-TEX,.TEX-I{color:#567ab1;font-weight:400;text-shadow:0 0 0}.handwriting{letter-spacing:.4px;word-spacing:1px}.subject-topic h1{color:#e03030}.subject-topic h2{color:green}.subject-topic h3{color:purple}.fw-semibold,b,strong{text-shadow:0 0 BLACK}img{max-width:100%}.dropdown-menu .dropdown-item{font-size:14px}.dropdown-menu .dropdown-item:focus,.dropdown-menu .dropdown-item:hover{background-color:var(--bs-teal)!important;color:#000!important}.classes-nav .nav-item:hover{background-color:var(--bs-teal)!important}.classes-nav .nav-item:hover>a{color:#000!important}.breadcrumb-link{color:#6f42c1!important}.breadcrumb-link:hover,.nav-1 .nav-link:hover{color:#5a34a3!important}footer .links a{text-decoration:none;font-size:14px;color:var(--purple-darker)}footer .links a:hover{text-decoration:underline}.footer-section-heading{border-bottom:1px solid var(--purple-100)}.nav{margin:0}h2{margin:.75em 0}h3{margin:.83em 0}h4,ol,p,ul{margin:1.12em 0}h5{margin:1.5em 0}h6{margin:1.67em 0}.youtube-button{background:red;color:white}.youtube-button:hover{background:#dd0000;color:white}