html,
body,
section {
  background-color: #0b0c0d !important;
  color: #f1f0e8 !important;
}

body.dark-theme,
body.light-theme,
body.light-theme section {
  background-color: #0b0c0d !important;
  color: #f1f0e8 !important;
}

h1,
h2,
h3,
h4,
h5,
h6,
.spirit-shop-name,
.shop-name {
  color: #f1f0e8 !important;
}

.shop-name {
  max-width: 900px !important;
  margin-left: auto !important;
  margin-right: auto !important;
  text-align: center !important;
  font-weight: 900 !important;
  letter-spacing: -2px !important;
}

.shop-decsription {
  max-width: 720px !important;
  margin-left: auto !important;
  margin-right: auto !important;
  text-align: center !important;
  color: #a9a59a !important;
  font-weight: 500 !important;
}

.theme-selector,
.theme-selector.active {
  display: none !important;
}

.spirit-navbar {
  top: 18px !important;
  left: 16px !important;
  right: 16px !important;
  width: auto !important;
  max-width: none !important;
  padding-top: 6px !important;
  padding-bottom: 6px !important;
  padding-left: 8px !important;
  padding-right: 8px !important;
  background-color: #0b0c0d !important;
  border: 2px solid #2a2f34 !important;
  border-radius: 20px !important;
  color: #f1f0e8 !important;
}

.spirit-logo-wrapper {
  gap: 12px !important;
}

.spirit-logo-wrapper .spirit-shop-logo {
  height: 44px !important;
  width: 44px !important;
  border-radius: 14px !important;
  background-color: #d8ff77 !important;
}

.spirit-logo-wrapper .spirit-shop-name {
  display: block !important;
  font-size: 21px !important;
  font-weight: 900 !important;
  letter-spacing: -1px !important;
}

.spirit-navbar-menu {
  background-color: #14171a !important;
  border: 2px solid #2a2f34 !important;
  border-radius: 18px !important;
  padding: 6px !important;
}

.spirit-navbar-menu .spirit-navbar-item {
  margin-left: 4px !important;
  margin-right: 4px !important;
}

.spirit-navbar-menu .spirit-navbar-item a,
.spirit-navbar-menu .spirit-navbar-item span {
  color: #a9a59a !important;
  background-color: #14171a !important;
  border-radius: 13px !important;
  padding-top: 11px !important;
  padding-bottom: 11px !important;
  padding-left: 12px !important;
  padding-right: 12px !important;
  font-size: 14px !important;
  font-weight: 700 !important;
}

.spirit-navbar-menu .spirit-navbar-item.active a,
.spirit-navbar-menu .spirit-navbar-item.active span {
  color: #f1f0e8 !important;
  background-color: #191d21 !important;
}

.cart-badge {
  min-height: 44px !important;
  padding-top: 0 !important;
  padding-bottom: 0 !important;
  padding-left: 14px !important;
  padding-right: 14px !important;
  background-color: #14171a !important;
  border: 2px solid #d8ff77 !important;
  border-radius: 15px !important;
  color: #f1f0e8 !important;
  font-size: 14px !important;
  font-weight: 800 !important;
}

.spirit-shop-jumbotron-footer {
  width: fit-content !important;
  max-width: 100% !important;
  margin-left: auto !important;
  margin-right: auto !important;
  margin-top: 42px !important;
  padding: 10px !important;
  gap: 10px !important;
  display: flex !important;
  justify-content: center !important;
  align-items: center !important;
  border: 2px solid #2a2f34 !important;
  border-radius: 22px !important;
  background-color: #14171a !important;
}

.spirit-shop-jumbotron-footer .server-card {
  width: auto !important;
  min-width: 0 !important;
  max-width: 100% !important;
  padding: 10px !important;
  border-radius: 18px !important;
  background-color: #101214 !important;
  border: 2px solid #2a2f34 !important;
}

