/* animation.css */
@keyframes loader-spinner {
  0% {
    opacity: 1;
  }

  100% {
    opacity: 0;
  }
}

/* auth.css */
.auth-main {
  margin-top: 0px;
}

.auth.signin {
  background: var(--primary);
}

/* .auth.signin-email.forgot-pass {
  background-color: var(--primary);
} */

.auth .heading {
  padding: 55px 18px 55px 18px;
  text-align: center;
}

.auth.signin-email .heading {
  padding: 0 16px 32px 16px;
}

.auth .heading h2 {
  padding-bottom: 8px;
  font-size: 28px;
  font-weight: 800;
  color: white;
}

.auth.signin .heading h2 {
  color: white;
}

.auth .heading p {
  font-size: 16px;
  font-weight: 500;
  color: var(--gray-80);
}

.auth .heading p span {
  color: var(--primary-text);
}

.auth.signin .heading p {
  color: white;
}

.auth .page-title button {
  height: 48px;
  width: 48px;
  background: var(--gray-20);
}

.auth .page-title h3 {
  font-weight: 700;
  font-size: 18px;
  color: var(--primary-text);
}

.auth .form-area {
  border-top-left-radius: 30px;
  border-top-right-radius: 30px;
}

.auth .auth-form {
  height: 100%;
  padding: 90px 24px 90px 24px;
  background: white;
}
.auth .basic-form {
  height: 100%;
  padding: 20px 24px;
  background: white;
}

.auth.signin-email .auth-form {
  border-top-left-radius: 30px;
  border-top-right-radius: 30px;
}

.appbar h2 {
  color: #fff;
  font-weight: 800;
  font-size: 25px;
}

.auth .auth-form label {
  display: block;
  margin-bottom: 8px;
  font-size: 16px;
  font-weight: 500;
  color: var(--gray-70);
  text-align: left;
}
.auth .basic-form label {
  display: block;
  margin-bottom: 8px;
  font-size: 16px;
  font-weight: 500;
  color: var(--gray-70);
  text-align: left;
}

.auth .auth-form .eye-btn {
  position: absolute;
  top: 50%;
  transform: translateY(-50%);
  right: 12px;
}

.auth .auth-form .checkbox-label {
  margin-bottom: 0;
  font-weight: 600;
}

.auth .auth-form .input-psswd {
  padding-right: 48px;
}

.auth .auth-form .input-field-checkbox {
  accent-color: var(--primary);
}

.auth .auth-form .forgot-pass {
  color: var(--alert);
}

.auth .auth-form .btn-primary {
  margin-top: 32px;
}

.auth .divider {
  margin: 32px 0;
}

.auth .divider span {
  width: 62px;
  height: 1px;
  background: var(--additional1);
}

.auth .divider small {
  font-size: 14px;
  font-weight: 600;
  color: var(--additional1);
}

.auth .social-btn {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 100%;
  border-radius: 24px;
  padding: 15px;
  border: 1px solid var(--primary-text);
  gap: 12px;
  font-size: 16px;
  font-weight: 600;
  color: var(--primary-text);
}

.auth h6 {
  font-size: 16px;
  font-weight: 600;
  color: var(--additional1);

  margin-top: 20px;
}

.auth h6 button,
.auth h6 a {
  color: var(--primary);
  font-weight: 600;
}

.auth .digit-group {
  display: flex;
  align-items: center;
  justify-content: space-around;
}

.auth .digit-group input {
  width: 56px;
  height: 56px;
  border: 1px solid var(--primary);
  border-radius: 24px;
  text-align: center;
  font-size: 24px;
  font-weight: 700;
  color: var(--primary-text);
  caret-color: var(--primary);
}

.auth.enter-otp .auth-form .btn-primary {
  margin-top: 40px;
}

.select-lang .arrow {
  position: absolute;
  top: 50%;
  transform: translateY(-50%);
  right: 12px;
}

.loginSuccessModal .modal-content {
  border-radius: 16px;
  padding: 28px 10px;
}

.loginSuccessModal .modal-body {
  padding: 0 16px;
}

.loginSuccessModal .modal-body img {
  margin-bottom: 40px;
}

.loginSuccessModal .modal-body h3 {
  font-size: 24px;
  font-weight: 700;
  color: var(--primary-text);
}

.loginSuccessModal .modal-body p {
  font-size: 14px;
  font-weight: 500;
  color: var(--additional1);
  padding-top: 8px;
}

.loginSuccessModal .modal-body button {
  margin-top: 30px;
}

.languageModal ul li:not(:last-child) {
  margin-bottom: 16px;
}

.languageModal .lang-container {
  display: block;
  position: relative;
  padding: 12px 16px 12px 56px;
  cursor: pointer;
  font-size: 16px;
  -webkit-user-select: none;
  -moz-user-select: none;
  -ms-user-select: none;
  user-select: none;
  font-weight: 600;
  background: var(--secondary);
  color: var(--primary-text);
  border: 1px solid var(--gray-30);
  border-radius: 24px;
}

.languageModal .lang-container:has(input:checked) {
  border-color: var(--primary);
}

.languageModal .lang-container input {
  position: absolute;
  opacity: 0;
  cursor: pointer;
}

.languageModal .checkmark {
  position: absolute;
  top: 12px;
  left: 16px;
  height: 24px;
  width: 24px;
  background-color: transparent;
  border-radius: 50%;
  border: 1px solid var(--gray-30);
}

.languageModal .lang-container input:checked ~ .checkmark {
  background-color: var(--primary);
  border-color: var(--primary);
}

.languageModal .checkmark:after {
  content: "";
  position: absolute;
  display: none;
  top: 4px;
  left: 4px;
  width: 14px;
  height: 14px;
  background: url("../svg/check-white.svg") no-repeat center;
  background-size: contain;
}

.languageModal .lang-container input:checked ~ .checkmark:after {
  display: block;
}

.languageModal .modal-header {
  display: grid;
  grid-template-columns: repeat(6, 1fr);
  padding: 16px 24px 32px 24px;
  border: 0;
}

.languageModal .modal-header .modal-close {
  background: rgba(18, 18, 18, 0.08);
  height: 48px;
  width: 48px;
}

.languageModal .modal-header .modal-title {
  grid-column: span 4;
  text-align: center;
  font-size: 18px;
  font-weight: 700;
  color: var(--primary-text);
}

.languageModal .modal-body {
  padding: 0 24px 24px 24px;
}

/*===========================================================
04: dark-mode CSS
=============================================================*/
.dark-mode .auth .page-title h3,
.dark-mode .auth .heading h2,
.dark-mode .loginSuccessModal .modal-body h3,
.dark-mode .languageModal .modal-header .modal-title {
  color: white;
}

.dark-mode .languageModal .modal-header .modal-close,
.dark-mode .auth .page-title button {
  background: rgba(255, 255, 255, 0.2);
}

.dark-mode .languageModal .modal-header .modal-close img,
.dark-mode .auth .page-title button img {
  filter: brightness(0) saturate(100%) invert(100%) sepia(0%) saturate(7500%)
    hue-rotate(322deg) brightness(102%) contrast(102%);
}

.dark-mode .languageModal .lang-container,
.dark-mode .auth .digit-group input {
  background: var(--gray-80);
  color: white;
  caret-color: white;
}

/* bo0oking.css */
/* section -title */
.booking-main .title h4 {
  font-size: 18px;
  font-weight: 700;
  color: var(--primary-text);
}

.booking-main .sub-title h4 {
  font-size: 14px;
  font-weight: 700;
  color: var(--primary-text);
}

/*===========================================================
02: customer-info CSS
=============================================================*/
.customer-info ul li:not(:last-child) {
  margin-bottom: 16px;
}

.customer-info ul li p {
  font-size: 15px;
  font-weight: 500;
  color: var(--secondary-text);
}

.customer-info ul li p:last-child {
  color: var(--primary-text);
}

/*===========================================================
03: order-info CSS
=============================================================*/
/* 3.1: order-item */
.order-info .item .image {
  width: 107px;
  height: 82px;
}

.order-info .content h4 {
  font-size: 16px;
  font-weight: 700;
  color: var(--primary-text);
}

.order-info .content .rating {
  font-size: 12px;
  font-weight: 600;
  color: var(--warning);
}

.order-info .content .rating span {
  color: var(--secondary-text);
}

.order-info .content .location {
  color: var(--gray-90);
  font-size: 12px;
  font-weight: 500;
}

/* 3.2: inputs */
.order-info h6 {
  font-size: 14px;
  font-weight: 500;
  color: var(--gray-70);
}

.order-info .input-field {
  border-radius: 24px;
}

.order-info .border-b {
  border-bottom: 1px solid var(--additional2);
}

.order-info .border-t {
  border-top: 1px solid var(--additional2);
}

/* 3.3: order-info room-type */
.order-info .room-type p {
  font-size: 16px;
  font-weight: 500;
  color: var(--secondary-text);
}

.order-info .room-type p:last-child {
  color: var(--primary-text);
}

/* 3.4: price */
.order-info .price p {
  font-size: 16px;
  font-weight: 500;
  color: var(--gray-70);
}

.order-info .price p span {
  font-size: 20px;
  font-weight: 700;
  color: var(--primary-text);
}

/* 3.5: promo price */
.order-info .promo-price p span {
  color: var(--alert);
}

.order-info .promo-code .input-area {
  padding: 8px 10px;
  border-radius: 100px;
  background: var(--additional4);
}

.order-info .promo-code input {
  background: transparent;
  height: 30px;
  font-size: 14px;
  font-weight: 500;
  color: var(--primary-text);
}

.order-info .promo-code input::placeholder {
  font-size: 14px;
  font-weight: 500;
  color: var(--gray-60);
}

.order-info .promo-code button {
  line-height: 30px;
  border-radius: 32px;
  background: var(--primary);
  color: white;
  font-size: 14px;
  font-weight: 600;
  padding: 0 36px;
}

/* 3.6: payment-method */
.payment-method .pay-card-container {
  position: relative;
  padding-left: 30px;
  padding-right: 50px;
  cursor: pointer;
  height: 67px;
  font-size: 12px;
  -webkit-user-select: none;
  -moz-user-select: none;
  -ms-user-select: none;
  user-select: none;
  font-weight: 600;
  background: #fefefe;
  color: var(--primary-text);
  border: 1px solid var(--additional2);
  border-radius: 10px;
}

.payment-method .pay-card-container:has(input:checked) {
  border-color: var(--primary);
}

.payment-method .pay-card-container input {
  position: absolute;
  opacity: 0;
  cursor: pointer;
}

.payment-method .checkmark {
  position: absolute;
  top: 50%;
  transform: translateY(-50%);
  right: 18px;
  height: 24px;
  width: 24px;
  background-color: transparent;
  border-radius: 50%;
  border: 1px solid var(--gray-30);
}

.payment-method .pay-card-container input:checked ~ .checkmark {
  background-color: var(--primary);
  border-color: var(--primary);
}

.payment-method .checkmark:after {
  content: "";
  position: absolute;
  display: none;
  top: 4px;
  left: 4px;
  width: 14px;
  height: 14px;
  background: url("../svg/check-white.svg") no-repeat center;
  background-size: contain;
}

.payment-method .pay-card-container input:checked ~ .checkmark:after {
  display: block;
}

/*===========================================================
04: book-hotel CSS
=============================================================*/
.checkout-hotel .details-body,
.book-hotel .details-body {
  padding: 0 24px 32px 24px;
}

/* search */
.search .grid {
  display: grid;
  grid-template-columns: repeat(2, 1fr);
  gap: 16px;
}

.search p {
  font-size: 14px;
  font-weight: 500;
  color: var(--secondary-text);
}

/*===========================================================
05: order success modal CSS
=============================================================*/
.orderSuccessModal .modal-body {
  padding: 28px 26px;
}

.orderSuccessModal .modal-body h3 {
  font-size: 24px;
  font-weight: 700;
  color: var(--primary-text);
}

.orderSuccessModal .modal-body p {
  font-size: 14px;
  font-weight: 500;
  color: var(--additional1);
}

/*===========================================================
06: dark-mode CSS
=============================================================*/
.dark-mode .booking-main .title h4,
.dark-mode .customer-info ul li p:last-child,
.dark-mode .order-info .content h4,
.dark-mode .order-info .price p span,
.dark-mode .booking-main .sub-title h4,
.dark-mode .order-info .promo-code input,
.dark-mode .orderSuccessModal .modal-body h3 {
  color: white;
}

.dark-mode .order-info .content .location {
  color: var(--secondary-text);
}

.dark-mode .payment-method .pay-card-container {
  background: var(--gray-90);
  color: white;
}

.dark-mode .order-info .promo-code .input-area {
  background: var(--gray-80);
}

/* chat.css */

.message .single-chat .image {
  width: 56px;
  height: 56px;
}

.message-main .message-search .input-field {
  padding: 0;
}

.message .single-chat .single-main {
  padding: 16px 24px;
  background: white;
}

.message .single-chat .single-main.active {
  box-shadow: 0px 4px 32px 0px rgba(31, 44, 55, 0.08);
  position: relative;
  z-index: 10;
}

.message .single-chat .image .active-dot {
  display: inline-block;
  height: 16px;
  width: 16px;
  border: 1px solid white;
  background: var(--success);
  border-radius: 50%;
  position: absolute;
  bottom: 0;
  right: 0;
  z-index: 10;
}

.message .single-chat h4 {
  font-size: 18px;
  font-weight: 600;
  color: var(--primary-text);
}

.message .single-chat p {
  font-size: 14px;
  font-weight: 500;
  color: var(--additional1);
  padding-top: 4px;
}

.message .single-chat h5 {
  font-size: 12px;
  font-weight: 600;
  color: var(--additional1);
}

.message .single-chat span {
  height: 24px;
  width: 24px;
  background: var(--primary);
  font-size: 10px;
  line-height: 24px;
  font-weight: 600;
  color: white;
}

.message .single-chat .trash {
  width: 84px;
  height: 88px;
  background: #fff5f5;
  position: absolute;
  top: 0;
  right: 24px;
  z-index: -1;
}

.add-chat {
  height: 50px;
  width: 50px;
  background: var(--primary-text);
  filter: drop-shadow(5px 5px 40px rgba(0, 0, 0, 0.25));
  position: fixed;
  right: 24px;
  bottom: 80px;
  z-index: 90;
}

/*===========================================================
02: chat CSS
=============================================================*/
.chat .page-title .more-btn {
  height: 48px;
  width: 48px;
}

.chat .dropdown-menu {
  border: 0;
  padding: 16px;
  filter: drop-shadow(0px 0px 64px rgba(23, 23, 37, 0.12));
  background: white;
  border-radius: 8px;
  position: relative;
}

.chat .dropdown-menu::after {
  content: "";
  height: 12px;
  width: 12px;
  background: white;
  border-radius: 4px;
  position: absolute;
  right: 16px;
  top: -4px;
  transform: rotate(45deg);
}

.chat .dropdown-menu li:not(:last-child) {
  margin-bottom: 16px;
}

.chat .dropdown-item {
  display: flex;
  align-items: center;
  gap: 8px;
  font-size: 14px;
  font-weight: 600;
  color: var(--primary-text);
  padding: 0;
}

.chat .dropdown-menu li:last-child .dropdown-item {
  color: var(--primary);
}

/*===========================================================
03: inbox CSS
=============================================================*/
.inbox {
  height: calc(100vh - 214px);
  overflow-y: auto;
}

.inbox ul {
  display: flex;
  flex-direction: column;
  gap: 24px;
}

.inbox .avatar {
  width: 32px;
  height: 32px;
}

.inbox .avatar .active-dot {
  width: 8px;
  height: 8px;
  border: 1px solid white;
  background: var(--primary);
  position: absolute;
  bottom: 0;
  right: 0;
  z-index: 10;
}

.inbox .text {
  max-width: 203px;
}

.inbox .text .msg {
  width: 100%;
  padding: 12px;
  background: #f6f6f6;
  border-radius: 24px 24px 24px 0;
  font-size: 14px;
  font-weight: 500;
  color: var(--additional1);
}

.inbox .right .text .msg {
  background: var(--primary);
  border-radius: 24px 24px 0 24px;
  color: white;
  text-align: right;
}

.inbox .text .time {
  font-size: 10px;
  font-weight: 500;
  color: var(--gray-60);
}

.inbox .right .text .time {
  text-align: end;
}

/*===========================================================
04: type-msg CSS
=============================================================*/
.type-msg {
  padding: 24px 24px 36px 24px;
}

.type-msg .type-main {
  background: var(--secondary);
  border: 1px solid var(--additional2);
  border-radius: 32px;
  padding: 7px 10px 7px 16px;
}

.type-msg .input-file-label input {
  opacity: 0;
  position: absolute;
  height: 0;
  width: 0;
}

.type-msg .input-file-label span {
  height: 32px;
  width: 32px;
  background: white;
}

