:root{font-family:Inter,ui-sans-serif,system-ui,-apple-system,sans-serif;color:#202338;background:#f7f8fc;font-synthesis:none}*{box-sizing:border-box}body{margin:0}button{font:inherit;border:0;cursor:pointer}.shell{display:flex;min-height:100vh}.shell.dark{--bg:#121522;--surface:#1b2030;--text:#eef0fb;--muted:#a6adc2;--line:#2b3246;background:var(--bg);color:var(--text)}.shell:not(.dark){--bg:#f7f8fc;--surface:#fff;--text:#202338;--muted:#757c91;--line:#e9ebf2;background:var(--bg);color:var(--text)}.shell>aside{width:264px;flex:0 0 264px;position:sticky;top:0;height:100vh;overflow-y:auto;background:var(--surface);border-right:1px solid var(--line);padding:28px 16px 18px;display:flex;flex-direction:column}.brand{font-size:21px;font-weight:800;letter-spacing:-.7px;padding:0 14px 42px;display:flex;align-items:center;gap:10px}.brand span span{color:#7855df}.brand-icon{width:34px;height:34px;border-radius:10px;object-fit:cover}.workspace,.eyebrow{font-size:10px;letter-spacing:1.3px;font-weight:800;color:var(--muted)}.workspace{padding:0 14px 13px}.nav{width:100%;text-align:left;padding:12px 14px;margin:2px 0;border-radius:11px;background:transparent;color:var(--muted);font-size:13px;display:flex;align-items:center;gap:12px}.nav i{font-style:normal;font-size:18px;width:19px;text-align:center}.nav.selected{background:#eeedff;color:#5e54cc;font-weight:700}.dark .nav.selected{background:#292743;color:#ada7ff}.side-foot{margin-top:auto;border-top:1px solid var(--line);padding:18px 8px 0;display:flex;gap:10px;align-items:center}.avatar{width:34px;height:34px;border-radius:11px;display:grid;place-items:center;background:#e4ddff;color:#6858c9;font-size:11px;font-weight:800}.avatar.small{width:32px;height:32px}.side-foot b,.side-foot small{display:block;font-size:12px}.side-foot small{color:var(--muted);margin-top:3px}.side-foot button{margin-left:auto;background:none;color:var(--muted);font-size:18px}main{flex:1;min-width:0}header{min-height:105px;padding:28px 48px;border-bottom:1px solid var(--line);background:var(--surface);display:flex;align-items:center;justify-content:space-between}h1,h2,h3,p{margin:0}h1{font-size:23px;margin-top:5px;letter-spacing:-.5px}h2{font-size:28px;letter-spacing:-.8px;margin:5px 0 8px}h3{font-size:16px}.head-actions{display:flex;align-items:center;gap:18px}.icon-btn{background:transparent;color:var(--muted);font-size:21px}.profile{display:flex;align-items:center;gap:9px;color:var(--text);background:transparent;font-size:12px}.content{padding:42px 48px;max-width:1400px}.welcome{display:flex;align-items:end;justify-content:space-between;margin-bottom:32px}.welcome p:not(.eyebrow),.panel p,.empty p{color:var(--muted);font-size:13px}.purple{color:#7261dd}.primary{background:linear-gradient(100deg,#5664e9,#895adb);color:#fff;padding:12px 17px;border-radius:10px;font-size:12px;font-weight:700;box-shadow:0 7px 18px #6858d533}.stats{display:grid;grid-template-columns:repeat(4,1fr);gap:15px}.stat,.panel{background:var(--surface);border:1px solid var(--line);border-radius:15px;padding:20px}.stat{display:flex;gap:14px}.stat-icon{width:40px;height:40px;border-radius:12px;display:grid;place-items:center;font-size:20px}.blue{background:#e9edff;color:#5968e5}.purple{background:#f0eaff;color:#8155db}.orange{background:#fff0dd;color:#e3973d}.green{background:#dff7ed;color:#36a877}.stat small,.stat strong,.stat em{display:block}.stat small{font-size:11px;color:var(--muted)}.stat strong{font-size:25px;margin:5px 0}.stat em{font-size:10px;color:#7b68db;font-style:normal}.grid{display:grid;grid-template-columns:1.25fr 1fr;gap:15px;margin-top:15px}.panel-head{display:flex;justify-content:space-between;align-items:flex-start;margin-bottom:24px}.panel p{margin-top:5px}.badge{font-size:9px;letter-spacing:1px;font-weight:800;color:#725ed7;background:#eeebff;border-radius:99px;padding:7px 10px}.progress-list>div{margin:22px 0}.progress-list span{font-size:12px}.progress-list b{float:right;font-size:11px;color:#7a6bd0}.bar{height:7px;border-radius:10px;background:#edf0f6;margin-top:10px;overflow:hidden}.bar i{display:block;height:100%;background:linear-gradient(90deg,#5969eb,#9859df);border-radius:10px}.quick button{width:100%;padding:13px 0;background:none;border-bottom:1px solid var(--line);color:var(--text);text-align:left;display:flex;align-items:center;gap:12px;font-size:12px}.quick button:last-child{border:0}.quick span{color:#7562db;font-size:18px}.quick b{margin-left:auto;color:var(--muted);font-size:17px}.empty{text-align:center;padding:130px 20px}.empty-icon{margin:auto auto 20px;width:60px;height:60px;display:grid;place-items:center;border-radius:20px;background:#eeebff;color:#725ed7;font-size:28px}.empty p{line-height:1.8;margin:12px 0 20px}.mobile-menu{display:none;background:none;font-size:20px;color:var(--muted)}@media (max-width:900px){aside{width:220px}.content,header{padding-left:28px;padding-right:28px}.stats{grid-template-columns:repeat(2,1fr)}}@media (max-width:650px){aside{display:none}.mobile-menu{display:block}header{padding:20px;gap:15px}.profile-name{display:none}.content{padding:28px 20px}.welcome{display:block}.welcome .primary{margin-top:20px}.grid{grid-template-columns:1fr}.stats{gap:10px}.stat{padding:14px}.stat-icon{width:33px;height:33px}.stat strong{font-size:21px}}.login-shell{min-height:100vh;display:grid;place-items:center;background:radial-gradient(circle at 20% 10%,#e9e8ff 0,#f7f8fc 42%,#f7f8fc)}.login-card{width:min(420px,calc(100% - 40px));background:#fff;border:1px solid #e9ebf2;border-radius:22px;padding:38px;box-shadow:0 24px 70px #5c55a226}.login-card img{width:72px;height:72px;border-radius:18px;object-fit:cover;margin-bottom:22px}.login-card h1{margin:8px 0}.login-card>p:not(.eyebrow){color:#757c91;font-size:13px;margin-bottom:28px}.login-card form{display:grid;gap:16px}.login-card label{font-size:12px;font-weight:700}.login-card input{display:block;width:100%;margin-top:7px;padding:12px;border:1px solid #dfe2eb;border-radius:9px;font:inherit;font-size:13px}.login-card .primary{width:100%;margin-top:5px}.login-error{padding:10px;border-radius:8px;color:#a53b4c;background:#fff0f2;font-size:12px}.google-btn,.create-btn,.forgot-btn{width:100%;padding:11px;border-radius:9px;font-size:12px;font-weight:700}.google-btn{background:#fff;border:1px solid #dfe2eb;color:#202338}.create-btn,.forgot-btn{background:transparent;color:#6758d6}.forgot-btn{font-weight:600;padding:5px}.login-card .google-btn{margin-top:-7px}.login-card .create-btn{margin-top:-9px}.page-head{display:flex;justify-content:space-between;align-items:end;margin-bottom:24px}.page-head p{color:var(--muted);font-size:13px;margin-top:7px}.table-panel{overflow:auto}.table-wrap{overflow-x:auto}table{width:100%;border-collapse:collapse;font-size:12px}th,td{text-align:left;padding:14px;border-bottom:1px solid var(--line);white-space:nowrap}th{color:var(--muted);font-size:10px;text-transform:uppercase;letter-spacing:.5px}.status{color:#22996b;background:#e1f7ed;border-radius:99px;padding:5px 9px;font-size:10px}.status.inactive{color:#a04b52;background:#fff0f2}.error-cell{color:#a04b52}.loading{color:var(--muted)}.auth-screen{min-height:100vh;display:grid;grid-template-columns:1.05fr .95fr;background:#fff}.auth-hero{position:relative;overflow:hidden;padding:clamp(34px,7vw,90px);display:flex;flex-direction:column;justify-content:space-between;color:#fff;background:linear-gradient(135deg,#3d87f5,#554fe8 48%,#9148d9)}.hero-brand{display:flex;align-items:center;gap:12px;font-size:23px;font-weight:800;position:relative;z-index:1}.hero-brand img{width:44px;height:44px;border-radius:13px;background:#fff;object-fit:cover}.hero-brand span span{color:#e8d8ff}.hero-copy{position:relative;z-index:1;max-width:470px}.hero-kicker{font-size:11px;letter-spacing:2px;font-weight:800;opacity:.8;margin-bottom:24px}.hero-copy h2{font-size:clamp(36px,5vw,64px);line-height:1.05;margin:0 0 18px;letter-spacing:-2px}.hero-copy p{font-size:18px;line-height:1.6;margin-bottom:18px}.hero-copy small{font-size:13px;opacity:.75}.hero-glow{position:absolute;width:460px;height:460px;border:1px solid #ffffff35;border-radius:50%;right:-190px;bottom:-160px;box-shadow:0 0 0 55px #ffffff08,0 0 0 110px #ffffff05}.auth-panel{display:grid;place-items:center;padding:32px;background:#fafaff}.auth-card{width:min(430px,100%)}.auth-card-head img{width:70px;height:70px;border-radius:19px;object-fit:cover;margin-bottom:24px}.auth-card-head h1{font-size:30px;margin:8px 0}.auth-card-head>p:not(.eyebrow){color:#777d91;font-size:14px;margin-bottom:30px}.auth-card form{display:grid;gap:14px}.auth-card label{font-size:12px;font-weight:700;color:#202338}.auth-card input{display:block;width:100%;margin-top:7px;padding:14px 16px;border:1px solid #e0e2eb;border-radius:999px;font:inherit;font-size:13px;background:#fff}.auth-card .primary{width:100%;border-radius:999px;padding:14px}.forgot-inline{justify-self:end;background:none;color:#6758d6;font-size:11px;font-weight:700;margin-top:-7px}.or-divider{display:flex;align-items:center;gap:12px;color:#a4a8b6;font-size:10px;margin:4px 0}.or-divider:before,.or-divider:after{content:"";height:1px;background:#ececf2;flex:1}.google-btn{width:100%;padding:13px;border-radius:999px;background:#fff;border:1px solid #e0e2eb;color:#303344;font-size:12px;font-weight:700}.google-mark{color:#4285f4;font-weight:900;margin-right:7px}.signup-line,.back-link{background:none;color:#777d91;font-size:11px;margin-top:6px}.signup-line b,.back-link{color:#6758d6}.secure-note{padding:11px 13px;border-radius:11px;background:#f1efff;color:#6658b9;font-size:11px;line-height:1.5}.back-link{justify-self:center}@media (max-width:760px){.auth-screen{grid-template-columns:1fr}.auth-hero{min-height:260px;padding:30px}.hero-copy{margin-top:55px}.hero-copy h2{font-size:38px}.hero-copy p{font-size:14px}.auth-panel{padding:34px 24px}.auth-card-head img{width:58px;height:58px;margin-bottom:15px}}.academic-modal{position:fixed;top:0;right:0;bottom:0;left:0;z-index:50;display:grid;place-items:center;padding:24px;background:#18203b75}.academic-dialog{width:min(440px,100%);position:relative;display:grid;gap:15px;padding:28px;background:#fff;border-radius:20px;box-shadow:0 25px 80px #18203b55}.academic-dialog h2{font-size:24px}.academic-dialog label{display:grid;gap:7px;color:#202338;font-size:12px;font-weight:700}.academic-dialog input,.academic-dialog select{width:100%;padding:12px 14px;border:1px solid #dfe2eb;border-radius:10px;background:#fff;font:inherit;color:#202338}.modal-close{position:absolute;right:14px;top:12px;background:none;font-size:25px;color:#777d91}.modal-actions{display:flex;justify-content:flex-end;align-items:center;gap:12px;margin-top:4px}.modal-actions .back-link{justify-self:auto;margin:0}.modal-actions .primary{border-radius:10px}.timetable-dialog{max-height:90vh;overflow:auto}.timetable-dialog small{color:#757c91}.time-grid{display:grid;grid-template-columns:1fr 1fr;gap:12px}.table-action{background:none;color:#6758d6;font-size:11px;font-weight:700;margin:3px}.table-action.danger{color:#b43d4d}.seed-semesters{justify-self:start;background:#eef0ff;color:#5664e9;border-radius:9px;padding:8px 11px;font-size:11px;font-weight:800}.auth-panel{position:relative;overflow:hidden;background:radial-gradient(circle at 82% 8%,#ebe9ff 0,transparent 28%),linear-gradient(145deg,#fbfbff,#f3f5ff)}.auth-legal{position:absolute;z-index:2;right:28px;bottom:20px;display:flex;align-items:center;gap:10px;color:#8a93a8;font-size:11px;font-weight:600;pointer-events:none}.auth-legal a{pointer-events:auto}.auth-legal a{color:#65708a;text-decoration:none}.auth-legal a:hover,.auth-legal a:focus-visible{color:#5664e9;text-decoration:underline;text-underline-offset:3px}.auth-panel:before{content:"";position:absolute;width:360px;height:360px;border-radius:50%;right:-170px;bottom:-180px;background:#6670e71a;filter:blur(2px)}.auth-card{position:relative;z-index:1;width:min(456px,100%);padding:38px;border:1px solid #ffffffc9;border-radius:24px;background:linear-gradient(145deg,#fff,#fbfcff);box-shadow:0 28px 70px #344a9630,0 8px 20px #344a9614,inset 0 1px #fff;isolation:isolate;font-weight:300}.auth-card:before{content:"";position:absolute;z-index:-1;top:1px;right:1px;bottom:1px;left:1px;border-radius:23px;background:radial-gradient(circle at 10% 0%,#ffffff 0,transparent 37%);pointer-events:none}.auth-card-head img{width:62px;height:62px;margin-bottom:20px;border:1px solid #ffffffd9;box-shadow:0 11px 20px #535bc42b}.auth-card-head h1{font-weight:760;letter-spacing:-1.1px;color:#19233f}.auth-card-head>p:not(.eyebrow){font-weight:300;color:#65708a;line-height:1.55;margin-bottom:28px}.auth-card form{gap:16px}.auth-card label{font-weight:700;letter-spacing:.01em;color:#202b46}.auth-card input,.auth-card select{display:block;width:100%;margin-top:7px;padding:14px 16px;border:1px solid #dbe1f0;border-radius:14px;font:inherit;font-size:13px;font-weight:500;color:#202b46;background:linear-gradient(145deg,#fff,#f8faff);box-shadow:inset 0 1px 2px #344a960d,0 1px #fff;outline:none;transition:border-color .18s ease,box-shadow .18s ease,transform .18s ease}.auth-card input::placeholder{color:#9aa3b7;font-weight:300}.auth-card input:focus,.auth-card select:focus{border-color:#6670df;box-shadow:0 0 0 4px #6670df1f,inset 0 1px 2px #344a960d;transform:translateY(-1px)}.auth-card .primary{border-radius:14px;padding:14px 18px;font-weight:760;letter-spacing:.01em;box-shadow:0 11px 20px #5a5ee938,0 2px #ffffff45 inset;transition:transform .18s ease,box-shadow .18s ease,filter .18s ease}.auth-card .primary:hover{filter:saturate(1.08) brightness(1.03);box-shadow:0 15px 25px #5a5ee948,0 2px #ffffff45 inset;transform:translateY(-2px)}.auth-card .primary:active,.auth-card .google-btn:active{transform:translateY(1px) scale(.985)}.forgot-inline{font-weight:700;transition:color .18s ease,transform .18s ease}.forgot-inline:hover{color:#4149c5;transform:translate(2px)}.google-btn{border-radius:14px;border-color:#dbe1f0;background:linear-gradient(145deg,#fff,#f8faff);box-shadow:0 5px 12px #344a9610;font-weight:700;transition:transform .18s ease,border-color .18s ease,box-shadow .18s ease}.google-btn:hover{border-color:#bec8ea;box-shadow:0 9px 18px #344a9618;transform:translateY(-1px)}.signup-line,.back-link{position:relative;z-index:3;display:block;border:0;text-align:center;text-decoration:none;font-weight:300;cursor:pointer}.signup-line b,.back-link{font-weight:700}.login-error{border:1px solid #f1c9d0;box-shadow:inset 0 1px #fff;font-weight:400}@media (max-width:760px){.auth-card{padding:30px 24px;border-radius:20px}.auth-card:before{border-radius:19px}.auth-panel{padding-bottom:78px}.auth-legal{right:50%;bottom:22px;transform:translate(50%);white-space:nowrap}}@media (prefers-reduced-motion:reduce){.auth-card input,.auth-card select,.auth-card .primary,.forgot-inline,.google-btn{transition:none}}:root{--fs-blue:#367df1;--fs-violet:#8754ef;--fs-ink:#121c36;--fs-muted:#61728f;--fs-line:#e8eef7;--fs-bg:#fff}.shell{min-height:100vh;background:#fff;color:var(--fs-ink);font-family:Inter,ui-sans-serif,system-ui,-apple-system,Segoe UI,sans-serif}.shell aside{position:fixed;inset:0 auto 0 0;width:320px;display:flex;flex-direction:column;background:#fbfcff;border-right:1px solid var(--fs-line);z-index:4}.brand{height:88px;gap:15px;padding:0 24px;border-bottom:1px solid var(--fs-line);font-size:23px;font-weight:800;letter-spacing:-1.1px;color:#080f24}.brand>span>span{color:#3178f3}.brand-icon{width:50px!important;height:50px!important;border-radius:50%;object-fit:cover}.workspace{display:none}.shell nav{padding:26px 16px;display:flex;flex-direction:column;gap:9px;overflow:auto}.nav{width:100%;height:56px;border:0;background:transparent;color:#58708f;border-radius:15px;display:flex;align-items:center;gap:20px;padding:0 25px;text-align:left;font-size:16px;font-weight:500}.nav i{font-style:normal;font-size:22px;width:23px;text-align:center;color:#68809e}.nav:hover,.nav.selected{color:#473cff;background:linear-gradient(100deg,#eff4ff,#e6e6ff);font-weight:700;box-shadow:0 8px 18px #4b57b414}.nav.selected i{color:#493fff}.side-foot{display:none}.side-actions{margin-top:auto;padding:12px}.theme-row,.logout-row{height:56px;width:100%;border-radius:15px;text-align:left;padding:0 21px;font-size:16px;font-weight:700}.theme-row{background:#f0f5fb;border:1px solid #e1e9f3;color:#14223b;margin-bottom:18px}.logout-row{background:#fff0f0;border:1px solid #ffbcbc;color:#e33434}.shell main{margin-left:320px;min-height:100vh}.shell header{height:109px;padding:0 42px;display:flex;align-items:center;justify-content:space-between;background:#fff;border-bottom:1px solid #eef2f8}.shell header h1{font-size:32px;letter-spacing:-1.3px;margin:4px 0 0;color:#111a33}.eyebrow{font-size:14px!important;color:#6a7b97!important;font-weight:700!important;margin:0!important;letter-spacing:0!important}.head-actions{display:flex;align-items:center;gap:16px}.identity{text-align:right}.identity b{display:block;font-size:17px}.identity small{color:#347cf2;font-size:13px;font-weight:600}.profile{border:1px solid #3d7df1;border-radius:14px;background:#f8faff;padding:7px}.avatar.small{width:40px;height:40px;background:#fff;color:#507cf0;font-size:11px}.icon-btn{display:none}.content{max-width:1480px;margin:0 auto;padding:40px 42px 64px}.welcome{margin:0 0 25px}.welcome h2{font-size:31px;letter-spacing:-1px;margin:8px 0}.welcome p{color:var(--fs-muted);margin:0}.visual-hero{position:relative;overflow:hidden;display:flex;align-items:center;gap:26px;min-height:190px;padding:34px 52px;border-radius:31px;color:#fff;background:linear-gradient(110deg,#3983f4,#8651ed);box-shadow:0 16px 30px #485bcb24;margin-bottom:34px}.visual-hero:before,.visual-hero:after{content:"";position:absolute;border-radius:50%;background:#ffffff17}.visual-hero:before{width:190px;height:190px;right:-55px;top:-85px}.visual-hero:after{width:120px;height:120px;left:8%;bottom:-85px}.visual-hero>*{position:relative;z-index:1}.visual-hero h2{font-size:34px;letter-spacing:-1.5px;margin:0 0 10px;color:#fff}.visual-hero p{margin:0;color:#ffffffd9;font-size:17px;font-weight:600}.dashboard-hero{display:block;padding-top:46px}.dashboard-hero small{color:#ffffffb8;font-weight:700}.dashboard-hero h2{font-size:38px;margin-top:18px}.page-hero{min-height:130px}.hero-icon{flex:0 0 80px;height:80px;border-radius:22px;display:grid;place-items:center;border:1px solid rgba(255,255,255,.25);background:#ffffff24;font-size:37px}.hero-action{margin-left:auto;border:0;border-radius:18px;background:#fff;color:#2d67e9;padding:18px 26px;font-size:16px;font-weight:800}.reference-stats{display:grid;grid-template-columns:repeat(4,1fr);gap:24px;margin-bottom:34px}.reference-stats article{min-height:190px;border:1px solid var(--fs-line);border-radius:25px;padding:30px;display:flex;flex-direction:column;align-items:flex-start;background:#fff}.reference-stats .stat-icon{width:54px;height:54px;display:grid;place-items:center;border-radius:16px;font-size:26px;margin-bottom:22px}.reference-stats strong{font-size:40px;line-height:1;margin-bottom:12px}.reference-stats small{font-size:16px;font-weight:600;color:var(--fs-muted)}.mint{background:#e5fbf1;color:#09b980}.gold{background:#fff5d8;color:#efa600}.pink{background:#fff0f9;color:#f73a9a}.visual-filter{border:1px solid var(--fs-line);border-radius:25px;padding:28px 30px;background:#fff}.visual-filter h3{margin:0 0 22px;font-size:20px}.visual-filter>div{display:grid;grid-template-columns:240px 1fr 205px 115px;gap:14px}.visual-filter button,.visual-filter label{height:56px;border-radius:15px;border:1px solid #e1e8f3;background:#f9fbfe;color:#52647f;padding:0 18px;font-size:15px;font-weight:600;display:flex;align-items:center;gap:10px}.visual-filter input{border:0;outline:0;background:transparent;width:100%;font:inherit}.visual-filter .primary{justify-content:center;background:#306be9;color:#fff;border:0}.panel{border:1px solid var(--fs-line);border-radius:25px;background:#fff;padding:12px 24px;box-shadow:none}.panel-head{padding:16px 5px;border:0}.panel-head h3{font-size:21px;margin:0 0 5px}.panel-head p{margin:0;color:var(--fs-muted)}.table-wrap{overflow:auto}.table-wrap table{border-collapse:separate;border-spacing:0 12px;width:100%}.table-wrap thead th{border:0;background:transparent;color:#7a8da9;font-size:12px;text-transform:uppercase;letter-spacing:.05em;padding:8px 18px;text-align:left}.table-wrap tbody tr{box-shadow:0 0 0 1px var(--fs-line);border-radius:18px}.table-wrap tbody td{padding:18px;border-top:1px solid #f2f5f9;border-bottom:1px solid #f2f5f9;color:#263650}.table-wrap tbody td:first-child{border-left:1px solid #f2f5f9;border-radius:18px 0 0 18px}.table-wrap tbody td:last-child{border-right:1px solid #f2f5f9;border-radius:0 18px 18px 0}.table-action{border:1px solid #dfe7f4;background:#f8faff;border-radius:11px;color:#5075dd;padding:8px 12px;margin-right:6px}.table-action.danger{background:#fff5f5;color:#f34d5d;border-color:#ffd4d9}.info-callout{margin:-10px 0 28px;padding:21px 28px;background:#edf5ff;border:1px solid #bed8ff;border-radius:20px;color:#2450bf;font-weight:600}.empty-canvas{min-height:360px;border:1px dashed #c8d8ed;border-radius:27px;display:flex;flex-direction:column;justify-content:center;align-items:center;text-align:center;color:var(--fs-muted)}.empty-canvas h3{margin:18px 0 6px;color:#21304b;font-size:23px}.empty-canvas p{margin:0}.feature-icon{width:76px;height:76px;border-radius:50%;display:grid;place-items:center;background:#f4f7fc;color:#8598b6;font-size:31px}.tabs{height:70px;border:1px solid var(--fs-line);border-radius:20px;margin:0 0 26px;padding:8px;display:grid;grid-template-columns:repeat(3,1fr)}.tabs button{border:0;background:transparent;color:#62738e;font-size:16px;font-weight:700;border-radius:14px}.tabs .active{background:#eafaf1;color:#00a66a}.search-strip{height:62px;border:1px solid var(--fs-line);border-radius:18px;padding:0 22px;display:flex;align-items:center;color:#8294ad;font-size:16px;margin-bottom:28px}.support-grid{max-width:1000px;margin:0 auto;display:grid;grid-template-columns:1fr 1fr;gap:25px}.support-grid article{min-height:280px;border:2px solid #397aff;border-radius:25px;padding:38px;display:flex;align-items:center;flex-direction:column;text-align:center}.support-grid h3{margin:22px 0 12px;font-size:22px}.support-grid p{color:var(--fs-muted);max-width:330px;margin:0 0 22px}.support-grid .primary{border:0;border-radius:13px;width:100%;height:55px}.subtle-btn{border:1px solid #dfe7f2;border-radius:12px;height:48px;padding:0 24px;color:#61718b;background:#fafcff}@media (max-width:1000px){.shell aside{width:245px}.shell main{margin-left:245px}.content{padding:28px 24px}.shell header{padding:0 24px}.reference-stats{grid-template-columns:repeat(2,1fr)}.visual-filter>div{grid-template-columns:1fr 1fr}.visual-hero{padding:30px}.page-hero{align-items:flex-start}.hero-action{padding:14px;margin-left:auto}}@media (max-width:720px){.shell aside{position:static;width:100%;height:auto}.shell nav{display:none}.side-actions{display:none}.shell main{margin-left:0}.shell header{height:85px}.shell header h1{font-size:24px}.identity{display:none}.content{padding:22px 16px}.visual-hero{border-radius:24px;min-height:180px;flex-wrap:wrap}.page-hero{min-height:150px}.visual-hero h2{font-size:27px}.hero-action{margin-left:0}.reference-stats{grid-template-columns:1fr 1fr;gap:12px}.reference-stats article{min-height:145px;padding:20px}.reference-stats strong{font-size:30px}.visual-filter>div{grid-template-columns:1fr}.support-grid{grid-template-columns:1fr}.brand{height:72px}.brand-icon{width:40px!important;height:40px!important}.mobile-menu{display:block}}.reference-list{display:grid;gap:16px}.data-row{border:1px solid var(--fs-line);border-radius:22px;padding:22px 26px;display:flex;align-items:center;gap:20px;background:#fff}.data-row .feature-icon{width:54px;height:54px;flex:0 0 54px;font-size:24px}.data-row>div:nth-child(2){min-width:0;flex:1}.data-row h3{margin:0 0 7px;font-size:18px}.data-row p{margin:0 0 8px;color:var(--fs-muted);white-space:pre-wrap}.data-row small{color:#71829e}.event-date{min-width:110px;padding:15px 10px;border-radius:15px;background:#edf5ff;color:#2d6deb;font-weight:800;text-align:center}@media (max-width:720px){.data-row{padding:18px;align-items:flex-start;flex-wrap:wrap}.event-date{min-width:72px}.data-row .table-action{margin-left:auto}}.reference-dialog{width:min(530px,100%)}.academic-dialog textarea{width:100%;min-height:115px;padding:12px 14px;border:1px solid #dfe2eb;border-radius:12px;resize:vertical;font:inherit;color:#202338}.coming-soon{max-width:900px;margin:0 auto;padding:72px 48px;text-align:center;border:1px solid var(--fs-line);border-radius:30px;background:linear-gradient(145deg,#fbfcff,#f5f2ff);box-shadow:0 16px 38px #37519b12}.coming-icon{width:80px;height:80px;margin:0 auto 23px;display:grid;place-items:center;color:#fff;border-radius:24px;background:linear-gradient(135deg,#367df1,#8754ef);font-size:34px;box-shadow:0 14px 26px #5955e03d}.coming-soon h2{font-size:31px;letter-spacing:-1.2px;margin:10px 0 12px}.coming-soon>p:not(.eyebrow){max-width:640px;margin:0 auto;color:var(--fs-muted);font-size:16px;line-height:1.7}.coming-tags{display:flex;justify-content:center;gap:12px;flex-wrap:wrap;margin-top:29px}.coming-tags span{padding:10px 15px;border:1px solid #e1e3ff;border-radius:999px;color:#5b56b8;background:#fff;font-size:13px;font-weight:700}@media (max-width:720px){.coming-soon{padding:48px 25px;border-radius:24px}.coming-soon h2{font-size:26px}}.dashboard-intro{display:flex;align-items:center;justify-content:space-between;gap:28px;margin-bottom:26px}.dashboard-intro h2{margin:5px 0 8px;font-size:32px;letter-spacing:-1.3px}.dashboard-intro>div>p:last-child{color:var(--fs-muted);font-size:15px;line-height:1.55}.access-code-card{min-width:290px;position:relative;display:grid;grid-template-columns:1fr auto;gap:8px 14px;padding:17px 18px;border:1px solid #dbe5f5;border-radius:18px;background:#fbfcff}.access-code-card span,.metric-label,.directory-filters span,.activity-filters span{font-size:10px;letter-spacing:.08em;text-transform:uppercase;font-weight:800;color:#8191aa}.access-code-card strong{font-size:22px;letter-spacing:.09em;color:#3446a9}.access-code-card small{grid-column:1/-1;min-height:14px;color:#169763;font-size:12px;font-weight:700}.icon-button,.secondary-button{align-self:center;border:1px solid #d5e0f0;border-radius:10px;background:#fff;color:#315fd1;padding:9px 12px;font-size:12px;font-weight:800}.icon-button:disabled{opacity:.55;cursor:not-allowed}.dashboard-stats{display:grid;grid-template-columns:repeat(4,1fr);gap:16px;margin-bottom:16px}.dashboard-stats article{min-height:142px;padding:22px;border:1px solid var(--fs-line);border-radius:18px;background:var(--surface);display:flex;flex-direction:column;gap:10px;box-shadow:0 7px 20px #253e7009}.dashboard-stats strong{font-size:34px;letter-spacing:-1.2px}.dashboard-stats small{color:var(--fs-muted);font-size:13px}.dashboard-two-column,.dashboard-bottom-grid{display:grid;grid-template-columns:1fr 1fr;gap:16px;margin:16px 0}.dashboard-panel{border:1px solid var(--fs-line);border-radius:20px;background:var(--surface);padding:24px;box-shadow:0 7px 20px #253e7008}.panel-heading{display:flex;align-items:flex-start;justify-content:space-between;gap:16px;margin-bottom:20px}.panel-heading h3{font-size:20px;letter-spacing:-.45px;margin:4px 0 6px}.panel-heading p:not(.eyebrow){color:var(--fs-muted);font-size:13px;line-height:1.5}.text-action{padding:0;background:transparent;color:#316adf;font-size:13px;font-weight:800;white-space:nowrap}.dashboard-list{display:grid;gap:10px}.schedule-row,.holiday-row{display:grid;grid-template-columns:82px 1fr auto;gap:14px;align-items:center;padding:14px 0;border-top:1px solid #edf1f6}.schedule-row:first-child,.holiday-row:first-child{padding-top:0;border-top:0}.schedule-row time,.holiday-row time{font-size:13px;font-weight:800;color:#263b72}.schedule-row time small{display:block;margin-top:4px;color:#8291a7;font-size:11px}.schedule-row b,.holiday-row b{display:block;font-size:14px;margin-bottom:4px}.schedule-row span,.holiday-row span{display:block;color:var(--fs-muted);font-size:12px}.schedule-row em{font-style:normal;border-radius:999px;background:#f1f5fb;color:#60718b;padding:6px 9px;font-size:11px}.holiday-row{grid-template-columns:116px 1fr}.professor-directory,.activity-panel{margin:16px 0}.directory-filters{display:grid;grid-template-columns:minmax(220px,1.4fr) minmax(170px,.8fr) minmax(150px,.7fr) auto;gap:12px;margin-bottom:18px;padding:14px;border:1px solid #edf1f6;border-radius:15px;background:#fbfcfe}.directory-filters label,.activity-filters label{display:grid;gap:6px}.directory-filters input,.directory-filters select,.activity-filters input,.activity-filters select{width:100%;height:41px;border:1px solid #dce5f1;border-radius:10px;background:#fff;color:#263650;padding:0 11px;font:inherit;font-size:13px;outline:none}.directory-filters input:focus,.directory-filters select:focus,.activity-filters input:focus,.activity-filters select:focus{border-color:#4b79eb;box-shadow:0 0 0 3px #4b79eb1f}.directory-table td small,.activity-table td small{display:block;margin-top:5px;color:#71829d;font-size:11px;white-space:normal}.activity-filters{display:flex;align-items:end;gap:10px}.activity-filters label{min-width:145px}.activity-table td{vertical-align:top}.activity-table td:nth-child(2){min-width:210px}.state-line{padding:18px!important;color:var(--fs-muted)!important;text-align:center;font-size:13px}.state-line.error{color:#b3424d!important}.notice-preview{display:grid;gap:9px}.notice-preview article{padding:13px 0;border-top:1px solid #edf1f6}.notice-preview article:first-child{padding-top:0;border-top:0}.notice-preview b{font-size:14px}.notice-preview p{display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;margin:5px 0;color:var(--fs-muted);font-size:12px;line-height:1.45}.notice-preview small{color:#8090a8;font-size:11px}.quick-action-grid{display:grid;grid-template-columns:1fr 1fr;gap:10px}.quick-action-grid button{min-height:86px;padding:16px;border:1px solid #e1e9f4;border-radius:14px;background:#fbfcff;color:#233452;text-align:left;transition:transform .16s ease,border-color .16s ease,box-shadow .16s ease}.quick-action-grid button:hover{transform:translateY(-2px);border-color:#a9c0ed;box-shadow:0 10px 22px #2b559614}.quick-action-grid b,.quick-action-grid span{display:block}.quick-action-grid b{font-size:13px;margin-bottom:7px}.quick-action-grid span{font-size:12px;color:var(--fs-muted);line-height:1.4}.dark .dashboard-panel,.dark .dashboard-stats article,.dark .access-code-card{background:var(--surface)}.dark .directory-filters{background:#ffffff06}.dark .directory-filters input,.dark .directory-filters select,.dark .activity-filters input,.dark .activity-filters select,.dark .icon-button,.dark .secondary-button{background:#20263a;color:var(--text);border-color:var(--line)}.dark .quick-action-grid button{background:#20263a;border-color:var(--line);color:var(--text)}@media (max-width:1050px){.dashboard-stats{grid-template-columns:repeat(2,1fr)}.directory-filters{grid-template-columns:1fr 1fr}.dashboard-intro{align-items:flex-start}.activity-filters{flex-wrap:wrap}}@media (max-width:720px){.dashboard-intro,.dashboard-two-column,.dashboard-bottom-grid{grid-template-columns:1fr;display:grid}.dashboard-intro{gap:16px}.access-code-card{min-width:0;width:100%}.dashboard-stats{grid-template-columns:1fr 1fr;gap:10px}.dashboard-stats article{min-height:118px;padding:16px}.dashboard-stats strong{font-size:28px}.dashboard-panel{padding:18px;border-radius:16px}.panel-heading{flex-wrap:wrap}.directory-filters,.quick-action-grid{grid-template-columns:1fr}.activity-filters{width:100%}.activity-filters label{flex:1;min-width:130px}.schedule-row{grid-template-columns:68px 1fr}.schedule-row em{display:none}.holiday-row{grid-template-columns:92px 1fr}.dashboard-intro h2{font-size:27px}}.timetable-wizard{position:fixed;top:0;right:0;bottom:0;left:0;z-index:80;color:#1d2a42}.wizard-backdrop{position:absolute;top:0;right:0;bottom:0;left:0;background:#0f1a2f7a;-webkit-backdrop-filter:blur(3px);backdrop-filter:blur(3px)}.wizard-shell{position:relative;margin:18px auto;width:min(1200px,calc(100% - 36px));height:calc(100vh - 36px);display:grid;grid-template-rows:auto auto 1fr auto;background:#fff;border-radius:24px;box-shadow:0 24px 80px #0b1b4052;overflow:hidden}.wizard-shell>header{min-height:0;height:auto;padding:22px 30px;border-bottom:1px solid #e8eef7}.wizard-shell header h2{font-size:24px;margin:4px 0 0}.wizard-close{width:38px;height:38px;border-radius:10px;background:#f3f6fa;color:#60708c;font-size:25px}.wizard-steps{display:flex;justify-content:center;gap:8px;list-style:none;margin:0;padding:18px 24px;border-bottom:1px solid #edf1f6;overflow:auto}.wizard-steps li{display:flex;align-items:center;gap:7px;color:#8292aa;white-space:nowrap;font-size:12px;font-weight:700}.wizard-steps li:after{content:"";display:block;width:18px;height:2px;background:#e2e9f2;margin-left:5px}.wizard-steps li:last-child:after{display:none}.wizard-steps span{width:28px;height:28px;display:grid;place-items:center;border-radius:50%;background:#eef2f7}.wizard-steps .active{color:#336fee}.wizard-steps .active span{background:#367df1;color:#fff;box-shadow:0 7px 15px #367df155}.wizard-steps .done span{background:#e9f4ff;color:#3477e8}.wizard-shell main{overflow:auto;padding:30px}.wizard-title{max-width:920px;margin:0 auto 18px}.wizard-title h3{font-size:24px;margin-bottom:7px}.wizard-title p,.wizard-hint{margin:0;color:#687b98;font-size:13px;line-height:1.55}.wizard-card{max-width:920px;margin:0 auto;padding:28px;border:1px solid #e5ecf5;border-radius:20px;background:#fff}.wizard-form-grid{display:grid;grid-template-columns:1fr 1fr;gap:18px}.wizard-form-grid label,.full-field,.cell-dialog label{display:grid;gap:7px;font-size:12px;font-weight:800;color:#61738f}.wizard-form-grid input,.wizard-form-grid select,.wizard-list input,.wizard-list select,.full-field textarea,.cell-dialog input,.cell-dialog select{height:46px;width:100%;border:1px solid #d9e3ef;border-radius:11px;background:#fbfcfe;color:#22314b;padding:0 13px;font:inherit;font-size:14px}.full-field textarea{height:190px;padding:13px;resize:vertical}.wizard-list{display:grid;gap:10px}.period-row,.course-row,.group-row{display:grid;align-items:center;gap:10px;padding:10px;border:1px solid #e2e9f3;border-radius:14px;background:#f9fbfe}.period-row{grid-template-columns:120px 1fr 1fr 88px 35px}.course-grid-head{font-size:11px;font-weight:800;color:#71839d;padding:0 7px}.course-row{grid-template-columns:minmax(190px,2fr) 90px 80px minmax(160px,1.5fr) 85px 35px}.group-row{grid-template-columns:1fr 100px 18px 100px 35px}.period-row button,.course-row button,.group-row button{width:34px;height:34px;border-radius:9px;background:#fff0f2;color:#e24d5c;font-size:20px}.check{display:flex;align-items:center;gap:6px;font-size:12px;color:#596b85;font-weight:700}.check input{width:15px;height:15px}.outline-action{justify-self:start;border:1px dashed #75a5ff;border-radius:10px;background:#f8fbff;color:#316de2;padding:10px 13px;font-size:12px;font-weight:800}.grid-scroll{overflow:auto;border:1px solid #dfe7f2;border-radius:15px}.timetable-grid{width:100%;min-width:820px;border-collapse:collapse}.timetable-grid th,.timetable-grid td{border:1px solid #e1e8f1;padding:0;text-align:center}.timetable-grid thead th{height:76px;background:#f7f9fc;color:#62748f;font-size:12px}.timetable-grid thead small{display:block;margin-top:6px;font-weight:500;font-size:10px}.timetable-grid tbody th{width:74px;background:#fbfcfe;font-size:12px}.timetable-grid td{height:76px}.grid-cell{width:100%;height:100%;min-height:76px;border:0;background:#fff;color:#9aadbf;font-size:21px;transition:background .14s}.grid-cell:hover{background:#f0f6ff;color:#3377e9}.grid-cell.filled{padding:9px;background:#edf5ff;color:#2d65cf;text-align:left}.grid-cell.filled b,.grid-cell.filled span{display:block;font-size:11px;line-height:1.3}.grid-cell.filled span{margin-top:4px;color:#71829e;font-size:10px}.break-cell{background:#fffceb!important;color:#c28b00;font-size:11px;font-weight:800;text-transform:uppercase}.preview-sheet{padding:20px;border:1px solid #dfe7f1;border-radius:14px}.preview-meta{display:flex;justify-content:space-between;gap:12px;flex-wrap:wrap;margin-bottom:18px;font-size:13px}.preview-notes{margin-top:20px;color:#526681;font-size:12px}.preview-notes p{margin:5px 0}.publish-state{max-width:560px;margin:18px auto;text-align:center}.publish-check{width:62px;height:62px;margin:0 auto 18px;display:grid;place-items:center;border-radius:20px;background:#eafbf1;color:#0ba866;font-size:30px}.publish-state h2{font-size:28px}.publish-state>p:not(.eyebrow){max-width:480px;margin:12px auto;color:#61748f;line-height:1.6}.check-list{margin:22px auto 0;padding:18px;text-align:left;display:grid;gap:10px;border:1px dashed #c5d7ee;border-radius:15px;background:#fbfdff}.check-list b{color:#263752}.check-list span{color:#5f7491;font-size:13px}.wizard-shell footer{display:flex;align-items:center;justify-content:space-between;padding:18px 30px;border-top:1px solid #e8eef7}.wizard-shell footer>div{display:flex;gap:10px}.wizard-shell footer button{padding:12px 17px;border-radius:11px;font-weight:800;font-size:13px}.ghost-action{background:#f2f5f9;color:#657892}.ghost-action:disabled{opacity:.45}.cell-modal{position:fixed;top:0;right:0;bottom:0;left:0;z-index:90;display:grid;place-items:center;padding:20px;background:#0f1a2f8c}.cell-dialog{width:min(500px,100%);max-height:90vh;overflow:auto;display:grid;gap:13px;padding:26px;border-radius:20px;background:#fff;box-shadow:0 24px 70px #0f1a2f59}.cell-dialog h3{font-size:20px}.type-toggle{display:grid;grid-template-columns:1fr 1fr;gap:8px;padding:5px;border-radius:12px;background:#eff3f8}.type-toggle button{height:40px;border-radius:9px;background:transparent;color:#62748f;font-weight:800}.type-toggle .selected{background:#5e3de4;color:#fff}.cell-dialog .modal-actions{margin-top:7px}.cell-dialog .modal-actions button:first-child{margin-right:auto;color:#d74655;background:#fff1f2;border-radius:10px;padding:10px 12px}@media (max-width:760px){.wizard-shell{width:100%;height:100vh;margin:0;border-radius:0}.wizard-shell>header,.wizard-shell main,.wizard-shell footer{padding-left:18px;padding-right:18px}.wizard-steps{justify-content:flex-start}.wizard-steps small{display:none}.wizard-form-grid{grid-template-columns:1fr}.period-row{grid-template-columns:1fr 1fr 1fr 36px}.period-row .check{grid-column:1/4}.course-row{grid-template-columns:1fr 1fr 36px}.course-row select:first-child{grid-column:1/3}.group-row{grid-template-columns:1fr 75px 14px 75px 34px}.wizard-shell footer{gap:10px}.wizard-shell footer>div{gap:7px}.wizard-shell footer button{padding:11px}.activity-table{min-width:780px}}html,body,button,input,select,textarea{font-family:Open Sans,OpenAI Sans,Inter,Arial,sans-serif}.shell header h1{font-size:29px;letter-spacing:-.9px}.nav{height:50px;font-size:14px;gap:15px;padding:0 21px}.nav i{font-size:19px}.shell nav{gap:6px;padding:19px 16px}.shell button{transition:transform .14s ease,box-shadow .14s ease,background-color .14s ease,border-color .14s ease}.shell button:active{transform:scale(.98)}.hero-secondary{background:#ffffff29!important;border:1px solid rgba(255,255,255,.55)!important;margin-left:auto}.page-hero .hero-secondary+.hero-action{margin-left:10px}.professors-hero{margin-bottom:28px}.hero-total{margin-left:auto;min-width:142px;padding:17px 20px;border:1px solid rgba(255,255,255,.35);border-radius:18px;text-align:center;background:#ffffff1a}.hero-total strong,.hero-total small{display:block;color:#fff}.hero-total strong{font-size:31px;line-height:1}.hero-total small{text-transform:uppercase;font-size:10px;font-weight:800;margin-top:8px}.professor-searchbar{display:grid;grid-template-columns:1fr 275px;align-items:center;gap:12px;padding:12px 14px;border:1px solid var(--fs-line);border-radius:18px;background:#fff;margin-bottom:24px}.professor-searchbar>span{position:absolute;margin-left:10px;color:#8092ac;font-size:20px}.professor-searchbar input,.professor-searchbar select{height:48px;border:0;background:#f8faff;border-radius:11px;color:#40526d;padding:0 15px;font:inherit;font-size:14px;outline:none}.professor-searchbar input{padding-left:38px;border:1px solid transparent}.professor-searchbar input:focus,.professor-searchbar select:focus{border-color:#4f7bed;box-shadow:0 0 0 3px #4f7bed1f}.professor-cards{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px}.professor-card{display:flex;gap:14px;min-height:210px;padding:21px;border:1px solid var(--fs-line);border-radius:18px;background:#fff;box-shadow:0 7px 20px #20376409}.professor-avatar{width:54px;height:54px;flex:0 0 54px;border-radius:16px;display:grid;place-items:center;background:#edf4ff;color:#3676e6;font-size:22px;font-weight:800}.professor-card-main{min-width:0;flex:1}.professor-card-title{display:flex;gap:8px;align-items:flex-start;justify-content:space-between}.professor-card h3{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;margin:2px 0 7px;font-size:17px}.status-pill{padding:4px 8px;border-radius:99px;background:#eaf9f2;color:#079c68;font-size:10px;font-weight:800}.designation-tag,.event-kind{display:inline-block;padding:4px 7px;background:#edf4ff;color:#3974e6;border-radius:6px;font-size:10px;font-weight:800}.professor-card p{margin:12px 0 0;color:#60728d;font-size:12px;word-break:break-word}.professor-card small{display:block;margin-top:14px;color:#7b8da7;font-size:11px}.calendar-tabs{display:grid;grid-template-columns:repeat(4,1fr);gap:4px;padding:8px;margin-bottom:20px;border:1px solid var(--fs-line);border-radius:18px;background:#fbfcff}.calendar-tabs button{height:46px;border-radius:12px;background:transparent;color:#60728e;font-size:14px;font-weight:800}.calendar-tabs button.active{background:#eafaf1;color:#009d68}.calendar-search{height:60px;display:flex;align-items:center;gap:10px;padding:0 20px;border:1px solid var(--fs-line);border-radius:16px;background:#fff;color:#8091ab;margin-bottom:25px}.calendar-search input{width:100%;border:0;outline:0;font:inherit;color:#263650}.support-hero{max-width:1000px;margin:5px auto 32px;padding:54px;text-align:center;border-radius:28px;background:linear-gradient(115deg,#367df1,#8058ef);color:#fff;box-shadow:0 18px 34px #465bd126}.support-hero h2{font-size:31px;margin:17px 0 10px}.support-hero p{max-width:570px;margin:auto;line-height:1.6;color:#eef2ff}.support-orb{display:grid;place-items:center;width:70px;height:70px;margin:auto;border:1px solid rgba(255,255,255,.3);border-radius:20px;background:#ffffff1f;font-size:30px}.support-modal-overlay{position:fixed;z-index:120;top:0;right:0;bottom:0;left:0;display:grid;place-items:center;padding:20px;background:#0f182c8c;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px)}.support-ticket-dialog,.timetable-import-dialog{position:relative;width:min(620px,100%);max-height:90vh;overflow:auto;padding:36px 44px;border-radius:26px;background:#fff;box-shadow:0 25px 80px #0a152a52;display:grid;gap:18px}.dialog-close{position:absolute;right:18px;top:16px;width:34px;height:34px;border-radius:10px;background:#f3f6fa;color:#64738d;font-size:24px}.support-ticket-title{display:flex;gap:16px;align-items:center;padding-bottom:20px;border-bottom:1px solid #e9eef6}.support-ticket-title>span{width:62px;height:62px;display:grid;place-items:center;border:1px solid #cad9ef;border-radius:18px;background:#edf5ff;color:#377af0;font-size:28px}.support-ticket-title h2{margin:0 0 6px;font-size:26px}.support-ticket-title p{margin:0;color:#647792}.ticket-grid{display:grid;grid-template-columns:1fr 1fr;gap:16px}.support-ticket-dialog label{display:grid;gap:7px;color:#62748f;font-size:12px;text-transform:uppercase;letter-spacing:.04em;font-weight:800}.support-ticket-dialog input,.support-ticket-dialog select,.support-ticket-dialog textarea{width:100%;height:50px;border:1px solid #dbe5f1;border-radius:12px;background:#f9fbfe;color:#273650;padding:0 14px;font:inherit;text-transform:none;letter-spacing:normal;outline:0}.support-ticket-dialog textarea{height:150px;padding:14px;resize:vertical}.support-ticket-dialog input:focus,.support-ticket-dialog select:focus,.support-ticket-dialog textarea:focus{background:#fff;border-color:#3478ef;box-shadow:0 0 0 3px #3478ef1f}.modal-actions{display:flex;justify-content:flex-end;gap:12px;margin-top:8px}.modal-actions .primary{height:52px;border:0;border-radius:13px;padding:0 28px}.modal-actions .subtle-btn{height:52px}.settings-page{max-width:1370px;margin:0 auto}.settings-title{margin-bottom:28px}.settings-title h2{font-size:30px;letter-spacing:-1px;margin:4px 0 8px}.settings-title>p:last-child{margin:0;color:var(--fs-muted)}.settings-layout{display:grid;grid-template-columns:330px 1fr;gap:32px}.settings-profile{border:1px solid var(--fs-line);border-radius:24px;overflow:hidden;background:#fff;text-align:center;min-height:540px}.settings-cover{height:124px;background:linear-gradient(115deg,#397df0,#8158ed)}.settings-avatar{width:86px;height:86px;margin:-46px auto 18px;display:grid;place-items:center;border:5px solid #fff;border-radius:25px;background:#eef2ff;color:#4c5fe0;font-size:23px;font-weight:800;box-shadow:0 8px 18px #2f3f7a29}.settings-profile h3{margin:0 0 10px;font-size:24px}.role-badge{display:inline-block;max-width:240px;padding:9px 12px;border-radius:8px;background:#f4f7fb;color:#687b98;font-size:11px;font-weight:800;text-transform:uppercase;line-height:1.4}.hub-code{margin:30px;padding:22px;text-align:left;border:1px solid #eadfff;border-radius:17px;background:#faf5ff}.hub-code small{display:block;text-transform:uppercase;letter-spacing:.08em;color:#8848e5;font-size:10px;font-weight:800}.hub-code strong{display:block;margin:12px 0;font-size:21px;letter-spacing:.1em;color:#7142c9}.hub-code p{margin:14px 0 0;color:#8d65c8;font-size:12px;line-height:1.5}.copy-settings-code{padding:8px 12px;border-radius:9px;background:#fff;color:#4d70e5;border:1px solid #dbe4f7;font-weight:800}.settings-details{display:grid;gap:22px}.settings-details section{padding:30px 38px;border:1px solid var(--fs-line);border-radius:24px;background:#fff}.settings-details h3{margin:0 0 25px;padding-bottom:20px;border-bottom:1px solid #edf1f6;font-size:20px}.settings-info-grid{display:grid;grid-template-columns:1fr 1fr;gap:18px 24px}.settings-info-grid label{display:grid;gap:8px;color:#556783;font-size:12px;font-weight:800}.settings-info-grid input{height:50px;border:1px solid #dbe5f1;border-radius:12px;background:#fbfcfe;padding:0 14px;color:#263650;font:inherit}.timetable-import-dialog{text-align:center;max-width:520px}.timetable-import-dialog h2{margin:2px 0 0;font-size:25px}.timetable-import-dialog>p{margin:0;color:#637692;line-height:1.55}.import-icon{width:66px;height:66px;margin:auto;display:grid;place-items:center;border-radius:20px;background:#edf5ff;color:#367df1;font-size:30px}.file-drop{display:grid;gap:8px;padding:25px;border:1px dashed #8db1ec;border-radius:16px;background:#f9fbff;color:#386fd9;font-weight:800;cursor:pointer}.file-drop input{position:absolute;width:1px;height:1px;opacity:0}.file-drop span,.timetable-import-dialog small{color:#7588a4;font-size:11px;font-weight:500;line-height:1.55}.import-status{min-height:20px;font-size:12px!important}.timetable-import-dialog .primary{height:50px;border:0;border-radius:12px}.timetable-import-dialog .primary:disabled{opacity:.55;cursor:not-allowed}@media (max-width:1050px){.professor-cards{grid-template-columns:repeat(2,1fr)}.settings-layout{grid-template-columns:280px 1fr}}@media (max-width:720px){.shell header h1{font-size:23px}.nav{font-size:13px}.page-hero .hero-secondary+.hero-action{margin-left:0}.hero-secondary,.hero-total{margin-left:0}.professor-searchbar,.ticket-grid,.settings-info-grid,.professor-cards{grid-template-columns:1fr}.calendar-tabs{grid-template-columns:1fr 1fr}.support-hero{padding:38px 22px;border-radius:22px}.support-hero h2{font-size:27px}.support-ticket-dialog,.timetable-import-dialog{padding:30px 22px;border-radius:21px}.settings-layout{grid-template-columns:1fr}.settings-details section{padding:24px 20px}.settings-profile{min-height:auto}.hub-code{margin:24px}.settings-title h2{font-size:26px}}.shell>aside{z-index:20;scrollbar-width:thin}.shell main{min-height:100vh}.content{width:100%;animation:page-enter .18s ease-out}.shell button{font-weight:600}.shell button:focus-visible,input:focus-visible,select:focus-visible{outline:3px solid rgba(62,120,239,.22);outline-offset:2px}.primary,.hero-action,.secondary-button,.icon-button{transition:transform .14s ease,box-shadow .14s ease,filter .14s ease!important}.primary:hover,.hero-action:hover,.secondary-button:hover,.icon-button:hover{transform:translateY(-1px);filter:brightness(1.015)}.primary:active,.hero-action:active,.secondary-button:active,.icon-button:active{transform:translateY(0) scale(.985)}button:disabled{cursor:wait;opacity:.68}.settings-page{padding-bottom:28px}.settings-page .settings-layout{align-items:start}.settings-profile{position:sticky;top:24px;width:auto;min-width:0;display:block!important;border-right:1px solid var(--fs-line)!important;padding:0!important;background:#fff!important}.settings-profile .hub-code{display:block!important}.settings-details section{box-shadow:0 8px 24px #23396609}.settings-details h3{font-weight:650}.settings-info-grid input{font-weight:500}.student-directory-page{display:grid;gap:16px}.student-toolbar{display:grid;grid-template-columns:minmax(0,1fr) 220px;gap:12px;padding:14px;border:1px solid var(--fs-line);border-radius:18px;background:var(--surface);box-shadow:0 7px 20px #20376406}.student-search{height:48px;display:flex;align-items:center;gap:10px;padding:0 16px;border-radius:12px;background:#f7f9fd;color:#7890af}.student-search input{width:100%;border:0;outline:0;background:transparent;color:var(--text);font:inherit;font-size:14px}.student-toolbar select{height:48px;padding:0 14px;border:1px solid #e3e9f2;border-radius:12px;background:#fff;color:#435572;font:inherit}.student-directory-summary{display:flex;justify-content:space-between;gap:12px;padding:0 4px;color:#536985;font-size:13px}.student-directory-summary small{color:#8291a7}.student-table{border:1px solid var(--fs-line);border-radius:18px;background:var(--surface);box-shadow:0 7px 20px #20376406}.student-table table{min-width:720px}.student-name{display:flex;align-items:center;gap:11px}.student-name>span{width:36px;height:36px;display:grid;place-items:center;border-radius:11px;background:#edf4ff;color:#3676e6;font-weight:700}.student-name b,.student-name small{display:block}.student-name b{font-size:13px;font-weight:650}.student-name small{margin-top:3px;color:#8291a7;font-size:11px}.students-hero{margin-bottom:26px}.dashboard-panel,.dashboard-stats article,.professor-card,.student-table{transition:box-shadow .18s ease,transform .18s ease}.dashboard-panel:hover,.dashboard-stats article:hover,.professor-card:hover{box-shadow:0 13px 28px #23396612}.dashboard-intro h2,.settings-title h2{font-weight:700}.dashboard-intro>div>p:last-child,.panel-heading p:not(.eyebrow){font-weight:400}.metric-label,.eyebrow{font-weight:650!important}.dashboard-stats strong{font-weight:700}.hero-total small,.status-pill,.designation-tag,.event-kind,.role-badge{font-weight:650}.support-ticket-dialog label,.settings-info-grid label,.calendar-tabs button,.hero-action,.primary{font-weight:600}@keyframes page-enter{0%{opacity:.45;transform:translateY(4px)}to{opacity:1;transform:translateY(0)}}@media (max-width:900px){.shell>aside{position:fixed;left:0;top:0;transform:translate(-101%);transition:transform .18s ease}.shell.menu-open>aside{transform:translate(0)}.mobile-menu{display:inline-grid;place-items:center;margin-right:12px}.student-toolbar{grid-template-columns:1fr}.settings-profile{position:relative;top:auto}}@media (max-width:720px){.content{padding:24px 18px}.student-directory-summary{align-items:flex-start;flex-direction:column}.student-toolbar{padding:10px}.settings-page{padding-bottom:10px}.settings-title{margin-bottom:20px}}.action-pending{position:fixed;z-index:160;right:24px;bottom:24px;display:flex;align-items:center;gap:10px;max-width:min(360px,calc(100vw - 36px));padding:13px 16px;border:1px solid #dce7f8;border-radius:13px;background:#fff;color:#39516f;box-shadow:0 14px 34px #162c5529;font-size:13px;font-weight:600;animation:toast-in .15s ease-out}.action-pending span{width:15px;height:15px;border:2px solid #d9e7ff;border-top-color:#477bed;border-radius:50%;animation:spin .7s linear infinite}@keyframes toast-in{0%{opacity:0;transform:translateY(6px)}to{opacity:1;transform:translateY(0)}}@keyframes spin{to{transform:rotate(360deg)}}.shell:not(.dark) main{background:radial-gradient(900px 500px at 78% -8%,rgba(112,74,230,.12),transparent 62%),radial-gradient(720px 420px at 12% 14%,rgba(46,131,245,.1),transparent 68%),#f5f7fc}.shell:not(.dark) .content{background:transparent}.eyebrow.purple,.dashboard-intro .eyebrow,.panel-heading .eyebrow{display:block;width:auto;background:transparent!important;color:#6980a0!important;font-size:10px!important;font-weight:600!important;letter-spacing:.07em!important;line-height:1.2!important}.brand{font-weight:650!important;letter-spacing:-.8px}.brand span span{font-weight:600}.dashboard-intro{position:relative;padding:6px 4px 14px;margin-bottom:20px}.dashboard-intro h2{margin:6px 0 8px;font-size:29px;font-weight:700;letter-spacing:-1.05px}.dashboard-intro>div>p:last-child{max-width:640px;font-size:14px;color:#647894}.access-code-card{border:1px solid rgba(92,111,218,.22);background:linear-gradient(145deg,#fff,#edf2ff);box-shadow:12px 14px 24px #3146881a,inset 1px 1px #fffffff2,inset -1px -1px #8293c91a}.access-code-card:before{content:"";position:absolute;top:1px;right:1px;bottom:1px;left:1px;border-radius:17px;pointer-events:none;background:linear-gradient(120deg,rgba(255,255,255,.55),transparent 45%)}.access-code-card>*{position:relative;z-index:1}.dashboard-stats{gap:18px;margin-bottom:20px}.dashboard-stats article{position:relative;overflow:hidden;min-height:145px;border:1px solid rgba(104,125,199,.17);border-radius:20px;background:linear-gradient(145deg,#fff,#eef3ff);box-shadow:12px 14px 24px #3146881a,-5px -5px 15px #ffffffd1,inset 1px 1px #fffffff2,inset -1px -1px #7d8fc41a}.dashboard-stats article:after{content:"";position:absolute;width:90px;height:90px;right:-28px;bottom:-40px;border-radius:50%;background:linear-gradient(135deg,#3d83f52e,#7e4ceb17)}.dashboard-stats article:nth-child(2):after{background:linear-gradient(135deg,#8f4eec2e,#4b75f714)}.dashboard-stats article:nth-child(3):after{background:linear-gradient(135deg,#2fab8a26,#467bf612)}.dashboard-stats article:nth-child(4):after{background:linear-gradient(135deg,#edb03729,#8b5aee12)}.dashboard-stats article>*{position:relative;z-index:1}.dashboard-stats strong{font-size:35px;color:#213454}.dashboard-panel{position:relative;overflow:hidden;border:1px solid rgba(104,125,199,.18);border-radius:22px;background:linear-gradient(145deg,#fffffffa,#f0f5fff0);box-shadow:13px 16px 30px #2e427d1a,-6px -6px 16px #ffffffc7,inset 1px 1px #ffffffe6,inset -1px -1px #7a8fca14}.dashboard-panel:before{content:"";position:absolute;top:0;right:0;bottom:0;left:0;pointer-events:none;background:linear-gradient(125deg,rgba(255,255,255,.52),transparent 38%,rgba(114,91,232,.025))}.dashboard-panel>*{position:relative;z-index:1}.dashboard-panel:hover,.dashboard-stats article:hover{transform:translateY(-3px);box-shadow:16px 22px 36px #2e427d24,-6px -6px 18px #ffffffdb,inset 1px 1px #fff}.dashboard-list .schedule-row,.notice-preview article,.directory-table tbody tr,.activity-table tbody tr{border-radius:13px;background:#f8fbffd1}.quick-action-grid button{border:1px solid rgba(106,128,200,.16);border-radius:15px;background:linear-gradient(145deg,#fff,#edf2ff);box-shadow:5px 7px 14px #43569414,inset 1px 1px #fff}.quick-action-grid button:hover{transform:translateY(-2px);box-shadow:8px 11px 18px #4356941f}.panel-heading h3{font-weight:700}.text-action{font-weight:600!important}.profile{transition:transform .16s ease,box-shadow .16s ease}.profile:hover{transform:translateY(-1px);box-shadow:0 8px 18px #4462c724}@media (max-width:720px){.dashboard-intro{padding-bottom:8px}.dashboard-intro h2{font-size:25px}.dashboard-stats{gap:12px}.dashboard-stats article,.dashboard-panel{border-radius:18px}}.page-hero .hero-secondary{color:#fff!important;text-shadow:0 1px 1px rgba(27,42,110,.18)}.page-hero .hero-secondary:hover{background:#ffffff3d!important;color:#fff!important}.timetable-panel{position:relative;overflow:hidden;border:1px solid rgba(104,125,199,.18)!important;border-radius:23px!important;background:linear-gradient(145deg,#fff,#eef4ff)!important;box-shadow:14px 17px 32px #2e427d1c,-6px -6px 17px #fffc,inset 1px 1px #fffffff5,inset -1px -1px #7a8fca14}.timetable-panel:before{content:"";position:absolute;top:0;right:0;bottom:0;left:0;pointer-events:none;background:linear-gradient(122deg,rgba(255,255,255,.64),transparent 40%,rgba(111,86,235,.03))}.timetable-panel>*{position:relative;z-index:1}.timetable-panel .panel-head h3{font-size:21px;font-weight:700}.timetable-panel .table-wrap{padding:2px}.timetable-panel tbody tr{transition:transform .16s ease,box-shadow .16s ease}.timetable-panel tbody tr:hover{transform:translateY(-2px);box-shadow:0 9px 20px #374d8f17}.timetable-panel tbody td{background:#f9fcffd1;border-top:1px solid rgba(210,222,241,.72);border-bottom:1px solid rgba(210,222,241,.72)}.timetable-panel tbody td:first-child{border-left:1px solid rgba(210,222,241,.72);border-radius:15px 0 0 15px}.timetable-panel tbody td:last-child{border-right:1px solid rgba(210,222,241,.72);border-radius:0 15px 15px 0}.timetable-panel .table-action{border:1px solid rgba(80,124,229,.18);border-radius:10px;background:linear-gradient(145deg,#fff,#edf3ff);padding:8px 11px;box-shadow:3px 4px 8px #3a549812}.timetable-panel .table-action.danger{border-color:#e65b6c2e;background:linear-gradient(145deg,#fff,#fff1f3)}.info-callout+.timetable-panel{border-color:#5b6fdf47!important;background:linear-gradient(145deg,#fff,#eef3ff 54%,#e8edff)!important;box-shadow:18px 22px 42px #37468e29,-8px -8px 20px #ffffffe6,inset 2px 2px #fffffffa,inset -2px -2px #6f85c81a}.info-callout+.timetable-panel:after{content:"";position:absolute;z-index:0;width:250px;height:250px;right:-100px;top:-135px;border-radius:50%;background:radial-gradient(circle,rgba(116,83,234,.15),rgba(61,132,245,.03) 62%,transparent 70%);pointer-events:none}.info-callout+.timetable-panel .panel-head{padding:4px 2px 8px}.info-callout+.timetable-panel .panel-head h3{color:#1b2b50}.info-callout+.timetable-panel thead{background:#e9efffa3}.info-callout+.timetable-panel thead th:first-child{border-radius:11px 0 0 11px}.info-callout+.timetable-panel thead th:last-child{border-radius:0 11px 11px 0}.info-callout+.timetable-panel tbody td{background:linear-gradient(145deg,#fffffff5,#f2f7ffeb);box-shadow:inset 0 1px #fffffff2}.settings-admin-access{display:grid;grid-template-columns:auto 1fr auto;align-items:center;gap:15px;max-width:760px;margin:0 0 24px;padding:16px 18px;border:1px solid rgba(104,125,199,.22);border-radius:18px;background:linear-gradient(135deg,#fff,#eef3ff);box-shadow:10px 12px 24px #34468917,inset 1px 1px #fffffff5}.settings-admin-access p{margin:0 0 3px;color:#7185a4;font-size:10px;font-weight:700;letter-spacing:.08em}.settings-admin-access h3{margin:0;color:#273f9f;font-size:20px;letter-spacing:.08em}.settings-admin-access small{display:block;margin-top:4px;color:#687b98;font-size:12px}.settings-access-icon{width:44px;height:44px;display:grid;place-items:center;border-radius:13px;background:linear-gradient(135deg,#3f83f4,#8057ea);color:#fff;font-size:22px;box-shadow:0 7px 15px #4860d23d}.settings-access-copy{padding:9px 13px;border:1px solid rgba(83,113,222,.23);border-radius:10px;background:#fff;color:#3f68d7;font-size:12px;font-weight:650}.side-actions{padding:12px 12px 0}.theme-row,.logout-row{height:42px!important;margin:0 0 8px!important;padding:0 14px!important;border-radius:12px!important;font-size:13px!important;font-weight:600!important}.theme-row{background:#f4f7fc!important;border:1px solid #e2e9f3!important;color:#526782!important}.logout-row{background:#fff6f7!important;border:1px solid #ffd9df!important;color:#dd4d5a!important}.dark .theme-row,.dark .logout-row{background:#ffffff0d!important;border-color:var(--line)!important}@media (max-width:720px){.settings-admin-access{grid-template-columns:auto 1fr;gap:12px}.settings-admin-access small{grid-column:1/-1}.settings-access-copy{grid-column:2;justify-self:start}}.shell>aside nav{padding:15px 13px!important;gap:5px!important}.nav{position:relative;height:43px!important;padding:0 13px!important;gap:11px!important;border:1px solid transparent!important;border-radius:13px!important;font-size:12.5px!important;font-weight:550!important;color:#58708f!important;transition:transform .16s ease,box-shadow .16s ease,background .16s ease!important}.nav i{width:17px!important;font-size:16px!important}.nav span{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.nav em{margin-left:auto;opacity:0;transform:translate(-4px);font-style:normal;font-size:20px;line-height:1;color:#6255e5;transition:opacity .16s ease,transform .16s ease}.nav:hover{transform:translate(2px);border-color:#6578d024!important;background:linear-gradient(145deg,#fff,#eff3ff)!important;box-shadow:5px 6px 14px #40539514,inset 1px 1px #ffffffe6}.nav:hover em,.nav.selected em{opacity:1;transform:translate(0)}.nav.selected{border-color:#6d64e724!important;background:linear-gradient(105deg,#edf1ff,#e8e6ff)!important;color:#4b42e6!important;box-shadow:6px 7px 15px #4b50b41c,inset 1px 1px #ffffffe0!important;font-weight:650!important}.shell>main>header{position:relative;overflow:hidden;min-height:104px!important;background:linear-gradient(115deg,#fffffffa,#f1f6fff5)!important;box-shadow:0 7px 18px #3043810e,inset 0 1px #fff}.shell>main>header:after{content:"";position:absolute;width:340px;height:180px;right:10%;top:-135px;border-radius:50%;background:radial-gradient(circle,rgba(110,80,232,.12),transparent 68%);pointer-events:none}.shell>main>header h1{font-size:28px!important;font-weight:700!important;letter-spacing:-1px!important}.shell>main>header .eyebrow{font-size:10px!important;color:#6c82a2!important;font-weight:600!important}.head-actions{padding:7px 8px 7px 15px;border:1px solid rgba(106,127,202,.16);border-radius:16px;background:#ffffffb3;box-shadow:5px 6px 15px #4253950f,inset 1px 1px #ffffffe6}.identity b{font-size:14px!important;font-weight:650!important}.identity small{font-size:11px!important;font-weight:500!important}.profile{border-radius:12px!important}@media (max-width:720px){.shell>main>header{min-height:82px!important}.shell>main>header h1{font-size:23px!important}.head-actions{padding:4px 5px 4px 9px}.identity{display:none}}.professors-hero{position:relative;overflow:hidden;border:1px solid rgba(255,255,255,.32);background:linear-gradient(125deg,#347ff0,#5267eb 48%,#8951e8)!important;box-shadow:18px 22px 38px #4454d133,inset 1px 1px #ffffff47,inset -2px -2px #3d2aac21}.professors-hero:before{content:"";position:absolute;width:250px;height:250px;top:-145px;right:8%;border-radius:50%;background:radial-gradient(circle,rgba(255,255,255,.22),rgba(255,255,255,.04) 58%,transparent 69%)}.professors-hero:after{width:180px!important;height:180px!important;left:-24px!important;bottom:-118px!important;background:#ffffff1a!important;box-shadow:0 0 0 36px #ffffff09}.professors-hero .hero-icon{box-shadow:8px 10px 18px #192c9a33,inset 1px 1px #ffffff40}.professors-hero .hero-total{box-shadow:8px 10px 20px #1b23912e,inset 1px 1px #ffffff38;-webkit-backdrop-filter:blur(5px);backdrop-filter:blur(5px)}.professors-hero h2{font-weight:700}.shell>main>header{border-bottom-color:#6f83c224!important;box-shadow:0 10px 22px #30438114,inset 0 1px #fff!important}.shell>main>header:before{content:"";position:absolute;top:0;right:0;bottom:0;left:0;background:linear-gradient(110deg,rgba(255,255,255,.55),transparent 42%);pointer-events:none}.shell>main>header>*{position:relative;z-index:1}.professor-directory-page{position:relative;padding:2px 0}.professor-card{border-color:#687dc72e!important;background:linear-gradient(145deg,#fff,#eff4ff)!important;box-shadow:9px 11px 20px #2f438417,inset 1px 1px #fffffff0}.students-hero{position:relative;overflow:hidden;border:1px solid rgba(255,255,255,.32);background:linear-gradient(125deg,#347ff0,#5267eb 48%,#8951e8)!important;box-shadow:18px 22px 38px #4454d133,inset 1px 1px #ffffff47,inset -2px -2px #3d2aac21}.students-hero:before{content:"";position:absolute;width:260px;height:260px;top:-154px;right:8%;border-radius:50%;background:radial-gradient(circle,rgba(255,255,255,.22),rgba(255,255,255,.04) 58%,transparent 69%)}.students-hero:after{width:180px!important;height:180px!important;left:-24px!important;bottom:-118px!important;background:#ffffff1a!important;box-shadow:0 0 0 36px #ffffff09}.students-hero .hero-icon,.students-hero .hero-total{box-shadow:8px 10px 19px #192c9a33,inset 1px 1px #ffffff40}.students-hero .hero-total{-webkit-backdrop-filter:blur(5px);backdrop-filter:blur(5px)}.student-toolbar{border-color:#687dc72e!important;background:linear-gradient(145deg,#fff,#edf3ff)!important;box-shadow:10px 12px 24px #30438117,inset 1px 1px #fffffff2}.student-toolbar select{box-shadow:inset 1px 1px #ffffffd9}.student-table{border-color:#687dc72e!important;background:linear-gradient(145deg,#fff,#eef4ff)!important;box-shadow:12px 14px 28px #3043811a,inset 1px 1px #fffffff2}.student-table tbody td{background:#fafcffd6;border-top-color:#d3dff1b8;border-bottom-color:#d3dff1b8}.student-table tbody tr{transition:transform .16s ease,box-shadow .16s ease}.student-table tbody tr:hover{transform:translateY(-2px);box-shadow:0 9px 20px #374d8f14}.student-name>span{box-shadow:4px 5px 10px #355bc41a,inset 1px 1px #ffffffd9}.shell>main>header{background:linear-gradient(120deg,#fff,#f5f8ff 48%,#edf2ff)!important;border-bottom:1px solid rgba(104,125,199,.22)!important;box-shadow:0 12px 26px #2b3d7a1c,inset 0 2px #fffffffa,inset 0 -1px #778ecd14!important}.shell>main>header:after{width:460px!important;height:210px!important;right:3%!important;top:-155px!important;background:radial-gradient(circle,rgba(117,79,234,.18),rgba(70,130,246,.07) 50%,transparent 72%)!important}.shell>main>header:before{background:linear-gradient(112deg,#ffffffc2,#ffffff21 47%,#7051e809)!important}.shell>main>header h1{text-shadow:0 1px 0 rgba(255,255,255,.9)}.head-actions{background:linear-gradient(145deg,#fff,#eef3ff)!important;box-shadow:7px 9px 17px #3b4d911a,inset 1px 1px #fff!important}.profile{background:linear-gradient(145deg,#fff,#eef2ff)!important;box-shadow:4px 5px 11px #465baa17,inset 1px 1px #fff}.quick-schedule-hero{position:relative;overflow:hidden;border:1px solid rgba(255,255,255,.35)!important;background:linear-gradient(125deg,#347ff0,#5267eb 47%,#8951e8)!important;box-shadow:20px 24px 42px #4454d13b,inset 1px 1px #ffffff4d,inset -2px -2px #3d2aac24}.quick-schedule-hero:before{content:"";position:absolute;width:275px;height:275px;top:-160px;right:8%;border-radius:50%;background:radial-gradient(circle,rgba(255,255,255,.25),rgba(255,255,255,.05) 57%,transparent 70%)}.quick-schedule-hero:after{width:190px!important;height:190px!important;left:-25px!important;bottom:-125px!important;background:#ffffff1c!important;box-shadow:0 0 0 38px #ffffff09}.quick-schedule-hero .hero-icon{box-shadow:9px 11px 20px #1629973b,inset 1px 1px #ffffff42}.quick-schedule-hero .hero-action{position:relative;border:1px solid rgba(255,255,255,.8);background:linear-gradient(145deg,#fff,#f0f3ff);box-shadow:9px 11px 20px #1e268e38,inset 1px 1px #fff}.quick-schedule-hero .hero-action:hover{transform:translateY(-2px);box-shadow:12px 15px 24px #1e268e45,inset 1px 1px #fff}@media (min-width:721px){.shell>main>header{margin:16px 20px 0;padding:22px 34px!important;min-height:96px!important;border:1px solid rgba(111,132,205,.24)!important;border-radius:22px;box-shadow:15px 17px 30px #2c3d7d24,-6px -6px 16px #ffffffd6,inset 2px 2px #fffffffa,inset -2px -2px #6e84c514!important}.shell>main>.content{padding-top:26px!important}}.notice-board-hero{position:relative;overflow:hidden;border:1px solid rgba(255,255,255,.35)!important;background:linear-gradient(125deg,#347ff0,#5267eb 47%,#8951e8)!important;box-shadow:20px 24px 42px #4454d13b,inset 1px 1px #ffffff4d,inset -2px -2px #3d2aac24}.notice-board-hero:before{content:"";position:absolute;width:270px;height:270px;top:-160px;right:8%;border-radius:50%;background:radial-gradient(circle,rgba(255,255,255,.24),rgba(255,255,255,.05) 58%,transparent 70%)}.notice-board-hero:after{width:185px!important;height:185px!important;left:-24px!important;bottom:-122px!important;background:#ffffff1a!important;box-shadow:0 0 0 37px #ffffff09}.notice-board-hero .hero-icon{box-shadow:9px 11px 20px #1629973b,inset 1px 1px #ffffff42}.notice-board-hero .hero-action{border:1px solid rgba(255,255,255,.82);background:linear-gradient(145deg,#fff,#f0f3ff);box-shadow:9px 11px 20px #1e268e38,inset 1px 1px #fff}.notice-board-hero .hero-action:hover{transform:translateY(-2px);box-shadow:12px 15px 24px #1e268e45,inset 1px 1px #fff}.reference-list .data-row{border-color:#687dc72e;background:linear-gradient(145deg,#fff,#eef4ff);box-shadow:10px 12px 24px #3043811a,inset 1px 1px #fffffff2}.reference-list .data-row:hover{transform:translateY(-2px);box-shadow:14px 17px 28px #30438121,inset 1px 1px #fff}.calendar-hero{position:relative;overflow:hidden;border:1px solid rgba(255,255,255,.35)!important;background:linear-gradient(125deg,#347ff0,#5267eb 47%,#8951e8)!important;box-shadow:20px 24px 42px #4454d13b,inset 1px 1px #ffffff4d,inset -2px -2px #3d2aac24}.calendar-hero:before{content:"";position:absolute;width:270px;height:270px;top:-160px;right:8%;border-radius:50%;background:radial-gradient(circle,rgba(255,255,255,.24),rgba(255,255,255,.05) 58%,transparent 70%)}.calendar-hero:after{width:185px!important;height:185px!important;left:-24px!important;bottom:-122px!important;background:#ffffff1a!important;box-shadow:0 0 0 37px #ffffff09}.calendar-hero .hero-icon{box-shadow:9px 11px 20px #1629973b,inset 1px 1px #ffffff42}.calendar-hero .hero-action{border:1px solid rgba(255,255,255,.82);background:linear-gradient(145deg,#fff,#f0f3ff);box-shadow:9px 11px 20px #1e268e38,inset 1px 1px #fff}.calendar-tabs{border-color:#687dc72e!important;background:linear-gradient(145deg,#fff,#edf3ff)!important;box-shadow:10px 12px 24px #30438117,inset 1px 1px #fffffff2}.calendar-tabs button{font-weight:600!important}.calendar-tabs button.active{box-shadow:5px 6px 12px #3297681a,inset 1px 1px #ffffffa6}.calendar-search{border-color:#687dc72e!important;background:linear-gradient(145deg,#fff,#eef4ff)!important;box-shadow:8px 10px 20px #30438112,inset 1px 1px #fffffff0}.calendar-search:focus-within{box-shadow:0 0 0 3px #4b79eb1f,8px 10px 20px #30438112,inset 1px 1px #fffffff0}.calendar-list .data-row{border-color:#687dc72e;background:linear-gradient(145deg,#fff,#eef4ff);box-shadow:10px 12px 24px #3043811a,inset 1px 1px #fffffff2}.support-hero{position:relative;overflow:hidden;border:1px solid rgba(255,255,255,.34)!important;background:linear-gradient(125deg,#347ff0,#5267eb 47%,#8951e8)!important;box-shadow:20px 24px 42px #4454d13b,inset 1px 1px #ffffff4d,inset -2px -2px #3d2aac24}.support-hero:before{content:"";position:absolute;width:290px;height:290px;top:-165px;right:8%;border-radius:50%;background:radial-gradient(circle,rgba(255,255,255,.24),rgba(255,255,255,.05) 58%,transparent 70%)}.support-hero:after{content:"";position:absolute;width:180px;height:180px;left:-26px;bottom:-122px;border-radius:50%;background:#ffffff1a;box-shadow:0 0 0 38px #ffffff09}.support-hero>*{position:relative;z-index:1}.support-orb{box-shadow:9px 11px 20px #1629973b,inset 1px 1px #ffffff42}.support-grid article{position:relative;overflow:hidden;border:1px solid rgba(104,125,199,.18)!important;background:linear-gradient(145deg,#fff,#eef4ff)!important;box-shadow:13px 16px 28px #3043811c,-5px -5px 15px #ffffffc7,inset 1px 1px #fffffff2}.support-grid article:before{content:"";position:absolute;top:0;right:0;bottom:0;left:0;pointer-events:none;background:linear-gradient(125deg,rgba(255,255,255,.55),transparent 42%,rgba(114,91,232,.025))}.support-grid article>*{position:relative;z-index:1}.support-grid article:hover{transform:translateY(-3px);box-shadow:17px 22px 36px #30438126,-5px -5px 15px #ffffffd6,inset 1px 1px #fff}.support-grid article.recommended{border-color:#5e58e440!important}.support-grid .feature-icon{box-shadow:6px 8px 14px #3c53a317,inset 1px 1px #ffffffdb}.settings-layout{display:block!important}.settings-layout .settings-details{max-width:920px}.settings-layout .settings-profile{display:none!important}.settings-admin-access h3{word-spacing:0;letter-spacing:.09em}.settings-admin-access{max-width:920px}@media (min-width:901px){.shell>aside{width:280px!important;flex-basis:280px!important;height:calc(100vh - 28px)!important;margin:14px 0 14px 14px;padding:18px 14px 14px!important;overflow:hidden;border:1px solid rgba(112,132,202,.19)!important;border-radius:24px;background:linear-gradient(160deg,#fff,#f4f7ff 58%,#edf1ff)!important;box-shadow:16px 19px 34px #2c3d7d21,-5px -5px 16px #ffffffe0,inset 1px 1px #fffffff7,inset -2px -2px #6e84c514}.shell>aside:before{content:"";position:absolute;width:260px;height:260px;right:-155px;top:-95px;border-radius:50%;background:radial-gradient(circle,rgba(101,73,233,.13),rgba(72,130,246,.035) 55%,transparent 70%);pointer-events:none}.shell>aside>*{position:relative;z-index:1}.brand{height:72px;padding:0 12px 18px!important;border-bottom:1px solid rgba(121,141,201,.14)!important;font-size:20px!important}.brand-icon{width:38px!important;height:38px!important;border:1px solid rgba(106,121,210,.13);box-shadow:4px 5px 10px #37489417,inset 1px 1px #fff}.workspace{padding:17px 13px 8px!important;font-size:9px!important;color:#7b8ca8!important}.shell>aside nav{overflow:auto;scrollbar-width:none}.side-actions{margin-top:auto;padding:10px 0 0!important;border-top:1px solid rgba(121,141,201,.13)}.theme-row,.logout-row{margin:0 0 7px!important}.shell>aside .nav{min-height:42px}.shell>aside .nav.selected{box-shadow:7px 8px 15px #4b50b421,inset 1px 1px #ffffffeb!important}}.wizard-loading{display:grid!important;place-items:center;min-height:360px}.wizard-loading-state{text-align:center;color:#5d718f}.wizard-loading-state span{display:block;width:34px;height:34px;margin:0 auto 16px;border:3px solid #dbe6fb;border-top-color:#4e76eb;border-radius:50%;animation:spin .72s linear infinite}.wizard-loading-state h2{margin:0 0 7px;font-size:22px}.wizard-loading-state p{margin:0;font-size:13px}.wizard-shell footer button:active,.academic-dialog .primary:active{transform:scale(.985)}.course-details-head{display:grid;grid-template-columns:112px minmax(170px,2fr) 88px 62px minmax(160px,1.35fr) 100px 42px;gap:10px;padding:0 12px;color:#6d35ee;text-transform:uppercase;font-size:11px;font-weight:900;letter-spacing:.03em}.course-reference-row{grid-template-columns:112px minmax(170px,2fr) 88px 62px minmax(160px,1.35fr) 100px 42px;padding:16px 20px;background:#fff;box-shadow:0 7px 18px #2d46740f}.course-reference-row input,.course-reference-row select{height:47px;border-radius:12px;background:#fbfcff}.course-reference-row button{width:46px;height:46px;border:1px solid #ffd1d8;border-radius:12px;background:#fff5f6;color:#f03555}.reference-cell-dialog{width:min(610px,100%);gap:16px;padding:18px 20px 22px;border-radius:18px}.reference-cell-dialog h3{text-align:center;font-size:22px}.reference-cell-dialog .type-toggle{padding:5px;border-radius:13px}.reference-cell-dialog .type-toggle button{height:47px;font-size:15px}.cell-two-fields{display:grid;grid-template-columns:1fr 1fr;gap:13px}.reference-cell-dialog label{color:#6b28e9;text-transform:uppercase;letter-spacing:.035em}.reference-cell-dialog label input,.reference-cell-dialog label select{margin-top:2px;text-transform:none;letter-spacing:normal;font-weight:600;background:#fbfcff}.stream-panel,.professor-panel,.lab-group-panel{border:1px solid #dce5f0;border-radius:17px;padding:16px;background:#fbfcff}.section-kicker{display:flex;justify-content:space-between;gap:12px;color:#6b28e9;text-transform:uppercase;font-size:13px;font-weight:900;letter-spacing:.03em}.section-kicker small{color:#5d7394;text-transform:none;letter-spacing:0}.stream-options,.lab-group-chips{display:grid;grid-template-columns:repeat(3,1fr);gap:10px;margin-top:12px}.stream-options button,.lab-group-chips button{min-height:74px;border:2px solid #dfe6f0;border-radius:15px;background:#fff;color:#263755;font-size:15px;font-weight:850}.stream-options button small{display:block;margin-top:7px;color:#90a3bf;font-size:11px}.stream-options button.selected,.lab-group-chips button.selected{border-color:#7229f2;background:#f2e8ff;color:#6c28e9;box-shadow:0 5px 13px #6a28e921}.stream-panel p{margin:11px 0 0;text-align:center;color:#536b8d;font-size:12px;line-height:1.5}.lab-group-chips{grid-template-columns:repeat(4,1fr)}.lab-group-chips button{min-height:44px}.lab-group-chips span{grid-column:1/-1;color:#6d7f99;font-size:12px}.manual-divider{display:flex;align-items:center;gap:10px;margin:14px 0;color:#8fa0bc;font-size:12px;font-weight:900;text-transform:uppercase;letter-spacing:.08em}.manual-divider:before,.manual-divider:after{content:"";height:1px;flex:1;background:#dce5f0}.reference-cell-dialog .modal-actions{display:flex;align-items:center;gap:9px}.reference-cell-dialog .modal-actions button{padding:11px 14px;border-radius:10px;font-weight:800}.reference-cell-dialog .modal-actions .primary{margin-left:auto}@media (max-width:720px){.course-details-head{display:none}.course-reference-row{grid-template-columns:1fr 1fr;padding:13px}.course-reference-row button{justify-self:end}.cell-two-fields{grid-template-columns:1fr}.reference-cell-dialog{padding:16px}.stream-options{grid-template-columns:1fr}.stream-options button{min-height:56px}.lab-group-chips{grid-template-columns:repeat(2,1fr)}}.structured-import{text-align:left}.structured-import>.eyebrow,.structured-import>h2,.structured-import>p:first-of-type{text-align:center}.import-progress{display:grid;grid-template-columns:1fr 1fr;gap:8px;margin:0;padding:0;list-style:none}.import-progress li{display:flex;align-items:center;gap:8px;min-height:39px;padding:8px 10px;border:1px solid #e2e9f3;border-radius:10px;background:#fbfcff;color:#8393aa;font-size:11px;font-weight:800}.import-progress li i{width:20px;height:20px;display:grid;place-items:center;border-radius:50%;background:#edf1f7;color:#75879f;font-style:normal;font-size:10px}.import-progress li.active{border-color:#a98aff;background:#f7f2ff;color:#6031d7}.import-progress li.active i{background:#6730e9;color:#fff;box-shadow:0 4px 9px #6b33e044}.structured-import .import-status{text-align:center;color:#4c6283}.wizard-import-summary{display:grid;grid-template-columns:repeat(4,1fr);gap:10px;margin:0 auto 18px;max-width:920px}.wizard-import-summary span{padding:11px;border:1px solid #dce7f5;border-radius:12px;background:#f8fbff;color:#506786;font-size:11px;font-weight:700}.wizard-import-summary b{display:block;margin-bottom:4px;color:#245ccd;font-size:16px}.wizard-import-warnings{max-width:920px;margin:0 auto 18px;padding:13px 16px;border:1px solid #f2ce8e;border-radius:13px;background:#fffaf0;color:#85601e;font-size:12px;line-height:1.5}.wizard-import-warnings b{display:block;margin-bottom:5px}@media (max-width:720px){.import-progress{grid-template-columns:1fr}.wizard-import-summary{grid-template-columns:1fr 1fr}}.grid-cell.filled em,.grid-cell.filled i{display:block;margin-top:4px;font-size:9px;font-style:normal;font-weight:900}.grid-cell.filled em{color:#6b45ca}.grid-cell.filled i{color:#bd7a12}.grid-cell.needs-review{background:#fff9ed;border-left:3px solid #efb138}.import-assignment-picker{display:grid!important;gap:6px;color:#6b28e9!important;text-transform:uppercase;font-size:11px!important;letter-spacing:.04em}.import-assignment-picker select{height:42px!important;text-transform:none!important;letter-spacing:normal!important;color:#263650!important}.timetable-wizard .wizard-shell{width:min(1050px,calc(100% - 28px));height:calc(100vh - 28px);border-radius:18px}.timetable-wizard .wizard-shell>header{padding:16px 22px}.timetable-wizard .wizard-shell header h2{font-size:18px;font-weight:650}.timetable-wizard .wizard-close{width:32px;height:32px;font-size:21px}.timetable-wizard .wizard-steps{gap:6px;padding:12px 18px}.timetable-wizard .wizard-steps li{gap:5px;font-size:10px;font-weight:650}.timetable-wizard .wizard-steps li:after{width:13px;margin-left:3px}.timetable-wizard .wizard-steps span{width:23px;height:23px}.timetable-wizard .wizard-shell main{padding:20px}.timetable-wizard .wizard-title{margin-bottom:13px}.timetable-wizard .wizard-title h3{font-size:18px;margin-bottom:5px;font-weight:650}.timetable-wizard .wizard-title p,.timetable-wizard .wizard-hint{font-size:11px;line-height:1.42}.timetable-wizard .wizard-card{max-width:860px;padding:20px;border-radius:15px}.timetable-wizard .wizard-form-grid{gap:13px}.timetable-wizard .wizard-form-grid label,.timetable-wizard .full-field,.timetable-wizard .cell-dialog label{gap:5px;font-size:10px;font-weight:650}.timetable-wizard .wizard-form-grid input,.timetable-wizard .wizard-form-grid select,.timetable-wizard .wizard-list input,.timetable-wizard .wizard-list select,.timetable-wizard .full-field textarea,.timetable-wizard .cell-dialog input,.timetable-wizard .cell-dialog select{height:38px;padding:0 10px;border-radius:9px;font-size:12px}.timetable-wizard .full-field textarea{height:145px;padding:10px}.timetable-wizard .period-row,.timetable-wizard .course-row,.timetable-wizard .group-row{gap:8px;padding:8px;border-radius:11px}.timetable-wizard .period-row{grid-template-columns:98px 1fr 1fr 76px 30px}.timetable-wizard .period-row button,.timetable-wizard .course-row button,.timetable-wizard .group-row button{width:29px;height:29px;font-size:17px}.timetable-wizard .outline-action{padding:8px 10px;border-radius:8px;font-size:10px;font-weight:650}.timetable-wizard .timetable-grid thead th{height:58px;font-size:10px}.timetable-wizard .timetable-grid thead small{margin-top:3px;font-size:9px}.timetable-wizard .timetable-grid tbody th{width:60px;font-size:10px}.timetable-wizard .timetable-grid td,.timetable-wizard .grid-cell{height:58px;min-height:58px}.timetable-wizard .grid-cell{font-size:16px}.timetable-wizard .grid-cell.filled{padding:6px}.timetable-wizard .grid-cell.filled b,.timetable-wizard .grid-cell.filled span{font-size:9px;font-weight:600}.timetable-wizard .grid-cell.filled span{margin-top:2px;font-size:8px}.timetable-wizard .grid-cell.filled em,.timetable-wizard .grid-cell.filled i{margin-top:2px;font-size:8px;font-weight:650}.timetable-wizard .wizard-shell footer{padding:13px 22px}.timetable-wizard .wizard-shell footer button{padding:9px 13px;border-radius:9px;font-size:11px;font-weight:650}.timetable-wizard .reference-cell-dialog{width:min(520px,100%);gap:11px;padding:15px 17px 18px;border-radius:15px}.timetable-wizard .reference-cell-dialog h3{font-size:17px;font-weight:650}.timetable-wizard .reference-cell-dialog .type-toggle button{height:36px;font-size:12px;font-weight:650}.timetable-wizard .stream-panel,.timetable-wizard .professor-panel,.timetable-wizard .lab-group-panel{padding:12px;border-radius:13px}.timetable-wizard .section-kicker{font-size:10px;font-weight:650}.timetable-wizard .stream-options,.timetable-wizard .lab-group-chips{gap:7px;margin-top:8px}.timetable-wizard .stream-options button{min-height:57px;border-radius:11px;font-size:12px;font-weight:650}.timetable-wizard .stream-options button small{margin-top:4px;font-size:9px}.timetable-wizard .lab-group-chips button{min-height:36px;font-size:11px;font-weight:650}.timetable-wizard .stream-panel p,.timetable-wizard .manual-divider{margin:8px 0 0;font-size:10px;font-weight:600}.timetable-wizard .manual-divider{margin:10px 0}.timetable-wizard .course-details-head,.timetable-wizard .course-reference-row{grid-template-columns:95px minmax(135px,2fr) 70px 52px minmax(130px,1.35fr) 82px 34px}.timetable-wizard .course-details-head{gap:8px;padding:0 9px;font-size:9px;font-weight:650}.timetable-wizard .course-reference-row{gap:8px;padding:11px 13px}.timetable-wizard .course-reference-row input,.timetable-wizard .course-reference-row select{height:38px;border-radius:9px}.timetable-wizard .course-reference-row button{width:36px;height:38px;border-radius:9px}@media (max-width:720px){.timetable-wizard .wizard-shell{width:100%;height:100vh}.timetable-wizard .wizard-shell>header,.timetable-wizard .wizard-shell main,.timetable-wizard .wizard-shell footer{padding-left:14px;padding-right:14px}.timetable-wizard .course-reference-row{grid-template-columns:1fr 1fr;padding:10px}}.timetable-wizard .reference-cell-dialog{position:relative}.timetable-wizard .cell-close{position:absolute;top:10px;right:10px;width:28px;height:28px;border:0;border-radius:8px;background:#f1f4f9;color:#6d7b90;font-size:19px;font-weight:500;line-height:1}.timetable-wizard .cell-close:hover{background:#e7ecf5;color:#263752}.timetable-wizard .reference-cell-dialog h3{padding-right:32px;font-weight:600}.timetable-wizard .reference-cell-dialog label,.timetable-wizard .section-kicker,.timetable-wizard .stream-options button,.timetable-wizard .lab-group-chips button,.timetable-wizard .reference-cell-dialog .modal-actions button{font-weight:600}.timetable-wizard .stream-panel p{font-weight:400}.timetable-wizard .manual-divider{font-weight:600}.timetable-status{display:inline-flex;align-items:center;border-radius:999px;padding:6px 9px;font-size:10px;font-weight:700;letter-spacing:.25px}.timetable-status.published{color:#18724e;background:#e4f7ed;border:1px solid #c8edd8}.timetable-status.draft{color:#7254ce;background:#f0eaff;border:1px solid #e3d7ff}.timetable-drafts{margin-top:16px}.timetable-drafts .panel-head{margin-bottom:14px}.timetable-draft-card{display:flex;align-items:center;justify-content:space-between;gap:18px;padding:14px 0;border-top:1px solid var(--line)}.timetable-draft-card:first-child{border-top:0;padding-top:0}.timetable-draft-card h4{margin:8px 0 3px;font-size:14px;font-weight:650}.timetable-draft-card p,.draft-empty{margin:0;color:var(--muted);font-size:12px}.draft-empty{padding:12px 0}.table-action:disabled{opacity:.62;cursor:wait}.semester-timetable-row td{vertical-align:top}.timetable-inline-list{display:block;margin:0 0 5px;white-space:normal}.semester-timetable-row .table-action.danger{white-space:nowrap}.student-operations-page{gap:20px}.student-insight-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:15px}.student-insight-grid article{position:relative;display:flex;gap:13px;min-height:120px;padding:17px;border:1px solid rgba(104,125,199,.18);border-radius:18px;background:linear-gradient(145deg,#fff,#eff4ff);box-shadow:8px 10px 20px #2f438413,inset 1px 1px #fffffff0;overflow:hidden}.student-insight-grid article:after{content:"";position:absolute;width:68px;height:68px;right:-24px;bottom:-30px;border-radius:50%;background:linear-gradient(135deg,#457eef2e,#7b57e60d)}.student-insight-grid article:nth-child(2):after{background:linear-gradient(135deg,#29ae852e,#357bea0d)}.student-insight-grid article:nth-child(3):after{background:linear-gradient(135deg,#8b54e62e,#3e7beb0d)}.student-insight-grid article:nth-child(4):after{background:linear-gradient(135deg,#e9ac322e,#8058e60d)}.student-insight-grid article>*{position:relative;z-index:1}.student-insight-grid article>span{width:38px;height:38px;flex:0 0 38px;display:grid;place-items:center;border-radius:12px;background:#edf3ff;color:#4d69d6;font-size:17px;font-weight:750;box-shadow:inset 1px 1px #fff}.student-insight-grid small{display:block;color:#71839e;font-size:10px;font-weight:700;letter-spacing:.055em;text-transform:uppercase}.student-insight-grid strong{display:block;margin:4px 0;color:#253957;font-size:27px;font-weight:750;line-height:1}.student-insight-grid p{margin:7px 0 0;color:#7486a0;font-size:11px;line-height:1.35}.student-operations-page .student-toolbar{grid-template-columns:minmax(280px,1fr) 190px 185px;gap:11px;padding:12px;border-color:#687dc72e!important;border-radius:19px;background:linear-gradient(145deg,#fff,#eff4ff)!important;box-shadow:10px 12px 24px #30438114,inset 1px 1px #fffffff2!important}.student-profile-button{display:inline-flex;align-items:center;justify-content:center;gap:7px;min-height:35px;padding:0 11px;border:1px solid #d6e2f3;border-radius:10px;background:linear-gradient(145deg,#fff,#edf3ff);box-shadow:3px 4px 8px #3a549812;color:#4c62c4;font-size:11px;font-weight:700;white-space:nowrap}.student-profile-button:hover{border-color:#a9bdec;background:#f7f9ff;box-shadow:5px 7px 12px #3a54981f;transform:translateY(-1px)}.student-profile-button svg{width:16px;height:16px;fill:none;stroke:currentColor;stroke-width:1.9;stroke-linecap:round;stroke-linejoin:round}.student-profile-overlay{position:fixed;z-index:280;top:0;right:0;bottom:0;left:0;display:grid;place-items:center;padding:24px;background:radial-gradient(circle at 50% 3%,rgba(110,92,223,.27),transparent 36%),#0c1830a8;backdrop-filter:blur(11px) saturate(1.06);-webkit-backdrop-filter:blur(11px) saturate(1.06)}.student-profile-dialog{position:relative;width:min(1080px,100%);max-height:calc(100dvh - 48px);overflow:auto;border:1px solid rgba(222,230,242,.98);border-radius:25px;background:linear-gradient(145deg,#fff,#f7f9ff);box-shadow:0 38px 90px #07132d6b,0 2px #fffffff5 inset;color:#253651;scrollbar-color:#aab7ca transparent;scrollbar-width:thin}.student-profile-close{position:absolute;z-index:3;right:22px;top:22px;width:35px;height:35px;border:1px solid rgba(255,255,255,.28);border-radius:11px;background:#ffffff26;box-shadow:inset 0 1px #fff3;color:#fff;font-size:24px;font-weight:400;line-height:1}.student-profile-close:hover{background:#ffffff45;transform:translateY(-1px)}.student-profile-hero{position:relative;display:flex;align-items:center;gap:16px;min-height:152px;padding:27px 78px 27px 30px;overflow:hidden;background:linear-gradient(125deg,#1c3568,#345eaf 53%,#6854ca);color:#fff}.student-profile-hero:before,.student-profile-hero:after{content:"";position:absolute;border-radius:50%;pointer-events:none}.student-profile-hero:before{width:260px;height:260px;right:-80px;top:-180px;background:radial-gradient(circle,rgba(255,255,255,.24),rgba(255,255,255,.02) 65%,transparent 67%)}.student-profile-hero:after{width:170px;height:170px;left:38%;bottom:-135px;border:1px solid rgba(255,255,255,.13);box-shadow:0 0 0 32px #ffffff08}.student-profile-hero>*{position:relative;z-index:1}.student-profile-avatar{width:66px;height:66px;flex:0 0 66px;display:grid;place-items:center;overflow:hidden;border:2px solid rgba(255,255,255,.62);border-radius:20px;background:linear-gradient(145deg,#f3f6ff,#c6d9ff);box-shadow:0 8px 18px #05133542;color:#3f5fb4;font-size:25px;font-weight:800}.student-profile-avatar img{width:100%;height:100%;object-fit:cover}.student-profile-hero .eyebrow{margin:0 0 7px;color:#e5edffbf;font-size:10px;font-weight:700;letter-spacing:.1em}.student-profile-hero h2{margin:0;color:#fff;font-size:27px;font-weight:750;letter-spacing:-.65px}.student-profile-hero>div>p:last-child{margin:7px 0 0;color:#ebf1ffd6;font-size:12px;font-weight:500}.student-profile-status,.student-membership-status{margin-left:auto;padding:7px 10px;border:1px solid rgba(150,238,198,.4);border-radius:999px;background:#37ba7d2e;color:#e2fff0;font-size:10px;font-weight:750;text-transform:capitalize;white-space:nowrap}.student-profile-status.inactive{border-color:#ffcad25c;background:#d54e602e;color:#fff0f2}.student-profile-body{display:grid;gap:21px;padding:24px 30px 30px}.student-profile-metrics{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:13px}.student-profile-metrics article{display:flex;gap:12px;padding:15px;border:1px solid #dce6f2;border-radius:15px;background:linear-gradient(145deg,#fff,#f4f7ff);box-shadow:0 6px 14px #2236600b,inset 0 1px #fff}.student-profile-metrics article>span{width:36px;height:36px;flex:0 0 36px;display:grid;place-items:center;border-radius:11px;background:#e8efff;color:#4e67cf;font-size:16px;font-weight:750}.student-profile-metrics article:nth-child(2)>span{background:#e5f8ef;color:#169769}.student-profile-metrics article:nth-child(3)>span{background:#f0eaff;color:#7652d3}.student-profile-metrics small{display:block;color:#71839d;font-size:10px;font-weight:700;letter-spacing:.04em;text-transform:uppercase}.student-profile-metrics strong{display:block;margin:4px 0 2px;color:#273a57;font-size:24px;font-weight:750;line-height:1}.student-profile-metrics p{margin:0;color:#788ba5;font-size:10px;line-height:1.35}.student-profile-section{padding:18px;border:1px solid #dfe7f1;border-radius:17px;background:linear-gradient(145deg,#fff,#f9fbff);box-shadow:0 6px 15px #21355f09,inset 0 1px #fffffff7}.student-section-title{display:flex;align-items:flex-start;justify-content:space-between;gap:16px;margin-bottom:15px}.student-section-title .eyebrow{margin:0 0 5px;color:#667e9e;font-size:9px;font-weight:700;letter-spacing:.1em}.student-section-title h3{margin:0;color:#273955;font-size:17px;font-weight:700;letter-spacing:-.22px}.student-section-title>span{padding:6px 9px;border:1px solid #dce5f2;border-radius:999px;background:#f1f5fd;color:#61779d;font-size:10px;font-weight:700;white-space:nowrap}.student-detail-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:15px 18px;margin:0}.student-detail-grid div,.student-subject-card dl div{min-width:0}.student-detail-grid dt,.student-subject-card dt{margin:0 0 4px;color:#7a8ca6;font-size:9px;font-weight:700;letter-spacing:.065em;text-transform:uppercase}.student-detail-grid dd,.student-subject-card dd{margin:0;color:#334662;font-size:12px;font-weight:600;line-height:1.4;overflow-wrap:anywhere}.student-subject-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:11px}.student-subject-card{padding:14px;border:1px solid #dfe7f1;border-radius:14px;background:linear-gradient(145deg,#fff,#f6f9ff);box-shadow:0 3px 8px #21345e06,inset 0 1px #fff}.student-subject-title{display:flex;align-items:flex-start;justify-content:space-between;gap:10px;padding-bottom:10px;border-bottom:1px solid #e5ebf4}.student-subject-title p,.student-class-heading p{margin:0 0 3px;color:#5e50c8;font-size:10px;font-weight:750;letter-spacing:.06em}.student-subject-title h4,.student-class-heading h4{margin:0;color:#293c59;font-size:14px;font-weight:700;line-height:1.35}.student-subject-tags{display:flex;flex-wrap:wrap;justify-content:flex-end;gap:5px}.student-subject-tags span{padding:4px 6px;border:1px solid #dde5f2;border-radius:999px;background:#f0f4ff;color:#596f9f;font-size:9px;font-weight:700;text-transform:capitalize}.student-subject-card dl{display:grid;grid-template-columns:1fr 1fr;gap:11px 14px;margin:12px 0 0}.student-class-list{display:grid;gap:11px}.student-class-card{padding:15px;border:1px solid #dfe7f1;border-radius:15px;background:linear-gradient(145deg,#fff,#f8faff);box-shadow:0 4px 10px #21355f08,inset 0 1px #fff}.student-class-heading{display:flex;align-items:flex-start;justify-content:space-between;gap:14px}.student-class-heading small{display:block;margin-top:5px;color:#6e819c;font-size:11px;line-height:1.4}.student-membership-status{margin:0;border-color:#cce9da;background:#eaf9f0;color:#168155}.student-membership-status:not(.active){border-color:#e4e8ef;background:#f4f6fa;color:#718098}.student-class-details{display:flex;flex-wrap:wrap;gap:8px 20px;margin:14px 0 12px;padding:10px 0;border-top:1px solid #e7edf4;border-bottom:1px solid #e7edf4;color:#74869f;font-size:10px}.student-class-details b{margin-left:4px;color:#354864;font-size:11px;font-weight:650}.student-attendance-line>div{display:flex;align-items:center;justify-content:space-between;gap:12px;color:#687b96;font-size:10px;font-weight:700}.student-attendance-line>div b{color:#2e425f;font-size:12px}.student-attendance-line i{display:block;height:7px;margin:8px 0 6px;overflow:hidden;border-radius:999px;background:#e6edf7}.student-attendance-line i em{display:block;height:100%;border-radius:inherit;background:linear-gradient(90deg,#3d86ec,#7660df);box-shadow:0 2px 5px #4262d340}.student-attendance-line small{color:#7c8da6;font-size:10px}.student-attendance-history .table-wrap{border:1px solid #e1e8f1;border-radius:12px}.student-attendance-history table{width:100%;min-width:520px}.student-attendance-history td{padding:11px 13px}.student-attendance-history td b,.student-attendance-history td small{display:block}.student-attendance-history td small{margin-top:2px;color:#7a8ca5;font-size:10px}.student-attendance-status{display:inline-flex;padding:5px 8px;border-radius:999px;font-size:9px;font-weight:750;text-transform:capitalize}.student-attendance-status.present{background:#e4f7ed;color:#168054}.student-attendance-status.absent{background:#fff0f2;color:#c24d60}.student-empty-state{padding:18px;border:1px dashed #cbd8eb;border-radius:12px;background:#fbfcff;color:#70829d;font-size:12px;line-height:1.5}.student-profile-loading{display:grid;justify-items:center;gap:10px;min-height:310px;padding:115px 30px 40px;text-align:center}.student-profile-loading>span{width:29px;height:29px;border:3px solid #dce7f7;border-top-color:#5c69d5;border-radius:50%;animation:spin .7s linear infinite}.student-profile-loading h2{margin:8px 0 0;color:#2c3e5a;font-size:19px}.student-profile-loading p{max-width:380px;margin:0;color:#71839d;font-size:12px;line-height:1.55}.student-profile-error h2{color:#ae4759}@media (max-width:960px){.student-insight-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.student-operations-page .student-toolbar{grid-template-columns:minmax(0,1fr) 1fr}.student-operations-page .student-search{grid-column:1/-1}.student-detail-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.student-profile-body{padding:20px}.student-profile-metrics,.student-subject-grid{grid-template-columns:1fr}}@media (max-width:640px){.student-insight-grid,.student-operations-page .student-toolbar{grid-template-columns:1fr}.student-operations-page .student-search{grid-column:auto}.student-profile-overlay{padding:10px}.student-profile-dialog{max-height:calc(100dvh - 20px);border-radius:19px}.student-profile-hero{align-items:flex-start;min-height:0;padding:22px 55px 22px 18px}.student-profile-avatar{width:52px;height:52px;flex-basis:52px;border-radius:16px;font-size:20px}.student-profile-hero h2{font-size:21px}.student-profile-status{display:none}.student-profile-close{right:14px;top:15px}.student-profile-body{gap:16px;padding:15px}.student-profile-section{padding:14px;border-radius:14px}.student-detail-grid,.student-subject-card dl{grid-template-columns:1fr}.student-section-title{align-items:flex-start}.student-section-title>span{white-space:normal;text-align:right}.student-class-details{display:grid;grid-template-columns:1fr 1fr;gap:8px}.student-profile-metrics article{padding:13px}.student-profile-metrics strong{font-size:22px}}.timetable-panel .preview-action{display:inline-grid;place-items:center;width:35px;height:34px;padding:0;color:#4d63c9}.timetable-panel .preview-action svg{width:17px;height:17px;fill:none;stroke:currentColor;stroke-width:1.9;stroke-linecap:round;stroke-linejoin:round}.timetable-preview-modal{position:fixed;z-index:260;top:0;right:0;bottom:0;left:0;display:grid;place-items:center;padding:24px;background:radial-gradient(circle at 50% 5%,rgba(118,96,230,.26),transparent 34%),#101c35a6;backdrop-filter:blur(10px) saturate(1.08);-webkit-backdrop-filter:blur(10px) saturate(1.08)}.timetable-preview-dialog{width:min(1000px,100%);max-height:calc(100dvh - 48px);overflow:auto;border:1px solid rgba(223,230,242,.96);border-radius:24px;background:linear-gradient(145deg,#fff,#f7f9ff);box-shadow:0 34px 86px #08142f61,0 2px #fffffff5 inset;color:#253651}.preview-hero{position:relative;display:flex;align-items:flex-start;justify-content:space-between;gap:20px;padding:27px 72px 27px 30px;border-bottom:1px solid #dee6f1;background:linear-gradient(125deg,#eef4ff,#fbfaff 52%,#eee9ff);overflow:hidden}.preview-hero:after{content:"";position:absolute;width:230px;height:230px;right:-75px;top:-155px;border-radius:50%;background:radial-gradient(circle,rgba(105,81,221,.2),rgba(93,126,235,.03) 68%,transparent 69%)}.preview-hero>*{position:relative;z-index:1}.preview-hero .eyebrow{margin:0 0 8px;color:#5f75a3;font-size:10px;font-weight:700;letter-spacing:.12em}.preview-hero h2{margin:0;color:#1d2c47;font-size:25px;font-weight:750;letter-spacing:-.65px}.preview-hero>div>p:last-child{margin:7px 0 0;color:#637794;font-size:13px}.preview-close{position:absolute;z-index:2;right:22px;top:22px;width:34px;height:34px;border:1px solid #d9e3f0;border-radius:11px;background:#ffffffd6;box-shadow:0 3px 8px #26396114;color:#556a87;font-size:23px;font-weight:400;line-height:1;transition:transform .16s ease,background .16s ease}.preview-close:hover{background:#eef3fb;transform:translateY(-1px)}.preview-body{display:grid;gap:22px;padding:25px 30px 30px}.preview-summary{padding:17px 18px;border:1px solid #dce5f1;border-radius:16px;background:linear-gradient(145deg,#fff,#f6f9ff);box-shadow:0 7px 16px #2538620a,inset 0 1px #fff}.preview-summary h3,.preview-section h3{margin:0;color:#22324d;font-size:16px;font-weight:700;letter-spacing:-.2px}.preview-summary>div{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:15px 18px;margin-top:16px}.preview-summary span{display:block;margin-bottom:4px;color:#71839f;font-size:9px;font-weight:700;letter-spacing:.075em;text-transform:uppercase}.preview-summary b{display:block;color:#2d405e;font-size:12px;font-weight:650;line-height:1.35}.preview-section-heading{display:flex;align-items:end;justify-content:space-between;gap:20px;margin-bottom:12px}.preview-section-heading .eyebrow,.preview-footnotes .eyebrow{margin:0 0 5px;color:#627898;font-size:9px;font-weight:700;letter-spacing:.1em}.preview-section-heading>span{padding:6px 9px;border:1px solid #d9e4f1;border-radius:999px;background:#f2f6fd;color:#5b70a0;font-size:10px;font-weight:700}.preview-assignment-list{display:grid;gap:10px}.preview-assignment-card{padding:16px 17px;border:1px solid #dce5f0;border-radius:15px;background:linear-gradient(145deg,#fff,#f8faff);box-shadow:0 4px 10px #22366009,inset 0 1px #fffffff5}.preview-assignment-title{display:flex;align-items:flex-start;justify-content:space-between;gap:15px;padding-bottom:12px;border-bottom:1px solid #e5ebf3}.preview-assignment-title p{margin:0 0 4px;color:#5f54c7;font-size:10px;font-weight:750;letter-spacing:.06em}.preview-assignment-title h3{font-size:14px}.preview-chips{display:flex;flex-wrap:wrap;justify-content:flex-end;gap:5px}.preview-chips span{padding:5px 7px;border:1px solid #dce5f2;border-radius:999px;background:#f0f4ff;color:#526a9a;font-size:9px;font-weight:700;text-transform:capitalize}.preview-assignment-details{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:13px 16px;margin:14px 0 0}.preview-assignment-details div{min-width:0}.preview-assignment-details dt{margin:0 0 4px;color:#7a8ca5;font-size:9px;font-weight:700;letter-spacing:.06em;text-transform:uppercase}.preview-assignment-details dd{margin:0;color:#30435f;font-size:11px;font-weight:600;line-height:1.4;overflow-wrap:anywhere}.preview-footnotes{padding:16px 18px;border:1px solid #e4dff6;border-radius:15px;background:#faf8ff}.preview-footnotes>p:last-child{margin:0;color:#56657e;font-size:12px;line-height:1.55}@media (max-width:720px){.timetable-preview-modal{padding:12px}.timetable-preview-dialog{max-height:calc(100dvh - 24px);border-radius:18px}.preview-hero{padding:22px 55px 22px 20px}.preview-hero h2{font-size:20px}.preview-close{right:15px;top:17px}.preview-body{gap:18px;padding:18px}.preview-summary>div{grid-template-columns:repeat(2,minmax(0,1fr));gap:13px}.preview-assignment-title{display:grid}.preview-chips{justify-content:flex-start}.preview-assignment-details{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.preview-section-heading{align-items:flex-start}.preview-section-heading>span{white-space:nowrap}}.timetable-wizard .cell-modal{background:#0e182d94;-webkit-backdrop-filter:blur(7px);backdrop-filter:blur(7px)}.timetable-wizard .reference-cell-dialog{width:min(526px,calc(100% - 32px));gap:10px;padding:15px 16px 17px;border:1px solid rgba(213,222,237,.96);border-radius:17px;background:linear-gradient(150deg,#fff,#fbfcff);box-shadow:0 28px 68px #08152e4f,0 2px #ffffffe6 inset,0 -1px #d3dceb73 inset}.timetable-wizard .reference-cell-dialog h3{margin:0;padding:1px 34px 11px 1px;border-bottom:1px solid #e9eef6;font-size:16px;line-height:1.25;letter-spacing:-.18px;font-weight:600;color:#20304b}.timetable-wizard .reference-cell-dialog .cell-close{top:12px;right:12px;width:25px;height:25px;border:1px solid #e1e7f0;border-radius:8px;background:#f8faff;color:#71819a;font-size:17px;font-weight:400;transition:background .16s ease,color .16s ease,transform .16s ease}.timetable-wizard .reference-cell-dialog .cell-close:hover{background:#eef2f8;color:#31415d;transform:translateY(-1px)}.timetable-wizard .reference-cell-dialog label{gap:4px;font-size:9px;font-weight:600;letter-spacing:.055em;color:#607692}.timetable-wizard .reference-cell-dialog input,.timetable-wizard .reference-cell-dialog select{height:36px;border-color:#dce5f1;background:#fff;color:#2a3a54;font-size:12px;font-weight:500;box-shadow:0 1px 2px #1c315406 inset}.timetable-wizard .reference-cell-dialog input:focus,.timetable-wizard .reference-cell-dialog select:focus{outline:0;border-color:#7a8ee8;box-shadow:0 0 0 3px #6378e21c}.timetable-wizard .reference-cell-dialog .type-toggle{padding:3px;background:#eef2f7;border:1px solid #e2e8f1;border-radius:10px;box-shadow:0 1px #ffffffe6 inset}.timetable-wizard .reference-cell-dialog .type-toggle button{height:33px;border-radius:8px;font-size:11px;font-weight:600}.timetable-wizard .reference-cell-dialog .type-toggle .selected{background:#5c48d6;box-shadow:0 3px 8px #4235aa33}.timetable-wizard .reference-cell-dialog .stream-panel,.timetable-wizard .reference-cell-dialog .professor-panel,.timetable-wizard .reference-cell-dialog .lab-group-panel{padding:11px;border-color:#e0e7f1;border-radius:12px;background:#fcfdff;box-shadow:0 1px #ffffffe6 inset}.timetable-wizard .reference-cell-dialog .section-kicker{font-size:9px;font-weight:600;letter-spacing:.055em;color:#556d8d}.timetable-wizard .reference-cell-dialog .stream-options,.timetable-wizard .reference-cell-dialog .lab-group-chips{gap:6px;margin-top:7px}.timetable-wizard .reference-cell-dialog .stream-options button{min-height:48px;border-width:1px;border-color:#d9e2ee;border-radius:10px;font-size:11px;font-weight:600}.timetable-wizard .reference-cell-dialog .stream-options button.selected{border-color:#7c62df;background:#f4f1ff;color:#5e45d1;box-shadow:0 3px 8px #5e45d11a}.timetable-wizard .reference-cell-dialog .stream-options button small{margin-top:3px;font-size:8px;font-weight:500}.timetable-wizard .reference-cell-dialog .stream-panel p{margin:8px 1px 0;font-size:9px;line-height:1.42;color:#71829a;text-align:left}.timetable-wizard .reference-cell-dialog .lab-group-chips button{min-height:33px;font-size:10px;font-weight:600}.timetable-wizard .reference-cell-dialog .manual-divider{margin:9px 0;font-size:8px;font-weight:600;color:#93a1b5}.timetable-wizard .reference-cell-dialog .modal-actions{margin-top:2px}.timetable-wizard .reference-cell-dialog .modal-actions button{padding:9px 12px;font-size:10px;font-weight:600}.timetable-wizard .reference-cell-dialog .assignment-dialog-heading{position:relative;display:grid;gap:3px;padding:2px 34px 11px 12px;border-bottom:1px solid #e9eef6}.timetable-wizard .reference-cell-dialog .assignment-dialog-heading:before{content:"";position:absolute;left:0;top:4px;width:3px;height:31px;border-radius:999px;background:#6752dc;box-shadow:0 2px 5px #6752dc38}.timetable-wizard .reference-cell-dialog .assignment-dialog-heading span{font-size:8px;font-weight:600;letter-spacing:.09em;text-transform:uppercase;color:#7286a1}.timetable-wizard .reference-cell-dialog .assignment-dialog-heading h3{margin:0;padding:0;border:0;font-size:16px;line-height:1.2;font-weight:600;letter-spacing:-.2px;color:#20304b}.timetable-wizard .reference-cell-dialog .assignment-dialog-heading p{margin:0;font-size:9px;line-height:1.35;font-weight:400;color:#7b8ba3}.timetable-wizard .reference-cell-dialog .lab-group-panel .section-kicker{align-items:center}.timetable-wizard .reference-cell-dialog .lab-group-panel .section-kicker small{margin-left:auto;color:#71829a;font-size:8px;font-weight:500;text-transform:none;letter-spacing:0}.timetable-wizard .reference-cell-dialog .lab-copy-actions{display:grid;gap:6px;margin-top:10px;padding-top:9px;border-top:1px solid #e6ebf3;color:#72839b;font-size:9px;font-weight:600}.timetable-wizard .reference-cell-dialog .lab-copy-actions>div{display:flex;flex-wrap:wrap;gap:6px}.timetable-wizard .reference-cell-dialog .lab-copy-actions button{padding:6px 8px;border:1px solid #d6dff0;border-radius:8px;background:#fff;color:#596ed3;font-size:9px;font-weight:650;box-shadow:0 1px 2px #2337640d;transition:transform .15s ease,border-color .15s ease,background .15s ease}.timetable-wizard .reference-cell-dialog .lab-copy-actions button:hover{border-color:#8d9de3;background:#f3f5ff;transform:translateY(-1px)}.timetable-wizard .reference-cell-dialog .lab-copy-actions button:disabled{opacity:.7;cursor:default;transform:none}.timetable-wizard .cell-modal{background:radial-gradient(circle at 50% 6%,rgba(112,100,220,.23),transparent 34%),#0f1b35a3;backdrop-filter:blur(12px) saturate(1.08);-webkit-backdrop-filter:blur(12px) saturate(1.08)}.timetable-wizard .reference-cell-dialog{width:min(610px,calc(100% - 36px));max-height:calc(100dvh - 48px);overflow:auto;gap:13px;padding:20px;border-color:#dde4f0fa;border-radius:20px;background:linear-gradient(145deg,#fff,#f7f9ff);box-shadow:0 34px 84px #08142f57,0 2px #fffffff5 inset,0 -1px #c1cde16b inset;scrollbar-color:#aab7ca transparent;scrollbar-width:thin}.timetable-wizard .reference-cell-dialog .assignment-dialog-heading{grid-template-columns:1fr auto;column-gap:12px;row-gap:4px;min-height:84px;padding:13px 46px 13px 17px;border:1px solid #e1e8f2;border-radius:14px;background:linear-gradient(135deg,#fff,#f2f5ff);box-shadow:0 8px 18px #2a3e710f,0 1px #fffffff2 inset}.timetable-wizard .reference-cell-dialog .assignment-dialog-heading:before{left:0;top:16px;width:4px;height:52px;border-radius:0 4px 4px 0;background:#6050d4;box-shadow:0 4px 10px #5b49c83d}.timetable-wizard .reference-cell-dialog .assignment-dialog-heading span{grid-column:1/-1;font-size:9px;font-weight:700;letter-spacing:.1em;color:#627796}.timetable-wizard .reference-cell-dialog .assignment-dialog-heading h3{grid-column:1/-1;font-size:19px;line-height:1.18;font-weight:700;letter-spacing:-.35px;color:#1e2b45}.timetable-wizard .reference-cell-dialog .assignment-dialog-heading p{grid-column:1/-1;font-size:11px;line-height:1.45;color:#667993}.timetable-wizard .reference-cell-dialog .cell-close{top:29px;right:29px;width:29px;height:29px;border-color:#dce5f1;border-radius:9px;background:#ffffffd6;box-shadow:0 2px 6px #2a3c6314;color:#60728c}.timetable-wizard .reference-cell-dialog .cell-close:hover{background:#f0f3fa;color:#293853;transform:translateY(-1px)}.timetable-wizard .reference-cell-dialog .type-toggle{padding:4px;border-color:#dce5f0;border-radius:12px;background:#edf2f8;box-shadow:inset 0 1px 2px #26395f14,0 1px #ffffffe6}.timetable-wizard .reference-cell-dialog .type-toggle button{height:38px;border-radius:9px;font-size:12px;font-weight:700;color:#607491;transition:transform .16s ease,background .16s ease,box-shadow .16s ease}.timetable-wizard .reference-cell-dialog .type-toggle .selected{background:linear-gradient(135deg,#5545c8,#7255df);box-shadow:0 5px 11px #5243be3d;color:#fff}.timetable-wizard .reference-cell-dialog .type-toggle button:active,.timetable-wizard .reference-cell-dialog .stream-options button:active,.timetable-wizard .reference-cell-dialog .lab-group-chips button:active,.timetable-wizard .reference-cell-dialog .modal-actions button:active{transform:translateY(1px) scale(.985)}.timetable-wizard .reference-cell-dialog .stream-panel,.timetable-wizard .reference-cell-dialog .professor-panel,.timetable-wizard .reference-cell-dialog .lab-group-panel{padding:13px;border-color:#dfe7f1;border-radius:14px;background:linear-gradient(145deg,#fff,#f8faff);box-shadow:0 5px 14px #23366009,inset 0 1px #fffffff0}.timetable-wizard .reference-cell-dialog .section-kicker{font-size:10px;font-weight:700;letter-spacing:.065em;color:#4e6687}.timetable-wizard .reference-cell-dialog label{gap:5px;font-size:10px;font-weight:700;letter-spacing:.055em;color:#526987}.timetable-wizard .reference-cell-dialog input,.timetable-wizard .reference-cell-dialog select{height:39px;border-color:#d7e1ee;border-radius:10px;background:#fff;font-size:12px;font-weight:600;box-shadow:0 1px 2px #1c315408 inset;transition:border-color .16s ease,box-shadow .16s ease,background .16s ease}.timetable-wizard .reference-cell-dialog input:hover,.timetable-wizard .reference-cell-dialog select:hover{border-color:#bdcbe0;background:#fefeff}.timetable-wizard .reference-cell-dialog input:focus,.timetable-wizard .reference-cell-dialog select:focus{border-color:#7466d9;box-shadow:0 0 0 3px #6555d224;background:#fff}.timetable-wizard .reference-cell-dialog .stream-options{gap:8px;margin-top:9px}.timetable-wizard .reference-cell-dialog .stream-options button{min-height:56px;border-color:#d8e1ed;border-radius:12px;background:#fff;font-size:12px;font-weight:700;box-shadow:0 2px 5px #25386206;transition:transform .16s ease,border-color .16s ease,box-shadow .16s ease,background .16s ease}.timetable-wizard .reference-cell-dialog .stream-options button:hover{border-color:#aebce0;box-shadow:0 6px 13px #2e406c14;transform:translateY(-1px)}.timetable-wizard .reference-cell-dialog .stream-options button.selected{border-color:#725bdd;background:linear-gradient(145deg,#faf8ff,#f0eaff);color:#5a45cb;box-shadow:0 5px 12px #5b44cb1f,inset 0 1px #ffffffe6}.timetable-wizard .reference-cell-dialog .lab-group-chips{gap:8px;margin-top:9px}.timetable-wizard .reference-cell-dialog .lab-group-chips button{min-height:38px;border-color:#d7e1ed;border-radius:10px;background:#fff;font-size:11px;font-weight:700;box-shadow:0 1px 3px #26396108;transition:transform .16s ease,border-color .16s ease,box-shadow .16s ease}.timetable-wizard .reference-cell-dialog .lab-group-chips button:hover{border-color:#b4c2dd;box-shadow:0 4px 10px #2b3e6912;transform:translateY(-1px)}.timetable-wizard .reference-cell-dialog .lab-group-chips button.selected{border-color:#725bdd;background:#f2edff;color:#5945c6;box-shadow:inset 0 1px #ffffffe6}.timetable-wizard .reference-cell-dialog .modal-actions{position:sticky;bottom:-20px;z-index:1;margin:4px -20px -20px;padding:14px 20px;border-top:1px solid #e3eaf3;background:linear-gradient(180deg,#fafcffe0,#f8faff 42%);backdrop-filter:blur(9px);-webkit-backdrop-filter:blur(9px);box-shadow:0 -8px 18px #23355e0b}.timetable-wizard .reference-cell-dialog .modal-actions button{min-height:38px;padding:9px 14px;border-radius:10px;font-size:11px;font-weight:700;transition:transform .16s ease,box-shadow .16s ease,background .16s ease}.timetable-wizard .reference-cell-dialog .modal-actions .primary{background:linear-gradient(135deg,#5545c8,#7255df);box-shadow:0 6px 14px #5243be3d}.timetable-wizard .reference-cell-dialog .modal-actions .primary:hover{box-shadow:0 9px 18px #5243be4a;transform:translateY(-1px)}.dark .timetable-wizard .reference-cell-dialog{border-color:#3a4763;background:linear-gradient(145deg,#202a3e,#182136);box-shadow:0 34px 84px #0000007a,0 1px #ffffff0f inset}.dark .timetable-wizard .reference-cell-dialog .assignment-dialog-heading,.dark .timetable-wizard .reference-cell-dialog .stream-panel,.dark .timetable-wizard .reference-cell-dialog .professor-panel,.dark .timetable-wizard .reference-cell-dialog .lab-group-panel{border-color:#394863;background:linear-gradient(145deg,#242f45,#1e293d);box-shadow:inset 0 1px #ffffff0b}.dark .timetable-wizard .reference-cell-dialog .assignment-dialog-heading h3{color:#f3f6fc}.dark .timetable-wizard .reference-cell-dialog .assignment-dialog-heading p,.dark .timetable-wizard .reference-cell-dialog label,.dark .timetable-wizard .reference-cell-dialog .section-kicker{color:#aebdd2}.dark .timetable-wizard .reference-cell-dialog input,.dark .timetable-wizard .reference-cell-dialog select,.dark .timetable-wizard .reference-cell-dialog .stream-options button,.dark .timetable-wizard .reference-cell-dialog .lab-group-chips button{border-color:#3c4a65;background:#1a2539;color:#eef3fb}.dark .timetable-wizard .reference-cell-dialog .modal-actions{border-color:#35425d;background:linear-gradient(180deg,#1c273ae0,#1a2436 42%)}@media (max-width:640px){.timetable-wizard .reference-cell-dialog{width:calc(100% - 24px);max-height:calc(100dvh - 24px);padding:14px;border-radius:17px;gap:11px}.timetable-wizard .reference-cell-dialog .assignment-dialog-heading{min-height:0;padding:12px 42px 12px 15px;border-radius:12px}.timetable-wizard .reference-cell-dialog .assignment-dialog-heading:before{top:14px;height:46px}.timetable-wizard .reference-cell-dialog .assignment-dialog-heading h3{font-size:17px}.timetable-wizard .reference-cell-dialog .cell-close{top:25px;right:24px}.timetable-wizard .reference-cell-dialog .stream-options{grid-template-columns:1fr}.timetable-wizard .reference-cell-dialog .modal-actions{bottom:-14px;margin:4px -14px -14px;padding:12px 14px}.timetable-wizard .reference-cell-dialog .modal-actions button{min-height:40px}}@media (prefers-reduced-motion:reduce){.timetable-wizard .reference-cell-dialog *,.timetable-wizard .reference-cell-dialog *:before{transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}}.timetable-wizard .reference-cell-dialog .assignment-dialog-heading{row-gap:5px;padding:16px 50px 16px 20px;border-radius:16px;background:linear-gradient(142deg,#fff,#f3f5fc);box-shadow:0 10px 22px #22366412,inset 0 1px #fffffffa}.timetable-wizard .reference-cell-dialog .assignment-dialog-heading:before{top:18px;height:57px;background:linear-gradient(#7060df,#5041be);box-shadow:0 5px 12px #5243be3b}.timetable-wizard .reference-cell-dialog .assignment-dialog-heading span{font-size:10px;font-weight:750;letter-spacing:.115em;color:#657798}.timetable-wizard .reference-cell-dialog .assignment-dialog-heading h3{font-size:21px;line-height:1.16;font-weight:750;letter-spacing:-.48px;color:#192741}.timetable-wizard .reference-cell-dialog .assignment-dialog-heading p{font-size:12px;line-height:1.5;font-weight:500;color:#60728d}.timetable-wizard .reference-cell-dialog .type-toggle{padding:5px;border-radius:14px;background:linear-gradient(180deg,#edf2f8,#e7edf5);box-shadow:inset 0 2px 4px #26395f17,0 1px #ffffffeb}.timetable-wizard .reference-cell-dialog .type-toggle button{height:42px;border-radius:10px;font-size:13px;font-weight:750;letter-spacing:.01em;color:#526783}.timetable-wizard .reference-cell-dialog .type-toggle .selected{background:linear-gradient(135deg,#5141c8,#7356dc);box-shadow:0 7px 14px #4b3bb542,inset 0 1px #ffffff40;color:#fff}.timetable-wizard .reference-cell-dialog .stream-panel{padding:16px;border-radius:16px;background:linear-gradient(145deg,#fff,#f7f9fe);box-shadow:0 8px 18px #2336600b,inset 0 1px #fffffff5}.timetable-wizard .reference-cell-dialog .section-kicker{font-size:11px;font-weight:750;letter-spacing:.075em;color:#4939bf}.timetable-wizard .reference-cell-dialog .section-kicker small{font-size:10px;font-weight:650;color:#6a7d99;letter-spacing:0;text-transform:none}.timetable-wizard .reference-cell-dialog .stream-options{gap:10px;margin-top:11px}.timetable-wizard .reference-cell-dialog .stream-options button{min-height:64px;border-radius:13px;font-size:13px;font-weight:750;color:#24334e;box-shadow:0 3px 8px #2538620a,inset 0 1px #fffffff0}.timetable-wizard .reference-cell-dialog .stream-options button small{margin-top:5px;font-size:10px;font-weight:600;color:#8193ad}.timetable-wizard .reference-cell-dialog .stream-options button.selected{border-color:#725bdd;background:linear-gradient(145deg,#faf8ff,#efe9ff);color:#553dc7;box-shadow:0 7px 15px #5841c221,inset 0 1px #fffffff2}.timetable-wizard .reference-cell-dialog .stream-panel p{margin:11px 2px 0;font-size:11px;line-height:1.5;color:#687b95}.timetable-wizard .reference-cell-dialog .cell-two-fields{gap:14px}.timetable-wizard .reference-cell-dialog label{gap:6px;font-size:11px;font-weight:750;letter-spacing:.06em;color:#4e3cca}.timetable-wizard .reference-cell-dialog input,.timetable-wizard .reference-cell-dialog select{height:44px;padding:0 13px;border-radius:11px;background:#fbfcff;font-size:13px;font-weight:600;color:#24334e;box-shadow:0 2px 5px #1f335806,inset 0 1px 1px #283d6806}.timetable-wizard .reference-cell-dialog input::placeholder{color:#8a99ae;font-weight:500}.timetable-wizard .reference-cell-dialog input:focus,.timetable-wizard .reference-cell-dialog select:focus{border-color:#6d5fd5;box-shadow:0 0 0 3px #6453cf24,0 3px 7px #26375f0e}.timetable-wizard .reference-cell-dialog .professor-panel{padding:16px;border-radius:16px;background:linear-gradient(145deg,#fff,#f7f9fe);box-shadow:0 8px 18px #2336600a,inset 0 1px #fffffff5}.timetable-wizard .reference-cell-dialog .professor-panel .section-kicker{margin-bottom:2px}.timetable-wizard .reference-cell-dialog .professor-two-panel{background:linear-gradient(145deg,#fcfdff,#f5f7fc)}.timetable-wizard .reference-cell-dialog .manual-divider{margin:14px 0 12px;font-size:10px;font-weight:750;letter-spacing:.085em;color:#8798b0}.timetable-wizard .reference-cell-dialog .manual-divider:before,.timetable-wizard .reference-cell-dialog .manual-divider:after{background:#dbe3ef}.timetable-wizard .reference-cell-dialog .modal-actions{gap:10px;padding:15px 20px;border-top-color:#dfe7f1;background:linear-gradient(180deg,#fafcffe6,#f6f8fd 42%);box-shadow:0 -10px 22px #23355e0e}.timetable-wizard .reference-cell-dialog .modal-actions button{min-height:42px;padding:10px 15px;border-radius:11px;font-size:12px;font-weight:750;letter-spacing:.01em}.timetable-wizard .reference-cell-dialog #cell-delete{border:1px solid #ffd8de;background:#fff4f5;color:#cf4255;box-shadow:inset 0 1px #ffffffe0}.timetable-wizard .reference-cell-dialog #cell-delete:hover{background:#ffeaed;border-color:#ffbfc9}.timetable-wizard .reference-cell-dialog #cell-cancel{border:1px solid #dce5ef;background:#f4f7fb;color:#32415c;box-shadow:inset 0 1px #ffffffe6}.timetable-wizard .reference-cell-dialog #cell-cancel:hover{background:#eaf0f7}.timetable-wizard .reference-cell-dialog .modal-actions .primary{padding-inline:18px;background:linear-gradient(135deg,#5141c8,#7356dc);box-shadow:0 8px 16px #4b3bb540,inset 0 1px #ffffff42}@media (max-width:640px){.timetable-wizard .reference-cell-dialog .assignment-dialog-heading{padding:14px 43px 14px 18px;border-radius:14px}.timetable-wizard .reference-cell-dialog .assignment-dialog-heading h3{font-size:19px}.timetable-wizard .reference-cell-dialog .assignment-dialog-heading p{font-size:11px}.timetable-wizard .reference-cell-dialog .type-toggle button{height:40px}.timetable-wizard .reference-cell-dialog .stream-panel,.timetable-wizard .reference-cell-dialog .professor-panel{padding:14px}.timetable-wizard .reference-cell-dialog .stream-options{gap:8px}.timetable-wizard .reference-cell-dialog input,.timetable-wizard .reference-cell-dialog select{height:42px}.timetable-wizard .reference-cell-dialog .modal-actions{padding:13px 14px;gap:8px}.timetable-wizard .reference-cell-dialog .modal-actions button{padding:9px 11px;font-size:11px}}.timetable-wizard .cell-dialog.reference-cell-dialog{width:min(640px,calc(100% - 40px))!important;max-height:calc(100dvh - 40px)!important;gap:14px!important;padding:16px!important;border:1px solid rgba(255,255,255,.88)!important;border-radius:24px!important;background:linear-gradient(145deg,#f8faff,#edf2fb)!important;box-shadow:0 40px 90px #07132d6b,0 2px #fffffff5 inset,0 -1px #91a4c752 inset!important}.timetable-wizard .cell-dialog.reference-cell-dialog .assignment-dialog-heading{display:block!important;min-height:0!important;margin:0!important;padding:22px 56px 21px 24px!important;border:0!important;border-radius:18px!important;background:linear-gradient(135deg,#172951,#2a4380 53%,#6253c8)!important;box-shadow:0 12px 24px #1e346940,inset 0 1px #fff3!important;color:#fff!important;overflow:hidden!important}.timetable-wizard .cell-dialog.reference-cell-dialog .assignment-dialog-heading:before{left:auto!important;right:-40px!important;top:-65px!important;width:170px!important;height:170px!important;border-radius:50%!important;background:radial-gradient(circle,#ffffff38,#fff0 67%)!important;box-shadow:none!important}.timetable-wizard .cell-dialog.reference-cell-dialog .assignment-dialog-heading span{display:inline-flex!important;align-items:center!important;min-height:24px!important;margin:0 0 9px!important;padding:0 9px!important;border:1px solid rgba(255,255,255,.26)!important;border-radius:999px!important;background:#ffffff1f!important;color:#ffffffe0!important;font-size:10px!important;font-weight:700!important;letter-spacing:.1em!important;text-transform:uppercase!important}.timetable-wizard .cell-dialog.reference-cell-dialog .assignment-dialog-heading h3{position:relative!important;margin:0!important;padding:0!important;border:0!important;color:#fff!important;font-size:24px!important;font-weight:750!important;line-height:1.12!important;letter-spacing:-.55px!important;text-align:left!important}.timetable-wizard .cell-dialog.reference-cell-dialog .assignment-dialog-heading p{position:relative!important;margin:8px 0 0!important;color:#ebf1ffd6!important;font-size:13px!important;font-weight:500!important;line-height:1.45!important;text-align:left!important}.timetable-wizard .cell-dialog.reference-cell-dialog .cell-close{top:30px!important;right:30px!important;z-index:2!important;width:32px!important;height:32px!important;border:1px solid rgba(255,255,255,.25)!important;border-radius:10px!important;background:#ffffff21!important;color:#fff!important;box-shadow:inset 0 1px #ffffff2e!important;font-size:19px!important;line-height:1!important}.timetable-wizard .cell-dialog.reference-cell-dialog .cell-close:hover{background:#ffffff3d!important;color:#fff!important;transform:translateY(-1px)!important}.timetable-wizard .cell-dialog.reference-cell-dialog .type-toggle{padding:5px!important;border:1px solid #d5deec!important;border-radius:14px!important;background:#e5ecf6!important;box-shadow:inset 0 2px 4px #1f35621a,0 1px #ffffffe6!important}.timetable-wizard .cell-dialog.reference-cell-dialog .type-toggle button{height:44px!important;border-radius:10px!important;background:transparent!important;color:#596d89!important;font-size:13px!important;font-weight:750!important;letter-spacing:.015em!important}.timetable-wizard .cell-dialog.reference-cell-dialog .type-toggle .selected{background:linear-gradient(135deg,#335fb4,#6248ce)!important;color:#fff!important;box-shadow:0 7px 15px #2f439f47,inset 0 1px #ffffff3d!important}.timetable-wizard .cell-dialog.reference-cell-dialog .stream-panel,.timetable-wizard .cell-dialog.reference-cell-dialog .professor-panel,.timetable-wizard .cell-dialog.reference-cell-dialog .lab-group-panel{padding:17px!important;border:1px solid #dce5f2!important;border-radius:17px!important;background:#fff!important;box-shadow:0 8px 18px #2136630f,inset 0 1px #fffffffa!important}.timetable-wizard .cell-dialog.reference-cell-dialog .stream-panel{background:linear-gradient(145deg,#fff,#f8faff)!important}.timetable-wizard .cell-dialog.reference-cell-dialog .section-kicker{display:flex!important;align-items:center!important;font-size:11px!important;font-weight:750!important;letter-spacing:.075em!important;color:#364f83!important}.timetable-wizard .cell-dialog.reference-cell-dialog .section-kicker small{margin-left:auto!important;color:#788ba5!important;font-size:10px!important;font-weight:650!important;letter-spacing:0!important;text-transform:none!important}.timetable-wizard .cell-dialog.reference-cell-dialog .stream-options{gap:10px!important;margin-top:13px!important}.timetable-wizard .cell-dialog.reference-cell-dialog .stream-options button{min-height:68px!important;border:1px solid #d5e0ee!important;border-radius:13px!important;background:#fbfcff!important;color:#273955!important;font-size:13px!important;font-weight:750!important;box-shadow:0 3px 7px #2237630a,inset 0 1px #fffffffa!important}.timetable-wizard .cell-dialog.reference-cell-dialog .stream-options button small{margin-top:5px!important;color:#8091aa!important;font-size:10px!important;font-weight:600!important}.timetable-wizard .cell-dialog.reference-cell-dialog .stream-options button.selected{border-color:#6252cc!important;background:linear-gradient(145deg,#f8f5ff,#eee9ff)!important;color:#4c3bb8!important;box-shadow:0 7px 15px #503bb524,inset 0 1px #fff!important}.timetable-wizard .cell-dialog.reference-cell-dialog .stream-panel p{margin:12px 3px 0!important;color:#6a7b94!important;font-size:11px!important;line-height:1.5!important}.timetable-wizard .cell-dialog.reference-cell-dialog .cell-two-fields{gap:14px!important}.timetable-wizard .cell-dialog.reference-cell-dialog label{gap:7px!important;color:#3f5690!important;font-size:10px!important;font-weight:750!important;letter-spacing:.075em!important}.timetable-wizard .cell-dialog.reference-cell-dialog input,.timetable-wizard .cell-dialog.reference-cell-dialog select{height:45px!important;border:1px solid #d5e0ee!important;border-radius:12px!important;background:#fff!important;color:#263a56!important;font-size:13px!important;font-weight:600!important;box-shadow:0 2px 5px #1f335809,inset 0 1px 1px #25396006!important}.timetable-wizard .cell-dialog.reference-cell-dialog input:focus,.timetable-wizard .cell-dialog.reference-cell-dialog select:focus{border-color:#5b62ca!important;box-shadow:0 0 0 3px #4e5bc424,0 4px 10px #27386512!important}.timetable-wizard .cell-dialog.reference-cell-dialog .manual-divider{margin:15px 0 13px!important;color:#7d8fa9!important;font-size:10px!important;font-weight:750!important;letter-spacing:.09em!important}.timetable-wizard .cell-dialog.reference-cell-dialog .manual-divider:before,.timetable-wizard .cell-dialog.reference-cell-dialog .manual-divider:after{background:#dfe6ef!important}.timetable-wizard .cell-dialog.reference-cell-dialog .modal-actions{position:sticky!important;bottom:-16px!important;z-index:2!important;gap:10px!important;margin:1px -16px -16px!important;padding:16px!important;border-top:1px solid #dbe4f0!important;background:#f8fafff5!important;box-shadow:0 -12px 24px #23355e12!important;-webkit-backdrop-filter:blur(10px)!important;backdrop-filter:blur(10px)!important}.timetable-wizard .cell-dialog.reference-cell-dialog .modal-actions button{min-height:43px!important;padding:10px 16px!important;border-radius:11px!important;font-size:12px!important;font-weight:750!important;letter-spacing:.01em!important}.timetable-wizard .cell-dialog.reference-cell-dialog #cell-delete{border:1px solid #ffd5dc!important;background:#fff2f4!important;color:#c73f55!important}.timetable-wizard .cell-dialog.reference-cell-dialog #cell-cancel{border:1px solid #d6e0ed!important;background:#fff!important;color:#32445f!important}.timetable-wizard .cell-dialog.reference-cell-dialog .modal-actions .primary{padding-inline:20px!important;background:linear-gradient(135deg,#315cac,#6449cc)!important;color:#fff!important;box-shadow:0 8px 16px #3444a647,inset 0 1px #ffffff40!important}@media (max-width:640px){.timetable-wizard .cell-dialog.reference-cell-dialog{width:calc(100% - 24px)!important;padding:12px!important;border-radius:20px!important}.timetable-wizard .cell-dialog.reference-cell-dialog .assignment-dialog-heading{padding:18px 48px 18px 19px!important;border-radius:15px!important}.timetable-wizard .cell-dialog.reference-cell-dialog .assignment-dialog-heading h3{font-size:21px!important}.timetable-wizard .cell-dialog.reference-cell-dialog .assignment-dialog-heading p{font-size:12px!important}.timetable-wizard .cell-dialog.reference-cell-dialog .cell-close{top:27px!important;right:25px!important}.timetable-wizard .cell-dialog.reference-cell-dialog .stream-panel,.timetable-wizard .cell-dialog.reference-cell-dialog .professor-panel,.timetable-wizard .cell-dialog.reference-cell-dialog .lab-group-panel{padding:14px!important}.timetable-wizard .cell-dialog.reference-cell-dialog .modal-actions{bottom:-12px!important;margin:1px -12px -12px!important;padding:12px!important}.timetable-wizard .cell-dialog.reference-cell-dialog .modal-actions button{padding:9px 11px!important;font-size:11px!important}}.action-removing{opacity:.38;transform:scale(.992);pointer-events:none;transition:opacity .12s ease,transform .12s ease}.timetable-wizard.studio-v2{--tt-ink:#182843;--tt-muted:#667b98;--tt-line:#dce5f1;--tt-surface:#fff;--tt-soft:#f5f8fd;--tt-accent:#4c63d8;--tt-accent-deep:#304fae;--tt-violet:#7354da;--tt-success:#188663;color:var(--tt-ink)}.timetable-wizard.studio-v2 .wizard-backdrop{background:#0c19339e;-webkit-backdrop-filter:blur(9px) saturate(1.08);backdrop-filter:blur(9px) saturate(1.08)}.timetable-wizard.studio-v2 .wizard-shell{width:min(1180px,calc(100% - 32px));height:calc(100dvh - 32px);margin:16px auto;grid-template-rows:auto auto minmax(0,1fr) auto;overflow:hidden;border:1px solid rgba(255,255,255,.72);border-radius:26px;background:linear-gradient(145deg,#fdfefe,#f3f6fc);box-shadow:0 34px 90px #0814316b,0 2px #fffffff5 inset}.timetable-wizard.studio-v2 .wizard-topbar{display:flex;align-items:center;justify-content:space-between;gap:24px;min-height:94px;padding:18px 28px;border-bottom:1px solid rgba(211,222,237,.92);background:linear-gradient(105deg,#fff,#f5f8ff 60%,#f0efff)}.timetable-wizard.studio-v2 .wizard-brand,.timetable-wizard.studio-v2 .wizard-topbar-actions,.timetable-wizard.studio-v2 .wizard-footer-left,.timetable-wizard.studio-v2 .wizard-footer-actions,.timetable-wizard.studio-v2 .wizard-progress-meta,.timetable-wizard.studio-v2 .wizard-section-heading,.timetable-wizard.studio-v2 .wizard-workspace-heading,.timetable-wizard.studio-v2 .wizard-grid-toolbar,.timetable-wizard.studio-v2 .preview-toolbar{display:flex;align-items:center}.timetable-wizard.studio-v2 .wizard-brand{gap:13px}.timetable-wizard.studio-v2 .wizard-brand-mark{display:grid;width:42px;height:42px;place-items:center;border:1px solid rgba(100,113,218,.24);border-radius:14px;background:linear-gradient(145deg,#e9edff,#fff);box-shadow:5px 7px 15px #3e4ea321,inset 0 1px #fff;color:var(--tt-accent-deep);font-size:21px;font-weight:700}.timetable-wizard.studio-v2 .wizard-topbar .eyebrow{margin:0 0 3px;color:#5b6f9c;font-size:10px;font-weight:800;letter-spacing:.12em}.timetable-wizard.studio-v2 .wizard-topbar h2{margin:0;color:var(--tt-ink);font-size:clamp(21px,2vw,27px);font-weight:760;letter-spacing:-.045em}.timetable-wizard.studio-v2 .wizard-subtitle{margin:4px 0 0;color:var(--tt-muted);font-size:12px;line-height:1.45}.timetable-wizard.studio-v2 .wizard-topbar-actions{gap:13px}.timetable-wizard.studio-v2 .wizard-save-indicator,.timetable-wizard.studio-v2 .wizard-footer-save{display:inline-flex;align-items:center;gap:7px;color:var(--tt-muted);font-size:11px;font-weight:700}.timetable-wizard.studio-v2 .wizard-save-indicator i,.timetable-wizard.studio-v2 .wizard-footer-save i{width:8px;height:8px;border-radius:999px;background:#8fa0b8;box-shadow:0 0 0 3px #8fa0b826}.timetable-wizard.studio-v2 [data-state=saved] i{background:var(--tt-success);box-shadow:0 0 0 3px #18866324}.timetable-wizard.studio-v2 [data-state=saving] i{background:#4e74d9;box-shadow:0 0 0 3px #4e74d926;animation:tt-pulse 1s ease-in-out infinite}.timetable-wizard.studio-v2 [data-state=error] i{background:#c24c5f;box-shadow:0 0 0 3px #c24c5f24}.timetable-wizard.studio-v2 .wizard-close{width:38px;height:38px;border:1px solid #dce4f0;border-radius:12px;background:#ffffffc7;color:#60738e;box-shadow:0 3px 8px #1f35600f,inset 0 1px #fff;font-size:23px;line-height:1;transition:transform .16s ease,background .16s ease,box-shadow .16s ease}.timetable-wizard.studio-v2 .wizard-close:hover{background:#fff;color:#31445f;transform:translateY(-1px);box-shadow:0 7px 15px #1f35601f}.timetable-wizard.studio-v2 .wizard-journey{padding:11px 28px 14px;border-bottom:1px solid #e2eaf4;background:#fbfdffe0}.timetable-wizard.studio-v2 .wizard-progress-meta{justify-content:space-between;margin:0 2px 9px;color:#71829b;font-size:11px;font-weight:650}.timetable-wizard.studio-v2 .wizard-progress-meta b{color:var(--tt-accent-deep);font-weight:800}.timetable-wizard.studio-v2 .wizard-steps{display:grid;grid-template-columns:repeat(8,minmax(0,1fr));gap:8px;margin:0;padding:0;overflow:visible;border:0}.timetable-wizard.studio-v2 .wizard-steps li{position:relative;display:grid;grid-template-columns:24px minmax(0,1fr);align-items:center;gap:7px;min-width:0;padding:7px 7px 7px 0;color:#8797ac;font-size:10px;font-weight:700}.timetable-wizard.studio-v2 .wizard-steps li:after{position:absolute;top:50%;right:-5px;width:7px;height:1px;margin:0;background:#dbe4f0}.timetable-wizard.studio-v2 .wizard-steps li:last-child:after{display:none}.timetable-wizard.studio-v2 .wizard-steps li>span{display:grid;width:24px;height:24px;place-items:center;border:1px solid #dbe4f0;border-radius:8px;background:#fff;color:#8393a9;box-shadow:inset 0 1px #fff;font-size:10px}.timetable-wizard.studio-v2 .wizard-steps small{overflow:hidden;text-overflow:ellipsis;font-size:inherit}.timetable-wizard.studio-v2 .wizard-steps .done{color:#516b91}.timetable-wizard.studio-v2 .wizard-steps .done>span{border-color:#c6dff0;background:#edf8ff;color:#3171b4}.timetable-wizard.studio-v2 .wizard-steps .active{color:var(--tt-ink)}.timetable-wizard.studio-v2 .wizard-steps .active>span{border-color:transparent;background:linear-gradient(135deg,var(--tt-accent-deep),var(--tt-violet));color:#fff;box-shadow:0 6px 13px #434cbc47,inset 0 1px #ffffff40}.timetable-wizard.studio-v2 .wizard-shell main{min-height:0;padding:28px;overflow:auto;background:radial-gradient(circle at 97% 0%,rgba(128,102,227,.08),transparent 24%),#f6f8fc}.timetable-wizard.studio-v2 .wizard-notice{max-width:1050px;margin:0 auto 14px;padding:11px 14px;border:1px solid #bce7d5;border-radius:12px;background:#f0fbf6;color:#167151;font-size:12px;font-weight:650}.timetable-wizard.studio-v2 .wizard-notice[data-tone=error]{border-color:#f1c5cd;background:#fff4f5;color:#ad4051}.timetable-wizard.studio-v2 .wizard-stage-heading{display:grid;grid-template-columns:minmax(0,1fr) minmax(260px,.56fr);gap:22px;max-width:1050px;margin:0 auto 18px}.timetable-wizard.studio-v2 .wizard-stage-index,.timetable-wizard.studio-v2 .wizard-section-kicker{margin:0 0 5px;color:#536ec7;font-size:10px;font-weight:800;letter-spacing:.105em;text-transform:uppercase}.timetable-wizard.studio-v2 .wizard-stage-heading h3{margin:0;color:var(--tt-ink);font-size:clamp(23px,2.4vw,30px);font-weight:760;letter-spacing:-.045em}.timetable-wizard.studio-v2 .wizard-stage-heading>div>p:last-child{max-width:620px;margin:7px 0 0;color:var(--tt-muted);font-size:14px;line-height:1.55}.timetable-wizard.studio-v2 .wizard-stage-tip{display:flex;align-items:flex-start;gap:10px;align-self:end;margin:0;padding:12px 13px;border:1px solid #dce4f2;border-radius:15px;background:#ffffffc2;box-shadow:0 6px 14px #26365e0a,inset 0 1px #fff}.timetable-wizard.studio-v2 .wizard-stage-tip>span{display:grid;flex:0 0 auto;width:20px;height:20px;place-items:center;border-radius:7px;background:#eef0ff;color:#5e50ca;font-size:11px}.timetable-wizard.studio-v2 .wizard-stage-tip p{margin:0;color:#60738e;font-size:11px;line-height:1.48}.timetable-wizard.studio-v2 .wizard-card{max-width:1050px;margin:0 auto;padding:24px;border:1px solid rgba(215,226,240,.94);border-radius:20px;background:linear-gradient(145deg,#fff,#fbfcff);box-shadow:0 15px 34px #1f305914,inset 0 1px #fff}.timetable-wizard.studio-v2 .wizard-section-stack{display:grid;gap:16px}.timetable-wizard.studio-v2 .wizard-form-section,.timetable-wizard.studio-v2 .wizard-workspace{padding:18px;border:1px solid #dfe7f2;border-radius:16px;background:#fff;box-shadow:0 6px 15px #23365e09,inset 0 1px #fffffffa}.timetable-wizard.studio-v2 .wizard-form-section--secondary{background:linear-gradient(145deg,#fbfcff,#f6f8fe)}.timetable-wizard.studio-v2 .wizard-section-heading,.timetable-wizard.studio-v2 .wizard-workspace-heading{justify-content:space-between;gap:16px;margin-bottom:16px}.timetable-wizard.studio-v2 .wizard-section-heading h4,.timetable-wizard.studio-v2 .wizard-workspace-heading h4{margin:0;color:#223551;font-size:16px;font-weight:760;letter-spacing:-.018em}.timetable-wizard.studio-v2 .wizard-section-heading>div>p:last-child,.timetable-wizard.studio-v2 .wizard-workspace-heading>div>p:last-child{margin:4px 0 0;color:var(--tt-muted);font-size:12px;line-height:1.45}.timetable-wizard.studio-v2 .wizard-section-badge,.timetable-wizard.studio-v2 .wizard-count-badge,.timetable-wizard.studio-v2 .preview-readonly{display:inline-flex;align-items:center;min-height:27px;padding:0 9px;border:1px solid #cbd9ff;border-radius:999px;background:#edf2ff;color:#485ec0;font-size:10px;font-weight:800;letter-spacing:.03em;white-space:nowrap}.timetable-wizard.studio-v2 .wizard-section-badge.neutral{border-color:#dce4ef;background:#f6f8fb;color:#6e7f96}.timetable-wizard.studio-v2 .wizard-form-grid{gap:14px}.timetable-wizard.studio-v2 .wizard-form-grid--defaults{grid-template-columns:repeat(4,minmax(0,1fr))}.timetable-wizard.studio-v2 .wizard-field,.timetable-wizard.studio-v2 .full-field{gap:7px;color:#536987;font-size:11px;font-weight:760;letter-spacing:.045em}.timetable-wizard.studio-v2 .wizard-field>span,.timetable-wizard.studio-v2 .full-field>span{text-transform:uppercase}.timetable-wizard.studio-v2 .wizard-form-grid input,.timetable-wizard.studio-v2 .wizard-form-grid select,.timetable-wizard.studio-v2 .wizard-list input,.timetable-wizard.studio-v2 .wizard-list select,.timetable-wizard.studio-v2 .full-field textarea{min-height:44px;border-color:#d5e0ee;border-radius:11px;background:#fbfcff;color:#203550;font-size:14px;font-weight:600;box-shadow:inset 0 1px 2px #23376008;transition:border-color .16s ease,box-shadow .16s ease,background .16s ease}.timetable-wizard.studio-v2 .wizard-form-grid input:hover,.timetable-wizard.studio-v2 .wizard-form-grid select:hover,.timetable-wizard.studio-v2 .wizard-list input:hover,.timetable-wizard.studio-v2 .wizard-list select:hover,.timetable-wizard.studio-v2 .full-field textarea:hover{border-color:#b9c8dd;background:#fff}.timetable-wizard.studio-v2 .wizard-form-grid input:focus,.timetable-wizard.studio-v2 .wizard-form-grid select:focus,.timetable-wizard.studio-v2 .wizard-list input:focus,.timetable-wizard.studio-v2 .wizard-list select:focus,.timetable-wizard.studio-v2 .full-field textarea:focus{border-color:#5269d0;outline:0;background:#fff;box-shadow:0 0 0 3px #4c63d821,0 4px 10px #2235600f}.timetable-wizard.studio-v2 .full-field textarea{min-height:210px;padding:13px;line-height:1.5}.timetable-wizard.studio-v2 .wizard-list{gap:10px}.timetable-wizard.studio-v2 .period-column-labels,.timetable-wizard.studio-v2 .group-column-labels,.timetable-wizard.studio-v2 .course-details-head{display:grid;align-items:center;gap:10px;padding:0 12px;color:#74869f;font-size:10px;font-weight:800;letter-spacing:.075em;text-transform:uppercase}.timetable-wizard.studio-v2 .period-column-labels{grid-template-columns:120px 1fr 1fr 88px 35px}.timetable-wizard.studio-v2 .group-column-labels{grid-template-columns:1fr 100px 18px 100px 35px}.timetable-wizard.studio-v2 .course-details-head,.timetable-wizard.studio-v2 .course-reference-row{grid-template-columns:minmax(108px,.8fr) minmax(180px,1.75fr) 78px 62px minmax(150px,1.2fr) 92px 36px}.timetable-wizard.studio-v2 .period-row,.timetable-wizard.studio-v2 .course-row,.timetable-wizard.studio-v2 .group-row{min-height:58px;border-color:#dfe7f2;border-radius:13px;background:#fbfcff;box-shadow:inset 0 1px #fff;transition:border-color .16s ease,box-shadow .16s ease}.timetable-wizard.studio-v2 .period-row:hover,.timetable-wizard.studio-v2 .course-row:hover,.timetable-wizard.studio-v2 .group-row:hover{border-color:#cbd8ea;box-shadow:0 5px 13px #23365e0f,inset 0 1px #fff}.timetable-wizard.studio-v2 .period-row button,.timetable-wizard.studio-v2 .course-row button,.timetable-wizard.studio-v2 .group-row button{width:34px;height:34px;border:1px solid #f6cdd3;border-radius:10px;background:#fff5f6;color:#c94b5c;font-size:19px;transition:background .16s ease,transform .16s ease}.timetable-wizard.studio-v2 .period-row button:hover,.timetable-wizard.studio-v2 .course-row button:hover,.timetable-wizard.studio-v2 .group-row button:hover{background:#ffecee;transform:translateY(-1px)}.timetable-wizard.studio-v2 .check{gap:7px;color:#526780;font-size:12px;font-weight:700}.timetable-wizard.studio-v2 .check input{width:17px;min-height:17px;accent-color:var(--tt-accent)}.timetable-wizard.studio-v2 .outline-action{min-height:39px;border-color:#9cafdf;border-radius:10px;background:#f5f8ff;color:#405bc4;font-size:12px;font-weight:780;letter-spacing:.01em;transition:transform .16s ease,background .16s ease,box-shadow .16s ease}.timetable-wizard.studio-v2 .outline-action:hover{background:#eaf0ff;box-shadow:0 6px 13px #3d54b41c;transform:translateY(-1px)}.timetable-wizard.studio-v2 .wizard-hint{color:#71839c;font-size:12px;line-height:1.55}.timetable-wizard.studio-v2 .wizard-empty-state{display:flex;align-items:center;gap:12px;min-height:96px;padding:17px;border:1px dashed #b9c9e0;border-radius:14px;background:linear-gradient(145deg,#fbfcff,#f4f7fd)}.timetable-wizard.studio-v2 .wizard-empty-state>span{display:grid;flex:0 0 auto;width:34px;height:34px;place-items:center;border-radius:10px;background:#e9efff;color:#4761ca;font-size:21px;font-weight:500}.timetable-wizard.studio-v2 .wizard-empty-state b{color:#2d4263;font-size:13px}.timetable-wizard.studio-v2 .wizard-empty-state p{margin:3px 0 0;color:#71839c;font-size:12px;line-height:1.45}.timetable-wizard.studio-v2 .wizard-grid-toolbar{justify-content:space-between;gap:18px;margin-bottom:12px}.timetable-wizard.studio-v2 .wizard-grid-toolbar h4{margin:0;color:#233852;font-size:17px;font-weight:760;letter-spacing:-.02em}.timetable-wizard.studio-v2 .wizard-grid-toolbar p:not(.wizard-section-kicker){margin:4px 0 0;color:var(--tt-muted);font-size:12px}.timetable-wizard.studio-v2 .wizard-grid-status{display:flex;flex-wrap:wrap;justify-content:flex-end;gap:7px}.timetable-wizard.studio-v2 .wizard-grid-status span{display:inline-flex;gap:4px;align-items:baseline;padding:8px 9px;border:1px solid #dbe5f2;border-radius:10px;background:#f8faff;color:#6e819a;font-size:11px;font-weight:650;white-space:nowrap}.timetable-wizard.studio-v2 .wizard-grid-status b{color:#39579a;font-size:14px}.timetable-wizard.studio-v2 .wizard-grid-status .attention{border-color:#eed3a3;background:#fffaf1;color:#9d6e1d}.timetable-wizard.studio-v2 .wizard-grid-status .attention b{color:#a56600}.timetable-wizard.studio-v2 .grid-legend{display:flex;flex-wrap:wrap;gap:13px;margin:0 0 12px;color:#6e8098;font-size:11px;font-weight:650}.timetable-wizard.studio-v2 .grid-legend span{display:inline-flex;align-items:center;gap:6px}.timetable-wizard.studio-v2 .grid-legend i{width:9px;height:9px;border-radius:3px}.timetable-wizard.studio-v2 .grid-legend-empty{border:1px solid #b9c8dd;background:#fff}.timetable-wizard.studio-v2 .grid-legend-filled{background:#aabfff}.timetable-wizard.studio-v2 .grid-legend-review{background:#f0b85b}.timetable-wizard.studio-v2 .grid-scroll{max-height:min(490px,calc(100dvh - 390px));border-color:#d5e0ee;border-radius:16px;background:#fff;box-shadow:0 8px 18px #23365e0d}.timetable-wizard.studio-v2 .timetable-grid{min-width:860px}.timetable-wizard.studio-v2 .timetable-grid thead th{position:sticky;top:0;z-index:3;height:65px;background:linear-gradient(180deg,#f4f7fe,#eef3fb);color:#5d718f;font-size:11px;font-weight:800;letter-spacing:.04em}.timetable-wizard.studio-v2 .timetable-grid thead th:first-child,.timetable-wizard.studio-v2 .timetable-grid tbody th{position:sticky;left:0;z-index:4}.timetable-wizard.studio-v2 .timetable-grid thead th:first-child{z-index:5;background:#eef3fb}.timetable-wizard.studio-v2 .timetable-grid thead small{color:#8999ae;font-size:10px;font-weight:600}.timetable-wizard.studio-v2 .timetable-grid tbody th{width:62px;background:#f8faff;color:#50647f;font-size:10px;font-weight:800;letter-spacing:.07em}.timetable-wizard.studio-v2 .timetable-grid td{height:82px;background:#fff}.timetable-wizard.studio-v2 .grid-cell{min-height:82px;color:#8496ad;transition:background .16s ease,color .16s ease,box-shadow .16s ease}.timetable-wizard.studio-v2 button.grid-cell:hover{background:#f2f6ff;color:#4561c9;box-shadow:inset 0 0 0 1px #5869d129}.timetable-wizard.studio-v2 button.grid-cell:focus-visible{position:relative;z-index:2;outline:3px solid rgba(71,93,204,.38);outline-offset:-3px}.timetable-wizard.studio-v2 .grid-cell-add{display:grid;place-items:center;gap:2px}.timetable-wizard.studio-v2 .grid-cell-add>span{display:grid;width:23px;height:23px;place-items:center;border:1px solid #c5d2e3;border-radius:8px;background:#fbfdff;font-size:17px;line-height:1}.timetable-wizard.studio-v2 .grid-cell-add em{color:#8b9bae;font-size:9px;font-style:normal;font-weight:700;opacity:0;transform:translateY(-2px);transition:opacity .16s ease,transform .16s ease}.timetable-wizard.studio-v2 button.grid-cell:hover .grid-cell-add em,.timetable-wizard.studio-v2 button.grid-cell:focus-visible .grid-cell-add em{opacity:1;transform:translateY(0)}.timetable-wizard.studio-v2 .grid-cell.filled{background:linear-gradient(145deg,#edf3ff,#e4edff);color:#294f9d;box-shadow:inset 0 1px #ffffffd9}.timetable-wizard.studio-v2 .grid-cell.filled b{color:#274783;font-size:11px;font-weight:800}.timetable-wizard.studio-v2 .grid-cell.filled span{color:#5b7195;font-size:9px;font-weight:600;line-height:1.45}.timetable-wizard.studio-v2 .grid-cell.filled em,.timetable-wizard.studio-v2 .grid-cell.filled i{display:inline-flex;width:fit-content;margin-top:4px;padding:2px 5px;border-radius:999px;background:#4b67bb21;color:#415f9f;font-size:8px;font-style:normal;font-weight:800}.timetable-wizard.studio-v2 .grid-cell.needs-review{background:linear-gradient(145deg,#fff9ef,#fff0d7);box-shadow:inset 3px 0 #e6a33d}.timetable-wizard.studio-v2 .grid-cell.needs-review i{background:#c27b1224;color:#9a6012}.timetable-wizard.studio-v2 .grid-cell.is-read-only{pointer-events:none}.timetable-wizard.studio-v2 .grid-cell-empty{color:#b4c0ce;font-size:16px}.timetable-wizard.studio-v2 .break-cell{background:repeating-linear-gradient(135deg,#fffaf0 0,#fffaf0 10px,#fff6e6 10px,#fff6e6 20px)!important;color:#aa7415;font-size:10px;letter-spacing:.07em}.timetable-wizard.studio-v2 .grid-workspace-hint{margin:12px 0 0}.timetable-wizard.studio-v2 .preview-sheet{padding:0;overflow:hidden;border-color:#d7e2ef;border-radius:17px;background:#fff;box-shadow:0 9px 20px #2035620d}.timetable-wizard.studio-v2 .preview-toolbar{justify-content:space-between;gap:16px;padding:18px 20px;border-bottom:1px solid #e1e8f2;background:linear-gradient(105deg,#fbfcff,#f4f6ff)}.timetable-wizard.studio-v2 .preview-toolbar b{display:block;color:#233851;font-size:16px}.timetable-wizard.studio-v2 .preview-toolbar span:not(.preview-readonly){display:block;margin-top:4px;color:#6d8099;font-size:12px}.timetable-wizard.studio-v2 .preview-grid-scroll{max-height:410px;border:0;border-radius:0;box-shadow:none}.timetable-wizard.studio-v2 .preview-notes{margin:0;padding:18px 20px;border-top:1px solid #e1e8f2;color:#5d718d;font-size:12px}.timetable-wizard.studio-v2 .preview-notes b{color:#30465f}.timetable-wizard.studio-v2 .publish-state{max-width:630px;margin:10px auto}.timetable-wizard.studio-v2 .publish-check{width:68px;height:68px;border:1px solid #b8e7d4;border-radius:21px;background:linear-gradient(145deg,#e4fbf0,#f7fffb);box-shadow:0 9px 18px #178e601f;color:#13865f}.timetable-wizard.studio-v2 .publish-state h2{color:#20354f;font-size:29px;font-weight:760;letter-spacing:-.04em}.timetable-wizard.studio-v2 .publish-state>p:not(.eyebrow){color:#637792;font-size:13px}.timetable-wizard.studio-v2 .check-list{padding:15px;border:1px solid #d9e4f1;border-radius:15px;background:#fbfcff}.timetable-wizard.studio-v2 .check-list>b{margin-bottom:3px;color:#2e435f;font-size:13px}.timetable-wizard.studio-v2 .check-list span{display:grid;grid-template-columns:18px minmax(0,1fr) auto;align-items:center;gap:7px;padding:8px 0;border-top:1px solid #edf1f7;color:#647890;font-size:12px}.timetable-wizard.studio-v2 .check-list span i{display:grid;width:18px;height:18px;place-items:center;border-radius:50%;background:#eef2f7;color:#8392a6;font-size:10px;font-style:normal}.timetable-wizard.studio-v2 .check-list span.ready i{background:#e2f7ee;color:#14845d}.timetable-wizard.studio-v2 .check-list span strong{color:#3b516d;font-weight:730}.timetable-wizard.studio-v2 .check-list span small{color:#8998ab;font-size:10px;font-weight:600}.timetable-wizard.studio-v2 .publish-confirmation{margin-top:14px;padding:13px 15px;border:1px solid #d5ccff;border-radius:14px;background:#f5f2ff;color:#4b3da0;text-align:left}.timetable-wizard.studio-v2 .publish-confirmation b{font-size:12px}.timetable-wizard.studio-v2 .publish-confirmation p{margin:4px 0 0;color:#635692;font-size:12px;line-height:1.45}.timetable-wizard.studio-v2 .wizard-shell footer{gap:18px;min-height:74px;padding:14px 28px;border-top:1px solid #dce5f0;background:#fbfdfff5;box-shadow:0 -8px 18px #23355e0a}.timetable-wizard.studio-v2 .wizard-footer-left{min-width:0;gap:12px}.timetable-wizard.studio-v2 .wizard-footer-left>p{display:flex;flex-wrap:wrap;gap:5px 10px;margin:0;color:#8190a4;font-size:11px;line-height:1.35}.timetable-wizard.studio-v2 .wizard-footer-actions{gap:10px}.timetable-wizard.studio-v2 .wizard-shell footer button{min-height:42px;padding:10px 14px;border-radius:11px;font-size:12px;font-weight:760;letter-spacing:.005em;transition:transform .16s ease,box-shadow .16s ease,background .16s ease}.timetable-wizard.studio-v2 .ghost-action{border:1px solid #dde5ef;background:#f5f7fb;color:#61758f}.timetable-wizard.studio-v2 .ghost-action:not(:disabled):hover,.timetable-wizard.studio-v2 .secondary-button:hover{background:#edf2f9;color:#304761}.timetable-wizard.studio-v2 .secondary-button{border:1px solid #cdd9eb;background:#fff;color:#42609a;box-shadow:inset 0 1px #fff}.timetable-wizard.studio-v2 .wizard-shell footer .primary{min-width:170px;border:0;background:linear-gradient(135deg,#345aad,#6348cb);box-shadow:0 8px 16px #3445ab47,inset 0 1px #ffffff3d;color:#fff}.timetable-wizard.studio-v2 .wizard-shell footer .primary:hover{transform:translateY(-1px);box-shadow:0 11px 22px #3445ab57,inset 0 1px #ffffff3d}.timetable-wizard.studio-v2 .wizard-shell footer button:disabled{cursor:not-allowed;opacity:.55;transform:none}.wizard-toast{position:fixed;right:24px;bottom:24px;z-index:150;max-width:min(380px,calc(100% - 32px));padding:13px 16px;border:1px solid #b9e6d3;border-radius:13px;background:#f3fdf8;box-shadow:0 14px 34px #14354d2e;color:#177154;font-size:13px;font-weight:700;animation:tt-toast-in .24s ease both}.wizard-toast.error{border-color:#f1c3cb;background:#fff6f7;color:#ad4352}@keyframes tt-pulse{50%{opacity:.42}}@keyframes tt-toast-in{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}@media (max-width:900px){.timetable-wizard.studio-v2 .wizard-shell{width:min(100% - 20px,980px);height:calc(100dvh - 20px);margin:10px auto}.timetable-wizard.studio-v2 .wizard-topbar,.timetable-wizard.studio-v2 .wizard-journey,.timetable-wizard.studio-v2 .wizard-shell main,.timetable-wizard.studio-v2 .wizard-shell footer{padding-left:20px;padding-right:20px}.timetable-wizard.studio-v2 .wizard-form-grid--defaults{grid-template-columns:1fr 1fr}.timetable-wizard.studio-v2 .wizard-stage-heading{grid-template-columns:1fr;gap:12px}.timetable-wizard.studio-v2 .wizard-stage-tip{align-self:auto}.timetable-wizard.studio-v2 .wizard-steps{grid-template-columns:repeat(4,minmax(0,1fr));row-gap:2px}.timetable-wizard.studio-v2 .wizard-steps li:after{display:none}}@media (max-width:720px){.timetable-wizard.studio-v2 .wizard-shell{width:100%;height:100dvh;margin:0;border-radius:0}.timetable-wizard.studio-v2 .wizard-topbar{align-items:flex-start;min-height:83px;padding-top:14px;padding-bottom:14px}.timetable-wizard.studio-v2 .wizard-brand-mark{width:36px;height:36px;border-radius:12px;font-size:18px}.timetable-wizard.studio-v2 .wizard-topbar h2{font-size:21px}.timetable-wizard.studio-v2 .wizard-subtitle,.timetable-wizard.studio-v2 .wizard-save-indicator{display:none}.timetable-wizard.studio-v2 .wizard-journey{padding-top:9px;padding-bottom:9px}.timetable-wizard.studio-v2 .wizard-steps{display:flex;gap:7px;overflow-x:auto;scrollbar-width:none}.timetable-wizard.studio-v2 .wizard-steps::-webkit-scrollbar{display:none}.timetable-wizard.studio-v2 .wizard-steps li{flex:0 0 auto;min-width:auto;padding:3px 1px}.timetable-wizard.studio-v2 .wizard-steps li:not(.active) small{display:none}.timetable-wizard.studio-v2 .wizard-steps .active small{display:block;max-width:120px}.timetable-wizard.studio-v2 .wizard-shell main{padding-top:20px;padding-bottom:20px}.timetable-wizard.studio-v2 .wizard-stage-heading h3{font-size:24px}.timetable-wizard.studio-v2 .wizard-stage-heading>div>p:last-child{font-size:13px}.timetable-wizard.studio-v2 .wizard-card{padding:14px;border-radius:17px}.timetable-wizard.studio-v2 .wizard-form-section,.timetable-wizard.studio-v2 .wizard-workspace{padding:14px;border-radius:14px}.timetable-wizard.studio-v2 .wizard-form-grid,.timetable-wizard.studio-v2 .wizard-form-grid--defaults{grid-template-columns:1fr;gap:12px}.timetable-wizard.studio-v2 .period-column-labels,.timetable-wizard.studio-v2 .group-column-labels,.timetable-wizard.studio-v2 .course-details-head{display:none}.timetable-wizard.studio-v2 .period-row{grid-template-columns:1fr 1fr 1fr 34px;padding:9px}.timetable-wizard.studio-v2 .period-row .check{grid-column:1/4}.timetable-wizard.studio-v2 .course-reference-row{grid-template-columns:1fr 1fr 35px;padding:10px}.timetable-wizard.studio-v2 .course-reference-row>:nth-child(2),.timetable-wizard.studio-v2 .course-reference-row>:nth-child(5){grid-column:1/3}.timetable-wizard.studio-v2 .group-row{grid-template-columns:minmax(0,1fr) 74px 14px 74px 34px;gap:7px;padding:9px}.timetable-wizard.studio-v2 .wizard-grid-toolbar{align-items:flex-start;flex-direction:column}.timetable-wizard.studio-v2 .wizard-grid-status{justify-content:flex-start}.timetable-wizard.studio-v2 .grid-scroll{max-height:min(430px,calc(100dvh - 390px))}.timetable-wizard.studio-v2 .preview-toolbar{align-items:flex-start;flex-direction:column}.timetable-wizard.studio-v2 .wizard-shell footer{align-items:stretch;flex-direction:column;padding-top:11px;padding-bottom:11px}.timetable-wizard.studio-v2 .wizard-footer-left{justify-content:space-between}.timetable-wizard.studio-v2 .wizard-footer-left>p{display:none}.timetable-wizard.studio-v2 .wizard-footer-actions{display:grid;grid-template-columns:1fr 1.25fr}.timetable-wizard.studio-v2 .wizard-shell footer .primary{min-width:0}}@media (prefers-reduced-motion:reduce){.timetable-wizard.studio-v2 *,.wizard-toast{animation-duration:.01ms!important;transition-duration:.01ms!important}}.timetable-wizard.studio-v2 .cell-modal{padding:20px!important;background:#0a162fad!important;-webkit-backdrop-filter:blur(10px) saturate(1.08);backdrop-filter:blur(10px) saturate(1.08)}.timetable-wizard.studio-v2 .cell-dialog.reference-cell-dialog.studio-assignment-dialog{width:min(760px,calc(100% - 40px))!important;max-height:calc(100dvh - 40px)!important;gap:16px!important;padding:18px!important;border:1px solid rgba(255,255,255,.88)!important;border-radius:25px!important;background:linear-gradient(145deg,#f8faff,#edf2fb)!important;box-shadow:0 42px 96px #05102880,0 2px #fffffffa inset,0 -1px #91a4c74d inset!important;scrollbar-color:#93a2ba transparent}.timetable-wizard.studio-v2 .studio-assignment-dialog .cell-close{top:31px!important;right:31px!important;z-index:4!important;width:36px!important;height:36px!important;border:1px solid rgba(255,255,255,.28)!important;border-radius:11px!important;background:#ffffff24!important;color:#fff!important;box-shadow:inset 0 1px #fff3!important;font-size:21px!important;line-height:1!important;transition:transform .16s ease,background .16s ease!important}.timetable-wizard.studio-v2 .studio-assignment-dialog .cell-close:hover{background:#ffffff45!important;transform:translateY(-1px)!important}.timetable-wizard.studio-v2 .studio-assignment-dialog .assignment-dialog-hero{display:block!important;min-height:0!important;margin:0!important;padding:23px 78px 20px 24px!important;border:0!important;border-radius:18px!important;background:linear-gradient(125deg,#15284f,#294986 54%,#6954cd)!important;box-shadow:0 13px 26px #1c316842,inset 0 1px #fff3!important;color:#fff!important;overflow:hidden!important}.timetable-wizard.studio-v2 .studio-assignment-dialog .assignment-dialog-hero:before{left:auto!important;right:-48px!important;top:-66px!important;width:180px!important;height:180px!important;border-radius:50%!important;background:radial-gradient(circle,#ffffff3d,#fff0 68%)!important;box-shadow:none!important}.timetable-wizard.studio-v2 .studio-assignment-dialog .assignment-dialog-hero>span{display:inline-flex!important;align-items:center!important;min-height:24px!important;margin:0 0 9px!important;padding:0 9px!important;border:1px solid rgba(255,255,255,.27)!important;border-radius:999px!important;background:#ffffff1f!important;color:#f5f8ffeb!important;font-size:10px!important;font-weight:800!important;letter-spacing:.105em!important;text-transform:uppercase!important}.timetable-wizard.studio-v2 .studio-assignment-dialog .assignment-dialog-hero h3{position:relative!important;margin:0!important;padding:0!important;border:0!important;color:#fff!important;font-size:25px!important;font-weight:770!important;line-height:1.12!important;letter-spacing:-.055em!important;text-align:left!important}.timetable-wizard.studio-v2 .studio-assignment-dialog .assignment-dialog-hero p{position:relative!important;margin:8px 0 0!important;color:#edf2ffdb!important;font-size:13px!important;font-weight:500!important;line-height:1.45!important;text-align:left!important}.timetable-wizard.studio-v2 .assignment-time-meta{position:relative;display:flex;flex-wrap:wrap;gap:7px;margin-top:13px}.timetable-wizard.studio-v2 .assignment-time-meta span{display:inline-flex;align-items:center;min-height:25px;padding:0 8px;border:1px solid rgba(255,255,255,.18);border-radius:8px;background:#0914352e;color:#f8faffe6;font-size:10px;font-weight:720;letter-spacing:.025em}.timetable-wizard.studio-v2 .studio-assignment-dialog .assignment-picker{display:grid!important;gap:6px!important;padding:11px 13px!important;border:1px solid #dbe4f0!important;border-radius:13px!important;background:#f9fbff!important;color:#526a8e!important;font-size:10px!important;font-weight:780!important;letter-spacing:.075em!important;text-transform:uppercase!important}.timetable-wizard.studio-v2 .studio-assignment-dialog .assignment-picker select{height:42px!important;border-color:#d4deec!important;border-radius:10px!important;background:#fff!important;color:#263b58!important;font-size:13px!important;font-weight:650!important;letter-spacing:0!important;text-transform:none!important}.timetable-wizard.studio-v2 .studio-assignment-dialog .assignment-mode-panel,.timetable-wizard.studio-v2 .studio-assignment-dialog .assignment-details-panel,.timetable-wizard.studio-v2 .studio-assignment-dialog .assignment-lab-panel,.timetable-wizard.studio-v2 .studio-assignment-dialog .assignment-teaching-team{padding:17px!important;border:1px solid #dce5f2!important;border-radius:17px!important;background:#fff!important;box-shadow:0 8px 18px #2136630e,inset 0 1px #fffffffa!important}.timetable-wizard.studio-v2 .studio-assignment-dialog .assignment-mode-panel{background:linear-gradient(145deg,#fff,#f7f9fe)!important}.timetable-wizard.studio-v2 .studio-assignment-dialog .assignment-lab-panel{background:linear-gradient(145deg,#f9fbff,#f4f7fe)!important}.timetable-wizard.studio-v2 .studio-assignment-dialog .assignment-teaching-team{background:linear-gradient(145deg,#fff,#f8faff)!important}.timetable-wizard.studio-v2 .assignment-panel-heading{display:flex;align-items:flex-start;justify-content:space-between;gap:12px;margin:0 0 13px}.timetable-wizard.studio-v2 .assignment-panel-heading p{margin:0 0 3px;color:#5870c8;font-size:10px;font-weight:800;letter-spacing:.105em;text-transform:uppercase}.timetable-wizard.studio-v2 .assignment-panel-heading h4{margin:0;color:#263c5b;font-size:15px;font-weight:760;letter-spacing:-.015em}.timetable-wizard.studio-v2 .assignment-panel-heading>span{display:inline-flex;align-items:center;min-height:24px;padding:0 8px;border:1px solid #d6e0f2;border-radius:999px;background:#f5f8fd;color:#70829a;font-size:9px;font-weight:780;letter-spacing:.03em;white-space:nowrap}.timetable-wizard.studio-v2 .studio-assignment-dialog .type-toggle{padding:5px!important;border:1px solid #d4dfed!important;border-radius:14px!important;background:#e8eef7!important;box-shadow:inset 0 2px 5px #1f35621a,0 1px #ffffffe6!important}.timetable-wizard.studio-v2 .studio-assignment-dialog .type-toggle button{height:45px!important;border-radius:10px!important;background:transparent!important;color:#5d718e!important;font-size:13px!important;font-weight:760!important;letter-spacing:.012em!important}.timetable-wizard.studio-v2 .studio-assignment-dialog .type-toggle .selected{background:linear-gradient(135deg,#315eaf,#6549cf)!important;color:#fff!important;box-shadow:0 7px 15px #2f439f47,inset 0 1px #ffffff3d!important}.timetable-wizard.studio-v2 .studio-assignment-dialog .stream-panel{margin-top:14px!important;padding:0!important;border:0!important;border-top:1px solid #e4eaf4!important;border-radius:0!important;background:transparent!important;box-shadow:none!important}.timetable-wizard.studio-v2 .studio-assignment-dialog .stream-panel .section-kicker{display:flex!important;align-items:center!important;margin-top:13px!important;color:#3f5892!important;font-size:11px!important;font-weight:780!important;letter-spacing:.07em!important}.timetable-wizard.studio-v2 .studio-assignment-dialog .stream-panel .section-kicker small{margin-left:auto!important;color:#7f90a8!important;font-size:10px!important;font-weight:650!important;letter-spacing:0!important;text-transform:none!important}.timetable-wizard.studio-v2 .studio-assignment-dialog .stream-options{gap:10px!important;margin-top:11px!important}.timetable-wizard.studio-v2 .studio-assignment-dialog .stream-options button{min-height:66px!important;border:1px solid #d4e0ee!important;border-radius:13px!important;background:#fbfcff!important;color:#2b405e!important;font-size:13px!important;font-weight:760!important;box-shadow:0 3px 7px #22376309,inset 0 1px #fffffffa!important;transition:transform .16s ease,border-color .16s ease,box-shadow .16s ease!important}.timetable-wizard.studio-v2 .studio-assignment-dialog .stream-options button:hover{border-color:#aebfe0!important;box-shadow:0 6px 13px #2e406c14!important;transform:translateY(-1px)}.timetable-wizard.studio-v2 .studio-assignment-dialog .stream-options button.selected{border-color:#6252cc!important;background:linear-gradient(145deg,#f8f5ff,#eee9ff)!important;color:#4c3bb8!important;box-shadow:0 7px 15px #503bb524,inset 0 1px #fff!important}.timetable-wizard.studio-v2 .studio-assignment-dialog .stream-options button small{margin-top:5px!important;color:#8091aa!important;font-size:10px!important;font-weight:620!important}.timetable-wizard.studio-v2 .studio-assignment-dialog .stream-panel p{margin:11px 2px 0!important;color:#6b7d96!important;font-size:11px!important;line-height:1.5!important}.timetable-wizard.studio-v2 .studio-assignment-dialog .assignment-details-panel>.cell-two-fields{gap:13px!important}.timetable-wizard.studio-v2 .studio-assignment-dialog .assignment-details-panel>.cell-two-fields+.cell-two-fields{margin-top:13px;padding-top:13px;border-top:1px solid #e7edf5}.timetable-wizard.studio-v2 .studio-assignment-dialog label{gap:7px!important;color:#415d92!important;font-size:10px!important;font-weight:780!important;letter-spacing:.075em!important;text-transform:uppercase}.timetable-wizard.studio-v2 .studio-assignment-dialog input,.timetable-wizard.studio-v2 .studio-assignment-dialog select{height:46px!important;border:1px solid #d3deec!important;border-radius:12px!important;background:#fff!important;color:#263b58!important;font-size:13px!important;font-weight:620!important;letter-spacing:0!important;text-transform:none!important;box-shadow:0 2px 5px #1f335809,inset 0 1px 1px #25396006!important}.timetable-wizard.studio-v2 .studio-assignment-dialog input:focus,.timetable-wizard.studio-v2 .studio-assignment-dialog select:focus{border-color:#5865cc!important;box-shadow:0 0 0 3px #4e5bc424,0 4px 10px #27386512!important}.timetable-wizard.studio-v2 .studio-assignment-dialog input::placeholder{color:#8a99ae!important;font-weight:500!important}.timetable-wizard.studio-v2 .studio-assignment-dialog .cell-course-picker{display:grid;margin-top:13px;padding-top:13px;border-top:1px solid #e7edf5}.timetable-wizard.studio-v2 .studio-assignment-dialog .cell-course-picker+.cell-two-fields{margin-top:13px}.timetable-wizard.studio-v2 .studio-assignment-dialog .assignment-lab-panel .section-kicker{display:flex!important;align-items:center!important;color:#3b5792!important;font-size:11px!important;font-weight:780!important;letter-spacing:.075em!important}.timetable-wizard.studio-v2 .studio-assignment-dialog .assignment-lab-panel .section-kicker small{margin-left:auto!important;color:#72849e!important;font-size:10px!important;font-weight:650!important;letter-spacing:0!important;text-transform:none!important}.timetable-wizard.studio-v2 .studio-assignment-dialog .lab-group-chips{gap:9px!important;margin-top:12px!important}.timetable-wizard.studio-v2 .studio-assignment-dialog .lab-group-chips button{min-height:40px!important;border:1px solid #d3deec!important;border-radius:10px!important;background:#fff!important;color:#415777!important;font-size:12px!important;font-weight:760!important;box-shadow:0 2px 5px #25386208!important}.timetable-wizard.studio-v2 .studio-assignment-dialog .lab-group-chips button.selected{border-color:#6859d5!important;background:linear-gradient(145deg,#f7f4ff,#ece8ff)!important;color:#503ec1!important;box-shadow:0 6px 13px #503bb51f,inset 0 1px #fff!important}.timetable-wizard.studio-v2 .studio-assignment-dialog .lab-copy-actions{margin-top:13px!important;padding:11px!important;border:1px dashed #b6c6e0!important;border-radius:12px!important;background:#ffffffb8!important}.timetable-wizard.studio-v2 .studio-assignment-dialog .lab-copy-actions>span{display:block;margin-bottom:8px;color:#687d9c;font-size:10px;font-weight:780;letter-spacing:.065em;text-transform:uppercase}.timetable-wizard.studio-v2 .studio-assignment-dialog .lab-copy-actions>div{display:flex;flex-wrap:wrap;gap:7px}.timetable-wizard.studio-v2 .studio-assignment-dialog .lab-copy-actions button{min-height:31px;border:1px solid #cdd8ed;border-radius:8px;background:#fff;color:#4961a2;font-size:10px;font-weight:760;transition:background .16s ease,transform .16s ease}.timetable-wizard.studio-v2 .studio-assignment-dialog .lab-copy-actions button:hover{background:#edf2ff;transform:translateY(-1px)}.timetable-wizard.studio-v2 .studio-assignment-dialog .assignment-teaching-team{display:grid;gap:12px}.timetable-wizard.studio-v2 .studio-assignment-dialog .assignment-teaching-team>.assignment-panel-heading{margin-bottom:1px}.timetable-wizard.studio-v2 .studio-assignment-dialog .professor-panel{padding:15px!important;border:1px solid #dce5f2!important;border-radius:14px!important;background:#fff!important;box-shadow:0 4px 11px #21366309,inset 0 1px #fffffffa!important}.timetable-wizard.studio-v2 .studio-assignment-dialog .professor-two-panel{background:#f9fbff!important}.timetable-wizard.studio-v2 .studio-assignment-dialog .professor-panel .section-kicker{display:flex!important;align-items:center!important;margin-bottom:10px!important;color:#3d5893!important;font-size:11px!important;font-weight:780!important;letter-spacing:.075em!important}.timetable-wizard.studio-v2 .studio-assignment-dialog .professor-panel .section-kicker small{margin-left:auto!important;color:#73859e!important;font-size:10px!important;font-weight:650!important;letter-spacing:0!important;text-transform:none!important}.timetable-wizard.studio-v2 .studio-assignment-dialog .cell-two-fields{gap:13px!important}.timetable-wizard.studio-v2 .studio-assignment-dialog .manual-divider{margin:14px 0 12px!important;color:#8193ad!important;font-size:10px!important;font-weight:780!important;letter-spacing:.09em!important}.timetable-wizard.studio-v2 .studio-assignment-dialog .manual-divider:before,.timetable-wizard.studio-v2 .studio-assignment-dialog .manual-divider:after{background:#dfe6ef!important}.timetable-wizard.studio-v2 .studio-assignment-dialog .assignment-actions{position:sticky!important;bottom:-18px!important;z-index:3!important;display:flex!important;align-items:center!important;gap:10px!important;margin:2px -18px -18px!important;padding:16px 18px!important;border-top:1px solid #dbe4f0!important;background:#f8fafff7!important;box-shadow:0 -12px 24px #23355e14!important;-webkit-backdrop-filter:blur(11px)!important;backdrop-filter:blur(11px)!important}.timetable-wizard.studio-v2 .studio-assignment-dialog .assignment-actions button{min-height:43px!important;padding:10px 16px!important;border-radius:11px!important;font-size:12px!important;font-weight:770!important;letter-spacing:.01em!important}.timetable-wizard.studio-v2 .studio-assignment-dialog #cell-delete{border:1px solid #ffd4dc!important;background:#fff2f4!important;color:#c73f55!important;box-shadow:inset 0 1px #ffffffe0!important}.timetable-wizard.studio-v2 .studio-assignment-dialog #cell-cancel{border:1px solid #d5e0ed!important;background:#fff!important;color:#32445f!important;box-shadow:inset 0 1px #ffffffe6!important}.timetable-wizard.studio-v2 .studio-assignment-dialog .assignment-actions .primary{margin-left:auto!important;padding-inline:21px!important;background:linear-gradient(135deg,#315cac,#6449cc)!important;color:#fff!important;box-shadow:0 8px 16px #3444a647,inset 0 1px #ffffff40!important}.timetable-wizard.studio-v2 .studio-assignment-dialog .assignment-actions button:hover{transform:translateY(-1px)}@media (max-width:640px){.timetable-wizard.studio-v2 .cell-modal{padding:12px!important}.timetable-wizard.studio-v2 .cell-dialog.reference-cell-dialog.studio-assignment-dialog{width:calc(100% - 24px)!important;max-height:calc(100dvh - 24px)!important;gap:12px!important;padding:12px!important;border-radius:20px!important}.timetable-wizard.studio-v2 .studio-assignment-dialog .assignment-dialog-hero{padding:18px 55px 17px 18px!important;border-radius:15px!important}.timetable-wizard.studio-v2 .studio-assignment-dialog .assignment-dialog-hero h3{font-size:21px!important}.timetable-wizard.studio-v2 .studio-assignment-dialog .assignment-dialog-hero p{font-size:12px!important}.timetable-wizard.studio-v2 .studio-assignment-dialog .cell-close{top:26px!important;right:25px!important;width:32px!important;height:32px!important}.timetable-wizard.studio-v2 .studio-assignment-dialog .assignment-mode-panel,.timetable-wizard.studio-v2 .studio-assignment-dialog .assignment-details-panel,.timetable-wizard.studio-v2 .studio-assignment-dialog .assignment-lab-panel,.timetable-wizard.studio-v2 .studio-assignment-dialog .assignment-teaching-team{padding:13px!important;border-radius:14px!important}.timetable-wizard.studio-v2 .studio-assignment-dialog .stream-options{grid-template-columns:1fr!important}.timetable-wizard.studio-v2 .studio-assignment-dialog .cell-two-fields{grid-template-columns:1fr!important;gap:10px!important}.timetable-wizard.studio-v2 .studio-assignment-dialog .assignment-details-panel>.cell-two-fields+.cell-two-fields{margin-top:11px;padding-top:11px}.timetable-wizard.studio-v2 .studio-assignment-dialog .assignment-actions{bottom:-12px!important;margin:2px -12px -12px!important;padding:12px!important;gap:8px!important}.timetable-wizard.studio-v2 .studio-assignment-dialog .assignment-actions button{min-height:42px!important;padding:9px 11px!important;font-size:11px!important}.timetable-wizard.studio-v2 .studio-assignment-dialog .assignment-actions .primary{padding-inline:13px!important}}@media (prefers-reduced-motion:reduce){.timetable-wizard.studio-v2 .studio-assignment-dialog *{animation-duration:.01ms!important;transition-duration:.01ms!important}}.calendar-event-row .event-date{display:grid;gap:4px;align-content:center;min-height:66px;padding:11px 13px;line-height:1.35}.calendar-event-row .event-date b{display:block;font-size:12px}.calendar-event-row .event-date small{display:block;color:#6682b3;font-size:9px;font-weight:700;letter-spacing:.04em;text-transform:uppercase}.calendar-row-actions{display:flex;align-items:center;justify-content:flex-end;gap:8px;margin-left:auto;white-space:nowrap}.calendar-row-actions .table-action{margin:0}@media (max-width:720px){.calendar-event-row .event-date{min-width:118px}.calendar-row-actions{width:100%;margin-left:0}}.shell.dark{--bg: #0b1220;--surface: #141f34;--surface-raised: #1b2941;--surface-soft: #101a2d;--text: #f4f7ff;--muted: #a7b7d1;--line: rgba(155, 178, 220, .18);--fs-line: rgba(155, 178, 220, .18);--fs-muted: #a7b7d1;background:radial-gradient(900px 540px at 80% -16%,rgba(104,84,232,.18),transparent 62%),radial-gradient(720px 460px at 15% 12%,rgba(43,117,224,.12),transparent 66%),var(--bg);color:var(--text)}.shell.dark main,.shell.dark .content{background:transparent!important;color:var(--text)}.shell.dark h1,.shell.dark h2,.shell.dark h3,.shell.dark h4,.shell.dark strong,.shell.dark b{color:var(--text)}.shell.dark p,.shell.dark small,.shell.dark .page-head p,.shell.dark .dashboard-intro>div>p:last-child,.shell.dark .panel-heading p:not(.eyebrow),.shell.dark .student-directory-summary,.shell.dark .student-directory-summary small{color:var(--muted)}.shell.dark .eyebrow,.shell.dark .eyebrow.purple,.shell.dark .dashboard-intro .eyebrow,.shell.dark .panel-heading .eyebrow,.shell.dark .metric-label,.shell.dark .directory-filters span,.shell.dark .activity-filters span{color:#9fb4df!important}.shell.dark>aside{background:linear-gradient(160deg,#17243b,#101a2d 62%,#0e1728)!important;border-color:#9db5e433!important;box-shadow:15px 18px 36px #00000047,inset 1px 1px #ffffff0e,inset -1px -1px #050a166b!important}.shell.dark>aside:before{background:radial-gradient(circle,rgba(129,104,255,.18),rgba(64,125,238,.045) 55%,transparent 70%)!important}.shell.dark .brand,.shell.dark .workspace{border-color:var(--line)!important;color:var(--muted)!important}.shell.dark .brand{color:#f6f8ff!important}.shell.dark .brand span span{color:#a99cff}.shell.dark .brand-icon{border-color:#a9b4ff38;box-shadow:4px 5px 13px #0003,inset 1px 1px #ffffff1a}.shell.dark .nav{color:#b7c6dc!important}.shell.dark .nav:hover{border-color:#8999ff40!important;background:linear-gradient(110deg,#4d69b238,#5c46bc2b)!important;box-shadow:5px 7px 15px #0000002e,inset 1px 1px #ffffff09!important}.shell.dark .nav.selected{color:#e9edff!important;border-color:#9688ff5c!important;background:linear-gradient(110deg,#5270d557,#764ddc54)!important;box-shadow:7px 9px 18px #00000038,inset 1px 1px #ffffff14!important}.shell.dark .nav em{color:#b9adff}.shell.dark .side-actions{border-color:var(--line)!important}.shell.dark .theme-row,.shell.dark .logout-row{background:#ffffff0b!important;border-color:#a1b6de40!important;box-shadow:none!important}.shell.dark .theme-row{color:#c4d0e5!important}.shell.dark .logout-row{color:#ffabb5!important;border-color:#ff94a547!important}.shell.dark>main>header{background:linear-gradient(115deg,#18243bf5,#101b2ef7)!important;border-bottom-color:var(--line)!important;box-shadow:0 8px 22px #0003,inset 0 1px #ffffff0b!important}.shell.dark>main>header:before{background:linear-gradient(110deg,rgba(158,176,255,.06),transparent 42%)!important}.shell.dark>main>header:after{background:radial-gradient(circle,rgba(128,98,246,.16),transparent 68%)!important}.shell.dark>main>header .eyebrow{color:#9fb4df!important}.shell.dark .head-actions{border-color:#9fb4de2e;background:#ffffff09;box-shadow:inset 1px 1px #ffffff0a}.shell.dark .identity small{color:var(--muted)}.shell.dark .avatar{background:linear-gradient(145deg,#334a80,#263b6a);color:#edf2ff;box-shadow:inset 1px 1px #ffffff1f}.shell.dark .panel,.shell.dark .dashboard-panel,.shell.dark .dashboard-stats article,.shell.dark .access-code-card,.shell.dark .student-table,.shell.dark .student-toolbar,.shell.dark .timetable-panel,.shell.dark .settings-admin-access,.shell.dark .settings-profile,.shell.dark .data-row,.shell.dark .tabs,.shell.dark .calendar-tabs,.shell.dark .search-strip,.shell.dark .calendar-search{border-color:var(--line)!important;background:linear-gradient(145deg,#1d2b45fa,#121d31fa)!important;box-shadow:10px 14px 27px #0003,inset 1px 1px #ffffff0b,inset -1px -1px #03091347!important}.shell.dark .dashboard-panel:before,.shell.dark .timetable-panel:before{background:linear-gradient(125deg,rgba(183,198,255,.055),transparent 38%,rgba(133,103,247,.04))!important}.shell.dark .dashboard-panel:hover,.shell.dark .dashboard-stats article:hover,.shell.dark .timetable-panel tbody tr:hover{box-shadow:12px 18px 32px #00000047,inset 1px 1px #ffffff0e!important}.shell.dark .access-code-card:before{background:linear-gradient(120deg,rgba(208,218,255,.08),transparent 45%)!important}.shell.dark .access-code-card strong{color:#b8b2ff}.shell.dark .access-code-card span{color:#a9bad5}.shell.dark .dashboard-stats article:after{opacity:.65}.shell.dark .schedule-row,.shell.dark .holiday-row,.shell.dark .notice-preview article,.shell.dark .directory-table tbody tr,.shell.dark .activity-table tbody tr,.shell.dark .timetable-panel tbody td{background:#0a122040!important;border-color:#9db2db24!important}.shell.dark .schedule-row time,.shell.dark .holiday-row time,.shell.dark .schedule-row b,.shell.dark .holiday-row b,.shell.dark td,.shell.dark th{color:#dce7fa}.shell.dark th{color:#9eb1ce}.shell.dark .schedule-row time small,.shell.dark .schedule-row span,.shell.dark .holiday-row span,.shell.dark .directory-table td small,.shell.dark .activity-table td small,.shell.dark .notice-preview p,.shell.dark .notice-preview small{color:var(--muted)}.shell.dark .schedule-row em{background:#8b9dc124;color:#bac9e1}.shell.dark .status{color:#80e6b5;background:#24b47626;border:1px solid rgba(76,220,150,.19)}.shell.dark .status.inactive{color:#ffafba;background:#e15c7124;border-color:#ff91a22e}.shell.dark input,.shell.dark select,.shell.dark textarea,.shell.dark .directory-filters input,.shell.dark .directory-filters select,.shell.dark .activity-filters input,.shell.dark .activity-filters select,.shell.dark .student-toolbar select,.shell.dark .student-search{background:#101b2f!important;color:#eef4ff!important;border-color:#9db4e038!important;box-shadow:inset 0 1px 1px #0003!important}.shell.dark input::placeholder,.shell.dark textarea::placeholder{color:#8192af}.shell.dark .student-search input{background:transparent!important;box-shadow:none!important}.shell.dark input:focus,.shell.dark select:focus,.shell.dark textarea:focus{border-color:#8298ff!important;box-shadow:0 0 0 3px #6f86ff2e!important}.shell.dark .directory-filters,.shell.dark .activity-filters,.shell.dark .quick-action-grid button,.shell.dark .student-insight-grid article,.shell.dark .student-profile-button{border-color:var(--line)!important;background:linear-gradient(145deg,#1d2b46,#142038)!important;color:var(--text)!important;box-shadow:inset 1px 1px #ffffff0b,5px 7px 15px #00000029!important}.shell.dark .quick-action-grid button:hover,.shell.dark .student-profile-button:hover{border-color:#93a2ff73!important;background:linear-gradient(145deg,#253758,#182541)!important}.shell.dark .settings-page{color:#d9e5fb}.shell.dark .settings-title h2,.shell.dark .settings-details h3{color:#f4f7ff!important}.shell.dark .settings-title>p:not(.eyebrow){color:#aebed8!important}.shell.dark .settings-details>section{border:1px solid var(--line)!important;background:linear-gradient(145deg,#1d2b46,#142038)!important;box-shadow:10px 14px 27px #0000003d,inset 1px 1px #ffffff0d!important}.shell.dark .settings-details label{color:#b7c7e1!important}.shell.dark .settings-details input{border-color:#2e446b!important;background:#101b2f!important;color:#f4f7ff!important;box-shadow:inset 1px 1px #ffffff06!important}.shell.dark .settings-details input::selection{background:#596ee8;color:#fff}.shell.dark .settings-admin-access .settings-access-copy{border-color:#46639c!important;background:#12203a!important;color:#dce8ff!important}.shell.dark .directory-row-actions{display:flex;align-items:center;flex-wrap:wrap;gap:8px}.shell.dark .professor-details-dialog{width:min(560px,calc(100vw - 32px))}.shell.dark .professor-detail-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;margin:20px 0}.shell.dark .professor-detail-grid div{min-width:0;padding:13px;border:1px solid #31476e;border-radius:12px;background:#101b2f}.shell.dark .professor-detail-grid dt{margin:0 0 4px;color:#9eb0cd;font-size:10px;font-weight:700;letter-spacing:.055em;text-transform:uppercase}.shell.dark .professor-detail-grid dd{margin:0;color:#eff5ff;font-size:13px;font-weight:600;overflow-wrap:anywhere}@media (max-width: 560px){.shell.dark .professor-detail-grid{grid-template-columns:1fr}}.shell.dark .quick-action-grid span,.shell.dark .student-insight-grid p,.shell.dark .student-insight-grid small,.shell.dark .student-name small{color:var(--muted)!important}.shell.dark .student-insight-grid strong,.shell.dark .student-name b{color:var(--text)!important}.shell.dark .student-insight-grid article>span,.shell.dark .student-name>span{background:#527ce72e;color:#a9c4ff;box-shadow:inset 1px 1px #ffffff12}.shell.dark .table-action,.shell.dark .icon-button,.shell.dark .secondary-button{border-color:#97addc40!important;background:linear-gradient(145deg,#233553,#17243c)!important;color:#b9ccff!important;box-shadow:inset 1px 1px #ffffff0f,3px 4px 9px #00000029!important}.shell.dark .table-action.danger{border-color:#ff90a247!important;background:#cf4b611f!important;color:#ffacb8!important}.shell.dark .text-action{color:#a9baff}.shell.dark .badge,.shell.dark .event-kind,.shell.dark .role-badge{background:#7e6bea2e;color:#c9c2ff;border-color:#ac9eff38}.shell.dark .settings-profile{border-right-color:var(--line)!important}.shell.dark .timetable-panel .panel-head h3,.shell.dark .info-callout+.timetable-panel .panel-head h3{color:var(--text)!important}.shell.dark .timetable-panel thead{background:#7489bf17!important}.shell.dark .timetable-panel .table-action{background:linear-gradient(145deg,#233553,#17243c)!important}.shell.dark .page-head p,.shell.dark .empty,.shell.dark .state-line{color:var(--muted)!important}@media (max-width: 720px){.shell.dark>main>header{box-shadow:0 5px 16px #0000002e,inset 0 1px #ffffff0a!important}.shell.dark .head-actions{background:transparent;border-color:transparent;box-shadow:none}}.dashboard-intro{padding:24px!important;border:1px solid rgba(104,125,199,.18);border-radius:22px;background:linear-gradient(145deg,#fffffffa,#f0f5fff0);box-shadow:13px 16px 30px #2e427d1a,-6px -6px 16px #ffffffc7,inset 1px 1px #ffffffe6,inset -1px -1px #7a8fca14}.dashboard-class-toggle{width:100%;display:flex;align-items:center;justify-content:space-between;gap:12px;margin-top:12px;padding:10px 12px;border:1px solid rgba(99,123,207,.18);border-radius:11px;background:linear-gradient(145deg,#f8faff,#eef3ff);color:#3f61c7;font-size:12px;font-weight:700;text-align:left}.dashboard-class-toggle:hover{border-color:#5369d566;background:#f3f6ff}.dashboard-class-toggle i{font-size:16px;font-style:normal;line-height:1}.professor-today-classes{display:grid;gap:5px;min-width:180px}.professor-today-classes span{display:flex;gap:7px;align-items:baseline;color:#526885;font-size:11px;white-space:nowrap}.professor-today-classes b{flex:0 0 42px;color:#35527d;font-size:10px}.today-class-empty{color:#8291a7;font-size:11px}.shell.dark .dashboard-intro{border-color:var(--line);background:linear-gradient(145deg,#1d2b45fa,#121d31fa);box-shadow:10px 14px 27px #0003,inset 1px 1px #ffffff0b,inset -1px -1px #03091347}.shell.dark .dashboard-class-toggle{border-color:#97addc40;background:linear-gradient(145deg,#233553,#17243c);color:#b9ccff;box-shadow:inset 1px 1px #ffffff0f,3px 4px 9px #00000029}.shell.dark .dashboard-class-toggle:hover{border-color:#93a2ff73;background:linear-gradient(145deg,#2a3d60,#1b2943)}.shell.dark .professor-today-classes span,.shell.dark .today-class-empty{color:var(--muted)}.shell.dark .professor-today-classes b{color:#c6d4f1}@media (max-width: 720px){.dashboard-intro{padding:20px!important;border-radius:18px}.professor-today-classes{min-width:150px}}.timetable-panel .table-wrap{overflow-x:auto}.timetable-panel table{min-width:700px}.timetable-panel .semester-timetable-row td{vertical-align:middle!important;white-space:nowrap}.timetable-panel .semester-timetable-row td:nth-child(1){width:20%}.timetable-panel .semester-timetable-row td:nth-child(2){width:42%}.timetable-panel .semester-timetable-row td:nth-child(3){width:14%}.timetable-panel .semester-timetable-row td:last-child{width:1%;min-width:260px;text-align:right;white-space:nowrap}.timetable-panel .semester-timetable-row td:last-child .table-action{display:inline-flex;vertical-align:middle}.timetable-draft-card .draft-card-actions{display:flex;align-items:center;flex-wrap:wrap;justify-content:flex-end;gap:8px}.timetable-draft-card .table-action{margin:0}.timetable-draft-card .table-action.danger{white-space:nowrap}.shell.dark .timetable-draft-card{border-color:var(--line)}@media (max-width: 720px){.timetable-panel table{min-width:640px}.timetable-draft-card{align-items:flex-start;flex-direction:column}.timetable-draft-card .draft-card-actions{width:100%;justify-content:flex-start}}.shell.dark .head-actions{border-color:#9fb4de2e!important;background:#ffffff09!important;box-shadow:inset 1px 1px #ffffff0a!important}.shell.dark .profile{background:#ffffff09!important;box-shadow:none!important}.shell.dark .professors-hero{border-color:#b4c1ff40!important;background:linear-gradient(122deg,#234d9b,#384eae 46%,#7046c8)!important;box-shadow:16px 20px 38px #00000052,inset 1px 1px #ffffff29,inset -2px -2px #0e134947!important}.shell.dark .professors-hero h2{color:#fff!important}.shell.dark .professors-hero p{color:#eef3ffd1!important}.shell.dark .professors-hero .hero-icon,.shell.dark .professors-hero .hero-total{border-color:#e7edff47;background:#0a134029;box-shadow:inset 1px 1px #ffffff24,7px 10px 20px #0b144b38}.shell.dark .professors-hero .hero-total strong,.shell.dark .professors-hero .hero-total small{color:#fff!important}.shell.dark .professor-searchbar{border-color:var(--line)!important;background:linear-gradient(145deg,#1d2b46,#142038)!important;box-shadow:9px 12px 24px #00000038,inset 1px 1px #ffffff0b!important}.shell.dark .professor-searchbar>span{color:#9eb4da}.shell.dark .professor-searchbar input,.shell.dark .professor-searchbar select{border:1px solid rgba(157,180,224,.22)!important;background:#101b2f!important;color:#edf3ff!important;box-shadow:inset 0 1px 1px #00000038!important}.shell.dark .professor-searchbar input::placeholder{color:#8193b1}.shell.dark .professor-card{border-color:var(--line)!important;background:linear-gradient(145deg,#1c2a45,#142038)!important;box-shadow:10px 13px 26px #00000038,inset 1px 1px #ffffff0b,inset -1px -1px #03091342!important}.shell.dark .professor-card:hover{box-shadow:13px 18px 31px #0000004d,inset 1px 1px #ffffff0f!important}.shell.dark .professor-avatar{background:linear-gradient(145deg,#314d91,#263d73);color:#dbe7ff;box-shadow:inset 1px 1px #ffffff1f}.shell.dark .professor-card h3{color:#f4f7ff!important}.shell.dark .professor-card-actions{display:flex;flex-wrap:wrap;gap:8px;margin-top:15px}.shell.dark .professor-card .table-action{border-color:#3b5281;background:#182844;color:#dce8ff}.shell.dark .professor-card .table-action.danger{border-color:#79445c;background:#2a1d31;color:#ffbec8}.shell.dark .professor-card.is-inactive{opacity:.74}.shell.dark .directory-removed{display:inline-flex;align-items:center;min-height:33px;padding:0 10px;border:1px solid #405473;border-radius:10px;background:#16243d;color:#b5c5de;font-size:11px;font-weight:700}.shell.dark .professor-card p,.shell.dark .professor-card small{color:#aebed8!important}.shell.dark .professor-card small b{color:#dce7fb!important}.shell.dark .designation-tag{border:1px solid rgba(124,152,255,.24);background:#537ae629;color:#b9cbff}.shell.dark .status-pill{border:1px solid rgba(93,226,164,.22);background:#2bb27424;color:#83e5b6}@media (max-width: 720px){.shell.dark .professors-hero{box-shadow:10px 14px 28px #00000047,inset 1px 1px #ffffff24!important}.shell.dark .professor-searchbar{padding:10px}}.shell.dark .students-hero{border-color:#95aeff4d!important;background:linear-gradient(125deg,#223d7b,#3e50b8,#6845bb)!important;box-shadow:16px 20px 38px #00000047,inset 1px 1px #ffffff24!important}.shell.dark .student-operations-page .student-toolbar,.shell.dark .student-table{border-color:#97b1e533!important;background:linear-gradient(145deg,#1a2a47,#111d33)!important;box-shadow:12px 16px 30px #0000003d,inset 1px 1px #ffffff0b!important}.shell.dark .student-directory-summary,.shell.dark .student-directory-summary small{color:#aabbd8!important}.shell.dark .student-table thead{background:#344a7880!important}.shell.dark .student-table th{border-bottom-color:#97b1e52b!important;color:#aebfe0!important}.shell.dark .student-table tbody td{background:#14223af5!important;border-top-color:#97b1e521!important;border-bottom-color:#97b1e521!important;color:#dbe6f8!important}.shell.dark .student-table tbody tr:hover td{background:#243858!important}.shell.dark .student-table tbody tr:hover{box-shadow:0 10px 22px #00000040!important}.shell.dark .student-name>span{background:linear-gradient(145deg,#355596,#273f75)!important;color:#e3ecff!important;box-shadow:4px 5px 11px #00000038,inset 1px 1px #ffffff1f!important}.shell.dark .student-name b{color:#f4f7ff!important}.shell.dark .student-name small{color:#9eb2d4!important}.shell.dark .student-profile-button{border-color:#97b1e540!important;background:linear-gradient(145deg,#2a426b,#1d3052)!important;color:#e2ebff!important;box-shadow:4px 6px 12px #0003,inset 1px 1px #ffffff0f!important}.shell.dark .student-profile-button:hover{border-color:#a4b9ff94!important;background:linear-gradient(145deg,#365383,#263d67)!important}.shell.dark .student-table .status{box-shadow:inset 0 1px #ffffff1a!important}.timetable-wizard.studio-v2.wizard-dark{--tt-ink: #edf3ff;--tt-muted: #a8b9d5;--tt-line: rgba(157, 181, 229, .2);--tt-surface: #162640;--tt-soft: #111e34;--tt-accent: #7792ff;--tt-accent-deep: #536edc;--tt-violet: #8a67df;color:var(--tt-ink)}.timetable-wizard.studio-v2.wizard-dark .wizard-backdrop{background:#030a18c7!important}.timetable-wizard.studio-v2.wizard-dark .wizard-shell{border-color:#a8bced3d!important;background:linear-gradient(145deg,#172844,#101c31)!important;box-shadow:0 34px 90px #00000094,inset 0 1px #ffffff0f!important}.timetable-wizard.studio-v2.wizard-dark .wizard-topbar{border-bottom-color:var(--tt-line)!important;background:linear-gradient(105deg,#1e3155,#1a2b4b 60%,#302461)!important}.timetable-wizard.studio-v2.wizard-dark .wizard-brand-mark{border-color:#aec2ff47!important;background:linear-gradient(145deg,#314b86,#253a68)!important;box-shadow:5px 7px 15px #00000042,inset 0 1px #ffffff1f!important;color:#e4ebff!important}.timetable-wizard.studio-v2.wizard-dark .wizard-topbar .eyebrow,.timetable-wizard.studio-v2.wizard-dark .wizard-stage-index,.timetable-wizard.studio-v2.wizard-dark .wizard-section-kicker{color:#aebdff!important}.timetable-wizard.studio-v2.wizard-dark .wizard-topbar h2,.timetable-wizard.studio-v2.wizard-dark .wizard-stage-heading h3,.timetable-wizard.studio-v2.wizard-dark .wizard-section-heading h4,.timetable-wizard.studio-v2.wizard-dark .wizard-workspace-heading h4,.timetable-wizard.studio-v2.wizard-dark .wizard-grid-toolbar h4,.timetable-wizard.studio-v2.wizard-dark .publish-state h2{color:#f4f7ff!important}.timetable-wizard.studio-v2.wizard-dark .wizard-subtitle,.timetable-wizard.studio-v2.wizard-dark .wizard-save-indicator,.timetable-wizard.studio-v2.wizard-dark .wizard-footer-save,.timetable-wizard.studio-v2.wizard-dark .wizard-progress-meta,.timetable-wizard.studio-v2.wizard-dark .wizard-stage-heading>div>p:last-child,.timetable-wizard.studio-v2.wizard-dark .wizard-section-heading>div>p:last-child,.timetable-wizard.studio-v2.wizard-dark .wizard-workspace-heading>div>p:last-child,.timetable-wizard.studio-v2.wizard-dark .wizard-hint,.timetable-wizard.studio-v2.wizard-dark .wizard-footer-left>p{color:#a8b9d5!important}.timetable-wizard.studio-v2.wizard-dark .wizard-close,.timetable-wizard.studio-v2.wizard-dark .ghost-action,.timetable-wizard.studio-v2.wizard-dark .secondary-button{border-color:#9db5e542!important;background:#182a49e6!important;color:#dce7fc!important;box-shadow:inset 0 1px #ffffff12,0 4px 10px #00000029!important}.timetable-wizard.studio-v2.wizard-dark .wizard-close:hover,.timetable-wizard.studio-v2.wizard-dark .ghost-action:not(:disabled):hover,.timetable-wizard.studio-v2.wizard-dark .secondary-button:hover{background:#294166!important;color:#fff!important}.timetable-wizard.studio-v2.wizard-dark .wizard-journey,.timetable-wizard.studio-v2.wizard-dark .wizard-shell footer{border-color:var(--tt-line)!important;background:#101d33f5!important;box-shadow:0 -8px 18px #00000026!important}.timetable-wizard.studio-v2.wizard-dark .wizard-steps li{color:#8ea3c5!important}.timetable-wizard.studio-v2.wizard-dark .wizard-steps li:after,.timetable-wizard.studio-v2.wizard-dark .wizard-steps li>span{border-color:#9db5e533!important;background:#1b2d4c!important;color:#aabbd6!important}.timetable-wizard.studio-v2.wizard-dark .wizard-steps .done,.timetable-wizard.studio-v2.wizard-dark .wizard-steps .active{color:#e6edff!important}.timetable-wizard.studio-v2.wizard-dark .wizard-steps .done>span{border-color:#6fc8e559!important;background:#1c4965!important;color:#bceeff!important}.timetable-wizard.studio-v2.wizard-dark .wizard-steps .active>span{border-color:transparent!important;background:linear-gradient(135deg,#526fdc,#825bd7)!important;color:#fff!important}.timetable-wizard.studio-v2.wizard-dark .wizard-shell main{background:radial-gradient(circle at 97% 0%,rgba(126,102,227,.16),transparent 26%),#0f1b30!important}.timetable-wizard.studio-v2.wizard-dark .wizard-card,.timetable-wizard.studio-v2.wizard-dark .wizard-form-section,.timetable-wizard.studio-v2.wizard-dark .wizard-workspace,.timetable-wizard.studio-v2.wizard-dark .wizard-stage-tip{border-color:var(--tt-line)!important;background:linear-gradient(145deg,#1b2c49,#14233d)!important;box-shadow:0 10px 24px #0000002e,inset 0 1px #ffffff0b!important}.timetable-wizard.studio-v2.wizard-dark .wizard-stage-tip>span{background:#303d79!important;color:#e4e9ff!important}.timetable-wizard.studio-v2.wizard-dark .wizard-stage-tip p,.timetable-wizard.studio-v2.wizard-dark .wizard-field,.timetable-wizard.studio-v2.wizard-dark .full-field,.timetable-wizard.studio-v2.wizard-dark .check{color:#b4c5df!important}.timetable-wizard.studio-v2.wizard-dark .wizard-section-badge,.timetable-wizard.studio-v2.wizard-dark .wizard-count-badge,.timetable-wizard.studio-v2.wizard-dark .preview-readonly,.timetable-wizard.studio-v2.wizard-dark .wizard-grid-status span{border-color:#95ace940!important;background:#223757!important;color:#c6d4ff!important}.timetable-wizard.studio-v2.wizard-dark .wizard-form-grid input,.timetable-wizard.studio-v2.wizard-dark .wizard-form-grid select,.timetable-wizard.studio-v2.wizard-dark .wizard-list input,.timetable-wizard.studio-v2.wizard-dark .wizard-list select,.timetable-wizard.studio-v2.wizard-dark .full-field textarea{border-color:#9db5e53d!important;background:#0f1d34!important;color:#edf3ff!important;box-shadow:inset 0 1px 2px #00000042!important}.timetable-wizard.studio-v2.wizard-dark .wizard-form-grid input:hover,.timetable-wizard.studio-v2.wizard-dark .wizard-form-grid select:hover,.timetable-wizard.studio-v2.wizard-dark .wizard-list input:hover,.timetable-wizard.studio-v2.wizard-dark .wizard-list select:hover,.timetable-wizard.studio-v2.wizard-dark .full-field textarea:hover{border-color:#a5bbff73!important;background:#142440!important}.timetable-wizard.studio-v2.wizard-dark .wizard-form-grid input:focus,.timetable-wizard.studio-v2.wizard-dark .wizard-form-grid select:focus,.timetable-wizard.studio-v2.wizard-dark .wizard-list input:focus,.timetable-wizard.studio-v2.wizard-dark .wizard-list select:focus,.timetable-wizard.studio-v2.wizard-dark .full-field textarea:focus{border-color:#8197ff!important;background:#142440!important;box-shadow:0 0 0 3px #748dff33!important}.timetable-wizard.studio-v2.wizard-dark input::placeholder,.timetable-wizard.studio-v2.wizard-dark textarea::placeholder{color:#7e93b5!important}.timetable-wizard.studio-v2.wizard-dark .period-row,.timetable-wizard.studio-v2.wizard-dark .course-row,.timetable-wizard.studio-v2.wizard-dark .group-row,.timetable-wizard.studio-v2.wizard-dark .wizard-empty-state{border-color:#9db5e52b!important;background:#172741!important;box-shadow:inset 0 1px #ffffff0a!important}.timetable-wizard.studio-v2.wizard-dark .period-column-labels,.timetable-wizard.studio-v2.wizard-dark .group-column-labels,.timetable-wizard.studio-v2.wizard-dark .course-details-head,.timetable-wizard.studio-v2.wizard-dark .grid-legend{color:#9fb2d0!important}.timetable-wizard.studio-v2.wizard-dark .outline-action{border-color:#8da5f26b!important;background:#22385f!important;color:#cdd9ff!important}.timetable-wizard.studio-v2.wizard-dark .outline-action:hover{background:#2c4777!important}.timetable-wizard.studio-v2.wizard-dark .grid-scroll,.timetable-wizard.studio-v2.wizard-dark .preview-sheet{border-color:var(--tt-line)!important;background:#122139!important;box-shadow:0 8px 18px #0003!important}.timetable-wizard.studio-v2.wizard-dark .timetable-grid thead th,.timetable-wizard.studio-v2.wizard-dark .timetable-grid thead th:first-child,.timetable-wizard.studio-v2.wizard-dark .timetable-grid tbody th{border-color:#9db5e524!important;background:#203553!important;color:#b9c9e4!important}.timetable-wizard.studio-v2.wizard-dark .timetable-grid thead small{color:#8ea4c8!important}.timetable-wizard.studio-v2.wizard-dark .timetable-grid td,.timetable-wizard.studio-v2.wizard-dark .grid-cell{background:#14233c!important;color:#a3b6d3!important}.timetable-wizard.studio-v2.wizard-dark button.grid-cell:hover{background:#203859!important;color:#dce6ff!important}.timetable-wizard.studio-v2.wizard-dark .grid-cell-add>span{border-color:#9db5e545!important;background:#203653!important}.timetable-wizard.studio-v2.wizard-dark .grid-cell.filled{background:linear-gradient(145deg,#243d72,#1d315d)!important;color:#d7e4ff!important;box-shadow:inset 0 1px #ffffff14!important}.timetable-wizard.studio-v2.wizard-dark .grid-cell.filled b,.timetable-wizard.studio-v2.wizard-dark .grid-cell.filled span{color:#e4ecff!important}.timetable-wizard.studio-v2.wizard-dark .break-cell{background:repeating-linear-gradient(135deg,#392f28 0,#392f28 10px,#30271f 10px,#30271f 20px)!important;color:#ffd78b!important}.timetable-wizard.studio-v2.wizard-dark .preview-toolbar,.timetable-wizard.studio-v2.wizard-dark .preview-notes{border-color:var(--tt-line)!important;background:#192a46!important;color:#b8c9e1!important}.timetable-wizard.studio-v2.wizard-dark .preview-toolbar b,.timetable-wizard.studio-v2.wizard-dark .preview-notes b{color:#f0f4ff!important}.timetable-wizard.studio-v2.wizard-dark .cell-dialog.reference-cell-dialog.studio-assignment-dialog{border-color:#9db5e545!important;background:linear-gradient(145deg,#182a49,#111f36)!important;box-shadow:0 42px 96px #0000009e,inset 0 1px #ffffff0f!important}.timetable-wizard.studio-v2.wizard-dark .studio-assignment-dialog .assignment-picker,.timetable-wizard.studio-v2.wizard-dark .studio-assignment-dialog .assignment-mode-panel,.timetable-wizard.studio-v2.wizard-dark .studio-assignment-dialog .assignment-details-panel,.timetable-wizard.studio-v2.wizard-dark .studio-assignment-dialog .assignment-lab-panel,.timetable-wizard.studio-v2.wizard-dark .studio-assignment-dialog .assignment-teaching-team,.timetable-wizard.studio-v2.wizard-dark .studio-assignment-dialog .professor-panel{border-color:#9db5e533!important;background:#182a47!important;color:#c3d1e8!important;box-shadow:inset 0 1px #ffffff0b!important}.timetable-wizard.studio-v2.wizard-dark .studio-assignment-dialog label,.timetable-wizard.studio-v2.wizard-dark .studio-assignment-dialog .assignment-panel-heading h4{color:#dce7fb!important}.timetable-wizard.studio-v2.wizard-dark .studio-assignment-dialog input,.timetable-wizard.studio-v2.wizard-dark .studio-assignment-dialog select,.timetable-wizard.studio-v2.wizard-dark .studio-assignment-dialog .assignment-picker select,.timetable-wizard.studio-v2.wizard-dark .studio-assignment-dialog .stream-options button,.timetable-wizard.studio-v2.wizard-dark .studio-assignment-dialog .lab-group-chips button{border-color:#9db5e53d!important;background:#0f1d34!important;color:#e7efff!important}.timetable-wizard.studio-v2.wizard-dark .studio-assignment-dialog .type-toggle,.timetable-wizard.studio-v2.wizard-dark .studio-assignment-dialog .assignment-actions{border-color:var(--tt-line)!important;background:#111f36!important}.timetable-wizard.studio-v2.wizard-dark .studio-assignment-dialog .type-toggle button{color:#b7c8e3!important}.timetable-wizard.studio-v2.wizard-dark .studio-assignment-dialog .stream-options button.selected,.timetable-wizard.studio-v2.wizard-dark .studio-assignment-dialog .lab-group-chips button.selected{border-color:#8c78ef!important;background:linear-gradient(145deg,#32306c,#29245e)!important;color:#eeeaff!important}.shell.dark .coming-soon{position:relative;overflow:hidden;border-color:#96b1e838!important;background:radial-gradient(circle at 82% 12%,rgba(112,85,220,.2),transparent 27%),linear-gradient(145deg,#1b2d4b,#121f35)!important;box-shadow:16px 20px 38px #00000047,inset 0 1px #ffffff0d!important}.shell.dark .coming-soon:before{content:"";position:absolute;width:230px;height:230px;right:-112px;bottom:-150px;border:1px solid rgba(166,186,255,.12);border-radius:50%;box-shadow:0 0 0 34px #a6baff06;pointer-events:none}.shell.dark .coming-soon>*{position:relative;z-index:1}.shell.dark .coming-soon .eyebrow{color:#aebdff!important}.shell.dark .coming-soon h2{color:#f4f7ff!important}.shell.dark .coming-soon>p:not(.eyebrow){color:#b1c2de!important}.shell.dark .coming-icon{border:1px solid rgba(196,207,255,.27);background:linear-gradient(135deg,#3e70d3,#7250d0)!important;box-shadow:0 14px 28px #00000047,inset 0 1px #fff3!important}.shell.dark .coming-tags span{border-color:#9bb2e93b!important;background:#223658c7!important;color:#d6e1fa!important;box-shadow:inset 0 1px #ffffff0d!important}.shell.dark .calendar-list .calendar-event-row{border-color:#96b1e833!important;background:linear-gradient(145deg,#1b2d4b,#14233b)!important}.shell.dark .calendar-event-row .event-date{border:1px solid rgba(157,184,239,.28);background:linear-gradient(145deg,#365684,#29446d)!important;color:#f5f8ff!important;box-shadow:5px 7px 14px #0003,inset 0 1px #ffffff1c!important}.shell.dark .calendar-event-row .event-date b{color:#f5f8ff!important}.shell.dark .calendar-event-row .event-date small{color:#c9d9f4!important}.shell.dark .calendar-event-row h3{color:#f2f6ff!important}.shell.dark .calendar-event-row p,.shell.dark .calendar-event-row>div:nth-child(2)>small{color:#aebfdc!important}.shell.dark .calendar-event-row .event-kind{border:1px solid rgba(171,157,255,.2);background:#7f6aea33!important;color:#d6ceff!important}.shell.dark .support-grid article{border-color:#97b1e838!important;background:linear-gradient(145deg,#1b2d4b,#14233b)!important;box-shadow:14px 18px 32px #00000045,inset 0 1px #ffffff0d!important}.shell.dark .support-grid article:before{background:linear-gradient(125deg,rgba(171,192,255,.07),transparent 42%,rgba(136,99,246,.08))!important}.shell.dark .support-grid article:hover{box-shadow:17px 22px 38px #00000057,inset 0 1px #ffffff12!important}.shell.dark .support-grid h3{color:#f2f6ff!important}.shell.dark .support-grid p{color:#b2c3df!important}.shell.dark .support-grid .feature-icon{border:1px solid rgba(157,181,235,.21);background:linear-gradient(145deg,#29446f,#203758)!important;color:#c7d8ff!important;box-shadow:7px 9px 17px #0003,inset 0 1px #ffffff17!important}.shell.dark .support-grid .subtle-btn{border-color:#9db5eb38!important;background:#223759d1!important;color:#b9c9e5!important}.shell.dark .support-grid .primary{color:#fff!important;box-shadow:0 9px 18px #404ac452,inset 0 1px #fff3!important}.shell.dark .support-hero p{color:#f2f6ffe0!important}.auth-card .password-field{position:relative}.auth-card .password-field input{padding-right:54px}.auth-card .password-toggle{position:absolute;right:10px;bottom:7px;display:grid;place-items:center;width:38px;height:38px;border:0;border-radius:10px;background:transparent;color:#627391}.auth-card .password-toggle:hover,.auth-card .password-toggle:focus-visible{background:#edf2ff;color:#4a55c3}.auth-card .password-toggle svg{width:19px;height:19px;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}
