/* HackersEye - Base Styles ________________________ shared.css */
:root {
  --default-spacing: 1rem;
  --default-font-size: 12px;
  --border-radius: 16px;
  --blue: #15376b;
  --blue-half: #15376b50;
  --green: #31baa8;
  --red: #ef5a5a;
  --yellow: #feae3f;
  --blue-trans: #25376680;
  --green-trans: #00aba180;
  --red-trans: #dd575880;
  --yellow-80: rgba(242, 178, 35, 0.8);
  --soft-accent: #f4f9fe;
  --hard-accent: #a7b7ce;
  --alt-accent: #bdd2db;
  --blue-80: rgba(37, 55, 102, 0.8);
  --green-80: rgba(0, 171, 161, 0.8);
  --red-80: rgba(221, 87, 88, 0.8);
  --yellow-50: rgba(242, 178, 35, 0.5);
  --soft-accent-80: rgba(244, 249, 254, 0.8);
  --hard-accent-80: rgba(167, 183, 206, 0.8);
  --alt-accent-80: rgba(189, 210, 219, 0.8);
  --blue-50: rgba(37, 55, 102, 0.5);
  --green-50: rgba(0, 171, 161, 0.5);
  --red-50: rgba(221, 87, 88, 0.5);
  --soft-accent-50: rgba(244, 249, 254, 0.5);
  --hard-accent-50: rgba(167, 183, 206, 0.5);
  --alt-accent-50: rgba(189, 210, 219, 0.5);
  --devider-color: #a8c8d9;
  --devider-color-darker: #95bbd0;
  --blue-30: rgba(37, 55, 102, 0.3);
  --green-30: rgba(0, 171, 161, 0.3);
  --red-30: rgba(221, 87, 88, 0.3);
  --yellow-30: rgba(242, 178, 35, 0.3);
  --soft-accent-30: rgba(244, 249, 254, 0.3);
  --hard-accent-30: rgba(167, 183, 206, 0.3);
  --alt-accent-30: rgba(189, 210, 219, 0.3);
  --blue-10: rgba(37, 55, 102, 0.1);
  --green-10: rgba(0, 171, 161, 0.1);
  --red-10: rgba(221, 87, 88, 0.1);
  --yellow-10: rgba(242, 178, 35, 0.1);
  --soft-accent-10: rgba(244, 249, 254, 0.1);
  --hard-accent-10: rgba(167, 183, 206, 0.1);
  --alt-accent-10: rgba(189, 210, 219, 0.1);
  --white: #fff;
  --black: #000;
  --foreground: #fff;
  --background: #000;
  --transparent: transparent;
  --scrollbar-width: 4px;
  --scrollbar-height: 4px;
  --scrollbar-radius: 20px;
  --scrollbar-border: 2px solid transparent;
  --scrollbar-color: #dde4f0;
  --scrollbar-hover-color: rgb(130 130 130 / 50%);
  --gradiant-background: linear-gradient(
    0deg,
    rgb(23 63 113 / 100%) 30%,
    #43bdd1 120%
  );
  --gradiant-background-90: linear-gradient(
    -90deg,
    rgb(23 63 113 / 100%) 25%,
    rgb(73 202 213 / 100%) 130%
  );
  --gradiant-background-090: linear-gradient(
    90deg,
    rgb(23 63 113 / 100%) 25%,
    rgb(73 202 213 / 100%) 130%
  );
  --gradiant-background-090-edited: linear-gradient(
    90deg,
    rgb(23 63 113 / 100%) 45%,
    rgb(73 202 213 / 100%) 130%
  );
  --gradiant-background-test: linear-gradient(
    90deg,
    rgb(23 63 113 / 100%) 25%,
    rgb(73 202 213 / 100%) 130%
  );
  --default-border-radius: 8px;
  --content-space: 10px;
  --container-color: #f3f8fd;
  --container-small-color: #eff8fd;
  --grad-dark-blue: #15376b;
  --soft: #f4f9fe;
  --grad-light-blue: #47c6d2;
  --grad-back-top: #bcd1da;
  --grad-back-bottom: #dae6eb;
  --green-half: #31baa830;
  --yellow-half: #feae3f50;
  --gray: #95b7cc;
  --gray-half: #95b7cc50;
  --lightgray: #a7b8ce;
  --purple-pale: #7181d0;
  --purple-pale-half: #7181d050;
  --red-half: #ef5a5a50;
  --red-hard: #c00;
  --color-gray: #d0e7f9;
  --box-shadow-standard: 0 0 12px rgb(1 41 112 / 14%);
  --box-shadow-bottom: 0px 20px 18px -23px rgb(0 0 0 / 33%);
  --gradiant-background-horizontal: linear-gradient(
    90deg,
    rgb(23 63 113 / 100%) 30%,
    rgb(73 202 213 / 100%) 100%
  );
  --gradiant-background-090-normal: linear-gradient(
    90deg,
    rgb(23 63 113 / 100%) 0%,
    rgb(73 202 213 / 100%) 150%
  );
  --animation-duration: 0.2s;
  --horizontal-box-shadow: 0px 15px 12px -18px rgb(0 0 0 / 20%);
}