.type-msg .input-msg {
  width: 100%;
  height: 20px;
  font-size: 12px;
  color: var(--primary-text);
  padding-left: 14px;
  border-left: 1px solid var(--additional2);
  background: transparent;
}

.type-msg .input-msg::placeholder {
  font-size: 12px;
  color: var(--gray-80);
}

.type-msg button {
  height: 42px;
  width: 42px;
  background: var(--primary);
}

/*===========================================================
05: video-call CSS
=============================================================*/
.video-call {
  height: calc(100vh - 92px);
  border-bottom-left-radius: 50px;
  border-bottom-right-radius: 50px;
  overflow: hidden;
  position: relative;
}

.video-call .img-main {
  height: 50%;
  width: 100%;
}

.call-info {
  position: absolute;
  bottom: 26px;
  left: 24px;
  right: 24px;
  z-index: 20;
}

.call-info .call-info-main {
  background: var(--primary-text);
  border-radius: 50px;
  padding: 12px 24px;
}

.call-info .image {
  height: 45px;
  width: 45px;
}

.call-info h5 {
  font-size: 14px;
  font-weight: 700;
  color: #fefefe;
}

.call-info p {
  font-size: 12px;
  color: var(--gray-40);
}

.call-info .dot {
  height: 9px;
  width: 9px;
  background: var(--alert);
}

.call-info .time {
  font-weight: 500;
  color: var(--gray-30);
}

/*===========================================================
06: action CSS
=============================================================*/
.action {
  padding: 22px 46px;
}

.action ul a,
.action ul button {
  height: 48px;
  width: 48px;
  background: var(--gray-30);
}

.action ul a.call,
.action ul button.call {
  background: var(--alert);
}

/*===========================================================
07: audio-call CSS
=============================================================*/
.audio-call {
  height: 100vh;
  width: 100%;
}

.audio-call .call-info {
  bottom: 40px;
}

.audio-call .page-title {
  display: block;
  position: absolute;
  top: 0;
  left: 0;
  z-index: 20;
  background: transparent;
}

.audio-call .page-title .back-btn {
  background: rgba(255, 255, 255, 0.56);
}

.audio-call .call-info a,
.audio-call .call-info button {
  height: 60px;
  width: 60px;
  background: white;
  position: relative;
  z-index: 20;
}

.audio-call .call-info a.call,
.audio-call .call-info button.call {
  height: 70px;
  width: 70px;
  background: var(--alert);
  margin: auto;
}

.audio-call .call-info .btns {
  margin-top: -12px;
  margin-bottom: 32px;
}

/*===========================================================
08: dark-mode CSS
=============================================================*/
.dark-mode .message .single-chat .single-main {
  background: var(--gray-100);
}

.dark-mode .message .single-chat h4,
.dark-mode .type-msg .input-msg,
.dark-mode .chat .dropdown-item {
  color: white;
}

.dark-mode .message .single-chat p,
.dark-mode .message .single-chat h5,
.dark-mode .type-msg .input-msg::placeholder {
  color: var(--gray-40);
}

.dark-mode .add-chat,
.dark-mode .type-msg .type-main,
.dark-mode .chat .dropdown-menu,
.dark-mode .chat .dropdown-menu::after,
.dark-mode .action ul a,
.dark-mode .action ul button {
  background: var(--gray-80);
}

.dark-mode .inbox .text .msg {
  background: var(--gray-90);
  color: white;
}

.dark-mode .inbox .right .text .msg {
  background: var(--primary);
}

.dark-mode .chat .page-title .more-btn img,
.dark-mode .chat .dropdown-menu li:first-child .dropdown-item img,
.dark-mode .action ul a img,
.dark-mode .action ul button img {
  filter: brightness(0) saturate(100%) invert(100%) sepia(0%) saturate(7500%)
    hue-rotate(322deg) brightness(102%) contrast(102%);
}

.dark-mode .action ul a.call,
.dark-mode .action ul button.call {
  background: var(--alert);
}

/* common.css */

@import url("https://fonts.googleapis.com/css2?family=Plus+Jakarta+Sans:ital,wght@0,200;0,300;0,400;0,500;0,600;0,700;0,800;1,200;1,300;1,400;1,500;1,600;1,700;1,800&display=swap");

/* 1.1: Variables */
:root {
  --primary: #153d77;

  --secondary: #f6f8fe;
  --primary-text: #111111;
  --secondary-text: #78828a;
  --sky: #3ba5fa;
  --success: #00c566;
  --alert: #e53935;
  --warning: #facc15;
  --additional1: #6c6c6c;
  --additional2: #e3e7ec;
  --additional3: #f7f7f7;
  --additional4: #e9ebed;
  --additional5: #ff784b;
  --gray-10: #fdfdfd;
  --gray-20: #ecf1f6;
  --gray-30: #e3e9ed;
  --gray-40: #d1d8dd;
  --gray-50: #bfc6cc;
  --gray-60: #9ca4ab;
  --gray-70: #78828a;
  --gray-80: #66707a;
  --gray-90: #434e58;
  --gray-100: #171725;
}

/* 1.2: Common CSS */
body {
  width: 100%;
  max-width: 100%;
  font-family: "Plus Jakarta Sans", sans-serif;
}

body.dark-mode {
  background: var(--gray-100);
}

html {
  scroll-behavior: smooth;
}

* {
  margin: 0;
  padding: 0;
}

h1,
h2,
h3,
h4,
h5,
h6,
p,
a,
ul,
ol,
figure {
  margin: 0;
  padding: 0;
}

ul li,
ol li {
  list-style: none;
}

a,
p,
i,
h1,
h2,
h3,
h4,
h5,
h6 {
  text-decoration: none;
  -webkit-transition: all linear 0.3s;
  -moz-transition: all linear 0.3s;
  -ms-transition: all linear 0.3s;
  -o-transition: all linear 0.3s;
  transition: all linear 0.3s;
}

a:hover,
a:focus {
  text-decoration: none;
  outline: none;
}

button {
  outline: none;
  border: 0;
  cursor: pointer;
  background: transparent;
  -webkit-transition: all linear 0.3s;
  -moz-transition: all linear 0.3s;
  -ms-transition: all linear 0.3s;
  -o-transition: all linear 0.3s;
  transition: all linear 0.3s;
}

textarea:focus,
input:focus,
button:focus {
  outline: none;
}

img {
  max-width: 100%;
  max-height: 100%;
  height: auto;
}

textarea,
select,
input {
  border: 0;
  outline: none;
}

a,
a:hover,
a:active,
a:focus {
  text-decoration: none;
  outline: none;
}

::-moz-selection {
  color: white;
  background: var(--primary);
}

::selection {
  color: white;
  background: var(--primary);
}

.scroll-lock {
  overflow: hidden;
}

.shrink-0 {
  flex-shrink: 0;
}

.flex-grow {
  flex-grow: 1;
}

.backface-hidden {
  backface-visibility: hidden;
}

.w-fit {
  width: fit-content;
}

/*===========================================================
02: custom scrollbar CSS
=============================================================*/
.custom-scrollbar::-webkit-scrollbar {
  width: 5px;
}

.custom-scrollbar::-moz-scrollbar {
  width: 5px;
}

.custom-scrollbar::-webkit-scrollbar-track {
  background-color: var(--gray-bg);
}

.custom-scrollbar::-moz-scrollbar-track {
  background-color: var(--gray-bg);
}

.custom-scrollbar::-webkit-scrollbar-thumb {
  background: var(--primary);
}

.custom-scrollbar::-moz-scrollbar-thumb {
  background: var(--primary);
}

/* scrollbar hide */
body::-webkit-scrollbar,
.scrollbar-hidden::-webkit-scrollbar {
  display: none;
  width: 0;
  scrollbar-width: none;
}

body,
.scrollbar-hidden {
  scrollbar-width: none;
}

/*===========================================================
03: button CSS
=============================================================*/
.btn-primary {
  display: block;
  text-align: center;
  padding: 16px 0;
  color: white;
  font-size: 16px;
  font-weight: 600;
  background: #153d77;
  width: 100%;
  border-radius: 24px;
}

.btn-primary:disabled {
  color: var(--gray-60);
  background: var(--gray-20);
}

.btn-primary-outline {
  width: 100%;
  text-align: center;
  padding: 16px 24px;
  border: 1px solid var(--primary);
  color: var(--primary);
  font-size: 16px;
  font-weight: 500;
  border-radius: 32px;
}

.btn-primary-outline:disabled {
  border-color: var(--gray-60);
}

/*===========================================================
04: padding CSS
=============================================================*/
.pt-04 {
  padding-top: 4px;
}

.pb-8 {
  padding-bottom: 8px;
}

.pt-8 {
  padding-top: 8px;
}

.pt-12 {
  padding-top: 0px;
}

.pt-16 {
  padding-top: 16px;
}

.pt-30 {
  padding-top: 30px;
}

.pt-32 {
  padding-top: 32px;
}

.pb-30 {
  padding-bottom: 30px;
}

.pb-20 {
  padding-bottom: 15px;
}

.pb-12 {
  padding-bottom: 12px;
}

.pb-16 {
  padding-bottom: 16px;
}

.pb-32 {
  padding-bottom: 32px;
}

.py-12 {
  padding-top: 0px;
  padding-bottom: 0px;
}

.py-16 {
  padding-top: 16px;
  padding-bottom: 16px;
}

.py-32 {
  padding-top: 32px;
  padding-bottom: 32px;
}

.py-36 {
  padding-top: 36px;
  padding-bottom: 36px;
}

.pb-36 {
  padding-bottom: 36px;
}

.px-24 {
  padding-left: 24px;
  padding-right: 24px;
}

.py-24 {
  padding-top: 24px;
  padding-bottom: 24px;
}

.p-24 {
  padding: 24px;
}

.p-16 {
  padding: 16px;
}

.pt-24 {
  padding-top: 0px;
}

.pb-24 {
  padding-bottom: 0px;
}

/*===========================================================
05: margin CSS
=============================================================*/
.mb-04 {
  margin-bottom: 4px;
}

.mt-24 {
  margin-top: 24px;
}

.mx-24 {
  margin-left: 24px;
  margin-right: 24px;
}

.mt-32 {
  margin-top: 32px;
}

.mb-16 {
  margin-bottom: 16px;
}

.mb-32 {
  margin-bottom: 32px;
}

.mt-16 {
  margin-top: 6px;
}

.mt-04 {
  margin-top: 4px;
}
.mt-0 {
  margin-top: 0;
}
.mb-0 {
  margin-bottom: 0;
}
.mb-8 {
  margin-bottom: 8px;
}

.mt-64 {
  margin-top: 0px;
}

.mt-24 {
  margin-top: 24px;
}

.mb-24 {
  margin-bottom: 24px;
}
.mb-18 {
  margin-bottom: 18px;
}

/*===========================================================
06: font-size CSS
=============================================================*/

.fs-12 {
  font-size: 12px;
}

.fs-13 {
  font-size: 13px;
}

.fs-14 {
  font-size: 14px;
}

.fs-15 {
  font-size: 15px;
}

.fs-16 {
  font-size: 16px;
}

.fs-18 {
  font-size: 18px;
}

.fs-20 {
  font-size: 20px;
}

.fs-22 {
  font-size: 22px;
}

.fs-24 {
  font-size: 24px;
}

.fs-26 {
  font-size: 26px;
}

.fs-28 {
  font-size: 28px;
}

.fs-30 {
  font-size: 30px;
}

.fs-32 {
  font-size: 32px;
}

.fs-34 {
  font-size: 34px;
}

.fs-36 {
  font-size: 36px;
}

.fs-38 {
  font-size: 38px;
}

.fs-40 {
  font-size: 40px;
}

/*===========================================================
07: font-weight CSS
=============================================================*/
.fw-200 {
  font-weight: 200;
}

.fw-300 {
  font-weight: 300;
}

.fw-400 {
  font-weight: 400;
}

.fw-500 {
  font-weight: 500;
}

.fw-600 {
  font-weight: 600;
}

.fw-700 {
  font-weight: 700;
}

.fw-800 {
  font-weight: 800;
}

/*===========================================================
08: radius CSS
=============================================================*/
.rounded-full {
  border-radius: 50%;
}

.radius-4 {
  border-radius: 4px;
}

.radius-6 {
  border-radius: 6px;
}

.radius-8 {
  border-radius: 8px;
}

.radius-10 {
  border-radius: 10px;
}

.radius-12 {
  border-radius: 12px;
}

.radius-14 {
  border-radius: 14px;
}

.radius-16 {
  border-radius: 16px;
}

.radius-18 {
  border-radius: 18px;
}

.radius-20 {
  border-radius: 20px;
}

.radius-22 {
  border-radius: 22px;
}

.radius-24 {
  border-radius: 24px;
}

.radius-26 {
  border-radius: 26px;
}

.radius-28 {
  border-radius: 28px;
}

.radius-30 {
  border-radius: 30px;
}

/*===========================================================
09: gap CSS
=============================================================*/
.gap-04 {
  gap: 4px;
}

.gap-6 {
  gap: 6px;
}

.gap-8 {
  gap: 8px;
}

.gap-10 {
  gap: 10px;
}

.gap-12 {
  gap: 12px;
}

.gap-14 {
  gap: 14px;
}

.gap-16 {
  gap: 2px;
}

.gap-18 {
  gap: 18px;
}

.gap-20 {
  gap: 20px;
}

.gap-22 {
  gap: 22px;
}

.gap-24 {
  gap: 24px;
}

/*===========================================================
10: page-title CSS
=============================================================*/
.page-title {
  display: grid;
  grid-template-columns: repeat(6, 1fr);
  padding: 16px 24px 19px 24px;
  border: 0;
  align-items: center;
  background: white;
  position: sticky;
  top: 0;
  left: 0;
  width: 100%;
  z-index: 50;
}

.page-title .back-btn {
  background: rgba(18, 18, 18, 0.08);
  height: 48px;
  width: 48px;
}

.page-title .main-title {
  grid-column: span 4;
  text-align: center;
  font-size: 18px;
  font-weight: 700;
  color: var(--primary-text);
}

/*===========================================================
11: input-field CSS
=============================================================*/
.input-field {
  width: 100%;
  height: 52px;
  background: var(--secondary);
  padding: 0 16px;
  border-radius: 16px;
  color: var(--primary-text);
  font-size: 16px;
  font-weight: 500;
}

.input-field::placeholder {
  font-size: 16px;
  font-weight: 500;
  color: var(--gray-60);
}

/*===========================================================
12: custom-pagination CSS
=============================================================*/
.custom-pagination .swiper-pagination-bullet {
  height: 8px;
  width: 8px;
  border-radius: 8px;
  background: var(--gray-40);
  opacity: 1;
  transition: all linear 0.3s;
}

.custom-pagination .swiper-pagination-bullet-active {
  width: 24px;
  background: var(--primary);
}

/*===========================================================
13: modal CSS
=============================================================*/
.bottomModal .modal-dialog {
  margin: 0;
  max-width: 100%;
  display: flex;
  align-items: flex-end;
  height: 100%;
}

.bottomModal .modal-content {
  border-radius: 16px 16px 0 0;
}

.bottomModal .modal-body {
  padding: 0 24px 45px 24px;
}

.bottomModal .modal-header {
  display: grid;
  grid-template-columns: repeat(6, 1fr);
  padding: 16px 24px 32px 24px;
  border: 0;
}

.bottomModal .modal-header .modal-close {
  background: rgba(18, 18, 18, 0.08);
  height: 40px;
  width: 40px;
}

.bottomModal .modal-header .modal-title {
  grid-column: span 4;
  text-align: center;
  font-size: 20px;
  font-weight: 600;
  color: var(--primary-text);
}

/*===========================================================
14: modal-bg CSS
=============================================================*/
.modal .modal-content {
  border: 0;
}

.modalBg {
  background: rgba(255, 255, 255, 0.3);
  backdrop-filter: blur(3px);
}

/*===========================================================
15: search CSS
=============================================================*/
.search label,
.search .form-inner,
.search .message-search,
.search .help-search {
  background: var(--secondary);
  padding: 0 16px;
}

.search .form-inner input,
.search label input {
  padding: 0;
}

.search .filter {
  padding-left: 8px;
  border-left: 1px solid var(--additional2);
}

/*===========================================================
16: bottom-nav CSS
=============================================================*/
.bottom-nav {
  position: fixed;
  bottom: 0;
  left: 0;
  right: 0;
  width: 100%;
  height: 65px;
  z-index: 40;
  background-color: #e4e9f7;
  padding: 0px 0px;
}

/*===========================================================
17: place-card CSS
=============================================================*/
.place-card .image span {
  height: 28px;
  width: 28px;
  background: white;
  position: absolute;
  top: 13px;
  right: 8px;
}

.place-card .content {
  margin-top: 8px;
}

.place-card .content h4 {
  font-size: 14px;
  color: var(--primary-text);
  font-weight: 600;
  padding-bottom: 4px;
}

