@import url("https://fonts.googleapis.com/css2?family=Montserrat:ital,wght@0,100..900;1,100..900&display=swap");
@import url("https://fonts.googleapis.com/css2?family=Poppins:ital,wght@0,100;0,200;0,300;0,400;0,500;0,600;0,700;0,800;0,900;1,100;1,200;1,300;1,400;1,500;1,600;1,700;1,800;1,900&display=swap");
@import url("https://fonts.googleapis.com/css2?family=DM+Sans:ital,opsz,wght@0,9..40,100..1000;1,9..40,100..1000&display=swap");

/* variable start */
:root {
  --clr-white: #ffffff;
  --clr-black: #000000;
  --clr-background: #f8f8f8;
  --clr-0: #170f49;
  --clr-1: #1cbbcd;
  --clr-2: #d9d9d9;
  --clr-3: #00808e;
  --clr-4: #135961;
  --clr-5: #36a7dd;
  --clr-6: #d1e7f2;
  --clr-7: #1d93a2;
  --clr-8: #eff0f6;
  --clr-9: #6f6c90;
  --clr-10: #faf8f8;
  --clr-11: #959595;
  --clr-12: #656565;
}

body {
  /* font-family: "Segoe UI", sans-serif; */
  font-family: "Montserrat", sans-serif;
}

input,
select,
select2,
textarea {
  box-shadow: none !important;
}

/* Poppin fonts */
.poppins-thin {
  font-family: "Poppins", serif;
  font-weight: 100;
  font-style: normal;
}

.poppins-extralight {
  font-family: "Poppins", serif;
  font-weight: 200;
  font-style: normal;
}

.poppins-light {
  font-family: "Poppins", serif;
  font-weight: 300;
  font-style: normal;
}

.poppins-regular {
  font-family: "Poppins", serif;
  font-weight: 400;
  font-style: normal;
}

.poppins-medium {
  font-family: "Poppins", serif;
  font-weight: 500;
  font-style: normal;
}

.poppins-semibold {
  font-family: "Poppins", serif;
  font-weight: 600;
  font-style: normal;
}

.poppins-bold {
  font-family: "Poppins", serif;
  font-weight: 700;
  font-style: normal;
}

.poppins-extrabold {
  font-family: "Poppins", serif;
  font-weight: 800;
  font-style: normal;
}

.poppins-black {
  font-family: "Poppins", serif;
  font-weight: 900;
  font-style: normal;
}

/* Calender design over right */
.fc-toolbar-title {
  font-size: 24px;
  font-weight: 600;
  color: #343a40;
}

.fc-button {
  background-color: #007bff !important;
  border: none !important;
  color: #fff !important;
  padding: 6px 12px !important;
  border-radius: 6px !important;
  transition: background-color 0.2s ease-in-out;
}

.fc-button:hover {
  background-color: #0056b3 !important;
}

.fc-daygrid-event {
  padding: 4px 6px;
  border-radius: 6px;
  font-size: 13px;
  font-weight: 500;
  color: white;
  border: none;
}

.fc-event:hover {
  opacity: 0.85;
  cursor: pointer;
  transform: scale(1.02);
  transition: all 0.2s ease;
}

.fc-button-group {
  gap: 10px;
}

.fc-button {
  background: #00808e !important;
  display: inline-flex !important;
  align-items: center;
  justify-content: center;
}

.fc-col-header-cell-cushion {
  color: #00808e !important;
  text-decoration: none;
}

.fc-toolbar-title {
  color: #00808e !important;
}

.fc-daygrid-day-number {
  color: #00808e !important;
  text-decoration: none;
}

.dash-calendar {
  max-width: 100%;
  margin: 20px auto;
  padding: 20px;
  background: #ffffff;
  /* border-radius: 12px; */
  /* box-shadow: 0 0 15px rgba(0, 0, 0, 0.1); */
}

.loader-container {
  display: flex;
  justify-content: center;
  align-items: center;
  height: 100vh;
  width: 100vw;
  position: fixed;
  top: 0;
  left: 0;
  background-color: rgba(0, 0, 0, 0.5);
  z-index: 1999;
  display: none;
}

