*{-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}body{margin:0}.spinner-border-lg{width:2rem;height:2rem}.card.svelte-cacjn9{border-radius:1rem}.btn-lg.svelte-cacjn9{padding:.75rem 1.5rem;font-size:1.1rem}@media(max-width:576px){.card-body.svelte-cacjn9{padding:2rem 1.5rem!important}}section.svelte-1k74qtq h2:where(.svelte-1k74qtq){color:#212529}section.svelte-1k74qtq p:where(.svelte-1k74qtq),section.svelte-1k74qtq ul:where(.svelte-1k74qtq){line-height:1.7}section.svelte-1k74qtq ul:where(.svelte-1k74qtq){padding-left:1.5rem}section.svelte-1k74qtq ul:where(.svelte-1k74qtq) li:where(.svelte-1k74qtq){margin-bottom:.5rem}@media(max-width:576px){.card-body.svelte-1k74qtq{padding:1.5rem!important}.btn-lg.svelte-1k74qtq{padding:.75rem 2rem;font-size:1rem}}.code-editor-container.svelte-vdcre1{background-color:#fafafa;border-radius:4px;overflow:hidden}.editor-mount.svelte-vdcre1{position:relative}.cm-editor{height:100%!important}.cm-content{min-height:100%!important}.cm-scroller{height:100%!important}.cm-lineNumbers{background-color:#f5f5f5;border-right:1px solid #e0e0e0;color:#666;padding-right:8px}.cm-activeLine{background-color:#f0f8ff}.cm-selectionBackground{background-color:#b3d4fc!important}.cm-cursor{border-left-color:#333}.cm-content .tok-keyword{color:#06c;font-weight:700}.cm-content .tok-string{color:green}.cm-content .tok-comment{color:gray;font-style:italic}.cm-content .tok-number{color:#f60}.cm-content .tok-operator{color:#333}.cm-content .tok-function{color:#60c}@media(pointer:coarse),(hover:none){.cm-tooltip-hover{display:none!important}}.cm-lint-marker-error{animation:svelte-vdcre1-blink 1s ease-in-out infinite}@keyframes svelte-vdcre1-blink{0%,to{opacity:1}50%{opacity:.3}}.xterm{cursor:text;position:relative;user-select:none;-ms-user-select:none;-webkit-user-select:none}.xterm.focus,.xterm:focus{outline:none}.xterm .xterm-helpers{position:absolute;top:0;z-index:5}.xterm .xterm-helper-textarea{padding:0;border:0;margin:0;position:absolute;opacity:0;left:-9999em;top:0;width:0;height:0;z-index:-5;white-space:nowrap;overflow:hidden;resize:none}.xterm .composition-view{background:#000;color:#fff;display:none;position:absolute;white-space:nowrap;z-index:1}.xterm .composition-view.active{display:block}.xterm .xterm-viewport{background-color:#000;overflow-y:scroll;cursor:default;position:absolute;inset:0}.xterm .xterm-screen{position:relative}.xterm .xterm-screen canvas{position:absolute;left:0;top:0}.xterm .xterm-scroll-area{visibility:hidden}.xterm-char-measure-element{display:inline-block;visibility:hidden;position:absolute;top:0;left:-9999em;line-height:normal}.xterm.enable-mouse-events{cursor:default}.xterm.xterm-cursor-pointer,.xterm .xterm-cursor-pointer{cursor:pointer}.xterm.column-select.focus{cursor:crosshair}.xterm .xterm-accessibility:not(.debug),.xterm .xterm-message{position:absolute;inset:0;z-index:10;color:transparent;pointer-events:none}.xterm .xterm-accessibility-tree:not(.debug) *::selection{color:transparent}.xterm .xterm-accessibility-tree{-webkit-user-select:text;user-select:text;white-space:pre}.xterm .live-region{position:absolute;left:-9999px;width:1px;height:1px;overflow:hidden}.xterm-dim{opacity:1!important}.xterm-underline-1{text-decoration:underline}.xterm-underline-2{text-decoration:double underline}.xterm-underline-3{text-decoration:wavy underline}.xterm-underline-4{text-decoration:dotted underline}.xterm-underline-5{text-decoration:dashed underline}.xterm-overline{text-decoration:overline}.xterm-overline.xterm-underline-1{text-decoration:overline underline}.xterm-overline.xterm-underline-2{text-decoration:overline double underline}.xterm-overline.xterm-underline-3{text-decoration:overline wavy underline}.xterm-overline.xterm-underline-4{text-decoration:overline dotted underline}.xterm-overline.xterm-underline-5{text-decoration:overline dashed underline}.xterm-strikethrough{text-decoration:line-through}.xterm-screen .xterm-decoration-container .xterm-decoration{z-index:6;position:absolute}.xterm-screen .xterm-decoration-container .xterm-decoration.xterm-decoration-top-layer{z-index:7}.xterm-decoration-overview-ruler{z-index:8;position:absolute;top:0;right:0;pointer-events:none}.xterm-decoration-top{z-index:2;position:relative}.console-terminal-container.svelte-1k5ah7y{display:flex;flex-direction:column;background-color:#1e1e1e;border:1px solid #333;border-radius:4px;overflow:hidden;height:100%}.terminal-mount.svelte-1k5ah7y{position:relative;background-color:#1e1e1e;flex:1;min-height:0}.xterm,.xterm-viewport{height:100%!important;width:100%!important}.xterm-screen{height:100%!important}.xterm .xterm-viewport{scrollbar-width:thin;scrollbar-color:#666 #1e1e1e}.xterm .xterm-viewport::-webkit-scrollbar{width:8px}.xterm .xterm-viewport::-webkit-scrollbar-track{background:#1e1e1e}.xterm .xterm-viewport::-webkit-scrollbar-thumb{background-color:#666;border-radius:4px}.xterm .xterm-viewport::-webkit-scrollbar-thumb:hover{background-color:#888}.description-content.svelte-du4681{max-width:800px;margin:0 auto}.exercise-description.svelte-du4681 h1,.exercise-description.svelte-du4681 h2,.exercise-description.svelte-du4681 h3,.exercise-description.svelte-du4681 h4,.exercise-description.svelte-du4681 h5,.exercise-description.svelte-du4681 h6{margin-top:1.5rem;margin-bottom:.75rem;font-weight:600}.exercise-description.svelte-du4681 pre{background-color:var(--bs-light);border:1px solid var(--bs-border-color);border-radius:var(--bs-border-radius);padding:1rem;margin-bottom:1rem;overflow-x:auto}.exercise-description.svelte-du4681 code{background-color:var(--bs-light);color:var(--bs-pink);padding:.125rem .25rem;border-radius:var(--bs-border-radius-sm);font-size:.875em}.exercise-description.svelte-du4681 pre code{background-color:transparent;color:inherit;padding:0}.exercise-description.svelte-du4681 blockquote{margin:1rem 0;padding:.75rem 1rem;border-left:4px solid var(--bs-border-color);background-color:var(--bs-light);color:var(--bs-secondary)}.exercise-description.svelte-du4681 table{width:100%;margin-bottom:1rem;border-collapse:collapse}.exercise-description.svelte-du4681 th,.exercise-description.svelte-du4681 td{padding:.5rem;border:1px solid var(--bs-border-color)}.exercise-description.svelte-du4681 th{background-color:var(--bs-light);font-weight:600}.exercise-description.svelte-du4681 img{max-width:100%;height:auto;border-radius:var(--bs-border-radius);margin:.5rem 0}.exercise-timeline.svelte-16bxd5q{display:grid;grid-template-columns:max-content;justify-content:center;gap:0}.timeline-marker-wrapper.svelte-16bxd5q{width:28px;flex-shrink:0}.timeline-marker-container.svelte-16bxd5q{width:28px;height:28px;flex-shrink:0}.timeline-marker.svelte-16bxd5q{flex-shrink:0;border:2px solid;position:relative;z-index:1}.marker-unsubmitted.svelte-16bxd5q{background-color:#fff;border-color:#6c757d;width:16px;height:16px}.marker-submitted.svelte-16bxd5q{background-color:#fff;border-color:#198754;width:24px;height:24px}.timeline-line.svelte-16bxd5q{width:2px;background-color:#dee2e6;left:50%;transform:translate(-50%);top:30px;height:calc(100% - 32px + 1rem);z-index:0}.timeline-content.svelte-16bxd5q .btn-link:where(.svelte-16bxd5q){font-size:1rem;line-height:1.5}.timeline-content.svelte-16bxd5q .btn-link:where(.svelte-16bxd5q):not(:disabled):hover{text-decoration:underline!important}.timeline-content.svelte-16bxd5q .btn-link:where(.svelte-16bxd5q):disabled{opacity:1}.marker-current.svelte-16bxd5q{animation:svelte-16bxd5q-blink 1.5s ease-in-out infinite;animation-delay:1.5s}@keyframes svelte-16bxd5q-blink{0%,to{opacity:1}50%{opacity:.3}}.course-card.svelte-15e0ls9{cursor:pointer;transition:transform .2s ease-in-out,box-shadow .2s ease-in-out}.course-card.svelte-15e0ls9:hover{transform:translateY(-2px);box-shadow:0 4px 8px #0000001a}.course-card.svelte-15e0ls9:focus{outline:2px solid var(--bs-primary);outline-offset:2px}.exercise-card.svelte-1coifzw{cursor:pointer;transition:transform .2s ease-in-out,box-shadow .2s ease-in-out}.exercise-card.svelte-1coifzw:hover{transform:translateY(-2px);box-shadow:0 4px 8px #0000001a}.exercise-card.svelte-1coifzw:focus{outline:2px solid var(--bs-primary);outline-offset:2px}.exercise-assignment-page.svelte-ug5fcj{background-color:#f8f9fa;position:fixed;inset:0;display:flex;flex-direction:column}.exercise-header.svelte-ug5fcj{min-height:50px;box-shadow:0 2px 4px #0000001a;flex-shrink:0}.exercise-work-area.svelte-ug5fcj{background-color:#fff;flex:1 1 auto;overflow:hidden;position:relative}.exercise-panel.svelte-ug5fcj{position:absolute;inset:0}.exercise-toolbar.svelte-ug5fcj{min-height:50px;box-shadow:0 -2px 4px #0000001a;flex-shrink:0}@media(max-width:576px){.exercise-header.svelte-ug5fcj .exercise-info:where(.svelte-ug5fcj) h6:where(.svelte-ug5fcj){font-size:.9rem}.exercise-toolbar.svelte-ug5fcj .btn-group:where(.svelte-ug5fcj) .btn:where(.svelte-ug5fcj){padding:.25rem .5rem}.control-buttons.svelte-ug5fcj .btn:where(.svelte-ug5fcj){padding:.25rem .5rem}}.exercise-header.svelte-ug5fcj .btn-link:where(.svelte-ug5fcj):hover h6:where(.svelte-ug5fcj){text-decoration:underline}.exercise-panel-opened.svelte-ug5fcj{opacity:1;transition:opacity .1s ease-in}@starting-style{.exercise-panel-opened.svelte-ug5fcj{opacity:0}}