/* Define fonts */
@font-face {
  font-family: Montserrat;
  font-style: normal;
  font-weight: 900;
  src: url('/assets/fonts/montserrat/Montserrat-Black.ttf');
}

@font-face {
  font-family: Montserrat;
  font-style: italic;
  font-weight: 900;
  src: url('/assets/fonts/montserrat/Montserrat-BlackItalic.ttf');
}

@font-face {
  font-family: Montserrat;
  font-style: normal;
  font-weight: bold;
  src: url('/assets/fonts/montserrat/Montserrat-Bold.ttf');
}

@font-face {
  font-family: Montserrat;
  font-style: italic;
  font-weight: bold;
  src: url('/assets/fonts/montserrat/Montserrat-BoldItalic.ttf');
}

@font-face {
  font-family: Montserrat;
  font-style: normal;
  font-weight: 800;
  src: url('/assets/fonts/montserrat/Montserrat-ExtraBold.ttf');
}

@font-face {
  font-family: Montserrat;
  font-style: italic;
  font-weight: 800;
  src: url('/assets/fonts/montserrat/Montserrat-ExtraBoldItalic.ttf');
}

@font-face {
  font-family: Montserrat;
  font-style: normal;
  font-weight: 200;
  src: url('/assets/fonts/montserrat/Montserrat-ExtraLight.ttf');
}

@font-face {
  font-family: Montserrat;
  font-style: italic;
  font-weight: 200;
  src: url('/assets/fonts/montserrat/Montserrat-ExtraLightItalic.ttf');
}

@font-face {
  font-family: Montserrat;
  font-style: italic;
  font-weight: normal;
  src: url('/assets/fonts/montserrat/Montserrat-Italic.ttf');
}

@font-face {
  font-family: Montserrat;
  font-style: normal;
  font-weight: 300;
  src: url('/assets/fonts/montserrat/Montserrat-Light.ttf');
}

@font-face {
  font-family: Montserrat;
  font-style: italic;
  font-weight: 300;
  src: url('/assets/fonts/montserrat/Montserrat-LightItalic.ttf');
}

@font-face {
  font-family: Montserrat;
  font-style: normal;
  font-weight: 500;
  src: url('/assets/fonts/montserrat/Montserrat-Medium.ttf');
}

@font-face {
  font-family: Montserrat;
  font-style: italic;
  font-weight: 500;
  src: url('/assets/fonts/montserrat/Montserrat-MediumItalic.ttf');
}

@font-face {
  font-family: Montserrat;
  font-style: normal;
  font-weight: normal;
  src: url('/assets/fonts/montserrat/Montserrat-Regular.ttf');
}

@font-face {
  font-family: Montserrat;
  font-style: normal;
  font-weight: 600;
  src: url('/assets/fonts/montserrat/Montserrat-SemiBold.ttf');
}

@font-face {
  font-family: Montserrat;
  font-style: italic;
  font-weight: 600;
  src: url('/assets/fonts/montserrat/Montserrat-SemiBoldItalic.ttf');
}

@font-face {
  font-family: Montserrat;
  font-style: normal;
  font-weight: 100;
  src: url('/assets/fonts/montserrat/Montserrat-Thin.ttf');
}

@font-face {
  font-family: Montserrat;
  font-style: italic;
  font-weight: 100;
  src: url('/assets/fonts/montserrat/Montserrat-ThinItalic.ttf');
}

@font-face {
  font-family: 'Linik Sans';
  font-style: normal;
  font-weight: 100;
  src: url('../../../fonts/linik-sans/LinikSans-Thin.woff') format('woff');
}
@font-face {
  font-family: 'Linik Sans';
  font-style: italic;
  font-weight: 100;
  src: url('../../../fonts/linik-sans/LinikSans-ThinItalic.woff') format('woff');
}

@font-face {
  font-family: 'Linik Sans';
  font-style: normal;
  font-weight: 200;
  src: url('../../../fonts/linik-sans/LinikSans-ExtraLight.woff') format('woff');
}
@font-face {
  font-family: 'Linik Sans';
  font-style: italic;
  font-weight: 200;
  src: url('../../../fonts/linik-sans/LinikSans-ExtraLightItalic.woff')
    format('woff');
}

@font-face {
  font-family: 'Linik Sans';
  font-style: normal;
  font-weight: 300;
  src: url('../../../fonts/linik-sans/LinikSans-Light.woff') format('woff');
}
@font-face {
  font-family: 'Linik Sans';
  font-style: italic;
  font-weight: 300;
  src: url('../../../fonts/linik-sans/LinikSans-LightItalic.woff')
    format('woff');
}

@font-face {
  font-family: 'Linik Sans';
  font-style: normal;
  font-weight: 400;
  src: url('../../../fonts/linik-sans/LinikSans-Regular.woff') format('woff');
}
@font-face {
  font-family: 'Linik Sans';
  font-style: italic;
  font-weight: 400;
  src: url('../../../fonts/linik-sans/LinikSans-Italic.woff') format('woff');
}

