/* Light Theme */
:root {
  /* Body */
  --base-font: "Inter", sans-serif;
  --bg-color: #f1f0e9;
  --text-color: #383838;
  --text-color-sec: #706251;
  --a-color: #6d6d6d;
  --color-primary: #bf282b;
  --color-secondary: #525555;

  --color-base-red: #bf282b;
  --color-base-gray: #525555;
  --color-base-orange: #d47430;
  --bg-base: #f1f0e9;
  /* --bg-secondary: #d5d0fa ; */
  --bg-secondary: #dfeaea;
  --bg-optional: #fcf0ec;

  --color-base: #f1f0e9;
  --color-secondary: #d5d0fa;
  --color-optional: #fcf0ec;

  /* Sidebar */
  --sidebar-background: #f5f5f5;
  --sidebar-color: #f7f7f7;
  --sidebar-acolor: #cfcfcf;
  --sidebar-subBackground: #343a3b;
  /* --sidebar-isOn: #b5b5b5; */
  --sidebar-hover: #68747a;

  /* Inputs */
  --input-background: #f1f0e9;
  --input-color: #020202;
  --input-border: 1px solid #c6c6c6;

  /* Backgrounds */
  --bg-color-primary: #ffffff;
  --bg-color-primary-faded: #ffffff9d;
  --bg-color-secondary: #f3f3f3;
  --bg-color-optional: #c0c0c0;
  --bg-color-success: #bdf3cc;
  --bg-color-warning: #d2b149;
  --bg-color-info: #9fb4b4;
  --bg-color-danger: #a33c3a;

  /* buttons */
  --bg-color-btn-primary: #626160;
  /* --bg-color-btn-primary: #009688; */
  --bg-color-btn-secondary: #6e6e6e;
  --bg-color-btn-success: #bdf3cc;
  --bg-color-btn-warning: #d2b149;
  --bg-color-btn-info: #9fb4b4;
  --bg-color-btn-danger: #a33c3a;
  --text-color-primary: #020202;
  --text-color-btn-primary: #f2f2f2;
  --text-color-btn-secondary: #f2f2f2;
  --text-color-success: #f2f2f2;
  --text-color-warning: #2d2d2d;
  --text-color-danger: #f2f2f2;
  --text-color-info: #f2f2f2;
  --btn-primary-border: none;
  --btn-secondary-border: none;
  --btn-success-border: none;
  --btn-warning-border: none;
  --btn-danger-border: none;
  --btn-info-border: none;
}

/* Dark Theme */
body.dark-theme {
  /* Body */
  --base-font: "Montserrat", sans-serif;
  --bg-color: #e7f6e3;
  --text-color: #ffffff;
  --a-color: #17b89c;
  --color-primary: #0e075b;
  --color-secondary: #2fa5fb;
  /* Sidebar */
  --sidebar-background: #30373d;
  --sidebar-color: #dcdcdc;
  --sidebar-acolor: #dcdcdc;
  --sidebar-subBackground: #383d42;
  --sidebar-isOn: #43cfbf6e;
  --sidebar-hover: #68747a;

  /* Inputs */
  --input-background: #3a424a;
  --input-color: #f1f1f1;
  --input-border: none;

  /* Backgrounds */
  --bg-color-primary: #31373d;
  --bg-color-primary-faded: #31373d8b;
  --bg-color-secondary: #3f4a52;
  --bg-color-optional: #424949;
  --bg-color-success: #009652;
  --bg-color-warning: #d2b149;
  --bg-color-info: #569190;
  --bg-color-danger: #a33c3a;

  /* buttons */
  --bg-color-btn-primary: #626160;
  /* --bg-color-btn-primary: #009688; */
  --bg-color-btn-secondary: #6e6e6e;
  --bg-color-btn-success: #487b4a;
  --bg-color-btn-warning: #d2b149;
  --bg-color-btn-danger: #a33c3a;
  --bg-color-btn-info: #569190;
  --text-color-primary: #f2f2f2;
  --text-color-secondary: #f2f2f2;
  --text-color-btn-primary: #f2f2f2;
  --text-color-btn-secondary: #f2f2f2;
  --text-color-success: #f2f2f2;
  --text-color-warning: #2d2d2d;
  --text-color-danger: #f2f2f2;
  --text-color-info: #f2f2f2;
  --btn-primary-border: none;
  --btn-secondary-border: none;
  --btn-success-border: none;
  --btn-warning-border: none;
  --btn-danger-border: none;
  --btn-info-border: none;
}

