/*! THIS IS AUTO GENERATED, DO NOT EDIT */
.js-fxm-custom-modal .modal-dialog .modal-content {
  border-radius: 0;
  box-shadow: none;
  border: none;
}
.js-fxm-custom-modal .modal-dialog .modal-content .modal-header {
  border-bottom: none;
  height: 40px;
}
.js-fxm-custom-modal .modal-dialog .modal-content .modal-header .close {
  font-size: 36px;
  opacity: 0.5;
}
@media (min-width: 768px) {
  .js-fxm-custom-modal.modal-large .modal-dialog {
    width: 675px;
  }
  .js-fxm-custom-modal.modal-medium .modal-dialog {
    width: 480px;
  }
  .js-fxm-custom-modal.modal-small .modal-dialog {
    width: 340px;
  }
}
@media (min-width: 992px) {
  .js-fxm-custom-modal.modal-large .modal-dialog {
    width: 810px;
  }
  .js-fxm-custom-modal.modal-medium .modal-dialog {
    width: 540px;
  }
  .js-fxm-custom-modal.modal-small .modal-dialog {
    width: 360px;
  }
}
@media (min-width: 1200px) {
  .js-fxm-custom-modal.modal-large .modal-dialog {
    width: 900px;
  }
  .js-fxm-custom-modal.modal-medium .modal-dialog {
    width: 600px;
  }
  .js-fxm-custom-modal.modal-small .modal-dialog {
    width: 400px;
  }
}

.is-mobile,
.is-tablet,
.is-desktop {
  float: left;
}

