.dashboard-home[data-v-29fef4fe]{-webkit-box-sizing:border-box;box-sizing:border-box;width:100%;min-height:100%;padding:26px 28px 36px;background:#f3f6fb;color:#243650}.dashboard-heading[data-v-29fef4fe]{display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-align:center;-ms-flex-align:center;align-items:center;-webkit-box-pack:justify;-ms-flex-pack:justify;justify-content:space-between;gap:20px;margin-bottom:24px}.dashboard-eyebrow[data-v-29fef4fe]{display:-webkit-inline-box;display:-ms-inline-flexbox;display:inline-flex;-webkit-box-align:center;-ms-flex-align:center;align-items:center;gap:8px;margin-bottom:7px;color:#526f9e;font-size:11px;font-weight:700;letter-spacing:1.8px}.dashboard-eyebrow[data-v-29fef4fe]:before{content:"";width:7px;height:7px;border-radius:2px;background:#4878c4}.dashboard-heading h1[data-v-29fef4fe]{margin:0;font-size:27px;font-weight:700;line-height:1.3;letter-spacing:-.5px}.dashboard-heading p[data-v-29fef4fe]{margin:8px 0 0;color:#748297;font-size:13px;line-height:1.6}.dashboard-heading-mark[data-v-29fef4fe]{display:-webkit-inline-box;display:-ms-inline-flexbox;display:inline-flex;-webkit-box-align:center;-ms-flex-align:center;align-items:center;gap:8px;padding:10px 14px;border:1px solid #d8e4f7;border-radius:10px;background:#e8f0fc;color:#42679f;font-size:12px;white-space:nowrap}.dashboard-heading-mark i[data-v-29fef4fe]{font-size:19px}.dashboard-metrics[data-v-29fef4fe]{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:16px;margin-bottom:26px}.dashboard-metric[data-v-29fef4fe]{--metric-color:#365fa3;--metric-accent:#537fd0;--metric-background:#e6efff;--metric-border:#cdddf6;position:relative;isolation:isolate;overflow:hidden;min-width:0;padding:22px 20px 20px;border:1px solid var(--metric-border);border-radius:14px;background:linear-gradient(125deg,var(--metric-background),#fff 135%);-webkit-box-shadow:0 5px 16px rgba(36,54,80,.045);box-shadow:0 5px 16px rgba(36,54,80,.045);-webkit-transition:-webkit-transform .2s ease,-webkit-box-shadow .2s ease;transition:-webkit-transform .2s ease,-webkit-box-shadow .2s ease;transition:transform .2s ease,box-shadow .2s ease;transition:transform .2s ease,box-shadow .2s ease,-webkit-transform .2s ease,-webkit-box-shadow .2s ease}.dashboard-metric[data-v-29fef4fe]:before{content:"";position:absolute;top:0;left:0;right:0;height:4px;background:var(--metric-accent);pointer-events:none}.dashboard-metric[data-v-29fef4fe]:after{content:"";position:absolute;z-index:-1;right:-36px;bottom:-60px;width:150px;height:150px;border:22px solid var(--metric-accent);border-radius:50%;opacity:.065;-webkit-box-sizing:border-box;box-sizing:border-box;pointer-events:none}.metric-homework[data-v-29fef4fe]{--metric-color:#6e4fa5;--metric-accent:#9570ce;--metric-background:#eee5fa;--metric-border:#dfd2ef}.metric-subjects[data-v-29fef4fe]{--metric-color:#22766a;--metric-accent:#3caa95;--metric-background:#dff3ec;--metric-border:#c5e6dc}.metric-submissions[data-v-29fef4fe]{--metric-color:#286f98;--metric-accent:#4b9ec9;--metric-background:#e0f1fb;--metric-border:#c9e3f2}.metric-complaints[data-v-29fef4fe]{--metric-color:#a36520;--metric-accent:#d89a49;--metric-background:#fff0db;--metric-border:#f0ddbf}@media (hover:hover){.dashboard-metric[data-v-29fef4fe]:hover{-webkit-transform:translateY(-3px);transform:translateY(-3px);-webkit-box-shadow:0 9px 22px rgba(36,54,80,.09);box-shadow:0 9px 22px rgba(36,54,80,.09)}}.metric-topline[data-v-29fef4fe]{display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-align:center;-ms-flex-align:center;align-items:center;-webkit-box-pack:justify;-ms-flex-pack:justify;justify-content:space-between;gap:8px}.metric-label[data-v-29fef4fe]{color:#4f6078;font-size:13px;font-weight:600;line-height:1.5}.metric-icon[data-v-29fef4fe]{display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-flex:0;-ms-flex:0 0 40px;flex:0 0 40px;height:40px;-webkit-box-align:center;-ms-flex-align:center;align-items:center;-webkit-box-pack:center;-ms-flex-pack:center;justify-content:center;border-radius:12px;background:var(--metric-accent);color:#fff;font-size:21px;-webkit-box-shadow:0 3px 8px rgba(36,54,80,.08);box-shadow:0 3px 8px rgba(36,54,80,.08)}.metric-value[data-v-29fef4fe]{margin-top:13px;color:var(--metric-color);font-size:34px;line-height:1.2;font-weight:700;letter-spacing:-.8px;font-variant-numeric:tabular-nums;overflow-wrap:anywhere}.metric-skeleton[data-v-29fef4fe]{width:65%;height:38.4px;border-radius:6px;background:-webkit-gradient(linear,left top,right top,color-stop(25%,#edf2f9),color-stop(50%,#f8faff),color-stop(75%,#edf2f9));background:linear-gradient(90deg,#edf2f9 25%,#f8faff 50%,#edf2f9 75%);background-size:200% 100%;-webkit-animation:metric-loading-data-v-29fef4fe 1.4s ease-in-out infinite;animation:metric-loading-data-v-29fef4fe 1.4s ease-in-out infinite}@-webkit-keyframes metric-loading-data-v-29fef4fe{0%{background-position:200% 0}to{background-position:-200% 0}}@keyframes metric-loading-data-v-29fef4fe{0%{background-position:200% 0}to{background-position:-200% 0}}@media (prefers-reduced-motion:reduce){.metric-skeleton[data-v-29fef4fe]{-webkit-animation:none;animation:none}.dashboard-metric[data-v-29fef4fe]{-webkit-transition:none;transition:none}.dashboard-metric[data-v-29fef4fe]:hover{-webkit-transform:none;transform:none}}.metric-note[data-v-29fef4fe]{margin-top:8px;color:#63738a;font-size:11px;line-height:1.5}.dashboard-panel[data-v-29fef4fe]{min-width:0;margin-bottom:24px;overflow:hidden;border:1px solid #e4eaf3;border-radius:14px;background:#fff;-webkit-box-shadow:0 4px 18px rgba(36,54,80,.03);box-shadow:0 4px 18px rgba(36,54,80,.03)}.dashboard-panel[data-v-29fef4fe]:last-child{margin-bottom:0}.dashboard-panel-heading[data-v-29fef4fe]{-webkit-box-pack:justify;-ms-flex-pack:justify;justify-content:space-between;-ms-flex-wrap:wrap;flex-wrap:wrap;gap:16px;padding:21px 24px}.dashboard-panel-heading[data-v-29fef4fe],.dashboard-panel-title[data-v-29fef4fe]{display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-align:center;-ms-flex-align:center;align-items:center}.dashboard-panel-title[data-v-29fef4fe]{gap:12px;min-width:0}.panel-icon[data-v-29fef4fe]{display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-flex:0;-ms-flex:0 0 40px;flex:0 0 40px;height:40px;-webkit-box-align:center;-ms-flex-align:center;align-items:center;-webkit-box-pack:center;-ms-flex-pack:center;justify-content:center;border-radius:12px;color:#426eae;background:#edf3fd;font-size:21px}.homework-panel-icon[data-v-29fef4fe]{color:#7961bc;background:#f3effc}.dashboard-panel-title h2[data-v-29fef4fe]{margin:0;color:#2b405f;font-size:16px;line-height:1.5;font-weight:700}.dashboard-panel-title p[data-v-29fef4fe]{margin:3px 0 0;color:#8290a3;font-size:12px;line-height:1.5}.dashboard-filter[data-v-29fef4fe]{display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-align:center;-ms-flex-align:center;align-items:center;gap:12px;color:#738198;font-size:12px}.dashboard-filter .el-select[data-v-29fef4fe]{width:210px}.dashboard-filter[data-v-29fef4fe] .el-input__inner{border-radius:8px;border-color:#dfe6f0;background:#fbfcfe}.dashboard-record-count[data-v-29fef4fe]{padding:5px 10px;border-radius:6px;background:#f2f5fa;color:#6c7e96;font-size:12px}.dashboard-table[data-v-29fef4fe]{width:100%;color:#52647e;font-size:12px;font-variant-numeric:tabular-nums}.dashboard-table[data-v-29fef4fe] th{padding:12px 0;border-bottom:1px solid #e5ebf4;background:#f0f4fa;color:#647792;font-size:11px;font-weight:600}.dashboard-table[data-v-29fef4fe] td{padding:11px 0;border-bottom:1px solid #eef2f7}.dashboard-table[data-v-29fef4fe] .cell{padding-left:20px;padding-right:20px;line-height:22px;word-break:normal}.dashboard-table[data-v-29fef4fe] .el-table__row--striped td{background:#fafbfd}.dashboard-table[data-v-29fef4fe] .el-table__body tr.current-row>td,.dashboard-table[data-v-29fef4fe] .el-table__body tr.hover-row>td,.dashboard-table[data-v-29fef4fe] .el-table__body tr:hover>td{background:#eef4ff}.dashboard-table[data-v-29fef4fe]:before{display:none}.dashboard-table[data-v-29fef4fe] .el-table__body-wrapper{scrollbar-width:thin;scrollbar-color:#bdcbde #f3f6fb}.dashboard-table[data-v-29fef4fe] .el-table__body-wrapper::-webkit-scrollbar{height:8px}.dashboard-table[data-v-29fef4fe] .el-table__body-wrapper::-webkit-scrollbar-thumb{background:#bdcbde;border-radius:4px}.year-label[data-v-29fef4fe]{color:#344f76;font-weight:600}.completion-value[data-v-29fef4fe]{color:#268478;font-weight:600}.incompletion-value[data-v-29fef4fe]{color:#b67a35}.score-cell[data-v-29fef4fe]{display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-align:center;-ms-flex-align:center;align-items:center;gap:12px}.score-track[data-v-29fef4fe]{display:block;height:5px;-webkit-box-flex:1;-ms-flex:1;flex:1;min-width:36px;overflow:hidden;border-radius:4px;background:#e9eff8}.score-track>span[data-v-29fef4fe]{display:block;height:100%;border-radius:inherit;background:#7296d4}.score-value[data-v-29fef4fe]{min-width:54px;text-align:right;color:#3d5f91;font-weight:600}@media (max-width:1250px){.dashboard-home[data-v-29fef4fe]{padding:22px 20px 28px}.dashboard-metrics[data-v-29fef4fe]{grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}}@media (max-width:760px){.dashboard-home[data-v-29fef4fe]{padding:18px 12px 24px}.dashboard-heading-mark[data-v-29fef4fe]{display:none}.dashboard-heading h1[data-v-29fef4fe]{font-size:23px}.dashboard-metrics[data-v-29fef4fe]{grid-template-columns:repeat(2,minmax(0,1fr))}.dashboard-metric[data-v-29fef4fe]{padding:15px}.metric-value[data-v-29fef4fe]{font-size:27px}.dashboard-panel-heading[data-v-29fef4fe]{padding:17px 16px}.dashboard-filter[data-v-29fef4fe]{width:100%}.dashboard-filter .el-select[data-v-29fef4fe]{-webkit-box-flex:1;-ms-flex:1;flex:1;width:auto}}@media (max-width:420px){.dashboard-metrics[data-v-29fef4fe]{grid-template-columns:minmax(0,1fr)}}