.loader {
  width: 50px;
  aspect-ratio: 1;
  display: grid;
}
.loader::before,
.loader::after {
  content: "";
  grid-area: 1/1;
  --c: no-repeat radial-gradient(farthest-side, #25b09b 92%, #0000);
  background: var(--c) 50% 0, var(--c) 50% 100%, var(--c) 100% 50%,
    var(--c) 0 50%;
  background-size: 12px 12px;
  animation: l12 1s infinite;
}

.loader::before {
  margin: 4px;
  filter: hue-rotate(45deg);
  background-size: 8px 8px;
  animation-timing-function: linear;
}

@keyframes l12 {
  100% {
    transform: rotate(0.5turn);
  }
}

.sidebar-logo-box {
  display: flex;
  align-items: center;
  justify-content: flex-start;
}

.sidebar-logo-box img {
  height: 80px;
}

header {
  width: 100%;
  height: 80px;
  background-color: var(--clr-white);
  padding: 5px 20px;
  display: flex;
  align-items: center;
}

header .fw-bolder {
  font-weight: 500 !important;
}

header .login-logo {
  height: 70px;
  margin-right: 10px;
}

.login-wrapper {
  height: calc(100vh - 130px);
}

.login-wrapper .login-head {
  font-family: "Montserrat", serif;
  font-optical-sizing: auto;
  font-weight: 700;
  font-style: normal;
  color: #1cbbcd;
  font-size: 50px;
}

.login-wrapper .login-para {
  font-family: "Montserrat", serif;
  font-optical-sizing: auto;
  font-weight: 500;
  font-style: normal;
  color: #1cbbcd;
  font-size: 16px;
  margin-bottom: 30px;
}

.login-wrapper .form .form-label {
  color: #212529 !important;
}

.login-wrapper .form input::placeholder {
  color: var(--clr-2);
  font-size: 10px;
}

.login-wrapper .form input {
  color: #212529 !important;
}

footer {
  width: 100%;
  height: 50px;
  background-color: var(--clr-white);
  padding: 5px 20px;
  display: flex;
  justify-content: center;
  align-items: center;
}

footer p {
  font-size: 14px;
  margin-bottom: 0px;
  text-align: center;
}

.nav-link {
  text-decoration: none;
  color: #111111;
}

.sidebar {
  width: 300px;
  display: flex;
  flex-direction: column;
  background-color: #f7f6fe;
  position: sticky;
  top: 0px;
  transition: all 0.5s;
}

.sidebar-group {
  overflow-y: scroll;
  scrollbar-width: thin;
}

.sidebar .nav-link.active {
  background-color: var(--clr-6);
  font-weight: 500;
  border-radius: 8px;
}

.sidebar .nav-link:hover {
  background-color: #f0f0f0;
  border-radius: 8px;
}

.phone-header {
  display: none;
}

.close-menu {
  display: none;
}

.form-wrapper {
  /* max-width: 700px; */
  /* margin: auto; */
  width: 100%;
}

input,
textarea,
select {
  background-color: #f8f8f6 !important;
  border: none !important;
  color: #111111 !important;
}

input::placeholder,
textarea::placeholder {
  color: #b5b5b5 !important;
}

.primary-btn {
  background-color: var(--clr-3);
  color: white;
  font-weight: 600;
  border-radius: 10px;
}

.primary-btn:hover {
  background-color: var(--clr-3);
  color: white;
  font-weight: 600;
}

.list-link {
  color: var(--clr-3);
  font-weight: 600;
  text-decoration: none;
  margin: 0px 5px;
}

.secondary-btn {
  background-color: #f0edff;
  color: var(--clr-3);
  font-weight: 600;
  border-radius: 10px;
}

.secondary-btn:hover {
  background-color: #f0edff;
  color: var(--clr-3);
  font-weight: 600;
}

.nav-tabs .nav-link.active {
  font-weight: 500;
  border: none;
  border-bottom: 2px solid #000 !important;
  transition: all 0.5s;
}

.nav-tabs .nav-link:hover {
  color: #111111;
  font-weight: 500;
}

.main {
  background-color: var(--clr-background);
}

.main-container {
  width: calc(100% - 300px);
  height: 100vh;
}

.content-wrapper {
  height: calc(100vh - 130px);
  overflow-y: auto;
}

.upcoming-task-row {
  width: 100%;
  display: flex;
  gap: 15px;
  overflow-x: auto;
}

.upcoming-task-row .card {
  background-color: #f6f4ff;
  border: none;
  box-shadow: none;
}

.upcoming-task-row .card .icon-wrap {
  width: 35px;
  height: 35px;
  display: flex;
  align-items: center;
  justify-content: center;
  background: var(--clr-6);
  border-radius: 50%;
  color: var(--clr-3);
  margin-bottom: 15px;
}

.task-table .fisrt-col {
  display: flex;
  align-items: center;
  gap: 10px;
}

.task-table .fisrt-col img {
  width: 25px;
  height: 25px;
  border-radius: 50%;
}

.errorClass {
  font-size: 12px;
  color: #e60b0b;
  margin-bottom: 10px;
}

.search-form {
  padding: 10px 20px;
  border-radius: 8px;
  box-shadow: 0px 2px 8px 0px #00000040;
  display: flex;
  align-items: center;
  background-color: white;
  gap: 10px;
}

.search-form label {
  font-weight: 400;
  font-size: 12px;
  color: var(--clr-11);
}

.search-form input,
.search-form select,
.search-form textarea {
  height: 30px;
  border-radius: 8px;
  border: 1.5px solid #eeeeee;
  color: var(--clr-12);
  font-size: 12px;
  font-weight: 500;
}

.search-form .btn {
  width: 80px;
  height: 30px;
  border: none;
  border-radius: 10px;
  color: var(--clr-white);
  font-size: 14px;
  font-weight: 600;
  letter-spacing: 2%;
  box-shadow: 0px 2px 8px 0px #00000042;
  display: flex;
  justify-content: center;
  align-items: center;
}

.menu-box .nav-link .nav-link i {
  width: 16px;
  height: 16px;
  display: inline-flex;
  justify-content: center;
  align-items: center;
}

.menu-box .nav-link span {
  font-size: 14px;
}

.fc-daygrid-event-dot {
  display: none;
}

.reschedule-list {
  font-size: 12px;
}

.collapse {
  visibility: visible;
}

/* ################################################################################################################ */
/* ############################################ MIS REPORT DESIGN START  ########################################## */
/* ################################################################################################################ */

.mis-report-section {
}

.mis-report-section .card {
  border: none;
  /* box-shadow: 0px 2px 8px 0px #00000040; */
}

.mis-report-section .card {
  color: var(--clr-white) !important;
}

.mis-report-section .card.primary {
  background: linear-gradient(to right, #363c47, #4285f3);
}

.mis-report-section .card.success {
  background: linear-gradient(to right, #0b574c, #37ec7c);
}

.mis-report-section .card.danger {
  background: linear-gradient(to right, #4e3030, #f91414);
}

.mis-report-section .card.warning {
  background: linear-gradient(to right, #ac630a, #fdb652);
}

.mis-report-section .po-search-form {
  padding: 10px;
  border-radius: 8px;
  box-shadow: 0px 2px 8px 0px #00000040;
}

.mis-report-section .po-search-form label {
  font-weight: 400;
  font-size: 12px;
  color: var(--clr-11);
}

.mis-report-section .po-search-form input,
.mis-report-section .po-search-form select,
.mis-report-section .po-search-form textarea {
  height: 30px;
  border-radius: 8px;
  border: 1.5px solid #eeeeee !important;
  color: var(--clr-12) !important;
  font-size: 12px;
  font-weight: 500;
  padding: 0px 10px;
}

.mis-report-section .po-search-form .task-select {
  background-color: var(--clr-5);
  color: var(--clr-white);
  border: none;
}

.mis-report-section .po-search-form .submit-button {
  width: 80px;
  height: 30px;
  border: none;
  border-radius: 10px;
  background-color: var(--clr-5);
  color: var(--clr-white);
  font-size: 14px;
  font-weight: 600;
  letter-spacing: 2%;
  box-shadow: 0px 2px 8px 0px #00000042;
}

.mis-report-section .po-search-form .reset-button {
  width: 80px;
  height: 30px;
  border: none;
  border-radius: 10px;
  background-color: var(--clr-5);
  color: var(--clr-white);
  font-size: 14px;
  font-weight: 600;
  letter-spacing: 2%;
  box-shadow: 0px 2px 8px 0px #00000042;
}

.mis-report-section .card-header h5 {
  font-weight: 700 !important;
  color: var(--clr-3) !important;
}

.mis-report-section .card-header h6 {
  font-weight: 700 !important;
  color: var(--clr-3) !important;
}

.mis-report-section .card-header button i {
  font-weight: 700 !important;
  color: var(--clr-3) !important;
}

.mis-report-section .table thead th {
  border: 1px solid #e5e5e5;
  font-weight: 700 !important;
  font-size: 0.65rem !important;
  color: #737373 !important;
}

.mis-report-section .table tbody td {
  /* padding: .75rem 1.5rem; */
  border: 1px solid #e5e5e5;
  font-weight: 500 !important;
  font-size: 0.65rem !important;
  color: #737373 !important;
}

.mis-report-section .card .card-header {
  padding: 1rem;
  /* background-color: #fff; */
  border: none;
}

.mis-report-section .progress {
  height: 12.8px;
  font-size: 0.5rem;
  display: block;
  margin-bottom: 5px;
}

.fc-event-time {
  display: none !important;
}

/* ################################################################################################################ */
/* ############################################ MIS REPORT DESIGN END  ############################################ */
/* ################################################################################################################ */

.per_page_select_box {
  background: white;
  padding: 7px;
  height: 38px;
  display: flex;
  align-items: center;
  gap: 10px;
  border-radius: 5px;
}

.per_page_select_box label {
  background: white;
  font-weight: 500;
  font-size: 14px;
}

.per_page_select_box select {
  background: #eeeeee !important;
  padding: 5px;
  border-radius: 5px;
  font-weight: 500;
  font-size: 14px;
}