html {
  overflow: hidden;
  overflow-x: hidden !important;
}

body {
  display: flex;
  overflow: auto;
  overflow-x: hidden !important;
  flex-direction: column;
  min-height: 100vh;
  /* Ensure the body takes up at least the viewport height */
  margin: 0;
  background-color: var(--bg-color) !important;
  font-family: var(--base-font) !important;
  color: var(--text-color) !important;
  transition: background-color 0.3s ease, color 0.3s ease;
}

.text-r {
  color: var(--color-base-red) !important;
}
.text-g {
  color: var(--color-base-gray) !important;
}
.text-o {
  color: var(--color-base-orange) !important;
}
a {
  color: var(--a-color) !important;
}

a:hover {
  opacity: 0.8 !important;
}

body::-webkit-scrollbar {
  width: 6px;
}

body::-webkit-scrollbar-track {
  background: #f1f1f1;
}

body::-webkit-scrollbar-thumb {
  background: #6c757d;
  border-top-left-radius: 0px;
  border-top-right-radius: 0px;
  border-bottom-left-radius: 3px;
  border-bottom-right-radius: 3px;
}

body::-webkit-scrollbar-thumb:hover {
  background: #555;
  border-top-left-radius: 0px;
  border-top-right-radius: 0px;
  border-bottom-left-radius: 3px;
  border-bottom-right-radius: 3px;
}
::selection {
  background: #3d3e3e;
  color: whitesmoke;
}

::-moz-selection {
  background: #3d3e3e;
  color: whitesmoke;
}

/* Main Preloader  */
#preloader {
  position: fixed;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background: linear-gradient(
    180deg,
    rgb(255 255 255) 0%,
    rgb(245 245 245) 100%
  );
  /* background-color: #1a1a1a; */
  z-index: 9999999;
}

#status {
  display: block;
  position: relative;
  left: 50%;
  top: 50%;
  width: 300px;
  height: 300px;
  margin: -150px 0 0 -150px;
  /* border-radius: 50%; */
  background-image: url(/assets/images/logo/logo.svg);
  background-repeat: no-repeat;
  /* background-position: center; */
  z-index: 100;
  z-index: 100;
}

/* Inputs */

input[type="text"],
input[type="password"],
input[type="tel"],
input[type="email"],
textarea,
select,
input[type="number"] {
  border: 1px solid gainsboro;
  color: var(--text-color);
  background-color: #0000;
  border-radius: 8px;
  height: auto;
  margin-bottom: 0;
  padding: 14px 20px;
  font-size: 18px;
  line-height: 1.5em;
}

input:disabled,
select:disabled,
textarea:disabled {
  border: 1px solid gainsboro;
  color: var(--text-color);
  background-color: #0000;
  border-radius: 8px;
  height: auto;
  margin-bottom: 0;
  padding: 14px 20px;
  font-size: 18px;
  line-height: 1.5em;
}

.form-control:focus {
  color: var(--text-color);
  background-color: #fff;
  border-color: #fcf0ec;
  outline: 0;
  box-shadow: unset;
}

.container {
  flex: 1;
}

/* Backgrounds */
.bg-main {
  background-color: var(--bg-color) !important;
  color: var(--text-color) !important;
}

.bg-primary {
  background-color: var(--bg-color-primary) !important;
  color: var(--text-color-primary) !important;
}

.bg-secondary {
  background-color: var(--bg-color-secondary) !important;
  color: var(--text-color-secondary) !important;
}

.bg-optional {
  background-color: var(--bg-color-optional) !important;
  color: var(--text-color-optional) !important;
}

.bg-success {
  background-color: var(--bg-color-success) !important;
  color: var(--text-color-success) !important;
}

.bg-warning {
  background-color: var(--bg-color-warning) !important;
  color: var(--text-color-warning) !important;
}

