:root{

--sidebar:#111827;
--sidebar-hover:#1f2937;

--primary:#2563eb;

--border:#e5e7eb;

--bg:#f3f6fb;

--card:#ffffff;

--text:#1f2937;

--muted:#6b7280;

}

*{

margin:0;

padding:0;

box-sizing:border-box;

}

body{

font-family:Inter,system-ui,-apple-system,sans-serif;

background:var(--bg);

color:var(--text);

overflow-x:hidden;

}

a{

text-decoration:none;

}

.sidebar{

position:fixed;

left:0;

top:0;

bottom:0;

width:245px;

background:var(--sidebar);

color:#fff;

z-index:999;

overflow:auto;

}

.logo{

height:70px;

display:flex;

align-items:center;

gap:12px;

padding:0 22px;

font-size:22px;

font-weight:700;

border-bottom:1px solid rgba(255,255,255,.08);

}

.logo i{

font-size:28px;

color:#60a5fa;

}

.sidebar ul{

list-style:none;

padding:18px 10px;

margin:0;

}

.sidebar li{

margin-bottom:4px;

}

.sidebar a{

display:flex;

align-items:center;

gap:12px;

padding:11px 15px;

border-radius:10px;

font-size:14px;

font-weight:500;

color:#d1d5db;

transition:.2s;

}

.sidebar a:hover{

background:var(--sidebar-hover);

color:#fff;

}

.sidebar a.active{

background:var(--primary);

color:#fff;

}

.sidebar a i{

width:18px;

text-align:center;

font-size:16px;

}

.main{

margin-left:245px;

min-height:100vh;

}

.topbar{

position:fixed;

left:245px;

right:0;

top:0;

height:70px;

background:#fff;

display:flex;

align-items:center;

justify-content:space-between;

padding:0 22px;

border-bottom:1px solid var(--border);

z-index:998;

}

.top-right{

display:flex;

align-items:center;

gap:12px;

}

.page{

padding:95px 22px 22px;

}

.card{

border:0;

border-radius:14px;

background:var(--card);

box-shadow:0 8px 24px rgba(15,23,42,.06);

}

.card-body{

padding:20px;

}

.card h6{

font-size:13px;

font-weight:600;

color:var(--muted);

margin-bottom:10px;

}

.card h2{

font-size:32px;

font-weight:700;

margin:0;

}

.btn{

border-radius:10px;

font-size:13px;

font-weight:600;

padding:.45rem .95rem;

}

.table{

margin-bottom:0;

}

.table th{

font-size:13px;

font-weight:600;

}

.table td{

font-size:13px;

vertical-align:middle;

}

@media(max-width:991px){

.sidebar{

transform:translateX(-100%);

transition:.3s;

}

.main{

margin-left:0;

}

.topbar{

left:0;

}

.page{

padding-top:90px;

}

}

/*=========================
LOGIN PAGE
=========================*/

.login-page{

background:#eef3f8;

min-height:100vh;

display:flex;

align-items:center;

justify-content:center;

padding:30px;

}

.login-wrapper{

width:100%;

max-width:430px;

}

.login-card{

background:#fff;

border-radius:18px;

padding:38px;

box-shadow:0 15px 45px rgba(0,0,0,.08);

}

.login-logo{

width:72px;

height:72px;

margin:auto;

border-radius:16px;

background:#2563eb;

display:flex;

align-items:center;

justify-content:center;

font-size:34px;

color:#fff;

}

.login-card .form-control{

height:48px;

border-radius:10px;

}

.login-card .input-group-text{

border-radius:10px 0 0 10px;

background:#f8fafc;

}

.login-card .btn{

height:48px;

border-radius:10px;

font-weight:600;

}

.login-card a{

text-decoration:none;

font-size:14px;

}

.login-card a:hover{

text-decoration:underline;

}

