﻿/*====================================================
    HR DMS Dashboard
    RRMINDS Solutions
====================================================*/

@import url('https://fonts.googleapis.com/css2?family=Poppins:wght@300;400;500;600;700;800&display=swap');

*{
    margin:0;
    padding:0;
    box-sizing:border-box;
    font-family:'Poppins',sans-serif;
}

body{
    background:#f4f7fc;
    color:#2d3748;
    overflow-x:hidden;
}

/* Scrollbar */

::-webkit-scrollbar{
    width:8px;
}

::-webkit-scrollbar-thumb{
    background:#0d6efd;
    border-radius:20px;
}

::-webkit-scrollbar-track{
    background:#ececec;
}

/* ================= Sidebar ================= */

.sidebar{

    position:fixed;

    left:0;

    top:0;

    width:270px;

    height:100vh;

    background:linear-gradient(180deg,#0f172a,#1e293b);

    color:#fff;

    z-index:999;

    box-shadow:5px 0 25px rgba(0,0,0,.15);

}

.logo{

    padding:30px;

    font-size:28px;

    font-weight:700;

    border-bottom:1px solid rgba(255,255,255,.1);

}

.logo i{

    color:#38bdf8;

    margin-right:10px;

}

.sidebar ul{

    list-style:none;

    padding:20px;

}

.sidebar ul li{

    margin-bottom:8px;

}

.sidebar ul li a{

    display:flex;

    align-items:center;

    gap:15px;

    color:#dbeafe;

    text-decoration:none;

    padding:14px 18px;

    border-radius:12px;

    transition:.35s;

    font-size:15px;

}

.sidebar ul li a i{

    width:22px;

    text-align:center;

}

.sidebar ul li a:hover{

    background:#2563eb;

    color:#fff;

    transform:translateX(6px);

}

.sidebar ul li.active a{

    background:#2563eb;

    color:#fff;

}

/* ================= Main ================= */

.main{

    margin-left:270px;

    padding:30px;

}

/* ================= Header ================= */

.topbar{

    background:#fff;

    padding:18px 25px;

    border-radius:16px;

    display:flex;

    justify-content:space-between;

    align-items:center;

    box-shadow:0 5px 20px rgba(0,0,0,.06);

}

.left{

    display:flex;

    align-items:center;

    gap:20px;

}

.menu-btn{

    width:48px;

    height:48px;

    border:none;

    border-radius:12px;

    background:#eef4ff;

    color:#2563eb;

    font-size:20px;

    transition:.3s;

}

.menu-btn:hover{

    background:#2563eb;

    color:#fff;

}

.left h2{

    font-size:28px;

    font-weight:700;

}

/* Right */

.right{

    display:flex;

    align-items:center;

    gap:20px;

}

/* Search */

.search-box{

    position:relative;

}

.search-box input{

    width:260px;

    padding:12px 45px 12px 18px;

    border:none;

    border-radius:40px;

    background:#f5f7fb;

}

.search-box input:focus{

    outline:none;

    box-shadow:0 0 0 3px rgba(37,99,235,.15);

}

.search-box i{

    position:absolute;

    right:18px;

    top:14px;

    color:#2563eb;

}

/* Notification */

.icon{

    width:48px;

    height:48px;

    border-radius:50%;

    background:#eef4ff;

    display:flex;

    align-items:center;

    justify-content:center;

    position:relative;

    cursor:pointer;

}

.icon i{

    color:#2563eb;

}

.icon span{

    position:absolute;

    top:-4px;

    right:-4px;

    width:20px;

    height:20px;

    border-radius:50%;

    background:#ef4444;

    color:#fff;

    font-size:11px;

    display:flex;

    align-items:center;

    justify-content:center;

}

/* Profile */

.profile{

    display:flex;

    align-items:center;

    gap:12px;

}

.profile img{

    width:48px;

    height:48px;

    border-radius:50%;

    border:3px solid #2563eb;

}

.profile h6{

    margin:0;

    font-weight:600;

}

.profile small{

    color:#64748b;

}

/* Breadcrumb */

.breadcrumb-box{

    margin:25px 0;

    font-size:14px;

    color:#64748b;

}

.breadcrumb-box span{

    margin:0 10px;

}

/* Welcome */

.welcome-card{

    background:linear-gradient(135deg,#2563eb,#4f46e5);

    color:#fff;

    padding:30px;

    border-radius:18px;

    display:flex;

    justify-content:space-between;

    align-items:center;

    box-shadow:0 15px 35px rgba(37,99,235,.25);

}

.welcome-card h3{

    font-weight:700;

}

.welcome-card p{

    opacity:.9;

}

.welcome-card .btn{

    border-radius:30px;

    padding:12px 25px;

    font-weight:600;

}

/* ================= KPI Cards ================= */

.stat-card{

    border-radius:18px;

    color:#fff;

    padding:28px;

    display:flex;

    justify-content:space-between;

    align-items:center;

    transition:.35s;

    margin-bottom:25px;

    overflow:hidden;

    position:relative;

}

.stat-card:hover{

    transform:translateY(-8px);

    box-shadow:0 18px 35px rgba(0,0,0,.15);

}

.stat-card h6{

    opacity:.9;

    font-weight:500;

}

.stat-card h2{

    font-size:36px;

    font-weight:700;

    margin:8px 0;

}

.stat-card p{

    margin:0;

    opacity:.9;

}

.stat-icon{

    font-size:48px;

    opacity:.25;

}

.blue{

    background:linear-gradient(135deg,#2563eb,#3b82f6);

}

.green{

    background:linear-gradient(135deg,#10b981,#34d399);

}

.orange{

    background:linear-gradient(135deg,#f59e0b,#fbbf24);

}

.red{

    background:linear-gradient(135deg,#ef4444,#f87171);

}

/* ================= Card ================= */

.card-box{

    background:#fff;

    border-radius:18px;

    padding:25px;

    margin-bottom:25px;

    box-shadow:0 10px 30px rgba(0,0,0,.05);

    transition:.3s;

}

.card-box:hover{

    transform:translateY(-5px);

}

.card-title{

    font-size:20px;

    font-weight:600;

    margin-bottom:20px;

}

/* Table */

.table{

    margin:0;
width:95%;

}

.table thead{

    background:#f8fafc;

}

.table thead th{

    border:none;

    color:#fff;
background-color:rgba(var(--bs-primary-rgb),var(--bs-bg-opacity))!important;
    font-weight:600;

}

.table tbody td{

    vertical-align:middle;

}

/* Activity */

.activity .item{

    padding:14px;

    border-left:4px solid #2563eb;

    margin-bottom:14px;

    background:#f8fafc;

    border-radius:10px;

    transition:.3s;

}

.activity .item:hover{

    background:#eef4ff;

    transform:translateX(5px);

}

.activity i{

    width:30px;

    color:#2563eb;

}

/* Buttons */

.btn-primary{

    background:#2563eb;

    border:none;

}

.btn-primary:hover{

    background:#1d4ed8;

}

/* Charts */

canvas{

    width:100% !important;

}

/* ================= Responsive ================= */

@media(max-width:1200px){

.search-box input{

width:180px;

}

}

@media(max-width:991px){

.sidebar{

left:-270px;

}

.main{

margin-left:0;

}

.topbar{

flex-direction:column;

gap:20px;

align-items:flex-start;

}

.right{

width:100%;

justify-content:space-between;

}

}

@media(max-width:768px){

.left h2{

font-size:22px;

}

.search-box{

display:none;

}

.welcome-card{

flex-direction:column;

gap:20px;

text-align:center;

}

.profile div{

display:none;

}

}

@media(max-width:576px){

.main{

padding:15px;

}

.logo{

font-size:22px;

}

.stat-card{

padding:20px;

}

.stat-card h2{

font-size:28px;

}

}
.chart-image{
    width:100%;
    height:380px;
    object-fit:contain;
    border-radius:12px;
}

.card-box{
    overflow:hidden;
}
.form-label{
    font-weight:600;
    color:#334155;
}

.form-control,
.form-select{
    height:46px;
    border-radius:10px;
}

textarea.form-control{
    height:110px;
}

.upload-area{
    border:2px dashed #2b6df5;
    border-radius:12px;
    padding:30px;
    background:#f8fbff;
}

.upload-area:hover{
    background:#eef5ff;
}

.table{
    margin-top:20px;
}

.table th{
    font-weight:600;
}

.btn{
    border-radius:8px;
    min-width:100px;
}

.form-label{
font-weight:600;
}

.form-control,
.form-select{
height:45px;
border-radius:10px;
}

.card{
border-radius:18px;
}

.table th{
font-weight:600;
}

.btn{
border-radius:8px;
min-width:110px;
}
/* ===== Professional Buttons ===== */

.btn-action{

    min-width:120px;
    height:44px;

    background:#2563eb;

    color:#fff;

    border:none;

    border-radius:8px;

    font-weight:600;

    font-size:15px;

    transition:.3s;

    margin-right:8px;

    box-shadow:0 5px 12px rgba(37,99,235,.25);

}

.btn-action:hover{

    background:#1d4ed8;

    color:#fff;

    transform:translateY(-2px);

    box-shadow:0 8px 18px rgba(37,99,235,.35);

}

.btn-action i{

    margin-right:8px;

}

/* Cancel Button */

.btn-cancel{

    min-width:120px;
    height:44px;

    background:#64748b;

    color:#fff;

    border:none;

    border-radius:8px;

    font-weight:600;

}

.btn-cancel:hover{

    background:#475569;

    color:#fff;

}
 
/*--------------------------
      UPLOAD BOX
--------------------------*/

.upload-card{

    border:2px dashed #2563eb;

    border-radius:16px;

    background:#f8fbff;

    padding:30px;

    text-align:center;

    transition:.3s;

}

.upload-card:hover{

    background:#eef5ff;

}

.upload-card i{

    font-size:70px;

    color:#2563eb;

    margin-bottom:15px;

}

.upload-card h5{

    font-weight:600;

}

.upload-card p{

    color:#6b7280;

}

/*--------------------------
      DOCUMENT PREVIEW
--------------------------*/

.preview-box{

    margin-top:20px;

    background:#fff;

    border-radius:10px;

    padding:15px;

    box-shadow:0 5px 15px rgba(0,0,0,.05);

}

/*--------------------------
      TABLE
--------------------------*/

.table{

    border-radius:12px;

    overflow:hidden;

}

.table thead{

    background:#2563eb;

    color:#fff;

}

.table th{

    border:none;

    padding:15px;

    font-weight:600;

}

.table td{

    padding:14px;

    vertical-align:middle;

}

.table tbody tr:hover{

    background:#f4f8ff;

}

/*--------------------------
      BADGES
--------------------------*/

.badge{

    border-radius:30px;

    padding:8px 12px;

    font-size:12px;

}

/*--------------------------
      BUTTONS
--------------------------*/

.btn{

    border-radius:10px;

    font-weight:600;

    padding:10px 22px;

    transition:.3s;

}

.btn:hover{

    transform:translateY(-2px);

}

/*--------------------------
      SAVE
--------------------------*/

.btn-success{

    background:#10b981;

    border:none;

}

/*--------------------------
      UPDATE
--------------------------*/

.btn-warning{

    background:#f59e0b;

    border:none;

}

/*--------------------------
      DELETE
--------------------------*/

.btn-danger{

    background:#ef4444;

    border:none;

}

/*--------------------------
      SEARCH
--------------------------*/

.btn-primary{

    background:#2563eb;

    border:none;

}

/*--------------------------
      RESET
--------------------------*/

.btn-secondary{

    background:#6b7280;

    border:none;

}

/*--------------------------
      HORIZONTAL LINE
--------------------------*/

hr{

    border-top:1px solid #dbe5f1;

}

/*--------------------------
      ANIMATION
--------------------------*/

.card,
.btn,
.form-control,
.form-select{

    transition:.3s;

}

/*--------------------------
      RESPONSIVE
--------------------------*/

@media(max-width:991px){

.upload-card{

margin-top:25px;

}

}


/*==========================================================
        METADATA ENTRY PAGE
        RRMINDS HR DMS
==========================================================*/

.metadata-page{

    display:grid;

    grid-template-columns:58% 42%;

    gap:25px;

    padding:25px;

}

/*=========================
      LEFT PANEL
=========================*/

.preview-panel{

    background:#fff;

    border-radius:18px;

    padding:15px;

    box-shadow:0 10px 30px rgba(0,0,0,.08);

    height:820px;

    overflow:hidden;

}

/* PDF */

.preview-panel iframe{

    width:100%;

    height:100%;

    border:none;

    border-radius:12px;

}

/* Image */

.preview-panel img{

    width:100%;

    height:100%;

    object-fit:contain;

}

/*=========================
      RIGHT PANEL
=========================*/
/*=========================================
      PROFESSIONAL METADATA PANEL
=========================================*/

.metadata-panel{

    background:#ffffff;

    border-radius:18px;

    box-shadow:0 10px 35px rgba(0,0,0,.08);

    overflow:hidden;

}

/* Header */

.metadata-header{

    background:linear-gradient(90deg,#2563eb,#1d4ed8);

    color:#fff;

    padding:18px 22px;

}

.metadata-header h4{

    margin:0;

    font-size:22px;

    font-weight:600;

}

/* Body */

.metadata-body{

    padding:22px;

    max-height:780px;

    overflow-y:auto;

}

/* Section */

.form-section{

    background:#f8fbff;

    border:1px solid #e2e8f0;

    border-radius:14px;

    padding:18px;

    margin-bottom:20px;

}

.form-section-title{

    font-size:15px;

    font-weight:600;

    color:#2563eb;

    margin-bottom:18px;

    padding-bottom:10px;

    border-bottom:1px solid #dbeafe;

}

/* Label */

.form-label{

    font-size:13px;

    font-weight:600;

    color:#334155;

    margin-bottom:6px;

}

/* Input */

.form-control,
.form-select{

    height:46px;

    border-radius:10px;

    border:1px solid #d7e3f2;

    background:#fff;

    transition:.3s;

    font-size:14px;

}

.form-control:focus,
.form-select:focus{

    border-color:#2563eb;

    box-shadow:0 0 0 4px rgba(37,99,235,.10);

}

textarea.form-control{

    height:110px;

    resize:none;

}

/* Grid */

.form-grid{

    display:grid;

    grid-template-columns:1fr 1fr;

    gap:18px;

}

/* Buttons */

.form-buttons{

    display:flex;

    justify-content:flex-end;

    gap:12px;

    margin-top:15px;

}
/* Action Column */

.action-col{

    width:340px;
    white-space:nowrap;

}

/* Common Button Style */

.btn-view-action,
.btn-download-action,
.btn-delete-action{

    min-width:95px;
    height:36px;

    border:none;

    border-radius:8px;

    color:#fff;

    font-size:13px;

    font-weight:600;

    margin-right:8px;

    transition:.3s;

}

/* View */

.btn-view-action{

    background:#2563eb;

}

.btn-view-action:hover{

    background:#1d4ed8;

}

/* Download */

.btn-download-action{

    background:#16a34a;

}

.btn-download-action:hover{

    background:#15803d;

}

/* Delete */

.btn-delete-action{

    background:#ef4444;

}

.btn-delete-action:hover{

    background:#dc2626;

}

/* Icon spacing */

.btn-view-action i,
.btn-download-action i,
.btn-delete-action i{

    margin-right:6px;

}
/*=========================================
        TABLE ACTION ICONS
=========================================*/

.action-buttons{
    display:flex;
    align-items:center;
    justify-content:center;
    gap:14px;
}

.action-buttons a,
.action-buttons button{

    width:30px;
    height:30px;

    display:flex;
    align-items:center;
    justify-content:center;

    background:transparent;
    border:none;
    box-shadow:none;
    cursor:pointer;

    font-size:18px;

    transition:.25s ease;

    text-decoration:none;

}

/* View */

.action-view{
    color:#2563eb;
}

.action-view:hover{
    color:#1d4ed8;
    transform:scale(1.20);
}

/* Download */

.action-download{
    color:#16a34a;
}

.action-download:hover{
    color:#15803d;
    transform:scale(1.20);
}

/* Delete */

.action-delete{
    color:#ef4444;
}

.action-delete:hover{
    color:#dc2626;
    transform:scale(1.20);
}
/*=========================================
        DOCUMENT TABLE
=========================================*/

.document-table-wrapper{

    width:100%;

    display:flex;

    justify-content:center;

    margin:35px 0;

}

.document-table-card{

    width:95%;

    background:#ffffff;

    border-radius:16px;

    overflow:hidden;

    box-shadow:0 10px 30px rgba(0,0,0,.08);

}

/* Table */

.document-table-card table{

    width:100%;

    margin:0;

}

.document-table-card thead{

    background:linear-gradient(90deg,#2563eb,#1d4ed8);

}

.document-table-card thead th{

    color:#fff;

    text-align:center;

    padding:16px;

    font-weight:600;

    border:none;

}

.document-table-card tbody td{

    text-align:center;

    vertical-align:middle;

    padding:16px;

    border-bottom:1px solid #edf2f7;

}

.document-table-card tbody tr:hover{

    background:#f8fbff;

    transition:.25s;

}

.document-table-card tbody tr:last-child td{

    border-bottom:none;

}

/*=========================
      ACTIONS
=========================*/

.table-actions{

    display:flex;
    justify-content:center;
    align-items:center;
    gap:16px;

}

.table-actions a{

    text-decoration:none;
    font-size:18px;
    transition:.25s;

}

.action-view{

    color:#2563eb;

}

.action-edit{

    color:#f59e0b;

}

.action-delete{

    color:#ef4444;

}

.action-view:hover,
.action-edit:hover,
.action-delete:hover{

    transform:scale(1.25);

}

/*=========================
      PAGINATION
=========================*/

.table-footer{

    display:flex;
    justify-content:space-between;
    align-items:center;
    padding:20px 25px;

}

.pagination{

    display:flex;
    gap:8px;

}

.pagination a{

    width:38px;
    height:38px;
    display:flex;
    justify-content:center;
    align-items:center;
    text-decoration:none;
    background:#f1f5f9;
    color:#475569;
    border-radius:8px;
    transition:.25s;

}

.pagination a:hover,
.pagination a.active{

    background:#2563eb;
    color:#fff;

}

/*=========================
      RESPONSIVE
=========================*/

@media(max-width:1200px){

.search-grid{

grid-template-columns:repeat(2,1fr);

}

.summary-grid{

grid-template-columns:repeat(2,1fr);

}

}

@media(max-width:768px){

.search-grid{

grid-template-columns:1fr;

}

.summary-grid{

grid-template-columns:1fr;

}

.page-header{

flex-direction:column;
align-items:flex-start;
gap:15px;

}

.table-header{

flex-direction:column;
gap:15px;

}

.table-footer{

flex-direction:column;
gap:15px;

}

}

/*=========================================
        TABLE ACTION TOOLBAR
=========================================*/

.table-toolbar{

    display:flex;
    justify-content:space-between;
    align-items:center;
    margin:25px 0 18px;
    flex-wrap:wrap;
    gap:15px;

}

.table-title h3{

    font-size:28px;
    font-weight:700;
    color:#1e293b;
    margin:0;

}

.table-title p{

    margin-top:5px;
    color:#64748b;
    font-size:14px;

}

.toolbar-buttons{

    display:flex;
    align-items:center;
    gap:10px;

}

/*=========================================
            TOOLBAR BUTTONS
=========================================*/

.toolbar-btn{

    width:42px;
    height:42px;

    display:flex;
    align-items:center;
    justify-content:center;

    border:none;
    outline:none;

    border-radius:10px;

    cursor:pointer;

    transition:.25s;

    font-size:18px;

    color:#fff;

    box-shadow:0 5px 15px rgba(0,0,0,.12);

}

.toolbar-btn:hover{

    transform:translateY(-3px);

}

.toolbar-btn.view{

    background:#2563eb;

}

.toolbar-btn.pdf{

    background:#ef4444;

}

.toolbar-btn.excel{

    background:#16a34a;

}

.toolbar-btn.print{

    background:#f59e0b;

}

/*=========================================
          SEARCH BUTTONS
=========================================*/

.search-buttons{

    display:flex;
    justify-content:flex-end;
    gap:12px;
    margin-top:25px;

}

.search-btn{

    padding:12px 24px;

    border:none;

    border-radius:10px;

    font-size:15px;

    font-weight:600;

    cursor:pointer;

    color:#fff;

    transition:.25s;

    box-shadow:0 8px 20px rgba(0,0,0,.08);

}

.search-btn:hover{

    transform:translateY(-2px);

}

.search-btn.search{

    background:#2563eb;

}

.search-btn.reset{

    background:#64748b;

}

.search-btn.excel{

    background:#16a34a;

}

.search-btn.pdf{

    background:#ef4444;

}

/*=========================
      SEARCH PANEL
=========================*/

.search-panel{

    background:#fff;
    border-radius:18px;
    padding:25px;
    margin-bottom:25px;
    box-shadow:0 8px 25px rgba(0,0,0,.06);

}

.search-grid{

    display:grid;
    grid-template-columns:repeat(3,1fr);
    gap:18px;

}

.search-buttons{

    margin-top:25px;
    display:flex;
    justify-content:flex-end;
    gap:12px;

}

/*=========================
      SUMMARY CARDS
=========================*/

.summary-grid{

    display:grid;
    grid-template-columns:repeat(4,1fr);
    gap:20px;
    margin-bottom:30px;

}

.summary-card{

    border-radius:18px;
    padding:22px;
    color:#fff;
    position:relative;
    overflow:hidden;
    transition:.3s;
    box-shadow:0 10px 25px rgba(0,0,0,.08);

}

.summary-card:hover{

    transform:translateY(-5px);

}

.summary-card h5{

    font-size:15px;
    margin-bottom:12px;

}

.summary-card h2{

    font-size:40px;
    margin-bottom:8px;

}

.summary-card span{

    opacity:.9;

}

.summary-card i{

    position:absolute;
    right:20px;
    top:20px;
    font-size:55px;
    opacity:.18;

}

.summary-card.blue{

    background:linear-gradient(135deg,#2563eb,#3b82f6);

}

.summary-card.green{

    background:linear-gradient(135deg,#10b981,#22c55e);

}

.summary-card.orange{

    background:linear-gradient(135deg,#f59e0b,#fbbf24);

}

.summary-card.red{

    background:linear-gradient(135deg,#ef4444,#fb7185);

}

/*=========================
        TABLE CARD
=========================*/

.table-card{

    background:#fff;
    border-radius:18px;
    overflow:hidden;
    box-shadow:0 10px 25px rgba(0,0,0,.08);

}

.table-header{

    display:flex;
    justify-content:space-between;
    align-items:center;
    padding:20px 25px;
    border-bottom:1px solid #edf2f7;

}

.table-header h3{

    margin:0;
    font-size:22px;
    color:#1e293b;

}

.table-header span{

    color:#64748b;
    font-size:14px;

}

/*=========================
      TABLE
=========================*/

.employee-table{

    width:100%;
    border-collapse:collapse;

}

.employee-table thead{

    background:#2563eb;

}

.employee-table thead th{

    color:#fff;
    padding:16px;
    font-size:14px;
    font-weight:600;
    text-align:center;

}

.employee-table tbody td{

    padding:16px;
    text-align:center;
    border-bottom:1px solid #edf2f7;
    vertical-align:middle;

}

.employee-table tbody tr:hover{

    background:#f8fbff;

}

/*=========================
      PHOTO
=========================*/

.emp-photo{

    width:50px;
    height:50px;
    border-radius:50%;
    object-fit:cover;
    border:3px solid #edf2f7;

}

/*=========================
      BADGES
=========================*/

.badge{

    padding:7px 14px;
    border-radius:30px;
    font-size:12px;
    font-weight:600;

}

.badge-blue{

    background:#dbeafe;
    color:#2563eb;

}

.badge-green{

    background:#dcfce7;
    color:#15803d;

}

.badge-orange{

    background:#ffedd5;
    color:#ea580c;

}

.badge-red{

    background:#fee2e2;
    color:#dc2626;
}

/*=========================================
         PAGINATION
=========================================*/

.pagination-area{

    display:flex;

    justify-content:space-between;

    align-items:center;

    padding:20px;

    border-top:1px solid #edf2f7;

}

.pagination{

    display:flex;

    gap:8px;

}

.pagination a{

    width:38px;

    height:38px;

    border-radius:8px;

    background:#f1f5f9;

    display:flex;

    justify-content:center;

    align-items:center;

    text-decoration:none;

    color:#334155;

    transition:.25s;

    font-weight:600;

}

.pagination a:hover,

.pagination a.active{

    background:#2563eb;

    color:#fff;

}

.page-info{

    color:#64748b;

    font-size:14px;

}
/*==========================
      DMS Upload Card
===========================*/

.dms-upload-box{

    width:100%;
    max-width:760px;
    margin:35px auto;

    background:#ffffff;

    border-radius:18px;

    box-shadow:0 12px 35px rgba(0,0,0,.08);

    overflow:hidden;

    border:1px solid #edf2f7;

}

.dms-upload-header{

    padding:18px 28px;

    background:linear-gradient(90deg,#2563eb,#1d4ed8);

    color:#fff;

    font-size:22px;

    font-weight:600;

}

.dms-upload-header i{

    margin-right:10px;

}

.dms-upload-body{

    padding:28px;

}

.dms-grid{

    display:grid;

    grid-template-columns:1fr 1fr;

    gap:22px;

}

.dms-full{

    grid-column:1/3;

}

.dms-label{

    display:block;

    margin-bottom:8px;

    color:#334155;

    font-size:14px;

    font-weight:600;

}

.dms-input,

.dms-select,

.dms-textarea{

    width:100%;

    border:1px solid #d8e3f2;

    border-radius:10px;

    padding:12px 15px;

    font-size:14px;

    transition:.25s;

    background:#fff;

    box-sizing:border-box;

}

.dms-input{

    height:46px;

}

.dms-select{

    height:46px;

}

.dms-textarea{

    min-height:90px;

    resize:none;

}

.dms-input:focus,

.dms-select:focus,

.dms-textarea:focus{

    outline:none;

    border-color:#2563eb;

    box-shadow:0 0 0 4px rgba(37,99,235,.12);

}

.dms-upload-footer{

    margin-top:25px;

    display:flex;

    justify-content:flex-end;

}

.dms-upload-btn{

    border:none;

    background:#2563eb;

    color:#fff;

    padding:13px 28px;

    border-radius:10px;

    font-size:15px;

    font-weight:600;

    cursor:pointer;

    transition:.25s;

}

.dms-upload-btn:hover{

    background:#1d4ed8;

    transform:translateY(-2px);

    box-shadow:0 10px 25px rgba(37,99,235,.30);

}

.dms-upload-btn i{

    margin-right:8px;

}

@media(max-width:768px){

.dms-grid{

grid-template-columns:1fr;

}

.dms-full{

grid-column:auto;

}

}
/*==================================================
EMPLOYEE SEARCH PANEL
==================================================*/

.empsearch-panel{

    background:#ffffff;

    border-radius:18px;

    padding:28px;

    margin-bottom:30px;

    box-shadow:0 10px 35px rgba(0,0,0,.08);

    border:1px solid #edf2f7;

}


.empsearch-header{

    display:flex;

    justify-content:space-between;

    align-items:center;

    margin-bottom:28px;

    padding-bottom:18px;

    border-bottom:1px solid #edf1f6;

}


.empsearch-header h3{

    margin:0;

    font-size:24px;

    font-weight:700;

    color:#1e3a8a;

}


.empsearch-header span{

    display:block;

    margin-top:6px;

    color:#6b7280;

    font-size:14px;

}


.empsearch-count{

    background:#eef4ff;

    color:#2563eb;

    padding:12px 22px;

    border-radius:40px;

    font-weight:600;

    font-size:15px;

}


.empsearch-grid{

    display:grid;

    grid-template-columns:repeat(3,1fr);

    gap:22px;

}


.empsearch-group{

    display:flex;

    flex-direction:column;

}


.empsearch-group label{

    margin-bottom:8px;

    font-weight:600;

    color:#374151;

    font-size:14px;

}


.empsearch-group input,

.empsearch-group select{

    height:48px;

    border:1px solid #d7e2f0;

    border-radius:12px;

    padding:0 16px;

    background:#fff;

    font-size:15px;

    transition:.3s;

}


.empsearch-group input:focus,

.empsearch-group select:focus{

    outline:none;

    border-color:#2563eb;

    box-shadow:0 0 0 4px rgba(37,99,235,.15);

}


.empsearch-buttons{

    margin-top:30px;

    display:flex;

    justify-content:flex-end;

    gap:15px;

}


.empsearch-buttons button{

    border:none;

    border-radius:12px;

    padding:13px 28px;

    font-size:15px;

    font-weight:600;

    color:#fff;

    cursor:pointer;

    transition:.3s;

}


.emp-btn-search{

    background:#2563eb;

}


.emp-btn-search:hover{

    background:#1d4ed8;

}


.emp-btn-reset{

    background:#6b7280;

}


.emp-btn-reset:hover{

    background:#4b5563;

}


.emp-btn-excel{

    background:#16a34a;

}


.emp-btn-excel:hover{

    background:#15803d;

}


.empsearch-buttons i{

    margin-right:8px;

}


@media(max-width:992px){

.empsearch-grid{

grid-template-columns:repeat(2,1fr);

}

}


@media(max-width:768px){

.empsearch-grid{

grid-template-columns:1fr;

}

.empsearch-header{

flex-direction:column;

align-items:flex-start;

gap:15px;

}

.empsearch-buttons{

justify-content:center;

flex-wrap:wrap;

}

}

/*==================================================
      EMPLOYEE TABLE
==================================================*/

.emp-table-card{

    background:#fff;
    border-radius:18px;
    margin-top:25px;
    overflow:hidden;
    box-shadow:0 12px 35px rgba(0,0,0,.08);

}

.emp-table-header{

    display:flex;
    justify-content:space-between;
    align-items:center;
    padding:22px 28px;
    border-bottom:1px solid #edf2f7;

}

.emp-table-header h3{

    margin:0;
    font-size:24px;
    color:#1e3a8a;
    font-weight:700;

}

.emp-table-header span{

    color:#64748b;
    font-size:14px;

}

.emp-search-box{

    position:relative;

}

.emp-search-box input{

    width:280px;
    height:42px;
    padding-left:42px;
    border:1px solid #d8e3f2;
    border-radius:25px;

}

.emp-search-box i{

    position:absolute;
    left:15px;
    top:13px;
    color:#94a3b8;

}

.emp-table-responsive{

    overflow:auto;

}

.emp-table{

    width:100%;
    border-collapse:collapse;

}

.emp-table thead{

    background:#2563eb;

}

.emp-table thead th{

    color:#fff;
    padding:16px;
    text-align:center;
    font-size:14px;
    position:sticky;
    top:0;

}

.emp-table tbody td{

    padding:16px;
    text-align:center;
    border-bottom:1px solid #edf2f7;

}

.emp-table tbody tr:hover{

    background:#f8fbff;

}

.emp-img{

    width:50px;
    height:50px;
    border-radius:50%;
    border:3px solid #edf2f7;

}

.emp-badge{

    padding:6px 14px;
    border-radius:30px;
    font-size:12px;
    font-weight:600;

}

.emp-badge.blue{

    background:#dbeafe;
    color:#2563eb;

}

.emp-badge.green{

    background:#dcfce7;
    color:#15803d;

}

.emp-badge.orange{

    background:#ffedd5;
    color:#ea580c;

}

.emp-action{

    display:flex;
    justify-content:center;
    gap:16px;

}

.emp-action a{

    font-size:18px;
    text-decoration:none;
    transition:.25s;

}

.emp-action a:nth-child(1){

    color:#2563eb;

}

.emp-action a:nth-child(2){

    color:#f59e0b;

}

.emp-action a:nth-child(3){

    color:#ef4444;

}

.emp-action a:hover{

    transform:scale(1.25);

}
/*==================================================
        PAGINATION
==================================================*/

.emp-page-footer{

    display:flex;

    justify-content:space-between;

    align-items:center;

    padding:22px 25px;

    background:#fff;

    border-top:1px solid #edf2f7;

    flex-wrap:wrap;

    gap:20px;

}

/* Left */

.emp-page-left{

    display:flex;

    align-items:center;

    gap:10px;

    color:#475569;

    font-size:14px;

}

.emp-page-select{

    width:75px;

    height:38px;

    border:1px solid #dbe3ef;

    border-radius:8px;

    padding:0 8px;

    outline:none;

}

/* Center */

.emp-page-center{

    color:#64748b;

    font-size:14px;

}

.emp-page-center strong{

    color:#2563eb;

}

/* Right */

.emp-page-right{

    display:flex;

    gap:8px;

}

/* Buttons */

.emp-page-btn{

    width:38px;

    height:38px;

    border:none;

    border-radius:8px;

    background:#f1f5f9;

    color:#334155;

    cursor:pointer;

    transition:.25s;

    font-weight:600;

}

.emp-page-btn:hover{

    background:#2563eb;

    color:#fff;

}

.emp-page-btn.active{

    background:#2563eb;

    color:#fff;

    box-shadow:0 8px 20px rgba(37,99,235,.30);

}

/* Mobile */

@media(max-width:900px){

.emp-page-footer{

    flex-direction:column;

    text-align:center;

}

}