.bg-danger {
  background-color: var(--bg-color-danger) !important;
  color: var(--text-color-danger) !important;
}

.bg-info {
  background-color: var(--bg-color-info) !important;
  color: var(--text-color-info) !important;
}

.footer {
  background-color: transparent;
  padding: 20px 0;
  text-align: center;
  position: relative;
  bottom: 0;
  width: 100%;
}

.btn:active {
  opacity: 0.6 !important;
}

/* Buttons */
.btn-primary {
  display: block;
  background-color: var(--bg-color-btn-primary) !important;
  color: var(--text-color-btn-primary) !important;
  box-shadow: 0 0.125rem 0.25rem rgba(0, 0, 0, 0.075) !important;
  border: var(--btn-primary-border) !important;
}

.btn-primary:hover {
  opacity: 0.9;
}

.btn-secondary {
  display: block !important;
  background-color: transparent !important;
  color: var(--color-base-gray) !important;
  /* box-shadow: 0 0.125rem 0.25rem rgba(0, 0, 0, 0.075) !important; */
  border: 1px solid gainsboro;
}

.btn-secondary:hover {
  opacity: 0.9;
  border: 1px solid #dfeaea;
}

.btn-success {
  display: block !important;
  background-color: var(--bg-color-btn-success) !important;
  color: var(--text-color) !important;
  box-shadow: 0 0.125rem 0.25rem rgba(0, 0, 0, 0.075) !important;
  border: var(--btn-success-border) !important;
}

.btn-success:hover {
  opacity: 0.9;
}

.btn-warning {
  display: block !important;
  background-color: var(--bg-color-btn-warning) !important;
  color: var(--text-color-warning) !important;
  box-shadow: 0 0.125rem 0.25rem rgba(0, 0, 0, 0.075) !important;
  border: var(--btn-warning-border) !important;
}

.btn-warning:hover {
  opacity: 0.9;
}

.btn-danger {
  display: block !important;
  background-color: var(--bg-color-btn-danger) !important;
  color: var(--text-color-danger) !important;
  box-shadow: 0 0.125rem 0.25rem rgba(0, 0, 0, 0.075) !important;
  border: var(--btn-danger-border) !important;
}

.btn-danger:hover {
  opacity: 0.9;
}

.btn-info {
  display: block !important;
  background-color: var(--bg-color-btn-info) !important;
  color: var(--text-color-info) !important;
  box-shadow: 0 0.125rem 0.25rem rgba(0, 0, 0, 0.075) !important;
  border: var(--btn-info-border) !important;
}

.btn-info:hover {
  opacity: 0.9;
}

/* Dropdowns */
.dropdown-item.active,
.dropdown-item:active {
  background-color: #bbbbbb;
}

/* Toggle Switch */
.form-check-input:focus {
  border-color: #dedede !important;
  outline: 0 !important;
  /* box-shadow: 0 0 2px 2px #dedede !important; */
  box-shadow: none !important;
}

.form-check-input:checked {
  background-color: #f3a443 !important;
  border-color: #f3a443 !important;
}

.form-switch .form-check-input:focus {
  background-image: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='-4 -4 8 8'%3e%3ccircle r='3' fill='%232d2d2d'/%3e%3c/svg%3e") !important;
}

.form-switch .form-check-input {
  width: 2em;
  margin-left: -2.5em;
  /* background-image: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='-4 -4 8 8'%3e%3ccircle r='3' fill='rgba%280, 0, 0, 0.25%29'/%3e%3c/svg%3e"); */
  background-position: left center;
  border-radius: 2em;
  transition: background-position 0.15s ease-in-out;
  background-image: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='-4 -4 8 8'%3e%3ccircle r='3' fill='%232d2d2d'/%3e%3c/svg%3e");
  background-color: #32635c;
}

.form-check-input.genToggle:checked {
  background-color: #2cb278 !important;
  border-color: #2cb278 !important;
  border-top-color: #2cb278 !important;
  border-right-color: #2cb278 !important;
  border-bottom-color: #2cb278 !important;
  border-left-color: #2cb278 !important;
}

.toggle-password {
  float: right;
  cursor: pointer;
  margin-right: 10px;
  margin-top: -31px;
  z-index: auto;
  position: relative;
  font-size: 1rem;
}