.spirit-shop-jumbotron-footer .server-address {
  font-size: 17px !important;
  line-height: 22px !important;
  padding-top: 8px !important;
  padding-bottom: 8px !important;
  padding-left: 13px !important;
  padding-right: 13px !important;
  border-radius: 14px !important;
}

.server-address {
  background-color: #d8ff77 !important;
  color: #0b0c0d !important;
  border-radius: 18px !important;
  font-weight: 900 !important;
}

.card,
.server-card,
.product-card,
body.light-theme .card,
body.light-theme .product-card,
body.light-theme .server-card,
body.light-theme .cart,
body.light-theme .modal-content {
  background-color: #14171a !important;
  border: 2px solid #2a2f34 !important;
  border-radius: 26px !important;
  color: #f1f0e8 !important;
}

.server-card {
  border-radius: 32px !important;
}

.badge-xxl {
  background-color: #191d21 !important;
  border-radius: 18px !important;
  color: #f1f0e8 !important;
}

.badge {
  background-color: #191d21 !important;
  color: #f1f0e8 !important;
  border-radius: 14px !important;
}

.badge-primary,
.badge-accent {
  background-color: #d8ff77 !important;
  color: #0b0c0d !important;
}

.product-card {
  min-height: 100% !important;
  height: 100% !important;
  border-radius: 26px !important;
}

.product-card .card-body {
  min-height: 100% !important;
  padding: 18px !important;
  display: flex !important;
  flex-direction: column !important;
}

.product-preview-image-wrapper,
.product-image-wrapper,
.cart-product-image-wrapper {
  background-color: #101214 !important;
  border: 2px solid #2a2f34 !important;
  border-radius: 22px !important;
}

.product-preview-image-wrapper {
  min-height: 170px !important;
  padding: 10px !important;
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
}

.product-preview-image,
.product-image,
.cart-product-image {
  border-radius: 18px !important;
}

.product-preview-image {
  max-height: 150px !important;
  object-fit: contain !important;
}

.product-card img {
  object-fit: contain !important;
}

.product-group-product {
  background-color: #14171a !important;
  border-color: #2a2f34 !important;
}

.shop-product-name,
.product-name,
.cart-product-name {
  color: #f1f0e8 !important;
  font-weight: 900 !important;
}

.product-card .shop-product-name,
.product-card .product-name {
  font-size: 20px !important;
  line-height: 25px !important;
  letter-spacing: 0 !important;
  margin-bottom: 8px !important;
}

.product-card .text-truncate-2l {
  display: block !important;
  overflow: visible !important;
  height: auto !important;
  max-height: none !important;
}

.shop-product-payload,
.product-description,
.cart-product-description {
  color: #a9a59a !important;
  font-weight: 500 !important;
}

.shop-product-payload {
  font-size: 15px !important;
  line-height: 20px !important;
  margin-bottom: 12px !important;
}

.shop-product-cost,
.product-cost,
.cart-product-cost,
.amount,
.price,
.total {
  color: #d8ff77 !important;
  font-weight: 900 !important;
}

.shop-product-cost {
  margin-top: auto !important;
  font-size: 21px !important;
  line-height: 26px !important;
}

.shop-product-sale {
  background-color: #e5674f !important;
  color: #ffffff !important;
  border-radius: 14px !important;
  font-weight: 900 !important;
}

.shop-product-old-cost {
  color: #77736a !important;
  font-weight: 700 !important;
}

.product-card .btn {
  min-height: 46px !important;
  border-radius: 16px !important;
  font-size: 15px !important;
  font-weight: 900 !important;
}

.product-card .btn-primary,
.product-card .btn-accent {
  background-color: #d8ff77 !important;
  border-color: #d8ff77 !important;
  color: #0b0c0d !important;
}

.product-card .btn-outline-accent {
  background-color: #14171a !important;
  border-color: #d8ff77 !important;
  color: #d8ff77 !important;
}

.spirit-shop-categories-wrapper {
  background-color: #0b0c0d !important;
  border-radius: 24px !important;
}

