html,body,#root{margin:0;padding:0;width:100vw;height:100vh}@font-face{font-family:Roboto Slab;src:url(/assets/robotoslab-variablefont_wght-webfont-ryeMG1i7.woff2) format("woff2"),url(/assets/robotoslab-variablefont_wght-webfont-Dz--D9nO.woff) format("woff");font-weight:400;font-style:normal}div{height:100%;width:100%}#content{display:flex;flex-direction:column;justify-content:center;align-items:center;transition:transform .4s ease;position:relative;z-index:100;pointer-events:none;overflow:hidden}#bgImage{background-image:url(/assets/bg2-DlfIL3XT.jpg);background-size:cover;background-position:center;background-repeat:no-repeat;position:fixed;top:0;right:0;z-index:-20}#bgImageTint{background-color:#000;opacity:60%}#title{margin:0;-webkit-user-select:none;user-select:none;transition:.4s ease;color:#fff;font-size:5vw;font-family:Roboto Slab;text-shadow:4px 4px rgb(0,0,0);text-align:center;pointer-events:auto}#searchBar,#filterButton,.schedule-dropdown,.schedule-add-btn{margin-top:0!important}#searchBar{width:max(40vw,220px);height:40px;transition:.4s ease;color:#000;font-size:20px;font-family:Roboto Slab;border:4px solid rgb(50,50,50);border-radius:20px;appearance:none;padding-left:35px;padding-top:3.5px;background-image:url("data:image/svg+xml,%3csvg%20fill='none'%20height='800'%20viewBox='0%200%2024%2024'%20width='800'%20xmlns='http://www.w3.org/2000/svg'%3e%3cpath%20d='m14.9536%2014.9458%206.0464%206.0542m-4-11c0%203.866-3.134%207-7%207-3.86599%200-7-3.134-7-7%200-3.86599%203.13401-7%207-7%203.866%200%207%203.13401%207%207z'%20stroke='%23000'%20stroke-linecap='round'%20stroke-linejoin='round'%20stroke-width='2'/%3e%3c/svg%3e");background-repeat:no-repeat;background-position:10px center;background-size:16px}#searchContainer{height:45px;display:flex;justify-content:center;align-items:center;transition:.4s ease;pointer-events:auto}#searchBar:focus{width:max(40vw,250px);height:45px;font-size:23px;background-size:22px;padding-left:40px;border:4px solid rgb(160,0,0)}#searchBar::placeholder{color:#7e7e7e;font-style:italic}#filterButton{width:35px;height:35px;margin-left:10px;transition:.4s ease;color:#000;font-size:15px;font-family:Roboto Slab;border-radius:20px;background-color:#fff;border:4px solid rgb(50,50,50);display:flex;justify-content:center;align-items:center;cursor:pointer}#filterButton:focus{width:45px;height:45px;font-size:20px;border-radius:40px;border:4px solid rgb(160,0,0)}#courseContainer{display:flex;justify-content:flex-start;align-items:center;flex-direction:column;transition-duration:.4s;position:fixed;overflow-y:scroll;overflow-x:hidden;z-index:10}#autocompleteDropdown{position:absolute;top:55px;left:0;width:100%;background-color:#fff;color:#000;border:4px solid rgb(50,50,50);border-radius:20px;font-family:Roboto Slab;list-style:none;padding:0;margin:0;z-index:9999;text-align:left;overflow:hidden;box-shadow:0 8px 15px #00000080}#autocompleteDropdown li{padding:12px 40px;cursor:pointer;border-bottom:2px solid rgb(200,200,200);font-size:20px;transition:.2s ease}#autocompleteDropdown li:last-child{border-bottom:none}#autocompleteDropdown li:hover{background-color:#dcdcdc}.schedule-dropdown{height:35px!important;margin-left:10px;background-color:#fff!important;color:#000!important;border:4px solid rgb(50,50,50)!important;border-radius:20px;padding:0 15px;font-family:Roboto Slab;font-size:15px;cursor:pointer;transition:.4s ease;pointer-events:auto}.schedule-dropdown:focus{border:4px solid rgb(160,0,0);outline:none}.schedule-dropdown:disabled{background-color:#dcdcdc;cursor:not-allowed;opacity:.8}.schedule-add-btn{width:35px;height:35px;margin-left:8px;background-color:#fff;color:#000;font-family:Roboto Slab;font-size:20px;font-weight:700;border:4px solid rgb(50,50,50);border-radius:12px;display:flex;justify-content:center;align-items:center;cursor:pointer;transition:.2s ease}.schedule-add-btn:hover:not(:disabled){background-color:#f0f0f0;border-color:#a00000}.schedule-add-btn:disabled{background-color:#dcdcdc;opacity:.5;cursor:not-allowed}.sectionCard{height:0%;width:50%;position:relative;margin-top:15px;margin-bottom:15px;padding:7vw;padding-left:15px;padding-right:15px;color:#fff;border-radius:20px;font-family:Roboto Slab;text-shadow:2px 2px black;background-color:#a00000;box-shadow:4px 4px #000;border:4px solid rgb(255,255,255)}.sectionTitle{position:absolute;top:-1cqw;left:15px;width:63%;overflow:hidden;font-size:2cqw}.sectionDeptInfo{position:absolute;top:-.5cqw;right:15px;height:0px;width:30%;font-size:1.5cqw;text-align:right}.courseName{text-decoration:underline;cursor:pointer}.courseName:hover{color:#82b8fe}.sectionProf{position:absolute;top:4cqw;font-size:1.5cqw}.sectionTerm{position:absolute;top:6cqw;font-size:1.5cqw}.sectionTime{position:absolute;top:8.3cqw;font-size:1.3cqw}.sectionCreds{position:absolute;top:10.2cqw;font-size:1.2cqw}.sectionRating{position:absolute;top:11.8cqw;left:15px;z-index:2;display:inline-flex;align-items:center;gap:6px;width:fit-content;white-space:nowrap;font-size:1.1cqw;cursor:pointer;padding:4px 8px;background:#82b8fe26;border-radius:4px;transition:background .2s}.sectionRating:hover{background:#82b8fe4d}.sectionRatingText{font-size:.95cqw;color:#ddd}.addButton,.dropButton{right:15px;width:75px;position:absolute;bottom:calc(.5vw + 27px);padding-top:2.5px;transition-duration:.3s}.addButton,.dropButton,.closeProfessorModal{color:#fff;border-radius:10px;font-family:Roboto Slab;background-color:#630000;border:1.5px solid rgb(255,255,255)}.closeProfessorModal{padding:5px;cursor:pointer}.closeProfessorModal:disabled{opacity:.7;cursor:default}.dropButton{bottom:.5vw}.addButton:hover,.dropButton:hover{cursor:pointer;box-shadow:2.5px 2.5px #000;background-color:#c30000}#availability_filter{display:flex;flex-direction:column}#filters{display:none;position:fixed;top:500px;overflow:hidden;z-index:50;transition:.3s ease;width:max(40vw,300px);padding:15px;margin-left:calc((100vw - max(40vw,300px))/2 - 15px);height:auto;pointer-events:all;-webkit-user-select:none;user-select:none;border-radius:10px;border:4px solid rgb(50,50,50);background-color:#fff;flex-direction:column;font-family:Roboto Slab}#availability_container{width:fit-content;margin:auto;display:flex}#availability_time_selectors{display:flex;flex-direction:column;width:unset;min-width:245px}#filterTitle{margin:0;font-size:20px;font-family:Roboto Slab}#filter_availability_times{display:flex;align-items:center;justify-content:center;height:50px;font-size:17px;font-family:Roboto Slab}.time_availability_input{margin:0 5px;transition:.3s;border:none;outline:none;font-size:17px;font-family:Roboto Slab}.time_availability_input:hover{text-shadow:0px 0px 5px black;cursor:pointer}#filter_availability_days{display:flex;justify-content:space-evenly}.filter_availability_day{height:30px;width:30px;margin:3px;display:flex;justify-content:center;align-items:center;transition:.3s;font-size:20px;font-family:Roboto Slab;border-radius:10px;border:4px solid rgb(50,50,50)}.filter_availability_day.toggled{height:32px;width:32px;transform:translateY(-1px);color:#fff;background-color:#a00000}.filter_availability_day:hover{box-shadow:0 0 5px #000;cursor:pointer}#addButton{top:10px;right:10px;position:absolute;transition:.3s;color:#000;font-family:Roboto Slab;border-radius:5px;background-color:#fff;border:3px solid rgb(50,50,50);padding:2.5px 5px}.filterRemoveButton{transition:.3s;color:#000;font-family:Roboto Slab;border-radius:5px;background-color:#fff;border:2px solid rgb(50,50,50)}#addButton:hover,.filterRemoveButton:hover{box-shadow:0 0 5px #747474}#addButton:active,.filterRemoveButton:active{color:#fff;background-color:#c30000}.filterItem{margin:8px;color:#000;font-family:Roboto Slab}#creditFilter{font-size:17px}#credit_filter,#semester_year_selector,#semester_term_selector{font-size:17px;padding:5px 10px;margin-left:10px}#noTimeCheckbox{margin-left:10px}#updateSemester{font-size:17px}#scheduleBlock{height:calc(100% - 50px);width:100%;top:50px;left:100vw;position:fixed;transition:transform .4s ease;display:flex;flex-direction:column;align-items:center;justify-content:flex-start}#backArrow{height:45px;width:45px;border:0px;cursor:pointer;opacity:0%;background-color:#fff0;background-image:url("data:image/svg+xml,%3csvg%20fill='%23fff'%20height='800'%20stroke='%23fff'%20viewBox='0%200%20956.199%20956.199'%20width='800'%20xmlns='http://www.w3.org/2000/svg'%3e%3cpath%20d='m859.649%20385.6h-255.2l75.601-75.6c35.1-35.1%2035.1-92.1%200-127.3-35.101-35.1-92.101-35.1-127.3%200l-229.301%20229.3c-21.6%2022.6-32.199%2055.3-23.6%2085.9%202.3%208.299%205.8%2017.5%2010.5%2024.799%203.9%206%208.4%2011.201%2013.1%2016.602l234.2%20234.199c17.601%2017.6%2040.601%2026.4%2063.601%2026.4s46.1-8.801%2063.6-26.4c35.1-35.1%2035.1-92.1%200-127.301l-80.6-80.6h255.1c49.7%200%2090-40.299%2090-90%200-49.699-40-89.999-89.701-89.999z'/%3e%3cpath%20d='m96.85%200c-49.7%200-90%2040.3-90%2090v776.199c0%2049.701%2040.3%2090%2090%2090s90-40.299%2090-90v-776.199c0-49.7-40.3-90-90-90z'/%3e%3c/svg%3e");background-size:cover;background-position:center;background-repeat:no-repeat;top:15px;left:15px;position:fixed;transition:transform .4s ease}#scheduleTitle{margin:40px 0 0;-webkit-user-select:none;user-select:none;transition:.4s ease;color:#fff;font-size:5vw;font-family:Roboto Slab;text-align:center;text-shadow:4px 4px rgb(0,0,0)}.schedule-container{width:95%;height:75vh;margin-top:25px;padding-left:min(2%,20px);padding-right:min(2%,20px);position:relative;display:flex;flex-direction:column;justify-content:flex-start;align-items:center;overflow:hidden;overflow-y:auto;font-family:Roboto Slab;border-radius:10px;background-color:#a00000;border:4px solid rgb(255,255,255);box-shadow:4px 4px #000}.schedule-top-section{width:100%;height:125px;display:flex;justify-content:space-between;align-items:center;padding:15px 25px;box-sizing:border-box;z-index:30;flex-shrink:0}.schedule-controls{display:flex;flex-direction:column;gap:8px;width:30%;height:auto}.schedule-dropdown,.schedule-input{height:30px;border-radius:5px;border:1px solid white;background-color:#ffffff1a;color:#fff;padding:0 10px;width:200px}.schedule-input::placeholder{color:#ddd;opacity:1}.schedule-dropdown option{color:#000}.schedule-plus-btn{height:30px;width:30px;background-color:#fff;border:none;border-radius:5px;font-weight:700;cursor:pointer;transition:.2s}.schedule-plus-btn:hover{background-color:#ddd}.header-section{display:flex;flex-direction:column;justify-content:flex-end;align-items:center;width:40%;height:auto}.schedule-header{margin:0;flex-grow:1;text-align:center;color:#fff;text-shadow:2px 2px rgb(0,0,0);font-size:1.8rem;width:60%}.schedule-status-group{display:flex;flex-direction:column;align-items:flex-end;gap:20px;width:30%;height:auto}.delete-export-buttons{display:flex;justify-content:flex-end;flex-direction:end;gap:20px}#totalCredLabel{margin:0;color:#fff;font-size:16px;font-weight:700;text-shadow:2px 2px rgb(0,0,0)}.schedule-delete-btn,.export-btn{background:transparent;border:none;cursor:pointer;padding:0;margin:0;display:flex;align-items:center;justify-content:center;transition:transform .2s ease,filter .2s ease}.trash-icon,.export-icon{width:35px;height:35px}.trash-icon:hover,.export-icon:hover{transform:scale(1.1);filter:brightness(1.2)}.main-scroll-area{width:100%;flex:1;overflow-y:auto;overflow-x:hidden;display:flex;flex-direction:column;align-items:center}.weekly-grid{width:100%;height:1200px;min-height:0;display:flex;gap:8px;flex-direction:row;flex-shrink:0;overflow:visible;padding-bottom:20px;border-radius:20px;grid-column:1 / -1}.day-column{background-color:#d3d3d3;border-radius:20px;width:19%;overflow:visible;display:flex;flex-direction:column;justify-content:flex-start;border:1px solid gray;background-image:linear-gradient(#eee 1px,transparent 1px),linear-gradient(rgba(238,238,238,.5) 1px,transparent 1px);background-size:100% 80px,100% 40px;background-position:0 40px;background-repeat:repeat-y;position:relative;height:1200px}.hours-container{height:1157.42px;display:flex;gap:0px;flex-direction:column}.time-gutter{width:60px;height:1202px;display:flex;flex-direction:column;flex-shrink:0}.courses-container{display:flex;flex-direction:column;align-items:center;width:100%;flex-grow:1}.schedule-header{color:#fff;text-shadow:2px 2px rgb(0,0,0);-webkit-user-select:none;user-select:none;margin:10px 0;grid-column:1 / -1;grid-row:2;text-align:center}.day-label{height:40px;width:98%;margin:auto;display:flex;justify-content:center;align-items:center;font-size:20px;font-weight:700;color:#fff;border:2px solid white;background-color:#a00000;text-shadow:2px 2px rgb(0,0,0);border-radius:20px;-webkit-user-select:none;user-select:none}.hour-marker{height:80px;display:flex;justify-content:flex-end;color:#fff;font-size:15px;text-shadow:2px 2px rgb(0,0,0);-webkit-user-select:none;user-select:none}.no-classes{z-index:1;margin-top:100px;-webkit-user-select:none;user-select:none;color:#888;text-align:center;font-style:italic;text-shadow:.7px .7px rgb(57,57,57)}.calendar-card{width:87%;margin:auto;padding:8px;display:flex;flex-direction:column;justify-content:flex-start;color:#fff;border:4px solid white;border-radius:8px;background-color:#a00000;overflow:hidden}.card-title{margin:0;width:100%;flex-shrink:0;line-height:13px;font-weight:500;font-size:13px;white-space:nowrap;overflow-x:hidden;text-overflow:ellipsis}.card-dept-button{background:none;border:none;color:inherit;padding:0;margin:0;cursor:pointer;text-align:left;width:100%;min-width:0;font:inherit}.card-dept-button:hover .card-dept{color:#82b8fe;text-decoration:underline}.card-title-row{display:flex;align-items:center;justify-content:space-between;gap:4px;min-width:0}.card-title-row .card-title{flex:1;min-width:0;text-overflow:ellipsis}.card-dept{margin:0;padding:2px;font-size:16px;font-weight:700}.card-time{padding:2px 2px 0;margin:0;font-size:.65rem}.card-rating{display:flex;align-items:center;gap:1rem;width:100%;margin:1px 0 0;flex-shrink:0;line-height:1}.card-rating-side{display:flex;align-items:center;gap:2px;min-width:0;width:unset}.card-rating-separator{color:#ddd;font-size:.65rem;flex-shrink:0}.card-rating span{margin-right:0!important}.card-rating-text{font-size:.65rem;color:#ddd;margin-left:0}.action-group{display:flex;justify-content:flex-end;align-items:center;margin-top:0;flex-shrink:0;width:fit-content}.action-button{width:35px;height:15px;padding:7px 7px 6px;display:flex;justify-content:center;align-items:center;transition-duration:.3s;color:#fff;font-size:10px;font-family:Roboto Slab;font-weight:700;border-radius:3px;border:1.5px solid white;background-color:#630000}.action-button:hover{cursor:pointer;box-shadow:2px 1px #000;background-color:#c30000}.schedule-controls{align-self:flex-start;margin:15px 0 0 30px;display:flex;flex-direction:column;gap:8px;z-index:10;height:auto;grid-column:1;grid-row:1}.control-row{display:flex;align-items:center;gap:10px}.control-row label{color:#fff;font-weight:700;text-shadow:2px 2px black;font-size:14px}.schedule-box{align-items:center;color:#fff}.login-prompt-content{display:flex;flex-direction:column;justify-content:center;align-items:center;text-align:center;padding:20px;color:#fff;text-shadow:2px 2px black}.login-prompt-header{font-size:2.5rem;margin-bottom:10px;-webkit-user-select:none;user-select:none}.login-prompt-content p{font-size:1.2rem;opacity:.9;max-width:300px}.no-time-container{width:100%;padding:20px 25px;box-sizing:border-box;border-top:2px solid rgba(255,255,255,.2);background-color:transparent;margin-top:10px;margin-bottom:100px}.no-time-header{color:#fff;font-size:1.1rem;margin-bottom:15px;text-shadow:2px 2px black}.no-time-grid{display:flex;flex-wrap:wrap;gap:15px}.no-time-card{background-color:#a00000;border:3px solid white;border-radius:8px;padding:10px;width:250px;display:flex;justify-content:space-between;align-items:center;box-shadow:2px 2px 5px #0000004d;color:#fff}.no-time-card .card-dept,.no-time-card .card-title{color:#fff}.no-time-info{display:flex;flex-direction:column;max-width:170px}.no-time-drop{flex-shrink:0}.calendar-card .action-group{display:flex}[data-html2canvas-ignore] .action-group{display:none!important}.rating-modal-button{color:#fff;border-radius:10px;font-family:Roboto Slab;background-color:#630000;border:1.5px solid rgb(255,255,255);padding:5px;cursor:pointer}.rating-modal-button:disabled{opacity:.7;cursor:default}.ratingMetaText{margin-top:0}.ratingInputGroup{margin-bottom:12px}.ratingLabel{margin-bottom:6px}.ratingReviewInput{width:100%;padding:8px;color:#fff;background-color:#630000;border:1.5px solid rgb(255,255,255);border-radius:6px;font-family:Roboto Slab;resize:vertical;box-sizing:border-box}.ratingReviewInput::placeholder{color:#ddd}.ratingModalActions{margin-top:10px;display:flex;gap:8px;justify-content:flex-end}.schedule-semester-selector{align-self:flex-start;display:flex;align-items:center;margin-left:20px;margin-top:15px;margin-bottom:0;z-index:10;grid-column:2;grid-row:1}.schedule-semester-selector #updateSemester{display:flex;align-items:center;gap:10px;font-size:17px;color:#fff;text-shadow:2px 2px black;font-weight:700}.schedule-semester-selector #semester_year_selector,.schedule-semester-selector #semester_term_selector{height:30px!important;border-radius:5px!important;border:1px solid white!important;background-color:#ffffff1a!important;color:#fff!important;padding:0 10px!important;width:120px!important;font-family:Roboto Slab!important;font-size:14px!important;margin-left:0!important;margin-right:10px!important;cursor:pointer;transition:.2s ease}.schedule-semester-selector #semester_year_selector:focus,.schedule-semester-selector #semester_term_selector:focus{outline:none;border:2px solid white!important;background-color:#fff3!important}.schedule-semester-selector #semester_year_selector option,.schedule-semester-selector #semester_term_selector option{color:#000;background-color:#fff}#statusSheetBlock{height:calc(100% - 50px);width:100%;top:50px;left:100vw;position:fixed;transition:transform .4s ease;overflow-y:auto;overflow-x:hidden;background-color:#a00000;display:flex;flex-direction:column;align-items:center}#statusBackArrow{height:45px;width:45px;border:0px;cursor:pointer;opacity:0%;background-color:#fff0;background-image:url("data:image/svg+xml,%3csvg%20fill='%23fff'%20height='800'%20stroke='%23fff'%20viewBox='0%200%20956.199%20956.199'%20width='800'%20xmlns='http://www.w3.org/2000/svg'%3e%3cpath%20d='m859.649%20385.6h-255.2l75.601-75.6c35.1-35.1%2035.1-92.1%200-127.3-35.101-35.1-92.101-35.1-127.3%200l-229.301%20229.3c-21.6%2022.6-32.199%2055.3-23.6%2085.9%202.3%208.299%205.8%2017.5%2010.5%2024.799%203.9%206%208.4%2011.201%2013.1%2016.602l234.2%20234.199c17.601%2017.6%2040.601%2026.4%2063.601%2026.4s46.1-8.801%2063.6-26.4c35.1-35.1%2035.1-92.1%200-127.301l-80.6-80.6h255.1c49.7%200%2090-40.299%2090-90%200-49.699-40-89.999-89.701-89.999z'/%3e%3cpath%20d='m96.85%200c-49.7%200-90%2040.3-90%2090v776.199c0%2049.701%2040.3%2090%2090%2090s90-40.299%2090-90v-776.199c0-49.7-40.3-90-90-90z'/%3e%3c/svg%3e");background-size:cover;background-position:center;background-repeat:no-repeat;top:15px;left:15px;position:fixed;transition:transform .4s ease,opacity .4s ease;z-index:100}#majorSelectionOverlay{display:flex;flex-direction:column;align-items:center;justify-content:center;height:80vh;width:100%;gap:25px;color:#fff}#majorSelectionOverlay h2{font-family:Roboto Slab,serif;font-size:4vw;margin:0;text-shadow:3px 3px rgb(0,0,0)}select{padding:12px 20px;font-size:1.2rem;font-family:Roboto Slab,serif;border-radius:8px;border:2px solid white;background-color:#820000;color:#fff;cursor:pointer;outline:none;box-shadow:2px 2px 5px #0000004d}select option{background-color:#a00000}#letsGoBtn{padding:12px 30px;font-size:1.2rem;font-family:Roboto Slab,serif;font-weight:700;background-color:#fff;color:#a00000;border:none;border-radius:8px;cursor:pointer;transition:all .2s ease;box-shadow:3px 3px #000}#letsGoBtn:disabled{background-color:#ccc;color:#888;box-shadow:none;cursor:not-allowed;transform:none}#letsGoBtn:hover:not(:disabled){transform:translateY(-2px);box-shadow:5px 5px #000}#letsGoBtn:active:not(:disabled){transform:translateY(2px);box-shadow:1px 1px #000}#statusSheetContent{width:90%;max-width:1200px;display:flex;flex-direction:column;align-items:center;padding-bottom:50px}#statusSheetHeader{display:flex;justify-content:space-between;align-items:center;width:100%;margin-top:40px;padding-bottom:15px;border-bottom:2px solid rgba(255,255,255,.3)}#scheduleTitle{margin:0;-webkit-user-select:none;user-select:none;color:#fff;font-size:3vw;font-family:Roboto Slab;text-shadow:3px 3px rgb(0,0,0)}#cornerDropdown{font-size:1rem;padding:8px 15px;background-color:#a00000}#requirementsGrid{width:100%;margin-top:30px}.courseSearchIcon{height:16px;width:16px;border:0px;cursor:pointer;background-color:#fff0;background-image:url("data:image/svg+xml,%3csvg%20xmlns='http://www.w3.org/2000/svg'%20width='24'%20height='24'%20viewBox='0%200%2024%2024'%20fill='none'%20stroke='currentColor'%20stroke-width='2'%20stroke-linecap='round'%20stroke-linejoin='round'%20class='lucide%20lucide-search-icon%20lucide-search'%3e%3cpath%20d='m21%2021-4.34-4.34'/%3e%3ccircle%20cx='11'%20cy='11'%20r='8'/%3e%3c/svg%3e");background-size:cover;background-position:center;background-repeat:no-repeat;margin-left:8px;transition:transform .2s ease}.courseSearchIcon:hover{transform:scale(1.2)}.requirementGroupBlock{background-color:#0000004d;border-radius:10px;padding:25px;border-left:6px solid white;width:100%;box-sizing:border-box;display:flex;flex-direction:column;height:fit-content!important;min-height:fit-content!important;margin:0 0 30px!important}.groupHeader{height:max-content!important;min-height:0!important;max-height:max-content!important;flex:0 0 auto!important;margin:0 0 20px!important;padding:0!important}.groupTitle{margin:0 0 5px;font-size:1.8rem;font-family:Roboto Slab,serif;color:#fff;text-shadow:2px 2px 4px rgba(0,0,0,.5)}.groupRule{font-style:italic;color:#fcc;margin:0 0 5px;font-size:1rem}.groupDesc{margin:0;font-size:.95rem;color:#ddd}.courseGrid{display:flex;flex-direction:row;flex-wrap:wrap;gap:15px;width:100%;align-items:flex-start;align-content:flex-start}.optionsGrid{display:flex;flex-direction:column;gap:15px;width:100%;max-width:100%;min-width:0;flex:1 1 100%;margin:0!important;box-sizing:border-box}.optionPath{display:flex;flex-direction:row;align-items:center;flex-wrap:wrap;gap:15px;background-color:#ffffff1a;padding:15px;border-radius:8px;border:1px solid rgba(255,255,255,.2);width:100%;height:fit-content!important;box-sizing:border-box}.pathLabel{color:#fff;font-weight:700;font-family:Roboto Slab,serif;font-size:1.1rem;margin-right:10px;display:flex;align-items:center}.courseCard{background-color:#fff;color:#a00000;padding:12px 16px;border-radius:8px;box-shadow:3px 3px 6px #0006;width:200px;flex:0 0 auto;height:max-content;display:flex;flex-direction:column;justify-content:space-between;gap:8px;transition:transform .2s ease,box-shadow .2s ease;cursor:default}.courseCard:hover{transform:translateY(-3px);box-shadow:5px 5px 10px #00000080}.courseCard p{margin:0;line-height:1.3}.courseCode{font-weight:900;font-size:1.15rem;font-family:Roboto Slab,serif}.courseTitle{font-size:.95rem;color:#333;font-weight:500}.courseFooter{display:flex;flex-direction:row;justify-content:space-between;align-items:center;width:100%;margin-top:15px;padding-top:10px;border-top:1px solid rgba(255,255,255,.1)}.courseFooter .courseCredits{margin:0;padding:0;width:auto;font-weight:700;color:#000}.courseFooter .checkboxLabel{margin:0;display:flex;align-items:center;gap:8px;font-size:.9rem;color:#000;cursor:pointer}.courseFooter .checkboxLabel input[type=checkbox]{cursor:pointer;width:16px;height:16px;accent-color:rgb(160,0,0)}.courseCard.completed{opacity:.75;filter:grayscale(100%);border-color:#ffffff0d;background-color:gray}.courseCard.completed .checkboxLabel{opacity:1;filter:none}progress{appearance:none;-webkit-appearance:none;width:100%;height:12px;border:none}progress::-webkit-progress-bar{background-color:#333;border-radius:10px}progress::-webkit-progress-value{background-color:#2ecc71!important;border-radius:10px;transition:width .3s ease}progress::-moz-progress-bar{background-color:#2ecc71!important;border-radius:10px}.progressLabel{margin-top:8px;color:#fff;font-family:Roboto Slab}#background{height:50px;width:100%;background-color:#a00000;position:fixed;top:0;right:0;z-index:20;display:flex;justify-content:space-between;align-items:center}#logo{margin:5px;height:100%}#logo img{height:100%}#calendarBtn{height:35px;width:35px;background-color:#fff0;border-radius:5px;border:3px solid white;cursor:pointer;background-image:url("data:image/svg+xml,%3csvg%20fill='none'%20height='800'%20viewBox='0%200%2024%2024'%20width='800'%20xmlns='http://www.w3.org/2000/svg'%3e%3cpath%20d='m3%209h18m-14-6v2m10-2v2m-11%208h2m-2%204h2m3-4h2m-2%204h2m3-4h2m-2%204h2m-11.8%204h11.6c1.1201%200%201.6802%200%202.108-.218.3763-.1917.6823-.4977.874-.874.218-.4278.218-.9879.218-2.108v-9.6c0-1.12011%200-1.68016-.218-2.10798-.1917-.37633-.4977-.68229-.874-.87403-.4278-.21799-.9879-.21799-2.108-.21799h-11.6c-1.1201%200-1.68016%200-2.10798.21799-.37633.19174-.68229.4977-.87403.87403-.21799.42782-.21799.98787-.21799%202.10798v9.6c0%201.1201%200%201.6802.21799%202.108.19174.3763.4977.6823.87403.874.42782.218.98787.218%202.10798.218z'%20stroke='%23fff'%20stroke-linecap='round'%20stroke-linejoin='round'%20stroke-width='2'/%3e%3c/svg%3e");background-size:70%;background-position:center;background-repeat:no-repeat}#calendarBtn:hover{background-color:#fff3;border-color:#ffdcdc;transition:all .2s ease}.profileButton{height:35px;padding:0 15px;background-color:transparent;color:#fff;border:2px solid white;border-radius:5px;font-weight:700;cursor:pointer}.profileButton:hover{background-color:#fff;color:#a00000;transform:scale(1.05);transition:all .2s ease}#topBarButtons{display:flex;align-items:center;gap:15px;width:auto;pointer-events:auto;z-index:21;margin-right:20px}#statusSheetBtn,#loginBtn,#logoutBtn{height:35px;padding:0 15px;background-color:#fff;color:#a00000;border:none;border-radius:5px;font-weight:700;font-size:14px;cursor:pointer;transition:background-color .2s}#statusSheetBtn:hover,#loginBtn:hover,#logoutBtn:hover{background-color:#e6e6e6;transform:scale(1.05);transition:transform .2s}.userProfileArea{display:flex;align-items:center;gap:15px;color:#fff;font-size:14px;font-weight:700}.userContainer{display:flex;align-items:center;gap:10px}.loginModel{position:fixed;top:0;left:0;width:100%;height:100%;background-color:#0006;display:flex;justify-content:center;align-items:center;z-index:1000;font-family:Roboto Slab}.loginContent{background:#fff;width:400px;height:auto;padding:40px;border-radius:15px;text-align:center;border:5px solid rgb(160,0,0);display:flex;flex-direction:column;justify-content:center;align-items:center;box-shadow:0 4px 20px #0003}.loginTitle{color:#a00000;margin-bottom:5px;font-size:28px;font-weight:700}.loginInput{font-family:Roboto Slab;width:100%;padding:12px;margin-bottom:15px;border:1px solid #ccc;border-radius:5px;font-size:16px;box-sizing:border-box}.loginInput:focus{outline:none;border-color:#a00000;box-shadow:0 0 5px #a0000033}.loginBtn{width:100%;padding:12px;background-color:#a00000;color:#fff;border:none;border-radius:5px;font-weight:700;font-size:16px;cursor:pointer;margin-top:10px;transition:background-color .2s}.loginBtn:hover{background-color:#820000}.loginBtn:disabled{background-color:#825050;cursor:not-allowed}.cancelBtn{font-family:Roboto Slab;background:none;border:none;color:#777;margin-top:15px;cursor:pointer;font-size:14px;text-decoration:underline}.cancelBtn:hover{color:#a00000}.toggleText{margin-top:20px;font-size:14px;color:#555}.toggleLink{color:#a00000;font-weight:700;cursor:pointer;text-decoration:underline}.toggleLink:hover{color:#820000}.toggleLink:active{opacity:.8}.loginLoadingWrap{display:inline-flex;align-items:center;justify-content:center;gap:8px}.loginSpinner{width:14px;height:14px;border:2px solid rgba(255,255,255,.45);border-top-color:#fff;border-radius:50%;animation:loginSpin .7s linear infinite}@keyframes loginSpin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.cancelBtn:disabled,.loginInput:disabled{opacity:.7;cursor:not-allowed}.loginContent{min-height:400px;transition:height .3s ease}#offlineAlertDiv{position:absolute;margin-left:calc((100vw - 400px)/2);bottom:20px;height:50px;width:400px;text-align:center;font-family:Roboto Slab;color:#cd0000;border-radius:20px;border:4px solid rgb(205,0,0);background-color:#ff7878}:root{--alertGreenPriColor: rgb(0, 141, 0);--alertGreenSecColor: rgb(131, 210, 131);--alertRedPriColor: rgb(230, 0, 0);--alertRedSecColor: rgb(255, 122, 122)}.alertStack{position:fixed!important;inset:72px 16px auto auto!important;z-index:9999!important;display:flex!important;flex-direction:column!important;align-items:flex-end!important;gap:10px!important;pointer-events:none;width:auto;max-width:min(92vw,360px)}.alertBox{width:min(320px,92vw);height:fit-content;pointer-events:auto;border-radius:15px;overflow:hidden;box-shadow:0 10px 26px #00000040;transform:translate(280px);opacity:0;animation:alertIn .35s ease forwards,alertOut .35s ease 5.15s forwards}.alertTitle{margin:8px 15px 8px 8px;text-align:right;font-family:Roboto Slab;font-style:italic;font-size:25px}.alertDesc{margin:8px 15px 0 8px;text-align:right;font-family:Roboto Slab;font-style:italic;font-size:17px}.loadingBar{width:100%;height:8px;margin-top:4px;border-radius:5px;transform-origin:left center;animation:loadingShrink 5s linear forwards}.alertBox.green{border:4px solid var(--alertGreenPriColor);background-color:var(--alertGreenSecColor)}.alertTitle.green,.alertDesc.green{color:var(--alertGreenPriColor)}.loadingBar.green{background-color:var(--alertGreenPriColor)}.alertBox.red{border:4px solid var(--alertRedPriColor);background-color:var(--alertRedSecColor)}.alertTitle.red,.alertDesc.red{color:var(--alertRedPriColor)}.loadingBar.red{background-color:var(--alertRedPriColor)}@keyframes alertIn{0%{transform:translate(280px);opacity:0}to{transform:translate(0);opacity:1}}@keyframes alertOut{0%{transform:translate(0);opacity:1}to{transform:translate(280px);opacity:0}}@keyframes loadingShrink{0%{transform:scaleX(1)}to{transform:scaleX(0)}}