@font-face {
  font-family: 'Linik Sans';
  font-style: normal;
  font-weight: 500;
  src: url('../../../fonts/linik-sans/LinikSans-Medium.woff') format('woff');
}
@font-face {
  font-family: 'Linik Sans';
  font-style: italic;
  font-weight: 500;
  src: url('../../../fonts/linik-sans/LinikSans-MediumItalic.woff')
    format('woff');
}

@font-face {
  font-family: 'Linik Sans';
  font-style: normal;
  font-weight: 600;
  src: url('../../../fonts/linik-sans/LinikSans-SemiBold.woff') format('woff');
}
@font-face {
  font-family: 'Linik Sans';
  font-style: italic;
  font-weight: 600;
  src: url('../../../fonts/linik-sans/LinikSans-SemiBoldItalic.woff')
    format('woff');
}

@font-face {
  font-family: 'Linik Sans';
  font-style: normal;
  font-weight: 700;
  src: url('../../../fonts/linik-sans/LinikSans-Bold.woff') format('woff');
}
@font-face {
  font-family: 'Linik Sans';
  font-style: italic;
  font-weight: 700;
  src: url('../../../fonts/linik-sans/LinikSans-BoldItalic.woff') format('woff');
}

@font-face {
  font-family: 'Linik Sans';
  font-style: normal;
  font-weight: 800;
  src: url('../../../fonts/linik-sans/LinikSans-ExtraBold.woff') format('woff');
}
@font-face {
  font-family: 'Linik Sans';
  font-style: italic;
  font-weight: 800;
  src: url('../../../fonts/linik-sans/LinikSans-ExtraBoldItalic.woff')
    format('woff');
}

@font-face {
  font-family: 'Linik Sans';
  font-style: normal;
  font-weight: 900;
  src: url('../../../fonts/linik-sans/LinikSans-Black.woff') format('woff');
}
@font-face {
  font-family: 'Linik Sans';
  font-style: italic;
  font-weight: 900;
  src: url('../../../fonts/linik-sans/LinikSans-BlackItalic.woff')
    format('woff');
}

* {
  box-sizing: border-box;
  scrollbar-color: var(--scrollbar-color) var(--transparent);
  /* scrollbar-width: none; */
}

body {
  background: transparent;
  color: var(--grad-dark-blue);
  font-family: Montserrat, sans-serif;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  font-weight: 600;
  margin: 0;
  overflow: hidden;
  text-rendering: optimizelegibility;
}

ul {
  list-style: none;
  margin: 0;
  padding: 0;
}

.main-background {
  background: linear-gradient(
    0deg,
    var(--grad-back-top) 0%,
    var(--grad-back-bottom) 100%
  );
  background-position: center;
  background-repeat: no-repeat;
  background-size: cover;
  inset: 0;
  position: fixed;
  z-index: -10;
}

/* Header styles */
.header {
  background: var(--container-color);
  border-radius: var(--default-border-radius);
  /* box-shadow: 0 2px 20px rgb(1 41 112 / 30%); */
  height: 86px;
  margin-left: 88px;
  margin-right: 46px;
  margin-top: 36px;
  padding-left: 0;
  transition: all var(--animation-duration);
  z-index: 940;
}

.header img {
  margin: 0;
  width: 18px;
}

.header p {
  margin: 0;
}

/* Navbar styles */
.header nav {
  height: 100%;
  padding: 0;
  padding-left: 3.5rem;
  position: relative;
}

@media (width < 310px) {
  .header .navbar {
    flex-wrap: nowrap;
  }
}

.header .container-fluid {
  height: 100%;
}

@media (width < 1220px) {
  .header .container-fluid {
    align-items: flex-start;
    flex-direction: column;
    justify-content: flex-start;
  }

  .header .container-fluid > * {
    align-items: center;
    flex: 1;
  }
}

@media (width < 992px) {
  .header .container-fluid {
    align-items: center;
    flex-direction: row;
    justify-content: space-between;
  }

  .header .container-fluid > * {
    align-items: unset;
    flex: unset;
  }
}

.header .navbar-brand {
  font-size: 15px;
  font-weight: 800;
  margin-right: 0;
}

.header .navbar-brand .logo-img {
  max-height: 100%;
  width: 220px;
}

.toggle-sidebar-btn {
  height: 70px !important;
  width: 100%;
}

/* Navbar-toggler settings */
.header .navbar-toggler {
  border: none;
  color: white;
  padding: 0;
}

.header .navbar-toggler:focus {
  box-shadow: none;
}

.header .toogler-icon-menu {
  display: block;
  float: left;
  height: 28px;
  width: 28px;
}

#navbarMobileToggle {
  width: 100%;
}

@media (width < 1220px) {
  #navbarMobileToggle {
    padding-bottom: 0.6rem;
  }
}

/* Navigation Buttons */
@media (width < 991px) {
  #navbarMobileToggle {
    background: var(--container-color);
    border-radius: var(--default-border-radius);
    box-shadow: 0 5px 30px 0 rgb(82 63 105 / 20%);
    max-height: 600px;
    overflow: auto;
    position: absolute;
    right: 0;
    top: 98px;
    width: 45%;
  }
}