@media only screen and (min-width: 992px) {
  .is-desktop {
    display: block;
  }
  .is-mobile,
  .is-tablet {
    display: none;
  }
}
@media only screen and (min-width: 768px) and (max-width: 991px) {
  .is-tablet {
    display: block;
  }
  .is-mobile,
  .is-desktop {
    display: none;
  }
}
@media only screen and (min-width: 0px) and (max-width: 767px) {
  .is-mobile {
    display: block;
  }
  .is-tablet,
  .is-desktop {
    display: none;
  }
}
/* poppins-regular - latin */
@font-face {
  font-display: swap; /* Check https://developer.mozilla.org/en-US/docs/Web/CSS/@font-face/font-display for other options. */
  font-family: "Poppins";
  font-style: normal;
  font-weight: 400;
  src: url("../../assets/fonts/poppins-v21-latin-regular.woff2") format("woff2"), url("../../assets/fonts/poppins-v21-latin-regular.ttf") format("truetype"); /* Chrome 4+, Firefox 3.5+, IE 9+, Safari 3.1+, iOS 4.2+, Android Browser 2.2+ */
}
/* poppins-500 - latin */
@font-face {
  font-display: swap; /* Check https://developer.mozilla.org/en-US/docs/Web/CSS/@font-face/font-display for other options. */
  font-family: "Poppins";
  font-style: normal;
  font-weight: 500;
  src: url("../../assets/fonts/poppins-v15-latin-500.woff2") format("woff2"), url("../../assets/fonts/poppins-v15-latin-500.ttf") format("truetype"); /* Chrome 4+, Firefox 3.5+, IE 9+, Safari 3.1+, iOS 4.2+, Android Browser 2.2+ */
}
/* poppins-700 - latin */
@font-face {
  font-display: swap; /* Check https://developer.mozilla.org/en-US/docs/Web/CSS/@font-face/font-display for other options. */
  font-family: "Poppins";
  font-style: normal;
  font-weight: 700;
  src: url("../../assets/fonts/poppins-v21-latin-700.woff2") format("woff2"), url("../../assets/fonts/poppins-v21-latin-700.ttf") format("truetype"); /* Chrome 4+, Firefox 3.5+, IE 9+, Safari 3.1+, iOS 4.2+, Android Browser 2.2+ */
}
/* poppins-800 - latin */
@font-face {
  font-display: swap; /* Check https://developer.mozilla.org/en-US/docs/Web/CSS/@font-face/font-display for other options. */
  font-family: "Poppins";
  font-style: normal;
  font-weight: 800;
  src: url("../../assets/fonts/poppins-v21-latin-800.woff2") format("woff2"), url("../../assets/fonts/poppins-v21-latin-800.ttf") format("truetype"); /* Chrome 4+, Firefox 3.5+, IE 9+, Safari 3.1+, iOS 4.2+, Android Browser 2.2+ */
}
body {
  background-color: #342071;
  background: linear-gradient(180deg, #342071 8.29%, #130638 118.19%), linear-gradient(0deg, #1B142E 0%, #1B142E 100%), #F5FDFF;
  font-size: 16px;
  font-family: "Poppins";
  min-height: 100vh;
  min-height: 100svh;
}

.content {
  color: #fff;
}

.PageLanding .Content {
  color: white;
}
.PageLanding .Content h1 {
  font-size: 4vw;
  letter-spacing: 1px;
  font-weight: 800;
}

.PageAuth .inputLogin {
  background-color: #edebea;
  border: none;
  border-radius: 16px;
}

.login-box-parent {
  margin: 0 auto;
  padding: 1.5rem;
  max-width: 532px;
  color: #fff;
}

.login-box {
  background-color: rgba(255, 255, 255, 0.3);
  background: linear-gradient(180deg, rgba(255, 255, 255, 0.3) -1.62%, rgba(99, 99, 99, 0.3) 52.92%, rgba(255, 255, 255, 0.3) 109.49%);
  border-radius: 2rem;
  text-align: center;
  width: 100%;
  padding: 2rem;
}
.login-box h1 {
  color: #fff;
  font-size: 32px;
  font-weight: bold;
}
.login-box .btn.btn-purple {
  padding: 0.5rem 2rem;
}

.desktop-header {
  padding: 1rem 1.5rem;
  background-color: #493190;
  color: #fff;
}
.desktop-header .dh__box {
  display: flex;
  align-items: center;
  flex-direction: row;
  color: #fff;
}
.desktop-header .dh__box a {
  color: inherit;
}
.desktop-header .dh__desc {
  padding-right: 10px;
}
.desktop-header .dh__desc h1 {
  font-size: 32px;
  line-height: 1;
  margin-bottom: 6px;
}
.desktop-header .dh__desc p {
  margin-bottom: 0;
}
@media only screen and (max-width: 991.98px) {
  .desktop-header {
    display: block;
  }
  .desktop-header .form-right {
    display: none !important;
  }
  .desktop-header .dh__img {
    display: none;
  }
  .desktop-header .dh__desc h1 {
    font-size: 24px;
  }
}

.basic-header {
  padding: 0.5rem 1rem;
  margin-bottom: 1.5rem;
  background-color: #493190;
  color: #fff;
}
.basic-header .container {
  display: flex;
  justify-content: space-between;
  align-items: center;
}

.bh-title {
  margin-bottom: 0;
  line-height: 1.15;
  font-size: 22px;
}

.bh-action {
  flex-grow: 0;
  flex-shrink: 0;
}
.bh-action .bh-action__avatar {
  display: block;
  width: 40px;
  height: 40px;
  border-radius: 100%;
  background-color: #fefefe;
  border: solid 2px #8e31c4;
}
.bh-action .bh-action__profile {
  padding: 0 16px;
}
.bh-action .bh-action__profile h5 {
  font-size: 18px;
  margin-bottom: 4px;
  line-height: 1.15;
}
.bh-action .bh-action__profile div {
  font-size: 12px;
  line-height: 1;
}
.bh-action .dropdown-toggle {
  display: flex;
  background: none !important;
  line-height: 1.25;
  text-align: left;
  align-items: center;
  border: none !important;
  padding-right: 0;
}
.bh-action .dropdown-toggle::after {
  border-width: 6px;
}

.basic-rdt-parent {
  position: relative;
  min-height: 200px;
}
.basic-rdt-parent > div {
  overflow: visible;
}
.basic-rdt-parent .ssd__loading {
  position: absolute;
  background: rgba(73, 49, 144, 0.75);
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  z-index: 1;
  display: flex;
  align-items: center;
  justify-content: center;
  padding: 1rem;
  font-size: 1.25rem;
  border-radius: 1rem;
}
.basic-rdt-parent .br__no-data {
  padding: 2rem;
  border-radius: 1rem;
  background-color: rgba(211, 157, 255, 0.3);
  display: flex;
  align-items: center;
  justify-content: center;
  width: 100%;
  text-align: center;
  color: #fff;
  min-height: 230px;
}
.basic-rdt-parent .basic-rdt--no-data .rdt_Table > div {
  display: block;
  background: transparent;
}
.basic-rdt-parent .rdt_Table {
  padding-bottom: 0;
  margin-bottom: 2rem;
  min-height: 200px;
}
.basic-rdt-parent .rdt_Table,
.basic-rdt-parent .rdt_TableHeadRow,
.basic-rdt-parent .rdt_TableRow {
  background: transparent;
  color: #fff;
}
.basic-rdt-parent .rdt_TableHeadRow,
.basic-rdt-parent .rdt_TableRow {
  border-bottom-color: rgba(255, 255, 255, 0.3) !important;
}
.basic-rdt-parent .rdt_TableHead,
.basic-rdt-parent .rdt_TableCell {
  font-size: 14px;
}
.basic-rdt-parent .rdt_TableHeadRow {
  font-weight: 700;
}
.basic-rdt-parent .rdt_TableBody .rdt_TableRow:nth-child(odd) {
  background: rgba(255, 255, 255, 0.05);
}
.basic-rdt-parent .rdt_TableBody .rdt_TableRow:hover {
  background: #624aa7;
}

.rdt-paging {
  margin-bottom: 2rem;
}
.rdt-paging .rp__paging-wrap {
  display: flex;
  justify-content: center;
  align-items: center;
  width: 100%;
}
.rdt-paging .rp__btn {
  line-height: 1;
  background: transparent;
  border: none;
  color: #fff;
  padding: 0;
  margin: 0 4px;
}
.rdt-paging .rp__btn[disabled], .rdt-paging .rp__btn:disabled {
  opacity: 0.25 !important;
  color: #fff;
}

.rp__list {
  display: flex;
}

.rp__page {
  border-radius: 4px;
  border: 1px solid rgba(255, 255, 255, 0.6);
  background: rgba(255, 255, 255, 0.1);
  font-size: 14px;
  width: 32px;
  height: 32px;
  display: flex;
  align-items: center;
  justify-content: center;
  line-height: 1;
}
.rp__page:hover {
  background: #8e31c4;
}
.rp__page.rp__page--active {
  border-color: #A33EDF;
  background: #A33EDF;
  color: #fff;
}

.rp__label {
  text-align: center;
  margin-top: 1rem;
  line-height: 1.25;
}

textarea {
  width: 100%;
  height: 100px;
  font-size: 16px;
}

.toast-dismissable {
  display: block;
  position: relative;
  padding-right: 12px;
  padding-left: 6px;
}
.toast-dismissable .td__btn-dismiss {
  padding: 0;
  line-height: 1;
  position: absolute;
  right: -12px;
  top: -8px;
  color: #000;
}
.toast-dismissable .td__btn-dismiss:hover {
  color: #000;
}
.toast-dismissable .td__btn-dismiss svg {
  color: inherit;
}

.page-404 {
  background-color: #342071;
  background: linear-gradient(180deg, #342071 8.29%, #130638 118.19%), linear-gradient(0deg, #1B142E 0%, #1B142E 100%), #F5FDFF;
  position: relative;
  min-height: 100vh;
  color: #fff;
  display: flex;
  align-items: center;
  justify-content: center;
  overflow: hidden;
  position: relative;
}
.page-404::before {
  display: block;
  content: "404";
  font-size: 20rem;
  position: absolute;
  top: 50%;
  left: 50%;
  -webkit-transform: translate(-50%, -50%);
          transform: translate(-50%, -50%);
  opacity: 0.15;
  font-weight: bold;
  z-index: 0;
}
.page-404 > div {
  max-width: 500px;
  margin: auto;
  padding: 1.5rem;
  text-align: center;
  font-size: 18px;
  position: relative;
  z-index: 1;
}
.page-404 > div h1 {
  font-weight: bold;
}
.page-404 > div h1,
.page-404 > div p {
  text-shadow: 0 0 3px #000;
}
.page-404 > div a {
  color: inherit;
}
@media screen and (max-width: 640px) {
  .page-404::before {
    font-size: 12rem;
  }
}

.custom-config .cc__password {
  position: relative;
}
.custom-config .cc__password input {
  padding-right: 50px;
}
.custom-config .cc__field-pwd-toggle {
  background-color: #A33EDF;
  color: #fff;
  font-size: 18px;
  border-radius: 0 6px 6px 0;
  position: absolute;
  right: 0;
  bottom: 0;
  top: 0;
  width: 40px;
  text-align: center;
  display: flex;
  align-items: center;
  justify-content: center;
  line-height: 1;
  cursor: pointer;
}
.custom-config .cc__field-pwd-toggle:hover {
  background-color: #8e31c4;
}

.avatar-wrap .submit-btn-group {
  display: flex;
  flex-direction: row;
  gap: 8px;
  margin-top: 28px;
}
.avatar-wrap .btn.btn-purple.btn-icon {
  min-width: 300px;
  min-height: 30px;
}

.image-preview,
.react-player {
  margin-top: 12px;
  width: 300px;
  height: -webkit-fit-content;
  height: -moz-fit-content;
  height: fit-content;
  border-radius: 16px;
  overflow: hidden;
}

.animation-wrapper {
  display: flex;
  flex-direction: row;
  gap: 16px;
  margin-top: 24px;
}

.spinner {
  -webkit-animation: spin 1s linear infinite;
          animation: spin 1s linear infinite;
}

@-webkit-keyframes spin {
  0% {
    -webkit-transform: rotate(0deg);
            transform: rotate(0deg);
  }
  100% {
    -webkit-transform: rotate(360deg);
            transform: rotate(360deg);
  }
}

@keyframes spin {
  0% {
    -webkit-transform: rotate(0deg);
            transform: rotate(0deg);
  }
  100% {
    -webkit-transform: rotate(360deg);
            transform: rotate(360deg);
  }
}
.btn.generate {
  min-width: 92px;
}

.font-weight-semibold {
  font-weight: 500;
  text-transform: capitalize;
}

.avatar-expression-container,
.avatar-expression-text-container {
  display: flex;
  flex-direction: row;
  flex-wrap: wrap;
  justify-content: start;
  align-content: flex-start;
  margin: auto;
  margin-top: 0.5rem;
  border-radius: 1rem;
  gap: 0.5rem;
}

.avatar-expression-card {
  width: 200px;
  padding: 8px;
  padding-inline: 12px;
  border-style: solid;
  border-width: 1.5px;
  border-color: #d0d0d0;
  border-radius: 6px;
}

.preview-container {
  position: relative;
  width: 100%;
  height: 200px;
}

.avatar-expression-card .react-player,
.avatar-text-expression-card .preview-container {
  border-radius: 6px;
  margin-top: 5px;
  margin-bottom: 14px;
  object-fit: cover;
  overflow: hidden;
}

.avatar-text-expression-card img.preview-card {
  width: 100%;
  height: 100%;
  object-fit: cover;
}

.avatar-expression-card .avatar-expression-unavailable {
  width: 100%;
  height: 200px;
  background-color: lightgray;
  display: flex;
  justify-content: center;
  align-items: center;
  text-align: center;
  font-weight: bold;
  margin-top: 5px;
  margin-bottom: 16px;
}

.avatar-text-expression-card {
  width: 250px;
  padding: 8px;
  padding-inline: 12px;
  border-style: solid;
  border-width: 1.5px;
  border-color: #d0d0d0;
  border-radius: 6px;
}
.avatar-text-expression-card .gender {
  position: absolute;
  bottom: 2px;
  right: 2px;
  background-color: #d0d0d0;
  padding-inline: 12px;
  padding-block: 2px;
  margin: 4px;
  border-radius: 8px;
}
.avatar-text-expression-card .gender.male {
  background-color: lightblue;
}
.avatar-text-expression-card .gender.female {
  background-color: pink;
}
.avatar-text-expression-card .preview-container {
  position: relative;
  width: 100%;
  height: 200px;
}
.avatar-text-expression-card .preview-container .preview-card {
  width: 100%;
  height: 100%;
  object-fit: cover;
  transition: opacity 0.3s ease;
}
.avatar-text-expression-card .preview-container .preview-card.img {
  opacity: 1;
}
.avatar-text-expression-card .preview-container video {
  position: absolute;
  top: 0;
  left: 0;
  opacity: 0;
}
.avatar-text-expression-card .preview-container .add-card-upload-button {
  opacity: 1 !important;
}
.avatar-text-expression-card .preview-container #upload_button {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background-color: rgba(0, 0, 0, 0.6);
  opacity: 0;
  z-index: 10;
  transition: opacity 0.3s ease;
  font-size: small;
}
.avatar-text-expression-card .preview-container:not(.edit_mode):hover .preview-card.img {
  opacity: 0;
}
.avatar-text-expression-card .preview-container:not(.edit_mode):hover video {
  opacity: 1;
}
.avatar-text-expression-card .preview-container.edit_mode:hover #upload_button {
  opacity: 1;
}
.avatar-text-expression-card .button-container {
  display: flex;
  gap: 4px;
  justify-content: space-between;
  margin-top: 8px;
}
.avatar-text-expression-card .button-container .btn.btn-purple {
  width: 100%;
}
.avatar-text-expression-card .button-container .cross-icon {
  rotate: 45deg;
}
.avatar-text-expression-card .prompt-text {
  height: 100px;
  overflow: auto;
}
.avatar-text-expression-card .prompt-text textarea {
  width: 100%;
  height: 100%;
  resize: none;
  background: transparent;
}
.avatar-text-expression-card .overflow_none {
  overflow: hidden;
}
.avatar-text-expression-card select {
  padding: 0;
  border-radius: 6px;
}

