
    body {
      background: #f7f0f0;
      font-family: "Inter", sans-serif;
    }
    /* Sidebar */
    .sidebar {
        background: linear-gradient(180deg, #262D34 0%, #3a3f47 40%, #ff8c66 80%, #ff6a3d 100%);
        min-height: 100vh;
        width: 250px;
        position: fixed;
        left: 0;
        top: 0;
        transition: all 0.3s ease;
        z-index: 1050;
        box-shadow: rgba(50, 50, 93, 0.25) 0px 2px 5px -1px,
        rgba(0, 0, 0, 0.3) 0px 1px 3px -1px;
    }
    .sidebar.collapsed { left: -250px; }
    .sidebar .logo {
      font-weight: 700;
      font-size: 20px;
      color: #fff;
      padding: 20px;
      border-bottom: 1px solid #2d3647;
      display: flex;
      justify-content: space-between;
      align-items: center;
    }
    .sidebar .close-btn {
      display: none;
      font-size: 22px;
      cursor: pointer;
      color: #ff8c66;
    }
    .sidebar .nav-link {
      color: #cfd8e3;
      padding: 12px 20px;
      border-radius: 8px;
      margin: 4px 8px;
      display: flex;
      align-items: center;
      font-weight: 500;
      transition: all 0.3s;
    }
    .sidebar .nav-link i { margin-right: 10px; }
    .sidebar .nav-link.active,
    .sidebar .nav-link:hover {
      background: #2d3647;
      color: #ff8c66;
    }

    /* Main */
    .main {
      margin-left: 250px;
      padding: 20px;
      transition: margin-left 0.3s ease;
    }
    .main.expanded { margin-left: 0; }

    /* Topbar */
    .topbar {
      background: #fff;
      padding: 15px 20px;
      border-radius: 12px;
     box-shadow: rgba(50, 50, 93, 0.25) 0px 2px 5px -1px, rgba(0, 0, 0, 0.3) 0px 1px 3px -1px;
      margin-bottom: 20px;
    }
    .search-box {
      border: none;
      background: #f1f3f6;
      border-radius: 8px;
      padding: 8px 12px;
      width: 200px;
    }
    .menu-toggle {
      font-size: 22px;
      cursor: pointer;
      color: #1e2635;
      margin-right: 15px;
      display: none;
    }

    /* Alerts & Cards */
    .alert-custom {

        background: #fdeaea;
      border: none;
      border-radius: 8px;
      color: #333;
      font-weight: 600;
    }
    .card-custom {
      border: none;
      border-radius: 12px;
      padding: 20px;
      background: #fff;
     box-shadow: rgba(50, 50, 93, 0.25) 0px 2px 5px -1px, rgba(0, 0, 0, 0.3) 0px 1px 3px -1px;
      transition: transform 0.2s, box-shadow 0.2s;
    }
    .card-custom:hover {
      transform: translateY(-5px);
      box-shadow: 0 6px 15px rgba(0,0,0,0.1);
    }
    .card-custom h6 {
      font-size: 14px;
      font-weight: 600;
      margin-top: 10px;
      margin-bottom: 5px;
    }
    .card-custom h4 { font-weight: 700; }
    .stat-icon {
      display: inline-flex;
      align-items: center;
      justify-content: center;
      width: 40px;
      height: 40px;
      border-radius: 10px;
      background: #ffece6;
      color: #ff8c66;
      font-size: 20px;
      margin-bottom: 8px;
    }

    /* Charts */
    #performanceChart { height: 280px; }
    #donutChart { height: 200px !important; }

    /* Responsive */
    @media (max-width: 991px) {
      .menu-toggle { display: block; }
      .sidebar { left: -250px; }
      .sidebar.active { left: 0; }
      .sidebar .close-btn { display: block; }
      .main { margin-left: 0; }
    }
/* ----------------table */
table {
  font-family: 'Segoe UI', Tahoma, Geneva, Verdana, sans-serif;
  width: 100%;
  border-collapse: separate;
  border-spacing: 0 10px; /* adds spacing between rows */
  background-color: transparent;
}

th, td {
  text-align: left;
  padding: 14px 16px;
  font-size: 15px;
}

th {
  background: #51555D !important;
  color: #ffffff;
  font-weight: 600;

}

tr {
  background: #ffffff;
  box-shadow: 0 2px 6px rgba(0, 0, 0, 0.05);
  border-radius: 10px;
  transition: all 0.2s ease-in-out;
}

tr:hover {
  transform: translateY(-2px);
  box-shadow: 0 4px 12px rgba(0, 0, 0, 0.1);
}

td:first-child {
  font-weight: 500;
  color: #2a3f5f;
}

td {
  border-top: 1px solid #f1f1f1;

}

/* Rounded corners for rows */
tr td:first-child {
  border-top-left-radius: 10px;
  border-bottom-left-radius: 10px;
}
tr td:last-child {
  border-top-right-radius: 10px;
  border-bottom-right-radius: 10px;
}
.table-responsive-custom {
  width: 100%;
  overflow-x: auto;
  -webkit-overflow-scrolling: touch; /* smooth scrolling on iOS */
}

table {
  min-width: 600px; /* forces scroll if screen < 600px */
  border-collapse: separate;
  border-spacing: 0 10px;
}
/* -------------------------------------------------------------------------------------------------------------------------------------app chat-- */

 .chat-wrapper {
    display: flex;
    height: 85vh;
    background: #fff;
    border-radius: 12px;
    overflow: hidden;
   box-shadow: rgba(50, 50, 93, 0.25) 0px 2px 5px -1px, rgba(0, 0, 0, 0.3) 0px 1px 3px -1px;
    position: relative;
    gap: 15px; /* 👈 space between sidebar and chat */
    background: transparent; /* important to avoid white block filling gap */
}


        /* Sidebar */
        #chatSidebarPanel {
            width: 340px;
            border-right: 1px solid #eee;
            display: flex;
            flex-direction: column;
            background: #fff;
            transition: transform 0.3s ease;
            z-index: 1000;
        }

        #chatSidebarPanel .sidebar-header {
            padding: 10px;
            border-bottom: 1px solid #eee;
            display: flex;
            justify-content: space-between;
            align-items: center;
        }

        #chatSidebarPanel .sidebar-header input {
            width: 100%;
            border-radius: 20px;
            border: 1px solid #ddd;
            padding: 7px 15px;
            font-size: 14px;
        }

        #chatSidebarPanel .sidebar-header .close-btn {
            display: none;
            font-size: 22px;
            cursor: pointer;
            margin-left: 10px;
        }

        #chatSidebarPanel .chat-list {
            flex-grow: 1;
            overflow-y: auto;
        }

        #chatSidebarPanel .chat-item {
            display: flex;
            align-items: center;
            padding: 12px 15px;
            border-bottom: 1px solid #f3f3f3;
            cursor: pointer;
        }

        #chatSidebarPanel .chat-item:hover,
        #chatSidebarPanel .chat-item.active {
            background: #f9f9f9;
        }

        #chatSidebarPanel .chat-item img {
            width: 42px;
            height: 42px;
            border-radius: 50%;
            margin-right: 10px;
        }

        #chatSidebarPanel .chat-item .name {
            font-weight: 500;
        }

        #chatSidebarPanel .chat-item .last-msg {
            font-size: 12px;
            color: #777;
        }

        #chatSidebarPanel .chat-item .time {
            font-size: 11px;
            color: #aaa;
            margin-left: auto;
        }

        /* Chat Main */
        .chat-main {
            flex-grow: 1;
            display: flex;
            flex-direction: column;
            width: 100%;
        }

        .chat-header {
            padding: 12px 20px;
            border-bottom: 1px solid #eee;
            display: flex;
            justify-content: space-between;
            align-items: center;
        }

        .chat-header strong {
            display: block;
            font-size: 16px;
        }

        .chat-header small {
            color: green;
            font-size: 12px;
        }

        .toggle-btn {
            display: none;
            font-size: 22px;
            margin-right: 15px;
            cursor: pointer;
        }

        .chat-body {
            flex-grow: 1;
            padding: 20px;
            overflow-y: auto;
            background: #fafafa;
        }

        .message {
            max-width: 70%;
            padding: 10px 15px;
            border-radius: 10px;
            margin-bottom: 5px;
            font-size: 14px;
            position: relative;
        }

        .message.sent {
            background: #ff5f2e;
            color: #fff;
            margin-left: auto;
            border-top-right-radius: 0;
        }

        .message.received {
            background: #f1f3f6;
            color: #333;
            border-top-left-radius: 0;
        }

        .time {
            font-size: 11px;
            color: #aaa;
            margin: 0 5px 12px 5px;
        }

        .message-images {
            display: flex;
            gap: 5px;
            margin: 5px 0;
        }

        .message-images img {
            width: 90px;
            height: 70px;
            border-radius: 6px;
            object-fit: cover;
        }

        .chat-footer {
            padding: 10px 15px;
            border-top: 1px solid #eee;
            display: flex;
            align-items: center;
            background: #fff;
        }

        .chat-footer input {
            flex-grow: 1;
            border-radius: 20px;
            border: 1px solid #ddd;
            padding: 8px 15px;
        }

        .chat-footer button {
            background: #ff5f2e;
            border: none;
            color: #fff;
            border-radius: 50%;
            width: 40px;
            height: 40px;
            display: flex;
            align-items: center;
            justify-content: center;
            margin-left: 10px;
        }

        /* Mobile Responsive */
        @media (max-width: 768px) {
            #chatSidebarPanel {
                position: absolute;
                top: 0;
                left: 0;
                height: 100%;
                transform: translateX(-100%);
            }

            #chatSidebarPanel.active {
                transform: translateX(0);
            }

            #chatSidebarPanel .sidebar-header .close-btn {
                display: block;
            }

            .toggle-btn {
                display: inline-block;
            }
        }
        /* ---------------------------------------------------------------------------------------------------------------------employees list */