.header .navbar-nav {
  margin: 0 auto;
}

@media (width < 991px) {
  .header .navbar-nav {
    padding: 1rem;
  }

  .header .nav-link {
    display: inline-block;
  }
}

@media (width < 1220px) {
  .header .navbar-nav {
    margin: 0 !important;
  }
}

@media (width < 991px) {
  .header .navbar-nav .nav-item {
    margin: 0.4rem 0;
  }

  .header .navbar-nav .nav-item a {
    margin-right: 0;
  }
}

.header .navbar-nav .nav-link {
  align-items: center;
  background: white;
  border: 1px solid var(--gray);
  border-radius: var(--default-border-radius);
  box-shadow: 0 12px 6px -12px rgb(0 0 0 / 33%);
  color: var(--grad-dark-blue);
  display: flex;
  font-size: 1em;
  font-weight: 800;
  letter-spacing: 0.02rem;
  margin-right: 10px;
  padding: 7px 33px;
  transition: padding var(--animation-duration) ease;
}

@media (width < 1500px) {
  .header .navbar-nav .nav-link {
    padding: 6px 23px;
  }
}

@media (width < 1360px) {
  .header .navbar-nav .nav-link {
    padding: 6px 12px;
  }
}

@media (width < 1220px) {
  .header .navbar-nav .nav-link {
    padding: 3px 18px;
  }
}

@media (width < 1100px) {
  .header .navbar-nav .nav-link {
    padding: 3px 12px;
  }
}

@media (width < 991px) {
  .header .navbar-nav .nav-link {
    padding: 0.3rem 1rem;
  }
}

.header .navbar-nav .nav-link.active {
  background: var(--grad-dark-blue);
  color: white;
}

.header .navbar-nav .nav-link.active::after {
  color: white;
}

/* Header Right (User Organization) */
.header .us_org_name {
  display: flex;
}

.header .profile-settings-toggle {
  align-items: center;
  display: flex;
  gap: 0.2rem;
  margin-left: auto;
}

.header .profile-settings-toggle span {
  color: #000;
  font-size: 1.1em;
  font-weight: 700;
  line-height: 0.93rem;
}

.header .profile-settings-toggle::after {
  color: white;
}

.header .profile-settings-toggle::after,
.header .nav-item.dropdown .nav-link::after {
  border-bottom: 0;
  border-left: 0.3em solid transparent;
  border-right: 0.3em solid transparent;
  border-top: 0.3em solid;
  content: '';
  display: inline-block;
  margin-left: 0.255em;
  vertical-align: 0.255em;
}

.header-organization-wrapper {
  background: var(--grad-dark-blue);
  border-radius: 0.4rem;
  display: flex;
  flex-direction: column;
  gap: 0.6rem;
  margin-left: auto;
  padding: 0.7rem 1rem;
  position: relative;
}

.header-organization-wrapper a span {
  color: white !important;
}

.header-organization-wrapper a span::first-letter {
  text-transform: capitalize;
}

@media (width <992px) {
  .header-organization-wrapper {
    margin: 0 1rem;
    padding: 1rem;
  }
}

.user-organization-name-header {
  color: var(--grad-dark-blue);
  display: flex;
  font-size: 0.8em;
  gap: 0.3rem;
  line-height: 0.9em;
}

.organization-value {
  color: var(--red);
  cursor: pointer;
}

img.icon-organization {
  width: 32px;
}

@media (width < 1220px) {
  .header-organization-wrapper:hover .user-organization-name-header {
    display: flex;
  }

  .user-organization-name-header {
    display: none;
  }
}

@media (width < 991px) {
  .user-organization-name-header {
    display: flex;
  }

  .brand-info-block img {
    margin-bottom: 0.3rem !important;
    margin-top: 0 !important;
    max-width: 240px;
    min-width: 240px;
    width: 240px;
  }
}

.organization-chage-wrapper {
  background: white;
  border: 0.15rem solid var(--alt-accent);
  border-radius: 8px;
  display: flex;
  flex-direction: column;
  gap: 0.3rem;
  left: 62px;
  padding: 0.6rem;
  position: absolute;
  top: calc(100% - 16px);
  width: 210px;
  z-index: 10;
}

.organization-chage-wrapper p {
  font-size: 0.85rem;
  font-weight: 700;
}

/* Dropdown menus */
.dropdown-menu {
  animation-duration: var(--animation-duration);
  animation-fill-mode: both;
  animation-name: dropdown-animate;
  background: var(--container-color);
  border: 2px solid var(--gray);
  border-radius: var(--default-border-radius);
  box-shadow: var(--box-shadow-standard);
  margin-top: 10px !important;
  padding: 0.4rem;
  position: absolute;
}

@media (width <=992px) {
  .dropdown-menu {
    border: none;
    box-shadow: none !important;
    margin: 0;
    margin-top: 0 !important;
    overflow: hidden;
  }
}