/* Notifications */
div#genNotifications {
  z-index: 99999;
}

/* Preloader  */
.postLoader svg {
  height: 100px;
  width: auto;
}

.postLoader {
  position: absolute;
  top: 0;
  bottom: 0;
  left: 0;
  right: 0;
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  background-color: var(--bg-color-primary-faded);
  border-radius: inherit;
  z-index: 999999;
}

#postLoader {
  display: none;
}

#postCheck {
  display: none;
}

/* #svgFail{
            display: none;
        } */

#failLoader,
#failLoaderLine1,
#failLoaderLine2 {
  display: none;
}

.path.circle {
  stroke-dasharray: 100;
  stroke-dashoffset: 0;
  /* -webkit-animation: dash 3s ease-in-out infinite; */
  animation: dash 3s ease-in-out infinite;
}

.path.line {
  stroke-dashoffset: 1000;
  /* -webkit-animation: dash 0.9s 0.35s ease-in-out forwards; */
  animation: dash 0.9s 0.35s ease-in-out;
}

.path.check {
  stroke-dasharray: 1000;
  stroke-dashoffset: -100;
  /* -webkit-animation: dash-check 0.9s 0.35s ease-in-out forwards; */
  animation: dash-check 0.9s 0.35s ease-in-out;
}

@-webkit-keyframes dash {
  0% {
    stroke-dashoffset: 1000;
  }

  100% {
    stroke-dashoffset: 0;
  }
}

@keyframes dash {
  0% {
    stroke-dashoffset: 1000;
  }

  100% {
    stroke-dashoffset: 0;
  }
}

@-webkit-keyframes dash-check {
  0% {
    stroke-dashoffset: -100;
  }

  100% {
    stroke-dashoffset: 900;
  }
}

@keyframes dash-check {
  0% {
    stroke-dashoffset: -100;
  }

  100% {
    stroke-dashoffset: 900;
  }
}

/* Logo  */
.navbar-brand {
  height: 90px;
  width: 240px;
  background-size: contain;
  display: block;
  background-repeat: no-repeat;
  background-position: left;
  transition: all 0.2s linear;
}

.navbar {
  transition: all 0.2s linear;
}

.navbar.pinned {
  position: fixed;
  top: 0;
  left: 0;
  width: 100%;
  background-color: white; /* Adjust as needed */
  box-shadow: 0px 4px 6px rgba(0, 0, 0, 0.1);
  z-index: 1000;
}

.navbar.pinned a {
  font-size: 16px !important;
}
.navbar.pinned button {
  font-size: 16px !important;
  padding: 10px 25px !important;
}

.navbar.pinned .navbar-brand {
  height: 50px;
  width: 150px;
}

.brand {
  height: 7.2em;
  width: 100%;
  background-size: contain;
  display: block;
  background-repeat: no-repeat;
  background-position: center;
}

.navbar-toggler-icon::before {
  font-family: "bootstrap-icons";
  content: "\F479";
  color: gray;
  font-size: 1.7em;
}

.navbar-toggler:focus {
  text-decoration: none;
  outline: 0;
  box-shadow: unset;
}

@media all and (max-width: 767px) {
  .notification-body {
    min-width: 260px;
    max-width: 260px;
    overflow: auto;
  }

  ul.u-list li .notification {
    top: 36px;
    left: 2px;
  }

  div#genNotifications {
    bottom: unset !important;
    z-index: 99999;
    top: 5% !important;
    width: 45% !important;
    /* display: table-footer-group; */
    min-width: 10px !important;
    right: 12px !important;
    height: auto;
  }

  .navbar-brand {
    height: 80px !important;
    width: 225px !important;
  }

  nav.navbar {
    /* box-shadow: 0px 3px 6px #e0e0e0; */
    padding: 10px 0px !important;
    border-bottom: 1px solid gainsboro;
    z-index: 1000;
  }

  .hero-form {
    margin: 55px;
    position: relative;
  }
  .listings-header .hero-form {
    padding: 10px 0px !important;
  }
  .hero-content {
    margin-top: 15px;
  }

  .hero-content h1 {
    font-size: 2.3rem !important;
  }
}
