.student-shell{--student-accent:#237d73;--student-ink:#26384c;--student-muted:#627183;--student-line:#dfe6ed}
.student-shell .student-page-intro{margin-bottom:22px}.student-shell .student-page-intro h1{margin-top:8px}.student-shell .student-page-intro p{max-width:68ch}
.student-shell .student-next{display:grid;grid-template-columns:minmax(0,1fr) 235px;gap:30px;align-items:center;padding:30px 34px;border-radius:15px;margin-bottom:22px;background:linear-gradient(120deg,#215d61,#2c7b72);color:#fff;overflow:hidden}
.student-shell .student-kicker{font-size:.65rem;font-weight:750;letter-spacing:.13em;color:#d8efdf}.student-shell .student-next h2{font-size:1.65rem;line-height:1.35;margin:12px 0;max-width:36ch;overflow-wrap:anywhere}.student-shell .student-next-copy p{font-size:.88rem;color:#e1efec;max-width:62ch}.student-shell .student-next .actions{margin-top:22px}.student-shell .student-next button{background:#fff;color:#215d61;font-size:.82rem;min-height:44px}.student-shell .student-next .student-hero-secondary{background:#ffffff12;color:#fff;border:1px solid #ffffff66}.student-shell .student-journey-stat{border:1px solid #ffffff40;border-radius:12px;padding:22px;background:#ffffff0b}.student-shell .student-journey-stat>strong{font-size:2.4rem;line-height:1.1;font-weight:750;font-variant-numeric:tabular-nums}.student-shell .student-journey-stat>strong span{font-size:1.05rem;color:#d9eae5;font-weight:400}.student-shell .student-journey-stat>small{color:#e1efec;font-size:.82rem;margin:10px 0 14px}.student-shell .student-journey-stat p{font-size:.71rem;line-height:1.5;color:#e1efec;margin:12px 0 0}.student-shell progress{appearance:none;-webkit-appearance:none;width:100%;height:7px;border:none;border-radius:20px;overflow:hidden;background:#e4ece8;display:block}.student-shell progress::-webkit-progress-bar{background:#e4ece8;border-radius:20px}.student-shell progress::-webkit-progress-value{background:#2d8a70;border-radius:20px}.student-shell progress::-moz-progress-bar{background:#2d8a70;border-radius:20px}.student-shell .student-next progress::-webkit-progress-bar{background:#ffffff38}.student-shell .student-next progress::-webkit-progress-value{background:#d2ecd7}.student-shell .student-next progress::-moz-progress-bar{background:#d2ecd7}
.student-shell .student-shortcuts{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;margin:0 0 30px}.student-shell .student-shortcuts button{display:flex;align-items:center;gap:12px;padding:16px;background:#fff;border:1px solid var(--student-line);border-radius:11px;text-align:left;color:var(--student-ink);font-size:.85rem;min-width:0;min-height:66px}.student-shell .student-shortcuts button>svg{flex-shrink:0;color:#97162b;width:24px;height:24px}.student-shell .student-shortcuts button small{display:block;font-size:.7rem;font-weight:400;color:var(--student-muted);margin-top:4px}.student-shell .student-shortcuts button:hover{filter:none;background:#fcf7f8;border-color:#c998a2}
.student-shell .student-dashboard-layout{grid-template-columns:minmax(0,1fr) 300px;gap:26px}.student-shell .student-dashboard .course-grid{grid-template-columns:repeat(auto-fill,minmax(min(100%,255px),1fr));gap:18px}.student-shell .student-course-card{border-radius:12px;box-shadow:0 3px 15px #243e4e04}.student-shell .student-course-card .course-cover{height:100px;padding:16px}.student-shell .student-course-card .cover-mark svg{width:80px;height:80px}.student-shell .student-course-card .course-content{padding:20px}.student-shell .student-course-card h2{color:var(--student-ink);font-size:1.06rem;margin:8px 0 12px;line-height:1.45}.student-shell .student-instructor{font-size:.75rem;line-height:1.45;color:var(--student-muted);overflow-wrap:anywhere}.student-shell .student-card-progress{margin:20px 0 16px}.student-shell .student-card-progress>div{display:flex;align-items:center;justify-content:space-between;gap:10px;margin-bottom:9px}.student-shell .student-card-progress strong{font-size:.88rem;font-variant-numeric:tabular-nums}.student-shell .student-card-progress small{font-size:.71rem}.student-shell .student-course-card .course-counts{font-size:.73rem;margin:0;padding-top:12px}.student-shell .student-course-card .student-card-next{font-size:.8rem;color:#415d68;line-height:1.5;overflow-wrap:anywhere;min-height:3.4em;margin-top:15px}.student-shell .student-card-next small{font-size:.68rem;color:var(--student-muted);margin-bottom:4px}.student-shell .student-course-card .actions{margin-top:16px}.student-shell .student-course-card .actions button{border-color:#d6e4df;color:#236a5b;background:#f4faf7;min-height:44px}
.student-shell .student-todo .eyebrow{color:#647183}.student-shell .student-todo .todo-number{color:#9a263a;font-size:2.3rem;margin:12px 0 8px}.student-shell .student-todo h2{font-size:1rem;margin-bottom:8px}.student-shell .student-todo p{font-size:.8rem;line-height:1.6}.student-shell .student-deadlines h2{font-size:1.03rem}.student-shell .student-deadlines ul{list-style:none;margin:0;padding:0}.student-shell .student-deadlines li{padding:16px 0;border-top:1px solid #e8edf2;display:flex;align-items:center;gap:12px;justify-content:space-between}.student-shell .student-deadlines li>div{min-width:0}.student-shell .student-deadlines li strong{display:block;font-size:.8rem;line-height:1.5;margin:8px 0 5px;overflow-wrap:anywhere}.student-shell .student-deadlines li small{font-size:.7rem}.student-shell .student-deadlines li button{font-size:.72rem;min-height:44px;padding:8px 10px;flex-shrink:0}.student-shell .student-due-label{display:inline-block;padding:3px 7px;border-radius:5px;font-size:.65rem;color:#3b6673;background:#edf5f8}.student-shell .student-due-label.overdue{color:#865a0c;background:#fff3d6}.student-shell .student-active-tests{border-left:4px solid #bb8a2c}.student-shell .student-active-tests h2{font-size:1.05rem}.student-shell .student-active-tests p{font-size:.83rem;color:var(--student-muted);margin-bottom:15px}.student-shell .student-active-tests>div{display:flex;gap:15px;align-items:center;justify-content:space-between;border-top:1px solid var(--student-line);padding-top:14px;margin-top:14px}.student-shell .student-active-tests strong{font-size:.84rem;overflow-wrap:anywhere}.student-shell .student-active-tests button{font-size:.8rem;flex-shrink:0;min-height:44px}
.student-shell .student-course-summary{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:30px;border:1px solid #d4e7de;border-radius:12px;background:#f0f8f4;padding:22px 25px;margin:0 0 20px;align-items:center}.student-shell .student-course-summary h2{font-size:1.12rem;line-height:1.4;margin:8px 0;overflow-wrap:anywhere}.student-shell .student-course-summary p{font-size:.8rem;color:#4f7064}.student-shell .student-course-summary progress{max-width:400px;margin-top:14px}.student-shell .student-course-summary>div:last-child{border-left:1px solid #cee1d5;padding-left:28px}.student-shell .student-course-summary small{font-size:.7rem;margin-bottom:6px}.student-shell .student-course-summary strong{display:block;line-height:1.5;font-size:.9rem;overflow-wrap:anywhere}.student-shell .student-course-summary button{font-size:.78rem;min-height:44px;background:#287563;margin-top:13px}.student-shell .course-tabs button{min-height:44px}.student-shell .lesson-reader{border-radius:13px;overflow:hidden}.student-shell .lesson-heading{background:#f7faf9;border-bottom:1px solid #dfebe4}.student-shell .lesson-navigation{border-color:#d9e6df;border-radius:11px}.student-shell .lesson-tabs button{min-height:46px}.student-shell .lesson-tabs button[aria-selected=true]{border-bottom-color:#287563;color:#216951}.student-shell .lesson-position{background:#eaf3ee;color:#306a55}.student-shell .lesson-pagination button{min-height:58px}.student-shell .lesson-pagination button small{font-size:.7rem}
@media(max-width:1100px){.student-shell .student-next{grid-template-columns:minmax(0,1fr) 200px;padding:26px;gap:22px}.student-shell .student-shortcuts{grid-template-columns:repeat(2,minmax(0,1fr))}.student-shell .student-dashboard-layout{grid-template-columns:minmax(0,1fr) 260px;gap:20px}.student-shell .student-next h2{font-size:1.45rem}}
@media(max-width:860px){.student-shell .student-dashboard-layout{grid-template-columns:minmax(0,1fr)}.student-shell .student-dashboard .dashboard-aside{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:15px}.student-shell .student-dashboard .dashboard-aside .panel{margin:0}.student-shell .student-next{grid-template-columns:minmax(0,1fr) 180px}}
@media(max-width:760px){.student-shell .student-page-intro{gap:12px;align-items:flex-start}.student-shell .student-page-intro h1{font-size:1.4rem;line-height:1.35;overflow-wrap:anywhere}.student-shell .student-page-intro .date-pill{font-size:.65rem;padding:6px 8px}.student-shell .student-next{grid-template-columns:minmax(0,1fr);padding:22px;gap:22px}.student-shell .student-next h2{font-size:1.35rem}.student-shell .student-next-copy p{font-size:.82rem}.student-shell .student-next .actions{flex-direction:column}.student-shell .student-journey-stat{padding:16px}.student-shell .student-journey-stat>strong{font-size:1.9rem}.student-shell .student-shortcuts{gap:9px;margin-bottom:24px}.student-shell .student-shortcuts button{padding:13px 10px;gap:8px;font-size:.75rem;align-items:flex-start}.student-shell .student-shortcuts button small{font-size:.65rem;line-height:1.5}.student-shell .student-shortcuts button>svg{width:20px;height:20px}.student-shell .student-dashboard .dashboard-aside{grid-template-columns:minmax(0,1fr);gap:12px}.student-shell .student-dashboard-layout{gap:20px}.student-shell .student-active-tests>div{align-items:stretch;flex-direction:column;gap:12px}.student-shell .student-active-tests button{width:100%}.student-shell .student-course-summary{grid-template-columns:minmax(0,1fr);padding:18px;gap:18px}.student-shell .student-course-summary>div:last-child{padding-left:0;padding-top:16px;border-left:0;border-top:1px solid #cee1d5}.student-shell .student-course-summary button{width:100%}.student-shell .student-page-intro p{font-size:.8rem}.student-shell .student-deadlines li{gap:10px}.student-shell .breadcrumb{min-width:0}.student-shell .topbar .profile{min-width:0}.student-shell .topbar .profile b{overflow-wrap:anywhere}.student-shell .course-tabs{gap:3px}.student-shell .course-tabs button{padding:10px 12px;font-size:.76rem}}
@media print{.student-shell .student-next{background:#fff;color:#26384c;border:1px solid #dfe6ed}.student-shell .student-next p,.student-shell .student-next small,.student-shell .student-kicker{color:#26384c}.student-shell .student-shortcuts{display:none}.student-shell .student-dashboard-layout{display:block}.student-shell .student-dashboard .dashboard-aside{display:block}}
