/* Page Loader */
#np-loader{
position:fixed;
inset:0;
background:#fff;
display:flex;
align-items:center;
justify-content:center;
z-index:99999;
transition:opacity .35s ease, visibility .35s ease;
}
#np-loader.hide{
opacity:0;
visibility:hidden;
}
.np-spinner{
width:52px;
height:52px;
border:5px solid #e5e5e5;
border-top-color:#0d6efd;
border-radius:50%;
animation:npSpin 1s linear infinite;
}
@keyframes npSpin{
to{transform:rotate(360deg);}
}

/* Button Loading */
.btn.loading{
pointer-events:none;
opacity:.7;
}

/* Skeleton */
.np-skeleton{
background:linear-gradient(90deg,#eee 25%,#f6f6f6 37%,#eee 63%);
background-size:400% 100%;
animation:npSkeleton 1.4s ease infinite;
border-radius:8px;
min-height:20px;
}
@keyframes npSkeleton{
0%{background-position:100% 0}
100%{background-position:-100% 0}
}

/* Progress Bar */
#np-progress{
position:fixed;
top:0;
left:0;
height:3px;
width:0;
background:#0d6efd;
z-index:99998;
transition:width .2s linear;
}