.dropdown-menu .dropdown-item {
  background: white;
  border-radius: var(--default-border-radius);
  color: #0d2550;
  cursor: pointer;
  font-size: 13px;
  font-weight: 600;
  margin: 0.3rem 0;
  padding: 7px 15px;
  transition: all var(--animation-duration);
}

.dropdown-menu .dropdown-item:hover {
  background: white;
}

@media (width <=992px) {
  .dropdown-menu .dropdown-item:hover {
    background: var(--grad-dark-blue);
    color: white;
  }

  .dropdown-menu .dropdown-item:hover img {
    filter: brightness(0) invert(1);
  }

  .dropdown-menu-end {
    position: static;
  }

  .header-organization-wrapper .dropdown-menu-end {
    background: transparent;
    order: -1;
  }
}

.dropdown-menu .dropdown-divider {
  color: white;
  margin: 0;
}

/* Dropdown Animation (fade) */
@keyframes dropdown-animate {
  0% {
    opacity: 0;
  }

  100% {
    opacity: 1;
  }
}

/* New Header */
.header-avatar-wrapper,
.header-avatar {
  background: linear-gradient(
    90deg,
    rgb(255 255 255 / 100%) 0%,
    rgb(169 185 207 / 100%) 100%
  );
  border-radius: 50%;
}

.header-avatar {
  align-items: center;
  background: rgb(255 255 255);
  display: flex;
  height: 90%;
  justify-content: center;
  padding: 0.4rem;
  width: 90%;
}

.header-avatar-wrapper {
  align-items: center !important;
  display: flex;
  height: 86px;
  justify-content: center !important;
  left: -40px;
  position: absolute;
  scale: 1.3;
  width: 86px;
}

.header-avatar img {
  flex: 1;
}

.header-avatar a {
  display: flex;
  height: 100%;
  width: 100%;
}

.brand-info-block {
  display: flex;
  flex-direction: column;
  justify-content: center;
  padding: 0;
}

.brand-info-block img {
  margin-bottom: 0.2rem;
  max-width: 240px;
  min-width: 240px;
  width: 240px;
}

@media (width < 1500px) {
  .brand-info-block img {
    max-width: 220px;
    min-width: 220px;
    width: 220px;
  }
}

@media (width < 1220px) {
  .brand-info-block img {
    margin-bottom: 0;
    margin-top: 0.3rem;
  }
}

.sidebar {
  display: none;
}

.toggles-wrapper-main {
}

.custom-checkbox {
  align-items: center;
  cursor: pointer;
  display: flex;
  gap: 9px;
  overflow: hidden;
  position: relative;
}

.custom-checkbox input[type='checkbox'],
.custom-checkbox input[type='radio'] {
  display: none;
}

.custom-checkbox .checkmark {
  background-color: white;
  border: 2px solid var(--devider-color);
  border-radius: 3px;
  display: flex;
  height: 17px !important;
  max-height: 17px !important;
  max-width: 17px !important;
  min-height: 17px !important;
  min-width: 17px !important;
  width: 17px !important;
}

.custom-checkbox input[type='checkbox']:checked ~ .checkmark,
.custom-checkbox input[type='radio']:checked ~ .checkmark {
  background-color: var(--green);
  background-image: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 20 20'%3e%3cpath fill='none' stroke='%23FFFFFF' stroke-linecap='round' stroke-linejoin='round' stroke-width='3' d='m6 10 3 3 6-6'/%3e%3c/svg%3e");
  background-position: center;
  background-repeat: no-repeat;
  background-size: cover;
  border-color: var(--green);
}

.custom-checkbox .checkmark:after {
  content: '';
  display: none;
  position: absolute;
}

.custom-checkbox p {
  font-weight: 600;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.custom-checkbox.checkbox-container-colored {
  background: var(--container-color);
  border-radius: calc(var(--default-border-radius) * 0.5);
  box-shadow: 0 4px 17px -11px rgb(0 0 0 / 40%);
  height: 100%;
  padding: 0 0.8rem;
}

.checkbox-container-bordered {
  border: 3px solid #bbc9db;
}

.label-txt-checkbox {
  overflow: hidden;
  text-overflow: ellipsis;
}

#notificationContainer {
  max-height: 60vh;
  overflow: hidden;
  padding: 1rem;
  position: fixed;
  right: 0;
  top: 0;
  width: 300px;
  z-index: 1000;
}

#notificationContainer b {
  font-weight: 700;
}

.console-notification {
  background: #fff;
  border: 1px solid #ccc;
  border-radius: 5px;
  box-shadow: 0 2px 5px rgba(0, 0, 0, 0.1);
  margin-bottom: 10px;
  opacity: 0;
  padding: 10px;
  position: relative;
  transform: translateY(-100%);
  transition: margin 0.3s ease, transform 0.3s ease, opacity 0.3s ease;
}

.console-notification.fly-in {
  opacity: 1;
  transform: translateY(0);
  /* Notification slides into view */
}

.console-notification.fade-out {
  opacity: 0;
  transform: translateY(-100%);
  /* Fly out as it fades */
  transition: transform 0.3s ease, opacity 0.3s ease;
}

