:root{color:#0a3857;font-synthesis:none;--blue-900:#003f67;--blue-800:#004f7e;--blue-700:#00649a;--blue-600:#087aad;--blue-100:#dff1fb;--blue-50:#eff8fd;--ink:#0a3857;--muted:#687f90;--border:#dbe5eb;--surface:#fff;--canvas:#f4f7f9;--green:#16875f;--green-bg:#e9f7f0;--amber:#b8780c;--amber-bg:#fff5dc;--shadow:0 8px 28px #003c6012;--radius:14px;background:#f4f7f9;font-family:Segoe UI,Tahoma,Arial,sans-serif}*{box-sizing:border-box}body{background:var(--canvas);min-width:320px;min-height:100vh;margin:0}button,input,select,textarea{font:inherit}button{color:inherit}button,select{cursor:pointer}button:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible{outline-offset:2px;outline:3px solid #087aad38}h1,h2,h3,p{margin-top:0}.stack-lg{gap:26px;display:grid}.app-shell{min-height:100vh;padding-top:78px;padding-right:244px}.topbar{z-index:40;border-bottom:1px solid var(--border);background:#fff;align-items:center;gap:32px;height:78px;padding:0 28px;display:flex;position:fixed;inset:0 0 auto}.brand{align-items:center;gap:13px;min-width:242px;display:flex}.brand__college-logo{flex:none;width:132px;height:47px;display:block;position:relative}.brand__logo{object-fit:contain;object-position:center;width:100%;height:100%;position:absolute;inset:0}.brand__logo--inverse{display:none}.brand__platform{border-right:1px solid var(--border);min-width:0;padding-right:13px;line-height:1.25;display:grid}.brand__platform strong{color:var(--blue-800);letter-spacing:-.3px;white-space:nowrap;font-size:16px}.brand--compact{min-width:auto}.brand--compact .brand__college-logo{width:110px;height:39px}.search-box{background:var(--canvas);width:min(360px,30vw);height:42px;color:var(--muted);border:1px solid #0000;border-radius:10px;align-items:center;gap:10px;padding:0 13px;display:flex;position:relative}.search-results{top:calc(100% + 8px);z-index:60;border:1px solid var(--border);box-shadow:var(--shadow);background:#fff;border-radius:10px;padding:7px;display:grid;position:absolute;inset-inline:0}.search-results button{text-align:right;background:0 0;border:0;border-radius:7px;gap:3px;padding:10px;display:grid}.search-results button:hover{background:var(--blue-50)}.search-results button small,.search-results>span{color:var(--muted);font-size:10px}.search-results>span{text-align:center;padding:12px}.search-box:focus-within{border-color:var(--blue-600);background:#fff}.search-box input{width:100%;color:var(--ink);background:0 0;border:0;outline:0;font-size:13px}.topbar__actions{align-items:center;gap:14px;margin-right:auto;display:flex}.icon-button{background:0 0;border:0;border-radius:9px;place-items:center;width:40px;height:40px;display:grid}.icon-button:hover{background:var(--blue-50)}.notification-button{position:relative}.notification-button span{background:#e34d59;border:2px solid #fff;border-radius:50%;width:7px;height:7px;position:absolute;top:7px;right:8px}.role-switcher{border:1px solid var(--border);height:40px;color:var(--muted);border-radius:9px;align-items:center;gap:8px;padding:0 12px;font-size:12px;display:flex;position:relative}.role-switcher select{appearance:none;color:var(--ink);background:0 0;border:0;outline:0;padding-left:18px;font-weight:700}.role-switcher svg{position:absolute;left:9px}.profile{border:0;border-right:1px solid var(--border);color:inherit;text-align:right;background:0 0;border-radius:9px;align-items:center;gap:9px;padding:4px 14px 4px 5px;display:flex}.profile:hover{background:var(--blue-50)}.profile>span:last-child{display:grid}.profile strong{font-size:12px}.profile small{color:var(--muted);margin-top:3px;font-size:10px}.avatar{background:var(--blue-700);color:#fff;border-radius:50%;place-items:center;width:38px;height:38px;font-weight:800;display:grid}.menu-button{display:none}.logout-button{color:#6b8291}.logout-button:hover{color:#a7343f;background:#fff0f1}.app-loading{min-height:100vh;color:var(--muted);place-content:center;justify-items:center;gap:12px;display:grid}.loading-mark{color:#fff;background:var(--blue-700);border-radius:13px;place-items:center;width:56px;height:56px;font-weight:800;animation:1.3s ease-in-out infinite loading-pulse;display:grid}@keyframes loading-pulse{50%{opacity:.78;transform:scale(.94)}}.login-page{background:#fff;grid-template-columns:minmax(360px,.82fr) minmax(470px,1.18fr);min-height:100vh;display:grid}.login-brand-panel{background:var(--blue-700);color:#fff;flex-direction:column;justify-content:space-between;padding:clamp(38px,6vw,84px);display:flex;position:relative;overflow:hidden}.login-brand-panel:after{content:"";border:1px solid #ffffff1f;border-radius:42% 58% 45% 55%;width:580px;height:580px;position:absolute;bottom:-220px;left:-310px;transform:rotate(24deg)}.login-brand-panel .brand{flex-direction:column;align-items:flex-start;gap:14px}.login-brand-panel .brand__college-logo{width:min(290px,100%);height:100px}.login-brand-panel .brand__logo--default{display:none}.login-brand-panel .brand__logo--inverse{display:block}.login-brand-panel .brand__platform{border:0;padding:0}.login-brand-panel .brand__platform strong{color:#fff;font-size:21px}.login-brand-panel>small{color:#cce5f1}.login-brand-panel--minimal{grid-template-rows:120px minmax(0,1fr) auto minmax(0,1fr);grid-template-columns:minmax(0,1fr);place-items:stretch center;gap:24px;display:grid}.login-brand-panel--minimal .brand{display:contents}.login-brand-panel--minimal .brand__college-logo{z-index:1;grid-row:1;align-self:start;width:100%;height:120px;position:relative}.login-brand-panel--minimal .brand__platform{z-index:1;text-align:center;grid-row:2;align-self:center;place-items:center;width:100%;padding:0;display:grid;position:relative}.login-brand-panel--minimal .brand__platform strong{letter-spacing:-.8px;font-size:clamp(32px,3vw,46px)}.login-brand-panel>.registration-review-window{z-index:1;color:#d8edf6;text-align:center;text-wrap:balance;grid-row:3;align-self:start;width:100%;margin:0;font-size:14px;line-height:1.9;position:relative}.login-brand-panel:not(.login-brand-panel--minimal)>div:nth-child(2){z-index:1;max-width:560px;position:relative}.login-brand-panel h1{letter-spacing:-1.5px;font-size:clamp(34px,4vw,56px);line-height:1.35}.login-brand-panel p{color:#d8edf6;max-width:490px;line-height:1.9}.login-brand-panel>small{z-index:1;max-width:410px;line-height:1.8;position:relative}.login-form-panel{background:#fff;place-items:center;padding:34px;display:grid}.login-form{gap:20px;width:min(420px,100%);display:grid}.login-form header{margin-bottom:9px}.login-form h2{margin-bottom:8px;font-size:31px}.login-form header p,.login-help{color:var(--muted);font-size:12px;line-height:1.7}.login-form label,.password-card label{color:#496678;gap:8px;font-size:12px;font-weight:750;display:grid}.auth-input{border:1px solid var(--border);border-radius:10px;align-items:center;gap:10px;height:49px;padding:0 13px;display:flex}.auth-input:focus-within{border-color:var(--blue-600);box-shadow:0 0 0 3px #087aad1a}.auth-input>svg{width:18px;color:var(--muted)}.auth-input input{min-width:0;height:100%;color:var(--ink);border:0;outline:0;flex:1}.auth-input button{color:var(--muted);background:0 0;border:0;place-items:center;display:grid}.auth-input button svg{width:18px}.login-submit{width:100%;min-height:49px;margin-top:4px}.auth-error{color:#9b2f39;background:#fff0f1;border:1px solid #f1c8cc;border-radius:9px;padding:12px 14px;font-size:12px;line-height:1.6}.auth-success{color:var(--green);background:var(--green-bg);border:1px solid #bfe4d3;border-radius:9px;padding:12px 14px;font-size:12px;line-height:1.6}.login-help{text-align:center}.auth-divider{color:#92a4af;align-items:center;gap:12px;font-size:10px;display:flex}.auth-divider:before,.auth-divider:after{content:"";background:var(--border);flex:1;height:1px}.login-register{gap:8px;width:100%;min-height:47px}.login-register svg{width:17px}.auth-text-button{color:var(--blue-700);background:0 0;border:0;justify-self:center;padding:6px;font-size:11px;font-weight:750}.auth-text-button:hover{text-decoration:underline}.inline-link{color:var(--blue-700);font:inherit;background:0 0;border:0;padding:0;font-weight:750;text-decoration:underline;display:inline}.privacy-page{background:#f4f8fa;min-height:100vh;padding:28px}.privacy-page>header{justify-content:space-between;align-items:center;gap:20px;max-width:980px;margin:0 auto 20px;display:flex}.privacy-page>article{border:1px solid var(--border);background:#fff;border-radius:18px;max-width:900px;margin:auto;padding:clamp(24px,5vw,54px);box-shadow:0 20px 50px #00304b14}.privacy-page h1{color:var(--blue-900);margin:12px 0;font-size:clamp(28px,4vw,42px)}.privacy-page h2{margin:0 0 6px;font-size:17px}.privacy-page p{color:#496678;line-height:1.9}.privacy-page section{background:var(--blue-50);border-radius:12px;grid-template-columns:42px 1fr;gap:14px;margin:22px 0;padding:18px;display:grid}.privacy-page section>svg{color:var(--blue-700)}.privacy-page section p{margin:0}.privacy-page a{color:var(--blue-700);font-weight:750}.privacy-eyebrow{color:var(--blue-700);align-items:center;gap:7px;font-weight:800;display:inline-flex}.privacy-page article>small{color:var(--muted);margin-top:28px;display:block}.settings-support{padding:20px 22px}.settings-support h2,.settings-support p{margin:0 0 8px}.settings-support p{color:var(--muted)}.settings-support div{gap:16px;display:flex}.settings-support a{color:var(--blue-700);font-weight:750}.registration-brand-panel h1{font-size:clamp(31px,3.5vw,50px)}.registration-eyebrow{color:#e4f5fc;border:1px solid #ffffff40;border-radius:999px;align-items:center;gap:7px;width:fit-content;margin-bottom:20px;padding:7px 11px;font-size:10px;font-weight:800;display:inline-flex}.registration-eyebrow svg{width:15px}.registration-form-panel{align-items:start;overflow-y:auto}.registration-form{gap:18px;width:min(720px,100%);margin-block:auto;padding-block:18px;display:grid}.registration-form header h2{margin:6px 0;font-size:28px}.registration-form header p{color:var(--muted);margin:0;font-size:12px}.registration-step{color:var(--blue-700);font-size:10px;font-weight:850}.registration-fields,.registration-review-fields{grid-template-columns:1fr 1fr;gap:15px;display:grid}.registration-fields label,.registration-review-fields label,.registration-decision-panel label{color:#496678;gap:7px;min-width:0;font-size:11px;font-weight:750;display:grid}.field-label{display:inline}.field-label small{color:var(--muted);margin-inline-start:4px;font-size:.86em;font-weight:500}.registration-fields input,.registration-review-fields input,.registration-decision-panel textarea{border:1px solid var(--border);width:100%;height:45px;color:var(--ink);background:#fff;border-radius:9px;outline:0;padding:0 11px}.registration-fields input:focus,.registration-review-fields input:focus,.registration-decision-panel textarea:focus{border-color:var(--blue-600);box-shadow:0 0 0 3px #087aad17}.registration-password{border:1px solid var(--border);border-radius:9px;height:45px;display:flex;overflow:hidden}.registration-password:focus-within{border-color:var(--blue-600);box-shadow:0 0 0 3px #087aad17}.registration-password input{border:0;height:100%;box-shadow:none!important}.registration-password button{width:42px;color:var(--muted);background:0 0;border:0;flex:none;place-items:center;display:grid}.registration-password button svg{width:17px}.registration-password-hint{color:var(--muted);align-items:center;gap:7px;margin:0;font-size:10px;display:flex}.registration-password-hint svg{width:15px;color:var(--blue-600)}.registration-consent{background:var(--blue-50);color:#496678;border-radius:9px;grid-template-columns:auto 1fr;align-items:start;padding:12px 13px;line-height:1.7;gap:9px!important;font-size:10px!important;font-weight:600!important;display:flex!important}.registration-consent input{width:16px;height:16px;margin-top:2px}.registration-submit{gap:8px;min-height:49px}.registration-submit svg{width:18px}.registration-loading{text-align:center;color:var(--muted);border:1px dashed var(--border);border-radius:11px;padding:30px}.public-auth-page--compact .registration-form-panel{place-items:center}.registration-status-card{text-align:center;width:min(560px,100%)}.registration-status-icon{background:var(--amber-bg);width:76px;height:76px;color:var(--amber);border-radius:24px;place-items:center;margin:0 auto 20px;display:grid}.registration-status-icon svg{width:35px;height:35px}.registration-status-icon--approved{background:var(--green-bg);color:var(--green)}.registration-status-icon--rejected{color:#a7343f;background:#fff0f1}.registration-status-icon--changes{background:var(--blue-50);color:var(--blue-700)}.registration-status-card h2{margin:6px 0 10px;font-size:27px}.registration-status-card>p:not(.registration-step){color:var(--muted);font-size:12px;line-height:1.8}.registration-status-details{text-align:right;border:1px solid var(--border);border-radius:12px;margin:25px 0;overflow:hidden}.registration-status-details>div{border-bottom:1px solid var(--border);gap:5px;padding:13px 15px;display:grid}.registration-status-details>div:last-child{border-bottom:0}.registration-status-details dt{color:var(--muted);font-size:9px}.registration-status-details dd{margin:0;font-size:11px;font-weight:750}.registration-status-details .registration-decision-note{background:#fff9e9}.registration-status-actions{gap:10px;display:grid}.password-page{background:var(--canvas);place-items:center;min-height:100vh;padding:25px;display:grid}.password-card{border:1px solid var(--border);width:min(520px,100%);box-shadow:var(--shadow);background:#fff;border-radius:16px;padding:clamp(25px,5vw,42px)}.password-card h1{margin-top:32px;font-size:26px}.password-card>p{color:var(--muted);font-size:13px;line-height:1.8}.password-card form{gap:16px;margin-top:25px;display:grid}.password-card input{border:1px solid var(--border);border-radius:9px;height:46px;padding:0 12px}.password-card form>small{color:var(--muted);line-height:1.7}.settings-page{max-width:1080px}.settings-layout{grid-template-columns:300px minmax(0,1fr);align-items:start;gap:20px;display:grid}.account-card{text-align:center}.account-card__avatar{color:#fff;background:linear-gradient(145deg, var(--blue-600), var(--blue-900));border-radius:22px;place-items:center;width:74px;height:74px;margin:3px auto 14px;font-size:26px;font-weight:800;display:grid;box-shadow:0 10px 25px #00649a2e}.account-card h2{margin:0 0 9px}.account-card dl{text-align:right;margin:24px 0 0;display:grid}.account-card dl>div{border-top:1px solid var(--border);gap:7px;padding:14px 0;display:grid}.account-card dt{color:var(--muted);align-items:center;gap:7px;font-size:10px;display:flex}.account-card dt svg{width:15px;height:15px;color:var(--blue-600)}.account-card dd{overflow-wrap:anywhere;color:var(--ink);margin:0;font-size:12px;font-weight:700}.security-card{padding:28px}.security-card>header{border-bottom:1px solid var(--border);align-items:center;gap:13px;padding-bottom:20px;display:flex}.security-card>header>span{width:48px;height:48px;color:var(--blue-700);background:var(--blue-50);border-radius:12px;flex:none;place-items:center;display:grid}.security-card>header svg{width:24px;height:24px}.security-card>header h2{margin:0 0 5px}.security-card>header p{color:var(--muted);margin:0;font-size:11px;line-height:1.7}.password-change-form{gap:16px;max-width:590px;margin-top:23px;display:grid}.password-change-form>label{color:#496678;gap:8px;font-size:11px;font-weight:750;display:grid}.password-input{border:1px solid var(--border);background:#fff;border-radius:9px;align-items:center;gap:9px;min-height:47px;padding:0 12px;transition:border-color .18s,box-shadow .18s;display:flex}.password-input:focus-within{border-color:var(--blue-600);box-shadow:0 0 0 3px #087aad1a}.password-input>svg{width:17px;color:var(--muted)}.password-input input,.password-card .password-input input{min-width:0;height:45px;color:var(--ink);background:0 0;border:0;outline:0;flex:1;padding:0}.password-input button{width:34px;height:34px;color:var(--muted);background:0 0;border:0;border-radius:7px;flex:none;place-items:center;display:grid}.password-input button:hover{color:var(--blue-700);background:var(--blue-50)}.password-input button svg{width:17px}.password-policy{color:#426477;background:var(--blue-50);border-radius:9px;align-items:flex-start;gap:10px;padding:12px 13px;display:flex}.password-policy>svg{width:18px;color:var(--blue-700);flex:none}.password-policy p{gap:3px;margin:0;font-size:10px;line-height:1.65;display:grid}.password-policy strong{color:var(--blue-800)}.password-change-submit{justify-self:start;min-width:180px}.security-session-note{border-top:1px solid var(--border);max-width:590px;color:var(--muted);margin:18px 0 0;padding-top:16px;font-size:10px;line-height:1.7}.sidebar{z-index:30;border-left:1px solid var(--border);background:#fff;flex-direction:column;width:244px;padding:26px 16px 18px;display:flex;position:fixed;top:78px;bottom:0;right:0}.sidebar nav{gap:7px;display:grid}.sidebar nav a{text-align:right;color:#456276;background:0 0;border:0;border-radius:10px;align-items:center;gap:14px;min-height:48px;padding:0 16px;font-size:14px;font-weight:650;text-decoration:none;display:flex;position:relative}.sidebar nav a:hover{color:var(--blue-700);background:var(--blue-50)}.sidebar nav a.active{color:var(--blue-700);background:var(--blue-100)}.sidebar nav a.active:after{content:"";background:var(--blue-700);border-radius:4px 0 0 4px;width:4px;height:27px;position:absolute;right:-16px}.sidebar__support{background:var(--blue-900);color:#fff;border-radius:13px;gap:11px;margin-top:auto;padding:17px;display:grid}.sidebar__support div{gap:5px;display:grid}.sidebar__support strong{font-size:13px}.sidebar__support small{color:#c8e2ef;font-size:11px;line-height:1.6}.sidebar__support button{color:#fff;background:0 0;border:1px solid #ffffff4d;border-radius:7px;min-height:35px;font-size:11px;font-weight:700}.sidebar__mobile-brand,.sidebar-backdrop{display:none}.app-content{max-width:1540px;margin:auto;padding:34px clamp(24px,3.5vw,56px) 56px}.welcome-band{color:#fff;background:var(--blue-700);border-radius:var(--radius);justify-content:space-between;align-items:center;min-height:166px;padding:32px 38px;display:flex;position:relative;overflow:hidden}.welcome-band:after{content:"";border:1px solid #ffffff17;border-radius:45% 55% 48% 52%;width:420px;height:420px;position:absolute;inset:-80% auto auto -8%;transform:rotate(23deg)}.welcome-band h1{letter-spacing:-.7px;margin-bottom:9px;font-size:clamp(27px,3vw,38px)}.welcome-band p{color:#d6edf7;margin:0;font-size:15px}.welcome-band__art{opacity:.78;direction:ltr;gap:0;margin-left:5vw;display:flex}.welcome-band__art svg{stroke-width:1.2px;width:70px;height:70px}.welcome-band__art svg+svg{margin-top:27px;margin-left:-16px}.dashboard-grid{grid-template-columns:minmax(0,1fr) 300px;gap:28px;display:grid}.page-heading{justify-content:space-between;align-items:flex-end;gap:20px;margin-bottom:15px;display:flex}.page-heading h1,.page-heading h2{color:var(--ink);letter-spacing:-.5px;margin:0 0 6px;font-size:clamp(23px,2.5vw,31px)}.page-heading p{color:var(--muted);margin:0;font-size:13px}.text-button{color:var(--blue-700);background:0 0;border:0;align-items:center;gap:6px;padding:8px 0;font-size:12px;font-weight:700;display:flex}.course-list{gap:11px;display:grid}.course-row{border:1px solid var(--border);text-align:right;background:#fff;border-radius:12px;align-items:center;gap:15px;width:100%;min-height:92px;padding:18px;transition:transform .2s,border-color .2s;display:flex;box-shadow:0 2px 4px #00325005}.course-row:hover{border-color:#9bc9df;transform:translateY(-2px)}.course-icon{background:var(--blue-50);width:49px;height:49px;color:var(--blue-700);border-radius:10px;flex:none;place-items:center;display:grid}.course-row__details{gap:6px;min-width:240px;display:grid}.course-row__details strong{font-size:15px}.course-row__details small{color:var(--muted);font-size:11px}.course-row__progress{direction:ltr;align-items:center;gap:16px;width:min(260px,30%);margin-right:auto;display:flex}.course-row__progress b{color:var(--blue-700);font-size:15px}.progress{background:#e4ecf1;border-radius:10px;width:100%;height:7px;overflow:hidden}.progress span{border-radius:inherit;height:100%;transition:width .5s;display:block}.row-arrow{color:var(--blue-700)}.next-assignment{border:1px solid var(--border);border-radius:var(--radius);box-shadow:var(--shadow);background:#fff;align-self:start;padding:22px}.section-title{align-items:center;gap:9px;display:flex}.section-title svg{color:var(--blue-700)}.section-title h2{margin:0;font-size:19px}.assignment-symbol{width:70px;height:70px;color:var(--blue-700);background:var(--blue-50);border-radius:16px;place-items:center;margin:25px auto 18px;display:grid}.assignment-symbol svg{width:34px;height:34px}.next-assignment h3{text-align:center;margin-bottom:7px;font-size:19px}.next-assignment>p{text-align:center;color:var(--muted);font-size:12px;line-height:1.6}.deadline{border-top:1px solid var(--border);border-bottom:1px solid var(--border);color:#456276;align-items:center;gap:9px;margin:22px 0 18px;padding:14px 0;font-size:11px;display:flex}.next-assignment .button{width:100%}.button{border:1px solid #0000;border-radius:9px;justify-content:center;align-items:center;gap:9px;min-height:42px;padding:0 18px;font-size:13px;font-weight:750;display:inline-flex}.button--primary{color:#fff;background:var(--blue-700)}.button--primary:hover{background:var(--blue-800)}.button--outline{color:var(--blue-700);border-color:var(--blue-700);background:#fff}.button--danger{color:#fff;background:#a93d36}.button--danger:hover{background:#8f302a}.button:disabled{opacity:.6;cursor:wait}.activity-list{border:1px solid var(--border);background:#fff;border-radius:12px;padding:5px 20px}.activity-list>div{border-bottom:1px solid var(--border);align-items:center;gap:13px;min-height:68px;display:flex}.activity-list>div:last-child{border-bottom:0}.activity-icon{border-radius:8px;place-items:center;width:33px;height:33px;display:grid}.activity-icon svg{width:17px}.activity-icon.blue{color:var(--blue-700);background:var(--blue-50)}.activity-icon.teal{color:#258b7b;background:#e9f6f3}.activity-icon.gold{color:var(--amber);background:var(--amber-bg)}.activity-list p{flex:1;justify-content:space-between;align-items:center;gap:15px;margin:0;font-size:13px;display:flex}.activity-list small{color:var(--muted);font-size:10px;font-weight:400}.course-catalog{grid-template-columns:repeat(3,minmax(0,1fr));gap:18px;display:grid}.course-card{border:1px solid var(--border);border-radius:var(--radius);background:#fff;flex-direction:column;min-width:0;display:flex;overflow:hidden}.course-card__head{background:var(--blue-700);color:#fff;justify-content:space-between;align-items:center;height:76px;padding:0 21px;display:flex}.course-card__head span{letter-spacing:.7px;font-size:12px;font-weight:800}.course-card__head svg{opacity:.85;width:30px;height:30px}.course-card__head>div{align-items:center;gap:10px;display:flex}.course-card__head .status{background:#ffffffeb;font-style:normal}.course-card__head .status--muted{color:#566c7a}.course-card__body{min-height:118px;padding:22px 21px 14px}.course-card__body h2{margin:0 0 9px;font-size:18px;line-height:1.5}.course-card__body p{color:var(--muted);font-size:12px}.course-card__body .course-card__path{color:var(--blue-700);margin:9px 0 0;font-size:10px;line-height:1.7}.course-card__body .course-card__teacher{margin:0}.course-card__body .course-card__teacher strong{color:#456276}.course-card__offering{width:max-content;max-width:100%;color:var(--blue-700);background:var(--blue-50);text-overflow:ellipsis;white-space:nowrap;border-radius:7px;margin-bottom:8px;padding:5px 8px;font-size:9px;font-weight:800;display:block;overflow:hidden}.course-card__meta{color:var(--muted);gap:18px;padding:0 21px 18px;font-size:11px;display:flex}.course-card__meta span{align-items:center;gap:6px;display:flex}.course-card__meta svg{width:15px}.course-card>.progress{width:calc(100% - 42px);margin:0 21px}.course-card__actions{border-top:1px solid var(--border);background:#fbfdfe;grid-template-columns:1fr;margin-top:auto;display:grid}.course-card__actions--admin{grid-template-columns:repeat(4,minmax(0,1fr))}.course-card__actions--teacher{grid-template-columns:repeat(2,minmax(0,1fr))}.course-card__actions button{border:0;border-left:1px solid var(--border);min-width:0;min-height:62px;color:var(--blue-700);background:0 0;flex-direction:column;justify-content:center;align-items:center;gap:5px;padding:9px 6px 8px;font-size:10px;font-weight:750;line-height:1.3;transition:color .18s,background .18s;display:flex}.course-card__actions button:last-child{border-left:0}.course-card__actions button svg{stroke-width:1.9px;width:18px;height:18px}.course-card__actions button:hover{background:var(--blue-50);color:var(--blue-800)}.course-card__actions button:focus-visible{z-index:1;outline:2px solid var(--blue-600);outline-offset:-3px;position:relative}.course-card__actions button.is-danger{color:#9b342f}.course-card__actions button.is-danger:hover{color:#812b26;background:#fff0ef}.course-card__actions button.is-activate{color:var(--green)}.course-card__actions button.is-activate:hover{background:var(--green-bg)}.table-shell{border:1px solid var(--border);border-radius:var(--radius);background:#fff;overflow-x:auto}table{border-collapse:collapse;width:100%;min-width:820px}th{color:var(--muted);text-align:right;background:#f8fafb;padding:15px 18px;font-size:11px;font-weight:700}td{border-top:1px solid var(--border);color:#486576;padding:16px 18px;font-size:12px}.table-title{color:var(--ink);align-items:center;gap:9px;display:flex}.table-title svg{color:var(--blue-600);width:18px}.status{white-space:nowrap;border-radius:7px;align-items:center;gap:5px;padding:5px 9px;font-size:10px;font-weight:700;display:inline-flex}.status svg{width:13px;height:13px}.status--success{color:var(--green);background:var(--green-bg)}.status--progress{color:var(--blue-700);background:var(--blue-50)}.status--muted{color:var(--muted);background:#edf2f5}.status--warning{color:var(--amber);background:var(--amber-bg)}.table-action{border:1px solid var(--border);color:var(--blue-700);white-space:nowrap;background:#fff;border-radius:7px;align-items:center;gap:6px;padding:7px 11px;font-size:11px;font-weight:700;display:inline-flex}.table-action:hover{background:var(--blue-50)}.table-action--status{color:#8a5a00}.table-action--password{color:#6b4ca5}.table-action:disabled{color:var(--muted);cursor:not-allowed;opacity:.7;background:#f5f7f8}.user-actions{align-items:center;gap:7px;display:flex}.sidebar-support-link,.sidebar-support-pending{color:inherit;margin-top:8px;font-size:10px;font-weight:700;text-decoration:none;display:block}.sidebar-support-link:hover{text-decoration:underline}.sidebar-support-pending{color:var(--muted)}.pilot-practice-list{gap:10px;display:grid}.pilot-practice-list>button{border:1px solid var(--border);width:100%;min-height:70px;color:var(--ink);text-align:right;background:#fff;border-radius:11px;grid-template-columns:42px minmax(0,1fr) 22px;align-items:center;gap:12px;padding:12px 14px;display:grid}.pilot-practice-list>button:hover{background:var(--blue-50);border-color:#9bc8dc}.pilot-practice-list>button>span{color:#fff;background:var(--blue-700);border-radius:10px;place-items:center;width:40px;height:40px;display:grid}.pilot-practice-list p{gap:4px;min-width:0;margin:0;display:grid}.pilot-practice-list small,.pilot-practice-list>button>svg{color:var(--muted)}.users-table--admin{min-width:1080px}.users-table--admin th:last-child,.users-table--admin td:last-child{z-index:2;background:#fff;position:sticky;left:0;box-shadow:8px 0 14px -13px #002339bf}.users-table--admin th:last-child{z-index:3;background:#f8fafb}.grade-summary,.stat-strip{grid-template-columns:repeat(3,1fr);gap:15px;display:grid}.grade-summary>div,.stat-strip>div{border:1px solid var(--border);background:#fff;border-radius:12px;align-items:center;gap:14px;padding:20px;display:flex}.grade-summary svg,.stat-strip>div>span{width:43px;height:43px;color:var(--blue-700);background:var(--blue-50);border-radius:9px;padding:10px}.grade-summary span,.stat-strip p{gap:4px;margin:0;display:grid}.grade-summary strong,.stat-strip strong{font-size:22px}.grade-summary small,.stat-strip small{color:var(--muted);font-size:11px}.panel{border:1px solid var(--border);border-radius:var(--radius);background:#fff;padding:22px}.panel h2{font-size:18px}.grade-row,.metric-row{border-top:1px solid var(--border);grid-template-columns:240px minmax(120px,1fr) 45px;align-items:center;gap:20px;min-height:68px;display:grid}.grade-row>div,.metric-row>div{gap:5px;display:grid}.grade-row small,.metric-row small{color:var(--muted);font-size:10px}.filterbar{gap:12px;display:flex}.filterbar label{border:1px solid var(--border);background:#fff;border-radius:9px;flex:1;align-items:center;gap:8px;padding:0 13px;display:flex}.filterbar input{border:0;outline:0;flex:1;height:43px}.filterbar>.select-control{flex:0 0 180px}.people-sections{border:1px solid var(--border);background:#fff;border-radius:11px;gap:3px;width:fit-content;padding:4px;display:flex}.people-sections button{min-height:39px;color:var(--muted);background:0 0;border:0;border-radius:8px;align-items:center;gap:7px;padding:0 16px;font-size:11px;font-weight:750;display:inline-flex}.people-sections button svg{width:16px}.people-sections button.is-active{color:var(--blue-800);background:var(--blue-50);box-shadow:inset 0 0 0 1px #d8edf7}.registration-requests-panel{gap:18px;display:grid}.registration-requests-heading{border:1px solid var(--border);background:#fff;border-radius:13px;justify-content:space-between;align-items:center;gap:20px;padding:18px 20px;display:flex;box-shadow:0 7px 22px #003c6009}.registration-requests-heading>div{align-items:center;gap:13px;display:flex}.registration-requests-heading>div>span{width:44px;height:44px;color:var(--blue-700);background:var(--blue-50);border-radius:11px;place-items:center;display:grid}.registration-requests-heading svg{width:22px}.registration-requests-heading h2{margin:0 0 4px;font-size:16px}.registration-requests-heading p{color:var(--muted);margin:0;font-size:10px}.registration-requests-heading>strong{color:var(--amber);background:var(--amber-bg);white-space:nowrap;border-radius:999px;padding:7px 11px;font-size:10px}.registration-request-list{gap:10px;display:grid}.registration-request-card{border:1px solid var(--border);background:#fff;border-radius:12px;grid-template-columns:minmax(230px,1.25fr) minmax(220px,1fr) minmax(175px,.8fr) auto auto;align-items:center;gap:18px;padding:14px 16px;transition:border-color .18s,box-shadow .18s;display:grid}.registration-request-card:hover{border-color:#b9d8e7;box-shadow:0 8px 24px #00486e0e}.registration-request-person{align-items:center;gap:10px;min-width:0;display:flex}.registration-request-person i{width:38px;height:38px;color:var(--blue-700);background:var(--blue-50);border-radius:50%;flex:none;place-items:center;font-style:normal;font-weight:850;display:grid}.registration-request-person>div,.registration-request-card>div:not(.registration-request-person){gap:4px;min-width:0;display:grid}.registration-request-card strong{overflow-wrap:anywhere;font-size:11px}.registration-request-card small,.registration-request-card>div>span{color:var(--muted);overflow-wrap:anywhere;font-size:9px}.registration-request-status{width:fit-content;color:var(--amber);background:var(--amber-bg);white-space:nowrap;border-radius:999px;padding:5px 8px;font-size:9px;font-weight:800}.registration-request-status--approved{color:var(--green);background:var(--green-bg)}.registration-request-status--rejected{color:#a7343f;background:#fff0f1}.registration-request-status--changes_requested{color:var(--blue-700);background:var(--blue-50)}.registration-request-card .table-action{white-space:nowrap;align-items:center;gap:6px;display:inline-flex}.registration-request-card .table-action svg{width:14px}.modal--registration-review{grid-template-rows:auto minmax(0,1fr) auto;width:min(1120px,100vw - 34px);max-height:92vh;display:grid;overflow:hidden}.registration-review-layout{grid-template-columns:minmax(0,1.55fr) minmax(290px,.7fr);min-height:0;display:grid;overflow-y:auto}.registration-review-form,.registration-decision-panel{align-content:start;padding:22px}.registration-review-form{gap:18px;display:grid}.registration-decision-panel{border-right:1px solid var(--border);background:#f8fbfd}.registration-review-section-title{align-items:center;gap:11px;display:flex}.registration-review-section-title>svg{width:21px;color:var(--blue-700)}.registration-review-section-title h3{margin:0 0 4px;font-size:14px}.registration-review-section-title p{color:var(--muted);margin:0;font-size:9px}.registration-review-fields input:disabled{color:#526d7d;background:#f4f7f9}.registration-save-details{justify-self:start;gap:7px}.registration-save-details svg{width:15px}.registration-decision-panel dl{margin:20px 0;display:grid}.registration-decision-panel dl>div{border-bottom:1px solid var(--border);gap:6px;padding:11px 0;display:grid}.registration-decision-panel dt{color:var(--muted);font-size:9px}.registration-decision-panel dd{margin:0;font-size:11px;font-weight:750}.registration-decision-panel textarea{resize:vertical;height:100px;padding:10px;line-height:1.7}.registration-decision-actions{gap:8px;margin-top:15px;display:grid}.registration-decision-actions .button{gap:7px;width:100%}.registration-decision-actions svg{width:16px}.registration-admin-note{color:#6a541f;background:#fff9e9;border-radius:9px;margin-top:18px;padding:13px;font-size:10px}.registration-admin-note p{margin:7px 0 0;line-height:1.7}.modal--registration-review>footer{border-top:1px solid var(--border);background:#fff;justify-content:space-between;align-items:center;gap:15px;min-height:62px;padding:11px 22px;display:flex}.modal--registration-review>footer span{color:var(--muted);font-size:9px}.person{color:var(--ink);align-items:center;gap:9px;display:flex}.person i{background:var(--blue-50);width:32px;height:32px;color:var(--blue-700);border-radius:50%;place-items:center;font-style:normal;font-weight:800;display:grid}.inline-progress{direction:ltr;align-items:center;gap:10px;min-width:130px;display:flex}.stat-strip{grid-template-columns:repeat(4,1fr)}.stat-strip>div>span{place-items:center;padding:0;display:grid}.stat-strip svg{width:20px}.overview-columns{grid-template-columns:1.3fr .7fr;gap:18px;display:grid}.panel__title{justify-content:space-between;align-items:center;display:flex}.attention-list>div{border-top:1px solid var(--border);align-items:center;gap:13px;min-height:76px;display:flex}.attention-list i{background:var(--amber-bg);width:36px;height:36px;color:var(--amber);border-radius:8px;place-items:center;font-style:normal;font-weight:800;display:grid}.attention-list p{gap:5px;margin:0;display:grid}.attention-list strong{font-size:12px}.attention-list small{color:var(--muted);font-size:10px}.workspace{background:var(--canvas);min-height:100vh;padding:18px}.workspace__header{border:1px solid var(--border);background:#fff;border-radius:12px;align-items:center;gap:18px;height:78px;padding:0 20px;display:flex}.workspace__header>div{gap:5px;display:grid}.workspace__header small{color:var(--muted);font-size:10px}.workspace__header h1{margin:0;font-size:21px}.workspace__header .brand{border-left:1px solid var(--border);min-width:125px;padding-left:17px}.workspace__header .back-button{margin-right:auto}.back-button{background:var(--blue-50);color:var(--blue-700);border:0;border-radius:8px;align-items:center;gap:6px;height:39px;padding:0 12px;font-size:11px;font-weight:750;display:flex}.attempt{color:var(--blue-700);background:var(--blue-50);border-radius:7px;margin-right:auto;padding:7px 11px;font-size:11px;font-weight:700}.workspace__grid{direction:rtl;grid-template-columns:280px minmax(500px,1fr) 240px;gap:13px;height:calc(100vh - 132px);min-height:620px;margin-top:13px;display:grid}.problem-pane,.tests-pane{border:1px solid var(--border);background:#fff;border-radius:12px;overflow:hidden}.problem-pane{flex-direction:column;display:flex}.workspace-tabs{border-bottom:1px solid var(--border);padding:0 10px;display:flex}.workspace-tabs button{min-height:48px;color:var(--muted);background:0 0;border:0;border-bottom:2px solid #0000;flex:1;font-size:11px;font-weight:700}.workspace-tabs button.active{color:var(--blue-700);border-color:var(--blue-700)}.problem-copy{flex:1;padding:20px;font-size:12px;line-height:1.85;overflow:auto}.problem-copy h2{font-size:18px}.problem-copy h3{margin:22px 0 8px;font-size:14px}.problem-copy ol,.problem-copy ul{padding-right:19px}.problem-copy pre{white-space:pre-wrap;background:var(--blue-50);border-radius:8px;padding:12px;font:11px/1.8 Consolas,monospace}.result-score{color:var(--green);margin:20px 0;font-size:38px;font-weight:800}.problem-actions{border-top:1px solid var(--border);grid-template-columns:1fr 1fr;gap:8px;padding:13px;display:grid}.problem-actions .button{padding:0 8px;font-size:11px}.editor-pane{min-width:0;box-shadow:var(--shadow);direction:ltr;border-radius:12px;grid-template-rows:48px minmax(320px,1fr) 190px;display:grid;overflow:hidden}.editor-toolbar{color:#d9e7ef;background:#162b3d;border-bottom:1px solid #294156;justify-content:space-between;align-items:center;padding:0 13px;font-size:11px;display:flex}.editor-toolbar span,.editor-toolbar button{align-items:center;gap:8px;display:flex}.editor-toolbar button{color:#fff;background:#1d3448;border:1px solid #395166;border-radius:6px;padding:7px 10px}.code-area{background:#102232;grid-template-columns:47px 1fr;min-height:0;display:grid}.line-numbers{color:#698093;text-align:center;border-right:1px solid #294156;align-content:start;padding-top:19px;font:13px/1.65 Consolas,monospace;display:grid;overflow:hidden}.line-numbers span{height:21.45px;display:block}.editor-code-wrap{min-width:0;min-height:0;position:relative;overflow:hidden}.code-area textarea,.code-highlight{tab-size:4;white-space:pre;border:0;width:100%;height:100%;margin:0;padding:19px;font:13px/1.65 Consolas,Courier New,monospace;position:absolute;inset:0;overflow:auto}.code-area textarea{resize:none;color:#0000;caret-color:#fff;-webkit-text-fill-color:transparent;z-index:2;background:0 0;outline:0}.code-highlight{color:#dfeaf0;pointer-events:none;z-index:1}.token-keyword{color:#63d8ee}.token-string{color:#9fd27e}.token-comment{color:#6f8b9d;font-style:italic}.console{color:#dce8ee;background:#122636;border-top:1px solid #294156;min-height:0}.console__head{direction:rtl;border-bottom:1px solid #294156;justify-content:space-between;align-items:center;height:41px;padding:0 13px;font-size:11px;display:flex}.console__head span{align-items:center;gap:7px;display:flex}.console__head small{color:#7f9bac}.console pre{color:#bcd2dd;margin:0;padding:15px;font:12px/1.7 Consolas,monospace}.tests-pane{direction:rtl;padding:19px 13px}.tests-pane h2{font-size:17px}.score{margin-bottom:17px;display:grid}.score strong{font-size:27px}.score strong,.result-score{text-align:right;direction:ltr}.score small{color:var(--muted);font-size:10px}.test-item{border:1px solid var(--border);text-align:right;background:#fff;border-radius:9px;align-items:center;gap:9px;width:100%;min-height:78px;margin-bottom:9px;padding:11px;display:flex}.test-item>span{border-radius:50%;place-items:center;width:30px;height:30px;display:grid}.test-item>span svg{width:16px}.test-item.passed>span{background:var(--green-bg);color:var(--green)}.test-item.review>span{background:var(--amber-bg);color:var(--amber)}.test-item p{flex:1;gap:4px;margin:0;display:grid}.test-item strong{font-size:11px}.test-item small{color:var(--muted);font-size:9px}.test-item>svg{color:var(--muted)}.toast{background:var(--green);color:#fff;z-index:80;border-radius:9px;align-items:center;gap:9px;padding:13px 18px;font-size:12px;animation:.25s ease-out toast-in;display:flex;position:fixed;bottom:25px;left:28px;box-shadow:0 12px 30px #00000029}@keyframes toast-in{0%{opacity:0;transform:translateY(18px)}}.modal-backdrop{z-index:100;background:#00233970;place-items:center;padding:20px;display:grid;position:fixed;inset:0}.modal{background:#fff;border-radius:15px;width:min(540px,100%);max-height:92vh;overflow:auto;box-shadow:0 25px 70px #00233940}.modal header{border-bottom:1px solid var(--border);justify-content:space-between;align-items:center;padding:22px 24px;display:flex}.modal header small{color:var(--blue-700);font-weight:700}.modal header h2{align-items:center;gap:8px;margin:4px 0 0;font-size:20px;display:flex}.modal form{gap:17px;padding:22px 24px;display:grid}.modal label{color:#496678;gap:7px;font-size:11px;font-weight:700;display:grid}.modal input,.modal textarea{border:1px solid var(--border);min-height:43px;color:var(--ink);background:#fff;border-radius:8px;padding:0 12px}.modal textarea{resize:vertical;min-height:90px;padding-top:10px}.form-row{grid-template-columns:1fr 1fr;gap:13px;display:grid}.modal footer{justify-content:flex-end;gap:9px;padding-top:5px;display:flex}.modal-success{text-align:center;color:var(--green);background:var(--green-bg);border-radius:10px;margin:50px 24px;padding:25px;font-weight:800}.modal--compact{width:min(470px,100%)}.modal--roster{width:min(920px,100%);overflow:hidden}.modal--roster>header h2{margin:0 0 5px}.modal--roster>header small{color:var(--muted);font-size:11px}.modal--roster>footer{border-top:1px solid var(--border);padding:14px 24px}.roster-content{background:#fbfdfe;gap:16px;max-height:calc(92vh - 148px);padding:20px 24px 24px;display:grid;overflow-y:auto}.roster-notice{color:var(--green);background:var(--green-bg);border-radius:9px;align-items:center;gap:8px;padding:11px 13px;font-size:11px;font-weight:750;display:flex}.roster-context{color:var(--blue-700);background:var(--blue-50);border:1px solid #cfe2ec;border-radius:10px;align-items:center;gap:11px;padding:12px 14px;display:flex}.roster-context>svg{flex:none}.roster-context p{gap:3px;margin:0;display:grid}.roster-context strong{font-size:11px}.roster-context span{color:#557284;font-size:10px}.roster-summary{grid-template-columns:repeat(4,minmax(0,1fr));gap:10px;display:grid}.roster-summary p{border:1px solid var(--border);background:#fff;border-radius:10px;gap:3px;margin:0;padding:14px;display:grid}.roster-summary strong{color:var(--blue-800);font-size:20px}.roster-summary span{color:var(--muted);font-size:10px}.roster-toolbar{justify-content:space-between;align-items:center;gap:18px;display:flex}.roster-toolbar h3{margin:0 0 4px;font-size:14px}.roster-toolbar p{color:var(--muted);margin:0;font-size:10px;line-height:1.7}.roster-toolbar .button{flex:none;align-items:center;gap:7px;display:inline-flex}.is-spinning{animation:.8s linear infinite roster-spin}@keyframes roster-spin{to{transform:rotate(360deg)}}.enrollment-status-editor{background:#fff;border:1px solid #c4dce8;border-radius:11px;align-items:end;grid-template-columns:minmax(190px,1fr) minmax(170px,.7fr)!important;gap:12px!important;padding:15px!important}.enrollment-status-editor>div:first-child{align-self:center;gap:4px;display:grid}.enrollment-status-editor>div:first-child strong{font-size:12px}.enrollment-status-editor>div:first-child span{color:var(--muted);font-size:10px}.enrollment-status-editor>label{grid-column:1/-1}.enrollment-status-editor>.academic-actions{grid-column:1/-1;justify-content:flex-end}.roster-list{border:1px solid var(--border);background:#fff;border-radius:11px;overflow:hidden}.roster-student{border-bottom:1px solid var(--border);grid-template-columns:38px minmax(0,1fr) auto auto;align-items:center;gap:12px;min-height:77px;padding:12px 14px;display:grid}.roster-student:last-child{border-bottom:0}.roster-avatar{width:36px;height:36px;color:var(--blue-700);background:var(--blue-50);border-radius:50%;place-items:center;font-weight:800;display:grid}.roster-student__identity{gap:3px;min-width:0;display:grid}.roster-student__identity strong{text-overflow:ellipsis;white-space:nowrap;font-size:12px;overflow:hidden}.roster-student__identity span,.roster-student__identity small{text-overflow:ellipsis;white-space:nowrap;color:var(--muted);font-size:9px;overflow:hidden}.roster-student__meta{justify-items:center;gap:4px;min-width:74px;display:grid}.roster-student__meta>span{color:var(--muted);font-size:9px}.enrollment-badge{text-align:center;border-radius:7px;min-width:58px;padding:5px 8px;font-size:9px;font-style:normal;font-weight:800}.enrollment-badge--active{color:var(--green);background:var(--green-bg)}.enrollment-badge--completed{color:var(--blue-700);background:var(--blue-50)}.enrollment-badge--withdrawn{color:#9b342f;background:#fff0ef}.enrollment-badge--suspended{color:var(--amber);background:var(--amber-bg)}.roster-list .academic-empty{justify-items:center;gap:8px;display:grid}.roster-candidates{gap:12px;padding-top:4px;display:grid}.roster-search{border:1px solid var(--border);background:#fff;border-radius:9px;align-items:center;height:43px;padding:0 12px;grid-template-columns:none!important;gap:8px!important;display:flex!important}.roster-search>svg{color:var(--blue-700);flex:none}.roster-search>input{border:0;outline:0;width:100%;min-height:0;padding:0}.roster-candidate-list{border:1px solid var(--border);background:#fff;border-radius:11px;max-height:240px;overflow-y:auto}.roster-candidate-list>article{border-bottom:1px solid var(--border);grid-template-columns:minmax(0,1fr) auto auto;align-items:center;gap:12px;min-height:72px;padding:11px 14px;display:grid}.roster-candidate-list>article:last-child{border-bottom:0}.roster-candidate-list article>div{gap:3px;min-width:0;display:grid}.roster-candidate-list strong{font-size:11px}.roster-candidate-list span,.roster-candidate-list small{color:var(--muted);font-size:9px}.roster-candidate-list em{white-space:nowrap;border-radius:7px;padding:5px 8px;font-size:9px;font-style:normal;font-weight:750}.roster-candidate-list .is-eligible{color:var(--green);background:var(--green-bg)}.roster-candidate-list .is-exception{color:var(--amber);background:var(--amber-bg)}.modal-copy{color:#496678;margin:0;line-height:1.9}.modal-warning{color:#874c00;background:var(--amber-bg);border-radius:8px;margin:0;padding:12px;font-size:11px;line-height:1.7}.modal-note{color:var(--muted);font-weight:500}.data-state{min-height:140px;color:var(--muted);border:1px solid var(--border);border-radius:var(--radius);background:#fff;place-items:center;display:grid}.muted-copy{color:var(--muted);padding:20px 0;font-size:13px}.check-label{grid-template-columns:auto 1fr;align-items:center;gap:9px!important;display:flex!important}.check-label input{width:17px;height:17px;min-height:auto;padding:0}.academic-grid{gap:18px;display:grid}.academic-department{border:1px solid var(--border);border-radius:var(--radius);background:#fff;transition:border-color .2s,box-shadow .2s;overflow:hidden}.academic-department:hover{border-color:#c4dce8}.academic-department.is-collapsed{box-shadow:0 5px 16px #00365609}.academic-department__head{border-bottom:1px solid var(--border);background:#f8fbfd;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:16px;padding:14px 22px;display:grid}.academic-department.is-collapsed .academic-department__head{border-bottom-color:#0000}.academic-department__toggle{min-width:0;color:inherit;text-align:right;background:0 0;border:0;border-radius:11px;grid-template-columns:46px minmax(0,1fr) 32px;align-items:center;gap:14px;margin:-7px -9px -7px 0;padding:7px 9px;transition:background .18s,box-shadow .18s;display:grid}.academic-department__toggle:hover{background:#eef7fb}.academic-department__toggle:focus-visible{outline:0;box-shadow:0 0 0 3px #087aad29}.academic-department__icon{width:46px;height:46px;color:var(--blue-700);background:var(--blue-50);border-radius:10px;place-items:center;display:grid}.academic-department__details{gap:2px;min-width:0;display:grid}.academic-department__details strong{text-overflow:ellipsis;white-space:nowrap;font-size:17px;overflow:hidden}.academic-department__details small{color:var(--blue-600);font-weight:800}.academic-department__details>span{color:var(--muted);font-size:10px}.academic-department__chevron{width:30px;height:30px;color:var(--blue-700);background:#fff;border:1px solid #d8e6ed;border-radius:50%;place-items:center;transition:transform .22s,color .18s,border-color .18s;display:grid}.academic-department.is-collapsed .academic-department__chevron{transform:rotate(90deg)}.academic-department__toggle:hover .academic-department__chevron{color:#fff;border-color:var(--blue-600);background:var(--blue-600)}.academic-specializations{padding:4px 22px;animation:.2s ease-out academic-content-in}@keyframes academic-content-in{0%{opacity:0;transform:translateY(-6px)}}.academic-specializations>article{border-bottom:1px solid var(--border);padding:17px 0}.academic-specializations>article:last-child{border-bottom:0}.academic-specialization__title{grid-template-columns:36px 1fr auto;align-items:center;gap:11px;display:grid}.academic-specialization__title>span{color:#258b7b;background:#e9f6f3;border-radius:8px;place-items:center;width:36px;height:36px;display:grid}.academic-specialization__title h3{margin:0 0 3px;font-size:14px}.academic-specialization__title small{color:var(--muted)}.academic-levels{flex-wrap:wrap;gap:8px;padding:13px 47px 0 0;display:flex}.academic-levels button{color:var(--blue-700);background:var(--blue-50);border:0;border-radius:7px;align-items:center;gap:6px;padding:7px 10px;font-size:10px;font-weight:700;display:inline-flex}.academic-levels button:hover{background:#dceef7}.academic-levels p,.academic-empty{color:var(--muted);margin:0;font-size:11px}.academic-empty{text-align:center;padding:24px 0}.modal-context{color:#496678;background:var(--blue-50);border-radius:8px;margin:0;padding:11px 13px;font-size:12px}.academic-actions{align-items:center;gap:7px;display:flex}.course-status-dialog{justify-items:center;gap:16px;padding:25px;display:grid}.course-status-dialog>p{color:#496678;text-align:center;margin:0;line-height:1.9}.course-status-dialog footer{justify-content:center;gap:9px;width:100%;display:flex}.status-icon{color:#9b342f;background:#fff0ef;border-radius:50%;place-items:center;width:48px;height:48px;display:grid}.status-icon--active{color:var(--green);background:var(--green-bg)}.select-control{width:100%;min-width:0;color:var(--ink);font-weight:650;position:relative}.select-control__native{inset-inline-start:12px;opacity:0;pointer-events:none;bottom:6px;border:0!important;width:1px!important;height:1px!important;min-height:0!important;padding:0!important;position:absolute!important}.select-control__trigger{border:1px solid var(--border);width:100%;min-height:43px;color:var(--ink);text-align:right;background:#fff;border-radius:9px;justify-content:space-between;align-items:center;gap:12px;padding:0 13px;font-size:12px;font-weight:700;transition:border-color .18s,box-shadow .18s,background .18s;display:flex}.select-control__trigger>span{text-overflow:ellipsis;white-space:nowrap;min-width:0;overflow:hidden}.select-control__trigger>svg{width:17px;height:17px;color:var(--blue-600);flex:none;transition:transform .2s}.select-control__trigger.is-placeholder{color:#7b909e;font-weight:600}.select-control__trigger:hover{background:#fcfeff;border-color:#a9cedf}.select-control.is-open .select-control__trigger,.select-control:focus-within .select-control__trigger{border-color:var(--blue-600);box-shadow:0 0 0 3px #087aad1c}.select-control.is-open .select-control__trigger>svg{transform:rotate(180deg)}.select-control.is-disabled .select-control__trigger{color:#8ca0ad;cursor:not-allowed;box-shadow:none;background:#f5f8fa;border-color:#e2e9ed}.select-control.is-disabled .select-control__trigger>svg{color:#a8b6bf}.select-control.is-invalid .select-control__trigger{border-color:#cf6a70;box-shadow:0 0 0 3px #cf6a701c}.select-control__menu{z-index:140;top:calc(100% + 7px);background:#fff;border:1px solid #cbdde7;border-radius:11px;max-height:240px;padding:6px;animation:.16s ease-out select-menu-in;position:absolute;inset-inline:0;overflow-y:auto;box-shadow:0 18px 44px #00304e2b,0 3px 10px #00304e12}.select-control__option{color:#405e71;text-align:right;background:0 0;border:0;border-radius:7px;justify-content:space-between;align-items:center;gap:12px;width:100%;min-height:39px;padding:8px 10px;font-size:11px;font-weight:650;display:flex}.select-control__option:hover,.select-control__option.is-active{color:var(--blue-800);background:var(--blue-50)}.select-control__option.is-selected{color:var(--blue-700);background:#e6f4fb;font-weight:800}.select-control__option>svg{stroke-width:2.3px;flex:none;width:16px;height:16px}@keyframes select-menu-in{0%{opacity:0;transform:translateY(-5px)scale(.985)}}@media (width<=1080px){.app-shell{padding-right:210px}.sidebar{width:210px}.search-box{display:none}.course-catalog{grid-template-columns:repeat(2,1fr)}.workspace__grid{grid-template-columns:250px 1fr}.tests-pane{display:none}}@media (width<=1240px){.dashboard-grid{grid-template-columns:1fr}.next-assignment{order:-1;grid-template-columns:auto 1fr auto;align-items:center;gap:10px 18px;display:grid}.next-assignment .section-title{grid-column:1/-1}.assignment-symbol{grid-row:2/5;margin:0}.next-assignment h3,.next-assignment>p{text-align:right;margin:0}.deadline{border:0;grid-column:2;margin:0;padding:0}.next-assignment .button{grid-area:2/3/5;width:auto;min-width:145px}}@media (width<=800px){.app-shell{padding-top:68px;padding-right:0}.topbar{gap:10px;height:68px;padding:0 15px}.topbar .brand{min-width:0}.profile>span:last-child,.role-switcher>span{display:none}.topbar__actions{gap:5px}.role-switcher{padding:0 8px}.role-switcher select{max-width:76px}.menu-button{display:grid}.sidebar{z-index:70;width:270px;padding-top:18px;transition:right .25s;top:0;right:-272px}.sidebar.is-open{right:0}.sidebar-backdrop{z-index:65;opacity:0;visibility:hidden;background:#00233959;border:0;transition:all .2s;display:block;position:fixed;inset:0}.sidebar-backdrop.is-open{opacity:1;visibility:visible}.sidebar__mobile-brand{justify-content:space-between;align-items:center;margin-bottom:25px;display:flex}.app-content{padding:22px 16px 40px}.dashboard-grid,.overview-columns{grid-template-columns:1fr}.next-assignment{order:-1}.welcome-band{min-height:145px;padding:25px}.welcome-band__art{display:none}.course-row__details{min-width:0}.course-row__progress{width:25%}.activity-list p{display:grid}.course-catalog{grid-template-columns:1fr}.stat-strip,.grade-summary{grid-template-columns:repeat(2,1fr)}.workspace{padding:9px}.workspace__header{height:68px}.workspace__grid{grid-template-columns:1fr;height:auto;min-height:0}.problem-pane{min-height:520px}.editor-pane{grid-template-rows:48px 430px 180px}.tests-pane{display:block}.login-page{grid-template-columns:1fr}.login-brand-panel{min-height:240px;padding:28px}.login-brand-panel--minimal{grid-template-rows:88px minmax(24px,1fr) auto minmax(24px,1fr);gap:14px;min-height:290px}.login-brand-panel--minimal .brand__college-logo{width:100%;height:88px}.login-brand-panel--minimal .brand__platform strong{font-size:30px}.login-brand-panel:not(.login-brand-panel--minimal)>div:nth-child(2){margin-top:35px}.login-brand-panel h1{margin-bottom:8px;font-size:28px}.login-brand-panel>small{display:none}.login-form-panel{padding:34px 22px 50px}.settings-layout{grid-template-columns:1fr}.account-card{text-align:right;grid-template-columns:auto 1fr;align-items:center;gap:15px;display:grid}.account-card__avatar{border-radius:17px;width:58px;height:58px;margin:0}.account-card dl{grid-column:1/-1;margin-top:4px}}@media (width<=520px){.topbar .brand__platform{display:none}.topbar .brand{width:auto}.topbar .brand__college-logo{width:103px;height:37px}.notification-button{display:none}.profile{border:0;padding-right:5px}.page-heading{flex-direction:column;align-items:flex-start}.course-row{flex-wrap:wrap}.course-row__progress{width:calc(100% - 65px);margin-right:65px}.row-arrow{display:none}.activity-list p{font-size:11px}.stat-strip,.grade-summary{grid-template-columns:1fr}.grade-row,.metric-row{grid-template-columns:1fr 55px;gap:10px;padding:12px 0}.grade-row .progress,.metric-row .progress{grid-area:2/1/auto/-1}.filterbar{display:grid}.filterbar>.select-control{width:100%}.form-row{grid-template-columns:1fr}.security-card{padding:20px 17px}.password-change-submit{width:100%}.academic-department__head{grid-template-columns:1fr;gap:10px;padding:13px 15px}.academic-department__toggle{grid-template-columns:42px minmax(0,1fr) 30px;gap:10px;margin:-5px;padding:7px}.academic-department__icon{width:42px;height:42px}.academic-department__head>.academic-actions{justify-content:flex-end}.academic-specialization__title{grid-template-columns:34px 1fr}.academic-specialization__title>.academic-actions{grid-column:1/-1}.academic-levels{padding-right:0}.modal--roster{max-height:96vh}.modal--roster>header{padding:17px}.modal--roster>footer{padding:12px 17px}.roster-content{max-height:calc(96vh - 132px);padding:15px 14px 20px}.roster-summary{grid-template-columns:repeat(2,1fr)}.roster-toolbar{flex-direction:column;align-items:stretch}.roster-toolbar .button{justify-content:center;width:100%}.enrollment-status-editor{grid-template-columns:1fr!important}.enrollment-status-editor>label,.enrollment-status-editor>.academic-actions{grid-column:1}.roster-student{grid-template-columns:35px minmax(0,1fr) auto}.roster-student>.table-action{grid-column:2/-1;justify-content:center}.roster-candidate-list>article{grid-template-columns:minmax(0,1fr) auto}.roster-candidate-list>article>.table-action{grid-column:1/-1;justify-content:center}.workspace__header .attempt,.workspace__header .brand{display:none}.workspace__header h1{font-size:17px}.problem-actions{grid-template-columns:1fr}.next-assignment{display:block}.assignment-symbol{margin:20px auto 15px}.next-assignment h3,.next-assignment>p{text-align:center}.deadline{border-top:1px solid var(--border);border-bottom:1px solid var(--border);margin:18px 0;padding:13px 0}.next-assignment .button{width:100%}}.heading-actions{align-items:center;gap:9px;display:flex}.heading-actions .button svg{width:17px}.delivery-page{--delivery-panel:#fff}.delivery-summary{grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;display:grid}.delivery-summary>div{border:1px solid var(--border);background:var(--delivery-panel);border-radius:13px;align-items:center;gap:12px;min-height:92px;padding:16px 18px;display:flex;box-shadow:0 5px 16px #003c6009}.delivery-summary>div>svg{width:40px;height:40px;color:var(--blue-700);background:var(--blue-50);border-radius:10px;flex:none;padding:10px}.delivery-summary p{gap:4px;margin:0;display:grid}.delivery-summary small{color:var(--muted);font-size:10px}.delivery-summary strong{color:var(--ink);font-size:23px}.delivery-tabs{border:1px solid var(--border);background:#eaf2f6;border-radius:11px;gap:4px;width:max-content;max-width:100%;padding:4px;display:flex}.delivery-tabs button{color:#547184;min-height:39px;font:inherit;background:0 0;border:0;border-radius:8px;align-items:center;gap:8px;padding:0 14px;font-size:10px;font-weight:800;display:flex}.delivery-tabs button svg{width:16px}.delivery-tabs button b{background:#ffffffb3;border-radius:6px;min-width:22px;padding:3px 6px;font-size:9px}.delivery-tabs button.is-active{color:var(--blue-700);background:#fff;box-shadow:0 2px 8px #00325014}.delivery-search{border:1px solid var(--border);background:#fff;border-radius:11px;align-items:center;gap:9px;height:46px;padding:0 14px;display:flex}.delivery-search svg{width:18px;color:var(--blue-700)}.delivery-search input{width:100%;height:42px;color:var(--ink);background:0 0;border:0;outline:0}.delivery-entity-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:13px;display:grid}.delivery-entity-card{border:1px solid var(--border);background:#fff;border-radius:14px;flex-direction:column;gap:15px;min-height:206px;padding:17px;display:flex;box-shadow:0 7px 22px #003c6009}.delivery-entity-card>header{justify-content:space-between;align-items:center;gap:10px;display:flex}.delivery-entity-card>header code{color:var(--blue-700);font-size:10px;font-weight:800}.delivery-entity-card>div{gap:7px;display:grid}.delivery-entity-card h2{color:var(--ink);margin:0;font-size:14px;line-height:1.7}.delivery-entity-card p{color:var(--muted);margin:0;font-size:10px;line-height:1.65}.delivery-entity-card>footer{border-top:1px solid var(--border);gap:8px;margin-top:auto;padding-top:12px;display:flex}.delivery-entity-card>footer .table-action{flex:1;justify-content:center}.delivery-filters{grid-template-columns:minmax(280px,1fr) minmax(210px,.48fr) minmax(170px,.34fr);gap:10px;display:grid}.delivery-filters>label{border:1px solid var(--border);background:#fff;border-radius:10px;align-items:center;gap:9px;height:46px;padding:0 13px;display:flex}.delivery-filters>label svg{width:18px;color:var(--blue-700)}.delivery-filters input{width:100%;height:42px;color:var(--ink);background:0 0;border:0;outline:0}.delivery-table-shell{border:1px solid var(--border);background:#fff;border-radius:13px;overflow-x:auto;box-shadow:0 7px 22px #003c6009}.delivery-table{min-width:880px}.delivery-table td{vertical-align:middle}.delivery-course{align-items:center;gap:10px;display:flex}.delivery-course>i{color:#fff;background:var(--blue-700);text-align:center;border-radius:8px;min-width:58px;padding:7px 8px;font-size:9px;font-style:normal;font-weight:850}.delivery-course>span{gap:4px;min-width:0;display:grid}.delivery-course strong{text-overflow:ellipsis;white-space:nowrap;max-width:250px;font-size:10px;overflow:hidden}.delivery-course small,.cell-subtitle{color:var(--muted);margin-top:3px;font-size:8px;font-weight:500;display:block}.delivery-status{border-radius:7px;align-items:center;width:max-content;padding:5px 8px;font-size:9px;font-weight:800;display:inline-flex}.delivery-status--active{color:var(--green);background:var(--green-bg)}.delivery-status--planned{color:var(--blue-700);background:var(--blue-50)}.delivery-status--completed,.delivery-status--graduated{color:#65509b;background:#f0ecfb}.delivery-status--archived{color:var(--muted);background:#eef3f6}.term-list{gap:9px;display:grid}.term-card{border:1px solid var(--border);background:#fff;border-radius:12px;grid-template-columns:42px minmax(0,1fr) auto auto;align-items:center;gap:13px;min-height:84px;padding:14px 16px;display:grid}.term-card__icon{width:42px;height:42px;color:var(--blue-700);background:var(--blue-50);border-radius:10px;place-items:center;display:grid}.term-card__icon svg{width:20px}.term-card__body{gap:6px;min-width:0;display:grid}.term-card__body>div{align-items:baseline;gap:10px;display:flex}.term-card h2{margin:0;font-size:13px}.term-card code{color:var(--blue-700);font-size:9px}.term-card p{color:var(--muted);margin:0;font-size:9px}.delivery-modal-title{align-items:center;gap:11px;display:flex}.delivery-modal-title>span{width:38px;height:38px;color:var(--blue-700);background:var(--blue-50);border-radius:9px;place-items:center;display:grid}.delivery-modal-title svg{width:19px}.delivery-modal-title h2{margin:0}.modal--delivery{width:min(760px,100%)}.delivery-form-intro{background:#f5fafc;border:1px solid #cee2ec;border-radius:10px;align-items:flex-start;gap:10px;padding:12px 14px;display:flex}.delivery-form-intro>svg{width:20px;color:var(--blue-700);flex:none}.delivery-form-intro p{gap:3px;margin:0;display:grid}.delivery-form-intro strong{color:var(--ink);font-size:10px}.delivery-form-intro span,.modal-note{color:var(--muted);font-size:9px;line-height:1.7}.modal-note{background:#f4f7f9;border-radius:8px;margin:0;padding:10px 12px}@media (width<=900px){.delivery-summary{grid-template-columns:repeat(2,minmax(0,1fr))}.delivery-filters{grid-template-columns:1fr 1fr}.delivery-filters>label{grid-column:1/-1}.delivery-entity-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (width<=600px){.heading-actions{width:100%}.heading-actions .button{flex:1;justify-content:center}.delivery-summary{grid-template-columns:1fr 1fr}.delivery-summary>div{min-height:78px;padding:12px}.delivery-summary>div>svg{width:35px;height:35px;padding:8px}.delivery-tabs{width:100%;overflow-x:auto}.delivery-tabs button{flex:none;justify-content:center;padding:0 11px}.delivery-entity-grid,.delivery-filters{grid-template-columns:1fr}.delivery-filters>label{grid-column:auto}.delivery-table-shell{box-shadow:none;background:0 0;border:0;overflow:visible}.delivery-table{min-width:0}.delivery-table thead{display:none}.delivery-table tbody{gap:10px;display:grid}.delivery-table tr{border:1px solid var(--border);background:#fff;border-radius:11px;grid-template-columns:1fr 1fr;gap:12px;padding:14px;display:grid}.delivery-table td{border:0;gap:4px;padding:0;display:grid}.delivery-table td:before{content:attr(data-label);color:var(--muted);font-size:8px;font-weight:700}.delivery-table td:first-child,.delivery-table td:last-child{grid-column:1/-1}.delivery-table td:first-child:before,.delivery-table td:last-child:before{display:none}.delivery-table .table-action{justify-content:center;width:100%}.term-card{grid-template-columns:38px minmax(0,1fr) auto}.term-card__icon{width:38px;height:38px}.term-card>.table-action{grid-column:1/-1;justify-content:center}}@media (width<=1100px){.registration-request-card{grid-template-columns:1fr 1fr auto}.registration-request-card>div:nth-child(3){display:none}.registration-review-layout{grid-template-columns:1fr}.registration-decision-panel{border-right:0;border-top:1px solid var(--border)}}@media (width<=800px){.public-auth-page{background:#fff;display:block}.public-auth-page .registration-brand-panel{min-height:255px;padding:30px 24px}.public-auth-page .registration-brand-panel--minimal{min-height:290px}.public-auth-page .registration-brand-panel--minimal .registration-review-window{width:100%;font-size:12px;line-height:1.7}.public-auth-page .registration-brand-panel h1{margin-top:24px;font-size:28px}.public-auth-page .registration-brand-panel p,.public-auth-page .registration-brand-panel>small{display:none}.registration-form-panel{padding:28px 20px 45px;overflow:visible}.registration-request-card{grid-template-columns:1fr auto}.registration-request-card>div:nth-child(2){grid-column:1/-1}.registration-request-card .table-action{grid-column:1/-1;justify-content:center}.modal--registration-review{width:calc(100vw - 18px);max-height:96vh}.registration-review-form,.registration-decision-panel{padding:17px}}@media (width<=520px){.registration-fields,.registration-review-fields{grid-template-columns:1fr}.registration-form{padding-block:0}.registration-form header h2{font-size:24px}.public-auth-page .registration-brand-panel{min-height:190px}.public-auth-page .registration-brand-panel--minimal{grid-template-rows:80px minmax(20px,1fr) auto minmax(20px,1fr);gap:12px;min-height:270px}.public-auth-page .registration-brand-panel h1{font-size:22px}.registration-requests-heading{flex-direction:column;align-items:flex-start}.registration-requests-heading>strong{margin-inline-start:57px}.registration-request-card{grid-template-columns:1fr}.registration-request-card>*{grid-column:1/-1}.registration-request-filters{display:grid}.people-sections{width:100%}.people-sections button{flex:1;justify-content:center}.modal--registration-review>footer{flex-direction:column;align-items:stretch}.modal--registration-review>footer .button{width:100%}}@media (prefers-reduced-motion:reduce){*,:before,:after{scroll-behavior:auto!important;transition-duration:.01ms!important;animation-duration:.01ms!important}}.practice-summary{grid-template-columns:repeat(3,minmax(0,1fr));gap:13px;display:grid}.practice-summary>div{border:1px solid var(--border);background:#fff;border-radius:13px;grid-template-rows:auto auto;grid-template-columns:42px 1fr;align-items:center;column-gap:13px;min-height:94px;padding:18px 20px;display:grid;box-shadow:0 5px 16px #003c6009}.practice-summary svg{width:42px;height:42px;color:var(--blue-700);background:var(--blue-50);border-radius:10px;grid-row:1/3;padding:10px}.practice-summary span{color:var(--muted);font-size:11px}.practice-summary strong{font-size:25px}.practice-toolbar{align-items:center;gap:12px;display:flex}.practice-toolbar .select-control{width:min(340px,100%)}.practice-toolbar>span{color:var(--muted);font-size:11px}.practice-toolbar--student{flex-wrap:wrap;align-items:stretch}.practice-toolbar--student>span{white-space:nowrap;align-self:center}.practice-status-tabs{border:1px solid var(--border);background:#fff;border-radius:11px;grid-template-columns:repeat(3,minmax(100px,1fr));gap:4px;min-height:46px;padding:4px;display:inline-grid}.practice-status-tabs button{color:#587487;background:0 0;border:0;border-radius:8px;justify-content:center;align-items:center;gap:7px;min-width:0;padding:0 12px;font-size:10px;font-weight:800;transition:color .18s,background .18s,box-shadow .18s;display:inline-flex}.practice-status-tabs button:hover{color:var(--blue-700);background:#f2f8fb}.practice-status-tabs button:focus-visible{outline:2px solid var(--blue-600);outline-offset:1px}.practice-status-tabs button.is-active{color:#fff;background:var(--blue-700);box-shadow:0 5px 12px #005f8929}.practice-status-tabs b{min-width:20px;height:20px;color:var(--blue-700);background:var(--blue-50);border-radius:999px;place-items:center;padding:0 5px;font-size:9px;display:inline-grid}.practice-status-tabs button.is-active b{color:var(--blue-800);background:#fff}.empty-state>.button{justify-content:center;align-items:center;gap:7px;margin-top:14px;display:inline-flex}.empty-state>.button svg{width:16px}.practice-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:16px;display:grid}.practice-card{border:1px solid var(--border);background:#fff;border-radius:14px;flex-direction:column;min-width:0;padding:19px;transition:transform .18s,border-color .18s,box-shadow .18s;display:flex}.practice-card:hover{box-shadow:var(--shadow);border-color:#bcd8e5;transform:translateY(-2px)}.practice-card.is-complete{border-color:#bfe4d4}.practice-card__top{justify-content:space-between;align-items:center;gap:9px;display:flex}.practice-difficulty{border-radius:7px;padding:5px 9px;font-size:9px;font-weight:800}.practice-difficulty--easy{color:var(--green);background:var(--green-bg)}.practice-difficulty--medium{color:var(--amber);background:var(--amber-bg)}.practice-difficulty--hard{color:#9a3b53;background:#fff0f3}.practice-card__icon{color:#fff;background:linear-gradient(145deg, var(--blue-700), #0797bd);border-radius:11px;place-items:center;width:44px;height:44px;margin-top:18px;display:grid}.practice-card>small{color:var(--blue-600);text-overflow:ellipsis;white-space:nowrap;margin-top:13px;font-size:9px;font-weight:750;overflow:hidden}.practice-card h2{margin:6px 0 8px;font-size:17px}.practice-card>p{min-height:52px;color:var(--muted);-webkit-line-clamp:3;-webkit-box-orient:vertical;margin-bottom:15px;font-size:11px;line-height:1.75;display:-webkit-box;overflow:hidden}.practice-card__meta{color:#577284;border-top:1px solid #edf2f5;flex-wrap:wrap;gap:11px;margin-top:auto;padding:12px 0;font-size:9px;display:flex}.practice-card__meta span{align-items:center;gap:4px;display:inline-flex}.practice-card__meta svg{width:14px;height:14px}.practice-card footer{border-top:1px solid var(--border);background:#fbfdfe;border-radius:0 0 14px 14px;justify-content:flex-end;gap:7px;margin:0 -19px -19px;padding:11px 15px;display:flex}.practice-card footer button{border:1px solid var(--border);min-height:35px;color:var(--blue-700);background:#fff;border-radius:8px;justify-content:center;align-items:center;gap:6px;padding:0 11px;font-size:10px;font-weight:800;display:inline-flex}.practice-card footer button svg{width:15px}.practice-card footer .primary-action{color:#fff;border-color:var(--blue-700);background:var(--blue-700)}.practice-card footer .danger-action{color:#a53a40;border-color:#efc5c8}.modal--practice{width:100%;max-width:980px;max-height:94vh;overflow:hidden}.modal--practice>header small{color:var(--muted)}.modal--practice>form{max-height:calc(94vh - 82px);padding:22px 25px 26px;overflow-y:auto}.practice-form-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:15px;display:grid}.practice-form-wide{grid-column:1/-1}.modal textarea.code-field{text-align:left;min-height:150px;font-family:Consolas,Courier New,monospace;font-size:12px;line-height:1.65}.practice-mode-note{color:#527184;background:var(--blue-50);border-radius:9px;align-self:end;gap:2px;min-height:43px;padding:10px 13px;font-size:10px;display:grid}.practice-mode-note strong{color:var(--blue-700)}.practice-mode-note span{line-height:1.6}.practice-mode-note code{color:var(--blue-700)}.practice-smart-setup{background:linear-gradient(145deg,#f8fcfe,#f0f8fb);border:1px solid #b9dbe9;border-radius:13px;gap:13px;padding:17px;display:grid}.practice-smart-setup__head{align-items:flex-start;gap:11px;display:flex}.practice-smart-setup__head>span{color:#fff;background:linear-gradient(145deg, var(--blue-700), #0797bd);border-radius:10px;flex:none;place-items:center;width:36px;height:36px;display:grid;box-shadow:0 6px 14px #006f9d29}.practice-smart-setup__head svg{width:18px}.practice-smart-setup__head h3{color:var(--ink);margin:0 0 3px;font-size:14px}.practice-smart-setup__head p{color:var(--muted);margin:0;font-size:10px;line-height:1.7}.practice-smart-setup__head code{color:var(--blue-700)}.modal textarea.practice-bulk-inputs{text-align:left;background:#fff;min-height:112px;padding:12px 14px;font:12px/1.7 Consolas,Courier New,monospace}.practice-smart-setup__actions{justify-content:space-between;align-items:center;gap:12px;display:flex}.practice-smart-setup__actions>span{color:#527184;font-size:9px}.practice-smart-setup__actions .button{align-items:center;gap:7px;min-height:38px;display:inline-flex}.practice-smart-setup__actions svg{width:16px}.practice-output-preview{background:#fff;border:1px solid #cfe1ea;border-radius:9px;overflow:hidden}.practice-output-preview>div{border-bottom:1px solid #e7eff3;grid-template-columns:minmax(120px,.55fr) minmax(0,1.45fr);align-items:center;gap:12px;min-height:38px;padding:8px 11px;display:grid}.practice-output-preview>div:last-child{border-bottom:0}.practice-output-preview>div:first-child{color:#496678;background:#f6fafc;font-size:9px}.practice-output-preview code{color:#244c63;text-overflow:ellipsis;white-space:pre-wrap;font-size:10px;line-height:1.6;overflow:hidden}.practice-comparison{border:0;min-width:0;margin:0;padding:0}.practice-comparison>legend{color:#496678;margin-bottom:8px;font-size:11px;font-weight:700}.practice-comparison__modes{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;display:grid}.modal .practice-comparison__modes>label{border:1px solid var(--border);cursor:pointer;background:#fff;border-radius:11px;grid-template-columns:34px 1fr;align-items:start;gap:10px;min-height:82px;padding:14px;transition:border-color .18s,box-shadow .18s,background .18s;display:grid;position:relative}.modal .practice-comparison__modes>label:hover{border-color:#9fcbdc}.modal .practice-comparison__modes>label.is-selected{border-color:var(--blue-600);background:#f4fbfe;box-shadow:0 0 0 3px #0077aa17}.practice-comparison__modes input{opacity:0;width:1px;height:1px;position:absolute}.practice-comparison__modes label:focus-within{outline:2px solid var(--blue-600);outline-offset:2px}.practice-comparison__modes svg{color:#668494;background:#eef4f7;border-radius:9px;width:34px;height:34px;padding:8px}.practice-comparison__modes .is-selected svg{color:#fff;background:var(--blue-700)}.practice-comparison__modes span,.practice-comparison__rules span{gap:4px;min-width:0;display:grid}.practice-comparison__modes strong,.practice-comparison__rules strong{color:var(--ink);font-size:11px}.practice-comparison__modes small,.practice-comparison__rules small{color:var(--muted);font-size:9px;font-weight:500;line-height:1.65}.practice-comparison__rules{background:#f8fbfd;border:1px solid #cfe1ea;border-radius:11px;grid-template-columns:repeat(3,minmax(0,1fr));gap:9px;margin-top:10px;padding:13px;display:grid}.practice-comparison__rules>p{color:var(--ink);grid-column:1/-1;justify-content:space-between;align-items:center;gap:10px;margin:0 0 2px;font-size:10px;font-weight:800;display:flex}.practice-comparison__rules>p small{color:var(--amber);font-size:8px}.modal .practice-comparison__rules>label{border:1px solid var(--border);cursor:pointer;background:#fff;border-radius:9px;grid-template-columns:17px 1fr;align-items:start;gap:8px;min-height:75px;padding:11px;display:grid}.modal .practice-comparison__rules>label.is-checked{background:#edf8fc;border-color:#8ec5db}.practice-comparison__rules input{width:16px;height:16px;min-height:0;accent-color:var(--blue-700);margin:1px 0 0}.practice-comparison__rules code{color:var(--blue-700)}.practice-advanced-toggle{border:1px solid var(--border);width:100%;min-height:58px;color:var(--ink);text-align:right;background:#fff;border-radius:11px;grid-template-columns:34px 1fr 18px;align-items:center;gap:10px;margin-top:2px;padding:11px 14px;display:grid}.practice-advanced-toggle:hover,.practice-advanced-toggle.is-open{background:#f9fcfd;border-color:#a8ccdc}.practice-advanced-toggle>svg:first-child{width:34px;height:34px;color:var(--blue-700);background:var(--blue-50);border-radius:9px;padding:8px}.practice-advanced-toggle>svg:last-child{width:17px;color:var(--muted)}.practice-advanced-toggle span{gap:3px;display:grid}.practice-advanced-toggle strong{font-size:11px}.practice-advanced-toggle small{color:var(--muted);font-size:9px}.practice-advanced-panel{border:1px solid var(--border);background:#fbfdfe;border-radius:11px;gap:14px;padding:15px;display:grid}.practice-advanced-panel__grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;display:grid}.practice-manual-mode{border:1px solid var(--border);min-height:58px;color:var(--ink);text-align:right;background:#f8fbfd;border-radius:9px;grid-template-columns:20px 1fr;align-items:start;gap:9px;padding:10px 12px;display:grid}.practice-manual-mode.is-selected{border-color:var(--blue-600);background:var(--blue-50);box-shadow:0 0 0 3px #0077aa12}.practice-manual-mode>svg{width:18px;color:var(--blue-700)}.practice-manual-mode span{gap:3px;display:grid}.practice-manual-mode strong{font-size:10px}.practice-manual-mode small{color:var(--muted);font-size:9px;line-height:1.6}.practice-starter-code{color:#496678;gap:7px;font-size:11px;font-weight:700;display:grid}.practice-case-settings{gap:7px;display:grid}.practice-case-settings h3{margin:2px 0 4px;font-size:12px}.practice-case-settings>div{border:1px solid var(--border);background:#fff;border-radius:8px;grid-template-columns:minmax(100px,1fr) auto 150px;align-items:center;gap:9px;min-height:50px;padding:7px 9px;display:grid}.practice-case-settings code{color:#345d73;text-overflow:ellipsis;white-space:nowrap;font-size:10px;overflow:hidden}.practice-case-settings>div>label{grid-template-columns:auto 85px;align-items:center;gap:6px;display:grid}.practice-case-settings input{height:34px;min-height:34px}.practice-prompt-option{border:1px solid var(--border);cursor:pointer;background:#f8fbfd;border-radius:9px;align-items:flex-start;min-height:58px;padding:10px 12px;flex-direction:row!important;gap:9px!important;display:flex!important}.practice-prompt-option input{width:16px;height:16px;accent-color:var(--blue-700);flex:none;margin-top:2px}.practice-prompt-option span{gap:3px;display:grid}.practice-prompt-option strong{color:var(--ink);font-size:10px}.practice-prompt-option small{color:var(--muted);font-size:9px;line-height:1.65}.practice-prompt-option code{color:var(--blue-700)}.practice-published-note{color:var(--blue-700);background:var(--blue-50);border:1px solid #b9dbe9;border-radius:10px;gap:4px;margin-bottom:17px;padding:12px 14px;display:grid}.practice-published-note strong{font-size:11px}.practice-published-note span{color:#527184;font-size:9px;line-height:1.7}.practice-tests-editor{border-top:1px solid var(--border);margin-top:6px;padding-top:19px}.practice-tests-editor__head{justify-content:space-between;align-items:center;gap:16px;margin-bottom:12px;display:flex}.practice-tests-editor__head h3{margin-bottom:3px;font-size:15px}.practice-tests-editor__head p{color:var(--muted);margin:0;font-size:10px}.practice-test-row{border:1px solid var(--border);background:#fbfdfe;border-radius:11px;grid-template-columns:1fr 1fr 165px;gap:11px;margin-bottom:11px;padding:14px;display:grid}.practice-test-row__title{grid-column:1/-1;align-items:center;gap:8px;display:flex}.practice-test-row__title strong{margin-left:auto}.test-visibility{color:var(--green);background:var(--green-bg);border:0;border-radius:7px;align-items:center;gap:5px;padding:6px 9px;font-size:9px;font-weight:800;display:inline-flex}.test-visibility.is-hidden{color:#7459a8;background:#f1edfb}.test-visibility svg,.practice-test-row .icon-button svg{width:14px;height:14px}.practice-test-row .danger{color:#a53a40}.practice-test-row textarea{text-align:left;min-height:78px;font-family:Consolas,monospace;font-size:11px}.practice-workspace{min-height:100vh;color:var(--ink);background:#edf3f6;grid-template-rows:72px 1fr;display:grid}.practice-workspace__header{border-bottom:1px solid var(--border);background:#fff;grid-template-columns:auto minmax(0,1fr) auto auto;align-items:center;gap:17px;padding:0 20px;display:grid}.practice-workspace__header>div:nth-child(2){min-width:0}.practice-workspace__header h1{text-overflow:ellipsis;white-space:nowrap;margin:2px 0 0;font-size:17px;overflow:hidden}.practice-workspace__header small{color:var(--blue-600);font-size:9px;font-weight:800}.practice-workspace__points{color:var(--amber);background:var(--amber-bg);border-radius:8px;align-items:center;gap:7px;padding:8px 11px;font-size:11px;font-weight:800;display:flex}.practice-workspace__points svg{width:17px}.practice-workspace__grid{grid-template-columns:minmax(280px,.8fr) minmax(430px,1.35fr) minmax(280px,.8fr);gap:10px;min-height:0;padding:10px;display:grid}.practice-problem,.practice-code,.practice-results{border:1px solid var(--border);background:#fff;border-radius:12px;min-height:0;overflow-y:auto}.practice-problem{padding:21px}.practice-problem__badge{width:max-content;color:var(--blue-700);background:var(--blue-50);border-radius:7px;align-items:center;gap:6px;padding:7px 10px;font-size:9px;font-weight:800;display:flex}.practice-problem__badge svg{width:15px}.practice-problem h2{margin:20px 0 9px;font-size:18px}.practice-problem h3,.practice-attempts h3{margin:20px 0 8px;font-size:13px}.practice-description,.practice-problem section>p{white-space:pre-wrap;color:#4f6e80;font-size:11px;line-height:1.9}.practice-example{border:1px solid var(--border);background:#fbfdfe;border-radius:9px;margin-top:10px;padding:12px}.practice-example strong{margin-bottom:8px;font-size:10px;display:block}.practice-example label{color:var(--muted);margin:7px 0 3px;font-size:8px;display:block}.practice-example pre,.practice-result-list pre{color:#d9eff7;text-align:left;background:#0b334a;border-radius:6px;margin:0;padding:8px;font:10px/1.6 Consolas,monospace;overflow:auto}.practice-code{grid-template-rows:50px minmax(380px,1fr) auto;display:grid;overflow:hidden}.practice-code>header{color:#d9eff7;background:#0b334a;border-bottom:1px solid #274c61;justify-content:space-between;align-items:center;padding:0 14px;display:flex}.practice-code>header div,.practice-code>header button{align-items:center;gap:7px;display:flex}.practice-code>header button{color:#a8c5d3;background:0 0;border:0;font-size:9px}.practice-code>header svg{width:15px}.practice-code>textarea{resize:none;color:#d6e9f2;text-align:left;tab-size:4;background:#092b3f;border:0;outline:0;width:100%;min-height:0;padding:20px;font:13px/1.72 Consolas,Courier New,monospace}.practice-code>footer{border-top:1px solid var(--border);background:#fff;justify-content:space-between;align-items:center;gap:12px;padding:11px 13px;display:flex}.practice-code>footer>span{color:var(--muted);font-size:9px}.practice-code>footer>div{gap:8px;display:flex}.practice-code>footer .button{white-space:nowrap;align-items:center;gap:6px;display:inline-flex}.practice-results{padding:18px}.practice-results h2{font-size:16px}.practice-results__empty{color:#8ba0ac;text-align:center;place-content:center;justify-items:center;min-height:260px;display:grid}.practice-results__empty svg{background:#eef4f7;border-radius:50%;width:36px;height:36px;padding:9px}.practice-results__empty p{max-width:220px;margin-top:10px;font-size:10px;line-height:1.8}.practice-result-banner{border-radius:9px;align-items:center;gap:9px;padding:12px;display:flex}.practice-result-banner>svg{flex:none}.practice-result-banner>div{gap:3px;display:grid}.practice-result-banner strong{font-size:10px}.practice-result-banner span{opacity:.8;font-size:8px}.practice-result-banner.is-passed{color:var(--green);background:var(--green-bg)}.practice-result-banner.is-failed{color:#a23a43;background:#fff0f1}.practice-award{color:#91620c;background:var(--amber-bg);border-radius:9px;grid-template-columns:32px 1fr;align-items:center;margin-top:10px;padding:11px;display:grid}.practice-award svg{grid-row:1/3}.practice-award span{font-size:8px}.practice-result-list{gap:7px;margin-top:12px;display:grid}.practice-result-list>article{border:1px solid var(--border);border-radius:8px;grid-template-columns:22px 1fr;gap:8px;padding:10px;display:grid}.practice-result-list article>span svg{width:17px}.practice-result-list .passed{color:var(--green)}.practice-result-list .failed{color:#b33d46}.practice-result-list article>div{gap:5px;min-width:0;display:grid}.practice-result-list strong,.practice-result-list small{align-items:center;gap:5px;font-size:9px;display:flex}.practice-result-list strong svg,.practice-result-list small svg{width:12px}.practice-result-list small{color:var(--muted)}.practice-result-list p{color:#a23a43;white-space:pre-wrap;margin:0;font-size:9px}.practice-attempts{border-top:1px solid var(--border);margin-top:17px;padding-top:2px}.practice-attempts>div{border-bottom:1px solid #edf2f5;grid-template-columns:1fr auto auto;gap:8px;padding:7px 0;font-size:9px;display:grid}.practice-attempts strong{color:#a23a43}.practice-attempts strong.passed{color:var(--green)}.practice-attempts small{color:var(--muted)}.modal--practice-attempts{grid-template-rows:auto minmax(0,1fr) auto;width:100%;max-width:1120px;height:92vh;max-height:760px;display:grid;overflow:hidden}.modal--practice-attempts>header{min-height:82px}.modal--practice-attempts>header>div{gap:3px;display:grid}.modal--practice-attempts>header h2{margin:0}.modal--practice-attempts>header small{color:var(--muted)}.modal--practice-attempts>footer{border-top:1px solid var(--border);background:#fbfdfe;justify-content:space-between;align-items:center;gap:15px;min-height:64px;padding:12px 24px;display:flex}.modal--practice-attempts>footer>span{color:var(--muted);align-items:center;gap:7px;font-size:9px;display:flex}.modal--practice-attempts>footer svg{width:15px}.attempts-back{width:max-content;color:var(--blue-600);background:0 0;border:0;align-items:center;gap:5px;padding:0;font-size:9px;font-weight:800;display:inline-flex}.attempts-back svg{width:14px}.attempts-error{margin:12px 24px 0}.attempts-loading{margin:20px 24px}.attempts-roster{background:#f8fbfd;gap:15px;min-height:0;padding:20px 24px 24px;display:grid;overflow-y:auto}.attempts-summary{grid-template-columns:repeat(4,minmax(0,1fr));gap:10px;display:grid}.attempts-summary>div{border:1px solid var(--border);background:#fff;border-radius:10px;grid-template-rows:auto auto;grid-template-columns:34px 1fr;align-items:center;column-gap:10px;min-height:74px;padding:12px 14px;display:grid}.attempts-summary svg{width:34px;height:34px;color:var(--blue-700);background:var(--blue-50);border-radius:8px;grid-row:1/3;padding:8px}.attempts-summary span{color:var(--muted);font-size:9px}.attempts-summary strong{font-size:20px}.attempts-search{border:1px solid var(--border);background:#fff;border-radius:9px;align-items:center;gap:8px;height:43px;padding:0 12px;display:flex}.attempts-search svg{width:17px;color:var(--blue-700);flex:none}.attempts-search input{width:100%;color:var(--ink);background:0 0;border:0;outline:0}.attempts-table-shell{border:1px solid var(--border);background:#fff;border-radius:11px;overflow-x:auto}.attempts-table-shell table{min-width:780px}.attempt-student{align-items:center;gap:9px;display:flex}.attempt-student i{width:31px;height:31px;color:var(--blue-700);background:var(--blue-50);border-radius:50%;place-items:center;font-style:normal;font-weight:800;display:grid}.attempt-status{border-radius:7px;align-items:center;gap:5px;width:max-content;padding:5px 8px;font-size:9px;font-weight:800;display:inline-flex}.attempt-status svg{width:13px;height:13px}.attempt-status.is-passed{color:var(--green);background:var(--green-bg)}.attempt-status.is-progress{color:var(--amber);background:var(--amber-bg)}.attempt-status.is-muted{color:var(--muted);background:#eef3f6}.attempts-empty{color:var(--muted);text-align:center;padding:30px 18px;font-size:11px}.attempt-explorer{background:#f7fafc;grid-template-columns:250px minmax(0,1fr);min-height:0;display:grid}.attempt-list{border-left:1px solid var(--border);background:#fff;padding:17px 13px;overflow-y:auto}.attempt-list h3{margin:0 4px 11px;font-size:13px}.attempt-list>button{border:1px solid var(--border);width:100%;color:var(--ink);text-align:right;background:#fff;border-radius:9px;grid-template-columns:1fr auto;gap:6px;margin-bottom:7px;padding:11px;display:grid}.attempt-list>button:hover,.attempt-list>button.is-active{background:var(--blue-50);border-color:#9cc8dc}.attempt-list>button>span{gap:4px;min-width:0;display:grid}.attempt-list>button strong{font-size:10px}.attempt-list>button small{color:var(--muted);font-size:8px}.attempt-list>button>em{color:#a13c44;background:#fff0f1;border-radius:6px;padding:4px 6px;font-size:8px;font-style:normal;font-weight:800}.attempt-list>button>em.is-passed{color:var(--green);background:var(--green-bg)}.attempt-list>button>small{text-align:left;grid-column:2}.attempt-detail{min-width:0;padding:18px;overflow-y:auto}.attempt-detail__summary{grid-template-columns:1.3fr repeat(3,minmax(0,1fr));gap:9px;display:grid}.attempt-detail__summary>div{border:1px solid var(--border);background:#fff;border-radius:9px;grid-template-rows:auto auto;grid-template-columns:27px minmax(0,1fr);align-items:center;column-gap:8px;min-width:0;padding:11px;display:grid}.attempt-detail__summary svg{width:27px;height:27px;color:var(--blue-700);background:var(--blue-50);border-radius:7px;grid-row:1/3;padding:6px}.attempt-detail__summary span{color:var(--muted);font-size:8px}.attempt-detail__summary strong{text-overflow:ellipsis;white-space:nowrap;font-size:10px;overflow:hidden}.attempt-code{background:#092b3f;border:1px solid #163f56;border-radius:10px;margin-top:13px;overflow:hidden}.attempt-code header{color:#d9eff7;border-bottom:1px solid #285064;justify-content:space-between;align-items:center;height:43px;padding:0 13px;display:flex}.attempt-code header>div{align-items:center;gap:7px;display:flex}.attempt-code header svg{width:15px}.attempt-code header strong{font-size:10px}.attempt-code header span{color:#b9d4df;background:#ffffff12;border-radius:6px;padding:4px 7px;font-size:8px}.attempt-code pre{color:#d7eaf2;text-align:left;white-space:pre;min-height:190px;max-height:330px;margin:0;padding:17px;font:12px/1.7 Consolas,Courier New,monospace;overflow:auto}.attempt-runtime-error{color:#a13c44;background:#fff0f1;border:1px solid #f0c7ca;border-radius:8px;grid-template-columns:20px 1fr;gap:7px;margin-top:10px;padding:10px;display:grid}.attempt-runtime-error svg{width:17px}.attempt-runtime-error pre{white-space:pre-wrap;margin:0;font:9px/1.6 Consolas,monospace;overflow:auto}.attempt-test-results{margin-top:15px}.attempt-test-results h3{margin-bottom:9px;font-size:13px}.attempt-test-results>div{grid-template-columns:repeat(2,minmax(0,1fr));gap:7px;display:grid}.attempt-test-results article{border:1px solid var(--border);background:#fff;border-radius:8px;grid-template-columns:20px 1fr;gap:7px;padding:9px;display:grid}.attempt-test-results article>span svg{width:16px}.attempt-test-results .is-passed{color:var(--green)}.attempt-test-results .is-failed{color:#b33d46}.attempt-test-results article p{gap:3px;margin:0;display:grid}.attempt-test-results article strong{font-size:9px}.attempt-test-results article small{color:var(--muted);font-size:8px}.attempt-test-results article em{color:#a13c44;font-size:8px;font-style:normal}.activity-summary{grid-template-columns:repeat(4,minmax(0,1fr));gap:13px;display:grid}.activity-summary>div{border:1px solid var(--border);background:#fff;border-radius:13px;grid-template-rows:auto auto;grid-template-columns:42px 1fr;align-items:center;column-gap:12px;min-height:94px;padding:17px 19px;display:grid;box-shadow:0 5px 16px #003c6009}.activity-summary svg{width:42px;height:42px;color:var(--blue-700);background:var(--blue-50);border-radius:10px;grid-row:1/3;padding:10px}.activity-summary span{color:var(--muted);font-size:10px}.activity-summary strong{font-size:24px}.activity-summary .is-alert{background:linear-gradient(145deg,#fff,#fffaf0);border-color:#f0d7a6}.activity-summary .is-alert svg{color:var(--amber);background:var(--amber-bg)}.activity-filters{grid-template-columns:minmax(260px,1fr) minmax(210px,.55fr) minmax(175px,.4fr);gap:11px;display:grid}.activity-filters>label{border:1px solid var(--border);background:#fff;border-radius:10px;align-items:center;gap:9px;min-height:46px;padding:0 13px;display:flex}.activity-filters>label svg{width:18px;color:var(--blue-700)}.activity-filters input{width:100%;height:44px;color:var(--ink);background:0 0;border:0;outline:0}.activity-table-shell{border:1px solid var(--border);background:#fff;border-radius:13px;overflow-x:auto;box-shadow:0 7px 22px #003c6009}.activity-table{min-width:1050px}.activity-table th{white-space:nowrap}.activity-table td{vertical-align:middle}.activity-student{align-items:center;gap:10px;display:flex}.activity-student i{width:36px;height:36px;color:var(--blue-700);background:var(--blue-50);border-radius:50%;flex:none;place-items:center;font-style:normal;font-weight:850;display:grid}.activity-student>span,.activity-academic{gap:3px;min-width:0;display:grid}.activity-student strong,.activity-academic strong{text-overflow:ellipsis;white-space:nowrap;max-width:190px;font-size:10px;overflow:hidden}.activity-student small,.activity-academic small{color:var(--muted);font-size:8px}.activity-progress{gap:7px;min-width:125px;display:grid}.activity-progress>span{justify-content:space-between;align-items:center;gap:9px;display:flex}.activity-progress strong{font-size:10px}.activity-progress small{color:var(--muted);font-size:8px}.activity-progress .progress{height:6px}.activity-status{border-radius:7px;align-items:center;width:max-content;padding:5px 8px;font-size:9px;font-weight:800;display:inline-flex}.activity-status--active,.activity-status--completed{color:var(--green);background:var(--green-bg)}.activity-status--in_progress{color:var(--blue-700);background:var(--blue-50)}.activity-status--not_started{color:var(--muted);background:#eef3f6}.activity-status--inactive{color:#6f667c;background:#f2eef7}.activity-status--struggling{color:#a23a43;background:#fff0f1}.activity-table .table-action{white-space:nowrap;align-items:center;gap:6px;display:inline-flex}.activity-table .table-action svg{width:14px}.activity-count{color:var(--muted);margin:-6px 2px 0;font-size:9px}.activity-privacy-note{color:#46697d;background:#f7fbfd;border:1px solid #cfe1ea;border-radius:11px;align-items:flex-start;gap:11px;padding:14px 16px;display:flex}.activity-privacy-note>svg{width:21px;color:var(--blue-700);flex:none}.activity-privacy-note>div{gap:4px;display:grid}.activity-privacy-note strong{color:var(--ink);font-size:10px}.activity-privacy-note span{font-size:9px;line-height:1.7}.modal--student-activity{grid-template-rows:auto minmax(0,1fr) auto;width:100%;max-width:1180px;height:92vh;max-height:800px;display:grid;overflow:hidden}.modal--student-activity>header{min-height:82px}.modal--student-activity>header>div{gap:3px;display:grid}.modal--student-activity>header h2{margin:0}.modal--student-activity>header small{color:var(--muted)}.modal--student-activity>footer{border-top:1px solid var(--border);background:#fbfdfe;justify-content:space-between;align-items:center;gap:15px;min-height:64px;padding:12px 24px;display:flex}.modal--student-activity>footer>span{color:var(--muted);align-items:center;gap:7px;font-size:9px;display:flex}.modal--student-activity>footer svg{width:15px}.activity-modal-loading{margin:20px 24px}.student-activity-detail{background:#f8fbfd;min-height:0;padding:20px 24px 25px;overflow-y:auto}.activity-detail-summary{grid-template-columns:repeat(4,minmax(0,1fr));gap:10px;display:grid}.activity-detail-summary>div{border:1px solid var(--border);background:#fff;border-radius:10px;grid-template-rows:auto auto;grid-template-columns:34px 1fr;align-items:center;column-gap:9px;min-height:72px;padding:11px 13px;display:grid}.activity-detail-summary svg{width:34px;height:34px;color:var(--blue-700);background:var(--blue-50);border-radius:8px;grid-row:1/3;padding:8px}.activity-detail-summary span{color:var(--muted);font-size:8px}.activity-detail-summary strong{font-size:18px}.activity-course-progress,.activity-exercises,.activity-timeline{border:1px solid var(--border);background:#fff;border-radius:11px;margin-top:15px;padding:16px}.student-activity-detail h3{margin:0 0 12px;font-size:13px}.activity-course-progress>div{grid-template-columns:repeat(2,minmax(0,1fr));gap:9px;display:grid}.activity-course-progress article{background:#fbfdfe;border:1px solid #e0ebf0;border-radius:9px;gap:9px;padding:12px;display:grid}.activity-course-progress article header{background:0 0;border:0;justify-content:space-between;align-items:center;gap:10px;padding:0;display:flex}.activity-course-progress article header>div{gap:3px;min-width:0;display:grid}.activity-course-progress strong{text-overflow:ellipsis;white-space:nowrap;font-size:10px;overflow:hidden}.activity-course-progress small{color:var(--muted);font-size:8px}.activity-course-progress b{color:var(--blue-700);font-size:11px}.activity-course-progress .progress{height:6px}.activity-detail-columns{grid-template-columns:minmax(0,1.45fr) minmax(280px,.75fr);gap:15px;display:grid}.activity-exercise-list{gap:7px;display:grid}.activity-exercise-list article{border:1px solid #e1eaef;border-radius:9px;grid-template-columns:minmax(150px,1fr) auto 55px 110px;align-items:center;gap:9px;min-height:56px;padding:9px 10px;display:grid}.activity-exercise-list article>div{gap:3px;min-width:0;display:grid}.activity-exercise-list strong{text-overflow:ellipsis;white-space:nowrap;font-size:9px;overflow:hidden}.activity-exercise-list small{color:var(--muted);font-size:8px}.activity-exercise-list article>span:not(.activity-status){color:var(--muted);text-align:center;font-size:9px}.activity-exercise-list .table-action{justify-content:center;justify-self:stretch}.activity-timeline>div{display:grid}.activity-timeline article{border-bottom:1px solid #edf2f5;grid-template-columns:25px minmax(0,1fr) auto;align-items:center;gap:8px;padding:9px 0;display:grid}.activity-timeline article:last-child{border-bottom:0}.activity-timeline__mark{color:#9a6570;background:#fff0f1;border-radius:50%;place-items:center;width:24px;height:24px;display:grid}.activity-timeline__mark.is-passed{color:var(--green);background:var(--green-bg)}.activity-timeline__mark svg{width:13px}.activity-timeline article>div{gap:2px;min-width:0;display:grid}.activity-timeline strong{text-overflow:ellipsis;white-space:nowrap;font-size:9px;overflow:hidden}.activity-timeline small,.activity-timeline time{color:var(--muted);font-size:7px}.activity-timeline em{color:var(--muted);font-size:8px;font-style:normal}@media (width<=1240px){.practice-grid,.activity-summary{grid-template-columns:repeat(2,minmax(0,1fr))}.practice-workspace__grid{grid-template-columns:minmax(260px,.8fr) minmax(430px,1.3fr)}.practice-results{grid-column:1/-1;max-height:none}}@media (width<=800px){.practice-summary,.practice-grid,.activity-filters,.activity-detail-columns{grid-template-columns:1fr}.activity-detail-summary,.activity-course-progress>div{grid-template-columns:repeat(2,minmax(0,1fr))}.practice-toolbar--student .select-control,.practice-status-tabs{flex:100%;width:100%}.practice-form-grid,.practice-test-row,.practice-comparison__modes,.practice-comparison__rules{grid-template-columns:1fr}.practice-comparison__rules>p{grid-column:1}.practice-advanced-panel__grid{grid-template-columns:1fr}.practice-smart-setup{padding:13px}.practice-smart-setup__actions{flex-direction:column;align-items:stretch}.practice-smart-setup__actions .button{justify-content:center}.practice-output-preview>div{grid-template-columns:1fr;gap:4px}.practice-case-settings>div{grid-template-columns:1fr auto}.practice-case-settings>div>label{grid-column:1/-1}.practice-form-wide,.practice-test-row__title{grid-column:1}.practice-workspace{grid-template-rows:auto 1fr}.practice-workspace__header{grid-template-columns:minmax(0,1fr) auto;min-height:68px;padding:9px 13px}.practice-workspace__header .brand,.practice-workspace__header>div:nth-child(2){display:none}.practice-workspace__grid{grid-template-columns:1fr}.practice-code{grid-template-rows:50px 520px auto}.practice-code>footer{flex-direction:column;align-items:stretch}.practice-code>footer>div .button{flex:1;justify-content:center}.attempts-summary{grid-template-columns:repeat(2,1fr)}.attempt-explorer{grid-template-columns:1fr;overflow-y:auto}.attempt-list{border-left:0;border-bottom:1px solid var(--border);max-height:230px}.attempt-detail{overflow:visible}.attempt-detail__summary{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (width<=520px){.practice-toolbar{flex-direction:column;align-items:stretch}.practice-toolbar .select-control{width:100%}.practice-status-tabs{grid-template-columns:repeat(3,minmax(0,1fr))}.practice-status-tabs button{gap:4px;padding:0 6px}.activity-summary,.activity-detail-summary,.activity-course-progress>div{grid-template-columns:1fr}.activity-table-shell{box-shadow:none;background:0 0;border:0;overflow:visible}.activity-table{min-width:0}.activity-table thead{display:none}.activity-table tbody{gap:10px;display:grid}.activity-table tr{border:1px solid var(--border);background:#fff;border-radius:11px;grid-template-columns:1fr 1fr;gap:11px 15px;padding:13px;display:grid}.activity-table td{border:0;gap:4px;min-width:0;padding:0;font-size:10px;display:grid}.activity-table td:before{content:attr(data-label);color:var(--muted);font-size:8px;font-weight:700}.activity-table td:first-child,.activity-table td:nth-child(2),.activity-table td:nth-child(3),.activity-table td:last-child{grid-column:1/-1}.activity-table td:first-child:before,.activity-table td:last-child:before{display:none}.activity-table .table-action{justify-content:center;width:100%}.activity-exercise-list article{grid-template-columns:1fr auto}.activity-exercise-list article>span:not(.activity-status),.activity-exercise-list .table-action{grid-column:1/-1}.modal--student-activity>footer{flex-direction:column;align-items:stretch}.modal--student-activity>footer .button{width:100%}.student-activity-detail{padding:14px}.practice-tests-editor__head{flex-direction:column;align-items:stretch}.modal--practice>form{padding:17px 14px 21px}.practice-workspace__points{display:none}.practice-code>footer>div{flex-direction:column}.modal--practice-attempts>footer{flex-direction:column;align-items:stretch}.modal--practice-attempts>footer .button{width:100%}.attempts-roster{padding:14px}.attempts-summary{grid-template-columns:1fr 1fr}.attempt-detail{padding:12px}.attempt-detail__summary,.attempt-test-results>div{grid-template-columns:1fr}.attempts-table-shell{background:0 0;border:0;overflow:visible}.attempts-table-shell table{min-width:0}.attempts-table-shell thead{display:none}.attempts-table-shell tbody{gap:10px;display:grid}.attempts-table-shell tr{border:1px solid var(--border);background:#fff;border-radius:10px;grid-template-columns:1fr 1fr;gap:11px 15px;padding:13px;display:grid}.attempts-table-shell td{border:0;gap:4px;min-width:0;padding:0;font-size:10px;display:grid}.attempts-table-shell td:before{content:attr(data-label);color:var(--muted);font-size:8px;font-weight:700}.attempts-table-shell td:first-child,.attempts-table-shell td:last-child{grid-column:1/-1}.attempts-table-shell td:first-child:before,.attempts-table-shell td:last-child:before{display:none}.attempts-table-shell td:last-child .table-action{justify-content:center;width:100%}}.audit-toolbar{justify-content:space-between;gap:1rem;margin-bottom:1rem;display:flex}.audit-toolbar form{border:1px solid var(--border);background:#fff;border-radius:12px;flex:1;align-items:center;gap:.55rem;max-width:680px;padding:.45rem .7rem;display:flex}.audit-toolbar input{background:0 0;border:0;outline:0;flex:1}.audit-action{align-items:center;gap:.6rem;display:flex}.audit-action svg{width:18px;color:var(--primary)}.audit-action span{gap:.15rem;display:grid}.audit-action small{color:var(--text-muted);direction:ltr;font-size:.72rem}.audit-table td{vertical-align:middle}@media (width<=700px){.audit-toolbar{flex-direction:column;align-items:stretch}.audit-toolbar form{max-width:none}.people-sections{overflow-x:auto}}
