body{-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen,Ubuntu,Cantarell,Fira Sans,Droid Sans,Helvetica Neue,sans-serif;margin:0}code{font-family:source-code-pro,Menlo,Monaco,Consolas,Courier New,monospace}body{padding-top:68px}.course-banner-bg{align-items:center;border-bottom:1px solid #000;display:flex;justify-content:center;min-height:400px;position:relative;width:100%}.course-banner-content{margin:0 20% 0 40px;max-width:700px;position:relative;text-align:left;z-index:2}.course-banner-title{color:#000;font-size:64px;font-weight:700;margin-bottom:18px}.course-banner-desc{color:#000;font-size:22px;margin-bottom:32px}#course-button{font-size:18px;padding:8px 20px}.content-banner{background-color:#d2f4fd;height:800px;padding:40px 0}.subject-grid{display:flex;flex-wrap:wrap;gap:20px;justify-content:center}.subject-item{text-align:center;width:250px}.subject-card{background-color:#fff;border-radius:8px;box-shadow:0 4px 8px #0000001a;overflow:hidden;text-align:left;transition:transform .2s}.subject-card-link:hover .subject-card,.subject-card:hover{transform:translateY(-5px)}.subject-card img{display:block;height:auto;width:100%}.subject-card h3{color:#333;font-size:1.1rem;font-weight:700;margin:0;padding:15px}.subject-card span{background-color:initial}.subject-title{font-size:15px;padding-left:10px;text-align:left}.site-footer{background-color:#fff;height:200px;padding:40px 0}.basic-subject-grid{display:flex;flex-wrap:wrap;gap:20px;justify-content:center}.basic-subject-item{text-align:center;width:250px}.basic-subject-card{background-color:#fff;border-radius:8px;box-shadow:0 4px 8px #0000001a;overflow:hidden;text-align:left;transition:transform .2s}.basic-subject-card-link:hover .basic-subject-card,.basic-subject-card:hover{transform:translateY(-5px)}.basic-subject-card img{display:block;height:auto;width:100%}.basic-subject-card h3{color:#333;font-size:1.1rem;font-weight:700;margin:0;padding:15px}.basic-subject-card span{background-color:initial}.basic-subject-title{font-size:20px;font-weight:700;margin-top:8px;padding-left:10px;text-align:left}.basic-site-footer{background-color:#fff;height:200px;padding:40px 0}.basic-card{font-size:16px;width:300px}.basic-card-title{font-size:20px;font-weight:700}.basic-card-header{font-size:30px;font-weight:700;margin-bottom:15px}.basic-subject-section{margin-bottom:40px}.basic-section-header{font-size:35px;font-weight:700;margin-bottom:8px}.basic-cards-container{display:flex;flex-wrap:wrap;gap:50px}.basic-bi{padding:10px}.subject-row{align-items:center;background:#fff;border:1px solid #e0e0e0;border-radius:12px;box-shadow:0 1px 2px #00000008;display:flex;margin:0 auto;padding:10px 16px;text-decoration:none;transition:box-shadow .2s;width:100%}.subject-row:hover{box-shadow:0 2px 8px #00000014}.subject-title{color:#222;font-weight:500}.subject-arrow{margin-left:auto}.basic-rows-container{display:flex;flex-wrap:wrap;gap:10px}.chapter-bar{background-color:hsla(0,0%,6%,.918);height:60px;position:-webkit-sticky;position:sticky;top:0;z-index:1030}.chapter-bar .container-fluid{height:100%}.chapter-title{color:rgba(90,248,201,.918);font-size:18px;text-align:left}.chapter-bar .btn{align-items:center;display:inline-flex;font-size:20px;height:40px;justify-content:center;width:40px}.tools-bar{align-items:center;background-color:#fff;border-bottom:1px solid #dee2e6;border-top:1px solid #dee2e6;height:50px;position:-webkit-sticky;position:sticky;top:60px;z-index:1020}.switch-container{align-items:center;display:flex}.switch-container .form-switch{margin-left:10px}.switch-text{display:flex;flex-direction:column;flex-grow:1;margin-left:15px}.switch-container .switch-subtitle{color:#6c757d;font-size:.875em}.dropdown-item:active,.dropdown-item:focus,.dropdown-item:hover{background-color:#5af8c91a;color:inherit}.form-check-input:checked{background-color:rgba(90,248,201,.918);border-color:rgba(90,248,201,.918)}.content-container{background-color:#fff}.content-theme.dark .content-container{background-color:#2b2b2b}.slide-heading{color:#fff;font-size:2rem;font-weight:700;margin-bottom:16px;text-align:center}.slide-paragraph{color:#fff;font-size:1rem;font-weight:400;margin-bottom:8px;max-width:600px;text-align:center}.slide-heading2{color:#fff;font-size:2rem;font-weight:700;margin-bottom:16px;text-align:left}.slide-paragraph2{color:#fff;font-size:1rem;font-weight:400;margin-bottom:8px;max-width:600px;text-align:left}.centered-left-block{margin-left:auto;margin-right:auto;max-width:740px;text-align:left;width:100%}.slide-list{font-size:1rem;font-weight:400;margin-bottom:8px;max-width:600px;padding-left:24px;text-align:left}#content-section{background-color:#fff;height:100vh}.content-theme.dark #content-section{background-color:#2b2b2b}#slide_text{color:#000}.content-theme.dark #slide_text{color:#fff}.custom-progress-bar{background-color:#1976d2!important}.content-theme.dark .custom-progress-bar{background-color:#53f1c2!important}.offcanvas{background-color:#fff;padding-top:68px!important;right:0;top:0!important}.offcanvas-start{z-index:1050!important}.offcanvas-end{bottom:4rem;z-index:2!important}.offcanvas-start .sidebar{border-left:none!important;border-right:none!important}.offcanvas-end .sidebar{border-left:1px solid #0003!important;border-right:none!important}.offcanvas.offcanvas-end,.offcanvas.offcanvas-start{border-left:none!important;border-right:none!important}.footer{background-color:#1c1c1c;height:200px}.exercise-page{align-items:center;display:flex;flex-direction:column;height:70vh;justify-content:center}.exercise-options{max-width:700px;width:60%}.exercise-options .btn{background:#0000;border:3px solid #222;border:3px solid #585858;color:#222;font-family:inherit;transition:background .2s,color .2s,border-color .2s}.exercise-options .btn:focus,.exercise-options .btn:hover{background:#5bc7a7;border-color:#5af8c9;color:#111;outline:none}.carousel-control-next:hover .carousel-control-next-icon,.carousel-control-prev:hover .carousel-control-prev-icon{filter:grayscale(0) brightness(0) opacity(1)}.content-theme.dark .carousel-control-next:hover .carousel-control-next-icon,.content-theme.dark .carousel-control-prev:hover .carousel-control-prev-icon{filter:brightness(0) saturate(100%) invert(74%) sepia(81%) saturate(464%) hue-rotate(109deg) brightness(101%) contrast(101%)}.carousel-control-next .carousel-control-next-icon,.carousel-control-prev .carousel-control-prev-icon{filter:grayscale(0) brightness(0) opacity(1)}.content-theme.dark .carousel-control-next .carousel-control-next-icon,.content-theme.dark .carousel-control-prev .carousel-control-prev-icon{filter:brightness(0) saturate(100%) invert(74%) sepia(81%) saturate(464%) hue-rotate(109deg) brightness(101%) contrast(101%)}.custom-carousel-controls{align-items:center;display:flex;gap:0;justify-content:center;margin-top:0}.custom-nav-btn{background:#0000;border:3px solid #585858;border-radius:20px 0 0 20px;border-right:none;color:#222;cursor:pointer;font-size:1.1rem;outline:none;padding:.5rem 1.5rem;transition:background .2s,color .2s,border-color .2s}.custom-nav-btn.right{border-left:1px solid #585858;border-radius:0 20px 20px 0;border-right:3px solid #585858}.custom-nav-btn:disabled{cursor:not-allowed;opacity:.5}.custom-nav-btn:not(:disabled):focus,.custom-nav-btn:not(:disabled):hover{background:#fff;border-color:#1976d2;color:#111;outline:none}.content-theme.dark .custom-nav-btn{background:#0000;border-color:#585858;color:#e0f7f3}.content-theme.dark .custom-nav-btn.right{border-left:1px solid #585858;border-right:3px solid #585858}.content-theme.dark .custom-nav-btn:not(:disabled):focus,.content-theme.dark .custom-nav-btn:not(:disabled):hover{background:#2b2b2b;border-color:#5af8c9;color:#5af8c9;outline:none}.carousel-indicators button:not(.active),.carousel-indicators li:not(.active){background-color:#525252;opacity:.6}.carousel-indicators .active{background-color:#000}.content-theme.dark .carousel-indicators .active{background-color:#5af8c9}.content3slides-animated{transition:transform .4s cubic-bezier(.77,0,.18,1);will-change:transform}.content3slides-animated.slide-left{opacity:.92;transform:translateX(-11rem)}.sidebar{align-items:center;background:#fff;display:flex;flex-direction:column;padding:32px 16px;width:400px}.sidebar-title{color:#000;font-size:18px;margin-bottom:16px}.content-theme.dark .sidebar-title{color:#fff;font-size:18px;font-weight:700;margin-bottom:16px}.content-theme.dark .sidebar{align-items:center;background:#2b2b2b;border-left:1px solid #1d1d1d;display:flex;flex-direction:column;padding:32px 16px;width:220px}.sidebar .sidebar-slide-item{align-items:left;cursor:pointer;display:flex;margin-bottom:8px}.sidebar-slide-bullet{color:#888;font-size:18px;margin-right:8px}.sidebar-slide-bullet.active{color:#52abae}.content-theme.dark .sidebar-slide-bullet{color:#f1f1f1;font-size:18px;margin-right:8px}.content-theme.dark .sidebar-slide-bullet.active{color:#5af8c9}.sidebar-slide-heading{color:#888;font-size:16px;font-weight:400;margin:0;text-align:left}.sidebar-slide-heading.active{color:#52abae;font-weight:700}.content-theme.dark .sidebar-slide-heading{color:#f1f1f1;font-size:16px;font-weight:400;margin:0;text-align:left}.content-theme.dark .sidebar-slide-heading.active{color:#5af8c9;font-weight:700}.sidebar-slide-check{color:#4caf50;font-size:16px;margin-left:8px}.content-theme.dark .sidebar-slide-check{color:#5af8c9;font-size:16px;margin-left:8px}.nav-buttons-container{display:flex;justify-content:space-between;margin-top:0;min-height:30px}.nav-button{border:none;border-radius:6px;cursor:pointer;font-size:16px;padding:8px 24px;transition:background .2s,color .2s}.nav-button-prev{background:#f5f5f5;color:#222}.nav-button-next{background:#52abae;color:#fff}.nav-button:disabled{cursor:not-allowed;opacity:.5}.nav-button:not(:disabled):hover{background:#90d4d6;color:#111}.content-theme.dark .nav-button-prev{background:#f5f5f5;color:#222}.content-theme.dark .nav-button-next{background:#3dd3a6;color:#fff}.content-theme.dark .nav-button:not(:disabled):hover{background:#a3f1da;color:#111}.c3-progress-bar-container{margin:24px 0}.c3-progress-bar-title{font-weight:700}.c3-progress-bar-bg{background:#e0e0e0;border-radius:4px;height:8px;margin:8px 0;position:relative;width:100%}.c3-progress-bar-fill{background:#52abae;border-radius:4px;height:100%;transition:width .3s}.c3-progress-bar-percent{color:#888;font-size:14px}.content-theme.dark .c3-progress-bar-fill{background:#3dd3a6;border-radius:4px;height:100%;transition:width .3s}.c3-exercise-option{background:#f5f5f5;border:2px solid #ddd;border-radius:8px;cursor:pointer;margin-bottom:12px;padding:16px;transition:background .2s,border .2s}.c3-exercise-option.selected{background:#e3f2fd;border:2px solid #1976d2}.c3-exercise-option.locked{cursor:default}.content-theme.dark .c3-exercise-option{background:#2b2b2b;border:2px solid #888;border-radius:8px;cursor:pointer;margin-bottom:12px;padding:16px;transition:background .2s,border .2s}.content-theme.dark .c3-exercise-option.selected{background:#3dd3a6;border:2px solid #6df7cd}.c3-feedback{font-weight:700;margin-left:12px}.c3-feedback-correct{color:#4caf50}.c3-feedback-wrong{color:#f44336}.content-theme.dark .c3-feedback-correct{color:#fff}.content-theme.dark .c3-feedback-wrong{color:#000}.teacher-home-banner .container{color:rgba(48,117,119,.918);font-weight:700;margin:40px}.student-table{margin:20px}.student-table table{border-radius:10px;overflow:hidden}.table-caption{font-size:25px;padding:10px}.home-banner{height:35rem;position:relative}.home-banner .container-fluid{height:100%;padding:0}.adjustable-video{height:100%;object-fit:cover;position:relative;width:100%;z-index:1}.overlay-video{height:auto;left:50%;max-height:8.5rem;max-width:100vw;pointer-events:none;position:absolute;top:40%;transform:translate(-50%,-50%);width:400px;z-index:2}#overlay-button{flex-shrink:0;padding:8px 45px;top:68%;white-space:nowrap}#overlay-button,.overlay-text{font-size:16px;left:50%;position:absolute;transform:translate(-50%,-50%);z-index:2}.overlay-text{color:rgba(0,0,0,.918);max-width:100vw;text-align:center;top:56%;width:400px}.introduction-title{color:rgba(48,117,119,.918);font-size:32px;font-weight:700;margin-top:1.5rem;max-width:100vw;width:40rem}.introduction-text{font-size:18px;font-weight:700;max-width:100vw;padding:0 20px;width:50rem}#introduction-container{align-items:center;display:flex;flex-direction:column;justify-content:center;margin-top:5.5rem;text-align:center}.sponsored-section{background-color:#fff;overflow:hidden;padding:30px 0;text-align:center}.sponsorship-banner{align-items:center;display:flex;flex-shrink:0;justify-content:center}.sponsorship-image{height:80px;max-width:100%;object-fit:contain;width:200px}.sponsored-section .container{align-items:center;display:flex;flex-wrap:nowrap;gap:15px;justify-content:center;width:100%}.attribution-text{color:#555;font-size:.9em;font-weight:700;margin:0;white-space:nowrap}.category-bar{align-items:center;border-top:1px solid #000;flex-direction:row;justify-content:center;margin-bottom:1rem;margin-top:32px;max-width:100vw;padding-top:2rem}.category-bar,.category-btn-group{display:flex;gap:16px}.category-btn{background:#0000;border:2px solid #8b8b8b;border-radius:24px;color:#575757;cursor:pointer;flex-shrink:0;font-size:16px;font-weight:700;padding:8px 24px;transition:background .2s,color .2s}.category-btn.selected{background:rgba(67,164,167,.781);border:2px solid #000;color:#030303}@media (max-width:630px){.category-bar{align-items:stretch;flex-direction:column;gap:12px;padding:10px}.category-btn-group{display:flex;flex-wrap:wrap;gap:16px;justify-content:left}.divider{display:none}}.category-bar .search-container{align-items:center;background:#0000;border:1px solid #2a2e3a;border-radius:8px;display:flex;padding:8px 16px}.category-bar .search-icon{color:#bfc9e0;margin-right:8px}.category-bar input[type=text]{background:#0000;border:none;color:#000;font-size:16px;outline:none;padding-left:16px;width:120px}.category-bar .divider{border-left:1px solid #8b8b8b;height:32px;margin:0 16px}.course-bar{grid-gap:24px;background:hsla(0,0%,100%,.918);display:grid;gap:24px;grid-template-columns:repeat(auto-fit,minmax(320px,1fr));margin:0 auto;max-width:1100px;padding:32px 16px}.course-card{background:#fff;border:2px solid #000;border-radius:12px;box-shadow:0 2px 8px #0006;color:#000;min-width:0;overflow:hidden;width:100%}@media (max-width:400px){.course-bar{grid-template-columns:repeat(auto-fit,minmax(200px,1fr))}}.course-card img{border-bottom:1px solid #000;height:120px;object-fit:cover;object-position:center 90%;width:100%}.course-card-content{padding:24px}.course-card-chapter{color:#000;font-size:12px;letter-spacing:2px;margin-bottom:8px}.course-card-title{font-size:22px;font-weight:700;margin-bottom:8px}.course-card-desc{-webkit-line-clamp:2;-webkit-box-orient:vertical;color:#000;display:-webkit-box;font-size:16px;margin-bottom:20px;overflow:hidden;text-overflow:ellipsis}.course-card-level{background:rgba(67,164,167,.781);border-radius:16px;color:#000;display:inline-block;font-size:14px;font-weight:700;letter-spacing:1px;padding:6px 18px}.course-card-level span{margin-right:8px}#courseCards-button{background-color:#fff;border:2px solid #000;box-shadow:0 3px rgba(0,0,0,.918);display:block;margin:24px auto 20rem;padding:12px 16px}#courseCards-button:hover{background-color:rgba(80,197,201,.918);box-shadow:0 3px rgba(48,117,119,.918)}.course-progress-box{background:#fff;border:1px solid #000;border-radius:12px;box-shadow:0 4px 24px #00000026;color:#000;font-family:Segoe UI,Arial,sans-serif;margin:0;padding:24px 20px;width:260px}.course-progress-box h3{font-size:1.2em;font-weight:700;margin-bottom:18px;margin-top:0}.progress-row{align-items:center;display:flex;font-size:1em;justify-content:space-between;margin-bottom:4px}.progress-icon{font-size:1.2em;margin-right:8px}.progress-count{font-size:.95em;font-weight:700}.progress-bar{background:#1a2238;border-radius:6px;height:8px;margin-bottom:14px;overflow:hidden;width:100%}.progress-fill{background:linear-gradient(90deg,#43a3a7 60%,gold);border-radius:6px;height:100%;transition:width .3s;width:0}.selection-banner{background:#0000;display:flex;justify-content:center;padding:40px 0}.center-content-row{align-items:flex-start;display:flex;gap:48px;justify-content:center;margin:0 auto;max-width:1200px;width:100%}.chapter-selector{background:#fff;border:1px solid #000;border-radius:16px;box-shadow:0 4px 24px #00000026;margin:0;padding:10px;width:840px}.chapter-list{list-style:none;margin:0;padding:0;position:relative}.chapter-item{background:#fff;border-radius:8px;cursor:pointer;display:flex;flex-direction:column;margin-bottom:24px;padding:8px;position:relative;transition:background .2s}.chapter-item:hover{background:rgba(40,138,141,.397)}.chapter-item:last-child{margin-bottom:0}.chapter-header{padding-right:32px}.chapter-header,.chapter-number{align-items:center;display:flex;position:relative}.chapter-number{background:#181c26;background:#fff;border:3px solid #000;border-radius:50%;color:#000;flex-shrink:0;font-family:monospace;font-size:1.5em;height:48px;justify-content:center;margin-right:16px;width:48px;z-index:1}.chapter-item.active:not(:last-child) .chapter-number:after{height:120px}.chapter-item:not(:last-child):before{background:#000;content:"";height:100%;left:32px;position:absolute;top:48px;width:2px;z-index:1}.chapter-title{color:#000;font-family:monospace;font-size:1.7em;font-weight:700}.chapter-dropdown{color:#bfc9db;font-size:1.2em;margin-left:auto;pointer-events:none;transition:transform .3s}.chapter-dropdown.open{transform:rotate(180deg)}.chapter-content{background:hsla(0,0%,100%,.918);border-radius:6px;box-sizing:border-box;color:#000;margin-left:64px;max-height:0;overflow:hidden;padding:0 16px;transition:max-height .3s,padding .3s;width:calc(100% - 80px)}.chapter-content.show{margin-bottom:8px;max-height:1000px;padding:16px}.exercise-list{color:#000;font-family:sans-serif;list-style:none;margin:0;padding:0}.exercise-item{align-items:center;border-bottom:1px solid #2e3a50;display:grid;grid-template-columns:1fr 2fr 1fr;padding:12px 0}.exercise-item:last-child{border-bottom:none}.exercise-item span:first-child{color:#000;font-weight:700}.bonus-item span:nth-child(2){color:rgba(57,150,153,.918);font-weight:700}.exercise-xp{border-radius:6px;box-sizing:border-box;font-weight:700;justify-self:end;padding:8px 12px;text-align:center;width:80px}.start-btn{background-color:rgba(67,163,167,.918);box-shadow:0 3px rgba(48,117,119,.918);color:#000}.exercise-xp.completed{background-color:hsla(0,0%,100%,.918);box-shadow:0 3px rgba(80,80,80,.918);color:#000}.locked-btn{background-color:#2e3a50;border:22 solid #5a6170;color:#a0a8b8}.bonus-claim-btn{background-color:#fac514!important;border:2px solid #83710f;box-shadow:0 3px #c47b0e!important;color:#000!important;font-weight:700}.bonus-claim-btn:hover{background-color:#ffe066!important;border-color:#bfa100;color:#111!important}@media (max-width:1180px){.center-content-row{align-items:stretch;flex-direction:column;gap:24px}.chapter-selector,.course-progress-box{align-self:center;max-width:100%;width:95%}.course-progress-box{margin-bottom:16px;order:-1}}@media (max-width:700px){.chapter-item:not(:last-child):before,.chapter-number{display:none}}@media (max-width:750px){.course-banner-bg{min-height:260px;padding:24px 0}.course-banner-content{margin:0 0 0 12px;max-width:98vw;padding:0 8px;text-align:center}.course-banner-title{font-size:2rem;margin-bottom:12px}.course-banner-desc{font-size:1.1rem;margin-bottom:20px}#course-button{font-size:1rem;padding:8px 16px}}@media (max-width:600px){.course-banner-bg{min-height:180px;padding:12px 0}.course-banner-content{margin:0 4px;max-width:100vw;padding:0 2px}.course-banner-title{font-size:1.2rem}#course-button,.course-banner-desc{font-size:.95rem}#course-button{padding:6px 10px}}.footer-bar{align-items:center;background:#ffffffd0;border-top:1px solid #000;bottom:0;display:flex;gap:8px;height:4rem;justify-content:space-between;left:0;padding:12px 16px;position:fixed;right:0}.footer-left{justify-content:flex-start;min-width:0}.footer-center,.footer-left{align-items:center;display:flex;flex:1 1}.footer-center{justify-content:center}.footer-right{justify-content:flex-end}.footer-content,.footer-right{align-items:center;display:flex;flex:1 1}.footer-content{gap:24px;justify-content:flex-start}.mark-complete-btn{background:#52abae;border:none;border-radius:8px;box-shadow:0 3px rgba(48,117,119,.918);color:#000;cursor:pointer;font-size:18px;font-weight:700;padding:10px 32px;transition:background .2s;white-space:nowrap}.mark-complete-btn:active{background:rgba(80,197,201,.918);color:#000}.mark-complete-btn:disabled{background:#52abae7c;box-shadow:0 3px rgba(48,117,119,.521);color:#00000070;cursor:not-allowed}.footer-chevron-btn{background:#0000;color:#000;flex-shrink:0;font-size:22px;height:36px;justify-content:center;transition:background .2s;width:36px}.footer-chevron-btn,.footer-context-btn{align-items:center;border:none;cursor:pointer;display:flex}.footer-context-btn{background:none;gap:10px;overflow:hidden;padding:8px 12px}.footer-context-btn .bi{color:#5ba6a6;flex-shrink:0;font-size:2rem}.footer-context-texts{align-items:flex-start;display:flex;flex-direction:column;overflow:hidden;white-space:nowrap}.footer-context-title{color:#222;font-weight:700}.footer-context-section,.footer-context-title{font-size:1rem;overflow:hidden;text-overflow:ellipsis;width:100%}.footer-context-section{color:#5ba6a6;font-weight:500}.mark-complete-short{display:none}@media (max-width:600px){.mark-complete-full{display:none}.mark-complete-short{display:inline}}@media (max-width:550px){.footer-context-texts{display:none}}@media (max-width:480px){.footer-bar,.footer-context-btn{padding:8px}.footer-chevron-btn{font-size:20px;height:32px;margin-right:0;width:32px}}.offcanvas.offcanvas-start,.sidebar-content{background:#e9e9e9!important;margin-top:0!important;padding-top:0!important}.offcanvas.offcanvas-start{height:100vh!important;top:0!important;width:min(360px,88vw)!important}.sidebar-content{color:#000;display:flex;flex-direction:column;font-family:Inter,sans-serif;height:100%;min-width:280px}.sidebar-title{flex-shrink:0;font-size:22px;font-weight:700;padding:40px 20px 10px}.sidebar-list{flex-grow:1;overflow-y:auto;padding:0 10px 88px}.sidebar-group-header{align-items:center;cursor:pointer;display:flex;font-size:18px;font-weight:600;justify-content:space-between;padding:16px 10px 8px}.sidebar-group-list{list-style:none;margin:0;padding:0}.sidebar-list-item{align-items:flex-start;border-radius:6px;cursor:pointer;display:flex;font-weight:400;gap:8px;margin-bottom:2px;padding:8px 10px;transition:background .2s,color .2s}.sidebar-list-item.completed{color:rgba(0,0,0,.918)}.sidebar-list-item.completed .sidebar-icon{color:rgba(67,163,167,.918)}.sidebar-list-item.current{color:#000!important}.sidebar-list-item.current .sidebar-icon{color:#b0bcce!important}.sidebar-list-item.locked{background:none;color:#64748b;cursor:default}.sidebar-list-item.locked .sidebar-icon{color:#64748b!important}.sidebar-list-item.active{background:#43a3a7cc!important;box-shadow:0 2px 8px #00000014;color:#000!important;font-weight:700}.sidebar-list-item.active .sidebar-icon{color:#000}.sidebar-list-item.bonus.current{color:#000!important}.sidebar-list-item.bonus .sidebar-icon.bonus{color:#e9b301!important}.sidebar-list-item.bonus.completed{color:#000}.sidebar-list-item.bonus.completed .sidebar-icon{color:rgba(67,163,167,.918)}.sidebar-list-item.bonus.locked{background:none!important;color:#64748b!important;cursor:default!important}.sidebar-list-item.bonus.locked .sidebar-icon{color:#64748b!important}.sidebar-icon{align-items:center;display:flex;font-size:18px;justify-content:center;width:24px}.sidebar-icon,.sidebar-list-item .sidebar-icon,.sidebar-list-item.bonus .sidebar-icon{align-items:center;display:inline-flex;justify-content:center;min-width:24px;text-align:center;width:24px}.sidebar-section-label{display:inline-block;flex-shrink:0;margin-right:8px;min-width:100px}.sidebar-section-label,.sidebar-section-name{font-weight:500;margin-left:0;text-align:left}.sidebar-section-name{overflow-wrap:anywhere}.sidebar-divider{border-color:#2c3e50;margin:10px 0}@media (max-width:500px){.offcanvas.offcanvas-start{max-width:100vw!important;width:85vw!important}.sidebar-content{min-width:0;width:100%}.sidebar-title{padding:20px 14px 8px}.sidebar-list{padding:0 8px 88px}.sidebar-group-header{padding:12px 8px 8px}.sidebar-icon,.sidebar-list-item .sidebar-icon,.sidebar-list-item.bonus .sidebar-icon{min-width:20px;width:20px}.sidebar-section-label{min-width:72px}}@media (max-width:480px){.sidebar-list-item{align-items:flex-start}.sidebar-section-label{min-width:64px}.sidebar-section-name{line-height:1.25}}.sidebar-slide-check.correct{color:green;margin-left:8px}.sidebar-slide-check.incorrect{color:red;margin-left:8px}.login-page{align-items:center;background-color:#fff;background-position:50%;background-size:cover;display:flex;justify-content:center;min-height:75vh}.login-form-container{background-color:#fff;border:1px solid #000;border-radius:10px;max-width:480px;padding:56px;text-align:center;width:100%}.login-header{align-items:center;background-color:#fff;border-radius:5px;color:#000;display:flex;font-size:16px;justify-content:center;margin-bottom:20px;padding:10px}.separator{color:#000;font-size:14px;margin:20px 0;text-transform:uppercase}.input-container{margin-bottom:20px}.input-field{border:1px solid #000;border-radius:5px;box-sizing:border-box;font-size:16px;padding:15px;width:100%}.login-button{background-color:rgba(67,163,167,.918);border:22 solid #5a6170;border-radius:5px;box-shadow:0 3px rgba(48,117,119,.918);color:#222;cursor:pointer;font-size:18px;font-weight:700;padding:15px;transition:background-color .2s;width:100%}.login-button:hover{background-color:rgba(80,197,201,.918)}.login-footer{color:#888;font-size:12px;margin-top:20px}.login-footer a{color:rgba(18,181,187,.918);text-decoration:none}.login-footer a:hover{text-decoration:underline}@media (max-width:480px){.login-form-container{padding:20px}}.goals-list{display:flex;flex-direction:column;gap:1rem;margin:2rem 0}.goal-item{background:#f7f7fa;border-radius:8px;box-shadow:0 1px 4px #f300000f;cursor:pointer;font-size:1.1rem;font-weight:500;padding:1rem;transition:background .2s}.goal-item:focus{background:#e6f0ff;outline:1px solid #000}.goal-item:hover{background:hsla(0,0%,91%,.918)}.add-goal-btn{background:#43a3a7;border:none;border-radius:6px;box-shadow:0 3px rgba(48,117,119,.918);color:#222;cursor:pointer;font-size:1rem;font-weight:700;margin:1rem 0;padding:.7rem 1.5rem;transition:background .2s}.add-goal-btn:hover{background:rgba(80,197,201,.918)}.modal-overlay-goal{align-items:center;background:#00000040;display:flex;height:100vh;justify-content:center;left:0;position:fixed;top:0;width:100vw;z-index:1000}.modal-goal{background:#fff;border-radius:10px;box-shadow:0 2px 16px #00000026;max-width:400px;min-width:90vw;padding:2rem}.modal-header-goal{font-size:1.2rem;font-weight:700;margin-bottom:1rem}.modal-form-goal{display:flex;flex-direction:column;gap:1rem}.modal-input-goal{border:1px solid #ccc;border-radius:5px;font-size:1rem;padding:.6rem}.modal-actions-goal{display:flex;gap:1rem;justify-content:flex-end;margin-top:1rem}.modal-cancel-btn{background:#fff;border:1px solid #000;border-radius:6px;box-shadow:0 3px rgba(80,80,80,.918)}.add-goal-confirm-btn,.modal-cancel-btn{color:#222;cursor:pointer;font-size:1rem;font-weight:700;margin:1rem 0;padding:.7rem 1.5rem;transition:background .2s}.add-goal-confirm-btn{background:#43a3a7;border:22 solid #5a6170;border-radius:6px;box-shadow:0 3px rgba(48,117,119,.918)}.modal-cancel-btn:hover{background:#ccc}.back-btn-goal{align-items:center;background:none;border:none;color:#6e6e6e;cursor:pointer;display:flex;font-size:1rem;font-weight:600;margin-bottom:1rem}.no-goals{color:#888;font-style:italic;margin:2rem 0}@media (max-width:480px){.modal-goal{min-width:98vw;padding:1rem}}.create-join-container{align-items:center;display:flex;flex-direction:column;height:100%;justify-content:center;text-align:center}.house-icon{margin-bottom:20px}.class-actions .create{background-color:#fff;border:1px solid #000;border-radius:8px;box-shadow:0 3px rgba(80,80,80,.918);color:#222;cursor:pointer;font-weight:700;margin:0 10px;padding:10px 20px}.class-actions .create:hover{background-color:#d3d4d4}.class-actions .join{background-color:#43a3a7;border:1px solid #43a3a7;border-radius:8px;box-shadow:0 3px rgba(48,117,119,.918);color:#222;cursor:pointer;font-weight:700;margin:0 10px;padding:10px 20px}.class-actions .join:hover{background:rgba(80,197,201,.918)}.modal-overlay{align-items:center;background:#00000080;bottom:0;display:flex;justify-content:center;left:0;position:fixed;right:0;top:0}.modal-content{background:#fff;border-radius:8px;max-width:500px;padding:20px;width:90%}.modal-header{align-items:center;border-bottom:1px solid #eee;display:flex;justify-content:space-between;padding-bottom:10px}.close-button{background:none;border:none;cursor:pointer;font-size:24px}.modal-enter{background-color:#43a3a7;border:22 solid #5a6170;border-radius:8px;box-shadow:0 3px rgba(48,117,119,.918);color:#222;cursor:pointer;font-weight:700;padding:8px 30px;transition:background .2s}.modal-enter:hover{background-color:rgba(80,197,201,.918)}.modal-body{padding-top:20px}.teacher-dashboard .dashboard-tabs{border-bottom:1px solid #dee2e6;display:flex;gap:20px;margin-bottom:20px}.teacher-dashboard .dashboard-tabs span{cursor:pointer;padding:10px 0;position:relative}.teacher-dashboard .dashboard-tabs span.active{border-bottom:2px solid #43a3a7;font-weight:700}.stream-tab{display:flex;flex-wrap:wrap;gap:20px}.stream-tab .card{box-sizing:border-box;flex-basis:calc(50% - 20px);flex-grow:1;flex-shrink:1;max-width:calc(50% - 20px)}@media (max-width:700px){.stream-tab .card{flex:1 1 100%;max-width:100%}}.card{background:#fff;border:1px solid #dee2e6;border-radius:8px;flex:1 1;padding:20px}.card-title{font-weight:700;margin-bottom:10px}.class-code{cursor:pointer}.class-code,.total-students{font-size:24px;font-weight:700}.people-tab ul{list-style:none;padding:0}.classwork-table{border-collapse:collapse;margin-top:20px;width:100%}.classwork-table td,.classwork-table th{border-bottom:1px solid #dee2e6;padding:12px;text-align:left}.classwork-table thead{background-color:#f8f9fa}.classwork-table tbody tr.completed{background-color:rgba(231,252,252,.918)}.classwork-tab{padding:20px}.filters{margin-bottom:20px}.filter-dropdowns{display:flex;gap:10px;margin-top:10px}.filter-dropdowns select{-webkit-appearance:none;appearance:none;background-color:#fff;background-image:url("data:image/svg+xml;utf8,<svg fill=%27black%27 height=%2716%27 viewBox=%270 0 20 20%27 width=%2716%27 xmlns=%27http://www.w3.org/2000/svg%27><path d=%27M5.516 7.548a.625.625 0 0 1 .884-.088L10 10.293l3.6-2.833a.625.625 0 1 1 .796.972l-4 3.15a.625.625 0 0 1-.796 0l-4-3.15a.625.625 0 0 1-.088-.884z%27/></svg>");background-position:right 12px top 50%;background-repeat:no-repeat;background-size:1em auto;border:1px solid #ccc;border-radius:20px;cursor:pointer;padding:8px 30px 8px 12px}.filter-dropdowns select:focus,.filter-dropdowns select:hover{background-color:#fff;color:#000}.table-container{overflow-x:auto}@media (max-width:800px){.filter-dropdowns{align-items:stretch;flex-direction:column}.filter-dropdowns select{width:100%}}@media (max-width:480px){.classwork-table thead{display:none}.classwork-table,.classwork-table tbody,.classwork-table td,.classwork-table tr{display:block;width:100%}.classwork-table tr{border:1px solid #dee2e6;border-radius:8px;margin-bottom:15px;padding:10px}.classwork-table td{border-bottom:none;padding-left:50%;position:relative;text-align:right}.classwork-table td:before{content:attr(data-label);font-weight:700;left:10px;padding-right:10px;position:absolute;text-align:left;white-space:nowrap;width:calc(50% - 20px)}}@media (max-width:320px){.classwork-table td{padding-left:40%}.classwork-table td:before{width:calc(40% - 20px)}}.custom-dropdown{display:inline-block;font-family:inherit;min-width:120px;position:relative}.dropdown-selected{align-items:center;background-color:#fff;border:1px solid #ccc;border-radius:20px;cursor:pointer;display:flex;justify-content:space-between;min-width:120px;padding:8px 12px}.dropdown-arrow{color:#000;font-size:.8em;margin-left:8px}.dropdown-options{background:#fff;border:1px solid #ccc;border-radius:8px;box-shadow:0 2px 8px #00000014;left:0;margin-top:2px;max-height:200px;overflow-y:auto;position:absolute;right:0;top:100%;z-index:10}.dropdown-option{background:#fff;color:#222;cursor:pointer;padding:8px 12px}.dropdown-option.highlighted{background:#92d0d1;color:#222}.profile-page{background:#fff;border:1.5px solid #23283a;border-radius:12px;box-shadow:0 2px 16px #0000002e;color:#000;font-family:Inter,Segoe UI,Arial,sans-serif;margin:2.5rem auto;max-width:1000px;padding:2.5rem 2rem}.profile-page header h1{font-size:2.2rem;font-weight:700;letter-spacing:.02em;margin-bottom:2rem}.profile-form{display:flex;flex-direction:column;gap:1.5rem;position:relative}.profile-form-actions{display:flex;justify-content:flex-end}.profile-field{display:flex;flex-direction:column;gap:.5rem}.profile-field label{color:#000;font-size:1.1rem;font-weight:600;letter-spacing:.01em;margin-bottom:.2rem}.profile-field input{background:#fff;border:1.5px solid #353b4b;border-radius:8px;color:#000;font-family:inherit;font-size:1.08em;outline:none;padding:.95em 1.1em;transition:border .2s,box-shadow .2s}.profile-field input:focus{border:1.5px solid #43a3a7;box-shadow:0 0 0 2px rgba(48,117,119,.918)}.profile-field input:disabled{background:#fff;color:#313131;opacity:1}.save-btn{background-color:#43a3a7;border:22 solid #5a6170;border-radius:8px;box-shadow:0 3px rgba(48,117,119,.918);color:#222;cursor:pointer;font-size:1.08em;font-weight:700;padding:.5rem 2rem;pointer-events:auto;transition:background .2s,box-shadow .2s}.save-btn:disabled{background:rgba(80,197,201,.918);cursor:not-allowed}.error{color:#ff6b6b;font-size:.98em;margin-top:.2em}@media (max-width:700px){.profile-page{max-width:98vw;padding:1.2rem .5rem}.profile-form{gap:1.1rem}.profile-page header h1{font-size:1.5rem}}.main-layout{background-color:#f8f9fa;display:flex;min-height:100vh}.sidebar{background-color:#fff;border-right:1px solid #000;padding:20px;width:250px}.sidebar nav ul{list-style:none;margin:0;padding:0}.sidebar nav li{align-items:center;border-radius:8px;cursor:pointer;display:flex;font-weight:500;gap:10px;margin-bottom:10px;padding:15px 65px}.sidebar nav li:hover{background-color:#e9ecef}.sidebar nav li.active{background-color:#43a3a7;color:#fff}.content-area{flex-grow:1;overflow-y:auto;padding:40px}@media (max-width:768px){.main-layout{flex-direction:column}.sidebar{border-bottom:1px solid #dee2e6;border-right:none;display:flex;justify-content:center;width:100%}.sidebar nav ul{display:flex;gap:10px}}@media (max-width:500px){.sidebar nav li{padding:15px 40px}}@media (max-width:390px){.sidebar nav li{padding:15px 20px}}.site-header{background-color:#fff;box-sizing:border-box;height:68px;left:0;padding:0 24px;position:fixed;top:0;width:100%;z-index:3}.logo-text{color:#000;font-size:1.5rem;font-weight:700;margin-right:1.5rem;text-decoration:none}.logo-icon{height:3rem;margin-right:8px;width:3rem}.logo-eu-icon{height:2.2rem;margin-bottom:10px;margin-left:100px;width:auto}.navbar{height:64px;justify-content:space-between;margin:0 auto;max-width:1200px;padding-top:10px}.navbar,.navbar-links{align-items:center;display:flex}.navbar-links{gap:20px;height:100%;list-style:none;margin:0;padding:0}.navbar-links li{margin-left:0}.navbar-links a{font-weight:700;text-decoration:none}.navbar-links .dropdown-toggle,.navbar-links a{color:rgba(0,0,0,.918)}@media (max-width:1024px){.navbar-links{display:none}}@media (max-width:400px){.logo-text{display:none}}.navbar-actions{gap:16px;height:100%;margin-left:auto}.navbar-actions,.navbar-icon{align-items:center;display:flex}.navbar-icon{background:none;border:none;cursor:pointer;padding:6px}.navbar-signup{background:rgba(67,163,167,.918);border:none;border-radius:6px;box-shadow:0 3px rgba(48,117,119,.918);color:#222;cursor:pointer;flex-shrink:0;font-weight:700;padding:8px 20px;transition:background .2s}.navbar-signup:hover{background:rgba(80,197,201,.918)}#home.dropdown-menu{background-color:rgba(48,117,119,.918)}#home.dropdown-menu a{color:#fff;display:block;padding-bottom:5px;padding-left:10px;padding-top:5px}#home.dropdown-menu a:hover{background-color:hsla(0,0%,100%,.123)}.offcanvas-backdrop{background:#00000047;inset:0;opacity:0;position:fixed;transition:opacity .25s ease,visibility .25s ease;visibility:hidden;z-index:1040}.offcanvas-backdrop.is-visible{opacity:1;visibility:visible}.offcanvas-menu{background:#fff;border-left:1px solid #00000014;box-shadow:-8px 0 20px #0000001f;display:flex;flex-direction:column;height:100vh;padding:20px 18px;position:fixed;right:0;top:0;transform:translateX(100%);transition:transform .25s ease;width:min(320px,86vw);z-index:1050}.offcanvas-menu.is-open{transform:translateX(0)}.offcanvas-menu-header{align-items:center;display:flex;justify-content:space-between;margin-bottom:14px}.offcanvas-menu-title{color:rgba(0,0,0,.918);font-size:1.35rem;font-weight:700;margin:0}.offcanvas-close{border-radius:8px;color:#000000c7;transition:background-color .2s ease,color .2s ease}.offcanvas-close:hover{background-color:#43a3a71f;color:#307577f2}.offcanvas-menu-nav{display:flex;flex-direction:column;gap:20px}.offcanvas-menu-group-label{color:#8f8f8f;font-size:.82rem;font-weight:700;letter-spacing:.05em;margin:0;padding:0 6px;text-transform:uppercase}.offcanvas-menu-list{display:flex;flex-direction:column;gap:8px;list-style:none;margin:0;padding:0}.offcanvas-menu-link{border-radius:8px;color:rgba(0,0,0,.918);display:block;font-weight:700;padding:10px 12px;text-decoration:none;transition:background-color .2s ease,color .2s ease,transform .2s ease;width:100%}.offcanvas-menu-link:hover{background-color:#43a3a71f;color:#307577f2;transform:translateX(2px)}.offcanvas-menu-link.active{background-color:#43a3a738;color:#000000f2}.offcanvas-menu-secondary{border-top:1px solid #00000014;padding-top:10px}@media (max-width:400px){.offcanvas-menu{width:100vw}}.content-navbar-text{align-self:center;color:#000;font-size:1.2rem;font-weight:500;gap:8px;margin-left:.5rem}.content-navbar .navbar-logo,.content-navbar-text{align-items:center;display:flex;flex:1 1;min-width:0}.content-navbar .navbar-logo{gap:12px}.content-info-section{color:#8f8f8f;font-size:18px;font-weight:400;text-transform:capitalize;white-space:nowrap}.content-info-title{color:#000;font-size:18px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
/*# sourceMappingURL=main.fbd0fe00.css.map*/