.spirit-shop-category {
  background-color: #14171a !important;
  border: 2px solid #2a2f34 !important;
  border-radius: 20px !important;
  color: #f1f0e8 !important;
}

.spirit-shop-category .category-name {
  color: #f1f0e8 !important;
  font-weight: 900 !important;
}

.spirit-shop-category .category-products-count {
  color: #a9a59a !important;
  font-weight: 700 !important;
}

.spirit-shop-category.active,
.spirit-shop-categories-wrapper .spirit-shop-category.active {
  background-color: #d8ff77 !important;
  border-color: #d8ff77 !important;
  color: #0b0c0d !important;
}

.spirit-shop-category.active .category-name,
.spirit-shop-category.active .category-products-count,
.spirit-shop-category.active span,
.spirit-shop-category.active p,
.spirit-shop-category.active div,
.spirit-shop-categories-wrapper .spirit-shop-category.active,
.spirit-shop-categories-wrapper .spirit-shop-category.active * {
  color: #0b0c0d !important;
}

.btn,
button,
.btn-lg {
  border-radius: 16px !important;
  font-weight: 800 !important;
}

.btn-primary,
.btn-accent,
.btn-cart-checkout {
  background-color: #d8ff77 !important;
  border-color: #d8ff77 !important;
  color: #0b0c0d !important;
}

.btn-outline-accent {
  background-color: #14171a !important;
  border-color: #d8ff77 !important;
  color: #d8ff77 !important;
}

.btn-outline-danger {
  background-color: #14171a !important;
  border-color: #e5674f !important;
  color: #e5674f !important;
}

.btn-danger {
  background-color: #e5674f !important;
  border-color: #e5674f !important;
  color: #ffffff !important;
}

.form-control,
input,
select,
textarea,
select.form-control {
  min-height: 48px !important;
  background-color: #14171a !important;
  border: 2px solid #2a2f34 !important;
  border-radius: 16px !important;
  color: #f1f0e8 !important;
  font-weight: 700 !important;
}

.form-control::placeholder {
  color: #77736a !important;
}

option {
  background-color: #14171a !important;
  color: #f1f0e8 !important;
}

.order-form {
  background-color: #101214 !important;
  border: 2px solid #2a2f34 !important;
  border-radius: 28px !important;
  color: #f1f0e8 !important;
}

.form-group label {
  color: #f1f0e8 !important;
  font-weight: 800 !important;
}

.cart {
  background-color: #14171a !important;
  border: 2px solid #2a2f34 !important;
  border-radius: 30px !important;
  color: #f1f0e8 !important;
}

.cart-close {
  background-color: #d8ff77 !important;
  border-radius: 50px !important;
}

.cart-product-name {
  font-weight: 900 !important;
}

.cart-product-description {
  color: #a9a59a !important;
}

.cart-item-actions {
  background-color: #101214 !important;
  border: 2px solid #2a2f34 !important;
  border-radius: 18px !important;
  color: #f1f0e8 !important;
}

.cart-item-actions button {
  background-color: #191d21 !important;
  border-color: #2a2f34 !important;
  color: #f1f0e8 !important;
  border-radius: 14px !important;
}

.cart-total,
.cart-summary,
.cart-order-total {
  background-color: #101214 !important;
  border: 2px solid #2a2f34 !important;
  border-radius: 22px !important;
  color: #f1f0e8 !important;
}

.cart-total span,
.cart-summary span,
.cart-order-total span {
  color: #a9a59a !important;
}

.cart-total b,
.cart-summary b,
.cart-order-total b {
  color: #d8ff77 !important;
  font-weight: 900 !important;
}

.modal-content,
body.light-theme .modal-content {
  background-color: #14171a !important;
  border: 2px solid #2a2f34 !important;
  border-radius: 30px !important;
  color: #f1f0e8 !important;
}

.modal-header {
  padding: 22px !important;
  background-color: #14171a !important;
  border-bottom: 2px solid #2a2f34 !important;
  color: #f1f0e8 !important;
}