.place-card .content .location {
  font-size: 10px;
  font-weight: 500;
  color: var(--secondary-text);
}

.place-card .content .price {
  margin-top: 8px;
}

.place-card .content .price h3 {
  font-size: 14px;
  color: var(--primary-text);
  font-weight: 700;
}

.place-card .content .price p {
  font-size: 12px;
  font-weight: 600;
  color: var(--warning);
}

.place-card .content .price p span {
  color: var(--secondary-text);
}

/*===========================================================
18: guide CSS
=============================================================*/
.guide .all-cards {
  overflow-x: auto;
}

.guide .item .image {
  width: 88px;
  height: auto;
}

.guide .item .image .guide-img {
  width: 100%;
  height: 88px;
}

.guide .item .rating {
  padding: 5px 12px;
  background: var(--primary-text);
  border-radius: 50px;
  margin: -15px auto 0 auto;
  position: relative;
  z-index: 10;
}

.guide .item .rating span {
  font-size: 12px;
  font-weight: 600;
  color: white;
}

.guide .item .content h4 {
  font-size: 16px;
  font-weight: 700;
  color: var(--primary-text);
}

.guide .item .content h5 {
  font-size: 12px;
  font-weight: 600;
  color: var(--secondary-text);
  padding-top: 8px;
  padding-bottom: 16px;
}

.guide .item .content .location {
  font-size: 12px;
  font-weight: 500;
  color: var(--gray-90);
}

/*===========================================================
19: details-body CSS
=============================================================*/

.details-body .title {
  margin-bottom: 5px;
}

.details-body .title h4 {
  font-size: 16px;
  font-weight: 700;
  color: var(--primary-text);
}

.details-body .title button,
.details-body .title a {
  font-size: 14px;
  font-weight: 500;
  color: var(--primary);
}

/*===========================================================
20: facilities CSS
=============================================================*/
.facilities .grid {
  display: grid;
  grid-template-columns: repeat(4, 1fr);
}

.facilities .item .icon {
  height: 56px;
  width: 56px;
  background: var(--secondary);
  margin: auto;
}

.facilities .item p {
  padding-top: 4px;
  font-size: 12px;
  font-weight: 500;
  color: var(--gray-70);
}

/*===========================================================
21: date Modal CSS
=============================================================*/

.dateModal .modal-body .btns button {
  line-height: 52px;
  color: white;
  background: var(--primary);
  width: 100%;
  font-size: 14px;
  font-weight: 500;
}

.dateModal .modal-body .btns .cancel-btn {
  background: transparent;
  color: var(--alert);
}

.dateModal .modal-header {
  border: 0;
}

.dateModal .modal-header .modal-title {
  font-size: 18px;
  font-weight: 600;
  color: var(--primary-text);
}

/*===========================================================
22: filter Modal CSS
=============================================================*/

.filterModal .modal-body {
  padding-bottom: 24px;
}

.filterModal .content-title {
  padding-bottom: 16px;
  font-size: 16px;
  font-weight: 600;
  color: var(--primary-text);
}

.filterModal .filter-range input {
  width: 110px;
  padding: 6px 0;
  border-radius: 16px;
  height: auto;
  border: 1px solid var(--additional2);
  background-color: transparent;
  text-align: center;
  font-size: 16px;
  font-weight: 700;
  color: var(--primary);
  outline: none;
}

.filterModal .filter-range .price-range {
  margin-top: 16px;
}

.filterModal .filter-range .ui-slider-handle {
  height: 16px;
  width: 16px;
  border-radius: 50%;
  background-color: var(--primary);
  border: 0;
  cursor: pointer;
  outline: none;
  top: -7px;
}

.filterModal .filter-range .ui-widget.ui-widget-content {
  border: none;
  height: 2px;
  background-color: var(--additional2);
  position: relative;
  border-radius: 22px;
}

.filterModal .filter-range .ui-slider-horizontal .ui-slider-range {
  background: var(--primary);
}

.filterModal .star-rating,
.filterModal .popular-filters {
  display: flex;
  flex-wrap: wrap;
  gap: 12px;
}

.filterModal .star-rating .filter-label,
.filterModal .popular-filters .filter-label {
  padding: 7px 15px;
  border: 1px solid var(--additional2);
  font-size: 12px;
  font-weight: 600;
  color: var(--primary-text);
  border-radius: 24px;
}

.filterModal .star-rating .filter-label input,
.filterModal .popular-filters .filter-label input {
  opacity: 0;
  visibility: hidden;
  position: absolute;
}

.filterModal .popular-filters .filter-label:has(input:checked) {
  color: var(--primary);
  border-color: var(--primary);
}

.filterModal .star-rating .filter-label:has(input:checked) {
  border-color: var(--warning);
}

.filterModal .apply-filter-btn {
  font-size: 14px;
  padding: 12px 0;
}

.filterModal .clear-all-btn {
  display: block;
  width: 100%;
  font-size: 16px;
  font-weight: 600;
  padding: 12px 0;
  text-align: center;
  color: var(--alert);
}

/*===========================================================
23: toggle-switch CSS
=============================================================*/

.toggle-switch {
  position: relative;
  display: inline-block;
  width: 44px;
  height: 24px;
}

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

.toggle-switch .slider {
  position: absolute;
  cursor: pointer;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  background-color: var(--gray-30);
  -webkit-transition: 0.4s;
  transition: 0.4s;
  border-radius: 34px;
}

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

.toggle-switch input:checked + .slider {
  background-color: var(--primary);
}

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

/*===========================================================
24: menu CSS
=============================================================*/
/* menu css */
.wrapper .menu {
  background: var(--primary);
  position: fixed;
  width: 100%;
  height: 55px;
  top: 0;
  left: 0;
  padding: 0 16px;
  display: flex;
  justify-content: space-between;
  -webkit-align-items: center;
  align-items: center;
  z-index: 110;
}

.wrapper .m-menu__checkbox {
  display: none;
}

.wrapper label.m-menu__toggle {
  cursor: pointer;
}

.wrapper .m-menu {
  position: fixed;
  top: 0;
  left: 0;
  max-width: 450px;
  width: calc(100vw - 30px);
  height: 100vh;
  -moz-transform: translate3d(-450px, 0, 0);
  -o-transform: translate3d(-450px, 0, 0);
  -ms-transform: translate3d(-450px, 0, 0);
  -webkit-transform: translate3d(-450px, 0, 0);
  transform: translate3d(-450px, 0, 0);
  -moz-transition: transform 0.35s;
  -o-transition: transform 0.35s;
  -webkit-transition: transform 0.35s;
  transition: transform 0.35s;
  z-index: 9999;
  overflow: hidden;
  background: white;
}

.wrapper .m-menu::-webkit-scrollbar {
  display: none;
}

.wrapper .m-menu.show {
  -moz-transform: translate3d(0, 0, 0);
  -o-transform: translate3d(0, 0, 0);
  -ms-transform: translate3d(0, 0, 0);
  -webkit-transform: translate3d(0, 0, 0);
  transform: translate3d(0, 0, 0);
}

.wrapper .m-menu__overlay {
  background: rgba(103, 103, 103, 0.5);
  position: fixed;
  top: 0;
  width: 100%;
  height: 100%;
  bottom: 0;
  z-index: 999;
  display: none;
}

.wrapper .m-menu__overlay.show {
  display: block;
}

.wrapper .btn-grp .mode-change input {
  opacity: 0;
  position: absolute;
}

.wrapper .btn-grp .mode-change .sun {
  display: none;
}

.wrapper .btn-grp .mode-change input:checked ~ .moon {
  display: none;
}

.wrapper .btn-grp .mode-change input:checked ~ .sun {
  display: block;
}

.wrapper .m-menu__header {
  padding: 16px;
  background: var(--primary);
  position: relative;
}

.wrapper .m-menu__header .m-menu__close {
  height: 36px;
  width: 36px;
  display: flex;
  align-items: center;
  justify-content: center;
  position: absolute;
  top: 50%;
  transform: translateY(-50%);
  right: 16px;
}

.wrapper ul .m-menu__header {
  display: grid;
  grid-template-columns: repeat(12, 1fr);
}

.wrapper .m-menu__header .m-menu__toggle {
  height: 36px;
  width: 36px;
}

.wrapper .m-menu__header .m-menu__header-title {
  font-size: 20px;
  font-weight: 600;
  color: white;
  grid-column: span 10;
  text-align: center;
  text-transform: capitalize;
}

.wrapper .m-menu__header .menu-user {
  display: flex;
  align-items: center;
  gap: 10px;
}

.wrapper .m-menu__header .menu-user img {
  height: 50px;
  width: 50px;
  border-radius: 50%;
  -webkit-border-radius: 50%;
  -moz-border-radius: 50%;
  -ms-border-radius: 50%;
  -o-border-radius: 50%;
}

.wrapper .m-menu__header .menu-user a {
  display: inline-block;
  font-size: 20px;
  line-height: 28px;
  color: white;
  text-transform: capitalize;
}

.wrapper .m-menu__header .menu-user h3 {
  font-size: 16px;
  line-height: 22px;
  color: white;
  display: flex;
  align-items: center;
}

.wrapper .m-menu .m-menu {
  -moz-transform: translate3d(480px, 0, 0);
  -o-transform: translate3d(480px, 0, 0);
  -ms-transform: translate3d(480px, 0, 0);
  -webkit-transform: translate3d(480px, 0, 0);
  transform: translate3d(480px, 0, 0);
}

.wrapper .m-menu ul {
  height: calc(100% - 85px);
  overflow-y: auto;
}

.wrapper .m-menu ul .menu-title {
  padding: 15px 15px 10px 15px;
  font-size: 16px;
  color: var(--primary-text);
  text-transform: capitalize;
  font-weight: 600;
}

.wrapper .m-menu ul::-webkit-scrollbar {
  display: none;
}

.wrapper .m-menu ul li a,
.wrapper .m-menu ul li .a-label__chevron {
  display: flex;
  align-items: center;
  justify-content: space-between;
  width: 100%;
  text-align: left;
  padding: 0 15px;
  line-height: 47px;
  text-decoration: none;
  color: var(--grey70);
  cursor: pointer;
  font-size: 16px;
  color: var(--primary-text);
  font-weight: 500;
  border-bottom: 1px solid #e8e8e8;
  position: relative;
  text-transform: capitalize;
}

.wrapper .m-menu ul li .a-label__chevron .icon,
.wrapper .m-menu ul li .icon {
  display: flex;
  align-items: center;
  justify-content: center;
  flex-shrink: 0;
  font-size: 14px;
  color: white;
  height: 30px;
  width: 30px;
  line-height: 30px;
  border-radius: 50%;
  -webkit-border-radius: 50%;
  -moz-border-radius: 50%;
  -ms-border-radius: 50%;
  -o-border-radius: 50%;
  background: var(--primary);
}

.wrapper .m-menu ul li .-invisible {
  border-bottom: 0;
}

.wrapper .m-menu .m-menu label.m-menu__toggle {
  display: -ms-flexbox;
  display: -webkit-box;
  display: -webkit-flex;
  display: flex;
  border-bottom: 0;
  padding: 0;
  -webkit-box-sizing: content-box;
  -moz-box-sizing: content-box;
  box-sizing: content-box;
}

.wrapper .m-menu .m-menu label.m-menu__toggle:after {
  display: none;
}

.wrapper .m-menu__checkbox:checked ~ .m-menu__overlay {
  display: block;
}

.wrapper .m-menu__checkbox:checked ~ .m-menu {
  -moz-transform: translate3d(0, 0, 0);
  -o-transform: translate3d(0, 0, 0);
  -ms-transform: translate3d(0, 0, 0);
  -webkit-transform: translate3d(0, 0, 0);
  transform: translate3d(0, 0, 0);
}

/*===============================================
25: main css 
================================================*/
/* appbar */
.appbar {
  text-align: center;
  background: var(--primary);
  padding: 12px;
  position: fixed;
  width: 100%;
  top: 0;
  left: 0;
  z-index: 999;
}

.appbar button,
.appbar a {
  background: transparent;
  text-transform: capitalize;
  font-size: 17px;
  color: white;
  display: flex;
  align-items: center;
}

.appbar .back-page-btn {
  position: absolute;
  top: 50%;
  transform: translateY(-50%);
  left: 15px;
}

.appbar h1 {
  font-size: 18px;
  color: white;
  text-transform: capitalize;
}

/* content */

.page-content {
  padding: 45px 15px 65px 15px;
}

.page-content .pages-title {
  padding: 15px 0 10px 0;
}

.page-content .pages-title h2 {
  font-size: 16px;
  color: var(--grey-40);
  line-height: 28px;
  text-transform: capitalize;
  font-weight: 600;
}

.page-content .page-list ul {
  background: var(--secondary);
  border-radius: 10px;
  -webkit-border-radius: 10px;
  -moz-border-radius: 10px;
  -ms-border-radius: 10px;
  -o-border-radius: 10px;
}

.page-content .page-list ul li {
  padding: 6px 15px;
  border-bottom: 1px solid var(--grey-10);
}

.page-content .page-list ul li:last-child {
  border: 0;
}

.page-content .page-list ul li a {
  font-size: 14px;
  line-height: 28px;
  font-weight: 500;
  text-transform: capitalize;
  color: var(--grey-70);
  display: flex;
  align-items: center;
  justify-content: space-between;
  position: relative;
}

.page-content .page-list ul li a .icon {
  display: flex;
  align-items: center;
  justify-content: center;
  height: 30px;
  width: 30px;
  border-radius: 50%;
  -webkit-border-radius: 50%;
  -moz-border-radius: 50%;
  -ms-border-radius: 50%;
  -o-border-radius: 50%;
  background: var(--primary);
}

/*===========================================================
26: dark-mode CSS
=============================================================*/
.dark-mode .wrapper .m-menu {
  background: var(--gray-100);
}

.dark-mode .page-content .page-list ul {
  background: var(--gray-80);
}

.dark-mode .page-title,
.dark-mode .bottom-nav,
.dark-mode .modal-content {
  background: var(--gray-100);
}

.dark-mode .wrapper .m-menu ul li a,
.dark-mode .wrapper .m-menu ul li .a-label__chevron,
.dark-mode .wrapper .m-menu ul .menu-title,
.dark-mode .page-content .pages-title h2,
.dark-mode .page-content .page-list ul li a,
.dark-mode .page-title .main-title,
.dark-mode .filterModal .content-title,
.dark-mode .filterModal .star-rating .filter-label,
.dark-mode .filterModal .popular-filters .filter-label,
.dark-mode .dateModal .modal-header .modal-title,
.dark-mode .bottomModal .modal-header .modal-title {
  color: white;
}

.dark-mode .page-title .back-btn,
.dark-mode .bottomModal .modal-header .modal-close {
  background: rgba(255, 255, 255, 0.2);
}

.dark-mode .search img,
.dark-mode .page-title .back-btn img,
.dark-mode .bottomModal .modal-header .modal-close img,
.dark-mode .wrapper .m-menu ul li a img,
.dark-mode .wrapper .m-menu ul li .a-label__chevron img,
.dark-mode .page-content .page-list ul li a img {
  filter: brightness(0) saturate(100%) invert(100%) sepia(0%) saturate(7500%)
    hue-rotate(322deg) brightness(102%) contrast(102%);
}

.dark-mode .search label,
.dark-mode .search .form-inner,
.dark-mode .search .message-search,
.dark-mode .search .help-search .dark-mode .search input {
  background: var(--gray-80);
  color: white;
}

.dark-mode .input-field {
  background: var(--gray-80);
  color: white;
}

.dark-mode .auth .social-btn {
  color: white;
  border-color: white;
}

.dark-mode .facilities .item .icon {
  background: var(--gray-60);
}

/* datetimepicker.css */

.xdsoft_datetimepicker {
  font-family: "Plus Jakarta Sans", sans-serif;
  z-index: 36;
  border: 0;
  padding: 0;
}

.xdsoft_datetimepicker.xdsoft_inline {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 64px;
}

.xdsoft_datetimepicker .xdsoft_datepicker,
.xdsoft_datetimepicker .xdsoft_timepicker {
  width: 100%;
  /* min-height: 400px; */
  margin-left: 0;
}

.xdsoft_datetimepicker .xdsoft_timepicker {
  width: 100%;
}

.xdsoft_datetimepicker .xdsoft_today_button,
.xdsoft_scrollbar,
.xdsoft_datetimepicker .xdsoft_label i {
  display: none;
}

.xdsoft_datetimepicker .xdsoft_label {
  font-size: 14px;
  font-weight: 500;
  color: var(--primary-text);
}

.xdsoft_monthpicker {
  display: flex;
  align-items: center;
}

.xdsoft_datetimepicker .xdsoft_label,
.xdsoft_datetimepicker .xdsoft_next,
.xdsoft_datetimepicker .xdsoft_prev {
  opacity: 1;
}