/* Updated for smooth transitions when space is created */
.notification-close-btn {
  background: none;
  border: none;
  color: #333;
  cursor: pointer;
  font-size: 20px;
  padding: 0.2rem;
  position: absolute;
  right: 10px;
  top: 5px;
}

.notification-close-btn:hover {
  color: #000;
}

.console-notification.text-success {
  border-left: 5px solid var(--green);
}

.console-notification.text-failed {
  border-left: 5px solid var(--red);
}

/* Tooltip container */
.tooltip {
}

/* Tooltip content */
.tooltip .tooltip-inner {
  background: #fff !important;
  border: 0.15rem solid var(--devider-color);
  color: #0d2550; 
  font-size: 11px;
  font-weight: 800;
  padding: .2rem 0.5rem;
  text-align: center;
}

/* Tooltip arrow */
.tooltip .tooltip-arrow::before {
}

/* Tooltip header (if using tooltips with headers) */
.tooltip-header {
}

.bs-tooltip-left .tooltip-arrow::before {
  border-left-color: var(--devider-color);
}

.bs-tooltip-right .tooltip-arrow::before {
  border-right-color: var(--devider-color);
}

.bs-tooltip-top .tooltip-arrow::before {
  border-top-color: var(--devider-color);
}

.bs-tooltip-bottom .tooltip-arrow::before {
  border-bottom-color: var(--devider-color);
}

.loader-test-wrapper {
  min-height: 100px;
  display: flex;
  justify-content: center;
  align-items: center;
  width: 100%;
  gap: 1rem;
}

.loader-test-wrapper > p {
  font-weight: 600;
  font-size: 1rem;
}

.loader-test {
  animation: rotate 1s infinite;
  height: 50px;
  width: 50px;
}

.loader-test:before,
.loader-test:after {
  border-radius: 50%;
  content: '';
  display: block;
  height: 20px;
  width: 20px;
}
.loader-test:before {
  animation: ball1 1s infinite;
  background-color: var(--blue);
  box-shadow: 30px 0 0 var(--red);
  margin-bottom: 10px;
}
.loader-test:after {
  animation: ball2 1s infinite;
  background-color: var(--red);
  box-shadow: 30px 0 0 var(--blue);
}

@keyframes rotate {
  0% {
    transform: rotate(0deg) scale(0.8);
  }
  50% {
    transform: rotate(360deg) scale(1.2);
  }
  100% {
    transform: rotate(720deg) scale(0.8);
  }
}

@keyframes ball1 {
  0% {
    box-shadow: 30px 0 0 var(--red);
  }
  50% {
    box-shadow: 0 0 0 var(--red);
    margin-bottom: 0;
    transform: translate(15px, 15px);
  }
  100% {
    box-shadow: 30px 0 0 var(--red);
    margin-bottom: 10px;
  }
}

@keyframes ball2 {
  0% {
    box-shadow: 30px 0 0 var(--blue);
  }
  50% {
    box-shadow: 0 0 0 var(--blue);
    margin-top: -20px;
    transform: translate(15px, 15px);
  }
  100% {
    box-shadow: 30px 0 0 var(--blue);
    margin-top: 0;
  }
}

/* Custom Styled Select */
.styled-select {
  border-radius: 8px;
  flex: 1;
  height: 100%;
  /* min-width: 150px; */
  padding: 0 !important;
  position: relative;
  width: 100%;
}

.styled-select button {
  margin: 0 !important;
}

.styled-select-trigger {
  background-color: var(--container-color) !important;
  border: 0.15rem solid var(--gray);
  border-radius: 8px;
  color: var(--blue);
  cursor: pointer;
  display: flex;
  font-size: 0.8em;
  font-weight: 600;
  height: 100%;
  justify-content: space-between;
  overflow: hidden;
  padding: 0.4rem 0.6rem;
  position: relative;
  width: 100%;
}

.styled-select.active .styled-select-trigger {
  border: 0.15rem solid #a7b7ce80;
}

.styled-select-trigger p {
  align-items: center;
  color: var(--gray);
  font-size: 11px;
  font-weight: 600;
  max-width: 100%;
  overflow: hidden;
  text-align: left;
  text-overflow: ellipsis;
  white-space: nowrap;
  z-index: 120;
}

.styled-select-trigger img {
  filter: brightness(0);
  margin-left: auto;
  min-width: unset;
  width: 11px;
}

.styled-select-trigger:focus {
  box-shadow: none !important;
}

.styled-select-trigger:hover {
  border: 0.15rem solid #a7b7ce80;
  box-shadow: none !important;
}

.styled-select-trigger:active {
  box-shadow: none !important;
}

.styled-select-trigger:active::before {
  background: #a7b7ce10;
  content: '';
  inset: 0 0 0 0;
  position: absolute;
  z-index: 55;
}

.styled-options {
  background: var(--container-color);
  border: 2px solid #a7b7ce80;
  border-bottom-left-radius: 0.4rem;
  border-bottom-right-radius: 0.4rem;
  left: 0;
  max-height: 22vh;
  overflow: auto;
  padding: 0.5rem;
  padding-bottom: 0.1rem;
  padding-top: 1rem;
  position: absolute;
  right: 0;
  top: 50%;
  z-index: 90;
  scrollbar-width: none;
}

