@import"https://fonts.googleapis.com/css2?family=DM+Sans:wght@400;500;600;700&family=Newsreader:opsz,wght@6..72,500;6..72,600;6..72,700&display=swap";:root{font-family:DM Sans,system-ui,-apple-system,sans-serif;color:#211936;background:#f7f5fb;font-synthesis:none;--ink: #211936;--muted: #706b7c;--line: #e3dfeb;--surface: #ffffff;--soft: #f1eef7;--brand: #51308c;--brand-light: #6d4bb2;--brand-dark: #2f1b5c;--accent: #14b8a6;--navy: #24163e;--coral: #f06d55;--shadow: 0 24px 60px rgba(47, 27, 92, .11)}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;min-width:320px;min-height:100vh}button,input,select,textarea{font:inherit}button,a{-webkit-tap-highlight-color:transparent}button{cursor:pointer}a{color:inherit;text-decoration:none}h1,h2,h3,p{margin-top:0}h1,h2,h3{font-family:Newsreader,Georgia,serif}svg{width:20px;height:20px;stroke-width:1.9;flex:0 0 auto}.grow{flex:1;min-width:0}.muted{color:var(--muted)}.wrap{width:min(1160px,calc(100% - 40px));margin-inline:auto}.spin{animation:spin .9s linear infinite}@keyframes spin{to{transform:rotate(360deg)}}.brand{display:inline-flex;align-items:center;gap:11px;font-size:20px;font-weight:700;letter-spacing:-.65px}.brand-mark{width:38px;height:38px;filter:drop-shadow(0 8px 13px rgba(47,27,92,.2))}.brand.compact{font-size:18px}.brand.compact .brand-mark{width:32px;height:32px}.button{min-height:46px;border-radius:100px;padding:0 20px;display:inline-flex;align-items:center;justify-content:center;gap:9px;border:1px solid transparent;font-weight:700;transition:.18s ease;white-space:nowrap}.button svg{width:18px}.button:hover:not(:disabled){transform:translateY(-1px)}.button:disabled{opacity:.5;cursor:not-allowed}.button.primary{background:var(--brand);color:#fff;box-shadow:0 10px 24px #51308c38}.button.primary:hover:not(:disabled){background:var(--brand-dark)}.button.secondary{border-color:#dcd5e8;background:#fff;color:var(--ink)}.button.secondary:hover:not(:disabled){border-color:#b9acd0;background:#faf8fd}.button.danger-button{color:#a63f35;border-color:#f0c9c3;background:#fff4f2}.button.small{min-height:36px;padding-inline:12px;font-size:13px}.button.wide{width:100%}.text-link{color:var(--brand);font-weight:700;border-bottom:1px solid rgba(81,48,140,.28);padding-bottom:3px}.icon-button{display:grid;place-items:center;width:40px;height:40px;padding:0;border:0;border-radius:10px;color:var(--muted);background:transparent}.icon-button:hover{background:var(--soft);color:var(--ink)}.icon-button.danger:hover{color:#bd4438;background:#fff1ef}.welcome{position:relative;min-height:100vh;background:#f8f5fd;overflow:hidden}.welcome:before{content:"";position:absolute;width:680px;height:680px;right:-220px;top:-280px;border-radius:50%;background:var(--brand);opacity:.96}.welcome:after{content:"";position:absolute;width:380px;height:380px;left:-190px;bottom:60px;border-radius:50%;border:1px solid rgba(81,48,140,.14);box-shadow:0 0 0 55px #51308c09,0 0 0 110px #51308c06}.welcome-grid{position:absolute;top:0;right:0;bottom:0;left:0;opacity:.35;background-image:linear-gradient(rgba(81,48,140,.065) 1px,transparent 1px),linear-gradient(90deg,rgba(81,48,140,.065) 1px,transparent 1px);background-size:64px 64px;-webkit-mask-image:linear-gradient(to bottom,black,transparent 78%);mask-image:linear-gradient(to bottom,black,transparent 78%)}.public-nav{position:relative;z-index:2;height:88px;display:flex;align-items:center;justify-content:space-between}.public-nav-note{display:inline-flex;align-items:center;gap:8px;color:#756c84;font-size:11px;font-weight:700;letter-spacing:.7px;text-transform:uppercase}.public-nav-note span{width:7px;height:7px;border-radius:50%;background:var(--accent);box-shadow:0 0 0 5px #14b8a61f}.hero{position:relative;z-index:1;display:grid;grid-template-columns:1.15fr .74fr;gap:clamp(55px,7vw,110px);align-items:center;padding:66px 0 105px}.hero-copy{position:relative}.eyebrow{display:inline-flex;align-items:center;gap:7px;padding:8px 12px;border:1px solid rgba(81,48,140,.16);background:#ffffff85;color:var(--brand);font-size:11px;font-weight:800;letter-spacing:.65px;text-transform:uppercase;border-radius:100px;margin-bottom:24px}.hero h1{max-width:750px;font-size:clamp(56px,6.2vw,92px);line-height:.91;letter-spacing:-4.7px;margin-bottom:30px;color:var(--navy)}.hero h1 em{display:block;color:var(--brand);font-style:italic;font-weight:500;position:relative}.hero-lede{max-width:680px;color:#676071;font-size:18px;line-height:1.7}.hero-proof{display:flex;flex-wrap:wrap;gap:18px;color:#4f465e;font-size:12px;font-weight:700;margin:28px 0 0}.hero-proof span{display:inline-flex;align-items:center;gap:7px}.hero-proof svg{width:16px;color:var(--accent)}.login-card{position:relative;z-index:2;padding:clamp(28px,3.5vw,44px);background:#fffffff2;border:1px solid rgba(255,255,255,.72);border-radius:28px 6px 28px 28px;box-shadow:0 36px 90px #25134640}.login-heading{display:flex;gap:14px;align-items:center;margin-bottom:28px}.login-heading h2{font-size:24px;margin:0 0 3px}.login-heading p{margin:0;color:var(--muted);font-size:14px}.icon-tile{width:50px;height:50px;border-radius:15px 5px 15px 15px;display:grid;place-items:center;color:#fff;background:var(--brand)}.divider{display:flex;align-items:center;gap:12px;margin:20px 0;color:#94a29e;font-size:12px;text-transform:uppercase;letter-spacing:1px}.divider:before,.divider:after{content:"";height:1px;background:var(--line);flex:1}.login-help{margin:19px 0 0;color:var(--muted);font-size:12px;line-height:1.55;text-align:center}.public-role-list{display:grid;gap:9px}.public-role-card{min-width:0;display:flex;align-items:center;gap:11px;padding:13px;color:var(--ink);background:#faf8fd;border:1px solid #ddd6e9;border-radius:4px 13px 13px;transition:.18s ease}.public-role-card:hover{color:var(--ink);border-color:#ad9bc9;background:#f5f0fb;transform:translateY(-1px)}.public-role-card.student{color:#123d3a;background:#eaf7f4;border-color:#c5e6df}.public-role-card>svg:first-child{width:21px;color:var(--brand)}.public-role-card.student>svg:first-child{color:#178276}.public-role-card>svg:last-child{width:15px;margin-left:auto;color:#978aa9}.public-role-card span{min-width:0}.public-role-card strong,.public-role-card small{display:block}.public-role-card strong{font-size:12px}.public-role-card small{margin-top:3px;color:var(--muted);font-size:9px;line-height:1.4}.staff-login-label{display:flex;align-items:center;gap:9px;margin-bottom:15px;color:var(--ink)}.staff-login-label>svg{width:19px;color:var(--brand)}.staff-login-label strong,.staff-login-label small{display:block}.staff-login-label strong{font-size:11px}.staff-login-label small{margin-top:2px;color:var(--muted);font-size:9px}.evidence-stage{position:relative;width:min(570px,95%);margin-top:52px;min-height:218px}.evidence-sheet{position:absolute;left:20px;right:35px;top:0;padding:23px 25px;color:#fff;background:var(--brand-dark);border-radius:3px 24px 24px;box-shadow:0 28px 60px #2f1b5c3d;transform:rotate(-1.5deg)}.sheet-head,.sheet-foot,.evidence-row{display:flex;align-items:center;gap:12px}.sheet-head{justify-content:space-between;padding-bottom:17px;font-size:12px;font-weight:700}.sheet-head strong{color:#bba9dc;font-size:9px;letter-spacing:1.2px}.evidence-row{margin:12px 0;font-size:10px}.evidence-row>span{width:64px;color:#d8cfee}.evidence-row>div{flex:1;height:7px;border-radius:10px;background:#ffffff17;overflow:hidden}.evidence-row i{display:block;height:100%;border-radius:inherit;background:var(--accent)}.evidence-row strong{width:23px;font-size:10px}.sheet-foot{justify-content:space-between;padding-top:16px;color:#a99abd;border-top:1px solid rgba(255,255,255,.1);font-size:8px;text-transform:uppercase;letter-spacing:.6px}.approval-seal{position:absolute;right:0;bottom:4px;width:112px;height:112px;display:grid;place-items:center;align-content:center;color:var(--brand-dark);background:#b8eee5;border:7px solid #f8f5fd;border-radius:50%;transform:rotate(8deg);box-shadow:0 13px 30px #2f1b5c29;text-align:center;text-transform:uppercase;font-size:7px;letter-spacing:.7px}.approval-seal svg{width:21px;margin-bottom:4px}.approval-seal strong{font-size:10px}.evidence-quote{position:absolute;left:0;bottom:-16px;padding:12px 15px;color:var(--brand);background:#fff;border:1px solid #ded6ec;border-radius:12px 12px 12px 2px;box-shadow:0 12px 25px #2f1b5c1a;font-family:Newsreader,Georgia,serif;font-size:15px;font-style:italic;line-height:1.1;transform:rotate(2deg)}.steps{position:relative;z-index:1;padding:70px 0;border-top:1px solid #ded8e8;display:grid;grid-template-columns:repeat(4,1fr);gap:40px}.steps>div{position:relative}.steps span{display:block;color:var(--accent);font-weight:800;font-size:13px;margin-bottom:14px}.steps h3{margin-bottom:8px;font-size:18px}.steps p{color:var(--muted);line-height:1.6;font-size:14px}.public-footer{position:relative;z-index:1;min-height:100px;display:flex;align-items:center;gap:24px;border-top:1px solid #ded8e8;color:var(--muted);font-size:14px}.public-footer p{margin:0;flex:1}.auth-react-page{position:relative;min-height:100vh;overflow:hidden;background:#f8f5fd}.auth-react-page:before{content:"";position:absolute;width:540px;height:540px;right:-210px;top:-260px;border-radius:50%;background:var(--brand);opacity:.95}.auth-react-wrap{position:relative;z-index:1;width:min(1120px,calc(100% - 40px));margin:0 auto;padding:60px 0 90px;display:grid;grid-template-columns:minmax(280px,.82fr) minmax(480px,1.18fr);gap:clamp(35px,6vw,80px);align-items:start}.auth-react-intro{padding-top:35px}.auth-react-intro h1,.auth-state-card h1{color:var(--navy);font-size:clamp(36px,4.5vw,62px);line-height:.98;letter-spacing:-2.8px}.auth-react-intro>p{color:var(--muted);font-size:16px;line-height:1.7}.auth-rule-list{display:grid;gap:12px;margin-top:28px}.auth-rule-list span{display:grid;grid-template-columns:20px auto 1fr;gap:8px;align-items:center;color:var(--muted);font-size:12px}.auth-rule-list svg{width:17px;color:var(--accent)}.auth-rule-list strong{color:var(--ink)}.auth-react-card,.auth-state-card{position:relative;padding:clamp(22px,3vw,38px);background:#fffffff7;border:1px solid #e2dbea;border-radius:4px 25px 25px;box-shadow:0 30px 75px #2f1b5c29}.auth-role-tabs{display:grid;grid-template-columns:.8fr .8fr 1.4fr;gap:8px;margin-bottom:27px}.auth-role-tabs button{min-width:0;min-height:48px;display:inline-flex;align-items:center;justify-content:center;gap:7px;padding:8px;color:var(--brand-dark);background:#f7f4fc;border:1px solid #ded6eb;border-radius:10px;font-size:11px;font-weight:800}.auth-role-tabs button svg{width:16px}.auth-role-tabs button.active{color:#fff;background:var(--brand);border-color:var(--brand);box-shadow:0 8px 20px #51308c33}.auth-mode-panel h2{margin:0 0 7px;color:var(--navy);font-size:24px}.auth-mode-panel>p{margin:0 0 23px;color:var(--muted);font-size:12px;line-height:1.6}.auth-message{display:flex;align-items:flex-start;gap:8px;margin-bottom:20px;padding:12px;border-radius:10px;font-size:11px;line-height:1.5}.auth-message svg{width:17px;flex:0 0 auto}.auth-message.success{color:#266c58;background:#e8f6f0}.auth-message.error{color:#96483e;background:#fbece9}.auth-roster-note{display:flex;align-items:center;gap:8px;margin-top:14px;padding:11px;color:#625873;background:#f7f3fb;border-radius:9px;font-size:10px}.auth-roster-note svg{width:15px;color:var(--brand)}.auth-help-actions{display:grid;grid-template-columns:1fr 1fr;gap:8px;margin-top:12px}.auth-help-actions button{min-height:56px;padding:9px 12px;color:var(--brand-dark);background:#f7f3fb;border:1px solid #ded6eb;border-radius:9px;font:inherit;font-size:11px}.auth-help-actions button strong,.auth-help-actions button span{display:block}.auth-help-actions button strong{margin-bottom:3px;font-weight:800}.auth-help-actions button span{color:var(--muted);font-size:10px}.auth-help-actions button:hover:not(:disabled){color:#fff;background:var(--brand);border-color:var(--brand)}.auth-help-actions button:hover:not(:disabled) span{color:#fffc}.auth-back-action{display:inline-flex;align-items:center;gap:5px;margin:0 0 14px;padding:0;color:var(--brand);background:transparent;border:0;font:inherit;font-size:11px;font-weight:800}.auth-back-action svg{width:15px}.auth-password-form{margin-top:24px;text-align:left}.auth-state-card{width:min(540px,100%);grid-column:1 / -1;justify-self:center;padding:clamp(32px,5vw,58px);text-align:center}.auth-state-card .auth-state-icon{width:64px;height:64px;display:grid;place-items:center;margin:0 auto 20px;color:#fff;background:var(--brand);border-radius:18px 5px 18px 18px}.auth-state-card h1{margin:8px 0 16px;font-size:clamp(32px,4vw,48px)}.auth-state-card p{margin:0 0 25px;color:var(--muted);line-height:1.65}.auth-state-card small{display:block;margin-top:18px;color:#8a8097;font-size:10px;line-height:1.5}.app-shell{min-height:100vh;display:flex;background:#f6f7f5}.sidebar{position:fixed;inset:0 auto 0 0;z-index:30;width:256px;padding:24px 18px 18px;color:#dce9e8;background:#12313a;display:flex;flex-direction:column}.sidebar .brand{color:#fff;padding-inline:7px}.sidebar-top{display:flex;justify-content:space-between;align-items:center}.close-menu{display:none;color:#fff}.side-nav{margin-top:44px;display:flex;flex-direction:column;gap:5px}.nav-label{padding:0 13px 9px;font-size:10px;font-weight:700;letter-spacing:1.4px;text-transform:uppercase;color:#77949a}.side-nav a{min-height:45px;padding:0 13px;display:flex;align-items:center;gap:12px;border-radius:10px;color:#aec1c4;font-size:14px;font-weight:600}.side-nav a svg{width:18px}.side-nav a:hover{color:#fff;background:#ffffff0d}.side-nav a.active{color:#fff;background:#1d4a51;box-shadow:inset 3px 0 #43bdad}.nav-arrow{margin-left:auto;opacity:0}.side-nav a.active .nav-arrow{opacity:.55}.trust-note{margin-top:auto;display:flex;gap:10px;padding:13px;border:1px solid rgba(147,190,187,.18);border-radius:12px;background:#ffffff09}.trust-note svg{color:#65cfc0;width:18px}.trust-note strong,.trust-note span{display:block}.trust-note strong{color:#e2eeee;font-size:11px}.trust-note span{color:#88a3a7;font-size:10px;line-height:1.4;margin-top:2px}.profile-block{display:flex;align-items:center;gap:10px;padding:17px 5px 0;margin-top:14px;border-top:1px solid rgba(255,255,255,.09)}.profile-copy{min-width:0;flex:1}.profile-copy strong,.profile-copy span{display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.profile-copy strong{color:#fff;font-size:12px}.profile-copy span{color:#8fa7aa;font-size:10px;text-transform:capitalize;margin-top:2px}.profile-block .icon-button{color:#8ca4a8}.avatar{display:grid;place-items:center;width:42px;height:42px;border-radius:50%;color:#fff;background:linear-gradient(145deg,#e48d74,#c45f4d);font-size:12px;font-weight:800;letter-spacing:.3px}.avatar.small{width:34px;height:34px;font-size:10px}.avatar.large{width:58px;height:58px;font-size:17px}.app-main{width:calc(100% - 256px);min-width:0;margin-left:256px;min-height:100vh}.mobile-header,.mobile-tabs{display:none}.page{width:min(1450px,100%);margin:0 auto;padding:46px clamp(26px,4vw,64px) 70px}.page-header{margin-bottom:30px}.title-row{display:flex;align-items:flex-end;justify-content:space-between;gap:25px}.title-row h1{font-size:clamp(27px,2.3vw,36px);letter-spacing:-1.2px;line-height:1.15;margin:0 0 8px;color:var(--navy)}.title-row p{margin:0;color:var(--muted);font-size:15px}.page-actions{display:flex;align-items:center;gap:9px}.back-link{display:inline-flex;align-items:center;gap:6px;color:var(--muted);font-size:13px;font-weight:700;margin-bottom:15px}.back-link svg{width:16px}.eyebrow-text,.overline{display:block;color:var(--brand);font-size:10px;text-transform:uppercase;letter-spacing:1.3px;font-weight:800;margin-bottom:6px}.panel{background:var(--surface);border:1px solid var(--line);border-radius:16px;box-shadow:0 2px 3px #19393e06}.stats-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:14px;margin-bottom:22px}.stats-grid.compact{grid-template-columns:repeat(3,1fr)}.stat-card{min-height:126px;padding:20px;display:flex;align-items:flex-start;gap:15px;background:#fff;border:1px solid var(--line);border-radius:15px}.stat-icon{width:42px;height:42px;border-radius:12px;display:grid;place-items:center}.stat-icon svg{width:20px}.stat-icon.teal{color:#0d746d;background:#e5f4f1}.stat-icon.blue{color:#396fa3;background:#e9f1f8}.stat-icon.amber{color:#a76618;background:#fff2df}.stat-icon.green{color:#3c8058;background:#e9f5ec}.stat-card>div:last-child{display:grid;grid-template-columns:1fr auto;flex:1;align-items:baseline}.stat-card span{grid-column:1;font-size:12px;color:var(--muted);font-weight:600}.stat-card strong{grid-column:2;grid-row:1 / 3;font-family:Manrope;font-size:28px;color:var(--navy)}.stat-card small{grid-column:1;font-size:10px;color:#94a19e;margin-top:8px}.dashboard-grid{display:grid;grid-template-columns:minmax(0,1.7fr) minmax(280px,.7fr);gap:20px}.activity-panel,.attention-panel,.details-panel,.setup-guide{padding:22px}.panel-title{min-height:42px;display:flex;justify-content:space-between;gap:15px;align-items:flex-start;margin-bottom:18px}.panel-title h2{font-size:16px;letter-spacing:-.3px;margin:0 0 4px}.panel-title p{font-size:12px;color:var(--muted);margin:0}.panel-title a{font-size:12px;font-weight:700;color:var(--brand)}.activity-list{margin:0 -9px -8px}.activity-row{min-height:66px;padding:8px 9px;display:flex;align-items:center;gap:12px;border-radius:10px}.activity-row:hover{background:#f7faf8}.activity-row strong,.activity-row span{display:block}.activity-row strong{font-size:13px}.activity-row .grow span{font-size:11px;color:var(--muted);margin-top:3px}.activity-row>svg{width:16px;color:#9aa8a5}.status-icon{width:36px;height:36px;display:grid;place-items:center;border-radius:10px;color:#58767b;background:#edf2f1}.status-icon.large{width:48px;height:48px;border-radius:13px}.status-icon.open{color:#147267;background:#e4f4ef}.status-icon.draft{color:#807053;background:#f5f0e7}.status-icon.closed{color:#5e6d8e;background:#ebeff7}.status-icon.approved{color:#3e7a55;background:#e8f4eb}.status{display:inline-flex;align-items:center;gap:6px;width:fit-content;padding:5px 9px;border-radius:100px;text-transform:capitalize;font-size:10px;line-height:1;font-weight:800;color:#68777a;background:#eef1f0}.status i{width:6px;height:6px;border-radius:50%;background:currentColor}.status.open,.status.active,.status.connected,.status.synced,.status.posted,.status.submitted{color:#1d776b;background:#e4f4ef}.status.draft,.status.pending,.status.untested,.status.review,.status.submitted-late{color:#92703a;background:#f9f1e1}.status.closed{color:#59698c;background:#edf0f7}.status.approved{color:#3b7b55;background:#e8f4eb}.status.failed,.status.removed{color:#a54e43;background:#faece9}.date-badge{display:flex;align-items:center;gap:12px;padding:13px;background:#eef6f4;border-radius:12px;margin-bottom:18px}.date-badge strong,.date-badge span{display:block}.date-badge strong{font-size:12px}.date-badge span{color:var(--muted);font-size:10px;margin-top:2px}.attention-panel>h3{font-size:17px;margin-bottom:7px}.attention-panel>p{color:var(--muted);font-size:12px;line-height:1.5}.inline-alert{display:flex;align-items:center;gap:8px;margin-top:16px;padding:10px;border-radius:9px;background:#fff5e6;color:#8b652b;font-size:10px}.inline-alert svg{width:15px}.toolbar{min-height:58px;padding:8px 10px;margin-bottom:20px;display:flex;align-items:center;gap:14px;background:#fff;border:1px solid var(--line);border-radius:14px}.toolbar>.muted{margin-left:auto;padding-right:8px;font-size:12px}.search{height:40px;min-width:240px;display:flex;align-items:center;gap:8px;padding:0 10px;border-radius:9px;background:#f3f6f4}.search svg{width:17px;color:#82918e}.search input{width:100%;border:0;outline:0;background:transparent;font-size:13px;color:var(--ink)}.filter-pills{display:flex;gap:5px;overflow-x:auto}.filter-pills button,.tabs button{min-height:34px;padding:0 12px;border:0;background:transparent;border-radius:8px;color:var(--muted);text-transform:capitalize;font-size:12px;font-weight:700}.filter-pills button.active{background:#e9f4f1;color:var(--brand)}.course-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px}.course-card{min-height:240px;padding:21px;display:flex;flex-direction:column;background:#fff;border:1px solid var(--line);border-radius:16px;transition:.18s ease}.course-card:hover{transform:translateY(-2px);border-color:#b8ccc7;box-shadow:var(--shadow)}.course-card-top{display:flex;justify-content:space-between;margin-bottom:28px}.course-code{width:44px;height:44px;display:grid;place-items:center;border-radius:13px;color:#fff;background:linear-gradient(145deg,#2a8d84,#17635e);font-family:Manrope;font-size:11px;font-weight:800}.course-card h3{font-size:17px;line-height:1.35;margin:0 0 9px}.course-card p{color:var(--muted);font-size:11px}.card-link{margin-top:auto;display:flex;align-items:center;justify-content:space-between;color:var(--brand);font-size:12px;font-weight:800}.card-link svg{width:16px}.evaluation-list,.student-tasks,.connection-list{display:flex;flex-direction:column;gap:12px}.evaluation-card{min-height:108px;padding:20px;display:flex;align-items:center;gap:17px;background:#fff;border:1px solid var(--line);border-radius:15px;transition:.18s ease}.evaluation-card:hover{border-color:#b7cbc6;box-shadow:0 9px 25px #153b400f}.evaluation-card>svg{color:#a1aeab;width:18px}.card-title-line{display:flex;gap:12px;align-items:center}.card-title-line h3{margin:0;font-size:16px}.evaluation-card p{color:var(--muted);font-size:12px;margin:5px 0 10px}.reopen-selection{max-height:310px;overflow-y:auto;margin:0;padding:12px;border:1px solid var(--line);border-radius:3px 13px 13px}.reopen-selection legend{padding:0 5px;color:var(--ink);font-size:10px;font-weight:800}.reopen-select-actions{display:flex;justify-content:flex-end;gap:10px;margin:-5px 0 5px}.reopen-select-actions button,.deadline-shortcuts button{padding:5px 8px;border:0;color:var(--brand);background:#f1ebf9;border-radius:7px;font:inherit;font-size:9px;font-weight:800;cursor:pointer}.reopen-selection>label{display:flex;align-items:flex-start;gap:10px;padding:10px 5px;border-bottom:1px solid #eeeaf3;cursor:pointer}.reopen-selection>label:last-child{border:0}.reopen-selection input{width:17px;height:17px;flex:0 0 auto;margin-top:2px;accent-color:var(--brand)}.reopen-selection label>span{min-width:0}.reopen-selection strong,.reopen-selection small,.reopen-single small{display:block}.reopen-selection strong{font-size:10px}.reopen-selection small,.reopen-single small{margin-top:4px;color:var(--muted);font-size:9px}.reopen-single{padding:14px;background:#f8f5fc;border-radius:3px 12px 12px}.reopen-single>strong{font-size:12px}.deadline-shortcuts{display:flex;flex-wrap:wrap;gap:7px;margin-top:-6px}.deadline-shortcuts button:hover,.reopen-select-actions button:hover{background:#e7dcf5}.reopen-impact{display:flex;align-items:flex-start;gap:9px;padding:11px 13px;color:#5d4d72;background:#f5f0fb;border-radius:3px 11px 11px;font-size:9px;line-height:1.45}.reopen-impact svg{width:17px;flex:0 0 auto;color:var(--brand)}.reopen-impact strong{display:block;font-size:10px}.meta-row{display:flex;flex-wrap:wrap;gap:16px;color:#7b8987;font-size:10px}.meta-row span{display:inline-flex;align-items:center;gap:5px}.meta-row svg{width:13px;height:13px}.empty-state{min-height:330px;padding:40px 20px;display:flex;flex-direction:column;justify-content:center;align-items:center;text-align:center;border:1px dashed #cbd6d3;border-radius:17px;background:#ffffff80}.empty-state.compact{min-height:190px;padding:20px;border:0;background:transparent}.empty-state>span{width:48px;height:48px;border-radius:14px;display:grid;place-items:center;color:var(--brand);background:#e8f4f1;margin-bottom:14px}.empty-state h3{font-size:17px;margin-bottom:6px}.empty-state p{max-width:420px;color:var(--muted);font-size:13px;line-height:1.55}.error-state>span{color:#b95145;background:#faeae7}.form-stack{display:flex;flex-direction:column;gap:18px}.form-divider{display:flex;align-items:center;gap:12px;color:var(--muted);font-size:11px;font-weight:700;text-transform:uppercase;letter-spacing:.08em}.form-divider:before,.form-divider:after{content:"";flex:1;height:1px;background:var(--line)}.form-row{display:grid;grid-template-columns:1fr 1fr;gap:14px}.field{display:flex;flex-direction:column;gap:7px;color:#314c53;font-size:12px;font-weight:700}.field input,.field select,.field textarea,.rating-question textarea{width:100%;min-height:45px;border:1px solid #d4dfdc;border-radius:10px;padding:11px 12px;outline:none;color:var(--ink);background:#fbfcfb;transition:.15s ease;font-weight:500}.field textarea{resize:vertical}.field input:focus,.field select:focus,.field textarea:focus,.rating-question textarea:focus{border-color:#4fa99e;box-shadow:0 0 0 3px #2691861c;background:#fff}.field small{color:#82908e;font-weight:400;line-height:1.4}.roster-help{overflow:hidden;border:1px solid #d3e1de;border-radius:12px;background:#f7fbfa}.roster-help summary{display:flex;align-items:center;gap:8px;padding:12px 14px;color:var(--brand);cursor:pointer;font-size:11px;font-weight:800;list-style:none}.roster-help summary::-webkit-details-marker{display:none}.roster-help summary svg{width:15px;height:15px;flex:0 0 auto}.roster-help[open] summary{border-bottom:1px solid #dce8e5;background:#edf6f4}.roster-help-content{display:grid;gap:10px;padding:14px}.roster-help-content p{margin:0;color:#526965;font-size:10px;line-height:1.55}.roster-help-content img{display:block;width:100%;height:auto;border:1px solid #d9e1df;border-radius:9px;background:#fff}.roster-help-content .roster-help-note{padding:10px;border-radius:8px;color:#6f572d;background:#fff5e5}.inline-inputs{display:flex;align-items:center;gap:8px}.inline-inputs input{max-width:95px}.inline-inputs span{color:var(--muted);font-weight:500}.modal-layer{position:fixed;z-index:100;top:0;right:0;bottom:0;left:0;display:grid;place-items:center;padding:20px}.modal-scrim{position:absolute;top:0;right:0;bottom:0;left:0;border:0;background:#071b2194;-webkit-backdrop-filter:blur(3px);backdrop-filter:blur(3px)}.modal{position:relative;width:min(520px,100%);max-height:min(760px,90vh);overflow-y:auto;padding:28px;border-radius:20px;background:#fff;box-shadow:0 30px 80px #061f2547}.modal-head{display:flex;justify-content:space-between;gap:20px;margin-bottom:24px}.modal-head h2{font-size:21px;margin-bottom:5px}.modal-head p{margin:0;color:var(--muted);font-size:12px;line-height:1.5}.modal-actions{display:flex;justify-content:flex-end;gap:10px;padding-top:7px}.confirm-icon{width:58px;height:58px;display:grid;place-items:center;border-radius:17px;color:#9d6b24;background:#fff2dc;margin:8px 0 24px}.toggle-row{display:flex;gap:13px;align-items:flex-start;padding:13px;border:1px solid var(--line);border-radius:11px}.toggle-row>button{position:relative;flex:0 0 auto;width:40px;height:23px;padding:0;border:0;border-radius:20px;background:#c9d2cf;transition:.2s}.toggle-row>button i{position:absolute;width:17px;height:17px;left:3px;top:3px;border-radius:50%;background:#fff;box-shadow:0 2px 5px #0000002e;transition:.2s}.toggle-row>button.checked i{transform:translate(17px)}.toggle-row strong,.toggle-row span{display:block}.toggle-row strong{font-size:12px}.toggle-row span{font-size:10px;color:var(--muted);margin-top:3px}.group-selection-actions{display:flex;justify-content:flex-end;gap:8px;margin-bottom:9px}.choice-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:9px}.choice-card{position:relative;display:flex;align-items:center;gap:10px;min-height:60px;padding:10px;border:1px solid var(--line);border-radius:10px;cursor:pointer}.choice-card input{position:absolute;opacity:0}.choice-card.selected{border-color:#6ab7ad;background:#f0f8f6}.check-box{width:21px;height:21px;display:grid;place-items:center;border:1px solid #c3cfcc;border-radius:6px;background:#fff}.check-box svg{width:14px;opacity:0}.choice-card.selected .check-box{background:var(--brand);color:#fff;border-color:var(--brand)}.choice-card.selected .check-box svg{opacity:1}.choice-card strong,.choice-card small{display:block}.choice-card strong{font-size:11px}.choice-card small{color:var(--muted);font-size:9px;margin-top:3px}.info-card{display:flex;gap:12px;padding:15px;background:#edf6f4;color:#3b6463;border-radius:12px}.info-card svg{color:var(--brand)}.info-card strong{font-size:12px}.info-card p{font-size:10px;line-height:1.5;margin:4px 0 0}.custom-dates{display:grid;gap:9px}.custom-date{display:flex;gap:8px;align-items:center}.custom-date input{flex:1}.schedule-preview{display:grid;gap:7px;padding:15px;border:1px solid #d9d1e8;border-radius:12px;background:#faf8fd}.schedule-preview strong{color:var(--ink);font-size:12px}.schedule-preview span,.schedule-preview small{color:var(--muted);font-size:10px}.name-template-input{display:flex;align-items:center;gap:8px}.name-template-input input{flex:1}.name-template-input .button{flex:0 0 auto}.schedule-preview span b{color:var(--ink)}.schedule-boundary-note{min-height:72px;display:flex;align-items:center;gap:10px;padding:12px;color:#375f58;background:#eaf8f4;border:1px solid #cae9df;border-radius:10px;font-size:10px;line-height:1.5}.schedule-boundary-note svg{width:18px;flex:0 0 auto;color:var(--accent)}.schedule-boundary-note strong,.schedule-boundary-note span{display:block}.course-schedule-settings{max-width:780px;margin:0 auto;padding:clamp(18px,3vw,32px)}.course-schedule-heading{display:flex;gap:13px;align-items:center;margin-bottom:24px}.course-schedule-heading .icon-tile{flex:0 0 auto}.course-schedule-heading strong{color:var(--ink);font-size:18px}.course-schedule-heading p{margin:4px 0 0;color:var(--muted);font-size:11px;line-height:1.5}.schedule-window-grid{display:grid;grid-template-columns:1fr auto 1fr;gap:12px;align-items:center;margin-top:10px}.schedule-window-card{display:grid;grid-template-columns:1fr 1fr;gap:8px;padding:14px;border:1px solid var(--line);border-radius:12px;background:#faf9fc}.schedule-window-card>span{grid-column:1 / -1;color:var(--brand);font-size:10px;font-weight:900;letter-spacing:1px;text-transform:uppercase}.schedule-window-card select,.schedule-window-card input{min-width:0}.schedule-window-arrow{width:19px;color:var(--brand)}.schedule-setting-preview{display:flex;align-items:center;gap:10px;margin-top:16px;padding:13px;color:#276457;background:#eaf8f4;border-radius:10px;font-size:11px;line-height:1.5}.schedule-setting-preview svg{width:18px;flex:0 0 auto}.schedule-setting-preview strong,.schedule-setting-preview span{display:block}.table-panel{min-width:0;overflow:hidden}.table-panel>.panel-title{padding:22px 22px 0}.tabs{min-height:55px;padding:9px 14px 0;display:flex;align-items:flex-end;gap:5px;border-bottom:1px solid var(--line)}.tabs button{min-height:44px;border-radius:0;border-bottom:2px solid transparent}.tabs button.active{color:var(--brand);border-bottom-color:var(--brand)}.tabs-spacer{flex:1}.tabs .button{margin-bottom:8px}.course-evaluations{padding:20px}.course-evaluation-toolbar{display:flex;align-items:center;justify-content:space-between;gap:20px;margin-bottom:16px}.course-evaluation-toolbar>div:first-child strong{font-size:14px}.course-evaluation-toolbar p{margin:4px 0 0;color:var(--muted);font-size:10px}.course-evaluation-list{display:flex;flex-direction:column;border:1px solid var(--line);border-radius:14px;overflow:hidden}.course-evaluation-row{min-height:82px;padding:14px 16px;display:grid;grid-template-columns:auto minmax(190px,1fr) auto minmax(170px,.55fr) auto;align-items:center;gap:14px;color:inherit;border-bottom:1px solid var(--line);transition:.16s ease}.course-evaluation-row:last-child{border-bottom:0}.course-evaluation-row:hover{background:#faf8fc}.course-evaluation-row>svg{width:16px;color:var(--muted)}.course-evaluation-identity{min-width:0}.course-evaluation-identity strong,.course-evaluation-identity small{display:block}.course-evaluation-identity strong{font-size:13px}.course-evaluation-identity small{margin-top:5px;color:var(--muted);font-size:9px}.course-evaluation-completion{min-width:0;color:var(--muted);font-size:9px}.course-evaluation-completion strong{color:var(--ink)}.role-corrections-panel{margin-bottom:18px}.role-correction-note{display:flex;align-items:center;gap:9px;margin:0 16px 16px;padding:11px 13px;color:#5d4d72;background:#f5f0fb;border-radius:3px 11px 11px;font-size:9px}.role-correction-note svg{width:17px;color:var(--brand)}.table-wrap{overflow-x:auto}.table-wrap table{width:100%;border-collapse:collapse}.table-wrap th{height:44px;padding:0 18px;text-align:left;color:#7b8987;background:#f8faf9;border-bottom:1px solid var(--line);font-size:9px;text-transform:uppercase;letter-spacing:.8px}.table-wrap td{min-height:60px;padding:13px 18px;border-bottom:1px solid #edf0ef;color:#53666a;font-size:11px}.table-wrap tr:last-child td{border-bottom:0}.table-wrap td strong{color:var(--ink)}.table-empty{min-height:190px;display:grid;place-items:center;align-content:center;gap:8px;color:#92a19e}.table-empty p{font-size:12px}.person{display:flex;align-items:center;gap:10px}.person strong,.person span{display:block}.person strong{font-size:11px}.person span{color:var(--muted);font-size:9px;margin-top:2px}.builder-layout{display:grid;grid-template-columns:230px minmax(0,720px);align-items:start;gap:30px;justify-content:center}.stepper{display:flex;flex-direction:column;gap:7px}.stepper button{display:flex;align-items:center;gap:11px;padding:11px;text-align:left;border:0;background:transparent;border-radius:11px;color:var(--muted)}.stepper button>span{width:29px;height:29px;display:grid;place-items:center;border:1px solid #cbd5d2;border-radius:50%;font-size:10px;font-weight:800}.stepper button strong,.stepper button small{display:block}.stepper button strong{font-size:11px}.stepper button small{font-size:9px;margin-top:2px}.stepper button.active{color:var(--brand);background:#eaf4f2}.stepper button.active>span{color:#fff;background:var(--brand);border-color:var(--brand)}.stepper button.done>span{color:var(--brand);border-color:#86bdb6}.stepper svg{width:14px}.builder-card{padding:clamp(22px,4vw,34px)}.section-heading{margin-bottom:8px}.section-heading h2{font-size:20px;margin-bottom:6px}.section-heading p{color:var(--muted);font-size:12px}.builder-actions{display:flex;align-items:center;gap:9px;margin:28px -34px -34px;padding:17px 34px;border-top:1px solid var(--line)}.builder-actions>span{flex:1}.builder-start-grid{display:grid;grid-template-columns:1fr 1fr;gap:10px}.builder-start-card{min-height:96px;display:flex;align-items:flex-start;gap:11px;padding:15px;border:1px solid var(--line);border-radius:3px 14px 14px;color:var(--ink);background:#fbfafd;text-align:left;cursor:pointer}.builder-start-card:hover,.builder-start-card.selected{border-color:#8f79b9;background:#f5f0fb;box-shadow:0 8px 20px #38206912}.builder-start-card>svg:first-child{width:19px;color:var(--brand);flex:0 0 auto}.builder-start-card>svg:last-child{width:15px;margin-left:auto;color:var(--accent)}.builder-start-card strong,.builder-start-card small{display:block}.builder-start-card strong{font-size:11px}.builder-start-card small{margin-top:5px;color:var(--muted);font-size:9px;line-height:1.45}.import-evaluation-row{display:flex;align-items:center;gap:10px;padding:14px;border:1px dashed #bfb1d7;border-radius:12px;background:#faf8fd}.import-evaluation-row input{flex:1}.question-editor{border:1px solid var(--line);border-radius:14px;overflow:hidden}.question-editor-head{display:flex;align-items:center;justify-content:space-between;gap:15px;padding:15px 17px;background:#f8f6fb}.question-editor-head strong{font-size:12px}.question-editor-head p{margin:3px 0 0;color:var(--muted);font-size:9px}.builder-question{display:grid;grid-template-columns:25px 82px 82px minmax(180px,1fr) auto 32px;gap:8px;align-items:center;padding:11px 14px;border-top:1px solid var(--line)}.builder-question>span{width:24px;height:24px;display:grid;place-items:center;color:var(--brand);background:#eee8f7;border-radius:7px;font-size:9px;font-weight:800}.builder-question select,.builder-question textarea{min-height:38px;font-size:10px}.builder-question label{display:flex;align-items:center;gap:5px;color:var(--muted);font-size:9px;white-space:nowrap}.field-hint{margin-top:-7px;color:var(--muted);font-size:10px;line-height:1.45}.inline-alert.success{background:#eaf8f4;color:#176b5e}.evaluation-overview{display:grid;grid-template-columns:1fr auto;gap:14px;margin-bottom:14px}.evaluation-overview>.panel{padding:19px}.detail-title{display:grid;grid-template-columns:repeat(4,1fr);gap:20px}.detail-title>div{padding-right:18px;border-right:1px solid var(--line)}.detail-title>div:last-child{border:0}.detail-title .overline{color:var(--muted)}.detail-title strong{font-family:Manrope;font-size:20px}.mini-actions{display:flex;padding:7px!important}.mini-actions button,.mini-actions a{padding:0 12px;border:0;background:transparent;display:flex;align-items:center;gap:7px;color:var(--muted);font-size:10px;font-weight:700}.mini-actions svg{width:15px}.details-panel{margin-bottom:14px}.detail-grid{display:grid;grid-template-columns:1.5fr 1fr 1fr;gap:25px}.detail-grid>div>span{display:block;color:#82918e;font-size:9px;text-transform:uppercase;letter-spacing:.8px;font-weight:800;margin-bottom:8px}.detail-grid p{color:#52676b;font-size:11px;line-height:1.6;margin:0}.check-list{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:7px;font-size:10px}.check-list li{display:flex;gap:6px;align-items:center}.check-list svg{width:13px;color:var(--brand)}.positive{color:#198063!important}.negative{color:#bc4d41!important}.publish-card{display:flex;gap:15px;align-items:center;margin-top:14px;padding:19px;border-radius:15px;color:#fff;background:linear-gradient(120deg,#12313a,#184a4d)}.publish-icon{width:44px;height:44px;display:grid;place-items:center;border-radius:12px;background:#ffffff1a;color:#7ce0cf}.publish-card h3{margin:0 0 4px;font-size:15px}.publish-card p{margin:0;color:#afc7c8;font-size:10px}.publish-card .button{background:#4dc0ae;color:#10363a}.evidence-review{margin-bottom:14px;overflow:hidden}.evidence-review>.panel-title{padding:22px 22px 0}.ai-off-notice{display:flex;align-items:flex-start;gap:10px;margin:16px 22px;padding:13px 15px;border:1px solid #d8cdea;border-radius:12px;color:#5a4776;background:#f7f3fc;font-size:10px;line-height:1.5}.ai-off-notice svg{width:17px;flex:0 0 auto;color:var(--brand)}.evidence-groups{border-top:1px solid var(--line)}.evidence-group{border-bottom:1px solid var(--line)}.evidence-group:last-child{border:0}.evidence-group-head{width:100%;min-height:72px;display:flex;align-items:center;gap:12px;padding:12px 20px;border:0;color:var(--ink);background:#fff;text-align:left;cursor:pointer}.evidence-group-head:hover{background:#fbfafc}.evidence-group-head strong,.evidence-group-head small{display:block}.evidence-group-head small{margin-top:4px;color:var(--muted);font-size:9px}.evidence-group-head>svg:last-child{width:17px;color:var(--muted);transition:transform .2s}.evidence-group-head>svg.rotated{transform:rotate(90deg)}.evidence-metrics{min-width:58px;color:var(--muted);font-size:9px;text-align:center}.evidence-metrics b{display:block;color:var(--ink);font-size:15px}.evidence-metrics.risk b{color:#b65346}.evidence-group-body{padding:0 20px 20px;background:#fbfafc}.evidence-ai{display:flex;justify-content:space-between;gap:18px;padding:18px;border-radius:14px;color:#fff;background:linear-gradient(125deg,#382069,#6542b1)}.evidence-ai h3{margin:4px 0 6px;font-size:16px}.evidence-ai p{max-width:650px;margin:0;color:#e4dbf3;font-size:10px;line-height:1.55;white-space:pre-line}.evidence-ai small{display:block;margin-top:8px;color:#cfc1e8;font-size:8px}.evidence-ai .overline{color:#9ee4d8}.evidence-ai-actions{display:flex;align-items:flex-start;gap:7px;flex:0 0 auto}.evidence-ai-actions .button{color:#382069;background:#fff;border-color:#fff}.evidence-group-body>.table-wrap{margin-top:12px;border:1px solid var(--line);border-radius:12px;background:#fff}.evidence-timeline{margin-top:12px;border:1px solid var(--line);border-radius:12px;background:#fff;overflow:hidden}.evidence-timeline details{border-top:1px solid var(--line)}.evidence-timeline summary{min-height:54px;display:flex;align-items:center;gap:16px;padding:10px 16px;cursor:pointer;font-size:10px}.evidence-timeline summary>span:first-child{flex:1}.evidence-timeline summary strong,.evidence-timeline summary small{display:block}.evidence-timeline summary small{margin-top:3px;color:var(--muted)}.timeline-students{padding:5px 15px 12px}.timeline-students>div{display:grid;grid-template-columns:minmax(180px,.5fr) 1fr;gap:15px;align-items:center;padding:9px 0;border-top:1px solid #eeeaf3;color:var(--muted);font-size:9px}.adjustment-review{margin-top:14px}.adjustment-input{width:78px;min-height:34px!important;padding:6px 8px!important;font-size:10px!important}.compact-check{display:flex;align-items:center;gap:5px;white-space:nowrap;font-size:9px}.security-banner{display:flex;gap:13px;align-items:center;margin-bottom:20px;padding:16px 18px;border:1px solid #cde3de;border-radius:14px;color:#2d625e;background:#eef8f5}.security-banner strong{font-size:12px}.security-banner p{font-size:10px;margin:3px 0 0}.connection-card{display:flex;align-items:center;gap:16px;padding:20px}.connection-logo{width:48px;height:48px;display:grid;place-items:center;border-radius:14px;color:#fff;background:#e06e3c;font-size:22px;font-weight:800}.connection-card h3{font-size:15px}.connection-card a{display:inline-flex;gap:5px;color:var(--brand);font-size:11px}.connection-card a svg{width:12px}.connection-card p{color:var(--muted);font-size:9px;margin:6px 0 0}.setup-guide{margin-top:20px}.setup-guide ol{list-style:none;padding:0;margin:0;display:grid;grid-template-columns:repeat(3,1fr);gap:16px}.setup-guide li{display:flex;gap:10px}.setup-guide li>span{width:25px;height:25px;display:grid;place-items:center;border-radius:8px;color:var(--brand);background:#e8f4f1;font-size:9px;font-weight:800}.setup-guide strong{font-size:10px}.setup-guide p{color:var(--muted);font-size:9px;line-height:1.5;margin:4px 0 0}.student-context-picker{padding:clamp(22px,4vw,34px)}.student-context-picker-heading{max-width:620px;margin-bottom:22px}.student-context-picker-heading h2{margin:5px 0 7px;font-size:22px}.student-context-picker-heading p{margin:0;color:var(--muted);font-size:12px}.student-context-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.student-context-card{width:100%;min-height:112px;display:flex;align-items:center;gap:14px;padding:18px;border:1px solid var(--line);border-radius:3px 17px 17px;color:var(--ink);background:#fbfafd;font:inherit;text-align:left;cursor:pointer;transition:border-color .18s ease,box-shadow .18s ease,transform .18s ease}.student-context-card:hover{border-color:#bbaed0;box-shadow:0 12px 28px #2f1b5c14;transform:translateY(-1px)}.student-context-card:focus-visible{outline:3px solid rgba(81,48,140,.2);outline-offset:2px}.student-context-card:disabled{cursor:wait;opacity:.7;transform:none}.student-context-icon{width:44px;height:44px;display:grid;place-items:center;flex:0 0 auto;border-radius:50%;color:#fff;background:var(--brand)}.student-context-copy{min-width:0;flex:1}.student-context-copy>span,.student-context-copy>strong,.student-context-copy>small{display:block}.student-context-copy>strong{margin-top:4px;font-size:14px;line-height:1.3}.student-context-copy>small{margin-top:7px;color:var(--muted);font-size:10px}.student-context-card>svg:last-child{width:18px;color:var(--brand)}.student-context-bar{min-height:78px;margin-bottom:16px;padding:14px 16px;display:flex;align-items:center;gap:13px}.student-context-bar .student-context-icon{width:40px;height:40px}.student-context-current{min-width:0;flex:1}.student-context-current>span,.student-context-current>strong,.student-context-current>small{display:block}.student-context-current>span,.student-context-select>span{color:var(--muted);font-size:8px;font-weight:800;letter-spacing:.8px;text-transform:uppercase}.student-context-current>strong{margin:3px 0;font-size:12px}.student-context-current>small{color:var(--muted);font-size:9px}.student-context-select{display:grid;gap:5px}.student-context-select select{min-width:230px;height:39px;padding:0 34px 0 11px;border:1px solid #dcd5e8;border-radius:3px 11px 11px;color:var(--ink);background:#fbfafd;font:inherit;font-size:10px}.student-context-loading{color:var(--brand)}.student-context-warning{display:flex;align-items:flex-start;gap:11px;margin-bottom:16px;padding:14px 16px;border:1px solid #ecd6a8;border-radius:3px 14px 14px;color:#77511d;background:#fff6e6}.student-context-warning>svg{width:18px;color:#ae701e}.student-context-warning strong{font-size:11px}.student-context-warning p{margin:3px 0 0;font-size:10px;line-height:1.45}.student-intro{min-height:170px;margin-bottom:20px;padding:28px;color:#fff;background:radial-gradient(circle at 88% 25%,rgba(107,220,199,.22),transparent 27%),linear-gradient(125deg,#12313a,#15535a);border-radius:20px;display:flex;align-items:flex-end;justify-content:space-between;gap:30px;box-shadow:0 18px 40px #13353c21}.student-intro>div:first-child>svg{color:#6ce0cd}.student-intro h2{font-size:21px;margin:14px 0 6px}.student-intro p{max-width:580px;color:#bbd0d1;font-size:12px;line-height:1.5;margin:0}.privacy-chip{display:flex;align-items:center;gap:8px;max-width:220px;padding:10px 12px;border:1px solid rgba(255,255,255,.15);border-radius:10px;color:#c1d8d9;background:#ffffff0f;font-size:9px}.privacy-chip svg{width:16px;color:#6cdac8}.in-app-reminders{margin-bottom:20px;overflow:hidden;border:1px solid #ddd4ed;border-radius:3px 18px 18px;background:#fff;box-shadow:0 10px 28px #341c6412}.reminder-heading{display:flex;align-items:center;gap:14px;padding:18px 20px;background:#f7f3fc}.reminder-icon{width:42px;height:42px;display:grid;place-items:center;flex:0 0 auto;border-radius:50%;color:var(--brand);background:#e9e1f6}.reminder-heading h2{margin:2px 0 3px;font-size:17px}.reminder-heading p{margin:0;color:var(--muted);font-size:10px}.reminder-list{padding:5px 12px}.reminder-row{min-height:61px;display:flex;align-items:center;gap:11px;padding:9px 7px;border-bottom:1px solid #eeeaf4}.reminder-row:last-child{border:0}.reminder-row:hover{background:#fbf9fd}.reminder-row strong,.reminder-row .grow span{display:block}.reminder-row strong{font-size:12px}.reminder-row .grow span{margin-top:3px;color:var(--muted);font-size:10px}.reminder-row>svg{width:16px;color:#9b91aa}.reminder-dot{width:8px;height:8px;flex:0 0 auto;border-radius:50%;background:var(--brand)}.reminder-dot.soon{background:#d88c24}.reminder-dot.urgent{background:#c54d43;box-shadow:0 0 0 4px #f9e8e6}.reminder-label{padding:5px 8px;border-radius:100px;color:var(--brand);background:#eee8f7;font-size:9px;font-weight:800}.reminder-label.soon{color:#9a651f;background:#fff2dc}.reminder-label.urgent{color:#a54138;background:#fae8e5}.student-status-summary{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;margin:-2px 0 20px}.student-status-summary>div{min-width:0;display:grid;grid-template-columns:1fr auto;align-items:center;gap:2px 10px;padding:13px 15px;background:#fff;border:1px solid var(--line);border-radius:3px 12px 12px}.student-status-summary span{color:var(--muted);font-size:9px;font-weight:800;text-transform:uppercase}.student-status-summary strong{grid-row:1 / 3;grid-column:2;font-family:var(--display);font-size:24px}.student-status-summary small{color:var(--muted);font-size:9px}.student-status-summary .active{border-left:3px solid var(--brand)}.student-status-summary .done{border-left:3px solid var(--accent)}.student-status-summary .missed{border-left:3px solid #d88c24}.student-task{min-height:142px;display:flex;gap:20px;align-items:center;padding:22px;background:#fff;border:1px solid var(--line);border-radius:16px}.student-task:hover{border-color:#b7cbc6;box-shadow:var(--shadow)}.task-date{width:62px;height:72px;display:grid;place-items:center;align-content:center;color:var(--brand);background:#e8f4f1;border-radius:14px}.task-date span{font-size:9px;font-weight:800;text-transform:uppercase}.task-date strong{font-family:Manrope;font-size:24px}.student-task h3{margin:2px 0 7px;font-size:17px}.student-task p{color:var(--muted);font-size:11px;margin:0 0 11px}.student-history{margin-top:22px}.student-history>.panel-title{margin-bottom:10px;padding-inline:2px}.student-history-list{overflow:hidden;background:#fff;border:1px solid var(--line);border-radius:3px 16px 16px}.student-history-row{min-width:0;display:flex;align-items:center;gap:13px;padding:15px 17px;border-bottom:1px solid #eeeaf3}.student-history-row:last-child{border-bottom:0}.student-history-icon{width:38px;height:38px;display:grid;place-items:center;flex:0 0 auto;border-radius:50%}.student-history-icon svg{width:18px}.student-history-row.done .student-history-icon{color:#147d72;background:#e5f6f2}.student-history-row.missed .student-history-icon{color:#9a651f;background:#fff2dc}.student-history-row .grow{min-width:0}.student-history-row strong,.student-history-row small{display:block}.student-history-row strong{margin:2px 0 3px;font-size:12px}.student-history-row small{color:var(--muted);font-size:9px;line-height:1.45}.student-done-badge,.student-missed-badge{display:inline-flex;align-items:center;gap:4px;flex:0 0 auto;padding:6px 9px;border-radius:100px;font-size:9px;font-weight:850}.student-done-badge{color:#147d72;background:#e5f6f2}.student-done-badge svg{width:12px}.student-missed-badge{color:#9a651f;background:#fff2dc}.student-missed-badge svg{width:12px}.late-access-row{color:inherit;transition:background .16s ease}.late-access-row:hover{background:#fffbf3}.student-results{margin-top:30px}.student-result-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.student-result{display:flex;align-items:center;justify-content:space-between;gap:22px;padding:22px}.student-result h3{margin:4px 0 0;font-size:18px}.aggregate-score{flex:0 0 auto;text-align:right}.aggregate-score strong{display:block;color:var(--brand);font-family:Newsreader,Georgia,serif;font-size:34px;line-height:1}.aggregate-score span{color:var(--muted);font-size:11px}.privacy-note{display:flex;align-items:center;gap:9px;max-width:245px;color:var(--muted);font-size:11px;line-height:1.4}.privacy-note svg{color:var(--accent)}.student-eval-layout{display:grid;grid-template-columns:245px minmax(0,780px);gap:18px;justify-content:center;align-items:start}.member-nav{position:sticky;top:20px;padding:16px;background:#fff;border:1px solid var(--line);border-radius:15px}.progress-head{display:flex;justify-content:space-between;color:var(--muted);font-size:10px}.progress-head strong{color:var(--ink)}.progress-track{height:6px;margin:8px 0 15px;background:#e7ecea;border-radius:5px;overflow:hidden}.progress-track i{display:block;height:100%;background:var(--brand);border-radius:5px}.member-nav>button{width:100%;min-height:54px;padding:7px;display:flex;align-items:center;gap:9px;border:0;border-radius:10px;background:transparent;text-align:left}.member-nav>button.active{background:#edf6f4}.member-nav button>div:nth-child(2){flex:1;min-width:0}.member-nav strong,.member-nav span{display:block}.member-nav strong{font-size:10px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.member-nav span{color:var(--muted);font-size:8px;margin-top:2px}.member-nav button>svg{width:14px;color:#94a29f}.member-nav button>svg.complete{color:var(--brand)}.rating-panel{overflow:hidden}.rating-header{display:flex;align-items:center;gap:15px;padding:25px;border-bottom:1px solid var(--line)}.rating-header h2{margin:0 0 4px;font-size:21px}.rating-header p{color:var(--muted);font-size:10px;margin:0}.question-list{padding:0 25px}.rating-question{display:flex;gap:14px;padding:24px 0;border-bottom:1px solid var(--line)}.question-number{width:25px;height:25px;display:grid;place-items:center;border-radius:7px;color:var(--brand);background:#e8f4f1;font-size:9px;font-weight:800}.rating-question h3{font-family:DM Sans;font-size:13px;line-height:1.5;margin-bottom:14px}.rating-scale{display:flex;gap:8px}.rating-scale button{width:42px;height:40px;border:1px solid #d2ddda;border-radius:9px;color:#617376;background:#fff;font-weight:800}.rating-scale button:hover{border-color:#6bb8ae}.rating-scale button.selected{color:#fff;border-color:var(--brand);background:var(--brand);box-shadow:0 5px 12px #0e766e33}.scale-labels{max-width:242px;display:flex;justify-content:space-between;margin:5px 0 12px;color:#94a09e;font-size:8px}.rating-question textarea{min-height:60px;resize:vertical;font-size:11px}.rating-actions{display:flex;justify-content:space-between;gap:10px;padding:18px 25px;background:#f9fbfa}.student-requirements{display:flex;align-items:center;gap:10px;margin:14px 25px 0;padding:11px 13px;color:#77501d;background:#fff7e8;border:1px solid #f1d7ad;border-radius:3px 11px 11px}.student-requirements.complete{color:#147d72;background:#eaf8f5;border-color:#c5e9e2}.student-requirements>svg{width:18px;flex:0 0 auto}.student-requirements strong,.student-requirements span{display:block}.student-requirements strong{font-size:10px}.student-requirements span{margin-top:2px;font-size:9px;opacity:.82}.required-field-note{display:block;margin:-8px 0 10px;color:#9a651f;font-size:8px;font-weight:800;text-transform:uppercase}.required-comment{display:block}.required-comment>span{display:block;margin-bottom:5px;color:var(--ink);font-size:9px;font-weight:800}.required-comment textarea:placeholder-shown{border-color:#dfbd86;background:#fffcf5}.late-submission-warning{display:flex;align-items:flex-start;gap:12px;max-width:1043px;margin:0 auto 16px;padding:15px 17px;color:#7a4d16;background:#fff5e2;border:1px solid #efcf98;border-radius:3px 14px 14px}.late-submission-warning>svg{width:20px;flex:0 0 auto;color:#b8751f}.late-submission-warning strong{font-size:11px}.late-submission-warning p{margin:4px 0 0;font-size:10px;line-height:1.5}.student-submit-block{display:flex;align-items:center;justify-content:flex-end;gap:14px;margin-left:auto}.late-acknowledgement{max-width:430px;display:flex;align-items:flex-start;gap:9px;color:#76501e;font-size:9px;line-height:1.45;text-align:left}.late-acknowledgement input{width:17px;height:17px;flex:0 0 auto;margin-top:1px;accent-color:var(--brand)}.late-acknowledgement strong{display:block;color:#55340e;font-size:10px}.toast-stack{position:fixed;right:22px;bottom:22px;z-index:200;display:flex;flex-direction:column;gap:8px}.toast{min-width:280px;max-width:420px;min-height:50px;padding:12px 15px;display:flex;align-items:center;gap:10px;border:1px solid #d1dedb;border-radius:12px;background:#fff;box-shadow:0 14px 40px #0f2c322b;font-size:12px;font-weight:600;animation:toast-in .25s ease}.toast.success svg{color:var(--brand)}.toast.error svg{color:#b84c41}.toast.info svg{color:#4b7399}@keyframes toast-in{0%{opacity:0;transform:translateY(10px)}}.full-loader{min-height:100vh;display:grid;place-items:center;align-content:center;gap:18px;background:#f7f9f7}.full-loader p{color:var(--muted);font-size:12px}.skeleton{background:linear-gradient(90deg,#e9eeec 25%,#f4f6f5 40%,#e9eeec 65%);background-size:400% 100%;animation:shimmer 1.3s infinite;border-radius:15px}.skeleton.card{height:240px}.skeleton.row{height:108px}.skeleton.heading{width:50%;height:45px;margin-bottom:25px}.skeleton.detail{height:380px}@keyframes shimmer{0%{background-position:100% 0}to{background-position:0 0}}@media(max-width:1120px){.stats-grid,.course-grid{grid-template-columns:repeat(2,1fr)}.hero{gap:50px}.hero h1{font-size:52px}.detail-grid{grid-template-columns:1fr 1fr}.detail-grid>div:first-child{grid-column:1 / -1}.builder-layout{display:block;max-width:780px;margin-inline:auto}.stepper{flex-direction:row;margin-bottom:14px}.stepper button{flex:1}}@media(max-width:900px){.wrap{width:min(100% - 30px,640px)}.public-nav{height:68px}.public-nav .text-link{display:none}.hero{grid-template-columns:1fr;padding:42px 0 60px;gap:48px}.hero h1{font-size:clamp(39px,12.2vw,56px);letter-spacing:-2.4px}.hero-lede{font-size:16px}.mini-dashboard{width:100%}.hero-proof{gap:10px}.login-card{border-radius:19px}.steps{grid-template-columns:1fr 1fr;gap:30px 22px;padding:45px 0}.public-footer{flex-wrap:wrap;padding:24px 0}.public-footer p{order:3;flex-basis:100%}.sidebar{transform:translate(-100%);transition:transform .22s ease;width:min(290px,86vw);box-shadow:20px 0 60px #061b2033}.sidebar.open{transform:translate(0)}.close-menu{display:grid}.scrim{position:fixed;z-index:25;top:0;right:0;bottom:0;left:0;border:0;background:#04181d7a;-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px)}.app-main{width:100%;margin:0;padding-bottom:calc(66px + env(safe-area-inset-bottom))}.mobile-header{position:sticky;top:0;z-index:20;height:62px;padding:0 15px;display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid var(--line);background:#fffffff0;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px)}.mobile-header .brand-mark{display:none}.mobile-header .brand{gap:0}.mobile-tabs{position:fixed;z-index:22;inset:auto 0 0;min-height:64px;padding:6px 7px calc(6px + env(safe-area-inset-bottom));display:flex;justify-content:space-around;border-top:1px solid var(--line);background:#fffffff5;-webkit-backdrop-filter:blur(15px);backdrop-filter:blur(15px);box-shadow:0 -7px 22px #17313a0f}.mobile-tabs a{flex:1;min-width:0;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:3px;color:#7a8b8e;font-size:8px;font-weight:700}.mobile-tabs a svg{width:20px}.mobile-tabs a.active{color:var(--brand)}.page{padding:26px 15px 45px}.page-header{margin-bottom:22px}.title-row{align-items:flex-start;flex-direction:column;gap:16px}.title-row h1{font-size:28px}.title-row p{font-size:13px;line-height:1.45}.page-actions{width:100%;flex-wrap:wrap}.page-actions .button{flex:1}.stats-grid,.stats-grid.compact{grid-template-columns:1fr 1fr;gap:10px}.stat-card{min-height:106px;padding:14px;gap:10px}.stat-icon{width:35px;height:35px}.stat-card>div:last-child{display:block}.stat-card span,.stat-card small{display:block}.stat-card strong{display:block;margin-top:4px;font-size:22px}.stat-card small{margin-top:3px}.dashboard-grid{grid-template-columns:1fr}.attention-panel{order:-1}.activity-panel,.attention-panel,.details-panel,.setup-guide{padding:17px}.activity-row{padding-block:10px}.activity-row .status{display:none}.toolbar{align-items:stretch;flex-direction:column;padding:9px}.search{min-width:0;width:100%}.filter-pills{width:100%;padding-bottom:2px}.filter-pills button{flex:0 0 auto}.toolbar>.muted{margin:0;padding:0 8px 4px}.course-grid{grid-template-columns:1fr}.course-card{min-height:200px}.evaluation-card{padding:15px;align-items:flex-start}.evaluation-card .status-icon{display:none}.evaluation-card>svg{margin-top:4px}.card-title-line{align-items:flex-start;justify-content:space-between}.meta-row{gap:8px 13px}.form-row,.choice-grid{grid-template-columns:1fr}.modal-layer{padding:0;align-items:end}.modal{width:100%;max-height:93vh;border-radius:22px 22px 0 0;padding:23px 18px calc(23px + env(safe-area-inset-bottom))}.modal-actions .button{flex:1}.tabs{overflow-x:auto;align-items:center}.tabs button{flex:0 0 auto}.tabs-spacer{display:none}.tabs .button{flex:0 0 auto;margin-left:auto}.course-evaluations{padding:14px}.course-evaluation-toolbar{align-items:flex-start;flex-direction:column;gap:12px}.course-evaluation-toolbar .filter-pills{max-width:100%}.course-evaluation-row{grid-template-columns:auto minmax(0,1fr) auto;gap:10px;padding:14px 12px}.course-evaluation-row>.status{grid-column:2;justify-self:start}.course-evaluation-completion{grid-column:2 / -1;width:100%}.course-evaluation-row>svg:last-child{grid-column:3;grid-row:1}.course-evaluation-identity small{line-height:1.45}.table-wrap{overflow:visible}.table-wrap thead{display:none}.table-wrap table,.table-wrap tbody,.table-wrap tr,.table-wrap td{display:block;width:100%}.table-wrap tr{padding:11px 15px;border-bottom:1px solid var(--line)}.table-wrap tr:last-child{border:0}.table-wrap td{min-height:0;padding:6px 0;display:flex;justify-content:space-between;gap:20px;border:0;text-align:right}.table-wrap td:before{content:attr(data-label);color:#8a9895;font-size:9px;text-transform:uppercase;letter-spacing:.5px;font-weight:800;text-align:left}.table-wrap td:first-child{margin-bottom:4px}.table-wrap td:first-child:before{display:none}.table-wrap .person{margin-left:auto;text-align:left}.builder-layout{display:block}.stepper{flex-direction:row;margin-bottom:14px}.stepper button{flex:1;justify-content:center;padding:7px}.stepper button>div{display:none}.builder-card{padding:20px 16px}.builder-actions{margin:25px -16px -20px;padding:15px 16px}.builder-actions .button{min-width:0}.evaluation-overview{grid-template-columns:1fr}.detail-title{grid-template-columns:1fr 1fr;gap:16px}.detail-title>div{border:0;padding:0}.mini-actions{min-height:52px}.mini-actions button,.mini-actions a{flex:1;justify-content:center}.detail-grid{grid-template-columns:1fr}.detail-grid>div:first-child{grid-column:auto}.publish-card{align-items:flex-start;flex-wrap:wrap}.publish-card .button{width:100%}.connection-card{align-items:flex-start;flex-wrap:wrap;padding:16px}.connection-card .button{width:100%}.setup-guide ol,.student-context-grid{grid-template-columns:1fr}.student-context-bar{align-items:flex-start;flex-wrap:wrap}.student-context-current{padding-top:3px}.student-context-select{width:100%}.student-context-select select{width:100%;min-width:0}.student-context-loading{margin-left:auto}.student-intro{min-height:220px;align-items:flex-start;flex-direction:column;padding:22px}.privacy-chip{max-width:none}.student-task{align-items:flex-start;padding:16px;gap:13px}.student-task>.button{display:none}.task-date{width:50px;height:61px}.reminder-heading{align-items:flex-start;padding:16px}.reminder-list{padding-inline:8px}.reminder-label{display:none}.student-result-grid{grid-template-columns:1fr}.student-result{align-items:flex-start;flex-direction:column}.aggregate-score{text-align:left}.student-history-row{align-items:flex-start;flex-wrap:wrap}.student-history-row .grow{flex-basis:calc(100% - 55px)}.student-done-badge,.student-missed-badge{margin-left:51px}.student-eval-layout{display:flex;flex-direction:column}.member-nav{position:static;width:100%;display:flex;overflow-x:auto;gap:7px;padding:10px}.progress-head,.progress-track{display:none}.member-nav>button{flex:0 0 150px}.member-nav>button>svg:not(.complete){display:none}.rating-panel{width:100%}.rating-header,.question-list{padding-inline:16px}.rating-question{gap:9px}.rating-scale{display:grid;grid-template-columns:repeat(5,1fr)}.rating-scale button{width:100%}.rating-actions{position:sticky;bottom:calc(64px + env(safe-area-inset-bottom));padding:13px 16px;z-index:10}.rating-actions .button{flex:1;padding-inline:9px}.student-submit-block{width:100%;align-items:stretch;flex-direction:column}.late-acknowledgement{max-width:none}.toast-stack{left:12px;right:12px;bottom:calc(78px + env(safe-area-inset-bottom))}.toast{min-width:0;width:100%}}@media(max-width:400px){.stats-grid,.stats-grid.compact{grid-template-columns:1fr}.stat-card{min-height:82px}.stat-card>div:last-child{display:grid}.steps{grid-template-columns:1fr}.hero-proof{flex-direction:column}.rating-scale{gap:5px}.rating-scale button{height:38px}.student-status-summary{grid-template-columns:1fr}.student-requirements{margin-inline:14px}}@media(prefers-reduced-motion:reduce){*,*:before,*:after{scroll-behavior:auto!important;animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important}}@media(prefers-contrast:more){:root{--line: #9facaa}.button,.field input,.field select,.field textarea{border-width:2px}}.app-shell{background:#f7f5fb}.sidebar{width:268px;padding:28px 20px 20px;color:#eee9f7;background:#24133f;border-right:1px solid #38205f;overflow:hidden}.sidebar:before{content:"";position:absolute;width:230px;height:230px;right:-150px;top:25%;border:1px solid rgba(20,184,166,.3);border-radius:50%;box-shadow:0 0 0 40px #14b8a609,0 0 0 80px #14b8a606;pointer-events:none}.sidebar .brand{color:#fff;padding-inline:6px}.sidebar .brand-mark{filter:drop-shadow(0 8px 14px rgba(0,0,0,.25))}.side-nav{position:relative;margin-top:52px;gap:7px}.nav-label{color:#9685b3;letter-spacing:1.8px}.side-nav a{min-height:48px;padding:0 14px;color:#bcb0ce;border-radius:4px 14px 14px}.side-nav a:hover{color:#fff;background:#ffffff0f}.side-nav a.active{color:#271642;background:#fff;box-shadow:0 14px 28px #0c041c38}.side-nav a.active svg{color:var(--brand)}.side-nav a.active:before{content:"";width:5px;height:5px;margin-left:-2px;border-radius:50%;background:var(--accent);box-shadow:0 0 0 4px #14b8a621}.side-nav a.active .nav-arrow{color:var(--brand)}.trust-note{position:relative;margin-top:auto;padding:17px 5px 15px;border:0;border-top:1px solid rgba(255,255,255,.1);border-radius:0;background:transparent}.trust-note svg{color:#58d4c5}.trust-note strong{color:#fff;font-size:10px;text-transform:uppercase;letter-spacing:.65px}.trust-note span{color:#a79ab9;font-size:9px;line-height:1.55;margin-top:5px}.profile-block{position:relative;padding-top:18px;border-color:#ffffff1a}.profile-copy span{color:#9d90ae;letter-spacing:.45px}.profile-block .icon-button{color:#9f92b0}.avatar{background:var(--accent);box-shadow:inset 0 0 0 1px #fff3}.app-main{width:calc(100% - 268px);margin-left:268px;background:radial-gradient(circle at 94% 4%,rgba(109,75,178,.09),transparent 26%),#f7f5fb}.page{position:relative;width:min(1510px,100%);padding:54px clamp(28px,4.5vw,74px) 80px}.page-header{position:relative;margin-bottom:34px;padding-bottom:28px;border-bottom:1px solid #ded8e8}.page-header:after{content:"";position:absolute;left:0;bottom:-2px;width:76px;height:3px;background:var(--accent)}.title-row{align-items:center}.title-row h1{max-width:880px;font-size:clamp(38px,3.6vw,58px);line-height:.98;letter-spacing:-2.4px;margin-bottom:10px;color:#281744}.title-row p{max-width:760px;color:#716a7c;font-size:14px;line-height:1.55}.eyebrow-text,.overline{color:var(--brand);letter-spacing:1.6px}.back-link{color:var(--brand)}.signal-strip{position:relative;min-height:152px;margin-bottom:18px;padding:30px 220px 30px 32px;display:grid;grid-template-columns:1fr 1fr;gap:35px;align-items:center;color:#fff;background:var(--brand);border-radius:4px 24px 24px;overflow:hidden;box-shadow:0 20px 48px #341c642e}.signal-strip:before{content:"";position:absolute;width:300px;height:300px;right:-130px;top:-110px;border:1px solid rgba(255,255,255,.16);border-radius:50%;box-shadow:0 0 0 45px #ffffff06,0 0 0 90px #ffffff05}.signal-strip>div:not(.signal-mark){position:relative;z-index:1}.signal-strip>div:not(.signal-mark)+div:not(.signal-mark){padding-left:34px;border-left:1px solid rgba(255,255,255,.17)}.signal-strip span,.signal-strip strong{display:block}.signal-strip>div>span{color:#d5c8e9;font-size:9px;font-weight:800;letter-spacing:1.4px;text-transform:uppercase}.signal-strip>div>strong{max-width:310px;margin-top:9px;font-family:Newsreader,Georgia,serif;font-size:23px;line-height:1.1}.signal-mark{position:absolute;z-index:1;right:30px;top:27px;width:98px;height:98px;display:grid;place-items:center;align-content:center;color:#24133f;background:#b8eee5;border-radius:50%;transform:rotate(6deg);text-align:center;box-shadow:0 12px 25px #1909322e}.signal-mark svg{width:19px;margin-bottom:5px}.signal-mark>span{color:#24133f!important;font-size:7px!important;letter-spacing:.7px!important;line-height:1.1}.signal-mark strong{display:inline;font-family:inherit!important;font-size:8px!important}.panel{border-color:#e2ddec;border-radius:4px 20px 20px;box-shadow:0 9px 30px #2f1b5c0b}.stats-grid{gap:10px}.stat-card{position:relative;min-height:119px;padding:20px;background:#fff;border-color:#e2ddec;border-radius:3px 15px 15px;overflow:hidden}.stat-card:before{content:"";position:absolute;inset:0 auto 0 0;width:3px;background:var(--brand)}.stat-card:nth-child(2):before{background:var(--accent)}.stat-card:nth-child(3):before{background:#ef9c4a}.stat-card:nth-child(4):before{background:#8270b4}.stat-card strong{color:#2c194a!important;font-family:Newsreader,Georgia,serif!important;font-size:34px!important}.stat-icon{border-radius:50%}.stat-icon.teal{color:var(--brand);background:#f0ebfa}.stat-icon.blue{color:#087f73;background:#e4f7f4}.stat-icon.amber{color:#a45a18;background:#fff0df}.stat-icon.green{color:#5f4a94;background:#eee9f7}.dashboard-grid{grid-template-columns:minmax(0,1.55fr) minmax(310px,.65fr)}.panel-title h2{color:#2d1b49;font-family:DM Sans,sans-serif;font-size:14px;text-transform:uppercase;letter-spacing:.4px}.panel-title a,.text-link,.card-link{color:var(--brand)}.activity-row{border-bottom:1px solid #f0edf5;border-radius:0}.activity-row:last-child{border-bottom:0}.activity-row:hover{background:#faf8fd}.status-icon{color:var(--brand);background:#f0ebfa;border-radius:50%}.status-icon.open{color:#087e72;background:#e4f7f4}.status-icon.draft{color:#9a651e;background:#fff2df}.status-icon.closed{color:#66508f;background:#eee9f7}.status.open,.status.active,.status.connected,.status.synced,.status.posted{color:#087b70;background:#e3f7f3}.status.draft,.status.pending,.status.untested,.status.review{color:#8b5b1d;background:#fff0dc}.status.closed{color:#5d4888;background:#eee9f7}.status.approved{color:#4e397e;background:#ebe5f5}.date-badge{color:var(--brand-dark);background:#f0ebfa;border-radius:3px 13px 13px}.date-badge svg{color:var(--brand)}.inline-alert{background:#fff2df;color:#87581e}.toolbar{min-height:62px;background:#ffffffd1;border-color:#e1dceb;border-radius:4px 17px 17px;box-shadow:0 8px 25px #2f1b5c09}.search{background:#f2eff7;border-radius:3px 11px 11px}.search svg{color:var(--brand)}.filter-pills button.active{color:#fff;background:var(--brand);border-radius:100px}.course-grid{gap:14px}.course-card{position:relative;min-height:250px;padding:23px;border-color:#e2ddec;border-radius:3px 20px 20px;overflow:hidden}.course-card:after{content:attr(data-code);position:absolute;right:-8px;bottom:-30px;color:#51308c09;font-family:Newsreader,Georgia,serif;font-size:110px;font-weight:700;pointer-events:none}.course-card:hover{border-color:#bcaed1;box-shadow:var(--shadow)}.course-code{color:#fff;background:var(--brand);border-radius:50%;box-shadow:0 8px 20px #51308c33}.course-card h3,.evaluation-card h3,.student-task h3{color:#2b1948}.evaluation-card{border-radius:3px 17px 17px}.evaluation-card:hover{border-color:#bbaed0;box-shadow:0 12px 32px #2f1b5c12}.empty-state{border-color:#cfc5df;border-radius:3px 20px 20px;background:#ffffff8c}.empty-state>span{color:var(--brand);background:#eee9f7;border-radius:50%}.field{color:#443854}.field input,.field select,.field textarea,.rating-question textarea{border-color:#dcd5e8;border-radius:3px 12px 12px;background:#fbfafd}.field input:focus,.field select:focus,.field textarea:focus,.rating-question textarea:focus{border-color:var(--brand-light);box-shadow:0 0 0 3px #51308c1c}.modal-scrim{background:#1f0f38a1}.modal{border-radius:5px 25px 25px;box-shadow:0 34px 90px #190a324d}.choice-card{border-radius:3px 13px 13px}.choice-card.selected{border-color:var(--brand-light);background:#f1ecf9}.check-box{border-color:#c9bfd8;border-radius:4px}.choice-card.selected .check-box{background:var(--brand);border-color:var(--brand)}.toggle-row>button.checked{background:var(--brand)}.info-card{color:#514069;background:#f1ecf9;border-radius:3px 13px 13px}.info-card>svg{color:var(--brand)}.details-panel>.panel-title,.table-panel>.panel-title{padding-top:24px}.tabs button.active{color:var(--brand);border-bottom-color:var(--accent)}.table-wrap th{color:#766a84;background:#f7f4fb}.table-wrap td{color:#5f576a;border-color:#eeebf2}.stepper button{border-radius:3px 12px 12px}.stepper button.active{color:var(--brand);background:#eee9f7}.stepper button.active>span{background:var(--brand);border-color:var(--brand)}.stepper button.done>span{color:var(--brand);border-color:#a99ac2}.publish-card{background:var(--brand-dark);border-radius:4px 20px 20px}.publish-icon{color:#80e3d5}.publish-card p{color:#c5bad8}.publish-card .button{color:#25143f;background:#8ae4d7}.security-banner{color:#44365a;background:#f1ecf9;border-color:#d9cfe9;border-radius:3px 15px 15px}.security-banner>svg{color:var(--brand)}.setup-guide li>span{color:#fff;background:var(--brand);border-radius:50%}.student-intro{background:var(--brand);border-radius:4px 24px 24px;box-shadow:0 20px 45px #341c642e}.student-intro>div:first-child>svg,.privacy-chip svg{color:#79dfd1}.student-intro p{color:#d5cbe7}.privacy-chip{border-color:#fff3;color:#e3daef}.student-task{border-radius:3px 18px 18px}.student-task:hover{border-color:#bbaed0;box-shadow:var(--shadow)}.task-date{color:var(--brand);background:#eee9f7;border-radius:3px 14px 14px}.member-nav{border-radius:3px 16px 16px}.progress-track i,.rating-scale button.selected{background:var(--brand)}.member-nav>button{border-radius:3px 10px 10px}.member-nav>button.active{background:#eee9f7}.question-number{color:#fff;background:var(--brand);border-radius:50%}.rating-scale button{border-color:#d9d1e5;border-radius:3px 10px 10px}.rating-scale button:hover{border-color:var(--brand-light)}.rating-scale button.selected{border-color:var(--brand);box-shadow:0 6px 15px #51308c38}.toast{border-color:#d8d0e5;border-radius:3px 13px 13px;box-shadow:0 16px 45px #2f1b5c2e}.toast.success svg{color:var(--accent)}.full-loader{background:#f7f5fb}.full-loader>svg{color:var(--brand)}.operations-grid{display:grid;grid-template-columns:1.15fr .85fr;gap:16px;margin-bottom:16px}.audit-panel{margin-top:0}.operations-signal{background:var(--brand-dark)}@media(max-width:1120px){.signal-strip{padding-right:170px}.operations-grid{grid-template-columns:1fr}}@media(max-width:900px){.public-nav-note{display:none}.welcome:before{width:360px;height:360px;right:-250px;top:-180px}.hero{padding-top:48px}.hero h1{font-size:clamp(51px,14vw,72px);letter-spacing:-3.4px}.evidence-stage{min-height:230px;width:100%}.evidence-sheet{left:5px;right:20px}.approval-seal{right:-5px}.sidebar{width:min(300px,88vw)}.app-main{width:100%;margin-left:0}.mobile-header{background:#f8f6fbf2;border-color:#ded8e8}.mobile-tabs{border-color:#ded8e8;background:#fbf9fdf7}.mobile-tabs a.active{color:var(--brand)}.page{padding-top:30px}.page-header{padding-bottom:22px}.title-row h1{font-size:39px;letter-spacing:-1.7px}.signal-strip{min-height:194px;padding:25px 125px 25px 22px;grid-template-columns:1fr;gap:16px}.signal-strip>div:not(.signal-mark)+div:not(.signal-mark){padding:16px 0 0;border-left:0;border-top:1px solid rgba(255,255,255,.16)}.signal-mark{right:18px;top:46px;width:88px;height:88px}.panel,.course-card,.evaluation-card,.student-task{border-radius:3px 16px 16px}.attention-panel{order:initial}.operations-grid{display:block}.operations-grid>.panel+.panel{margin-top:14px}}@media(max-width:520px){.public-nav .text-link{display:none}.hero h1{font-size:50px}.hero-lede{font-size:15px}.hero-proof{align-items:flex-start;flex-direction:column}.evidence-stage{min-height:222px}.evidence-sheet{padding:19px 17px}.approval-seal{width:92px;height:92px}.evidence-quote{font-size:13px}.login-card{border-radius:22px 4px 22px 22px}.title-row h1{font-size:35px}.signal-strip{padding-right:22px;padding-bottom:116px}.signal-mark{left:22px;right:auto;top:auto;bottom:17px;width:82px;height:82px}.stats-grid,.stats-grid.compact{grid-template-columns:1fr}.stat-card{min-height:86px}.stat-card>div:last-child{display:grid}}.dashboard-page .page-header{margin-bottom:24px;padding-bottom:22px}.dashboard-page .title-row h1{font-size:clamp(34px,3vw,48px)}.dashboard-command-grid{align-items:stretch}.dashboard-action-panel,.dashboard-deadlines{padding:22px}.dashboard-action-list,.deadline-list{margin:0 -8px -7px}.dashboard-action-row,.deadline-row{min-width:0;display:flex;align-items:center;gap:12px;padding:12px 8px;border-bottom:1px solid #f0edf5;color:var(--ink)}.dashboard-action-row:last-child,.deadline-row:last-child{border-bottom:0}.dashboard-action-row:hover,.deadline-row:hover{background:#faf8fd}.dashboard-action-row>svg,.deadline-row>svg:last-child{width:16px;flex:0 0 auto;color:#9b90aa}.dashboard-action-row .status-icon{flex:0 0 38px}.dashboard-action-row .status-icon svg{width:17px}.dashboard-action-row strong,.dashboard-action-row small,.dashboard-action-label,.deadline-row strong,.deadline-row small{display:block}.dashboard-action-label{margin-bottom:3px;color:var(--brand);font-size:9px;font-weight:800;letter-spacing:.5px;text-transform:uppercase}.dashboard-action-row strong{font-size:13px}.evaluation-course-code{display:inline-flex;margin-right:7px;padding:3px 6px;color:var(--brand);background:#f0eafa;border-radius:5px;font-size:9px;font-weight:900;letter-spacing:.25px;vertical-align:1px}.evaluation-card h3 .evaluation-course-code{vertical-align:2px}.semester-pulse{margin:18px 0;padding:22px;overflow:hidden}.semester-pulse-head{display:flex;align-items:flex-end;justify-content:space-between;gap:24px}.semester-pulse-head h2{margin:3px 0 2px;font-size:20px}.semester-pulse-head p{margin:0;color:var(--muted);font-size:11px}.semester-course-select{width:min(360px,42%);flex:0 0 auto}.semester-course-select>span{display:block;margin-bottom:5px;color:var(--muted);font-size:9px;font-weight:800;letter-spacing:.5px;text-transform:uppercase}.semester-course-select select{width:100%;min-height:42px;padding:0 35px 0 12px;color:var(--ink);background:#faf8fd;border:1px solid #ddd5e8;border-radius:3px 11px 11px;font-size:11px;font-weight:750}.semester-position{display:flex;align-items:end;justify-content:space-between;gap:20px;margin-top:20px}.semester-position>div strong,.semester-position>div span{display:block}.semester-position>div strong{font-family:var(--display);font-size:18px}.semester-position>div span,.semester-position>span{color:var(--muted);font-size:9px}.semester-position>span{font-weight:800}.semester-progress-track{height:7px;display:block;margin-top:8px;overflow:hidden;background:#eee9f5;border-radius:10px}.semester-progress-track i{height:100%;display:block;background:linear-gradient(90deg,var(--brand),var(--accent));border-radius:inherit}.semester-metrics{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;margin-top:16px}.semester-metric{min-width:0;padding:13px 15px;background:#faf8fd;border:1px solid #eee9f4;border-radius:3px 12px 12px}.semester-metric.featured{background:#f0faf8;border-color:#cdebe5}.semester-metric span,.semester-metric strong,.semester-metric small{display:block}.semester-metric span{color:var(--muted);font-size:9px;font-weight:800;text-transform:uppercase}.semester-metric strong{margin-top:5px;font-family:var(--display);font-size:19px}.semester-metric small{margin-top:3px;color:var(--muted);font-size:9px}.semester-chart-scroll{margin-top:19px;overflow-x:auto;padding-bottom:3px}.semester-week-chart{min-width:690px;height:145px;display:grid;grid-template-columns:repeat(var(--semester-weeks,16),minmax(36px,1fr));grid-auto-columns:minmax(36px,1fr);grid-auto-flow:column;gap:6px;align-items:end;padding:0 3px;border-bottom:1px solid #e8e2ef}.semester-week{height:100%;min-width:0;display:grid;grid-template-rows:18px 1fr 16px 15px;align-items:end;text-align:center}.semester-week-value{color:#6f637e;font-size:8px;font-weight:800}.semester-week-bar{height:82px;display:flex;align-items:end;justify-content:center;padding:0 5px}.semester-week-bar i{width:100%;display:block;background:#a99ac3;border-radius:5px 5px 1px 1px;transition:height .2s ease}.semester-week.current{margin:0 -1px;background:#f5f0fc;border-radius:8px 8px 0 0}.semester-week.current .semester-week-bar i{background:var(--brand);box-shadow:0 4px 12px #51308c33}.semester-week.upcoming .semester-week-bar i{background:#ddd6e7}.semester-week strong{font-size:9px}.semester-week.current strong{color:var(--brand)}.semester-week small{color:var(--muted);font-size:7px;white-space:nowrap}.semester-legend{display:flex;justify-content:flex-end;flex-wrap:wrap;gap:12px;margin-top:10px;color:var(--muted);font-size:8px}.semester-legend span{display:inline-flex;align-items:center;gap:5px}.semester-legend i{width:7px;height:7px;background:#a99ac3;border-radius:2px}.semester-legend i.current{background:var(--brand)}.semester-legend i.upcoming{background:#ddd6e7}.dashboard-action-row small{margin-top:3px;color:var(--muted);font-size:10px;line-height:1.4}.deadline-row>svg:first-child{width:19px;flex:0 0 auto;color:var(--brand)}.deadline-row strong{font-size:12px}.deadline-row small{margin-top:4px;color:var(--muted);font-size:10px;line-height:1.35}.dashboard-quick-section{margin-top:18px}.dashboard-course-section{margin-top:18px;padding:22px;background:#fff;border:1px solid #e2ddec;border-radius:3px 20px 20px;box-shadow:0 9px 30px #2f1b5c0b}.dashboard-course-section>.panel-title{min-height:0}.course-progress-list{margin:0 -8px -8px}.course-progress-row{min-width:0;display:grid;grid-template-columns:minmax(220px,.8fr) minmax(300px,1.2fr);gap:24px;align-items:center;padding:15px 8px;border-bottom:1px solid #f0edf5}.course-progress-row:last-child{border-bottom:0}.course-progress-course,.course-progress-evaluation{min-width:0}.course-progress-course>a>strong{display:block;color:var(--ink);font-size:13px;overflow-wrap:anywhere}.course-progress-metrics{display:flex;flex-wrap:wrap;gap:7px 14px;margin-top:8px;color:var(--muted);font-size:9px}.course-progress-metrics span{display:inline-flex;align-items:center;gap:4px}.course-progress-metrics svg{width:12px}.course-progress-evaluation{display:block;padding:11px 13px;color:var(--ink);background:#f8f5fc;border-radius:3px 12px 12px}.course-progress-evaluation:hover{background:#f2edf9}.course-progress-title{display:flex;align-items:center;justify-content:space-between;gap:12px}.course-progress-title>strong{min-width:0;font-size:11px;overflow-wrap:anywhere}.course-progress-title .status{flex:0 0 auto}.course-progress-count{display:block;margin-top:7px;color:var(--muted);font-size:9px}.course-progress-count strong{color:var(--ink)}.progress-bar{height:6px;display:block;margin-top:8px;overflow:hidden;background:#e2dbea;border-radius:10px}.progress-bar i{height:100%;display:block;background:var(--accent);border-radius:inherit}.course-progress-empty{display:flex;align-items:center;justify-content:space-between;gap:12px;color:var(--muted);font-size:10px}.course-progress-empty a{display:inline-flex;align-items:center;gap:5px;color:var(--brand);font-weight:800}.course-progress-empty svg{width:14px}.dashboard-quick-section>.panel-title{min-height:0;margin-bottom:12px;padding-inline:2px}.dashboard-quick-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px}.dashboard-quick-link{min-width:0;min-height:92px;display:flex;align-items:center;gap:12px;padding:16px;color:var(--ink);background:#fff;border:1px solid #e2ddec;border-radius:3px 15px 15px;box-shadow:0 7px 22px #2f1b5c09}.dashboard-quick-link:hover{border-color:#bcaed1;box-shadow:0 12px 28px #2f1b5c14;transform:translateY(-1px)}.dashboard-quick-link>svg:first-child{width:22px;flex:0 0 auto;color:var(--brand)}.dashboard-quick-link>svg:last-child{width:15px;flex:0 0 auto;margin-left:auto;color:#9b90aa}.dashboard-quick-link span{min-width:0}.dashboard-quick-link strong,.dashboard-quick-link small{display:block}.dashboard-quick-link strong{font-size:12px}.dashboard-quick-link small{margin-top:5px;color:var(--muted);font-size:9px;line-height:1.4}@media(max-width:1120px){.dashboard-quick-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:900px){html,body,#root,.app-shell,.app-main{max-width:100%}.page{overflow-x:clip}.dashboard-grid{grid-template-columns:minmax(0,1fr)}.dashboard-grid>*{min-width:0;width:100%}.title-row>div,.page-actions,.panel-title>div,.modal-head>div,.rating-question>.grow{min-width:0}.title-row>div{width:100%}.title-row h1,.title-row p,.panel-title h2,.panel-title p,.rating-question h3,.student-task h3,.evaluation-card h3{overflow-wrap:anywhere}.page-actions .button{min-width:min(140px,100%);white-space:normal;text-align:center}.activity-row{align-items:flex-start;flex-wrap:wrap}.activity-row .status{display:inline-flex;margin-left:48px}.stepper button{min-width:0;flex-direction:column;gap:5px;text-align:center}.stepper button>div{display:block;min-width:0}.stepper button strong{line-height:1.2;overflow-wrap:anywhere}.stepper button small{display:none}.name-template-input{align-items:stretch;flex-direction:column}.name-template-input input,.custom-date input,.inline-inputs input{min-width:0;max-width:none}.name-template-input .button{width:100%}.group-selection-actions{justify-content:stretch}.group-selection-actions .button{flex:1;min-width:0;white-space:normal}.inline-inputs{flex-wrap:wrap}.builder-start-grid{grid-template-columns:1fr}.import-evaluation-row,.evidence-ai{align-items:stretch;flex-direction:column}.builder-question{grid-template-columns:25px 1fr 1fr 32px}.builder-question textarea{grid-column:2 / -1}.builder-question label{grid-column:2 / 4}.evidence-ai-actions,.evidence-group-head{flex-wrap:wrap}.evidence-group-head .grow{flex-basis:calc(100% - 85px)}.timeline-students>div{grid-template-columns:1fr;gap:6px}.student-task{flex-wrap:wrap}.student-task>.button{display:inline-flex;width:100%}.reminder-row{align-items:flex-start;flex-wrap:wrap}.reminder-label{display:inline-flex;margin-left:19px}.question-number{flex:0 0 25px}.rating-scale{grid-template-columns:repeat(auto-fit,minmax(38px,1fr))}.scale-labels{width:100%;max-width:none}.rating-actions{position:static;flex-wrap:wrap}.rating-actions .button{min-width:min(125px,100%);white-space:normal;text-align:center}.table-wrap td{align-items:flex-start;overflow-wrap:anywhere}.security-banner>div,.connection-card>.grow,.student-context-copy,.reminder-row .grow{min-width:0}.dashboard-page .page-header{margin-bottom:18px}.dashboard-action-panel,.dashboard-deadlines,.semester-pulse{padding:17px}.semester-pulse-head{align-items:stretch;flex-direction:column;gap:14px}.semester-course-select{width:100%}.dashboard-action-row{align-items:flex-start}.dashboard-course-section{padding:17px}.course-progress-row{grid-template-columns:1fr;gap:12px}.schedule-window-grid{grid-template-columns:minmax(0,1fr)}.schedule-window-arrow{justify-self:center;transform:rotate(90deg)}.schedule-window-card{width:100%}.auth-react-wrap{grid-template-columns:1fr;width:min(680px,calc(100% - 28px));padding-top:20px;gap:25px}.auth-react-intro{padding-top:0}.auth-react-intro h1{font-size:42px}}@media(max-width:400px){.page{padding-inline:12px}.mobile-header{padding-inline:10px}.page-actions,.modal-actions,.rating-actions{flex-direction:column;align-items:stretch}.page-actions .button,.modal-actions .button,.rating-actions .button{width:100%}.detail-title{grid-template-columns:1fr}.mini-actions{flex-wrap:wrap}.mini-actions button,.mini-actions a{min-height:42px;flex-basis:100%}.dashboard-quick-grid,.semester-metrics{grid-template-columns:1fr}.semester-position{align-items:flex-start;flex-direction:column;gap:6px}.auth-role-tabs{grid-template-columns:1fr}.auth-react-card{padding:18px 14px}.auth-react-intro h1{font-size:36px}.auth-mode-panel .form-row{grid-template-columns:1fr}}