.avatar-list .btn.btn-sm {
  min-width: 60px;
}

.form-file--wrapper {
  border: 2px dashed #ccc;
  cursor: pointer;
  border-radius: 1rem;
  text-align: center;
}

.ff__icon {
  width: 160px;
  height: 160px;
  color: #000;
  margin: 1rem auto;
  color: #ccc;
}

.file-preview {
  display: flex;
  gap: 16px;
  margin-top: 16px;
  flex-direction: column;
  align-items: center;
}

.fp__img {
  max-width: 600px;
  max-height: 100%;
  border-radius: 1rem;
  background-color: #d0d0d0;
}

.fp__video {
  max-width: 600px;
  max-height: 100%;
  border-radius: 1rem;
  background-color: #d0d0d0;
}

.avatar_container {
  display: flex;
  flex-direction: row;
  flex-wrap: wrap;
  justify-content: start;
  align-content: flex-start;
  margin: auto;
  margin-top: 0.5rem;
  height: -webkit-fit-content;
  height: -moz-fit-content;
  height: fit-content;
  gap: 1rem;
}
.avatar_container .avatar_card {
  display: flex;
  flex-direction: row;
  gap: 1rem;
  height: 250px;
  width: 500px;
  border: 1px solid #d0d0d0;
  border-radius: 1rem;
  padding: 12px;
}
.avatar_container .avatar_card_content {
  display: flex;
  flex-direction: column;
  width: -webkit-fit-content;
  width: -moz-fit-content;
  width: fit-content;
  min-width: 200px;
  height: 100%;
}
.avatar_container h4 {
  margin-bottom: 0 !important;
}
.avatar_container img {
  height: 100%;
  width: 200px;
  border-radius: 0.8rem;
  object-fit: cover;
}
.avatar_container .avatar_card_actions {
  height: 100%;
  width: 100%;
  display: flex;
  flex-direction: column;
  flex-wrap: wrap;
  justify-content: center;
  align-content: start;
  gap: 0.5rem;
  margin-top: 0.5rem;
}
.avatar_container .avatar_card_actions_bottom {
  width: 100%;
  display: flex;
  flex-direction: row;
  justify-content: space-between;
  gap: 0.5rem;
}
.avatar_container .avatar_card_actions_bottom [data-type=edit] {
  width: 100%;
}
.avatar_container .avatar_card_actions_bottom [data-type=delete] {
  padding-inline: 1rem;
}

.avatar__btn--wrapper {
  display: flex;
  flex-direction: row;
  gap: 1rem;
}

.avatar-guideline {
  display: flex;
  flex-direction: column;
  gap: 1rem;
  margin-top: 0.5rem;
  margin-bottom: 2rem;
  padding: 0 1rem;
}

.ag__header {
  font-size: 1.5rem;
  font-weight: bold;
  margin: 0;
  text-align: center;
  width: 100%;
}

.ag__item {
  display: flex;
  flex-direction: column;
  gap: 0.25rem;
  margin-bottom: 0.5rem;
}

.agi__title {
  font-size: 1.2rem;
  font-weight: bold;
  margin-bottom: 8px;
}

.agi__desc--wrapper {
  display: flex;
  flex-direction: row;
  gap: 0.5rem;
  width: 100%;
}
.agi__desc--wrapper p {
  margin: 0;
  font-size: 1rem;
}
.agi__desc--wrapper .agid__key {
  width: 15%;
}
.agi__desc--wrapper .agid__value {
  width: 85%;
}

.avatar-expression-guideline {
  display: flex;
  flex-direction: column;
  gap: 1.5rem;
  margin: 1rem 0;
  padding: 0 2rem;
}

.aeg__item {
  display: flex;
  flex-direction: row;
  gap: 0.75rem;
  align-items: flex-start;
}

.aegi__key {
  font-weight: bold;
  font-size: 1.2rem;
}

.aegi__value {
  font-size: 1.1rem;
  line-height: 1.5;
}

.aegi__value a {
  color: #007bff;
  text-decoration: underline;
  margin-left: 0.25rem;
}

.aegi__value a:hover {
  color: #0056b3;
}

.cta-download {
  margin-left: 0.5rem;
  padding: 0.25rem 1rem;
  font-size: 1rem;
}

.backdropAEG {
  --bs-modal-zindex: 1060 !important;
  z-index: 1060 !important;
}

.modalAEG {
  --bs-modal-zindex: 1065 !important;
  z-index: 1065 !important;
}

.micro-learning--select {
  display: flex;
  flex-direction: column;
  margin: 1rem 0;
}

.micro-learning--btn {
  display: flex;
  justify-content: flex-end;
}

.mls__topic {
  font-size: 1.2rem;
  font-weight: 500;
  margin-bottom: 1rem;
}

.micro-learning--topic {
  display: flex;
  flex-direction: column;
  gap: 1rem;
}

.mlt__form {
  display: flex;
  flex-direction: column;
}

.mltf__label {
  font-size: 1.1rem;
  font-weight: 500;
  margin-bottom: 0.5rem;
}

.switch {
  position: relative;
  display: inline-block;
  width: 40px;
  height: 20px;
}

.switch input {
  opacity: 0;
  width: 0;
  height: 0;
}

.slider {
  position: absolute;
  cursor: pointer;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  background-color: #ccc;
  transition: 0.4s;
  border-radius: 20px;
}

.slider:before {
  position: absolute;
  content: "";
  height: 16px;
  width: 16px;
  left: 2px;
  bottom: 2px;
  background-color: white;
  transition: 0.4s;
  border-radius: 50%;
}

input:checked + .slider {
  background-color: #A33EDF;
}

input:checked + .slider:before {
  -webkit-transform: translateX(20px);
          transform: translateX(20px);
}

.micro-learning--slide {
  display: flex;
  flex-direction: column;
  gap: 3rem;
}

.mls__header {
  display: flex;
  justify-content: space-between;
  align-items: center;
  width: 100%;
  height: 60px;
  padding: 1rem;
  margin: 0;
}

.mlsh__title {
  font-size: 1.5rem;
  font-weight: 500;
  margin: 0;
}

.mlsh__btn {
  display: flex;
  gap: 0.5rem;
}

.mls__content {
  display: flex;
  flex-direction: row;
  flex-wrap: wrap;
  gap: 1rem;
  width: 100%;
  justify-content: center;
}

.mlsc__card {
  display: flex;
  flex-direction: column;
  width: 280px;
  height: 420px;
  padding: 0.5rem;
  border: 1px solid #A33EDF;
  border-radius: 0.5rem;
  cursor: pointer;
  box-shadow: 0 0 40px rgba(0, 0, 0, 0.2);
  background-color: #fefefe;
}

.mlsc__card-image {
  width: 100%;
  height: 35%;
  object-fit: cover;
  border-radius: 0.5rem;
  margin-bottom: 0.5rem;
}

.mlscc__title {
  font-size: 1.2rem;
  font-weight: 500;
  margin: 0;
  display: flex;
  justify-content: center;
  align-items: center;
  text-align: center;
  color: #000;
  width: 100%;
  border-bottom: 2px solid #A33EDF;
  padding-bottom: 8px;
  margin-bottom: 8px;
  max-height: 20%;
}

.mlscc__content {
  display: flex;
  flex-direction: column;
  font-size: 1rem;
  height: 100%;
  color: #000;
  overflow: hidden;
}

.modal__preview-card {
  position: fixed;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background-color: rgba(0, 0, 0, 0.8);
  display: flex;
  align-items: center;
  justify-content: center;
  z-index: 1000;
  padding: 20px;
  box-sizing: border-box;
}

.mpc__content {
  background-color: purple;
  padding: 20px;
  border-radius: 8px;
  width: 60vw;
  height: 90vh;
  max-width: 720px;
  max-height: 1080px;
  position: relative;
  display: flex;
  flex-direction: column;
  box-sizing: border-box;
  overflow: hidden;
}

.mpcc__close {
  position: absolute;
  top: 16px;
  right: 18px;
  cursor: pointer;
  background-color: #f00;
  border: none;
  font-size: 16px;
  color: white;
  width: 48px;
  height: 32px;
  display: flex;
  align-items: center;
  justify-content: center;
}
.mpcc__close:hover {
  color: #ccc;
  background-color: rgb(200, 0, 0);
}

.mpcc__generate-img {
  position: absolute;
  top: 16px;
  right: 130px;
  cursor: pointer;
  background-color: #A33EDF;
  border: none;
  font-size: 16px;
  color: white;
  width: 48px;
  height: 32px;
  display: flex;
  align-items: center;
  justify-content: center;
}
.mpcc__generate-img:hover {
  background-color: #8e31c4;
  color: #edebea;
}

