:root{
  --sp-primary:#2563eb;
  --sp-secondary:#06b6d4;
  --sp-green:#22c55e;
  --sp-orange:#f59e0b;
  --sp-purple:#8b5cf6;
  --sp-dark:#0f172a;
  --sp-soft:#f8fafc;
}

body{
  background:linear-gradient(135deg,#f8fbff,#f3f7ff,#fff7ed)!important;
}

.main-header,.navbar,.skin-blue .main-header .navbar{
  background:rgba(255,255,255,.92)!important;
  backdrop-filter:blur(14px);
  box-shadow:0 8px 30px rgba(15,23,42,.08)!important;
}

.main-sidebar,.studentsidebar{
  background:linear-gradient(180deg,#ffffff,#eef6ff)!important;
  box-shadow:8px 0 30px rgba(15,23,42,.10)!important;
}

.sidebar-menu>li>a,
.treeview-menu>li>a{
  border-radius:12px;
  margin:4px 10px;
  transition:.25s ease;
}

.sidebar-menu>li>a:hover,
.sidebar-menu>li.active>a,
.treeview-menu>li>a:hover{
  background:linear-gradient(90deg,var(--sp-primary),var(--sp-secondary))!important;
  color:#fff!important;
  transform:translateX(5px);
  box-shadow:0 10px 24px rgba(37,99,235,.25);
}

.content-wrapper{
  background:transparent!important;
}

.box,.card,.info-box,.small-box{
  border:0!important;
  border-radius:18px!important;
  overflow:hidden;
  background:rgba(255,255,255,.92)!important;
  box-shadow:0 14px 35px rgba(15,23,42,.10)!important;
  transition:.28s ease;
  animation:spFadeUp .45s ease both;
}

.box:hover,.card:hover,.info-box:hover,.small-box:hover{
  transform:translateY(-4px);
  box-shadow:0 20px 45px rgba(15,23,42,.16)!important;
}

.box-header{
  background:linear-gradient(90deg,#ffffff,#eff6ff)!important;
  border-bottom:1px solid rgba(37,99,235,.12)!important;
}

.box-title{
  font-weight:700!important;
  color:var(--sp-dark)!important;
}

.btn,.btn-primary,.btn-warning,.btn-info{
  border:0!important;
  border-radius:12px!important;
  font-weight:600;
  transition:.25s ease;
}

.btn-primary{
  background:linear-gradient(135deg,#2563eb,#06b6d4)!important;
}

.btn-warning{
  background:linear-gradient(135deg,#f59e0b,#f97316)!important;
  color:#fff!important;
}

.btn:hover{
  transform:translateY(-2px);
  box-shadow:0 10px 25px rgba(37,99,235,.25);
}

.table{
  border-radius:16px;
  overflow:hidden;
}

.table thead th{
  background:linear-gradient(90deg,#eef6ff,#fff7ed)!important;
  color:#0f172a!important;
  font-weight:700!important;
  border-bottom:0!important;
}

.table tbody tr{
  transition:.2s ease;
}

.table tbody tr:hover{
  background:#eff6ff!important;
  transform:scale(1.002);
}

.label-danger,.label-success,.label-warning{
  border-radius:30px!important;
  padding:5px 10px!important;
}

.label-danger{
  background:linear-gradient(135deg,#ef4444,#f97316)!important;
}

.label-success{
  background:linear-gradient(135deg,#22c55e,#14b8a6)!important;
}

.label-warning{
  background:linear-gradient(135deg,#f59e0b,#f97316)!important;
}

.form-control{
  border-radius:12px!important;
  border:1px solid #dbeafe!important;
  box-shadow:none!important;
  transition:.2s ease;
}

.form-control:focus{
  border-color:#2563eb!important;
  box-shadow:0 0 0 4px rgba(37,99,235,.12)!important;
}

.nav-tabs>li>a{
  border-radius:12px 12px 0 0!important;
  font-weight:600;
}

.nav-tabs>li.active>a{
  background:linear-gradient(135deg,#2563eb,#06b6d4)!important;
  color:#fff!important;
  border:0!important;
}

.alert-danger,.alert-warning{
  border:0!important;
  border-radius:16px!important;
  background:linear-gradient(135deg,#fee2e2,#fff7ed)!important;
  box-shadow:0 12px 25px rgba(239,68,68,.12);
}

@keyframes spFadeUp{
  from{opacity:0;transform:translateY(12px)}
  to{opacity:1;transform:translateY(0)}
}