.xdsoft_datetimepicker .xdsoft_year,
.xdsoft_datetimepicker .xdsoft_month {
  width: auto;
  padding: 0;
  margin: 0;
  text-align: center;
}

.xdsoft_datetimepicker .xdsoft_month {
  margin-left: auto;
}

.xdsoft_datetimepicker .xdsoft_year {
  padding-left: 4px;
  margin-right: auto;
}

.xdsoft_datetimepicker .xdsoft_prev,
.xdsoft_datetimepicker .xdsoft_next {
  background-position: center;
  height: 32px;
  width: 32px;
  border: 1px solid var(--additional3) !important;
  border-radius: 50%;
  display: inline-flex;
  background-size: contain;
}

.xdsoft_datetimepicker .xdsoft_prev {
  background-image: url("data:image/svg+xml,%3Csvg width='24' height='25' viewBox='0 0 24 25' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M15 20L7.5 12.5L15 5' stroke='black' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E");
}

.xdsoft_datetimepicker .xdsoft_next {
  background-image: url("data:image/svg+xml,%3Csvg width='24' height='25' viewBox='0 0 24 25' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M9 5L16.5 12.5L9 20' stroke='black' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E%0A");
}

.xdsoft_datetimepicker .xdsoft_timepicker .available_time {
  text-align: left;
  font-size: 16px;
  color: #0e1222;
  font-weight: 500;
  margin-bottom: 22px;
}

.xdsoft_datetimepicker .xdsoft_datepicker.active + .xdsoft_timepicker {
  margin-top: 0;
  margin-bottom: 0;
}

.xdsoft_datetimepicker .xdsoft_label > .xdsoft_select.xdsoft_yearselect {
  right: auto;
  left: 0;
}

.xdsoft_datetimepicker .xdsoft_calendar {
  margin: 24px 0;
}

.xdsoft_datetimepicker .xdsoft_calendar td,
.xdsoft_datetimepicker .xdsoft_calendar th {
  background: #fff;
  border: 0;
  color: var(--primary-text);
  font-size: 14px;
  font-weight: 500;
  text-align: center;
  height: 30px;
}

.xdsoft_datetimepicker .xdsoft_calendar th {
  font-weight: 500;
  color: var(--primary-text);
  cursor: default;
  text-transform: capitalize;
  font-size: 12px;
}

.xdsoft_datetimepicker .xdsoft_calendar td > div {
  padding-right: 0;
}

.xdsoft_datetimepicker .xdsoft_calendar td.xdsoft_default,
.xdsoft_datetimepicker .xdsoft_calendar td.xdsoft_current {
  background: var(--primary);
  box-shadow: none;
  color: white;
  font-weight: 400;
  border-radius: 8px;
}

.xdsoft_datetimepicker .xdsoft_calendar td:hover {
  color: white !important;
  background: var(--primary) !important;
  box-shadow: none !important;
  border-radius: 8px;
}

.xdsoft_datetimepicker
  .xdsoft_timepicker
  .xdsoft_time_box
  > div
  > div.xdsoft_current {
  border: 1px solid var(--primary);
  color: var(--primary);
  box-shadow: none;
  background: rgba(4, 90, 181, 0.1);
  font-weight: 400;
}

.xdsoft_datetimepicker .xdsoft_timepicker .xdsoft_time_box > div > div:hover {
  color: var(--primary) !important;
  background: rgba(4, 90, 181, 0.1) !important;
  box-shadow: none !important;
}

.xdsoft_time_variant {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  row-gap: 21px;
  column-gap: 12px;
}

.xdsoft_datetimepicker .xdsoft_timepicker .xdsoft_time_box {
  height: auto;
  overflow: visible;
  border: 0;
}

.xdsoft_datetimepicker .xdsoft_timepicker .xdsoft_time_box > div > div {
  background: #ffffff;
  box-shadow: 0px 4px 4px rgba(0, 0, 0, 0.06);
  border-radius: 5px;
  border-top: 0;
  color: var(--primary);
  font-size: 14px;
  border-collapse: collapse;
  cursor: pointer;
  border-bottom-width: 0;
  height: 30px;
  line-height: 30px;
}

.xdsoft_datetimepicker .xdsoft_timepicker .xdsoft_prev,
.xdsoft_datetimepicker .xdsoft_timepicker .xdsoft_next {
  display: none;
}

/*===========================================================
02: dark-mode CSS
=============================================================*/
.dark-mode .xdsoft_datetimepicker {
  background: transparent;
}

.dark-mode .xdsoft_datetimepicker .xdsoft_prev {
  background-image: url("data:image/svg+xml,%0A%3Csvg width='24' height='24' viewBox='0 0 24 24' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Cg clip-path='url(%23clip0_3901_39547)'%3E%3Cpath d='M13.8297 19.0003C13.6803 19.0008 13.5327 18.9678 13.3977 18.9038C13.2627 18.8398 13.1438 18.7463 13.0497 18.6303L8.21968 12.6303C8.07259 12.4513 7.99219 12.2269 7.99219 11.9953C7.99219 11.7637 8.07259 11.5392 8.21968 11.3603L13.2197 5.36028C13.3894 5.15606 13.6333 5.02763 13.8978 5.00325C14.1622 4.97888 14.4255 5.06054 14.6297 5.23028C14.8339 5.40001 14.9623 5.64393 14.9867 5.90835C15.0111 6.17278 14.9294 6.43606 14.7597 6.64028L10.2897 12.0003L14.6097 17.3603C14.732 17.5071 14.8096 17.6858 14.8335 17.8753C14.8574 18.0649 14.8265 18.2573 14.7444 18.4299C14.6624 18.6024 14.5326 18.7478 14.3705 18.8489C14.2084 18.95 14.0207 19.0025 13.8297 19.0003Z' fill='white'/%3E%3C/g%3E%3Cdefs%3E%3CclipPath id='clip0_3901_39547'%3E%3Crect width='24' height='24' fill='white'/%3E%3C/clipPath%3E%3C/defs%3E%3C/svg%3E%0A");
}

.dark-mode .xdsoft_datetimepicker .xdsoft_next {
  background-image: url("data:image/svg+xml,%0A%3Csvg width='24' height='24' viewBox='0 0 24 24' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Cg clip-path='url(%23clip0_3901_39540)'%3E%3Cpath d='M9.99981 18.9999C9.76615 19.0004 9.53972 18.919 9.35981 18.7699C9.25855 18.686 9.17485 18.5829 9.11349 18.4665C9.05214 18.3502 9.01435 18.2229 9.00227 18.0919C8.99019 17.9609 9.00408 17.8289 9.04312 17.7033C9.08217 17.5777 9.1456 17.461 9.22981 17.3599L13.7098 11.9999L9.38981 6.62994C9.30674 6.52765 9.24471 6.40996 9.20728 6.28362C9.16985 6.15728 9.15775 6.02479 9.17169 5.89376C9.18563 5.76273 9.22533 5.63575 9.2885 5.52011C9.35168 5.40447 9.43708 5.30246 9.53981 5.21994C9.64327 5.1289 9.76444 5.06024 9.8957 5.01825C10.027 4.97626 10.1655 4.96185 10.3026 4.97594C10.4397 4.99002 10.5724 5.03229 10.6924 5.1001C10.8123 5.1679 10.917 5.25977 10.9998 5.36994L15.8298 11.3699C15.9769 11.5489 16.0573 11.7733 16.0573 12.0049C16.0573 12.2366 15.9769 12.461 15.8298 12.6399L10.8298 18.6399C10.7295 18.761 10.6021 18.8566 10.4578 18.9192C10.3136 18.9817 10.1567 19.0094 9.99981 18.9999Z' fill='white'/%3E%3C/g%3E%3Cdefs%3E%3CclipPath id='clip0_3901_39540'%3E%3Crect width='24' height='24' fill='white'/%3E%3C/clipPath%3E%3C/defs%3E%3C/svg%3E%0A");
}

.dark-mode .xdsoft_datetimepicker .xdsoft_label {
  color: white;
  background: transparent;
}

.dark-mode .xdsoft_datetimepicker .xdsoft_calendar td,
.dark-mode .xdsoft_datetimepicker .xdsoft_calendar th {
  background: transparent;
  color: white;
}

.dark-mode .xdsoft_datetimepicker .xdsoft_calendar td.xdsoft_default,
.dark-mode .xdsoft_datetimepicker .xdsoft_calendar td.xdsoft_current {
  background: var(--primary);
}

/* details.css */

/* 1.1: page-title */
.details .page-title {
  position: absolute;
  background: transparent;
}

.details .page-title .main-title {
  color: white;
}

.details .page-title .back-btn {
  background: rgba(255, 255, 255, 0.08);
}

.details .page-title .back-btn img {
  filter: brightness(0) saturate(100%) invert(100%) sepia(100%) saturate(1%)
    hue-rotate(139deg) brightness(103%) contrast(101%);
}

/* 1.2: details-body */
.details .details-body {
  background: white;
  border-top-left-radius: 30px;
  border-top-right-radius: 30px;
  padding: 30px 24px 24px 24px;
  margin-top: -50px;
  position: relative;
  z-index: 5;
}

/* 1.3: details-title */
.details .details-title h3 {
  font-size: 24px;
  font-weight: 700;
  color: var(--primary-text);
  padding-bottom: 8px;
}

.details .details-title ul p {
  font-size: 12px;
  font-weight: 600;
  color: var(--gray-90);
}

.details .details-title ul p span {
  color: var(--warning);
  background: transparent;
}

.details .details-title span {
  height: 40px;
  width: 40px;
  background: var(--additional3);
}

/* 1.4: details-footer */
.details .details-footer {
  padding: 22px 24px;
  position: sticky;
  bottom: 0;
  left: 0;
  background: white;
  z-index: 10;
}

.details .details-footer p {
  font-size: 20px;
  font-weight: 600;
  color: var(--primary-text);
}

.details .details-footer p span {
  font-size: 16px;
  font-weight: 500;
  color: var(--secondary-text);
}

.details .details-footer button,
.details .details-footer a {
  display: inline-block;
  font-size: 14px;
  font-weight: 600;
  color: white;
  background: var(--primary);
  padding: 12px 50px;
  border-radius: 20px;
}

/*===========================================================
02: vacation details CSS
=============================================================*/
/* 2.1: details-info */
.details-info p {
  font-size: 14px;
  line-height: 28px;
  color: var(--primary-text);
}

.reviews > div:not(:last-child) {
  margin-bottom: 24px;
}

.reviews .review-card .image {
  height: 45px;
  width: 45px;
}

.reviews .review-card .review-image {
  height: 67px;
  width: 67px;
}

.reviews .review-card h4 {
  font-size: 18px;
  font-weight: 600;
  color: var(--primary-text);
  padding-bottom: 8px;
}

.reviews .review-card span {
  font-size: 14px;
  color: var(--gray-60);
}

.reviews .review-card p {
  padding-top: 16px;
  color: var(--primary-text);
  font-size: 14px;
  line-height: 22px;
}

/* 2.2: details location */
.details-location .map {
  width: 100%;
  height: 156px;
}

.details-location iframe {
  width: 100%;
  height: 156px;
}

/*===========================================================
03: hotel details CSS
=============================================================*/

.hotel-details .details-footer p span {
  font-size: 14px;
  font-weight: 600;
  color: var(--alert);
}

.details-info p button {
  font-size: 14px;
  font-weight: 600;
  color: var(--primary);
}

/*===========================================================
04: dark-mode CSS
=============================================================*/
.dark-mode .details .details-body,
.dark-mode .details .details-footer {
  background: var(--gray-100);
}

.dark-mode .details-body .title h4,
.dark-mode .details .details-title h3,
.dark-mode .details-info p,
.dark-mode .guide .item .content h4,
.dark-mode .reviews .review-card h4,
.dark-mode .reviews .review-card p,
.dark-mode .details .details-footer p {
  color: white;
}

.dark-mode .details .details-title ul p,
.dark-mode .guide .item .content .location {
  color: var(--secondary-text);
}

.dark-mode .guide .item .content .location img {
  filter: brightness(0) saturate(100%) invert(53%) sepia(9%) saturate(375%)
    hue-rotate(164deg) brightness(94%) contrast(92%);
}

.dark-mode .guide .item .rating {
  background: var(--gray-80);
}

/* explore.css */

.explore {
  padding: 16px 24px;
  margin-bottom: 70px;
}

/*===========================================================
02: all-place CSS
=============================================================*/
.all-place .tab-list {
  overflow-x: auto;
}

.all-place .tab-list button {
  display: inline-block;
  padding: 4px 14px;
  font-size: 14px;
  font-weight: 500;
  color: var(--primary-text);
  border: 1px solid var(--additional2);
  border-radius: 5px;
  white-space: nowrap;
}

.all-place .tab-list .active button {
  background: var(--primary);
  color: white;
  border-color: var(--primary);
}

.recommended .grid,
.all-place .grid {
  display: grid;
  grid-template-columns: repeat(2, 1fr);
  row-gap: 24px;
  column-gap: 16px;
  margin-top: 24px;
}

/*===========================================================
03: search-result CSS
=============================================================*/
.search-result {
  padding: 0 16px 24px 16px;
}

.search-result .page-title {
  padding: 24px 0 32px 0;
}

.search-result .search .grid {
  display: grid;
  grid-template-columns: repeat(2, 1fr);
  row-gap: 24px;
  column-gap: 16px;
}

.search-result .search .search-label {
  grid-column: span 2;
}

/*===========================================================
04: recommended CSS
=============================================================*/
.recommended .title {
  padding-bottom: 16px;
}

.recommended .title h2 {
  font-weight: 700;
  font-size: 18px;
  color: var(--primary-text);
}

.recommended .title a {
  font-size: 14px;
  font-weight: 500;
  color: var(--primary);
}

/*===========================================================
05: selectLocation Modal CSS
=============================================================*/
.selectLocationModal .modal-header {
  display: grid;
  grid-template-columns: repeat(6, 1fr);
  padding: 24px 16px;
  border: 0;
}

.selectLocationModal .modal-header button {
  height: 48px;
  width: 48px;
}

.selectLocationModal .modal-header .modal-title {
  grid-column: span 4;
  text-align: center;
  font-size: 18px;
  font-weight: 600;
  color: var(--primary-text);
}

.selectLocationModal .modal-body {
  padding: 0 16px 24px 16px;
}

.selectLocationModal .modal-body .grid {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 12px;
}

.selectLocationModal .modal-body .grid label {
  padding: 0 16px;
  border: 1px solid var(--additional2);
  grid-column: span 2;
  overflow: hidden;
}

.selectLocationModal .modal-body .grid input {
  height: 50px;
  width: 100%;
  font-size: 16px;
  font-weight: 500;
  color: var(--primary-text);
}

.selectLocationModal .modal-body .grid input::placeholder {
  font-size: 16px;
  font-weight: 500;
  color: var(--gray-70);
}

.selectLocationModal .modal-body .grid button {
  line-height: 52px;
  color: white;
  background: var(--primary);
  width: 100%;
  font-size: 14px;
  font-weight: 500;
}

.selectLocationModal .modal-body .loc-list {
  max-height: 300px;
  overflow-y: auto;
}

.selectLocationModal .modal-body .loc-list li {
  margin-top: 24px;
}

.selectLocationModal .modal-body .loc-list span {
  height: 40px;
  width: 40px;
  background: var(--secondary);
}

.selectLocationModal .modal-body .loc-list h5 {
  font-size: 14px;
  font-weight: 600;
  color: var(--primary-text);
}

.selectLocationModal .modal-body .loc-list p {
  font-size: 12px;
  font-weight: 500;
  color: var(--gray-60);
  padding-top: 4px;
}

/*===========================================================
06: wishlist CSS
=============================================================*/
.wishlist {
  padding-top: 0;
}

.wishlist .page-title {
  display: block;
}

.wishlist .grid {
  margin-top: 0;
}

/*===========================================================
07: dark-mode CSS
=============================================================*/
.dark-mode .selectLocationModal .modal-body .loc-list h5,
.dark-mode .selectLocationModal .modal-header .modal-title,
.dark-mode .recommended .title h2,
.dark-mode .place-card .content h4,
.dark-mode .place-card .content .price h3,
.dark-mode .all-place .tab-list button {
  color: white;
}

.dark-mode .selectLocationModal .modal-header button img {
  filter: brightness(0) saturate(100%) invert(100%) sepia(0%) saturate(7500%)
    hue-rotate(322deg) brightness(102%) contrast(102%);
}

.dark-mode .selectLocationModal .modal-body .grid input {
  background: transparent;
  color: white;
}

/* home.css */

.home {
  padding: 10px;

  margin-top: 55px;
}

.home .title {
  padding-bottom: 16px;
}

.home .title h2 {
  font-weight: 700;
  font-size: 18px;
  color: var(--primary-text);
}