.mpcc__regenerate {
  position: absolute;
  top: 16px;
  right: 74px;
  cursor: pointer;
  background-color: #A33EDF;
  border: none;
  font-size: 16px;
  color: white;
  width: 48px;
  height: 32px;
  display: flex;
  align-items: center;
  justify-content: center;
}
.mpcc__regenerate:hover {
  background-color: #8e31c4;
  color: #edebea;
}

.mpcc__index {
  position: absolute;
  top: 16px;
  left: 50%;
  -webkit-transform: translateX(-50%);
          transform: translateX(-50%);
  color: white;
  font-size: 16px;
  background-color: rgba(0, 0, 0, 0.5);
  padding: 4px 8px;
  border-radius: 8px;
}

.mpcc__item {
  flex: 1;
  display: flex;
  flex-direction: column;
  width: 100%;
  padding-top: 48px;
  margin-bottom: 60px;
}

.mpcci__img {
  width: 100%;
  padding: 10px;
  font-size: 1rem;
  color: #fff !important;
  border: 1px solid #493190;
  border-radius: 4px !important;
  margin-bottom: 10px;
  box-sizing: border-box;
  background-color: #A33EDF !important;
  gap: 4px;
  display: flex;
  justify-content: center;
  align-items: center;
}
.mpcci__img:hover {
  background-color: #8e31c4 !important;
}

.mpcci__title,
.mpcci__content {
  width: 100%;
  padding: 10px;
  font-size: 1rem;
  color: #000 !important;
  border: 1px solid #493190;
  border-radius: 4px !important;
  margin-bottom: 10px;
  box-sizing: border-box;
  background-color: white !important;
}

.mpcci__content {
  height: calc(100% - 50px);
  resize: none;
}

.mpcc__btn {
  position: absolute;
  bottom: 10px;
  left: 0;
  width: 100%;
  padding: 8px 18px;
  display: flex;
  justify-content: space-between;
  box-sizing: border-box;
}

.modal-regenerate {
  position: fixed;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background: rgba(0, 0, 0, 0.7);
  display: flex;
  justify-content: center;
  padding-top: 20px;
}

.modal-regenerate__content {
  background: purple;
  padding: 20px;
  border-radius: 8px;
  width: 40vw;
  max-width: 90%;
  height: -webkit-fit-content;
  height: -moz-fit-content;
  height: fit-content;
  box-shadow: 0 0 40px rgba(0, 0, 0, 0.2);
}

.mrc__form {
  display: flex;
  flex-direction: column;
  margin: 1.5rem 0;
}

.mrcf__label {
  font-size: 1.1rem;
  font-weight: 500;
  margin-bottom: 0.5rem;
}

.modal-regenerate__btns {
  margin-top: 20px;
  display: flex;
  justify-content: flex-end;
}

.btn {
  margin-left: 10px;
}

.react-select__control {
  background-color: #f5fdff !important;
  border: 1px solid #8e31c4 !important;
  border-radius: 4px !important;
  box-shadow: none !important;
  transition: border-color 0.2s ease, box-shadow 0.2s ease !important;
}
.react-select__control:hover {
  border-color: #a33edf !important;
}
.react-select__control--is-focused {
  border-color: #a33edf !important;
  box-shadow: 0 0 4px #a33edf !important;
}

.react-select__placeholder {
  color: rgba(211, 157, 255, 0.7) !important;
}

.react-select__single-value {
  color: white !important;
}

.react-select__multi-value {
  background-color: #a33edf !important;
  color: white !important;
  border-radius: 4px !important;
}
.react-select__multi-value__label {
  color: white !important;
}
.react-select__multi-value__remove {
  color: white !important;
  background-color: #8e31c4 !important;
  cursor: pointer !important;
  transition: background-color 0.2s ease !important;
}
.react-select__multi-value__remove:hover {
  background-color: #dc3545 !important;
  color: white !important;
}

.react-select__option {
  background-color: #f5fdff !important;
  color: black !important;
  padding: 10px 12px !important;
  transition: background-color 0.2s ease, color 0.2s ease !important;
}
.react-select__option:hover {
  background-color: #a33edf !important;
  color: white !important;
}
.react-select__option--is-focused {
  background-color: #8e31c4 !important;
  color: white !important;
}
.react-select__option--is-selected {
  background-color: #f5fdff !important;
  color: black !important;
}

.react-select__menu {
  background-color: #f5fdff !important;
  border: 1px solid #a33edf !important;
  border-radius: 4px !important;
  box-shadow: 0 4px 8px rgba(0, 0, 0, 0.1) !important;
}

.react-select__menu-list {
  padding: 0 !important;
}

.react-select__dropdown-indicator {
  color: #8e31c4 !important;
  transition: color 0.2s ease !important;
}
.react-select__dropdown-indicator:hover {
  color: #a33edf !important;
}

.react-select__indicator-separator {
  display: none !important;
}

.analyze-result__title {
  position: absolute;
  left: 50%;
  -webkit-transform: translateX(-50%);
          transform: translateX(-50%);
  text-align: center;
  font-weight: bold;
  font-size: 1.5rem;
  color: #a33edf;
}

.analyze-result {
  display: flex;
  flex-direction: row;
  width: 100%;
  gap: 10px;
  height: auto;
  overflow-y: hidden !important;
}

.analyze-page {
  display: flex;
  flex-direction: column;
  width: 70%;
  padding: 4px;
  max-height: 100vh;
  overflow-y: auto;
}

.analyze-page {
  scrollbar-width: thin;
  scrollbar-color: #a33edf #f5f5f5;
  overflow-y: auto;
}

.analyze-page::-webkit-scrollbar {
  width: 8px;
  height: 8px;
}

.analyze-page::-webkit-scrollbar-thumb {
  background: #a33edf;
  border-radius: 10px;
}

.analyze-page::-webkit-scrollbar-thumb:hover {
  background: #7b2fb7;
}

.analyze-page::-webkit-scrollbar-track {
  background: #f5f5f5;
  border-radius: 10px;
}

.analyze-page::-webkit-scrollbar-button {
  display: none;
}

.analyze-page__title {
  text-align: center;
  color: #fff;
  display: flex;
  justify-content: center;
  margin: 0 !important;
}

.analyze-page__title-container {
  display: flex;
  justify-content: space-between;
  align-items: center;
  margin-bottom: 20px;
}

.btn-refresh {
  background-color: #fff;
  color: #a33edf;
  border: 2px solid #a33edf;
  transition: background-color 0.3s, color 0.3s;
}

.btn-refresh:hover {
  background-color: #a33edf;
  color: #fff;
}

.analyze-section {
  background-color: #fff;
  border-radius: 8px;
  padding: 20px;
  margin-bottom: 20px;
}

.analyze-divider {
  border: 0;
  border-top: 2px solid #555;
  margin: 1rem 0;
}

.analyze-section__group {
  margin-bottom: 15px;
}

.analyze-section__label {
  font-weight: bold;
  color: #a33edf;
}

.analyze-section__text {
  margin-top: 5px;
  color: #555;
}

.analyze-section__actions {
  display: flex;
  justify-content: flex-end;
  margin-bottom: 20px;
}

.btn-analyze {
  background-color: #fff;
  color: #a33edf;
  border: 2px solid #a33edf;
  transition: background-color 0.3s, color 0.3s;
}

.btn-analyze:hover {
  background-color: #a33edf;
  color: #fff;
}

.analyze-rubric {
  color: #ddd;
}

.analyze-rubric__header {
  display: flex;
  justify-content: space-between;
  align-items: center;
  margin-bottom: 20px;
}

.analyze-rubric__title {
  margin: 0 !important;
  color: #a33edf;
  text-shadow: 1px 1px 1px #000;
}

.analyze-rubric__table {
  width: 100%;
  border-collapse: collapse;
  margin-top: 20px;
}

.analyze-rubric__table-header th {
  background-color: #a33edf;
  color: #fff;
  padding: 10px;
}

.analyze-rubric__table-cell {
  padding: 10px;
  border: 1px solid #ddd;
}

.analyze-rubric__table-row:nth-child(odd) {
  background-color: #2c185f;
}

.analyze-rubric__table-row:nth-child(even) {
  background-color: #342071;
}

.analyze-rubric__summary {
  margin-top: 20px;
  padding: 10px;
  background-color: #342071;
  border-radius: 8px;
}

.analyze-rubric__actions {
  display: flex;
  justify-content: flex-end;
  margin-top: 20px;
}

.analyze-modal__title {
  color: #a33edf;
  font-weight: bold;
}

.analyze-modal__body {
  padding: 20px;
}

.rubric_evaluation--separator {
  border: 1px solid #ddd;
  margin: 20px 0;
}

