.Dashboard_pageHeader__dr6M_{margin-bottom:var(--jvbi-space-6)}.Dashboard_greeting__n9LId{font-size:24px;font-weight:700;color:var(--jvbi-color-text);margin:0}.Dashboard_subtitle___NB8y{font-size:14px;color:var(--jvbi-color-text-muted);margin-top:var(--jvbi-space-2)}.Dashboard_statRow__HPl6v{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));grid-gap:var(--jvbi-space-4);gap:var(--jvbi-space-4);margin-bottom:var(--jvbi-space-6)}.Dashboard_statCard__IhZTh{background:var(--jvbi-color-surface);border:1px solid var(--jvbi-color-border);border-radius:var(--jvbi-radius-md);padding:var(--jvbi-space-5);box-shadow:var(--jvbi-shadow-sm);display:flex;flex-direction:column;gap:var(--jvbi-space-2)}.Dashboard_statLabel__EcBGi{font-size:12px;font-weight:600;letter-spacing:.04em;text-transform:uppercase;color:var(--jvbi-color-text-muted);display:flex;align-items:center;gap:var(--jvbi-space-2)}.Dashboard_statIcon__p67T3{color:var(--jvbi-color-primary);display:inline-flex}.Dashboard_statValue__WcPO9{font-size:28px;font-weight:700;color:var(--jvbi-color-text);line-height:1.1}.Dashboard_statHelp__vsFjc{font-size:12px;color:var(--jvbi-color-text-subtle)}.Dashboard_statValueAccent__wSm20{color:var(--jvbi-color-primary)}.Dashboard_statValueSuccess__uZilV{color:var(--jvbi-color-success)}.Dashboard_statValueWarning__pU71F{color:var(--jvbi-color-warning)}.Dashboard_grid__DUVxM{display:grid;grid-template-columns:2fr 1fr;grid-gap:var(--jvbi-space-5);gap:var(--jvbi-space-5);margin-bottom:var(--jvbi-space-6)}.Dashboard_panel__pVTJJ{background:var(--jvbi-color-surface);border:1px solid var(--jvbi-color-border);border-radius:var(--jvbi-radius-md);padding:var(--jvbi-space-5);box-shadow:var(--jvbi-shadow-sm)}.Dashboard_panelHeader__XP08T{display:flex;align-items:center;justify-content:space-between;margin-bottom:var(--jvbi-space-4)}.Dashboard_panelTitle__iGHwy{font-size:16px;font-weight:700;color:var(--jvbi-color-text);margin:0}.Dashboard_panelLink__NJqXE{font-size:13px;font-weight:600;color:var(--jvbi-color-primary);text-decoration:none}.Dashboard_panelFooter__BUjc0{display:flex;justify-content:flex-end;margin-top:var(--jvbi-space-4);padding-top:var(--jvbi-space-3);border-top:1px solid var(--jvbi-color-border)}.Dashboard_panelLink__NJqXE:hover{text-decoration:underline}.Dashboard_courseGrid__4mHER{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));grid-gap:var(--jvbi-space-3);gap:var(--jvbi-space-3)}.Dashboard_courseCard__6dlGF{display:block;border:1px solid var(--jvbi-color-border);border-radius:var(--jvbi-radius-sm);padding:var(--jvbi-space-4);text-decoration:none;color:inherit;background:var(--jvbi-color-surface);transition:transform .12s ease,box-shadow .12s ease,border-color .12s ease}.Dashboard_courseCard__6dlGF:hover{border-color:var(--jvbi-color-primary);box-shadow:var(--jvbi-shadow-md);transform:translateY(-2px)}.Dashboard_courseName__wHaDx{font-size:14px;font-weight:700;color:var(--jvbi-color-text);margin-bottom:var(--jvbi-space-3);display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}.Dashboard_progressBar__WJRF_{position:relative;background:var(--jvbi-color-surface-muted);height:8px;border-radius:999px;overflow:hidden;margin-bottom:var(--jvbi-space-2)}.Dashboard_progressFill__kHvW1{position:absolute;inset:0 auto 0 0;background:var(--jvbi-color-primary);border-radius:inherit;transition:width .24s ease}.Dashboard_progressMeta__SgdDX{display:flex;justify-content:space-between;font-size:12px;color:var(--jvbi-color-text-muted)}.Dashboard_assignmentList__fmFM_{display:flex;flex-direction:column;gap:var(--jvbi-space-3)}.Dashboard_assignmentItem__qEdxG{display:flex;align-items:center;gap:var(--jvbi-space-3);padding:var(--jvbi-space-3);border-radius:var(--jvbi-radius-sm);background:var(--jvbi-color-surface-muted);text-decoration:none;color:inherit;transition:background .12s ease}.Dashboard_assignmentItem__qEdxG:hover{background:var(--jvbi-color-primary-soft)}.Dashboard_assignmentDot__6pxR1{width:8px;height:8px;border-radius:50%;background:var(--jvbi-color-warning);flex-shrink:0}.Dashboard_assignmentDotDone__wpPOb{background:var(--jvbi-color-success)}.Dashboard_assignmentTitle__upO1f{flex:1 1;font-size:13px;font-weight:600;color:var(--jvbi-color-text);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.Dashboard_assignmentStatus__O5dMm{font-size:11px;font-weight:600;color:var(--jvbi-color-text-muted);text-transform:uppercase;letter-spacing:.04em}.Dashboard_tableWrapper__IBgs4{width:100%;overflow-x:auto;border:1px solid var(--jvbi-color-border);border-radius:var(--jvbi-radius-sm)}.Dashboard_classTable__Wxu7b{width:100%;border-collapse:collapse;font-size:13px;color:var(--jvbi-color-text)}.Dashboard_classTable__Wxu7b thead th{text-align:left;font-size:11px;font-weight:700;letter-spacing:.04em;text-transform:uppercase;color:var(--jvbi-color-text-muted);background:var(--jvbi-color-surface-muted);white-space:nowrap}.Dashboard_classTable__Wxu7b tbody td,.Dashboard_classTable__Wxu7b thead th{padding:var(--jvbi-space-3) var(--jvbi-space-4);border-bottom:1px solid var(--jvbi-color-border)}.Dashboard_classTable__Wxu7b tbody td{vertical-align:middle}.Dashboard_classTable__Wxu7b tbody tr:last-child td{border-bottom:none}.Dashboard_classTable__Wxu7b tbody tr:hover{background:var(--jvbi-color-primary-soft)}.Dashboard_tableCourseCell__mZT5r{font-weight:600;color:var(--jvbi-color-text)}.Dashboard_tableNowrap__ZlHPR{white-space:nowrap;color:var(--jvbi-color-text-muted)}.Dashboard_tableActionCol__VR6kU{width:1%;white-space:nowrap;text-align:right}.Dashboard_tableMuted__52wVl{color:var(--jvbi-color-text-subtle)}.Dashboard_classCardChip__Ol1gi{flex-shrink:0;font-size:11px;font-weight:700;letter-spacing:.04em;text-transform:uppercase;color:var(--jvbi-color-primary);background:var(--jvbi-color-primary-soft);padding:3px 8px;border-radius:4px}.Dashboard_classCardMeta__Cnh3s{display:flex;flex-direction:column;gap:var(--jvbi-space-2)}.Dashboard_classCardMetaItem__GVc9H{display:inline-flex;align-items:center;gap:var(--jvbi-space-2);font-size:12px;color:var(--jvbi-color-text-muted)}.Dashboard_classCardJoin__8CTOU{margin-top:auto;display:inline-flex;align-items:center;justify-content:center;gap:6px;padding:8px 12px;border-radius:6px;font-size:13px;font-weight:600;text-decoration:none;background:var(--jvbi-color-primary);color:#fff;transition:background .12s ease}.Dashboard_classCardJoin__8CTOU:hover{background:var(--jvbi-color-primary-hover,#1a4189)}.Dashboard_emptyState__dqH3K{padding:var(--jvbi-space-5);text-align:center;color:var(--jvbi-color-text-subtle);font-size:13px}.Dashboard_emptyState__dqH3K,.Dashboard_skeleton__5l3fC{background:var(--jvbi-color-surface-muted);border-radius:var(--jvbi-radius-sm)}.Dashboard_skeleton__5l3fC{height:14px;animation:Dashboard_pulse__8Pb4b 1.4s ease-in-out infinite}@keyframes Dashboard_pulse__8Pb4b{0%,to{opacity:1}50%{opacity:.55}}@media (max-width:768px){.Dashboard_greeting__n9LId{font-size:20px}.Dashboard_statRow__HPl6v{grid-template-columns:repeat(2,minmax(0,1fr));gap:var(--jvbi-space-3)}.Dashboard_statValue__WcPO9{font-size:22px}.Dashboard_grid__DUVxM{gap:var(--jvbi-space-4)}.Dashboard_courseGrid__4mHER,.Dashboard_grid__DUVxM{grid-template-columns:1fr}.Dashboard_panel__pVTJJ{padding:var(--jvbi-space-4)}.Dashboard_assignmentItem__qEdxG{flex-wrap:wrap}.Dashboard_assignmentTitle__upO1f{white-space:normal}}@media (max-width:480px){.Dashboard_statRow__HPl6v{grid-template-columns:1fr}}