:root {
  --color-main: #4c4792;
  --color-main-light: #6b65b6; /*For gradient background*/
  --color-main-dark: #2d2b49; /*For gradient background*/
  --color-accent: #373c5c;
  --color-discord: #5865f2;
  --color-discord-light: #8791f6;/*For gradient background*/
  --color-text-primary: #f5f5f5;
  --color-text-secondary: #d4d4d4;
  --color-red: #ef4444;
  --color-red-dark: #dc2626; /*For gradient background*/
  --color-green: #22c55e;
  --color-green-dark: #16a34a; /*For gradient background*/
  --color-blue: #38bdf8;
  --color-blue-dark: #3b82f6; /*For gradient background*/
  --color-top-donator: #38bdf8;
  --color-top-donator-dark: #3b82f6; /*For gradient background*/
  --color-text-top-donator: #075985;
  
  --bg-0: #0d0d0d;
  --bg-1: #171717; 
  --bg-2: #1f1f25; 
  
  --logo-height: 256px;
  --header-image: url(https://i.ibb.co/3yNwXLc5/image.png);
  --header-image-height: 486px;
  --header-image-opacity: 0.4;
  --header-image-blur: 2px;
  
  --bg-error: 
}

body {
font-family: "Montserrat", sans-serif;
font-optical-sizing: auto;
}
body::before {
content: "";
position: absolute;
top: 0;
left: 0;
right: 0;
width: 100%;
height: 100%;
max-height: 400px;
z-index: -1;
background: var(--bg-image) center center/cover no-repeat;
mask-image: linear-gradient(rgba(0, 0, 0, 0.75) 50%, rgba(0, 0, 0, 0.25));
pointer-events: none;
}

.transition-all {
  transition-duration: 300ms !important;
}

.header-splash {
  background: var(--header-image) no-repeat 50% /cover;
  height: var(--header-image-height);
  opacity: var(--header-image-opacity);
  filter: blur(var( --header-image-blur));
}

.header-splash-gradient-overlay {
  background: linear-gradient(90deg, #333948, #2e2639 22.69%, #2d2539 45.62%, #312539 68.59%, #3b2339);
  height: var(--header-image-height);
}

.header-splash-gray-overlay {
  background: linear-gradient(
    180deg,
    rgb(20 20 20 / 0.35) 0%,
    rgb(25 25 25 / 0.55) 40%,
    rgb(38 38 38 / 0.75) 70%,
    var(--bg-2) 100%
  );
  height: var(--header-image-height);

}



.my-text-main {
  color: var(--color-main);
}

.my-text-primary {
  color: var(--color-text-primary);
}

.my-text-primary-hover:hover {
  color: var(--color-text-primary) !important;
}

.my-text-secondary {
  color: var(--color-text-secondary);
}

.bg-1 {
  background-color: var(--bg-1);
}

.bg-2 {
  background-color: var(--bg-2);
}

.discord-bg {
  background: rgb(88,101,242);
background: linear-gradient(90deg, var(--color-discord) 0%, var(--color-discord-light) 100%);
}

.main-bg {
  background: var(--color-main);
background: linear-gradient(90deg, var(--color-main) 0%, var(--color-main-light) 100%);
}

.red-bg {
  background: linear-gradient(85.06deg, var(--color-red), var(--color-red-dark));
}

.green-bg {
  background: linear-gradient(85.06deg, var(--color-green), var(--color-green-dark));
}

.blue-bg {
  background: linear-gradient(85.06deg, var(--color-blue), var(--color-blue-dark));
}

.tooltip::before {
  background-color: var(--bg-2);
  color: var(--color-text-primary);
  border: 1px solid #a3a3a3;
}

.my-drop-shadow {
  --tw-drop-shadow: drop-shadow(0 4px 3px rgb(0 0 0 / 0.5)) drop-shadow(0 2px 2px rgb(0 0 0 / 0.3)) !important;
  filter: var(--tw-blur) var(--tw-brightness) var(--tw-contrast) var(--tw-grayscale) var(--tw-hue-rotate) var(--tw-invert) var(--tw-saturate) var(--tw-sepia) var(--tw-drop-shadow);
}

.my-shadow {
  --tw-shadow: 0 4px 6px -1px rgb(0 0 0 / 0.5), 0 2px 4px -2px rgb(0 0 0 / 0.5);
  --tw-shadow-colored: 0 4px 6px -1px var(--tw-shadow-color), 0 2px 4px -2px var(--tw-shadow-color);
  box-shadow: var(--tw-ring-offset-shadow, 0 0 #0000), var(--tw-ring-shadow, 0 0 #0000), var(--tw-shadow);
}

.sliderm__pagination[data-active="true"] {
  border-color: var(--color-main) !important;
}

.store-menu::before, .store-menu::after {
content: '';
display: block;
width: 50px;
height: 50px;
transform: translate(-50%, -50%);
position: absolute;
border-radius: 50%;
z-index: -1;
background-color: var(--color-main);
transition: 1s ease;
}
.store-menu::before {
top: -1em;
left: -1em;
}
.store-menu::after {
left: calc(100% + 1em);
top: calc(100% + 1em);
}
.store-menu:hover::before, .store-menu:hover::after {
height: 1200px;
width: 1200px;
}

.widget {
  padding-top: 1.5rem;
padding-bottom: 1.5rem; 
padding-left: 1.5rem;
padding-right: 1.5rem; 
border-radius: 0.375rem; 
border-width: 1px; 
border-color: #404040;
background: var(--bg-1);
}

@media (min-width: 1024px) { 
  .widget {
padding-left: 2.5rem;
padding-right: 2.5rem; 
}
}

.widget .widget-title {
  margin-bottom: 0.5rem; 
font-size: 1.125rem; 
line-height: 1.75rem; 
font-weight: 600; 
text-transform: uppercase; 
color: var(--color-main);
letter-spacing: 0.05em;
}

.widget-goal .progress {
  height: 12px;
  background: var(--bg-0);
  position: relative;
  border-radius: 5px;
  transition: all 0.2s ease-out;
}

.widget-goal .my-progress-bar {
  
  position: absolute;
  transition: all 0.2s ease-out;
  height: 100%;
  background: var(--color-main);
  border-radius: 5px;
}

.widget-goal .my-progress-bar.my-striped {
  background-image: linear-gradient(45deg, rgba(0, 0, 0, .15) 25%, transparent 25%, transparent 50%, rgba(0, 0, 0, .15) 50%, rgba(0, 0, 0, .15) 75%, transparent 75%, transparent);
  background-size: 40px 40px;
}

.widget-goal .my-progress-bar.my-animated {
  animation: 1.5s linear infinite progress-bar-striped;
}

@keyframes progress-bar-striped {
  0% {
      background-position: 40px 0
  }

  100% {
      background-position: 0 0
  }
}

.widget-top-donator {
  background: var(--color-top-donator);
  background: linear-gradient(90deg, var(--color-top-donator-dark) 0%, var(--color-top-donator) 100%);
}

.store-product-popup-content {
      padding: 0 !important;
  max-width: 1032px;
}

.popup, .modal::backdrop, .drawer-toggle:checked~.drawer-side>.drawer-overlay {
  --tw-bg-opacity: 0.1;
  --tw-backdrop-blur: blur(16px);
  --tw-backdrop-brightness: ;
  --tw-backdrop-contrast: ;
  --tw-backdrop-grayscale: ;
  --tw-backdrop-hue-rotate: ;
  --tw-backdrop-invert: ;
  --tw-backdrop-opacity: ;
  --tw-backdrop-saturate: ;
  --tw-backdrop-sepia: ;
  backdrop-filter: var(--tw-backdrop-blur) var(--tw-backdrop-brightness) var(--tw-backdrop-contrast) var(--tw-backdrop-grayscale) var(--tw-backdrop-hue-rotate) var(--tw-backdrop-invert) var(--tw-backdrop-opacity) var(--tw-backdrop-saturate) var(--tw-backdrop-sepia);
  background-color: rgb(0 0 0 / var(--tw-bg-opacity)) !important;
}

.basket-popup-content .popup-close {
  z-index: 9999;
  opacity: 1;
  filter: brightness(0) saturate(100%);
}
.popup-scroll-cont {
  display: flex;
  height: 100%;
  inset: 0;
  justify-content: center;
  align-items: center;
  width: 100%;
  position: fixed;
  overflow: auto;
  
}

.login-popup-content {
      width: 100%;
  max-width: 1032px;
  overflow: hidden;
  padding: 120px 2rem 130px;
  filter: drop-shadow(0 4px 3px rgb(0 0 0 / 0.07)) drop-shadow(0 2px 2px rgb(0 0 0 / 0.06));
  border-radius: 0.375rem;
  border: 1px solid #404040;
}

.store-product-full {
  background: var(--bg-1) !important;
  border-radius: 0.375rem !important;
  border: 1px solid #404040 !important;
  box-shadow: 0 4px 6px -1px rgb(0 0 0 / 0.1), 0 2px 4px -2px rgb(0 0 0 / 0.1);
  overflow: hidden;
}

.gift-form-popup .popup-content {
  background: var(--bg-1) !important;
  box-shadow: 0 4px 6px -1px rgb(0 0 0 / 0.1), 0 2px 4px -2px rgb(0 0 0 / 0.1);
  border-radius: 0.375rem;
  border: 1px solid #404040;
  overflow: hidden;
}

.store-product-popup-content {
  max-height: 90vh;
}

.store-product-options {
      padding: 0px !important;
  border: 1px solid #262626 !important;
}

.store-product-options p {
  font-size: 0.875rem !important; 
line-height: 1.25rem !important; 
color: rgb(212,212,212) !important;
}

.basket-popup-content {
  filter: drop-shadow(0 4px 3px rgb(0 0 0 / 0.07)) drop-shadow(0 2px 2px rgb(0 0 0 / 0.06));
}















.btn-primary,
.btn-secondary,
.btn-tertiary {
border-radius: 2px;
}

.btn-primary:hover, .btn-primary:focus,
.btn-secondary:hover,
.btn-secondary:focus {
box-shadow: 0 0 6px rgb(from var(--btn-color-bg-hover) r g b/0.6);
}

.quantity-field {
border-radius: 5px;
}

.site-header-inner .info .image {
border-radius: 5px;
}
.site-header-inner .user-name ul li {
overflow: hidden;
}
.site-header-inner .user-name ul li:first-child {
border-top-left-radius: 2px;
border-top-right-radius: 2px;
}
.site-header-inner .user-name ul li:last-child {
border-bottom-left-radius: 2px;
border-bottom-right-radius: 2px;
}

.site-sale-banner {
border-radius: 5px;
}

.site-home-categories .category {
border-radius: 5px;
padding: 20px var(--widget-padding);
background: var(--color-brighter-bg);
transition: color 0.15s ease-in-out;
}
.site-home-categories .category:hover {
color: var(--color-primary);
}

.category-description {
border-radius: 5px;
background: var(--color-brighter-bg);
}

.store-text {
border-radius: 5px;
background: var(--color-brighter-bg);
}
.store-text h1,
.store-text h2,
.store-text h3,
.store-text h4,
.store-text h5,
.store-text h6 {
text-align: center;
}

.store-products-list .store-product,
.store-products-images .store-product {
border-radius: 5px;
background: var(--color-brighter-bg);
}

.store-products-images .store-product {
text-align: center;
}

.no-products {
color: var(--color-text-secondary);
background: var(--color-brighter-bg);
border-radius: 5px;
}

.store-product-full {
  background:
    linear-gradient(
      180deg,
      color-mix(in srgb, var(--color-main) 3%, transparent),
      transparent
    ),
    var(--bg-1);
}

.store-product .quantity-field input[type=number] {
border: none;
}

@media (width > 960px) {
.navigation-horizontal > ul {
  border-radius: 5px;
}
}
.navigation-horizontal .has-children > ul {
border-radius: 5px;
}

.widget-top-donator .avatar {
border-radius: 50%;
}

@media (width > 600px) {
.popup-content {
  border-radius: 5px;
}
}

.popup-close {
border-radius: 0 5px 0 0px;
z-index: 50;
}

.basket-popup-content,
.basket-popup-content .popup-close {
border-radius: 0;
}

.basket-items {
padding: var(--widget-padding) calc(var(--content-padding) - var(--widget-padding));
}

.basket-item {
border-radius: 5px;
}
.basket-item .quantity {
border-radius: 2px;
}

.toast {
border-radius: 6px;
}

/* =========================
   Ambient Bubble Layer (FIXED)
   ========================= */

.ambient-bubbles {
  position: absolute;
  inset: 0;
  z-index: 1;
  overflow: hidden;
  filter: blur(6px);
}

.ambient-bubbles span {
  position: absolute;
  display: block;
  animation: bubble-float 45s linear infinite;
}

.ambient-bubbles span i {
  display: block;
  width: 220px;
  height: 220px;
  border-radius: 50%;
  background: radial-gradient(
    circle,
    color-mix(in srgb, var(--color-main) 60%, transparent) 0%,
    transparent 70%
  );
  opacity: 0.18;
  animation: bubble-pulse 6s ease-in-out infinite;
}

/* Individual variation */
.ambient-bubbles span:nth-child(1) {
  left: 10%;
  top: 30%;
  animation-duration: 52s;
}
.ambient-bubbles span:nth-child(2) {
  left: 70%;
  top: 20%;
  animation-duration: 38s;
}
.ambient-bubbles span:nth-child(3) {
  left: 40%;
  top: 70%;
  animation-duration: 60s;
}
.ambient-bubbles span:nth-child(4) {
  left: 85%;
  top: 60%;
  animation-duration: 44s;
}
.ambient-bubbles span:nth-child(5) {
  left: 25%;
  top: 85%;
  animation-duration: 36s;
}
.ambient-bubbles span:nth-child(6) {
  left: 55%;
  top: 10%;
  animation-duration: 68s;
}

/* =========================
   Animations
   ========================= */

@keyframes bubble-float {
  0% {
    transform: translate(0, 0);
  }
  50% {
    transform: translate(80px, -140px);
  }
  100% {
    transform: translate(0, -280px);
  }
}

@keyframes bubble-pulse {
  0%, 100% {
    opacity: 0.14;
    transform: scale(1);
  }
  50% {
    opacity: 0.22;
    transform: scale(1.08);
  }
}

/* =========================
   Ambient Color Sploshes
   ========================= */

.ambient-color-sploshes {
  position: absolute;
  inset: 0;
  z-index: 0;
  overflow: hidden;
}

.ambient-color-sploshes span {
  position: absolute;
  width: 900px;
  height: 900px;
  border-radius: 50%;
  filter: blur(140px);
  opacity: 0.18;
  background: color-mix(
    in srgb,
    var(--color-main) 35%,
    transparent
  );
}

/* Placement */
.ambient-color-sploshes span:nth-child(1) {
  top: -20%;
  left: -15%;
}

.ambient-color-sploshes span:nth-child(2) {
  top: 40%;
  right: -20%;
  background: color-mix(
    in srgb,
    var(--color-main-light) 35%,
    transparent
  );
}

.ambient-color-sploshes span:nth-child(3) {
  bottom: -30%;
  left: 30%;
  background: color-mix(
    in srgb,
    var(--color-main-dark) 35%,
    transparent
  );
}
/* =========================
   Header Ember Gradient
   ========================= */

.header-ember-base {
  position: absolute;
  inset: 0;
  z-index: 35;
  pointer-events: none;

  background: linear-gradient(
    to top,
    var(--bg-2) 0%,
    color-mix(in srgb, var(--bg-2) 70%, transparent) 25%,
    transparent 80%
  );
}

/* =========================
   Header Flame Particles
   ========================= */

.header-flame-particles {
  position: absolute;
  inset: 0;
  z-index: 40;
  pointer-events: none;
  overflow: hidden;
}

.header-flame-particles span {
  position: absolute;
  bottom: -10%;
  width: 14px;
  height: 14px;
  border-radius: 50%;

  background: radial-gradient(
    circle,
    var(--color-main-light),
    transparent 70%
  );

  opacity: 0.35;
  filter: blur(1.5px);

  animation:
    flame-rise 10s linear infinite,
    flame-flicker 3s ease-in-out infinite;
}

/* Variation */
.header-flame-particles span:nth-child(1) { left: 10%; animation-duration: 9s; }
.header-flame-particles span:nth-child(2) { left: 22%; animation-duration: 12s; }
.header-flame-particles span:nth-child(3) { left: 35%; animation-duration: 8s; }
.header-flame-particles span:nth-child(4) { left: 48%; animation-duration: 14s; }
.header-flame-particles span:nth-child(5) { left: 62%; animation-duration: 10s; }
.header-flame-particles span:nth-child(6) { left: 75%; animation-duration: 13s; }
.header-flame-particles span:nth-child(7) { left: 88%; animation-duration: 11s; }

/* =========================
   Animations
   ========================= */

@keyframes flame-rise {
  0% {
    transform: translateY(0) scale(0.8);
    opacity: 0;
  }
  15% {
    opacity: 0.35;
  }
  100% {
    transform: translateY(-420px) scale(1.4);
    opacity: 0;
  }
}

@keyframes flame-flicker {
  0%, 100% {
    filter: blur(1px);
  }
  50% {
    filter: blur(2.5px);
  }
}


.toast-close {
border-radius: 2px;
}