.analyze-page__chat {
  display: flex;
  flex-direction: column;
  width: 30%;
  background-color: #f8f8f8;
  border-left: 1px solid #ddd;
  height: 90vh;
  border-radius: 10px;
  font-size: 14px;
}

.chat-messages {
  flex-grow: 1;
  overflow-y: auto;
  padding: 8px;
  background-color: #e5ddd5;
  display: flex;
  flex-direction: column;
  gap: 10px;
  border-radius: 10px 10px 0 0;
  margin-bottom: 10px;
  word-wrap: break-word;
  font-size: 14px;
}

.chat-message strong {
  color: #333;
  font-weight: bold;
}

.chat-message--system {
  color: #555;
}

.chat-messages {
  scrollbar-width: thin;
  scrollbar-color: #34b7f1 #e5ddd5;
  overflow-y: auto;
}

.chat-messages::-webkit-scrollbar {
  width: 6px;
  height: 6px;
}

.chat-messages::-webkit-scrollbar-thumb {
  background: #34b7f1;
  border-radius: 10px;
}

.chat-messages::-webkit-scrollbar-thumb:hover {
  background: #128c7e;
}

.chat-messages::-webkit-scrollbar-track {
  background: #e5ddd5;
  border-radius: 10px;
}

.chat-messages::-webkit-scrollbar-button {
  display: none;
}

.chat-message {
  max-width: 80%;
  word-wrap: break-word;
  padding: 8px;
  border-radius: 8px;
  line-height: 1.5;
}

.chat-message--user {
  align-self: flex-end;
  background-color: #dcf8c6;
  color: #333;
  text-align: left;
}

.chat-message--system {
  align-self: flex-start;
  background-color: #fff;
  color: #555;
  text-align: left;
}

.chat-input {
  display: flex;
  padding: 8px;
  border-top: 1px solid #ddd;
  background-color: #fff;
  border-radius: 0 0 10px 10px;
}

.chat-input__field {
  flex-grow: 1;
  border: 1px solid #ddd;
  border-radius: 8px;
  padding: 10px;
  margin-right: 10px;
  outline: none;
  transition: border-color 0.3s;
  color: #000 !important;
}

.chat-input__field:focus {
  border-color: #34b7f1;
  box-shadow: 0 0 5px rgba(52, 183, 241, 0.5);
}

.chat-input__send {
  background-color: #34b7f1;
  border: none;
  color: #fff;
  padding: 10px 20px;
  border-radius: 8px;
  cursor: pointer;
  transition: background-color 0.3s;
}

.chat-input__send:hover {
  background-color: #128c7e;
}

/* Gaya dasar untuk indikator */
.typing-indicator {
  display: flex;
  gap: 4px;
  justify-content: flex-start; /* Untuk pesan sistem di kiri */
  align-items: center;
  padding: 10px;
  background-color: #fff;
  border-radius: 8px;
  max-width: 60%;
}

.typing-indicator span {
  display: inline-block;
  width: 8px;
  height: 8px;
  background-color: #a3a3a3;
  border-radius: 50%;
  -webkit-animation: typing-bounce 1.5s infinite ease-in-out;
          animation: typing-bounce 1.5s infinite ease-in-out;
}

.typing-indicator span:nth-child(2) {
  -webkit-animation-delay: 0.2s;
          animation-delay: 0.2s;
}

.typing-indicator span:nth-child(3) {
  -webkit-animation-delay: 0.4s;
          animation-delay: 0.4s;
}

/* Animasi bouncing */
@-webkit-keyframes typing-bounce {
  0%, 80%, 100% {
    -webkit-transform: scale(0);
            transform: scale(0);
  }
  40% {
    -webkit-transform: scale(1);
            transform: scale(1);
  }
}
@keyframes typing-bounce {
  0%, 80%, 100% {
    -webkit-transform: scale(0);
            transform: scale(0);
  }
  40% {
    -webkit-transform: scale(1);
            transform: scale(1);
  }
}
.badge-limit {
  display: inline-block;
  padding: 4px 8px;
  border-radius: 8px;
  font-size: 12px;
  margin-right: 6px;
  margin-bottom: 4px;
  min-width: 90px;
  text-align: center;
  color: #1f2937;
  font-weight: 500;
}

.badge-limit.success {
  background-color: #d1fae5;
}

.badge-limit.warning {
  background-color: #fef3c7;
}

.badge-limit.danger {
  background-color: #fee2e2;
}

.badge-limit.neutral {
  background-color: #e5e7eb;
}

.v-desktop-large-inline {
  display: none;
}
.v-desktop-large-inline-inline {
  display: none;
}
@media only screen and (min-width: 1440px) {
  .v-desktop-large-inline {
    display: block !important;
  }
  .v-desktop-large-inline-inline {
    display: inline !important;
  }
}

.v-desktop {
  display: none;
}
.v-desktop-inline {
  display: none;
}
@media only screen and (max-width: 1439px) and (min-width: 1200px) {
  .v-desktop {
    display: block !important;
  }
  .v-desktop-inline {
    display: inline !important;
  }
}

.v-tablet {
  display: none;
}
.v-tablet-inline {
  display: none;
}
@media only screen and (max-width: 1199.98px) and (min-width: 992px) {
  .v-tablet {
    display: block !important;
  }
  .v-tablet-inline {
    display: inline !important;
  }
}

.v-tablet-portrait {
  display: none;
}
.v-tablet-portrait-inline {
  display: none;
}
@media only screen and (max-width: 991.98px) and (min-width: 768px) {
  .v-tablet-portrait {
    display: block !important;
  }
  .v-tablet-portrait-inline {
    display: inline !important;
  }
}

.v-mobile {
  display: none;
}
.v-mobile-inline {
  display: none;
}
@media only screen and (max-width: 767.98px) and (min-width: 480px) {
  .v-mobile {
    display: block !important;
  }
  .v-mobile-inline {
    display: inline !important;
  }
}

.v-mobile-portrait {
  display: none;
}
.v-mobile-portrait-inline {
  display: none;
}
@media only screen and (max-width: 479.98px) and (min-width: 320px) {
  .v-mobile-portrait {
    display: block !important;
  }
  .v-mobile-portrait-inline {
    display: inline !important;
  }
}

.viewport-state {
  position: fixed;
  top: 15px;
  right: 0;
  -webkit-transform: translateX(78%);
          transform: translateX(78%);
  background: #000;
  color: #fff;
  padding: 7px 7px 7px 25px;
  font-size: 12px;
  opacity: 0.25;
  z-index: 1002;
  box-shadow: 0 0 3px #ff0;
  transition: all linear 0.15s;
}
.viewport-state:hover, .viewport-state.viewport-state--active {
  -webkit-transform: translateX(0);
          transform: translateX(0);
  opacity: 1;
}
.viewport-state input[type=checkbox] {
  position: absolute;
  cursor: pointer;
  top: 50%;
  -webkit-transform: translateY(-50%);
          transform: translateY(-50%);
  left: 7px;
  width: auto;
}