.home .title a {
  font-size: 14px;
  font-weight: 500;
  color: var(--primary);
}

/*===========================================================
02: info CSS
=============================================================*/
.info .image {
  height: 40px;
  width: 40px;
}

.info h3 {
  font-size: 18px;
  font-weight: 700;
  color: var(--primary-text);
}

.info p {
  font-size: 12px;
  color: var(--secondary-text);
}

.info ul a,
.info ul button {
  height: 46px;
  width: 46px;
  border: 1px solid var(--additional2);
}

.info ul a span,
.info ul button span {
  display: inline-block;
  height: 11px;
  width: 11px;
  border-radius: 50%;
  background: var(--primary);
  position: absolute;
  top: 11px;
  right: 11px;
  z-index: 10;
}

/*===========================================================
03: service CSS
=============================================================*/
.service {
  display: grid;
  grid-template-columns: repeat(4, 1fr);
  gap: 16px;
  text-decoration: none;
  padding: 25px 10px;
}

.serviceModal .modal-body {
  display: grid;
  grid-template-columns: repeat(4, 1fr);
  row-gap: 32px;
  column-gap: 14px;
}

.serviceModal .item .image,
.service .item .image {
  height: 64px;
  width: 64px;
  background: #e4e9f7;
}

.serviceModal .item figcaption,
.service .item figcaption {
  margin-top: 11px;
  font-size: 14px;
  font-weight: 500;
  color: var(--secondary-text);
}

/*===========================================================
04: visited CSS
=============================================================*/
.visited .visited-pagination {
  position: static;
  text-align: right;
}

/*===========================================================
05: budget CSS
=============================================================*/
.budget ul li:not(:last-child) {
  margin-bottom: 16px;
}

.budget .image {
  width: 86px;
  height: 86px;
}

.budget .content h4 {
  font-size: 16px;
  font-weight: 700;
  color: var(--primary-text);
}

.budget .content h5 {
  font-size: 12px;
  font-weight: 500;
  color: var(--secondary-text);
  padding-top: 4px;
  padding-bottom: 12px;
}

.budget .content .price,
.budget .content .location {
  font-size: 12px;
  font-weight: 500;
  color: var(--secondary-text);
}

.budget .content .price span {
  font-size: 14px;
  font-weight: 700;
  color: var(--primary-text);
}

/*===========================================================
06: service-location CSS
=============================================================*/
.map {
  height: 100vh;
  width: 100%;
}

.locationModal {
  backdrop-filter: blur(0);
}

.locationModal .modal-body {
  display: block;
  padding: 0 24px 24px 24px;
  max-height: 270px;
  overflow-y: auto;
}

.locationModal .modal-body .item-list li:not(:last-child) {
  margin-bottom: 16px;
}

.locationModal .item .image {
  width: 92px;
  height: 92px;
}

.locationModal .content h4 {
  font-size: 14px;
  font-weight: 600;
  color: var(--primary-text);
}

.locationModal .content .rating {
  font-size: 12px;
  font-weight: 600;
  color: var(--warning);
}

.locationModal .content .rating span {
  color: var(--secondary-text);
}

.locationModal .content .location {
  color: var(--gray-90);
  font-size: 12px;
  font-weight: 500;
  margin-top: 8px;
}

.locationModal2 .modal-dialog {
  margin: 24px;
  max-width: 100%;
  display: flex;
  align-items: flex-end;
  border-radius: 16px;
  height: calc(100vh - 48px);
}

.locationModal2 .modal-body {
  padding: 24px;
}

.locationModal2 .item .image {
  width: 80px;
  height: 100px;
}

.locationModal2 .btn-list a {
  height: 50px;
  width: 50px;
  background: var(--secondary);
}

.locationModal2 .btn-list a.active {
  background: var(--primary);
}

.locationModal2 .btn-list a.active img {
  filter: brightness(0) saturate(100%) invert(100%) sepia(100%) saturate(1%)
    hue-rotate(139deg) brightness(103%) contrast(101%);
}

/*===========================================================
07: tour-guide CSS
=============================================================*/
.tour-guide .guide ul li:not(:last-child) {
  margin-bottom: 24px;
}

/*===========================================================
08: dark-mode CSS
=============================================================*/
.dark-mode .info ul a img {
  filter: brightness(0) saturate(100%) invert(100%) sepia(0%) saturate(7500%)
    hue-rotate(322deg) brightness(102%) contrast(102%);
}

.dark-mode .info h3,
.dark-mode .place-card .content h4,
.dark-mode .home .title h2,
.dark-mode .place-card .content .price h3,
.dark-mode .guide .item .content h4,
.dark-mode .budget .content h4,
.dark-mode .locationModal .content h4,
.dark-mode .budget .content .price span {
  color: white;
}

.dark-mode .serviceModal .item .image,
.dark-mode .service .item .image {
  background: var(--gray-90);
}

.dark-mode .locationModal .content .location,
.dark-mode .guide .item .content .location {
  color: var(--secondary-text);
}

.dark-mode .locationModal .content .location img,
.dark-mode .guide .item .content .location img {
  filter: brightness(0) saturate(100%) invert(53%) sepia(9%) saturate(375%)
    hue-rotate(164deg) brightness(94%) contrast(92%);
}

/* jquerydatetimepicker.css */
.xdsoft_datetimepicker {
  box-shadow: 0 5px 15px -5px rgba(0, 0, 0, 0.506);
  background: #fff;
  border-bottom: 1px solid #bbb;
  border-left: 1px solid #ccc;
  border-right: 1px solid #ccc;
  border-top: 1px solid #ccc;
  color: #333;
  font-family: "Helvetica Neue", Helvetica, Arial, sans-serif;
  padding: 8px;
  padding-left: 0;
  padding-top: 2px;
  position: absolute;
  z-index: 9999;
  -moz-box-sizing: border-box;
  box-sizing: border-box;
  display: none;
}

.xdsoft_datetimepicker.xdsoft_rtl {
  padding: 8px 0 8px 8px;
}

.xdsoft_datetimepicker iframe {
  position: absolute;
  left: 0;
  top: 0;
  width: 75px;
  height: 210px;
  background: transparent;
  border: none;
}

/*For IE8 or lower*/
.xdsoft_datetimepicker button {
  border: none !important;
}

.xdsoft_noselect {
  -webkit-touch-callout: none;
  -webkit-user-select: none;
  -khtml-user-select: none;
  -moz-user-select: none;
  -ms-user-select: none;
  -o-user-select: none;
  user-select: none;
}

.xdsoft_noselect::selection {
  background: transparent;
}

.xdsoft_noselect::-moz-selection {
  background: transparent;
}

.xdsoft_datetimepicker.xdsoft_inline {
  display: inline-block;
  position: static;
  box-shadow: none;
}

.xdsoft_datetimepicker * {
  -moz-box-sizing: border-box;
  box-sizing: border-box;
  padding: 0;
  margin: 0;
}

.xdsoft_datetimepicker .xdsoft_datepicker,
.xdsoft_datetimepicker .xdsoft_timepicker {
  display: none;
}

.xdsoft_datetimepicker .xdsoft_datepicker.active,
.xdsoft_datetimepicker .xdsoft_timepicker.active {
  display: block;
}

.xdsoft_datetimepicker .xdsoft_datepicker {
  width: 224px;
  float: left;
  margin-left: 8px;
}

.xdsoft_datetimepicker.xdsoft_rtl .xdsoft_datepicker {
  float: right;
  margin-right: 8px;
  margin-left: 0;
}

.xdsoft_datetimepicker.xdsoft_showweeks .xdsoft_datepicker {
  width: 256px;
}

.xdsoft_datetimepicker .xdsoft_timepicker {
  width: 58px;
  float: left;
  text-align: center;
  margin-left: 8px;
  margin-top: 0;
}

.xdsoft_datetimepicker.xdsoft_rtl .xdsoft_timepicker {
  float: right;
  margin-right: 8px;
  margin-left: 0;
}

.xdsoft_datetimepicker .xdsoft_datepicker.active + .xdsoft_timepicker {
  margin-top: 8px;
  margin-bottom: 3px;
}

.xdsoft_datetimepicker .xdsoft_monthpicker {
  position: relative;
  text-align: center;
}

.xdsoft_datetimepicker .xdsoft_label i,
.xdsoft_datetimepicker .xdsoft_prev,
.xdsoft_datetimepicker .xdsoft_next,
.xdsoft_datetimepicker .xdsoft_today_button {
  background-image: url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAGQAAAAeCAYAAADaW7vzAAAAGXRFWHRTb2Z0d2FyZQBBZG9iZSBJbWFnZVJlYWR5ccllPAAAAyJpVFh0WE1MOmNvbS5hZG9iZS54bXAAAAAAADw/eHBhY2tldCBiZWdpbj0i77u/IiBpZD0iVzVNME1wQ2VoaUh6cmVTek5UY3prYzlkIj8+IDx4OnhtcG1ldGEgeG1sbnM6eD0iYWRvYmU6bnM6bWV0YS8iIHg6eG1wdGs9IkFkb2JlIFhNUCBDb3JlIDUuMy1jMDExIDY2LjE0NTY2MSwgMjAxMi8wMi8wNi0xNDo1NjoyNyAgICAgICAgIj4gPHJkZjpSREYgeG1sbnM6cmRmPSJodHRwOi8vd3d3LnczLm9yZy8xOTk5LzAyLzIyLXJkZi1zeW50YXgtbnMjIj4gPHJkZjpEZXNjcmlwdGlvbiByZGY6YWJvdXQ9IiIgeG1sbnM6eG1wPSJodHRwOi8vbnMuYWRvYmUuY29tL3hhcC8xLjAvIiB4bWxuczp4bXBNTT0iaHR0cDovL25zLmFkb2JlLmNvbS94YXAvMS4wL21tLyIgeG1sbnM6c3RSZWY9Imh0dHA6Ly9ucy5hZG9iZS5jb20veGFwLzEuMC9zVHlwZS9SZXNvdXJjZVJlZiMiIHhtcDpDcmVhdG9yVG9vbD0iQWRvYmUgUGhvdG9zaG9wIENTNiAoV2luZG93cykiIHhtcE1NOkluc3RhbmNlSUQ9InhtcC5paWQ6Q0NBRjI1NjM0M0UwMTFFNDk4NkFGMzJFQkQzQjEwRUIiIHhtcE1NOkRvY3VtZW50SUQ9InhtcC5kaWQ6Q0NBRjI1NjQ0M0UwMTFFNDk4NkFGMzJFQkQzQjEwRUIiPiA8eG1wTU06RGVyaXZlZEZyb20gc3RSZWY6aW5zdGFuY2VJRD0ieG1wLmlpZDpDQ0FGMjU2MTQzRTAxMUU0OTg2QUYzMkVCRDNCMTBFQiIgc3RSZWY6ZG9jdW1lbnRJRD0ieG1wLmRpZDpDQ0FGMjU2MjQzRTAxMUU0OTg2QUYzMkVCRDNCMTBFQiIvPiA8L3JkZjpEZXNjcmlwdGlvbj4gPC9yZGY6UkRGPiA8L3g6eG1wbWV0YT4gPD94cGFja2V0IGVuZD0iciI/PoNEP54AAAIOSURBVHja7Jq9TsMwEMcxrZD4WpBYeKUCe+kTMCACHZh4BFfHO/AAIHZGFhYkBBsSEqxsLCAgXKhbXYOTxh9pfJVP+qutnZ5s/5Lz2Y5I03QhWji2GIcgAokWgfCxNvcOCCGKqiSqhUp0laHOne05vdEyGMfkdxJDVjgwDlEQgYQBgx+ULJaWSXXS6r/ER5FBVR8VfGftTKcITNs+a1XpcFoExREIDF14AVIFxgQUS+h520cdud6wNkC0UBw6BCO/HoCYwBhD8QCkQ/x1mwDyD4plh4D6DDV0TAGyo4HcawLIBBSLDkHeH0Mg2yVP3l4TQMZQDDsEOl/MgHQqhMNuE0D+oBh0CIr8MAKyazBH9WyBuKxDWgbXfjNf32TZ1KWm/Ap1oSk/R53UtQ5xTh3LUlMmT8gt6g51Q9p+SobxgJQ/qmsfZhWywGFSl0yBjCLJCMgXail3b7+rumdVJ2YRss4cN+r6qAHDkPWjPjdJCF4n9RmAD/V9A/Wp4NQassDjwlB6XBiCxcJQWmZZb8THFilfy/lfrTvLghq2TqTHrRMTKNJ0sIhdo15RT+RpyWwFdY96UZ/LdQKBGjcXpcc1AlSFEfLmouD+1knuxBDUVrvOBmoOC/rEcN7OQxKVeJTCiAdUzUJhA2Oez9QTkp72OTVcxDcXY8iKNkxGAJXmJCOQwOa6dhyXsOa6XwEGAKdeb5ET3rQdAAAAAElFTkSuQmCC);
}

.xdsoft_datetimepicker .xdsoft_label i {
  opacity: 0.5;
  background-position: -92px -19px;
  display: inline-block;
  width: 9px;
  height: 20px;
  vertical-align: middle;
}

.xdsoft_datetimepicker .xdsoft_prev {
  float: left;
  background-position: -20px 0;
}

.xdsoft_datetimepicker .xdsoft_today_button {
  float: left;
  background-position: -70px 0;
  margin-left: 5px;
}

.xdsoft_datetimepicker .xdsoft_next {
  float: right;
  background-position: 0 0;
}

.xdsoft_datetimepicker .xdsoft_next,
.xdsoft_datetimepicker .xdsoft_prev,
.xdsoft_datetimepicker .xdsoft_today_button {
  background-color: transparent;
  background-repeat: no-repeat;
  border: 0 none;
  cursor: pointer;
  display: block;
  height: 30px;
  opacity: 0.5;
  -ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=50)";
  outline: medium none;
  overflow: hidden;
  padding: 0;
  position: relative;
  text-indent: 100%;
  white-space: nowrap;
  width: 20px;
  min-width: 0;
}

.xdsoft_datetimepicker .xdsoft_timepicker .xdsoft_prev,
.xdsoft_datetimepicker .xdsoft_timepicker .xdsoft_next {
  float: none;
  background-position: -40px -15px;
  height: 15px;
  width: 30px;
  display: block;
  margin-left: 14px;
  margin-top: 7px;
}

.xdsoft_datetimepicker.xdsoft_rtl .xdsoft_timepicker .xdsoft_prev,
.xdsoft_datetimepicker.xdsoft_rtl .xdsoft_timepicker .xdsoft_next {
  float: none;
  margin-left: 0;
  margin-right: 14px;
}

.xdsoft_datetimepicker .xdsoft_timepicker .xdsoft_prev {
  background-position: -40px 0;
  margin-bottom: 7px;
  margin-top: 0;
}

.xdsoft_datetimepicker .xdsoft_timepicker .xdsoft_time_box {
  height: 151px;
  overflow: hidden;
  border-bottom: 1px solid #ddd;
}

.xdsoft_datetimepicker .xdsoft_timepicker .xdsoft_time_box > div > div {
  background: #f5f5f5;
  border-top: 1px solid #ddd;
  color: #666;
  font-size: 12px;
  text-align: center;
  border-collapse: collapse;
  cursor: pointer;
  border-bottom-width: 0;
  height: 25px;
  line-height: 25px;
}

.xdsoft_datetimepicker
  .xdsoft_timepicker
  .xdsoft_time_box
  > div
  > div:first-child {
  border-top-width: 0;
}

.xdsoft_datetimepicker .xdsoft_today_button:hover,
.xdsoft_datetimepicker .xdsoft_next:hover,
.xdsoft_datetimepicker .xdsoft_prev:hover {
  opacity: 1;
  -ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=100)";
}

.xdsoft_datetimepicker .xdsoft_label {
  display: inline;
  position: relative;
  z-index: 9999;
  margin: 0;
  padding: 5px 3px;
  font-size: 14px;
  line-height: 20px;
  font-weight: bold;
  background-color: #fff;
  float: left;
  width: 182px;
  text-align: center;
  cursor: pointer;
}

.xdsoft_datetimepicker .xdsoft_label:hover > span {
  text-decoration: underline;
}

.xdsoft_datetimepicker .xdsoft_label:hover i {
  opacity: 1;
}

.xdsoft_datetimepicker .xdsoft_label > .xdsoft_select {
  border: 1px solid #ccc;
  position: absolute;
  right: 0;
  top: 30px;
  z-index: 101;
  display: none;
  background: #fff;
  max-height: 160px;
  overflow-y: hidden;
}

.xdsoft_datetimepicker .xdsoft_label > .xdsoft_select.xdsoft_monthselect {
  right: -7px;
}

.xdsoft_datetimepicker .xdsoft_label > .xdsoft_select.xdsoft_yearselect {
  right: 2px;
}

.xdsoft_datetimepicker
  .xdsoft_label
  > .xdsoft_select
  > div
  > .xdsoft_option:hover {
  color: #fff;
  background: #ff8000;
}

