:root{--bg:#e0e5ec;--hi:#fff;--shadow:#a3b1c6;--ink:#252a3a;--muted:#758095;--accent:#6366f1}html.dark-mode,.dark-mode{--bg:#1e2030;--hi:#2a2d42;--shadow:#14152a;--ink:#eef0fb;--muted:#9299b4;--accent:#6366f1}.light-mode-forced,.light-mode-forced *{--bg:#e0e5ec!important;--hi:#fff!important;--shadow:#a3b1c6!important;--ink:#252a3a!important;--muted:#758095!important;--accent:#6366f1!important}@keyframes ios-text-in{0%{opacity:0;filter:blur(4px);transform:translateY(8px)scale(.985)}to{opacity:1;filter:blur();transform:translateY(0)scale(1)}}.animate-ios-text{animation:.6s cubic-bezier(.16,1,.3,1) forwards ios-text-in}.nm-flat{background:var(--bg)!important;box-shadow:-8px -8px 16px var(--hi), 8px 8px 16px var(--shadow)!important}.nm-inset{background:var(--bg)!important;box-shadow:inset 6px 6px 12px var(--shadow), inset -6px -6px 12px var(--hi)!important}.nm-flat-hover{background:var(--bg)!important;box-shadow:-8px -8px 16px var(--hi), 8px 8px 16px var(--shadow)!important;transition:transform .4s cubic-bezier(.34,1.56,.64,1),box-shadow .4s!important}.nm-flat-hover:hover{box-shadow:-12px -12px 24px var(--hi), 12px 12px 24px var(--shadow)!important;transform:translateY(-4px)scale(1.02)!important}.nm-button{transition:transform .4s cubic-bezier(.34,1.56,.64,1)!important;position:relative!important;overflow:hidden!important}.nm-button:hover{transform:scale(1.04)!important}.ripple{pointer-events:none;background:radial-gradient(circle,#6366f16b,#0000 68%);border-radius:50%;width:36px;height:36px;animation:.7s cubic-bezier(.4,0,.2,1) forwards ripple;position:absolute;transform:translate(-50%,-50%)scale(0)}@keyframes ripple{to{opacity:0;transform:translate(-50%,-50%)scale(4)}}@keyframes floatIcon{0%,to{transform:translateY(0)}50%{transform:translateY(-5px)}}@keyframes slideBounce{0%{opacity:0;transform:translate(-14px)}to{opacity:1;transform:translate(0)}}@keyframes waveShimmer{0%{background-position:200% 0}to{background-position:-200% 0}}@keyframes glowPulse{0%,to{filter:drop-shadow(0 0 5px)}50%{filter:drop-shadow(0 0 10px)}}@keyframes blink{50%{opacity:0}}@keyframes pulseDot{50%{box-shadow:0 0 0 5px #6366f11f}}@keyframes slide{0%{opacity:0;transform:translate(-12px)}to{opacity:1;transform:translate(0)}}.float-icon{animation:3s cubic-bezier(.45,.05,.55,.95) infinite alternate floatIcon}.activity-item,.reveal{animation:.65s cubic-bezier(.34,1.56,.64,1) both slideBounce}.slide-in{opacity:0;animation:.65s cubic-bezier(.34,1.56,.64,1) forwards slideBounce}.row-in{animation:.6s cubic-bezier(.34,1.56,.64,1) both slide}.d1{animation-delay:80ms}.d2{animation-delay:.16s}.d3{animation-delay:.24s}.d4{animation-delay:.32s}.d5{animation-delay:.4s}.d6{animation-delay:.48s}.delay-1{animation-delay:50ms}.delay-2{animation-delay:.15s}.delay-3{animation-delay:.25s}.delay-4{animation-delay:.35s}.delay-5{animation-delay:.45s}.delay-6{animation-delay:.55s}.terminal-delay-1{animation-delay:.3s}.terminal-delay-2{animation-delay:.6s}.terminal-delay-3{animation-delay:.9s}.terminal-delay-4{animation-delay:1.2s}.terminal-line{animation:.5s both slideBounce}.cursor{vertical-align:-2px;background:#a78bfa;width:6px;height:13px;animation:1s step-end infinite blink;display:inline-block}.progress-track,.track{border-radius:999px;height:10px}.progress-fill,.fill{color:#6366f1;filter:drop-shadow(0 0 8px #6366f1);background:linear-gradient(90deg,#6366f1 0%,#a78bfa 100%);border-radius:999px;height:100%;animation:2.4s ease-in-out infinite glowPulse;position:relative;overflow:hidden}.progress-fill:after,.fill:after{content:"";pointer-events:none;background:linear-gradient(110deg,#0000 0%,#ffffff47 45%,#0000 70%) 0 0/200% 100%;width:200%;animation:3s linear infinite waveShimmer;position:absolute;inset:0}.progress-fill.api-response{color:#3b82f6;filter:drop-shadow(0 0 8px #3b82f6);background:linear-gradient(90deg,#3b82f6 0%,#6366f1 100%)}.progress-fill.db-sync{color:#06b6d4;filter:drop-shadow(0 0 8px #06b6d4);background:linear-gradient(90deg,#06b6d4 0%,#14b8a6 100%)}.progress-fill.cpu-load{color:#ef4444;filter:drop-shadow(0 0 8px #ef4444);background:linear-gradient(90deg,#ef4444 0%,#ec4899 100%)}.progress-fill.storage{color:#a855f7;filter:drop-shadow(0 0 8px #a855f7);background:linear-gradient(90deg,#a855f7 0%,#7c3aed 100%)}.nav-link,.sidebar-link{transition:box-shadow .3s,transform .3s;position:relative;overflow:hidden}.nav-link:before,.sidebar-link:before{content:"";background:linear-gradient(90deg,#6366f11f,#0000);transition:transform .4s;position:absolute;inset:0;transform:translate(-100%)}.nav-link:hover:before,.sidebar-link:hover:before{transform:translate(0)}.nav-link:hover,.sidebar-link:hover{transform:translate(4px)}.nav-link>*,.sidebar-link>*{position:relative}.toggle input{display:none}.toggle-track{cursor:pointer;border-radius:99px;width:48px;height:27px;padding:3px;transition:all .4s cubic-bezier(.34,1.56,.64,1);box-shadow:inset 4px 4px 8px var(--shadow), inset -4px -4px 8px var(--hi)!important}.toggle-thumb{background:#758095;border-radius:50%;width:21px;height:21px;transition:all .4s cubic-bezier(.34,1.56,.64,1);box-shadow:-3px -3px 6px var(--hi), 3px 3px 6px var(--shadow)!important}.toggle input:checked+.toggle-track{background:#6366f1!important}.toggle input:checked+.toggle-track .toggle-thumb{transform:translate(21px);background:#fff!important}.select-control{appearance:none;outline:none}.divider{background:linear-gradient(90deg,#0000,#94a3b8,#0000);height:1px}.line-chart{background:linear-gradient(145deg,#0000 0 48%,#6366f133 49% 50%,#0000 51%),repeating-linear-gradient(0deg,#0000 0 38px,#75809533 39px 40px);position:relative}.line-chart svg{width:100%;height:100%}.severity-critical{color:#ef4444}.severity-warning{color:#f97316}.severity-info{color:#eab308}
@keyframes fadeInUp{0%{opacity:0;transform:translateY(16px)}to{opacity:1;transform:translateY(0)}}@keyframes drawPath{0%{stroke-dashoffset:1000px}to{stroke-dashoffset:0}}@keyframes pulseSoft{0%,to{opacity:.6;transform:scale(1)}50%{opacity:.3;transform:scale(1.15)}}@keyframes shimmer{0%{left:-100%}to{left:100%}}@keyframes blobFloat{0%,to{transform:translate(0)scale(1)}33%{transform:translate(25px,-35px)scale(1.08)}66%{transform:translate(-15px,15px)scale(.92)}}.animate-fade-in-up{animation:.5s cubic-bezier(.16,1,.3,1) forwards fadeInUp}.animate-blob{animation:16s ease-in-out infinite alternate blobFloat}.transition-premium{transition:all .4s cubic-bezier(.16,1,.3,1)}.shimmer-effect{position:relative;overflow:hidden}.shimmer-effect:after{content:"";background:linear-gradient(90deg,#0000,#ffffff73,#0000);width:50%;height:100%;animation:2.2s infinite shimmer;position:absolute;top:0}.card-glow{transition:all .4s cubic-bezier(.16,1,.3,1)}.card-glow:hover{border-color:#5865f259;box-shadow:0 20px 25px -5px #5865f212,0 8px 10px -6px #5865f20d}.nexus-canvas{color:#0f172a;background-color:#f8fafc}
.outfit{letter-spacing:-.025em;font-family:Outfit,sans-serif}.mono{font-family:JetBrains Mono,monospace}.glass{-webkit-backdrop-filter:blur(35px)saturate(150%);background:linear-gradient(#ffffff17,#ffffff05);border:1px solid #ffffff1a;position:relative;overflow:hidden;box-shadow:inset 0 1px #ffffff24}.glass:before{content:"";border-radius:inherit;pointer-events:none;-webkit-mask-composite:xor;background:linear-gradient(135deg,#ffffff2e,#ffffff05 35%,#0000 60%);padding:1px;position:absolute;inset:0;-webkit-mask-image:linear-gradient(#000 0 0),linear-gradient(#000 0 0);mask-image:linear-gradient(#000 0 0),linear-gradient(#000 0 0);-webkit-mask-position:0 0,0 0;mask-position:0 0,0 0;-webkit-mask-size:auto,auto;mask-size:auto,auto;-webkit-mask-repeat:repeat,repeat;mask-repeat:repeat,repeat;-webkit-mask-clip:content-box,border-box;mask-clip:content-box,border-box;-webkit-mask-origin:content-box,border-box;mask-origin:content-box,border-box;-webkit-mask-composite:xor;mask-composite:exclude;-webkit-mask-source-type:auto,auto;mask-mode:match-source,match-source}.soft{-webkit-backdrop-filter:blur(20px);background:#ffffff09;border:1px solid #ffffff12}.grain{display:none!important}.glow-a,.glow-b{pointer-events:none;filter:blur(55px);z-index:0;border-radius:999px;position:fixed}.glow-a{background:radial-gradient(circle,#ffffff0a 0%,#0000 70%);width:640px;height:640px;top:-220px;left:-180px}.glow-b{background:radial-gradient(circle,#ffffff08 0%,#0000 70%);width:720px;height:720px;bottom:-320px;right:-260px}.fade{animation:.6s cubic-bezier(.16,1,.3,1) both fadeup}.d1{animation-delay:50ms}.d2{animation-delay:.1s}.d3{animation-delay:.15s}.d4{animation-delay:.2s}.d5{animation-delay:.25s}@keyframes fadeup{0%{opacity:0;transform:translateY(14px)}to{opacity:1;transform:none}}@keyframes float{0%,to{transform:translateY(0)}50%{transform:translateY(-6px)}}@keyframes shimmerLine{to{stroke-dashoffset:-900px}}.shimmer{stroke-dasharray:10 12;animation:8s linear infinite shimmerLine}.activity-row{transition:background .35s cubic-bezier(.16,1,.3,1)}.activity-row:hover{background:#ffffff06}.course-row{transition:background .35s cubic-bezier(.16,1,.3,1)}.course-row:hover{background:#ffffff06}.student-card{transition:transform .45s cubic-bezier(.16,1,.3,1),border-color .45s cubic-bezier(.16,1,.3,1),background .45s cubic-bezier(.16,1,.3,1)}.student-card:hover{background:linear-gradient(#ffffff1f,#ffffff08);border-color:#ffffff38;transform:translateY(-4px)}.assignment-card{transition:background .35s cubic-bezier(.16,1,.3,1),transform .35s cubic-bezier(.16,1,.3,1)}.assignment-card:hover{background:#ffffff0f;transform:translateY(-3px)}.status-pulse{animation:3s ease-in-out infinite pulse}@keyframes pulse{0%,to{box-shadow:0 0 #10b98100}50%{box-shadow:0 0 18px -8px}}
