.Button{border-radius:.5rem;cursor:pointer;padding:.5rem 1rem;transition:all var(--hover-animation-time) ease-in-out}.Button:hover{opacity:.75}.Button:disabled{opacity:.33}.ButtonWrapper{cursor:not-allowed}.HoverButton{background-color:transparent;border:1px solid transparent;border-radius:.25rem;transition:all var(--hover-animation-time) ease-in-out}.HoverButton:hover{border:1px solid color-mix(in srgb,var(--fg-color) 75%,transparent)}.HoverButton:disabled,.HoverButton:hover{background-color:color-mix(in srgb,var(--fg-color) 7.5%,transparent)}.OutlineButton{background-color:color-mix(in srgb,var(--fg-color) 10%,var(--bg-color));border-radius:.25rem;cursor:pointer}.OutlineButton,.OutlineButton:disabled{border:1px solid color-mix(in srgb,var(--fg-color) 75%,transparent)}.OutlineButton:disabled{background-color:color-mix(in srgb,var(--fg-color) 30%,var(--bg-color))}.tab-btn{background:transparent;border-bottom:none;border-radius:99rem;color:#ffffff8c;cursor:pointer;flex:1;overflow:hidden;position:relative;transition:all .5s cubic-bezier(.23,1,.32,1)}.tab-btn:hover:not(:disabled):not(.active){background:#ffffff0d;color:#fffffff2;text-shadow:0 0 10px hsla(0,0%,100%,.3)}.tab-btn.active{background:linear-gradient(180deg,#ffffff1f,#ffffff05 45%,#fff0,#ffffff05 55%,#ffffff14);box-shadow:0 8px 25px #0006,inset 0 1px #ffffff80,inset 0 -1px #ffffff26,inset 0 0 15px #ffffff0d;color:#fff;text-shadow:0 0 15px hsla(0,0%,100%,.8)}.tab-btn.active:after{background:linear-gradient(180deg,hsla(0,0%,100%,.3),hsla(0,0%,100%,.05) 60%,transparent);border-radius:9999px;content:"";filter:blur(3px);height:35%;left:12%;pointer-events:none;position:absolute;right:12%;top:0}.tab-btn:disabled{cursor:not-allowed;opacity:.5}.InputField{background:transparent;border:1px solid var(--fg-color);border-radius:.5rem;color:var(--fg-color);font-family:var(--selected-font,Space Mono);font-size:calc(1rem*var(--selected-font-size-multiplier, 1));letter-spacing:var(--selected-font-letter-spacing);outline:none;padding:.75rem 1rem;transition:border-color .1s ease-in-out}.InputField:focus{border-color:var(--accent-color);box-shadow:0 0 0 2px var(--accent-color)}.InputField.disabled{cursor:not-allowed;opacity:.7}.PopupOverlay{animation:overlay-show var(--hover-animation-time) ease-in;background-color:color-mix(in srgb,var(--black) 50%,transparent);inset:0;position:fixed}.PopupContent{animation:content-show var(--hover-animation-time) ease-in;background-color:var(--accent-color);border:1px solid var(--gray-11);border-radius:.33rem;left:50%;max-height:85vh;max-width:450px;padding:25px;position:fixed;top:50%;transform:translate(-50%,-50%);width:90vw}@keyframes overlay-show{0%{opacity:0}to{opacity:1}}@keyframes content-show{0%{opacity:0;transform:translate(-50%,-48%) scale(.95)}to{opacity:1;transform:translate(-50%,-50%) scale(1)}}.ProgressBar{border-radius:.25rem;flex-grow:1;height:.5rem;margin-right:.75rem;position:relative}.ProgressBar:before{background:linear-gradient(to right,color-mix(in srgb,var(--ProgressBar-color) 90%,var(--black)),var(--ProgressBar-color),color-mix(in srgb,var(--ProgressBar-color) 80%,var(--white)),color-mix(in srgb,var(--ProgressBar-color) 75%,var(--white)));border-radius:.25rem;box-shadow:0 0 .375rem color-mix(in srgb,var(--ProgressBar-color) 75%,transparent);content:"";height:100%;left:0;position:absolute;top:1;transition:width .2s ease-in-out;width:var(--ProgressBar-percentage,0)}.Spinner{animation:spin 1s linear infinite}.ToastViewport{max-width:100vw;position:fixed;right:1.5rem;top:1.5rem;z-index:999}.Toast{background:var(--purple-1);border:1px solid var(--gray-6);border-radius:.5rem;-moz-column-gap:1rem;column-gap:1rem;display:grid;grid-template-areas:"title action" "description action";grid-template-columns:auto max-content;max-width:400px;padding:1rem}.Toast[data-state=open]{animation:slideIn .3s cubic-bezier(.16,1,.3,1)}.Toast[data-state=closed]{animation:hide .3s ease-in}.Toast[data-swipe=move]{transform:translate(var(--radix-toast-swipe-move-x))}.Toast[data-swipe=cancel]{transform:translate(0);transition:transform .3s ease-out}.Toast[data-swipe=end]{animation:swipeOut .3s ease-out}.toast-success{border-left:4px solid var(--green)}.toast-error{border-left:4px solid var(--red)}.toast-warning{border-left:4px solid var(--orange)}.toast-info{border-left:4px solid var(--blue)}.ToastTitle{font-weight:500;grid-area:title;margin-bottom:.25rem}.ToastDescription{grid-area:description;line-height:1.3;margin:0}.ToastClose{align-items:center;background:transparent;border:none;border-radius:.25rem;color:var(--gray-11);cursor:pointer;display:flex;font-size:1.25rem;font-weight:700;grid-area:action;height:1.5rem;justify-content:center;padding:.25rem;transition:all .15s ease-in-out;width:1.5rem}.ToastClose:hover{background:var(--gray-6);color:var(--white)}@keyframes hide{0%{opacity:1}to{opacity:0}}@keyframes slideIn{0%{opacity:0;transform:translate(calc(100% + 1.5rem))}to{opacity:1;transform:translate(0)}}@keyframes swipeOut{0%{transform:translate(var(--radix-toast-swipe-end-x))}to{transform:translate(calc(100% + 1.5rem))}}.AuthContainer{border:1px solid var(--fg-color);border-radius:.5rem;margin:0 auto;max-width:30%;padding:2.5rem;width:100%}@media(max-width:1280px){.AuthContainer{max-width:35%}}@media(max-width:1072px){.AuthContainer{max-width:47.5%}}@media(max-width:864px){.AuthContainer{max-width:55%}}@media(max-width:768px){.AuthContainer{max-width:65%}}@media(max-width:672px){.AuthContainer{max-width:77.5%}}@media(max-width:576px){.AuthContainer{max-width:90%}}@media(max-width:464px){.AuthContainer{border:none;max-width:100%}}.spin{animation:spin .9s linear infinite}@keyframes spin{0%{transform:rotate(0)}to{transform:rotate(1turn)}}.code-runner-skeleton-line{animation:skeleton-shimmer 1.2s ease-in-out infinite;background:linear-gradient(90deg,color-mix(in srgb,var(--gray-7) 60%,transparent) 0,color-mix(in srgb,var(--gray-6) 60%,transparent),color-mix(in srgb,var(--gray-7) 60%,transparent) 80%);background-size:200% 100%;border-radius:.25rem;height:1rem}@keyframes skeleton-shimmer{0%{background-position:200% 0}to{background-position:-200% 0}}.resource-card{background:color-mix(in srgb,var(--accent-color) 2%,transparent);border:1px solid color-mix(in srgb,var(--accent-color) 15%,transparent);border-radius:.5rem;cursor:pointer;padding:.75rem;transition:all .15s ease-in-out}.resource-card:hover{background:color-mix(in srgb,var(--accent-color) 5%,transparent);border-color:color-mix(in srgb,var(--accent-color) 50%,transparent);transform:translate(4px)}.CourseCardEnterButton{align-items:center;background-color:var(--CourseCardEnterButton-color);border:var(--CourseCardEnterButton-border);border-radius:.25rem;cursor:pointer;display:flex;height:1.75rem;justify-content:center;margin-right:.25rem;position:relative;transition:all var(--hover-animation-time) ease-in-out;width:5.25rem}.CourseCardEnterButton:hover{background-color:var(--CourseCardEnterButton-hover-color)}.CourseCardEnterButton:after{background-color:var(--fg-color);bottom:.25rem;content:"";height:1px;left:50%;left:var(--underline-shift);position:absolute;transform:translate(-50%);transition:all var(--hover-animation-time) ease-in-out;width:0}.CourseCardEnterButton:hover:after{width:var(--underline-width)}.CourseCardEnterButton:disabled{cursor:not-allowed;opacity:.5;pointer-events:none}.CourseCardEnterButtonWrapper{cursor:not-allowed}.floating-tab-bar{backdrop-filter:blur(30px) saturate(220%);-webkit-backdrop-filter:blur(30px) saturate(220%);background:#00000040;border-radius:9999px;bottom:2.25rem;box-shadow:0 30px 60px -12px #0009,0 0 0 1px #ffffff1f,inset 0 1px #ffffff40,inset 0 -1px #ffffff0d;display:none;flex-direction:row;gap:.35rem;left:50%;padding:.375rem;position:fixed;transform:translate(-50%);z-index:1001}@media(max-width:768px){.floating-tab-bar{display:flex}}@media(max-width:768px){.floating-video{display:none!important}}@media(min-width:769px){.mobile-video{display:none!important}}.CourseHeaderInfo{align-items:center;gap:1.5rem}.CourseHeaderProgress{width:50%}@media(max-width:1072px){.CourseHeaderDifficulty{display:none}}@media(max-width:768px){.CourseHeaderProgress{width:100%}.CourseHeaderInfo{gap:1rem;justify-content:space-around;width:100%}}.CourseHeaderDetails[data-astro-cid-tggbejel]{align-items:center;display:flex;flex-direction:row;gap:2rem;justify-content:space-between;width:100%}@media(max-width:768px){.CourseHeaderDetails[data-astro-cid-tggbejel]{align-items:flex-start;flex-direction:column;gap:1rem}}.description[data-astro-cid-fhxguscb]{flex-grow:1;margin:1rem 0 1.5rem}.card[data-astro-cid-y4spw36y]{background-color:color-mix(in srgb,var(--fg-color) 2.5%,transparent);border:1px solid var(--course-card-dark-border);border-radius:.25rem;box-shadow:0 4px 24px -1px var(--course-card-dark-shadow);display:flex;flex-direction:column;min-height:100%;overflow:hidden;padding:.75rem 1rem;position:relative}.under-development[data-astro-cid-y4spw36y]{filter:saturate(0);opacity:.6}.progress-overlay[data-astro-cid-y4spw36y]{background-image:repeating-linear-gradient(135deg,color-mix(in srgb,var(--fg-color) 10%,transparent) 0 14px,transparent 14px 28px);border-top-left-radius:.25rem;border-top-right-radius:.25rem;height:calc(100% - 2.5rem);left:0;opacity:.18;pointer-events:none;position:absolute;top:0;width:100%}.card[data-astro-cid-y4spw36y]:before{height:1px;left:0;transform:scaleX(0);transform-origin:left;width:100%}.card[data-astro-cid-y4spw36y]:after,.card[data-astro-cid-y4spw36y]:before{background:var(--course-card-hover-border);content:"";position:absolute;top:0;transition:transform var(--course-card-hover-step) ease-out}.card[data-astro-cid-y4spw36y]:after{height:100%;right:0;transform:scaleY(0);transform-origin:top;width:1px}.border-bottom[data-astro-cid-y4spw36y]{height:1px;right:0;transform:scaleX(0);transform-origin:right;width:100%;z-index:1}.border-bottom[data-astro-cid-y4spw36y],.border-left[data-astro-cid-y4spw36y]{background:var(--course-card-hover-border);bottom:0;position:absolute;transition:transform var(--course-card-hover-step) ease-out}.border-left[data-astro-cid-y4spw36y]{height:100%;left:0;transform:scaleY(0);transform-origin:bottom;width:1px}.header[data-astro-cid-y4spw36y]{align-items:flex-start;display:flex;flex-direction:row;gap:.5rem;justify-content:space-between}.information[data-astro-cid-y4spw36y]{align-items:center;background:color-mix(in srgb,var(--bg-color) 10%,transparent);border-bottom:1px solid var(--course-card-dark-border);border-bottom-left-radius:.25rem;border-left:1px solid var(--course-card-dark-border);display:flex;flex-direction:column;flex-shrink:0;gap:.25rem;margin:-.75rem -1rem -.5rem .75rem;overflow:hidden;padding:.75rem;position:relative}.information[data-astro-cid-y4spw36y]:before{height:100%;left:0;top:1px;transform:scaleY(0);transform-origin:top;width:1px}.information[data-astro-cid-y4spw36y]:after,.information[data-astro-cid-y4spw36y]:before{background:var(--course-card-hover-border);content:"";position:absolute;transition:transform var(--course-card-hover-step) ease-out}.information[data-astro-cid-y4spw36y]:after{bottom:0;height:1px;left:-1px;transform:scaleX(0);transform-origin:left;width:100%}.bottom-separator[data-astro-cid-y4spw36y]{border-top:1px solid var(--course-card-dark-border);margin:auto -1rem -.75rem 0;padding:.375rem 0;position:relative}.bottom-separator[data-astro-cid-y4spw36y]:before{background:var(--course-card-hover-border);content:"";height:1px;position:absolute;right:1px;top:-1px;transform:scaleX(0);transform-origin:right;transition:transform var(--course-card-hover-step) ease-out;width:100%}.card[data-astro-cid-y4spw36y]:hover:before{transform:scaleX(1);transition-delay:calc(var(--course-card-hover-step)*0)}.card[data-astro-cid-y4spw36y]:hover:after{transform:scaleY(1);transition-delay:calc(var(--course-card-hover-step)*1)}.card[data-astro-cid-y4spw36y]:hover .border-bottom[data-astro-cid-y4spw36y]{transform:scaleX(1);transition-delay:calc(var(--course-card-hover-step)*2)}.card[data-astro-cid-y4spw36y]:hover .border-left[data-astro-cid-y4spw36y]{transform:scaleY(1);transition-delay:calc(var(--course-card-hover-step)*3)}.card[data-astro-cid-y4spw36y]:hover .information[data-astro-cid-y4spw36y]:before{transform:scaleY(1);transition-delay:calc(var(--course-card-hover-step)*4)}.card[data-astro-cid-y4spw36y]:hover .information[data-astro-cid-y4spw36y]:after{transform:scaleX(1);transition-delay:calc(var(--course-card-hover-step)*5)}.card[data-astro-cid-y4spw36y]:hover .bottom-separator[data-astro-cid-y4spw36y]:before{transform:scaleX(1);transition-delay:calc(var(--course-card-hover-step)*6)}.card[data-astro-cid-y4spw36y]:not(:hover) .bottom-separator[data-astro-cid-y4spw36y]:before{transform:scaleX(0);transition-delay:calc(var(--course-card-hover-step)*0)}.card[data-astro-cid-y4spw36y]:not(:hover) .information[data-astro-cid-y4spw36y]:after{transform:scaleX(0);transition-delay:calc(var(--course-card-hover-step)*1)}.card[data-astro-cid-y4spw36y]:not(:hover) .information[data-astro-cid-y4spw36y]:before{transform:scaleY(0);transition-delay:calc(var(--course-card-hover-step)*2)}.card[data-astro-cid-y4spw36y]:not(:hover) .border-left[data-astro-cid-y4spw36y]{transform:scaleY(0);transition-delay:calc(var(--course-card-hover-step)*3)}.card[data-astro-cid-y4spw36y]:not(:hover) .border-bottom[data-astro-cid-y4spw36y]{transform:scaleX(0);transition-delay:calc(var(--course-card-hover-step)*4)}.card[data-astro-cid-y4spw36y]:not(:hover):after{transform:scaleY(0);transition-delay:calc(var(--course-card-hover-step)*5)}.card[data-astro-cid-y4spw36y]:not(:hover):before{transform:scaleX(0);transition-delay:calc(var(--course-card-hover-step)*6)}@media(max-width:464px){.header[data-astro-cid-y4spw36y]{align-items:stretch;flex-direction:column;gap:1rem}.information[data-astro-cid-y4spw36y]{background:transparent;border-left:none;flex-direction:row;gap:1rem;justify-content:flex-start;margin:0 -1rem 0 0;padding:0 0 1.5rem}.information[data-astro-cid-y4spw36y]:before{display:none}.card[data-astro-cid-y4spw36y]:hover .information[data-astro-cid-y4spw36y]{border-left:0}}.CourseList{margin-bottom:5rem;padding-right:2rem}.course-row{gap:2rem;grid-template-columns:repeat(3,1fr)}@media(max-width:1280px){.CourseList{padding-right:0}}@media(max-width:1072px){.course-row{grid-template-columns:repeat(2,1fr)}}@media(max-width:768px){.course-row{grid-template-columns:1fr}}.section-card{align-items:center;border:1px solid color-mix(in srgb,var(--accent-color) 20%,transparent);border-radius:.5rem;cursor:pointer;overflow:hidden;padding:.25rem .875rem;position:relative;transition:all .3s cubic-bezier(.16,1,.3,1)}.section-card:before{background:linear-gradient(90deg,transparent,color-mix(in srgb,var(--accent-color) 10%,transparent),transparent);content:"";height:100%;left:-100%;position:absolute;top:0;width:100%;z-index:0}@keyframes section-shimmer{0%{left:-100%}to{left:100%}}.section-card:hover{background:linear-gradient(135deg,color-mix(in srgb,var(--accent-color) 8%,transparent) 0,color-mix(in srgb,var(--accent-color) 5%,transparent));border-color:var(--accent-color);box-shadow:0 8px 16px color-mix(in srgb,var(--accent-color) 25%,transparent),0 0 1px var(--accent-color);transform:translateY(-4px)}.section-card:hover:before{animation:section-shimmer 5s ease infinite}.marquee-container{flex:1;mask-image:linear-gradient(90deg,transparent 0,#000 1rem,#000 calc(100% - 3rem),transparent);-webkit-mask-image:linear-gradient(90deg,transparent 0,#000 1rem,#000 calc(100% - 3rem),transparent);overflow:hidden;padding-left:1.125rem;position:relative}.section-card:hover .marquee-container{mask-image:linear-gradient(90deg,transparent 0,#000 3rem,#000 calc(100% - 3rem),transparent);-webkit-mask-image:linear-gradient(90deg,transparent 0,#000 3rem,#000 calc(100% - 3rem),transparent)}.marquee-content{align-items:center;display:flex;width:-moz-fit-content;width:fit-content}.marquee-content.marquee-active{animation:marquee-scroll 7.5s linear infinite;animation-play-state:paused}.marquee-text{display:inline-flex;padding-right:5rem}.section-card:hover .marquee-content.marquee-active{animation-play-state:running}@keyframes marquee-scroll{0%{transform:translate(0)}to{transform:translate(-50%)}}.card-arrow{flex-shrink:0;opacity:0;position:relative;transform:translate(-8px);transition:all .3s cubic-bezier(.16,1,.3,1);z-index:2}.section-card:hover .card-arrow{opacity:1;transform:translate(0)}.FontSelectorTrigger{align-items:center;background:transparent;border:1px solid var(--fg-color);border-radius:.5rem;color:var(--fg-color);cursor:pointer;display:flex;font-family:var(--selected-font);font-size:1rem;justify-content:space-between;outline:none;padding:.75rem 1rem;transition:border-color .1s ease-in-out;width:100%}.FontSelectorTrigger:focus,.FontSelectorTrigger:hover{border-color:var(--accent-color)}.FontSelectorTrigger:focus{box-shadow:0 0 0 2px var(--accent-color)}.FontSelectorTrigger[data-disabled]{cursor:not-allowed;opacity:.7}.FontSelectorIcon{opacity:.7;transition:transform .15s ease-in-out}.FontSelectorTrigger[data-state=open] .FontSelectorIcon{transform:rotate(180deg)}.FontSelectorContent{background:var(--bg-color);border:1px solid var(--fg-color);border-radius:.5rem;box-shadow:0 4px 12px #0000004d}.FontSelectorItem{border-radius:.25rem;cursor:pointer;font-family:var(--selected-font);outline:none;padding:.5rem .75rem}.FontSelectorItem:hover,.FontSelectorItem[data-highlighted]{background:color-mix(in srgb,var(--accent-color) 20%,transparent)}.FontSelectorItem[data-state=checked]{background:color-mix(in srgb,var(--accent-color) 40%,transparent)}.FontSelectorViewport{padding:.25rem}@keyframes correct_pulse{0%{box-shadow:0 0 #10b981b3}50%{box-shadow:0 0 0 10px #10b98100}to{box-shadow:0 0 #10b98100}}@keyframes correct_glow{0%,to{background:#10b98126}50%{background:#10b98140}}.submit-text{display:contents}.submit-icon{display:none}.quiz-spacer{display:block;flex-shrink:0;width:1rem}@media(max-width:464px){.submit-text{display:none}.submit-icon{display:block}.quiz-spacer{width:.5rem}.quiz-input::-moz-placeholder{font-size:.875rem}.quiz-input::placeholder{font-size:.875rem}}.button-text[data-astro-cid-k5ybumn2]{display:contents}@media(max-width:1072px){.button-text[data-astro-cid-k5ybumn2]{display:none}}.button-text{display:contents}.button-spacer{display:block}@media(max-width:1072px){.button-spacer,.button-text{display:none}}@media(max-width:464px){.youtube-video-button{display:none}}.tab-button{background:transparent;border-radius:99rem;color:var(--gray-11);cursor:pointer;transition:all .15s ease-out}.tab-button:hover{background:#654f4f14;color:var(--fg-color)}.tab-button.active{background:#ffffff26;box-shadow:inset 0 1px #fff3,0 2px 8px -2px #0000004d;color:var(--fg-color)}.tab-button.video-button.active{color:var(--video)}.tab-button.active{color:var(--accent-color)}.tab-label{display:none}@media(max-width:768px){.mobile-hidden{display:none!important}.mobile-visible{display:flex!important;width:100%!important}}.in-progress-course-content{-webkit-mask-image:linear-gradient(180deg,transparent 0,#000 1.5rem,#000 calc(100% - 1.5rem),transparent);mask-image:linear-gradient(180deg,transparent 0,#000 1.5rem,#000 calc(100% - 1.5rem),transparent);max-height:0;opacity:0;overflow:hidden;transition:all .3s ease}.in-progress-course-content.expanded{height:25rem;max-height:25rem;opacity:1;overflow-y:auto;padding-right:1rem}.in-progress-course-content.collapsed{max-height:0;opacity:0}.in-progress-course-content::-webkit-scrollbar{width:6px}.in-progress-course-content::-webkit-scrollbar-track{background:transparent}.in-progress-course-content::-webkit-scrollbar-thumb{background:color-mix(in srgb,var(--fg-color) 20%,transparent);border-radius:3px}.in-progress-course-content::-webkit-scrollbar-thumb:hover{background:color-mix(in srgb,var(--fg-color) 30%,transparent)}.in-progress-course-header{align-items:center;background:transparent;border:1px solid color-mix(in srgb,var(--fg-color) 15%,transparent);border-radius:.375rem;color:inherit;cursor:pointer;justify-content:space-between;padding:.375rem .5rem;transition:background-color .2s ease,border-color .2s ease;width:95%}.in-progress-course-header:hover{background:color-mix(in srgb,var(--fg-color) 4%,transparent);border-color:color-mix(in srgb,var(--fg-color) 25%,transparent)}.in-progress-course-header:focus{box-shadow:0 0 0 2px color-mix(in srgb,var(--accent-color) 60%,transparent);outline:none}.in-progress-course-item{background-color:color-mix(in srgb,var(--fg-color) 2.5%,transparent);border:1px solid color-mix(in srgb,var(--fg-color) 15%,transparent);border-radius:.25rem;gap:.25rem;padding:.5rem;position:relative;transition:all .2s ease}.in-progress-course-item:hover{background-color:color-mix(in srgb,var(--fg-color) 5%,transparent)!important;border-color:color-mix(in srgb,var(--fg-color) 30%,transparent)!important;box-shadow:0 2px 8px color-mix(in srgb,var(--black) 30%,transparent);transform:translate(.25rem)}
