:root{
  --bg:#f1f5f9;
  --card:#ffffff;
  --text:#0f172a;
  --muted:#64748b;
  --line:#e2e8f0;
  --primary:#0ea5e9;
  --primary-2:#0284c7;
  --success:#10b981;
  --warning:#f59e0b;
  --danger:#ef4444;
  --shadow:0 10px 30px rgba(15,23,42,.07);
}
  
body.modern-app{
  background:
    radial-gradient(1200px 500px at 100% -100px, rgba(14,165,233,.10), transparent 60%),
    radial-gradient(900px 400px at -10% 10%, rgba(59,130,246,.08), transparent 60%),
    var(--bg) !important;
  color:var(--text);
  font-family:Inter, system-ui, -apple-system, "Segoe UI", Roboto, sans-serif;
}

body.modern-app .navbar{
  border:1px solid var(--line);
  border-radius:18px;
  background:rgba(255,255,255,.9) !important;
  box-shadow:var(--shadow);
  backdrop-filter:blur(6px);
  padding:.7rem .9rem;
}
body.modern-app .navbar .container{max-width:1400px;}
body.modern-app .navbar-brand img{width:170px !important;}
body.modern-app .navbar-nav{gap:.3rem; align-items:center;}
body.modern-app .nav-link{
  border-radius:10px;
  color:#334155 !important;
  font-weight:600 !important;
  padding:.45rem .8rem !important;
}
body.modern-app .nav-link:hover{background:#f1f5f9;}
body.modern-app .nav-link.active{
  background:#e0f2fe;
  color:#0369a1 !important;
}
body.modern-app .nav-link.text-danger{
  color:#dc2626 !important;
}
body.modern-app .nav-link.text-danger:hover{
  background:#fee2e2;
}

body.modern-app .container,
body.modern-app .container-fluid{
  max-width:1400px;
}

body.modern-app .card{
  border:1px solid var(--line);
  border-radius:18px !important;
  box-shadow:var(--shadow) !important;
  overflow:hidden;
}
body.modern-app .card-header{
  background:#fff !important;
  border-bottom:1px solid var(--line) !important;
}

body.modern-app .btn{
  border-radius:10px;
  font-weight:600;
  border-width:1px;
}
body.modern-app .btn-primary{
  background:linear-gradient(135deg,var(--primary),var(--primary-2));
  border-color:var(--primary-2);
}
body.modern-app .btn-success{
  background:linear-gradient(135deg,#22c55e,var(--success));
  border-color:#16a34a;
}
body.modern-app .btn-warning{
  color:#111827;
  background:linear-gradient(135deg,#fde68a,var(--warning));
  border-color:#f59e0b;
}
body.modern-app .btn-outline-secondary{
  border-color:#cbd5e1;
  color:#475569;
}
body.modern-app .btn-outline-secondary:hover{
  background:#f8fafc;
  color:#334155;
}

body.modern-app .form-control,
body.modern-app .form-select{
  border:1px solid #cbd5e1;
  border-radius:10px;
  padding:.5rem .72rem;
  box-shadow:none !important;
}
body.modern-app .form-control:focus,
body.modern-app .form-select:focus{
  border-color:#38bdf8;
  box-shadow:0 0 0 .2rem rgba(14,165,233,.15) !important;
}

body.modern-app .table{
  --bs-table-bg: transparent;
  border-color:#e2e8f0;
}
body.modern-app .table thead th{
  background:#f8fafc !important;
  color:#334155;
  font-size:.83rem;
  letter-spacing:.02em;
  text-transform:uppercase;
  border-bottom:1px solid #e2e8f0;
}
body.modern-app .table td{
  vertical-align:middle;
}
body.modern-app .table-hover tbody tr:hover{
  background:#f8fbff;
}

body.modern-app .list-group-item{
  border-color:#e2e8f0;
}

body.modern-app .pagination .page-link{
  border-radius:10px !important;
  margin:0 .15rem;
  border-color:#dbe3ef;
  color:#334155;
}
body.modern-app .pagination .active .page-link{
  background:#0ea5e9;
  border-color:#0284c7;
}

body.modern-app .alert{
  border-radius:12px;
}

body.modern-app .modal-content{
  border-radius:16px;
  border:1px solid #e2e8f0;
}

body.modern-app .text-muted{color:var(--muted) !important;}
