@import"https://fonts.googleapis.com/css2?family=DM+Sans:wght@400;500;600;700&family=Manrope:wght@500;600;700;800&display=swap";:root{font-family:DM Sans,sans-serif;color:#252940;background:#f7f8fc;font-synthesis:none;--purple:#6558d3;--muted:#8990a4;--line:#edf0f5}*{box-sizing:border-box}body{margin:0;min-width:320px}button,input{font:inherit}button,a{cursor:pointer}a{text-decoration:none;color:inherit}.shell{min-height:100vh}.sidebar{position:fixed;inset:0 auto 0 0;width:245px;background:#fff;border-right:1px solid var(--line);padding:26px 18px;display:flex;flex-direction:column}.brand{display:flex;align-items:center;gap:11px;padding:0 9px 44px}.brand-icon{width:40px;height:40px;border-radius:12px;background:var(--purple);color:#fff;display:grid;place-items:center}.brand b{font:800 21px Manrope;display:block}.brand small,.nav-label,.page-title>div>small,.modal-head small{font-size:9px;letter-spacing:1.5px;color:#a0a5b5;font-weight:700}.brand small{font-size:8px}.nav-label{padding:0 12px}.nav{height:44px;display:flex;align-items:center;gap:12px;padding:0 13px;margin:3px 0;border-radius:9px;color:#777f95;font-size:12px;font-weight:600}.nav svg{width:18px}.nav.active{background:#f0efff;color:var(--purple)}.side-bottom{margin-top:auto}.help{background:#f8f7ff;border:1px solid #efedff;border-radius:12px;padding:15px;margin-bottom:18px;font-size:12px}.help p{font-size:10px;color:var(--muted);line-height:1.5;margin-bottom:0}.user{border-top:1px solid var(--line);padding:17px 3px 0;display:flex;align-items:center;gap:10px;font-size:11px}.user small,.student small{display:block;color:var(--muted);font-size:10px;margin-top:4px}.avatar{width:37px;height:37px;border-radius:11px;display:grid;place-items:center;font-size:11px;font-weight:700;flex-shrink:0}.purple{background:#eeecff;color:#6255cb}.blue{background:#e9f3ff;color:#4d8bc9}.green{background:#e8f7ef;color:#329d70}main{margin-left:245px}.topbar{height:72px;background:#fff;border-bottom:1px solid var(--line);display:flex;align-items:center;justify-content:flex-end;padding:0 40px;color:#858ba0}.top-caption{margin-right:auto;font-size:11px;color:#a0a5b5}.mobile-brand{display:none}.content{max-width:1400px;padding:36px 40px 60px;margin:auto}.page-title{display:flex;justify-content:space-between;align-items:flex-end;gap:15px;margin-bottom:25px}.page-title h1{font:800 29px Manrope;letter-spacing:-.8px;margin:6px 0}.page-title p,.section-title p{font-size:11px;color:var(--muted);margin:0}.btn{height:39px;padding:0 14px;border-radius:8px;border:1px solid transparent;display:inline-flex;align-items:center;justify-content:center;gap:7px;font-size:11px;font-weight:700}.primary{background:var(--purple);color:#fff}.primary:hover{background:#5145bd}.secondary{background:#fff;border-color:#e7eaf1;color:#626981}.stats{display:grid;grid-template-columns:repeat(3,1fr);gap:16px;margin-bottom:22px}.stats article{background:#fff;border:1px solid var(--line);border-radius:13px;padding:18px;display:grid;gap:7px}.stat-icon{width:37px;height:37px;border-radius:10px;display:grid;place-items:center}.stat-icon svg{width:19px}.stat-icon.purple{background:#f0efff}.stat-icon.blue{background:#eaf3ff}.stat-icon.green{background:#e8f7ef}.stats small{font-size:10px;color:var(--muted)}.stats strong{font:800 25px Manrope}.stats em{font-style:normal;font-size:10px;color:#a0a5b5}.active-text{font-size:18px!important;color:#36a77a}.banner{background:linear-gradient(110deg,#5145bd,#7569df);border-radius:15px;color:#fff;padding:27px 30px;margin-bottom:29px}.banner small{font-size:9px;letter-spacing:1.5px;color:#dedaff;font-weight:700}.banner h2{font:800 23px Manrope;margin:10px 0 6px}.banner p{font-size:11px;color:#e2dfff;max-width:440px}.banner a{display:inline-flex;align-items:center;gap:7px;font-size:11px;font-weight:700;margin-top:8px}.section-title{display:flex;justify-content:space-between;align-items:center;margin-bottom:13px}.section-title h2,.table-head h2{font:700 15px Manrope;margin:0 0 5px}.section-title a{font-size:11px;color:var(--purple);font-weight:700}.recent{display:grid;grid-template-columns:repeat(3,1fr);gap:12px}.recent-card{background:#fff;border:1px solid var(--line);border-radius:11px;padding:14px;display:flex;gap:10px;align-items:center}.recent-card b{font-size:11px}.recent-card small,.recent-card em{display:block;font-size:9px;color:var(--muted);margin-top:4px;font-style:normal}.recent-card em{color:var(--purple)}.page-actions{display:flex;gap:8px}.directory{background:#fff;border:1px solid var(--line);border-radius:11px;padding:13px 16px;margin-bottom:15px;display:flex;align-items:center;gap:12px;font-size:11px}.directory span{color:var(--muted)}.directory em{font-style:normal;color:#329d70;margin-left:auto;font-size:10px}.panel{background:#fff;border:1px solid var(--line);border-radius:13px;overflow:hidden}.table-head{padding:18px 19px;display:flex;justify-content:space-between;align-items:center}.table-head p{font-size:10px;color:var(--muted);margin:0}.pill{background:#f0efff;color:var(--purple);padding:3px 7px;border-radius:6px;font-size:10px}.search{height:35px;width:220px;border:1px solid #e8eaf0;border-radius:8px;display:flex;align-items:center;gap:8px;padding:0 10px;color:#a0a5b5}.search input{border:0;outline:0;width:100%;font-size:10px}table{width:100%;border-collapse:collapse;min-width:630px}th{text-align:left;background:#fafbfe;color:#9ba1b1;font-size:9px;letter-spacing:.8px;padding:12px 19px;border-block:1px solid #f0f1f5}td{padding:13px 19px;border-bottom:1px solid #f1f2f6;font-size:11px}.student{display:flex;align-items:center;gap:10px}.student b{font-size:11px}.course{background:#f5f6fb;border-radius:6px;padding:6px 8px;font-size:10px;color:#687087}.muted{color:var(--muted);font-size:10px}.right{text-align:right}.actions{display:flex;justify-content:flex-end;gap:5px}.actions button,.close{width:29px;height:29px;background:#fff;border:1px solid var(--line);border-radius:7px;color:#7c8296;display:grid;place-items:center}.actions button:hover{color:var(--purple);background:#f4f2ff}.overflow{overflow-x:auto}footer{padding:13px 19px;font-size:10px;color:var(--muted);display:flex;justify-content:space-between}footer span{color:#329d70}.empty{text-align:center;padding:35px;color:var(--muted)}.state{background:#fff;border:1px solid var(--line);padding:35px;border-radius:12px;text-align:center;color:var(--muted);font-size:12px}.error{color:#bd5660}.notice{background:#effaf4;border:1px solid #d9f0e4;color:#29875f;border-radius:8px;padding:10px 13px;margin-bottom:12px;text-align:left;font-size:11px}.overlay{position:fixed;top:0;right:0;bottom:0;left:0;background:#171a3875;-webkit-backdrop-filter:blur(3px);backdrop-filter:blur(3px);z-index:10;display:grid;place-items:center;padding:18px}.modal{width:min(100%,450px);background:#fff;border-radius:15px;padding:23px;box-shadow:0 20px 65px #171a3833}.modal-head{display:flex;justify-content:space-between;align-items:flex-start;margin-bottom:20px}.modal-head h2{font:800 21px Manrope;margin:5px 0}.close{font-size:21px}.field{display:grid;gap:7px;margin:14px 0;font-size:11px;font-weight:700;color:#555b70}.field input{height:40px;border:1px solid #e6e9f0;border-radius:8px;padding:0 11px;outline:0;font-size:11px}.field input:focus{border-color:#968de6;box-shadow:0 0 0 3px #6558d315}.form-error{font-size:10px;color:#d45c68}.modal-actions{display:flex;justify-content:flex-end;gap:8px;border-top:1px solid #f0f1f5;padding-top:16px;margin-top:18px}@media(max-width:900px){.sidebar{width:210px}main{margin-left:210px}.content{padding:28px 22px}.topbar{padding:0 22px}.recent{grid-template-columns:1fr 1fr}.recent-card:last-child{display:none}}@media(max-width:650px){.sidebar{width:62px;padding:18px 8px}.brand{padding:0 2px 35px}.brand>span:last-child,.nav-label,.help,.user>span:last-child{display:none}.brand-icon{width:42px;height:42px}.nav{font-size:0;justify-content:center;padding:0}.nav svg{width:20px}.user{justify-content:center}main{margin-left:62px}.topbar{height:60px;padding:0 15px}.top-caption{display:none}.mobile-brand{display:block;margin-right:auto;font:800 17px Manrope;color:#282d43}.content{padding:24px 13px 40px}.page-title{align-items:flex-start;flex-direction:column}.page-title h1{font-size:25px}.stats{grid-template-columns:1fr 1fr;gap:9px}.stats article:last-child{grid-column:span 2}.recent{grid-template-columns:1fr}.recent-card:last-child{display:flex}.page-actions{width:100%}.page-actions .btn{flex:1;padding:0 8px;font-size:10px}.table-head{align-items:flex-start;flex-direction:column;gap:12px}.search{width:100%}.directory{flex-wrap:wrap}.directory em{margin-left:0}.banner{padding:22px}.modal{padding:18px}}