.xdsoft_datetimepicker .xdsoft_label > .xdsoft_select > div > .xdsoft_option {
  padding: 2px 10px 2px 5px;
  text-decoration: none !important;
}

.xdsoft_datetimepicker
  .xdsoft_label
  > .xdsoft_select
  > div
  > .xdsoft_option.xdsoft_current {
  background: #33aaff;
  box-shadow: #178fe5 0 1px 3px 0 inset;
  color: #fff;
  font-weight: 700;
}

.xdsoft_datetimepicker .xdsoft_month {
  width: 100px;
  text-align: right;
}

.xdsoft_datetimepicker .xdsoft_calendar {
  clear: both;
}

.xdsoft_datetimepicker .xdsoft_year {
  width: 48px;
  margin-left: 5px;
}

.xdsoft_datetimepicker .xdsoft_calendar table {
  border-collapse: collapse;
  width: 100%;
}

.xdsoft_datetimepicker .xdsoft_calendar td > div {
  padding-right: 5px;
}

.xdsoft_datetimepicker .xdsoft_calendar th {
  height: 25px;
}

.xdsoft_datetimepicker .xdsoft_calendar td,
.xdsoft_datetimepicker .xdsoft_calendar th {
  width: 14.2857142%;
  background: #f5f5f5;
  border: 1px solid #ddd;
  color: #666;
  font-size: 12px;
  text-align: right;
  vertical-align: middle;
  padding: 0;
  border-collapse: collapse;
  cursor: pointer;
  height: 25px;
}

.xdsoft_datetimepicker.xdsoft_showweeks .xdsoft_calendar td,
.xdsoft_datetimepicker.xdsoft_showweeks .xdsoft_calendar th {
  width: 12.5%;
}

.xdsoft_datetimepicker .xdsoft_calendar th {
  background: #f1f1f1;
}

.xdsoft_datetimepicker .xdsoft_calendar td.xdsoft_today {
  color: #33aaff;
}

.xdsoft_datetimepicker .xdsoft_calendar td.xdsoft_highlighted_default {
  background: #ffe9d2;
  box-shadow: #ffb871 0 1px 4px 0 inset;
  color: #000;
}

.xdsoft_datetimepicker .xdsoft_calendar td.xdsoft_highlighted_mint {
  background: #c1ffc9;
  box-shadow: #00dd1c 0 1px 4px 0 inset;
  color: #000;
}

.xdsoft_datetimepicker .xdsoft_calendar td.xdsoft_default,
.xdsoft_datetimepicker .xdsoft_calendar td.xdsoft_current,
.xdsoft_datetimepicker
  .xdsoft_timepicker
  .xdsoft_time_box
  > div
  > div.xdsoft_current {
  background: #33aaff;
  box-shadow: #178fe5 0 1px 3px 0 inset;
  color: #fff;
  font-weight: 700;
}

.xdsoft_datetimepicker .xdsoft_calendar td.xdsoft_other_month,
.xdsoft_datetimepicker .xdsoft_calendar td.xdsoft_disabled,
.xdsoft_datetimepicker .xdsoft_time_box > div > div.xdsoft_disabled {
  opacity: 0.5;
  -ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=50)";
  cursor: default;
}

.xdsoft_datetimepicker .xdsoft_calendar td.xdsoft_other_month.xdsoft_disabled {
  opacity: 0.2;
  -ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=20)";
}

.xdsoft_datetimepicker .xdsoft_calendar td:hover,
.xdsoft_datetimepicker .xdsoft_timepicker .xdsoft_time_box > div > div:hover {
  color: #fff !important;
  background: #ff8000 !important;
  box-shadow: none !important;
}

.xdsoft_datetimepicker .xdsoft_calendar td.xdsoft_current.xdsoft_disabled:hover,
.xdsoft_datetimepicker
  .xdsoft_timepicker
  .xdsoft_time_box
  > div
  > div.xdsoft_current.xdsoft_disabled:hover {
  background: #33aaff !important;
  box-shadow: #178fe5 0 1px 3px 0 inset !important;
  color: #fff !important;
}

.xdsoft_datetimepicker .xdsoft_calendar td.xdsoft_disabled:hover,
.xdsoft_datetimepicker
  .xdsoft_timepicker
  .xdsoft_time_box
  > div
  > div.xdsoft_disabled:hover {
  color: inherit !important;
  background: inherit !important;
  box-shadow: inherit !important;
}

.xdsoft_datetimepicker .xdsoft_calendar th {
  font-weight: 700;
  text-align: center;
  color: #999;
  cursor: default;
}

.xdsoft_datetimepicker .xdsoft_copyright {
  color: #ccc !important;
  font-size: 10px;
  clear: both;
  float: none;
  margin-left: 8px;
}

.xdsoft_datetimepicker .xdsoft_copyright a {
  color: #eee !important;
}

.xdsoft_datetimepicker .xdsoft_copyright a:hover {
  color: #aaa !important;
}

.xdsoft_time_box {
  position: relative;
  border: 1px solid #ccc;
}

.xdsoft_scrollbar > .xdsoft_scroller {
  background: #ccc !important;
  height: 20px;
  border-radius: 3px;
}

.xdsoft_scrollbar {
  position: absolute;
  width: 7px;
  right: 0;
  top: 0;
  bottom: 0;
  cursor: pointer;
}

.xdsoft_datetimepicker.xdsoft_rtl .xdsoft_scrollbar {
  left: 0;
  right: auto;
}

.xdsoft_scroller_box {
  position: relative;
}

.xdsoft_datetimepicker.xdsoft_dark {
  box-shadow: 0 5px 15px -5px rgba(255, 255, 255, 0.506);
  background: #000;
  border-bottom: 1px solid #444;
  border-left: 1px solid #333;
  border-right: 1px solid #333;
  border-top: 1px solid #333;
  color: #ccc;
}

.xdsoft_datetimepicker.xdsoft_dark .xdsoft_timepicker .xdsoft_time_box {
  border-bottom: 1px solid #222;
}

.xdsoft_datetimepicker.xdsoft_dark
  .xdsoft_timepicker
  .xdsoft_time_box
  > div
  > div {
  background: #0a0a0a;
  border-top: 1px solid #222;
  color: #999;
}

.xdsoft_datetimepicker.xdsoft_dark .xdsoft_label {
  background-color: #000;
}

.xdsoft_datetimepicker.xdsoft_dark .xdsoft_label > .xdsoft_select {
  border: 1px solid #333;
  background: #000;
}

.xdsoft_datetimepicker.xdsoft_dark
  .xdsoft_label
  > .xdsoft_select
  > div
  > .xdsoft_option:hover {
  color: #000;
  background: #007fff;
}

.xdsoft_datetimepicker.xdsoft_dark
  .xdsoft_label
  > .xdsoft_select
  > div
  > .xdsoft_option.xdsoft_current {
  background: #cc5500;
  box-shadow: #b03e00 0 1px 3px 0 inset;
  color: #000;
}

.xdsoft_datetimepicker.xdsoft_dark .xdsoft_label i,
.xdsoft_datetimepicker.xdsoft_dark .xdsoft_prev,
.xdsoft_datetimepicker.xdsoft_dark .xdsoft_next,
.xdsoft_datetimepicker.xdsoft_dark .xdsoft_today_button {
  background-image: url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAGQAAAAeCAYAAADaW7vzAAAAGXRFWHRTb2Z0d2FyZQBBZG9iZSBJbWFnZVJlYWR5ccllPAAAAyJpVFh0WE1MOmNvbS5hZG9iZS54bXAAAAAAADw/eHBhY2tldCBiZWdpbj0i77u/IiBpZD0iVzVNME1wQ2VoaUh6cmVTek5UY3prYzlkIj8+IDx4OnhtcG1ldGEgeG1sbnM6eD0iYWRvYmU6bnM6bWV0YS8iIHg6eG1wdGs9IkFkb2JlIFhNUCBDb3JlIDUuMy1jMDExIDY2LjE0NTY2MSwgMjAxMi8wMi8wNi0xNDo1NjoyNyAgICAgICAgIj4gPHJkZjpSREYgeG1sbnM6cmRmPSJodHRwOi8vd3d3LnczLm9yZy8xOTk5LzAyLzIyLXJkZi1zeW50YXgtbnMjIj4gPHJkZjpEZXNjcmlwdGlvbiByZGY6YWJvdXQ9IiIgeG1sbnM6eG1wPSJodHRwOi8vbnMuYWRvYmUuY29tL3hhcC8xLjAvIiB4bWxuczp4bXBNTT0iaHR0cDovL25zLmFkb2JlLmNvbS94YXAvMS4wL21tLyIgeG1sbnM6c3RSZWY9Imh0dHA6Ly9ucy5hZG9iZS5jb20veGFwLzEuMC9zVHlwZS9SZXNvdXJjZVJlZiMiIHhtcDpDcmVhdG9yVG9vbD0iQWRvYmUgUGhvdG9zaG9wIENTNiAoV2luZG93cykiIHhtcE1NOkluc3RhbmNlSUQ9InhtcC5paWQ6QUExQUUzOTA0M0UyMTFFNDlBM0FFQTJENTExRDVBODYiIHhtcE1NOkRvY3VtZW50SUQ9InhtcC5kaWQ6QUExQUUzOTE0M0UyMTFFNDlBM0FFQTJENTExRDVBODYiPiA8eG1wTU06RGVyaXZlZEZyb20gc3RSZWY6aW5zdGFuY2VJRD0ieG1wLmlpZDpBQTFBRTM4RTQzRTIxMUU0OUEzQUVBMkQ1MTFENUE4NiIgc3RSZWY6ZG9jdW1lbnRJRD0ieG1wLmRpZDpBQTFBRTM4RjQzRTIxMUU0OUEzQUVBMkQ1MTFENUE4NiIvPiA8L3JkZjpEZXNjcmlwdGlvbj4gPC9yZGY6UkRGPiA8L3g6eG1wbWV0YT4gPD94cGFja2V0IGVuZD0iciI/Pp0VxGEAAAIASURBVHja7JrNSgMxEMebtgh+3MSLr1T1Xn2CHoSKB08+QmR8Bx9A8e7RixdB9CKCoNdexIugxFlJa7rNZneTbLIpM/CnNLsdMvNjM8l0mRCiQ9Ye61IKCAgZAUnH+mU3MMZaHYChBnJUDzWOFZdVfc5+ZFLbrWDeXPwbxIqrLLfaeS0hEBVGIRQCEiZoHQwtlGSByCCdYBl8g8egTTAWoKQMRBRBcZxYlhzhKegqMOageErsCHVkk3hXIFooDgHB1KkHIHVgzKB4ADJQ/A1jAFmAYhkQqA5TOBtocrKrgXwQA8gcFIuAIO8sQSA7hidvPwaQGZSaAYHOUWJABhWWw2EMIH9QagQERU4SArJXo0ZZL18uvaxejXt/Em8xjVBXmvFr1KVm/AJ10tRe2XnraNqaJvKE3KHuUbfK1E+VHB0q40/y3sdQSxY4FHWeKJCunP8UyDdqJZenT3ntVV5jIYCAh20vT7ioP8tpf6E2lfEMwERe+whV1MHjwZB7PBiCxcGQWwKZKD62lfGNnP/1poFAA60T7rF1UgcKd2id3KDeUS+oLWV8DfWAepOfq00CgQabi9zjcgJVYVD7PVzQUAUGAQkbNJTBICDhgwYTjDYD6XeW08ZKh+A4pYkzenOxXUbvZcWz7E8ykRMnIHGX1XPl+1m2vPYpL+2qdb8CDAARlKFEz/ZVkAAAAABJRU5ErkJggg==);
}

.xdsoft_datetimepicker.xdsoft_dark .xdsoft_calendar td,
.xdsoft_datetimepicker.xdsoft_dark .xdsoft_calendar th {
  background: #0a0a0a;
  border: 1px solid #222;
  color: #999;
}

.xdsoft_datetimepicker.xdsoft_dark .xdsoft_calendar th {
  background: #0e0e0e;
}

.xdsoft_datetimepicker.xdsoft_dark .xdsoft_calendar td.xdsoft_today {
  color: #cc5500;
}

.xdsoft_datetimepicker.xdsoft_dark
  .xdsoft_calendar
  td.xdsoft_highlighted_default {
  background: #ffe9d2;
  box-shadow: #ffb871 0 1px 4px 0 inset;
  color: #000;
}

.xdsoft_datetimepicker.xdsoft_dark .xdsoft_calendar td.xdsoft_highlighted_mint {
  background: #c1ffc9;
  box-shadow: #00dd1c 0 1px 4px 0 inset;
  color: #000;
}

.xdsoft_datetimepicker.xdsoft_dark .xdsoft_calendar td.xdsoft_default,
.xdsoft_datetimepicker.xdsoft_dark .xdsoft_calendar td.xdsoft_current,
.xdsoft_datetimepicker.xdsoft_dark
  .xdsoft_timepicker
  .xdsoft_time_box
  > div
  > div.xdsoft_current {
  background: #cc5500;
  box-shadow: #b03e00 0 1px 3px 0 inset;
  color: #000;
}

.xdsoft_datetimepicker.xdsoft_dark .xdsoft_calendar td:hover,
.xdsoft_datetimepicker.xdsoft_dark
  .xdsoft_timepicker
  .xdsoft_time_box
  > div
  > div:hover {
  color: #000 !important;
  background: #007fff !important;
}

.xdsoft_datetimepicker.xdsoft_dark .xdsoft_calendar th {
  color: #666;
}

.xdsoft_datetimepicker.xdsoft_dark .xdsoft_copyright {
  color: #333 !important;
}

.xdsoft_datetimepicker.xdsoft_dark .xdsoft_copyright a {
  color: #111 !important;
}

.xdsoft_datetimepicker.xdsoft_dark .xdsoft_copyright a:hover {
  color: #555 !important;
}

.xdsoft_dark .xdsoft_time_box {
  border: 1px solid #333;
}

.xdsoft_dark .xdsoft_scrollbar > .xdsoft_scroller {
  background: #333 !important;
}

.xdsoft_datetimepicker .xdsoft_save_selected {
  display: block;
  border: 1px solid #dddddd !important;
  margin-top: 5px;
  width: 100%;
  color: #454551;
  font-size: 13px;
}