.background {
  background: url("../../assets/images/bg_pattern.png") center center/cover, linear-gradient(180deg, #50C2D8 0%, #06A4C1 100%);
  height: 100vh;
}

.background-2 {
  background: url("../../assets/images/bg_pattern.png") center center/cover, url("../../assets/images/bg_login.png") center center/contain no-repeat, linear-gradient(180deg, #342071 8.29%, #130638 118.19%), #1B142E;
  height: 100vh;
}

.btn-1 {
  color: #13C8CB;
  font-weight: 700;
  border-radius: 16px;
  padding: 10px 30px 10px 30px;
  font-size: 1.2vw;
}

.btn-2 {
  color: white;
  font-weight: 700;
  border-radius: 16px;
  padding: 8px 30px 8px 30px;
  font-size: 1vw;
}

.text-left {
  text-align: left;
}

.btn-bd-ocean {
  --bs-btn-font-weight: 600;
  --bs-btn-color: var(--bs-white);
  --bs-btn-bg: #0da7c4;
  --bs-btn-hover-bg: #0b6f83;
  --bs-btn-hover-color: var(--bs-white);
  --bs-btn-active-color: var(--bs-btn-hover-color);
}

.btn-icon svg,
.btn-icon .btn-icon__icon-left,
.btn-icon .btn-icon__icon-right {
  font-size: 24px;
  position: relative;
  top: -2px;
}
.btn-icon .btn-icon__icon-right {
  margin-left: 0.5rem;
}
.btn-icon .btn-icon__icon-left {
  margin-right: 0.5rem;
}

.custom-modal .modal-content {
  border-radius: 20px; /* Set the desired border radius */
}

.btn.btn-purple {
  background-color: #A33EDF;
  border-color: transparent;
  padding: 6px 12px;
  color: #fff;
  transition: all linear 0.35s;
}
.btn.btn-purple.btn-purple--glow {
  -webkit-filter: drop-shadow(1px 2px 20px rgba(195, 138, 243, 0.3)) drop-shadow(1px 2px 10px rgba(195, 138, 243, 0.2));
          filter: drop-shadow(1px 2px 20px rgba(195, 138, 243, 0.3)) drop-shadow(1px 2px 10px rgba(195, 138, 243, 0.2));
}
.btn.btn-purple:focus, .btn.btn-purple:hover {
  background-color: #8e31c4;
  color: #fff;
  outline: none;
  border-color: transparent;
}
.btn.btn-purple:focus.btn-purple--glow, .btn.btn-purple:hover.btn-purple--glow {
  -webkit-filter: drop-shadow(1px 2px 20px rgba(180, 95, 250, 0.5)) drop-shadow(1px 2px 10px rgba(195, 138, 243, 0.5));
          filter: drop-shadow(1px 2px 20px rgba(180, 95, 250, 0.5)) drop-shadow(1px 2px 10px rgba(195, 138, 243, 0.5));
}
.btn.btn-purple:active {
  background-color: #A33EDF;
  color: #fff;
  outline: none;
  border-color: transparent;
}
.btn.btn-purple:active.btn-purple--glow {
  -webkit-filter: drop-shadow(1px 2px 20px rgba(195, 138, 243, 0.3)) drop-shadow(1px 2px 10px rgba(195, 138, 243, 0.2));
          filter: drop-shadow(1px 2px 20px rgba(195, 138, 243, 0.3)) drop-shadow(1px 2px 10px rgba(195, 138, 243, 0.2));
}

.btn-export {
  --bs-btn-font-weight: 600;
  --bs-btn-color: #cdbdfd;
  --bs-btn-bg: transparent;
  --bs-btn-border-color: #7a49ff;
  --bs-btn-hover-color: #fff;
  --bs-btn-hover-bg: rgba(122, 73, 255, 0.15);
  --bs-btn-hover-border-color: #9b7bff;
  --bs-btn-active-bg: rgba(122, 73, 255, 0.25);
  --bs-btn-active-border-color: #9b7bff;
  --bs-btn-border-radius: 12px;
  --bs-btn-padding-x: 14px;
  --bs-btn-padding-y: 6px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 6px;
  transition: all 0.25s ease;
}
.btn-export svg {
  font-size: 18px;
  margin-top: -2px;
}

.btn-export.is-loading {
  pointer-events: none;
  opacity: 0.6;
}

.owl-carousel .owl-item {
  -webkit-backface-visibility: visible;
}
.owl-carousel .owl-item img {
  -webkit-transform-style: flat;
          transform-style: flat;
}

.form-generic {
  margin: 0 auto;
}
.form-generic form {
  padding: 1rem 0;
}

.fg__field {
  display: flex;
  flex-direction: column;
  border-radius: 10px;
  padding: 10px;
}
.fg__field label:first-child {
  display: block;
  line-height: 1.25;
  margin-bottom: 10px;
}
.fg__field .inputs,
.fg__field select,
.fg__field textarea {
  color: black;
  padding: 0 4px;
  border: none;
  background: inherit;
}
.fg__field select {
  padding-left: 0;
  padding-right: 0;
}
.fg__field .inputs:disabled {
  cursor: not-allowed;
  background-color: #eee;
}
.fg__field .text-editor {
  min-height: 150px;
  border: 1px solid #000;
  border-radius: 4px;
}
.fg__field .checkbox {
  display: block;
  position: relative;
  font-size: 16px;
  padding-left: 25px;
  max-width: -webkit-fit-content;
  max-width: -moz-fit-content;
  max-width: fit-content;
  cursor: pointer;
  -webkit-user-select: none;
  -ms-user-select: none;
  user-select: none;
}
.fg__field .checkbox input {
  position: absolute;
  opacity: 0;
  cursor: pointer;
  height: 0;
  width: 0;
}
.fg__field .checkbox input:focus ~ .checkmark {
  box-shadow: 0 0 5px #2196f3;
}
.fg__field .checkbox input:checked ~ .checkmark {
  background-color: #2196f3;
}
.fg__field .checkbox input:checked ~ .checkmark::after {
  display: block;
}
.fg__field .checkbox .checkmark {
  position: absolute;
  top: 3px;
  left: 0;
  height: 18px;
  width: 18px;
  background-color: #eee;
  border-radius: 2px;
}
.fg__field .checkbox .checkmark:after {
  content: "";
  position: absolute;
  display: none;
  left: 7px;
  top: 3px;
  width: 5px;
  height: 10px;
  border: solid white;
  border-width: 0 2px 2px 0;
  -webkit-transform: rotate(45deg);
  transform: rotate(45deg);
}
.fg__field .radio {
  display: block;
  position: relative;
  padding-left: 25px;
  font-size: 16px;
  max-width: -webkit-fit-content;
  max-width: -moz-fit-content;
  max-width: fit-content;
  cursor: pointer;
  -webkit-user-select: none;
  -ms-user-select: none;
  user-select: none;
}
.fg__field .radio input {
  position: absolute;
  opacity: 0;
  cursor: pointer;
}
.fg__field .radio input:focus ~ .checkmark {
  box-shadow: 0 0 5px #2196f3;
}
.fg__field .radio input:checked ~ .checkmark {
  background-color: #2196f3;
}
.fg__field .radio input:checked ~ .checkmark::after {
  display: block;
}
.fg__field .radio .checkmark {
  position: absolute;
  top: 3px;
  left: 0;
  height: 18px;
  width: 18px;
  background-color: #eee;
  border-radius: 50%;
}
.fg__field .radio .checkmark::after {
  content: "";
  position: absolute;
  display: none;
  top: 6px;
  left: 6px;
  width: 6px;
  height: 6px;
  border-radius: 50%;
  background: white;
}
.fg__field .date-picker {
  min-width: 230px !important;
}

/**
 * It's recommended to put this after label element under `.fg__field` e.g.
 * <div class="fg__field">
 *   <label>Stuff...</label>
 *   <div class="fg__field-desc">Desc here...</div>
 *   <!-- form element here... -->
 * </div>
 */
.fg__field-desc {
  font-size: 14px;
  font-style: italic;
  margin-bottom: 10px;
  line-height: 1.25;
}
.fg__field-desc pre {
  margin-bottom: 0;
}

.fg__info-label {
  font-weight: bold;
  line-height: 1.25;
  margin-bottom: 0.25rem;
}

.fg__info-value {
  line-height: 1.25;
}

.fg__react-select .fg__react-select__control {
  border: none;
  background: none;
  min-height: 0;
  cursor: pointer;
}
.fg__react-select .fg__react-select__control--is-focused,
.fg__react-select .fg__react-select__control--menu-is-open {
  box-shadow: none;
}
.fg__react-select .fg__react-select__value-container {
  padding: 0;
}
.fg__react-select .fg__react-select__indicator-separator {
  visibility: hidden;
}
.fg__react-select .fg__react-select__input-container {
  line-height: 1.25;
  margin: 0;
  padding: 0;
}
.fg__react-select .fg__react-select__indicator {
  padding-bottom: 0;
  padding-top: 0;
}
.fg__react-select .fg__react-select__menu {
  z-index: 1000;
}
.fg__react-select .fg__react-select__option {
  cursor: pointer;
}
.fg__react-select .fg__react-select__option--is-disabled {
  opacity: 0.75 !important;
  background-color: #eee !important;
}
.fg__react-select .fg__react-select__multi-value {
  color: #fff;
  border-radius: 4px;
  overflow: hidden;
}
.fg__react-select .fg__react-select__multi-value__label {
  color: inherit;
  padding-right: 6px;
}

.fg__react-select--normal,
.fg__field--normal,
.fg__control--normal {
  padding: 0;
  border: none;
}

.fg__control--normal input,
.fg__control--normal textarea {
  border-radius: 10px;
  padding: 10px;
}

.fg__react-select--normal .fg__react-select__control {
  border-radius: 10px;
  padding: 10px;
}
.fg__react-select--normal .fg__react-select__value-container--is-multi.fg__react-select__value-container {
  margin: -2px;
}

.fg__field .date-range {
  margin: 0;
}
.fg__field .date-range .dr__container {
  display: block;
}
.fg__field .date-range .dr__title,
.fg__field .date-range .dr__to {
  font-size: inherit;
}
@media only screen and (max-width: 767.98px) {
  .fg__field .date-range .dr__input {
    margin-right: 0;
    width: 100%;
  }
}

/* Class name untuk menonaktifkan panah pada input number */
.arrow-none::-webkit-outer-spin-button,
.arrow-none::-webkit-inner-spin-button {
  -webkit-appearance: none;
  margin: 0;
}

.arrow-none {
  -moz-appearance: textfield;
}

.content-generic {
  margin: 0 auto;
  width: 100%;
}
.content-generic.content-generic--fluid {
  max-width: 100%;
}
.content-generic.content-generic--large {
  max-width: 1200px;
}
.content-generic.content-generic--medium {
  max-width: 800px;
}
.content-generic.content-generic--small {
  max-width: 500px;
}
.content-generic.content-generic--vh-center {
  height: 100%;
  align-items: center;
  justify-content: center;
  display: flex;
  flex-direction: column;
  min-height: calc(100vh - 110px);
}
.content-generic h1, .content-generic h2, .content-generic h3, .content-generic h4, .content-generic h5, .content-generic h6 {
  margin-bottom: 1rem;
}
.content-generic h1 + p, .content-generic h2 + p, .content-generic h3 + p, .content-generic h4 + p, .content-generic h5 + p, .content-generic h6 + p {
  margin-top: -0.5rem;
}

.cg__actions {
  display: flex;
  width: 100%;
  align-items: flex-start;
  justify-content: space-between;
  margin-bottom: 1rem;
}
.cg__actions + .cg__actions {
  margin-top: -0.5rem;
}
.cg__actions > a, .cg__actions > button,
.cg__actions .cg__action-buttons a,
.cg__actions .cg__action-buttons button {
  margin: 0 6px 6px 0;
}

.cg__action-forms {
  display: flex;
  gap: 6px;
}

.cg__action-advance-search {
  display: flex;
}

.cg__action-dropdown {
  position: relative;
}
.cg__action-dropdown select {
  min-width: 100px;
  padding: 8px;
  padding-top: 8px;
  padding-bottom: 8px;
  border: 1px solid #ccc;
  font-size: 14px;
}

.cg__action-search {
  position: relative;
  display: flex;
  align-items: center;
  color: #fff;
}
.cg__action-search span {
  color: inherit;
  position: absolute;
  right: 10px;
}
.cg__action-search input {
  outline: none;
  color: inherit;
  background: transparent;
  width: 100%;
  padding-right: 30px;
  padding-left: 10px;
  padding-top: 8px;
  padding-bottom: 8px;
  border: 1px solid #ccc;
  font-size: 14px;
}
.cg__action-search .input--tranparent {
  border: none;
  color: white;
}
.cg__action-search .input--tranparent::-webkit-input-placeholder {
  color: white;
  opacity: 1;
}
.cg__action-search .input--tranparent:-ms-input-placeholder {
  color: white;
  opacity: 1;
}
.cg__action-search .input--tranparent::placeholder {
  color: white;
  opacity: 1;
}
.cg__action-search .input--tranparent:-ms-input-placeholder { /* Internet Explorer 10-11 */
  color: white;
}
.cg__action-search .input--tranparent::-ms-input-placeholder { /* Microsoft Edge */
  color: white;
}

.cg__space-between {
  width: 100%;
}
@media only screen and (min-width: 768px) {
  .cg__space-between.cg__space-between--md {
    display: flex;
    justify-content: space-between;
  }
}
@media only screen and (min-width: 320px) {
  .cg__space-between.cg__space-between--sm {
    display: flex;
    justify-content: space-between;
  }
}

@media only screen and (max-width: 767.98px) {
  .cg__actions {
    display: block;
  }
  .cg__actions .cg__action-buttons {
    width: 100%;
    margin-bottom: 0.5rem;
  }
}
.portal-template {
  background-color: #342071;
  background: linear-gradient(180deg, #342071 8.29%, #130638 118.19%), linear-gradient(0deg, #1B142E 0%, #1B142E 100%), #F5FDFF;
  position: relative;
  min-height: 100vh;
  padding-left: 50px;
}
.portal-template:after {
  clear: both;
  content: "";
}
.portal-template.pt--expanded {
  padding-left: 280px;
}
.portal-template.pt--expanded .pt__sidebar {
  width: 280px;
}
.portal-template.pt--expanded .pt__sidebar::after {
  width: 280px;
}

.portal-template {
  color: #fff;
}
.portal-template a {
  color: inherit;
}
.portal-template .btn {
  box-shadow: none;
}
.portal-template input,
.portal-template select,
.portal-template button,
.portal-template .btn {
  border-radius: 6px;
}
.portal-template .form-label,
.portal-template .form-check-label {
  color: #fff;
  font-weight: 500;
}
.portal-template input,
.portal-template select,
.portal-template textarea {
  background: transparent;
  border-color: #A33EDF;
  color: #fff;
  outline-color: transparent;
  box-shadow: none !important;
}
.portal-template input::-webkit-input-placeholder,
.portal-template select::-webkit-input-placeholder,
.portal-template textarea::-webkit-input-placeholder {
  color: rgba(255, 255, 255, 0.25);
}
.portal-template input:-moz-placeholder,
.portal-template select:-moz-placeholder,
.portal-template textarea:-moz-placeholder {
  /* Firefox 18- */
  color: rgba(255, 255, 255, 0.25);
}
.portal-template input::-moz-placeholder,
.portal-template select::-moz-placeholder,
.portal-template textarea::-moz-placeholder {
  /* Firefox 19+ */
  color: rgba(255, 255, 255, 0.25);
}
.portal-template input:-ms-input-placeholder,
.portal-template select:-ms-input-placeholder,
.portal-template textarea:-ms-input-placeholder {
  color: rgba(255, 255, 255, 0.25);
}
.portal-template input:active, .portal-template input:focus, .portal-template input:hover,
.portal-template select:active,
.portal-template select:focus,
.portal-template select:hover,
.portal-template textarea:active,
.portal-template textarea:focus,
.portal-template textarea:hover {
  background: transparent;
  color: #fff;
  border-color: #8e31c4;
}
.portal-template input[disabled], .portal-template input:disabled,
.portal-template input .disabled,
.portal-template select[disabled],
.portal-template select:disabled,
.portal-template select .disabled,
.portal-template textarea[disabled],
.portal-template textarea:disabled,
.portal-template textarea .disabled {
  background: transparent !important;
  color: rgba(255, 255, 255, 0.35) !important;
  cursor: default !important;
  opacity: 0.5 !important;
  -webkit-user-select: none !important;
      -ms-user-select: none !important;
          user-select: none !important;
}
.portal-template input option,
.portal-template select option,
.portal-template textarea option {
  color: #000;
}
.portal-template input option[disabled], .portal-template input option:disabled,
.portal-template select option[disabled],
.portal-template select option:disabled,
.portal-template textarea option[disabled],
.portal-template textarea option:disabled {
  color: #ccc;
}
.portal-template select {
  position: relative;
  background-color: transparent;
  background-image: url("../images/dropdown-arrow.png");
  background-size: 36px 6px;
  background-repeat: no-repeat;
  background-position: right center;
  padding-right: 36px;
  padding-bottom: 7px;
  padding-top: 7px;
}
.portal-template select:active, .portal-template select:focus, .portal-template select:hover {
  background-color: transparent !important;
  background-image: url("../images/dropdown-arrow.png") !important;
  background-size: 36px 6px !important;
  background-repeat: no-repeat !important;
  background-position: right center !important;
}
.portal-template select[disabled], .portal-template select:disabled,
.portal-template select .disabled {
  background-color: transparent !important;
  background-image: url("../images/dropdown-arrow.png") !important;
  background-size: 36px 6px !important;
  background-repeat: no-repeat !important;
  background-position: right center !important;
  opacity: 0.5 !important;
  -webkit-user-select: none !important;
      -ms-user-select: none !important;
          user-select: none !important;
}
.portal-template .select__control {
  border-color: #A33EDF;
  outline-color: none;
  box-shadow: none;
  font-size: 14px;
}
.portal-template .select__control:active, .portal-template .select__control:focus, .portal-template .select__control:hover {
  outline-color: none;
  border-color: #8e31c4;
}
.portal-template .select__menu {
  font-size: 14px;
  color: #000;
}
.portal-template .select__menu .select__option {
  padding-bottom: 6px !important;
  padding-top: 6px !important;
  line-height: 1.25;
}
.portal-template .select__menu .select__option:hover {
  background-color: #A33EDF !important;
  color: #fff !important;
}
.portal-template .select__menu .select__option.select__option--is-selected, .portal-template .select__menu .select__option.select__option--is-focused {
  background-color: rgba(211, 157, 255, 0.3);
  color: #333;
}

.pt__sidebar {
  position: fixed;
  left: 0;
  bottom: 0;
  top: 0;
  width: 50px;
  overflow-y: auto;
  overflow-x: hidden;
}
.pt__sidebar:after {
  display: block;
  background: linear-gradient(180deg, rgba(211, 157, 255, 0.3) 0%, rgba(159, 86, 219, 0.3) 100%), linear-gradient(0deg, #A33EDF 0%, #A33EDF 100%), #50C2D8;
  background-color: #A33EDF;
  content: "";
  top: 0;
  bottom: 0;
  position: fixed;
  width: 50px;
  left: 0;
  z-index: -1;
  box-shadow: 0px 2px 15px rgba(0, 0, 0, 0.1);
}

.pt__item {
  display: flex !important;
  align-items: center !important;
  padding: 15px 0 15px 0;
  text-decoration: none;
  font-weight: 500;
  color: #fff;
  padding-left: 32px !important;
  margin-right: 1rem;
  border-top-right-radius: 1rem;
  border-bottom-right-radius: 1rem;
}
.pt__item:hover, .pt__item.pt__item--active {
  transition: all ease 0.35s;
}
.pt__item:hover {
  opacity: 0.65;
  color: #fff;
}
.pt__item.pt__item--active {
  background: #fff !important;
  color: #A33EDF !important;
  opacity: 1 !important;
}
.pt__item svg {
  font-size: 24px;
}

.pt_item-logout:hover {
  cursor: pointer;
  color: white;
  opacity: 0.8;
}

.pt__sidebar--collapsed .pt__sidebar-top {
  width: 50px !important;
}
.pt__sidebar--collapsed .pt__sidebar-top .toggle-btn {
  color: #fff;
  margin-top: 45px;
  height: 50px;
}
.pt__sidebar--collapsed .pt__sidebar-top .toggle-btn > * {
  color: #fff;
}
.pt__sidebar--collapsed .pt__logo {
  display: block;
  padding: 10px;
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
}
.pt__sidebar--collapsed .pt__logo img:first-child {
  display: none;
}
.pt__sidebar--collapsed .pt__logo img:last-child {
  display: block;
  height: auto !important;
}
.pt__sidebar--collapsed .pt__sidebar-menu {
  padding-top: 0;
}

.pt__sidebar-overlay {
  display: none;
}

.pt__sidebar-top {
  position: fixed;
  z-index: 9;
  display: flex;
  width: 280px;
  top: 0;
}
.pt__sidebar-top .toggle-btn {
  width: 50px;
  margin-left: auto;
  border: none;
  height: 100%;
  background: transparent;
}
.pt__sidebar-top .toggle-btn > * {
  font-size: 25px;
}
.pt__sidebar-top .close-btn {
  display: none;
}

.pt__logo {
  display: flex;
  align-items: center;
  justify-content: center;
  padding: 0 1rem;
}
.pt__logo a {
  display: block;
}
.pt__logo img {
  max-width: 100%;
  width: 100%;
  margin: 0 auto;
  align-self: center;
}
.pt__logo img:last-child {
  display: none;
}

.pt__sidebar-menu {
  display: flex;
  flex-direction: column;
  width: 100%;
  padding-top: 1rem;
  justify-content: space-between;
  min-height: calc(100vh - 70px);
  min-height: calc(100svh - 70px);
}
.pt__sidebar-menu .menu-sep {
  height: 2px;
  padding: 0;
  background-color: #eee;
}
.pt__sidebar-menu .menu-sep.menu-sep--top {
  margin-top: 0;
}
.pt__sidebar-menu .menu-sep.menu-sep--bottom {
  margin-bottom: 0;
}
.pt__sidebar-menu .menu-link {
  display: flex;
  align-items: center;
  padding: 8px 1rem;
  width: 100%;
  text-decoration: none;
  position: relative;
}
.pt__sidebar-menu .menu-link svg {
  font-size: 28px;
  flex: 0 0 24px;
}
.pt__sidebar-menu .menu-link .menu-link__name {
  margin-left: 10px;
  line-height: 1.25;
  white-space: nowrap;
  text-overflow: ellipsis;
  overflow: hidden;
  vertical-align: middle;
}
.pt__sidebar-menu .menu-link .menu-link__name--collapsed {
  display: none;
}

.pt__sidebar-btn-back {
  padding: 1rem 1rem 0;
}
.pt__sidebar-btn-back .btn {
  width: 100%;
  display: block;
}

.menu-link.menu-link--notif {
  position: relative;
}
.menu-link.menu-link--notif.menu-link--has-notif::before {
  display: block;
  content: "";
  position: absolute;
  left: 32px;
  top: 12px;
  width: 8px;
  height: 8px;
  border-radius: 8px;
  z-index: 1;
}
.menu-link.menu-link--notif .notif-counter {
  display: inline-block;
  margin-left: 5px;
  color: #fff;
  height: 20px;
  width: 20px;
  border-radius: 20px;
  text-align: center;
  line-height: 20px;
  font-size: 75%;
}

.portal-nav-bottom .menu-link.menu-link--notif {
  position: relative;
}
.portal-nav-bottom .menu-link.menu-link--notif.menu-link--has-notif::before {
  display: block;
  content: "";
  position: absolute;
  left: calc(50% + 8px);
  -webkit-transform: translateX(-50%);
          transform: translateX(-50%);
  top: 0;
  width: 8px;
  height: 8px;
  border-radius: 8px;
  z-index: 1;
}
.portal-nav-bottom .menu-link.menu-link--notif .notif-counter {
  display: inline-block;
  margin-left: 5px;
  color: #fff;
  height: 16px;
  width: 16px;
  border-radius: 16px;
  text-align: center;
  line-height: 16px;
  font-size: 100%;
}

.dh__label {
  display: none;
}

.pt__content {
  padding: 1.5rem;
  min-height: calc(100vh - 170px);
}

.portal-nav-bottom {
  display: none;
}

.portal-nav-bottom--hide {
  display: none !important;
}

@media only screen and (min-width: 1440px) {
  .portal-template.pt--expanded .pt__sidebar {
    margin-left: -280px;
  }
  .pt__sidebar {
    left: auto;
    margin-left: -50px;
  }
  .pt__sidebar::after {
    left: auto;
  }
}
@media only screen and (max-width: 991.98px) {
  .portal-template {
    padding-left: 0 !important;
  }
  .portal-template .dh__label {
    display: block;
  }
  .portal-template.pt--is-home .mobile-header {
    padding-bottom: 0;
  }
  .portal-template.pt--is-home .user-hero {
    display: block;
  }
  .portal-template.pt--is-not-home .desktop-header {
    display: none !important;
  }
  .portal-template.pt--bottom-nav {
    padding-bottom: 72px;
  }
  .portal-template .mobile-header {
    padding-bottom: 2.5rem;
  }
  .pt__sidebar {
    z-index: 999;
    width: 250px !important;
    left: -250px;
    opacity: 0;
    transition: 0.25s linear;
  }
  .pt__sidebar::after {
    width: 250px !important;
    left: -250px;
    transition: 0.25s linear;
    transition-delay: 0s;
    opacity: 0;
  }
  .pt__sidebar .pt__logo {
    right: auto;
    position: relative;
  }
  .pt__content {
    padding: 0.5rem 1.5rem;
  }
  .pt--mobile-show .pt__sidebar {
    opacity: 1;
    left: 0;
    transition: 0.25s linear;
    transition-delay: 0.15s;
  }
  .pt--mobile-show .pt__sidebar::after {
    left: 0;
    transition-delay: 0s;
    opacity: 1;
  }
  .pt__sidebar-top,
  .pt__sidebar {
    background-color: #fff;
  }
  .pt__sidebar-top {
    width: 250px !important;
    align-items: center;
    justify-content: center;
  }
  .pt__sidebar-top .toggle-btn {
    display: none !important;
  }
  .pt__sidebar-top .close-btn {
    display: block;
    margin-left: auto;
    z-index: 1;
    cursor: pointer;
    background: none;
    border: none;
    padding: 0 14px;
    font-size: 24px;
  }
  .pt__logo img {
    max-width: 150px;
    height: auto;
    width: auto;
  }
  .pt__logo img:first-child {
    display: block !important;
  }
  .pt__logo img:last-child {
    display: none !important;
  }
  .pt__sidebar-menu .menu-link .menu-link__name--collapsed {
    display: inline-block !important;
  }
  .pt__sidebar-overlay {
    cursor: pointer;
    display: block;
    position: fixed;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    z-index: 998;
  }
  .pt__sidebar-overlay .so__content {
    position: fixed;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    background-color: rgba(0, 0, 0, 0.25);
  }
  .pt__content {
    border-top-left-radius: 20px;
    border-top-right-radius: 20px;
  }
  .portal-nav-bottom {
    display: flex;
    height: 72px;
    position: fixed;
    bottom: 0;
    left: 0;
    right: 0;
    z-index: 997;
    width: 100%;
    justify-content: space-evenly;
    background-color: #fff;
    box-shadow: 0px -2px 8px #ddd;
    align-items: center;
  }
  .portal-nav-bottom .menu-link {
    text-align: center;
    flex-grow: 0;
    flex: 1;
    overflow: hidden;
    color: #9A9A9A;
    text-decoration: none;
  }
  .portal-nav-bottom .menu-link svg {
    font-size: 24px;
  }
  .portal-nav-bottom .menu-link .menu-link__name {
    display: block;
    line-height: 1.25;
    padding: 4px;
    white-space: nowrap;
    text-overflow: ellipsis;
    overflow: hidden;
    font-size: 10px;
  }
}