* {
  margin: 0;
  padding: 0;
  box-sizing: border-box;
}

html {
  scroll-behavior: smooth;
}

img {
  width: 60%;
  height: auto;
}

:root {
  --navbg: linear-gradient(220.55deg, #b7dcff 0%, #ffa4f6 100%);
  --primarylink: #262626;
  --white: #fff;
  --black: #333;
  --btn-bg-primary: #4c3575;
  --bg-color1: linear-gradient(220.55deg, #8a88fb 0%, #d079ee 100%);
  --bg-color2: linear-gradient(220.55deg, #dd7bff 0%, #ff6c6c 100%);
  --bg-color3: linear-gradient(220.55deg, #565656 0%, #181818 100%);
  --leave-form-btnbg: #4169e1;
  --complaint-frombtnbg: #a78bfa;
  --complaint-formbtnlink: #111827;
}

/*? code for dark mode and light mode  */

.dark {
  background: linear-gradient(220.55deg, #4643DF 0%, #0B0A47 100%);
  color: #fff;
  transition: all 0.6s ease-in-out;
}

.dark .dashboard-header {
  background: linear-gradient(220.55deg, #ffd439 0%, #ff7a00 100%);
}

.dark .int-application .total-hired,
.dark .int-application .total-rejected,
.dark .int-application .total-on-hold {
  background: linear-gradient(220.55deg, #ffed46 0%, #ff7ec7 100%);
  color: #181818;
}

.dark .emp-details-box .total-emp {
  background: linear-gradient(220.55deg, #e0ff87 0.01%, #8fb85b 100%);
  color: #181818;
}

.dark .employee-nav .employee-btn-grp button:hover,
.dark .employee-cards .employee-btn-grp button:hover {
  color: #fff;
}

.dark .employee-profile-card .profile-info .profile-header .apply-leave:hover,
.employee-profile-card .profile-info .profile-header .leave-status:hover {
  color: #fff;
}

.dark .complaint-emp-name h2,
.dark .complaint-emp-id h2,
.dark .complaint-emp-mssg h2 {
  color: #181818;
}

.dark .leave-container-admin h2,
.dark .leave-details-admin h3,
.dark .leave-details h3,
.dark .leave-container h2 {
  color: #1a1a1a;
}

.dark .leave-details .employee-details h3 {
  color: #1a1a1a;
}

.employee-nav {
  width: 1140px;
  margin: auto;
  display: flex;
  justify-content: space-between;
  align-items: center;
  margin-top: 1.5rem;
}

.employee-nav .user-img-box .user-img {
  width: 10%;
  border-radius: 100%;
  border: none;
  float: right;
}

.employee-nav dfn {
  float: right;
  margin-left: 0.5rem;
}

.employee-nav h1 {
  font-family: "Poppins", sans-serif;
  font-weight: 700;
  font-style: normal;
}

.employee-search-box {
  background-color: #f0f0f0;
  font-size: 1rem;
  border: none;
  outline: none;
  border-radius: 0.5rem;
  color: #333;
  padding: 0 1rem;
}

.employee-nav .employee-btn-grp button,
.employee-cards .employee-btn-grp button {
  background-color: #4c3575;
  color: #fff;
  padding: 0.5rem 1.25rem;
  border: none;
  outline: none;
  border-radius: 0.25rem;
  font-family: "Poppins", sans-serif;
  font-weight: 500;
  font-style: normal;
  cursor: pointer;
  transition: all 0.5s;
}

.employee-nav .employee-btn-grp button:hover,
.employee-cards .employee-btn-grp button:hover {
  background-color: transparent;
  color: #4c3575;
  border: 2px solid #4c3575;
}

.employee-cards {
  padding-bottom: 1.5rem;
}
.employee-cards .employee-btn-grp {
  margin-top: 1rem;
}

.employee-cards .employee-btn-grp button:nth-child(1) {
  margin-left: 0;
}

.employee-nav .employee-btn-grp button i,
.employee-cards .employee-btn-grp button i {
  margin-right: 0.5rem;
}

hr {
  color: #333;
  width: 80%;
  margin: 1rem auto;
}

.employee-cards {
  width: 1140px;
  margin: auto;
  display: grid;
  grid-template-columns: repeat(2, 1fr);
  gap: 1.5rem;
}

.user-img {
  width: 2%;
  height: auto;
  border-radius: 100%;
  border: none;
  text-align: center;
}

dfn {
  float: right;
  text-align: end;
  margin-top: 1.25rem;
}

.employee-cards .profile-card {
  box-shadow: rgba(99, 99, 99, 0.2) 0px 2px 8px 0px;
  display: flex;
  padding: 2rem;
  border-radius: 0.5rem;
  gap: 1rem;
}

.employee-cards .profile-card h2,
.employee-cards .profile-card p {
  margin-top: 1rem;
  font-family: "Poppins", sans-serif;
  font-weight: 400;
  font-style: normal;
}

.employee-cards .profile-card h2 {
  font-size: 1.25rem;
  font-family: "Poppins", sans-serif;
  font-weight: 500;
  font-style: normal;
}

.employee-cards .profile-card p {
  margin-top: 1.25rem;
}

.employee-cards .profile-card .profile-img {
  border-right: 1px solid #555;
}

/* .employee-cards .profile-card img {
  border: 1px solid #555;
  border-radius: 100%;
  width: 20%;
  height: auto;
  padding: 0.25rem;
} */

.employee-cards .employee-btn-grp {
  display: flex;
  gap: 1rem;
}

.employee-nav .employee-btn-grp {
  display: flex;
  gap: 1rem;
}

.employee-cards .profile-card hr {
  width: 100%;
}

.employee-cards .profile-card .profile-info .profile-name,
.employee-cards .profile-card .profile-info .profile-designation {
  font-family: "Poppins", sans-serif;
  font-weight: 500;
  font-style: normal;
}

.employee-cards .profile-card .profile-info .profile-designation {
  margin: 0.75rem 0;
}

.employee-cards .profile-card .profile-description {
  font-family: "Poppins", sans-serif;
  font-weight: 400;
  font-style: normal;
}

/*? employee profile page */

.employee-profile-card {
  width: 1140px;
  margin: auto;
}

.employee-information-details {
  padding-bottom: 1.5rem;
}

.employee-profile-card .profile-card {
  width: 1140px;
  margin: auto;
  display: grid;
  grid-template-columns: 1fr 4fr;
  margin-bottom: 1.5rem;
}

.employee-profile-card .profile-card img {
  width: 40%;
}

.employee-profile-card .profile-card hr {
  display: none;
}

.employee-profile-card .profile-info .profile-header {
  display: flex;
  justify-content: space-between;
  align-items: center;
  gap: 0;
}

.leave-modal-box {
  display: none;
  background: linear-gradient(220.55deg, #24cfc5 0%, #001c63 100%);
  width: 9rem;
  height: 9rem;
  border-radius: 0.5rem;
  color: #fff;
  padding: 1.75rem;
}

.leave-modal-box p {
  font-family: "Poppins", sans-serif;
  font-size: 0.75rem;
  /* padding-bottom: 0.5rem; */
}

.leave-modal-box p strong em {
  text-decoration: underline double;
}

.leave-modal-box.showbox {
  display: block;
}
.leave-modal-box1.showbox1 {
  display: block;
}

.employee-profile-card .profile-card p {
  margin: 1rem 0;
}

.employee-profile-card .profile-info .profile-header .apply-leave,
.employee-profile-card .profile-info .profile-header .leave-status,
.employee-profile-card .offer-letter-btn {
  background-color: #4c3575;
  color: #fff;
  padding: 0.5rem 1rem;
  border: none;
  outline: none;
  border-radius: 0.25rem;
  font-family: "Poppins", sans-serif;
  font-weight: 500;
  font-style: normal;
  cursor: pointer;
  transition: all 0.5s;
}

.employee-profile-card .offer-letter-btn:hover {
  background-color: transparent;
  color: #4c3575;
  border: 2px solid #4c3575;
}

.employee-profile-card .profile-info .profile-header .apply-leave:hover,
.employee-profile-card .profile-info .profile-header .leave-status:hover {
  background-color: transparent;
  color: #4c3575;
  border: 2px solid #4c3575;
}

.profile-contact-details {
  display: grid;
  grid-template-columns: 1fr 8fr;
  gap: 1rem;
  justify-content: start;
  margin-top: 1rem;
}

.profile-contact-details .contact-info {
  display: flex;
  gap: 1.5rem;
}

.profile-contact-details .contact-info {
  display: flex;
  justify-content: center;
  align-items: center;
  gap: 0.5rem;
}

.profile-description-light {
  font-size: 0.75rem;
  font-family: "Poppins", sans-serif;
  font-weight: 400;
  font-style: normal;
}

.profile-contact-details .contact-info p,
.profile-contact-details .contact-info i {
  font-size: 0.75rem;
}

.employee-information-details {
  display: grid;
  width: 1140px;
  margin: auto;
  grid-template-columns: repeat(2, 1fr);
  gap: 1.5rem;
  margin-top: 1.5rem;
}

.dark .profile-card .profile-card .employee-btn-grp button:hover {
  color: #fff;
}

.employee-information-details .personal-info,
.employee-information-details .banking-info {
  box-shadow: rgba(0, 0, 0, 0.24) 0px 3px 8px;
  padding: 1.5rem;
  width: 80%;
  height: 100%;
  margin: auto;
  font-family: "Poppins", sans-serif;
  font-weight: 300;
  font-style: normal;
  font-size: 1rem;
}

.employee-information-details .personal-info-heading,
.employee-information-details .bank-info-heading {
  display: flex;
  font-family: "Poppins", sans-serif;
  font-weight: 400;
  font-style: normal;
  font-size: 0.75rem;
  justify-content: space-between;
}

.employee-information-details .personal-info-details,
.employee-information-details .bank-info-details {
  margin: 1.25rem 0;
  font-family: "Poppins", sans-serif;
  font-weight: 400;
  font-style: normal;
  font-size: 1rem;
}

.banking-info .bank-info-details-box,
.personal-info-details-box {
  display: flex;
  align-items: center;
  gap: 1.5rem;
  margin: 1rem 0;
  justify-content: space-between;
  margin: auto;
  margin-top: 1.5rem;
  font-family: "Poppins", sans-serif;
  font-weight: 400;
  font-style: normal;
  font-size: 1rem;
}

.personal-info-details-box h3,
.personal-info-details-box p {
  font-family: "Poppins", sans-serif;
  font-weight: 400;
  font-style: normal;
  font-size: 1rem;
}

.bank-info-details-box h3,
.bank-info-details-box p {
  font-family: "Poppins", sans-serif;
  font-weight: 400;
  font-style: normal;
  font-size: 1rem;
}

.banking-info-edit-btn,
.profile-edit-btn {
  background-color: #4c3575;
  color: #fff;
  padding: 0.5rem;
  border: none;
  cursor: pointer;
}

/* This is an example, feel free to delete this code */
.tooltip-container {
  --background: #4c3575;
  position: relative;
  background: var(--background);
  cursor: pointer;
  transition: all 0.2s;
  font-size: 0.75rem;
  padding: 0.5rem;
  /* padding: 0.7em 1.8em; */
  border-radius: 10px;
  color: white;
  box-shadow: 0 0 10px var(--background);
}

.tooltip {
  position: absolute;
  top: 0;
  left: 50%;
  transform: translateX(-70%);
  padding: 0.3em 0.6em;
  opacity: 0;
  pointer-events: none;
  transition: all 0.3s;
  background: var(--background);
  border-radius: 10px;
}

.tooltip::before {
  position: absolute;
  content: "";
  height: 0.6em;
  width: 0.6em;
  bottom: -0.2em;
  left: 50%;
  transform: translate(-70%) rotate(45deg);
  background: var(--background);
}

.tooltip-container:hover .tooltip {
  top: -100%;
  opacity: 1;
  visibility: visible;
  pointer-events: auto;
  animation: 1s animated infinite alternate;
}

@keyframes animated {
  from {
    transform: translate(0) translateY(10px);
  }
  to {
    transform: translate(-100%) translateY(0);
  }
}

/*? leave page*/

.leave-body {
  background: linear-gradient(220.55deg, #ffe6a4 0%, #ad8211 100%);
}

.leave-heading-box {
  width: 1140px;
  margin: 1rem auto;
  display: flex;
  justify-content: space-between;
  align-items: center;
}

.leave-heading-box h1 {
  font-family: "Poppins", sans-serif;
  font-weight: 700;
  font-style: normal;
  font-size: 1.5rem;
}

.add-leave {
  background-color: #4c3575;
  color: #fff;
  padding: 0.5rem 1.25rem;
  border: none;
  outline: none;
  border-radius: 0.25rem;
  font-family: "Poppins", sans-serif;
  font-weight: 500;
  font-style: normal;
  cursor: pointer;
  transition: all 0.5s;
  font-family: "Poppins", sans-serif;
  font-weight: 500;
  font-style: normal;
}

.add-leave:hover {
  background-color: transparent;
  color: #4c3575;
  border: 2px solid #4c3575;
}

.add-leave i {
  margin-right: 0.5rem;
}

.leave-container h2,
.leave-container-admin h2 {
  font-family: "Poppins", sans-serif;
  font-weight: 700;
  font-style: normal;
  font-size: 1rem;
  justify-self: center;
  align-items: center;
  justify-content: center;
  /* margin-top: 2.5rem; */
}

.leave-container,
.leave-details {
  width: 1140px;
  margin: auto;
  display: grid;
  grid-template-columns: repeat(6, 1fr);
  margin-top: 2rem;
  font-size: 0.75rem;
  font-family: "Poppins", sans-serif;
  font-weight: 400;
  font-style: normal;
  /* box-shadow: rgba(0, 0, 0, 0.1) 0px 4px 12px; */
}

.leave-container-admin,
.leave-details-admin {
  width: 1140px;
  margin: auto;
  display: grid;
  grid-template-columns: repeat(5, 1fr);
  margin-top: 2rem;
  font-size: 0.75rem;
  font-family: "Poppins", sans-serif;
  font-weight: 400;
  font-style: normal;
}

.leave-details-box {
  width: 1140px;
  box-shadow: rgba(0, 0, 0, 0.1) 0px 4px 12px;
  padding: 1rem 0;
  margin: 1.5rem auto;
  border: 1px solid #555;
  border-radius: 1rem;
}

.leave-details,
.leave-details-admin {
  text-align: center;
}

.leave-details h3,
.leave-details div,
.leave-details-admin h3,
.leave-details-admin div {
  align-self: end;
  text-align: center;
  font-family: "Poppins", sans-serif;
  font-weight: 500;
  font-style: normal;
}

.leave-details .employee-details,
.leave-details-admin .employee-details {
  display: flex;
  justify-content: center;
  align-items: center;
  gap: 0.75rem;
}

.leave-details-admin .employee-details img,
.leave-details .employee-details img {
  width: 15%;
  border-radius: 100%;
}

.approve-btn-grp i {
  margin: 0 0.5rem;
  color: #fff;
  border-radius: 100%;
  border: none;
  padding: 0.5rem;
  cursor: pointer;
}

.approve-btn-grp button {
  background-color: transparent;
  border: none;
}

.approve-btn-grp i:nth-child(1) {
  background-color: #008000;
}

.approve-btn-grp button:nth-child(2) i[title="Reject Leave"] {
  background-color: #ff0000;
}

/*? holiday page*/

.holiday-body {
  background-color: #777;
  background-image: url(../images/holiday-bg-6.webp);
  background-position: center center;
  background-size: cover;
  background-blend-mode: multiply;
}

.holiday-heading-box {
  width: 1140px;
  margin: 1rem auto;
  display: flex;
  justify-content: space-between;
  align-items: center;
}

.holiday-heading-box h1 {
  font-family: "Poppins", sans-serif;
  font-weight: 700;
  font-style: normal;
  font-size: 1.5rem;
  color: #fff;
}

.add-holiday {
  background-color: #4c3575;
  color: #fff;
  padding: 0.5rem 1.25rem;
  border: none;
  outline: none;
  border-radius: 0.25rem;
  font-family: "Poppins", sans-serif;
  font-weight: 500;
  font-style: normal;
  cursor: pointer;
  transition: all 0.5s;
  font-family: "Poppins", sans-serif;
  font-weight: 500;
  font-style: normal;
}

.add-holiday:hover {
  background-color: #fff;
  color: #4c3575;
  border: 2px solid #4c3575;
}

.add-holiday i {
  margin-right: 0.5rem;
}

.holiday-container-heading,
.holiday-container-details {
  width: 1140px;
  margin: 0rem auto;
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 0rem;
}

.holiday-container-details p {
  margin: 0 auto;
}

.holiday-container-heading h3 {
  text-align: center;
  font-family: "Poppins", sans-serif;
  font-weight: 700;
  font-style: normal;
  font-size: 1rem;
  text-decoration: underline;
  text-underline-offset: 0.5rem;
  text-decoration-thickness: 2px;
}

.holiday-container-details {
  margin-top: 1rem;
}

.hoiday-background {
  background-color: transparent;
  padding: 1rem 0;
}

.holiday-details-box {
  width: 1140px;
  box-shadow: rgba(0, 0, 0, 0.1) 0px 4px 12px;
  padding: 1rem 0;
  margin: 1.5rem auto;
  border: 1px solid #777;
  border-radius: 1rem;
  color: #f1f1f1;
}

.holiday-container-details p {
  text-align: center;
  font-family: "Poppins", sans-serif;
  font-weight: 400;
  font-style: normal;
  font-size: 1rem;
}

.holiday-icons-grp {
  background-color: transparent;
  border: 1px solid #555;
  width: 40%;
  margin: auto;
}

.holiday-container-details i {
  cursor: pointer;
  font-size: 0.7rem;
  margin: 0.75rem auto;
}

.holiday-container-details i:nth-child(2) {
  margin: 0 1.5rem;
  color: #ff0000;
}

.holiday-icons-grp {
  position: relative;
}

.holiday-icons-grp::before {
  content: "";
  position: absolute;
  width: 2px;
  height: 37px;
  background-color: rgb(85, 85, 85, 0.5);
  left: 50px;
  bottom: -1px;
}

.holiday-container-details i:nth-child(1) {
  margin-left: 1.5rem;
  color: #008000;
}

/*? employee dashboard  */

.main-logo {
  width: 17%;
  /* margin-top: 0.2rem; */
}

.dashboard-header {
  width: 100%;
  background: linear-gradient(220.55deg, #5d85a6 0%, #0e2c5e 100%);
  /* height: 120px; */
}

.dashboard-header nav ul li a {
  color: #fff;
}

.dashboard-header-container {
  display: flex;
  justify-content: space-between;
  align-items: center;
  width: 1140px;
  margin: auto;
  color: #fff;
}

.employee-db-header .user-img-box .user-img {
  width: 5%;
  border-radius: 100%;
  border: none;
  float: right;
}

.navbar ul {
  display: flex;
  gap: 1rem;
}

.navbar ul li {
  list-style: none;
}

.navbar ul li a {
  font-family: "Poppins", sans-serif;
  font-weight: 600;
  font-style: normal;
  color: #262626;
  text-decoration: none;
}

.main-menu,.main-menu-2 {
  position: relative;
}

.main-menu .sub-menu{
  display: none;
  position: absolute;
  top: 1.5rem;
  left: 0%;
  background: linear-gradient(220.55deg, #8a88fb 0%, #d079ee 100%);
  flex-direction: column;
  padding: 0.75rem;
  height: auto;
  width: 140px;
  filter: blur(5px);
  animation: showsubmenu 0.5s ease-in;
  /* margin: auto; */
  transform: translate(-50% -50%);
}

.main-menu-2 .sub-menu-2{
  display: none;
  position: absolute;
  top: 1.5rem;
  left: 0%;
  background: linear-gradient(220.55deg, #8a88fb 0%, #d079ee 100%);
  flex-direction: column;
  padding: 0.75rem;
  height: auto;
  width: 140px;
  filter: blur(5px);
  animation: showsubmenu 0.5s ease-in;
  /* margin: auto; */
  transform: translate(-50% -50%);
}

@keyframes showsubmenu {
  0% {
    filter: blur(5px);
    top: -100%;
  }
  50% {
    filter: blur(2px);
    top: 0%;
  }
  100% {
    filter: blur(0px);
    top: 100%;
  }
}

.main-menu .sub-menu li {
  margin: 0.25rem 0;
  background: linear-gradient(220.55deg, #565656 0%, #181818 100%);
  line-height: 1;
  text-align: center;
  padding: 0.5rem;
}

.main-menu-2 .sub-menu-2 li {
  margin: 0.25rem 0;
  background: linear-gradient(220.55deg, #565656 0%, #181818 100%);
  line-height: 1;
  text-align: center;
  padding: 0.5rem;
}

.main-menu .sub-menu li a {
  font-family: "Poppins", sans-serif;
  /*font-size: 0.75rem;*/
  font-weight: 800;
  color: #fff;
  /* display: block; */
}

.main-menu-2 .sub-menu-2 li a {
  font-family: "Poppins", sans-serif;
  /*font-size: 0.75rem;*/
  font-weight: 800;
  color: #fff;
  /* display: block; */
}

.main-menu .sub-menu.show {
  display: block;
  filter: blur(0px);
}

.main-menu-2 .sub-menu-2.show {
  display: block;
  filter: blur(0px);
}

.hamburger {
  display: none;
}

.bar {
  background-color: #fff;
  margin: 5px 0;
  width: 25px;
  height: 3px;
  display: block;
  transition: 1s;
}

.hamburger.active .bar:nth-child(1) {
  transform: translateY(8px) rotate(45deg);
}

.hamburger.active .bar:nth-child(2) {
  opacity: 0;
}

.hamburger.active .bar:nth-child(3) {
  transform: translateY(-8px) rotate(-45deg);
}

.navbar ul.active {
  left: 0;
}

.employee-db-header {
  width: 1140px;
  margin: 1.5rem auto;
}

.employee-db-header h1 {
  font-family: "Poppins", sans-serif;
  font-weight: 700;
  font-style: normal;
  font-size: 1.5rem;
}

.employee-db-header p {
  margin: 1.5rem 0;
  font-family: "Poppins", sans-serif;
  font-weight: 700;
  font-style: normal;
  font-size: 1.15rem;
  text-align: center;
}

.employee-db-header p span {
  margin-left: 0.25rem;
  background: linear-gradient(220.55deg, #8a88fb 0%, #d079ee 100%);
  color: transparent;
  -webkit-text-stroke: 0.5px;
  -webkit-background-clip: text;
  background-clip: text;
  font-size: 1.5rem;
}

/*! below code not working via external css when html file is converted into php file   */

/* .dark .employee-db-header p span {
  font-size: 1.75rem;
  user-select: none;
  color: transparent;
  -webkit-text-stroke: 0.5px;
  background: repeating-linear-gradient(
    -45deg,
    #8a88fb 0%,
    #d079ee 7.14%,
    #dd7bff 14.28%,
    #ffd439 21.4%,
    #00ffff 28.56%,
    #24cfc5 35.7%,
    #ff7a00 42.84%,
    #ff0000 50%
  );
  background-size: 600vw 600vw;
  -webkit-text-fill-color: transparent;
  -webkit-background-clip: text;
  background-clip: text;
  animation: slide 10s ease-in infinite forwards;
} */

.emp-availability {
  width: 1140px;
  margin: 1.5rem auto;
}

.emp-availability h2 {
  font-family: "Poppins", sans-serif;
  font-weight: 600;
  font-style: normal;
  font-size: 1.25rem;
}

.emp-availability-box {
  margin-top: 1.5rem;
  box-shadow: rgba(99, 99, 99, 0.2) 0px 2px 8px 0px;
  padding: 1rem 0.5rem;
  border-radius: 0.25rem;
  background: linear-gradient(220.55deg, #8a88fb 0%, #d079ee 100%);
  color: #fff;
  transition: 0.5s;
}

.emp-availability-box:hover {
  transform: translateY(-0.5rem);
  cursor: pointer;
}

.emp-availability-box h3 {
  font-family: "Poppins", sans-serif;
  font-weight: 500;
  font-style: normal;
  font-size: 1rem;
}

.emp-availability-box p {
  font-family: "Poppins", sans-serif;
  font-weight: 500;
  font-style: normal;
  font-size: 0.75rem;
  margin-top: 0.75rem;
}

.emp-availability-box i {
  font-size: 0.75rem;
  margin-bottom: 0.75rem;
}

.emp-availability-container {
  display: grid;
  width: 1140px;
  margin: 1rem auto;
  grid-template-columns: repeat(8, 1fr);
  text-align: center;
  gap: 1rem;
}

.emp-details-box {
  width: 1140px;
  margin: 2rem auto;
  display: grid;
  grid-template-columns: repeat(2, 1fr);
  gap: 2rem;
}

.emp-details-box img {
  width: 50%;
  height: auto;
  margin-bottom: 0;
}

.emp-details-box .total-emp {
  box-shadow: rgba(60, 64, 67, 0.3) 0px 1px 2px 0px,
    rgba(60, 64, 67, 0.15) 0px 2px 6px 2px;
  padding: 1.5rem;
  background: linear-gradient(220.55deg, #eaeaea 0%, #8b8b8b 100%);
}

.emp-details-box .total-emp-info {
  display: flex;
  align-items: center;
  justify-content: space-between;
}

.emp-details-box .total-emp-info h2,
.emp-details-box .total-emp-info p {
  font-family: "Poppins", sans-serif;
  font-weight: 700;
  font-style: normal;
  font-size: 1rem;
}

.emp-details-box .circular-img-box {
  text-align: center;
  margin-top: 1rem;
}

.emp-ratio {
  margin-top: 1.5rem;
  font-family: "Poppins", sans-serif;
  font-weight: 700;
  font-style: normal;
  font-size: 1rem;
}

.int-application .total-application {
  display: flex;
  justify-content: space-around;
  align-items: center;
  background-color: #4c3575;
  gap: 2rem;
  padding: 0rem 2rem;
  text-align: center;
  background: linear-gradient(220.55deg, #8a88fb 0%, #d079ee 100%);
}

.int-application .total-application h4 {
  font-family: "Poppins", sans-serif;
  font-weight: 500;
  font-style: normal;
  font-size: 1.25rem;
  color: #fff;
  margin: 0.5rem 0 0 0;
}

.int-application .total-application h5 {
  font-family: "Poppins", sans-serif;
  font-weight: 500;
  font-style: normal;
  font-size: 0.75rem;
  color: #fff;
}

.int-application .total-application i {
  font-weight: 500;
  font-style: normal;
  font-size: 0.75rem;
  color: #4c3575;
  background-color: #fff;
  padding: 1rem;
  border: none;
  border-radius: 100%;
  margin-top: 0.5rem;
}

.int-application .total-application-img {
  width: 60%;
  margin: auto;
}

.int-application .total-hired,
.int-application .total-rejected,
.int-application .total-on-hold {
  background: linear-gradient(220.55deg, #565656 0%, #181818 100%);
  box-shadow: rgba(17, 17, 26, 0.1) 0px 4px 16px,
    rgba(17, 17, 26, 0.05) 0px 8px 32px;
  margin: 1.25rem 0;
  padding: 1rem;
  display: flex;
  justify-content: space-between;
  align-items: center;
  color: #fff;
  text-align: center;
  font-family: "Poppins", sans-serif;
  font-weight: 500;
  font-style: normal;
  font-size: 0.75rem;
}

.applications-btn-grp {
  display: flex;
  justify-content: space-between;
  align-items: center;
}

.generate-offer-letter button,
.total-leave-count-btn button,
.total-complaint-count-btn button {
  background: linear-gradient(220.55deg, #8a88fb 0%, #d079ee 100%);
  color: #fff;
  border: none;
  cursor: pointer;
  padding: 0.75rem 1rem;
  font-family: "Poppins", sans-serif;
  font-weight: 600;
  font-style: normal;
  font-size: 0.75rem;
  transition: 0.5s;
}

.total-leave-count-btn button {
  background: linear-gradient(220.55deg, #ff896d 0%, #d02020 100%);
}

.generate-offer-letter button:hover,
.total-complaint-count-btn button:hover {
  background: linear-gradient(220.55deg, #d079ee 0%, #8a88fb 100%);
  transform: translateY(0.5rem);
}

.total-leave-count-btn button:hover {
  transform: translateY(-0.5rem);
}

/*? leave-and-grievance-container */

.leave-and-grievance-container {
  width: 1140px;
  margin: 1.5rem auto;
  display: grid;
  grid-template-columns: repeat(2, 1fr);
  gap: 2rem;
}

.leave-and-grievance-container .leave-count-box,
.leave-and-grievance-container .leave-taken-box {
  display: flex;
  justify-content: space-between;
  align-items: center;
  font-family: "Poppins", sans-serif;
  font-weight: 500;
  font-style: normal;
  font-size: 0.75rem;
  background: linear-gradient(220.55deg, #dd7bff 0%, #ff6c6c 100%);
  padding: 2.15rem 1.5rem;
  height: auto;
}

.leave-count-box h5,
.leave-taken-box h5 {
  font-family: "Poppins", sans-serif;
  font-weight: 700;
  font-style: normal;
  font-size: 0.85rem;
}

.num-of-complaint {
  display: flex;
  justify-content: space-between;
  align-items: center;
  font-family: "Poppins", sans-serif;
  font-weight: 500;
  font-style: normal;
  font-size: 0.75rem;
  background: linear-gradient(220.55deg, #dd7bff 0%, #ff6c6c 100%);
  padding: 2.15rem 1.5rem;
  height: auto;
}

.num-of-complaint h5 {
  font-family: "Poppins", sans-serif;
  font-weight: 700;
  font-style: normal;
  font-size: 0.85rem;
}

/*? leave-application-form  */

.leave-application-form-body {
  display: flex;
  justify-content: center;
  align-items: center;
  height: 100vh;
  background: linear-gradient(220.55deg, #8a88fb 0%, #d079ee 100%);
}

.form {
  display: flex;
  flex-direction: column;
  gap: 1.5rem;
  max-width: 350px;
  background-color: #fff;
  padding: 1.15rem;
  border-radius: 20px;
}

.title {
  font-size: 1.35rem;
  font-family: "Poppins", sans-serif;
  font-weight: 500;
  font-style: normal;
  color: #4169e1;
  font-weight: 600;
  letter-spacing: 2px;
  position: relative;
  display: flex;
  align-items: center;
  padding-left: 2rem;
  text-align: center;
}

.title::before,
.title::after {
  position: absolute;
  content: "";
  height: 1rem;
  width: 1rem;
  border-radius: 50%;
  left: 0px;
  background-color: #4169e1;
}

.title::before {
  width: 1rem;
  height: 1rem;
  background-color: #4169e1;
}

.title::after {
  width: 1rem;
  height: 1rem;
  animation: pulse 1s linear infinite;
}

.message,
.signin {
  color: rgba(88, 87, 87, 0.822);
  font-size: 0.85rem;
  font-family: "Poppins", sans-serif;
  font-weight: 500;
}

.signin {
  text-align: center;
}

.signin a {
  color: #4169e1;
}

.signin a:hover {
  text-decoration: underline #4169e1;
}

.flex {
  display: flex;
  width: 100%;
  gap: 6px;
}

.form label {
  position: relative;
}

.form label .input {
  width: 100%;
  padding: 10px 10px 20px 10px;
  outline: 0;
  border: 1px solid rgba(105, 105, 105, 0.397);
  border-radius: 10px;
}

.form label .input + span {
  position: absolute;
  left: 0.5rem;
  top: 1rem;
  color: #808080;
  font-size: 0.75rem;
  cursor: text;
  transition: 0.3s ease;
  font-size: 0.5rem;
  font-family: "Poppins", sans-serif;
  font-weight: 400;
  font-style: normal;
}

/*? animation-input field  */

.form label .input:placeholder-shown + span {
  top: 15px;
  font-size: 0.9em;
}

.form label .input:focus + span,
.form label .input:valid + span {
  top: 30px;
  font-size: 0.7em;
  font-weight: 600;
}

.form label .input:valid + span {
  color: #008000;
}

.submit {
  border: none;
  outline: none;
  background-color: #4169e1;
  padding: 0.5rem;
  border-radius: 0.5rem;
  color: #fff;
  font-size: 0.85rem;
  font-family: "Poppins", sans-serif;
  font-weight: 400;
  font-style: normal;
  transform: 0.6s ease;
}

.submit:hover {
  background-color: #385ac2;
  cursor: pointer;
}

form textarea {
  width: 100%;
  padding: 10px 10px 20px 10px;
  font-size: 0.75rem;
  font-family: "Poppins", sans-serif;
  font-weight: 400;
  font-style: normal;
  outline: 0;
  border: 1px solid rgba(105, 105, 105, 0.397);
  border-radius: 10px;
}

/*? pulse animation  */

@keyframes pulse {
  from {
    transform: scale(0.9);
    opacity: 1;
  }

  to {
    transform: scale(1.8);
    opacity: 0;
  }
}

/*? Launch Complaint Form */

.complaint-body {
  display: flex;
  justify-content: center;
  align-items: center;
  height: 100vh;
  background: linear-gradient(220.55deg, #ff3f3f 0%, #063cff 100%);
}

.form-container {
  width: 320px;
  border-radius: 0.75rem;
  background-color: rgba(17, 24, 39, 1);
  padding: 3rem;
  color: rgba(243, 244, 246, 1);
}

.complaint-body .title {
  text-align: center;
  font-size: 1.25rem;
  line-height: 2rem;
  font-weight: 700;
}

.form {
  margin-top: 1.5rem;
}

.input-group {
  margin-top: 0.25rem;
  font-size: 0.875rem;
  line-height: 1.25rem;
}

.input-group label {
  display: block;
  color: rgba(156, 163, 175, 1);
  margin-bottom: 4px;
}

.input-group input {
  width: 100%;
  border-radius: 0.375rem;
  border: 1px solid rgba(55, 65, 81, 1);
  outline: 0;
  background-color: #111827;
  padding: 0.75rem 1rem;
  color: rgba(243, 244, 246, 1);
}

.input-group input:focus {
  border-color: rgba(167, 139, 250);
  background-color: #f3f4f6;
}

.forgot {
  display: flex;
  justify-content: flex-end;
  font-size: 0.75rem;
  line-height: 1rem;
  color: #9ca3af;
  margin: 8px 0 14px 0;
}

.complaint-textarea {
  background-color: #111827;
  color: #f3f4f6;
}

.complaint-textarea:focus {
  background-color: #f3f4f6;
}

.forgot a:hover,
.signup a:hover {
  text-decoration: underline #a78bfa;
}

.sign {
  display: block;
  width: 100%;
  background-color: #a78bfa;
  padding: 0.75rem;
  text-align: center;
  color: #111827;
  border: none;
  border-radius: 0.375rem;
  font-weight: 600;
  transition: 0.6s;
}

.sign:hover {
  cursor: pointer;
  background-color: #111827;
  color: #fff;
}

.social-message {
  display: flex;
  align-items: center;
  padding-top: 1rem;
}

.line {
  height: 1px;
  flex: 1 1 0%;
  background-color: rgba(55, 65, 81, 1);
}

/*? offer letter form  */

.emp-details-body {
  /* display: flex;
  justify-content: center;
  align-items: center;
  height: 100vh; */
  background: linear-gradient(220.55deg, #8fff85 0%, #39a0ff 100%);
}

.emp-details-form {
  display: flex;
  /* flex-direction: column; */
  gap: 0.5rem;
  max-width: 350px;
  padding: 2rem;
  border-radius: 1.25rem;
  position: relative;
  background-color: #1a1a1a;
  color: #fff;
  border: 1px solid #333;
}

.emp-details-form .title {
  font-size: 1.25rem;
  font-weight: 600;
  margin-bottom: 1rem;
  letter-spacing: -1px;
  position: relative;
  display: flex;
  align-items: center;
  padding-left: 1.75rem;
  color: #00bfff;
}

.emp-details-form .title::before {
  width: 1.25rem;
  height: 1.25rem;
}

.emp-details-form .title::after {
  width: 1.25rem;
  height: 1.25rem;
  animation: pulse 1s linear infinite;
}

.emp-details-form .title::before,
.emp-details-form .title::after {
  position: absolute;
  content: "";
  height: 1rem;
  width: 1rem;
  border-radius: 50%;
  left: 0;
  background-color: #00bfff;
}

.emp-details-form .message,
.emp-details-form .signin {
  font-size: 1rem;
  color: rgba(255, 255, 255, 0.7);
}

.emp-details-form .signin {
  text-align: center;
}

.emp-details-form .signin a:hover {
  text-decoration: underline #4169e1;
}

.emp-details-form .signin a {
  color: #00bfff;
}

.emp-details-form .flex {
  display: flex;
  justify-content: space-between;
  align-items: center;
  gap: 0.5rem;
}

.emp-details-form label {
  position: relative;
}

.emp-details-form label .input,
.emp-details-form #dept,
.emp-details-form #company {
  background-color: #333;
  color: #fff;
  width: 100%;
  /* padding: 1.25rem 0.5rem 0.5rem 0.75rem; */
  padding: 0.6rem;
  outline: 0;
  border: 1px solid rgba(105, 105, 105, 0.397);
  border-radius: 0.5rem;
  margin: 0.15rem 0;
}

/* .emp-details-form #company option {
  color: #fff;
}

.emp-details-form #company option[type="select"] {
  color: #333;
} */

.emp-details-form .submit {
  border: none;
  outline: none;
  padding: 0.25rem;
  /* padding: 0.75rem; */
  border-radius: 0.75rem;
  color: #fff;
  /* font-size: 1rem; */
  transform: 0.3s ease;
  background-color: #00bfff;
  /* margin-top: 1rem; */
}

.emp-details-form .submit:hover {
  background-color: #00bfff96;
  cursor: pointer;
}

@keyframes pulse {
  from {
    transform: scale(0.9);
    opacity: 1;
  }

  to {
    transform: scale(1.8);
    opacity: 0;
  }
}

/*? complaint page details  */

.complaint-details-body {
  background: linear-gradient(220.55deg, #ffeb3a 0%, #4def8e 100%);
}

.complaint-page-heading {
  font-family: "Poppins", sans-serif;
  font-size: 1.5rem;
  font-weight: 700;
  text-align: center;
  margin-top: 2rem;
}

.complaint-emp-details {
  width: 1140px;
  margin: 2.5rem auto;
  box-shadow: rgba(50, 50, 93, 0.25) 0px 50px 100px -20px,
    rgba(0, 0, 0, 0.3) 0px 30px 60px -30px;
  padding: 1rem;
  padding-bottom: 3rem;
  background-color: #fff;
}

.complaint-emp-name,
.complaint-emp-id,
.complaint-emp-mssg {
  margin: 1.25rem auto;
  display: flex;
  gap: 1.5rem;
}

.complaint-emp-name h2 {
  font-family: "Poppins", sans-serif;
  font-size: 1rem;
  font-weight: 600;
}

.complaint-emp-id h2 {
  font-family: "Poppins", sans-serif;
  font-size: 1rem;
  font-weight: 600;
  margin: 1.25rem 0;
}

.complaint-emp-mssg h2 {
  font-family: "Poppins", sans-serif;
  font-size: 1rem;
  font-weight: 600;
}

/*?  employee-data-table */

.html-excel-body {
  background-color: #ffe6a4;
}

.employee-data-table-heading {
  text-align: center;
  margin: 2rem auto;
  font-family: "Poppins", sans-serif;
  font-weight: 800;
  font-style: normal;
}
/* 
.emp-table-container {
  overflow-x: scroll;
} */

.employee-data-table {
  text-align: center;
  margin: 3rem auto 1.5rem auto;
  border-collapse: collapse;
}

.employee-data-table th,
.employee-data-table td {
  padding: 1rem;
}

.employee-data-table th {
  background-color: rgb(24, 24, 24, 0.7);
  color: #fff;
  font-family: "Poppins", sans-serif;
  font-weight: 600;
  font-style: normal;
}

.employee-data-table td {
  font-family: "Poppins", sans-serif;
  font-weight: 500;
  font-style: normal;
}

.employee-data-table tr:nth-child(even) {
  background-color: rgb(0, 28, 99, 0.5);
  color: #fff;
}

.employee-data-table tr:nth-child(odd) {
  background-color: #f0f0f0;
  color: #262626;
}

.export-excel-btn {
  text-align: center;
}

.export-excel-btn button {
  background-color: #262626;
  color: #fff;
  border: none;
  outline: none;
  padding: 0.75rem 1.25rem;
  transition: 0.5s;
}

.export-excel-btn button:hover {
  cursor: pointer;
  background-color: rgb(38, 38, 38, 0.9);
}

/*? scrll-top */

.scrll-top {
  position: fixed;
  bottom: 20px;
  right: 20px;
  text-decoration: none;
  color: #fff;
  background-color: rgb(38, 38, 38);
  padding: 0.75rem;
  border-radius: 0.5rem;
  cursor: pointer;
}

.dark .scrll-top {
  background-color: #fff;
  color: #262626;
}

.dark .employee-profile-card .profile-card .offer-letter-btn {
  color: #fff;
}

.dark
  .employee-profile-card
  .profile-card
  .profile-info
  .profile-header
  .leave-status {
  color: #fff;
}

.emps-act-img {
  width: 90%;
  border: none;
}

/*? chatbot-box  */

.chatbot-box {
  position: fixed;
  bottom: 20px;
  left: 20px;
  background-color: #008000;
  padding: 0.75rem;
  border-radius: 0.5rem;
  cursor: pointer;
}

.chatbot-box a {
  text-decoration: none;
  color: #fff;
}

/*? code for chatbot page  */

.chatBot {
  border: 3px solid #2f8d46;
  border-radius: 0.5rem;
  margin: 3rem auto;
  overflow: hidden;
  width: 500px;
  /* overflow-y: clip; */
  height: auto;
  background: rgb(255, 255, 255) url();
  background-size: contain;
  box-shadow: 0px 0px 10px rgba(0, 0, 0, 0.1);
  background-repeat: no-repeat;
  background-position: center;
}

.chatbox {
  padding: 15px;
  list-style: none;
  overflow-y: auto;
  height: 400px;
}

.chatbox li {
  margin-bottom: 10px;
}

.chat p {
  padding: 10px;
  border-radius: 10px;
  max-width: 70%;
  word-wrap: break-word;
}

.chatBot h2 {
  text-align: center;
  font-family: "Poppins", sans-serif;
  font-size: 1.5rem;
  margin-top: 1.5rem;
  font-style: normal;
}

.chat-incoming p {
  font-family: "Poppins", sans-serif;
  font-size: 1rem;
  margin-top: 1.5rem;
  font-style: normal;
  background-color: #eaeaea;
}

.chat-outgoing p {
  background-color: #162887;
  align-self: flex-end;
  color: #fff;
}

.chat-input {
  padding: 10px;
  border-top: 1px solid #ccc;
}

.chat-input textarea::placeholder {
  font-family: "Poppins", sans-serif;
  font-size: 1rem;
  margin-top: 1.5rem;
  font-style: normal;
  background-color: #eaeaea;
}

.chat-input textarea {
  width: 100%;
  margin: auto;
  padding: 0.5rem;
  border: 1px solid #ccc;
  border-radius: 7px;
  resize: none;
  outline: none;
  overflow-y: scroll;
  background-color: #dcdcdc85;
  font-size: 1rem;
  color: green;
  font-weight: 600;
  /* margin-top: -10px; */
  /* margin-left: -15px; */
  height: 5rem;
}

#cross {
  float: right;
  position: relative;
  top: -38px;
  left: -15px;
  cursor: pointer;
  color: white;
  font-weight: bolder;
  font-size: 28px;
}

#cross:hover {
  color: red;
  transition: all 0.5s;
}

.chatbox .chat p.error {
  color: #ffffff;
  background-color: #ff3737e8;
}

.chatbot-btn {
  text-align: center;
  width: 30%;
  margin: auto;
}

#sendBTN {
  font-family: "Poppins", sans-serif;
  font-size: 1rem;
  /* margin-top: 1.5rem; */
  font-style: normal;
  margin: 1.5rem auto;
  padding: 0.75rem 1.5rem;
  border: 0;
  outline: none;
  font-size: 1rem;
  font-weight: 500;
  border-radius: 0.5rem;
  background-color: #2f8d46;
  cursor: pointer;
  color: #ffffff;
}

.lastMessage {
  margin-top: 50px;
  font-size: 35px;
  font-weight: 600;
  color: darkgreen;
  margin-left: 550px;
}

/*? user logout btn style  */

.user-logout-btn {
  background-color: #262626;
  color: #fff;
  padding: 0.5rem 1rem;
  float: right;
  cursor: pointer;
  border: none;
  outline: none;
  font-family: "Poppins", sans-serif;
  font-style: normal;
  position: relative;
  top: 4rem;
  left: 4.5rem;
  transition: 0.6s;
}

.user-logout-btn:hover {
  background-color: #181818;
  color: #f0f0f0;
}

/*! below code not working via external css when html file is converted into php file   */
.employee-btn-grp .add-emp:hover a {
  background-color: transparent;
  color: #4c3575 !important;
}

/*? style for attendance form  */

.att-form {
  display: flex;
  flex-direction: column;
  gap: 10px;
  max-width: 350px;
  background-color: #fff;
  padding: 3rem;
  border-radius: 1.5rem;
  position: relative;
  margin: 7rem auto;
  box-shadow: rgb(38, 57, 77) 0px 20px 30px -10px;
}

.att-form .title {
  font-size: 1rem;
  color: #4169e1;
  font-weight: 800;
  letter-spacing: -1px;
  position: relative;
  display: flex;
  align-items: center;
  padding-left: 30px;
  margin-bottom: 1.5rem;
}

.att-form .title::before,
.att-form .title::after {
  position: absolute;
  content: "";
  height: 16px;
  width: 16px;
  border-radius: 50%;
  left: 0px;
  background-color: royalblue;
}

.title::before {
  width: 18px;
  height: 18px;
  background-color: royalblue;
}

.att-form .title::after {
  width: 18px;
  height: 18px;
  animation: pulse 1s linear infinite;
}

.att-form.message,
.att-form .signin {
  color: rgba(88, 87, 87, 0.822);
  font-size: 14px;
}

.att-form .signin {
  text-align: center;
}

.att-form .signin a {
  color: royalblue;
}

.att-form .signin a:hover {
  text-decoration: underline royalblue;
}

.att-form .flex {
  display: flex;
  width: 100%;
  gap: 6px;
}

.att-form form label {
  position: relative;
}

.att-form label .input {
  width: 100%;
  padding: 10px 10px 20px 10px;
  outline: 0;
  border: 1px solid rgba(105, 105, 105, 0.397);
  border-radius: 10px;
  margin: 0.5rem auto;
}

.att-form select {
  width: 100%;
  padding: 10px 10px 20px 10px;
  outline: 0;
  border: 1px solid rgba(105, 105, 105, 0.397);
  border-radius: 10px;
  margin: 0.5rem auto;
}

.att-form label .input + span {
  position: absolute;
  left: 10px;
  top: 15px;
  color: grey;
  font-size: 0.9em;
  cursor: text;
  top: 30px;
  transition: 0.3s ease;
}

.att-form .form label .input:placeholder-shown + span {
  top: 30px;
  text-align: center;
  font-size: 0.9em;
}

.att-form label .input:focus + span,
.att-form label .input:valid + span {
  top: 30px;
  font-size: 0.7em;
  font-weight: 600;
}

.att-form label .input:valid + span {
  color: green;
}

.att-form .submit {
  border: none;
  outline: none;
  background-color: royalblue;
  padding: 10px;
  border-radius: 10px;
  color: #fff;
  font-size: 16px;
  transform: 0.3s ease;
}

.att-form .submit:hover {
  background-color: rgb(56, 90, 194);
}

@keyframes pulse {
  from {
    transform: scale(0.9);
    opacity: 1;
  }

  to {
    transform: scale(1.8);
    opacity: 0;
  }
}
