body.glass-home{color-scheme:dark;--ink:#e8f1ff;--muted:#9db6d6;--line:#79b5ff30;--cyan:#56e6ed;--blue:#289bff;--panel:linear-gradient(120deg,#15385a9c,#0a1c36bf 64%,#1737648c)}
body.glass-home #shell *{box-sizing:border-box}
body.glass-home{margin:0;background:#061225;color:var(--ink);font-family:'Segoe UI',Arial,sans-serif;font-size:14px;line-height:1.45}
body.glass-home #shell button,body.glass-home #shell input,body.glass-home #shell select{font:inherit}
body.glass-home #shell button,body.glass-home #shell a{touch-action:manipulation}
body.glass-home #shell button{cursor:pointer}
body.glass-home #shell button:disabled{opacity:.36;cursor:default}
body.glass-home #shell a{color:inherit}
body.glass-home #shell button:focus-visible,body.glass-home #shell a:focus-visible,body.glass-home #shell input:focus-visible{outline:2px solid #6fddff;outline-offset:4px}
body.glass-home #shell .icon-defs{position:absolute;width:0;height:0;overflow:hidden}
body.glass-home #shell .icon{width:21px;height:21px;fill:none;stroke:currentColor;stroke-width:1.5;stroke-linecap:round;stroke-linejoin:round;flex:none}
body.glass-home #shell .hidden,body.glass-home #shell [hidden]{display:none!important}
body.glass-home #shell .preview-bar{min-height:32px;padding:5px 20px;background:#10233a;display:flex;align-items:center;justify-content:space-between;gap:12px;font-size:11px;color:#b1c8e3;border-bottom:1px solid #427eb944}
body.glass-home #shell .preview-bar>span{display:flex;align-items:center;gap:7px}
body.glass-home #shell .preview-bar i{width:6px;height:6px;border-radius:50%;background:#53d7c3}
body.glass-home #shell .preview-bar>div{display:flex;gap:14px}
body.glass-home #shell .preview-bar button{border:0;background:none;color:#a8d8ff;padding:2px 0;font-size:11px}
body.glass-home #shell .preview-bar button[aria-pressed=true]{color:#79fff0;text-decoration:underline}
body.glass-home #shell{display:grid;grid-template-columns:218px minmax(0,1fr);min-height:calc(100vh - 32px);background:none}
body.glass-home #shell .sidebar{position:sticky;top:0;height:100vh;width:auto;padding:24px 12px 18px;display:flex;flex-direction:column;background:linear-gradient(160deg,#071426ed,#071a32dc);border-right:1px solid #3787d44a;overflow-y:auto;z-index:3}
body.glass-home #shell .sidebar:before{content:"";position:absolute;inset:30% 0 0;pointer-events:none;background:url('ribbon-art-v1.webp') left center/auto 100% no-repeat;opacity:.6;z-index:-1}
body.glass-home #shell .brand{display:flex;flex-direction:column;align-items:flex-start;gap:10px;margin:0 12px 30px;padding:0;border:0;background:none;text-decoration:none}
body.glass-home #shell .brand img{width:158px;max-width:100%;height:auto}
body.glass-home #shell .brand small{font-size:10px;font-weight:400;color:#97b6d9;letter-spacing:.02em}
body.glass-home #shell .nav{gap:5px;margin:0;display:flex;flex-direction:column}
body.glass-home #shell .nav button{display:flex;align-items:center;gap:14px;width:100%;text-align:left;min-height:42px;padding:10px 13px;background:transparent;border:1px solid transparent;border-radius:8px;color:#b9d0ef;font-size:13px;font-weight:400}
body.glass-home #shell .nav button:hover{background:#3f84bf20;color:white}
body.glass-home #shell .nav button.active{border-color:#3fa7ffbb;color:#fff;background:linear-gradient(100deg,#0575d057,#1249b06b);box-shadow:inset 3px 0 #4cdeff,0 0 14px #008cff20}
body.glass-home #shell .nav-section{font-size:10px;letter-spacing:.03em;font-weight:400;text-transform:none;color:#89a8cc;padding:16px 14px 5px}
body.glass-home #shell .nav-secondary{margin:0}
body.glass-home #shell .side-foot{border:0;margin-top:auto;padding:30px 10px 0}
body.glass-home #shell .profile-row{display:flex;align-items:center;gap:9px}
body.glass-home #shell .initials{width:39px;height:39px;border:1px solid #70b4ef;border-radius:50%;display:grid;place-items:center;background:#367da530;color:#e5f4ff;flex:none}
body.glass-home #shell .profile-row strong{display:block;font-size:10px;font-weight:600}
body.glass-home #shell .profile-row small{display:block;font-size:10px;color:#9fbadd;margin-top:4px}
body.glass-home #shell .profile-actions{display:flex;gap:16px;margin:14px 0}
body.glass-home #shell .profile-actions button{border:0;padding:0;background:none;color:#b2cee8;font-size:10px}
body.glass-home #shell .teacher-view-toggle{border:1px solid #5582b642;background:#17365a70;color:#bcd5ef;padding:8px;font-size:10px;width:100%;border-radius:7px}
body.glass-home #shell .brand-note{font-size:9px;line-height:1.6;text-transform:uppercase;letter-spacing:.08em;color:#7094be;margin:22px 0 0}
body.glass-home #shell .main{min-width:0;margin:0;padding:0 24px 0;position:relative;isolation:isolate;background:radial-gradient(ellipse at 80% 35%,#17467d3b,transparent 65%),#07162a}
body.glass-home #shell .main.home-railway-mode:before{display:block;content:"";position:absolute;inset:0;z-index:-1;width:auto;height:auto;background:url('ribbon-art-v1.webp') center 350px/100% 850px no-repeat;opacity:.72;mask:none;-webkit-mask:none}
body.glass-home #shell .topbar{position:relative;height:67px;padding:0;display:flex;align-items:center;justify-content:space-between;gap:20px;border:0;background:none;box-shadow:none;z-index:4}
body.glass-home #shell .global-search{display:flex;align-items:center;gap:10px;width:440px;max-width:46%;position:relative;padding:0 12px;background:#234b702c;border:1px solid #6599cd44;border-radius:8px;color:#adc6e3}
body.glass-home #shell .global-search input{min-width:0;width:100%;height:38px;padding:0;border:0;outline:none;background:transparent;color:#edf6ff;font-size:12px;box-shadow:none}
body.glass-home #shell .global-search input::placeholder{color:#9cb7d9}
body.glass-home #shell .global-search kbd{font:9px 'Segoe UI',sans-serif;border:1px solid #6495c340;border-radius:3px;padding:2px 4px;white-space:nowrap;color:#94b5db}
body.glass-home #shell .top-actions{display:flex;align-items:center;gap:15px}
body.glass-home #shell .btn,body.glass-home #shell .icon-btn{border:1px solid #72a8dc3f;border-radius:7px;background:#1b416532;color:#cbe5ff;box-shadow:inset 0 1px #ffffff06;min-height:30px;font-size:11px;font-weight:500;padding:6px 10px}
body.glass-home #shell .btn:hover,body.glass-home #shell .icon-btn:hover{background:#2679c133;border-color:#6bb9ff8c}
body.glass-home #shell .icon-btn{min-width:30px;display:inline-grid;place-items:center;line-height:1}
body.glass-home #shell .quick{padding:9px 13px;border-color:#2098eb8c;background:linear-gradient(100deg,#0567bc50,#06377830);display:flex;align-items:center;gap:15px;font-size:11px}
body.glass-home #shell .notification{position:relative}
body.glass-home #shell .notification i{position:absolute;right:6px;top:4px;width:6px;height:6px;border-radius:50%;background:#ed8193}
body.glass-home #shell .server-clock-stack{padding-left:17px;border-left:1px solid #79ade03b;text-align:right;gap:0}
body.glass-home #shell .server-clock-stack>strong{font-size:23px;line-height:1.2;font-weight:600}
body.glass-home #shell .server-clock-stack>small{font-size:10px;color:#b0c9e5}
body.glass-home #shell .mobile-menu{display:none!important}
body.glass-home #shell .hero{position:relative;min-height:198px;margin:0 -24px 18px;padding:27px 27px 18px;display:flex;align-items:center;background:linear-gradient(90deg,#07162ae6,transparent 63%),linear-gradient(0deg,#07162a,transparent 32%),url('hero-v4.webp') right center/cover no-repeat;isolation:isolate}
body.glass-home #shell .hero-copy{max-width:62%;position:relative;z-index:1}
body.glass-home #shell .hero .eyebrow{font-size:10px;font-weight:600;letter-spacing:.10em;color:#72ccff;margin-bottom:7px}
body.glass-home #shell .hero h1{font-weight:600;font-size:clamp(22px,1.8vw,30px);letter-spacing:-.035em;margin:0;line-height:1.2;color:#f1f6ff}
body.glass-home #shell .hero p{font-size:12px;margin:9px 0 18px;color:#a9c8e8}
body.glass-home #shell .date-pills{display:flex;gap:10px}
body.glass-home #shell .date-pill{display:flex;align-items:center;gap:14px;padding:10px 15px;background:linear-gradient(120deg,#12476b66,#23497850);border:1px solid #6cbaff38;border-radius:8px;backdrop-filter:blur(6px)}
body.glass-home #shell .date-pill .icon{color:#58c7ff;width:22px;height:22px}
body.glass-home #shell .date-pill strong{display:block;font-size:12px;font-weight:600;color:#dfedff}
body.glass-home #shell .date-pill small{display:block;font-size:10px;color:#aac2e0;margin-top:2px}
body.glass-home #shell .date-pill.parity strong{color:#5ce2e6;font-size:11px}
body.glass-home #shell .parity-mark{color:#55e4ed;font-size:25px;font-weight:600}
body.glass-home #shell .hero-motto{position:absolute;right:32px;top:35px;font-size:10px;letter-spacing:.15em;line-height:1.9;color:#bad9f5;text-transform:uppercase;max-width:125px;text-shadow:0 1px 6px #001228}
body.glass-home #shell .dashboard-grid{display:grid;grid-template-columns:repeat(12,minmax(0,1fr));gap:14px}
body.glass-home #shell .card{padding:16px;border-radius:10px;border:1px solid #5596d45e;background:var(--panel);box-shadow:inset 0 1px #a8d9ff0a,0 8px 25px #00000012;color:var(--ink);min-width:0}
body.glass-home #shell .card h2{font-size:15px;font-weight:600;letter-spacing:-.02em;margin:0 0 8px;color:#eff6ff}
body.glass-home #shell .muted{color:var(--muted)}
body.glass-home #shell .small{font-size:11px}
body.glass-home #shell p.small{margin:3px 0 0}
body.glass-home #shell .split{gap:10px}
body.glass-home #shell .home-week-primary{grid-column:1/-1}
body.glass-home #shell .week-title-row{margin-bottom:12px}
body.glass-home #shell .week-title-row h2{margin-bottom:3px}
body.glass-home #shell .week-nav{gap:5px}
body.glass-home #shell .weekbar{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));gap:7px;overflow:visible}
body.glass-home #shell .weekbar .day{min-width:0;min-height:238px;padding:10px 7px 7px;border:1px solid #75a8df35;background:linear-gradient(150deg,#1e45622b,#10294a30);border-radius:8px;color:#e1edff;box-shadow:none}
body.glass-home #shell .day>b{font-size:12px;font-weight:600}
body.glass-home #shell .day>.date{color:#b9cbe3;font-size:11px;margin:2px 0 10px;display:block}
body.glass-home #shell .day.today{border-color:#32abff;box-shadow:0 0 10px #219cff38,inset 0 0 18px #1274ba18;background:linear-gradient(130deg,#13588b3b,#1247831a);position:relative}
body.glass-home #shell .day.today>b:after{content:"";width:6px;height:6px;background:#29c9ff;box-shadow:0 0 7px #28b8ff8c;border-radius:50%;position:absolute;right:12px;top:15px}
body.glass-home #shell .day.weekend>b,body.glass-home #shell .day.weekend>.date{color:#d39cb8}
body.glass-home #shell .week-session{display:block;padding:8px 7px;margin:0 0 7px;border-radius:6px;border:1px solid #40c9bf57!important;border-left:3px solid #48cfc6!important;background:linear-gradient(120deg,#117b763b,#09625963)!important;color:#d9faf7!important;cursor:pointer;box-shadow:inset 0 1px #ffffff09;line-height:1.35}
body.glass-home #shell .week-session.session-type-lecture{background:linear-gradient(120deg,#245ca74d,#234c8c75)!important;border-color:#6daef777!important;border-left-color:#65acff!important;color:#e6f0ff!important}
body.glass-home #shell .week-session.session-type-lab{background:linear-gradient(120deg,#8870335e,#62511d5e)!important;border-color:#d3ac5d79!important;border-left-color:#dabc6b!important;color:#fff0c8!important}
body.glass-home #shell .week-session:hover{filter:brightness(1.15)}
body.glass-home #shell .week-session-main{font-size:11px;font-weight:600;margin-bottom:3px}
body.glass-home #shell .week-group-link{font-size:inherit;font-weight:inherit;color:inherit;background:none;border:0;padding:0;text-decoration:none}
body.glass-home #shell .week-session-course{font-size:10px;line-height:1.35;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}
body.glass-home #shell .week-session-meta{font-size:9px;color:inherit;opacity:.8;margin-top:4px}
body.glass-home #shell .week-more{font-size:10px;background:none;border:0;color:#c6e4ff;padding:1px 2px}
body.glass-home #shell .day-empty{display:flex;flex-direction:column;align-items:center;justify-content:center;min-height:150px;gap:10px;font-size:11px;color:#7e9dc4}
body.glass-home #shell .day-empty .icon{width:24px;height:24px;color:#638cb7}
body.glass-home #shell .day-empty small{font-size:10px;color:#7994b5}
body.glass-home #shell .next-card{grid-column:span 4}
body.glass-home #shell .today-card{grid-column:span 5}
body.glass-home #shell .attention-card{grid-column:span 3}
body.glass-home #shell .next-details{display:flex;gap:14px;padding:13px 10px;border:1px solid #5ca5d825;border-left:2px solid #37cfd5;border-radius:8px;background:#071f3c30;align-items:center;margin:10px 0}
body.glass-home #shell .next-time{font-size:29px;line-height:1.1;font-weight:600;color:#55e5e5;white-space:nowrap}
body.glass-home #shell .next-details h3{font-size:11px;line-height:1.45;margin:0 0 6px;color:#e2edfd;font-weight:600}
body.glass-home #shell .tags{display:flex;gap:4px;flex-wrap:wrap}
body.glass-home #shell .tags span{font-size:9px;padding:2px 5px;background:#38658d35;border-radius:4px;color:#bdcfe6;border:0}
body.glass-home #shell .next-actions{display:flex;gap:9px}
body.glass-home #shell .next-actions .btn{flex:1;font-size:11px;min-height:34px}
body.glass-home #shell .btn.primary{background:linear-gradient(105deg,#0aa7ef,#0965ee);color:#fff;border-color:#49b8ff95;box-shadow:0 0 17px #087bfd24,inset 0 1px #99e9ff48}
body.glass-home #shell .today-card .session-row{margin:0;padding:7px 0;border:0;border-bottom:1px solid #6d9bc220!important;background:transparent!important;border-radius:0;color:var(--ink)!important;display:flex;gap:12px;align-items:center;box-shadow:none}
body.glass-home #shell .session-time{font-size:15px;color:#65e1e2;min-width:45px;font-weight:600}
body.glass-home #shell .session-row .grow{min-width:0}
body.glass-home #shell .session-row .grow strong{font-size:10px;font-weight:500;line-height:1.35}
body.glass-home #shell .session-row .grow small{font-size:9px;color:#9cbad9;margin-top:3px}
body.glass-home #shell .today-card .session-type-badge{display:none}
body.glass-home #shell .session-row .btn{font-size:9px;min-height:25px;padding:3px 7px}
body.glass-home #shell .attention-empty{display:flex;gap:10px;padding:15px 0 5px}
body.glass-home #shell .attention-empty>span{color:#79d9c8;border:1px solid #4ec1a15e;background:#246e5c20;flex:none;width:30px;height:30px;display:grid;place-items:center;border-radius:50%}
body.glass-home #shell .attention-empty strong{font-size:12px;color:#dbedf6}
body.glass-home #shell .attention-empty p{font-size:11px;color:#94b0d1;line-height:1.6;margin:5px 0 0}
body.glass-home #shell .attention-item{display:flex;align-items:center;gap:10px;width:100%;padding:10px;margin-top:8px;border:1px solid #769aca20;border-radius:8px;color:#e1edff;background:#587cab0c;text-align:left}
body.glass-home #shell .attention-item .attention-dot{font-size:14px;width:26px;height:26px;border-radius:50%;background:#c48a382b;display:grid;place-items:center;color:#ffce74;flex:none}
body.glass-home #shell .attention-item strong{display:block;font-size:10px;font-weight:500}
body.glass-home #shell .attention-item small{display:block;font-size:9px;color:#a1b6ce;margin-top:3px}
body.glass-home #shell .courses-card{grid-column:span 5}
body.glass-home #shell .quote-card{grid-column:span 3;position:relative;overflow:hidden;min-height:220px;display:flex;flex-direction:column;justify-content:space-between;background:linear-gradient(180deg,#173666cc,#102a4c88 50%,#05192b44),url('hero-v4.webp') 82% 35%/auto 150%!important}
body.glass-home #shell .quote-mark{font-size:52px;line-height:.9;font-family:Georgia,serif;color:#85b6e3;opacity:.8}
body.glass-home #shell .quote-card blockquote{font-size:17px;font-weight:400;line-height:1.55;letter-spacing:-.02em;margin:5px 0 auto;color:#e9f3ff;text-shadow:0 1px 12px #04132b}
body.glass-home #shell .quote-bottom{display:flex;justify-content:space-between;align-items:end;font-size:10px;color:#c5dbef;margin-top:25px}
body.glass-home #shell .quote-bottom button{background:#102e5266;border:1px solid #8ec4f544;border-radius:50%;width:26px;height:26px;color:#cce8ff;font-size:14px}
body.glass-home #shell .compact-academic-calendar{grid-column:span 4;padding:14px}
body.glass-home #shell .calendar-title-row{align-items:flex-start;flex-wrap:wrap;margin-bottom:10px}
body.glass-home #shell .calendar-title-row h2{margin-bottom:2px}
body.glass-home #shell .calendar-title-row>div>p{display:none}
body.glass-home #shell .calendar-nav{display:flex;align-items:center;gap:5px}
body.glass-home #shell .calendar-nav strong{font-size:10px;font-weight:500;color:#cde0f7;text-transform:capitalize;white-space:nowrap}
body.glass-home #shell .calendar-nav .icon-btn{min-width:25px;min-height:25px;padding:4px}
body.glass-home #shell .compact-month-head,body.glass-home #shell .compact-month-week{display:grid;grid-template-columns:22px repeat(7,minmax(0,1fr));gap:3px}
body.glass-home #shell .compact-month-head{font-size:9px;color:#a3bfdf;margin-bottom:5px}
body.glass-home #shell .compact-month-week{margin-bottom:3px}
body.glass-home #shell .compact-week-label{display:flex;flex-direction:column;align-items:center;justify-content:center;background:transparent;border:0;color:#6f8dad;font-size:8px;padding:0}
body.glass-home #shell .compact-week-label strong{font-size:8px}
body.glass-home #shell .compact-week-label span{font-size:8px}
body.glass-home #shell .compact-month-day{position:relative;min-height:30px;border:1px solid #5e85b226;border-radius:4px;background:#23466a22;color:#e0eeff;display:flex;align-items:center;justify-content:center;flex-direction:column;padding:2px;box-shadow:none}
body.glass-home #shell .compact-month-day strong{font-size:10px;line-height:1.1;font-weight:500}
body.glass-home #shell .compact-month-day.outside{opacity:.28}
body.glass-home #shell .compact-month-day.weekend{color:#d5a6bb;background:#695a8712}
body.glass-home #shell .compact-month-day.current{border-color:#3daaff;background:linear-gradient(130deg,#087ebc99,#144cdbb3);box-shadow:0 0 8px #008cff35;color:#fff}
body.glass-home #shell .compact-month-day:hover{border-color:#7fd7ff;background:#368bcc36}
body.glass-home #shell .compact-month-day.has-sessions:after{content:"";width:3px;height:3px;border-radius:50%;background:#6de4de;position:absolute;bottom:3px}
body.glass-home #shell .compact-month-groups,body.glass-home #shell .compact-month-more,body.glass-home #shell .compact-month-empty{display:none}
body.glass-home #shell .compact-calendar-hint{font-size:9px!important;margin-top:7px!important;color:#8faed0}
body.glass-home #shell .course-stack{display:grid;gap:8px;margin-top:12px}
body.glass-home #shell .course-card{display:flex;align-items:center;gap:12px;padding:12px;border:1px solid #659ac033;background:linear-gradient(120deg,#295c7729,#163e6730);border-radius:8px;min-width:0;text-align:left;width:100%;color:#e1efff;box-shadow:none}
body.glass-home #shell .course-card>span.course-emblem{flex:none;width:38px;height:42px;display:grid;place-items:center;border-radius:6px;background:#29a0b327;color:#87dcec;border:1px solid #56a7b12b}
body.glass-home #shell .course-card .grow{min-width:0;flex:1}
body.glass-home #shell .course-card h3{font-size:11px;line-height:1.4;margin:0 0 4px;color:#e3edfa;font-weight:600}
body.glass-home #shell .course-card .code{font-size:9px;color:#7fbfea;margin-bottom:3px;font-weight:600}
body.glass-home #shell .course-card small{font-size:9px;color:#95b1d0}
body.glass-home #shell .course-card>.icon{width:16px;color:#8cb3d8}
body.glass-home #shell .workspace-footer{display:flex;justify-content:space-between;padding:17px 0;color:#6385ad;font-size:9px}
body.glass-home #shell .search-results{position:absolute;top:calc(100% + 8px);left:0;right:0;border:1px solid #477aa7;background:#0d2540;padding:6px;border-radius:9px;box-shadow:0 18px 40px #0006;z-index:20;max-height:360px;overflow:auto}
body.glass-home #shell .search-results button{display:block;width:100%;padding:10px;text-align:left;background:none;border:0;border-radius:5px;color:#daeaff;font-size:12px}
body.glass-home #shell .search-results button:hover{background:#3b78b833}
body.glass-home #shell .search-results small{display:block;color:#94b5d6;font-size:10px;margin-top:3px}
body.glass-home #shell .search-results p{padding:8px;font-size:12px}
body.glass-home #shell dialog{width:min(680px,calc(100vw - 30px));max-height:85vh;padding:22px;border:1px solid #75baff66;border-radius:14px;background:linear-gradient(140deg,#163253,#091c35);color:#e7f1ff;box-shadow:0 30px 100px #0009;overflow:auto}
body.glass-home #shell dialog::backdrop{background:#010818ad;backdrop-filter:blur(3px)}
body.glass-home #shell .dialog-head{display:flex;align-items:flex-start;justify-content:space-between;gap:20px;margin-bottom:18px}
body.glass-home #shell .dialog-head small{color:#6bc7f1;font-size:10px;letter-spacing:.08em;text-transform:uppercase}
body.glass-home #shell .dialog-head h2{font-size:23px;margin:5px 0 0;line-height:1.3}
body.glass-home #shell .dialog-note{padding:12px;border:1px solid #679dc530;border-radius:8px;color:#b5cce5;background:#22547e20;font-size:12px;line-height:1.65}
body.glass-home #shell .detail-grid{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin:15px 0}
body.glass-home #shell .detail-grid>div{padding:13px;border:1px solid #70a5cc2c;border-radius:8px}
body.glass-home #shell .detail-grid small{display:block;color:#95b3d2;font-size:10px;margin-bottom:5px}
body.glass-home #shell .detail-grid strong{font-size:13px;font-weight:500}
body.glass-home #shell .dialog-list{display:grid;gap:8px}
body.glass-home #shell .dialog-list button{border:1px solid #82b6e135;background:#3574a122;border-radius:8px;padding:12px;color:#e2f0ff;text-align:left}
body.glass-home #shell .dialog-list button small{display:block;color:#9dbbd7;font-size:11px;margin-top:4px}
body.glass-home #shell .subpage-head{margin:25px 0}
body.glass-home #shell .subpage-head h1{margin:0 0 7px;font-size:28px}
body.glass-home #shell .subpage-head p{color:#a1bedc;font-size:13px}
body.glass-home #shell .full-courses{display:grid;grid-template-columns:1fr 1fr;gap:15px}
body.glass-home #shell .full-courses .course-card{padding:22px}
body.glass-home #shell .full-courses .course-card h3{font-size:16px}
body.glass-home #shell .full-courses .course-card small{font-size:11px}
body.glass-home #shell .empty-view{padding:50px;text-align:center;color:#99b7d6}
body.glass-home #shell .group-list{display:grid;grid-template-columns:repeat(3,1fr);gap:14px}
body.glass-home #shell .group-tile{text-align:left;color:var(--ink)}
body.glass-home #shell .group-tile strong{font-size:20px;display:block}
body.glass-home #shell .group-tile small{display:block;margin-top:10px;color:#a0bfdc}
body.glass-home #shell .schedule-list{display:grid;gap:8px}
body.glass-home #shell .schedule-list .session-row{background:#0e304a88!important;color:#d9eaff!important;border:1px solid #75aed034!important}
body.glass-home #shell .schedule-list .session-row strong{font-size:13px!important}
body.glass-home #shell .schedule-list .session-row small{font-size:11px!important}
body.glass-home #shell .schedule-list .session-type-badge{background:#457d9733;color:#9bc9e7;border:0}
body.glass-home #shell .lightweight .date-pill,body.glass-home #shell .lightweight dialog::backdrop{backdrop-filter:none}
body.glass-home #shell .lightweight .card{background:linear-gradient(130deg,#102d48ed,#0c213be8);box-shadow:none}
body.glass-home #shell .lightweight .quote-card{background:linear-gradient(#163654a1,#071a2d88),url('hero-v4.webp') 82% 35%/auto 150%!important}
@media(min-width:1750px){body.glass-home #shell{grid-template-columns:242px minmax(0,1fr)}
body.glass-home #shell .main{padding:0 28px}
body.glass-home #shell .hero{min-height:230px;margin-left:-28px;margin-right:-28px;padding-left:28px}
body.glass-home #shell .card{padding:18px}
body.glass-home #shell .weekbar .day{min-height:280px;padding:12px 9px}
body.glass-home #shell .week-session-main{font-size:12px}
body.glass-home #shell .week-session-course{font-size:11px}
body.glass-home #shell .week-session-meta{font-size:10px}
body.glass-home #shell .nav button{min-height:47px;font-size:14px}
body.glass-home #shell .session-row .grow strong{font-size:12px}
body.glass-home #shell .session-row .grow small{font-size:10px}
body.glass-home #shell .compact-month-day{min-height:35px}
}
@media(max-width:1200px){body.glass-home #shell{grid-template-columns:184px minmax(0,1fr)}
body.glass-home #shell .main{padding:0 16px}
body.glass-home #shell .hero{margin-left:-16px;margin-right:-16px;padding-left:18px;min-height:200px}
body.glass-home #shell .hero-copy{max-width:75%}
body.glass-home #shell .hero-motto{display:none}
body.glass-home #shell .nav button{font-size:11px;gap:10px;padding:9px}
body.glass-home #shell .brand img{width:140px}
body.glass-home #shell .brand{margin-left:6px}
body.glass-home #shell .global-search kbd{display:none}
body.glass-home #shell .quick{font-size:10px}
body.glass-home #shell .server-clock-stack{display:none}
body.glass-home #shell .weekbar{min-width:850px}
body.glass-home #shell .home-week-primary{overflow-x:auto}
body.glass-home #shell .next-card,body.glass-home #shell .today-card,body.glass-home #shell .attention-card{grid-column:span 4}
body.glass-home #shell .next-details{flex-direction:column;align-items:flex-start}
body.glass-home #shell .today-card .session-row .btn{display:none}
body.glass-home #shell .courses-card{grid-column:span 6}
body.glass-home #shell .quote-card{grid-column:span 6}
body.glass-home #shell .compact-academic-calendar{grid-column:1/-1}
body.glass-home #shell .compact-month-day{min-height:49px}
body.glass-home #shell .compact-month-groups{display:flex;font-size:9px;gap:3px}
body.glass-home #shell .compact-month-groups span{font-size:9px}
body.glass-home #shell .compact-month-day.has-sessions:after{bottom:3px}
body.glass-home #shell .compact-month-head,body.glass-home #shell .compact-month-week{grid-template-columns:30px repeat(7,minmax(0,1fr))}
body.glass-home #shell .calendar-title-row{align-items:center}
body.glass-home #shell .quote-card{min-height:230px}
body.glass-home #shell .next-time{font-size:25px}
}
@media(max-width:800px){body.glass-home #shell .preview-bar{padding:7px 12px;font-size:10px;align-items:flex-start}
body.glass-home #shell .preview-detail{display:none}
body.glass-home #shell .preview-bar>div{gap:9px;flex-wrap:wrap;justify-content:flex-end}
body.glass-home #shell .preview-bar button{font-size:10px}
body.glass-home #shell{display:block}
body.glass-home #shell .sidebar{position:fixed;left:0;top:0;width:235px;transform:translateX(-100%);height:100dvh;z-index:30;transition:transform .18s;background:#081c33}
body.glass-home.menu-open #shell .sidebar{transform:none;box-shadow:30px 0 100px #000c}
body.glass-home #shell .main{padding:0 13px}
body.glass-home #shell .topbar{height:62px;gap:10px}
body.glass-home #shell .mobile-menu{display:inline-grid!important}
body.glass-home #shell .global-search{max-width:none;width:100%;padding:0 9px}
body.glass-home #shell .global-search input{font-size:12px}
body.glass-home #shell .top-actions{gap:6px}
body.glass-home #shell .quick{display:none}
body.glass-home #shell .hero{min-height:238px;margin:0 -13px 12px;padding:24px 16px;background-position:64% center}
body.glass-home #shell .hero-copy{max-width:100%}
body.glass-home #shell .hero h1{max-width:320px;font-size:25px;text-shadow:0 1px 15px #061327}
body.glass-home #shell .hero p{font-size:11px;max-width:255px}
body.glass-home #shell .date-pills{gap:7px}
body.glass-home #shell .date-pill{padding:8px 10px;gap:9px}
body.glass-home #shell .date-pill strong{font-size:11px}
body.glass-home #shell .date-pill small{font-size:9px}
body.glass-home #shell .date-pill .icon{width:19px}
body.glass-home #shell .parity-mark{font-size:22px}
body.glass-home #shell .dashboard-grid{gap:12px}
body.glass-home #shell .card{padding:13px}
body.glass-home #shell .home-week-primary{grid-column:1/-1}
body.glass-home #shell .weekbar{min-width:1050px;gap:8px}
body.glass-home #shell .weekbar .day{min-height:265px}
body.glass-home #shell .week-session-main{font-size:12px}
body.glass-home #shell .week-session-course{font-size:11px}
body.glass-home #shell .week-session-meta{font-size:10px}
body.glass-home #shell .week-title-row{position:sticky;left:0;align-items:center}
body.glass-home #shell .week-title-row h2{font-size:14px}
body.glass-home #shell .week-title-row p{font-size:9px}
body.glass-home #shell .week-nav .btn{font-size:9px;padding:5px}
body.glass-home #shell .next-card,body.glass-home #shell .today-card,body.glass-home #shell .attention-card,body.glass-home #shell .courses-card,body.glass-home #shell .quote-card{grid-column:1/-1}
body.glass-home #shell .next-details{flex-direction:row;align-items:center}
body.glass-home #shell .next-time{font-size:32px}
body.glass-home #shell .next-details h3{font-size:12px}
body.glass-home #shell .today-card .session-row .btn{display:block}
body.glass-home #shell .today-card .session-row .grow strong{font-size:12px}
body.glass-home #shell .today-card .session-row .grow small{font-size:10px}
body.glass-home #shell .today-card .session-row{padding:10px 0}
body.glass-home #shell .course-card h3{font-size:12px}
body.glass-home #shell .course-card small{font-size:10px}
body.glass-home #shell .quote-card{min-height:240px;background-size:cover!important;background-position:center!important}
body.glass-home #shell .quote-card blockquote{font-size:21px;max-width:270px}
body.glass-home #shell .compact-month-day{min-height:38px}
body.glass-home #shell .compact-month-groups{display:none}
body.glass-home #shell .compact-month-head,body.glass-home #shell .compact-month-week{grid-template-columns:21px repeat(7,minmax(0,1fr));gap:3px}
body.glass-home #shell .calendar-nav strong{font-size:10px}
body.glass-home #shell .compact-month-day strong{font-size:12px}
body.glass-home #shell .compact-academic-calendar{order:5}
body.glass-home #shell .quote-card{order:6}
body.glass-home #shell .workspace-footer{font-size:8px}
body.glass-home #shell .full-courses,body.glass-home #shell .group-list{grid-template-columns:1fr}
body.glass-home #shell .detail-grid{grid-template-columns:1fr}
body.glass-home #shell .schedule-list .session-row{flex-wrap:wrap}
body.glass-home #shell .dialog-head h2{font-size:20px}
body.glass-home #shell .search-results{min-width:250px;left:-45px!important}
}
@media(prefers-reduced-motion:reduce){body.glass-home #shell *{scroll-behavior:auto!important;transition:none!important}
}

body.glass-home{margin:0}
body.glass-home #shell h1,body.glass-home #shell h2,body.glass-home #shell h3,body.glass-home #shell p{margin-top:0}
body.glass-home #shell button{font-family:inherit}
body.glass-home #shell input{font-family:inherit}
body.glass-home #shell .grow{flex:1;min-width:0}
body.glass-home #shell .grow strong,body.glass-home #shell .grow small{display:block}
body.glass-home #shell .split{display:flex;align-items:center;justify-content:space-between}
body.glass-home #shell .week-nav,body.glass-home #shell .calendar-nav{display:flex;align-items:center}
body.glass-home #shell .server-clock-stack{display:flex;flex-direction:column}
body.glass-home #shell .btn{text-decoration:none}
body.glass-home #shell .session-row{display:flex;align-items:center;gap:12px;margin:8px 0;padding:12px;border-radius:8px}
body.glass-home #shell .tags{margin-top:6px}
body.glass-home #shell .badge{font-size:10px;padding:3px 6px;border-radius:4px}
body.glass-home #shell .day .date{display:block}
body.glass-home #shell .course-card .code{display:block}
body.glass-home #shell .sidebar .brand img{display:block}
body.glass-home{--panel:linear-gradient(125deg,#17497766,#0b244585 55%,#19457675)}
body.glass-home #shell .main{background:radial-gradient(ellipse at 70% 26%,#1e64ad2e,transparent 60%),#071a31}
body.glass-home #shell .main.home-railway-mode:before{background:url('ribbon-art-v1.webp') center 170px/100% 1000px no-repeat;opacity:1}
body.glass-home #shell .sidebar{background:linear-gradient(165deg,#06162bef,#0b2440ed);overflow-x:hidden}
body.glass-home #shell .sidebar:before{inset:28% 0 0;background:url('ribbon-art-v1.webp') 16% 35%/1050px 950px no-repeat;opacity:.95}
body.glass-home #shell .sidebar .nav button{font-weight:400;min-height:41px}
body.glass-home #shell .sidebar .nav button.active{box-shadow:inset 2px 0 #67e5ff,0 0 13px #008eff45;background:linear-gradient(105deg,#075caf80,#164eb8a8)}
body.glass-home #shell .hero{min-height:217px;background-image:linear-gradient(90deg,#07172bc4,transparent 47%),linear-gradient(0deg,#071a31,transparent 20%),url('hero-v2.webp');background-position:center,center,center 55%;background-size:cover;margin-bottom:12px}
body.glass-home #shell .hero-copy{max-width:47%}
body.glass-home #shell .hero h1{font-size:clamp(24px,1.8vw,32px);line-height:1.25}
body.glass-home #shell .hero .eyebrow{font-size:11px}
body.glass-home #shell .hero p{font-size:12px;line-height:1.5}
body.glass-home #shell .hero-motto{display:none}
body.glass-home #shell .card{border-color:#39a0ef80;border-radius:10px;box-shadow:inset 0 1px #b6eaff16,0 0 16px #0062a916;background:var(--panel)}
body.glass-home #shell .card h2{font-size:16px}
body.glass-home #shell .dashboard-grid{gap:13px}
body.glass-home #shell .week-title-row{margin-bottom:13px}
body.glass-home #shell .weekbar{gap:6px}
body.glass-home #shell .weekbar .day{background:linear-gradient(145deg,#1e4f7430,#0b26462e);border-color:#539cce65;padding:10px 8px 8px;min-height:252px}
body.glass-home #shell .weekbar .day>b{font-weight:500;font-size:12px;display:inline;color:#d7eaff}
body.glass-home #shell .weekbar .day>.date{display:inline;margin:0 0 0 5px;color:#c4d9ef;font-size:12px}
body.glass-home #shell .weekbar .day>.date:after{content:"";display:block;height:12px}
body.glass-home #shell .weekbar .day.today{background:linear-gradient(145deg,#12629a35,#09294e44);border:1px solid #43baff;box-shadow:0 0 5px #3abaff99,0 0 17px #168bff55,inset 0 0 22px #137acb2b}
body.glass-home #shell .weekbar .day.weekend{background:linear-gradient(130deg,#24447320,#162c5525)}
body.glass-home #shell .weekbar .day.weekend>b,body.glass-home #shell .weekbar .day.weekend>.date{color:#bbd2ee}
body.glass-home #shell .week-session{position:relative;padding:9px 7px 8px 29px;background:linear-gradient(110deg,#087b816b,#0b515b84)!important;border:1px solid #41cfda8c!important;border-left:2px solid #5ae9e0!important;color:#e0f9fb!important;box-shadow:inset 0 1px #b5ffff13,0 3px 7px #001b3020;border-radius:6px;min-height:77px;margin-bottom:7px}
body.glass-home #shell .week-session>.lesson-icon{position:absolute;left:7px;top:11px;width:15px;height:18px;color:#81ecee;filter:drop-shadow(0 0 3px #2eccdf50)}
body.glass-home #shell .week-session.session-type-lecture{background:linear-gradient(110deg,#1456a991,#16417891)!important;border-color:#58aaffb3!important;border-left-color:#6abbff!important;color:#e5f3ff!important}
body.glass-home #shell .week-session.session-type-lecture>.lesson-icon{color:#87c9ff}
body.glass-home #shell .week-session.session-type-lab{background:linear-gradient(110deg,#8c752f78,#6953268c)!important;border-color:#d9b350a8!important;border-left-color:#efc961!important;color:#fff0d2!important}
body.glass-home #shell .week-session.session-type-lab>.lesson-icon{color:#eed995}
body.glass-home #shell .week-session-main{font-size:11px;font-weight:600;line-height:1.35;white-space:normal}
body.glass-home #shell .week-session-course{font-size:10px;line-height:1.35;-webkit-line-clamp:3;font-weight:400}
body.glass-home #shell .week-session-meta{font-size:9px;opacity:.85}
body.glass-home #shell .week-group-link:hover{text-decoration:underline}
body.glass-home #shell .day-empty{min-height:174px;gap:0;text-align:center;justify-content:center;padding:10px 2px}
body.glass-home #shell .day-empty .empty-icon{width:35px;height:35px;margin:0 0 14px;color:#72b9f3;stroke-width:1.25;filter:drop-shadow(0 0 5px #0875b73a)}
body.glass-home #shell .day-empty>span{font-size:12px;line-height:1.4;color:#c1e0fa}
body.glass-home #shell .day-empty>small{font-size:11px;line-height:1.5;color:#84b0d7;margin-top:7px;max-width:120px}
body.glass-home #shell .day-empty.rest .empty-icon{width:37px;height:40px}
body.glass-home #shell .next-card{grid-column:span 4}
body.glass-home #shell .today-card{grid-column:span 4}
body.glass-home #shell .attention-card{grid-column:span 4}
body.glass-home #shell .next-time{font-size:36px}
body.glass-home #shell .next-details{padding:13px 10px}
body.glass-home #shell .next-details h3{font-size:12px}
body.glass-home #shell .today-card .session-row{gap:9px;padding:7px 0}
body.glass-home #shell .today-card .session-time{font-size:15px;min-width:42px}
body.glass-home #shell .today-card .session-row .grow strong{font-size:10px}
body.glass-home #shell .today-card .session-row .grow small{font-size:9px}
body.glass-home #shell .today-card .session-row .btn{font-size:9px}
body.glass-home #shell .attention-empty{padding-top:20px}
body.glass-home #shell .attention-empty p{max-width:250px}
body.glass-home #shell .courses-card{grid-column:span 4}
body.glass-home #shell .quote-card{grid-column:span 3;background:linear-gradient(180deg,#214f8499,#163b65a1 50%,#08224433),url('hero-v2.webp') 82% top/auto 175%!important}
body.glass-home #shell .compact-academic-calendar{grid-column:span 5}
body.glass-home #shell .calendar-title-row{flex-wrap:nowrap;gap:10px}
body.glass-home #shell .calendar-title-row h2{font-size:15px}
body.glass-home #shell .calendar-nav{gap:5px}
body.glass-home #shell .calendar-nav strong{font-size:11px}
body.glass-home #shell .calendar-nav .calendar-today{font-size:9px;padding:3px 6px;min-height:25px}
body.glass-home #shell .compact-month-head,body.glass-home #shell .compact-month-week{grid-template-columns:25px repeat(7,minmax(0,1fr));gap:2px}
body.glass-home #shell .compact-month-head{padding:4px 0 7px;font-size:10px}
body.glass-home #shell .compact-month-day{min-height:32px;background:#12365324;border-color:#528fc02a;border-radius:3px;color:#dcecff}
body.glass-home #shell .compact-month-day strong{display:grid;place-items:center;width:25px;height:25px;font-size:11px;border-radius:50%;position:relative;z-index:1}
body.glass-home #shell .compact-month-day.current{background:linear-gradient(130deg,#1265c467,#1a3d9f5c);border-color:#339aff88;box-shadow:0 0 14px #098bff24}
body.glass-home #shell .compact-month-day.current strong{background:radial-gradient(circle,#328aff,#0647e2);border:1px solid #b8f3ff;box-shadow:0 0 3px 1px #71caff,0 0 12px 3px #078cffbd,inset 0 0 7px #64b9ff;color:#fff;font-weight:600}
body.glass-home #shell .compact-month-day.has-sessions:after{bottom:2px;width:3px;height:3px}
body.glass-home #shell .compact-month-groups{display:none}
body.glass-home #shell .compact-month-day.current:after{display:none}
body.glass-home #shell .compact-calendar-hint{font-size:9px}
body.glass-home #shell .course-card{background:linear-gradient(120deg,#22639433,#2448652e);border-color:#69a9d347}
body.glass-home #shell .quote-card blockquote{font-family:'Segoe UI',Arial,sans-serif;font-size:18px;line-height:1.6}
body.glass-home #shell .quote-card{min-height:253px;background-size:auto,auto 350%!important;background-position:center,76% top!important}
body.glass-home.lightweight #shell .card{box-shadow:none}
@media(min-width:801px){body.glass-home #shell .hero{min-height:190px;padding-top:17px;padding-bottom:15px}
body.glass-home #shell .home-week-primary{padding:13px}
body.glass-home #shell .week-title-row{margin-bottom:9px}
body.glass-home #shell .weekbar .day{padding:9px 7px 6px;min-height:260px}
body.glass-home #shell .week-session{padding:7px 6px 6px 27px;min-height:67px;margin-bottom:6px}
body.glass-home #shell .week-session-course{-webkit-line-clamp:2;font-size:10px}
body.glass-home #shell .week-session-main{margin-bottom:2px;font-size:10px;line-height:1.3}
body.glass-home #shell .week-session-meta{margin-top:3px;font-size:9px}
body.glass-home #shell .week-session>.lesson-icon{left:6px;top:8px;width:14px}
body.glass-home #shell .next-card,body.glass-home #shell .today-card,body.glass-home #shell .attention-card{padding:13px}
body.glass-home #shell .today-card .session-row{padding:6px 0}
body.glass-home #shell .quote-card{min-height:235px}
body.glass-home #shell .compact-month-day{min-height:29px}
}
@media(min-width:1750px){body.glass-home #shell .hero{min-height:210px}
body.glass-home #shell .weekbar .day{min-height:265px}
body.glass-home #shell .week-session-main{font-size:11px}
body.glass-home #shell .week-session-course{font-size:10px}
body.glass-home #shell .week-session-meta{font-size:9px}
body.glass-home #shell .compact-month-day{min-height:32px}
}
@media(max-width:1200px){body.glass-home #shell .weekbar{min-width:870px}
body.glass-home #shell .hero-copy{max-width:60%}
body.glass-home #shell .hero{background-position:center,center,64% center}
body.glass-home #shell .next-card{grid-column:span 5}
body.glass-home #shell .today-card{grid-column:span 7}
body.glass-home #shell .attention-card{grid-column:1/-1}
body.glass-home #shell .attention-empty{padding-top:10px!important}
body.glass-home #shell .attention-empty p{max-width:none}
body.glass-home #shell .courses-card{grid-column:span 6}
body.glass-home #shell .quote-card{grid-column:span 6}
body.glass-home #shell .compact-academic-calendar{grid-column:1/-1}
body.glass-home #shell .compact-month-day{min-height:40px}
body.glass-home #shell .next-details{flex-direction:row}
body.glass-home #shell .calendar-title-row{flex-wrap:wrap}
}
@media(max-width:800px){body.glass-home #shell .hero{min-height:260px;background-position:center,center,61% center}
body.glass-home #shell .hero-copy{max-width:100%;text-shadow:0 1px 12px #001125}
body.glass-home #shell .hero h1{font-size:25px}
body.glass-home #shell .hero:before{content:"";position:absolute;inset:0;background:linear-gradient(90deg,#05172bcc,transparent 90%);z-index:-1}
body.glass-home #shell .weekbar{min-width:1080px}
body.glass-home #shell .week-session-course{font-size:11px}
body.glass-home #shell .weekbar .day{min-height:277px}
body.glass-home #shell .next-card,body.glass-home #shell .today-card,body.glass-home #shell .attention-card,body.glass-home #shell .courses-card,body.glass-home #shell .quote-card,body.glass-home #shell .compact-academic-calendar{grid-column:1/-1}
body.glass-home #shell .calendar-nav{gap:3px}
body.glass-home #shell .calendar-nav strong{font-size:10px}
body.glass-home #shell .calendar-title-row{flex-wrap:wrap}
body.glass-home #shell .compact-month-day{min-height:37px}
body.glass-home #shell .quote-card{min-height:260px}
body.glass-home #shell .quote-card blockquote{font-size:22px}
body.glass-home #shell .today-card .session-row .grow strong{font-size:11px}
}
body.glass-home #shell .main{--scene-height:clamp(300px,18vw,440px)}
body.glass-home #shell .main.home-railway-mode:after{content:"";position:absolute;inset:0 0 auto;height:var(--scene-height);z-index:-1;pointer-events:none;background-image:linear-gradient(90deg,#07172bc9,transparent 48%),linear-gradient(0deg,#071a31 0%,#071a3100 17%),url('hero-v2.webp');background-repeat:no-repeat;background-size:100% 100%,100% 100%,100% auto;background-position:center,center,center 55%}
body.glass-home #shell .hero{min-height:calc(var(--scene-height) - 67px);background:none;margin-bottom:12px;padding-top:25px;padding-bottom:25px}
body.glass-home #shell .hero:before{display:none}
body.glass-home #shell .topbar{background:linear-gradient(90deg,#07192b70,#09244135);margin:0 -24px;padding:0 24px;border-bottom:1px solid #9bd0ff10}
body.glass-home #shell .global-search{background:#09203d80;backdrop-filter:blur(5px)}
body.glass-home #shell .top-actions{padding:5px 9px;background:#08223a40;border-radius:8px}
@media(min-width:1750px){body.glass-home #shell .topbar{margin:0 -28px;padding:0 28px}
}
@media(max-width:1200px){body.glass-home #shell .topbar{margin:0 -16px;padding:0 16px}
body.glass-home #shell .main{--scene-height:300px}
}
@media(max-width:800px){body.glass-home #shell .main{--scene-height:345px}
body.glass-home #shell .topbar{margin:0 -13px;padding:0 13px;background:#071a3160}
body.glass-home #shell .main.home-railway-mode:after{background-size:100% 100%,100% 100%,auto 100%;background-position:center,center,61% center}
body.glass-home #shell .hero{min-height:283px;background:linear-gradient(90deg,#061a3290,transparent);padding-top:20px;padding-bottom:20px}
body.glass-home #shell .top-actions{padding:0;background:none}
body.glass-home #shell .global-search{backdrop-filter:none}
}

body.glass-home #shell .main{--scene-height:246px;padding:0 18px}
body.glass-home #shell .main.home-railway-mode:after{background-image:linear-gradient(90deg,#06172a70,transparent 43%),linear-gradient(0deg,#071a31,transparent 12%),url('hero-v4.webp');background-size:100% 100%,100% 100%,100% auto;background-position:center,center,center 55%}
body.glass-home #shell{grid-template-columns:218px minmax(0,1fr)}
body.glass-home #shell .topbar{height:58px;margin:0 -18px;padding:0 18px;background:linear-gradient(90deg,#061c34cc,#08223ac4);border-bottom:1px solid #75b5e322}
body.glass-home #shell .hero{min-height:188px;height:auto;margin:0 -18px 10px;padding:20px 22px 19px;align-items:center}
body.glass-home #shell .hero-copy{max-width:48%}
body.glass-home #shell .hero h1{font-size:27px;line-height:1.15;margin:0;letter-spacing:-.02em}
body.glass-home #shell .hero h1:before{content:'Доброе утро,';display:block}
body.glass-home #shell .hero .eyebrow{display:none}
body.glass-home #shell .hero p{font-size:12px;line-height:1.45;margin:8px 0 17px;color:#b6d4ee}
body.glass-home #shell .date-pill{padding:9px 13px;gap:12px}
body.glass-home #shell .date-pill strong{font-size:12px}
body.glass-home #shell .date-pill small{font-size:10px;color:#bad1e9}
body.glass-home #shell .global-search{width:465px}
body.glass-home #shell .global-search input{font-size:12px;height:36px}
body.glass-home #shell .quick{font-size:12px}
body.glass-home #shell .top-actions{gap:12px}
body.glass-home #shell .server-clock-stack>strong{font-size:22px}
body.glass-home #shell .server-clock-stack>small{font-size:11px}
body.glass-home #shell .nav button{font-size:13px!important;min-height:41px!important;gap:13px}
body.glass-home #shell .brand{margin-bottom:24px}
body.glass-home #shell .sidebar{padding-top:24px}
body.glass-home #shell .brand img{width:170px}
body.glass-home #shell .nav-section{padding-top:15px}
body.glass-home #shell .side-foot{padding-top:20px}
body.glass-home #shell .main.home-railway-mode:before{background-position:center 140px;background-size:100% 850px;opacity:.9}
body.glass-home #shell .dashboard-grid{gap:11px}
body.glass-home #shell .card{padding:13px;background:linear-gradient(135deg,#194d7980,#0a284779 60%,#17447573);border-color:#4dabe087}
body.glass-home #shell .card h2{font-size:16px;margin-bottom:5px}
body.glass-home #shell .small{font-size:11px}
body.glass-home #shell .week-title-row{margin-bottom:9px}
body.glass-home #shell .week-title-row p{font-size:11px;line-height:1.4}
body.glass-home #shell .weekbar{min-width:0;gap:6px}
body.glass-home #shell .weekbar .day{min-height:244px;padding:8px 7px 7px}
body.glass-home #shell .weekbar .day>b,body.glass-home #shell .weekbar .day>.date{font-size:12px}
body.glass-home #shell .weekbar .day>.date:after{height:9px}
body.glass-home #shell .week-session{padding:6px;min-height:0;margin-bottom:5px}
body.glass-home #shell .week-session>.lesson-icon{top:6px;left:6px;width:12px;height:14px}
body.glass-home #shell .week-session-main{padding-left:17px;font-size:10.5px;line-height:1.25;margin-bottom:2px}
body.glass-home #shell .week-group-link{display:inline;font-size:inherit;text-align:left}
body.glass-home #shell .week-session-course{display:block;overflow:visible;-webkit-line-clamp:unset;line-clamp:unset;max-height:none;white-space:normal;overflow-wrap:break-word;font-size:10px;line-height:1.25;font-weight:400;color:inherit;letter-spacing:-.01em}
body.glass-home #shell .week-session-meta{font-size:9px;line-height:1.3;margin-top:2px;opacity:.95;white-space:normal;overflow:visible}
body.glass-home #shell .week-more{font-size:10px;padding:3px 0}
body.glass-home #shell .day-empty{min-height:168px}
body.glass-home #shell .day-empty>span{font-size:12px}
body.glass-home #shell .day-empty>small{font-size:11px;color:#9abddb}
body.glass-home #shell .day-empty .empty-icon{margin-bottom:11px}
body.glass-home #shell .next-card,body.glass-home #shell .today-card,body.glass-home #shell .attention-card{grid-column:span 4;padding:13px}
body.glass-home #shell .next-card>.split{align-items:baseline;flex-wrap:wrap}
body.glass-home #shell .next-card .split>.small{font-size:10px}
body.glass-home #shell .next-details{padding:10px;gap:12px;margin:10px 0}
body.glass-home #shell .next-time{font-size:33px}
body.glass-home #shell .next-details h3{font-size:12px;line-height:1.35}
body.glass-home #shell .tags span{font-size:9px}
body.glass-home #shell .today-card .session-row{padding:6px 0;gap:9px}
body.glass-home #shell .today-card .session-row .grow strong{font-size:11px;line-height:1.3;font-weight:500}
body.glass-home #shell .today-card .session-row .grow small{font-size:10px;line-height:1.3;margin-top:2px}
body.glass-home #shell .today-card .session-time{font-size:15px}
body.glass-home #shell .today-card .session-row .btn{font-size:10px;padding:4px 6px}
body.glass-home #shell .today-card>.split>.small{font-size:10px}
body.glass-home #shell .attention-item{padding:9px;margin-top:7px}
body.glass-home #shell .attention-item strong{font-size:11px}
body.glass-home #shell .attention-item small{font-size:10px}
body.glass-home #shell .attention-empty strong{font-size:13px}
body.glass-home #shell .attention-empty p{font-size:12px;line-height:1.5}
body.glass-home #shell .attention-empty{padding-top:12px}
body.glass-home #shell .courses-card{grid-column:span 4}
body.glass-home #shell .quote-card{grid-column:span 3;min-height:215px}
body.glass-home #shell .compact-academic-calendar{grid-column:span 5}
body.glass-home #shell .course-stack{gap:7px;margin-top:10px}
body.glass-home #shell .course-card{padding:10px;gap:10px}
body.glass-home #shell .course-card h3{font-size:12px;line-height:1.35;display:block;overflow:visible}
body.glass-home #shell .course-card small{font-size:10px;line-height:1.4}
body.glass-home #shell .course-emblem{width:40px;height:48px}
body.glass-home #shell .course-card .code{font-size:9px}
body.glass-home #shell .quote-card blockquote{font-size:18px;line-height:1.5}
body.glass-home #shell .quote-bottom{font-size:10px;margin-top:16px}
body.glass-home #shell .quote-mark{font-size:43px}
body.glass-home #shell .calendar-nav strong{font-size:11px}
body.glass-home #shell .compact-month-day{min-height:28px}
body.glass-home #shell .compact-month-day strong{font-size:11px}
body.glass-home #shell .calendar-title-row{margin-bottom:6px}
body.glass-home #shell .compact-month-head{font-size:10px;padding-bottom:4px}
body.glass-home #shell .compact-calendar-hint{font-size:10px!important}
body.glass-home #shell .workspace-footer{padding:12px 0;font-size:9px}
body.glass-home #shell .course-card,body.glass-home #shell .next-details,body.glass-home #shell .today-card{overflow-wrap:break-word}
@media(min-width:1900px){body.glass-home{--display-scale:1.1}
body.glass-home #shell{zoom:var(--display-scale)}
body.glass-home #shell .sidebar{height:calc(100vh / var(--display-scale));top:0}
}
@media(min-width:2300px){body.glass-home{--display-scale:1.25}
}
@media(max-width:1200px){body.glass-home #shell{grid-template-columns:184px minmax(0,1fr)}
body.glass-home #shell .main{--scene-height:246px}
body.glass-home #shell .hero-copy{max-width:60%}
body.glass-home #shell .hero h1{font-size:25px}
body.glass-home #shell .weekbar{min-width:970px}
body.glass-home #shell .home-week-primary{overflow-x:auto}
body.glass-home #shell .next-card{grid-column:span 5}
body.glass-home #shell .today-card{grid-column:span 7}
body.glass-home #shell .attention-card{grid-column:1/-1}
body.glass-home #shell .courses-card{grid-column:span 6}
body.glass-home #shell .quote-card{grid-column:span 6}
body.glass-home #shell .compact-academic-calendar{grid-column:1/-1}
body.glass-home #shell .compact-month-day{min-height:36px}
body.glass-home #shell .server-clock-stack{display:none}
body.glass-home #shell .quick{font-size:11px}
}
@media(max-width:800px){body.glass-home #shell{display:block}
body.glass-home #shell .main{padding:0 13px;--scene-height:320px}
body.glass-home #shell .main.home-railway-mode:after{background-size:100% 100%,100% 100%,auto 100%;background-position:center,center,57% center}
body.glass-home #shell .topbar{margin:0 -13px;padding:0 13px;height:58px}
body.glass-home #shell .hero{min-height:262px;margin:0 -13px 11px;padding:19px 16px;background:linear-gradient(90deg,#061b33a6,transparent)}
body.glass-home #shell .hero h1{font-size:25px}
body.glass-home #shell .hero-copy{max-width:100%}
body.glass-home #shell .hero p{font-size:12px;max-width:300px}
body.glass-home #shell .date-pill{padding:9px;gap:9px}
body.glass-home #shell .date-pill strong{font-size:11px}
body.glass-home #shell .weekbar{min-width:1100px}
body.glass-home #shell .week-session-course{font-size:12px}
body.glass-home #shell .week-session-meta{font-size:10px}
body.glass-home #shell .next-card,body.glass-home #shell .today-card,body.glass-home #shell .attention-card,body.glass-home #shell .courses-card,body.glass-home #shell .quote-card,body.glass-home #shell .compact-academic-calendar{grid-column:1/-1}
body.glass-home #shell .quote-card{min-height:240px}
body.glass-home #shell .quote-card blockquote{font-size:21px}
body.glass-home #shell .today-card .session-row .grow strong{font-size:11px}
body.glass-home #shell .global-search{width:100%}
body.glass-home #shell .sidebar{height:100dvh}
body.glass-home #shell .compact-month-day{min-height:35px}
}
@media(max-width:800px){body.glass-home #shell .hero{background:linear-gradient(90deg,#061b33db,#061b338c 75%,#061b3360)}
body.glass-home #shell .hero p{color:#d2e6f8}
}

body.glass-home{background:#030b19;--muted:#a1b9d9;--panel:linear-gradient(125deg,#10264970,#0613268c 62%,#0e244b69)}
body.glass-home #shell{--sidebar-width:218px;position:relative;isolation:isolate;background:radial-gradient(ellipse at 77% 29%,#10265470,transparent 63%),#030e20}
body.glass-home #shell:before{display:none}
body.glass-home #shell .main{background:transparent}
body.glass-home #shell .sidebar:before{display:none}
body.glass-home #shell .main.home-railway-mode:before{display:block;content:"";position:absolute;inset:var(--scene-height) 0 0 calc(-1 * var(--sidebar-width));z-index:-1;pointer-events:none;background-image:linear-gradient(180deg,#030e20,transparent 6%,transparent 82%,#030e20),url('ribbon-art-v1.webp');background-position:center,center top;background-size:100% 100%,cover;background-repeat:no-repeat;opacity:.78}
body.glass-home #shell .sidebar-lights{display:none}
body.glass-home #shell .sidebar{background:linear-gradient(160deg,#102d4cf2,#071a30f5 60%,#0d2543f2);border-right-color:#7ecafa7a;box-shadow:inset -1px 0 #c4ecff30,inset 0 1px #b3dbfa20,8px 0 24px #000b242e}
@supports ((backdrop-filter:blur(1px)) or (-webkit-backdrop-filter:blur(1px))){body.glass-home #shell .sidebar{-webkit-backdrop-filter:blur(8px) saturate(115%);backdrop-filter:blur(8px) saturate(115%);background:linear-gradient(115deg,#719dc51a,transparent 45%),linear-gradient(180deg,#0a234b9e,#06182c80 55%,#0a203b99)}
}
body.glass-home #shell .main.home-railway-mode:after{left:calc(-1 * var(--sidebar-width));background-image:linear-gradient(90deg,#031227b8,transparent 48%),linear-gradient(0deg,#030e20,transparent 18%),url('hero-v4.webp')}
body.glass-home #shell .topbar{background:linear-gradient(90deg,#05152acb,#071c38bb)}
body.glass-home #shell .card{background:var(--panel);border-color:#377fd46b;box-shadow:inset 0 1px #94c7ff12,0 6px 20px #00040d38}
body.glass-home #shell .dashboard-grid>.card:not(.quote-card){position:relative;border-radius:12px;border:1px solid #5b99d886;border-top-color:#8fc8fa94;border-left-color:#72b5ee87;background:linear-gradient(125deg,#173659ed,#0a1e38f2 65%,#132e50ee);box-shadow:inset 0 1px 0 #e1f4ff1a,inset 0 -1px 0 #06162b9c,0 9px 22px #000b2445,0 0 1px #94d9ff55}
@supports ((backdrop-filter:blur(1px)) or (-webkit-backdrop-filter:blur(1px))){body.glass-home #shell .dashboard-grid>.card:not(.quote-card){-webkit-backdrop-filter:blur(8px) saturate(115%);backdrop-filter:blur(8px) saturate(115%);background:linear-gradient(125deg,#638ec11c,transparent 38%),linear-gradient(125deg,#12365a80,#091d3680 63%,#112d5388)}
}
body.glass-home #shell .home-week-primary{background:linear-gradient(125deg,#0d234865,#06122680 57%,#11254b62)}
body.glass-home #shell .weekbar .day{background:linear-gradient(135deg,#122b4930,#07142630);border-color:#5184c44f;position:relative}
body.glass-home #shell .weekbar .day.weekend{background:linear-gradient(135deg,#1729494a,#101c382b)}
body.glass-home #shell .week-day-heading{display:flex;justify-content:center;align-items:baseline;gap:4px;margin:-8px -7px 9px;padding:9px 4px 8px;border-bottom:1px solid #467bbb26;color:#cee4ff;white-space:nowrap;line-height:1.4}
body.glass-home #shell .week-day-heading b{font-size:11px;font-weight:500}
body.glass-home #shell .week-day-heading .date{font-size:11px;margin:0;color:inherit}
body.glass-home #shell .weekbar .day.weekend .week-day-heading{color:#d5a8c6}
body.glass-home #shell .weekbar .day.today{border-color:#74dfff;background:linear-gradient(180deg,#07427178,#09285364 25%,#05172b7a);box-shadow:0 0 3px 1px #54cfff,0 0 19px #088dff70,inset 0 0 20px #0e8bff26}
body.glass-home #shell .day.today .week-day-heading{color:#b6f4ff;background:linear-gradient(180deg,#1688ce42,#0b427422);border-bottom-color:#41beff6e;text-shadow:0 0 9px #18b8ff80}
body.glass-home #shell .day.today .week-day-heading b,body.glass-home #shell .day.today .week-day-heading .date{font-weight:600;font-size:12px}
body.glass-home #shell .week-today-tag{position:absolute;right:8px;top:-10px;padding:1px 6px;border:1px solid #70dfff9e;border-radius:4px;background:#093c69;color:#caf7ff;font-size:8px;line-height:14px;letter-spacing:.06em;text-transform:uppercase;box-shadow:0 0 9px #149eff45}
body.glass-home #shell .date-pill.today-date{border-color:#55bfff9e;background:linear-gradient(120deg,#074271c4,#0f2b57b8);box-shadow:inset 0 1px #98e5ff1a,0 0 17px #008cff26}
body.glass-home #shell .today-date .date-label{display:block;color:#8deaff;font-size:10px;font-weight:600;letter-spacing:.04em;margin-bottom:3px}
body.glass-home #shell .date-pill.today-date strong{font-size:13px;color:#f5fbff}
body.glass-home #shell .date-pill.today-date .icon{color:#89ebff;filter:drop-shadow(0 0 4px #198cff88)}
body.glass-home #shell .date-pill.parity{background:linear-gradient(120deg,#113052b3,#172e59a6);border-color:#567cbd70}
body.glass-home #shell .course-card,body.glass-home #shell .next-details{background:linear-gradient(130deg,#122a478c,#091c3573);border-color:#5a8db143}
body.glass-home #shell .today-card .session-row{border-bottom-color:#578ab027}
body.glass-home #shell .quote-card{background-image:linear-gradient(180deg,#102f60b3,#122d5387 48%,#06142855),url('hero-v2.webp')!important}
body.glass-home #shell .compact-month-day{background:#10274a40;border-color:#5886bd30;color:#daeaff}
body.glass-home #shell .compact-month-day.current{background:linear-gradient(130deg,#1053b488,#11379b8a);border-color:#5cbcff;box-shadow:0 0 12px #087cff55}
body.glass-home #shell .compact-month-day.current strong{width:27px;height:27px;border-color:#d6f8ff;box-shadow:0 0 3px 1px #a4eaff,0 0 13px 3px #148affd4,inset 0 0 7px #73c6ff;font-size:12px}
body.glass-home #shell .compact-month-day.current .compact-month-empty{display:none}
body.glass-home #shell .week-nav .btn:disabled{opacity:.75;color:#c3dfff;border-color:#436b9766}
body.glass-home.lightweight #shell:before{opacity:.65}
body.glass-home.lightweight #shell .weekbar .day.today{box-shadow:0 0 0 1px #63d6ff}
body.glass-home.lightweight #shell .card{box-shadow:none}
@media(max-width:1200px){body.glass-home #shell{--sidebar-width:184px}
body.glass-home #shell .week-day-heading b,body.glass-home #shell .week-day-heading .date{font-size:10px}
body.glass-home #shell .day.today .week-day-heading b,body.glass-home #shell .day.today .week-day-heading .date{font-size:11px}
}
@media(max-width:800px){body.glass-home #shell{--sidebar-width:0px}
body.glass-home #shell .today-date .date-label{font-size:9px}
body.glass-home #shell .date-pill.today-date strong{font-size:11px}
body.glass-home #shell .week-day-heading b,body.glass-home #shell .week-day-heading .date{font-size:11px}
body.glass-home #shell .hero{background:linear-gradient(90deg,#031328e6,#03132898 75%,#0313286b)}
}
body.glass-home #shell .sidebar .nav{gap:5px}
body.glass-home #shell .sidebar .nav button{position:relative;isolation:isolate;overflow:hidden;border-radius:8px;color:#bcdcff;transition:border-color .18s ease,background-color .18s ease,color .18s ease,box-shadow .18s ease}
body.glass-home #shell .sidebar .nav button>.icon{color:#a5d4ff;stroke-width:1.6;transition:filter .18s ease,color .18s ease}
body.glass-home #shell .sidebar .nav button.active{color:#fff;font-weight:600;border-color:#56caff;background:linear-gradient(105deg,#006dc4c4,#073b8fe6 47%,#0c55cbd9);box-shadow:inset 2px 0 #a5faff,inset 0 1px #89dcff50,inset 0 -1px #008dff60,0 0 4px #159bff99,0 0 21px #0079ff60}
body.glass-home #shell .sidebar .nav button.active>.icon{color:#e4fcff;filter:drop-shadow(0 0 3px #69efff) drop-shadow(0 0 7px #008cff)}
body.glass-home #shell .sidebar .nav button.active:before{content:"";position:absolute;inset:0;z-index:-1;pointer-events:none;background:radial-gradient(ellipse at 4% 50%,#4cdfff42,transparent 47%),linear-gradient(90deg,transparent 52%,#2b83ff30)}
body.glass-home #shell .sidebar .nav button.active:after{content:"";position:absolute;inset:-50% 0;z-index:-1;pointer-events:none;background:linear-gradient(110deg,transparent 32%,#9defff35 48%,transparent 64%);transform:translateX(140%);animation:nav-glass-reveal .75s ease-out both}
body.glass-home #shell .sidebar .nav button:focus-visible{outline:2px solid #b0f8ff;outline-offset:3px;box-shadow:0 0 18px #258dff66}
body.glass-home #shell .sidebar .nav-section{color:#8cb5df}
body.glass-home #shell .sidebar:after{content:"";position:absolute;top:0;bottom:0;right:0;width:1px;pointer-events:none;background:linear-gradient(180deg,#226dcc20,#54caff80 12%,#1b60a936 34%,#2d95ff9c 58%,#15447d20 88%)}
body.glass-home #shell .sidebar .nav-section:not(:first-of-type){border-top:1px solid #4675a845;margin-top:8px}
body.glass-home #shell .sidebar .side-foot{border-top:1px solid #3c7bbb50;padding-top:16px;background:linear-gradient(180deg,#082a521b,transparent 95%)}
body.glass-home #shell .sidebar .initials{background:radial-gradient(circle at 25% 20%,#327cbe87,#0a2a4c99);border-color:#8ddaff;box-shadow:inset 0 1px #b7efff40,0 0 12px #0c77d726}
@media(hover:hover){body.glass-home #shell .sidebar .nav button:hover{color:#f1fbff;border-color:#399fff8c;background-color:#11509755;box-shadow:inset 0 1px #76caff20,0 0 14px #006dfb30}
body.glass-home #shell .sidebar .nav button:hover>.icon{color:#d1f7ff;filter:drop-shadow(0 0 5px #289eff)}
body.glass-home #shell .sidebar .nav button.active:hover{box-shadow:inset 2px 0 #b4ffff,inset 0 1px #89dcff70,0 0 5px #43c2ffbb,0 0 25px #0088ff70}
}
@keyframes nav-glass-reveal{from{transform:translateX(-140%)}to{transform:translateX(140%)}}
body.glass-home.lightweight #shell .sidebar .nav button.active{box-shadow:inset 2px 0 #a5faff}
body.glass-home.lightweight #shell .sidebar .nav button.active:after{animation:none}
body.glass-home.lightweight #shell .sidebar{-webkit-backdrop-filter:none;backdrop-filter:none;background:linear-gradient(160deg,#102d4cf2,#071a30f5 60%,#0d2543f2)}
body.glass-home.lightweight #shell .dashboard-grid>.card:not(.quote-card){-webkit-backdrop-filter:none;backdrop-filter:none;background:linear-gradient(125deg,#122d4cef,#0a1c33f5);box-shadow:inset 0 1px #afd7fa12}
body.glass-home #shell .workspace-footer{display:flex;flex-direction:column;align-items:flex-end;justify-content:flex-start;gap:2px;padding:14px 0 16px;font-size:10px;line-height:1.45;text-align:right;color:#8faccc}
body.glass-home #shell .workspace-footer .footer-brand{color:#aac4df}
body.glass-home #shell .workspace-footer .footer-author{font-size:10px;color:#8faccc}
@media(max-width:800px){body.glass-home #shell .main.home-railway-mode:before{bottom:auto;height:1100px;max-height:calc(100% - var(--scene-height));background-size:100% 100%,auto 1100px;background-position:center,38% top}
}
@media(max-width:800px){body.glass-home #shell .dashboard-grid>.card:not(.quote-card){-webkit-backdrop-filter:blur(8px) saturate(110%);backdrop-filter:blur(8px) saturate(110%)}
body.glass-home.lightweight #shell .dashboard-grid>.card:not(.quote-card){-webkit-backdrop-filter:none;backdrop-filter:none}
body.glass-home #shell .workspace-footer{font-size:9px}
body.glass-home #shell .workspace-footer .footer-author{font-size:9px}
}
@media(prefers-reduced-motion:reduce){body.glass-home #shell .sidebar .nav button.active:after{animation:none}
}

/* Integration with the current production layout. All redesign rules are home-only. */
.glass-only{display:none}
body.glass-home{--line:#79b5ff30;color:#e8f1ff}
body.glass-home #shell{min-height:100vh}
body.glass-home #shell .main{padding:0 18px}
body.glass-home #shell .glass-only{display:flex}
body.glass-home #shell .brand:not(.glass-brand),body.glass-home #shell #sidePlatformMark{display:none!important}
body.glass-home #shell .brand.glass-brand{margin-bottom:24px;padding-bottom:0}
body.glass-home #shell .brand.glass-brand img{width:170px}
body.glass-home #shell .brand.glass-brand small{margin:0}
body.glass-home #shell #nav .glass-nav-icon{align-items:center;flex:none}
body.glass-home #shell .sidebar{width:auto}
body.glass-home #shell .side-foot{padding-top:18px;margin-top:auto}
body.glass-home #shell #sideUser{position:relative;display:block;-webkit-line-clamp:unset;max-height:none;padding-left:48px;min-height:29px;font-size:11px!important;font-weight:600!important;line-height:1.4;white-space:normal;overflow:visible}
body.glass-home #shell #sideUser:before{content:attr(data-initials);position:absolute;left:0;top:0;width:36px;height:36px;display:grid;place-items:center;border-radius:50%;border:1px solid #8ddaff;background:linear-gradient(130deg,#327cbe87,#0a2a4c99);color:#e5f4ff;font-size:12px;font-weight:500}
body.glass-home #shell #sideRole{padding-left:48px;font-size:10px!important;font-weight:400!important;color:#a7c7e4!important}
body.glass-home #shell #nav button{font-weight:400!important;line-height:1.4!important}
body.glass-home #shell #nav button.active{font-weight:600!important;background:linear-gradient(105deg,#006dc4c4,#073b8fe6 47%,#0c55cbd9)!important}
body.glass-home #shell #nav button.active:before{width:auto;height:auto;box-shadow:none}
body.glass-home #shell .side-foot .logout{display:inline-block;margin-top:12px;color:#b2cee8}
body.glass-home #shell .side-foot .teacher-view-toggle{margin-top:14px}
body.glass-home #shell .main.home-railway-mode:before{height:auto;width:auto;mask:none;-webkit-mask:none}
body.glass-home #shell .hero{margin-top:0}
body.glass-home #shell .hero h1:before{content:none}
body.glass-home #shell .glass-greeting{display:block}
body.glass-home #shell .hero h1{white-space:normal}
body.glass-home #shell .topbar{position:relative;top:auto;flex-wrap:nowrap}
body.glass-home #shell .topbar .global-search{flex:0 1 465px;max-width:46%;margin-right:auto}
body.glass-home #shell .search-icon{color:#aacfea}
body.glass-home #shell #serverClock{background:transparent;border:0;box-shadow:none;color:#d9ebff;font-size:18px;line-height:1.1;white-space:nowrap;padding:0}
body.glass-home #shell .server-clock-stack{display:flex;flex-direction:column;align-items:flex-end;min-width:0;gap:2px}
body.glass-home #shell .active-session-chip{min-width:0;max-width:220px;min-height:0;padding:3px 8px!important;font-size:10px;background:#0b2d53;color:#b6e6ff;border-color:#467dad}
body.glass-home #shell .active-session-chip strong{font-size:10px!important;line-height:1.1}
body.glass-home #shell .active-session-chip span{font-size:9px!important;line-height:1.1;margin-top:1px!important;color:#a8cae8}
body.glass-home #shell .glass-top-actions{position:relative;flex:none}
body.glass-home #shell .glass-quick-menu{position:absolute;right:0;top:100%;z-index:40;min-width:190px;padding:6px;border:1px solid #467dad;border-radius:8px;background:#0a2340;box-shadow:0 12px 30px #0007}
body.glass-home #shell .glass-quick-menu button{display:block;width:100%;padding:10px;text-align:left;border:0;border-radius:5px;background:transparent;color:#e3efff;font-size:12px}
body.glass-home #shell .glass-quick-menu button:hover{background:#245791}
body.glass-home #shell .glass-menu-button{display:none}
body.glass-home #shell .dashboard-grid{display:grid;grid-template-columns:repeat(12,minmax(0,1fr));gap:11px}
body.glass-home #shell .dashboard-grid>.home-week-primary{grid-column:1/-1}
body.glass-home #shell .dashboard-grid>.home-status-card{grid-column:span 4;margin:0;min-height:0}
body.glass-home #shell .glass-home-left{grid-column:span 5;display:grid;align-content:start;gap:11px;min-width:0}
body.glass-home #shell .home-info-column{grid-column:span 7;gap:11px;min-width:0}
body.glass-home #shell .glass-home-left>.card,body.glass-home #shell .home-info-column>.card{grid-column:auto;margin:0;width:100%;min-width:0}
body.glass-home #shell .home-info-column>.card{order:0}
body.glass-home #shell .home-info-column>.card,body.glass-home #shell .glass-home-left>.card:not(.quote-card){border:1px solid #5b99d886;border-top-color:#8fc8fa94;background:linear-gradient(125deg,#173659ed,#0a1e38f2 65%,#132e50ee);box-shadow:inset 0 1px #e1f4ff1a,0 9px 22px #000b2445}
@supports ((backdrop-filter:blur(1px)) or (-webkit-backdrop-filter:blur(1px))){body.glass-home #shell .home-info-column>.card,body.glass-home #shell .glass-home-left>.card:not(.quote-card){-webkit-backdrop-filter:blur(8px) saturate(115%);backdrop-filter:blur(8px) saturate(115%);background:linear-gradient(125deg,#638ec11c,transparent 38%),linear-gradient(125deg,#12365a80,#091d3680 63%,#112d5388)}}
body.glass-home.lightweight #shell .home-info-column>.card,body.glass-home.lightweight #shell .glass-home-left>.card:not(.quote-card){-webkit-backdrop-filter:none;backdrop-filter:none;background:#10263ef2}
body.glass-home #shell .course-cards{display:grid;grid-template-columns:1fr;gap:8px}
body.glass-home #shell .course-card{display:flex;flex-wrap:wrap;padding:12px;gap:10px}
body.glass-home #shell .course-card-main{padding:0;background:transparent;color:#e1efff;text-align:left;border:0;flex:1 1 220px;min-width:0}
body.glass-home #shell .course-card-main h3{margin:4px 0;font-size:13px;line-height:1.45}
body.glass-home #shell .course-card-main p{margin:5px 0;line-height:1.5;color:#a9c7e4}
body.glass-home #shell .course-card-actions{display:flex;flex-wrap:wrap;gap:5px;border:0;padding:0;background:transparent}
body.glass-home #shell .quote-card{min-height:230px;background-size:auto,auto 350%!important}
body.glass-home #shell .weekbar .day.today{background:linear-gradient(180deg,#07427178,#09285364 25%,#05172b7a)!important;border-color:#74dfff!important;box-shadow:0 0 3px 1px #54cfff,0 0 19px #088dff70,inset 0 0 20px #0e8bff26!important}
body.glass-home #shell .weekbar .day{min-height:244px}
body.glass-home #shell .weekbar .week-day-heading>.date:after{display:none}
body.glass-home #shell .weekbar .week-day-heading>b:after{display:none}
body.glass-home #shell .week-day-heading b{color:inherit!important}
body.glass-home #shell .week-session-main{white-space:normal;height:auto}
body.glass-home #shell .week-session-main .week-group-link{position:static;display:inline;width:auto;height:auto;white-space:normal;text-align:left;overflow-wrap:break-word}
body.glass-home #shell .week-session>.lesson-icon{display:block;position:absolute;width:12px;height:14px}
body.glass-home #shell .lesson-icon .icon{width:12px;height:14px}
body.glass-home #shell .week-session .week-session-main,body.glass-home #shell .week-session .week-session-course,body.glass-home #shell .week-session .week-session-meta{color:inherit!important}
body.glass-home #shell .week-session:focus-visible{outline:2px solid #a5f0ff;outline-offset:2px}
body.glass-home #shell .day-note{color:#ffd892;background:#5c3e184d}
body.glass-home #shell .compact-empty{color:#a7bed9;padding:10px 0;font-size:12px;line-height:1.5;background:transparent}
body.glass-home #shell .home-day-finished strong{color:#e2edfb}
body.glass-home #shell .home-day-finished span{display:block;color:#a7bed9}
body.glass-home #shell .session-past{border-color:#5482b244;background:#0b234344;color:#b7d7ef}
body.glass-home #shell .session-past summary{background:transparent;color:#b7d7ef}
body.glass-home #shell .session-past summary span{background:#1c487180;color:#bfe7ff}
body.glass-home #shell .attention-action{background:#102d4d88;border:1px solid #5f91b547;border-radius:8px;color:#e8f1ff}
body.glass-home #shell .attention-action small,body.glass-home #shell .attention-action>span{color:#a9cbe8}
body.glass-home #shell .help-q{background:#23567b50;border-color:#73b7ee55;color:#bddfff}
body.glass-home #shell .compact-academic-calendar .calendar-nav{display:flex;min-width:0;flex-wrap:wrap}
body.glass-home #shell .compact-academic-calendar .calendar-title-row{align-items:center}
body.glass-home #shell .compact-academic-calendar .compact-month-head,body.glass-home #shell .compact-academic-calendar .compact-month-week{grid-template-columns:30px repeat(7,minmax(0,1fr));gap:4px;min-width:0}
body.glass-home #shell .compact-academic-calendar .compact-month-body{min-width:0;gap:4px}
body.glass-home #shell .compact-academic-calendar .compact-month-head>span{color:#aac7e7;font-weight:500}
body.glass-home #shell .compact-academic-calendar .compact-month-week{margin-bottom:0}
body.glass-home #shell .compact-academic-calendar .compact-month-day{min-height:70px;padding:7px 6px;align-items:flex-start;justify-content:flex-start;text-align:left;border-radius:6px}
body.glass-home #shell .compact-academic-calendar .compact-month-day>strong{font-size:13px;line-height:1.2;margin:0 0 3px;min-height:19px}
body.glass-home #shell .compact-academic-calendar .compact-month-groups{display:grid;gap:1px;margin:2px 0 0;width:100%;max-width:100%}
body.glass-home #shell .compact-academic-calendar .compact-month-groups>span{display:block!important;font-size:10px!important;line-height:1.2!important;font-weight:600;color:#b8e7ff;white-space:nowrap!important;overflow:hidden!important;text-overflow:ellipsis}
body.glass-home #shell .compact-academic-calendar .compact-month-more{display:block;font-size:9px;color:#91bedf;line-height:1.2;margin-top:2px}
body.glass-home #shell .compact-academic-calendar .compact-month-day.current{background:linear-gradient(130deg,#1053b488,#11379b8a)!important;border-color:#5cbcff!important;box-shadow:0 0 12px #087cff55!important}
body.glass-home #shell .compact-academic-calendar .compact-month-day.current>strong{width:23px;height:23px;min-height:23px;display:grid;place-items:center;border-radius:50%;border:1px solid #d6f8ff;color:#fff;box-shadow:0 0 3px 1px #a4eaff,0 0 13px 3px #148affd4,inset 0 0 7px #73c6ff;background:#125cab}
body.glass-home #shell .compact-academic-calendar .compact-month-day.has-sessions:after{display:none}
body.glass-home #shell .compact-academic-calendar .compact-month-day.outside{opacity:.45}
body.glass-home #shell .compact-academic-calendar .compact-week-label{border:0;background:transparent;color:#8db2d4;min-height:0}
body.glass-home #shell .home-notices-card .notice-home-row{align-items:flex-start;padding:12px 0;border-color:#6da1cc33;gap:12px}
body.glass-home #shell .home-notices-card .notice-home-row strong{font-size:14px;line-height:1.45;color:#e7f2ff}
body.glass-home #shell .home-notices-card .notice-clamp{display:block;-webkit-line-clamp:unset;overflow:visible;white-space:pre-line;font-size:12px;line-height:1.6;color:#b7cce3;margin-top:7px}
body.glass-home #shell .home-notices-card .notice-context{color:#95cdef!important;font-size:11px;line-height:1.5;margin-top:8px!important;font-weight:500}
body.glass-home #shell .home-notices-card .notice-home-edit{flex:none}
body.glass-home #shell .home-notices-more summary{color:#b4dfff;padding-top:8px;cursor:pointer}
/* Existing dialogs/forms stay on their proven light palette and keep their handlers. */
body.glass-home #modalLayer,body.glass-home #drawerLayer,body.glass-home .help-popover{color:#12233b;--muted:#738196;--line:#dfe6ef;--blue:#1769d2;--cyan:#177bb5;--ink:#12233b;color-scheme:light}
body.glass-home #shell .mobile-nav{display:none!important}
@media(max-width:1200px){body.glass-home #shell .main{padding:0 18px}body.glass-home #shell .dashboard-grid>.next-card{grid-column:span 5}body.glass-home #shell .dashboard-grid>.today-card{grid-column:span 7}body.glass-home #shell .dashboard-grid>.attention-card{grid-column:1/-1}body.glass-home #shell .glass-home-left,body.glass-home #shell .home-info-column{grid-column:1/-1}body.glass-home #shell .glass-home-left{grid-template-columns:1fr 1fr}body.glass-home #shell .glass-home-left>.card{grid-column:auto}}
@media(max-width:800px){body.glass-home #shell .main{padding:0 13px 20px}body.glass-home #shell .sidebar{display:flex;width:235px}body.glass-home #shell .topbar{gap:9px;margin:0 -13px;padding:0 13px}body.glass-home #shell .topbar .global-search{max-width:none;width:100%;flex:1}body.glass-home #shell .glass-menu-button{display:inline-grid;flex:none}body.glass-home #shell .glass-top-actions{display:none}body.glass-home #shell .server-clock-stack{display:none}body.glass-home #shell .dashboard-grid>.home-status-card{grid-column:1/-1}body.glass-home #shell .glass-home-left{grid-template-columns:1fr}body.glass-home #shell .card{margin-bottom:0}body.glass-home #shell .compact-academic-calendar{padding:10px!important;overflow:visible}body.glass-home #shell .compact-academic-calendar .compact-month-head,body.glass-home #shell .compact-academic-calendar .compact-month-week{grid-template-columns:22px repeat(7,minmax(0,1fr));gap:2px}body.glass-home #shell .compact-academic-calendar .compact-month-day{min-height:67px;padding:4px 2px}body.glass-home #shell .compact-academic-calendar .compact-month-groups>span{font-size:8px!important}body.glass-home #shell .compact-academic-calendar .compact-month-day>strong{font-size:11px}body.glass-home #shell .home-notices-card .notice-home-row{flex-wrap:wrap}body.glass-home #shell .home-notices-card .notice-home-row .grow{flex-basis:100%}body.glass-home #shell .hero h1{font-size:24px}body.glass-home #shell .date-pills{flex-wrap:wrap}body.glass-home #shell .date-pill strong{font-size:11px}}
@media(prefers-reduced-motion:reduce){body.glass-home #shell *{scroll-behavior:auto}}
