body.catalog-page {
  background: radial-gradient(ellipse at 70% 0, #103569, transparent 48%), #020e24 !important;
  color: #fff;
}
body.catalog-page .site-header {
  background: #03132ded !important;
  border-bottom: 1px solid #2471b555;
}
body.catalog-page .site-header a {
  color: #fff;
}
body.catalog-page .site-header .logo {
  background: #fff;
  border-radius: 8px;
  padding: 5px;
}
body.catalog-page .dh {
  max-width: 1800px !important;
  width: 100% !important;
  padding: 20px 32px !important;
  box-sizing: border-box;
}
body.catalog-page .heading {
  margin: 0 0 18px !important;
  min-height: 64px;
}
body.catalog-page .heading h2 {
  font-size: clamp(26px, 3vw, 46px) !important;
  color: #fff !important;
  letter-spacing: -1.4px;
}
body.catalog-page .heading h2 em {
  font-style: normal;
  color: #ffe7a0;
}
body.catalog-page .workspace {
  display: grid !important;
  grid-template-columns: minmax(0, 3fr) minmax(290px, 1.04fr) !important;
  gap: 24px !important;
  align-items: start;
}
body.catalog-page #products {
  display: block !important;
}
body.catalog-page .fixed-product-order {
  display: grid !important;
  grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
  gap: 16px !important;
}
body.catalog-page .product {
  --accent: #ffda60;
  --top: #b87b00;
  --base: #302000;
  position: relative !important;
  display: flex !important;
  flex-direction: column !important;
  min-width: 0;
  min-height: 340px !important;
  height: 100% !important;
  padding: 16px !important;
  border: 1px solid var(--accent) !important;
  border-radius: 16px !important;
  overflow: hidden !important;
  background:
    radial-gradient(ellipse at 95% 10%, var(--top), transparent 65%),
    linear-gradient(155deg, var(--top), var(--base) 68%) !important;
  color: #fff !important;
  box-shadow: 0 5px 18px #0005;
  transition:
    transform 0.25s ease,
    box-shadow 0.25s ease,
    border-color 0.25s ease;
  box-sizing: border-box;
  cursor: pointer;
}
body.catalog-page .product.bingo {
  --accent: #ffb230;
  --top: #ad4300;
  --base: #3b1300;
}
body.catalog-page .product.power {
  --accent: #ff2851;
  --top: #870525;
  --base: #280016;
}
body.catalog-page .product.mega {
  --accent: #ff526d;
  --top: #d0092d;
  --base: #490015;
}
body.catalog-page .product.lotto {
  --accent: #16eab4;
  --top: #00845a;
  --base: #003c30;
}
body.catalog-page .product.max3d {
  --accent: #ef53ee;
  --top: #970d94;
  --base: #37023e;
}
body.catalog-page .product:before {
  content: '' !important;
  position: absolute;
  inset: 0;
  background: linear-gradient(
    155deg,
    transparent 33%,
    #ffffff15 33.3%,
    transparent 34%,
    transparent 45%,
    #fff1 45.3%,
    transparent 46%
  );
  pointer-events: none;
  z-index: 0;
}
body.catalog-page .product > * {
  position: relative;
  z-index: 1;
}
body.catalog-page .product .product-identity-art {
  display: none !important;
}
body.catalog-page .card-top {
  display: block !important;
  min-height: 76px !important;
  margin: 0 !important;
  padding: 0 !important;
}
body.catalog-page .logo-plate {
  width: 145px !important;
  height: 72px !important;
  background: transparent !important;
  box-shadow: none !important;
  padding: 0 !important;
  display: flex !important;
  align-items: center;
}
body.catalog-page .product-logo {
  position: static !important;
  width: 140px !important;
  height: 70px !important;
  object-fit: contain;
  filter: drop-shadow(0 0 9px #fff9);
}
body.catalog-page .product-caption,
body.catalog-page .draw-days,
body.catalog-page .mobile-copy {
  display: none !important;
}
body.catalog-page .desktop-copy {
  display: inline !important;
}
body.catalog-page .prize-label {
  margin: 7px 0 0 !important;
  color: #fff5df !important;
  font-size: 13px !important;
  font-weight: 700;
}
body.catalog-page .product .amount {
  font-family: var(--app-font) !important;
  font-size: clamp(24px, 2.65vw, 44px) !important;
  font-weight: 900 !important;
  line-height: 1.2 !important;
  white-space: nowrap !important;
  letter-spacing: -1.3px !important;
  margin: 0 0 8px !important;
  color: #ffe6a0 !important;
  background: linear-gradient(#fffad8, #ffde65 55%, #dc9324);
  background-clip: text;
  -webkit-background-clip: text;
  -webkit-text-fill-color: transparent;
  text-shadow: 0 3px 16px #efb93433;
}
body.catalog-page .product.keno .amount {
  font-size: clamp(21px, 2vw, 34px) !important;
}
body.catalog-page .draw-info {
  border-top: 1px solid #ffffff35;
  padding-top: 8px !important;
  min-height: 65px;
  color: #fff2e8 !important;
  font-size: 12px !important;
  line-height: 1.6 !important;
}
body.catalog-page .round-clock {
  font-size: 12px !important;
  color: #fff1dc !important;
}
body.catalog-page .round-clock b {
  font-size: 14px !important;
  color: #fff3be !important;
}
body.catalog-page .variant-slot {
  min-height: 38px !important;
  margin-top: auto !important;
  padding-top: 8px !important;
}
body.catalog-page .variant-tabs {
  display: flex !important;
  gap: 5px !important;
}
body.catalog-page .variant-tabs button {
  flex: 1;
  padding: 6px 3px !important;
  min-height: 32px;
  color: #fff !important;
  border: 1px solid var(--accent) !important;
  background: #18092266 !important;
  border-radius: 8px !important;
  font-size: 12px !important;
}
body.catalog-page .variant-tabs button[aria-selected='true'] {
  background: var(--accent) !important;
  color: #260714 !important;
  font-weight: 800;
}
body.catalog-page .product-choose {
  display: flex !important;
  align-items: center;
  justify-content: center;
  min-height: 44px !important;
  margin: 8px 0 !important;
  border: 1px solid #fff8 !important;
  border-radius: 10px !important;
  background: linear-gradient(#fff1b4, #ffd769) !important;
  color: #650911 !important;
  font-size: 16px !important;
  font-weight: 800 !important;
  text-decoration: none;
}
body.catalog-page .mega .product-choose {
  background: linear-gradient(#ffe1e9, #ff8aa7) !important;
}
body.catalog-page .lotto .product-choose {
  background: linear-gradient(#eaffba, #a2f879) !important;
  color: #064329 !important;
}
body.catalog-page .max3d .product-choose {
  background: linear-gradient(#ffe0fa, #ff8fe6) !important;
}
body.catalog-page .card-links {
  margin: 2px 0 0 !important;
}
body.catalog-page .card-links a {
  color: #fff0d6 !important;
  font-size: 12px !important;
  text-decoration: underline;
}
body.catalog-page .catalog-balls {
  position: absolute;
  right: 14px;
  top: 30px;
  display: flex;
  align-items: flex-end;
  gap: 3px;
  transform: rotate(-15deg);
  pointer-events: none;
  z-index: 0;
  opacity: 0.8;
}
body.catalog-page .catalog-balls i {
  display: grid;
  place-items: center;
  width: 58px;
  height: 58px;
  border-radius: 50%;
  background: radial-gradient(circle at 35% 25%, #fff, var(--accent) 52%, var(--base) 85%);
  box-shadow:
    8px 10px 16px #0006,
    inset -3px -4px 9px #0007;
  color: var(--base);
  font: bold 28px var(--app-font);
  font-style: normal;
  border: 2px solid #fff8;
}
body.catalog-page .catalog-balls i:first-child {
  width: 40px;
  height: 40px;
  font-size: 20px;
  transform: translateY(-20px);
}
body.catalog-page .service-sidebar {
  display: grid !important;
  gap: 12px !important;
}
body.catalog-page .service-card {
  margin: 0 !important;
  border-radius: 15px !important;
  border: 1px solid #247cbb !important;
  padding: 16px !important;
  background: linear-gradient(135deg, #0c2d61, #03142e) !important;
  color: white !important;
}
body.catalog-page .service-card h3,
body.catalog-page .service-card p {
  color: inherit !important;
}
body.catalog-page .closing-line img {
  width: 130px !important;
  height: 65px !important;
  object-fit: contain;
}
body.catalog-page #rail-clock {
  color: #ff2c70 !important;
  font-size: 24px !important;
}
body.catalog-page .rail-prize {
  font-size: 32px !important;
  font-weight: 900;
  color: #ffe28a !important;
}
body.catalog-page .closing-card .product-choose {
  background: linear-gradient(#ff2859, #d00034) !important;
  color: #fff !important;
}
body.catalog-page .closing-card > a:last-child {
  display: block;
  text-align: center;
  color: #d5e9ff !important;
  font-size: 12px;
}
body.catalog-page .rail-feature summary {
  display: flex !important;
  align-items: center;
  gap: 12px;
  min-height: 100px !important;
  padding: 0 !important;
}
body.catalog-page .rail-feature-art {
  position: static !important;
  width: 100px !important;
  height: 100px !important;
  object-fit: contain !important;
}
body.catalog-page .rail-feature-copy {
  display: flex;
  flex-direction: column;
  gap: 6px;
  min-width: 0;
}
body.catalog-page .rail-feature-copy small {
  font-size: 10px !important;
}
body.catalog-page .rail-feature-copy b {
  font-size: 17px !important;
  line-height: 1.3;
}
body.catalog-page .rail-feature-copy span {
  font-size: 12px !important;
}
body.catalog-page .rail-feature-copy em {
  font-size: 12px !important;
  color: inherit;
  text-decoration: underline;
}
body.catalog-page .feature-prize {
  background: linear-gradient(120deg, #ffdd80, #fff6de) !important;
  color: #351709 !important;
  border-color: #ffdd80 !important;
}
body.catalog-page .feature-fortune {
  background: linear-gradient(120deg, #99052a, #460019) !important;
  border-color: #f52862 !important;
}
body.catalog-page .feature-member {
  background: linear-gradient(120deg, #342161, #1c1038) !important;
  border-color: #9759cd !important;
}
body.catalog-page .sidebar-handbook,
body.catalog-page .discovery-cards {
  display: none !important;
}
@media (hover: hover) {
  body.catalog-page .product:hover {
    transform: translateY(-7px) !important;
    box-shadow:
      0 16px 28px #0008,
      0 0 22px color-mix(in srgb, var(--accent) 45%, transparent) !important;
    border-color: #fff !important;
  }
  body.catalog-page .product:hover .catalog-balls {
    transform: rotate(-8deg) translateY(-3px);
    transition: transform 0.3s;
  }
}
body.catalog-page .product:focus-within {
  outline: 2px solid #fff;
  outline-offset: 3px;
  transform: translateY(-4px);
}
@media (max-width: 1100px) {
  body.catalog-page .workspace {
    grid-template-columns: 1fr !important;
  }
  body.catalog-page .service-sidebar {
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
  }
  body.catalog-page .product .amount {
    font-size: 32px !important;
  }
}
@media (max-width: 760px) {
  body.catalog-page .dh {
    padding: 14px !important;
  }
  body.catalog-page .fixed-product-order {
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
    gap: 10px !important;
  }
  body.catalog-page .product {
    padding: 12px !important;
    min-height: 325px !important;
  }
  body.catalog-page .product .amount,
  body.catalog-page .product.keno .amount {
    font-size: 22px !important;
    white-space: normal !important;
  }
  body.catalog-page .product-logo {
    width: 110px !important;
  }
  body.catalog-page .catalog-balls {
    opacity: 0.35;
    right: 5px;
  }
  body.catalog-page .service-sidebar {
    grid-template-columns: 1fr !important;
  }
  body.catalog-page .heading h2 {
    font-size: 27px !important;
  }
}
@media (max-width: 420px) {
  body.catalog-page .fixed-product-order {
    grid-template-columns: 1fr !important;
  }
  body.catalog-page .product {
    min-height: 310px !important;
  }
}
@media (prefers-reduced-motion: reduce) {
  body.catalog-page .product,
  body.catalog-page .catalog-balls {
    transition: none !important;
    transform: none !important;
  }
}