.employee-table {
  border-collapse: separate;
  border-spacing: 0 10px;
  font-family: 'Segoe UI', Tahoma, Geneva, Verdana, sans-serif;
}

.employee-table th {

    background: #51555D !important;
  font-weight: 600;
  color:white;
  padding: 14px 16px;
  font-size: 14px;
}

.employee-table td {
  background: #fff;
  padding: 14px 16px;
  font-size: 14px;
  vertical-align: middle;
  border-top: 1px solid #f1f1f1;
}

.employee-table tr {
  box-shadow: 0 2px 6px rgba(0,0,0,0.05);
  border-radius: 10px;
  transition: 0.2s ease-in-out;
}

.employee-table tr:hover {
  transform: translateY(-2px);
  box-shadow: 0 4px 12px rgba(0,0,0,0.1);
}

.employee-table td:first-child {
  border-top-left-radius: 10px;
  border-bottom-left-radius: 10px;
}

.employee-table td:last-child {
  border-top-right-radius: 10px;
  border-bottom-right-radius: 10px;
}
.addemployebutton{
    background-color: #FF7E53;
    border: none;
    padding:8px 15px !important;
    border-radius: 5px;
    font-weight: bold;
    color:white;
    box-shadow: rgba(0, 0, 0, 0.4) 0px 2px 4px, rgba(0, 0, 0, 0.3) 0px 7px 13px -3px, rgba(0, 0, 0, 0.2) 0px -3px 0px inset;
}

