/** Shopify CDN: Minification failed

Line 474:0 Expected "}" to go with "{"

**/
/**
 * EVIVA GAMBLE — global brand layer
 *
 * Loaded after Horizon base.css. Defines --eviva-* design tokens translated
 * from the Next.js globals.css palette. Does not replace Horizon variables;
 * supplements them for custom sections and shared utilities.
 */

:root {
  color-scheme: dark;

  /* ── Brand colors (OKLCH from eviva-gamble-clothing/app/globals.css) ── */
  --eviva-background: oklch(0.16 0.012 165);
  --eviva-foreground: oklch(0.95 0.008 95);
  --eviva-card: oklch(0.2 0.014 165);
  --eviva-card-foreground: oklch(0.95 0.008 95);
  --eviva-muted: oklch(0.24 0.018 165);
  --eviva-muted-foreground: oklch(0.7 0.02 110);
  --eviva-primary: oklch(0.74 0.14 82);
  --eviva-primary-foreground: oklch(0.18 0.02 120);
  --eviva-secondary: oklch(0.26 0.04 165);
  --eviva-secondary-foreground: oklch(0.95 0.008 95);
  --eviva-emerald: oklch(0.38 0.1 165);
  --eviva-emerald-foreground: oklch(0.95 0.03 95);
  --eviva-border: oklch(0.98 0 0 / 12%);
  --eviva-input: oklch(0.98 0 0 / 15%);
  --eviva-ring: oklch(0.74 0.14 82);

  /* Hex fallbacks for contexts that require solid colors */
  --eviva-background-hex: #0c1410;
  --eviva-foreground-hex: #f2f0eb;
  --eviva-primary-hex: #d4b456;
  --eviva-emerald-hex: #245a42;

  /* ── Radius & spacing ── */
  --eviva-radius: 0.25rem;
  --eviva-radius-sm: 0.15rem;
  --eviva-radius-md: 0.2rem;
  --eviva-radius-lg: 0.25rem;

  /* Next.js max-w-7xl + horizontal padding */
  --eviva-container-max: 80rem;
  --eviva-container-padding: 1.25rem;
  --eviva-container-padding-lg: 2rem;

  /* Section vertical rhythm */
  --eviva-section-padding-y: 5rem;
  --eviva-section-padding-y-lg: 7rem;

  /* ── Motion ── */
  --eviva-transition-duration: 0.25s;
  --eviva-transition-duration-slow: 0.5s;
  --eviva-transition-easing: ease-out;

  /* ── Typography tracking (uppercase labels) ── */
  --eviva-tracking-label: 0.2em;
  --eviva-tracking-label-wide: 0.3em;
}

/* ── Base enhancements (scoped to eviva-theme body class) ── */

.eviva-theme {
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  background-color: var(--eviva-background);
  color: var(--eviva-foreground);
  font-family: var(--eviva-font-body);
}

.eviva-theme ::selection {
  background-color: oklch(from var(--eviva-primary) l c h / 35%);
  color: var(--eviva-foreground);
}

/* ── Typography utilities ── */

.eviva-font-heading {
  font-family: var(--eviva-font-heading);
  font-style: var(--font-heading--style);
  font-weight: var(--font-heading--weight);
}

.eviva-font-body {
  font-family: var(--eviva-font-body);
  font-style: var(--font-body--style);
  font-weight: var(--font-body--weight);
}

.eviva-eyebrow {
  font-size: 0.75rem;
  font-weight: 500;
  letter-spacing: var(--eviva-tracking-label-wide);
  text-transform: uppercase;
  color: var(--eviva-primary);
}

.eviva-text-muted {
  color: var(--eviva-muted-foreground);
}

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

/* ── Layout ── */

.eviva-container {
  width: 100%;
  max-width: var(--eviva-container-max);
  margin-inline: auto;
  padding-inline: var(--eviva-container-padding);
}

@media screen and (min-width: 990px) {
  .eviva-container {
    padding-inline: var(--eviva-container-padding-lg);
  }
}

.eviva-section {
  padding-block: var(--eviva-section-padding-y);
}

@media screen and (min-width: 990px) {
  .eviva-section {
    padding-block: var(--eviva-section-padding-y-lg);
  }
}

/* ── Links ── */

.eviva-link {
  color: rgb(var(--color-foreground-rgb) / 0.8);
  text-decoration: none;
  transition: color var(--eviva-transition-duration) var(--eviva-transition-easing);
}

.eviva-link:hover {
  color: var(--eviva-primary);
}

.eviva-link:focus-visible {
  outline: 2px solid var(--eviva-ring);
  outline-offset: 2px;
}

.eviva-link--muted {
  color: var(--eviva-muted-foreground);
}

