.ds-course-collection{color:var(--ds-color-ink)}.ds-course-collection-heading{justify-content:space-between;align-items:center;gap:calc(16 * var(--ds-unit));margin-bottom:calc(20 * var(--ds-unit));display:flex}.ds-course-collection-heading h2{font-size:calc(24 * var(--ds-unit));letter-spacing:calc(-.6 * var(--ds-unit));margin:0;font-weight:400;line-height:1.3}.ds-course-collection-layout{grid-template-columns:calc(300 * var(--ds-unit)) minmax(0, 1fr);align-items:start;gap:calc(40 * var(--ds-unit));color:var(--ds-color-ink);display:grid}.ds-course-filter,.ds-course-results{min-width:0}.ds-course-filter-heading{width:auto;min-height:calc(32 * var(--ds-unit));font-size:calc(20 * var(--ds-unit));color:var(--ds-color-ink);border:0;border-radius:0;justify-content:space-between;padding:0;font-weight:400;display:flex}.ds-course-filter-heading:hover{background:0 0}.ds-course-filter-heading img{flex-shrink:0}.ds-course-filter-controls{gap:calc(16 * var(--ds-unit));padding-top:0;display:grid}.ds-course-filter-controls[hidden]{display:none}.ds-course-search{align-items:center;gap:calc(12 * var(--ds-unit));min-width:0;padding:calc(12 * var(--ds-unit)) calc(16 * var(--ds-unit));border:1px solid var(--ds-color-border);border-radius:calc(12 * var(--ds-unit));background:var(--ds-color-surface);display:flex}.ds-course-search .icon{width:calc(20 * var(--ds-unit));height:calc(20 * var(--ds-unit));color:var(--ds-color-muted);flex-shrink:0}.ds-course-collection .ds-course-search input{width:100%;min-width:0;height:1.3em;min-height:0;box-shadow:none;font-size:calc(16 * var(--ds-unit));background:0 0;border:0;border-radius:0;padding:0;line-height:1.3}.ds-course-term-label{gap:calc(12 * var(--ds-unit));font-size:calc(16 * var(--ds-unit));display:grid}.ds-course-term-label>span{font-weight:600}.ds-course-term-label>strong{font-weight:400}.ds-course-filter-section{border:0;min-width:0;margin:0;padding:0}.ds-course-filter-section legend{margin-bottom:calc(16 * var(--ds-unit));font-size:calc(16 * var(--ds-unit));padding:0;font-weight:600}.ds-course-kind-options{gap:calc(12 * var(--ds-unit));display:grid}.ds-course-kind-options button{justify-content:flex-start;gap:calc(12 * var(--ds-unit));min-height:calc(26 * var(--ds-unit));font-size:calc(16 * var(--ds-unit));color:var(--ds-color-ink);background:0 0;border:0;padding:0;font-weight:400}.ds-course-checkbox{width:calc(24 * var(--ds-unit));height:calc(24 * var(--ds-unit));border-radius:calc(6 * var(--ds-unit));border:1px solid #aaa6a8;place-items:center;display:grid}.ds-course-checkbox img{visibility:hidden}.ds-course-kind-options button[aria-pressed=true] .ds-course-checkbox{border-color:var(--ds-color-brand);background:var(--ds-color-brand)}.ds-course-kind-options button[aria-pressed=true] .ds-course-checkbox img{visibility:visible}.ds-course-today{align-items:center;gap:calc(8 * var(--ds-unit));margin-bottom:calc(16 * var(--ds-unit));font-size:calc(16 * var(--ds-unit));display:flex}.ds-course-today input{width:calc(24 * var(--ds-unit));height:calc(24 * var(--ds-unit));accent-color:var(--ds-color-focus);margin:0}.ds-course-day-options{gap:calc(8 * var(--ds-unit));flex-wrap:wrap;display:flex}.ds-course-day-options button{min-width:calc(36 * var(--ds-unit));min-height:calc(36 * var(--ds-unit));font-size:calc(14 * var(--ds-unit));border-radius:50%;padding:0;font-weight:400}.ds-course-day-options button[aria-pressed=true]{background:var(--ds-color-selected);border-color:var(--ds-color-focus);color:var(--ds-color-focus)}.ds-course-filter-note{margin:calc(-12 * var(--ds-unit)) 0 0;color:#686467;font-size:calc(14 * var(--ds-unit));line-height:1.6}.ds-course-card-grid{grid-template-columns:repeat(auto-fill, minmax(min(100%, calc(320 * var(--ds-unit))), 1fr));gap:calc(20 * var(--ds-unit));display:grid}.ds-course-card{min-width:0;min-height:calc(320 * var(--ds-unit));padding:calc(32 * var(--ds-unit) - 1px);border:1px solid var(--ds-color-border);border-radius:calc(24 * var(--ds-unit));background:var(--ds-color-surface);flex-direction:column;display:flex}.ds-course-card:hover{border-color:var(--ds-color-brand)}.ds-course-card-title{align-items:flex-start;gap:calc(16 * var(--ds-unit));display:flex}.ds-course-card-title h3{min-width:0;color:var(--ds-color-ink);font-size:var(--ds-font-h3);letter-spacing:var(--ds-letter-spacing);overflow-wrap:anywhere;flex:1;margin:0;font-weight:700;line-height:1.3}.ds-course-card-title img{margin-top:calc(8 * var(--ds-unit));flex-shrink:0;transform:rotate(-90deg)}.ds-course-card-metadata{gap:calc(4 * var(--ds-unit));color:var(--ds-color-meta);font-size:calc(16 * var(--ds-unit));overflow-wrap:anywhere;margin-top:0;line-height:1.5;display:grid}.ds-course-card-metadata p{margin:0}.ds-course-ended{margin-top:calc(12 * var(--ds-unit));color:#686467;font-size:calc(14 * var(--ds-unit))}.ds-course-counts{gap:calc(6 * var(--ds-unit));margin:calc(20 * var(--ds-unit)) 0 0;font-size:calc(14 * var(--ds-unit));display:grid}.ds-course-counts>div{justify-content:space-between;align-items:baseline;gap:calc(12 * var(--ds-unit));display:flex}.ds-course-counts dt{color:#686467}.ds-course-counts dd{color:var(--ds-color-ink);margin:0;font-weight:600}.ds-course-open{padding-top:calc(20 * var(--ds-unit));color:var(--ds-color-focus);font-size:calc(14 * var(--ds-unit));margin-top:auto}.ds-course-empty{min-height:calc(320 * var(--ds-unit));border:1px solid var(--ds-color-border);border-radius:calc(24 * var(--ds-unit));background:var(--ds-color-surface);place-items:center;display:grid}.ds-course-term-controls .course-term-toolbar{gap:calc(16 * var(--ds-unit));background:0 0;border:0;margin:0;padding:0;display:grid}.ds-course-term-controls .course-term-toolbar label{align-items:stretch;gap:calc(12 * var(--ds-unit));color:var(--ds-color-ink);font-size:calc(16 * var(--ds-unit));flex-direction:column}.ds-course-term-controls .course-term-toolbar select{border-color:var(--ds-color-border);border-radius:calc(12 * var(--ds-unit));width:100%;min-width:0;max-width:none;padding:calc(12 * var(--ds-unit)) calc(40 * var(--ds-unit)) calc(12 * var(--ds-unit)) calc(16 * var(--ds-unit));color:var(--ds-color-ink);background:var(--ds-color-surface);appearance:auto}.ds-course-term-controls .course-term-toolbar p{color:#686467;margin:0;line-height:1.5}.ds-courses-page>.page-head{margin-bottom:calc(40 * var(--ds-unit))}.ds-course-collection :is(button,a,input,select):focus-visible{outline-color:var(--ds-color-focus)}@media (width<=1100px){.ds-course-collection-layout{grid-template-columns:calc(240 * var(--ds-unit)) minmax(0, 1fr);gap:calc(24 * var(--ds-unit))}.ds-course-card{padding:calc(24 * var(--ds-unit))}.ds-course-card-title h3{font-size:var(--ds-font-h3)}}@media (width<=850px){.ds-course-collection-layout{gap:calc(24 * var(--ds-unit));grid-template-columns:minmax(0,1fr)}.ds-course-filter{padding-bottom:calc(24 * var(--ds-unit));border-bottom:1px solid var(--ds-color-border)}.ds-course-filter-heading{font-size:calc(20 * var(--ds-unit))}.ds-course-kind-options{column-gap:calc(24 * var(--ds-unit));flex-wrap:wrap;display:flex}.ds-courses-page>.page-head{margin-bottom:calc(24 * var(--ds-unit))}}.ds-course-collection.filters-hidden .ds-course-collection-layout{grid-template-columns:minmax(0,1fr)}.ds-course-filter[hidden]{display:none}.ds-main-courses{max-width:none;padding:calc(40 * var(--ds-unit)) calc(120 * var(--ds-unit)) calc(80 * var(--ds-unit)) calc(40 * var(--ds-unit));background:var(--ds-color-surface);margin:0}@media (width<=1100px){.ds-main-courses{padding-right:calc(40 * var(--ds-unit))}.ds-course-card-grid{grid-template-columns:repeat(auto-fill, minmax(min(100%, calc(260 * var(--ds-unit))), 1fr))}}@media (width<=700px){.ds-shell main.ds-main-courses{padding:calc(24 * var(--ds-unit)) calc(16 * var(--ds-unit)) calc(40 * var(--ds-unit))}.ds-course-collection-heading h2{font-size:calc(20 * var(--ds-unit))}.ds-course-filter-heading{font-size:calc(16 * var(--ds-unit))}.ds-course-collection-heading{gap:calc(8 * var(--ds-unit))}}.ds-course-filter-section legend{float:left;width:100%;font-size:calc(20 * var(--ds-unit));letter-spacing:calc(-.5 * var(--ds-unit));justify-content:space-between;align-items:center;font-weight:400;line-height:1.3;display:flex}.ds-course-filter-section>div{clear:both}.ds-course-kind-section legend.sr-only{float:none;width:1px;margin:0;padding:0}.ds-course-term-label>span{justify-content:space-between;align-items:center;display:flex}.ds-filter-chevron{display:block;transform:rotate(90deg)}@media (width<=700px){.ds-course-filter-heading,.ds-course-kind-options button,.ds-course-today{min-height:calc(44 * var(--ds-unit))}.ds-course-day-options button{min-width:calc(44 * var(--ds-unit));min-height:calc(44 * var(--ds-unit))}}.ds-course-kind-options button:active,.ds-course-filter-heading:active{background:var(--ds-color-selected)}.ds-course-kind-options button{font-size:calc(20 * var(--ds-unit));letter-spacing:calc(-.5 * var(--ds-unit));color:var(--ds-color-muted);line-height:1.3}.ds-course-kind-options button[aria-pressed=true]{color:var(--ds-color-ink)}.ds-course-filter-section{padding:calc(20 * var(--ds-unit)) 0;border-bottom:calc(1 * var(--ds-unit)) solid var(--ds-color-border);display:flow-root}.ds-course-day-options{gap:calc(8 * var(--ds-unit));display:grid}.ds-course-day-checkbox{align-items:center;gap:calc(8 * var(--ds-unit));font-size:calc(20 * var(--ds-unit));color:var(--ds-color-muted);min-height:calc(26 * var(--ds-unit));letter-spacing:calc(-.5 * var(--ds-unit));line-height:1.3;display:flex}.ds-course-day-checkbox:has(input:checked){color:var(--ds-color-ink)}.ds-course-today{min-height:calc(26 * var(--ds-unit));font-size:calc(20 * var(--ds-unit));letter-spacing:calc(-.5 * var(--ds-unit));margin:0;line-height:1.3}.ds-course-filter-controls input[type=checkbox]{appearance:none;width:calc(24 * var(--ds-unit));height:calc(24 * var(--ds-unit));border:1px solid var(--ds-color-meta);border-radius:calc(5 * var(--ds-unit));background:#fff;flex-shrink:0;margin:0}.ds-course-filter-controls input[type=checkbox]:checked{background:var(--ds-color-brand) url("data:image/svg+xml,%3csvg%20preserveAspectRatio='none'%20overflow='visible'%20style='display:%20block;'%20width='24'%20height='24'%20viewBox='0%200%2024%2024'%20fill='none'%20xmlns='http://www.w3.org/2000/svg'%3e%3cg%20id='lucide/check'%3e%3cpath%20id='Vector'%20d='M20%206L9%2017L4%2012'%20stroke-width='1.5'%20stroke-linecap='round'%20stroke-linejoin='round'%20stroke='white'/%3e%3c/g%3e%3c/svg%3e") center / 100% 100% no-repeat;border-color:var(--ds-color-brand)}.ds-course-filter-controls input[type=checkbox]:disabled{opacity:.5}@media (width<=700px){.ds-course-day-checkbox,.ds-course-today{min-height:calc(44 * var(--ds-unit))}.ds-course-card{min-height:calc(240 * var(--ds-unit))}}.ds-course-card-term{column-gap:calc(8 * var(--ds-unit));flex-wrap:wrap;display:flex}.ds-course-card-metadata{letter-spacing:calc(-.4 * var(--ds-unit));gap:0;line-height:1.3}.ds-course-collection-heading,.ds-course-filter-heading{min-height:calc(31.2 * var(--ds-unit))}@media (width>=1101px){.ds-course-card-grid{grid-template-columns:repeat(4,minmax(0,1fr))}.ds-course-card-title h3{-webkit-line-clamp:3;-webkit-box-orient:vertical;display:-webkit-box;overflow:hidden}}@media (width<=700px){.ds-course-filter-heading{min-height:44px}}.ds-course-collection .ds-course-filter-heading{min-height:calc(31.2 * var(--ds-unit));padding:0}@media (width<=700px){.ds-course-collection .ds-course-filter-heading{min-height:44px}}.ds-course-collection .ds-course-filter-heading{line-height:1.3}.ds-course-filter-controls .ds-icon-slot{width:calc(24 * var(--ds-unit));height:calc(24 * var(--ds-unit));flex:none;place-items:center;display:grid}.ds-course-filter-controls .ds-icon-slot .ds-filter-chevron{transform:rotate(90deg) scale(calc(var(--ds-unit) / 1px))}.ds-courses-page>.page-head h1{font-size:var(--ds-font-h2);line-height:var(--ds-line-height);letter-spacing:var(--ds-letter-spacing)}.ds-courses-page>.page-head p{font-size:calc(13 * var(--ds-unit));margin-top:calc(6 * var(--ds-unit))}.dt-timetable{--dt-grid-height:248px;width:100%;min-width:0;color:var(--ds-color-ink)}.dt-caption{color:var(--ds-color-muted);align-items:center;gap:5px;margin-bottom:8px;font-size:11px;line-height:1.3;display:flex}.dt-current-key{background:var(--ds-color-brand);border-radius:2px;width:7px;height:7px}.dt-scroll{overscroll-behavior-inline:contain;border-radius:5px;width:100%;overflow-x:auto}.dt-grid{--dt-label-width:22px;--dt-heading-height:24px;grid-template-columns:var(--dt-label-width) repeat(var(--dt-days), minmax(0, 1fr));min-width:270px;font-size:11px;display:grid;position:relative}.dt-grid.dt-weekend{min-width:370px}.dt-day{min-height:var(--dt-heading-height);color:var(--ds-color-muted);justify-content:center;align-items:center;font-weight:500;display:flex}.dt-day.dt-today>span:first-child{background:var(--ds-color-brand);color:#fff;border-radius:50%;place-items:center;width:20px;height:20px;display:grid}.dt-hours,.dt-column{height:var(--dt-grid-height);position:relative}.dt-hours>span{color:var(--ds-color-muted);font-size:10px;line-height:1;position:absolute;right:6px}.dt-column{background:repeating-linear-gradient(to bottom, transparent 0, transparent calc(100% / var(--dt-hours) - 1px), #ececed calc(100% / var(--dt-hours) - 1px), #ececed calc(100% / var(--dt-hours)));border-top:1px solid #ececed;border-left:1px solid #ececed}.dt-column:last-child{border-right:1px solid #ececed}.dt-timetable .dt-course{--dt-color:#00769d;border:1px solid var(--dt-color);min-width:0;min-height:0;color:var(--dt-color);font:inherit;text-align:left;white-space:normal;cursor:pointer;background:#fff;border-radius:4px;flex-direction:column;justify-content:flex-start;align-items:flex-start;gap:2px;padding:4px 3px;line-height:1.25;text-decoration:none;display:flex;position:absolute;overflow:hidden}.dt-course strong{overflow-wrap:anywhere;font-weight:500}.dt-timetable .dt-course small{color:inherit;overflow-wrap:anywhere;font-size:10px}.dt-course.dt-small{padding:2px 3px}.dt-small small{display:none}.dt-course.dt-current{background:var(--dt-color);color:#fff}.dt-course:hover{box-shadow:inset 0 0 0 1px var(--dt-color);background:#fff}.dt-course.dt-current:hover{background:var(--dt-color)}.dt-course.dt-tone-1{--dt-color:#825e93}.dt-course.dt-tone-2{--dt-color:#947024}.dt-course.dt-tone-3{--dt-color:#527843}.dt-course.dt-tone-4{--dt-color:#5b65aa}.dt-course.dt-tone-5{--dt-color:#a15e64}.dt-course.dt-tone-6{--dt-color:#377c79}.dt-course.dt-tone-7{--dt-color:#98613a}.dt-course:focus-visible,.dt-scroll:focus-visible{outline:2px solid var(--ds-color-focus);outline-offset:2px;z-index:4}.dt-now-track{top:var(--dt-heading-height);left:var(--dt-label-width);height:var(--dt-grid-height);pointer-events:none;z-index:3;position:absolute;right:0}.dt-now{border-top:1.5px solid var(--ds-color-point-red);pointer-events:none;z-index:3;height:1px;position:absolute;left:0;right:0}.dt-now-dot{background:var(--ds-color-point-red);border-radius:50%;width:6px;height:6px;position:absolute;top:-3.5px;left:-3px}.dt-now-label{color:#c52a24;font-variant-numeric:tabular-nums;background:#fff;border-radius:2px;padding:1px 2px;font-size:10px;line-height:1;position:absolute;bottom:2px;left:4px}@media (width<=700px){.dt-timetable{--dt-grid-height:280px}}.resource-refresh-status{color:#6b7684;flex-wrap:wrap;align-items:baseline;gap:4px 10px;margin:8px 0;font-size:12px;line-height:1.5;display:flex}.resource-refresh-status .text{min-height:24px;font-size:inherit;padding:0}.ds-dashboard-terms{padding:calc(20 * var(--ds-unit)) 0;border:0;border-bottom:calc(1 * var(--ds-unit)) solid #e8e8e8;min-width:0;margin:0;display:flow-root}.ds-dashboard-terms legend{float:left;justify-content:space-between;align-items:center;gap:calc(8 * var(--ds-unit));width:100%;margin-bottom:calc(16 * var(--ds-unit));font-size:calc(20 * var(--ds-unit));letter-spacing:calc(-.5 * var(--ds-unit));color:var(--ds-color-ink);padding:0;font-weight:400;line-height:1.3;display:flex}.ds-dashboard-term-options{clear:both;align-content:start;gap:calc(8 * var(--ds-unit));min-height:calc(60 * var(--ds-unit));display:grid}.ds-dashboard-term-options label,.ds-dashboard-current-term{align-items:center;gap:calc(8 * var(--ds-unit));min-height:calc(26 * var(--ds-unit));color:#848082;font-size:calc(20 * var(--ds-unit));letter-spacing:calc(-.5 * var(--ds-unit));cursor:pointer;font-weight:400;line-height:1.3;display:flex}.ds-dashboard-current-term{color:#373536}.ds-dashboard-term-options label:has(input:checked){color:#373536}.ds-dashboard-current-term{cursor:default}.ds-dashboard-term-options input[type=checkbox]{appearance:none;width:calc(24 * var(--ds-unit));height:calc(24 * var(--ds-unit));border:calc(1 * var(--ds-unit)) solid #848082;border-radius:calc(5 * var(--ds-unit));background:var(--ds-color-surface);cursor:pointer;flex:none;margin:0;padding:0}.ds-dashboard-term-options input[type=checkbox]:checked{background:#0095c7 url("data:image/svg+xml,%3csvg%20preserveAspectRatio='none'%20overflow='visible'%20style='display:%20block;'%20width='24'%20height='24'%20viewBox='0%200%2024%2024'%20fill='none'%20xmlns='http://www.w3.org/2000/svg'%3e%3cg%20id='lucide/check'%3e%3cpath%20id='Vector'%20d='M20%206L9%2017L4%2012'%20stroke-width='1.5'%20stroke-linecap='round'%20stroke-linejoin='round'%20stroke='white'/%3e%3c/g%3e%3c/svg%3e") 50%/100% 100% no-repeat;border-color:#0095c7}.ds-dashboard-term-options input[type=checkbox]:focus-visible{outline:2px solid var(--ds-color-focus);outline-offset:3px}.ds-dashboard-term-placeholder{width:calc(106.667 * var(--ds-unit));height:calc(18 * var(--ds-unit));background:var(--ds-color-border);border-radius:3px;align-self:center;display:block}.ds-dashboard-term-error{color:var(--ds-color-muted);justify-items:start;gap:4px;font-size:12px;line-height:1.5;display:grid}.ds-dashboard-term-error button{min-height:32px;color:var(--ds-color-focus);font:inherit;background:0 0;border:0;padding:0;text-decoration:underline}.ds-dashboard-catalog-skeleton .ds-course-card{pointer-events:none;flex-direction:column;gap:14px;display:flex}.ds-dashboard-catalog-skeleton .ds-course-card>span{background:var(--ds-color-border);border-radius:3px;width:75%;height:14px;display:block}.ds-dashboard-catalog-skeleton .ds-course-card>span:first-child{width:90%;height:24px;margin-bottom:8px}@media (width<=700px){.ds-dashboard-term-options{min-height:94px}.ds-dashboard-term-options label,.ds-dashboard-current-term,.ds-dashboard-term-error button{min-height:44px}.ds-dashboard-term-options label,.ds-dashboard-current-term,.ds-dashboard-terms legend{font-size:15px}.ds-dashboard-term-options input[type=checkbox]{width:18px;height:18px}}.ds-main-dashboard{background:var(--ds-color-surface);max-width:none;margin:0;padding:0}.ds-dashboard{color:var(--ds-color-ink)}.ds-campus-banner{height:calc(400 * var(--ds-unit));margin-left:calc(-80 * var(--ds-unit));width:calc(100% + calc(80 * var(--ds-unit)));overflow:hidden}.ds-campus-banner img{object-fit:cover;object-position:center;width:100%;height:100%;display:block}.ds-dashboard-content{padding:calc(40 * var(--ds-unit)) calc(120 * var(--ds-unit)) calc(80 * var(--ds-unit)) calc(40 * var(--ds-unit))}.ds-dashboard-overview{grid-template-columns:calc(460 * var(--ds-unit)) minmax(0, 1fr);gap:calc(16 * var(--ds-unit));align-items:stretch;display:grid}.ds-dashboard-overview>.panel{border:1px solid var(--ds-color-border);border-radius:var(--ds-radius-card);box-shadow:none;min-height:calc(460 * var(--ds-unit))}.ds-dashboard .ds-current-class{padding:calc(64 * var(--ds-unit));flex-direction:column;display:flex}.ds-dashboard .ds-current-class .panel-head{margin-bottom:calc(40 * var(--ds-unit));gap:calc(8 * var(--ds-unit));padding:0}.ds-dashboard .ds-current-class .panel-head h2{font-size:calc(32 * var(--ds-unit));letter-spacing:calc(-.8 * var(--ds-unit));line-height:1.3}.ds-dashboard .ds-current-class .badge{color:var(--ds-color-focus);background:var(--ds-color-selected);font-size:calc(12 * var(--ds-unit));border:1px solid var(--ds-color-brand)}.ds-current-body{align-items:flex-start;gap:calc(8 * var(--ds-unit));flex-direction:column;flex:1;min-width:0;display:flex}.ds-current-body h3{font-size:calc(40 * var(--ds-unit));letter-spacing:calc(-1 * var(--ds-unit));overflow-wrap:anywhere;margin:0;font-weight:700;line-height:1.3}.ds-current-body>p{font-size:calc(24 * var(--ds-unit));margin:0;line-height:1.3}.ds-current-body>small{font-size:calc(14 * var(--ds-unit));color:var(--ds-color-muted)}.ds-dashboard .ds-current-body .ds-pill-action{align-self:flex-end;margin-top:auto}.ds-dashboard .ds-pill-action{border-radius:var(--ds-radius-pill);background:var(--ds-color-brand);color:#fff;font-size:calc(24 * var(--ds-unit));padding:calc(8 * var(--ds-unit)) calc(16 * var(--ds-unit));border:0;font-weight:700;line-height:1.3}.ds-dashboard .ds-pill-action:hover{background:var(--ds-color-focus)}.ds-dashboard .ds-pill-action .icon{width:calc(24 * var(--ds-unit));height:calc(24 * var(--ds-unit))}.ds-dashboard .ds-unread-panel{padding:calc(16 * var(--ds-unit) - 1px) calc(24 * var(--ds-unit) - 1px) calc(24 * var(--ds-unit) - 1px);flex-direction:column;min-width:0;display:flex}.ds-dashboard .ds-unread-panel .panel-head{margin-bottom:calc(8 * var(--ds-unit));padding:0}.ds-dashboard .ds-unread-panel .panel-head h2{font-size:var(--ds-font-h3);letter-spacing:var(--ds-letter-spacing);font-weight:700;line-height:1.3}.ds-unread-count{font-size:var(--ds-font-h2);letter-spacing:var(--ds-letter-spacing);font-weight:700;line-height:1.3}.ds-unread-list{margin:0;padding:0;list-style:none}.ds-unread-list li>a{align-items:center;gap:calc(8 * var(--ds-unit));padding:calc(4 * var(--ds-unit)) 0;border-radius:calc(8 * var(--ds-unit));display:flex}.ds-unread-list li>a:hover{background:var(--ds-color-canvas)}.ds-unread-title{font-size:calc(20 * var(--ds-unit));letter-spacing:calc(-.5 * var(--ds-unit));overflow-wrap:anywhere;line-height:1.3}.ds-unread-course{color:var(--ds-color-meta);font-size:calc(16 * var(--ds-unit));white-space:nowrap}.ds-unread-date{font-size:calc(16 * var(--ds-unit));color:var(--ds-color-meta);white-space:nowrap;text-align:right;margin-left:auto}.ds-unread-date small{font-size:calc(12 * var(--ds-unit));display:block}.ds-activity-icon{width:calc(24 * var(--ds-unit));height:calc(24 * var(--ds-unit));flex-shrink:0;place-items:center;display:grid}.ds-activity-icon .icon{width:calc(24 * var(--ds-unit));height:calc(24 * var(--ds-unit))}.ds-all-tasks{padding-top:calc(16 * var(--ds-unit));align-items:center;gap:calc(8 * var(--ds-unit));color:var(--ds-color-focus);font-size:calc(16 * var(--ds-unit));align-self:flex-end;margin-top:auto;display:inline-flex}.ds-dashboard .ds-course-collection,.ds-course-unavailable{margin-top:calc(120 * var(--ds-unit))}.ds-dashboard-learning{gap:calc(24 * var(--ds-unit));margin-top:calc(48 * var(--ds-unit));grid-template-columns:1fr 1fr;display:grid}.ds-dashboard-learning .panel{border-radius:var(--ds-radius-card);padding:calc(32 * var(--ds-unit));border-color:var(--ds-color-border)}.ds-dashboard-learning .panel-head h2{font-size:calc(24 * var(--ds-unit))}.ds-activity-list{margin:0;padding:0;list-style:none}.ds-activity-list li{gap:calc(16 * var(--ds-unit));padding:calc(16 * var(--ds-unit)) 0;border-bottom:1px solid var(--ds-color-border);align-items:center;display:flex}.ds-activity-description{flex:1;min-width:0}.ds-activity-description strong{font-size:calc(18 * var(--ds-unit));overflow-wrap:anywhere}.ds-activity-description small{font-size:calc(14 * var(--ds-unit));color:var(--ds-color-muted);display:block}@media (width<=1100px){.ds-campus-banner{height:calc(260 * var(--ds-unit))}.ds-dashboard-content{padding:calc(24 * var(--ds-unit))}.ds-dashboard-overview{grid-template-columns:minmax(0,1fr)}.ds-dashboard-overview>.panel{min-height:auto}.ds-dashboard .ds-current-body .ds-pill-action{margin-top:calc(24 * var(--ds-unit))}.ds-dashboard-learning{grid-template-columns:minmax(0,1fr)}.ds-dashboard .ds-course-collection{margin-top:calc(40 * var(--ds-unit))}}@media (width<=700px){.ds-shell main.ds-main-dashboard{padding:0}.ds-campus-banner{height:calc(180 * var(--ds-unit));width:100%;margin-left:0}.ds-dashboard-content{padding:calc(24 * var(--ds-unit)) calc(16 * var(--ds-unit)) calc(40 * var(--ds-unit))}.ds-dashboard .ds-current-class{padding:calc(24 * var(--ds-unit))}.ds-dashboard .ds-current-class .panel-head{margin-bottom:calc(24 * var(--ds-unit))}.ds-dashboard .ds-current-class .panel-head h2,.ds-dashboard .ds-unread-panel .panel-head h2{font-size:calc(24 * var(--ds-unit))}.ds-current-body h3{font-size:calc(30 * var(--ds-unit))}.ds-current-body>p{font-size:calc(16 * var(--ds-unit))}.ds-dashboard .ds-pill-action{font-size:calc(18 * var(--ds-unit));background:var(--ds-color-focus)}.ds-dashboard .ds-unread-panel{padding:calc(24 * var(--ds-unit))}.ds-unread-title{font-size:calc(16 * var(--ds-unit))}.ds-unread-course,.ds-unread-date{font-size:calc(14 * var(--ds-unit));white-space:normal}.ds-dashboard-learning .panel{padding:calc(24 * var(--ds-unit))}}.ds-current-time{white-space:nowrap;display:inline-block}@media (width<=700px){.ds-dashboard .ds-pill-action{min-height:calc(44 * var(--ds-unit))}}.ds-current-details{letter-spacing:calc(-.6 * var(--ds-unit));flex-direction:column;gap:0;display:flex}.ds-current-time{white-space:normal}@media (width>=1101px){.ds-dashboard-overview{grid-template-columns:calc(460 * var(--ds-unit)) calc(1200 * var(--ds-unit))}.ds-unread-list li>a{min-height:calc(34 * var(--ds-unit))}.ds-unread-title{text-overflow:ellipsis;white-space:nowrap;min-width:0;overflow:hidden}.ds-unread-course{text-overflow:ellipsis;flex-shrink:1;max-width:36%;overflow:hidden}}.ds-dashboard .ds-pill-action{gap:calc(8 * var(--ds-unit));min-height:0}.ds-dashboard .ds-current-class .badge{padding:calc(4 * var(--ds-unit)) calc(8 * var(--ds-unit));font-weight:400;line-height:1.3}.ds-activity-icon>img{transform:scale(calc(var(--ds-unit) / 1px))}@media (width<=700px){.ds-dashboard .ds-pill-action{min-height:44px}}.tt-course[href]{text-decoration:none}.timetable-meeting-details{color:#6b7684;margin-top:14px;font-size:12px}.timetable-meeting-details summary{cursor:pointer;width:fit-content;padding:5px 0}.timetable-meeting-details summary:focus-visible{outline-offset:4px;outline:2px solid #2272eb}.timetable-meeting-details ul{grid-template-columns:repeat(2,minmax(0,1fr));gap:14px 20px;margin:10px 0 0;padding:0;list-style:none;display:grid}.timetable-meeting-details li{gap:3px;min-width:0;display:grid}.timetable-meeting-details strong{color:#333d4b;overflow-wrap:anywhere}.timetable-meeting-details small{font-size:11px}.schedule-course-choices{margin:14px 0 20px}.schedule-course-choices .grow{gap:4px;display:grid}.schedule-course-choices strong{overflow-wrap:anywhere}.skeleton-line{background:#f2f4f6;border-radius:5px;width:45%;height:14px;margin:18px 0}.skeleton-line.wide{width:75%}.skeleton-timetable{background:repeating-linear-gradient(#f9fafb 0 59px,#e5e8eb 59px 60px);border:1px solid #e5e8eb;border-radius:8px;grid-template-columns:repeat(5,1fr);min-height:360px;display:grid}.skeleton-timetable>div+div{border-left:1px solid #e5e8eb}.school-auth-notice,.session-check-notice{color:#333d4b;background:#f2f4f6;border-radius:12px;justify-content:space-between;align-items:center;gap:16px;margin-bottom:20px;padding:16px 20px;display:flex}.school-auth-notice p{margin:6px 0 0;font-size:13px}@media (width<=700px){.school-auth-notice,.session-check-notice{flex-direction:column;align-items:flex-start}}.course-heading.compact .page-head{align-items:center;margin-bottom:16px}.course-heading.compact .page-head h1{font-size:22px;line-height:1.35}.course-heading.compact .page-head p{margin-top:3px;font-size:12px}.course-heading.compact .source-link{background:0 0;border:0;min-height:32px;font-size:12px}.course-breadcrumb{flex-wrap:wrap;gap:7px}.course-breadcrumb>span:last-child{overflow-wrap:anywhere}.course-breadcrumb a:hover{color:var(--primary)}.week-overview{border:1px solid var(--line);background:#fff;border-radius:12px;padding:12px 24px 20px}.week-overview-heading{border-bottom:1px solid var(--line);align-items:center;gap:10px;padding:8px 8px 14px;display:flex}.week-overview-heading h2{font-size:16px}.week-overview-heading>span{color:var(--muted);font-size:12px}.week-page-list{padding-top:5px}.current-week-materials{border:1px solid var(--line);border-radius:10px;margin:14px 0 18px;padding:16px 20px 0}.current-week-heading{justify-content:space-between;align-items:center;gap:16px;display:flex}.current-week-heading h3{font-size:14px;line-height:1.5}.current-week-heading p{color:var(--muted);margin:3px 0 0;font-size:12px}.current-week-heading>a{white-space:nowrap;align-items:center;gap:3px;min-height:28px;font-size:12px;display:inline-flex}.current-week-heading>a .icon{width:14px;height:14px}.current-week-materials .learning-row:last-child{border-bottom:0}.week-page-link{border-radius:7px;align-items:center;gap:14px;padding:14px 10px;display:flex}.week-page-link:hover,.week-page-link:focus-visible{background:#f2f4f6}.week-page-link h3{font-size:15px;font-weight:550;line-height:1.5}.week-page-link small{color:var(--muted);font-size:12px}.week-page-icon{color:#8b95a1;display:flex}.week-page-link.is-current .week-page-icon{color:#2272eb}.week-page-link>.icon{color:#b0b8c1;width:16px;height:16px}.week-activity-count{color:var(--muted);text-align:right;min-width:58px;font-size:12px}.week-workspace{grid-template-columns:198px minmax(0,1fr);align-items:start;gap:24px;display:grid}.week-navigation{overscroll-behavior:contain;scrollbar-width:thin;scrollbar-color:#d1d6db transparent;min-width:0;max-height:calc(100dvh - 110px);padding:4px 0;font-size:13px;position:sticky;top:88px;overflow-y:auto}.week-navigation a{color:#6b7684;border-radius:6px;align-items:center;gap:8px;min-width:0;padding:6px 10px;line-height:1.5;display:flex}.week-navigation a:hover{color:#191f28;background:#f2f4f6}.week-navigation a[aria-current=page]{color:#191f28;background:#f2f4f6;font-weight:600}.week-navigation .icon{color:#8b95a1;width:16px;height:16px}.week-nav-overview{margin-bottom:10px}.week-navigation .week-nav-link>span:first-of-type,.week-nav-activities a>span{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.current-week-dot{background:#2272eb;border-radius:50%;flex-shrink:0;width:5px;height:5px;margin-left:auto}.week-nav-activities{padding:3px 0 8px 18px}.week-nav-activities a{font-size:12px}.week-page-content{min-width:0}.week-page,.learning-page{border:1px solid var(--line);background:#fff;border-radius:12px;min-width:0;padding:26px 30px}.week-page-heading{padding-bottom:24px}.week-page-heading h2{letter-spacing:-.6px;margin:10px 0 6px;font-size:25px;line-height:1.4}.week-page-heading p{color:var(--muted);font-size:12px}.week-page-eyebrow{color:var(--muted);align-items:center;gap:8px;font-size:12px;display:flex}.week-page-eyebrow .icon{width:16px;height:16px}.week-page-items .learning-row{padding:18px 0}.week-page-items .type-icon{color:#8b95a1;background:0 0;width:28px}.week-page-items .learning-title{flex-wrap:wrap}.learning-row a.plain-title{overflow-wrap:anywhere;padding:0;font-weight:550;line-height:1.55}.learning-row a.plain-title:hover{color:var(--primary)}.learning-row a.row-action{white-space:nowrap;align-items:center;gap:3px;font-size:12px;display:inline-flex}.learning-row a.row-action .icon{width:15px;height:15px}.learning-page-navigation{justify-content:space-between;align-items:center;gap:16px;padding-bottom:22px;font-size:12px;display:flex}.learning-page-navigation .icon{width:16px;height:16px}.reverse-icon{display:inline-flex;transform:rotate(180deg)}.activity-stepper{white-space:nowrap;align-items:center;gap:12px;display:flex}.activity-stepper a{align-items:center;gap:3px;padding:3px 0;display:inline-flex}.activity-stepper a:hover{color:var(--primary)}.activity-stepper>span{color:#8b95a1;font-size:11px}.activity-stepper>span[aria-disabled=true]{color:#b0b8c1}.course-workspace-container [data-page-focus]:focus{outline:none}.assignment-context>span{color:#6b7684;font-size:12px}.assignment-week-workspace .assignment-toolbar{margin-bottom:16px}.assignment-week-workspace .assignment-back{color:#6b7684;font-size:13px}.course-term-toolbar{border:1px solid var(--line);background:#fff;border-radius:10px;flex-wrap:wrap;align-items:center;gap:20px;margin-bottom:18px;padding:14px 18px;display:flex}.course-term-toolbar label{color:var(--muted);align-items:center;gap:10px;font-size:13px;display:flex}.course-term-toolbar select{min-width:130px;max-width:280px}.course-term-toolbar p{color:var(--muted);margin:0 0 0 auto;font-size:12px}.course-grid .course-card>.badge{margin-top:8px}.learning-completion-status{color:#4e5968}.learning-status>small{color:var(--muted);font-size:inherit}.week-content-summary{color:var(--muted);margin-top:5px;line-height:1.5;display:block}.course-learning-counts{border-top:1px solid var(--line);grid-template-columns:repeat(2,minmax(0,1fr));gap:7px 20px;margin:14px 0 10px;padding-top:12px;display:grid}.course-learning-counts>div{justify-content:space-between;align-items:baseline;gap:8px;display:flex}.course-learning-counts dt{color:var(--muted);font-size:12px}.course-learning-counts dd{color:#333d4b;margin:0;font-size:14px;font-weight:600}.ds-shell .ds-main-course{max-width:none;padding:0 0 calc(64 * var(--ds-unit,1px));color:var(--ds-color-ink);background:var(--ds-color-surface);min-height:calc(100dvh - var(--ds-header-height));margin:0}.ds-main-course>:is(.panel,.breadcrumb,.session-check-notice,.error-state){margin:calc(24 * var(--ds-unit,1px)) calc(40 * var(--ds-unit,1px))}.ds-course-workspace{grid-template-columns:calc(40 * var(--ds-unit,1px)) minmax(0, 1fr) calc(120 * var(--ds-unit,1px));min-width:0;display:grid;position:relative}.ds-course-workspace>*{grid-column:2;min-width:0}.ds-course-workspace>:is(.ds-course-header,.ds-course-tabs-wrap){grid-column:1/-1}.ds-course-workspace .course-breadcrumb{margin:calc(36 * var(--ds-unit,1px)) 0 calc(16 * var(--ds-unit,1px));color:var(--ds-color-muted);font-size:calc(14 * var(--ds-unit,1px))}.ds-course-workspace .course-breadcrumb a{color:var(--ds-color-focus)}.ds-course-workspace .week-workspace{grid-template-columns:calc(240 * var(--ds-unit,1px)) minmax(0, 1fr);gap:calc(40 * var(--ds-unit,1px))}.ds-course-workspace .week-navigation{top:calc(var(--ds-header-height) + calc(24 * var(--ds-unit,1px)));max-height:calc(100dvh - var(--ds-header-height) - calc(48 * var(--ds-unit,1px)));color:var(--ds-color-muted);padding:0}.ds-course-workspace .week-navigation a{min-height:calc(40 * var(--ds-unit,1px));gap:calc(8 * var(--ds-unit,1px));padding:calc(4 * var(--ds-unit,1px)) 0;border-radius:var(--ds-radius-control);color:var(--ds-color-muted);font-size:var(--ds-font-small);letter-spacing:var(--ds-letter-spacing);font-weight:400;line-height:1.3}.ds-course-workspace .week-navigation .week-nav-overview{min-height:calc(32 * var(--ds-unit,1px));margin-bottom:calc(12 * var(--ds-unit,1px));font-size:var(--ds-font-small);letter-spacing:calc(-.4 * var(--ds-unit,1px))}.ds-course-workspace .week-navigation .week-nav-link>.icon{display:none}.ds-course-workspace .week-navigation a[aria-current=page]{color:var(--ds-color-ink);background:0 0;font-weight:400}.ds-course-workspace .week-navigation a:hover{background:var(--ds-color-canvas);color:var(--ds-color-ink)}.ds-course-workspace .week-navigation .week-nav-link>span:first-of-type{flex:1}.ds-week-navigation-progress{flex:0 0 calc(48 * var(--ds-unit,1px));height:calc(8 * var(--ds-unit,1px));border-radius:var(--ds-radius-pill);background:var(--ds-color-border);display:block;overflow:hidden}.ds-week-navigation-progress>span{border-radius:inherit;background:#c7f1ff;height:100%;display:block}.ds-course-workspace .current-week-dot{background:var(--ds-color-brand);margin-left:0}.ds-course-workspace .week-nav-activities{padding:calc(4 * var(--ds-unit,1px)) 0 calc(12 * var(--ds-unit,1px)) calc(12 * var(--ds-unit,1px))}.ds-course-workspace .week-nav-activities a{min-height:calc(40 * var(--ds-unit,1px));font-size:var(--ds-font-small);letter-spacing:calc(-.4 * var(--ds-unit,1px));line-height:1.4}.ds-course-workspace :is(.week-page,.learning-page,.week-overview){border:1px solid var(--ds-color-border);border-radius:var(--ds-radius-card);padding:calc(16 * var(--ds-unit,1px)) calc(24 * var(--ds-unit,1px)) calc(24 * var(--ds-unit,1px));background:var(--ds-color-surface);color:var(--ds-color-ink)}.ds-course-workspace .week-page{min-height:calc(580 * var(--ds-unit,1px))}.ds-course-workspace .week-page-heading{justify-content:space-between;align-items:flex-start;gap:calc(24 * var(--ds-unit,1px));padding-bottom:calc(8 * var(--ds-unit,1px));display:flex}.ds-week-heading-line{align-items:center;gap:calc(8 * var(--ds-unit,1px));margin-bottom:calc(8 * var(--ds-unit,1px));flex-wrap:wrap;display:flex}.ds-course-workspace .week-page-heading h2{font-size:var(--ds-font-h3);letter-spacing:var(--ds-letter-spacing);overflow-wrap:anywhere;margin:0;font-weight:700;line-height:1.3}.ds-course-workspace .week-page-heading p{font-size:var(--ds-font-small);color:var(--ds-color-muted);line-height:1.3}.ds-course-workspace .week-page-eyebrow{margin-bottom:calc(8 * var(--ds-unit,1px));font-size:calc(14 * var(--ds-unit,1px));color:var(--ds-color-muted)}.ds-learning-count{font-size:var(--ds-font-h2);letter-spacing:var(--ds-letter-spacing);flex-shrink:0;font-weight:700;line-height:1.3}.ds-course-workspace .learning-row{align-items:center;gap:calc(8 * var(--ds-unit,1px));min-width:0;padding:calc(12 * var(--ds-unit,1px)) 0;border-top:0;border-bottom:1px solid var(--ds-color-border)}.ds-course-workspace .learning-row .grow{min-width:0}.ds-course-workspace .learning-title{gap:calc(8 * var(--ds-unit,1px))}.ds-course-workspace .badge{padding:calc(2 * var(--ds-unit,1px)) calc(8 * var(--ds-unit,1px));font-size:var(--ds-font-detail);line-height:var(--ds-line-height);letter-spacing:var(--ds-letter-spacing)}.ds-lecture-select{width:calc(44 * var(--ds-unit,1px));height:calc(44 * var(--ds-unit,1px));border-radius:var(--ds-radius-control);flex-shrink:0;justify-content:center;align-items:center;display:flex}.ds-lecture-select:active{background:var(--ds-color-selected)}.ds-course-workspace .ds-lecture-select input{width:calc(24 * var(--ds-unit,1px));height:calc(24 * var(--ds-unit,1px));accent-color:var(--ds-color-focus);flex-shrink:0;margin:0}.ds-course-workspace .type-icon{width:calc(40 * var(--ds-unit,1px));height:calc(48 * var(--ds-unit,1px));color:var(--ds-color-ink);background:0 0}.ds-course-workspace .type-icon .icon{width:calc(24 * var(--ds-unit,1px));height:calc(24 * var(--ds-unit,1px))}.ds-course-workspace .learning-row a.plain-title{min-height:calc(32 * var(--ds-unit,1px));font-size:var(--ds-font-small);letter-spacing:var(--ds-letter-spacing);word-break:keep-all;overflow-wrap:break-word;font-weight:400;line-height:1.3}.ds-course-workspace .week-page-heading p{word-break:keep-all;overflow-wrap:break-word}.ds-course-workspace :is(.learning-meta,.learning-status){font-size:var(--ds-font-detail);letter-spacing:var(--ds-letter-spacing);color:var(--ds-color-muted);gap:calc(8 * var(--ds-unit,1px));overflow-wrap:anywhere;flex-wrap:wrap;line-height:1.3}.ds-course-workspace .learning-row a.row-action{min-height:calc(44 * var(--ds-unit,1px));padding-inline:calc(8 * var(--ds-unit,1px));border-radius:var(--ds-radius-control);font-size:var(--ds-font-small);color:var(--ds-color-focus)}.ds-learning-actions{align-items:flex-end;gap:calc(4 * var(--ds-unit,1px));flex-direction:column;flex-shrink:0;display:flex}.ds-learning-actions .learning-status{flex-direction:column;align-items:flex-end;margin-top:0}.ds-learning-actions .learning-completion-status{justify-content:center;align-items:center;gap:calc(8 * var(--ds-unit,1px));min-height:calc(34 * var(--ds-unit,1px));padding:calc(4 * var(--ds-unit,1px)) calc(16 * var(--ds-unit,1px));border:1px solid var(--ds-color-muted);border-radius:var(--ds-radius-pill);color:var(--ds-color-muted);font-size:var(--ds-font-small);white-space:nowrap;display:inline-flex}.ds-learning-actions .learning-completion-status.is-complete{background:var(--ds-color-brand);border-color:var(--ds-color-brand);color:#fff;font-size:var(--ds-font-body);font-weight:700}.ds-learning-actions .learning-completion-status img{flex-shrink:0}.ds-course-workspace .learning-row a:is(.plain-title,.row-action):hover{color:var(--ds-color-focus);background:var(--ds-color-selected)}.ds-course-workspace .week-overview-heading h2{font-size:var(--ds-font-h3);letter-spacing:var(--ds-letter-spacing);line-height:1.3}.ds-course-workspace .week-overview-heading>span{font-size:var(--ds-font-small);color:var(--ds-color-muted)}.ds-course-workspace .school-progress-label,.ds-course-workspace .school-progress-label small{color:var(--ds-color-muted)}.ds-course-workspace .week-page>.school-progress{margin:calc(8 * var(--ds-unit,1px)) 0;gap:calc(4 * var(--ds-unit,1px))}.ds-course-workspace .school-progress-label strong{color:var(--ds-color-focus)}.ds-course-workspace .school-progress-track{height:calc(4 * var(--ds-unit,1px));background:var(--ds-color-border)}.ds-course-workspace .school-progress-track>span{background:var(--ds-color-brand)}.ds-course-workspace .week-page-link{padding:calc(20 * var(--ds-unit,1px)) calc(8 * var(--ds-unit,1px));border-bottom:1px solid var(--ds-color-border);border-radius:0}.ds-course-workspace .week-page-link h3{font-size:var(--ds-font-body);letter-spacing:calc(-.5 * var(--ds-unit,1px));line-height:1.3}.ds-course-workspace :is(.week-page-link small,.week-activity-count){font-size:calc(14 * var(--ds-unit,1px));color:var(--ds-color-muted)}@media (width>=1101px){.ds-course-workspace .ds-course-tabs-wrap{margin-bottom:calc(36 * var(--ds-unit,1px))}.ds-course-workspace .course-breadcrumb{bottom:calc(6 * var(--ds-unit,1px));left:calc(40 * var(--ds-unit,1px));right:calc(120 * var(--ds-unit,1px));height:calc(24 * var(--ds-unit,1px));white-space:nowrap;scrollbar-width:none;flex-wrap:nowrap;grid-area:2/1/3/-1;margin:0;position:absolute;overflow-x:auto}.ds-course-workspace .course-breadcrumb>*{flex-shrink:0}.ds-course-workspace .week-navigation .week-nav-overview{display:none}.ds-course-workspace .week-navigation .week-nav-link{min-height:calc(26 * var(--ds-unit,1px));margin-bottom:calc(12 * var(--ds-unit,1px));color:#cfcecf;font-size:var(--ds-font-body);letter-spacing:calc(-.5 * var(--ds-unit,1px));padding:0}.ds-course-workspace .week-navigation .week-nav-link:is([aria-current=page],:hover,:focus-visible){color:var(--ds-color-ink)}.ds-course-workspace .week-page{padding-bottom:calc(16 * var(--ds-unit,1px))}.ds-course-workspace .week-page-heading{align-items:center}.ds-course-workspace .week-page-heading .ds-week-heading-line{margin-bottom:0}.ds-course-workspace .week-page-items{gap:calc(20 * var(--ds-unit,1px));display:grid}.ds-course-workspace .week-page-items .learning-row{min-height:calc(42 * var(--ds-unit,1px));padding:0 0 calc(4 * var(--ds-unit,1px));gap:calc(16 * var(--ds-unit,1px))}.ds-course-workspace .week-page-items .ds-lecture-select,.ds-course-workspace .week-page-items .type-icon{width:calc(24 * var(--ds-unit,1px));height:calc(24 * var(--ds-unit,1px))}.ds-course-workspace .week-page-items .ds-lecture-select+.type-icon,.ds-course-workspace .week-page-items .checkbox-spacer{display:none}.ds-course-workspace .week-page-items a.plain-title{min-height:calc(20.8 * var(--ds-unit,1px))}.ds-course-workspace .week-page-items a.row-action{min-height:calc(34 * var(--ds-unit,1px))}.ds-course-workspace .week-page-items :is(.learning-meta,.learning-status){margin:0}.ds-course-workspace .ds-week-summary{margin:calc(8 * var(--ds-unit,1px)) 0 0;color:var(--ds-color-muted);font-size:var(--ds-font-small);line-height:1.3}.ds-learning-actions{align-items:center;gap:calc(8 * var(--ds-unit,1px));flex-direction:row}}@media (width<=1100px){.ds-course-workspace{grid-template-columns:calc(24 * var(--ds-unit,1px)) minmax(0, 1fr) calc(24 * var(--ds-unit,1px))}.ds-course-workspace .course-breadcrumb{margin-top:calc(24 * var(--ds-unit,1px))}.ds-course-workspace .week-workspace{grid-template-columns:calc(180 * var(--ds-unit,1px)) minmax(0, 1fr);gap:calc(24 * var(--ds-unit,1px))}.ds-course-workspace .week-navigation a{font-size:var(--ds-font-body)}.ds-course-workspace .week-page-link>.school-progress{display:none}}@media (width<=850px){.ds-course-workspace .week-workspace{gap:calc(24 * var(--ds-unit,1px));grid-template-columns:minmax(0,1fr)}.ds-course-workspace .week-navigation{max-height:calc(220 * var(--ds-unit,1px));padding:calc(8 * var(--ds-unit,1px)) calc(12 * var(--ds-unit,1px));border:1px solid var(--ds-color-border);border-radius:var(--ds-radius-control);position:static}.ds-course-workspace .week-navigation a{min-height:calc(44 * var(--ds-unit,1px))}}@media (width<=700px){.ds-course-workspace{grid-template-columns:calc(16 * var(--ds-unit,1px)) minmax(0, 1fr) calc(16 * var(--ds-unit,1px))}.ds-course-workspace :is(.week-page,.learning-page,.week-overview){padding:calc(16 * var(--ds-unit,1px))}.ds-course-workspace .week-page-heading h2,.ds-course-workspace .week-overview-heading h2{font-size:var(--ds-font-h3);letter-spacing:calc(-.6 * var(--ds-unit,1px))}.ds-learning-count{font-size:var(--ds-font-h2)}.ds-course-workspace .week-page{min-height:0}.ds-course-workspace .learning-row{grid-template-columns:calc(44 * var(--ds-unit,1px)) minmax(0, 1fr);gap:calc(8 * var(--ds-unit,1px));display:grid}.ds-course-workspace .learning-row>:is(.type-icon,.checkbox-spacer){display:none}.ds-course-workspace .learning-row>.grow{grid-column:2}.ds-lecture-select{align-self:start}.ds-course-workspace .learning-row>.ds-learning-actions{grid-column:2;justify-self:start;align-items:flex-start}.ds-learning-actions .learning-status{align-items:flex-start}.ds-course-workspace .learning-row:has(>.checkbox-spacer)>:is(.grow,.ds-learning-actions){grid-column:1/-1}.ds-course-workspace .learning-row a.plain-title{min-height:calc(44 * var(--ds-unit,1px));font-size:calc(18 * var(--ds-unit,1px))}.ds-course-workspace :is(.learning-page-navigation,.inline-job,.week-page-link){flex-wrap:wrap}.ds-course-workspace .learning-page-navigation :is(a,.activity-stepper>span){min-height:calc(44 * var(--ds-unit,1px));align-items:center;display:inline-flex}}.ds-learning-actions .learning-completion-status img{width:calc(24 * var(--ds-unit));height:calc(24 * var(--ds-unit))}.ds-course-header{isolation:isolate;min-width:0;min-height:calc(240 * var(--ds-unit,1px));padding:calc(32 * var(--ds-unit,1px)) calc(72 * var(--ds-unit,1px));color:#fff;background:var(--ds-color-ink);align-items:center;display:flex;position:relative;overflow:hidden}.ds-course-banner,.ds-course-banner-overlay{pointer-events:none;z-index:-1;width:100%;height:100%;position:absolute;inset:0}.ds-course-banner{object-fit:cover;object-position:center}.ds-course-banner-overlay{background:#00000080}.ds-course-header-content{justify-content:space-between;align-items:center;gap:calc(32 * var(--ds-unit,1px));flex:1;min-width:0;display:flex}.ds-course-heading-copy{overflow-wrap:anywhere;flex:1;min-width:0;line-height:1.3}.ds-course-heading-copy h1{color:inherit;font-size:var(--ds-font-display);letter-spacing:calc(-1.3 * var(--ds-unit,1px));margin:0;font-weight:700;line-height:1.3}.ds-course-heading-summary{gap:0 calc(8 * var(--ds-unit,1px));font-size:var(--ds-font-small);letter-spacing:calc(-.4 * var(--ds-unit,1px));flex-wrap:wrap;display:flex}.ds-course-heading-copy p{color:inherit;font-size:var(--ds-font-small);letter-spacing:calc(-.4 * var(--ds-unit,1px));margin:0}.ds-course-header .ds-course-school-link{min-height:calc(44 * var(--ds-unit,1px));padding:calc(10 * var(--ds-unit,1px)) calc(16 * var(--ds-unit,1px));color:#fff;font-size:calc(14 * var(--ds-unit,1px));white-space:normal;text-align:center;background:#00000073;border-color:#ffffffb3;flex-shrink:0}.ds-course-header .ds-course-school-link:hover{background:#000000a6}.ds-course-header .ds-course-school-link:active{background:#000c}.ds-course-header .ds-course-school-link:focus-visible{outline-offset:4px;outline-color:#fff}.ds-course-tabs-wrap{margin-top:calc(36 * var(--ds-unit,1px));padding:0 calc(120 * var(--ds-unit,1px)) 0 calc(40 * var(--ds-unit,1px));min-width:0}.ds-course-tabs{min-width:0;height:calc(48 * var(--ds-unit,1px));align-items:stretch;gap:calc(16 * var(--ds-unit,1px));border-bottom:1px solid var(--ds-color-border-strong,#cfcecf);scrollbar-width:thin;overscroll-behavior-x:contain;margin:0;padding:0;display:flex;overflow-x:auto}.ds-course-tabs a{min-height:calc(47 * var(--ds-unit,1px));padding:0 calc(8 * var(--ds-unit,1px)) calc(14 * var(--ds-unit,1px));color:var(--ds-color-muted);font-size:var(--ds-font-h3);letter-spacing:calc(-.6 * var(--ds-unit,1px));white-space:nowrap;border-bottom:2px solid #0000;flex-shrink:0;justify-content:center;align-items:flex-start;font-weight:400;line-height:1.3;display:inline-flex}.ds-course-tabs a[aria-current=page]{color:var(--ds-color-ink);border-bottom-color:var(--ds-color-brand);font-weight:700}.ds-course-tabs a:active{background:var(--ds-color-selected)}.ds-course-tabs a:focus-visible{outline:3px solid var(--ds-color-focus);outline-offset:-3px}@media (width<=1100px){.ds-course-header{padding-right:calc(40 * var(--ds-unit,1px));padding-left:calc(40 * var(--ds-unit,1px))}.ds-course-tabs-wrap{padding-right:calc(40 * var(--ds-unit,1px))}}@media (width<=700px){.ds-course-header{padding:calc(28 * var(--ds-unit,1px)) calc(20 * var(--ds-unit,1px))}.ds-course-header-content{align-items:stretch;gap:calc(20 * var(--ds-unit,1px));flex-direction:column}.ds-course-heading-copy h1{font-size:var(--ds-font-h2);letter-spacing:calc(-.8 * var(--ds-unit,1px))}.ds-course-heading-summary,.ds-course-heading-copy p{font-size:calc(14 * var(--ds-unit,1px));letter-spacing:calc(-.2 * var(--ds-unit,1px));line-height:1.5}.ds-course-header .ds-course-school-link{align-self:flex-start;max-width:100%}.ds-course-tabs-wrap{padding:0 calc(20 * var(--ds-unit,1px))}.ds-course-tabs{gap:calc(8 * var(--ds-unit,1px))}.ds-course-tabs a{min-height:calc(48 * var(--ds-unit,1px));padding:calc(8 * var(--ds-unit,1px)) calc(8 * var(--ds-unit,1px)) calc(10 * var(--ds-unit,1px));font-size:calc(18 * var(--ds-unit,1px));letter-spacing:calc(-.45 * var(--ds-unit,1px));align-items:center}}.ds-course-home{grid-template-columns:minmax(0, 1fr) calc(850 * var(--ds-unit,1px));align-items:start;gap:calc(40 * var(--ds-unit,1px));color:var(--ds-color-ink);display:grid}.ds-course-home-tasks{min-width:0;min-height:calc(580 * var(--ds-unit,1px));padding:calc(16 * var(--ds-unit,1px)) calc(24 * var(--ds-unit,1px)) calc(24 * var(--ds-unit,1px));border:1px solid var(--ds-color-border);border-radius:calc(24 * var(--ds-unit,1px));background:var(--ds-color-surface)}.ds-course-home-task-heading{justify-content:space-between;align-items:center;gap:calc(16 * var(--ds-unit,1px));margin-bottom:calc(8 * var(--ds-unit,1px));display:flex}.ds-course-home-task-heading h2{font-size:var(--ds-font-h3);letter-spacing:var(--ds-letter-spacing);margin:0;font-weight:700;line-height:1.3}.ds-course-home-task-heading strong{font-size:var(--ds-font-h2);letter-spacing:var(--ds-letter-spacing);line-height:1.3}.ds-course-home-task-list,.ds-course-home-calendar-events ul{margin:0;padding:0;list-style:none}.ds-course-home-task-list{gap:calc(8 * var(--ds-unit,1px));display:grid}.ds-course-home-task-list a{align-items:flex-start;gap:calc(8 * var(--ds-unit,1px));min-height:calc(26 * var(--ds-unit,1px));padding:0;display:flex}.ds-course-home-task-list .icon{width:calc(24 * var(--ds-unit,1px));height:calc(24 * var(--ds-unit,1px));flex-shrink:0;margin-top:0}.ds-course-home-task-copy{align-items:baseline;gap:calc(4 * var(--ds-unit,1px)) calc(8 * var(--ds-unit,1px));flex-wrap:wrap;flex:1;min-width:0;display:flex}.ds-course-home-task-title{font-size:var(--ds-font-body);letter-spacing:calc(-.5 * var(--ds-unit,1px));overflow-wrap:anywhere;line-height:1.3}.ds-course-home-task-type,.ds-course-home-task-due,.ds-course-home-task-status{font-size:var(--ds-font-small);letter-spacing:calc(-.4 * var(--ds-unit,1px));color:var(--ds-color-muted);line-height:1.3}.ds-course-home-task-type{overflow-wrap:anywhere}.ds-course-home-task-status{width:100%;font-size:calc(14 * var(--ds-unit,1px))}.ds-course-home-task-due{max-width:calc(120 * var(--ds-unit,1px));text-align:right;flex-shrink:0}.ds-course-home-message{margin:calc(16 * var(--ds-unit,1px)) 0;color:var(--ds-color-muted);font-size:calc(16 * var(--ds-unit,1px));line-height:1.5}.ds-course-home-calendar{min-width:0;padding:calc(20 * var(--ds-unit,1px)) calc(24 * var(--ds-unit,1px));border:1px solid var(--ds-color-border);border-radius:calc(20 * var(--ds-unit,1px));background:var(--ds-color-surface);grid-template-columns:repeat(2,minmax(0,1fr));gap:0;display:grid}.ds-course-home-calendar-month,.ds-course-home-calendar-events{min-width:0;min-height:calc(336 * var(--ds-unit,1px))}.ds-course-home-month-heading{min-height:calc(26 * var(--ds-unit,1px));padding-left:calc(8 * var(--ds-unit,1px));justify-content:space-between;align-items:center;gap:calc(8 * var(--ds-unit,1px));display:flex;position:relative}.ds-course-home-month-heading h2,.ds-course-home-calendar-events h3{font-size:calc(20 * var(--ds-unit,1px));letter-spacing:calc(-.5 * var(--ds-unit,1px));margin:0;font-weight:700;line-height:1.3}.ds-course-home-month-controls{top:calc(-9 * var(--ds-unit,1px));display:flex;position:absolute;right:0}.ds-course-home-month-controls button{min-width:calc(44 * var(--ds-unit,1px));min-height:calc(44 * var(--ds-unit,1px));background:0 0;border:0;padding:0}.ds-course-home-previous{transform:rotate(180deg)}.ds-course-home-next{transform:none}.ds-course-home-weekdays,.ds-course-home-days{gap:calc(8 * var(--ds-unit,1px));padding:0 calc(8 * var(--ds-unit,1px));grid-template-columns:repeat(7,minmax(0,1fr));display:grid}.ds-course-home-weekdays{margin:calc(11 * var(--ds-unit,1px)) 0 calc(6 * var(--ds-unit,1px));font-size:calc(16 * var(--ds-unit,1px));text-align:center;line-height:1.3}.ds-course-home-days button,.ds-course-home-day-empty{min-height:calc(48 * var(--ds-unit,1px))}.ds-course-home-days button{min-width:calc(44 * var(--ds-unit,1px));padding:calc(8 * var(--ds-unit,1px)) 0;border-radius:calc(10 * var(--ds-unit,1px));color:var(--ds-color-ink);font-size:calc(20 * var(--ds-unit,1px));letter-spacing:calc(-.5 * var(--ds-unit,1px));background:0 0;border:0;flex-direction:column;justify-content:center;gap:0;font-weight:400;line-height:1.3;display:flex;position:relative}.ds-course-home-days button>img{bottom:calc(3 * var(--ds-unit,1px));width:calc(8 * var(--ds-unit,1px));height:calc(8 * var(--ds-unit,1px));position:absolute}.ds-course-home-days button[aria-pressed=true]{background:var(--ds-color-brand);color:#fff;border-radius:calc(12 * var(--ds-unit,1px));font-size:calc(24 * var(--ds-unit,1px));letter-spacing:calc(-.6 * var(--ds-unit,1px));font-weight:700}.ds-course-home-days button[aria-current=date]:not([aria-pressed=true]){box-shadow:inset 0 0 0 1px var(--ds-color-focus)}.ds-course-home-days button[aria-pressed=true]>img{display:none}.ds-course-home-calendar-events{padding-top:0}.ds-course-home-calendar-events ul{gap:calc(16 * var(--ds-unit,1px));margin-top:calc(16 * var(--ds-unit,1px));display:grid}.ds-course-home-event-title{min-height:calc(36 * var(--ds-unit,1px));padding:calc(8 * var(--ds-unit,1px)) calc(16 * var(--ds-unit,1px));border-radius:var(--ds-radius-pill);color:var(--ds-color-brand);font-size:calc(16 * var(--ds-unit,1px));letter-spacing:calc(-.4 * var(--ds-unit,1px));text-align:center;overflow-wrap:anywhere;background:#c7f1ff;line-height:1.3;display:block}.ds-course-home-event a.ds-course-home-event-title{min-height:calc(44 * var(--ds-unit,1px))}.ds-course-home-event p{margin:calc(8 * var(--ds-unit,1px)) 0;color:var(--ds-color-muted);font-size:calc(14 * var(--ds-unit,1px));line-height:1.5}.ds-course-home-event .source-link{min-height:calc(44 * var(--ds-unit,1px));white-space:normal;max-width:100%}.ds-course-home :is(button,a):focus-visible{outline-color:var(--ds-color-focus)}.ds-course-home :is(button,a):active{background-color:var(--ds-color-selected)}@media (width<=1100px){.ds-course-home{gap:calc(24 * var(--ds-unit,1px));grid-template-columns:minmax(0,1fr)}.ds-course-home-tasks{min-height:calc(280 * var(--ds-unit,1px))}.ds-course-home-task-list a{min-height:calc(44 * var(--ds-unit,1px));padding:calc(8 * var(--ds-unit,1px)) 0}.ds-course-home-calendar{grid-template-columns:calc(400 * var(--ds-unit,1px)) minmax(0, 1fr)}}@media (width<=850px){.ds-course-home-calendar{gap:calc(24 * var(--ds-unit,1px));grid-template-columns:minmax(0,1fr)}.ds-course-home-calendar-month,.ds-course-home-calendar-events{min-height:0}.ds-course-home-task-heading h2{font-size:var(--ds-font-h3)}.ds-course-home-task-heading strong{font-size:var(--ds-font-h2)}}@media (width<=480px){.ds-course-home-calendar,.ds-course-home-tasks{padding-right:calc(16 * var(--ds-unit,1px));padding-left:calc(16 * var(--ds-unit,1px))}.ds-course-home-task-list a{flex-wrap:wrap}.ds-course-home-task-due{max-width:none;padding-left:calc(32 * var(--ds-unit,1px));text-align:left;flex-basis:100%}.ds-course-home-task-title{font-size:calc(18 * var(--ds-unit,1px))}.ds-course-home-task-type{font-size:calc(14 * var(--ds-unit,1px))}.ds-course-home-days button{min-height:calc(44 * var(--ds-unit,1px));font-size:calc(18 * var(--ds-unit,1px))}.ds-course-home-calendar-month>[role=group]{scrollbar-width:thin;overflow-x:auto}.ds-course-home-days,.ds-course-home-weekdays{min-width:calc(308 * var(--ds-unit,1px));gap:0}.ds-course-home-days button{min-width:calc(44 * var(--ds-unit,1px))}.ds-course-home-days button[aria-pressed=true]{background:var(--ds-color-focus)}.ds-course-home-weekdays{font-size:calc(14 * var(--ds-unit,1px))}}.attendance-toolbar{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:16px;padding:20px 24px 12px;display:flex}.attendance-summary,.attendance-filters{flex-wrap:wrap;align-items:center;gap:16px;display:flex}.attendance-summary{color:#6b7684;font-size:13px}.attendance-summary strong{color:#191f28;font-size:15px}.attendance-filters{gap:8px}.attendance-filters select{max-width:280px;min-height:36px}.attendance-filters button{min-height:36px;font-size:13px}.attendance-note{color:#6b7684;margin:0;padding:0 24px 18px;font-size:12px}.attendance-table table{border-collapse:collapse}.attendance-table th{background:#f9fafb;font-size:12px;font-weight:500}.attendance-table td{vertical-align:middle;font-size:13px}.attendance-table td:first-child{min-width:230px}.attendance-table td:first-child strong{font-size:14px;font-weight:600;line-height:1.5}.attendance-table td:first-child small{color:#6b7684;margin-top:5px;font-size:12px}.attendance-table tbody tr:hover{background:#fafbfc}.attendance-table td>button{min-height:32px;padding:6px 10px;font-size:12px}@media (width<=600px){.attendance-toolbar{padding:16px}.attendance-note{padding:0 16px 16px}}.ds-shell .ds-course-workspace .ds-course-attendance-panel{width:100%;max-width:calc(1140 * var(--ds-unit,1px));min-width:0;min-height:calc(580 * var(--ds-unit,1px));padding:calc(16 * var(--ds-unit,1px)) calc(24 * var(--ds-unit,1px));border:1px solid var(--ds-color-border);border-radius:var(--ds-radius-card);background:var(--ds-color-surface);color:var(--ds-color-ink);box-shadow:none}.ds-course-attendance-panel .attendance-toolbar{gap:calc(16 * var(--ds-unit,1px));margin-bottom:calc(12 * var(--ds-unit,1px));padding:0}.ds-course-attendance-panel .attendance-summary{gap:calc(8 * var(--ds-unit,1px));color:var(--ds-color-ink);font-size:var(--ds-font-small);letter-spacing:calc(-.4 * var(--ds-unit,1px));line-height:1.3}.ds-course-attendance-panel .attendance-summary strong{color:inherit;font-size:inherit;font-variant-numeric:tabular-nums;font-weight:400}.ds-attendance-stat{align-items:center;gap:calc(8 * var(--ds-unit,1px));display:inline-flex}.ds-attendance-divider{flex:0 0 calc(1 * var(--ds-unit,1px));width:calc(1 * var(--ds-unit,1px));height:calc(12 * var(--ds-unit,1px));margin-inline:calc(2 * var(--ds-unit,1px));place-items:center;display:inline-grid}.ds-attendance-divider img{transform:rotate(90deg)}.ds-course-attendance-panel .attendance-filters{gap:calc(8 * var(--ds-unit,1px));margin-left:auto}.ds-course-attendance-panel .attendance-filters :is(button,select){min-height:calc(44 * var(--ds-unit,1px));max-width:100%;font-size:var(--ds-font-small)}.ds-course-attendance-panel .attendance-note{margin:0 0 calc(16 * var(--ds-unit,1px));color:var(--ds-color-muted);font-size:calc(14 * var(--ds-unit,1px));word-break:keep-all;overflow-wrap:break-word;padding:0;line-height:1.5}.ds-attendance-list{gap:calc(12 * var(--ds-unit,1px));margin:0;padding:0;list-style:none;display:grid}.ds-attendance-list>li{grid-template-columns:minmax(calc(180 * var(--ds-unit,1px)), .8fr) minmax(0, 1.2fr) auto;align-items:center;gap:calc(16 * var(--ds-unit,1px));min-width:0;min-height:calc(52 * var(--ds-unit,1px));padding-bottom:calc(8 * var(--ds-unit,1px));border-bottom:1px solid var(--ds-color-border);display:grid}.ds-attendance-date{align-items:center;gap:calc(8 * var(--ds-unit,1px));flex-wrap:wrap;min-width:0;display:flex}.ds-attendance-date strong{font-size:var(--ds-font-small);letter-spacing:var(--ds-letter-spacing);word-break:keep-all;overflow-wrap:break-word;font-weight:400;line-height:1.3}.ds-attendance-week{padding:calc(4 * var(--ds-unit,1px)) calc(12 * var(--ds-unit,1px)) calc(4 * var(--ds-unit,1px)) calc(16 * var(--ds-unit,1px));border-radius:var(--ds-radius-pill);background:var(--ds-color-border);color:var(--ds-color-surface);font-size:var(--ds-font-body);letter-spacing:calc(-.5 * var(--ds-unit,1px));white-space:nowrap;font-weight:700;line-height:1.3}.ds-attendance-title{gap:calc(4 * var(--ds-unit,1px));word-break:keep-all;overflow-wrap:break-word;min-width:0;display:grid}.ds-attendance-title p{color:var(--ds-color-meta);font-size:var(--ds-font-detail);letter-spacing:var(--ds-letter-spacing);margin:0;font-weight:400;line-height:1.3}.ds-attendance-title small{color:var(--ds-color-muted);font-size:var(--ds-font-detail);line-height:var(--ds-line-height);letter-spacing:var(--ds-letter-spacing)}.ds-attendance-result{align-items:center;gap:calc(8 * var(--ds-unit,1px));min-width:0;color:var(--ds-color-meta);font-size:var(--ds-font-detail);letter-spacing:var(--ds-letter-spacing);word-break:keep-all;overflow-wrap:break-word;flex-wrap:wrap;line-height:1.3;display:flex}.ds-attendance-status{align-items:center;gap:calc(8 * var(--ds-unit,1px));min-width:0;display:inline-flex}.ds-attendance-status img{flex-shrink:0}.ds-attendance-type{min-width:0}.ds-course-attendance-panel .ds-attendance-detail{min-width:calc(44 * var(--ds-unit,1px));min-height:calc(44 * var(--ds-unit,1px));padding:calc(8 * var(--ds-unit,1px));border-radius:var(--ds-radius-control);color:var(--ds-color-focus);font-size:var(--ds-font-detail);background:0 0;border:0;flex-shrink:0;font-weight:400}.ds-course-attendance-panel .ds-attendance-detail:is(:hover,:active){background:var(--ds-color-selected)}.ds-course-attendance-panel :is(button,select):focus-visible{outline:3px solid var(--ds-color-focus);outline-offset:2px}@media (width>=1101px){.ds-shell .ds-course-workspace .ds-course-attendance-panel{flex-direction:column;display:flex}.ds-course-attendance-panel .attendance-toolbar{min-height:calc(21 * var(--ds-unit,1px));margin-bottom:calc(16 * var(--ds-unit,1px));position:relative}.ds-course-attendance-panel .attendance-summary{padding-right:calc(300 * var(--ds-unit,1px))}.ds-course-attendance-panel .attendance-filters{top:calc(-10 * var(--ds-unit,1px));position:absolute;right:0}.ds-course-attendance-panel .attendance-note{margin:calc(16 * var(--ds-unit,1px)) 0 0;order:2}.ds-attendance-list>li{min-height:calc(39 * var(--ds-unit,1px));padding-bottom:calc(4 * var(--ds-unit,1px));justify-content:space-between;display:flex}.ds-attendance-date,.ds-attendance-result{flex-shrink:0}.ds-attendance-title{justify-content:center;align-items:baseline;gap:calc(4 * var(--ds-unit,1px)) calc(8 * var(--ds-unit,1px));flex-wrap:wrap;display:flex}.ds-course-attendance-panel .ds-attendance-detail{min-width:calc(34 * var(--ds-unit,1px));min-height:calc(34 * var(--ds-unit,1px));padding:calc(4 * var(--ds-unit,1px)) calc(8 * var(--ds-unit,1px))}}@media (width<=1100px){.ds-attendance-list>li{gap:calc(8 * var(--ds-unit,1px)) calc(16 * var(--ds-unit,1px));grid-template-columns:minmax(0,1fr) auto}.ds-attendance-title{grid-area:2/1/auto/-1}.ds-attendance-result{grid-area:1/2;justify-content:flex-end}}@media (width<=700px){.ds-shell .ds-course-workspace .ds-course-attendance-panel{min-height:0;padding:calc(16 * var(--ds-unit,1px))}.ds-course-attendance-panel .attendance-filters{width:100%;margin-left:0}.ds-course-attendance-panel .attendance-filters select{flex:1;min-width:0}.ds-attendance-list>li{align-items:stretch;gap:calc(12 * var(--ds-unit,1px));padding:calc(12 * var(--ds-unit,1px)) 0;flex-direction:column;display:flex}.ds-attendance-date strong,.ds-attendance-week{font-size:calc(18 * var(--ds-unit,1px));letter-spacing:calc(-.45 * var(--ds-unit,1px))}.ds-attendance-title p{line-height:1.5}.ds-attendance-result{justify-content:flex-start}.ds-course-attendance-panel .ds-attendance-detail{margin-left:auto}}.ds-attendance-status img,.ds-attendance-divider img{width:calc(12 * var(--ds-unit));height:calc(12 * var(--ds-unit))}.ds-attendance-divider img{height:var(--ds-unit)}.ds-global-attendance-page{min-width:0;color:var(--ds-color-ink);--primary:var(--ds-color-focus);--muted:var(--ds-color-muted);--line:var(--ds-color-border)}.ds-shell main:has(>.ds-global-attendance-page){max-width:none;padding:calc(40 * var(--ds-unit)) calc(120 * var(--ds-unit)) calc(80 * var(--ds-unit)) calc(40 * var(--ds-unit));background:var(--ds-color-surface);margin:0}.ds-global-attendance-page>.page-head{align-items:flex-start;gap:calc(24 * var(--ds-unit));margin-bottom:calc(24 * var(--ds-unit))}.ds-global-attendance-page>.page-head h1{color:var(--ds-color-ink);font-size:var(--ds-font-h2);line-height:var(--ds-line-height);letter-spacing:var(--ds-letter-spacing)}.ds-global-attendance-page>.page-head p,.ds-global-attendance-page>.helper{color:var(--ds-color-muted);font-size:calc(16 * var(--ds-unit));line-height:1.6}.ds-shell .ds-global-attendance-page .attendance-panel{min-width:0;padding:calc(24 * var(--ds-unit));border:1px solid var(--ds-color-border);border-radius:var(--ds-radius-card);background:var(--ds-color-surface);color:var(--ds-color-ink);box-shadow:none}.ds-global-attendance-page .attendance-toolbar{gap:calc(16 * var(--ds-unit)) calc(24 * var(--ds-unit));margin-bottom:calc(16 * var(--ds-unit));padding:0}.ds-global-attendance-page .attendance-summary{gap:calc(16 * var(--ds-unit));color:var(--ds-color-muted);font-size:calc(16 * var(--ds-unit));line-height:1.5}.ds-global-attendance-page .attendance-summary strong{color:var(--ds-color-ink);font-size:inherit;font-variant-numeric:tabular-nums}.ds-global-attendance-page .attendance-filters{gap:calc(8 * var(--ds-unit));min-width:0;max-width:100%}.ds-global-attendance-page :is(button,select){min-height:calc(44 * var(--ds-unit));max-width:100%;padding:calc(10 * var(--ds-unit)) calc(16 * var(--ds-unit));border-color:var(--ds-color-border);border-radius:var(--ds-radius-control);color:var(--ds-color-ink);font-size:calc(16 * var(--ds-unit));line-height:1.4}.ds-global-attendance-page button:hover:not(:disabled){background:var(--ds-color-selected)}.ds-global-attendance-page :is(button,select,a):focus-visible{outline:3px solid var(--ds-color-focus);outline-offset:2px}.ds-global-attendance-page .attendance-note{margin:0 0 calc(24 * var(--ds-unit));color:var(--ds-color-muted);font-size:calc(16 * var(--ds-unit));overflow-wrap:break-word;padding:0;line-height:1.6}.ds-global-attendance-page .attendance-table{overscroll-behavior-x:contain;min-width:0;max-width:100%;position:relative;overflow-x:auto}.ds-global-attendance-page .attendance-table table{min-width:calc(960 * var(--ds-unit))}.ds-global-attendance-page .attendance-table :is(th,td){padding:calc(16 * var(--ds-unit));border-color:var(--ds-color-border);font-size:calc(16 * var(--ds-unit));line-height:1.5}.ds-global-attendance-page .attendance-table th{background:var(--ds-color-canvas);color:var(--ds-color-muted)}.ds-global-attendance-page .attendance-table td{color:var(--ds-color-ink)}.ds-global-attendance-page .attendance-table td:first-child{min-width:calc(240 * var(--ds-unit));max-width:calc(360 * var(--ds-unit));white-space:normal}.ds-global-attendance-page .attendance-table td:first-child strong{color:var(--ds-color-ink);font-size:calc(16 * var(--ds-unit));overflow-wrap:anywhere;line-height:1.5}.ds-global-attendance-page .attendance-table td:first-child small{margin-top:calc(5 * var(--ds-unit));color:var(--ds-color-muted);font-size:calc(16 * var(--ds-unit));overflow-wrap:anywhere;line-height:1.5}.ds-global-attendance-page .attendance-table .badge{font-size:calc(16 * var(--ds-unit));line-height:1.4}.ds-global-attendance-page .attendance-table tbody tr:hover{background:var(--ds-color-selected)}.ds-global-attendance-page .attendance-table td>button{min-width:calc(44 * var(--ds-unit));min-height:calc(44 * var(--ds-unit));padding:calc(10 * var(--ds-unit)) calc(16 * var(--ds-unit));font-size:calc(16 * var(--ds-unit))}body:has(.ds-global-attendance-page) .modal:has(.detail-meta){border-radius:var(--ds-radius-card);color:var(--ds-color-ink);--primary:var(--ds-color-focus);--muted:var(--ds-color-muted);--line:var(--ds-color-border)}body:has(.ds-global-attendance-page) .modal:has(.detail-meta) :is(.helper,.detail-meta,.badge,.button){font-size:calc(16 * var(--ds-unit));line-height:1.5}body:has(.ds-global-attendance-page) .modal:has(.detail-meta) :is(button,.button){min-width:calc(44 * var(--ds-unit));min-height:calc(44 * var(--ds-unit));border-color:var(--ds-color-border)}body:has(.ds-global-attendance-page) .modal:has(.detail-meta) :is(button,a):focus-visible{outline-color:var(--ds-color-focus)}@media (width<=1100px){.ds-shell main:has(>.ds-global-attendance-page){padding-right:40px}}@media (width<=700px){.ds-shell main:has(>.ds-global-attendance-page){padding:24px 16px 48px}.ds-shell .ds-global-attendance-page .attendance-panel{padding:calc(16 * var(--ds-unit))}.ds-global-attendance-page .attendance-filters,.ds-global-attendance-page .attendance-filters>div{width:100%}.ds-global-attendance-page .attendance-filters select{width:100%;min-width:0;max-width:100%}}.school-progress{gap:6px;max-width:420px;margin:16px 0;display:grid}.activity-detail-heading{flex-wrap:wrap;justify-content:space-between;align-items:flex-start;gap:12px 20px;display:flex}.activity-detail-heading .detail-title{flex:320px;margin:0}.activity-detail-heading .personal-completion{flex:none;margin:0}.material-school-record{color:#6b7684;margin:8px 0 12px;font-size:12px}.school-progress-label{color:#4e5968;flex-wrap:wrap;align-items:baseline;gap:12px;font-size:14px;display:flex}.school-progress-label strong{color:#1b64da;font-variant-numeric:tabular-nums}.school-progress-label small{color:#6b7684;font-size:12px}.school-progress-track{background:#e5e8eb;border-radius:4px;height:3px;overflow:hidden}.school-progress-track>span{border-radius:inherit;background:#2272eb;height:100%;display:block}.school-progress.compact{flex:0 144px;width:144px;margin:0}.school-progress.compact .school-progress-label{gap:8px;font-size:14px}.activity-school-progress{border:1px solid #e5e8eb;border-radius:12px;gap:10px;margin:16px 0;padding:16px 20px;display:grid}.activity-school-progress>div:first-child{justify-content:space-between;align-items:baseline;gap:20px;display:flex}.activity-school-progress strong{font-variant-numeric:tabular-nums;font-size:14px}.activity-school-progress small{color:#6b7684}.pdf-reader{background:#f2f4f6;border:1px solid #e5e8eb;border-radius:6px;overflow:clip}.pdf-reader-toolbar{z-index:2;color:#4e5968;background:#fff;border-bottom:1px solid #e5e8eb;flex-wrap:wrap;justify-content:space-between;align-items:center;gap:8px 14px;padding:10px 12px;font-size:12px;display:flex;position:sticky;top:0}.pdf-page-controls,.pdf-zoom-controls{align-items:center;gap:6px;display:flex}.pdf-reader-toolbar button{border:0;border-radius:5px;min-width:30px;min-height:30px;padding:0 6px;font-size:14px}.pdf-reader-toolbar .pdf-fit-button{padding:0 8px;font-size:12px}.pdf-reader-toolbar .icon{width:15px;height:15px}.pdf-page-jump{font-variant-numeric:tabular-nums;align-items:center;gap:5px;display:flex}.pdf-page-jump input{color:#191f28;text-align:center;background:#fff;border:1px solid #e5e8eb;border-radius:4px;width:42px;min-height:28px;padding:3px 4px;font-size:12px}.pdf-page-jump>span{white-space:nowrap}.pdf-page-jump button{font-size:12px}.pdf-page-input-error{color:#d22030;background:#fff;padding:8px 14px;font-size:12px}.pdf-zoom-controls>span{font-variant-numeric:tabular-nums;color:#8b95a1;min-width:35px;font-size:11px}.pdf-reverse-icon{display:inline-flex;transform:rotate(180deg)}.pdf-download{color:#4e5968;white-space:nowrap;margin-left:auto;padding:4px}.pdf-download:hover{color:#1b64da}.pdf-reader-viewport{overscroll-behavior:contain;overflow-anchor:none;scrollbar-gutter:stable;height:max(360px,88dvh);padding:16px;position:relative;overflow:auto}.pdf-reader-viewport:focus-visible{outline-offset:-2px;outline:2px solid #2272eb}.syllabus-page .pdf-reader{max-width:832px;margin-inline:auto}.pdf-pages{overflow-anchor:none;min-width:100%;position:relative}.pdf-page-slot{background:#fff;position:absolute;left:50%;transform:translate(-50%);box-shadow:0 1px 4px #191f2814}.pdf-page-placeholder{color:#8b95a1;place-items:center;font-size:12px;display:grid;position:absolute;inset:0}.pdf-page-label{color:#8b95a1;font-variant-numeric:tabular-nums;font-size:10px;position:absolute;bottom:-17px;left:50%}.pdf-reader-notice{color:#6b7684;justify-content:center;align-items:center;min-height:100%;font-size:13px;display:flex}.pdf-paper{background:#fff;margin:0 auto;position:relative}.pdf-paper>canvas{display:block}.pdf-text-layer{--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light only;text-align:initial;letter-spacing:normal;word-spacing:normal;-webkit-text-size-adjust:none;-moz-text-size-adjust:none;text-size-adjust:none;forced-color-adjust:none;transform-origin:0 0;--min-font-size:1;--text-scale-factor:calc(var(--total-scale-factor) * var(--min-font-size));--min-font-size-inv:calc(1 / var(--min-font-size));line-height:1;position:absolute;inset:0;overflow:clip}.pdf-text-layer :is(span,br){color:#0000;white-space:pre;cursor:text;transform-origin:0 0;-webkit-user-select:text;user-select:text;position:absolute}.pdf-text-layer>:not(.markedContent),.pdf-text-layer .markedContent span:not(.markedContent){--font-height:0;--scale-x:1;--rotate:0deg;font-size:calc(var(--text-scale-factor) * var(--font-height));transform:rotate(var(--rotate)) scaleX(var(--scale-x)) scale(var(--min-font-size-inv))}.pdf-text-layer .markedContent{display:contents}.pdf-text-layer ::selection{background:#2272eb50}.reference-video{min-width:0;margin:18px 0 24px}.reference-video video{aspect-ratio:16/9;background:#191f28;border-radius:12px;width:100%;max-height:62vh;display:block}.reference-video-caption{color:#6b7684;margin:10px 2px 0;font-size:13px}.reference-video-notice{color:#4e5968;margin:0 2px 10px;font-size:13px;line-height:1.6}.reference-video-error{background:#f2f4f6;border-radius:8px;margin-top:12px;padding:14px 16px}.reference-video-error p{margin:0 0 10px}.reference-video-error .text-link{margin-left:16px}.reference-video-diagnostics{border:1px solid var(--ds-color-border,#eee);color:var(--ds-color-muted,#706b6e);border-radius:12px;margin:12px 2px 0;padding:0 12px;font-size:13px}.reference-video-diagnostics summary{cursor:pointer;align-content:center;min-height:44px}.reference-video-diagnostics dd{overflow-wrap:anywhere;margin:2px 0 10px}.reference-video-diagnostics pre{white-space:pre-wrap;overflow-wrap:anywhere;max-height:240px;overflow:auto}.learning-verification-summary{box-sizing:border-box;color:#6b7684;border:1px solid #e5e8eb;border-radius:10px;grid-template-rows:32px 28px;gap:6px;min-width:0;height:88px;margin:14px 0;padding:10px 12px;font-size:12px;line-height:14px;display:grid}.learning-verification-toolbar{justify-content:space-between;align-items:center;gap:12px;min-width:0;display:flex}.learning-verification-toolbar :is(button,.button){flex-shrink:0;height:30px;min-height:30px;padding:0 10px;font-size:12px}.learning-verification-time{font-variant-numeric:tabular-nums}.learning-verification-feedback{align-items:center;min-width:0;display:flex}.learning-verification-values{flex-wrap:wrap;align-items:center;column-gap:14px;display:flex}.learning-verification-values>span{white-space:nowrap}.learning-verification-values strong{color:#333d4b;font-variant-numeric:tabular-nums;margin-left:4px;font-weight:500}.learning-verification-label{color:#4e5968}.personal-completion{width:fit-content;max-width:100%;color:var(--muted);margin:8px 0;font-size:12px;position:relative}.personal-completion-line{flex-wrap:wrap;align-items:center;gap:6px 10px;display:flex}.personal-completion-trigger{color:#333d4b;border-color:var(--line);background:#f9fafb;border-radius:7px;align-items:center;gap:7px;min-height:34px;padding:6px 10px;font-size:12px;display:inline-flex}.personal-completion-trigger>.icon{width:14px;height:14px}.personal-completion-trigger>.icon:last-child{width:12px;transform:rotate(90deg)}.personal-completion-trigger[aria-disabled=true]{cursor:default}.personal-completion-line small,.personal-completion-help{font-size:12px}.personal-completion-options{z-index:20;color:#333d4b;border:1px solid var(--line);background:#fff;border-radius:9px;width:230px;max-width:calc(100vw - 48px);padding:6px;position:absolute;top:calc(100% + 6px);right:0;box-shadow:0 4px 16px #00000014}.personal-completion-options p{color:var(--muted);margin:6px 8px;font-size:11px}.personal-completion-options>button{text-align:left;background:0 0;border:0;border-radius:5px;justify-content:space-between;width:100%;min-height:34px;padding:7px 9px;font-size:13px;display:flex}.personal-completion-options>button>.icon{opacity:0;width:14px;height:14px}.personal-completion-options>button[aria-pressed=true]{color:#191f28;opacity:1;background:#f2f4f6}.personal-completion-options>button[aria-pressed=true]>.icon{opacity:1}.personal-completion-options>button:hover:not(:disabled){background:#f2f4f6}.personal-completion-options>small{color:var(--muted);margin:7px 8px 5px;font-size:11px;line-height:1.5;display:block}.personal-completion-error{color:var(--muted);flex-wrap:wrap;align-items:center;gap:8px;margin:8px 0;font-size:12px;display:flex}.personal-completion-error button{min-height:28px;font-size:12px}.activity-detail>.personal-completion{margin:8px 0 16px}@media (prefers-reduced-motion:reduce){.personal-completion-trigger,.personal-completion-options>button{transition:none;transform:none}}.assignments-page{min-width:0}.assignment-toolbar,.assignment-detail-head{justify-content:space-between;align-items:center;gap:24px;margin-bottom:20px;display:flex}.assignment-toolbar h2{margin:0 0 6px;font-size:21px}.assignment-toolbar p{color:var(--muted);margin:0;font-size:14px}.assignment-back{color:#191f28;font-weight:600}.assignment-list-heading,.assignment-list>a{grid-template-columns:minmax(0,1fr) 240px 160px 20px;align-items:center;gap:20px;padding:20px 24px;display:grid}.assignment-list-heading{color:#6b7684;background:#f9fafb;font-size:13px}.assignment-list>a{color:#191f28;border-top:1px solid #f2f4f6}.assignment-list>a:hover{background:#f9fafb}.assignment-list strong{font-size:15px;line-height:1.6}.assignment-list small{color:#6b7684;margin-top:4px;display:block}.assignment-list>a>span:not(.badge){color:#4e5968;font-size:13px}.assignment-list .badge{justify-self:start}.assignment-detail-head{align-items:flex-start}.assignment-detail-head>div{flex:1;min-width:0}.assignment-detail-head h2{margin:0 0 4px;font-size:25px;line-height:1.5}.assignment-layout{grid-template-columns:minmax(0,1fr) 300px;align-items:start;gap:24px;display:grid}.assignment-main{gap:20px;min-width:0;display:grid}.assignment-side{min-width:0}.assignment-body,.assignment-section{margin:0;padding:24px;font-size:15px;line-height:1.8}.assignment-section h3{margin:22px 0 12px;font-size:15px}.assignment-section p{margin:0}.assignment-status{flex-wrap:wrap;align-items:center;gap:8px;display:flex}.assignment-status>span:not(.badge){color:#6b7684;font-size:13px}.assignment-facts{gap:16px;margin:20px 0;font-size:14px;display:grid}.assignment-side .assignment-facts{padding:0 24px}.assignment-facts>div{grid-template-columns:76px minmax(0,1fr);gap:12px;display:grid}.assignment-facts dt,.assignment-results dt{color:#6b7684}.assignment-facts dd,.assignment-results dd{margin:0}.assignment-attachments,.assignment-feedback{margin:0;padding:0;list-style:none}.assignment-attachments li{background:#f9fafb;border-radius:8px;align-items:center;gap:12px;margin-bottom:10px;padding:14px 16px;display:flex}.assignment-attachments li>div{min-width:0}.assignment-attachments small{color:#6b7684;font-size:12px;display:block}.assignment-attachments strong{font-size:14px;font-weight:500}.assignment-capability-note{color:#6b7684;border-top:1px solid #f2f4f6;padding-top:18px;font-size:13px;margin-top:20px!important}.assignment-results{flex-wrap:wrap;gap:40px;margin:0 0 16px;display:flex}.assignment-results dd{color:#191f28;font-size:23px;font-weight:600}.assignment-feedback li+li{border-top:1px solid #f2f4f6;margin-top:16px;padding-top:16px}.assignment-feedback small,.assignment-timezone{color:#6b7684;font-size:12px}.assignment-notice{background:#f2f4f6;border-radius:12px;padding:20px 24px;line-height:1.7}.assignment-notice p{margin:6px 0 0}.assignment-list>a>*,.assignment-detail-head h2,.assignment-body,.assignment-facts dd,.assignment-attachments strong,.assignment-feedback p,.assignment-notice,.assignment-results dd{overflow-wrap:anywhere;white-space:normal;min-width:0;max-width:100%}.assignment-body,.assignment-feedback p,.assignment-notice p{white-space:pre-wrap}.assignment-filters{margin-bottom:16px}.assignment-filters .helper{margin-bottom:0}.assignment-editor-fields{border:0;gap:16px;min-width:0;margin:0;padding:0;display:grid}.assignment-editor-fields>label:not(.assignment-pledge){gap:8px;font-weight:500;display:grid}.assignment-editor-fields :is(input:not([type=checkbox]),select,textarea){border:1px solid var(--line);color:#191f28;width:100%;font:inherit;background:#fff;border-radius:6px;padding:10px 12px}.assignment-editor-fields textarea{resize:vertical}.assignment-pledge{white-space:pre-wrap;align-items:flex-start;gap:10px;display:flex}.assignment-pledge input{margin-top:7px}.assignment-editor-actions{flex-wrap:wrap;align-items:center;gap:10px;display:flex}.assignment-editor-actions p{flex-basis:100%}.assignment-editor [role=alert]{color:#d22030;margin-bottom:16px}.assignment-draft-files{overflow-wrap:anywhere;margin:0;padding-left:20px}.assignment-operation{margin-bottom:16px}.assignment-submit-review{overflow-wrap:anywhere;padding:24px;line-height:1.8}.assignment-submit-review h3{margin-top:0}.assignment-review-content{white-space:pre-wrap;background:#f9fafb;max-height:40vh;padding:16px;overflow:auto}.assignment-overview{border:1px solid var(--line);background:#fff;border-radius:12px;flex-wrap:wrap;justify-content:space-between;align-items:center;gap:20px;margin-bottom:24px;padding:20px 24px;display:flex}.assignment-overview-status{align-items:center;gap:12px;min-width:0;display:flex}.assignment-overview-status>.icon{color:var(--primary);flex-shrink:0}.assignment-overview-status>div{gap:4px;min-width:0;display:grid}.assignment-overview-status strong{color:#191f28;font-size:15px}.assignment-overview-status span{color:var(--muted);overflow-wrap:anywhere;font-size:13px}.assignment-quick-actions{flex-wrap:wrap;align-items:center;gap:8px;display:flex}.assignment-anchor{min-width:0;scroll-margin-top:24px}.assignment-anchor:focus-visible{outline:2px solid var(--primary);outline-offset:4px;border-radius:12px}.assignment-history-note,.assignment-empty-submission{color:var(--muted);font-size:13px;margin-top:16px!important}.assignment-submission-history{border-top:1px solid var(--line);margin-top:24px;padding-top:20px}.assignment-submission-history>button,.assignment-history-toolbar>button,.assignment-history-error>button{min-height:36px;padding:7px 12px;font-size:13px}.assignment-history-toolbar{flex-wrap:wrap;align-items:flex-end;gap:12px;margin-top:16px;display:flex}.assignment-history-choice{gap:8px;min-width:0;max-width:100%;display:grid}.assignment-history-choice label{color:var(--muted);font-size:13px}.assignment-history-choice select{max-width:100%;min-height:36px;font-size:13px}.assignment-history-content>.muted,.assignment-history-error>p,.assignment-history-attempt>.muted{font-size:13px;line-height:1.7}.assignment-editor-start{justify-items:start;gap:12px;display:grid}.assignment-editor-start>p{margin:0}.assignment-editor-start>small{color:var(--muted);font-size:13px}.assignment-draft-files{gap:8px;padding:0;list-style:none;display:grid}.assignment-draft-files>li{background:#f9fafb;border-radius:8px;justify-content:space-between;align-items:center;gap:12px;padding:10px 12px;display:flex}.assignment-draft-files>li>span{min-width:0}.assignment-draft-files strong{font-size:14px;font-weight:500;display:block}.assignment-draft-files small{color:var(--muted);font-size:12px;line-height:1.6;display:block}.assignment-draft-files .assignment-file-error{color:#d22030}.assignment-draft-files button{flex-shrink:0;min-height:32px;padding:4px 10px;font-size:13px}.assignment-editor [role=alert]:focus-visible{outline-offset:4px;border-radius:4px;outline:2px solid #d22030}.assignment-document{border:1px solid var(--line);background:#fff;border-radius:10px;min-width:0;max-width:1024px;padding:32px 40px 20px}.assignment-document-heading{justify-content:space-between;align-items:flex-start;gap:20px;display:flex}.assignment-document-title{min-width:0}.assignment-document-title h2{letter-spacing:-.025em;overflow-wrap:anywhere;margin:0 0 12px;font-size:26px;font-weight:700;line-height:1.4}.assignment-document-title>p{color:#6b7684;margin:0;font-size:14px}.assignment-document-meta{color:var(--muted);flex-wrap:wrap;align-items:center;gap:8px 12px;font-size:13px;display:flex}.assignment-document-actions{flex-wrap:wrap;flex-shrink:0;justify-content:flex-end;align-items:center;gap:8px;display:flex}.assignment-document-actions button{min-height:36px;padding:7px 12px;font-size:13px}.assignment-document-heading .source-link{flex-shrink:0;min-height:36px;font-size:13px}.assignment-document-navigation{flex-wrap:wrap;gap:8px;margin:24px 0 12px;display:flex}.assignment-document-navigation button{min-height:36px;padding:7px 12px;font-size:13px}.assignment-document-section{border-bottom:1px solid var(--line);min-width:0;padding:28px 0}.assignment-document-section h3,.assignment-composer>h3{letter-spacing:-.01em;margin:0 0 16px;font-size:18px;line-height:1.5}.assignment-document-section h4{margin:24px 0 12px;font-size:14px;font-weight:600}.assignment-document .assignment-body,.assignment-composer>.assignment-section{padding:0}.assignment-document .assignment-body{color:#333d4b;max-width:76ch;line-height:1.85}.assignment-document-facts{border-top:1px solid #f2f4f6;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px 24px;margin:24px 0 0;padding:20px 0 0;font-size:13px;line-height:1.65;display:grid}.assignment-document-facts>div{grid-template-columns:78px minmax(0,1fr);gap:12px;display:grid}.assignment-document-facts dt{color:#6b7684}.assignment-document-facts dd{overflow-wrap:anywhere;margin:0}.assignment-section-heading{flex-wrap:wrap;align-items:baseline;gap:8px 20px;display:flex}.assignment-section-heading>span{color:#6b7684;font-size:12px}.assignment-document .assignment-attachments li{background:#f9fafb;border-radius:6px;padding:12px}.assignment-document .assignment-timezone{margin:16px 0 0}.assignment-evaluation{padding:20px 0}.assignment-evaluation h3{margin-bottom:10px;font-size:14px}.assignment-evaluation>.muted,.assignment-feedback-note{margin:6px 0 0;font-size:13px;line-height:1.7}.assignment-document-facts.assignment-top-facts{border-bottom:1px solid var(--line);gap:10px 24px;margin-top:24px;padding:20px 0}.assignment-read-only-note{margin-bottom:0}.assignment-composer .assignment-editor-fields{gap:18px;max-width:720px}.assignment-editor-fields input[type=file][hidden]{display:none}.assignment-file-picker{border:1px solid var(--line);border-radius:8px;min-width:0;padding:16px}.assignment-file-picker-heading{justify-content:space-between;align-items:center;gap:12px;display:flex}.assignment-file-picker-heading>strong{font-size:14px;font-weight:600}.assignment-file-picker-heading button{align-items:center;gap:6px;min-height:36px;padding:7px 12px;font-size:13px;display:inline-flex}.assignment-file-picker-heading .icon{width:16px;height:16px}.assignment-file-picker-help,.assignment-file-selection-note,.assignment-draft-note{color:var(--muted);font-size:13px;line-height:1.7}.assignment-file-picker-help{margin-top:10px!important}.assignment-file-selection-note{margin:6px 0 12px!important}.assignment-file-issues{overflow-wrap:anywhere;margin:0;padding:12px 0 0;font-size:13px;line-height:1.7;list-style:none}.assignment-file-issues strong{font-weight:500}.assignment-single-mode{color:var(--muted);flex-wrap:wrap;gap:12px;font-size:13px;display:flex}.assignment-single-mode strong{color:#191f28;font-weight:500}.assignment-editor-fields textarea{min-height:240px;line-height:1.7}@media (width<=1100px){.assignment-document{padding:24px}.assignment-document-heading{flex-wrap:wrap}.assignment-document-facts{grid-template-columns:minmax(0,1fr)}}@media (width<=600px){.assignment-document{padding:20px 16px}.assignment-document-title h2{font-size:22px}.assignment-list-heading{display:none}.assignment-list>a{grid-template-columns:minmax(0,1fr) auto;gap:8px;padding:16px}.assignment-list>a>:first-child{grid-column:1/-1}.assignment-list>a>.icon{display:none}}.assignment-refresh-note{color:#6b7684;margin:0 0 12px;font-size:12px}.ds-assignments-page{min-width:0;color:var(--ds-color-ink);--primary:var(--ds-color-focus);--muted:var(--ds-color-muted);--line:var(--ds-color-border)}.ds-assignments-page .assignment-toolbar{align-items:flex-start;gap:calc(16 * var(--ds-unit)) calc(24 * var(--ds-unit));margin-bottom:calc(24 * var(--ds-unit));flex-wrap:wrap}.ds-assignments-page .assignment-toolbar>div{min-width:0}.ds-assignments-page .assignment-toolbar h2{margin-bottom:calc(6 * var(--ds-unit));font-size:var(--ds-font-h2);font-weight:700;line-height:var(--ds-line-height);letter-spacing:var(--ds-letter-spacing);color:var(--ds-color-ink)}.ds-assignments-page .assignment-toolbar p,.ds-assignments-page .assignment-refresh-note,.ds-assignments-page .helper{color:var(--ds-color-muted);font-size:calc(16 * var(--ds-unit));line-height:1.6}.ds-assignments-page .assignment-back{min-height:calc(44 * var(--ds-unit));color:var(--ds-color-focus);font-size:calc(16 * var(--ds-unit));align-items:center;display:inline-flex}.ds-assignments-page .assignment-filters{margin-bottom:calc(24 * var(--ds-unit))}.ds-assignments-page .segmented{gap:calc(8 * var(--ds-unit));background:0 0;flex-wrap:wrap;padding:0}.ds-assignments-page .segmented button{border:1px solid var(--ds-color-border)}.ds-assignments-page .segmented button[aria-pressed=true]{border-color:var(--ds-color-focus);background:var(--ds-color-selected);color:var(--ds-color-focus);box-shadow:none}.ds-assignments-page .panel,.ds-assignments-page .assignment-document{border-color:var(--ds-color-border);border-radius:var(--ds-radius-card);background:var(--ds-color-surface);min-width:0}.ds-assignments-page .panel{padding:calc(20 * var(--ds-unit))}.ds-assignments-page .assignment-document{width:100%;max-width:none;padding:calc(32 * var(--ds-unit))}.ds-assignments-page .assignment-document-heading{gap:calc(24 * var(--ds-unit))}.ds-assignments-page .assignment-document-title h2{margin-bottom:calc(12 * var(--ds-unit));font-size:calc(32 * var(--ds-unit));letter-spacing:calc(-.8 * var(--ds-unit));color:var(--ds-color-ink);line-height:1.3}.ds-assignments-page .assignment-document-meta{gap:calc(8 * var(--ds-unit)) calc(12 * var(--ds-unit));color:var(--ds-color-muted);font-size:calc(16 * var(--ds-unit));line-height:1.5}.ds-assignments-page .badge.blue{color:var(--ds-color-focus);background:var(--ds-color-selected)}.ds-assignments-page .assignment-document-actions{gap:calc(8 * var(--ds-unit));min-width:0;max-width:100%}.ds-assignments-page .assignment-document-navigation{gap:calc(8 * var(--ds-unit));margin:calc(24 * var(--ds-unit)) 0 calc(12 * var(--ds-unit))}.ds-assignments-page .assignment-document-section{padding:calc(28 * var(--ds-unit)) 0;border-color:var(--ds-color-border)}.ds-assignments-page .assignment-document-section h3,.ds-assignments-page .assignment-composer>h3{margin-bottom:calc(16 * var(--ds-unit));font-size:calc(20 * var(--ds-unit));letter-spacing:calc(-.5 * var(--ds-unit));color:var(--ds-color-ink);line-height:1.3}.ds-assignments-page .assignment-document-section h4{margin:calc(24 * var(--ds-unit)) 0 calc(12 * var(--ds-unit));font-size:calc(16 * var(--ds-unit));color:var(--ds-color-ink);line-height:1.5}.ds-assignments-page .assignment-body{color:var(--ds-color-ink);font-size:calc(16 * var(--ds-unit));line-height:1.8}.ds-assignments-page .assignment-document-facts{margin-top:calc(24 * var(--ds-unit));padding-top:calc(20 * var(--ds-unit));gap:calc(16 * var(--ds-unit)) calc(32 * var(--ds-unit));border-color:var(--ds-color-border);font-size:calc(16 * var(--ds-unit))}.ds-assignments-page .assignment-document-facts.assignment-top-facts{padding:calc(20 * var(--ds-unit)) 0;gap:calc(10 * var(--ds-unit)) calc(24 * var(--ds-unit))}.ds-assignments-page .assignment-results{gap:calc(40 * var(--ds-unit));margin-bottom:calc(16 * var(--ds-unit))}.ds-assignments-page .assignment-document-facts>div{grid-template-columns:calc(100 * var(--ds-unit)) minmax(0, 1fr);gap:calc(16 * var(--ds-unit))}.ds-assignments-page .assignment-document-facts dt,.ds-assignments-page .assignment-results dt,.ds-assignments-page .assignment-feedback-note,.ds-assignments-page .assignment-timezone,.ds-assignments-page .assignment-history-note,.ds-assignments-page .assignment-empty-submission{color:var(--ds-color-muted)}.ds-assignments-page .assignment-results dd{color:var(--ds-color-ink);font-size:calc(28 * var(--ds-unit));line-height:1.3}.ds-assignments-page .assignment-list-heading,.ds-assignments-page .assignment-list>a{grid-template-columns:minmax(0, 1fr) calc(240 * var(--ds-unit)) calc(180 * var(--ds-unit)) calc(24 * var(--ds-unit));gap:calc(24 * var(--ds-unit));padding:calc(24 * var(--ds-unit)) calc(32 * var(--ds-unit))}.ds-assignments-page .assignment-list-heading{background:var(--ds-color-canvas);color:var(--ds-color-muted);font-size:calc(16 * var(--ds-unit))}.ds-assignments-page .assignment-list>a{min-height:calc(88 * var(--ds-unit));border-color:var(--ds-color-border);color:var(--ds-color-ink)}.ds-assignments-page .assignment-list>a:hover{background:var(--ds-color-selected)}.ds-assignments-page .assignment-list strong{font-size:calc(20 * var(--ds-unit));font-weight:400;line-height:var(--ds-line-height);letter-spacing:calc(-.5 * var(--ds-unit))}.ds-assignments-page .assignment-list small{margin-top:calc(4 * var(--ds-unit));font-size:calc(12 * var(--ds-unit))}.ds-assignments-page .assignment-list>a>span:not(.badge){font-size:calc(16 * var(--ds-unit));line-height:var(--ds-line-height);letter-spacing:calc(-.4 * var(--ds-unit));color:var(--ds-color-muted)}.ds-assignments-page :is(button,.button){min-height:calc(44 * var(--ds-unit));max-width:100%;padding:calc(10 * var(--ds-unit)) calc(16 * var(--ds-unit));border-color:var(--ds-color-border);border-radius:var(--ds-radius-control);color:var(--ds-color-ink);font-size:calc(16 * var(--ds-unit));white-space:normal;line-height:1.4}.ds-assignments-page :is(button.primary,.button.primary){background:var(--ds-color-focus);border-color:var(--ds-color-focus);color:var(--ds-color-surface)}.ds-assignments-page :is(button,.button):hover:not(:disabled){background:var(--ds-color-selected);color:var(--ds-color-ink)}.ds-assignments-page :is(button.primary,.button.primary):hover:not(:disabled){color:var(--ds-color-focus);border-color:var(--ds-color-focus)}.ds-assignments-page :is(button,a,input,select,textarea):focus-visible{outline-color:var(--ds-color-focus)}.ds-assignments-page .assignment-editor-fields :is(input:not([type=checkbox]),select,textarea),.ds-assignments-page .assignment-history-choice select{min-width:0;min-height:calc(44 * var(--ds-unit));border-color:var(--ds-color-border);border-radius:var(--ds-radius-control);max-width:100%;color:var(--ds-color-ink);font-size:calc(16 * var(--ds-unit))}.ds-assignments-page .assignment-composer .assignment-editor-fields{max-width:calc(720 * var(--ds-unit));gap:calc(18 * var(--ds-unit))}.ds-assignments-page .assignment-editor-fields>label:not(.assignment-pledge){gap:calc(8 * var(--ds-unit))}.ds-assignments-page .assignment-editor-fields :is(input:not([type=checkbox]),select,textarea){padding:calc(10 * var(--ds-unit)) calc(12 * var(--ds-unit))}.ds-assignments-page .assignment-editor-fields textarea{min-height:calc(240 * var(--ds-unit))}.ds-assignments-page .assignment-pledge{gap:calc(10 * var(--ds-unit));min-height:calc(44 * var(--ds-unit));padding:calc(8 * var(--ds-unit)) 0;line-height:1.6}.ds-assignments-page .assignment-pledge input{width:calc(20 * var(--ds-unit));height:calc(20 * var(--ds-unit));margin-top:calc(3 * var(--ds-unit));accent-color:var(--ds-color-focus);flex-shrink:0}.ds-assignments-page .assignment-file-picker,.ds-assignments-page .assignment-notice{border-color:var(--ds-color-border);border-radius:calc(16 * var(--ds-unit))}.ds-assignments-page .assignment-file-picker{padding:calc(16 * var(--ds-unit))}.ds-assignments-page .assignment-notice{padding:calc(20 * var(--ds-unit)) calc(24 * var(--ds-unit))}.ds-assignments-page .assignment-file-picker-heading,.ds-assignments-page .assignment-file-row,.ds-assignments-page .assignment-draft-files>li,.ds-assignments-page .assignment-attachments li{gap:calc(12 * var(--ds-unit))}.ds-assignments-page .assignment-attachments li{margin-bottom:calc(10 * var(--ds-unit))}.ds-assignments-page .assignment-file-picker-heading>strong,.ds-assignments-page .assignment-draft-files strong,.ds-assignments-page .assignment-attachments strong,.ds-assignments-page .assignment-file-name{font-size:calc(14 * var(--ds-unit))}.ds-assignments-page .assignment-draft-files small,.ds-assignments-page .assignment-attachments small,.ds-assignments-page .assignment-file-name small{font-size:calc(12 * var(--ds-unit))}.ds-assignments-page .assignment-draft-files,.ds-assignments-page .assignment-file-actions{gap:calc(8 * var(--ds-unit))}.ds-assignments-page .assignment-document .assignment-attachments li,.ds-assignments-page .assignment-draft-files>li{padding:calc(16 * var(--ds-unit));border-radius:calc(12 * var(--ds-unit));background:var(--ds-color-canvas)}.ds-assignments-page .assignment-draft-files>li>span,.ds-assignments-page .assignment-attachments li>div{overflow-wrap:anywhere}.modal:has(.assignment-submit-review){border-radius:var(--ds-radius-card);color:var(--ds-color-ink);--primary:var(--ds-color-focus)}.modal:has(.assignment-submit-review) button{min-width:calc(44 * var(--ds-unit));min-height:calc(44 * var(--ds-unit));border-color:var(--ds-color-border);font-size:calc(16 * var(--ds-unit));white-space:normal}.modal:has(.assignment-submit-review) button.primary{color:var(--ds-color-surface);border-color:var(--ds-color-focus);background:var(--ds-color-focus)}.modal:has(.assignment-submit-review) button:focus-visible{outline-color:var(--ds-color-focus)}.modal:has(.assignment-submit-review) .assignment-submit-review{padding:calc(16 * var(--ds-unit)) 0 0;font-size:calc(16 * var(--ds-unit));line-height:1.6}@media (width<=1100px){.ds-assignments-page .assignment-document-heading{flex-wrap:wrap}.ds-assignments-page .assignment-document-actions{justify-content:flex-start}.ds-assignments-page .assignment-document-facts{grid-template-columns:minmax(0,1fr)}}@media (width<=850px){.ds-assignments-page .assignment-list-heading{display:none}.ds-assignments-page .assignment-list>a{gap:calc(8 * var(--ds-unit)) calc(16 * var(--ds-unit));padding:calc(20 * var(--ds-unit)) calc(24 * var(--ds-unit));grid-template-columns:minmax(0,1fr) auto}.ds-assignments-page .assignment-list>a>:first-child{grid-column:1/-1}.ds-assignments-page .assignment-list>a>.icon{display:none}}@media (width<=700px){.ds-assignments-page .assignment-document{padding:calc(24 * var(--ds-unit))}.ds-assignments-page .assignment-document-title h2{font-size:calc(28 * var(--ds-unit));letter-spacing:calc(-.7 * var(--ds-unit))}.ds-assignments-page .assignment-document-facts>div{gap:calc(4 * var(--ds-unit));grid-template-columns:minmax(0,1fr)}.ds-assignments-page .assignment-draft-files>li,.ds-assignments-page .assignment-attachments li,.ds-assignments-page .assignment-file-picker-heading{flex-wrap:wrap}.ds-assignments-page .assignment-file-picker-heading>strong,.ds-assignments-page .assignment-draft-files>li>span,.ds-assignments-page .assignment-attachments li>div{flex-basis:100%}}.assignment-files{margin:16px 0 0;padding:0;list-style:none}.assignment-file{border-top:1px solid var(--line,#e5e8eb);padding:14px 0}.assignment-file-row{align-items:center;gap:12px;display:flex}.assignment-file-row>.icon{color:var(--muted,#6b7684);flex-shrink:0}.assignment-file-name{overflow-wrap:anywhere;flex:1;min-width:0;font-size:14px}.assignment-file-name small{color:var(--muted,#6b7684);margin-top:2px;font-size:12px;display:block}.assignment-file-actions{flex-shrink:0;gap:8px;display:flex}.assignment-file-actions button,.assignment-file-actions a{padding:8px 12px;font-size:13px}.assignment-file-unavailable{color:var(--muted,#6b7684);font-size:12px}.assignment-file-error{color:var(--danger,#d22030);font-size:13px}.assignment-file-preview{margin-top:16px}.assignment-submitted-content{margin-top:16px;line-height:1.8}.assignment-submitted-content p{white-space:pre-wrap;overflow-wrap:anywhere}.assignment-submitted-content a{color:var(--blue,#2272eb);overflow-wrap:anywhere}.task-row>a.task-open{color:inherit;align-items:center;gap:10px;text-decoration:none;display:flex}.task-row>a.task-open:hover strong{color:var(--primary)}.task-state-action{flex-shrink:0;min-height:32px;padding:6px 8px;font-size:12px}.task-learning-state{margin-top:12px}.task-learning-notice{color:var(--muted);margin-top:12px;font-size:12px;line-height:1.5}.task-learning-notice p{margin:0}.ds-tasks-page{color:var(--ds-color-ink);min-width:0}.ds-shell main:has(>.ds-tasks-page){max-width:none;padding:calc(40 * var(--ds-unit)) calc(120 * var(--ds-unit)) calc(80 * var(--ds-unit)) calc(40 * var(--ds-unit));background:var(--ds-color-surface);margin:0}.ds-tasks-page>.page-head h1{color:var(--ds-color-ink);font-size:calc(32 * var(--ds-unit));letter-spacing:calc(-.8 * var(--ds-unit));line-height:1.3}.ds-tasks-page>.page-head p,.ds-tasks-page :is(.helper,.muted,.task-learning-notice){color:var(--ds-color-muted);font-size:calc(16 * var(--ds-unit));word-break:keep-all;overflow-wrap:break-word;line-height:1.5}.ds-tasks-page .toolbar{gap:calc(12 * var(--ds-unit));margin-bottom:calc(24 * var(--ds-unit))}.ds-tasks-page .segmented{gap:calc(8 * var(--ds-unit));background:0 0;flex-wrap:wrap;padding:0;display:flex}.ds-tasks-page .segmented button{min-height:calc(44 * var(--ds-unit));padding:calc(8 * var(--ds-unit)) calc(16 * var(--ds-unit));border:1px solid var(--ds-color-border);border-radius:var(--ds-radius-pill);background:var(--ds-color-surface);color:var(--ds-color-muted);font-size:calc(16 * var(--ds-unit))}.ds-tasks-page .segmented button[aria-pressed=true]{border-color:var(--ds-color-focus);color:var(--ds-color-focus);background:var(--ds-color-selected);box-shadow:none}.ds-tasks-page .todo-layout{grid-template-columns:minmax(0, calc(872 * var(--ds-unit))) minmax(0, 1fr);gap:calc(40 * var(--ds-unit));min-width:0}.ds-shell .ds-tasks-page .panel{min-width:0;padding:calc(16 * var(--ds-unit)) calc(24 * var(--ds-unit)) calc(24 * var(--ds-unit));border:1px solid var(--ds-color-border);border-radius:var(--ds-radius-card);background:var(--ds-color-surface);box-shadow:none}.ds-tasks-page .todo-layout>.panel:first-child{min-height:calc(416 * var(--ds-unit))}.ds-tasks-page .panel-head{gap:calc(14 * var(--ds-unit));margin-bottom:calc(8 * var(--ds-unit));align-items:flex-start;padding:0}.ds-tasks-page .panel-head h2,.ds-tasks-page .task-detail h2{color:var(--ds-color-ink);font-size:var(--ds-font-h3);letter-spacing:calc(-.6 * var(--ds-unit));word-break:keep-all;overflow-wrap:break-word;line-height:1.3}.ds-task-heading-count{justify-items:end;gap:calc(4 * var(--ds-unit));color:var(--ds-color-muted);display:grid}.ds-task-heading-count strong{color:var(--ds-color-ink);font-size:var(--ds-font-h2);letter-spacing:calc(-.8 * var(--ds-unit));font-variant-numeric:tabular-nums;font-weight:700;line-height:1.3}.ds-task-heading-count small{font-size:calc(14 * var(--ds-unit))}.ds-tasks-page .task-row{gap:calc(8 * var(--ds-unit));min-width:0;min-height:calc(52 * var(--ds-unit));padding:calc(4 * var(--ds-unit)) 0;border-bottom-color:var(--ds-color-border)}.ds-task-checkbox{flex:0 0 calc(44 * var(--ds-unit));width:calc(44 * var(--ds-unit));height:calc(44 * var(--ds-unit));border-radius:var(--ds-radius-control);justify-content:center;align-items:center;display:inline-flex}.ds-tasks-page .ds-task-checkbox input{width:calc(24 * var(--ds-unit));height:calc(24 * var(--ds-unit));min-height:calc(24 * var(--ds-unit));accent-color:var(--ds-color-focus);margin:0}.ds-task-checkbox:active{background:var(--ds-color-selected)}.ds-tasks-page .task-row .type-icon{flex:0 0 calc(44 * var(--ds-unit));width:calc(44 * var(--ds-unit));height:calc(44 * var(--ds-unit));color:var(--ds-color-ink);background:0 0}.ds-tasks-page .task-row .type-icon .icon{width:calc(24 * var(--ds-unit));height:calc(24 * var(--ds-unit))}.ds-tasks-page .task-open{min-width:0;min-height:calc(44 * var(--ds-unit));gap:calc(8 * var(--ds-unit));padding:calc(8 * var(--ds-unit)) 0;color:var(--ds-color-ink)}.ds-tasks-page .task-open strong{font-size:calc(20 * var(--ds-unit));letter-spacing:calc(-.5 * var(--ds-unit));word-break:keep-all;overflow-wrap:break-word;font-weight:400;line-height:1.3}.ds-tasks-page .task-open small{margin-top:calc(4 * var(--ds-unit));color:var(--ds-color-muted);font-size:calc(16 * var(--ds-unit));line-height:var(--ds-line-height);letter-spacing:calc(-.4 * var(--ds-unit));word-break:keep-all;overflow-wrap:break-word}.ds-tasks-page .task-row:is(.selected,.done) .task-open strong,.ds-tasks-page .task-row>a.task-open:hover strong{color:var(--ds-color-focus)}.ds-tasks-page .task-row.done .task-open strong{color:var(--ds-color-muted)}.ds-tasks-page .task-open .badge{font-size:calc(14 * var(--ds-unit));flex-shrink:0;line-height:1.4}.ds-tasks-page .task-state-action{min-width:calc(44 * var(--ds-unit));min-height:calc(44 * var(--ds-unit));color:var(--ds-color-focus);font-size:calc(16 * var(--ds-unit));padding:calc(6 * var(--ds-unit)) calc(8 * var(--ds-unit));flex-shrink:0}.ds-tasks-page .todo-add{gap:calc(8 * var(--ds-unit));padding-top:calc(24 * var(--ds-unit))}.ds-tasks-page .todo-add input{min-width:0}.ds-tasks-page :is(button,.button,select,input:not([type=checkbox])){min-height:calc(44 * var(--ds-unit));font-size:calc(16 * var(--ds-unit))}.ds-tasks-page .primary{border-color:var(--ds-color-focus);background:var(--ds-color-focus);color:var(--ds-color-surface)}.ds-tasks-page :is(button,a,input,select):focus-visible{outline:3px solid var(--ds-color-focus);outline-offset:2px}.ds-tasks-page :is(.task-open,.task-state-action):active{background:var(--ds-color-selected)}.ds-tasks-page .task-detail,.ds-tasks-page .task-detail>*{overflow-wrap:break-word;min-width:0}.ds-tasks-page .task-detail{top:calc(20 * var(--ds-unit));position:sticky}.ds-tasks-page .task-detail>p{margin-top:calc(7 * var(--ds-unit));font-size:calc(16 * var(--ds-unit))}.ds-tasks-page :is(.task-learning-state,.task-learning-notice){margin-top:calc(12 * var(--ds-unit))}.ds-tasks-page .task-detail .detail-meta{color:var(--ds-color-muted);font-size:calc(16 * var(--ds-unit));gap:calc(8 * var(--ds-unit)) calc(16 * var(--ds-unit));padding:calc(14 * var(--ds-unit)) 0;flex-wrap:wrap}.modal:has(.ds-task-edit-form){border-radius:var(--ds-radius-card);color:var(--ds-color-ink)}.modal:has(.ds-task-edit-form) :is(button,input:not([type=checkbox])){min-height:calc(44 * var(--ds-unit));max-width:100%;font-size:calc(16 * var(--ds-unit))}.modal:has(.ds-task-edit-form) input:not([type=checkbox]){min-width:0}.modal:has(.ds-task-edit-form) button{min-width:calc(44 * var(--ds-unit))}.modal:has(.ds-task-edit-form) .primary{border-color:var(--ds-color-focus);background:var(--ds-color-focus);color:var(--ds-color-surface)}.modal:has(.ds-task-edit-form) :is(button,input):focus-visible{outline-color:var(--ds-color-focus)}@media (width<=1100px){.ds-shell main:has(>.ds-tasks-page){padding-right:calc(40 * var(--ds-unit))}.ds-tasks-page .todo-layout{gap:calc(24 * var(--ds-unit));grid-template-columns:minmax(0,1fr)}.ds-tasks-page .task-detail{position:static}}@media (width<=700px){.ds-shell main:has(>.ds-tasks-page){padding:calc(24 * var(--ds-unit)) calc(16 * var(--ds-unit)) calc(48 * var(--ds-unit))}.ds-tasks-page>.page-head h1,.ds-tasks-page .panel-head h2,.ds-tasks-page .task-detail h2{font-size:calc(24 * var(--ds-unit));letter-spacing:calc(-.6 * var(--ds-unit))}.ds-shell .ds-tasks-page .panel{padding:calc(16 * var(--ds-unit))}.ds-tasks-page .task-row{flex-wrap:wrap;align-items:flex-start}.ds-tasks-page .task-open{flex:1 1 calc(100% - calc(60 * var(--ds-unit)));flex-wrap:wrap;align-items:flex-start}.ds-tasks-page .task-open>span:first-child{flex:100%}.ds-tasks-page .task-open strong{font-size:calc(18 * var(--ds-unit));letter-spacing:calc(-.45 * var(--ds-unit))}.ds-tasks-page .task-open small{font-size:calc(14 * var(--ds-unit));letter-spacing:calc(-.35 * var(--ds-unit))}.ds-tasks-page .task-state-action{margin-left:calc(52 * var(--ds-unit))}.ds-tasks-page .todo-add{flex-wrap:wrap}.ds-tasks-page .todo-add input{flex-basis:calc(180 * var(--ds-unit))}}.ds-settings-page{min-width:0;color:var(--ds-color-ink);word-break:keep-all;overflow-wrap:anywhere}.ds-shell main:has(>.ds-settings-page){max-width:none;padding:calc(40 * var(--ds-unit)) calc(120 * var(--ds-unit)) calc(80 * var(--ds-unit)) calc(40 * var(--ds-unit));background:var(--ds-color-surface);margin:0}.ds-settings-page .page-head{margin-bottom:calc(40 * var(--ds-unit))}.ds-settings-page .page-head h1{font-size:calc(32 * var(--ds-unit));letter-spacing:calc(-.8 * var(--ds-unit));color:var(--ds-color-ink);font-weight:700;line-height:1.3}.ds-settings-page .page-head p,.ds-settings-page .helper{font-size:calc(16 * var(--ds-unit));color:var(--ds-color-muted);line-height:1.6}.ds-settings-page .settings-grid{grid-template-columns:minmax(0, 1.3fr) minmax(calc(320 * var(--ds-unit)), .7fr);align-items:start;gap:calc(40 * var(--ds-unit))}.ds-settings-page .settings-grid>*,.ds-settings-page .stack{min-width:0}.ds-settings-page .stack{gap:calc(24 * var(--ds-unit))}.ds-settings-page .panel{min-width:0;padding:calc(24 * var(--ds-unit)) calc(32 * var(--ds-unit));border-color:var(--ds-color-border);border-radius:var(--ds-radius-card);background:var(--ds-color-surface);overflow:visible}.ds-settings-page .panel-head{margin:0 0 calc(24 * var(--ds-unit));border:0;padding:0}.ds-settings-page .panel-head h2{color:var(--ds-color-ink);font-size:calc(24 * var(--ds-unit));letter-spacing:calc(-.6 * var(--ds-unit));margin:0;line-height:1.3}.ds-settings-page .settings-row{min-width:0;padding:calc(16 * var(--ds-unit)) 0;border-bottom-color:var(--ds-color-border);font-size:calc(16 * var(--ds-unit));align-items:start;gap:calc(24 * var(--ds-unit));line-height:1.5}.ds-settings-page .settings-row span{color:var(--ds-color-muted)}.ds-settings-page .settings-row strong{min-width:0;color:var(--ds-color-ink);overflow-wrap:anywhere;text-align:right}.ds-settings-page :is(button,.button){min-height:calc(44 * var(--ds-unit));padding:calc(10 * var(--ds-unit)) calc(16 * var(--ds-unit));border-color:var(--ds-color-border);border-radius:var(--ds-radius-control);color:var(--ds-color-ink);font-size:calc(16 * var(--ds-unit))}.ds-settings-page :is(button,.button):hover{background:var(--ds-color-selected)}.ds-settings-page :is(button,a):focus-visible{outline-color:var(--ds-color-focus)}.ds-settings-page .actions{gap:calc(12 * var(--ds-unit))}@media (width<=1100px){.ds-shell main:has(>.ds-settings-page){padding-right:40px}.ds-settings-page .settings-grid{gap:calc(24 * var(--ds-unit));grid-template-columns:minmax(0,1fr)}}@media (width<=700px){.ds-shell main:has(>.ds-settings-page){padding:24px 16px 48px}.ds-settings-page .page-head{margin-bottom:calc(24 * var(--ds-unit))}.ds-settings-page .page-head h1{font-size:calc(28 * var(--ds-unit));letter-spacing:calc(-.7 * var(--ds-unit))}.ds-settings-page .panel{padding:calc(24 * var(--ds-unit))}.ds-settings-page .panel-head h2{font-size:calc(22 * var(--ds-unit));letter-spacing:calc(-.55 * var(--ds-unit))}.ds-settings-page .settings-row{gap:calc(8 * var(--ds-unit)) calc(16 * var(--ds-unit));flex-wrap:wrap}.ds-settings-page .settings-row strong{text-align:left}}.calendar-toolbar{justify-content:space-between;align-items:center;gap:16px;display:flex}.calendar-month-controls{align-items:center;gap:8px;display:flex}.calendar-month-controls h2{white-space:nowrap;margin:0 16px 0 0;font-size:23px}.calendar-previous{display:flex;transform:rotate(180deg)}.calendar-course-filter{color:#6b7684;align-items:center;gap:12px;font-size:13px;display:flex}.calendar-course-filter select{min-width:160px;max-width:280px}.calendar-hint{color:#8b95a1;margin:12px 0 18px;font-size:12px}.calendar-empty-month{color:#4e5968;background:#f2f4f6;border-radius:10px;padding:14px 18px;font-size:14px}.calendar-layout{grid-template-columns:minmax(0,1fr) 286px;align-items:start;gap:20px;display:grid}.calendar-month{background:#fff;border:1px solid #e5e8eb;border-radius:14px;overflow:hidden}.calendar-weekdays{background:#fafbfc;border-bottom:1px solid #e5e8eb;grid-template-columns:repeat(7,minmax(0,1fr));display:grid}.calendar-weekdays span{text-align:center;color:#6b7684;padding:12px 0;font-size:12px}.calendar-days{grid-template-columns:repeat(7,minmax(0,1fr));display:grid}.calendar-day{border-bottom:1px solid #f2f4f6;border-right:1px solid #f2f4f6;min-width:0;min-height:142px;padding:6px}.calendar-day:nth-child(7n){border-right:0}.calendar-day:nth-last-child(-n+7){border-bottom:0}.calendar-day.selected{background:#f4f8ff;box-shadow:inset 0 0 0 1px #c6dcff}.calendar-day.outside{background:#fafbfc}.calendar-date{background:0 0;border:0;border-radius:50%;justify-content:center;align-items:center;width:28px;height:28px;min-height:0;margin-bottom:5px;padding:0;font-size:12px;display:flex}.calendar-date.today{color:#fff;background:#1b64da}.calendar-item{text-align:left;background:#f2f4f6;border:0;border-radius:4px;grid-template-columns:auto minmax(0,1fr);gap:1px 4px;width:100%;min-height:0;margin-top:4px;padding:4px 5px;display:grid}.calendar-item.assignment{background:#eaf2ff}.calendar-item-kind{color:#6b7684;align-self:center;font-size:9px;font-weight:600}.calendar-item.assignment .calendar-item-kind{color:#1b64da}.calendar-item.assignment.is-completed{background:#f2f4f6}.calendar-item.assignment.is-completed .calendar-item-kind,.calendar-item.is-completed .calendar-item-time{color:#4e5968}.calendar-item-time .icon{flex-shrink:0;width:11px;height:11px}.calendar-item-title{text-overflow:ellipsis;white-space:nowrap;color:#333d4b;font-size:12px;font-weight:500;overflow:hidden}.calendar-item-time{color:#6b7684;grid-column:1/-1;align-items:center;gap:3px;font-size:10px;display:flex}.calendar-more{color:#6b7684;background:0 0;border:0;min-height:0;padding:5px 3px;font-size:11px}.calendar-detail{background:#fff;border:1px solid #e5e8eb;border-radius:14px;min-width:0;padding:20px;position:sticky;top:20px}.calendar-detail h3{margin:0;font-size:17px}.calendar-day-count{color:#8b95a1;margin:7px 0 20px;font-size:12px}.calendar-detail .empty{padding:24px 0}.calendar-detail .empty h3{font-size:14px}.calendar-day-list{gap:6px;display:grid}.calendar-day-list button{white-space:normal;overflow-wrap:anywhere;text-align:left;background:#f9fafb;border:1px solid #0000;flex-direction:column;align-items:stretch;gap:5px;min-width:0;padding:12px;display:flex}.calendar-day-list button>*{min-width:0;max-width:100%}.calendar-day-list button.selected{background:#f4f8ff;border-color:#c6dcff}.calendar-day-list button.is-completed{background:#f9fafb}.calendar-day-list button .badge{width:fit-content;font-size:10px}.calendar-day-list span{color:#1b64da;font-size:11px}.calendar-day-list strong{overflow-wrap:anywhere;font-size:13px;font-weight:600;line-height:1.5}.calendar-day-list small{color:#8b95a1;font-size:11px}.calendar-event-detail{border-bottom:1px solid #e5e8eb;margin-bottom:20px;padding-bottom:20px}.calendar-event-detail .badge{margin-right:6px}.calendar-event-detail h4{overflow-wrap:anywhere;margin:14px 0 6px;font-size:16px;line-height:1.5}.calendar-event-detail>p{overflow-wrap:anywhere;color:#6b7684;font-size:12px;line-height:1.6}.calendar-event-detail dl{grid-template-columns:40px minmax(0,1fr);gap:8px;margin:18px 0;font-size:12px;line-height:1.6;display:grid}.calendar-event-detail dt{color:#8b95a1}.calendar-event-detail dd{color:#4e5968;margin:0}.calendar-submission-note{background:#f9fafb;border-radius:8px;padding:10px 12px}.calendar-event-detail .source-link{margin-top:10px;font-size:12px}.calendar-month-controls a[aria-disabled=true]{opacity:.4;cursor:default;pointer-events:none}.calendar-filters{align-items:center;gap:20px;display:flex}.calendar-update-row{justify-content:space-between;align-items:center;gap:16px;margin-bottom:20px;display:flex}.calendar-update-row .calendar-hint{margin:0}.calendar-refresh-action{flex-shrink:0;align-items:center;gap:12px;display:flex}.calendar-refresh-action span{color:#6b7684;font-size:12px}.calendar-refresh-action button{min-height:34px;padding:6px 12px;font-size:12px}.calendar-background-error{color:#6b7684;margin:0 0 16px;font-size:13px}.ds-calendar-route,.ds-school-calendar{min-width:0;color:var(--ds-color-ink)}.ds-shell main:has(>.ds-calendar-route){max-width:none;padding:calc(40 * var(--ds-unit)) calc(120 * var(--ds-unit)) calc(80 * var(--ds-unit)) calc(40 * var(--ds-unit));background:var(--ds-color-surface);margin:0}.ds-calendar-route>.page-head h1{color:var(--ds-color-ink);font-size:calc(32 * var(--ds-unit));letter-spacing:calc(-.8 * var(--ds-unit));line-height:1.3}.ds-calendar-route>.page-head p{color:var(--ds-color-muted);font-size:calc(16 * var(--ds-unit));line-height:1.5}.ds-school-calendar .calendar-toolbar,.ds-school-calendar .calendar-filters,.ds-school-calendar .calendar-month-controls,.ds-school-calendar .calendar-update-row{gap:calc(12 * var(--ds-unit)) calc(16 * var(--ds-unit));flex-wrap:wrap;min-width:0}.ds-school-calendar .calendar-toolbar{align-items:flex-start}.ds-school-calendar .calendar-month-controls h2{color:var(--ds-color-ink);font-size:var(--ds-font-body);letter-spacing:calc(-.5 * var(--ds-unit));margin-right:calc(8 * var(--ds-unit));font-weight:700;line-height:1.3}.ds-school-calendar .calendar-course-filter{gap:calc(8 * var(--ds-unit));min-width:0;color:var(--ds-color-muted);font-size:calc(16 * var(--ds-unit));flex-wrap:wrap}.ds-school-calendar .calendar-course-filter select{min-width:0;max-width:100%}.ds-school-calendar :is(button,.button,select){min-height:calc(44 * var(--ds-unit));font-size:calc(16 * var(--ds-unit))}.ds-school-calendar :is(button,.button){min-width:calc(44 * var(--ds-unit))}.ds-school-calendar :is(.calendar-hint,.calendar-day-count,.calendar-background-error){color:var(--ds-color-muted);font-size:calc(14 * var(--ds-unit));word-break:keep-all;overflow-wrap:break-word;line-height:1.5}.ds-school-calendar .calendar-layout{grid-template-columns:minmax(0, 1fr) calc(360 * var(--ds-unit));gap:calc(24 * var(--ds-unit));padding:calc(20 * var(--ds-unit)) calc(24 * var(--ds-unit));border:1px solid var(--ds-color-border);border-radius:calc(20 * var(--ds-unit));background:var(--ds-color-surface);min-width:0}.ds-school-calendar .calendar-month{background:var(--ds-color-surface);overscroll-behavior-x:contain;scrollbar-width:thin;border:0;border-radius:0;min-width:0;overflow:auto hidden}.ds-school-calendar .calendar-weekdays,.ds-school-calendar .calendar-days{min-width:calc(400 * var(--ds-unit));background:0 0;border:0}.ds-school-calendar .calendar-weekdays span{padding:calc(8 * var(--ds-unit)) 0;color:var(--ds-color-ink);font-size:calc(16 * var(--ds-unit));letter-spacing:calc(-.4 * var(--ds-unit));line-height:1.3}.ds-school-calendar .calendar-day{min-width:0;min-height:calc(142 * var(--ds-unit));padding:calc(4 * var(--ds-unit));background:0 0;border:0;flex-direction:column;align-items:stretch;display:flex}.ds-school-calendar .calendar-day.selected{box-shadow:none;background:0 0}.ds-school-calendar .calendar-day.outside{background:0 0}.ds-school-calendar .calendar-date{align-self:center;gap:calc(2 * var(--ds-unit));width:calc(48 * var(--ds-unit));height:calc(48 * var(--ds-unit));min-height:calc(48 * var(--ds-unit));margin-bottom:calc(8 * var(--ds-unit));padding:calc(2 * var(--ds-unit));border-radius:calc(10 * var(--ds-unit));color:var(--ds-color-ink);font-size:calc(20 * var(--ds-unit));letter-spacing:calc(-.5 * var(--ds-unit));background:0 0;border:1px solid #0000;flex-direction:column;flex-shrink:0;font-weight:400;line-height:1.3}.ds-school-calendar .calendar-date.today{border-color:var(--ds-color-focus);color:var(--ds-color-focus);background:0 0}.ds-school-calendar .calendar-date[aria-pressed=true]{border-color:var(--ds-color-brand);border-radius:calc(12 * var(--ds-unit));background:var(--ds-color-brand);color:var(--ds-color-surface);font-size:calc(24 * var(--ds-unit));letter-spacing:calc(-.6 * var(--ds-unit));font-weight:700}.ds-school-calendar .calendar-date:has(.ds-calendar-event-dot):not([aria-pressed=true]){padding:calc(12 * var(--ds-unit)) calc(12 * var(--ds-unit)) calc(3 * var(--ds-unit));justify-content:flex-end;gap:0}.ds-school-calendar .calendar-date:active{border-color:var(--ds-color-focus);background:var(--ds-color-selected);color:var(--ds-color-focus)}.ds-school-calendar .ds-calendar-event-dot{width:calc(8 * var(--ds-unit));height:calc(8 * var(--ds-unit));flex-shrink:0}.ds-school-calendar .calendar-date[aria-pressed=true] .ds-calendar-event-dot{display:none}.ds-school-calendar .calendar-item{gap:calc(4 * var(--ds-unit));min-height:calc(44 * var(--ds-unit));padding:calc(8 * var(--ds-unit));margin-top:calc(4 * var(--ds-unit));border-radius:var(--ds-radius-control);background:var(--ds-color-selected)}.ds-school-calendar .calendar-item.assignment,.ds-school-calendar .calendar-item.assignment.is-completed{background:var(--ds-color-selected)}.ds-school-calendar .calendar-item-title{color:var(--ds-color-ink);font-size:calc(14 * var(--ds-unit));font-weight:400;line-height:1.3}.ds-school-calendar :is(.calendar-item-kind,.calendar-item-time){color:var(--ds-color-muted);font-size:calc(12 * var(--ds-unit));line-height:1.3}.ds-school-calendar .calendar-item-time{gap:calc(3 * var(--ds-unit))}.ds-school-calendar .calendar-item-time .icon{width:calc(11 * var(--ds-unit));height:calc(11 * var(--ds-unit))}.ds-school-calendar .calendar-item.assignment .calendar-item-kind{color:var(--ds-color-focus)}.ds-school-calendar .calendar-more{min-height:calc(44 * var(--ds-unit));color:var(--ds-color-focus);font-size:calc(14 * var(--ds-unit));padding:calc(5 * var(--ds-unit)) calc(3 * var(--ds-unit))}.ds-school-calendar .calendar-detail{background:0 0;border:0;border-radius:0;min-width:0;padding:0;position:static}.ds-school-calendar .calendar-detail h3{color:var(--ds-color-ink);font-size:var(--ds-font-body);letter-spacing:calc(-.5 * var(--ds-unit));word-break:keep-all;overflow-wrap:break-word;font-weight:700;line-height:1.3}.ds-school-calendar .calendar-event-detail{border-bottom-color:var(--ds-color-border);margin-bottom:calc(20 * var(--ds-unit));padding-bottom:calc(20 * var(--ds-unit))}.ds-school-calendar .calendar-event-detail h4{color:var(--ds-color-ink);font-size:calc(20 * var(--ds-unit));letter-spacing:calc(-.5 * var(--ds-unit));word-break:keep-all;overflow-wrap:break-word;margin:calc(14 * var(--ds-unit)) 0 calc(6 * var(--ds-unit));line-height:1.3}.ds-school-calendar .calendar-event-detail dl{grid-template-columns:calc(40 * var(--ds-unit)) minmax(0, 1fr);gap:calc(8 * var(--ds-unit));margin:calc(18 * var(--ds-unit)) 0}.ds-school-calendar .calendar-event-detail :is(p,dt,dd),.ds-school-calendar .calendar-day-list small{color:var(--ds-color-muted);font-size:calc(14 * var(--ds-unit));word-break:keep-all;overflow-wrap:break-word;line-height:1.5}.ds-school-calendar .calendar-day-list{gap:calc(8 * var(--ds-unit))}.ds-school-calendar .calendar-day-list button{min-height:calc(44 * var(--ds-unit));padding:calc(8 * var(--ds-unit)) calc(16 * var(--ds-unit));border-radius:var(--ds-radius-pill);color:var(--ds-color-focus);gap:calc(5 * var(--ds-unit));background:#c7f1ff}.ds-school-calendar .calendar-day-list button.selected{border-color:var(--ds-color-focus);background:#c7f1ff}.ds-school-calendar .calendar-day-list button.is-completed{background:var(--ds-color-selected)}.ds-school-calendar .calendar-day-list strong{color:var(--ds-color-brand);font-size:calc(16 * var(--ds-unit));letter-spacing:calc(-.4 * var(--ds-unit));word-break:keep-all;overflow-wrap:break-word;font-weight:400;line-height:1.3}.ds-school-calendar .calendar-day-list span{color:var(--ds-color-focus);font-size:calc(14 * var(--ds-unit))}.ds-school-calendar .calendar-detail .button{white-space:normal;word-break:keep-all;overflow-wrap:break-word;max-width:100%}.ds-school-calendar .calendar-day-count{margin:calc(7 * var(--ds-unit)) 0 calc(20 * var(--ds-unit))}.ds-school-calendar .calendar-update-row{margin-bottom:calc(20 * var(--ds-unit))}.ds-school-calendar .calendar-refresh-action{gap:calc(12 * var(--ds-unit))}.ds-school-calendar .calendar-refresh-action span{font-size:calc(12 * var(--ds-unit))}.ds-school-calendar .calendar-refresh-action button{padding:calc(6 * var(--ds-unit)) calc(12 * var(--ds-unit))}.ds-school-calendar .calendar-submission-note{border-radius:var(--ds-radius-control);padding:calc(10 * var(--ds-unit)) calc(12 * var(--ds-unit))}.ds-school-calendar .primary{border-color:var(--ds-color-focus);background:var(--ds-color-focus);color:var(--ds-color-surface)}.ds-school-calendar :is(button,a,select):focus-visible{outline:3px solid var(--ds-color-focus);outline-offset:-3px}@media (width<=1100px){.ds-shell main:has(>.ds-calendar-route){padding-right:40px}.ds-school-calendar .calendar-layout{grid-template-columns:minmax(0,1fr)}.ds-school-calendar .calendar-detail{padding-top:calc(24 * var(--ds-unit));border-top:1px solid var(--ds-color-border)}}@media (width<=700px){.ds-shell main:has(>.ds-calendar-route){padding:24px 16px 48px}.ds-calendar-route>.page-head h1{font-size:calc(24 * var(--ds-unit));letter-spacing:calc(-.6 * var(--ds-unit))}.ds-school-calendar .calendar-layout{padding:calc(16 * var(--ds-unit))}.ds-school-calendar .calendar-day{min-height:calc(56 * var(--ds-unit))}.ds-school-calendar .calendar-date{margin:0}.ds-school-calendar :is(.calendar-item,.calendar-more){display:none}.ds-school-calendar .calendar-filters{width:100%}.ds-school-calendar .calendar-course-filter{flex-direction:column;flex:1 1 calc(160 * var(--ds-unit));align-items:flex-start}.ds-school-calendar .calendar-course-filter select{width:100%}.ds-school-calendar .calendar-update-row{align-items:flex-start}}@font-face{font-family:Pretendard;src:url(../fonts/PretendardVariable.woff2)format("woff2");font-style:normal;font-weight:100 900;font-display:swap}:root{color:#191f28;font-synthesis:none;text-rendering:optimizelegibility;-webkit-font-smoothing:antialiased;--primary:#1b64da;--muted:#6b7684;--line:#e5e8eb;background:#f9fafb;font-family:Pretendard,-apple-system,BlinkMacSystemFont,sans-serif;font-size:14px;font-weight:400;line-height:1.6}*{box-sizing:border-box}body{margin:0}a{color:inherit;text-decoration:none}button,input,select,textarea{font:inherit}button,.button{border:1px solid var(--line);color:#191f28;cursor:pointer;white-space:nowrap;background:#fff;border-radius:8px;justify-content:center;align-items:center;gap:8px;min-height:40px;padding:0 14px;font-weight:500;display:inline-flex}button:hover,.button:hover{background:#f2f4f6}button:disabled{cursor:not-allowed;opacity:.45}button:focus-visible,a:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible{outline:3px solid var(--primary);outline-offset:3px}@media (prefers-reduced-motion:no-preference){html[data-input-modality=pointer] :where(button.primary,button.icon-button,button.text,a.button,.modal button,.assignment-document-navigation button,.assignment-editor-actions button,.assignment-file-actions button,.pdf-reader-toolbar button):not(:disabled):not([aria-disabled=true]){transition:transform .12s cubic-bezier(.23,1,.32,1)}html[data-input-modality=pointer] :where(button.primary,button.icon-button,button.text,a.button,.modal button,.assignment-document-navigation button,.assignment-editor-actions button,.assignment-file-actions button,.pdf-reader-toolbar button):not(:disabled):not([aria-disabled=true]):active{transition-duration:0s;transform:scale(.98)}}.primary{background:var(--primary);border-color:var(--primary);color:#fff}.primary:hover{background:#1957c2;border-color:#1957c2}.full{width:100%}.text,.text-link{color:#4e5968;background:0 0;border:0;align-items:center;gap:5px;padding:0;display:inline-flex}.text-link:hover{color:var(--primary)}.danger{color:#d22030}.icon-button{width:36px;min-height:36px;color:var(--muted);background:0 0;border:0;padding:0}.icon{fill:none;stroke:currentColor;stroke-width:1.65px;stroke-linecap:round;stroke-linejoin:round;flex-shrink:0;width:20px;height:20px}.button .icon,button .icon{width:18px;height:18px}h1,h2,h3,p{margin:0}h1{letter-spacing:-.8px;font-size:26px;font-weight:700;line-height:1.4}h2{letter-spacing:-.3px;font-size:18px;font-weight:600;line-height:1.5}h3{font-size:15px;font-weight:500;line-height:1.6}small,.muted{color:var(--muted)}small{font-size:12px}.grow{flex:1;min-width:0}.actions{flex-wrap:wrap;align-items:center;gap:8px;display:flex}.spaced{margin-top:22px}.helper{color:var(--muted);margin-top:14px;font-size:12px;line-height:1.8}.description{white-space:pre-wrap;overflow-wrap:anywhere;color:#4e5968;margin:20px 0;font-size:14px;line-height:1.8}.badge{color:#6b7684;white-space:nowrap;background:#f2f4f6;border-radius:4px;align-items:center;padding:3px 7px;font-size:12px;font-weight:500;line-height:1.5;display:inline-flex}.badge.blue{color:#1b64da;background:#e8f3ff}.badge.green{color:#21734c;background:#eaf5ee}.badge.red{color:#d22030;background:#fcecee}.badge.amber{color:#986014;background:#fff6e6}.shell{grid-template-columns:216px minmax(0,1fr);min-height:100vh;display:grid}.sidebar{border-right:1px solid var(--line);background:#fff;flex-direction:column;gap:34px;height:100vh;padding:28px 16px 20px;display:flex;position:sticky;top:0}.brand{letter-spacing:-1px;color:#2272eb;align-items:center;gap:9px;width:fit-content;font-size:25px;font-weight:750;line-height:1.3;display:flex}.brand-mark{place-items:center;width:34px;height:34px;display:grid}.brand-mark .icon{stroke-width:1.8px;width:26px;height:26px}.sidebar-sub{color:#8b95a1;margin:7px 0 0 44px;font-size:11px}.sidebar nav{flex-direction:column;gap:6px;display:flex}.sidebar nav a{color:#6b7684;border-radius:8px;align-items:center;gap:11px;min-height:44px;padding:0 14px;display:flex}.sidebar nav a:hover{background:#f9fafb}.sidebar nav a[aria-current=page]{color:#191f28;background:#f2f4f6;font-weight:600}.aside-bottom{border-top:1px solid var(--line);align-items:center;gap:10px;margin-top:auto;padding-top:20px;display:flex}.avatar{color:#6b7684;background:#f2f4f6;border-radius:50%;place-items:center;width:34px;height:34px;display:grid}.avatar .icon{width:17px;height:17px}.aside-bottom strong{font-size:13px;font-weight:500;display:block}.aside-bottom small{font-size:11px}.app-body{min-width:0}.topbar{border-bottom:1px solid var(--line);height:64px;color:var(--muted);background:#fff;justify-content:space-between;align-items:center;padding:0 32px;font-size:13px;display:flex}.topbar a{align-items:center;gap:7px;font-size:12px;display:flex}.topbar .icon{width:15px;height:15px}main{outline:none;max-width:1450px;margin:0 auto;padding:28px 32px 44px}.page-head{justify-content:space-between;align-items:flex-start;gap:20px;margin-bottom:24px;display:flex}.page-head p{color:var(--muted);margin-top:6px;font-size:13px}.panel{border:1px solid var(--line);background:#fff;border-radius:12px;min-width:0;padding:20px}.panel-head{justify-content:space-between;align-items:center;gap:14px;margin-bottom:16px;display:flex}.panel-head h2{font-size:17px}.stack{flex-direction:column;gap:18px;min-width:0;display:flex}.dashboard-grid{grid-template-columns:minmax(0,1.6fr) minmax(310px,1fr);gap:18px;display:grid}.current-header{justify-content:space-between;align-items:flex-start;gap:16px;margin-bottom:20px;display:flex}.current-header h2{font-size:23px}.current-header p{color:var(--muted);margin-top:8px;font-size:12px}.resource-row{border-top:1px solid var(--line);align-items:center;gap:12px;padding:13px 0;display:flex}.resource-row>.icon{color:#8b95a1}.resource-row h3{font-size:14px}.resource-row small{margin-top:3px;display:block}.course-mini,.task-mini{border-top:1px solid var(--line);align-items:center;gap:12px;padding:15px 0;display:flex}.course-mini:first-of-type,.task-mini:first-of-type{border-top:0}.course-mini small,.task-mini small{margin-top:4px;font-size:11px;display:block}.course-mini h3,.task-mini h3{font-size:14px}.course-mini>.icon,.task-mini>.icon{color:#8b95a1}.course-mini:hover h3,.task-mini:hover h3{color:var(--primary)}.timetable{column-gap:4px;font-size:12px;display:grid}.tt-header{text-align:center;color:#8b95a1;margin-bottom:10px;padding:8px}.tt-header.today{color:#1b64da;background:#e8f3ff;border-radius:6px}.tt-labels>div{height:var(--tt-hour-height);color:#8b95a1;font-size:10px}.tt-column{background:repeating-linear-gradient(to bottom, #fff 0, #fff calc(var(--tt-hour-height) - 1px), #f2f4f6 calc(var(--tt-hour-height) - 1px), #f2f4f6 var(--tt-hour-height));border:1px solid #f2f4f6;border-top:0;position:relative}.tt-course{white-space:normal;text-align:left;color:#465d7b;background:#edf2f9;border:1px solid #fff;border-radius:5px;flex-direction:column;justify-content:flex-start;align-items:stretch;gap:3px;min-width:0;min-height:0;padding:7px 6px;font-size:11px;line-height:1.4;display:flex;position:absolute;left:2px;right:2px;overflow:hidden}.tt-course:hover{filter:brightness(.97)}.tt-course:focus-visible{z-index:1}.tt-course strong{-webkit-line-clamp:2;overflow-wrap:anywhere;-webkit-box-orient:vertical;flex-shrink:0;font-weight:600;display:-webkit-box;overflow:hidden}.tt-course small{color:inherit;text-overflow:ellipsis;white-space:nowrap;font-size:10px;overflow:hidden}.tt-course.compact{gap:1px;padding:4px 5px}.tt-course.compact strong{-webkit-line-clamp:1}.tt-course.tiny{padding:1px 4px}.tt-course.tiny small{display:none}.tt-course.tone-0{color:#465d7b;background:#edf2f9}.tt-course.tone-1{color:#456953;background:#edf5ef}.tt-course.tone-2{color:#79613d;background:#f7f1e7}.tt-course.tone-3{color:#6e5381;background:#f3edf7}.tt-course.tone-4{color:#3f686e;background:#eaf4f5}.tt-course.tone-5{color:#805667;background:#f6edf1}.tt-course.tone-6{color:#606b3c;background:#f1f3e6}.tt-course.tone-7{color:#605489;background:#f1effa}.dashboard-grid .task-mini,.dashboard-grid .course-mini{padding:10px 0}.dashboard-grid .task-mini h3,.dashboard-grid .course-mini h3,.dashboard-grid .task-mini small,.dashboard-grid .course-mini small{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.current-class-panel .empty{padding:12px 8px}.current-class-panel .current-header{margin-bottom:12px}.current-class-panel>.helper:first-of-type{margin-top:-6px;margin-bottom:12px}.current-class-panel .current-header h2{font-size:21px}.toolbar{flex-wrap:wrap;align-items:center;gap:12px;margin-bottom:20px;display:flex}.segmented{flex-wrap:wrap;align-items:center;gap:6px;display:flex}.segmented button{background:#fff}.segmented button[aria-pressed=true]{color:#191f28;background:#f2f4f6;border-color:#e5e8eb}.search-field{border:1px solid var(--line);color:#8b95a1;background:#fff;border-radius:8px;align-items:center;gap:9px;margin-left:auto;padding:0 12px;display:flex}.search-field input{border:0;width:210px}.search-field:focus-within{outline:3px solid #a9ceff}.search-field input:focus{outline:none}input:not([type=checkbox]),select{border:1px solid var(--line);color:#191f28;background:#fff;border-radius:8px;min-width:0;height:40px;padding:0 12px}input::placeholder{color:#8b95a1}input[type=checkbox]{width:17px;height:17px;accent-color:var(--primary);cursor:pointer;flex-shrink:0}.course-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:18px;display:grid}.course-card{border:1px solid var(--line);background:#fff;border-radius:12px;padding:22px;transition:border-color .15s;display:block}.course-card:hover{border-color:#b0b8c1}.course-card-header{justify-content:space-between;align-items:flex-start;gap:20px;display:flex}.course-card-header>.icon{color:#b0b8c1}.course-card p{color:var(--muted);margin-top:7px;font-size:12px}.course-stats{border-top:1px solid var(--line);color:var(--muted);flex-wrap:wrap;align-items:center;gap:18px;margin-top:21px;padding-top:16px;font-size:12px;display:flex}.course-stats strong{color:#191f28;margin-left:4px}.course-stats .text-link{margin-left:auto}.breadcrumb{color:var(--muted);align-items:center;gap:7px;margin-bottom:14px;font-size:12px;display:flex}.breadcrumb .icon{width:13px;height:13px}.tabs{border-bottom:1px solid var(--line);gap:26px;margin-bottom:22px;display:flex;overflow-x:auto}.tabs a{color:#6b7684;flex-shrink:0;align-items:center;min-height:46px;display:flex}.tabs a[aria-current=page]{color:var(--primary);box-shadow:inset 0 -2px var(--primary);font-weight:600}.week-block{border:1px solid var(--line);background:#fff;border-radius:12px;margin-bottom:14px;overflow:hidden}.week-top{text-align:left;white-space:normal;background:#fff;border:0;border-radius:0;justify-content:flex-start;gap:12px;width:100%;padding:15px 18px}.week-top>.icon{color:#8b95a1;width:16px;height:16px;transform:rotate(0)}.week-top[aria-expanded=true]>.icon{transform:rotate(90deg)}.week-top h2{font-size:15px;font-weight:600}.week-top small{font-size:11px}.week-items{padding:0 18px 3px}.learning-row{border-top:1px solid var(--line);align-items:flex-start;gap:12px;padding:13px 0;display:flex}.learning-row>input{margin-top:10px}.checkbox-spacer{flex-shrink:0;width:17px}.type-icon{color:#8b95a1;flex-shrink:0;place-items:center;width:32px;height:32px;display:grid}.learning-title{flex-wrap:wrap;align-items:center;gap:9px;display:flex}.plain-title{text-align:left;white-space:normal;background:0 0;border:0;justify-content:flex-start;min-height:27px;padding:0;font-size:16px;font-weight:500}.plain-title:hover{color:var(--primary);background:0 0}.learning-meta,.learning-status{color:var(--muted);margin-top:4px;font-size:12px}.learning-status{gap:14px;display:flex}.row-action{align-self:center;font-size:13px}.inline-job{background:#f9fafb;border-left:2px solid #b0b8c1;justify-content:space-between;align-items:center;gap:12px;margin-top:12px;padding:12px;font-size:12px;display:flex}.inline-job strong{font-weight:500}.inline-job small{margin-top:3px;display:block}.inline-job button{min-height:32px;padding:0 9px;font-size:12px}.selection-toolbar{border:1px solid var(--line);background:#fff;border-radius:10px;justify-content:space-between;align-items:center;gap:16px;margin-bottom:18px;padding:12px 16px;display:flex}.selection-toolbar strong{font-size:13px;font-weight:600}.table-wrap{width:100%;overflow:auto}table{border-collapse:collapse;width:100%;min-width:740px;font-size:13px}th{text-align:left;color:var(--muted);background:#f9fafb;padding:12px 10px;font-size:12px;font-weight:500}td{border-bottom:1px solid var(--line);vertical-align:middle;padding:14px 10px}td strong{font-weight:500}td small{margin-top:4px;font-size:11px;display:block}td button{min-height:34px;font-size:12px}tbody tr:last-child td{border:0}.todo-layout{grid-template-columns:minmax(0,1.6fr) minmax(300px,1fr);gap:18px;display:grid}.task-row{border-bottom:1px solid var(--line);align-items:center;gap:10px;padding:3px 0;display:flex}.task-row>input{margin:0 4px}.task-open{text-align:left;white-space:normal;background:0 0;border:0;flex:1;justify-content:flex-start;min-width:0;padding:12px 0}.task-open:hover{background:0 0}.task-open>span:first-child{flex:1;min-width:0}.task-open strong{overflow-wrap:anywhere;font-size:14px;font-weight:500;display:block}.task-open small{margin-top:4px;font-size:11px;display:block}.task-open>.icon{color:#b0b8c1;width:16px;height:16px}.task-row.done .task-open strong{color:#8b95a1}.task-row.selected .task-open strong{color:#1b64da}.todo-add{gap:8px;padding-top:20px;display:flex}.todo-add input{flex:1}.task-detail{align-self:start;position:sticky;top:20px}.task-detail h2{overflow-wrap:anywhere;font-size:20px}.task-detail>p{margin-top:7px;font-size:12px}.detail-meta{border-bottom:1px solid var(--line);color:var(--muted);justify-content:space-between;align-items:flex-start;gap:20px;padding:14px 0;font-size:13px;display:flex}.detail-meta strong{color:#333d4b;text-align:right;font-weight:500}.detail-title{margin:12px 0 7px;font-size:21px;font-weight:600}.settings-grid{grid-template-columns:1fr 1fr;gap:18px;display:grid}.settings-row{border-bottom:1px solid var(--line);justify-content:space-between;align-items:center;gap:20px;padding:17px 0;font-size:13px;display:flex}.settings-row span{color:var(--muted)}.settings-row strong{font-weight:500}.empty{text-align:center;color:var(--muted);padding:35px 15px}.empty-icon{color:#8b95a1;background:#f2f4f6;border-radius:12px;place-items:center;width:42px;height:42px;margin:0 auto 13px;display:grid}.empty h3{color:#4e5968}.empty p{margin-top:7px;font-size:12px}.empty .actions{justify-content:center;margin-top:18px}.error-state{color:#6b7684;align-items:flex-start;gap:15px;padding:26px 12px;display:flex}.error-state>.icon{color:#8b95a1;margin-top:3px}.error-state h3{color:#333d4b;font-size:16px}.error-state p{margin-top:6px;font-size:13px}.error-state .actions{margin-top:20px}.error-state.compact{background:#f9fafb;border-radius:8px;margin-bottom:16px;padding:14px}.error-state.compact h3{font-size:14px}.error-state.compact .actions{margin-top:12px}.inline-error{color:#d22030;background:#fff4f5;border-radius:8px;margin-bottom:16px;padding:12px 14px;font-size:13px}.status-message{color:#4e5968;margin-bottom:12px;padding:10px 0;font-size:13px}.loading{color:#8b95a1;justify-content:center;align-items:center;gap:10px;min-height:150px;display:flex}.spinner{opacity:.65;border:2px solid;border-right-color:#0000;border-radius:50%;width:18px;height:18px;animation:.7s linear infinite spin;display:inline-block}@keyframes spin{to{transform:rotate(360deg)}}.boot{flex-direction:column;justify-content:center;align-items:center;gap:20px;min-height:100vh;display:flex}.boot .loading{min-height:60px}.login-shell{background:radial-gradient(at 50% 0,#eef5ff 0%,#f9fafb 55%);flex-direction:column;justify-content:center;align-items:center;min-height:100vh;padding:40px 24px;display:flex}.login-card{text-align:center;background:#fff;border:1px solid #e5e8eb;border-radius:18px;width:430px;max-width:100%;padding:38px;box-shadow:0 10px 36px #191f2804}.login-card .brand{margin:auto;font-size:28px}.eyebrow{color:#8b95a1;margin-top:37px;font-size:12px;display:block}.login-card h1{letter-spacing:-1.4px;margin:10px 0 17px;font-size:34px;line-height:1.3}.login-card>p{color:#6b7684;font-size:14px;line-height:1.85}.login-cta{min-height:48px;margin-top:30px}.login-return,.login-school{margin-top:12px}.login-school .button{color:#6b7684;border:0;min-height:34px;font-size:12px}.login-school .icon{width:14px;height:14px}.login-card .campus{color:#8b95a1;border-top:1px solid #f2f4f6;margin-top:23px;padding-top:21px;font-size:11px}.login-footer{color:#b0b8c1;margin-top:26px;font-size:11px}.login-error{color:#6b7684;text-align:left;background:#f9fafb;border-radius:8px;margin-top:15px;padding:12px;font-size:12px;line-height:1.8}.login-error button,.login-error a.text{color:#1b64da;min-height:28px;margin-top:5px;font-size:12px;display:block}.modal-backdrop{z-index:100;background:#191f2855;justify-content:center;align-items:center;padding:24px;display:flex;position:fixed;inset:0}.modal{background:#fff;border-radius:16px;outline:none;width:520px;max-width:100%;max-height:calc(100vh - 48px);padding:26px;overflow:auto;box-shadow:0 20px 80px #191f2820}.schedule-form,.edit-form{flex-direction:column;gap:10px;margin-top:22px;display:flex}.logout-description{color:#4e5968;margin:20px 0 24px;font-size:14px;line-height:1.8}.logout-actions{justify-content:flex-end}.schedule-form label,.edit-form label{color:#6b7684;font-size:13px}.schedule-form .primary{margin-top:12px}.edit-form label:not(:first-child){margin-top:10px}.sr-only{clip:rect(0, 0, 0, 0);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.skip-link{border:2px solid var(--primary);z-index:200;background:#fff;border-radius:8px;padding:10px 20px;position:fixed;top:-100px;left:230px}.skip-link:focus{top:10px}@media (width<=1150px){main{padding:24px}.topbar{padding:0 24px}.dashboard-grid{grid-template-columns:minmax(0,1fr)}.dashboard-grid>.stack:last-child{grid-template-columns:1fr 1fr;display:grid}.todo-layout{grid-template-columns:1fr}.task-detail{position:static}.course-grid{grid-template-columns:1fr 1fr}.settings-grid{grid-template-columns:1fr}}@media (prefers-reduced-motion:reduce){*{scroll-behavior:auto!important;transition:none!important}.spinner{animation:none}}.timetable-periods-label{margin:24px 0 10px;font-size:13px}.timetable-periods{border-top:1px solid #f2f4f6;margin:0;padding:0;list-style:none}.timetable-periods li{border-bottom:1px solid #f2f4f6;justify-content:space-between;gap:16px;padding:12px 0;display:flex}.timetable-periods strong{font-variant-numeric:tabular-nums;font-size:13px}.timetable-periods small{color:#6b7684;text-align:right}.activity-description{white-space:pre-wrap;overflow-wrap:anywhere;color:#333d4b;margin:22px 0;line-height:1.75}.activity-file{overflow-wrap:anywhere;background:#f9fafb;border:1px solid #f2f4f6;border-radius:10px;margin:20px 0;padding:16px}.activity-detail-dates{margin:18px 0}.activity-viewer-actions{gap:10px;margin:20px 0 12px;display:flex}.activity-viewer{background:#f9fafb;border:1px solid #e5e8eb;border-radius:8px;width:100%;height:min(64vh,720px);display:block}.modal:has(.activity-viewer){width:min(1100px,100vw - 64px)}.activity-source-footer{border-top:1px solid #f2f4f6;margin-top:24px;padding-top:16px}.activity-source-footer a{color:#6b7684;font-size:12px}.activity-detail-error{background:#f9fafb;border-radius:8px;margin:18px 0;padding:14px}.tt-block-time{font-variant-numeric:tabular-nums}.activity-file{align-items:flex-start;gap:12px;display:flex}.activity-file>.icon{color:#6b7684;flex-shrink:0}.activity-file>div{flex-direction:column;gap:6px;min-width:0;display:flex}.activity-file strong{font-size:14px}.activity-file small{color:#6b7684;font-size:12px}.activity-detail:has(.activity-viewer)>:is(.muted,.activity-file,.activity-description,.activity-detail-dates,.detail-meta){display:none}.activity-detail:has(.activity-viewer) .detail-title{margin-top:16px;margin-bottom:12px;font-size:18px}.activity-detail:has(.activity-viewer) .activity-viewer-actions{margin-top:12px}.activity-detail:has(.activity-viewer) .activity-source-footer{margin-top:12px;padding-top:8px}.activity-detail:not(.activity-detail-page):has(.activity-viewer)>.activity-metadata{display:none}:is(.activity-detail-page .detail-title,.activity-detail-page:has(.activity-viewer) .detail-title){overflow-wrap:anywhere;margin:0 0 18px;font-size:22px;line-height:1.45}.activity-detail-page .activity-metadata{border-bottom:1px solid #eef0f2;margin-bottom:18px;padding-bottom:12px}.activity-detail-page .activity-metadata>summary{cursor:pointer;color:#4e5968;padding:6px 0;font-size:13px}.activity-detail-page .activity-metadata>summary span{color:#8b95a1;margin-left:12px;font-size:12px}.activity-detail-page .activity-viewer{border-radius:5px;height:max(560px,100vh - 240px)}.learning-reader-empty{color:#6b7684;background:#f9fafb;border-radius:6px;flex-direction:column;justify-content:center;align-items:center;gap:12px;min-height:260px;display:flex}.learning-reader-empty h4,.learning-reader-empty p{margin:0}.learning-reader-empty p{font-size:13px}.material-reader-status{background:#f9fafb;border:1px solid #eef0f2;border-radius:5px;flex-direction:column;justify-content:center;align-items:center;gap:16px;min-height:400px;display:flex}.activity-page-notice{color:#6b7684;background:#f9fafb;border-radius:6px;margin:20px 0;padding:20px;line-height:1.6}.current-class-panel .empty{min-height:0;padding:6px 8px}.current-class-panel .empty .empty-icon{display:none}:root{--ds-unit:1px;--ds-hit-size:44px;--ds-hit-dense-size:24px;--ds-color-brand:#0095c7;--ds-color-muted:#848082;--ds-color-meta:#848082;--ds-radius-card:calc(24 * var(--ds-unit));--ds-card-padding:calc(32 * var(--ds-unit));--ds-color-ink:#373536;--ds-color-surface:#fff;--ds-color-border:#e8e8e8;--ds-color-canvas:#f9fafb;--ds-color-selected:#eaf7fb;--ds-color-focus:#006a8d;--ds-color-secondary:#02a6cb;--ds-color-secondary-soft:#ccf5ff;--ds-color-point-red:#f44;--ds-font-display:calc(52 * var(--ds-unit));--ds-font-h1:calc(40 * var(--ds-unit));--ds-font-h2:calc(32 * var(--ds-unit));--ds-font-h3:calc(24 * var(--ds-unit));--ds-font-body:calc(20 * var(--ds-unit));--ds-font-small:calc(16 * var(--ds-unit));--ds-font-detail:calc(12 * var(--ds-unit));--ds-line-height:1.3;--ds-letter-spacing:-.025em;--ds-space-1:calc(4 * var(--ds-unit));--ds-space-2:calc(8 * var(--ds-unit));--ds-space-4:calc(16 * var(--ds-unit));--ds-space-6:calc(24 * var(--ds-unit));--ds-space-10:calc(40 * var(--ds-unit));--ds-radius-control:calc(8 * var(--ds-unit));--ds-radius-pill:999px;--ds-rail-width:calc(80 * var(--ds-unit));--ds-header-height:calc(60 * var(--ds-unit));--ds-shadow-rail:1px 0 .5px #0000001a}@media (width>=1101px){:root{--ds-unit:min(1px, calc(100vw / 1920))}}.ds-brand{align-items:center;gap:var(--ds-space-2);color:var(--ds-color-ink);font-size:var(--ds-font-h3);letter-spacing:var(--ds-letter-spacing);white-space:nowrap;flex-shrink:0;font-weight:700;line-height:1.3;display:inline-flex}.ds-brand img{width:calc(59 * var(--ds-unit));height:calc(28 * var(--ds-unit));object-fit:contain}.ds-shell{grid-template-columns:var(--ds-rail-width) minmax(0, 1fr);background:var(--ds-color-surface)}.ds-shell .sidebar{padding:var(--ds-space-6) var(--ds-space-4);box-shadow:var(--ds-shadow-rail);z-index:20;border-right:0}.ds-shell .sidebar nav{gap:var(--ds-space-2)}.ds-shell .sidebar nav a{width:calc(48 * var(--ds-unit));min-height:calc(48 * var(--ds-unit));padding:calc(8 * var(--ds-unit));color:var(--ds-color-ink);justify-content:center;position:relative}.ds-shell .sidebar nav a .icon{width:calc(28 * var(--ds-unit));height:calc(28 * var(--ds-unit))}.ds-shell .sidebar nav a[aria-current=page]{background:var(--ds-color-selected);color:var(--ds-color-focus)}.ds-nav-label{left:calc(100% + calc(12 * var(--ds-unit)));padding:calc(6 * var(--ds-unit)) calc(12 * var(--ds-unit));border-radius:var(--ds-radius-control);background:var(--ds-color-ink);color:var(--ds-color-surface);font-size:calc(14 * var(--ds-unit));white-space:nowrap;pointer-events:none;visibility:hidden;position:absolute}.ds-shell .sidebar nav a:is(:hover,:focus-visible) .ds-nav-label{visibility:visible}.ds-header{height:var(--ds-header-height);padding:0 calc(120 * var(--ds-unit)) 0 var(--ds-space-10);justify-content:space-between;align-items:center;gap:var(--ds-space-6);background:var(--ds-color-surface);border-bottom:0;display:flex}.ds-header .ds-brand{font-size:var(--ds-font-h3);gap:var(--ds-space-2)}.ds-account-actions{align-items:center;gap:var(--ds-space-2);min-width:0;display:flex}.ds-header .ds-account{align-items:center;gap:var(--ds-space-2);border:1px solid var(--ds-color-border);border-radius:var(--ds-radius-pill);min-width:0;padding:calc(4 * var(--ds-unit)) calc(16 * var(--ds-unit)) calc(4 * var(--ds-unit)) calc(8 * var(--ds-unit));font-size:var(--ds-font-small);line-height:var(--ds-line-height);letter-spacing:var(--ds-letter-spacing);color:var(--ds-color-ink);display:flex}.ds-account:hover{background:var(--ds-color-canvas)}.ds-account-avatar{width:calc(32 * var(--ds-unit));height:calc(32 * var(--ds-unit));background:var(--ds-color-selected);color:var(--ds-color-focus);border-radius:50%;flex-shrink:0;place-items:center;font-weight:600;display:grid}.ds-header .ds-account-avatar .icon{width:calc(24 * var(--ds-unit));height:calc(24 * var(--ds-unit))}.ds-account-name{text-overflow:ellipsis;white-space:nowrap;max-width:12em;overflow:hidden}.ds-header .ds-logout{width:calc(44 * var(--ds-unit));height:calc(44 * var(--ds-unit));flex-shrink:0}.ds-header .ds-logout .icon{width:calc(20 * var(--ds-unit));height:calc(20 * var(--ds-unit))}.ds-shell .skip-link{left:calc(var(--ds-rail-width) + calc(16 * var(--ds-unit)))}.ds-shell :is(a,button):focus-visible{outline:2px solid var(--ds-color-focus);outline-offset:3px}@media (width<=1100px){.ds-header{padding-inline:calc(24 * var(--ds-unit))}.ds-header .ds-brand{font-size:calc(26 * var(--ds-unit))}.ds-header .ds-account{font-size:calc(16 * var(--ds-unit))}}@media (width<=700px){.ds-shell{flex-direction:column;display:flex}.ds-shell .sidebar{height:auto;padding:calc(8 * var(--ds-unit)) calc(12 * var(--ds-unit));box-shadow:none;border-bottom:1px solid var(--ds-color-border);position:relative}.ds-shell .sidebar nav{justify-content:space-between;gap:calc(4 * var(--ds-unit));flex-direction:row}.ds-shell .sidebar nav a{gap:calc(3 * var(--ds-unit));width:auto;padding:calc(6 * var(--ds-unit)) calc(2 * var(--ds-unit));flex-direction:column;flex:1}.ds-shell .sidebar nav a .icon{width:calc(22 * var(--ds-unit));height:calc(22 * var(--ds-unit))}.ds-nav-label{color:inherit;font-size:calc(11 * var(--ds-unit));visibility:visible;background:0 0;padding:0;position:static}.ds-shell .app-body{display:contents}.ds-header{height:calc(76 * var(--ds-unit));padding-inline:calc(16 * var(--ds-unit));gap:calc(8 * var(--ds-unit));order:-1}.ds-header .ds-brand,.login-card .ds-brand{font-size:calc(20 * var(--ds-unit));letter-spacing:calc(-.5 * var(--ds-unit))}.ds-brand img{width:calc(46 * var(--ds-unit));height:calc(24 * var(--ds-unit))}.ds-account-actions{gap:calc(4 * var(--ds-unit))}.ds-header .ds-account{padding:calc(4 * var(--ds-unit));border:0}.ds-account-avatar{width:calc(36 * var(--ds-unit));height:calc(36 * var(--ds-unit));font-size:calc(16 * var(--ds-unit))}.ds-account-name{display:none}.ds-shell main{width:100%;padding:calc(24 * var(--ds-unit)) calc(16 * var(--ds-unit)) calc(40 * var(--ds-unit))}.ds-shell .skip-link{left:calc(16 * var(--ds-unit))}}.ds-navigation-icon{width:calc(32 * var(--ds-unit));height:calc(32 * var(--ds-unit));flex-shrink:0;place-items:center;display:grid}.ds-navigation-icon img{display:block}@media (width<=700px){.ds-navigation-icon{width:calc(24 * var(--ds-unit));height:calc(24 * var(--ds-unit))}}.ds-shell .sidebar nav a[aria-current=page]{background:var(--ds-color-brand);color:#fff;border-radius:calc(10 * var(--ds-unit))}.ds-shell .sidebar nav a[aria-current=page] .ds-navigation-icon img:not(.ds-exact-selected-icon){filter:brightness(0)invert()}.ds-shell .sidebar nav a[aria-current=page] .icon{color:#fff}@media (width<=700px){.ds-shell .sidebar nav a[aria-current=page]{background:var(--ds-color-focus)}}.ds-navigation-icon img{transform:scale(calc(var(--ds-unit) / 1px))}.ds-icon-slot{width:calc(24 * var(--ds-unit));height:calc(24 * var(--ds-unit));flex-shrink:0;place-items:center;display:grid}.ds-icon-slot img{transform:scale(calc(var(--ds-unit) / 1px))}@media (width>=1101px){.ds-shell{font-size:calc(14 * var(--ds-unit))}.ds-shell :where(button,.button){min-height:calc(40 * var(--ds-unit));padding-inline:calc(14 * var(--ds-unit));gap:calc(8 * var(--ds-unit))}.ds-shell :where(.icon-button){padding:0}}.ds-header .ds-logout{min-height:calc(44 * var(--ds-unit))}.ds-compact-preview .ds-preview-bar{min-height:48px;padding:4px max(16px, calc(40 * var(--ds-unit)));border-bottom:1px solid var(--ds-color-border);background:var(--ds-color-canvas);color:var(--ds-color-muted);flex-wrap:wrap;justify-content:space-between;align-items:center;gap:8px 24px;font-size:13px;display:flex}.ds-compact-preview .ds-preview-bar a{min-height:40px;color:var(--ds-color-focus);align-items:center;gap:8px;font-weight:600;display:inline-flex}.ds-compact-preview .ds-preview-bar .icon{width:16px;height:16px}.ds-compact-preview .ds-header .ds-brand{font-size:max(20px, calc(26 * var(--ds-unit)));letter-spacing:-.5px}.ds-compact-preview .ds-header .ds-account{font-size:max(14px, calc(16 * var(--ds-unit)))}.ds-compact-preview .ds-dashboard .panel-head h2{font-size:max(20px, calc(24 * var(--ds-unit)));letter-spacing:-.4px}.ds-compact-preview .ds-current-body h3{font-size:max(24px, calc(30 * var(--ds-unit)));letter-spacing:-.6px;line-height:1.35}.ds-compact-preview .ds-current-body>p{font-size:max(16px, calc(18 * var(--ds-unit)));letter-spacing:-.2px;line-height:1.5}.ds-compact-preview .ds-current-body>small{font-size:max(12px, calc(14 * var(--ds-unit)))}.ds-compact-preview .ds-dashboard .ds-pill-action{min-height:40px;font-size:max(16px, calc(18 * var(--ds-unit)))}.ds-compact-preview .ds-dashboard .ds-pill-action .icon{width:18px;height:18px}.ds-compact-preview .ds-unread-count{font-size:max(26px, calc(32 * var(--ds-unit)))}.ds-compact-preview .ds-unread-title{font-size:max(14px, calc(18 * var(--ds-unit)));letter-spacing:-.2px}.ds-compact-preview :is(.ds-unread-course,.ds-unread-date,.ds-all-tasks){font-size:max(13px, calc(14 * var(--ds-unit)))}.ds-compact-preview .ds-course-card-title h3{font-size:max(20px, calc(24 * var(--ds-unit)));letter-spacing:-.4px;line-height:1.4}.ds-compact-preview .ds-course-card-metadata{font-size:max(13px, calc(14 * var(--ds-unit)));letter-spacing:-.2px;margin-top:8px;line-height:1.5}.ds-compact-preview .ds-course-collection-heading h2{font-size:max(18px, calc(20 * var(--ds-unit)));font-weight:600}.ds-compact-preview :is(.ds-course-filter-heading,.ds-course-kind-options button,.ds-course-today,.ds-course-day-checkbox){font-size:max(14px, calc(16 * var(--ds-unit)))}.ds-compact-preview .ds-course-open{font-size:max(13px, calc(14 * var(--ds-unit)))}.ds-compact-preview .ds-activity-description strong{font-size:max(15px, calc(16 * var(--ds-unit)))}@media (width>=1101px){.ds-compact-preview .ds-dashboard-overview>.panel{min-height:calc(380 * var(--ds-unit))}.ds-compact-preview .ds-dashboard .ds-current-class{padding:calc(40 * var(--ds-unit))}.ds-compact-preview .ds-dashboard .ds-current-class .panel-head{margin-bottom:calc(24 * var(--ds-unit))}.ds-compact-preview .ds-dashboard .ds-course-collection{margin-top:calc(72 * var(--ds-unit))}.ds-compact-preview .ds-course-card{min-height:calc(260 * var(--ds-unit));padding:calc(28 * var(--ds-unit))}}@media (width<=700px){.ds-compact-preview .ds-header .ds-brand{font-size:20px}.ds-compact-preview .ds-preview-bar{gap:0 12px;padding-block:8px}.ds-compact-preview .ds-preview-bar a,.ds-compact-preview .ds-dashboard .ds-pill-action{min-height:44px}.ds-compact-preview .ds-current-body h3{font-size:26px}.ds-compact-preview .ds-current-body>p{font-size:16px}.ds-compact-preview .ds-course-card-title h3{font-size:22px}.ds-compact-preview .ds-unread-list li>a{grid-template-columns:24px minmax(0,1fr) auto;align-items:start;gap:4px 8px;padding-block:10px;display:grid}.ds-compact-preview .ds-unread-list .ds-activity-icon{grid-area:1/1/3}.ds-compact-preview .ds-unread-title{grid-column:2/4;font-size:16px;line-height:1.5}.ds-compact-preview .ds-unread-course{white-space:normal;overflow-wrap:anywhere;grid-column:2}.ds-compact-preview .ds-unread-date{white-space:nowrap;grid-column:3}}.ds-dashboard-reference{--dashboard-grid-height:280px}.ds-dashboard-reference .ds-overview-timetable{min-width:0;padding:calc(24 * var(--ds-unit) - 1px)}.ds-dashboard-reference .dashboard-loading .skeleton-timetable{min-height:calc(var(--dashboard-grid-height) + 24 * var(--ds-unit));min-width:0;margin:0}.ds-dashboard-reference .ds-overview-timetable .panel-head{gap:calc(8 * var(--ds-unit));margin-bottom:calc(18.6667 * var(--ds-unit));min-height:calc(42.6667 * var(--ds-unit));align-items:flex-start;padding:0}.ds-dashboard-reference .ds-overview-timetable .panel-head h2{font-size:var(--ds-font-h3);font-weight:700;line-height:var(--ds-line-height);letter-spacing:var(--ds-letter-spacing);white-space:nowrap}.ds-dashboard-reference .ds-timetable-meta{justify-items:end;gap:calc(4 * var(--ds-unit));flex-shrink:0;display:grid}.ds-dashboard-reference .ds-timetable-meta>small{color:var(--ds-color-meta);font-size:var(--ds-font-small);text-align:right;line-height:var(--ds-line-height)}.ds-dashboard-reference .ds-timetable-meta .dt-caption{font-size:var(--ds-font-detail);white-space:nowrap;margin:0}.ds-dashboard-reference .dt-timetable{--dt-grid-height:var(--dashboard-grid-height)}.ds-dashboard-reference .ds-unread-body{flex:1;min-height:0}.ds-dashboard-reference .ds-task-skeleton-row{align-items:center;gap:calc(8 * var(--ds-unit));min-height:calc(26 * var(--ds-unit));padding-block:calc(4 * var(--ds-unit));display:flex}.ds-dashboard-reference .ds-task-skeleton-row :is(i,span,small){height:var(--ds-font-detail);border-radius:calc(4 * var(--ds-unit));background:var(--ds-color-border);display:block}.ds-dashboard-reference .ds-task-skeleton-row i{width:calc(24 * var(--ds-unit));height:calc(24 * var(--ds-unit))}.ds-dashboard-reference .ds-task-skeleton-row span{width:50%}.ds-dashboard-reference .ds-task-skeleton-row:nth-child(2n) span{width:36%}.ds-dashboard-reference .ds-task-skeleton-row small{width:10%;margin-left:auto}@media (width>=1101px){.ds-dashboard-reference{--dashboard-grid-height:calc(373.333 * var(--ds-unit))}.ds-dashboard-reference .ds-campus-banner{height:calc(340 * var(--ds-unit))}.ds-dashboard-reference .ds-dashboard-overview{grid-template-columns:calc(520 * var(--ds-unit)) calc(1144 * var(--ds-unit));gap:calc(16 * var(--ds-unit))}.ds-dashboard-reference .ds-dashboard-overview>.panel{min-height:calc(520 * var(--ds-unit))}.ds-dashboard-reference .dt-grid{--dt-label-width:calc(28 * var(--ds-unit));--dt-heading-height:calc(32 * var(--ds-unit));min-width:calc(360 * var(--ds-unit));font-size:var(--ds-font-detail)}.ds-dashboard-reference .dt-grid.dt-weekend{min-width:calc(493.333 * var(--ds-unit))}.ds-dashboard-reference .dt-timetable:has(.dt-weekend){--dt-grid-height:calc(var(--dashboard-grid-height) - 15px)}.ds-dashboard-reference .dt-hours>span,.ds-dashboard-reference .dt-timetable .dt-course small,.ds-dashboard-reference .dt-now-label{font-size:var(--ds-font-detail)}.ds-dashboard-reference .dt-timetable .dt-course{padding:calc(4 * var(--ds-unit)) calc(3 * var(--ds-unit));border-radius:calc(4 * var(--ds-unit));gap:calc(2 * var(--ds-unit))}.ds-dashboard-reference .ds-course-collection{width:calc(1680 * var(--ds-unit));margin-top:calc(160 * var(--ds-unit));min-height:calc(1040 * var(--ds-unit))}}@media (width<=1100px){.ds-dashboard-reference .ds-dashboard-overview>.panel{min-height:390px}}@media (width<=850px){.ds-dashboard-reference .ds-filter-skeleton{display:none}}@media (width<=700px){.ds-dashboard-reference .ds-catalog-skeleton .ds-course-collection-heading{min-height:44px}.ds-dashboard-reference .ds-overview-timetable{padding:16px}.ds-dashboard-reference .ds-unread-list li>a{grid-template-columns:24px minmax(0,1fr) auto;align-items:start;gap:4px 8px;padding-block:10px;display:grid}.ds-dashboard-reference .ds-unread-body{min-height:420px}.ds-dashboard-reference .ds-task-skeleton-row{min-height:84px}.ds-dashboard-reference .ds-unread-list .ds-activity-icon{grid-area:1/1/3}.ds-dashboard-reference .ds-unread-title{grid-column:2/4;line-height:1.5}.ds-dashboard-reference .ds-unread-course{white-space:normal;overflow-wrap:anywhere;grid-column:2}.ds-dashboard-reference .ds-unread-date{white-space:nowrap;grid-column:3}}@media (width<=360px){.ds-dashboard-reference .ds-unread-body{min-height:448px}}@media (width>=1101px){:is(.ds-shell,.modal) :where(.ds-account,.ds-logout,.sidebar nav>a,.ds-course-filter-heading,.ds-course-today,.ds-course-day-checkbox,.ds-dashboard-term-options>label,.ds-course-kind-options>button,.ds-dashboard-term-error>button,.ds-all-tasks,.ds-course-home-task-list a,.ds-course-home-event a.ds-course-home-event-title,.ds-course-home-event>.source-link,.ds-course-header .ds-course-school-link,.week-navigation .week-nav-link,.week-page-items .ds-lecture-select,.week-page-items a.plain-title,.week-page-items a.row-action,.ds-course-home-month-controls>button,.ds-course-home-days>button,.ds-attendance-detail,.ds-global-attendance-page .attendance-table td>button,.ds-tasks-page .task-open,.ds-tasks-page .task-state-action,.ds-task-checkbox,.ds-tasks-page .segmented>button,.ds-assignments-page .segmented>button,.ds-school-calendar .calendar-month-controls>.button,.ds-school-calendar .calendar-refresh-action>button,.ds-school-calendar .calendar-detail .button,.ds-school-calendar .calendar-day-list>button,.ds-tasks-page .todo-add>button,.ds-assignments-page .assignment-file-actions>button,.ds-assignments-page .assignment-document-actions>.button,.ds-assignments-page .assignment-document-actions>button,.ds-assignments-page .assignment-document-navigation>button,.assignment-editor-actions>button,.assignment-editor-start>button,.assignment-editor>button,.assignment-operation>button,.assignment-file-picker-heading>button,.assignment-draft-files>li>button,.assignment-pledge,.actions>button,.actions>a.button),.modal>.panel-head>.icon-button{--ds-hit-height:var(--ds-hit-size);--ds-hit-width:100%;position:relative}:is(.ds-shell,.modal) :where(.ds-account,.ds-logout,.sidebar nav>a,.ds-course-filter-heading,.ds-course-today,.ds-course-day-checkbox,.ds-dashboard-term-options>label,.ds-course-kind-options>button,.ds-dashboard-term-error>button,.ds-all-tasks,.ds-course-home-task-list a,.ds-course-home-event a.ds-course-home-event-title,.ds-course-home-event>.source-link,.ds-course-header .ds-course-school-link,.week-navigation .week-nav-link,.week-page-items .ds-lecture-select,.week-page-items a.plain-title,.week-page-items a.row-action,.ds-course-home-month-controls>button,.ds-course-home-days>button,.ds-attendance-detail,.ds-global-attendance-page .attendance-table td>button,.ds-tasks-page .task-open,.ds-tasks-page .task-state-action,.ds-task-checkbox,.ds-tasks-page .segmented>button,.ds-assignments-page .segmented>button,.ds-school-calendar .calendar-month-controls>.button,.ds-school-calendar .calendar-refresh-action>button,.ds-school-calendar .calendar-detail .button,.ds-school-calendar .calendar-day-list>button,.ds-tasks-page .todo-add>button,.ds-assignments-page .assignment-file-actions>button,.ds-assignments-page .assignment-document-actions>.button,.ds-assignments-page .assignment-document-actions>button,.ds-assignments-page .assignment-document-navigation>button,.assignment-editor-actions>button,.assignment-editor-start>button,.assignment-editor>button,.assignment-operation>button,.assignment-file-picker-heading>button,.assignment-draft-files>li>button,.assignment-pledge,.actions>button,.actions>a.button):where(:not(:disabled):not([aria-disabled=true]):not(:has(input:disabled))):after,.modal>.panel-head>.icon-button:not(:disabled):after{content:"";width:max(100%, var(--ds-hit-width));height:max(100%, var(--ds-hit-height));border-radius:0;position:absolute;top:50%;left:50%;transform:translate(-50%,-50%)}.ds-shell .ds-header .ds-logout,.modal>.panel-head>.icon-button{--ds-hit-width:var(--ds-hit-size)}.ds-shell .ds-header .ds-logout:after{left:0;transform:translateY(-50%)}.ds-shell .ds-header :is(.ds-account,.ds-logout):after{top:calc(50% + max(0px, (var(--ds-hit-size) - var(--ds-header-height)) / 2))}.ds-shell .sidebar nav>a{--ds-hit-width:var(--ds-hit-size);--ds-hit-height:min(var(--ds-hit-size), calc(56 * var(--ds-unit)))}.ds-shell :is(.ds-course-day-options,.ds-dashboard-term-options,.ds-course-home-task-list){row-gap:max(calc(8 * var(--ds-unit)), calc(24px - 26 * var(--ds-unit)))}.ds-shell .ds-course-kind-options{row-gap:max(calc(12 * var(--ds-unit)), calc(24px - 26 * var(--ds-unit)))}.ds-shell :is(.ds-course-day-checkbox,.ds-dashboard-term-options>label,.ds-course-home-task-list a){--ds-hit-height:max(var(--ds-hit-dense-size), min(var(--ds-hit-size), calc(34 * var(--ds-unit))))}.ds-shell .ds-course-kind-options>button{--ds-hit-height:max(var(--ds-hit-dense-size), min(var(--ds-hit-size), calc(38 * var(--ds-unit))));width:100%}.ds-shell .ds-course-today{--ds-hit-height:max(var(--ds-hit-dense-size), min(var(--ds-hit-size), calc(42 * var(--ds-unit))))}.ds-shell .ds-course-filter-controls{row-gap:max(calc(16 * var(--ds-unit)), calc((44px - 44.8 * var(--ds-unit)) / 2 + max(0px, (24px - 26 * var(--ds-unit)) / 2)))}.ds-shell .ds-course-search{padding-block:0}.ds-shell .ds-course-collection .ds-course-search input{height:var(--ds-hit-size);min-height:var(--ds-hit-size);margin-block:calc((44.8 * var(--ds-unit) - var(--ds-hit-size)) / 2)}.ds-shell .ds-course-workspace .week-navigation .week-nav-link{--ds-hit-height:var(--ds-hit-dense-size);margin-bottom:max(calc(12 * var(--ds-unit)), calc(24px - 26 * var(--ds-unit)))}.ds-shell .week-navigation .week-nav-link:after{top:0;transform:translate(-50%)}.ds-shell .ds-course-workspace .week-nav-activities a{min-height:max(var(--ds-hit-dense-size), calc(40 * var(--ds-unit)))}.ds-shell .week-page-items .ds-lecture-select{--ds-hit-width:min(var(--ds-hit-size), calc(48 * var(--ds-unit)));--ds-hit-height:min(var(--ds-hit-size), calc(62 * var(--ds-unit)))}.ds-shell .week-page-items a.plain-title{--ds-hit-height:var(--ds-hit-dense-size)}.ds-shell .week-page-items a.row-action{--ds-hit-height:min(var(--ds-hit-size), calc(62 * var(--ds-unit)))}.ds-shell .ds-course-home-days>button{--ds-hit-width:min(var(--ds-hit-size), calc(100% + 8 * var(--ds-unit)));--ds-hit-height:min(var(--ds-hit-size), calc(56 * var(--ds-unit)))}.ds-shell .ds-course-home-month-controls>button{--ds-hit-width:100%}.ds-shell .ds-school-calendar .calendar-month-controls>.icon-button{--ds-hit-width:min(var(--ds-hit-size), calc(60 * var(--ds-unit)))}.ds-shell .ds-attendance-detail{--ds-hit-width:var(--ds-hit-dense-size);--ds-hit-height:max(var(--ds-hit-dense-size), min(var(--ds-hit-size), calc(46 * var(--ds-unit))))}.ds-shell .ds-tasks-page :is(.task-open,.task-state-action,.ds-task-checkbox){--ds-hit-height:min(var(--ds-hit-size), calc(52 * var(--ds-unit)))}.ds-shell .ds-task-checkbox{--ds-hit-width:min(var(--ds-hit-size), calc(60 * var(--ds-unit)))}.ds-shell .ds-unread-list li>a{min-height:max(var(--ds-hit-dense-size), calc(34 * var(--ds-unit)))}.ds-shell .ds-course-tabs{--ds-tab-hit-extra:max(0px, calc(45px - 48 * var(--ds-unit)));height:max(calc(48 * var(--ds-unit)), 45px);margin-top:calc(-1 * var(--ds-tab-hit-extra))}.ds-shell .ds-course-tabs a{min-width:var(--ds-hit-dense-size);min-height:var(--ds-hit-size);padding-top:var(--ds-tab-hit-extra)}.ds-shell :is(.ds-tasks-page .todo-add>input,.ds-tasks-page .toolbar select,.ds-school-calendar .calendar-course-filter select,.ds-global-attendance-page .attendance-filters select,.ds-assignments-page .assignment-editor-fields input:not([type=checkbox]),.ds-assignments-page .assignment-editor-fields select,.ds-assignments-page .assignment-history-choice select),.modal :is(.ds-task-edit-form,.schedule-form) input:not([type=checkbox]){min-height:var(--ds-hit-size)}.ds-shell .ds-course-attendance-panel .attendance-filters :is(button,select){min-height:max(var(--ds-hit-dense-size), calc(44 * var(--ds-unit)))}:is(.ds-shell,.modal) :is(.actions,.assignment-editor-actions),.ds-shell :is(.ds-tasks-page,.ds-assignments-page) .segmented{row-gap:max(8px, calc(var(--ds-hit-size) - 40 * var(--ds-unit)))}}