/* ------------add employee */
.upload-box {
  border: 2px dashed #d0d6e0;
  border-radius: 12px;
  background: #fcfcfc;
  cursor: pointer;
  transition: all 0.3s ease-in-out;
}
.upload-box:hover {
  border-color: #4e73df;
  background: linear-gradient(145deg, #f8faff, #ffffff);
  box-shadow: 0 6px 16px rgba(78, 115, 223, 0.1);
}
.upload-box i {
  color: #4e73df;
}

/* Cards */
.boxshadow {
  border-radius: 14px;
  background: #ffffff;
 box-shadow: rgba(50, 50, 93, 0.25) 0px 2px 5px -1px, rgba(0, 0, 0, 0.3) 0px 1px 3px -1px;
  transition: transform 0.2s ease-in-out;
  padding:2% !important;
}

.boxshadow2 {
  border-radius: 14px;
  background: #ffffff;
box-shadow: rgba(50, 50, 93, 0.25) 0px 2px 5px -1px, rgba(0, 0, 0, 0.3) 0px 1px 3px -1px;
  transition: transform 0.2s ease-in-out;
  padding:2% !important;
}
.boxshadow:hover {
  transform: translateY(-3px);
}

/* Form controls */
.form-control, .form-select {
  border-radius: 5px;
  font-size: 14px;
  border: 1px solid #e1e5eb;
  transition: all 0.2s ease-in-out;
  padding:8px 10px !important;
}
.form-control:focus, .form-select:focus {
  border-color: #FF7E53;;
  box-shadow: 0 0 0 0.2rem rgba(78, 115, 223, 0.15);
}
.form-label{
    font-weight: bold;
}
/* Headings */
.card h6 {
  color: #344767;
  font-weight: 600;
  letter-spacing: 0.3px;
}

/* Submit Button */
form button {
  background: linear-gradient(135deg,  #FF7E53, #2E343C);
  color: #fff;
  border: none;
  border-radius: 8px;
  font-weight: 600;
  font-size: 14px;
  padding: 10px 34px;
  cursor: pointer;
  transition: all 0.3s ease-in-out;
  margin-top: 20px;
    box-shadow: rgba(0, 0, 0, 0.4) 0px 2px 4px, rgba(0, 0, 0, 0.3) 0px 7px 13px -3px, rgba(0, 0, 0, 0.2) 0px -3px 0px inset;

}
.flex{
    display: flex;
  justify-content: end;
  align-items: end;
  flex-direction: column;
}

form button:hover {
  background:black;
  box-shadow: 0 6px 14px rgba(78, 115, 223, 0.3);
  transform: translateY(-2px);
}

form button:active {
  transform: scale(0.97);
  box-shadow: 0 3px 8px rgba(78, 115, 223, 0.2);
}
#button{
    background-color: white !important;
}
    .logout-btn {
        font-weight: bold;
        color: #FF794F !important;   /* text color */
        background-color: transparent !important; /* remove background */
        border: none;
    }

    .logout-btn:hover,
    .logout-btn:focus {
        background-color: transparent !important; /* disable hover bg */
        color: #FF794F !important; /* keep same color on hover */
    }
/*-------------------------------------------------------------------------------profile*/
    .pi-sidebar {
        background-color: #ffffff;
        border-radius: 10px;
        padding: 20px;
        min-height: 20%;   /* full screen height */
        height: auto;        /* only as tall as content */
        position: sticky;    /* sidebar stays fixed on scroll */
        top: 0;
    }

    .pi-sidebar .pi-nav-link {
        color: #333;
        margin-bottom: 12px;
        padding: 10px 15px;
        display: block;
        border-radius: 10px;
        text-decoration: none;
        transition: background-color 0.2s;
    }

    .pi-sidebar .pi-nav-link:hover {
        background-color: #f0f0f0;
    }

    .pi-sidebar .pi-nav-link.active {
        background-color: #f7cdd0;
        color: #d63384;
        font-weight: 500;
    }

    .pi-card {
        border-radius: 15px;
        border: none;
        box-shadow: rgba(50, 50, 93, 0.25) 0px 2px 5px -1px, rgba(0, 0, 0, 0.3) 0px 1px 3px -1px;
        background-color: #ffffff;
    }

    .pi-form-section {
        padding: 30px;
    }

    .pi-profile-img {
        width: 80px;
        height: 80px;
        border-radius: 50%;
        object-fit: cover;
    }

    .upload-btn {
        background-color: #f7cdd0 !important;
        border: none !important;
        padding: 8px 35px !important;
        border-radius: 20px !important;
        color: #d63384 !important;
        font-weight: bold !important;
        font-size: 16px !important;
        cursor: pointer;
    }
.update-profile{
    background-color: #0dcaf0 !important;
}

    @media(max-width:768px){
        .smllmargintop{
            margin-top: 5% !important;
        }
    }