.add-custom-options-wrapper {
  display: flex;
  gap: 0.3rem;
  margin-top: 0.3rem;
  /* border-bottom: .15rem solid var(--devider-color); */
  padding-bottom: 0.4rem;
}

button.add-custom-option-btn {
  justify-content: center;
  padding: 0.3rem;
  width: 33px;
}

.option-wrapper {
  align-items: center;
  display: flex;
  margin: 0.6rem 0 !important;
}

.option-wrapper button {
  border: none;
  margin-left: 0.3rem !important;
  min-width: 0 !important;
  overflow: hidden;
  width: 0 !important;
}

.option-wrapper:hover button {
  min-width: 33px !important;
  width: 33px !important;
}

.option-wrapper button img {
  height: 24px;
  min-height: 24px;
  width: 21px;
}

.styled-option {
  align-items: center !important;
  background: white !important;
  border-radius: 8px !important;
  box-shadow: 0 4px 17px -11px rgb(0 0 0 / 40%) !important;
  cursor: pointer !important;
  display: flex !important;
  gap: 0.4rem !important;
  margin: 0.6rem 0 !important;
  overflow: hidden !important;
  padding: 0.5rem 0.7rem !important;
  transition: box-shadow 0.2s ease;
  white-space: nowrap !important;
  width: 100% !important;
}

.option-wrapper .styled-option {
  margin: 0 !important;
}

.styled-option > * {
  height: unset !important;
  min-height: unset !important;
}

.styled-option > p {
  color: var(--blue);
  font-size: 11px;
  overflow: hidden;
  text-overflow: ellipsis;
}

.styled-option .checkmark {
  height: 16px !important;
  max-height: 16px !important;
  max-width: 16px !important;
  min-height: 16px !important;
  min-width: 16px !important;
  width: 16px !important;
}

.styled-option.selected {
  color: white;
  font-weight: 800;
}

.styled-select.radio .styled-option.selected {
  background: var(--blue) !important;
}

.styled-select.radio .styled-option.selected > p {
  color: white;
}

.styled-select.checkbox .styled-option.selected {
  background: white !important;
}

.styled-option:hover {
  box-shadow: none !important;
  transition: box-shadow 0.2s ease;
}

.styled-option-selected p {
  color: var(--blue);
  font-size: 13px;
}

/* ------------------------------------------------------------ # Modal Styles # ---------------------------------------------------------- */

/* Styles the modal header */
.modal {
  z-index: 90000 !important;
}

.modal-header {
  background: var(--red);
  border-radius: 0 0 8px 8px;
  padding: 8px 0;
}

.modal-header .btn-close {
}

.modal-body img {
  height: 200px;
  margin: auto;
  width: 200px;
}

.modal-body {
  display: flex;
  flex-direction: column;
  justify-content: center;
}

/* Shared styles for modal title and warning text */
.modal-title,
.warning-text {
  font-weight: 800;
  letter-spacing: 1px;
  text-align: center;
  width: 100%;
}

/* Styles the modal title */
.modal-title {
  color: #fff;
  font-size: 13px;
}

/* Styles the title image */
.modal-title img {
  float: left;
  margin-left: 10px;
}

/* Styles small icons and pop-up images */
.small-icon-title,
.image-popup {
  display: block;
  height: 20px;
  width: 20px;
}

/* Styles the warning text */
.warning-text {
  color: var(--grad-dark-blue);
  font-size: 12px;
  margin-top: 20px;
}

/* Styles the image pop-up */
.image-popup {
  height: 70px;
  margin: 1px auto 0;
  width: 70px;
}

/* Styles the buttons */
.modal .btn-primary,
.modal .btn-secondary,
.modal .btn-close-md {
  border-radius: 8px;
  font-size: 13px;
  padding: 10px 20px;
}

/* Styles the primary button */
.modal .btn-primary {
  background: var(--green);
  border: 1px solid var(--green);
  color: #fff;
  font-weight: 800;
  text-align: center;
}

.modal .btn-secondary {
  background: var(--gray);
  border-color: var(--gray);
  color: white;
}

.modal .btn-yes-remove-cloud {
  background: var(--red);
  border-color: var(--red);
}

/* Styles the modal input */
.modal input {
  border: 1px solid var(--gray);
  border-radius: 8px;
  color: #0d2550;
  font-size: 12px;
  margin-bottom: 10px;
  padding: 15px 0 15px 10px;
  width: 100%;
}

/* Styles modal image pop-ups */
.modal .image-popup {
  height: 85px;
  width: 85px;
}

/* Styles the confirmation button */
.modal-lab-sp .btn-confrim-proceed {
  width: 85px;
}

/* Styles the delete and save buttons */
.modal-lab-sp .btn-del-confrim,
.addition_popup_save {
  background: var(--red);
}

/* Styles the modal-dup header and image pop-up */
.modal-dup .modal-header {
  background: var(--yellow);
}