.eviva-link--muted:hover {
  color: var(--eviva-primary);
}

/* ── Buttons (utility classes for future custom sections) ── */

.eviva-button {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 0.5rem;
  padding: 0.875rem 2rem;
  font-size: 0.75rem;
  font-weight: 600;
  letter-spacing: var(--eviva-tracking-label);
  text-transform: uppercase;
  text-decoration: none;
  border: 1px solid transparent;
  border-radius: var(--eviva-radius);
  cursor: pointer;
  transition:
    background-color var(--eviva-transition-duration) var(--eviva-transition-easing),
    border-color var(--eviva-transition-duration) var(--eviva-transition-easing),
    color var(--eviva-transition-duration) var(--eviva-transition-easing),
    opacity var(--eviva-transition-duration) var(--eviva-transition-easing);
}

.eviva-button:focus-visible {
  outline: 2px solid var(--eviva-ring);
  outline-offset: 2px;
}

.eviva-button--primary {
  background-color: var(--eviva-primary);
  color: var(--eviva-primary-foreground);
  border-color: var(--eviva-primary);
}

.eviva-button--primary:hover {
  background-color: oklch(from var(--eviva-primary) l c h / 90%);
  border-color: oklch(from var(--eviva-primary) l c h / 90%);
}

.eviva-button--outline {
  background-color: transparent;
  color: var(--eviva-foreground);
  border-color: var(--eviva-border);
}

.eviva-button--outline:hover {
  border-color: var(--eviva-primary);
  color: var(--eviva-primary);
}

.eviva-button:disabled,
.eviva-button[aria-disabled='true'] {
  opacity: 0.5;
  cursor: not-allowed;
  pointer-events: none;
}

/* ── Surfaces ── */

.eviva-surface-card {
  background-color: var(--eviva-card);
  color: var(--eviva-card-foreground);
  border: 1px solid var(--eviva-border);
}

.eviva-surface-emerald {
  background-color: var(--eviva-emerald);
  color: var(--eviva-emerald-foreground);
}

/* ── Decorative pattern (product grid, future sections) ── */

.eviva-bg-suits {
  background-image: url('suit-pattern.svg');
  background-size: 200px 200px;
  background-position: top left;
  background-repeat: repeat;
}
/* Strona koszyka */
  .content-for-layout:has(cart-items-component) {
    background-color: #06110c;
    background-image: url('suit-pattern.svg');
    background-size: 200px 200px;
    background-position: top left;
    background-repeat: repeat;
  }

  /* Usuń białe tło sekcji koszyka */
  .content-for-layout:has(cart-items-component) .shopify-section,
  .content-for-layout:has(cart-items-component) .section-background,
  .content-for-layout:has(cart-items-component) .section {
    background: transparent !important;
  }
  .eviva-product-card__title,
  .content-for-layout:has(cart-items-component) .eviva-recommendation-title {
    display: -webkit-box;
    margin: 0.25rem 0 0;
    overflow: hidden;
    -webkit-box-orient: vertical;
    -webkit-line-clamp: 2;
    font-family: var(--eviva-font-heading) !important;
    font-size: 1.1rem;
    font-weight: 500;
    line-height: 1.375;
    color: var(--eviva-foreground);
  }
  .content-for-layout:has(cart-items-component) product-price,
  .content-for-layout:has(cart-items-component) product-price * {
    margin: 0 !important;
    font-family: 'Playfair Display', Georgia, serif !important;
    font-size: 1.1rem !important;
    font-weight: 400 !important;
    line-height: 1.2 !important;
    color: var(--eviva-primary) !important;
  }
  /* Pusty koszyk */
  .content-for-layout:has(cart-items-component) .cart-page--empty h1,
  .content-for-layout:has(cart-items-component) .cart-page--empty h2,
  .content-for-layout:has(cart-items-component) .cart-page--empty .title {
    font-family: var(--eviva-font-heading) !important;
    color: var(--eviva-foreground) !important;
    font-weight: 500;
  }

  .content-for-layout:has(cart-items-component) .cart-page--empty .button,
  .content-for-layout:has(cart-items-component) .cart-page--empty .button-text {
    font-family: var(--eviva-font-body) !important;
    font-weight: 600;
    letter-spacing: 0.08em;
    text-transform: uppercase;
  }

  /* Nagłówek sekcji rekomendacji w koszyku */
  .content-for-layout:has(cart-items-component) .text-block h3 {
    font-family: var(--eviva-font-heading) !important;
    font-size: 2rem !important;
    font-weight: 500 !important;
    line-height: 1.15 !important;
    color: var(--eviva-foreground) !important;
  }

  /* „Zobacz wszystko” w rekomendacjach na stronie koszyka */
  .content-for-layout[data-template='cart']
  .eviva-product-list-button a {
    background: transparent !important;
    border: 0 !important;
    box-shadow: none !important;
    padding: 0 !important;

    font-family: var(--eviva-font-heading) !important;
    font-size: 0.875rem !important;
    font-weight: 600 !important;
    line-height: 1.2 !important;
    letter-spacing: 0.12em !important;
    text-transform: uppercase !important;

    color: var(--eviva-foreground) !important;
    text-decoration: none !important;
  }

  .content-for-layout[data-template='cart']
  .eviva-product-list-button a:hover {
    color: var(--eviva-foreground) !important;
  }
  
