:root{--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light;--purple-950:#2a174f;--purple-900:#3b246a;--purple-800:#4b2f8f;--purple-700:#5a3fa3;--purple-600:#7254df;--purple-500:#8d73f5;--purple-200:#d9cbff;--purple-100:#f1ebff;--purple-50:#f8f5ff;--navy-950:#0b1220;--navy-900:#0f172a;--navy-800:#172033;--blue-700:#1d4ed8;--blue-600:#2563eb;--blue-100:#dbeafe;--slate-900:#0f172a;--slate-800:#1e293b;--slate-700:#334155;--slate-600:#475569;--slate-500:#64748b;--slate-400:#94a3b8;--slate-300:#cbd5e1;--slate-200:#e2e8f0;--slate-100:#f1f5f9;--slate-50:#f8fafc;--white:#fff;--success:#15803d;--success-bg:#dcfce7;--warning:#9a5b08;--warning-bg:#fff7df;--danger:#b42318;--danger-bg:#fef3f2;--radius-lg:24px;--radius:14px;--radius-sm:10px;--shadow-soft:0 10px 30px #48308717;--shadow-admin:0 1px 2px #0f172a0a, 0 10px 28px #0f172a0d;--student-bg:#f8f7fc;--student-card:#fff;--student-border:#e8e3f1;--student-sidebar-width:252px;--student-sidebar-width-collapsed:84px;--student-content-width:1180px;--student-shadow:0 8px 28px #37255f0f;--space-xs:.5rem;--space-sm:.75rem;--space-md:1rem;--space-lg:1.5rem;--space-xl:2rem;--font-sans:Inter, ui-sans-serif, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;--font-dys-friendly:Verdana, Arial, "Segoe UI", sans-serif}*,:before,:after{box-sizing:border-box}html{scroll-behavior:smooth;min-width:320px}body{color:var(--slate-800);font-family:var(--font-sans);-webkit-font-smoothing:antialiased;margin:0;line-height:1.5}button,input,select,textarea{color:inherit;font:inherit}button,select{cursor:pointer}button:disabled,select:disabled{cursor:not-allowed}a{color:inherit;text-decoration:none}img,svg{max-width:100%;display:block}h1,h2,h3,p{margin-top:0}[x-cloak]{display:none!important}:focus-visible{outline-offset:3px;outline:3px solid #2563eb4d}.skip-link{z-index:1000;background:var(--white);box-shadow:var(--shadow-admin);border-radius:8px;padding:.75rem 1rem;position:fixed;top:.75rem;left:.75rem;transform:translateY(-150%)}.skip-link:focus{transform:translateY(0)}.visually-hidden{clip:rect(0, 0, 0, 0);white-space:nowrap;border:0;width:1px;height:1px;padding:0;position:absolute;overflow:hidden}.brand{align-items:center;gap:.75rem;min-height:44px;display:inline-flex}.brand img{border-radius:10px;flex:none;box-shadow:0 8px 20px #2563eb33}.brand-copy{line-height:1.12;display:grid}.brand-copy strong{color:var(--purple-900);letter-spacing:-.03em;font-size:1.3rem}.brand-copy small{color:var(--slate-500);letter-spacing:.06em;text-transform:uppercase;margin-top:.25rem;font-size:.68rem;font-weight:600}.button{border-radius:var(--radius-sm);border:1px solid #0000;justify-content:center;align-items:center;gap:.55rem;min-height:44px;padding:.7rem 1.05rem;font-size:.9rem;font-weight:700;line-height:1.2;transition:border-color .16s,background .16s,box-shadow .16s,transform .16s;display:inline-flex}.button--primary{border-color:var(--purple-600);color:var(--white);background:linear-gradient(135deg, var(--purple-600), var(--purple-800));box-shadow:0 8px 20px #5a3fa333}.button--secondary{border-color:var(--slate-200);color:var(--slate-700);background:var(--white);box-shadow:0 2px 8px #0f172a0a}.button--ghost{color:var(--slate-600);background:0 0;border-color:#0000}.button:hover:not(:disabled){transform:translateY(-1px)}.button--primary:hover:not(:disabled){background:linear-gradient(135deg, var(--purple-700), var(--purple-900));box-shadow:0 10px 24px #5a3fa345}.button--secondary:hover:not(:disabled),.button--ghost:hover:not(:disabled){border-color:var(--purple-200);color:var(--purple-800);background:var(--purple-50)}.button:disabled{opacity:.58;box-shadow:none}.button--full{width:100%}.button--large{min-height:50px;padding-inline:1.25rem}.button--with-badge{flex-wrap:wrap}.button--with-badge small{letter-spacing:.04em;text-transform:uppercase;background:#fff3;border-radius:999px;padding:.18rem .45rem;font-size:.62rem}.field{gap:.4rem;min-width:0;display:grid}.field label{color:var(--slate-700);font-size:.83rem;font-weight:700}.field label span{color:var(--danger)}.field input,.field select,.field textarea{border:1px solid var(--slate-300);background:var(--white);border-radius:9px;outline:none;width:100%;min-height:46px;padding:.72rem .8rem;transition:border-color .16s,box-shadow .16s}.field textarea{resize:vertical;min-height:120px}.field input::placeholder,.field textarea::placeholder{color:var(--slate-400)}.field input:focus,.field select:focus,.field textarea:focus{border-color:var(--blue-600);box-shadow:0 0 0 3px #2563eb1a}.field .is-invalid{border-color:var(--danger)}.field-error{color:var(--danger);margin:0;font-size:.78rem}.checkbox-field{color:var(--slate-600);cursor:pointer;align-items:flex-start;gap:.65rem;font-size:.85rem;display:flex}.checkbox-field input{width:18px;height:18px;accent-color:var(--purple-700);margin:.1rem 0 0}.alert{border-radius:var(--radius-sm);border:1px solid;align-items:flex-start;gap:.7rem;padding:.8rem .9rem;font-size:.86rem;display:flex}.alert--success{color:#166534;background:var(--success-bg);border-color:#bbebcb}.alert--error{color:var(--danger);background:var(--danger-bg);border-color:#fecaca}.alert--info{border-color:var(--blue-100);color:var(--blue-700);background:#eff6ff}.alert-icon{background:#ffffffbf;border-radius:50%;flex:0 0 24px;place-items:center;width:24px;height:24px;font-weight:800;display:grid}.alert>div{flex:1;padding-top:.1rem}.alert>button{color:currentColor;background:0 0;border:0;border-radius:7px;flex:0 0 28px;width:28px;height:28px;margin:-.2rem -.2rem 0 0;font-size:1.25rem}.eyebrow{color:var(--purple-700);letter-spacing:.12em;text-transform:uppercase;margin-bottom:.65rem;font-size:.74rem;font-weight:800;display:inline-block}.public-body{background:linear-gradient(145deg,#f8f5ff 0%,#f2ecff 45%,#fff 100%);min-height:100vh;overflow-x:hidden}.public-header{justify-content:space-between;align-items:center;gap:1rem;width:min(1180px,100% - 2rem);min-height:76px;margin:0 auto;display:flex}.public-header nav{align-items:center;gap:.5rem;display:flex}.public-header nav form{display:flex}.brand--public .brand-copy small{display:none}.public-notification{width:min(640px,100% - 2rem);margin:1rem auto}.hero{align-items:center;gap:2.5rem;width:min(1180px,100% - 2rem);min-height:calc(100vh - 76px);margin:0 auto;padding:3.5rem 0 5rem;display:grid}.hero-copy{max-width:650px}.hero h1{color:var(--purple-950);letter-spacing:-.055em;margin-bottom:1.25rem;font-size:clamp(2.4rem,10vw,4.8rem);line-height:1.02}.hero h1 em{color:var(--purple-600);font-family:Georgia,serif;font-weight:500;display:block}.hero-copy>p{max-width:590px;color:var(--text-soft,#5c4d85);margin-bottom:1.7rem;font-size:1.02rem;line-height:1.8}.hero-actions{flex-wrap:wrap;align-items:center;gap:1rem;display:flex}.hero-reassurance{color:var(--slate-500);align-items:center;gap:.45rem;font-size:.82rem;display:inline-flex}.hero-reassurance span{width:23px;height:23px;color:var(--success);background:var(--success-bg);border-radius:50%;place-items:center;font-weight:800;display:grid}.hero-illustration{--mx:0;--my:0;min-height:330px;position:relative}.hero-shape{transform:translate3d(calc(var(--mx) * 20px), calc(var(--my) * 20px), 0) rotate(-6deg);background:linear-gradient(145deg,#d8c9ff,#b6a2ff);border-radius:43% 57% 49% 51%/57% 43%;transition:transform .6s cubic-bezier(.22,1,.36,1);position:absolute;inset:7% 10% 3%;box-shadow:inset 0 0 80px #ffffff59,0 34px 80px #593fa32e}.hero-shape:before{content:"";border:1px solid #ffffff80;border-radius:50%;position:absolute;inset:17%}.floating-card{z-index:2;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);will-change:transform;background:#ffffffe6;border:1px solid #fffc;align-items:center;gap:.8rem;transition:transform .5s cubic-bezier(.22,1,.36,1);display:flex;position:absolute;box-shadow:0 18px 42px #3f2a7d33}.floating-card--primary{transform:translate3d(calc(var(--mx) * -8px), calc(var(--my) * -8px), 0);border-radius:18px;padding:1rem;top:34%;left:6%;right:6%}.floating-card--primary .floating-icon{width:52px;height:52px;color:var(--white);background:linear-gradient(135deg, var(--purple-600), var(--purple-800));border-radius:15px;flex:0 0 52px;place-items:center;font-size:1.5rem;font-weight:800;display:grid}.floating-card div{display:grid}.floating-card strong{color:var(--purple-900)}.floating-card small{color:var(--slate-500)}.floating-card--small{border-radius:14px;padding:.7rem .9rem;font-size:.8rem}.floating-card--small span{border-radius:9px;place-items:center;width:30px;height:30px;display:grid}.floating-card--top{transform:translate3d(calc(var(--mx) * -14px), calc(var(--my) * -14px), 0);top:8%;right:0}.floating-card--top span{color:#8b5a00;background:#fff3b0}.floating-card--bottom{transform:translate3d(calc(var(--mx) * -11px), calc(var(--my) * -11px), 0);bottom:2%;left:0}.floating-card--bottom span{color:var(--success);background:var(--success-bg)}.floating-card--top-left{transform:translate3d(calc(var(--mx) * -17px), calc(var(--my) * -17px), 0);top:2%;left:4%}.floating-card--bottom-right{transform:translate3d(calc(var(--mx) * -9px), calc(var(--my) * -9px), 0);bottom:16%;right:2%}.floating-card--icon-purple{color:var(--purple-700);background:var(--purple-100)}.floating-card--icon-blue{color:var(--blue-600);background:var(--blue-100)}@media (prefers-reduced-motion:reduce),(pointer:coarse){.hero-shape,.floating-card--primary,.floating-card--top,.floating-card--bottom,.floating-card--top-left,.floating-card--bottom-right{transition:none!important;transform:none!important}}.home-features{background:#ffffffbd;padding:5rem max(1rem,50% - 590px)}.section-heading{max-width:650px;margin-bottom:2rem}.section-heading h2{color:var(--purple-950);letter-spacing:-.035em;font-size:clamp(1.8rem,6vw,2.8rem);line-height:1.15}.feature-grid{gap:1rem;display:grid}.feature-card{box-shadow:var(--shadow-soft);background:#ffffffd1;border:1px solid #d9cbffa6;border-radius:20px;padding:1.5rem}.feature-card h3{color:var(--purple-900);margin:1rem 0 .45rem}.feature-card p{color:var(--slate-500);margin:0;font-size:.9rem;line-height:1.7}.feature-icon{border-radius:14px;place-items:center;width:45px;height:45px;font-size:1.2rem;font-weight:800;display:grid}.feature-icon--purple{color:var(--purple-700);background:var(--purple-100)}.feature-icon--green{color:var(--success);background:var(--success-bg)}.feature-icon--orange{color:#b45309;background:#ffedd5}.public-footer{color:var(--slate-500);background:var(--white);text-align:center;gap:.5rem;padding:2.5rem 1rem;font-size:.8rem;display:grid}.public-footer strong{color:var(--purple-900);font-size:1.1rem}.auth-body{background:var(--purple-50);min-height:100vh;overflow-x:hidden}.auth-shell{min-height:100vh;display:grid}.auth-visual{min-height:220px;color:var(--white);background:linear-gradient(145deg, var(--purple-950), var(--purple-700));padding:1.25rem;position:relative;overflow:hidden}.brand--auth{z-index:2;position:relative}.brand--auth .brand-copy strong,.brand--auth .brand-copy small{color:var(--white)}.auth-visual-copy{z-index:2;max-width:560px;margin-top:2.3rem;position:relative}.auth-visual-copy .eyebrow{color:var(--purple-200)}.auth-visual-copy h1{letter-spacing:-.04em;margin-bottom:.6rem;font-size:clamp(1.65rem,7vw,3.4rem);line-height:1.08}.auth-visual-copy p{color:#ddd4f7;margin-bottom:0;font-size:.92rem}.auth-orb{filter:blur(1px);border-radius:50%;position:absolute}.auth-orb--one{background:#ae94ff3d;width:290px;height:290px;bottom:-110px;right:-80px}.auth-orb--two{border:28px solid #ffffff0d;width:170px;height:170px;top:-70px;right:20%}.auth-content{background:var(--white);align-items:center;padding:2rem 1rem;display:grid}.login-panel{width:min(100%,440px);margin:0 auto}.login-back{min-height:44px;color:var(--slate-500);align-items:center;gap:.45rem;margin-bottom:1.5rem;font-size:.84rem;font-weight:600;display:inline-flex}.login-heading{margin-bottom:1.4rem}.login-heading h1{color:var(--purple-950);letter-spacing:-.04em;margin-bottom:.45rem;font-size:clamp(2rem,8vw,2.7rem);line-height:1.1}.login-heading p{color:var(--slate-500);margin:0}.login-form{gap:1.1rem;margin-top:1.2rem;display:grid}.login-help{color:var(--slate-500);text-align:center;margin:1.4rem auto 0;font-size:.78rem;line-height:1.6}.app-body{background:var(--slate-100);min-height:100vh;overflow-x:hidden}.app-shell{min-height:100vh}.sidebar{display:none}.app-column{flex-direction:column;min-width:0;min-height:100vh;display:flex}.topbar{z-index:20;border-bottom:1px solid var(--slate-200);-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);background:#fffffff5;align-items:center;gap:.75rem;min-height:68px;padding:.7rem 1rem;display:flex;position:sticky;top:0}.topbar-menu,.icon-button{border:1px solid var(--slate-200);background:var(--white);border-radius:9px;flex:0 0 42px;place-items:center;width:42px;height:42px;display:grid}.topbar-menu svg{fill:none;stroke:currentColor;stroke-linecap:round;stroke-width:1.8px;width:22px}.topbar-title{flex:1;min-width:0;line-height:1.2;display:grid}.topbar-title strong{color:var(--slate-900);text-overflow:ellipsis;white-space:nowrap;font-size:.95rem;overflow:hidden}.topbar-eyebrow{color:var(--slate-500);letter-spacing:.06em;text-transform:uppercase;font-size:.66rem;font-weight:700}.topbar-user{position:relative}.user-menu-button{background:0 0;border:0;border-radius:10px;align-items:center;gap:.55rem;min-height:44px;padding:.2rem;display:flex}.user-menu-button>svg{fill:none;width:17px;stroke:var(--slate-500);stroke-width:1.8px}.user-menu-copy{display:none}.profile-avatar{width:38px;height:38px;color:var(--white);background:linear-gradient(135deg, var(--purple-600), var(--blue-600));border-radius:10px;flex:0 0 38px;place-items:center;font-size:.72rem;font-weight:800;display:grid}.profile-avatar--small{width:38px;height:38px}.dropdown-menu{border:1px solid var(--slate-200);border-radius:var(--radius-sm);background:var(--white);width:min(260px,100vw - 2rem);position:absolute;top:calc(100% + .5rem);right:0;overflow:hidden;box-shadow:0 18px 45px #0f172a29}.dropdown-menu p{color:var(--slate-500);text-overflow:ellipsis;margin:0;padding:.8rem .9rem;font-size:.76rem;overflow:hidden}.dropdown-menu form{border-top:1px solid var(--slate-100)}.dropdown-menu button{width:100%;min-height:44px;color:var(--danger);background:var(--white);text-align:left;border:0;padding:.7rem .9rem;font-size:.82rem;font-weight:700}.notification-region{width:min(100% - 2rem,1160px);margin:.75rem auto 0}.notification-region:empty{display:none}.app-content{flex:1;width:min(100%,1200px);margin:0 auto;padding:1.25rem 1rem 2.5rem}.app-footer{border-top:1px solid var(--slate-200);color:var(--slate-500);flex-wrap:wrap;justify-content:space-between;gap:.4rem 1rem;padding:1rem;font-size:.72rem;display:flex}.app-footer span:first-child{color:var(--slate-700);font-weight:800}.page-heading{flex-direction:column;align-items:flex-start;gap:1rem;margin-bottom:1.3rem;display:flex}.page-heading h1{color:var(--slate-900);letter-spacing:-.035em;margin-bottom:.35rem;font-size:clamp(1.65rem,7vw,2.25rem);line-height:1.12}.page-heading p{color:var(--slate-500);margin:0;font-size:.9rem}.page-heading .eyebrow{color:var(--blue-600);margin-bottom:.45rem}.card{border:1px solid var(--slate-200);border-radius:var(--radius);background:var(--white);min-width:0;box-shadow:var(--shadow-admin);overflow:hidden}.card-header{justify-content:space-between;align-items:flex-start;gap:1rem;padding:1.1rem 1.1rem 0;display:flex}.card-header h2{color:var(--slate-900);margin-bottom:.25rem;font-size:1rem}.card-header p{color:var(--slate-500);margin:0;font-size:.78rem}.card-content{padding:1.1rem}.card-actions{flex:none}.stat-grid{gap:.85rem;margin-bottom:1rem;display:grid}.stat-card{border:1px solid var(--slate-200);border-radius:var(--radius);background:var(--white);min-height:138px;box-shadow:var(--shadow-admin);justify-content:space-between;padding:1.1rem;display:flex;position:relative;overflow:hidden}.stat-card:before{background:var(--purple-600);content:"";width:4px;position:absolute;inset:0 auto 0 0}.stat-card>div{align-content:space-between;display:grid}.stat-card span{color:var(--slate-500);font-size:.78rem;font-weight:700}.stat-card strong{color:var(--slate-900);font-size:2rem;line-height:1}.stat-card small{color:var(--slate-400);font-size:.68rem}.stat-card-icon{background:var(--purple-100);border-radius:12px;place-items:center;width:43px;height:43px;display:grid;color:var(--purple-700)!important;font-size:1.25rem!important}.stat-card--blue:before{background:var(--blue-600)}.stat-card--blue .stat-card-icon{background:var(--blue-100);color:var(--blue-700)!important}.stat-card--green:before{background:var(--success)}.stat-card--green .stat-card-icon{background:var(--success-bg);color:var(--success)!important}.stat-card--orange:before{background:#d97706}.stat-card--orange .stat-card-icon{background:#ffedd5;color:#b45309!important}.dashboard-grid,.dashboard-side{gap:1rem;min-width:0;display:grid}.dashboard-side{align-content:start;margin-top:1rem}.empty-state{text-align:center;justify-items:center;padding:2.5rem 1rem;display:grid}.empty-state-icon{width:55px;height:55px;color:var(--purple-700);background:var(--purple-100);border-radius:16px;place-items:center;margin-bottom:1rem;display:grid}.empty-state-icon svg{fill:none;stroke:currentColor;stroke-linecap:round;stroke-linejoin:round;stroke-width:1.6px;width:26px}.empty-state h3{color:var(--slate-800);margin-bottom:.4rem;font-size:.95rem}.empty-state p{max-width:470px;color:var(--slate-500);margin:0;font-size:.8rem}.empty-state-actions{margin-top:1rem}.backend-status{align-items:flex-start;gap:.9rem;display:flex}.backend-status-icon{width:45px;height:45px;color:var(--blue-700);background:var(--blue-100);border-radius:12px;flex:0 0 45px;place-items:center;font-size:1.4rem;font-weight:800;display:grid}.backend-status>div{gap:.4rem;display:grid}.backend-status strong{color:var(--slate-800);font-size:.86rem}.backend-status p{color:var(--slate-500);margin:0;font-size:.76rem}.status-badge{border-radius:999px;align-items:center;gap:.4rem;width:fit-content;padding:.22rem .5rem;font-size:.65rem;font-weight:800;display:inline-flex}.status-badge>span{background:currentColor;border-radius:50%;width:7px;height:7px}.status-badge--success{color:var(--success);background:var(--success-bg)}.status-badge--warning{color:var(--warning);background:var(--warning-bg)}.status-badge--neutral{color:var(--slate-600);background:var(--slate-100)}.status-badge--info{color:var(--blue-700);background:#eff6ff}.quick-link{border:1px solid var(--slate-200);border-radius:var(--radius-sm);align-items:center;gap:.8rem;min-height:64px;padding:.7rem;display:flex}.quick-link>span{width:39px;height:39px;color:var(--purple-700);background:var(--purple-100);border-radius:10px;flex:0 0 39px;place-items:center;display:grid}.quick-link>div{flex:1;min-width:0;display:grid}.quick-link strong{color:var(--slate-800);font-size:.82rem}.quick-link small{color:var(--slate-500);font-size:.7rem}.quick-link b{color:var(--slate-400)}.filter-card{margin-bottom:1rem}.filter-grid{gap:.85rem;display:grid}.filter-reset{align-self:end}.responsive-table{border:1px solid var(--slate-200);border-radius:var(--radius-sm);-webkit-overflow-scrolling:touch;width:100%;overflow-x:auto}.responsive-table table{border-collapse:collapse;width:100%;min-width:720px}.responsive-table th{border-bottom:1px solid var(--slate-200);color:var(--slate-500);background:var(--slate-50);text-align:left;letter-spacing:.04em;text-transform:uppercase;padding:.75rem .85rem;font-size:.7rem}.responsive-table td{border-bottom:1px solid var(--slate-100);padding:.8rem;font-size:.8rem}.responsive-table .empty-row td{padding:0}.responsive-table .empty-state{width:calc(100vw - 4.2rem);min-width:280px;max-width:100%;position:sticky;left:0}.mobile-navigation{z-index:100;display:flex;position:fixed;inset:0}.mobile-navigation__backdrop,.modal-backdrop{-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px);background:#0f172a9e;border:0;width:100%;position:absolute;inset:0}.mobile-navigation__panel{background:var(--navy-900);flex-direction:column;width:min(86vw,330px);height:100%;display:flex;position:relative;box-shadow:20px 0 60px #00000047}.mobile-navigation__header{border-bottom:1px solid #ffffff17;justify-content:space-between;align-items:center;padding:1rem;display:flex}.mobile-navigation__header .brand-copy strong,.mobile-navigation__header .brand-copy small{color:var(--white)}.mobile-navigation__header .brand-copy small{color:var(--slate-400)}.mobile-navigation__header .icon-button{color:var(--white);background:#ffffff0f;border-color:#ffffff1f;font-size:1.4rem}.mobile-navigation__links{gap:.35rem;padding:1rem;display:grid}.mobile-navigation__logout{border-top:1px solid #ffffff17;margin-top:auto;padding:1rem}.nav-link{width:100%;min-height:46px;color:var(--slate-300);text-align:left;background:0 0;border:0;border-radius:8px;align-items:center;gap:.75rem;padding:.65rem .75rem;font-size:.82rem;font-weight:650;display:flex}.nav-link svg{fill:none;stroke:currentColor;stroke-linecap:round;stroke-linejoin:round;stroke-width:1.65px;flex:0 0 20px;width:20px}.nav-link.is-active{color:var(--white);box-shadow:inset 3px 0 var(--blue-600);background:#2563eb42}.slide-enter{transition:transform .2s ease-out}.slide-enter-start,.slide-leave-end{transform:translate(-100%)}.slide-leave{transition:transform .16s ease-in}.modal{z-index:150;place-items:center;padding:1rem;display:grid;position:fixed;inset:0}.modal-panel{border-radius:var(--radius);background:var(--white);width:min(100%,620px);max-height:calc(100vh - 2rem);position:relative;overflow:auto;box-shadow:0 30px 90px #0f172a4d}.modal-panel--wide{width:min(100%,880px)}.modal-panel>header{border-bottom:1px solid var(--slate-200);justify-content:space-between;align-items:center;gap:1rem;padding:1rem;display:flex}.modal-panel>header h2{margin:0;font-size:1.05rem}.modal-panel>div{padding:1rem}.error-page{text-align:center;align-content:center;place-items:center;width:min(620px,100% - 2rem);min-height:65vh;margin:0 auto;padding:3rem 0;display:grid}.error-page>span{color:var(--purple-200);font-size:clamp(5rem,25vw,9rem);font-weight:900;line-height:.9}.error-page h1{color:var(--purple-950);margin:1rem 0 .5rem;font-size:2rem}.error-page p{color:var(--slate-500);margin-bottom:1.5rem}.error-reference{border:1px solid var(--slate-200);background:var(--slate-50);width:min(100%,520px);color:var(--slate-700);text-align:left;border-radius:12px;gap:.35rem;margin:0 0 1.5rem;padding:.9rem 1rem;display:grid}.error-reference strong{color:var(--purple-900);font-size:.85rem}.error-reference code{overflow-wrap:anywhere;font-size:.75rem}.error-reference small{color:var(--slate-500);font-size:.7rem;line-height:1.45}@media (width>=540px){.brand--public .brand-copy small{display:block}.stat-grid,.filter-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.filter-reset{width:fit-content}}@media (width>=760px){.public-header{min-height:88px}.hero{grid-template-columns:minmax(0,1.08fr) minmax(320px,.92fr);min-height:calc(100vh - 88px);padding-block:4rem 5.5rem}.hero-illustration{min-height:430px}.floating-card--primary{padding:1.25rem;left:8%;right:3%}.feature-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.auth-shell{grid-template-columns:minmax(330px,.82fr) minmax(430px,1.18fr)}.auth-visual{min-height:100vh;padding:2rem}.auth-visual-copy{margin-top:clamp(7rem,22vh,13rem)}.auth-visual-copy p{font-size:1rem;line-height:1.7}.auth-content{padding:3rem}.user-menu-copy{text-align:left;line-height:1.15;display:grid}.user-menu-copy strong{color:var(--slate-800);font-size:.77rem}.user-menu-copy small{color:var(--slate-500);margin-top:.2rem;font-size:.66rem}.page-heading{flex-direction:row;justify-content:space-between;align-items:center}.filter-grid{grid-template-columns:repeat(4,minmax(0,1fr))}.filter-reset{grid-column:1/-1}.app-content{padding:1.7rem 1.5rem 3rem}.app-footer{padding-inline:1.5rem}.responsive-table .empty-state{width:100%}}.document-heading{margin-bottom:1.25rem}.document-upload-card,.document-card,.document-preview-card,.document-confirm-card,.document-question-card,.document-similar-card,.document-revision-form,.document-tabs-card,.document-chatbox-card{border:1px solid var(--student-border);background:var(--white);box-shadow:var(--student-shadow);border-radius:20px}.document-upload-card{gap:1.2rem;padding:1rem;display:grid}.document-upload-card__copy{align-items:center;gap:.8rem;display:flex}.document-upload-card__copy>span{width:46px;height:46px;color:var(--purple-700);background:var(--purple-100);border-radius:14px;flex:0 0 46px;place-items:center;font-size:1.5rem;display:grid}.document-upload-card h2,.document-upload-card p{margin:0}.document-upload-card h2{color:var(--purple-950);font-size:1.05rem}.document-upload-card p{color:var(--slate-500);font-size:.72rem}.document-upload-card form{gap:.8rem;display:grid}.document-dropzone{border:2px dashed var(--purple-200);min-height:132px;color:var(--purple-800);background:var(--purple-50);text-align:center;cursor:pointer;border-radius:16px;place-content:center;gap:.25rem;padding:1rem;transition:all .16s;display:grid}.document-dropzone.is-dragging{border-color:var(--purple-600);background:var(--purple-100);transform:scale(1.01)}.document-dropzone input{opacity:0;width:1px;height:1px;position:absolute;overflow:hidden}.document-dropzone span{color:var(--slate-500);font-size:.72rem}.document-upload-progress{gap:.35rem;display:grid}.document-upload-progress>div{color:var(--slate-600);justify-content:space-between;font-size:.7rem;display:flex}.document-upload-progress progress,.document-work-progress{width:100%;accent-color:var(--purple-600)}.document-filters{scrollbar-width:thin;gap:.45rem;margin:1.25rem 0;padding-bottom:.35rem;display:flex;overflow-x:auto}.document-filters a{border:1px solid var(--student-border);min-height:42px;color:var(--slate-600);background:var(--white);border-radius:99px;flex:none;align-items:center;gap:.4rem;padding:.55rem .8rem;font-size:.72rem;font-weight:800;display:flex}.document-filters a.is-active{border-color:var(--purple-600);color:var(--purple-800);background:var(--purple-100)}.document-filters span{background:#ffffffd9;border-radius:99px;place-items:center;min-width:20px;height:20px;font-size:.62rem;display:grid}.document-grid{gap:.9rem;display:grid}.document-card{gap:.7rem;min-width:0;padding:1rem;display:grid}.document-card>header,.document-card>footer{justify-content:space-between;align-items:center;gap:.7rem;display:flex}.document-card>header>div{align-items:center;gap:.5rem;display:flex}.document-card>header>div>span{color:var(--purple-800);background:var(--purple-100);border-radius:7px;padding:.25rem .45rem;font-size:.6rem;font-weight:900}.document-card small,.document-card>p{color:var(--slate-500);font-size:.68rem}.document-card h2{color:var(--purple-950);overflow-wrap:anywhere;margin:0;font-size:1rem}.document-card>p{margin:0}.document-card>ul{flex-wrap:wrap;gap:.35rem;margin:0;padding:0;list-style:none;display:flex}.document-card>ul li{color:var(--slate-600);background:var(--slate-100);border-radius:8px;padding:.3rem .45rem;font-size:.62rem}.document-card details{position:relative}.document-card summary{width:44px;height:44px;color:var(--slate-600);cursor:pointer;border-radius:10px;place-items:center;list-style:none;display:grid}.document-card details>div{z-index:5;border:1px solid var(--student-border);background:var(--white);width:180px;box-shadow:var(--student-shadow);border-radius:11px;position:absolute;bottom:calc(100% + .35rem);right:0;overflow:hidden}.document-card details a,.document-card details button{background:var(--white);width:100%;color:var(--slate-700);text-align:left;border:0;padding:.7rem;font-size:.7rem;display:block}.document-empty{text-align:center;padding:2rem}.document-breadcrumb{margin-bottom:1rem}.document-breadcrumb a{color:var(--purple-700);font-size:.75rem;font-weight:800}.document-detail-heading,.document-work-heading{flex-wrap:wrap;justify-content:space-between;align-items:flex-start;gap:.8rem 1rem;margin-bottom:1.25rem;display:flex}.document-detail-heading{margin-bottom:.6rem}.document-detail-actions{flex-wrap:wrap;flex:none;gap:.5rem;margin-left:auto;display:flex}.document-rename-inline{margin-bottom:1.25rem}.document-rename-inline form{flex-wrap:wrap;gap:.5rem;display:flex}.document-rename-inline input{border:1px solid var(--slate-200);border-radius:10px;flex:260px;min-width:0;padding:.6rem .8rem;font-size:.82rem}.document-detail-heading h1,.document-work-heading h1{color:var(--purple-950);letter-spacing:-.04em;overflow-wrap:anywhere;margin:0;font-size:clamp(1.7rem,6vw,2.6rem)}.document-detail-heading h1 small{color:var(--slate-500);letter-spacing:0;font-size:.45em;font-weight:600}.document-detail-heading p,.document-work-heading p{color:var(--slate-500);margin:.4rem 0 0;font-size:.75rem}.document-processing{border:1px solid var(--purple-200);background:var(--purple-50);border-radius:18px;align-items:center;gap:1rem;padding:1.2rem;display:flex}.document-processing h2,.document-processing p{margin:0}.document-processing h2{color:var(--purple-900);font-size:1rem}.document-processing p{color:var(--slate-600);margin-top:.3rem;font-size:.75rem}.document-spinner{border:4px solid var(--purple-200);border-top-color:var(--purple-700);border-radius:50%;flex:0 0 38px;width:38px;height:38px;animation:.8s linear infinite document-spin}@keyframes document-spin{to{transform:rotate(360deg)}}.page-loader{z-index:9999;-webkit-backdrop-filter:blur(1px);backdrop-filter:blur(1px);background:#ffffffd9;place-items:center;gap:.8rem;display:grid;position:fixed;inset:0}.page-loader[hidden]{display:none}.page-loader span:last-child{color:var(--purple-900);font-size:.78rem;font-weight:800}.document-inline-actions{flex-wrap:wrap;gap:.6rem;margin:1rem 0;display:flex}.document-detail-grid{gap:1rem;margin:1rem 0;display:grid}.document-detail-badges{flex-wrap:wrap;align-items:center;gap:.5rem;display:flex}.student-main:has(.document-workspace){width:min(100% - 2rem,1600px);transition:width .18s}.student-shell.is-sidebar-collapsed .student-main:has(.document-workspace){width:min(calc(100% - 2rem), calc(1600px + var(--student-sidebar-width) - var(--student-sidebar-width-collapsed)))}.document-cta-bar{margin:1rem 0}.document-workspace{align-items:start;gap:1rem;margin:1rem 0;display:grid}.document-workspace--three-col{--doc-viewer-height:640px;grid-template-areas:"preview""tabs""chat"}.document-tab-empty{border:1px dashed var(--slate-300);color:var(--slate-500);text-align:center;border-radius:16px;margin:0;padding:1rem;font-size:.75rem}.document-tab-soon{align-content:start;gap:.4rem;min-height:100%;padding:.5rem 0;display:grid}.document-tab-soon p{color:var(--slate-500);margin:0;font-size:.78rem;line-height:1.6}.document-audio-list{gap:.7rem;margin:0;padding:0;list-style:none;display:grid}.document-audio-item{border:1px solid var(--student-border);border-radius:14px;gap:.5rem;padding:.8rem .9rem;display:grid}.document-audio-item__meta{flex-wrap:wrap;align-items:center;gap:.5rem;display:flex}.document-audio-item__meta strong{color:var(--purple-900);font-size:.8rem}.document-audio-item__meta small{color:var(--slate-500);font-size:.68rem}.document-audio-item__player{flex-wrap:wrap;align-items:center;gap:.6rem;display:flex}.document-audio-item__player audio{flex:240px;min-width:0;height:36px}.document-audio-item__download{color:var(--purple-700);white-space:nowrap;font-size:.72rem;font-weight:800}.document-audio-item__progress{color:var(--slate-500);align-items:center;gap:.6rem;font-size:.74rem;display:flex}.document-audio-item__progress .document-spinner--small{border-width:3px;flex:0 0 20px;width:20px;height:20px}.document-audio-item__error{color:var(--danger);margin:0;font-size:.74rem}.document-audio-item form{margin:0}.document-preview-card{flex-direction:column;grid-area:preview;min-width:0;display:flex;overflow:hidden}.document-preview-card>header{border-bottom:1px solid var(--student-border);flex:none;justify-content:space-between;align-items:center;gap:.7rem;padding:.9rem 1rem;display:flex}.document-preview-card h2{color:var(--purple-950);margin:0;font-size:.95rem}.document-preview-card--tall{height:var(--doc-viewer-height);min-height:560px}.document-preview-card header a{color:var(--purple-700);font-size:.72rem;font-weight:800}.document-preview-card iframe{border:0;flex:auto;width:100%;min-height:0}.document-preview-card>img,.document-preview-card .document-no-preview{flex:auto;min-height:0}.document-preview-card>img{object-fit:contain;background:var(--slate-100);width:100%}.document-no-preview{text-align:center;place-content:center;justify-items:center;gap:.6rem;min-height:300px;padding:1.5rem;display:grid}.document-no-preview p{max-width:390px;color:var(--slate-500);font-size:.75rem}.document-confirm-card,.document-revision-form{margin-top:1rem;padding:1rem}.document-confirm-card>header h2{color:var(--purple-950);margin:0}.document-confirm-card>header p{color:var(--slate-600);font-size:.75rem}.document-confirm-card>form{gap:1.2rem;display:grid}.document-confirm-fields{gap:.8rem;display:grid}.document-programme-picker,.document-detected-answers,.document-revision-form fieldset{border:1px solid var(--student-border);border-radius:15px;min-width:0;margin:0;padding:1rem}.document-programme-picker legend,.document-detected-answers legend,.document-revision-form legend{color:var(--purple-900);padding:0 .35rem;font-size:.82rem;font-weight:850}.document-programme-picker>p,.document-detected-answers>p,.document-revision-form fieldset>p{color:var(--slate-500);font-size:.7rem}.document-revision-form{gap:1rem;display:grid}.checkable-dropdown{margin-top:.6rem;position:relative}.checkable-dropdown__trigger{border:1px solid var(--slate-200);background:var(--white);width:100%;color:var(--purple-900);text-align:left;cursor:pointer;border-radius:11px;padding:.7rem .9rem;font-size:.78rem;font-weight:800}.checkable-dropdown__panel{border:1px solid var(--student-border);background:var(--white);border-radius:12px;gap:.35rem;margin-top:.5rem;padding:.6rem;display:grid}.checkable-dropdown__panel--thumbnails{grid-template-columns:repeat(auto-fill,minmax(120px,1fr))}.checkbox-field--thumbnail{text-align:center;flex-direction:column;align-items:center;gap:.35rem;padding:.5rem}.checkbox-field--thumbnail img{object-fit:cover;border:1px solid var(--slate-200);background:var(--slate-100);border-radius:8px;width:112px;height:150px}.checkbox-field--thumbnail input{margin:0}.checkbox-field--thumbnail.is-disabled{opacity:.4}.document-programme-list{gap:.5rem;max-height:420px;display:grid;overflow-y:auto}.document-programme-list label{border:1px solid var(--slate-200);cursor:pointer;border-radius:11px;align-items:flex-start;gap:.65rem;padding:.7rem;display:flex}.document-programme-list input{accent-color:var(--purple-700);flex:none;margin-top:.2rem}.document-programme-list label>span{gap:.15rem;display:grid}.document-programme-list small{color:var(--slate-600);font-size:.67rem;line-height:1.45}.document-programme-list em{color:var(--purple-700);font-size:.6rem;font-style:normal;font-weight:800}.document-detected-answers article{border-top:1px solid var(--slate-200);padding:.8rem 0}.document-detected-answers article>p{color:var(--slate-700);font-size:.75rem}.document-similar-card{gap:1rem;margin-top:1rem;padding:1rem;display:grid}.document-resource-card p,.document-resource-card li{color:var(--slate-700);font-size:.76rem;line-height:1.65}.document-resource-card h3{color:var(--purple-900);margin:.9rem 0 .35rem;font-size:.8rem}.document-resource-card ul{gap:.4rem;margin:0;padding-left:1.1rem;display:grid}.document-resource-card small{color:var(--slate-500);font-size:.65rem}.document-resource-card>header{flex-wrap:wrap;justify-content:flex-end;align-items:center;gap:.5rem;display:flex}.document-resource-card>header select{border:1px solid var(--slate-200);min-width:0;max-width:100%;color:var(--purple-900);border-radius:9px;padding:.45rem .6rem;font-size:.76rem;font-weight:700}.document-resource-card__body{margin-top:.6rem}.document-resource-card__footer{border-top:1px solid var(--student-border);justify-content:space-between;align-items:center;gap:.6rem;margin-top:1rem;padding-top:.7rem;display:flex}.document-resource-card__footer-actions{gap:.8rem;display:flex}.document-resource-card__print,.document-resource-card__delete{color:var(--slate-500);cursor:pointer;background:0 0;border:0;font-size:.68rem;font-weight:800}.document-resource-card__print:hover{color:var(--purple-700)}.document-resource-card__print:disabled{color:var(--slate-300);cursor:not-allowed}.document-resource-card__delete:hover{color:#b91c1c}.document-qcm-score{background:var(--purple-50);color:var(--purple-800);border-radius:12px;margin:0 0 .8rem;padding:.55rem .75rem;font-size:.78rem;font-weight:700}.document-qcm-list{gap:1rem;margin:0;padding:0;list-style:none;display:grid}.document-qcm-question{border-bottom:1px solid var(--student-border);gap:.55rem;padding-bottom:1rem;display:grid}.document-qcm-question:last-child{border-bottom:0;padding-bottom:0}.document-qcm-question__head{align-items:baseline;gap:.5rem;display:flex}.document-qcm-question__head p{color:var(--slate-800);margin:0;font-size:.8rem;font-weight:650;line-height:1.55}.document-qcm-choices{gap:.4rem;display:grid}.document-qcm-choice{border:1px solid var(--slate-200);background:var(--white);width:100%;color:var(--slate-700);text-align:left;cursor:pointer;border-radius:10px;padding:.55rem .7rem;font-size:.76rem;line-height:1.5;transition:border-color .15s,background .15s,color .15s;display:block}.document-qcm-choice:hover{border-color:var(--purple-200)}.document-qcm-choice.is-selected{border-color:var(--purple-600);background:var(--purple-50);color:var(--purple-900);font-weight:700}.document-qcm-choice.is-correct{border-color:var(--success);background:var(--success-bg);color:var(--success);font-weight:700}.document-qcm-choice.is-incorrect{border-color:var(--danger);background:var(--danger-bg);color:var(--danger);font-weight:700}.document-qcm-explanation{background:var(--slate-50);color:var(--slate-600);border-radius:10px;margin:0;padding:.5rem .65rem;font-size:.72rem;line-height:1.55}.document-riddle-progress{background:var(--purple-50);color:var(--purple-800);border-radius:12px;margin:0 0 .8rem;padding:.55rem .75rem;font-size:.78rem;font-weight:700}.document-riddle-statement{color:var(--slate-800);margin:0 0 .8rem;font-size:.85rem;font-weight:650;line-height:1.6}.document-riddle-hints{gap:.45rem;margin:0 0 .8rem;padding:0;list-style:none;display:grid}.document-riddle-hints li{border:1px solid var(--slate-200);background:var(--slate-50);color:var(--slate-700);border-radius:10px;padding:.55rem .7rem;font-size:.76rem;line-height:1.5}.document-riddle-answer-form{gap:.5rem;margin-bottom:.8rem;display:flex}.document-riddle-answer-form input{border:1px solid var(--slate-200);border-radius:10px;flex:1;min-width:0;padding:.55rem .7rem;font-size:.78rem}.document-riddle-answer-form input:focus{outline:2px solid var(--purple-300);outline-offset:1px}.document-riddle-card>.document-resource-card__body>p.status-badge{margin:0 0 .8rem}.document-riddle-answer{background:var(--success-bg);border-radius:10px;padding:.6rem .75rem}.document-riddle-answer p{margin:0}.document-riddle-answer p+p{margin-top:.4rem}.document-riddle-explanation{color:var(--slate-600);font-size:.72rem;line-height:1.55}.document-riddle-actions{gap:.8rem;display:flex}.document-tabs-card,.document-chatbox-card{flex-direction:column;min-width:0;display:flex;overflow:hidden}.document-tabs-card{grid-area:tabs}.document-chatbox-card{grid-area:chat}.document-tabs-card__tablist{border-bottom:1px solid var(--student-border);scrollbar-width:thin;flex:none;gap:.2rem;padding:.6rem .6rem 0;display:flex;overflow-x:auto}.document-tabs-card__tablist button{color:var(--slate-500);white-space:nowrap;cursor:pointer;background:0 0;border:0;border-bottom:2px solid #0000;flex:none;padding:.65rem .75rem;font-size:.76rem;font-weight:750;transition:color .16s,border-color .16s}.document-tabs-card__tablist button:hover{color:var(--purple-700)}.document-tabs-card__tablist button.is-active{border-color:var(--purple-600);color:var(--purple-800)}.document-tabs-card__panel{flex:auto;min-height:0;padding:1rem;overflow-y:auto}.document-chatbox-card__header{border-bottom:1px solid var(--student-border);flex:none;align-items:center;gap:.65rem;padding:.9rem 1rem;display:flex}.document-chatbox-card__icon{width:38px;height:38px;color:var(--white);background:linear-gradient(135deg, var(--purple-600), var(--purple-800));border-radius:12px;flex:0 0 38px;place-items:center;display:grid}.document-chatbox-card__icon svg{fill:none;stroke:currentColor;stroke-linecap:round;stroke-linejoin:round;stroke-width:1.8px;width:19px}.document-chatbox-card__header div{min-width:0;display:grid}.document-chatbox-card__header strong{color:var(--purple-950);font-size:.88rem}.document-chatbox-card__header small{color:var(--slate-500);font-size:.68rem}.document-chatbox-card__body{flex:auto;min-height:0;padding:1rem;overflow-y:auto}.document-chatbox-card__body p{color:var(--slate-500);text-align:center;margin:0;font-size:.78rem;line-height:1.6}.document-chatbox-card__composer{border-top:1px solid var(--student-border);flex:none;gap:.5rem;padding:.75rem;display:flex}.document-chatbox-card__composer input{border:1px solid var(--slate-200);background:var(--slate-50);border-radius:12px;flex:auto;min-width:0;padding:.65rem .85rem;font-size:.8rem}.document-chatbox-card__composer input:disabled{color:var(--slate-400);cursor:not-allowed}.document-chatbox-card__composer button{width:40px;height:40px;color:var(--white);background:var(--purple-700);border:0;border-radius:10px;flex:0 0 40px;place-items:center;display:grid}.document-chatbox-card__composer button svg{fill:none;stroke:currentColor;stroke-linecap:round;stroke-linejoin:round;stroke-width:1.8px;width:17px}.document-chatbox-card__composer button:disabled{background:var(--slate-300);cursor:not-allowed}.document-work-heading>div:last-child{flex:none;justify-items:end;display:grid}.document-work-heading>div:last-child strong{color:var(--purple-800);font-size:1.4rem}.document-work-heading>div:last-child span{color:var(--slate-500);font-size:.62rem}.document-work-progress{height:10px;margin:0 0 1.2rem;display:block}.document-work-layout{align-items:start;gap:1rem;display:grid}.document-work-layout .document-chatbox-card{min-height:420px}.document-question-list{gap:1rem;min-width:0;display:grid}.document-question-card{padding:1rem;scroll-margin-top:6rem}.document-question-card>header{gap:.5rem;display:grid}.document-question-card>header span{color:var(--purple-700);text-transform:uppercase;font-size:.65rem;font-weight:850}.document-question-card h2{color:var(--purple-950);margin:.25rem 0 0;font-size:1rem;line-height:1.55}.document-question-card>header a{color:var(--purple-700);font-size:.68rem;font-weight:800}.document-question-format{color:var(--slate-500);font-size:.68rem}.document-hint{border-left:4px solid var(--purple-500);background:var(--purple-50);border-radius:0 10px 10px 0;margin:.6rem 0;padding:.75rem}.document-hint strong{color:var(--purple-800);font-size:.7rem}.document-hint p{color:var(--slate-700);margin:.25rem 0 0;font-size:.75rem}.document-attempt-feedback{background:var(--slate-100);border-radius:11px;margin:.8rem 0;padding:.8rem}.document-attempt-feedback--exact,.document-attempt-feedback--equivalent{color:var(--success);background:var(--success-bg)}.document-attempt-feedback--incorrect{color:var(--danger);background:var(--danger-bg)}.document-attempt-feedback p{color:inherit;margin:.25rem 0;font-size:.75rem}.document-attempt-feedback small{font-size:.62rem}.document-answer-form{gap:.7rem;margin-top:.8rem;display:grid}@media (width>=680px){.document-upload-card{grid-template-columns:minmax(220px,.7fr) minmax(0,1.3fr);padding:1.3rem}.document-upload-card__copy{align-self:start;padding-top:.4rem}.document-grid,.document-confirm-fields{grid-template-columns:repeat(2,minmax(0,1fr))}.document-similar-card{grid-template-columns:minmax(0,1fr) auto;align-items:center;padding:1.3rem}.document-question-card>header{grid-template-columns:minmax(0,1fr) auto}.document-answer-form{grid-template-columns:minmax(0,1fr) auto;align-items:end}}@media (width>=980px){.document-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.document-workspace--three-col{grid-template-columns:minmax(0,1fr) minmax(300px,380px);grid-template-areas:"preview tabs""preview chat";align-items:stretch;transition:grid-template-columns .18s}.document-tabs-card,.document-chatbox-card{height:calc((var(--doc-viewer-height) - 1rem) / 2);min-height:320px}.document-work-layout{grid-template-columns:minmax(0,1fr) minmax(300px,360px)}.document-work-layout .document-chatbox-card{height:calc(100vh - 2rem);max-height:780px;position:sticky;top:1rem}}@media (width>=1300px){.document-workspace--three-col{grid-template-columns:minmax(0,1fr) minmax(300px,360px) minmax(270px,320px);grid-template-areas:"preview tabs chat"}.document-tabs-card,.document-chatbox-card{height:var(--doc-viewer-height)}}@media print{body.printing-single-resource .student-sidebar,body.printing-single-resource .student-topbar,body.printing-single-resource .student-mobile-navigation,body.printing-single-resource .student-footer,body.printing-single-resource .document-breadcrumb,body.printing-single-resource .document-detail-heading,body.printing-single-resource .document-detail-actions,body.printing-single-resource .document-cta-bar,body.printing-single-resource .document-workspace>.document-preview-card,body.printing-single-resource .document-chatbox-card,body.printing-single-resource .document-tabs-card__tablist,body.printing-single-resource .document-revision-form,body.printing-single-resource .document-resource-card:not(.is-printing),body.printing-single-resource .document-resource-card__footer{display:none!important}body.printing-single-resource .document-workspace,body.printing-single-resource .document-tabs-card,body.printing-single-resource .document-tabs-card__panel{display:block}}.course-create-heading,.course-wizard{width:min(100%,1040px);margin-inline:auto}.course-edit-heading,.course-official-note,.course-editor,.publish-course-form{width:min(100%,1100px);margin-inline:auto}.course-wizard,.course-editor{gap:1.25rem;display:grid}.course-wizard-card .card-content,.course-editor-card .card-content{padding:clamp(1.1rem,3vw,1.7rem)}.course-official-note{border:1px solid var(--blue-100);background:#f4f8ff;border-radius:13px;align-items:flex-start;gap:.75rem;margin-bottom:1.25rem;padding:.9rem 1rem;display:flex}.course-official-note>span{width:27px;height:27px;color:var(--white);background:var(--blue-600);border-radius:50%;flex:none;place-items:center;font-size:.72rem;font-weight:900;display:grid}.course-official-note>div{gap:.15rem;display:grid}.course-official-note strong{color:var(--blue-700);font-size:.73rem}.course-official-note p{color:var(--slate-700);margin:0;font-size:.78rem;line-height:1.5}.course-step-heading{border-bottom:1px solid var(--slate-200);align-items:flex-start;gap:.9rem;margin-bottom:1.35rem;padding-bottom:1.15rem;display:flex}.course-step-heading>span{background:linear-gradient(135deg, var(--purple-600), var(--purple-800));color:#fff;border-radius:12px;flex:none;place-items:center;width:40px;height:40px;font-weight:900;display:grid;box-shadow:0 7px 16px #5a3fa333}.course-step-heading>div{min-width:0}.course-step-heading small{color:var(--purple-700);letter-spacing:.08em;text-transform:uppercase;margin-bottom:.15rem;font-size:.65rem;font-weight:850;display:block}.course-step-heading h2,.block-editor-heading h3{margin:0}.course-step-heading h2{color:var(--slate-900);font-size:clamp(1.05rem,3vw,1.3rem)}.course-step-heading p{color:var(--slate-500);margin:.25rem 0 0;font-size:.82rem}.course-programme-grid{gap:.9rem;display:grid}.course-wizard .field label,.course-editor .field label{font-size:.79rem}.course-wizard .field select,.course-wizard .field input,.course-editor .field select,.course-editor .field input{border-radius:11px;min-height:50px}.course-editor .field textarea{border-radius:11px}.course-wizard .field select:disabled{border-color:var(--slate-200);color:var(--slate-400);background:var(--slate-50);opacity:1}.course-entry-field,.course-objective-field{margin-top:1rem}.course-entry-field select{font-weight:650}.course-field-help{color:var(--slate-500);font-size:.71rem;line-height:1.45}.course-selection-summary{background:#f2fff7;border:1px solid #bce5cf;border-radius:12px;align-items:flex-start;gap:.75rem;margin-top:.9rem;padding:.85rem .95rem;display:flex}.course-selection-summary__icon{width:28px;height:28px;color:var(--success);background:var(--success-bg);border-radius:50%;flex:none;place-items:center;display:grid}.course-selection-summary__icon svg{fill:none;stroke:currentColor;stroke-linecap:round;stroke-linejoin:round;stroke-width:2.3px;width:16px}.course-selection-summary>div{gap:.15rem;min-width:0;display:grid}.course-selection-summary strong{color:#166534;font-size:.74rem}.course-selection-summary span{color:var(--slate-700);font-size:.8rem;line-height:1.45}.course-selection-summary small{color:var(--slate-500);font-size:.67rem}.course-creation-modes{border:0;min-width:0;margin:0;padding:0}.course-creation-modes legend{color:var(--slate-700);margin-bottom:.5rem;font-size:.79rem;font-weight:700}.choice-cards,.quick-check-admin-options{gap:.8rem;margin-bottom:1rem;display:grid}.course-creation-choice,.checkbox-card{border:1px solid var(--slate-200);background:var(--white);cursor:pointer;border-radius:14px;align-items:flex-start;gap:.75rem;padding:.95rem;transition:border-color .16s,background .16s,box-shadow .16s,transform .16s;display:flex;position:relative}.course-creation-choice:hover{border-color:var(--purple-200);background:var(--purple-50);transform:translateY(-1px)}.course-creation-choice.is-selected{border-color:var(--purple-500);background:var(--purple-50);box-shadow:0 0 0 3px #7254df1a}.course-creation-choice:has(input:focus-visible){outline-offset:3px;outline:3px solid #2563eb4d}.course-creation-choice>input{opacity:0;pointer-events:none;width:1px;height:1px;position:absolute}.course-creation-choice__icon{width:38px;height:38px;color:var(--purple-700);background:var(--purple-100);border-radius:11px;flex:none;place-items:center;display:grid}.course-creation-choice__icon svg{fill:none;stroke:currentColor;stroke-linecap:round;stroke-linejoin:round;stroke-width:1.8px;width:20px}.course-creation-choice__copy,.checkbox-card span{gap:.2rem;min-width:0;display:grid}.course-creation-choice__copy strong{color:var(--slate-800);font-size:.85rem}.course-creation-choice__copy small,.checkbox-card small{color:var(--slate-500);font-size:.72rem;line-height:1.5}.course-creation-choice__check{border:1px solid var(--slate-300);color:#0000;background:var(--white);border-radius:50%;flex:none;place-items:center;width:21px;height:21px;margin-left:auto;font-size:.68rem;font-weight:900;display:grid}.course-creation-choice.is-selected .course-creation-choice__check{border-color:var(--purple-600);color:var(--white);background:var(--purple-600)}.course-details-grid{margin-top:.25rem}.course-input-with-unit{min-width:0;display:flex}.course-input-with-unit input{min-width:0;border-radius:11px 0 0 11px!important}.course-input-with-unit>span{border:1px solid var(--slate-300);color:var(--slate-600);background:var(--slate-50);border-left:0;border-radius:0 11px 11px 0;align-items:center;padding:0 .8rem;font-size:.75rem;font-weight:700;display:flex}.course-objective-field textarea{border-radius:11px;min-height:112px}.course-field-meta{color:var(--slate-500);justify-content:space-between;gap:1rem;font-size:.69rem;display:flex}.course-field-meta small:last-child{flex:none}.course-wizard-actions{border-top:1px solid var(--slate-200);background:var(--slate-50);flex-direction:column;align-items:stretch;gap:1rem;margin:1.35rem -1.1rem -1.1rem;padding:1rem 1.1rem;display:flex}.course-wizard-actions>div{gap:.12rem;display:grid}.course-wizard-actions strong{color:var(--slate-700);font-size:.76rem}.course-wizard-actions small{color:var(--slate-500);font-size:.68rem}.block-editor-heading{flex-wrap:wrap;justify-content:space-between;align-items:flex-end;gap:.9rem;margin:1.7rem 0 .9rem;display:flex}.block-editor-heading>div{gap:.15rem;display:grid}.block-editor-heading h3{color:var(--slate-900);font-size:1.08rem}.block-editor-heading p{color:var(--slate-500);margin:0;font-size:.74rem}.course-section-kicker{color:var(--purple-700);letter-spacing:.08em;text-transform:uppercase;font-size:.63rem;font-weight:850}.course-block-editor{gap:1rem;display:grid}.course-block-editor__item{border:1px solid var(--slate-200);background:#fbfcfe;border-radius:16px;gap:.9rem;padding:clamp(.9rem,2.5vw,1.2rem);display:grid;box-shadow:0 2px 10px #0f172a09}.course-block-editor__item:focus-within{border-color:var(--purple-200);box-shadow:0 0 0 3px #7254df12}.course-block-editor__item>header{border-bottom:1px solid var(--slate-200);justify-content:space-between;align-items:center;gap:.75rem;padding-bottom:.8rem;display:flex}.course-block-editor__title{align-items:center;gap:.65rem;min-width:0;display:flex}.course-block-editor__title>span{width:32px;height:32px;color:var(--purple-800);background:var(--purple-100);border-radius:9px;flex:none;place-items:center;font-size:.75rem;font-weight:900;display:grid}.course-block-editor__title>div{gap:.05rem;min-width:0;display:grid}.course-block-editor__title strong{color:var(--slate-800);font-size:.82rem}.course-block-editor__title small{color:var(--slate-500);font-size:.65rem}.course-block-editor__actions{flex:none;gap:.35rem;display:flex}.course-block-editor__actions button{border:1px solid var(--slate-300);width:34px;height:34px;color:var(--slate-600);background:var(--white);cursor:pointer;border-radius:8px;place-items:center;padding:0;display:grid}.course-block-editor__actions button:hover:not(:disabled){border-color:var(--purple-200);color:var(--purple-800);background:var(--purple-50)}.course-block-editor__actions button.is-danger:hover:not(:disabled){color:var(--danger);background:var(--danger-bg);border-color:#fecaca}.course-block-editor__actions button:disabled{cursor:not-allowed;opacity:.35}.course-block-editor__actions svg{fill:none;stroke:currentColor;stroke-linecap:round;stroke-linejoin:round;stroke-width:1.8px}.course-block-classification{margin:0}.course-block-content-field textarea{min-height:155px;line-height:1.6}.course-block-settings{align-items:end;gap:.85rem;padding-top:.1rem;display:grid}.course-block-settings .field label small{color:var(--slate-400);font-size:.65rem;font-weight:600}.course-visibility-toggle{border:1px solid var(--slate-200);background:var(--white);cursor:pointer;border-radius:11px;align-items:center;gap:.7rem;min-height:50px;padding:.6rem .75rem;display:flex;position:relative}.course-visibility-toggle input[type=checkbox]{opacity:0;width:1px;height:1px;position:absolute}.course-visibility-toggle>span:first-of-type{background:var(--slate-300);border-radius:99px;flex:none;width:38px;height:22px;transition:background .16s;position:relative}.course-visibility-toggle>span:first-of-type:after{background:var(--white);content:"";border-radius:50%;width:16px;height:16px;transition:transform .16s;position:absolute;inset:3px auto 3px 3px;box-shadow:0 1px 3px #0f172a40}.course-visibility-toggle input:checked+span{background:var(--purple-600)}.course-visibility-toggle input:checked+span:after{transform:translate(16px)}.course-visibility-toggle input:focus-visible+span{outline-offset:3px;outline:3px solid #2563eb4d}.course-visibility-toggle>span:last-child{gap:.05rem;min-width:0;display:grid}.course-visibility-toggle strong{color:var(--slate-700);font-size:.72rem}.course-visibility-toggle small{color:var(--slate-500);font-size:.63rem}.course-card-heading{align-items:flex-start;gap:.8rem;margin-bottom:1.1rem;display:flex}.course-card-heading>span{width:38px;height:38px;color:var(--purple-800);background:var(--purple-100);border-radius:11px;flex:none;place-items:center;font-weight:900;display:grid}.course-card-heading>div{gap:.12rem;display:grid}.course-card-heading h2{color:var(--slate-900);margin:0;font-size:1.05rem}.course-card-heading p{color:var(--slate-500);margin:0;font-size:.73rem;line-height:1.45}.course-card-heading--compact{margin-bottom:.85rem}.quick-check-admin-options{margin:1rem 0}.quick-check-option-field label{align-items:center;gap:.4rem;display:flex}.quick-check-option-field label>span{width:22px;height:22px;color:var(--white);background:var(--purple-600);border-radius:7px;place-items:center;font-size:.62rem;font-weight:900;display:grid}.quick-check-option-field label>b{color:var(--danger)}.course-quick-check-result-grid{align-items:start}.course-quick-check-result-grid textarea{min-height:94px}.course-editor-grid{gap:1rem;margin:0;display:grid}.course-selection-card .card-content{flex-direction:column;height:100%;display:flex}.course-option-list{align-content:start;gap:.6rem;max-height:430px;padding:.15rem;display:grid;overflow-y:auto}.checkbox-card{align-items:center;margin:0}.checkbox-card:hover{border-color:var(--purple-200);background:var(--purple-50)}.checkbox-card:has(input:checked){border-color:var(--purple-500);background:var(--purple-50);box-shadow:inset 3px 0 var(--purple-600)}.checkbox-card>input{width:18px;height:18px;accent-color:var(--purple-700);flex:none}.checkbox-card strong{color:var(--slate-800);font-size:.78rem}.course-option-empty{border:1px dashed var(--slate-300);color:var(--slate-500);background:var(--slate-50);text-align:center;border-radius:12px;margin:0;padding:1rem;font-size:.75rem}.course-save-actions{flex-wrap:wrap;justify-content:flex-end;gap:.65rem;display:flex}.publish-course-form{border:1px solid var(--purple-200);background:var(--purple-50);box-shadow:var(--shadow-admin);border-radius:14px;flex-direction:column;align-items:stretch;gap:1rem;margin-top:1.25rem;padding:1rem 1.1rem;display:flex}.publish-course-form>div{gap:.15rem;display:grid}.publish-course-form strong{color:var(--purple-900);font-size:.82rem}.publish-course-form small{color:var(--slate-600);font-size:.7rem;line-height:1.45}.course-filter-card .card-content{padding:1rem}.course-filter-grid{align-items:end}.course-filter-actions{align-self:end}.course-library-card .card-header{align-items:center;padding:1.15rem 1.15rem .8rem}.course-library-card .card-header h2{font-size:1.05rem}.course-library-card .card-content{padding:0 1.15rem 1.15rem}.course-table{border-radius:12px}.course-table table{min-width:990px}.course-table th{padding-block:.8rem}.course-table td{vertical-align:top;color:var(--slate-700);padding-block:.9rem;line-height:1.45}.course-table tbody tr{transition:background .14s}.course-table tbody tr:hover{background:#fbfcff}.course-table td strong,.course-table td small{display:block}.course-title-cell{width:190px}.course-title-cell strong{color:var(--slate-900);font-size:.83rem}.course-title-cell small,.course-programme-cell small,.course-date-cell small{color:var(--slate-500);margin-top:.22rem;font-size:.67rem}.course-programme-cell{width:210px}.course-programme-cell strong{color:var(--slate-700);font-size:.76rem}.course-notion-cell{width:230px;font-size:.75rem!important}.course-status-cell{gap:.4rem;display:grid}.course-status-cell small{max-width:125px;color:var(--slate-500);font-size:.63rem;line-height:1.35}.course-date-cell{white-space:nowrap}.course-date-cell strong{color:var(--slate-700);font-size:.74rem;font-weight:700}.course-table .course-table-actions{gap:.35rem;min-width:125px}.course-table .course-table-actions a,.course-table .course-table-actions .link-button{border:1px solid var(--slate-200);width:fit-content;min-height:30px;color:var(--blue-700);background:var(--white);border-radius:7px;align-items:center;padding:.3rem .55rem;font-size:.68rem;font-weight:750;line-height:1.1;text-decoration:none;display:inline-flex}.course-table .course-table-actions a:hover,.course-table .course-table-actions .link-button:hover{border-color:var(--purple-200);color:var(--purple-800);background:var(--purple-50)}.course-table .course-table-actions .link-button--danger{color:var(--danger)}.course-table .course-table-actions .link-button--danger:hover{color:var(--danger);background:var(--danger-bg);border-color:#fecaca}.student-preview-frame{border:1px solid var(--slate-200);background:var(--purple-50);border-radius:20px;padding:clamp(.75rem,3vw,2rem);overflow:hidden}.student-course-catalog{gap:1.5rem;display:grid}.student-course-catalog section>header h2{color:var(--purple-950);margin:.25rem 0 .75rem}.student-course-grid{gap:.8rem;display:grid}.student-course-card{border:1px solid var(--student-border);box-shadow:var(--student-shadow);background:#fff;border-radius:17px;gap:.65rem;padding:1rem;transition:transform .15s,border-color .15s;display:grid}.student-course-card:hover{border-color:var(--purple-300);transform:translateY(-2px)}.student-course-card>div{justify-content:space-between;align-items:center;gap:.7rem;display:flex}.student-course-card>div>span{color:var(--slate-500);font-size:.68rem;font-weight:800}.student-course-card h3{color:var(--purple-950);margin:0;font-size:1rem}.student-course-card p{color:var(--slate-600);margin:0;font-size:.78rem;line-height:1.55}.student-course-card>small{color:var(--purple-700);justify-content:space-between;font-weight:800;display:flex}.course-lesson{gap:1rem;display:grid}.course-lesson__hero{background:linear-gradient(135deg, var(--purple-900), var(--purple-600));color:#fff;box-shadow:var(--student-shadow);border-radius:22px;padding:clamp(1.2rem,4vw,2.2rem)}.course-lesson__hero .eyebrow{color:var(--purple-100)}.course-lesson__hero h1{letter-spacing:-.04em;margin:.35rem 0;font-size:clamp(1.75rem,7vw,2.8rem)}.course-lesson__hero p{color:#ffffffe6;max-width:720px;margin:0 0 .85rem;line-height:1.6}.course-duration{background:#ffffff24;border-radius:99px;padding:.35rem .6rem;font-size:.72rem;font-weight:800;display:inline-flex}.course-content-block{border:1px solid var(--student-border);box-shadow:var(--student-shadow);background:#fff;border-radius:18px;grid-template-columns:38px minmax(0,1fr);gap:.8rem;padding:clamp(1rem,3vw,1.5rem);scroll-margin-top:6rem;display:grid}.course-content-block__step{background:var(--purple-100);width:38px;height:38px;color:var(--purple-800);border-radius:12px;place-items:center;font-weight:900;display:grid}.course-content-block h2,.course-quick-check h2,.course-practice-intro h2{color:var(--purple-950);margin:.25rem 0 .7rem;font-size:clamp(1.1rem,4vw,1.45rem)}.course-rich-text{color:var(--slate-700);font-size:.88rem;line-height:1.75}.course-content-block--summary{background:#f2fff7;border-color:#bce5cf}.course-content-block--help,.course-content-block--prerequisite{background:#fffaf0;border-color:#f3d99b}.course-help-action{flex-wrap:wrap;align-items:center;gap:.65rem;display:flex}.course-help-action button{border:1px solid var(--purple-300);min-height:42px;color:var(--purple-800);cursor:pointer;background:#fff;border-radius:11px;padding:.65rem .85rem;font-weight:800}.course-help-action small{color:var(--slate-500)}.course-another-example{width:fit-content;color:var(--purple-700);font-size:.78rem;font-weight:800}.course-quick-check,.course-practice-intro,.course-summary-card{border:1px solid var(--student-border);box-shadow:var(--student-shadow);background:#fff;border-radius:18px;padding:clamp(1rem,3vw,1.5rem);scroll-margin-top:6rem}.course-answer-choice{border:1px solid var(--slate-200);cursor:pointer;border-radius:11px;align-items:flex-start;gap:.7rem;margin-bottom:.55rem;padding:.75rem;display:flex}.course-answer-choice:has(input:checked){border-color:var(--purple-500);background:var(--purple-50)}.course-quick-result{border-radius:12px;margin-top:.8rem;padding:.8rem}.course-quick-result.is-correct{color:#17633a;background:#edfdf3}.course-quick-result.is-wrong{color:#805200;background:#fff7e6}.course-quick-result p{margin:.3rem 0 0}.course-exercises{gap:1rem;margin-top:1.25rem;display:grid}.course-exercises>header h2{color:var(--purple-950);margin:.25rem 0}.course-exercises>header p{color:var(--slate-600);margin:0}.course-exercise-card{scroll-margin-top:6rem}.course-exercise-card>header h3{color:var(--purple-950);margin:.3rem 0}.course-summary-card{text-align:center;margin-top:1.25rem}.course-summary-card h2{color:var(--purple-950);margin:.3rem 0 .65rem}.course-summary-card p{color:var(--slate-600)}@media (width>=700px){.choice-cards,.quick-check-admin-options,.student-course-grid,.course-programme-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.form-grid.course-details-grid{grid-template-columns:minmax(0,1fr) minmax(190px,.35fr)}.course-block-settings{grid-template-columns:minmax(0,1fr) minmax(230px,.65fr)}.course-wizard-actions{flex-direction:row;justify-content:space-between;align-items:center;margin:1.35rem -1.7rem -1.7rem;padding:1rem 1.7rem}.course-wizard-actions .button{flex:none}.course-editor-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.publish-course-form{flex-direction:row;justify-content:space-between;align-items:center;padding:1rem 1.25rem}.publish-course-form .button{flex:none}}@media (width>=1100px){.course-filter-grid{grid-template-columns:repeat(4,minmax(135px,1fr)) auto}.course-filter-actions{flex-wrap:nowrap}}@media (width<=759px){.course-library-card .card-content{padding-inline:.8rem}.course-table{border:0;overflow:visible}.course-table table,.course-table tbody,.course-table tr,.course-table td{width:100%;min-width:0;display:block}.course-table thead{clip:rect(0, 0, 0, 0);white-space:nowrap;width:1px;height:1px;position:absolute;overflow:hidden}.course-table tbody{gap:.8rem;display:grid}.course-table tr{border:1px solid var(--slate-200);background:var(--white);border-radius:12px;padding:.85rem;box-shadow:0 3px 12px #0f172a0b}.course-table td{border-bottom:1px solid var(--slate-100);grid-template-columns:105px minmax(0,1fr);gap:.7rem;width:100%;padding:.55rem 0;display:grid}.course-table td:before{color:var(--slate-500);content:attr(data-label);letter-spacing:.04em;text-transform:uppercase;font-size:.62rem;font-weight:850}.course-table td:first-child{padding-top:0;padding-bottom:.75rem;display:block}.course-table td:first-child:before{display:none}.course-table td:last-child{border-bottom:0;padding-bottom:0}.course-table .course-table-actions{flex-flow:wrap;min-width:0}}@media (width<=559px){.course-content-block{grid-template-columns:1fr}.course-help-action>*{width:100%}.course-help-action small{text-align:center}.course-save-actions .button,.publish-course-form .button{width:100%}}@media (width>=1080px){.sidebar{z-index:30;width:256px;color:var(--white);background:linear-gradient(180deg, var(--navy-900), var(--navy-950));flex-direction:column;display:flex;position:fixed;inset:0 auto 0 0}.brand--sidebar{border-bottom:1px solid #ffffff14;margin:1.1rem;padding-bottom:1.1rem}.brand--sidebar .brand-copy strong{color:var(--white)}.brand--sidebar .brand-copy small{color:var(--slate-400)}.sidebar-nav{align-content:start;gap:.3rem;padding:0 .8rem;display:grid}.nav-label{color:var(--slate-500);letter-spacing:.12em;text-transform:uppercase;margin:1rem .75rem .25rem;font-size:.62rem;font-weight:800}.nav-link:hover{color:var(--white);background:#ffffff0f}.sidebar-footer{border-top:1px solid #ffffff14;gap:.75rem;margin-top:auto;padding:.85rem;display:grid}.sidebar-profile{align-items:center;gap:.7rem;min-width:0;padding:.45rem;display:flex}.sidebar-profile>span:last-child{min-width:0;line-height:1.25;display:grid}.sidebar-profile strong{color:var(--white);text-overflow:ellipsis;white-space:nowrap;font-size:.76rem;overflow:hidden}.sidebar-profile small{color:var(--slate-400);font-size:.65rem}.nav-link--logout{color:#fda4af;cursor:pointer}.app-column{margin-left:256px}.topbar{padding-inline:1.7rem}.topbar-menu{display:none}.topbar-title strong{font-size:1.05rem}.stat-grid{grid-template-columns:repeat(4,minmax(0,1fr))}.dashboard-grid{grid-template-columns:minmax(0,1.55fr) minmax(300px,.85fr);align-items:start}.dashboard-side{margin-top:0}.filter-grid{grid-template-columns:1.35fr repeat(3,minmax(145px,.7fr)) auto;align-items:end}.filter-reset{grid-column:auto}}.status-badge--error{color:var(--danger);background:var(--danger-bg)}.filter-actions,.form-actions,.heading-actions,.table-actions,.entry-actions{flex-wrap:wrap;align-items:center;gap:.55rem;display:flex}.filter-actions{align-self:end}.table-actions,.entry-actions{flex-direction:column;align-items:flex-start;min-width:145px}.table-actions form,.entry-actions form{margin:0}.table-actions a,.link-button{color:var(--blue-700);text-underline-offset:2px;cursor:pointer;background:0 0;border:0;padding:0;font-size:.75rem;font-weight:750;text-decoration:underline}.link-button--danger{color:var(--danger)}.programme-import-form,.manual-entry-form{gap:1.1rem;display:grid}.form-grid{gap:.85rem;display:grid}.source-choice{align-items:start;gap:.8rem;display:grid}.source-choice>span{color:var(--slate-400);letter-spacing:.08em;text-align:center;text-transform:uppercase;font-size:.72rem;font-weight:850}.example-link{color:var(--blue-700);background:0 0;border:0;margin-top:.35rem;padding:0;font-size:.75rem;font-weight:700;text-decoration:underline}.security-note{border:1px solid var(--blue-100);border-radius:var(--radius-sm);color:var(--slate-700);background:#f4f8ff;padding:.85rem 1rem}.security-note strong{color:var(--blue-700);font-size:.8rem}.security-note p{margin:.25rem 0 0;font-size:.75rem}.form-actions{justify-content:flex-end;padding-top:.25rem}.import-steps{grid-template-columns:repeat(2,minmax(0,1fr));gap:.55rem;margin:0 0 1rem;padding:0;list-style:none;display:grid}.import-steps li{border:1px solid var(--slate-200);border-radius:var(--radius-sm);min-width:0;color:var(--slate-500);background:var(--white);align-items:center;gap:.45rem;padding:.6rem;font-size:.68rem;font-weight:750;display:flex}.import-steps li>span{width:24px;height:24px;color:var(--slate-600);background:var(--slate-100);border-radius:50%;flex:0 0 24px;place-items:center;font-size:.65rem;display:grid}.import-steps li.is-current{border-color:var(--purple-200);color:var(--purple-800);background:var(--purple-50)}.import-steps li.is-current>span{color:var(--white);background:var(--purple-600)}.import-steps li.is-complete{color:var(--success);background:#f3fcf5}.import-steps li.is-complete>span{color:var(--white);background:var(--success)}.preview-filter-grid{gap:.8rem;display:grid}.programme-preview-table table{min-width:1880px}.programme-preview-table th:first-child{width:50px}.programme-preview-table td{vertical-align:top}.programme-preview-table input:not([type=checkbox]),.programme-preview-table select,.programme-preview-table textarea{border:1px solid var(--slate-300);background:var(--white);border-radius:7px;width:100%;min-width:115px;padding:.42rem;font-size:.72rem}.programme-preview-table td:nth-child(7){width:400px}.programme-preview-table textarea{resize:vertical;min-height:58px}.programme-preview-table td:nth-child(5){gap:.4rem;display:grid}.manual-entry-card,.programme-tree-part{margin-top:1rem}.checkbox-label{align-items:center;display:inline-flex}.programme-tree{gap:.8rem;display:grid}.programme-tree details{border:1px solid var(--slate-200);border-radius:var(--radius-sm);background:var(--slate-50)}.programme-tree summary{color:var(--purple-800);cursor:pointer;padding:.8rem 1rem;font-size:.9rem;font-weight:800}.programme-tree-sections{gap:.75rem;padding:0 .8rem .8rem;display:grid}.programme-tree-sections section{background:var(--white);border-radius:8px;padding:.8rem}.programme-tree-sections h3{color:var(--slate-700);margin:0 0 .55rem;font-size:.77rem}.programme-tree-sections ul{gap:.55rem;margin:0;padding:0;list-style:none;display:grid}.programme-tree-sections li{border-left:3px solid var(--purple-200);padding-left:.7rem;font-size:.78rem}.programme-tree-sections li small{color:var(--slate-500);margin-top:.35rem;display:block}@media (width>=620px){.import-steps{grid-template-columns:repeat(3,minmax(0,1fr))}.source-choice{grid-template-columns:minmax(0,1fr) auto minmax(0,1fr)}.source-choice>span{padding-top:2rem}.form-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.form-grid--three{grid-template-columns:repeat(3,minmax(0,1fr))}.preview-filter-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (width>=1080px){.import-steps{grid-template-columns:repeat(6,minmax(0,1fr))}.preview-filter-grid{grid-template-columns:1.2fr repeat(4,minmax(135px,.7fr)) auto;align-items:end}}@media (width<=759px){.programme-preview-table{border:0;overflow:visible}.programme-preview-table table,.programme-preview-table tbody,.programme-preview-table tr,.programme-preview-table td{width:100%;min-width:0;display:block}.programme-preview-table thead{clip:rect(0 0 0 0);white-space:nowrap;width:1px;height:1px;position:absolute;overflow:hidden}.programme-preview-table tbody{gap:.85rem;display:grid}.programme-preview-table tr{border:1px solid var(--slate-200);border-radius:var(--radius-sm);background:var(--white);box-shadow:var(--shadow-admin);padding:.75rem}.programme-preview-table td,.programme-preview-table td:nth-child(5),.programme-preview-table td:nth-child(7){border:0;gap:.35rem;width:100%;padding:.45rem 0;display:grid}.programme-preview-table td:before{color:var(--slate-500);content:attr(data-label);letter-spacing:.05em;text-transform:uppercase;font-size:.63rem;font-weight:850}.programme-preview-table input:not([type=checkbox]),.programme-preview-table select,.programme-preview-table textarea{min-width:0;font-size:.8rem}.entry-actions{flex-direction:row}}@media (prefers-reduced-motion:reduce){*,:before,:after{scroll-behavior:auto!important;transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}}.page-actions,.validation-actions,.simulation-actions{flex-wrap:wrap;align-items:center;gap:.7rem;display:flex}.technical-key,.exercise-template-table td small{color:var(--slate-500);margin-top:.25rem;font-size:.7rem;display:block}.table-actions--wrap{flex-wrap:wrap}.pagination{margin-top:1rem}.bino-pagination{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:.8rem 1.2rem;width:100%;display:flex}.bino-pagination__summary{color:var(--slate-500);margin:0;font-size:.78rem}.bino-pagination__summary strong{color:var(--slate-700);font-weight:750}.bino-pagination__pages,.bino-pagination__numbers{align-items:center;gap:.35rem;display:flex}.bino-pagination__control,.bino-pagination__page{border:1px solid var(--slate-200);min-width:38px;min-height:38px;color:var(--slate-700);background:var(--white);border-radius:9px;justify-content:center;align-items:center;gap:.4rem;padding:.45rem .65rem;font-size:.78rem;font-weight:700;line-height:1;transition:border-color .16s,color .16s,background .16s;display:inline-flex;box-shadow:0 1px 2px #0f172a0a}.bino-pagination__control:hover,.bino-pagination__page:hover{border-color:var(--purple-200);color:var(--purple-800);background:var(--purple-50)}.bino-pagination__page.is-current{border-color:var(--purple-700);color:var(--white);background:var(--purple-700)}.bino-pagination__control.is-disabled{color:var(--slate-400);background:var(--slate-50);box-shadow:none;cursor:not-allowed}.bino-pagination__ellipsis{min-width:30px;min-height:38px;color:var(--slate-400);place-items:center;display:inline-grid}.bino-pagination__mobile-position{color:var(--slate-500);font-size:.75rem;font-weight:700;display:none}.bino-pagination--simple{justify-content:flex-end}@media (width<=640px){.bino-pagination{justify-content:center}.bino-pagination__summary{text-align:center;width:100%}.bino-pagination__numbers{display:none}.bino-pagination__mobile-position{display:inline}.bino-pagination__control{min-width:42px}}.preset-grid{gap:1rem;display:grid}.preset-card{border:1px solid var(--slate-200);background:var(--white);box-shadow:var(--shadow-admin);border-radius:18px;gap:1rem;padding:1.25rem;display:grid}.preset-card__icon{width:44px;height:44px;color:var(--purple-800);background:var(--purple-100);border-radius:13px;place-items:center;font-weight:850;display:grid}.preset-card h2{color:var(--purple-900);margin-bottom:.4rem;font-size:1.05rem}.preset-card p{color:var(--slate-500);margin-bottom:.65rem;font-size:.82rem}.preset-card code{color:var(--slate-700);background:var(--slate-100);border-radius:7px;padding:.35rem .55rem;display:inline-block}.detail-grid,.test-workbench{gap:1rem;margin-bottom:1rem;display:grid}.programme-link-summary{border-bottom:1px solid var(--slate-200);justify-content:space-between;align-items:flex-start;gap:1rem;padding:.8rem 0;display:flex}.programme-link-summary:last-child{border-bottom:0}.programme-link-summary p{color:var(--slate-600);margin:.25rem 0;font-size:.8rem}.programme-link-summary small{color:var(--slate-500)}.definition-list{gap:.7rem;margin:0;display:grid}.definition-list>div{border-bottom:1px solid var(--slate-200);gap:.2rem;padding-bottom:.7rem;display:grid}.definition-list dt{color:var(--slate-500);letter-spacing:.04em;text-transform:uppercase;font-size:.7rem;font-weight:800}.definition-list dd{color:var(--slate-800);margin:0;font-size:.84rem}.break-all{word-break:break-all}.danger-zone{justify-content:flex-end;margin-top:1rem;display:flex}.template-editor{max-width:1160px;margin:0 auto}.interaction-card-grid{grid-template-columns:repeat(auto-fit,minmax(210px,1fr));gap:.75rem;display:grid}.interaction-card{cursor:pointer;display:block;position:relative}.interaction-card>input{opacity:0;position:absolute}.interaction-card>span{border:2px solid var(--slate-200);background:var(--white);border-radius:14px;align-content:start;gap:.45rem;min-height:150px;padding:1rem;display:grid}.interaction-card strong{color:var(--purple-900)}.interaction-card small{color:var(--slate-600);line-height:1.5}.interaction-card em{color:var(--blue-700);margin-top:auto;font-size:.7rem;font-style:normal;font-weight:750}.interaction-card:has(input:checked)>span{border-color:var(--purple-600);background:var(--purple-50);box-shadow:0 0 0 3px #5a3fa31a}.interaction-card input:focus-visible+span{outline-offset:3px;outline:3px solid #2563eb4d}.interaction-parameters{background:var(--slate-50);border-radius:13px;gap:.8rem;margin:1rem 0;padding:1rem;display:grid}.preview-viewport-actions{flex-wrap:wrap;gap:.4rem;margin-bottom:.75rem;display:flex}.preview-viewport-actions button{border:1px solid var(--slate-300);background:var(--white);border-radius:8px;min-height:44px;padding:.55rem .75rem}.student-preview{margin-inline:auto;transition:max-width .2s}.student-preview--mobile{max-width:390px}.student-preview--tablet{max-width:760px}.student-preview--desktop{max-width:100%}.editor-heading{align-items:center}.autosave-status{color:var(--success);background:#f3fcf5;border:1px solid #bbebcb;border-radius:999px;align-items:center;gap:.45rem;padding:.55rem .75rem;font-size:.75rem;font-weight:750;display:inline-flex}.autosave-status>span:first-child{font-size:.58rem}.autosave-status.is-saving{color:var(--blue-700);border-color:var(--blue-100);background:#eff6ff}.autosave-status.is-error{color:var(--danger);background:var(--danger-bg);border-color:#fecaca}.wizard-progress{grid-template-columns:repeat(5,minmax(0,1fr));gap:.45rem;margin:1rem 0;display:grid}.wizard-progress button{border:1px solid var(--slate-200);min-width:0;color:var(--slate-500);background:var(--white);border-radius:10px;justify-items:center;gap:.25rem;padding:.55rem .25rem;display:grid}.wizard-progress button>span{background:var(--slate-100);border-radius:50%;place-items:center;width:25px;height:25px;font-size:.68rem;font-weight:800;display:grid}.wizard-progress button small{text-overflow:ellipsis;white-space:nowrap;max-width:100%;font-size:.58rem;font-weight:700;overflow:hidden}.wizard-progress button.is-current{color:var(--purple-800);border-color:var(--purple-200);background:var(--purple-50)}.wizard-progress button.is-current>span{color:var(--white);background:var(--purple-600)}.wizard-progress button.is-complete{color:var(--success);border-color:#bbebcb}.wizard-progress button.is-complete>span{color:var(--white);background:var(--success)}.wizard-panel{border:1px solid var(--slate-200);background:var(--white);box-shadow:var(--shadow-admin);border-radius:18px;gap:1.25rem;padding:1rem;display:grid}.wizard-panel>header>span{color:var(--purple-700);letter-spacing:.08em;text-transform:uppercase;font-size:.68rem;font-weight:850}.wizard-panel>header h2{color:var(--purple-950);margin:.3rem 0;font-size:1.35rem}.wizard-panel>header p{color:var(--slate-500);margin:0;font-size:.84rem}.choice-row{flex-wrap:wrap;gap:.6rem;display:flex}.choice-chip input{opacity:0;position:absolute}.choice-chip span{border:1px solid var(--slate-300);color:var(--slate-600);background:var(--white);cursor:pointer;border-radius:999px;padding:.55rem .75rem;font-size:.8rem;font-weight:700;display:block}.choice-chip input:checked+span{color:var(--purple-800);border-color:var(--purple-300,#c4b5fd);background:var(--purple-100)}.pedagogical-note,.live-example,.statement-preview,.test-callout{border:1px solid var(--purple-200);border-radius:var(--radius-sm);color:var(--slate-700);background:var(--purple-50);padding:.85rem 1rem}.pedagogical-note p,.live-example p{margin:.25rem 0 0;font-size:.8rem}.programme-editor-filters{gap:.7rem;display:grid}.programme-choice-list{gap:.7rem;max-height:590px;padding-right:.3rem;display:grid;overflow:auto}.programme-choice{border:1px solid var(--slate-200);border-radius:var(--radius-sm);background:var(--slate-50);gap:.8rem;padding:.85rem;display:grid}.programme-choice>label{cursor:pointer;align-items:flex-start;gap:.7rem;display:flex}.programme-choice>label input{width:18px;height:18px;accent-color:var(--purple-700);margin-top:.15rem}.programme-choice>label span{gap:.25rem;display:grid}.programme-choice small{color:var(--slate-500);font-size:.68rem}.programme-choice p{color:var(--slate-600);margin:0;font-size:.78rem}.programme-choice__relation{flex-wrap:wrap;align-items:center;gap:.8rem;padding-left:1.6rem;display:flex}.programme-choice__relation select{border:1px solid var(--slate-300);background:var(--white);border-radius:8px;min-height:38px}.programme-choice__relation label{color:var(--slate-600);font-size:.76rem}.exercise-type-card{border:2px solid var(--purple-300,#c4b5fd);background:var(--purple-50);border-radius:14px;gap:1rem;padding:1rem;display:flex}.exercise-type-card>span{width:34px;height:34px;color:var(--white);background:var(--purple-600);border-radius:50%;flex:0 0 34px;place-items:center;display:grid}.exercise-type-card p{color:var(--slate-600);margin:.3rem 0}.exercise-type-card small{color:var(--slate-500)}.variable-table{gap:.7rem;display:grid}.variable-table__head{display:none}.variable-row{border:1px solid var(--slate-200);border-radius:var(--radius-sm);gap:.75rem;padding:.8rem;display:grid}.variable-row fieldset{border:1px solid var(--slate-200);border-radius:8px;grid-template-columns:minmax(0,1fr) auto minmax(0,1fr);align-items:center;gap:.4rem;min-width:0;margin:0;padding:.5rem;display:grid}.variable-row legend{color:var(--slate-500);font-size:.67rem;font-weight:800}.variable-row fieldset input{border:1px solid var(--slate-300);border-radius:7px;width:100%;min-width:0;padding:.5rem}.live-example p{flex-wrap:wrap;gap:.7rem;display:flex}.difficulty-grid,.constraint-grid,.answer-field-grid{gap:.7rem;display:grid}.difficulty-card,.constraint-card{border:1px solid var(--slate-200);border-radius:var(--radius-sm);background:var(--slate-50);padding:.8rem}.difficulty-card{cursor:pointer}.difficulty-card input{opacity:0;position:absolute}.difficulty-card>span,.constraint-card label>span{gap:.2rem;display:grid}.difficulty-card small,.constraint-card small{color:var(--slate-500);font-size:.7rem}.difficulty-card:has(input:checked){border-color:var(--purple-300,#c4b5fd);background:var(--purple-50);box-shadow:inset 4px 0 var(--purple-600)}.constraint-card label{cursor:pointer;align-items:flex-start;gap:.6rem;display:flex}.constraint-card input[type=checkbox]{width:18px;height:18px;accent-color:var(--purple-700)}.constraint-card>input[type=number]{border:1px solid var(--slate-300);border-radius:7px;width:100%;margin-top:.6rem;padding:.55rem}.token-buttons{flex-wrap:wrap;align-items:center;gap:.45rem;display:flex}.token-buttons>span{color:var(--slate-500);font-size:.75rem;font-weight:750}.token-buttons button{border:1px solid var(--purple-200);color:var(--purple-800);background:var(--purple-50);border-radius:999px;padding:.45rem .65rem;font-size:.74rem;font-weight:750}.statement-preview{gap:.25rem;display:grid}.statement-preview small{color:var(--slate-500)}.answer-field-card{border:1px solid var(--slate-200);border-radius:var(--radius-sm);background:var(--slate-50);gap:.7rem;padding:.9rem;display:grid}.answer-field-card>span{width:28px;height:28px;color:var(--purple-800);background:var(--purple-100);border-radius:50%;place-items:center;font-size:.75rem;font-weight:800;display:grid}.answer-field-card>small{color:var(--slate-500)}.test-callout{gap:.8rem;display:flex}.test-callout>span{font-size:1.5rem}.test-callout p{margin:.2rem 0 0;font-size:.8rem}.publication-checklist{gap:.6rem;margin:0;padding:0;list-style:none;display:grid}.publication-checklist li{border:1px solid var(--slate-200);background:var(--slate-50);border-radius:9px;padding:.7rem .8rem .7rem 2.3rem;position:relative}.publication-checklist li:before{content:"○";color:var(--slate-400);position:absolute;left:.8rem}.publication-checklist li.is-done:before{content:"✓";color:var(--success)}.advanced-panel{border:1px dashed var(--slate-300);background:var(--slate-50);border-radius:14px;margin-top:1rem;padding:1rem}.advanced-panel summary{color:var(--slate-700);cursor:pointer;font-size:.82rem;font-weight:800}.advanced-panel[open]{gap:1rem;display:grid}.advanced-panel textarea{font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-size:.72rem}.wizard-actions{border-top:1px solid var(--slate-200);justify-content:space-between;gap:.8rem;margin-top:1rem;padding-top:1rem;display:flex}.wizard-actions>div{gap:.6rem;margin-left:auto;display:flex}.preview-controls{align-items:end;gap:.8rem;display:grid}.student-preview{gap:1rem;padding:.4rem;display:grid}.student-preview h2{color:var(--purple-950);margin:0;font-size:clamp(1.4rem,5vw,2rem)}.exercise-chart{border:1px solid var(--slate-200);background:var(--slate-50);border-radius:16px;gap:.55rem;margin:1.2rem 0 0;padding:.8rem;display:grid;overflow:hidden}.exercise-chart figcaption{color:var(--purple-950);text-align:center;font-size:.9rem;font-weight:850}.exercise-chart svg{width:100%;height:auto;overflow:visible}.exercise-chart__grid{stroke:var(--slate-200);stroke-width:1px}.exercise-chart__grid.is-minor{stroke:var(--slate-300);stroke-dasharray:3 4;stroke-width:.8px}.exercise-chart__axis{stroke:var(--slate-700);stroke-width:2px}.exercise-chart__tick,.exercise-chart__label,.exercise-chart__axis-label{fill:var(--slate-600);font-family:inherit;font-size:12px}.exercise-chart__label,.exercise-chart__axis-label{font-weight:800}.exercise-chart__bar{fill:var(--purple-300,#c4b5fd);stroke:var(--purple-500,#8b5cf6);stroke-width:1px}.exercise-chart__bar.is-target{fill:var(--purple-600);stroke:var(--purple-900);stroke-width:2px}.student-answer-fields{gap:1rem;display:grid}.student-answer-fields input[type=text]{border:2px solid var(--slate-300);border-radius:11px;width:100%;min-height:54px;padding:.8rem;font-size:1.15rem}.operator-buttons{grid-template-columns:repeat(3,minmax(0,1fr));gap:.55rem;display:grid}.operator-buttons button,.operator-buttons label>span{border:2px solid var(--slate-300);min-height:54px;color:var(--purple-900);background:var(--white);cursor:pointer;border-radius:11px;place-items:center;font-size:1.35rem;font-weight:850;display:grid}.operator-buttons button.is-selected{border-color:var(--purple-600);background:var(--purple-100)}.operator-buttons label:has(input:checked)>span{border-color:var(--purple-600);background:var(--purple-100)}.operator-buttons label>input{opacity:0;position:absolute}.operator-buttons--boolean{grid-template-columns:repeat(2,minmax(0,1fr))}.structured-answer{gap:.65rem;display:grid}.structured-answer label{color:var(--slate-600);gap:.3rem;font-size:.7rem;font-weight:750;display:grid}.structured-answer input,.structured-answer select{border:2px solid var(--slate-300);background:var(--white);border-radius:10px;width:100%;min-height:50px;padding:.7rem;font-size:1rem}.structured-answer--fraction{width:min(100%,260px)}.fraction-bar{background:var(--slate-700);height:2px}.structured-answer--inline,.structured-answer--values{grid-template-columns:repeat(auto-fit,minmax(110px,1fr));align-items:end}.inline-association-form{align-items:center;gap:.4rem;display:inline-flex}.inline-association-form select{border:1px solid var(--slate-300);border-radius:7px;max-width:145px;padding:.35rem}.choice-answer{grid-template-columns:repeat(auto-fit,minmax(120px,1fr));gap:.5rem;display:grid}.choice-answer label>input{opacity:0;position:absolute}.choice-answer label>span{border:2px solid var(--slate-300);cursor:pointer;border-radius:10px;place-items:center;min-height:48px;padding:.5rem;display:grid}.choice-answer label:has(input:checked)>span{border-color:var(--purple-600);background:var(--purple-100)}.simulation-result{border-radius:10px;gap:.25rem;padding:.8rem;display:grid}.simulation-result.is-correct{color:var(--success);background:var(--success-bg)}.simulation-result.is-wrong{color:var(--danger);background:var(--danger-bg)}.explanation-preview{background:var(--slate-50);border-radius:10px;margin-top:1rem;padding:.85rem}.explanation-preview ol{margin-bottom:0;padding-left:1.2rem}.validation-summary{border:1px solid;border-radius:10px;flex-wrap:wrap;gap:.75rem;margin-top:1rem;padding:.9rem;display:flex}.validation-summary.is-passed{color:var(--success);background:var(--success-bg);border-color:#bbebcb}.validation-summary.is-failed{color:var(--danger);background:var(--danger-bg);border-color:#fecaca}.validation-summary ul{flex-basis:100%;margin:0}.student-body{background:linear-gradient(145deg, var(--purple-50), var(--slate-50));min-height:100vh}.student-header{justify-content:space-between;align-items:center;gap:1rem;width:min(1120px,100% - 2rem);min-height:76px;margin:0 auto;display:flex}.student-header nav{color:var(--slate-600);align-items:center;gap:.6rem;font-size:.78rem;font-weight:700;display:flex}.student-header nav>a{min-height:44px}.student-header nav form{display:flex}.student-header nav button{min-height:40px;color:var(--slate-600);background:0 0;border:0}.student-profile-link{background:#ffffffbf;border-radius:999px;align-items:center;gap:.45rem;padding:.2rem .55rem .2rem .25rem;display:inline-flex}.student-avatar{border:3px solid var(--white);background:var(--purple-100);object-fit:cover;border-radius:50%;flex:none;place-items:center;line-height:1;display:grid;overflow:hidden;box-shadow:0 4px 14px #3f2a7d24}.student-avatar--small{width:38px;height:38px;font-size:1.35rem}.student-avatar--medium{width:48px;height:48px;font-size:1.7rem}.student-avatar--large{width:76px;height:76px;font-size:2.7rem}.student-avatar--fox{background:#ffedd5}.student-avatar--panda{background:#f1f5f9}.student-avatar--lion{background:#fef3c7}.student-avatar--owl{background:#ede9fe}.student-avatar--robot{background:#dbeafe}.student-avatar--space{background:#e0e7ff}.student-avatar--upload{color:var(--purple-700);background:var(--purple-100);font-size:2rem;font-weight:600}.student-avatar--photo{background:var(--slate-100);display:block}.student-notifications,.student-main{width:min(1120px,100% - 2rem);margin:0 auto}.student-main{padding:2rem 0 4rem}.student-footer{color:var(--slate-500);background:var(--white);text-align:center;padding:2rem 1rem;font-size:.78rem}.student-hero{max-width:700px;margin-bottom:1.5rem}.student-hero h1{color:var(--purple-950);letter-spacing:-.045em;margin-bottom:.6rem;font-size:clamp(2rem,8vw,3.4rem);line-height:1.05}.student-hero p{color:var(--slate-600)}.student-catalogue-filter{border:1px solid var(--purple-200);box-shadow:var(--shadow-admin);background:#ffffffe0;border-radius:18px;gap:1rem;margin-bottom:1.2rem;padding:1.2rem;display:grid}.student-catalogue-filter>header{gap:.25rem;display:grid}.student-catalogue-filter>header h2{color:var(--purple-950);margin:0;font-size:1.3rem}.student-catalogue-filter>header p{color:var(--slate-600);margin:0;font-size:.8rem}.student-catalogue-filter__fields{gap:.8rem;display:grid}.student-catalogue-filter__fields select:disabled{color:var(--slate-400);background:var(--slate-100)}.student-catalogue-filter__actions{flex-wrap:wrap;justify-content:flex-end;gap:.6rem;display:flex}.student-settings-hero{max-width:820px}.student-settings-hero__title{align-items:center;gap:1rem;display:flex}.student-settings-hero__title h1{margin:0 0 .45rem}.student-settings-hero__title p{margin:0}.student-settings-form{gap:1rem;width:min(100%,880px);display:grid}.student-settings-panel{border:1px solid var(--purple-200);box-shadow:var(--shadow-admin);background:#ffffffe6;border-radius:18px;gap:1.2rem;padding:1.2rem;display:grid}.student-settings-panel>header{align-items:flex-start;gap:.8rem;display:flex}.student-settings-panel>header h2{color:var(--purple-950);margin:0 0 .2rem;font-size:1.2rem}.student-settings-panel>header p{color:var(--slate-500);margin:0;font-size:.8rem}.student-settings-step{width:32px;height:32px;color:var(--white);background:var(--purple-700);border-radius:10px;flex:0 0 32px;place-items:center;font-size:.8rem;font-weight:850;display:grid}.student-choice-fieldset{border:0;min-width:0;padding:0}.student-choice-fieldset>legend{color:var(--slate-700);margin-bottom:.65rem;font-size:.8rem;font-weight:800}.student-avatar-options,.student-mood-options{grid-template-columns:repeat(2,minmax(0,1fr));gap:.65rem;display:grid}.student-avatar-option,.student-mood-option,.student-avatar-upload__choice{cursor:pointer;position:relative}.student-avatar-option>input,.student-mood-option>input,.student-avatar-upload__choice>input{opacity:0;pointer-events:none;position:absolute}.student-avatar-option>span{border:2px solid var(--slate-200);background:var(--white);border-radius:14px;place-items:center;gap:.5rem;min-height:120px;padding:.75rem;transition:border-color .16s,background .16s,transform .16s;display:grid}.student-avatar-option>input:checked+span{border-color:var(--purple-600);background:var(--purple-50)}.student-avatar-option>input:focus-visible+span,.student-mood-option>input:focus-visible+span,.student-avatar-upload__choice>input:focus-visible+span{outline-offset:3px;outline:3px solid #2563eb4d}.student-avatar-option strong{color:var(--slate-700);font-size:.78rem}.student-companion-option__avatar{border-radius:16px}.student-avatar-upload{border:2px dashed var(--slate-300);background:var(--slate-50);border-radius:14px;grid-template-columns:1fr;align-items:center;gap:.8rem;padding:.8rem;display:grid}.student-avatar-upload.is-selected{border-color:var(--purple-600);background:var(--purple-50)}.student-avatar-upload__choice>span{align-items:center;gap:.8rem;display:flex}.student-avatar-upload__choice>span>span:last-child{gap:.2rem;display:grid}.student-avatar-upload__choice strong{color:var(--slate-800);font-size:.82rem}.student-avatar-upload__choice small{color:var(--slate-500);font-size:.7rem}.student-avatar-upload__button{width:100%}.student-file-input{clip:rect(0 0 0 0);width:1px;height:1px;position:absolute;overflow:hidden}.student-mood-option>span{border:2px solid var(--slate-200);background:var(--white);text-align:center;border-radius:14px;place-items:center;gap:.35rem;min-height:100px;padding:.7rem;display:grid}.student-mood-option>span>span{font-size:2rem}.student-mood-option strong{color:var(--slate-700);font-size:.75rem}.student-mood-option>input:checked+span{border-color:var(--purple-600);background:var(--purple-50)}.student-settings-actions{flex-direction:column-reverse;gap:.65rem;padding-top:.35rem;display:flex}.student-settings-actions .button{width:100%}.programme-breadcrumb{color:var(--slate-500);flex-wrap:wrap;align-items:center;gap:.4rem;font-size:.7rem;display:flex}.student-history{margin-top:2rem}.student-history h2{color:var(--purple-950)}.history-list{gap:.55rem;display:grid}.history-list>a{border:1px solid var(--slate-200);background:var(--white);border-radius:11px;justify-content:space-between;align-items:center;gap:1rem;padding:.85rem 1rem;display:flex}.history-list>a>span{gap:.2rem;display:grid}.history-list small{color:var(--slate-500)}.student-breadcrumb{margin-bottom:1rem}.exercise-player{border:1px solid var(--slate-200);background:var(--white);width:min(100%,760px);box-shadow:var(--shadow-soft);border-radius:22px;margin:0 auto;padding:1.1rem}.exercise-player>header h1{color:var(--purple-950);margin:.2rem 0;font-size:clamp(1.7rem,7vw,2.7rem);line-height:1.15}.exercise-player>header p{color:var(--slate-600)}.exercise-answer-form{gap:1rem;margin-top:1.4rem;display:grid}.input-with-unit{align-items:center;gap:.5rem;display:flex}.input-with-unit>span{color:var(--slate-600);font-weight:750}.field-feedback{font-weight:750}.field-feedback.is-correct{color:var(--success)}.field-feedback.is-wrong{color:var(--danger)}.exercise-interaction{gap:1rem;display:grid}.interaction-fields{gap:.85rem;min-width:0;display:grid}.interaction-fields>legend,.choice-interaction>legend,.comparison-interaction>legend,.ordering-interaction>legend,.matching-interaction>legend,.digit-place-interaction>legend,.fraction-interaction>legend{color:var(--slate-800);margin-bottom:.65rem;font-weight:800}.interaction-fields--multiple,.interaction-fields--coordinates,.interaction-fields--measurement{grid-template-columns:repeat(auto-fit,minmax(130px,1fr));align-items:end}.interaction-field{gap:.35rem;min-width:0;display:grid}.interaction-field>label,.interaction-fields label,.matching-list label{color:var(--slate-700);font-size:.82rem;font-weight:750}.interaction-field input,.interaction-fields input,.interaction-fields select,.matching-list select,.table-interaction input{border:2px solid var(--slate-300);background:var(--white);border-radius:10px;width:100%;min-height:48px;padding:.7rem .8rem;font-size:max(1rem,16px)}.fraction-interaction{border:0;gap:.35rem;width:min(100%,280px);padding:0;display:grid}.fraction-interaction label{gap:.25rem;display:grid}.fraction-interaction input{border:2px solid var(--slate-300);text-align:center;border-radius:10px;width:100%;min-height:50px;padding:.65rem;font-size:max(1rem,16px)}.fraction-interaction .fraction-bar{background:var(--slate-700);border-radius:99px;height:3px;margin:.1rem 0}.fraction-interaction--horizontal{grid-template-columns:minmax(90px,1fr) auto minmax(90px,1fr);align-items:end;width:100%}.choice-interaction,.comparison-interaction,.ordering-interaction,.matching-interaction,.digit-place-interaction{border:0;min-width:0;padding:0}.choice-answer input:focus-visible+span,.operator-buttons input:focus-visible+span,.digit-place-options input:focus-visible+span{outline-offset:3px;outline:3px solid #2563eb59}.digit-place-options{flex-wrap:wrap;gap:.5rem;display:flex}.digit-place-options label>input{opacity:0;position:absolute}.digit-place-options label>span{border:2px solid var(--slate-300);background:var(--white);cursor:pointer;border-radius:10px;place-items:center;min-width:48px;min-height:48px;padding:.5rem;font-size:1.15rem;font-weight:800;display:grid}.digit-place-options label:has(input:checked)>span{border-color:var(--purple-600);background:var(--purple-100)}.interaction-help{color:var(--slate-500);margin:0 0 .65rem;font-size:.78rem}.ordering-list{gap:.55rem;margin:0;padding:0;list-style:none;display:grid}.ordering-list li{border:1px solid var(--slate-200);background:var(--slate-50);border-radius:11px;grid-template-columns:34px 1fr auto;align-items:center;gap:.6rem;min-height:54px;padding:.45rem;display:grid}.ordering-rank{width:30px;height:30px;color:var(--purple-800);background:var(--purple-100);border-radius:8px;place-items:center;font-weight:850;display:grid}.ordering-actions{gap:.35rem;display:flex}.ordering-actions button{border:1px solid var(--slate-300);background:var(--white);border-radius:9px;width:44px;height:44px;font-size:1.1rem}.matching-list{gap:.75rem;display:grid}.matching-list label{grid-template-columns:minmax(90px,.8fr) minmax(150px,1.2fr);align-items:center;gap:.75rem;display:grid}.fill-blank-interaction{flex-wrap:wrap;align-items:center;gap:.45rem;font-size:1.05rem;line-height:1.8;display:flex}.fill-blank-field{flex:140px;min-width:120px}.fill-blank-field .interaction-field>label{clip:rect(0,0,0,0);width:1px;height:1px;position:absolute;overflow:hidden}.table-interaction-scroll{max-width:100%;padding-bottom:.35rem;overflow-x:auto}.table-interaction{border-collapse:collapse;width:100%;min-width:480px}.table-interaction th,.table-interaction td{border:1px solid var(--slate-300);text-align:center;min-width:110px;padding:.6rem}.table-interaction th{background:var(--slate-100);font-weight:800;position:sticky;top:0}.student-result.is-partial{color:#7c4a03;background:#fff8df;border-color:#f5d68a}.exercise-answer-form[data-state=submitting] .exercise-interaction{opacity:.72}@media (width<=520px){.matching-list label{grid-template-columns:1fr;gap:.25rem}.fraction-interaction--horizontal{grid-template-columns:1fr}}@media (prefers-reduced-motion:reduce){.exercise-interaction *,.ordering-list *{scroll-behavior:auto!important;transition-duration:.001ms!important}}.student-result{border-radius:12px;align-items:center;gap:.8rem;margin-top:1rem;padding:.85rem;display:flex}.student-result>span{width:38px;height:38px;color:var(--white);border-radius:50%;flex:0 0 38px;place-items:center;font-size:1.2rem;font-weight:850;display:grid}.student-result p{margin:.15rem 0 0;font-size:.78rem}.student-result.is-correct{color:var(--success);background:var(--success-bg)}.student-result.is-correct>span{background:var(--success)}.student-result.is-wrong{color:var(--danger);background:var(--danger-bg)}.student-result.is-wrong>span{background:var(--danger)}.student-explanation{background:var(--purple-50);border-radius:14px;margin-top:1.2rem;padding:1rem}.student-explanation h2{color:var(--purple-900)}.student-explanation ol{padding-left:1.2rem}.coverage-summary{grid-template-columns:repeat(auto-fit,minmax(135px,1fr));gap:.7rem;margin-bottom:1rem;display:grid}.coverage-stat{border:1px solid var(--slate-200);background:var(--white);min-height:92px;box-shadow:var(--shadow-admin);border-radius:14px;align-content:center;gap:.25rem;padding:.9rem;display:grid}.coverage-stat small{color:var(--slate-500);text-transform:uppercase;font-size:.68rem;font-weight:800}.coverage-stat strong{color:var(--purple-950);font-size:1.75rem}.coverage-stat--success{background:var(--success-bg);border-color:#bbebcb}.coverage-stat--warning{background:#fffbeb;border-color:#fde68a}.coverage-stat--error{background:var(--danger-bg);border-color:#fecaca}.coverage-stat--score{color:var(--white);background:linear-gradient(135deg, var(--purple-800), var(--purple-600));border:0}.coverage-stat--score small,.coverage-stat--score strong{color:inherit}.coverage-filters{gap:.75rem;display:grid}.coverage-filter-checks{flex-wrap:wrap;align-items:center;gap:.65rem 1rem;font-size:.76rem;display:flex}.coverage-tree{gap:.45rem;margin:1rem 0;display:grid}.coverage-tree-node{border:1px solid var(--slate-200);background:var(--white);border-radius:13px;overflow:hidden}.coverage-tree-node .coverage-tree-node{border-radius:10px;margin:.35rem 0 .35rem .7rem}.coverage-tree-node>summary{cursor:pointer;list-style:none}.coverage-tree-node>summary::-webkit-details-marker{display:none}.coverage-tree-row{min-height:60px;padding:.65rem .8rem .65rem calc(.8rem + var(--tree-depth,0) * .25rem);color:var(--slate-600);grid-template-columns:minmax(280px,1fr) auto 70px 90px 80px 120px 40px;align-items:center;gap:.7rem;font-size:.72rem;display:grid}.coverage-tree-row--leaf{border:1px solid var(--slate-200);background:var(--white);border-radius:10px;margin:.35rem 0 .35rem .7rem}.coverage-tree-row--leaf:hover{border-color:var(--purple-300);background:var(--purple-50)}.coverage-tree-label{gap:.2rem;min-width:0;display:grid}.coverage-tree-label strong{color:var(--slate-900);font-size:.78rem}.coverage-tree-label small{color:var(--slate-500)}.coverage-tree-score{color:var(--purple-900);text-align:right;font-size:.95rem}.coverage-tree-warning{text-align:center}.coverage-tree-children{border-top:1px solid var(--slate-100);background:var(--slate-50);padding:0 .35rem .35rem}.coverage-rules-panel{border:1px dashed var(--slate-300);background:var(--white);border-radius:14px;padding:1rem}.coverage-rules-panel>summary{cursor:pointer;font-weight:800}.coverage-rule-form{gap:.8rem;margin-top:1rem;display:grid}.coverage-rule-form fieldset{border:1px solid var(--slate-200);border-radius:10px;flex-wrap:wrap;gap:.65rem 1rem;padding:.75rem;display:flex}.coverage-rule-form legend{color:var(--slate-700);padding:0 .35rem;font-size:.72rem;font-weight:800}.coverage-detail-grid{gap:1rem;display:grid}.coverage-detail-main,.coverage-detail-aside{align-content:start;gap:1rem;display:grid}.coverage-detail-score{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:.8rem;display:flex}.coverage-detail-score>div{align-items:center;gap:1rem;display:flex}.coverage-detail-score>div>strong{color:var(--purple-900);font-size:2.4rem}.coverage-score-components{grid-template-columns:repeat(auto-fit,minmax(145px,1fr));gap:.5rem;margin-top:1rem;display:grid}.coverage-score-components div{background:var(--slate-50);border-radius:8px;justify-content:space-between;gap:.5rem;padding:.55rem;font-size:.7rem;display:flex}.coverage-score-components span{text-transform:capitalize}.coverage-score-components strong{color:var(--success)}.official-content{border-left:4px solid var(--purple-300);background:var(--purple-50);white-space:pre-line;margin:1rem 0 0;padding:1rem}.coverage-requirements{gap:1rem;display:grid}.coverage-requirements ul{margin:0;padding-left:1.2rem}.coverage-suggestions{gap:.6rem;padding-left:1.3rem;display:grid}.coverage-quick-actions,.coverage-automation-form{gap:.7rem;display:grid}.coverage-matrix td small,.coverage-detail-main td small{color:var(--slate-500);margin-top:.25rem;display:block}@media (width>=820px){.coverage-filters{grid-template-columns:repeat(4,minmax(0,1fr))}.coverage-filters>.page-actions,.coverage-filter-checks{grid-column:1/-1}.coverage-rule-form{grid-template-columns:repeat(3,minmax(0,1fr))}.coverage-rule-form fieldset,.coverage-rule-form>.button{grid-column:1/-1}.coverage-detail-grid{grid-template-columns:minmax(0,1fr) 320px}.coverage-requirements{grid-template-columns:1fr 1fr}}@media (width<=980px){.coverage-tree-row{grid-template-columns:minmax(180px,1fr) auto 60px}.coverage-tree-row>:nth-child(n+4){display:none}}.capability-summary{grid-template-columns:repeat(auto-fit,minmax(120px,1fr));gap:.65rem;margin-bottom:1rem;display:grid}.capability-summary article{border:1px solid var(--slate-200);background:var(--white);border-radius:12px;gap:.2rem;padding:.8rem;display:grid}.capability-summary small{color:var(--slate-500);text-transform:uppercase;font-size:.65rem;font-weight:800}.capability-summary strong{color:var(--purple-950);font-size:1.25rem}.capability-filters{gap:.75rem;display:grid}.capability-grid{gap:.8rem;margin-top:1rem;display:grid}.capability-card{border:1px solid var(--slate-200);border-left:4px solid var(--slate-300);background:var(--white);box-shadow:var(--shadow-admin);border-radius:14px;gap:.8rem;padding:1rem;display:grid}.capability-card--stable{border-left-color:var(--success)}.capability-card--experimental{border-left-color:#f59e0b}.capability-card--deprecated,.capability-card--disabled{border-left-color:var(--danger)}.capability-card header{justify-content:space-between;align-items:flex-start;gap:.8rem;display:flex}.capability-card header span{color:var(--purple-700);text-transform:uppercase;font-size:.62rem;font-weight:850}.capability-card h2{color:var(--purple-950);margin:.2rem 0;font-size:1rem}.capability-card p{color:var(--slate-600);margin:0;font-size:.78rem}.capability-card dl{grid-template-columns:repeat(auto-fit,minmax(120px,1fr));gap:.5rem;margin:0;display:grid}.capability-card dl div{background:var(--slate-50);border-radius:8px;padding:.5rem}.capability-card dt{color:var(--slate-500);text-transform:uppercase;font-size:.6rem;font-weight:800}.capability-card dd{color:var(--slate-800);margin:.2rem 0 0;font-size:.72rem}.capability-card ul{margin:0;padding-left:1.1rem;font-size:.72rem}@media (width>=760px){.capability-filters{grid-template-columns:2fr 1fr 1fr auto;align-items:end}.capability-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}.variable-row.variable-row--typed{grid-template-columns:minmax(180px,.45fr) minmax(0,1.55fr);align-items:start}.typed-variable-settings,.typed-ranges{gap:.55rem;display:grid}.typed-variable-settings>small{color:var(--purple-700);text-transform:uppercase;font-size:.65rem;font-weight:800}.typed-ranges{grid-template-columns:repeat(auto-fit,minmax(150px,1fr))}.typed-ranges fieldset{grid-template-columns:minmax(0,1fr) auto minmax(0,1fr);align-items:center;gap:.35rem;display:grid}@media (width>=1040px){.variable-table__head{grid-template-columns:minmax(180px,.45fr) minmax(0,1.55fr)}}@media (width<=700px){.variable-row.variable-row--typed{grid-template-columns:1fr}}@media (width>=720px){.preset-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.detail-grid,.test-workbench{grid-template-columns:minmax(0,1.35fr) minmax(280px,.65fr)}.programme-editor-filters{grid-template-columns:1.4fr .7fr .9fr}.difficulty-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.constraint-grid,.answer-field-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.preview-controls{grid-template-columns:minmax(150px,.6fr) minmax(150px,.6fr) auto auto}.student-catalogue-filter__fields{grid-template-columns:repeat(2,minmax(0,1fr))}.student-avatar-options{grid-template-columns:repeat(3,minmax(0,1fr))}.student-mood-options{grid-template-columns:repeat(4,minmax(0,1fr))}.student-avatar-upload{grid-template-columns:1fr auto}.student-avatar-upload__button{width:auto}.student-settings-actions{flex-direction:row;justify-content:flex-end}.student-settings-actions .button{width:auto}.exercise-player{padding:2rem}}@media (width>=1040px){.preset-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.wizard-progress{grid-template-columns:repeat(10,minmax(0,1fr))}.wizard-panel{padding:1.6rem}.variable-table__head{color:var(--slate-500);text-transform:uppercase;grid-template-columns:1.1fr repeat(3,minmax(0,1fr));gap:.7rem;padding:0 .8rem;font-size:.68rem;font-weight:850;display:grid}.variable-row{grid-template-columns:1.1fr repeat(3,minmax(0,1fr));align-items:end}.student-catalogue-filter__fields{grid-template-columns:repeat(3,minmax(0,1fr))}}@media (width<=759px){.exercise-template-table{border:0;overflow:visible}.exercise-template-table table,.exercise-template-table tbody,.exercise-template-table tr,.exercise-template-table td{width:100%;min-width:0;display:block}.exercise-template-table thead{clip:rect(0 0 0 0);width:1px;height:1px;position:absolute;overflow:hidden}.exercise-template-table tbody{gap:.8rem;display:grid}.exercise-template-table tr{border:1px solid var(--slate-200);background:var(--white);border-radius:13px;padding:.9rem}.exercise-template-table td{border:0;gap:.2rem;padding:.45rem 0;display:grid}.exercise-template-table td:before{color:var(--slate-500);content:attr(data-label);letter-spacing:.05em;text-transform:uppercase;font-size:.6rem;font-weight:850}.student-header .brand-copy small,.student-header .student-exercises-link,.student-profile-link>span{display:none}.student-profile-link{background:0 0;padding:.15rem;display:inline-flex}.student-catalogue-filter__actions .button{width:100%}.wizard-actions{align-items:stretch}.wizard-actions>div{flex-direction:column-reverse}}.student-body{background:var(--student-bg);min-height:100vh;overflow-x:hidden}.student-shell{min-height:100vh}.student-sidebar{display:none}.student-app{flex-direction:column;min-width:0;min-height:100vh;display:flex}.student-topbar{z-index:40;align-items:center;gap:var(--space-sm);-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px);background:#ffffffeb;border-bottom:1px solid #e8e3f1e6;min-height:76px;padding:.65rem 1rem;display:flex;position:sticky;top:0}.student-menu-button{border:1px solid var(--student-border);width:44px;height:44px;color:var(--purple-900);background:var(--white);border-radius:13px;flex:0 0 44px;place-items:center;display:grid}.student-menu-button svg,.student-profile-menu__button>svg{fill:none;stroke:currentColor;stroke-linecap:round;stroke-linejoin:round;stroke-width:1.8px;width:21px}.student-topbar__greeting{flex:1;min-width:0;line-height:1.25;display:grid}.student-topbar__greeting strong{color:var(--purple-950);text-overflow:ellipsis;white-space:nowrap;font-size:.98rem;overflow:hidden}.student-topbar__greeting small{color:var(--slate-500);margin-top:.16rem;font-size:.72rem;display:none}.student-profile-menu{position:relative}.student-profile-menu__button{min-width:48px;min-height:48px;color:var(--slate-500);background:0 0;border:0;border-radius:999px;justify-content:center;align-items:center;gap:.25rem;padding:0;display:flex}.student-profile-menu__button .student-avatar{width:45px;height:45px}.student-profile-menu__button>svg{width:15px;display:none}.student-profile-dropdown{border:1px solid var(--student-border);background:var(--white);border-radius:16px;width:min(270px,100vw - 2rem);position:absolute;top:calc(100% + .55rem);right:0;overflow:hidden;box-shadow:0 20px 48px #2a174f29}.student-profile-dropdown>div{gap:.12rem;padding:.9rem 1rem;display:grid}.student-profile-dropdown strong{color:var(--purple-950);font-size:.86rem}.student-profile-dropdown small{color:var(--slate-500);text-overflow:ellipsis;white-space:nowrap;font-size:.7rem;overflow:hidden}.student-profile-dropdown a,.student-profile-dropdown button{border:0;border-top:1px solid var(--student-border);width:100%;min-height:46px;color:var(--slate-700);background:var(--white);text-align:left;align-items:center;padding:.7rem 1rem;font-size:.8rem;font-weight:750;display:flex}.student-profile-dropdown a:hover,.student-profile-dropdown button:hover{color:var(--purple-800);background:var(--purple-50)}.student-profile-dropdown form button{color:var(--danger)}.student-notifications{width:min(calc(100% - 2rem), var(--student-content-width));margin:1rem auto 0}.student-notifications:empty{display:none}.student-main{width:min(calc(100% - 2rem), var(--student-content-width));flex:1;margin:0 auto;padding:1.25rem 0 3.5rem}.student-footer{border-top:1px solid var(--student-border);color:var(--slate-500);text-align:center;background:#ffffffb3;margin-top:auto;padding:1.25rem 1rem;font-size:.72rem}.student-navigation{gap:.35rem;display:grid}.student-navigation__link{min-height:48px;color:var(--slate-600);border-radius:12px;align-items:center;gap:.8rem;padding:.7rem .8rem;font-size:.84rem;font-weight:720;transition:color .16s,background .16s,transform .16s;display:flex;position:relative}.student-navigation__link svg{fill:none;stroke:currentColor;stroke-linecap:round;stroke-linejoin:round;stroke-width:1.65px;flex:0 0 21px;width:21px}.student-navigation__link:hover{color:var(--purple-800);background:var(--purple-50);transform:translate(2px)}.student-navigation__link.is-active{color:var(--purple-800);background:var(--purple-100)}.student-navigation__link.is-active:before{background:var(--purple-600);content:"";border-radius:0 4px 4px 0;width:4px;position:absolute;inset:10px auto 10px -1rem}.student-mobile-navigation{z-index:100;display:flex;position:fixed;inset:0}.student-mobile-navigation__backdrop{-webkit-backdrop-filter:blur(3px);backdrop-filter:blur(3px);background:#1c12348f;border:0;width:100%;position:absolute;inset:0}.student-mobile-navigation__panel{background:var(--white);flex-direction:column;width:min(86vw,340px);height:100%;display:flex;position:relative;overflow-y:auto;box-shadow:24px 0 70px #1e143a3d}.student-mobile-navigation__panel>header{border-bottom:1px solid var(--student-border);justify-content:space-between;align-items:center;gap:1rem;min-height:76px;padding:.8rem 1rem;display:flex}.student-mobile-navigation__close{border:1px solid var(--student-border);width:42px;height:42px;color:var(--purple-900);background:var(--white);border-radius:12px;flex:0 0 42px;place-items:center;font-size:1.45rem;display:grid}.student-navigation--drawer{padding:1rem}.student-mobile-navigation__profile{border-top:1px solid var(--student-border);background:var(--purple-50);align-items:center;gap:.7rem;min-height:70px;margin-top:auto;padding:.85rem 1rem;display:flex}.student-mobile-navigation__profile>span{display:grid}.student-mobile-navigation__profile strong{color:var(--purple-950);font-size:.8rem}.student-mobile-navigation__profile small{color:var(--slate-500);font-size:.68rem}.student-page-heading{max-width:740px;margin-bottom:1.8rem}.student-page-heading h1{color:var(--purple-950);letter-spacing:-.045em;margin:0 0 .5rem;font-size:clamp(2rem,7vw,3.2rem);line-height:1.08}.student-page-heading p{color:var(--slate-600);margin:0;line-height:1.7}.student-priority-grid{gap:1rem;display:grid}.student-mission-card,.student-bino-card{border:1px solid var(--student-border);border-radius:var(--radius-lg);background:var(--student-card);min-width:0;box-shadow:var(--student-shadow);position:relative;overflow:hidden}.student-mission-card{background:linear-gradient(145deg, var(--white) 45%, var(--purple-50));padding:1.25rem}.student-mission-card__decoration{border:35px solid #7254df12;border-radius:50%;width:210px;height:210px;position:absolute;top:-80px;right:-70px}.student-mission-card>header{align-items:center;gap:.85rem;display:flex;position:relative}.student-mission-card__icon{width:48px;height:48px;color:var(--white);background:linear-gradient(135deg, var(--purple-600), var(--purple-800));border-radius:15px;flex:0 0 48px;place-items:center;display:grid;box-shadow:0 10px 22px #5a3fa333}.student-mission-card__icon svg{fill:none;stroke:currentColor;stroke-linecap:round;stroke-linejoin:round;stroke-width:1.8px;width:24px}.student-mission-card .eyebrow,.student-bino-card .eyebrow,.student-section-heading .eyebrow{margin-bottom:.25rem;font-size:.64rem}.student-mission-card h2,.student-bino-card h2{color:var(--purple-950);letter-spacing:-.02em;margin:0;font-size:1.3rem}.student-mission-card__empty,.student-mission-card__content{justify-items:start;gap:.75rem;margin-top:1.4rem;display:grid;position:relative}.student-mission-card__empty h3,.student-mission-card__content h3{color:var(--purple-950);margin:0;font-size:1.1rem}.student-mission-card__empty p{max-width:600px;color:var(--slate-600);margin:0;font-size:.84rem;line-height:1.65}.student-mission-card__meta{color:var(--purple-700);margin:0;font-size:.73rem;font-weight:800}.student-mission-card__progress-copy{width:100%;color:var(--slate-500);justify-content:space-between;gap:1rem;font-size:.72rem;font-weight:700;display:flex}.student-mission-card progress,.student-mastery-card progress{width:100%;height:9px;color:var(--purple-600);background:var(--purple-100);appearance:none;border:0;border-radius:99px;overflow:hidden}.student-mission-card progress::-webkit-progress-bar{background:var(--purple-100);border-radius:99px}.student-mastery-card progress::-webkit-progress-bar{background:var(--purple-100);border-radius:99px}.student-mission-card progress::-webkit-progress-value{background:linear-gradient(90deg, var(--blue-600), var(--purple-600));border-radius:99px}.student-mastery-card progress::-webkit-progress-value{background:linear-gradient(90deg, var(--blue-600), var(--purple-600));border-radius:99px}.student-mission-card progress::-moz-progress-bar{background:linear-gradient(90deg, var(--blue-600), var(--purple-600));border-radius:99px}.student-mastery-card progress::-moz-progress-bar{background:linear-gradient(90deg, var(--blue-600), var(--purple-600));border-radius:99px}.student-bino-card{align-content:start;gap:1rem;padding:1.25rem;display:grid}.student-bino-card__badge{width:45px;height:45px;color:var(--blue-700);background:var(--blue-100);border-radius:15px;place-items:center;font-size:1.15rem;font-weight:900;display:grid}.student-bino-card p{color:var(--slate-600);margin:.5rem 0 0;font-size:.82rem;line-height:1.6}.student-bino-card form{border:1px solid var(--slate-300);background:var(--slate-50);border-radius:13px;align-items:center;gap:.4rem;padding:.35rem;display:flex}.student-bino-card input{background:0 0;border:0;outline:0;width:100%;min-width:0;min-height:42px;font-size:max(.83rem,16px)}.student-bino-card input:focus{box-shadow:none}.student-bino-card form:focus-within{border-color:var(--blue-600);box-shadow:0 0 0 3px #2563eb1a}.student-bino-card form button{width:42px;height:42px;color:var(--white);background:var(--purple-700);border:0;border-radius:10px;flex:0 0 42px;place-items:center;display:grid}.student-bino-card form button svg{fill:none;stroke:currentColor;stroke-linecap:round;stroke-linejoin:round;stroke-width:1.8px;width:20px}.student-bino-card form button:disabled{opacity:.5;cursor:not-allowed}.student-bino-card>small{color:var(--slate-500);font-size:.67rem}.student-bino-card__reply{color:var(--slate-800);background:var(--slate-100);white-space:pre-wrap;word-break:break-word;border-radius:13px;margin:0;padding:.75rem .9rem;font-size:.82rem;line-height:1.55}.student-bino-card__error{color:var(--danger);margin:0;font-size:.78rem}.student-bino-card__typing{background:var(--slate-100);border-radius:13px;gap:.3rem;padding:.75rem .9rem;display:flex}.student-bino-card__typing span{background:var(--slate-400);border-radius:50%;width:6px;height:6px;animation:1.1s ease-in-out infinite bino-typing}.student-bino-card__typing span:nth-child(2){animation-delay:.15s}.student-bino-card__typing span:nth-child(3){animation-delay:.3s}.student-dashboard-section{margin-top:2rem}.student-section-heading{justify-content:space-between;align-items:end;gap:1rem;margin-bottom:1rem;display:flex}.student-section-heading h2{color:var(--purple-950);letter-spacing:-.03em;margin:0;font-size:clamp(1.35rem,5vw,1.8rem)}.student-section-heading>a{min-height:44px;color:var(--purple-700);flex:none;padding-top:.7rem;font-size:.76rem;font-weight:800}.student-action-grid{gap:.8rem;display:grid}.student-action-card{border:1px solid var(--student-border);background:var(--white);min-height:112px;box-shadow:var(--student-shadow);border-radius:18px;grid-template-columns:48px minmax(0,1fr) auto;align-items:center;gap:.8rem;padding:1rem;transition:border-color .16s,box-shadow .16s,transform .16s;display:grid}.student-action-card:hover{border-color:var(--purple-200);transform:translateY(-2px);box-shadow:0 14px 36px #37255f1a}.student-action-card>span{width:48px;height:48px;color:var(--blue-700);background:var(--blue-100);border-radius:14px;place-items:center;display:grid}.student-action-card>span svg{fill:none;stroke:currentColor;stroke-linecap:round;stroke-linejoin:round;stroke-width:1.7px;width:23px}.student-action-card--purple>span{color:var(--purple-700);background:var(--purple-100)}.student-action-card--orange>span{color:#a75409;background:#ffedd5}.student-action-card--green>span{color:var(--success);background:var(--success-bg)}.student-action-card h3{color:var(--purple-950);margin:0 0 .25rem;font-size:.93rem}.student-action-card p{color:var(--slate-500);margin:0;font-size:.72rem;line-height:1.5}.student-action-card b{color:var(--slate-400);font-size:1.1rem}.student-mastery-grid{gap:.8rem;display:grid}.student-mastery-card{border:1px solid var(--student-border);background:var(--white);box-shadow:var(--student-shadow);border-radius:18px;gap:1rem;padding:1rem;display:grid}.student-mastery-card>header{grid-template-columns:43px minmax(0,1fr) auto;align-items:center;gap:.7rem;display:grid}.student-subject-icon{width:43px;height:43px;color:var(--purple-800);background:var(--purple-100);border-radius:13px;flex:0 0 43px;place-items:center;font-size:.78rem;font-weight:900;display:grid}.student-mastery-card h3{color:var(--purple-950);text-overflow:ellipsis;white-space:nowrap;margin:0;font-size:.85rem;overflow:hidden}.student-mastery-card header div span{color:var(--slate-500);font-size:.66rem;font-weight:700}.student-mastery-card header>strong{color:var(--purple-800);font-size:1.15rem}.student-inline-empty{border:1px dashed var(--purple-200);background:#ffffffb3;border-radius:18px}.student-inline-empty.empty-state{padding-block:1.7rem}.student-skill-list{gap:.65rem;display:grid}.student-skill-row{border:1px solid var(--student-border);background:var(--white);border-radius:16px;grid-template-columns:43px minmax(0,1fr);align-items:center;gap:.75rem;padding:.85rem;display:grid}.student-skill-row>div{min-width:0}.student-skill-row>div>span{color:var(--purple-700);text-transform:uppercase;font-size:.62rem;font-weight:800}.student-skill-row h3{color:var(--slate-800);-webkit-line-clamp:2;-webkit-box-orient:vertical;margin:.18rem 0 0;font-size:.8rem;line-height:1.4;display:-webkit-box;overflow:hidden}.student-skill-row>a{min-height:44px;color:var(--purple-700);grid-column:2;padding-top:.65rem;font-size:.74rem;font-weight:800}.student-programme-resume{border:1px solid var(--purple-200);background:var(--purple-50);border-radius:18px;flex-wrap:wrap;justify-content:space-between;align-items:center;gap:.8rem;margin-bottom:1.2rem;padding:1rem 1.1rem;display:flex}.student-programme-resume strong{color:var(--purple-950);font-size:.92rem;display:block}.student-programme-resume span{color:var(--slate-600);font-size:.78rem}.student-programme-list{gap:1rem;display:grid}.student-programme-subject{border:1px solid var(--student-border);background:var(--white);box-shadow:var(--student-shadow);border-radius:20px;overflow:hidden}.student-programme-subject__header{background:var(--purple-50);align-items:flex-start;gap:.5rem;display:flex}.student-programme-subject__toggle{text-align:left;min-width:0;font:inherit;cursor:pointer;background:0 0;border:0;flex:auto;grid-template-columns:43px minmax(0,1fr) auto;align-items:center;gap:.5rem .8rem;padding:1rem;display:grid}.student-programme-subject__toggle .student-subject-icon{grid-area:1/1}.student-programme-subject__title{grid-area:1/2;gap:.1rem;min-width:0;display:grid}.student-programme-subject__title small{color:var(--slate-500);font-size:.65rem;font-weight:700}.student-programme-subject__title strong{color:var(--purple-950);text-overflow:ellipsis;white-space:nowrap;font-size:1.05rem;overflow:hidden}.student-programme-subject__chevron{width:18px;height:18px;color:var(--purple-700);fill:none;stroke:currentColor;stroke-linecap:round;stroke-linejoin:round;stroke-width:2px;grid-area:1/3;transition:transform .16s}.student-programme-subject__chevron.is-open{transform:rotate(180deg)}.student-programme-subject__summary{flex-wrap:wrap;grid-area:2/1/auto/-1;align-items:center;gap:.4rem;padding-left:calc(43px + .8rem);display:flex}.student-programme-subject__count{color:var(--slate-600);font-size:.68rem;font-weight:700}.student-programme-subject__pack{align-items:center;margin:.8rem .9rem 0 0;display:flex}.student-programme-subject__body{border-top:1px solid var(--student-border);gap:1.3rem;padding:1rem;display:grid}.student-programme-part h3{color:var(--purple-800);margin:0 0 .7rem;font-size:.82rem}.student-programme-part ul{gap:.55rem;margin:0;padding:0;list-style:none;display:grid}.student-programme-item{border:1px solid var(--slate-200);border-radius:12px;align-items:flex-start;gap:.7rem;padding:.75rem;display:flex}.student-feature-state{border:1px solid var(--student-border);background:var(--white);width:min(100%,680px);box-shadow:var(--student-shadow);text-align:center;border-radius:26px;justify-items:center;margin:clamp(1rem,7vh,5rem) auto;padding:clamp(1.4rem,5vw,2.8rem);display:grid}.student-feature-state__icon{width:62px;height:62px;color:var(--purple-700);background:var(--purple-100);border-radius:19px;place-items:center;margin-bottom:1.2rem;display:grid}.student-feature-state__icon svg{fill:none;stroke:currentColor;stroke-linecap:round;stroke-linejoin:round;stroke-width:1.7px;width:29px}.student-feature-state h1{color:var(--purple-950);letter-spacing:-.045em;margin:0;font-size:clamp(2rem,8vw,3rem)}.student-feature-state h2{color:var(--slate-700);margin:.75rem 0 0;font-size:1rem}.student-feature-state p{max-width:520px;color:var(--slate-500);margin:.65rem 0 1.4rem;font-size:.84rem;line-height:1.7}@media (width>=560px){.student-topbar__greeting small{display:block}.student-profile-menu__button{padding-right:.25rem}.student-profile-menu__button>svg{display:block}.student-skill-row{grid-template-columns:43px minmax(0,1fr) auto}.student-skill-row>a{grid-column:auto;padding:.7rem .35rem 0}}@media (width>=680px){.student-main{padding-top:1.8rem}.student-action-grid,.student-mastery-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.student-mission-card,.student-bino-card{padding:1.5rem}}@media (width>=920px){.student-priority-grid{grid-template-columns:minmax(0,1.55fr) minmax(285px,.75fr)}.student-mastery-grid{grid-template-columns:repeat(3,minmax(0,1fr))}}@media (width>=1080px){.student-sidebar{z-index:50;width:var(--student-sidebar-width);border-right:1px solid var(--student-border);background:#fffffff5;flex-direction:column;padding:1.15rem 1rem;transition:width .18s,padding .18s;display:flex;position:fixed;inset:0 auto 0 0;overflow:hidden}.student-sidebar__head{align-items:center;gap:.35rem;margin:0 .35rem 1.5rem;display:flex}.student-sidebar__brand{margin:0}.student-sidebar__collapse-toggle{border:1px solid var(--student-border);width:30px;height:30px;color:var(--purple-700);background:var(--white);border-radius:9px;flex:0 0 30px;place-items:center;margin-left:auto;transition:transform .18s,background .16s;display:grid}.student-sidebar__collapse-toggle:hover{background:var(--purple-50)}.student-sidebar__collapse-toggle svg{fill:none;stroke:currentColor;stroke-linecap:round;stroke-linejoin:round;stroke-width:2px;width:15px}.student-navigation--sidebar{padding-left:.15rem}.student-sidebar__profile{border:1px solid var(--student-border);background:var(--purple-50);border-radius:15px;align-items:center;gap:.65rem;margin-top:auto;padding:.75rem;display:flex}.student-sidebar__profile>span{min-width:0;display:grid}.student-sidebar__profile strong{color:var(--purple-950);text-overflow:ellipsis;white-space:nowrap;font-size:.78rem;overflow:hidden}.student-sidebar__profile small{color:var(--slate-500);font-size:.65rem}.student-app{margin-left:var(--student-sidebar-width);transition:margin-left .18s}.student-menu-button{display:none}.student-topbar{padding-inline:max(1.5rem, calc((100% - var(--student-content-width)) / 2))}.student-topbar__greeting strong{font-size:1.08rem}.student-main{padding-block:2rem 4rem}.student-sidebar.is-collapsed{width:var(--student-sidebar-width-collapsed);padding-inline:.6rem}.student-sidebar.is-collapsed .student-sidebar__head{justify-content:center;margin-inline:0}.student-sidebar.is-collapsed .brand-copy{display:none}.student-sidebar.is-collapsed .student-sidebar__collapse-toggle{margin-left:0}.student-sidebar.is-collapsed .student-sidebar__collapse-toggle svg{transform:rotate(180deg)}.student-sidebar.is-collapsed .student-navigation__link{justify-content:center;padding-inline:0}.student-sidebar.is-collapsed .student-navigation__link span{display:none}.student-sidebar.is-collapsed .student-navigation__link.is-active:before{inset:10px auto 10px -.6rem}.student-sidebar.is-collapsed .student-sidebar__profile{justify-content:center;padding:.6rem}.student-sidebar.is-collapsed .student-sidebar__profile>span{display:none}.student-shell.is-sidebar-collapsed .student-app{margin-left:var(--student-sidebar-width-collapsed)}}@media (width>=1280px){.student-action-grid{grid-template-columns:repeat(4,minmax(0,1fr))}.student-action-card{grid-template-columns:1fr auto;align-content:space-between;min-height:176px}.student-action-card>span{grid-column:1}.student-action-card>div{grid-column:1/-1}.student-action-card>b{grid-area:1/2}}@media (width<=559px){.student-topbar__greeting strong{font-size:.9rem}.student-section-heading{align-items:flex-start}.student-section-heading>a{display:none}.student-mission-card .button{width:100%}.student-action-card{min-height:100px}}.student-action-grid>form{margin:0;display:flex}.student-action-grid>form>.student-action-card{text-align:left;cursor:pointer;width:100%;font:inherit;border:0}.student-mastery-card__metric{gap:.35rem;margin-top:.75rem;display:grid}.student-mastery-card__metric>div{color:var(--slate-600);justify-content:space-between;align-items:baseline;gap:.75rem;font-size:.7rem;display:flex}.student-mastery-card__metric>div strong{color:var(--purple-900)}.student-mastery-card>small{color:var(--slate-500);margin-top:.75rem;font-size:.65rem;line-height:1.4;display:block}.student-programme-theme+.student-programme-theme{margin-top:.6rem}.student-programme-theme{border:1px solid var(--slate-200);background:var(--slate-50);border-radius:12px}.student-programme-theme__toggle{text-align:left;width:100%;font:inherit;cursor:pointer;background:0 0;border:0;align-items:center;gap:.6rem;padding:.65rem .75rem;display:flex}.student-programme-theme__title{flex:auto;gap:.05rem;min-width:0;display:grid}.student-programme-theme__title strong{color:var(--slate-700);text-overflow:ellipsis;white-space:nowrap;font-size:.78rem;overflow:hidden}.student-programme-theme__title small{color:var(--slate-500);font-size:.65rem;font-weight:700}.student-programme-theme__summary{flex-wrap:wrap;flex:none;gap:.35rem;display:flex}.student-programme-theme__chevron{width:16px;height:16px;color:var(--slate-500);fill:none;stroke:currentColor;stroke-linecap:round;stroke-linejoin:round;stroke-width:2px;flex:0 0 16px;transition:transform .16s}.student-programme-theme__chevron.is-open{transform:rotate(180deg)}.student-programme-theme ul{gap:.55rem;margin:0;padding:.1rem .75rem .75rem;list-style:none;display:grid}.student-programme-item>.status-badge{flex:none;margin-top:.15rem}.student-programme-item__main{flex:auto;min-width:0}.student-programme-item__main>span{color:var(--slate-500);text-transform:uppercase;margin-bottom:.15rem;font-size:.62rem;font-weight:800;display:block}.student-programme-item__main p{color:var(--slate-800);margin:0;font-size:.82rem;line-height:1.5}.student-programme-item__main small{color:var(--slate-500);margin-top:.35rem;font-size:.68rem;display:block}.student-programme-item__actions{flex-wrap:wrap;flex:none;align-items:center;gap:.4rem;display:flex}.student-programme-item__detail{width:34px;height:34px;color:var(--purple-700);flex:0 0 34px}.student-programme-item__detail svg{fill:none;stroke:currentColor;stroke-linecap:round;stroke-linejoin:round;stroke-width:1.8px;width:17px}.student-programme-item__link{min-height:34px;color:var(--purple-700);align-items:center;padding:0 .3rem;font-size:.72rem;font-weight:800;display:inline-flex}.student-programme-item__actions .button{min-height:34px;padding:.4rem .75rem;font-size:.72rem}.student-programme-modal__breadcrumb{color:var(--purple-700);text-transform:uppercase;margin:0 0 .4rem;font-size:.68rem;font-weight:800}.student-programme-modal__subsection{color:var(--slate-500);margin:0 0 .5rem;font-size:.72rem;font-weight:700}.student-programme-modal__status{border-top:1px solid var(--slate-200);align-items:center;gap:.5rem;margin-top:1rem;padding-top:1rem;display:flex}.student-programme-modal__status span{color:var(--slate-500);font-size:.72rem}@media (width<=559px){.student-programme-item{flex-wrap:wrap}}.pack-heading{gap:.25rem;display:grid}.pack-overall-progress{gap:.45rem;width:min(100%,620px);margin-top:.8rem;display:grid}.pack-overall-progress>div{color:var(--slate-600);justify-content:space-between;font-size:.75rem;display:flex}.pack-overall-progress progress{width:100%;accent-color:var(--purple-600)}.exercise-pack-list{gap:1.2rem;display:grid}.pack-exercise{scroll-margin-top:6rem}.pack-exercise.is-completed{border-color:#bce5cf}.pack-exercise__header{gap:.8rem;display:grid}.pack-exercise__header h2{color:var(--purple-950);margin:.35rem 0 0;font-size:clamp(1rem,3vw,1.35rem)}.pack-exercise__meta{background:var(--purple-50);color:var(--purple-800);border-radius:12px;gap:.15rem;padding:.65rem;font-size:.7rem;font-weight:800;display:grid}.pack-exercise__meta small{color:var(--slate-600);font-weight:600;line-height:1.4}.exercise-hint{border:1px solid var(--student-border);background:#fffbea;border-radius:12px;margin:.75rem 0;padding:.7rem}.exercise-hint summary{cursor:pointer;color:var(--purple-800);font-size:.75rem;font-weight:800}.exercise-hint p{color:var(--slate-700);margin:.5rem 0 0;font-size:.78rem}.pack-summary{margin-top:1.5rem;scroll-margin-top:6rem}.pack-summary__grid{gap:.75rem;display:grid}.pack-summary__grid article{border:1px solid var(--slate-200);border-radius:14px;padding:.85rem}.pack-summary__grid h3{color:var(--purple-900);margin:0;font-size:.85rem}.pack-summary__grid p,.pack-summary__grid li{color:var(--slate-600);font-size:.72rem;line-height:1.5}@media (width>=760px){.pack-exercise__header{grid-template-columns:minmax(0,1fr) minmax(190px,.35fr);align-items:start}.pack-summary__grid{grid-template-columns:repeat(2,minmax(0,1fr))}}.bino-chat{border:1px solid var(--student-border);border-radius:var(--radius-lg);background:var(--student-card);height:min(78vh,820px);min-height:480px;box-shadow:var(--student-shadow);flex-direction:column;display:flex;overflow:hidden}.bino-chat__header{border-bottom:1px solid var(--student-border);background:var(--purple-50);flex-shrink:0;align-items:center;gap:.85rem;padding:1rem 1.25rem;display:flex}.bino-chat__avatar{border-radius:16px;flex-shrink:0;box-shadow:0 4px 12px #2563eb40}.bino-chat__header h1{color:var(--purple-950);letter-spacing:-.01em;margin:.1rem 0 0;font-size:1.15rem}.bino-chat__header p{color:var(--slate-600);margin:.25rem 0 0;font-size:.78rem}.bino-chat__header p a{color:var(--blue-700);font-weight:700}.bino-chat__settings-link{border:1px solid var(--student-border);color:var(--purple-700);white-space:nowrap;background:var(--white);border-radius:999px;flex-shrink:0;margin-left:auto;padding:.5rem .8rem;font-size:.68rem;font-weight:800}.bino-chat__body{flex-direction:column;flex:1;min-height:0;padding:0 1.25rem 1.1rem;display:flex}.bino-chat__messages{flex-direction:column;flex:1;gap:.65rem;padding:1.1rem 0;display:flex;overflow-y:auto}.bino-chat__empty{color:var(--slate-500);text-align:center;margin:auto;font-size:.85rem}.bino-chat__message{max-width:82%;display:flex}.bino-chat__message.is-user{justify-content:flex-end;align-self:flex-end}.bino-chat__message.is-assistant{align-self:flex-start}.bino-chat__bubble{white-space:pre-wrap;word-break:break-word;border-radius:16px;padding:.65rem .9rem;font-size:.84rem;line-height:1.55}.bino-chat__message.is-user .bino-chat__bubble{color:var(--white);background:var(--purple-600);border-bottom-right-radius:4px}.bino-chat__message.is-assistant .bino-chat__bubble{color:var(--slate-800);background:var(--slate-100);border-bottom-left-radius:4px}.bino-chat__bubble--typing{gap:.3rem;padding:.85rem 1rem;display:flex}.bino-chat__bubble--typing span{background:var(--slate-400);border-radius:50%;width:6px;height:6px;animation:1.1s ease-in-out infinite bino-typing}.bino-chat__bubble--typing span:nth-child(2){animation-delay:.15s}.bino-chat__bubble--typing span:nth-child(3){animation-delay:.3s}@keyframes bino-typing{0%,60%,to{opacity:.35;transform:translateY(0)}30%{opacity:1;transform:translateY(-3px)}}.bino-chat .bino-notifications:empty{display:none}.bino-chat__composer{border:1px solid var(--slate-300);background:var(--slate-50);border-radius:16px;align-items:flex-end;gap:.5rem;padding:.5rem;display:flex}.bino-chat__composer:focus-within{border-color:var(--blue-600);box-shadow:0 0 0 3px #2563eb1a}.bino-chat__composer textarea{resize:none;min-height:42px;max-height:140px;font:inherit;background:0 0;border:0;outline:0;flex:1;padding:.55rem .3rem;font-size:max(.85rem,16px)}.bino-chat__composer button{width:42px;height:42px;color:var(--white);background:var(--purple-700);border:0;border-radius:12px;flex:0 0 42px;place-items:center;display:grid}.bino-chat__composer button:disabled{opacity:.5;cursor:not-allowed}.bino-chat__composer button svg{fill:none;stroke:currentColor;stroke-linecap:round;stroke-linejoin:round;stroke-width:1.8px;width:20px}.bino-chat__disclaimer{color:var(--slate-500);text-align:center;margin-top:.5rem;font-size:.65rem;display:block}@media (width<=640px){.bino-chat{border-radius:var(--radius);height:calc(100vh - 220px)}.bino-chat__settings-link{display:none}}.parent-child-switcher{position:relative}.parent-child-switcher__button{border:1px solid var(--student-border);background:var(--white);cursor:pointer;border-radius:999px;align-items:center;gap:.6rem;padding:.35rem .6rem .35rem .35rem;display:flex}.parent-child-switcher__button span{text-align:left;display:grid}.parent-child-switcher__button strong{color:var(--purple-950);font-size:.82rem}.parent-child-switcher__button small{color:var(--slate-500);font-size:.68rem}.parent-child-switcher__button>svg{width:16px;height:16px;color:var(--slate-500);fill:none;stroke:currentColor;stroke-width:2px}.parent-child-switcher__dropdown{z-index:20;border:1px solid var(--student-border);border-radius:var(--radius);background:var(--white);min-width:200px;box-shadow:var(--shadow-soft);gap:.2rem;padding:.5rem;display:grid;position:absolute;top:calc(100% + .5rem);left:0}.parent-child-switcher__dropdown a{border-radius:var(--radius-sm);color:var(--slate-700);align-items:center;gap:.6rem;padding:.5rem .6rem;font-size:.82rem;font-weight:700;text-decoration:none;display:flex}.parent-child-switcher__dropdown a:hover{background:var(--slate-100)}.parent-child-switcher__dropdown a.is-active{color:var(--purple-800);background:var(--purple-50)}.parent-priority-banner{border-radius:var(--radius-lg);background:linear-gradient(135deg, var(--purple-600), var(--purple-800));color:var(--white);box-shadow:var(--shadow-soft);gap:.6rem;padding:1.4rem 1.6rem;display:grid}.parent-priority-banner .eyebrow{color:var(--purple-200)}.parent-priority-banner h2{margin:0;font-size:1.3rem}.parent-priority-banner p{max-width:60ch;color:var(--purple-100);margin:0;font-size:.9rem;line-height:1.6}.parent-status-tiles{grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:.8rem;display:grid}.parent-status-tile{border:1px solid var(--student-border);border-radius:var(--radius);background:var(--white);gap:.3rem;padding:1rem 1.1rem;display:grid}.parent-status-tile strong{color:var(--purple-950);font-size:1.6rem}.parent-status-tile span{color:var(--slate-600);font-size:.78rem;font-weight:700}.parent-status-tile--mastered{border-color:var(--success-bg);background:var(--success-bg)}.parent-status-tile--mastered strong{color:var(--success)}.parent-status-tile--on_track strong{color:var(--blue-700)}.parent-status-tile--to_consolidate{border-color:var(--warning-bg);background:var(--warning-bg)}.parent-status-tile--to_consolidate strong{color:var(--warning)}.reliability-badge{border:1px solid var(--slate-300);color:var(--slate-600);border-radius:999px;align-items:center;gap:.3rem;padding:.18rem .5rem;font-size:.62rem;font-weight:700;display:inline-flex}.reliability-badge:before{content:"";background:currentColor;border-radius:50%;width:6px;height:6px}.reliability-badge--high,.reliability-badge--very_high{border-color:var(--blue-100);color:var(--blue-700)}.parent-timeline{gap:0;margin:0;padding:0;list-style:none;display:grid}.parent-timeline li{border-left:2px solid var(--student-border);padding:0 0 1.4rem 1.6rem;position:relative}.parent-timeline li:last-child{border-left-color:#0000;padding-bottom:0}.parent-timeline li:before{content:"✔";background:var(--purple-600);width:20px;height:20px;color:var(--white);border-radius:50%;place-items:center;font-size:.6rem;display:grid;position:absolute;top:0;left:-11px}.parent-timeline strong{color:var(--purple-950);font-size:.88rem;display:block}.parent-timeline small{color:var(--slate-500);font-size:.72rem}.parent-stat-row{grid-template-columns:repeat(auto-fit,minmax(140px,1fr));gap:.8rem;margin-bottom:1.4rem;display:grid}.parent-stat-row article{border:1px solid var(--student-border);border-radius:var(--radius);background:var(--white);text-align:center;padding:.9rem 1rem}.parent-stat-row strong{color:var(--purple-950);font-size:1.4rem;display:block}.parent-stat-row span{color:var(--slate-500);font-size:.72rem;font-weight:700}.parent-advice-card{border-radius:var(--radius);background:var(--purple-50);color:var(--purple-950);padding:1rem 1.2rem;font-size:.88rem;line-height:1.7}.parent-back-link{color:var(--purple-700);margin-bottom:1rem;font-size:.82rem;font-weight:700;text-decoration:none;display:inline-flex}.parent-back-link:hover{text-decoration:underline}.dys-dyslexia .course-rich-text,.dys-dyslexia .course-content-block,.dys-dyslexia .document-question-card,.dys-dyslexia .bino-chat__bubble{font-family:var(--font-dys-friendly);letter-spacing:.03em;word-spacing:.12em;font-size:1.05em;line-height:1.8}.dys-dyspraxia .course-answer-choice,.dys-dyspraxia .student-choice-fieldset label{padding:var(--space-md);margin-bottom:var(--space-sm)}