.modal-dup .image-popup {
  height: 90px;
  width: 90px;
}

/* Styles the modal-clear-dash header and image pop-up */
.modal-clear-dash .modal-header {
  background: var(--yellow);
}

.modal-clear-dash .image-popup {
  height: 80px;
  width: 80px;
}

@keyframes slideDown {
  0% {
    top: -300px;
  }

  100% {
    top: 0;
  }
}

/* Modal specific */
.modal.modal-yellow .modal-content {
  border-color: var(--yellow);
}

.modal.modal-yellow .modal-header {
  background: var(--yellow);
}

.modal.modal-yellow .btn-primary {
  background: var(--yellow);
  border-color: var(--yellow);
}

.modal.modal-blue .modal-content {
  border-color: var(--grad-dark-blue);
}

.modal.modal-blue .modal-header {
  background: var(--grad-dark-blue);
}

.modal.modal-blue .btn-primary {
  background: var(--grad-dark-blue);
  border-color: var(--grad-dark-blue);
}

.modal.modal-red .modal-content {
  border-color: var(--red);
}

.modal.modal-red .modal-header {
  background: var(--red);
}

.modal.modal-red .btn-primary {
  background: var(--red);
  border-color: var(--red);
}

.modal.modal-green .modal-content {
  border-color: var(--green);
}

.modal.modal-green .modal-header {
  background: var(--green);
}

.modal.modal-green .btn-primary {
  background: var(--green);
  border-color: var(--green);
}

.modal.modal-gray .modal-content {
  border-color: var(--gray);
}

.modal.modal-gray .modal-header {
  background: var(--gray);
}

.modal.modal-gray .btn-primary {
  background: var(--gray);
  border-color: var(--gray);
}

.modal-graphic-image {
  width: 200px;
}

.modal button,
.modal select,
.modal input,
.modal textarea {
  align-items: center;
  background: var(--container-small-color);
  border: none;
  border-radius: 8px !important;
  box-shadow: 0 4px 17px -11px rgb(0 0 0 / 40%);
  color: var(--grad-dark-blue);
  display: flex;
  font-size: 13px;
  font-weight: 600;
  gap: 0.3rem;
  outline: none;
  padding: 0.4rem 0.8rem;
  position: relative;
  resize: none;
  transition: all calc(var(--animation-duration) / 2) ease-in-out;
}

.modal-dialog {
  border-radius: 0.6rem;
  overflow: hidden;
}

.welcome-screen-container {
  display: flex;
  flex-direction: column;
  padding: 3.875rem 4.4rem 14.25rem 4.5rem !important;
  gap: 5.1rem;
  position: relative;
  z-index: 1;
  background: linear-gradient(90deg, #f3f8fd 0%, rgba(243, 248, 253, 0) 88.56%);
  position: absolute;
  inset: 0;
}

.welcome-screen-container::before {
  content: '';
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background: url('/assets/img/backgrounds/lms-start-screen-bg.jpg') 50% / cover
    no-repeat #f3f8fd;
  z-index: -1;
  opacity: 0.2;
}

.welcome-title {
  color: var(--grad-dark-blue);
  font-size: 2.875rem;
  line-height: 3.1rem;
  font-weight: 800;
}

.welcome-description,
.guidance-text {
  color: var(--grad-dark-blue);
  font-size: 1.1875rem;
  font-weight: 600;
  line-height: 1.875rem;
  max-width: 37.375rem;
  margin: 0;
}

.welcome-header {
  display: flex;
  flex-direction: column;
  gap: 1.5625rem;
}

.welcome-guidance {
  display: flex;
  align-items: center;
  gap: 0.625rem;
  align-self: stretch;
}

.welcome-guidance.buttons {
  flex-wrap: wrap;
  max-width: 1200px;
}

.guidance-icon {
  height: 3.6rem;
  width: 3.6rem;
}

.guidance-button {
  color: #253766;
  font-size: 1.04488rem;
  font-style: normal;
  font-weight: 800;
  line-height: normal;
  display: flex;
  padding: 0.5rem 2.4125rem;
  justify-content: center;
  align-items: center;
  gap: 0.625rem;
  border-radius: 0.5625rem;
  border: 1px solid #a7b7ce;
  background: #fff;
  white-space: nowrap;
  text-decoration: none;
}

.guidance-button:hover {
  color: #253766;
}

.welcome-screen-wrapper {
  display: flex;
  position: absolute;
  inset: 150px 46px 24px 46px;
  border-radius: 0.6rem;
  overflow: hidden;
  background: white;
}

.welcome-screen-wrapper .welcome-screen-container {
  padding: 3.875rem 4.4rem 3rem 4.5rem !important;
  gap: 4.3rem;
}

#btn-confirm-organization-inactivity-warning-modal {
  margin: 0.2rem auto;
  margin-bottom: 1rem;
}

/* Session timeout timer in modal */
#session-timeout-timer {
  font-size: 3rem;
  font-weight: bold;
  color: var(--red);
  text-align: center;
  margin: 1.5rem 0;
  font-family: 'Courier New', monospace;
  letter-spacing: 0.1em;
}
