.this-week{border:1px solid var(--line);background:var(--surface)}.this-week--block{border-radius:var(--ds-radius)}.this-week--strip{border-top:none;border-left:none;border-right:none;border-radius:0}.this-week-head{border-bottom:1px solid var(--line);justify-content:space-between;align-items:flex-start;gap:10px;padding:10px 12px;display:flex}.this-week-head-link{color:inherit;text-decoration:none;transition:background .15s;display:block}.this-week-head-link:hover{background:var(--paper)}.this-week-head-link:hover .this-week-all-work{color:var(--red-deep)}.this-week-title{letter-spacing:.06em;text-transform:uppercase;color:var(--kicker);font-size:11px;font-weight:700}.this-week-range{color:var(--muted);margin-top:2px;font-size:12px}.this-week-all-work{color:var(--red);flex-shrink:0;font-size:12px;font-weight:600}.this-week-all-work:hover{color:var(--red-deep)}.this-week-empty{color:var(--muted);padding:14px 12px;font-size:13px;line-height:1.5}.this-week-list{margin:0;padding:0;list-style:none}.this-week-row{border-bottom:1px solid var(--line);justify-content:space-between;align-items:center;gap:10px;padding:10px 12px;display:flex}.this-week-row-avatar{flex-shrink:0;align-self:center}.this-week-row--link{transition:background .15s}.this-week-row--link:hover{background:var(--paper)}.this-week-row-main{flex:1;min-width:0}.this-week-row-title{color:var(--ink);font-size:14px;font-weight:650;line-height:1.35}.this-week-row-when{color:var(--muted);align-items:center;gap:6px;margin-top:4px;font-size:12px;display:flex}.this-week-row-when--compact{display:block}.this-week-row-meta{color:var(--kicker);flex-wrap:wrap;gap:8px;margin-top:6px;font-size:11px;display:flex}.this-week-row-meta span{align-items:center;gap:4px;display:inline-flex}.this-week-blocker-link{color:var(--red);margin-top:6px;font-size:12px;font-weight:600;display:inline-block}.this-week-blocker-link:hover{color:var(--red-deep)}.this-week-state{letter-spacing:.04em;text-transform:uppercase;border-radius:999px;flex-shrink:0;padding:4px 8px;font-size:10px;font-weight:700}.this-week-state--open{background:var(--red-soft);color:var(--red)}.this-week-state--upcoming{background:var(--paper);color:var(--muted)}.this-week-state--locked{background:var(--paper);color:var(--kicker)}.this-week-state--overdue{color:#b91c1c;background:#fef2f2}.this-week-state--done{color:#047857;background:#ecfdf5}.this-week-more{color:var(--muted);border-bottom:1px solid var(--line);padding:10px 14px;font-size:12px;font-weight:600;display:block}.this-week-more--link{transition:background .15s,color .15s}.this-week-more--link:hover{background:var(--paper);color:var(--red)}.this-week-next{padding:10px 14px 12px}.this-week-next-toggle{color:var(--muted);align-items:center;gap:6px;font-size:12px;font-weight:600;display:inline-flex}.this-week-next-toggle:hover{color:var(--ink)}.this-week-next-hint{color:var(--kicker);margin-top:6px;font-size:12px}.this-week-skeleton{border-radius:var(--ds-radius-sm);background:var(--paper);border:1px solid var(--line);flex-direction:column;gap:8px;margin:12px 14px;padding:12px;display:flex}.this-week-skeleton-line{background:linear-gradient(90deg, color-mix(in srgb, var(--line) 70%, transparent) 25%, color-mix(in srgb, var(--line) 35%, transparent) 50%, color-mix(in srgb, var(--line) 70%, transparent) 75%);background-size:200% 100%;border-radius:4px;height:10px;animation:1.2s infinite this-week-shimmer}.this-week-skeleton-line--title{width:55%;height:12px}.this-week-skeleton-line--short{width:35%}.this-week-retry{border:1px solid var(--line);border-radius:var(--ds-radius-sm);background:var(--surface);min-height:44px;color:var(--ink);cursor:pointer;margin:0 14px 12px;padding:0 16px;font-size:13px;font-weight:600}.this-week-retry:hover{border-color:color-mix(in srgb, var(--red) 40%, var(--line));background:var(--red-soft)}.this-week-row,.this-week-row--link,.this-week-next-toggle,.this-week-all-work{min-height:44px}@media (max-width:639px){.this-week{overflow-x:hidden}.this-week-row{flex-direction:column;align-items:stretch;gap:8px}.this-week-state{align-self:flex-start}.this-week-row-title{word-break:break-word;font-size:13px}.this-week-row-when{font-size:11px}}@media (max-width:360px){.this-week-row-title{word-break:break-word}}@keyframes this-week-shimmer{0%{background-position:200% 0}to{background-position:-200% 0}}
.student-home{--sh-header-h:36px}.student-home-grid{background-image:linear-gradient(color-mix(in srgb, var(--ink) 9%, transparent) 1px, transparent 1px), linear-gradient(90deg, color-mix(in srgb, var(--ink) 9%, transparent) 1px, transparent 1px);background-size:24px 24px;-webkit-mask-image:radial-gradient(90% 80% at 50% 12%,#000 22%,#0000 82%);mask-image:radial-gradient(90% 80% at 50% 12%,#000 22%,#0000 82%)}.student-home-mark{opacity:.05}[data-theme=dark] .student-home-mark{opacity:.09}.student-home-panel{isolation:isolate;position:relative}.student-home-panel-accent{pointer-events:none;z-index:0;border-radius:inherit;position:absolute;inset:0;overflow:hidden}.student-home-panel-accent:before{content:"";background:radial-gradient(circle at center, color-mix(in srgb, var(--red) 14%, transparent) 0%, color-mix(in srgb, var(--red) 4%, transparent) 45%, transparent 72%);width:min(62%,280px);height:min(62%,280px);position:absolute;top:-28%;right:-12%}.student-home-panel-accent:after{content:"";border-top:1.5px solid color-mix(in srgb, var(--red) 22%, transparent);border-right:1.5px solid color-mix(in srgb, var(--red) 22%, transparent);border-top-right-radius:inherit;opacity:.65;width:56px;height:56px;position:absolute;top:0;right:0}[data-theme=dark] .student-home-panel-accent:before{background:radial-gradient(circle at center, color-mix(in srgb, var(--red) 20%, transparent) 0%, color-mix(in srgb, var(--red) 6%, transparent) 45%, transparent 72%)}[data-theme=dark] .student-home-panel-accent:after{border-top-color:color-mix(in srgb, var(--red) 32%, transparent);border-right-color:color-mix(in srgb, var(--red) 32%, transparent);opacity:.5}.student-home-panel-accent-bl{z-index:0;pointer-events:none;background:radial-gradient(circle at 0% 100%, color-mix(in srgb, var(--red) 12%, transparent) 0%, color-mix(in srgb, var(--red) 4%, transparent) 38%, transparent 68%);width:min(72%,320px);height:min(78%,360px);position:absolute;bottom:0;left:0}.student-home-panel-accent-bl:after{content:"";border-bottom:1.5px solid color-mix(in srgb, var(--red) 20%, transparent);border-left:1.5px solid color-mix(in srgb, var(--red) 20%, transparent);border-bottom-left-radius:inherit;opacity:.6;width:48px;height:48px;position:absolute;bottom:0;left:0}[data-theme=dark] .student-home-panel-accent-bl{background:radial-gradient(circle at 0% 100%, color-mix(in srgb, var(--red) 18%, transparent) 0%, color-mix(in srgb, var(--red) 5%, transparent) 38%, transparent 68%)}[data-theme=dark] .student-home-panel-accent-bl:after{border-bottom-color:color-mix(in srgb, var(--red) 28%, transparent);border-left-color:color-mix(in srgb, var(--red) 28%, transparent);opacity:.45}.student-home-chip{border:1px solid var(--line);border-radius:var(--ds-radius-sm);background:var(--surface);letter-spacing:.04em;text-transform:uppercase;height:22px;color:var(--kicker);white-space:nowrap;align-items:center;padding:0 8px;font-size:10px;font-weight:600;display:inline-flex}.student-home-metric{border:1px solid var(--line);border-radius:var(--ds-radius);background:color-mix(in srgb, var(--surface) 88%, transparent);min-width:0;padding:.625rem .75rem}.student-home-metrics{grid-template-columns:1fr;gap:.5rem;display:grid}@media (min-width:520px){.student-home-metrics{grid-template-columns:repeat(3,minmax(0,1fr));gap:.625rem}}.student-home-metric-label{letter-spacing:.03em;text-transform:uppercase;color:var(--kicker);align-items:center;gap:.375rem;font-size:11px;font-weight:600;display:flex}.student-home-metric-icon{shrink:0;border-radius:var(--ds-radius-sm);background:var(--red-soft);width:1.375rem;height:1.375rem;color:var(--red);justify-content:center;align-items:center;display:inline-flex}.student-home-metric-value{font-variant-numeric:tabular-nums;letter-spacing:-.02em;color:var(--ink);overflow-wrap:anywhere;margin-top:.375rem;font-size:1rem;font-weight:650;line-height:1.15}.student-home-metric-hint{color:var(--muted);overflow-wrap:anywhere;margin-top:.25rem;font-size:12px;line-height:1.35}.student-home-metric-bar{background:var(--line);width:100%;height:2px;margin-top:.5rem}@media (min-width:640px){.student-home-metric{padding:.75rem .875rem}.student-home-metric-value{font-size:1.125rem}}@media (min-width:1024px){.student-home-metric{padding:.875rem 1rem}.student-home-metric-value{font-size:1.25rem}}.student-home-notif-head{background:color-mix(in srgb, var(--red-soft) 55%, var(--surface));color:var(--ink);border-bottom:1px solid color-mix(in srgb, var(--red) 14%, var(--line))}.student-home-notif-head-meta{color:var(--muted)}[data-theme=dark] .student-home-notif-head{background:var(--landing-band);color:var(--landing-band-text);border-bottom-color:#0000}[data-theme=dark] .student-home-notif-head-meta{color:color-mix(in srgb, var(--landing-band-text) 70%, transparent)}.student-home-live{box-shadow:0 0 0 3px color-mix(in srgb, var(--red) 35%, transparent);animation:1.8s ease-in-out infinite student-home-live}@keyframes student-home-live{0%,to{opacity:1;box-shadow:0 0 0 3px color-mix(in srgb, var(--red) 28%, transparent)}50%{opacity:.55;box-shadow:0 0 0 5px color-mix(in srgb, var(--red) 12%, transparent)}}.student-home-animate{animation:.52s both student-home-rise}.student-home-animate-d1{animation:.52s 70ms both student-home-rise}.student-home-animate-d2{animation:.52s .14s both student-home-rise}.student-home-animate-d3{animation:.52s .21s both student-home-rise}.student-home-fade{animation:.28s both student-home-fade}.student-home-year-tab{transition:color .14s,background-color .14s}.student-curr-year-trigger{border:1px solid color-mix(in srgb, var(--curr-accent,var(--red)) 28%, var(--line));border-radius:var(--ds-radius);background:var(--curr-soft,var(--surface));align-items:center;gap:.625rem;max-width:min(100%,320px);padding:.4rem .7rem .4rem .45rem;transition:border-color .14s,background-color .14s;display:inline-flex}.student-curr-year-trigger:hover{border-color:color-mix(in srgb, var(--curr-accent,var(--red)) 45%, var(--line))}.student-curr-year-menu{z-index:30;border:1px solid var(--line);border-radius:var(--ds-radius);background:var(--surface);min-width:min(100vw - 2rem,300px);box-shadow:var(--ds-shadow-elevated);margin-top:.35rem;padding:.35rem;position:absolute;right:0;overflow:hidden}.student-curr-year-option{border-radius:var(--ds-radius-sm);align-items:center;gap:.625rem;width:100%;padding:.55rem;transition:background-color .12s;display:flex}.student-curr-year-option:hover,.student-curr-year-option.is-selected{background:var(--curr-soft,var(--surface-muted))}.student-curr-featured,.student-curr-sem{min-height:0}.student-home-queue-row{transition:background-color .12s}.student-home-queue-row:hover{background:color-mix(in srgb, var(--red) 6%, transparent)}@keyframes student-home-rise{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}@keyframes student-home-fade{0%{opacity:0;transform:translateY(4px)}to{opacity:1;transform:translateY(0)}}@media (prefers-reduced-motion:reduce){.student-home-animate,.student-home-animate-d1,.student-home-animate-d2,.student-home-animate-d3,.student-home-fade,.student-home-live{animation:none}}@media (max-width:1023px){.student-home-body{padding-bottom:max(1rem, env(safe-area-inset-bottom))}.student-curr.landing-panel,.student-home-panel.landing-panel,.student-home-notif-panel.landing-panel{overflow:visible}.student-curr-year-dd{width:100%}.student-curr-year-trigger{width:100%;max-width:none}.student-curr-year-menu{min-width:0;left:0;right:0}.student-home-notif-panel{max-height:none}}@media (max-width:639px){.student-curr.landing-panel,.student-curr-sem{padding-block:.75rem;padding-inline:.75rem}.student-home-chip{white-space:normal;max-width:100%;height:auto;min-height:22px;padding-block:.25rem;line-height:1.25}}@media (max-width:519px){.student-home-metrics{grid-template-columns:1fr}.student-home-metric-value{font-size:1.0625rem}}@media (max-width:360px){.student-home-body,.student-home-panel{overflow-x:hidden}}