/* ── Scroll indicator animation (hero, future section) ── */

@keyframes eviva-scroll-line {
  0% {
    transform: scaleY(0);
    transform-origin: top;
  }

  45% {
    transform: scaleY(1);
    transform-origin: top;
  }

  55% {
    transform: scaleY(1);
    transform-origin: bottom;
  }

  100% {
    transform: scaleY(0);
    transform-origin: bottom;
  }
}

.eviva-scroll-indicator {
  display: block;
  height: 100%;
  width: 100%;
  background-color: var(--eviva-primary);
  animation: eviva-scroll-line 2.4s ease-in-out infinite;
}

/* ── Focus ring helper ── */

.eviva-focus-ring:focus-visible {
  outline: 2px solid var(--eviva-ring);
  outline-offset: 2px;
}
/* Pełny koszyk - biały tekst */
.content-for-layout:has(cart-items-component) {
  color: var(--eviva-foreground) !important;
}

.content-for-layout:has(cart-items-component) h1,
.content-for-layout:has(cart-items-component) h2,
.content-for-layout:has(cart-items-component) h3,
.content-for-layout:has(cart-items-component) h4,
.content-for-layout:has(cart-items-component) p,
.content-for-layout:has(cart-items-component) span,
.content-for-layout:has(cart-items-component) a,
.content-for-layout:has(cart-items-component) label {
  color: var(--eviva-foreground) !important;
}
/* Pełny koszyk - elementy z własnym kolorem */
.content-for-layout:has(cart-items-component)
.cart-items__remove {
  color: var(--eviva-foreground) !important;
}

.content-for-layout:has(cart-items-component)
.cart-items__remove svg,
.content-for-layout:has(cart-items-component)
.cart-items__remove svg * {
  stroke: currentColor !important;
  color: var(--eviva-foreground) !important;
}

.content-for-layout:has(cart-items-component)
.cart-items__price,
.content-for-layout:has(cart-items-component)
.cart-items__price *,
.content-for-layout:has(cart-items-component)
.cart-items__price text-component {
  color: var(--eviva-foreground) !important;
}

.content-for-layout:has(cart-items-component)
.cart-items__variants,
.content-for-layout:has(cart-items-component)
.cart-items__variant,
.content-for-layout:has(cart-items-component)
.cart-items__variant * {
  color: var(--eviva-foreground) !important;
}
/* Panel koszyka */
.content-for-layout:has(cart-items-component) .cart-page {
  position: relative;
  isolation: isolate;
  padding: 2rem;
  margin-top: 4rem;
}

/* tylko tło panelu */
.content-for-layout:has(cart-items-component) .cart-page::before {
  content: '';
  position: absolute;
  top: 0;
  bottom: 0;
  left: 0;
  right: 11rem;

  background: rgba(8, 12, 10, 0.92);
  border: 1px solid rgba(212, 180, 86, 0.18);
  border-radius: 18px;

  z-index: -1;
}

/* Pusty koszyk na desktopie */
.content-for-layout:has(cart-items-component)
.cart-page.cart-page--empty::before {
  right: 0;
}

/* Wersja mobilna */
@media screen and (max-width: 749px) {
  .content-for-layout:has(cart-items-component) .cart-page {
    margin-top: 1.5rem;
    padding: 1rem;
  }

  .content-for-layout:has(cart-items-component) .cart-page::before {
    top: 0;
    right: 0;
    bottom: 0;
    left: 0;
    width: auto;
    transform: none;
    border-radius: 14px;
  }
}

@media screen and (max-width: 749px) {

  /* "Może Ci się spodobać" */
  .content-for-layout:has(cart-items-component) .text-block h3 {
    font-size: 1.2rem !important;
    line-height: 1.15 !important;
  }

@media screen and (max-width: 749px) {
  .content-for-layout[data-template='cart']
  .eviva-product-list-button a {
    font-size: 0.7rem !important;
    line-height: 1 !important;
    letter-spacing: 0.06em !important;
    white-space: nowrap !important;
  }
}
