/* =====================================================
   MOBILE CENTER ADMIN PANEL
   MODERN MOBILE-FIRST DESIGN
===================================================== */


/* RESET */

*{
    margin:0;
    padding:0;
    box-sizing:border-box;
}


body{

    font-family:'Poppins',sans-serif;

    background:#f8fafc;

    color:#0f172a;

}


a{

    text-decoration:none;

    color:inherit;

}



/* =====================================================
   ADMIN LAYOUT
===================================================== */


.admin-body{

    min-height:100vh;

    width:100%;

}



.admin-main{

    width:100%;

    min-height:100vh;

    padding:20px;

}



/* =====================================================
   MOBILE TOP BAR
===================================================== */


.admin-topbar{

    height:65px;

    background:white;

    border-radius:18px;

    display:flex;

    align-items:center;

    justify-content:space-between;

    padding:0 20px;

    box-shadow:
    0 5px 20px rgba(0,0,0,.08);

    position:sticky;

    top:15px;

    z-index:100;

}



.menu-btn{

    width:45px;

    height:45px;

    border:none;

    border-radius:12px;

    background:#2563eb;

    color:white;

    font-size:22px;

    cursor:pointer;

}



/* =====================================================
   SLIDE MENU
===================================================== */


.sidebar{

    position:fixed;

    top:0;

    left:-300px;

    width:280px;

    height:100vh;

    background:#0f172a;

    color:white;

    padding:25px;

    z-index:999;

    transition:.35s ease;

    overflow-y:auto;

}



.sidebar.active{

    left:0;

}



.admin-overlay{

    position:fixed;

    inset:0;

    background:

    rgba(0,0,0,.5);

    display:none;

    z-index:998;

}



.admin-overlay.active{

    display:block;

}




/* =====================================================
   BRAND
===================================================== */


.admin-brand{

    display:flex;

    align-items:center;

    gap:15px;

    margin-bottom:40px;

}



.admin-brand img{

    width:55px;

    height:55px;

    border-radius:50%;

    object-fit:cover;

}



.admin-brand h2{

    font-size:22px;

}



/* =====================================================
   MENU LINKS
===================================================== */


./* =====================================================
   MENU LINKS
===================================================== */

.sidebar nav{
    display:flex;
    flex-direction:column;
    width:100%;
    gap:10px;
}

.sidebar nav a{
    display:flex;
    flex-direction:row;
    align-items:center;
    width:100%;
    padding:15px;
    border-radius:14px;
    color:#cbd5e1;
    background:transparent;
    margin:0;
    transition:.3s;
}

.sidebar nav a:hover{
    background:#1e293b;
    color:#ffffff;
    transform:translateX(5px);
}

.sidebar nav a.active{
    background:#2563eb;
    color:#ffffff;
}

/* Force vertical menu */

.sidebar nav,
.sidebar ul{
    display:flex !important;
    flex-direction:column !important;
    align-items:stretch !important;
}

.sidebar nav a{
    width:100% !important;
}



/* =====================================================
   DASHBOARD HEADER
===================================================== */


.admin-header{

    background:white;

    margin-top:25px;

    padding:25px;

    border-radius:20px;

    box-shadow:

    0 5px 20px rgba(0,0,0,.06);

}



.admin-header h1{

    font-size:30px;

}





/* =====================================================
   CARDS
===================================================== */


.dashboard-cards{

    margin-top:25px;

    display:grid;

    grid-template-columns:

    repeat(auto-fit,minmax(220px,1fr));

    gap:20px;

}



.dashboard-card{

    background:white;

    padding:25px;

    border-radius:22px;

    box-shadow:

    0 5px 20px rgba(0,0,0,.05);

    transition:.3s;

}



.dashboard-card:hover{

    transform:translateY(-5px);

}



.dashboard-card p{

    font-size:35px;

    font-weight:800;

    margin-top:10px;

}





/* =====================================================
   FORMS
===================================================== */


.form-container{

    background:white;

    padding:30px;

    border-radius:25px;

    margin-top:25px;

    box-shadow:

    0 5px 20px rgba(0,0,0,.06);

}



.form-grid{

    display:grid;

    grid-template-columns:

    repeat(2,1fr);

    gap:25px;

}



.full-width{

    grid-column:1/-1;

}



input,
select,
textarea{


    width:100%;

    padding:15px;

    border-radius:14px;

    border:1px solid #cbd5e1;

    font-size:15px;

}



input:focus,
select:focus,
textarea:focus{


    outline:none;

    border-color:#2563eb;

    box-shadow:

    0 0 0 4px rgba(37,99,235,.15);

}




.submit-button{

    background:#2563eb;

    color:white;

    border:none;

    padding:16px 35px;

    border-radius:14px;

    font-weight:700;

    margin-top:25px;

    cursor:pointer;

}





/* =====================================================
   TABLES
===================================================== */


.table-container{

    overflow-x:auto;

    background:white;

    padding:20px;

    border-radius:20px;

}



table{

    width:100%;

    border-collapse:collapse;

}



td,th{

    padding:15px;

    text-align:left;

    border-bottom:1px solid #e2e8f0;

}





/* =====================================================
   MOBILE
===================================================== */


@media(max-width:700px){


.admin-main{

    padding:12px;

}



.form-container{

    padding:18px;

}



.form-grid{

    grid-template-columns:1fr;

}



.dashboard-cards{

    grid-template-columns:1fr;

}



.admin-header h1{

    font-size:24px;

}



.sidebar{

    width:85%;

}



}




/* =====================================================
   SMALL PHONES
===================================================== */


@media(max-width:350px){


.admin-header h1{

    font-size:20px;

}


.dashboard-card p{

    font-size:28px;

}


} 
.admin-login-body{

    min-height:100vh !important;

    display:flex !important;

    justify-content:center !important;

    align-items:center !important;

    background:linear-gradient(
        135deg,
        #2563eb,
        #0f172a
    ) !important;

}


.login-card{

    background:white !important;

    padding:40px !important;

    border-radius:25px !important;

    width:100%;

    max-width:430px;

    text-align:center;

    box-shadow:0 20px 60px rgba(0,0,0,.3);

}


.login-button{

    background:#2563eb !important;

    color:white !important;

    width:100%;

    padding:15px;

    border-radius:12px;

}