.modal-body {
  padding: 22px !important;
  background-color: #14171a !important;
  color: #f1f0e8 !important;
}

.modal-footer {
  padding: 22px !important;
  background-color: #14171a !important;
  border-top: 2px solid #2a2f34 !important;
}

.modal-title {
  color: #f1f0e8 !important;
  font-weight: 900 !important;
  letter-spacing: -1px !important;
}

.close {
  color: #f1f0e8 !important;
}

.dropdown-menu,
.navbar-dropdown-menu {
  background-color: #14171a !important;
  border: 2px solid #2a2f34 !important;
  border-radius: 24px !important;
  color: #f1f0e8 !important;
}

.dropdown-item,
.navbar-dropdown-menu-item {
  color: #f1f0e8 !important;
  border-radius: 16px !important;
  font-weight: 800 !important;
}

.navbar-dropdown-menu-item span,
.dropdown-item span,
.dropdown-item p,
.dropdown-item div {
  color: #f1f0e8 !important;
}

.dropdown-item.active {
  background-color: #d8ff77 !important;
  color: #0b0c0d !important;
}

.dropdown-item.active span,
.dropdown-item.active p,
.dropdown-item.active div {
  color: #0b0c0d !important;
}

.pay-button {
  background-color: #d8ff77 !important;
  color: #0b0c0d !important;
  border-radius: 18px !important;
  font-weight: 900 !important;
}

.pay-button .pay-button-content {
  color: #0b0c0d !important;
}

.pay-button-badge,
.pay-button .pay-button-badge {
  background-color: #0b0c0d !important;
  color: #d8ff77 !important;
  border-radius: 999px !important;
}

.pay-button-logo,
.pay-button .pay-button-logo {
  background-color: #0b0c0d !important;
  border-radius: 50px !important;
}

.swiper-last-payments {
  background-color: #14171a !important;
  border: 2px solid #2a2f34 !important;
  border-radius: 26px !important;
  color: #f1f0e8 !important;
}

.last-payment,
.payment-card {
  background-color: #101214 !important;
  border: 2px solid #2a2f34 !important;
  border-radius: 20px !important;
  color: #f1f0e8 !important;
}

.last-payment span,
.payment-card span {
  color: #a9a59a !important;
}

@media (min-width: 576px) {
  .product-card .card-footer {
    opacity: 1 !important;
    display: block !important;
    visibility: visible !important;
    height: auto !important;
    max-height: none !important;
    padding-top: 12px !important;
  }

  .product-card .card-footer .btn {
    display: flex !important;
    opacity: 1 !important;
    visibility: visible !important;
    width: 100% !important;
    min-height: 46px !important;
    border-radius: 16px !important;
    font-size: 15px !important;
    font-weight: 900 !important;
  }
}

@media (max-width: 768px) {
  .spirit-navbar {
    top: 10px !important;
    left: 10px !important;
    right: 10px !important;
    border-radius: 20px !important;
  }

  .spirit-logo-wrapper .spirit-shop-logo {
    height: 38px !important;
    width: 38px !important;
    border-radius: 12px !important;
  }

  .spirit-logo-wrapper .spirit-shop-name {
    font-size: 18px !important;
  }

  .spirit-navbar-menu {
    border-radius: 18px !important;
  }

  .cart-badge {
    border-radius: 14px !important;
  }

  .shop-name {
    font-size: 34px !important;
    line-height: 42px !important;
  }

  .shop-decsription {
    font-size: 17px !important;
    line-height: 24px !important;
  }

  .product-card {
    border-radius: 22px !important;
  }

  .product-preview-image-wrapper {
    min-height: 145px !important;
    border-radius: 18px !important;
  }

  .shop-product-name {
    font-size: 18px !important;
    line-height: 23px !important;
  }

  .cart {
    border-radius: 24px !important;
  }

  .cart-product-image-wrapper {
    border-radius: 18px !important;
  }

  .order-form {
    border-radius: 22px !important;
  }

  .modal-content {
    border-radius: 24px !important;
  }
}