.xl-course{--xl-green:#107c41;--xl-green-2:#0b5d31;--xl-mint:#dff6e9;--xl-lime:#c9ff58;--xl-dark:#101513;color:var(--ink);font-family:var(--body);overflow:clip}.xl-course *{box-sizing:border-box}.xl-course h1,.xl-course h2,.xl-course h3,.xl-course p{margin-top:0}.xl-course h1,.xl-course h2,.xl-course h3{font-family:var(--display);line-height:1}.xl-course button,.xl-course input{font-family:var(--util)}.xl-kicker{font:800 .72rem/1 var(--util);letter-spacing:.14em;text-transform:uppercase}.xl-hero{background:var(--xl-dark);color:#fff;flex-direction:column;min-height:min(900px,94vh);padding:clamp(1.25rem,5vw,5rem);display:flex;position:relative}.xl-hero:after{content:"";pointer-events:none;background-color:#0000;background-image:linear-gradient(#ffffff0b 1px,#0000 1px),linear-gradient(90deg,#ffffff0b 1px,#0000 1px);background-position:0 0,0 0;background-repeat:repeat,repeat;background-size:44px 44px;background-attachment:scroll,scroll;background-origin:padding-box,padding-box;background-clip:border-box,border-box;position:absolute;inset:0}.xl-topline{z-index:1;font:800 .7rem/1 var(--util);letter-spacing:.14em;text-transform:uppercase;border-bottom:1px solid #ffffff45;justify-content:space-between;padding-bottom:.8rem;display:flex}.xl-topline b{color:var(--xl-lime)}.xl-hero-grid{z-index:1;grid-template-columns:minmax(0,1.35fr) minmax(260px,.65fr);align-items:center;gap:6vw;margin:auto 0;display:grid}.xl-hero h1{letter-spacing:-.055em;max-width:11ch;margin:.5rem 0 1.4rem;font-size:clamp(3.5rem,8.5vw,9rem)}.xl-hero h1 em{color:var(--xl-lime);font-style:normal}.xl-lead{color:#ffffffd2;max-width:64ch;font-size:clamp(1.05rem,1.7vw,1.35rem);line-height:1.6}.xl-start{background:var(--xl-green);color:#fff;align-items:center;gap:2rem;margin-top:1.3rem;padding:.9rem 1.1rem;font-weight:900;text-decoration:none;display:inline-flex}.xl-start span{font-size:1.5rem}.xl-hero-meter{aspect-ratio:1;border:1px solid #ffffff40;border-radius:50%;place-items:center;display:grid;position:relative}.xl-hero-meter:before,.xl-hero-meter:after{content:"";border:1px dashed #ffffff50;border-radius:50%;position:absolute;inset:15%}.xl-hero-meter:after{border-color:var(--xl-lime);inset:31%}.xl-hero-meter strong{font:900 clamp(4rem,9vw,8rem)/1 var(--display);z-index:1}.xl-hero-meter span{font:800 .65rem/1 var(--util);letter-spacing:.16em;color:var(--xl-lime);position:absolute;bottom:14%}.xl-hero-meter i{background:var(--xl-lime);border-radius:50%;width:12px;height:12px;position:absolute}.xl-hero-meter i:first-of-type{top:8%;left:46%}.xl-hero-meter i:nth-of-type(2){bottom:22%;right:10%}.xl-hero-meter i:nth-of-type(3){background:var(--xl-green);bottom:21%;left:12%}.xl-teacher-note,.xl-setup,.xl-map,.xl-lessons,.xl-formula-sheet{background:var(--paper);padding:clamp(4rem,9vw,8rem) clamp(1.25rem,6vw,6rem)}.xl-teacher-note h2,.xl-setup h2,.xl-map h2,.xl-lessons h2,.xl-practice-timer h2,.xl-assessment h2,.xl-formula-sheet h2,.xl-ending h2{letter-spacing:-.045em;font-size:clamp(2.5rem,6vw,6rem)}.xl-teacher-note h2{max-width:17ch}.xl-teacher-note>div{grid-template-columns:repeat(3,1fr);gap:3vw;margin-top:3rem;display:grid}.xl-teacher-note p:not(.xl-kicker){font-size:1.05rem;line-height:1.7}.xl-rules{background:var(--xl-green);color:#fff;padding:clamp(4rem,8vw,7rem) clamp(1.25rem,6vw,6rem)}.xl-rules h2{font-size:clamp(2.5rem,5vw,5rem)}.xl-rules>div{border:2px solid #fff;grid-template-columns:repeat(4,1fr);margin-top:3rem;display:grid}.xl-rules article{border-right:1px solid #fff;flex-direction:column;min-height:230px;padding:1.3rem;display:flex}.xl-rules article:last-child{border:0}.xl-rules article>b{font:900 .75rem/1 var(--util);color:var(--xl-lime)}.xl-rules h3{margin:auto 0 .5rem;font-size:clamp(1.5rem,2.4vw,2.4rem)}.xl-rules article p{margin:0;line-height:1.5}.xl-setup{background:var(--paper-2)}.xl-setup-grid{grid-template-columns:repeat(3,1fr);gap:1rem;margin:3rem 0;display:grid}.xl-setup-grid article{background:var(--paper);border-top:5px solid var(--xl-green);padding:1.4rem}.xl-setup-grid h3{font-size:1.6rem}.xl-setup-grid ol{padding-left:1.2rem;line-height:1.65}.xl-download{background:var(--xl-dark);color:#fff;padding:1rem 1.2rem;font-weight:900;text-decoration:none;display:inline-block}.xl-download:before{content:"↓ ";color:var(--xl-lime)}.xl-map h2{max-width:14ch}.xl-phase-map{border:2px solid var(--ink);grid-template-columns:repeat(3,1fr);margin-top:3rem;display:grid}.xl-phase-map button{text-align:left;min-height:150px;color:inherit;border:0;border-right:1px solid var(--ink);border-bottom:1px solid var(--ink);cursor:pointer;background:0 0;flex-direction:column;padding:1.2rem;display:flex}.xl-phase-map button:nth-child(3n){border-right:0}.xl-phase-map button:nth-child(n+10){border-bottom:0}.xl-phase-map button:hover,.xl-phase-map button.is-active{background:var(--xl-mint)}.xl-phase-map span{font:900 .7rem/1 var(--util);color:var(--xl-green)}.xl-phase-map b{font:900 1.35rem/1 var(--display);margin:auto 0 .3rem}.xl-phase-map small{font:700 .67rem/1 var(--util);color:var(--muted)}.xl-workflow{background:var(--xl-lime);color:#101513;padding:clamp(4rem,8vw,7rem) clamp(1.25rem,6vw,6rem)}.xl-workflow h2{font-size:clamp(2.5rem,5vw,5rem)}.xl-workflow>div{flex-wrap:wrap;align-items:center;gap:.7rem;margin-top:2rem;display:flex}.xl-workflow span{font:900 clamp(1.1rem,2.3vw,2.2rem)/1 var(--display);border:2px solid #101513;padding:.8rem}.xl-workflow i{font-size:1.5rem;font-style:normal}.xl-lessons{background:var(--paper-2)}.xl-lessons>header{max-width:1100px}.xl-progress{align-items:center;gap:1rem;margin:2rem 0;display:flex}.xl-progress>div{font:800 .72rem/1 var(--util);letter-spacing:.08em;text-transform:uppercase;flex:1;align-items:center;gap:1rem;display:flex}.xl-progress>div>span{background:var(--rule);flex:1;height:12px}.xl-progress i{background:var(--xl-green);width:0;height:100%;transition:width .45s;display:block}.xl-progress button,.xl-tools button{border:1px solid var(--ink);color:inherit;cursor:pointer;background:0 0;padding:.7rem .9rem;font-weight:800}.xl-tools{grid-template-columns:1fr auto;align-items:end;gap:1rem;margin-bottom:2rem;display:grid}.xl-tools label span{font:800 .68rem/1 var(--util);letter-spacing:.1em;text-transform:uppercase;margin-bottom:.5rem;display:block}.xl-tools input{border:1px solid var(--rule);background:var(--paper);width:100%;color:var(--ink);padding:.9rem;font-size:1rem}.xl-tools button.is-active{background:var(--ink);color:var(--paper)}.xl-day-list{border-top:1px solid var(--rule)}.xl-day{border-bottom:1px solid var(--rule)}.xl-day[hidden]{display:none}.xl-day summary{cursor:pointer;grid-template-columns:82px 1fr auto;align-items:center;gap:1rem;padding:1.3rem 0;list-style:none;display:grid}.xl-day summary::-webkit-details-marker{display:none}.xl-day-no{font:900 1.6rem/1 var(--display);color:var(--xl-green)}.xl-day summary small{font:800 .65rem/1 var(--util);letter-spacing:.1em;text-transform:uppercase;color:var(--muted)}.xl-day summary h3{margin:.2rem 0 0;font-size:clamp(1.4rem,2.6vw,2.6rem)}.xl-day summary i{font:300 2rem/1 var(--util);font-style:normal;transition:transform .25s}.xl-day[open] summary i{transform:rotate(45deg)}.xl-day.is-complete .xl-day-no{color:var(--muted);text-decoration:line-through}.xl-day-body{grid-template-columns:1fr 1fr;gap:1rem;margin-left:98px;padding:0 0 2rem;display:grid}.xl-day-body>div{background:var(--paper);padding:1.1rem}.xl-day-body>div>b{font:900 .68rem/1 var(--util);letter-spacing:.1em;color:var(--xl-green)}.xl-day-body p{margin:.6rem 0 0;line-height:1.6}.xl-day-body .xl-proof{border-left:5px solid var(--xl-lime);grid-column:1/-1}.xl-complete{font:800 .75rem/1 var(--util);cursor:pointer;grid-column:1/-1;align-items:center;gap:.7rem;display:flex}.xl-complete input{width:1.35rem;height:1.35rem;accent-color:var(--xl-green)}.xl-no-results{color:var(--muted);padding:3rem 0}.xl-practice-timer{background:var(--xl-dark);color:#fff;grid-template-columns:1fr minmax(220px,320px) .7fr;align-items:center;gap:5vw;padding:clamp(4rem,8vw,7rem) clamp(1.25rem,6vw,6rem);display:grid}.xl-practice-timer>div:first-child p:last-child{color:#ffffffbc;line-height:1.6}.xl-clock{aspect-ratio:1;border:3px solid #ffffff35;border-radius:50%;place-items:center;display:grid;position:relative;overflow:hidden}.xl-clock i{background:var(--xl-green);opacity:.35;height:0;transition:height .5s linear;position:absolute;bottom:0;left:0;right:0}.xl-clock strong{z-index:1;font:900 clamp(3rem,6vw,5.5rem)/1 var(--display)}.xl-clock span{z-index:1;font:800 .68rem/1 var(--util);letter-spacing:.14em;color:var(--xl-lime);position:absolute;top:68%}.xl-practice-timer>div:last-child{flex-direction:column;gap:.6rem;display:flex}.xl-practice-timer button{color:#fff;cursor:pointer;background:0 0;border:1px solid #ffffff60;padding:.9rem;font-weight:900}.xl-practice-timer [data-xl-timer-toggle]{background:var(--xl-green);border-color:var(--xl-green)}.xl-assessment{background:var(--xl-green);color:#fff;padding:clamp(4rem,8vw,7rem) clamp(1.25rem,6vw,6rem)}.xl-assessment>div{border:2px solid #fff;grid-template-columns:repeat(4,1fr);margin-top:3rem;display:grid}.xl-assessment article{border-right:1px solid #fff;padding:1.2rem}.xl-assessment article:last-child{border:0}.xl-assessment article>b{font:900 2.5rem/1 var(--display);color:var(--xl-lime)}.xl-assessment h3{margin:2rem 0 .5rem;font-size:1.5rem}.xl-assessment p{margin:0;line-height:1.5}.xl-formula-sheet>div{border-top:2px solid var(--ink);grid-template-columns:1fr 1fr;margin-top:3rem;display:grid}.xl-formula-sheet code{border-bottom:1px solid var(--rule);padding:1rem;font-size:.9rem}.xl-formula-sheet code:nth-child(odd){border-right:1px solid var(--rule)}.xl-sources{background:var(--paper-2);border-top:1px solid var(--rule);padding:2.5rem clamp(1.25rem,6vw,6rem)}.xl-sources h2{font-size:1.2rem}.xl-sources p{max-width:1100px;color:var(--muted);font-size:.9rem;line-height:1.7}.xl-sources a{color:inherit;text-underline-offset:3px}.xl-ending{background:var(--xl-dark);color:#fff;padding:clamp(5rem,11vw,10rem) clamp(1.25rem,6vw,6rem)}.xl-ending h2{max-width:17ch}.xl-ending>p:not(.xl-kicker){color:#ffffffc8;max-width:800px;font-size:1.15rem;line-height:1.7}.xl-stamp{border:3px solid var(--xl-lime);color:var(--xl-lime);font-family:var(--util);flex-direction:column;margin-top:2rem;padding:1rem;display:inline-flex;transform:rotate(-3deg)}.xl-stamp span{letter-spacing:.14em;font-size:.65rem}.xl-stamp b{margin-top:.35rem;font-size:1.7rem;line-height:1.05}@media (width<=780px){.xl-hero-grid,.xl-practice-timer{grid-template-columns:1fr}.xl-hero-grid{margin:5rem 0}.xl-hero-meter{justify-self:center;width:min(74vw,320px)}.xl-teacher-note>div,.xl-setup-grid{grid-template-columns:1fr}.xl-rules>div,.xl-assessment>div{grid-template-columns:1fr 1fr}.xl-rules article,.xl-assessment article{border-bottom:1px solid #fff}.xl-rules article:nth-child(2),.xl-assessment article:nth-child(2){border-right:0}.xl-rules article:nth-child(n+3),.xl-assessment article:nth-child(n+3){border-bottom:0}.xl-phase-map{grid-template-columns:1fr 1fr}.xl-phase-map button:nth-child(3n){border-right:1px solid var(--ink)}.xl-phase-map button:nth-child(2n){border-right:0}.xl-phase-map button:nth-child(n+10){border-bottom:1px solid var(--ink)}.xl-phase-map button:nth-child(n+11){border-bottom:0}.xl-day-body{margin-left:0}.xl-clock{justify-self:center;width:min(70vw,300px)}.xl-practice-timer>div:last-child{justify-self:center;width:min(100%,360px)}}@media (width<=460px){.xl-hero,.xl-teacher-note,.xl-rules,.xl-setup,.xl-map,.xl-workflow,.xl-lessons,.xl-practice-timer,.xl-assessment,.xl-formula-sheet,.xl-sources,.xl-ending{width:100vw;margin-inline:calc(50% - 50vw)}.xl-rules>div,.xl-assessment>div,.xl-phase-map,.xl-formula-sheet>div{grid-template-columns:1fr}.xl-rules article,.xl-assessment article,.xl-phase-map button,.xl-formula-sheet code{border-bottom:1px solid!important;border-right:0!important}.xl-rules article:last-child,.xl-assessment article:last-child,.xl-phase-map button:last-child,.xl-formula-sheet code:last-child{border-bottom:0!important}.xl-tools{grid-template-columns:1fr}.xl-progress{flex-direction:column;align-items:stretch}.xl-day summary{grid-template-columns:58px 1fr auto;gap:.6rem}.xl-day-no{font-size:1.25rem}.xl-day-body{grid-template-columns:1fr}.xl-day-body .xl-proof,.xl-complete{grid-column:auto}}@media (prefers-reduced-motion:reduce){.xl-course *{scroll-behavior:auto!important;transition:none!important;animation:none!important}.xl-hero-meter{display:none}}