.xdsoft_datetimepicker .blue-gradient-button {
  font-family: "museo-sans", "Book Antiqua", sans-serif;
  font-size: 12px;
  font-weight: 300;
  color: #82878c;
  height: 28px;
  position: relative;
  padding: 4px 17px 4px 33px;
  border: 1px solid #d7d8da;
  background: -moz-linear-gradient(top, #fff 0%, #f4f8fa 73%);
  /* FF3.6+ */
  background: -webkit-gradient(
    linear,
    left top,
    left bottom,
    color-stop(0%, #fff),
    color-stop(73%, #f4f8fa)
  );
  /* Chrome,Safari4+ */
  background: -webkit-linear-gradient(top, #fff 0%, #f4f8fa 73%);
  /* Chrome10+,Safari5.1+ */
  background: -o-linear-gradient(top, #fff 0%, #f4f8fa 73%);
  /* Opera 11.10+ */
  background: -ms-linear-gradient(top, #fff 0%, #f4f8fa 73%);
  /* IE10+ */
  background: linear-gradient(to bottom, #fff 0%, #f4f8fa 73%);
  /* W3C */
  filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#fff', endColorstr='#f4f8fa', GradientType=0);
  /* IE6-9 */
}

.xdsoft_datetimepicker .blue-gradient-button:hover,
.xdsoft_datetimepicker .blue-gradient-button:focus,
.xdsoft_datetimepicker .blue-gradient-button:hover span,
.xdsoft_datetimepicker .blue-gradient-button:focus span {
  color: #454551;
  background: -moz-linear-gradient(top, #f4f8fa 0%, #fff 73%);
  /* FF3.6+ */
  background: -webkit-gradient(
    linear,
    left top,
    left bottom,
    color-stop(0%, #f4f8fa),
    color-stop(73%, #fff)
  );
  /* Chrome,Safari4+ */
  background: -webkit-linear-gradient(top, #f4f8fa 0%, #fff 73%);
  /* Chrome10+,Safari5.1+ */
  background: -o-linear-gradient(top, #f4f8fa 0%, #fff 73%);
  /* Opera 11.10+ */
  background: -ms-linear-gradient(top, #f4f8fa 0%, #fff 73%);
  /* IE10+ */
  background: linear-gradient(to bottom, #f4f8fa 0%, #fff 73%);
  /* W3C */
  filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#f4f8fa', endColorstr='#FFF', GradientType=0);
  /* IE6-9 */
}

/* notification.css */

.notification {
  padding: 0 24px 32px 24px;
}

.notification h3 {
  font-size: 16px;
  font-weight: 700;
  color: var(--primary-text);
}

.notification ul li:not(:last-child) {
  margin-bottom: 24px;
}

.notification ul li .image {
  height: 40px;
  width: 40px;
  background: var(--secondary);
}

.notification ul li p {
  font-size: 14px;
  font-weight: 500;
  color: var(--primary-text);
}

.notification ul li p span {
  font-weight: 700;
}

.notification ul li small {
  font-size: 12px;
  font-weight: 500;
  color: var(--secondary-text);
}

/*===========================================================
02: dark-mode CSS
=============================================================*/
.dark-mode .notification h3,
.dark-mode .notification ul li p {
  color: white;
}

/* profile.css */
/*================================================
Template name: Travgo Travel Mobile App Template
Version: 1.0.0
Author: Website Stock       
Author url: https://themeforest.net/user/website_stock/portfolio  

[ Table of Contents ]

01: border-box CSS
02: tour-guide-profile CSS
  2.1: page-title
  2.2: section-title
  2.3: profile-info
  2.4: summary
  2.5: profile-about
03: custom-check-container CSS
04: user-profile CSS
05: user-personal CSS
06: user-info CSS
07: editImage Modal CSS
08: profile-main CSS
09: user-address CSS
08: add-address CSS
11: user-payment CSS
12: add-card CSS
13: change-password CSS
14: forgot-password CSS
15: forgot-password CSS
16: user-language CSS
17: msg-notifications CSS
18: help-support CSS
19: log Out Modal CSS
20: dark-mode CSS

==================================================*/

/*===========================================================
01: border-box CSS
=============================================================*/
.border-box {
  padding: 20px;
  border: 1px solid var(--additional2);
  border-radius: 12px;
}

.border-box h5 {
  font-size: 12px;
  font-weight: 600;
  color: var(--additional1);
}

.border-box ul li:not(:last-child) {
  border-bottom: 1px solid var(--additional2);
}

/*===========================================================
02: tour-guide-profile CSS
=============================================================*/
/* 2.1: page-title */
.guide-profile .page-title {
  position: absolute;
  background: transparent;
}

.guide-profile .page-title .back-btn {
  background: rgba(18, 18, 18, 0.08);
}

/* 2.2: section-title */
.guide-profile .title h4 {
  font-size: 16px;
  font-weight: 700;
  color: var(--primary-text);
}

/* 2.3: profile-info */
.profile-info {
  margin-top: -50px;
  position: relative;
  z-index: 5;
}

.profile-info .image {
  height: 100px;
  width: 100px;
}

.profile-info h3 {
  font-size: 32px;
  font-weight: 700;
  color: var(--primary-text);
  margin-top: 16px;
  margin-bottom: 8px;
}

.profile-info p {
  font-size: 12px;
  font-weight: 500;
  color: var(--gray-70);
  margin-bottom: 16px;
}

.profile-info p span {
  color: var(--primary-text);
}

.profile-info a {
  font-size: 12px;
  font-weight: 600;
  padding: 10px 32px;
  text-align: center;
}

.profile-info .call-btn {
  background: var(--gray-30);
  color: var(--primary-text);
}

.profile-info .msg-btn {
  width: 100%;
  color: white;
  background: var(--primary);
}

/* 2.4: summary */
.summary p {
  font-size: 14px;
  font-weight: 500;
  color: var(--gray-60);
  padding-bottom: 5px;
}

.summary h5 {
  font-size: 16px;
  font-weight: 700;
  color: var(--primary);
}

.summary h5 span {
  font-size: 14px;
  font-weight: 500;
  color: var(--gray-60);
}

.summary .divider {
  height: 28px;
  width: 1px;
  background: var(--gray-40);
}

/* 2.5: profile-about */
.profile-about p {
  font-size: 14px;
  line-height: 22px;
  color: var(--gray-70);
}

.profile-location .map {
  width: 100%;
  height: 156px;
}

.profile-location iframe {
  width: 100%;
  height: 156px;
}

/*===========================================================
03: custom-check-container CSS
=============================================================*/
.custom-check-container {
  display: block;
  position: relative;
  font-size: 16px;
  -webkit-user-select: none;
  -moz-user-select: none;
  -ms-user-select: none;
  user-select: none;
  font-weight: 600;
  background: white;
  color: var(--primary-text);
}

.custom-check-container input {
  position: absolute;
  opacity: 0;
  cursor: pointer;
}

.custom-check-container .checkmark {
  position: absolute;
  height: 24px;
  width: 24px;
  background-color: transparent;
  border-radius: 50%;
  border: 1px solid var(--gray-30);
}

.custom-check-container input:checked ~ .checkmark {
  background-color: var(--primary);
  border-color: var(--primary);
}

.custom-check-container .checkmark:after {
  content: "";
  position: absolute;
  display: none;
  top: 4px;
  left: 4px;
  width: 14px;
  height: 14px;
  background: url("../svg/check-white.svg") no-repeat center;
  background-size: contain;
}

.custom-check-container input:checked ~ .checkmark:after {
  display: block;
}

/*===========================================================
04: user-profile CSS
=============================================================*/
.user-profile {
  padding: 24px 24px 70px 24px;
}

.user-profile-heading .image {
  height: 56px;
  width: 56px;
}

.user-profile-heading h3 {
  font-size: 18px;
  font-weight: 600;
  color: var(--primary-text);
}

.user-profile-heading p {
  font-size: 14px;
  font-weight: 600;
  color: var(--gray-70);
}

/*===========================================================
05: user-personal CSS
=============================================================*/
.user-personal h4 {
  font-size: 12px;
  font-weight: 500;
  color: var(--primary-text);
}

.user-personal ul li:not(:last-child) {
  margin-bottom: 32px;
}

.user-personal ul li p {
  font-size: 16px;
  font-weight: 600;
  color: var(--primary-text);
}

.user-personal ul li small {
  display: inline-block;
  font-size: 12px;
  font-weight: 500;
  color: var(--primary-text);
  opacity: 0.5;
}

/*===========================================================
06: user-info CSS
=============================================================*/
.profile-image .image {
  width: 100px;
  height: 100px;
  margin: auto;
  position: relative;
}

.profile-image .image button {
  height: 32px;
  width: 32px;
  background: var(--primary);
  border: 3px solid white;
  position: absolute;
  bottom: 0;
  right: 0;
  z-index: 10;
}

.user-info .input-label {
  display: block;
  margin-bottom: 8px;
  font-size: 14px;
  font-weight: 500;
  color: var(--gray-70);
}

.user-info .dob,
.user-info .input {
  width: 100%;
  border-radius: 24px;
  height: 50px;
  border: 1px solid var(--primary);
  padding: 0 16px;
  font-size: 16px;
  font-weight: 500;
  color: var(--primary-text);
  background: transparent;
}

.user-info .input::placeholder {
  font-size: 16px;
  font-weight: 500;
  color: var(--gray-70);
}

.user-info textarea.input {
  padding: 16px;
  height: 132px;
}

.user-info .dob .input {
  border: 0;
  border-radius: 0;
  padding-left: 0;
}

.user-info .grid {
  display: grid;
  grid-template-columns: repeat(2, 1fr);
  gap: 16px;
}

.user-info .gender-container {
  padding: 12px 16px 12px 56px;
  color: var(--primary-text);
  border: 1px solid var(--primary);
  border-radius: 24px;
}

.user-info .checkmark {
  top: 12px;
  left: 16px;
}

/*===========================================================
07: editImage Modal CSS
=============================================================*/
.editImageModal .modal-header {
  padding: 32px 20px 20px 20px;
}

.editImageModal .modal-header h1 {
  font-size: 20px;
  font-weight: 600;
  color: var(--primary-text);
}

.editImageModal .action-btn {
  width: 100%;
  padding: 18px 16px;
  background: #f5f5f5;
  font-size: 14px;
  font-weight: 700;
  color: var(--primary-text);
}

.editImageModal .action-btn.delete {
  color: var(--alert);
}

.editImageModal #choose-file {
  opacity: 0;
  position: absolute;
  height: 0;
  width: 0;
}

.editImageModal ul li:not(:last-child) {
  margin-bottom: 20px;
}

/*===========================================================
08: profile-main CSS
=============================================================*/
.profile-main {
  padding-bottom: 116px;
  min-height: 100vh;
  position: relative;
}

.profile-main .bottom-btn {
  width: 100%;
  position: absolute;
  left: 0;
  bottom: 0;
  z-index: 20;
}

/*===========================================================
09: user-address CSS
=============================================================*/
.user-address .plus-btn {
  height: 48px;
  width: 48px;
}

.user-address .address-container .text {
  max-width: calc(100% - 40px);
}

.user-address .checkmark {
  top: 0;
  right: 0;
}

.user-address .address-container .address-card-title {
  font-size: 16px;
  font-weight: 600;
  color: var(--primary-text);
}

.user-address .address-container .address-card-phn {
  font-size: 14px;
  font-weight: 400;
  color: var(--secondary-text);
}

.user-address .change-add {
  display: inline-block;
  padding: 4px 16px;
  border: 1px solid var(--primary);
  color: var(--primary);
  font-size: 12px;
  font-weight: 600;
  border-radius: 12px;
  margin-top: 12px;
}

/*===========================================================
08: add-address CSS
=============================================================*/
.add-address label {
  display: block;
  margin-bottom: 8px;
  font-size: 14px;
  font-weight: 500;
  color: var(--secondary-text);
}

.add-address .input-field {
  border-radius: 24px;
}

.add-address textarea.input-field {
  padding: 16px;
  height: 132px;
}

.add-address select {
  -webkit-appearance: none;
  appearance: none;
  color: var(--gray-60) !important;
}

.add-address select option {
  color: var(--primary-text);
}

.add-address .icon {
  position: absolute;
  top: 50%;
  transform: translateY(-50%);
  right: 16px;
  z-index: 10;
}

/*===========================================================
11: user-payment CSS
=============================================================*/
.user-payment .page-title a {
  height: 48px;
  width: 48px;
  border: 1px solid #f2f2f2;
}

.user-payment .payment-container .icon {
  height: 48px;
  width: 48px;
  border: 1px solid #f2f2f2;
}

.user-payment .checkmark {
  top: 16px;
  right: 0;
}

.user-payment .payment-container .text {
  border-bottom: 1px solid var(--additional2);
}

.user-payment .payment-container .payment-method-card-title {
  font-size: 16px;
  font-weight: 600;
  color: var(--primary-text);
}

.user-payment .payment-container .payment-method-card-num {
  font-size: 14px;
  font-weight: 600;
  color: var(--secondary-text);
}

/*===========================================================
12: add-card CSS
=============================================================*/
.add-card label {
  display: block;
  margin-bottom: 8px;
  font-size: 14px;
  font-weight: 500;
  color: var(--primary-text);
}

.add-card .input-field {
  border-radius: 24px;
}

.add-card .grid {
  display: grid;
  grid-template-columns: repeat(2, 1fr);
  gap: 16px;
}

/*===========================================================
13: change-password CSS
=============================================================*/
.change-password h4 {
  font-size: 18px;
  font-weight: 500;
  color: var(--primary-text);
}

.change-password ul li:not(:last-child) {
  margin-bottom: 8px;
}

.change-password ul p {
  color: var(--success);
  font-size: 12px;
  font-weight: 500;
}

.change-password label {
  display: block;
  margin-bottom: 8px;
  font-size: 14px;
  font-weight: 500;
  color: var(--secondary-text);
}

.change-password .eye-btn {
  position: absolute;
  top: 50%;
  transform: translateY(-50%);
  right: 12px;
}

.change-password .input-psswd {
  padding-right: 48px;
  border-radius: 24px;
}

/*===========================================================
14: forgot-password CSS
=============================================================*/
.forgot-password blockquote {
  background: #f5f5f5;
}

.forgot-password blockquote p {
  font-size: 12px;
  font-weight: 600;
  color: var(--primary-text);
}

/*===========================================================
15: forgot-password CSS
=============================================================*/
.terms-policies h3 {
  font-size: 16px;
  font-weight: 700;
  color: var(--primary-text);
}

.terms-policies p {
  font-size: 14px;
  font-weight: 500;
  color: var(--additional1);
  opacity: 0.5;
}

/*===========================================================
16: user-language CSS
=============================================================*/

.suggested ul li {
  padding: 16px 0;
}

.suggested .language-container {
  padding-left: 12px;
}

.suggested .language-container .checkmark {
  top: 50%;
  transform: translateY(-50%);
  right: 0;
}

/*===========================================================
17: msg-notifications CSS
=============================================================*/
.msg-notifications ul li {
  padding: 24px 0;
}

.msg-notifications ul li:last-child {
  padding-bottom: 0;
}

.msg-notifications ul li p {
  font-size: 16px;
  font-weight: 500;
  color: var(--primary-text);
}

/*===========================================================
18: help-support CSS
=============================================================*/
.help-main .help-search .input-field {
  padding: 0;
}

.faq .accordion-item {
  border: 0;
  border-bottom: 1px solid var(--gray-30);
}

.faq .accordion-button {
  padding: 24px 0;
  font-size: 16px;
  font-weight: 600;
  color: var(--primary-text);
}

.faq .accordion-item:first-of-type .accordion-button {
  border-radius: 0;
}

.faq .accordion-button:not(.collapsed) {
  color: var(--primary-text);
  background-color: white;
  box-shadow: none;
}

.faq .accordion-body {
  padding: 0;
  padding-bottom: 24px;
}

.faq .accordion-body p {
  font-size: 14px;
  font-weight: 500;
  color: var(--additional1);
}

.faq .accordion-button::after {
  background-image: url("../svg/arrow-bottom.svg");
  background-size: cover;
}

.faq .accordion-item:last-of-type .accordion-button.collapsed {
  border-radius: 0;
}

/*===========================================================
19: log Out Modal CSS
=============================================================*/
.logOutModal .close-btn {
  height: 32px;
  width: 32px;
  background: var(--secondary);
}

.logOutModal .modal-header {
  padding: 16px;
  border: 0;
}

.logOutModal .modal-body h4 {
  font-size: 18px;
  font-weight: 600;
  color: var(--primary-text);
}

.logOutModal .modal-body ul button {
  width: 180px;
  padding: 12px 0;
  border-radius: 20px;
  background: var(--primary);
  color: white;
  font-size: 14px;
  font-weight: 600;
}

.logOutModal .modal-body .log-out {
  background: transparent;
  color: var(--alert);
}

/*===========================================================
20: dark-mode CSS
=============================================================*/
.dark-mode .profile-info h3,
.dark-mode .guide-profile .title h4,
.dark-mode .user-profile-heading h3,
.dark-mode .user-personal h4,
.dark-mode .user-personal ul li p,
.dark-mode .user-personal ul li small,
.dark-mode .user-info .dob,
.dark-mode .user-info .input,
.dark-mode .editImageModal .modal-header h1,
.dark-mode .user-address .address-container .address-card-title,
.dark-mode .user-payment .payment-container .payment-method-card-title,
.dark-mode .add-card label,
.dark-mode .change-password h4,
.dark-mode .forgot-password blockquote p,
.dark-mode .terms-policies h3,
.dark-mode .msg-notifications ul li p,
.dark-mode .custom-check-container,
.dark-mode .faq .accordion-button,
.dark-mode .logOutModal .modal-body h4 {
  color: white;
}

.dark-mode .setting-list img,
.dark-mode .user-profile-heading .edit-info img,
.dark-mode .editImageModal li:not(:last-child) .action-btn img,
.dark-mode .add-address img,
.dark-mode .user-payment .page-title a img,
.dark-mode .logOutModal .close-btn img {
  filter: brightness(0) saturate(100%) invert(100%) sepia(0%) saturate(7500%)
    hue-rotate(322deg) brightness(102%) contrast(102%);
}

.dark-mode .user-info .input::placeholder,
.dark-mode .terms-policies p,
.dark-mode .border-box h5,
.dark-mode .faq .accordion-body p {
  color: var(--gray-30);
}

.dark-mode .user-info .gender-container {
  background: var(--gray-80);
  color: white;
  caret-color: white;
}

.dark-mode .logOutModal .close-btn,
.dark-mode .editImageModal .action-btn,
.dark-mode .forgot-password blockquote {
  background: var(--gray-80);
  color: white;
}

.dark-mode .editImageModal .action-btn.delete {
  color: var(--alert);
}

.dark-mode .editImageModal .modal-header {
  border-color: var(--gray-90);
}

.dark-mode .faq .accordion-item,
.dark-mode .faq .accordion-button,
.dark-mode .custom-check-container {
  background: var(--gray-100);
}

.dark-mode .faq .accordion-button::after {
  background-image: url(../svg/arrow-bottom-white.svg);
}

/* ticket.css */
/*================================================
Template name: Travgo Travel Mobile App Template
Version: 1.0.0
Author: Website Stock       
Author url: https://themeforest.net/user/website_stock/portfolio  

[ Table of Contents ]

01: ticket-booked CSS
  1.1: ticket-card
  1.2: review Modal
02: ticket-detail CSS
  2.1: section-title
  2.2: invoice number
  2.3: order-item
  2.4: customer info
  2.5: price
03: dark-mode CSS

==================================================*/
/*===========================================================
01: ticket-booked CSS
=============================================================*/
.ticket .page-title {
  display: block;
}

.px-0 {
  padding: 0px;
}

.ticket-tab {
  padding: 0 12px 0px 12px;
}

.ticket-tab .nav {
  margin-bottom: 2px;
}

.ticket-tab .nav,
.ticket-tab .nav-tabs {
  border: 0;
  padding: 0;
  justify-content: center;
  gap: 15px;
}

.ticket-tab .nav-tabs .nav-item {
  width: calc(50% - 8px);
}

.ticket-tab .nav-tabs .nav-link {
  margin: 0;
  border: 0;
  border-radius: 0;
  padding: 10px 0;
  text-align: center;
  width: 100%;
  font-size: 14px;
  font-weight: 600;
  color: var(--primary-text);
  border-radius: 32px;
}

.ticket-tab .nav-tabs .nav-link.active {
  color: var(--primary-text);
}

.ticket-tab h4 {
  font-size: 14px;
  font-weight: 700;
  color: var(--primary);
}

/* 1.1: ticket-card */
.ticket-card {
  background: white;
  padding: 35px 16px;
  box-shadow: 0px 10px 60px 0px rgba(117, 117, 117, 0.15);
  margin-bottom: 24px;
}
.ticket-card:last-child {
  margin-bottom: 85px;
}

.ticket-card .card-title p {
  font-size: 12px;
}

.ticket-card .card-title span {
  display: inline-block;
  font-size: 12px;
  padding: 4px 16px;
  border-radius: 50px;
  background: #fff2ed;
  color: var(--additional5);
}

.ticket-card.history .card-title span {
  color: var(--success);
  background: #e6f9f0;
}

.ticket-card .card-item {
  margin-top: 18px;
  font-size: 12px;
  font-weight: 500;

  color: var(--secondary-text);
}

.ticket-card .card-item .image {
  width: 0px;
  height: 82px;
}

.ticket-card .content h4 {
  font-size: 12px;
  font-weight: 500;
  color: var(--primary-text);
}

.ticket-card .content h5 {
  font-size: 11px;
  font-weight: 500;
  color: var(--secondary-text);
  /* padding-top: 4px;
  padding-bottom: 12px */
}

.ticket-card .content .rating {
  font-size: 12px;
  font-weight: 500;
  gap: 8px;
  color: var(--secondary-text);
}

.ticket-card .content .rating span {
  color: var(--secondary-text);
}

.ticket-card .content .location {
  color: var(--gray-90);
  font-size: 12px;
  font-weight: 500;
}

.ticket-card .card-footer p {
  font-size: 12px;
  color: var(--secondary-text);
}

.ticket-card .card-footer h3 {
  font-size: 12px;
  color: var(--primary-text);
  font-weight: 700;
}

.ticket-card .card-footer div {
  font-size: 14px;
  font-weight: 700;
  color: var(--primary-text);
}

.ticket-card .card-footer a,
.ticket-card .card-footer button {
  display: inline-block;
  padding: 6px 30px;
  color: white;
  font-size: 11px;
  font-weight: 600;
  border-radius: 20px;
  border: 1px solid var(--primary);
  text-align: center;
  background: var(--primary);
}

.ticket-card.history .card-footer a {
  width: 100%;
  margin-top: 20px;
}

.ticket-card.history .card-footer .rating {
  color: white;
  background: var(--primary);
}

/* 1.2: review Modal */
.reviewModal .modal-body ul li.on .star-yellow {
  display: block;
}

.reviewModal .modal-body ul li .star-yellow,
.reviewModal .modal-body ul li.on .star-gray {
  display: none;
}

.reviewModal .modal-body .msg {
  margin-top: 32px;
  margin-bottom: 56px;
}

.reviewModal .modal-body h6 {
  font-size: 14px;
  font-weight: 500;
  color: var(--secondary-text);
  margin-bottom: 8px;
}

.reviewModal .modal-body textarea {
  display: block;
  width: 100%;
  height: 132px;
  border-radius: 24px;
  border: 1px solid var(--primary);
  padding: 16px;
  font-size: 16px;
  font-weight: 500;
  color: var(--secondary-text);
  outline: none;
}

.reviewModal .modal-body textarea::placeholder {
  font-size: 16px;
  font-weight: 500;
  color: var(--secondary-text);
}

/*===========================================================
02: ticket-detail CSS
=============================================================*/
.ticket-detail .details-body {
  padding: 32px 24px 32px 24px;
}

/* 2.1: section-title */
.ticket-detail .title h4 {
  font-size: 15px;
  font-weight: 700;
  color: var(--primary-text);
}

.ticket-detail .sub-title h4 {
  font-size: 14px;
  font-weight: 700;
  color: var(--primary-text);
}

.ticket-detail .border-b {
  border-bottom: 1px solid var(--additional2);
}

.ticket-detail .border-t {
  font-size: 16px;
  font-weight: 700;
  color: var(--primary-text);
  margin-bottom: 16px;
}

/* 2.2: invoice number */
.invoice-number p {
  font-size: 16px;
  font-weight: 500;
  color: var(--primary-text);
}

.invoice-number span {
  display: inline-block;
  font-size: 12px;
  padding: 4px 16px;
  border-radius: 50px;
  background: #fff2ed;
  color: var(--additional5);
}

/* 2.3: order-item */
.order-card .item .image {
  width: 107px;
  height: 115px;
}

.order-card .content h4 {
  font-size: 16px;
  font-weight: 700;
  color: var(--primary-text);
  margin-top: 5px;
}

.order-card .content .rating {
  font-size: 12px;
  font-weight: 600;
  color: var(--warning);
}

.order-card .content .rating span {
  color: var(--secondary-text);
}

.order-card .content .location {
  color: var(--gray-90);
  font-size: 12px;
  font-weight: 500;
}

/* 2.4: customer info */
.customer-info ul li:not(:last-child) {
  margin-bottom: 4px;
}

.customer-info ul li p {
  font-size: 13px;
  font-weight: 500;
  color: var(--secondary-text);
}

.customer-info ul li p:last-child {
  color: var(--primary-text);
}

.customer-info ul li p.success {
  color: var(--success);
}

/* 2.5: price */
.price p {
  font-size: 16px;
  font-weight: 500;
  color: var(--gray-70);
}

.price p span {
  font-size: 18px;
  font-weight: 700;
  color: var(--primary-text);
}

.promo-price p span {
  color: var(--alert);
}

/*===========================================================
03: dark-mode CSS
=============================================================*/
.dark-mode .ticket-tab .nav-tabs .nav-link,
.dark-mode .ticket-card .content h4,
.dark-mode .ticket-card .card-footer h3,
.dark-mode .ticket-card .card-footer a,
.dark-mode .ticket-card .card-footer button,
.dark-mode .invoice-number p,
.dark-mode .order-card .content h4,
.dark-mode .ticket-detail .title h4,
.dark-mode .customer-info ul li p:last-child,
.dark-mode .price p span {
  color: white;
}

.dark-mode .ticket-card {
  background: var(--gray-90);
}

.dark-mode .ticket-card .card-title p,
.dark-mode .ticket-card .content .location,
.dark-mode .ticket-card .content .rating span,
.dark-mode .ticket-card .card-footer p,
.dark-mode .reviewModal .modal-body textarea::placeholder {
  color: var(--gray-40);
}

.dark-mode .ticket-card .content .location img {
  filter: brightness(0) saturate(100%) invert(94%) sepia(7%) saturate(191%)
    hue-rotate(162deg) brightness(91%) contrast(94%);
}

.dark-mode .order-card .content .location {
  color: var(--secondary-text);
}

.dark-mode .promo-price p span {
  color: var(--alert);
}

.dark-mode .reviewModal .modal-body textarea {
  background: var(--gray-80);
  color: white;
}

/* welcome.css */

/*================================================
Template name: Travgo Travel Mobile App Template
Version: 1.0.0
Author: Website Stock       
Author url: https://themeforest.net/user/website_stock/portfolio  

[ Table of Contents ]

01: splash-screen CSS
02: onboarding CSS
03: dark-mode CSS

==================================================*/

/*===========================================================
01: splash-screen CSS
=============================================================*/
.spalsh-screen {
  background: var(--primary);
  height: 100vh;
  width: 100%;
  display: flex;
  align-items: center;
  justify-content: center;
  position: fixed;
  z-index: 99;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
}

.spalsh-screen .circle {
  background: var(--sky);
  height: 262px;
  width: 262px;
  border-radius: 50%;
  display: flex;
  align-items: center;
  justify-content: center;
}

.spalsh-screen h1 {
  font-size: 48px;
  font-weight: 800;
  color: white;
}

.spalsh-screen p {
  font-size: 18px;
  color: white;
}

.loader-spinner {
  display: inline-block;
  position: relative;
  height: 40px;
  width: 40px;
  position: absolute;
  bottom: 77px;
  left: 50%;
  transform: translateX(-50%);
}

.loader-spinner div {
  animation: loader-spinner 1.2s linear infinite;
  transform-origin: 30px 30px;
}

.loader-spinner div:after {
  display: block;
  position: absolute;
  top: 10px;
  left: 29px;
  border-radius: 25%;
  content: " ";
  height: 6px;
  width: 4px;
  background: white;
}

.loader-spinner div:nth-child(1) {
  animation-delay: -1.1s;
  transform: rotate(0deg);
}

.loader-spinner div:nth-child(2) {
  animation-delay: -1s;
  transform: rotate(30deg);
}

.loader-spinner div:nth-child(3) {
  animation-delay: -0.9s;
  transform: rotate(60deg);
}

.loader-spinner div:nth-child(4) {
  animation-delay: -0.8s;
  transform: rotate(90deg);
}

.loader-spinner div:nth-child(5) {
  animation-delay: -0.7s;
  transform: rotate(120deg);
}

.loader-spinner div:nth-child(6) {
  animation-delay: -0.6s;
  transform: rotate(150deg);
}

.loader-spinner div:nth-child(7) {
  animation-delay: -0.5s;
  transform: rotate(180deg);
}

.loader-spinner div:nth-child(8) {
  animation-delay: -0.4s;
  transform: rotate(210deg);
}

.loader-spinner div:nth-child(9) {
  animation-delay: -0.3s;
  transform: rotate(240deg);
}

.loader-spinner div:nth-child(10) {
  animation-delay: -0.2s;
  transform: rotate(270deg);
}

.loader-spinner div:nth-child(11) {
  animation-delay: -0.1s;
  transform: rotate(300deg);
}

.loader-spinner div:nth-child(12) {
  animation-delay: 0s;
  transform: rotate(330deg);
}

/*===========================================================
02: onboarding CSS
=============================================================*/
.onboarding .image {
  clip-path: circle(100% at 50% 11%);
}

.onboarding .content {
  padding: 32px 24px 24px 24px;
}

.onboarding .content h2 {
  color: var(--primary-text);
  font-size: 24px;
  font-weight: 700;
}

.onboarding .content p {
  color: var(--secondary-text);
  font-size: 14px;
  font-weight: 500;
  padding-top: 16px;
}

.onboarding .content .btn-get-started {
  margin-top: 32px;
  margin-bottom: 24px;
}

.onboarding .content h6 {
  font-size: 16px;
  font-weight: 600;
  color: var(--primary-text);
}

.onboarding .content h6 a {
  color: var(--primary);
}

.onboarding .btn-primary {
  font-size: 18px;
}

.onboarding .slider-footer {
  padding: 0 24px 32px 24px;
  margin-top: 40px;
}

.onboarding .slider-footer.hide {
  display: none;
}

.onboarding .slider-footer button {
  display: flex;
  align-items: center;
  gap: 16px;
  color: var(--gray-60);
  font-size: 14px;
  font-weight: 600;
}

.onboarding .swiper-pagination {
  position: static;
  text-align: right;
}

/*===========================================================
03: dark-mode CSS
=============================================================*/
.dark-mode .onboarding .content h6,
.dark-mode .auth h6,
.dark-mode .onboarding .content h2 {
  color: white;
}

.dark-mode .auth .auth-form {
  background: var(--gray-100);
}

.dark-mode .auth .social-btn.apple {
  filter: brightness(0) saturate(100%) invert(100%) sepia(0%) saturate(7500%)
    hue-rotate(322deg) brightness(102%) contrast(102%);
}

.card-section {
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  color: #333;
  background-color: #fff;
  border: 2px solid orange;
  border-radius: 10px;
  padding: 20px;
  box-shadow: 0 4px 8px rgba(0, 0, 0, 0.1);
  text-align: center;
  flex: 1 1 calc(33.33% - 20px); /* ✅ 3 cards per row */
  min-width: 100px;
  text-decoration: none;
}

.card-section span {
  background-color: orange;
  color: white;
  padding: 3px 10px;
  border-radius: 4px;
  text-decoration: none;
}
.card-icon {
  font-size: 18px;
  color: orange;
}
.home-card-section {
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
  padding: 20px;
  background-size: 20px 20px;
  gap: 10px;
}
button:focus {
  outline: none;
  box-shadow: none;
}
a,
a:hover,
a:active,
a:focus {
  text-decoration: none;
  outline: none;
}
.gap-16 {
  gap: 16px;
}
.geo_location {
  display: flex;
  gap: 16px; /* spacing between inputs */
  flex-wrap: wrap;
}

.geo-location-input {
  flex: 1 1 45%; /* take roughly half width, shrink and grow */
  min-width: 200px; /* optional minimum width */
}

/* Mobile view: stack inputs vertically */
@media (max-width: 600px) {
  .geo-location-input {
    flex: 1 1 100%; /* full width on mobile */
  }
}
.grid-container1 {
  display: grid;
  grid-template-columns: repeat(auto-fill, minmax(100px, 1fr));
  gap: 10px;
}

@media (min-width: 576px) {
  .grid-container1 {
    grid-template-columns: repeat(3, 1fr); /* 3 columns for mobile & up */
  }
}

@media (min-width: 768px) {
  .grid-container1 {
    grid-template-columns: repeat(4, 1fr); /* 4 columns on tablet */
  }
}

@media (min-width: 992px) {
  .grid-container1 {
    grid-template-columns: repeat(6, 1fr); /* 6 columns on desktop */
  }
}

.grid-container1 img {
  width: 100%;
  height: auto;
  object-fit: cover;
  border-radius: 5px;
}

.accordion-button {
  background-color: #263465 !important;
  color: #fff !important;
  box-shadow: none;
}

/* Open state */
.accordion-button:not(.collapsed) {
  background-color: #32438e !important;
}

/* Arrow White */
.accordion-button::after {
  filter: brightness(0) invert(1);
}

/* Custom accordion title text */
.accordion-title {
  font-weight: 500;
  font-size: 16px;
}

/* Accordion Body Background */
.accordion-body {
  background-image: url("../../../public/assets/images/works-bg.png");
  background-color: #f9f9f9;
  background-position: center;
  background-size: cover;
  background-repeat: no-repeat;
}
.bg-location {
  background-color: rgb(228, 233, 247);
  padding: 8px 6px;
  border-radius: 4px;
}
.star_red {
  color: red;
}

.fullscreen-overlay {
  position: fixed;
  top: 0;
  left: 0;
  width: 100vw;
  height: 100vh;
  background: rgba(0, 0, 0, 0.9);
  display: flex;
  align-items: center;
  justify-content: center;
  z-index: 1050;
}

.fullscreen-image {
  max-width: 90%;
  max-height: 90%;
  object-fit: contain;
  border-radius: 8px;
}

.close-btn {
  position: absolute;
  top: 20px;
  right: 30px;
  font-size: 1.5rem;
  cursor: pointer;
}
/* Fullscreen Modal */
.fullscreen-overlay {
  position: fixed;
  top: 0;
  left: 0;
  width: 100vw;
  height: 100vh;
  background: rgba(0, 0, 0, 0.9);
  display: flex;
  align-items: center;
  justify-content: center;
  z-index: 1050;
}

.fullscreen-image {
  max-width: 90%;
  max-height: 90%;
  object-fit: contain;
  border-radius: 8px;
}

.close-btn {
  position: absolute;
  top: 20px;
  right: 30px;
  font-size: 1.5rem;
  cursor: pointer;
}

/* Card Hover Effect */
.card.shadow-sm:hover img {
  opacity: 0.9;
  transform: scale(1.01);
  transition: all 0.3s ease;
}

/* New CSS Add on 13-10-25*/

.collapse-content {
  transition: all 0.3s ease;
  margin: 5px;
  /* padding: 3px; */
}
.collapse-content.open {
  padding: 10px 15px 10px 15px;
}
.title h4 {
  margin: 0;
}
