.Selector_selectorContainer__g4t8z{display:flex;flex-direction:column;gap:10px;margin-bottom:20px;max-width:600px}.Selector_searchAndSortContainer__KI0wJ{display:flex;gap:8px;width:100%}.Selector_searchInput__GdytK{flex:1 1;font-size:14px;padding:8px}.Selector_searchInput__GdytK,.Selector_sortButton__kG3en{background-color:#fff;border:1px solid #ccc;border-radius:4px}.Selector_sortButton__kG3en{cursor:pointer;font-size:16px;padding:8px 12px}.Selector_yearFilter__tp073{width:100%}.Selector_yearSelect__-yJ-A{font-size:14px;padding:8px}.Selector_courseSelectWrapper__\+CkiX,.Selector_yearSelect__-yJ-A{background-color:#fff;border:1px solid #ccc;border-radius:4px;width:100%}.Selector_assignmentSelect__ATam7,.Selector_courseSelect__HqGyL{background-color:initial;border:none;font-size:14px;height:300px;outline:none;overflow-x:auto;padding:8px;white-space:nowrap;width:100%}.Selector_assignmentSelect__ATam7 option,.Selector_courseSelect__HqGyL option{font-size:12px;padding:8px;white-space:nowrap}.Selector_courseSelectWrapper__\+CkiX:hover,.Selector_searchInput__GdytK:hover,.Selector_sortButton__kG3en:hover,.Selector_yearSelect__-yJ-A:hover{border-color:#999}.Selector_courseSelectWrapper__\+CkiX:focus-within,.Selector_searchInput__GdytK:focus,.Selector_sortButton__kG3en:focus,.Selector_yearSelect__-yJ-A:focus{border-color:#702053;box-shadow:0 0 0 2px #70205333;outline:none}body.dark .Selector_courseSelectWrapper__\+CkiX,body.dark .Selector_searchInput__GdytK,body.dark .Selector_sortButton__kG3en,body.dark .Selector_yearSelect__-yJ-A{background-color:#444;border-color:#555;color:#f5f5f5}body.dark .Selector_assignmentSelect__ATam7,body.dark .Selector_courseSelect__HqGyL{color:#f5f5f5}body.dark .Selector_assignmentSelect__ATam7 option,body.dark .Selector_courseSelect__HqGyL option{background-color:#444;color:#f5f5f5}.Selector_error__PcEWa,.Selector_loading__BGawf{font-size:14px;margin-bottom:10px;padding:8px;text-align:center}.Selector_error__PcEWa{background-color:#dc35451a;border:1px solid #dc3545;border-radius:4px;color:#dc3545}.ChartComponent_chartContent__YK9pE{align-items:stretch;display:flex;flex-direction:column;flex-grow:1;padding:20px}.ChartComponent_menu__LAoxp{background-color:#f0f0f0;border-bottom:1px solid #ccc;display:flex;justify-content:space-around;margin-bottom:10px;width:100%}.ChartComponent_menu__LAoxp button{background-color:#fff;border:none;cursor:pointer;flex-grow:1;font-size:18px;padding:10px 0;text-align:center;transition:background-color .3s ease}.ChartComponent_menu__LAoxp button.ChartComponent_active__-8E19,.ChartComponent_menu__LAoxp button:hover{background-color:#eee}.ChartComponent_menuLabel__EqGsD{color:#871751}.ChartComponent_downloadButton__caDEx,.ChartComponent_updateButton__euQe8{background-color:#5d6cc9;border:none;border-radius:5px;color:#fff;cursor:pointer;display:block;font-size:16px;margin-top:20px;padding:10px 20px}.ChartComponent_downloadButton__caDEx:hover,.ChartComponent_updateButton__euQe8:hover{background-color:#0056b3}.ChartComponent_buttonContainer__IXVUS{display:flex;justify-content:space-between;margin-top:20px}.ChartComponent_lastUpdated__2qgVP{color:#777;font-size:.9em;margin-top:10px;text-align:right}.ChartComponent_toggleContainer__hcRYH{align-items:center;display:flex;justify-content:center;margin-top:20px}.ChartComponent_switch__hloh4{display:inline-block;height:34px;position:relative;width:60px}.ChartComponent_switch__hloh4 input{height:0;opacity:0;width:0}.ChartComponent_slider__d5\+5-{background-color:#ccc;border-radius:34px;bottom:0;cursor:pointer;left:0;position:absolute;right:0;top:0;transition:.4s}.ChartComponent_slider__d5\+5-:before{background-color:#fff;border-radius:50%;bottom:4px;content:"";height:26px;left:4px;position:absolute;transition:.4s;width:26px}input:checked+.ChartComponent_slider__d5\+5-{background-color:#5d6cc9}input:checked+.ChartComponent_slider__d5\+5-:before{transform:translateX(26px)}.ChartComponent_slider__d5\+5-.ChartComponent_round__lBYja{border-radius:34px}.ChartComponent_slider__d5\+5-.ChartComponent_round__lBYja:before{border-radius:50%}.ChartComponent_toggleLabel__sQMGx{font-size:16px;margin:0 10px}.ChartComponent_statisticsContainer__luXQz{display:flex;gap:20px;justify-content:center;margin-bottom:20px}.ChartComponent_statisticBox__hRwPO{background-color:#f5f5f5;border:1px solid #ddd;border-radius:5px;padding:10px 20px;text-align:center}.ChartComponent_statisticBox__hRwPO:hover{background-color:#eee}.ChartComponent_statisticLabel__t\+tqc{color:#871751;font-size:14px;margin:0}.ChartComponent_statisticValue__da9K7{font-size:24px;font-weight:700;margin:5px 0 0}body.ChartComponent_dark__GSN8W .ChartComponent_charts-container__\+e0o0{background-color:#333}body.ChartComponent_dark__GSN8W .ChartComponent_downloadButton__caDEx{background-color:#8797ed}body.ChartComponent_dark__GSN8W .ChartComponent_downloadButton__caDEx:hover{background-color:#4a56a5}body.ChartComponent_dark__GSN8W .ChartComponent_menu__LAoxp{background-color:#444;border-bottom:1px solid #555}body.ChartComponent_dark__GSN8W .ChartComponent_menu__LAoxp button.ChartComponent_active__-8E19,body.ChartComponent_dark__GSN8W .ChartComponent_menu__LAoxp button:hover{background-color:#555}body.ChartComponent_dark__GSN8W .ChartComponent_statisticBox__hRwPO{background-color:#444;border:1px solid #555}body.ChartComponent_dark__GSN8W .ChartComponent_statisticLabel__t\+tqc{color:#b83870}.ChartComponent_progressBarContainer__q5YId{background-color:#e0e0e0;border-radius:10px;height:20px;margin:20px 0;overflow:hidden;position:relative;width:100%}.ChartComponent_progressBarFill__5pElv{background-color:#4caf50;height:100%;transition:width .5s ease-in-out}.ChartComponent_progressBarText__3m0mz{color:#fff;font-weight:700;left:50%;position:absolute;top:50%;transform:translate(-50%,-50%)}.ChartComponent_loadingContainer__vBnUt{align-items:center;display:flex;height:300px;justify-content:center}.ChartComponent_fullyCorrect__n1ptd{background-color:#baefb9}.ChartComponent_partiallyCorrect__0JWkJ{background-color:#ffb715}.ChartComponent_fullyIncorrect__ulPda{background-color:#fd3c08}.ChartComponent_notChecked__hZWoj{background-color:#5d6cc9}.ChartComponent_notAttempted__qocNm{background-color:#871751}.ChartComponent_partialMark0__o9Ytw{background-color:gold}.ChartComponent_partialMark1__EguB\+{background-color:#ffda13}.ChartComponent_partialMark2__rKsU\+{background-color:#ffdd26}.ChartComponent_partialMark3__zbyxC{background-color:#ffe039}.ChartComponent_partialMark4__5RhIY{background-color:#ffe34c}.ChartComponent_partialMark5__slxQa{background-color:#ffe65f}.ChartComponent_partialMark6__8V7F6{background-color:#ffe972}.ChartComponent_partialMark7__MXUr4{background-color:#ffec85}.ChartComponent_partialMark8__HEPUt{background-color:#ffef98}.ChartComponent_partialMark9__EJvmI{background-color:#fff2ab}.ChartComponent_partialMark10__RJhfM{background-color:orange}.ChartComponent_controlsHeader__4qdEw{align-items:center;display:flex;justify-content:space-between;margin-bottom:15px}.ChartComponent_controlsTitle__htupl{color:#333;font-size:16px;margin:0}.ChartComponent_controlsButtons__Nvjbe{display:flex;gap:10px}.ChartComponent_controlButton__7RP-Y{background-color:#fff;border:1px solid #ddd;border-radius:4px;cursor:pointer;font-size:14px;padding:6px 12px;transition:all .2s ease}.ChartComponent_controlButton__7RP-Y:hover{background-color:#e9e9e9}.ChartComponent_checkboxGrid__LFdGY{grid-gap:10px;background-color:#fff;border:1px solid #eee;border-radius:4px;display:grid;gap:10px;grid-template-columns:repeat(auto-fill,minmax(120px,1fr));max-height:200px;overflow-y:auto;padding:10px}.ChartComponent_checkboxLabel__2DQjW{align-items:center;border-radius:4px;cursor:pointer;display:flex;font-size:14px;gap:8px;padding:4px;transition:background-color .2s ease}.ChartComponent_checkboxLabel__2DQjW:hover{background-color:#f0f0f0}.ChartComponent_checkboxLabel__2DQjW input[type=checkbox]{cursor:pointer}body.ChartComponent_dark__GSN8W .ChartComponent_visibilityControls__HjzmN{background-color:#444;border-color:#555}body.ChartComponent_dark__GSN8W .ChartComponent_controlsTitle__htupl{color:#f5f5f5}body.ChartComponent_dark__GSN8W .ChartComponent_controlButton__7RP-Y{background-color:#555;border-color:#666;color:#f5f5f5}body.ChartComponent_dark__GSN8W .ChartComponent_controlButton__7RP-Y:hover{background-color:#666}body.ChartComponent_dark__GSN8W .ChartComponent_checkboxGrid__LFdGY{background-color:#333;border-color:#555}body.ChartComponent_dark__GSN8W .ChartComponent_checkboxLabel__2DQjW{color:#f5f5f5}body.ChartComponent_dark__GSN8W .ChartComponent_checkboxLabel__2DQjW:hover{background-color:#555}.ChartComponent_belowChartControls__QbcTg{border-top:1px solid #eee;margin-bottom:20px;margin-top:20px;padding-top:20px}.ChartComponent_visibilityControls__HjzmN{background-color:#f5f5f5;border:1px solid #ddd;border-radius:8px;margin:0;padding:15px}body.ChartComponent_dark__GSN8W .ChartComponent_belowChartControls__QbcTg{border-top-color:#555}.ChartComponent_viewModeToggle__3r-lz{display:flex;gap:8px;margin-bottom:16px}.ChartComponent_viewModeButton__OSogu{background:#fff;border:1px solid #ddd;border-radius:4px;cursor:pointer;padding:8px 16px;transition:all .2s ease}.ChartComponent_viewModeButton__OSogu:hover{background:#f5f5f5}.ChartComponent_viewModeButton__OSogu.ChartComponent_active__-8E19{background:#5d6cc9;border-color:#5d6cc9;color:#fff}.ChartComponent_submissionControls__0ZGeg{background-color:#f8f9fa;border:1px solid #e9ecef;border-radius:8px;margin-bottom:20px;padding:16px}.ChartComponent_viewModeContainer__RNpY7{align-items:center;display:flex;gap:16px}.ChartComponent_modeLabel__AAI42{color:#495057;font-weight:600;min-width:80px}.ChartComponent_buttonGroup__tYbY1{display:flex;gap:12px}.ChartComponent_modeButton__fUGnO{align-items:center;background-color:#fff;border:2px solid #dee2e6;border-radius:6px;color:#495057;cursor:pointer;display:flex;font-weight:500;gap:8px;padding:8px 16px;transition:all .2s ease}.ChartComponent_modeButton__fUGnO:hover{background-color:#f1f3f5}.ChartComponent_activeMode__pKsi6{background-color:#5d6cc9;border-color:#5d6cc9;color:#fff}.ChartComponent_radioCircle__qy35e{border:2px solid;border-radius:50%;height:16px;position:relative;width:16px}.ChartComponent_activeMode__pKsi6 .ChartComponent_radioCircle__qy35e:after{background-color:#fff;border-radius:50%;content:"";height:8px;left:50%;position:absolute;top:50%;transform:translate(-50%,-50%);width:8px}.ChartComponent_statsContainer__r0dgD{background-color:#fff;border:1px solid #dee2e6;border-radius:6px;margin-top:16px;padding:12px}.ChartComponent_statsHeader__c\+V4E{color:#495057;font-weight:600;margin-bottom:8px}.ChartComponent_statsItem__ynVe2{color:#6c757d;display:flex;justify-content:space-between;padding:4px 0}.ChartComponent_statsValue__RpC8p{color:#5d6cc9;font-weight:600}.ChartComponent_submissionSummary__j9RY3{background-color:#f8f9fa;border:1px solid #e9ecef;border-radius:8px;margin:10px 0 20px;padding:16px}.ChartComponent_submissionSummary__j9RY3 h4{color:#495057;font-size:16px;font-weight:600;margin-bottom:12px;margin-top:0}.ChartComponent_summaryStats__bYfft{display:flex;justify-content:space-between}.ChartComponent_statItem__qeEc7{background-color:#fff;border-radius:6px;flex:1 1;margin:0 5px;padding:8px;text-align:center}.ChartComponent_statLabel__hVXEa{color:#6c757d;display:block;font-size:14px;margin-bottom:4px}.ChartComponent_statValue__hJOc1{display:block;font-size:24px}.ChartComponent_noDataMessage__32UZK{background-color:#f8f9fa;border-radius:8px;color:#6c757d;font-size:16px;margin:20px 0;padding:30px;text-align:center}body.ChartComponent_dark__GSN8W .ChartComponent_submissionSummary__j9RY3{background-color:#444;border-color:#555}body.ChartComponent_dark__GSN8W .ChartComponent_submissionSummary__j9RY3 h4{color:#f5f5f5}body.ChartComponent_dark__GSN8W .ChartComponent_statItem__qeEc7{background-color:#333}body.ChartComponent_dark__GSN8W .ChartComponent_statLabel__hVXEa{color:#adb5bd}body.ChartComponent_dark__GSN8W .ChartComponent_statValue__hJOc1{color:#8797ed}body.ChartComponent_dark__GSN8W .ChartComponent_noDataMessage__32UZK{background-color:#333;color:#adb5bd}.ChartComponent_errorMessage__Q8sOV{align-items:flex-start;background-color:#fff3cd;border:1px solid #ffeeba;border-radius:8px;color:#856404;display:flex;margin:16px 0;padding:16px}.ChartComponent_errorIcon__DSAI2{flex-shrink:0;font-size:24px;margin-right:16px}.ChartComponent_errorContent__WhAuj{flex:1 1}.ChartComponent_errorContent__WhAuj h4{color:#856404;font-size:18px;margin-bottom:8px;margin-top:0}.ChartComponent_errorContent__WhAuj p{margin-bottom:8px;margin-top:0}.ChartComponent_errorHint__EVTD2{color:#6c757d;font-style:italic}body.ChartComponent_dark__GSN8W .ChartComponent_errorMessage__Q8sOV{background-color:#332701;border-color:#665501;color:#ffe69c}body.ChartComponent_dark__GSN8W .ChartComponent_errorContent__WhAuj h4{color:#ffe69c}body.ChartComponent_dark__GSN8W .ChartComponent_errorHint__EVTD2{color:#adb5bd}.ChartComponent_statsContainer__r0dgD{display:flex;flex-wrap:wrap;gap:15px;justify-content:space-between;margin-bottom:20px}.ChartComponent_statCard__v7Bm0{background-color:#f8f9fa;border-radius:8px;box-shadow:0 2px 4px #0000000d;flex:1 1;min-width:150px;padding:15px;text-align:center;transition:transform .2s}.ChartComponent_statCard__v7Bm0:hover{transform:translateY(-3px)}.ChartComponent_statTitle__Hmncw{color:#6c757d;font-size:14px;margin-bottom:8px}.ChartComponent_statValue__hJOc1{color:#5d6cc9;font-size:26px;font-weight:700}.ChartComponent_statCard__v7Bm0:first-child .ChartComponent_statValue__hJOc1{color:#ffa726}.ChartComponent_statCard__v7Bm0:nth-child(2) .ChartComponent_statValue__hJOc1{color:#42a5f5}.ChartComponent_statCard__v7Bm0:nth-child(3) .ChartComponent_statValue__hJOc1{color:#66bb6a}.ChartComponent_statCard__v7Bm0:nth-child(4) .ChartComponent_statValue__hJOc1{color:#ef5350}.ChartComponent_statCard__v7Bm0:nth-child(5) .ChartComponent_statValue__hJOc1{color:#ab47bc}body.ChartComponent_dark__GSN8W .ChartComponent_statCard__v7Bm0{background-color:#3a3a3a}body.ChartComponent_dark__GSN8W .ChartComponent_statTitle__Hmncw{color:#adb5bd}body.ChartComponent_dark__GSN8W .ChartComponent_statCard__v7Bm0:first-child .ChartComponent_statValue__hJOc1{color:#ffb74d}body.ChartComponent_dark__GSN8W .ChartComponent_statCard__v7Bm0:nth-child(2) .ChartComponent_statValue__hJOc1{color:#64b5f6}body.ChartComponent_dark__GSN8W .ChartComponent_statCard__v7Bm0:nth-child(3) .ChartComponent_statValue__hJOc1{color:#81c784}body.ChartComponent_dark__GSN8W .ChartComponent_statCard__v7Bm0:nth-child(4) .ChartComponent_statValue__hJOc1{color:#e57373}body.ChartComponent_dark__GSN8W .ChartComponent_statCard__v7Bm0:nth-child(5) .ChartComponent_statValue__hJOc1{color:#ba68c8}@media (max-width:768px){.ChartComponent_statsContainer__r0dgD{flex-direction:column}.ChartComponent_statCard__v7Bm0{min-width:100%}}.ChartComponent_comparisonContainer__pnCtb{background-color:#f8f9fa;border-radius:8px;margin:20px 0;padding:20px}.ChartComponent_comparisonContainer__pnCtb h3{color:#495057;margin-bottom:20px;margin-top:0;text-align:center}.ChartComponent_assignmentSelectors__x8gEH{display:flex;flex-wrap:wrap;gap:20px;justify-content:center;margin-bottom:30px}.ChartComponent_assignmentSelectors__x8gEH label{color:#495057;display:flex;flex-direction:column;font-weight:600;gap:8px;min-width:250px}.ChartComponent_assignmentSelectors__x8gEH select{background-color:#fff;border:2px solid #dee2e6;border-radius:6px;cursor:pointer;font-size:14px;padding:10px;transition:border-color .2s ease}.ChartComponent_assignmentSelectors__x8gEH select:hover{border-color:#adb5bd}.ChartComponent_assignmentSelectors__x8gEH select:focus{border-color:#5d6cc9;box-shadow:0 0 0 3px #5d6cc91a;outline:none}.ChartComponent_assignmentSelectors__x8gEH option{padding:8px}.ChartComponent_noComparison__I\+S0P{background-color:#fff;border:2px dashed #dee2e6;border-radius:8px;color:#6c757d;padding:30px;text-align:center}.ChartComponent_noComparison__I\+S0P h4{color:#495057;margin-bottom:15px}.ChartComponent_noComparison__I\+S0P ul{display:inline-block;margin:15px 0;text-align:left}.ChartComponent_noComparison__I\+S0P li{margin:5px 0}.ChartComponent_error__U2ug-{background-color:#f8d7da;border:1px solid #f5c6cb;border-radius:6px;color:#dc3545;margin:15px 0;padding:15px;text-align:center}.ChartComponent_switchContainer__trDNG{align-items:center;background-color:#f8f9fa;border:1px solid #dee2e6;border-radius:8px;display:flex;gap:15px;justify-content:center;margin-bottom:20px;padding:15px}.ChartComponent_switchContainer__trDNG .ChartComponent_toggleLabel__sQMGx{color:#495057;font-size:16px;font-weight:600}.ChartComponent_comparisonContainer__pnCtb .ChartComponent_loading__-HviP{color:#6c757d;font-style:italic;padding:20px;text-align:center}body.ChartComponent_dark__GSN8W .ChartComponent_comparisonContainer__pnCtb{background-color:#343a40}body.ChartComponent_dark__GSN8W .ChartComponent_assignmentSelectors__x8gEH label,body.ChartComponent_dark__GSN8W .ChartComponent_comparisonContainer__pnCtb h3{color:#f8f9fa}.ChartComponent_assignmentSelectors__x8gEH select:disabled{background-color:#f8f9fa;color:#6c757d;cursor:not-allowed}body.ChartComponent_dark__GSN8W .ChartComponent_assignmentSelectors__x8gEH select{background-color:#495057;border-color:#6c757d;color:#f8f9fa}body.ChartComponent_dark__GSN8W .ChartComponent_assignmentSelectors__x8gEH select:hover{border-color:#adb5bd}body.ChartComponent_dark__GSN8W .ChartComponent_assignmentSelectors__x8gEH select:focus{border-color:#8797ed;box-shadow:0 0 0 3px #8797ed33}body.ChartComponent_dark__GSN8W .ChartComponent_noComparison__I\+S0P{background-color:#495057;border-color:#6c757d;color:#adb5bd}body.ChartComponent_dark__GSN8W .ChartComponent_noComparison__I\+S0P h4{color:#f8f9fa}body.ChartComponent_dark__GSN8W .ChartComponent_error__U2ug-{background-color:#662d36;border-color:#8b4a52;color:#f8d7da}body.ChartComponent_dark__GSN8W .ChartComponent_switchContainer__trDNG{background-color:#495057;border-color:#6c757d}body.ChartComponent_dark__GSN8W .ChartComponent_switchContainer__trDNG .ChartComponent_toggleLabel__sQMGx{color:#f8f9fa}@media (max-width:768px){.ChartComponent_assignmentSelectors__x8gEH{align-items:center;flex-direction:column}.ChartComponent_assignmentSelectors__x8gEH label{min-width:100%}}.ChartComponent_courseSelectors__hSVG2{display:flex;flex-wrap:wrap;gap:20px;justify-content:center;margin-bottom:20px}.ChartComponent_courseSelectors__hSVG2 label{color:#495057;display:flex;flex-direction:column;font-weight:600;gap:8px;min-width:300px}.ChartComponent_courseSelectors__hSVG2 select{background-color:#fff;border:2px solid #dee2e6;border-radius:6px;cursor:pointer;font-size:14px;padding:10px;transition:border-color .2s ease}.ChartComponent_courseSelectors__hSVG2 select:hover{border-color:#adb5bd}.ChartComponent_courseSelectors__hSVG2 select:focus{border-color:#5d6cc9;box-shadow:0 0 0 3px #5d6cc91a;outline:none}.ChartComponent_courseSelectors__hSVG2 select:disabled{background-color:#f8f9fa;color:#6c757d;cursor:not-allowed}.AssignmentStatsSummary_statsContainer__DPqes{display:flex;flex-wrap:wrap;gap:15px;justify-content:space-between;margin-bottom:20px}.AssignmentStatsSummary_statBox__URajJ{background-color:#f8f9fa;border-radius:8px;box-shadow:0 2px 4px #0000000d;flex:1 1;min-width:150px;padding:15px;text-align:center;transition:transform .2s}.AssignmentStatsSummary_statBox__URajJ:hover{transform:translateY(-3px)}.AssignmentStatsSummary_statLabel__KWpu2{color:#6c757d;font-size:14px;margin-bottom:8px}.AssignmentStatsSummary_statValueHighlight__D-0tz{color:#5d6cc9;font-size:26px;font-weight:700}.AssignmentStatsSummary_statBox__URajJ:first-child .AssignmentStatsSummary_statValueHighlight__D-0tz{color:#ffa726}.AssignmentStatsSummary_statBox__URajJ:nth-child(2) .AssignmentStatsSummary_statValueHighlight__D-0tz{color:#42a5f5}.AssignmentStatsSummary_statBox__URajJ:nth-child(3) .AssignmentStatsSummary_statValueHighlight__D-0tz{color:#5d6cc9}.AssignmentStatsSummary_statBox__URajJ:nth-child(4) .AssignmentStatsSummary_statValueHighlight__D-0tz{color:#66bb6a}.AssignmentStatsSummary_statBox__URajJ:nth-child(5) .AssignmentStatsSummary_statValueHighlight__D-0tz{color:#ef5350}.AssignmentStatsSummary_statBox__URajJ:nth-child(6) .AssignmentStatsSummary_statValueHighlight__D-0tz{color:#ab47bc}body.dark .AssignmentStatsSummary_statBox__URajJ{background-color:#3a3a3a}body.dark .AssignmentStatsSummary_statLabel__KWpu2{color:#adb5bd}body.dark .AssignmentStatsSummary_statBox__URajJ:first-child .AssignmentStatsSummary_statValueHighlight__D-0tz{color:#ffb74d}body.dark .AssignmentStatsSummary_statBox__URajJ:nth-child(2) .AssignmentStatsSummary_statValueHighlight__D-0tz{color:#64b5f6}body.dark .AssignmentStatsSummary_statBox__URajJ:nth-child(3) .AssignmentStatsSummary_statValueHighlight__D-0tz{color:#7986cb}body.dark .AssignmentStatsSummary_statBox__URajJ:nth-child(4) .AssignmentStatsSummary_statValueHighlight__D-0tz{color:#81c784}body.dark .AssignmentStatsSummary_statBox__URajJ:nth-child(5) .AssignmentStatsSummary_statValueHighlight__D-0tz{color:#e57373}body.dark .AssignmentStatsSummary_statBox__URajJ:nth-child(6) .AssignmentStatsSummary_statValueHighlight__D-0tz{color:#ba68c8}@media (max-width:768px){.AssignmentStatsSummary_statsContainer__DPqes{flex-direction:column}.AssignmentStatsSummary_statBox__URajJ{min-width:100%}}.GradeDistributionChart_gradeDistributionContainer__5RVyb{background-color:#f8f9fa;border-radius:10px;box-shadow:0 2px 8px #0000000d;margin:30px 0;padding:20px}.GradeDistributionChart_chartTitle__fW48L{color:#495057;font-size:18px;margin-bottom:20px;margin-top:0;text-align:center}.GradeDistributionChart_gradeDistributionChart__7XvR-{display:flex;flex-direction:column;gap:10px}.GradeDistributionChart_gradeBar__nh-JX{align-items:center;display:flex;gap:10px}.GradeDistributionChart_gradeLabel__O9AkM{color:#6c757d;font-size:14px;text-align:right;width:50px}.GradeDistributionChart_barContainer__I6U7b{background-color:#e9ecef;border-radius:4px;flex-grow:1;height:30px;overflow:hidden}.GradeDistributionChart_barFill__DziXf{align-items:center;display:flex;height:100%;justify-content:flex-end;min-width:30px;padding-right:8px;transition:width .5s ease}.GradeDistributionChart_barCount__cLzzQ{color:#fff;font-weight:700;text-shadow:0 1px 2px #0000004d}.GradeDistributionChart_percentageLabel__U9408{color:#6c757d;font-size:14px;text-align:left;width:50px}.GradeDistributionChart_distributionLegend__xsH19{display:flex;gap:20px;justify-content:center;margin-top:20px}.GradeDistributionChart_legendItem__KCic7{align-items:center;color:#6c757d;display:flex;font-size:14px;gap:5px}.GradeDistributionChart_legendColor__1dNWw{border-radius:3px;height:16px;width:16px}body.dark .GradeDistributionChart_gradeDistributionContainer__5RVyb{background-color:#3a3a3a}body.dark .GradeDistributionChart_chartTitle__fW48L{color:#dee2e6}body.dark .GradeDistributionChart_gradeLabel__O9AkM,body.dark .GradeDistributionChart_legendItem__KCic7,body.dark .GradeDistributionChart_percentageLabel__U9408{color:#adb5bd}body.dark .GradeDistributionChart_barContainer__I6U7b{background-color:#495057}body.dark .GradeDistributionChart_barFill__DziXf{opacity:.85}@media (max-width:768px){.GradeDistributionChart_gradeBar__nh-JX{flex-wrap:wrap}.GradeDistributionChart_gradeLabel__O9AkM,.GradeDistributionChart_percentageLabel__U9408{font-size:12px;width:40px}.GradeDistributionChart_distributionLegend__xsH19{align-items:center;flex-direction:column;gap:10px}}.AssignmentComparisonSelector_comparisonContainer__RhQut{background-color:#f8f9fa;border-radius:12px;margin:20px 0;padding:20px}.AssignmentComparisonSelector_header__0qSoU{margin-bottom:30px;text-align:center}.AssignmentComparisonSelector_header__0qSoU h3{color:#495057;margin-bottom:10px}.AssignmentComparisonSelector_header__0qSoU p{color:#6c757d;margin:0}.AssignmentComparisonSelector_selectionContainer__ItNb5{align-items:flex-start;display:flex;gap:20px;margin-bottom:30px}.AssignmentComparisonSelector_assignmentSelector__KRr5l{background:#fff;border-radius:8px;box-shadow:0 2px 8px #0000001a;flex:1 1;padding:20px}.AssignmentComparisonSelector_selectorHeader__eqd6w{align-items:center;display:flex;gap:10px;margin-bottom:15px}.AssignmentComparisonSelector_badge__YF\+Ww{align-items:center;background-color:#5d6cc9;border-radius:50%;color:#fff;display:flex;font-size:12px;font-weight:700;height:24px;justify-content:center;width:24px}.AssignmentComparisonSelector_searchInput__yypzg{border:1px solid #dee2e6;border-radius:4px;font-size:14px;margin-bottom:10px;padding:8px 12px;width:100%}.AssignmentComparisonSelector_assignmentSelect__sok3L{background-color:#fafafa;border:1px solid #dee2e6;border-radius:4px;font-size:13px;padding:8px;width:100%}.AssignmentComparisonSelector_vsContainer__rC\+lh{align-items:center;display:flex;justify-content:center;margin-top:60px}.AssignmentComparisonSelector_vsCircle__tE0SE{align-items:center;background-color:#28a745;border-radius:50%;box-shadow:0 4px 12px #28a7454d;color:#fff;display:flex;font-size:16px;font-weight:700;height:50px;justify-content:center;width:50px}.AssignmentComparisonSelector_actionContainer__4VyB-{display:flex;gap:15px;justify-content:center}.AssignmentComparisonSelector_compareButton__Y108l,.AssignmentComparisonSelector_resetButton__fP\+aC{border:none;border-radius:6px;cursor:pointer;font-size:14px;font-weight:600;padding:12px 24px;transition:all .2s ease}.AssignmentComparisonSelector_resetButton__fP\+aC{background-color:#6c757d;color:#fff}.AssignmentComparisonSelector_resetButton__fP\+aC:hover{background-color:#5a6268}.AssignmentComparisonSelector_compareButton__Y108l{background-color:#5d6cc9;color:#fff}.AssignmentComparisonSelector_compareButton__Y108l:hover:not(.AssignmentComparisonSelector_disabled__-7iTN){background-color:#4c63d2}.AssignmentComparisonSelector_compareButton__Y108l.AssignmentComparisonSelector_disabled__-7iTN{background-color:#dee2e6;color:#6c757d;cursor:not-allowed}.AssignmentComparisonSelector_error__w1wAq,.AssignmentComparisonSelector_loading__ZYypc{padding:20px;text-align:center}.AssignmentComparisonSelector_error__w1wAq{background-color:#f8d7da;border:1px solid #f5c6cb;border-radius:4px;color:#dc3545}.AssignmentComparisonSelector_sankeyContainer__NCz0\+{background:#fff;border-radius:8px;margin-top:30px;padding:20px}.AssignmentComparisonSelector_analysisSection__M2a2v{background:#f7f9fc;border:1px solid #e6e9ef;border-radius:8px;margin-top:16px;padding:12px 14px}.AssignmentComparisonSelector_topConnections__KYAf-{list-style:none;margin:8px 0 0;padding-left:0}.AssignmentComparisonSelector_topConnections__KYAf- li{border-bottom:1px dashed #e1e4ea;padding:6px 8px}.AssignmentComparisonSelector_topConnections__KYAf- li:last-child{border-bottom:none}.AssignmentComparisonSelector_studentNames__c2NW2{color:#556;font-size:12px;margin-top:4px;white-space:pre-wrap}.qb-node rect{fill:#bdd4d6;shape-rendering:crispEdges}text{font-size:13px}.qb-node .qb-value{font-size:16px}.qb-node .qb-value tspan{fill:#eaeaea}.qb-arrow .qb-node-arrow{stroke:#9ea2af;stroke-width:1px}.qb-link{fill:url(#linear-gradient)}.AssignmentList_assignmentList__L9eNh{background-color:#fff;border:1px solid #ccc;border-radius:5px;margin:10px;overflow-y:auto;padding:10px;width:45%}.AssignmentList_assignmentList__L9eNh h3{margin-bottom:10px}.AssignmentList_assignmentList__L9eNh ul{list-style-type:none;padding:0}.AssignmentList_assignmentList__L9eNh li{align-items:center;border-radius:4px;color:#5d6cc9;display:flex;justify-content:space-between;padding:8px 12px;transition:background-color .2s ease}.AssignmentList_assignmentList__L9eNh li:hover{background-color:#f8f9fa;color:#0056b3;cursor:pointer}.AssignmentList_assignmentName__imiqb{flex:1 1;margin-right:10px}.AssignmentList_liveIndicator__L\+r6f{align-items:center;background-color:#28a7451a;border-radius:12px;color:#28a745;display:flex;font-size:12px;font-weight:700;padding:4px 8px}.AssignmentList_liveDot__-zYVL{animation:AssignmentList_pulse__KLgha 2s infinite;background-color:#28a745;border-radius:50%;height:8px;margin-right:6px;width:8px}@keyframes AssignmentList_pulse__KLgha{0%{box-shadow:0 0 0 0 #28a745b3;transform:scale(.95)}70%{box-shadow:0 0 0 6px #28a74500;transform:scale(1)}to{box-shadow:0 0 0 0 #28a74500;transform:scale(.95)}}body.AssignmentList_dark__AiRN3 .AssignmentList_assignmentList__L9eNh{background-color:#444;border:1px solid #555}body.AssignmentList_dark__AiRN3 .AssignmentList_assignmentList__L9eNh li{color:#8797ed}body.AssignmentList_dark__AiRN3 .AssignmentList_assignmentList__L9eNh li:hover{background-color:#555;color:#0056b3}body.AssignmentList_dark__AiRN3 .AssignmentList_liveIndicator__L\+r6f{background-color:#28a74533}.Home_appContainer__CgBFS{background-color:#f9f9f9;display:grid;grid-template-columns:400px 1fr;grid-template-rows:auto 1fr;height:90%;width:100%}.Home_content__zWRSk{display:contents}.Home_sideMenu__mY62S{background-color:#fff;border-radius:5px;border-right:1px solid #ccc;box-shadow:2px 0 5px #0000001a;grid-row:2;padding:20px}.Home_chartContainer__JP-gU{align-items:stretch;background-color:#fff;display:flex;flex-direction:column;grid-row:2;height:92vh;margin:30px;overflow-y:auto}.Home_assignmentsContainer__f8iIk{background-color:#f9f9f9;display:flex;flex-grow:1;justify-content:space-between;overflow-y:auto;padding:10px 100px}body.Home_dark__i7tTh .Home_appContainer__CgBFS{background-color:#333;color:#f5f5f5}body.Home_dark__i7tTh .Home_chartContainer__JP-gU,body.Home_dark__i7tTh .Home_sideMenu__mY62S{background-color:#444}.Settings_settingsContainer__b3SMa{align-items:center;background-color:#f5f5f5;display:flex;flex-direction:column;height:100vh;justify-content:center}.Settings_apiKeyBox__3okk0{align-items:center;background-color:#fff;border:1px solid #ccc;border-radius:4px;color:#333;display:flex;font-size:16px;height:50px;justify-content:center;margin-bottom:20px;width:300px}.Settings_removeButton__kuj\+v,.Settings_toggleButton__ZMfxx{border:none;border-radius:4px;cursor:pointer;font-size:16px;margin:10px;padding:10px 20px}.Settings_toggleButton__ZMfxx{background-color:#5d6cc9;color:#fff}.Settings_toggleButton__ZMfxx:hover{background-color:#5d6cc9}.Settings_removeButton__kuj\+v{background-color:#871751;color:#fff}.Settings_removeButton__kuj\+v:hover{background-color:#871751}.Settings_dark__qDCnr .Settings_settingsContainer__b3SMa{background-color:#333;color:#f5f5f5}.Settings_dark__qDCnr .Settings_apiKeyBox__3okk0{background-color:#444;border:1px solid #555;color:#f5f5f5}.Settings_dark__qDCnr .Settings_removeButton__kuj\+v,.Settings_dark__qDCnr .Settings_toggleButton__ZMfxx{color:#333}.Settings_dark__qDCnr .Settings_toggleButton__ZMfxx,.Settings_dark__qDCnr .Settings_toggleButton__ZMfxx:hover{background-color:#8797ed}.Settings_dark__qDCnr .Settings_removeButton__kuj\+v,.Settings_dark__qDCnr .Settings_removeButton__kuj\+v:hover{background-color:#b83870}.Login_loginContainer__9Tn7S{align-items:center;box-sizing:border-box;display:flex;flex-direction:column;justify-content:center;min-height:100vh;padding:20px;width:100%}.Login_subtitle__RFpr\+{margin-bottom:2rem;text-align:center}.Login_apiKeyBox__WIM0w{display:flex;flex-direction:column;gap:1rem;max-width:400px;width:100%}.Login_apiKeyInput__R1jT9{border:1px solid #ccc;border-radius:4px;font-size:1rem;padding:.75rem;width:100%}.Login_submitButton__f0hpK{background-color:#702053;border:none;border-radius:4px;color:#fff;cursor:pointer;font-size:1rem;padding:.75rem;width:100%}.Login_submitButton__f0hpK:disabled{background-color:#ccc;cursor:not-allowed}.Login_infoButton__fPbNU{background-color:#702053;border-radius:50%;color:#fff;cursor:pointer;display:inline-block;height:24px;line-height:24px;position:relative;text-align:center;width:24px}.Login_infoTooltip__mYHz0{background-color:#333;border-radius:4px;bottom:100%;color:#fff;font-size:.875rem;left:50%;padding:.5rem;position:absolute;transform:translateX(-50%);width:200px;z-index:1000}.Login_errorMessage__963nS{color:#dc3545;margin-top:.5rem;text-align:center}.Login_demoButton__GuzXw{background-color:initial;border:1px solid #702053;border-radius:4px;color:#702053;cursor:pointer;margin-top:1rem;padding:.5rem 1rem}.Login_loginTabs__pqUtI{border-radius:4px;display:flex;margin-bottom:1.5rem;max-width:400px;overflow:hidden;width:100%}.Login_tabButton__cvzlJ{background-color:#f0f0f0;border:none;border-bottom:2px solid #0000;cursor:pointer;flex:1 1;font-size:.9rem;padding:.75rem 0;transition:all .2s ease-in-out}.Login_tabButton__cvzlJ:hover{background-color:#e8e8e8}.Login_activeTab__RxgAa{background-color:#fff;border-bottom:2px solid #702053;font-weight:600}body.dark .Login_tabButton__cvzlJ{background-color:#444;color:#f5f5f5}body.dark .Login_activeTab__RxgAa{background-color:#333;border-bottom-color:#b83870}body.dark .Login_tabButton__cvzlJ:hover{background-color:#555}.Navbar_navbar__IOEhY{background-color:#871751;box-shadow:0 0 10px #0000001a;box-sizing:border-box;padding:10px 30px}.Navbar_logo__-vgFT img{height:60px}.Navbar_navLinks__BAKNr a{background-color:initial;color:#fff;margin-left:20px}.Navbar_navIcon__oIFM0{background-color:initial;padding:5px}.Navbar_navbar__IOEhY{align-items:center;background-color:#702053;color:#fff;display:flex;justify-content:space-between;left:0;padding:.5rem 2rem;position:fixed;top:0;width:100%;z-index:1000}.Navbar_logo__-vgFT img{height:40px;width:auto}.Navbar_navLinks__BAKNr{align-items:center;display:flex;gap:1.5rem}.Navbar_navIcon__oIFM0{height:24px;transition:opacity .2s ease;width:24px}.Navbar_navIcon__oIFM0:hover{opacity:.8}.Navbar_logoutButton__CkiaK{align-items:center;background:none;border:none;cursor:pointer;display:flex;padding:0}.Navbar_logoutButton__CkiaK:hover{opacity:.8}.Navbar_logoutButton__CkiaK{position:relative}.Navbar_logoutButton__CkiaK:after{background-color:#000c;border-radius:4px;bottom:-25px;color:#fff;content:"Logout";font-size:12px;left:50%;opacity:0;padding:4px 8px;position:absolute;transform:translateX(-50%);transition:opacity .2s ease,visibility .2s ease;visibility:hidden}.Navbar_logoutButton__CkiaK:hover:after{opacity:1;visibility:visible}body{font-family:Arial,sans-serif;min-height:100vh;padding:0}nav.navbar{background-color:#702053;height:60px;left:0;position:fixed!important;top:0;width:100%;z-index:1000}.app-container{display:flex;flex-direction:column;min-height:100vh}.app-container,.content-container{background-color:#fff;position:relative}.content-container{flex:1 1;min-height:calc(100vh - 60px);padding:80px 20px 20px;z-index:1}.loginContainer{box-sizing:border-box;flex-direction:column;padding:1rem;width:100%}.loading-screen,.loginContainer{align-items:center;display:flex;justify-content:center;min-height:100vh}.loading-screen{background-color:#fff;color:#333;font-size:1.2rem}.dark{background-color:#333;color:#fff}h1,h2,h3,p{color:#333}.debug-info{background:#f0f0f0;border:1px solid #ddd;margin-bottom:20px;padding:10px}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}