/* ===== Metropolis font (marka fontu) ===== */
@font-face {
  font-family: "Metropolis";
  src: url("https://ext.same-assets.com/3069022275/280130985.woff2") format("woff2");
  font-weight: 400;
  font-style: normal;
  font-display: swap;
}
@font-face {
  font-family: "Metropolis";
  src: url("https://ext.same-assets.com/3069022275/2927686666.woff2") format("woff2");
  font-weight: 500;
  font-style: normal;
  font-display: swap;
}
@font-face {
  font-family: "Metropolis";
  src: url("https://ext.same-assets.com/3069022275/1730544926.woff2") format("woff2");
  font-weight: 700;
  font-style: normal;
  font-display: swap;
}

:root {
  --theme-bg: 257 73% 24%;
  --theme-bg-2: 256 65% 16%;
  --theme-purple: 256 67% 48%;
  --theme-purple-dark: 256 73% 39%;
  --theme-purple-light: 256 60% 60%;
  --theme-card: 257 55% 30%;
  --theme-yellow: 45 100% 50%;
  --theme-yellow-hover: 46 100% 58%;
  --theme-teal: 162 45% 58%;
  --theme-cyan: 184 70% 62%;
  --theme-red: 339 64% 49%;
  --theme-border: 257 45% 40%;
  --theme-muted: 255 30% 72%;
  --theme-surface: 257 55% 28%;
  --theme-surface-deep: 257 55% 22%;
  --theme-surface-mid: 257 55% 24%;
  --theme-surface-light: 257 55% 36%;
  --theme-surface-hover: 257 55% 26%;
  --theme-surface-active: 257 55% 32%;
  --theme-surface-bright: 257 55% 34%;
  --theme-surface-brighter: 257 55% 38%;
  --theme-input: 257 73% 20%;
  --theme-accent-text: 257 73% 14%;
  --theme-accent-text-deep: 257 65% 12%;
  --theme-border-strong: 257 45% 38%;
  --theme-border-mid: 257 45% 36%;
  --theme-border-soft: 257 45% 35%;
  --theme-border-faint: 257 45% 34%;
  --theme-border-dim: 257 45% 32%;
  --theme-border-muted: 257 45% 30%;
  --theme-border-subtle: 257 45% 28%;
  --theme-border-alt: 257 40% 28%;
  --theme-border-panel: 257 40% 30%;
  --theme-border-elevated: 257 40% 32%;
  --theme-border-highlight: 257 45% 42%;
  --theme-border-inner: 257 35% 22%;
  --theme-border-inner2: 257 35% 24%;
  --theme-border-accent: 257 38% 26%;
  --theme-yellow-bright: 45 100% 55%;
  --theme-yellow-dark: 45 80% 45%;
  --theme-purple-deep: 256 67% 42%;
  --theme-purple-glow: 256 67% 55%;
  --theme-badge-muted: 257 35% 28%;
  --theme-panel: 257 52% 18%;
  --theme-panel-alt: 257 52% 17%;
  --theme-deep: 257 50% 14%;
  --theme-deeper: 257 55% 12%;
  --theme-inset: 257 50% 12%;
  --theme-elevated: 257 45% 20%;
  --theme-elevated-hover: 257 45% 26%;
  --theme-shadow: 257 73% 10%;
  --theme-ring: 257 73% 18%;
  --theme-text-faint: 255 20% 50%;
  --theme-text-dim: 255 20% 55%;
  --theme-text-dim2: 255 20% 68%;
  --theme-text-soft: 255 25% 62%;
  --theme-text-muted2: 255 25% 65%;
  --theme-text: 255 25% 68%;
  --theme-text-light: 255 25% 72%;
  --theme-text-lighter: 255 30% 75%;
  --theme-text-bright: 255 30% 78%;
  --theme-text-brighter: 255 30% 82%;
  --theme-text-pale: 255 30% 85%;
  --theme-text-pale2: 255 30% 88%;
  --theme-text-whiteish: 255 30% 90%;
  --theme-accent-soft: 45 95% 62%;
  --theme-accent-soft2: 45 95% 65%;
  --theme-accent-glow: 45 90% 58%;
  --theme-accent-warn: 45 90% 68%;
  --theme-accent-warn-bg: 38 70% 22%;
  --theme-accent-warn-bg2: 45 80% 22%;
  --theme-success: 150 55% 45%;
  --theme-success-bright: 150 55% 55%;
  --theme-success-soft: 150 55% 72%;
  --theme-success-pale: 150 55% 78%;
  --theme-success-bg: 150 40% 16%;
  --theme-success-border: 150 40% 28%;
  --theme-success-surface: 150 40% 22%;
  --theme-success-surface2: 150 40% 32%;
  --theme-info-bg: 210 45% 22%;
  --theme-info-text: 210 60% 72%;
  --theme-danger-bg: 0 60% 30%;
  --foreground: 0 0% 100%;
  --radius: 0.5rem;
}

* {
  border-color: hsl(var(--theme-border));
}

html {
  overflow-x: hidden;
  -webkit-text-size-adjust: 100%;
}

body {
  overflow-x: hidden;
  color: hsl(var(--foreground));
  background-color: hsl(var(--theme-bg));
  font-family: "Metropolis", "Segoe UI", system-ui, -apple-system, sans-serif;
  -webkit-font-smoothing: antialiased;
}

/* Tema renk yardımcıları */
.bg-theme-purple { background-color: hsl(var(--theme-purple)); }
.bg-theme-bg { background-color: hsl(var(--theme-bg)); }
.bg-theme-bg-2 { background-color: hsl(var(--theme-bg-2)); }
.bg-theme-card { background-color: hsl(var(--theme-card)); }
.bg-theme-yellow { background-color: hsl(var(--theme-yellow)); }
.text-theme-bg { color: hsl(var(--theme-bg)); }
.text-theme-teal { color: hsl(var(--theme-teal)); }
.text-theme-cyan { color: hsl(var(--theme-cyan)); }
.text-theme-red { color: hsl(var(--theme-red)); }
.border-theme-border { border-color: hsl(var(--theme-border)); }
.text-theme-yellow { color: hsl(var(--theme-yellow)); }
.ring-theme-yellow { --tw-ring-color: hsl(var(--theme-yellow)); }
.hover\:bg-theme-yellow-hover:hover { background-color: hsl(var(--theme-yellow-hover)); }
.bg-theme-purple\/20 { background-color: hsl(var(--theme-purple) / 0.2); }
.bg-theme-purple\/30 { background-color: hsl(var(--theme-purple) / 0.3); }
.hover\:ring-theme-purple:hover { --tw-ring-color: hsl(var(--theme-purple)); }
.ring-theme-purple { --tw-ring-color: hsl(var(--theme-purple)); }

.no-scrollbar::-webkit-scrollbar { display: none; }
.no-scrollbar {
  -ms-overflow-style: none;
  scrollbar-width: none;
}

.theme-gradient-text {
  background: linear-gradient(90deg, #ff5fd1 0%, #ffd93d 50%, #5be7c4 100%);
  -webkit-background-clip: text;
  background-clip: text;
  -webkit-text-fill-color: transparent;
}

.carousel-scroll { scroll-behavior: smooth; }

/* Kategori chip şeridi — yatay kaydırma, site genişliğiyle hizalı */
.category-chips-bar {
  border-bottom: 1px solid rgba(255, 255, 255, 0.05);
  background: hsl(var(--theme-bg-2));
}

.category-chips-bar__inner {
  position: relative;
  overflow: hidden;
}

.category-chips-bar__inner::before,
.category-chips-bar__inner::after {
  content: '';
  position: absolute;
  top: 0;
  bottom: 0;
  width: 2rem;
  z-index: 1;
  pointer-events: none;
}

.category-chips-bar__inner::before {
  left: 0;
  background: linear-gradient(to right, hsl(var(--theme-bg-2)) 15%, transparent);
}

.category-chips-bar__inner::after {
  right: 0;
  background: linear-gradient(to left, hsl(var(--theme-bg-2)) 15%, transparent);
}

.category-chips-bar__viewport {
  overflow-x: auto;
  overflow-y: hidden;
  width: 100%;
  max-width: 100%;
  min-width: 0;
  overscroll-behavior-x: contain;
  -webkit-overflow-scrolling: touch;
  scroll-snap-type: x proximity;
  scroll-padding-inline: 0.25rem;
  cursor: grab;
  touch-action: pan-x;
}

.category-chips-bar__viewport.is-auto-scroll {
  overflow-x: hidden;
  scroll-behavior: auto;
  scroll-snap-type: none;
}

.category-chips-bar__viewport.is-auto-scroll:not(.is-dragging):not(:hover) {
  cursor: default;
}

.category-chips-bar__viewport.is-dragging {
  cursor: grabbing;
  scroll-snap-type: none;
  user-select: none;
}

.category-chips-bar__viewport.is-dragging .category-chip {
  pointer-events: none;
}

.category-chips-bar__track {
  display: inline-flex;
  flex-wrap: nowrap;
  align-items: center;
  gap: 0.5rem;
  width: max-content;
  max-width: none;
  padding: 0.75rem 0.25rem;
  box-sizing: border-box;
}

.category-chips-bar__viewport.is-auto-scroll .category-chips-bar__track {
  will-change: transform;
}

.category-chip {
  flex-shrink: 0;
  scroll-snap-align: start;
  display: inline-flex;
  align-items: center;
  padding: 0.5rem 1rem;
  border-radius: 9999px;
  background: hsl(var(--theme-card));
  font-size: 0.875rem;
  font-weight: 500;
  line-height: 1.25;
  color: rgba(255, 255, 255, 0.9);
  text-decoration: none;
  white-space: nowrap;
  transition: background 0.15s ease, color 0.15s ease;
}

.category-chip:hover {
  background: rgba(255, 255, 255, 0.12);
  color: #fff;
}

/* Eski header güven şeridi — footer'a taşındı */
nav.border-b + div.border-b:not(footer div) {
  display: none !important;
}

/* Kategori ikon şeridi — mobilde yatay kaydırma, masaüstünde grid */
.category-icons-bar {
  background: linear-gradient(180deg, hsl(var(--theme-bg-2) / 0.15) 0%, transparent 100%);
}

.category-icons-bar__inner {
  position: relative;
}

@media (max-width: 1023px) {
  .category-icons-bar__inner::before,
  .category-icons-bar__inner::after {
    content: '';
    position: absolute;
    top: 0;
    bottom: 0;
    width: 1.25rem;
    z-index: 1;
    pointer-events: none;
  }

  .category-icons-bar__inner::before {
    left: 0;
    background: linear-gradient(to right, hsl(var(--theme-bg)) 20%, transparent);
  }

  .category-icons-bar__inner::after {
    right: 0;
    background: linear-gradient(to left, hsl(var(--theme-bg)) 20%, transparent);
  }
}

.category-icons-scroll {
  overflow-x: auto;
  overflow-y: hidden;
  overscroll-behavior-x: contain;
  -webkit-overflow-scrolling: touch;
  scroll-snap-type: x proximity;
  touch-action: pan-x;
}

.category-icons-grid {
  display: flex;
  flex-wrap: nowrap;
  align-items: flex-start;
  gap: 0.75rem;
  width: max-content;
  padding: 0.125rem 0.25rem;
}

.category-icon-card {
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 0.375rem;
  flex: 0 0 auto;
  width: 4.75rem;
  scroll-snap-align: start;
  text-decoration: none;
}

.category-icon-circle {
  width: 3.25rem;
  height: 3.25rem;
  border-radius: 50%;
  display: flex;
  align-items: center;
  justify-content: center;
  border: 2px solid rgba(255, 255, 255, 0.22);
  box-shadow: 0 8px 18px rgba(0, 0, 0, 0.3);
  transition: transform 0.35s ease, box-shadow 0.35s ease;
}

@media (min-width: 640px) and (max-width: 1023px) {
  .category-icons-grid {
    gap: 1rem;
  }

  .category-icon-card {
    width: 5.25rem;
  }

  .category-icon-circle {
    width: 3.5rem;
    height: 3.5rem;
  }
}

@media (min-width: 1024px) {
  .category-icons-scroll {
    overflow: visible;
  }

  .category-icons-grid {
    display: grid;
    grid-template-columns: repeat(12, minmax(0, 1fr));
    gap: 1rem;
    width: 100%;
    padding: 0;
  }

  .category-icon-card {
    width: auto;
    gap: 0.5rem;
  }

  .category-icon-circle {
    width: 4rem;
    height: 4rem;
  }
}

.category-icon-card:hover .category-icon-circle {
  transform: translateY(-4px) scale(1.06);
  box-shadow: 0 12px 24px rgba(0, 0, 0, 0.38);
}

.category-icon-slot {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 1.625rem;
  height: 1.625rem;
}

.category-icon-slot .category-icon-svg {
  width: 1.625rem;
  height: 1.625rem;
  display: block;
  filter: drop-shadow(0 2px 4px rgba(0, 0, 0, 0.4));
  transition: transform 0.35s ease;
}

@media (min-width: 1024px) {
  .category-icon-slot {
    width: 2rem;
    height: 2rem;
  }

  .category-icon-slot .category-icon-svg {
    width: 2rem;
    height: 2rem;
  }
}

.category-icon-card:hover .category-icon-slot .category-icon-svg,
.category-icon-card:hover .category-icon-img {
  transform: scale(1.12) rotate(6deg);
}

.category-icon-img {
  width: 1.625rem;
  height: 1.625rem;
  object-fit: contain;
  transition: transform 0.35s ease;
}

@media (min-width: 1024px) {
  .category-icon-img {
    width: 2rem;
    height: 2rem;
  }
}

.category-icon-img--uploaded {
  filter: brightness(0) invert(1) drop-shadow(0 2px 4px rgba(0, 0, 0, 0.4));
}

.category-icon-title {
  color: #e5e7eb;
  font-size: 0.625rem;
  font-weight: 600;
  text-align: center;
  line-height: 1.25;
  max-width: 100%;
  transition: color 0.35s ease;
}

@media (min-width: 1024px) {
  .category-icon-title {
    font-size: 0.6875rem;
  }
}

.category-icon-card:hover .category-icon-title {
  color: #fff;
}

/* Partner logoları */
.partners-strip {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  justify-content: center;
  gap: 2rem;
}

.partners-strip__link {
  display: flex;
  align-items: center;
  justify-content: center;
  opacity: 0.7;
  transition: opacity 0.15s ease;
}

.partners-strip__link:hover {
  opacity: 1;
}

.partner-logo {
  height: 2rem;
  width: auto;
  max-width: 7rem;
  object-fit: contain;
  opacity: 0.85;
}

/* Ürün kartı */
.product-card {
  display: flex;
  flex-direction: column;
  height: 100%;
  background-color: hsl(var(--theme-card));
  border-radius: 0.5rem;
  overflow: hidden;
  transition: transform 0.15s ease;
}
.product-card:hover { transform: translateY(-2px); }

.product-card-cover {
  position: relative;
  width: 100%;
  aspect-ratio: 2 / 3;
  overflow: hidden;
  background: hsl(var(--theme-bg-2));
}

.product-card-cover img,
.product-card-cover > div {
  position: absolute;
  inset: 0;
  width: 100%;
  height: 100%;
  display: block;
}

.product-card-cover img {
  object-fit: cover;
  object-position: center;
}

.product-card-cover__placeholder {
  width: 100%;
  height: 100%;
  background: linear-gradient(145deg, hsl(var(--theme-surface)), hsl(var(--theme-surface-deep)));
}

.product-card__media {
  display: block;
  text-decoration: none;
  color: inherit;
}

.product-card__body {
  flex: 1;
  padding: 0.75rem;
  display: flex;
  flex-direction: column;
  gap: 0.25rem;
  min-height: 0;
}

.product-card__title {
  display: -webkit-box;
  -webkit-line-clamp: 2;
  -webkit-box-orient: vertical;
  overflow: hidden;
  min-height: calc(0.8125rem * 1.35 * 2);
  font-size: 0.8125rem;
  font-weight: 500;
  line-height: 1.35;
  color: #fff;
  text-decoration: none;
  transition: color 0.15s ease;
}
.product-card__title:hover { color: hsl(var(--theme-yellow-hover)); }

.product-card__price-row {
  display: flex;
  flex-wrap: wrap;
  align-items: baseline;
  gap: 0.35rem;
  margin-top: 0.15rem;
}

.product-card__price {
  font-size: 1rem;
  font-weight: 700;
  color: hsl(var(--theme-yellow-hover));
}

.product-card__price-old {
  font-size: 0.75rem;
  color: rgba(255, 255, 255, 0.4);
  text-decoration: line-through;
}

.product-card__tax {
  font-size: 0.625rem;
  color: rgba(255, 255, 255, 0.4);
  margin: 0;
}

.product-card__actions {
  display: flex;
  gap: 0.35rem;
  margin-top: auto;
  padding-top: 0.5rem;
}

.product-card__btn {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  border: none;
  border-radius: 0.375rem;
  font-size: 0.75rem;
  font-weight: 600;
  line-height: 1;
  cursor: pointer;
  transition: background 0.15s ease, color 0.15s ease, opacity 0.15s ease;
  padding: 0.6rem 0.55rem;
  min-height: 2.75rem;
}
.product-card__btn:disabled {
  opacity: 0.5;
  cursor: not-allowed;
}

.product-card__btn--primary {
  flex: 1;
  min-width: 0;
  background: hsl(var(--theme-yellow));
  color: hsl(var(--theme-accent-text-deep));
}
.product-card__btn--primary:hover:not(:disabled) {
  background: hsl(var(--theme-yellow-hover));
}

.product-card__btn--ghost {
  flex-shrink: 0;
  width: 2.75rem;
  padding: 0.5rem;
  background: rgba(255, 255, 255, 0.08);
  color: #fff;
  font-size: 1rem;
  font-weight: 700;
}
.product-card__btn--ghost:hover:not(:disabled) {
  background: rgba(255, 255, 255, 0.14);
}

.product-card__btn--fav {
  padding: 0.45rem;
}
.product-card__btn--fav svg {
  width: 1.125rem;
  height: 1.125rem;
  display: block;
}
.product-card__btn--fav.is-active {
  color: hsl(var(--theme-yellow));
}

@media (min-width: 640px) {
  .product-card__btn {
    font-size: 0.75rem;
    padding: 0.55rem 0.65rem;
  }
  .product-card__btn--ghost {
    width: 2.25rem;
  }
}

/* Yönetim paneli — admin.css ana stiller */
.admin-card { background: hsl(var(--theme-card)); border-radius: 0.5rem; }
.site-logo {
  display: inline-flex;
  align-items: center;
  gap: 0.625rem;
  text-decoration: none;
  color: inherit;
  min-width: 0;
  max-width: 100%;
}
.site-logo__mark {
  width: 2rem;
  height: 2rem;
  flex-shrink: 0;
  object-fit: contain;
  border-radius: 0.375rem;
}
.site-logo__mark--fallback,
.login-modal__logo--fallback {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  border-radius: 0.375rem;
  background: hsl(var(--theme-yellow));
  color: hsl(var(--theme-accent-text));
  font-weight: 800;
  line-height: 1;
}
.site-logo__mark--fallback {
  width: 2rem;
  height: 2rem;
  font-size: 0.95rem;
}
.login-modal__logo--fallback {
  width: 3rem;
  height: 3rem;
  font-size: 1.25rem;
}
@media (min-width: 768px) {
  .site-logo__mark {
    width: 2.25rem;
    height: 2.25rem;
  }
}
.site-logo-text {
  display: inline-block;
  font-size: 1.125rem;
  font-weight: 800;
  letter-spacing: -0.03em;
  line-height: 1.1;
  color: #fff;
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
  max-width: 9rem;
}
@media (min-width: 480px) {
  .site-logo-text { max-width: 12rem; }
}
@media (min-width: 768px) {
  .site-logo-text {
    font-size: 1.625rem;
    max-width: none;
  }
}
.auth-card-logo .site-logo-text {
  font-size: 1.75rem;
}

/* Üye ol sayfası */
.register-page {
  padding: 2rem 0 3rem;
}

.register-page__inner {
  display: grid;
  gap: 2rem;
  max-width: 68rem;
  margin: 0 auto;
  padding: 0 1rem;
}

@media (min-width: 1024px) {
  .register-page__inner {
    grid-template-columns: 1fr 1.1fr;
    gap: 2.5rem;
    align-items: start;
    padding: 0 2rem;
  }
}

.register-page__aside {
  padding: 1.5rem 0;
}

.register-page__brand {
  display: inline-block;
  margin-bottom: 1.5rem;
  text-decoration: none;
  color: inherit;
}

.register-page__aside-title {
  font-size: 1.75rem;
  font-weight: 700;
  color: #fff;
  line-height: 1.25;
  margin-bottom: 0.75rem;
}

.register-page__aside-text {
  font-size: 0.9375rem;
  color: rgba(255, 255, 255, 0.6);
  line-height: 1.55;
  margin-bottom: 1.75rem;
}

.register-page__benefits {
  list-style: none;
  margin: 0;
  padding: 0;
  display: flex;
  flex-direction: column;
  gap: 1.1rem;
}

.register-page__benefits li {
  display: flex;
  gap: 0.85rem;
  align-items: flex-start;
}

.register-page__benefit-icon {
  flex-shrink: 0;
  width: 2.25rem;
  height: 2.25rem;
  display: flex;
  align-items: center;
  justify-content: center;
  border-radius: 0.5rem;
  background: hsl(var(--theme-surface));
  font-size: 1rem;
}

.register-page__benefits strong {
  display: block;
  font-size: 0.875rem;
  font-weight: 600;
  color: #fff;
  margin-bottom: 0.15rem;
}

.register-page__benefits p {
  margin: 0;
  font-size: 0.8125rem;
  color: rgba(255, 255, 255, 0.55);
  line-height: 1.45;
}

.register-page__card {
  background: hsl(var(--theme-card));
  border: 1px solid hsl(var(--theme-border-mid));
  border-radius: 0.75rem;
  padding: 1.5rem;
}

@media (min-width: 640px) {
  .register-page__card {
    padding: 2rem;
  }
}

.register-page__card-head {
  margin-bottom: 1.25rem;
}

.register-page__title {
  font-size: 1.375rem;
  font-weight: 700;
  color: #fff;
}

.register-page__subtitle {
  margin-top: 0.35rem;
  font-size: 0.875rem;
  color: rgba(255, 255, 255, 0.55);
}

.register-page__alert {
  margin-bottom: 1rem;
  padding: 0.75rem 1rem;
  border-radius: 0.5rem;
  font-size: 0.875rem;
}

.register-page__alert--error {
  background: rgba(127, 29, 29, 0.45);
  color: #fecaca;
  border: 1px solid rgba(248, 113, 113, 0.25);
}

.register-form__section {
  border: none;
  margin: 0 0 1.25rem;
  padding: 0;
}

.register-form__legend {
  font-size: 0.75rem;
  font-weight: 600;
  text-transform: uppercase;
  letter-spacing: 0.06em;
  color: rgba(255, 255, 255, 0.45);
  margin-bottom: 0.75rem;
  padding: 0;
}

.register-form__grid {
  display: grid;
  gap: 0.75rem;
}

.register-form__grid--2 {
  grid-template-columns: 1fr 1fr;
}

@media (max-width: 480px) {
  .register-form__grid--2 {
    grid-template-columns: 1fr;
  }
}

.register-form__field {
  display: block;
  margin-bottom: 0.75rem;
}

.register-form__field > span {
  display: block;
  margin-bottom: 0.35rem;
  font-size: 0.8125rem;
  color: rgba(255, 255, 255, 0.75);
}

.register-form__optional {
  font-weight: 400;
  color: rgba(255, 255, 255, 0.4);
}

.register-form__password-wrap {
  position: relative;
}

.register-form__password-wrap .admin-input {
  padding-right: 4.5rem;
}

.register-form__toggle-pw {
  position: absolute;
  right: 0.5rem;
  top: 50%;
  transform: translateY(-50%);
  border: none;
  background: transparent;
  color: hsl(var(--theme-yellow-bright));
  font-size: 0.75rem;
  font-weight: 600;
  cursor: pointer;
  padding: 0.25rem 0.35rem;
}

.register-form__strength {
  display: flex;
  gap: 0.25rem;
  margin-top: 0.45rem;
}

.register-form__strength-bar {
  flex: 1;
  height: 3px;
  border-radius: 999px;
  background: rgba(255, 255, 255, 0.12);
  transition: background 0.2s;
}

.register-form__strength-bar.is-active {
  background: hsl(var(--theme-yellow-dark));
}

.register-form__strength-bar.is-weak.is-active {
  background: hsl(var(--theme-red));
}

.register-form__strength-bar.is-strong.is-active {
  background: hsl(145 55% 45%);
}

.register-form__hint {
  margin: 0.35rem 0 0;
  font-size: 0.75rem;
  color: rgba(255, 255, 255, 0.45);
}

.register-form__hint--match.is-ok {
  color: hsl(145 55% 55%);
}

.register-form__hint--match.is-error {
  color: #fca5a5;
}

.register-form__section--legal {
  margin-bottom: 1rem;
}

.register-form__check {
  display: flex;
  align-items: flex-start;
  gap: 0.55rem;
  margin-bottom: 0.65rem;
  font-size: 0.8125rem;
  line-height: 1.45;
  color: rgba(255, 255, 255, 0.7);
  cursor: pointer;
}

.register-form__check input {
  margin-top: 0.2rem;
  flex-shrink: 0;
  width: 1rem;
  height: 1rem;
}

.register-form__captcha {
  margin-bottom: 1rem;
}

.register-form__submit {
  justify-content: center;
  padding: 0.75rem 1rem;
  font-size: 0.9375rem;
  font-weight: 600;
}

.register-page__login {
  margin-top: 1.25rem;
  text-align: center;
  font-size: 0.875rem;
  color: rgba(255, 255, 255, 0.5);
}

.admin-input {
  width: 100%;
  padding: 0.5rem 0.75rem;
  border-radius: 0.375rem;
  background: hsl(var(--theme-input));
  border: 1px solid hsl(var(--theme-border));
  color: #fff;
}
.admin-input:focus { outline: 2px solid hsl(var(--theme-yellow)); }
.admin-btn {
  display: inline-flex;
  align-items: center;
  gap: 0.5rem;
  padding: 0.5rem 1rem;
  border-radius: 0.375rem;
  font-weight: 500;
  cursor: pointer;
  border: none;
}
.admin-btn-primary { background: hsl(var(--theme-yellow)); color: hsl(var(--theme-accent-text)); }
.admin-btn-danger { background: hsl(var(--theme-red)); color: #fff; }
.admin-btn-secondary { background: hsl(var(--theme-border-strong)); color: #fff; }
.admin-table { width: 100%; border-collapse: collapse; }
.admin-table th, .admin-table td {
  padding: 0.75rem;
  text-align: left;
  border-bottom: 1px solid hsl(var(--theme-border));
}
.admin-table th { color: hsl(var(--theme-text-bright)); font-weight: 500; font-size: 0.875rem; }

/* Bildirim zili */
.notif-bell {
  position: relative;
  z-index: 120;
}

.notif-bell__btn {
  position: relative;
  display: flex;
  align-items: center;
  justify-content: center;
  min-width: 2.75rem;
  min-height: 2.75rem;
  border-radius: 0.375rem;
  padding: 0.5rem;
  color: #fff;
  transition: background 0.15s;
  border: none;
  background: transparent;
  cursor: pointer;
}
.notif-bell__btn:hover { background: rgba(255,255,255,0.1); }
.admin-notif-bell__btn { color: hsl(var(--theme-text-whiteish)); }
.notif-bell__icon { width: 1.35rem; height: 1.35rem; }
.notif-bell__badge {
  position: absolute;
  top: 0.15rem;
  right: 0.1rem;
  min-width: 1.1rem;
  height: 1.1rem;
  padding: 0 0.25rem;
  border-radius: 9999px;
  background: hsl(var(--theme-yellow));
  color: hsl(var(--theme-accent-text));
  font-size: 0.625rem;
  font-weight: 700;
  display: flex;
  align-items: center;
  justify-content: center;
  line-height: 1;
}
.notif-bell__panel {
  position: absolute;
  right: 0;
  top: calc(100% + 0.5rem);
  z-index: 130;
  width: 22rem;
  max-width: min(22rem, calc(100vw - 1.5rem));
  border-radius: 0.5rem;
  background: hsl(var(--theme-bg-2));
  border: 1px solid hsl(var(--theme-border));
  box-shadow: 0 12px 40px rgba(0,0,0,0.45);
  overflow: hidden;
}
.notif-bell__head {
  display: flex;
  align-items: center;
  justify-content: space-between;
  padding: 0.75rem 1rem;
  border-bottom: 1px solid hsl(var(--theme-border-soft));
  color: #fff;
  font-size: 0.9rem;
}
.notif-bell__mark-all {
  color: hsl(var(--theme-yellow));
  background: none;
  border: none;
  cursor: pointer;
  padding: 0;
}
.notif-bell__mark-all:hover { text-decoration: underline; }
.notif-bell__list { max-height: 20rem; overflow-y: auto; }
.notif-bell__empty {
  padding: 1.5rem 1rem;
  text-align: center;
  color: hsl(var(--theme-text-muted2));
  font-size: 0.875rem;
}
.notif-bell__item {
  display: flex;
  gap: 0.75rem;
  width: 100%;
  text-align: left;
  padding: 0.75rem 1rem;
  border: none;
  border-bottom: 1px solid hsl(var(--theme-border-subtle));
  background: transparent;
  cursor: pointer;
  color: inherit;
  transition: background 0.15s;
}
.notif-bell__item:hover { background: hsl(var(--theme-surface-deep)); }
.notif-bell__item.is-read { opacity: 0.65; }
.notif-bell__item-icon { font-size: 1.25rem; flex-shrink: 0; line-height: 1; }
.notif-bell__item-body { display: flex; flex-direction: column; gap: 0.15rem; min-width: 0; }
.notif-bell__item-title { font-size: 0.875rem; font-weight: 600; color: #fff; }
.notif-bell__item-msg {
  font-size: 0.75rem;
  color: hsl(var(--theme-text-lighter));
  display: -webkit-box;
  -webkit-line-clamp: 2;
  -webkit-box-orient: vertical;
  overflow: hidden;
}
.notif-bell__item-time { font-size: 0.65rem; color: hsl(var(--theme-text-faint)); }
.notif-bell__foot {
  display: block;
  text-align: center;
  padding: 0.65rem;
  font-size: 0.8rem;
  color: hsl(var(--theme-yellow));
  border-top: 1px solid hsl(var(--theme-border-soft));
  text-decoration: none;
}
.notif-bell__foot:hover { background: hsl(var(--theme-surface-deep)); }
.profil-notif-item { transition: opacity 0.2s; }
.profil-notif-item.is-unread { border-left: 3px solid hsl(var(--theme-yellow)); }
.profil-notif-item.is-read { opacity: 0.7; }

/* ===== Profil sayfası — sidebar düzeni ===== */
.profile-layout {
  display: grid;
  gap: 1.5rem;
  align-items: start;
}
@media (min-width: 1024px) {
  .profile-layout {
    grid-template-columns: 17.5rem minmax(0, 1fr);
    gap: 2rem;
  }
}

.profile-sidebar {
  display: flex;
  flex-direction: column;
  gap: 0.75rem;
}
@media (max-width: 1023px) {
  .profile-page--menu {
    padding-top: 1.25rem;
    padding-bottom: 1.5rem;
  }

  .profile-sidebar {
    position: static;
    z-index: auto;
    width: 100%;
    height: auto;
    padding: 0;
    overflow: visible;
    background: transparent;
    border-right: none;
    transform: none;
    box-shadow: none;
  }

  .profile-sidebar.is-open {
    transform: none;
  }

  .profile-sidebar-backdrop {
    display: none !important;
  }

  .profile-layout--menu .profile-content {
    display: none;
  }

  .profile-layout--detail .profile-sidebar {
    display: none;
  }
}

.profile-sidebar-backdrop {
  position: fixed;
  inset: 0;
  z-index: 75;
  background: rgba(0, 0, 0, 0.55);
}
.profile-sidebar-backdrop:not([hidden]) {
  display: block;
}

.profile-sidebar__card {
  padding: 1rem;
  border-radius: 0.75rem;
  background: linear-gradient(145deg, hsl(var(--theme-purple-deep)) 0%, hsl(var(--theme-surface)) 100%);
  border: 1px solid hsl(var(--theme-border) / 0.5);
}

.profile-user {
  display: flex;
  gap: 0.75rem;
  align-items: center;
}
.profile-user__avatar {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 3rem;
  height: 3rem;
  border-radius: 9999px;
  background: hsl(var(--theme-yellow));
  color: hsl(var(--theme-accent-text));
  font-weight: 800;
  font-size: 0.95rem;
  flex-shrink: 0;
}
.profile-user__name {
  font-weight: 700;
  color: #fff;
  font-size: 0.95rem;
  line-height: 1.3;
}
.profile-user__email {
  font-size: 0.75rem;
  color: hsl(var(--theme-text-bright));
  word-break: break-all;
}
.profile-user__verified {
  display: inline-block;
  margin-top: 0.25rem;
  font-size: 0.65rem;
  color: hsl(var(--theme-teal));
  font-weight: 600;
}
.profile-user__unverified {
  display: inline-block;
  margin-top: 0.25rem;
  font-size: 0.65rem;
  color: hsl(var(--theme-yellow-bright));
  text-decoration: underline;
}
.profile-user__since {
  margin-top: 0.75rem;
  font-size: 0.7rem;
  color: hsl(var(--theme-text-light));
}

.profile-sidebar__stats {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 0.5rem;
  margin-top: 0.85rem;
  padding-top: 0.85rem;
  border-top: 1px solid hsl(var(--theme-border) / 0.45);
}
.profile-sidebar__stat {
  text-align: center;
}
.profile-sidebar__stat-val {
  display: block;
  font-size: 0.8rem;
  font-weight: 700;
  color: #fff;
  line-height: 1.2;
}
.profile-sidebar__stat-lbl {
  display: block;
  margin-top: 0.15rem;
  font-size: 0.6rem;
  color: hsl(var(--theme-text-light));
  text-transform: uppercase;
  letter-spacing: 0.04em;
}

.profile-nav {
  padding: 0.5rem;
  border-radius: 0.75rem;
  background: hsl(var(--theme-surface-deep));
  border: 1px solid hsl(var(--theme-border-dim));
}
.profile-nav__group + .profile-nav__group {
  margin-top: 0.65rem;
  padding-top: 0.65rem;
  border-top: 1px solid hsl(var(--theme-border-muted));
}
.profile-nav__group-title {
  padding: 0 0.5rem 0.35rem;
  font-size: 0.65rem;
  font-weight: 700;
  text-transform: uppercase;
  letter-spacing: 0.06em;
  color: hsl(var(--theme-text-dim));
}
.profile-nav__link {
  display: flex;
  align-items: center;
  gap: 0.65rem;
  padding: 0.55rem 0.65rem;
  border-radius: 0.5rem;
  color: hsl(var(--theme-text-brighter));
  font-size: 0.875rem;
  font-weight: 500;
  transition: background 0.15s, color 0.15s;
  text-decoration: none;
}
.profile-nav__link:hover {
  background: hsl(var(--theme-surface));
  color: #fff;
}
.profile-nav__link.is-active {
  background: hsl(var(--theme-purple));
  color: #fff;
  box-shadow: inset 0 0 0 1px hsl(var(--theme-purple-glow));
}
.profile-nav__icon {
  width: 1.15rem;
  height: 1.15rem;
  flex-shrink: 0;
  opacity: 0.9;
}
.profile-nav__label { flex: 1; min-width: 0; }
.profile-nav__badge {
  min-width: 1.25rem;
  padding: 0.1rem 0.4rem;
  border-radius: 9999px;
  background: hsl(var(--theme-border-strong));
  color: #fff;
  font-size: 0.65rem;
  font-weight: 700;
  text-align: center;
}
.profile-nav__badge--warn {
  background: hsl(var(--theme-yellow));
  color: hsl(var(--theme-accent-text));
}

.profile-sidebar__actions {
  display: flex;
  flex-direction: column;
  gap: 0.5rem;
}
.profile-sidebar__action {
  display: block;
  padding: 0.6rem 0.85rem;
  border-radius: 0.5rem;
  text-align: center;
  font-size: 0.85rem;
  font-weight: 600;
  color: hsl(var(--theme-text-brighter));
  background: hsl(var(--theme-surface-mid));
  border: 1px solid hsl(var(--theme-border-faint));
  transition: background 0.15s;
  text-decoration: none;
}
.profile-sidebar__action:hover { background: hsl(var(--theme-card)); color: #fff; }
.profile-sidebar__action--primary {
  background: hsl(var(--theme-yellow));
  color: hsl(var(--theme-accent-text));
  border-color: transparent;
}
.profile-sidebar__action--primary:hover {
  background: hsl(var(--theme-yellow-hover));
  color: hsl(var(--theme-accent-text));
}

.profile-content { min-width: 0; }
.profile-content__head {
  display: flex;
  align-items: flex-start;
  gap: 1rem;
  margin-bottom: 1.25rem;
}
.profile-content__title {
  font-size: 1.5rem;
  font-weight: 800;
  color: #fff;
  line-height: 1.2;
}
@media (min-width: 768px) {
  .profile-content__title { font-size: 1.75rem; }
}
.profile-content__desc {
  margin-top: 0.35rem;
  font-size: 0.875rem;
  color: hsl(var(--theme-text));
}

.profile-mobile-back {
  display: inline-flex;
  align-items: center;
  gap: 0.4rem;
  padding: 0.5rem 0.75rem;
  border-radius: 0.5rem;
  background: hsl(var(--theme-card));
  color: #fff;
  border: 1px solid hsl(var(--theme-border-strong));
  font-size: 0.85rem;
  font-weight: 600;
  flex-shrink: 0;
  text-decoration: none;
  transition: background 0.15s;
}
.profile-mobile-back:hover {
  background: hsl(var(--theme-surface-light));
  color: #fff;
}
@media (min-width: 1024px) {
  .profile-mobile-back { display: none; }
}

.profile-alert {
  margin-bottom: 1rem;
  padding: 0.75rem 1rem;
  border-radius: 0.5rem;
  font-size: 0.875rem;
}
.profile-alert--success {
  background: hsl(var(--theme-success-bg) / 0.85);
  color: hsl(var(--theme-success-pale));
  border: 1px solid hsl(var(--theme-success-surface2));
}
.profile-alert--error {
  background: hsl(339 45% 18% / 0.85);
  color: hsl(339 55% 78%);
  border: 1px solid hsl(339 40% 32%);
}

.profile-stat-grid {
  display: grid;
  grid-template-columns: repeat(2, 1fr);
  gap: 0.75rem;
  margin-bottom: 1.5rem;
}
@media (min-width: 768px) {
  .profile-stat-grid { grid-template-columns: repeat(3, 1fr); }
}
.profile-stat-card {
  padding: 1rem;
  border-radius: 0.75rem;
  background: hsl(var(--theme-surface));
  border: 1px solid hsl(var(--theme-border-mid));
  text-align: center;
  transition: border-color 0.15s, transform 0.15s;
  text-decoration: none;
}
.profile-stat-card:hover {
  border-color: hsl(var(--theme-purple));
  transform: translateY(-1px);
}
.profile-stat-card__value {
  font-size: 1.15rem;
  font-weight: 800;
  color: #fff;
  line-height: 1.2;
}
.profile-stat-card__label {
  margin-top: 0.35rem;
  font-size: 0.7rem;
  color: hsl(var(--theme-text));
}

.profile-panel-grid {
  display: grid;
  gap: 1rem;
  margin-bottom: 1.5rem;
}
@media (min-width: 768px) {
  .profile-panel-grid { grid-template-columns: 1fr 1fr; }
}
.profile-panel {
  padding: 1rem;
  border-radius: 0.75rem;
  background: hsl(var(--theme-surface));
  border: 1px solid hsl(var(--theme-border-mid));
}
.profile-panel--form { padding: 1.25rem; }
.profile-panel__head {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 0.5rem;
  margin-bottom: 0.85rem;
}
.profile-panel__title {
  font-size: 0.95rem;
  font-weight: 700;
  color: #fff;
}
.profile-panel__link {
  font-size: 0.8rem;
  color: hsl(var(--theme-yellow));
  text-decoration: none;
}
.profile-panel__link:hover { text-decoration: underline; }
.profile-panel__empty {
  font-size: 0.85rem;
  color: hsl(var(--theme-text-soft));
}

.profile-list { display: flex; flex-direction: column; gap: 0.35rem; }
.profile-list__item {
  display: flex;
  align-items: center;
  gap: 0.65rem;
  padding: 0.65rem 0.75rem;
  border-radius: 0.5rem;
  background: hsl(var(--theme-input) / 0.55);
  text-decoration: none;
  transition: background 0.15s;
}
.profile-list__item:hover { background: hsl(var(--theme-surface-mid)); }
.profile-list__item--unread { border-left: 3px solid hsl(var(--theme-yellow)); }
.profile-list__icon { font-size: 1.1rem; flex-shrink: 0; }
.profile-list__main { flex: 1; min-width: 0; }
.profile-list__title {
  display: block;
  font-size: 0.85rem;
  font-weight: 600;
  color: #fff;
}
.profile-list__meta {
  display: block;
  font-size: 0.7rem;
  color: hsl(var(--theme-text-dim));
}
.profile-list__end {
  text-align: right;
  flex-shrink: 0;
}
.profile-list__price {
  display: block;
  font-size: 0.85rem;
  font-weight: 700;
  color: hsl(var(--theme-yellow));
}

.profile-quick-links {
  display: grid;
  grid-template-columns: repeat(2, 1fr);
  gap: 0.65rem;
}
@media (min-width: 640px) {
  .profile-quick-links { grid-template-columns: repeat(4, 1fr); }
}
.profile-quick-link {
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 0.5rem;
  padding: 1rem 0.5rem;
  border-radius: 0.75rem;
  background: hsl(var(--theme-surface-hover));
  border: 1px solid hsl(var(--theme-border-faint));
  color: hsl(var(--theme-text-pale));
  font-size: 0.8rem;
  font-weight: 600;
  text-align: center;
  text-decoration: none;
  transition: border-color 0.15s, background 0.15s;
}
.profile-quick-link:hover {
  background: hsl(var(--theme-card));
  border-color: hsl(var(--theme-purple));
  color: #fff;
}
.profile-quick-link__icon .profile-nav__icon {
  width: 1.5rem;
  height: 1.5rem;
}

.profile-toolbar {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: 0.75rem;
  margin-bottom: 1rem;
}
.profile-toolbar__search { flex: 1; min-width: 0; max-width: 24rem; width: 100%; }
@media (min-width: 640px) {
  .profile-toolbar__search { width: auto; }
}
.profile-toolbar__count {
  font-size: 0.8rem;
  color: hsl(var(--theme-text-soft));
}

.profile-epin-list { display: flex; flex-direction: column; gap: 0.75rem; }
.profile-epin-card {
  padding: 1rem;
  border-radius: 0.75rem;
  background: hsl(var(--theme-surface));
  border: 1px solid hsl(var(--theme-border-mid));
}
.profile-epin-card__head {
  display: flex;
  justify-content: space-between;
  gap: 0.75rem;
  align-items: flex-start;
}
.profile-epin-card__title {
  font-size: 0.95rem;
  font-weight: 600;
  color: #fff;
}
.profile-epin-card__date {
  margin-top: 0.2rem;
  font-size: 0.7rem;
  color: hsl(var(--theme-text-dim));
}
.profile-epin-card__thumb {
  width: 3rem;
  height: 4rem;
  border-radius: 0.35rem;
  overflow: hidden;
  flex-shrink: 0;
}
.profile-epin-card__code-row {
  display: flex;
  flex-wrap: wrap;
  gap: 0.5rem;
  margin-top: 0.75rem;
  align-items: stretch;
}
.profile-epin-card__code {
  flex: 1;
  padding: 0.65rem 0.75rem;
  border-radius: 0.5rem;
  background: hsl(var(--theme-deep));
  border: 1px dashed hsl(var(--theme-border-highlight));
  font-size: 0.85rem;
  color: hsl(var(--theme-yellow-bright));
  word-break: break-all;
}
.profile-epin-card__code--link { display: block; text-decoration: underline; }
.profile-epin-card__note {
  margin-top: 0.5rem;
  font-size: 0.75rem;
  color: hsl(var(--theme-text-soft));
}
.profile-no-results {
  margin-top: 1rem;
  text-align: center;
  font-size: 0.875rem;
  color: hsl(var(--theme-text-soft));
}
.profile-no-results.hidden { display: none; }

.profile-filter-bar {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: 0.5rem;
  margin-bottom: 1rem;
}
.profile-filter-bar__action { margin-left: auto; }
.profile-filter {
  padding: 0.4rem 0.85rem;
  border-radius: 9999px;
  font-size: 0.8rem;
  font-weight: 600;
  color: hsl(var(--theme-text-lighter));
  background: hsl(var(--theme-surface-hover));
  border: 1px solid hsl(var(--theme-border-faint));
  text-decoration: none;
  transition: background 0.15s, color 0.15s;
}
.profile-filter:hover { color: #fff; background: hsl(var(--theme-surface-active)); }
.profile-filter.is-active {
  background: hsl(var(--theme-purple));
  color: #fff;
  border-color: transparent;
}

.profile-badge {
  display: inline-block;
  padding: 0.15rem 0.5rem;
  border-radius: 9999px;
  font-size: 0.65rem;
  font-weight: 700;
  white-space: nowrap;
}
.profile-badge--success { background: hsl(var(--theme-success-surface)); color: hsl(var(--theme-success-soft)); }
.profile-badge--warn { background: hsl(var(--theme-accent-warn-bg)); color: hsl(var(--theme-accent-warn)); }
.profile-badge--danger { background: hsl(339 45% 22%); color: hsl(339 60% 72%); }
.profile-badge--info { background: hsl(var(--theme-info-bg)); color: hsl(var(--theme-info-text)); }
.profile-badge--muted { background: hsl(var(--theme-badge-muted)); color: hsl(var(--theme-text-dim2)); }
.profile-badge--closed {
  background: hsl(var(--theme-surface-deep));
  color: hsl(var(--theme-text-bright));
  border: 1px solid hsl(var(--theme-border-strong));
}

.profile-order-list { display: flex; flex-direction: column; gap: 0.65rem; }
.profile-order-card {
  border-radius: 0.75rem;
  background: hsl(var(--theme-surface));
  border: 1px solid hsl(var(--theme-border-mid));
  overflow: hidden;
}
.profile-order-card__toggle {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 0.75rem;
  width: 100%;
  padding: 1rem;
  background: transparent;
  border: none;
  color: inherit;
  cursor: pointer;
  text-align: left;
}
.profile-order-card__toggle:hover { background: hsl(var(--theme-surface-hover)); }
.profile-order-card__summary { flex: 1; min-width: 0; }
.profile-order-card__no {
  font-weight: 700;
  color: #fff;
  font-size: 0.9rem;
}
.profile-order-card__date {
  display: block;
  margin-top: 0.15rem;
  font-size: 0.7rem;
  color: hsl(var(--theme-text-dim));
}
.profile-order-card__badges {
  display: flex;
  flex-wrap: wrap;
  gap: 0.35rem;
  margin-top: 0.5rem;
}
.profile-order-card__right {
  display: flex;
  align-items: center;
  gap: 0.5rem;
  flex-shrink: 0;
}
.profile-order-card__total {
  font-size: 1rem;
  font-weight: 800;
  color: hsl(var(--theme-yellow));
}
.profile-order-card__chevron {
  width: 1.1rem;
  height: 1.1rem;
  color: hsl(var(--theme-text-soft));
  transition: transform 0.2s;
}
.profile-order-card__toggle[aria-expanded="true"] .profile-order-card__chevron {
  transform: rotate(180deg);
}
.profile-order-card__body {
  padding: 0 1rem 1rem;
  border-top: 1px solid hsl(var(--theme-border-dim));
}
.profile-order-card__method {
  padding-top: 0.75rem;
  font-size: 0.8rem;
  color: hsl(var(--theme-text));
}
.profile-order-card__lines {
  margin-top: 0.65rem;
  display: flex;
  flex-direction: column;
  gap: 0.35rem;
  font-size: 0.85rem;
  color: hsl(var(--theme-text-bright));
}
.profile-order-card__lines li {
  display: flex;
  justify-content: space-between;
  gap: 0.5rem;
}
.profile-order-card__actions {
  display: flex;
  flex-wrap: wrap;
  gap: 0.5rem;
  margin-top: 0.85rem;
}
.profile-order-card__action {
  padding: 0.4rem 0.85rem;
  border-radius: 0.375rem;
  font-size: 0.8rem;
  font-weight: 600;
  color: hsl(var(--theme-text-pale));
  background: hsl(var(--theme-border-dim));
  text-decoration: none;
}
.profile-order-card__action:hover { background: hsl(var(--theme-border-strong)); color: #fff; }
.profile-order-card__action--primary {
  background: hsl(var(--theme-yellow));
  color: hsl(var(--theme-accent-text));
}
.profile-order-card__action--primary:hover {
  background: hsl(var(--theme-yellow-hover));
  color: hsl(var(--theme-accent-text));
}

.profile-pending-list { display: flex; flex-direction: column; gap: 0.75rem; }
.profile-pending-card {
  display: flex;
  align-items: center;
  gap: 0.85rem;
  padding: 1rem;
  border-radius: 0.75rem;
  background: hsl(var(--theme-surface));
  border: 1px solid hsl(38 50% 30%);
  border-left: 3px solid hsl(var(--theme-yellow));
}
.profile-pending-card__icon { color: hsl(var(--theme-yellow)); flex-shrink: 0; }
.profile-pending-card__icon .profile-nav__icon { width: 1.5rem; height: 1.5rem; }
.profile-pending-card__body { flex: 1; min-width: 0; }
.profile-pending-card__title {
  font-weight: 600;
  color: #fff;
  font-size: 0.9rem;
}
.profile-pending-card__meta,
.profile-pending-card__qty {
  margin-top: 0.2rem;
  font-size: 0.8rem;
  color: hsl(var(--theme-text-muted2));
}
.profile-pending-card__thumb {
  width: 2.75rem;
  height: 3.75rem;
  border-radius: 0.35rem;
  overflow: hidden;
  flex-shrink: 0;
}

.profile-notif-card {
  display: flex;
  gap: 0.85rem;
  padding: 1rem;
  margin-bottom: 0.65rem;
  border-radius: 0.75rem;
  background: hsl(var(--theme-surface));
  border: 1px solid hsl(var(--theme-border-mid));
  text-decoration: none;
  color: inherit;
}
.profile-notif-card:hover { background: hsl(var(--theme-surface-active)); }
.profile-notif-card__icon { font-size: 1.35rem; flex-shrink: 0; }
.profile-notif-card__body { flex: 1; min-width: 0; }
.profile-notif-card__head {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: 0.5rem;
  color: #fff;
  font-size: 0.9rem;
}
.profile-notif-card__msg {
  margin-top: 0.35rem;
  font-size: 0.8rem;
  color: hsl(var(--theme-text));
}
.profile-notif-card__time {
  margin-top: 0.35rem;
  font-size: 0.7rem;
  color: hsl(var(--theme-text-faint));
}

.profile-support-grid,
.profile-settings-grid {
  display: grid;
  gap: 1.5rem;
}
@media (min-width: 1024px) {
  .profile-support-grid { grid-template-columns: 1fr 1fr; }
  .profile-settings-grid { grid-template-columns: 1fr 1fr; }
}

.profile-label {
  display: block;
  margin-bottom: 0.35rem;
  font-size: 0.8rem;
  font-weight: 600;
  color: hsl(var(--theme-text-bright));
}

.profile-ticket-list { display: flex; flex-direction: column; gap: 0.5rem; }
.profile-ticket-card {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 0.75rem;
  padding: 0.85rem 1rem;
  border-radius: 0.65rem;
  background: hsl(var(--theme-surface));
  border: 1px solid hsl(var(--theme-border-mid));
  text-decoration: none;
  transition: border-color 0.15s;
}
.profile-ticket-card:hover { border-color: hsl(var(--theme-purple)); }
.profile-ticket-card__subject {
  display: block;
  font-size: 0.875rem;
  font-weight: 600;
  color: #fff;
}
.profile-ticket-card__date {
  display: block;
  margin-top: 0.15rem;
  font-size: 0.7rem;
  color: hsl(var(--theme-text-dim));
}
.profile-ticket-card--closed {
  opacity: 0.82;
  border-style: dashed;
  border-color: hsl(var(--theme-border-strong));
}
.profile-ticket-card--closed .profile-ticket-card__subject {
  color: hsl(var(--theme-text-light));
}

/* ===== Destek talep detay ===== */
.support-ticket-page {
  padding: 1.5rem 0 2.5rem;
}
.support-ticket-page__wrap {
  max-width: 44rem;
  margin: 0 auto;
  padding: 0 1rem;
}
@media (min-width: 1024px) {
  .support-ticket-page__wrap { padding: 0 1.5rem; }
}
.support-ticket-page__back {
  display: inline-flex;
  align-items: center;
  gap: 0.35rem;
  margin-bottom: 1rem;
  font-size: 0.875rem;
  font-weight: 600;
  color: hsl(var(--theme-yellow));
  text-decoration: none;
  transition: color 0.15s;
}
.support-ticket-page__back:hover { color: hsl(var(--theme-yellow-hover)); }

.support-status {
  display: inline-flex;
  align-items: center;
  gap: 0.35rem;
  padding: 0.2rem 0.65rem;
  border-radius: 9999px;
  font-size: 0.68rem;
  font-weight: 700;
  white-space: nowrap;
  border: 1px solid transparent;
}
.support-status--lg {
  padding: 0.4rem 0.85rem;
  font-size: 0.78rem;
}
.support-status__dot {
  width: 0.45rem;
  height: 0.45rem;
  border-radius: 50%;
  background: currentColor;
  animation: supportPulse 1.8s ease-in-out infinite;
}
.support-status__icon {
  width: 0.95rem;
  height: 0.95rem;
  flex-shrink: 0;
}
.support-status--open {
  background: hsl(var(--theme-accent-warn-bg));
  color: hsl(var(--theme-accent-warn));
  border-color: hsl(var(--theme-accent-warn) / 0.35);
}
.support-status--answered {
  background: hsl(var(--theme-info-bg));
  color: hsl(var(--theme-info-text));
  border-color: hsl(var(--theme-cyan) / 0.25);
}
.support-status--closed {
  background: hsl(var(--theme-surface-deep));
  color: hsl(var(--theme-text-bright));
  border-color: hsl(var(--theme-border-strong));
  box-shadow: inset 0 0 0 1px hsl(var(--theme-border-faint));
}
.support-status--muted {
  background: hsl(var(--theme-badge-muted));
  color: hsl(var(--theme-text-dim2));
}

@keyframes supportPulse {
  0%, 100% { opacity: 1; transform: scale(1); }
  50% { opacity: 0.55; transform: scale(0.85); }
}

.support-closed-banner {
  display: flex;
  gap: 1rem;
  align-items: flex-start;
  margin-bottom: 1rem;
  padding: 1rem 1.15rem;
  border-radius: 0.75rem;
  background: linear-gradient(135deg, hsl(var(--theme-surface-deep)) 0%, hsl(var(--theme-surface-mid)) 100%);
  border: 1px dashed hsl(var(--theme-border-strong));
  box-shadow: inset 0 0 0 1px hsl(var(--theme-border-faint) / 0.5);
}
.support-closed-banner__icon {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 2.75rem;
  height: 2.75rem;
  flex-shrink: 0;
  border-radius: 0.65rem;
  background: hsl(var(--theme-badge-muted));
  color: hsl(var(--theme-text-bright));
  border: 1px solid hsl(var(--theme-border-mid));
}
.support-closed-banner__icon svg {
  width: 1.35rem;
  height: 1.35rem;
}
.support-closed-banner__title {
  margin: 0;
  font-size: 0.95rem;
  font-weight: 700;
  color: #fff;
}
.support-closed-banner__text {
  margin: 0.35rem 0 0.85rem;
  font-size: 0.82rem;
  line-height: 1.5;
  color: hsl(var(--theme-text-light));
}
.support-closed-banner__btn { font-size: 0.8rem; }

.support-answered-banner {
  display: flex;
  align-items: center;
  gap: 0.65rem;
  margin-bottom: 1rem;
  padding: 0.75rem 1rem;
  border-radius: 0.65rem;
  background: hsl(var(--theme-info-bg) / 0.85);
  border: 1px solid hsl(var(--theme-cyan) / 0.22);
  color: hsl(var(--theme-info-text));
  font-size: 0.82rem;
}
.support-answered-banner__icon svg {
  width: 1.25rem;
  height: 1.25rem;
  flex-shrink: 0;
}

.support-ticket-header {
  display: flex;
  align-items: flex-start;
  justify-content: space-between;
  gap: 1rem;
  margin-bottom: 0.85rem;
  padding: 1.15rem 1.25rem;
}
.support-ticket-header__eyebrow {
  margin: 0 0 0.25rem;
  font-size: 0.72rem;
  font-weight: 600;
  letter-spacing: 0.06em;
  text-transform: uppercase;
  color: hsl(var(--theme-text-dim));
}
.support-ticket-header__title {
  margin: 0;
  font-size: 1.25rem;
  font-weight: 800;
  line-height: 1.3;
  color: #fff;
}
@media (min-width: 640px) {
  .support-ticket-header__title { font-size: 1.4rem; }
}

.support-ticket-meta {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 0.65rem;
  margin-bottom: 1rem;
}
@media (min-width: 640px) {
  .support-ticket-meta { grid-template-columns: repeat(4, minmax(0, 1fr)); }
}
.support-ticket-meta__item {
  padding: 0.75rem 0.85rem;
  border-radius: 0.65rem;
  background: hsl(var(--theme-surface-hover));
  border: 1px solid hsl(var(--theme-border-faint));
}
.support-ticket-meta__item dt {
  font-size: 0.65rem;
  font-weight: 600;
  text-transform: uppercase;
  letter-spacing: 0.04em;
  color: hsl(var(--theme-text-dim));
}
.support-ticket-meta__item dd {
  margin: 0.2rem 0 0;
  font-size: 0.82rem;
  font-weight: 600;
  color: #fff;
}

.support-thread {
  margin-bottom: 1rem;
  padding: 1.15rem 1.25rem;
}
.support-thread__title {
  margin: 0 0 1rem;
  font-size: 0.9rem;
  font-weight: 700;
  color: #fff;
}
.support-thread__empty {
  margin: 0;
  font-size: 0.85rem;
  color: hsl(var(--theme-text-soft));
}
.support-thread__list {
  display: flex;
  flex-direction: column;
  gap: 1rem;
}

.support-msg {
  display: flex;
  gap: 0.75rem;
  align-items: flex-start;
}
.support-msg--admin { padding-right: 1.5rem; }
.support-msg--user { padding-left: 1.5rem; flex-direction: row-reverse; }
.support-msg__avatar {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 2.25rem;
  height: 2.25rem;
  flex-shrink: 0;
  border-radius: 9999px;
  font-size: 0.72rem;
  font-weight: 800;
  letter-spacing: 0.02em;
}
.support-msg__avatar--user {
  background: hsl(var(--theme-purple) / 0.35);
  color: #fff;
  border: 1px solid hsl(var(--theme-purple) / 0.45);
}
.support-msg__avatar--admin {
  background: hsl(var(--theme-yellow) / 0.15);
  color: hsl(var(--theme-yellow));
  border: 1px solid hsl(var(--theme-yellow) / 0.35);
}
.support-msg__avatar--admin svg {
  width: 1.15rem;
  height: 1.15rem;
}
.support-msg__bubble {
  flex: 1;
  min-width: 0;
  padding: 0.85rem 1rem;
  border-radius: 0.75rem;
  border: 1px solid hsl(var(--theme-border-mid));
}
.support-msg--user .support-msg__bubble {
  background: hsl(var(--theme-card));
  border-top-right-radius: 0.2rem;
}
.support-msg--admin .support-msg__bubble {
  background: hsl(var(--theme-panel));
  border-top-left-radius: 0.2rem;
  border-color: hsl(var(--theme-purple) / 0.28);
  box-shadow: inset 3px 0 0 hsl(var(--theme-yellow));
}
.support-msg__head {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  justify-content: space-between;
  gap: 0.35rem 0.75rem;
  margin-bottom: 0.45rem;
}
.support-msg__head strong {
  font-size: 0.78rem;
  font-weight: 700;
  color: #fff;
}
.support-msg__head time {
  font-size: 0.68rem;
  color: hsl(var(--theme-text-dim));
}
.support-msg__body {
  font-size: 0.875rem;
  line-height: 1.55;
  color: hsl(var(--theme-text-lighter));
  word-break: break-word;
}

.support-reply {
  padding: 1.15rem 1.25rem;
}
.support-reply__title {
  margin: 0 0 0.35rem;
  font-size: 0.95rem;
  font-weight: 700;
  color: #fff;
}
.support-reply__hint {
  margin: 0 0 1rem;
  font-size: 0.8rem;
  color: hsl(var(--theme-text-soft));
}
.support-reply__actions {
  display: flex;
  flex-wrap: wrap;
  gap: 0.5rem;
  margin-top: 0.85rem;
}

.support-ticket-page--closed .support-thread {
  opacity: 0.92;
}
.support-ticket-page--closed .support-msg__bubble {
  background: hsl(var(--theme-surface-hover));
}
.support-ticket-page--closed .support-ticket-header {
  border-style: dashed;
}

.profile-account-dl {
  display: grid;
  gap: 0.75rem;
}
@media (min-width: 640px) {
  .profile-account-dl { grid-template-columns: repeat(3, 1fr); }
}
.profile-account-dl dt {
  font-size: 0.7rem;
  text-transform: uppercase;
  letter-spacing: 0.04em;
  color: hsl(var(--theme-text-dim));
}
.profile-account-dl dd {
  margin-top: 0.2rem;
  font-size: 0.9rem;
  font-weight: 600;
  color: #fff;
}

.profile-empty {
  padding: 2.5rem 1.5rem;
  border-radius: 0.75rem;
  background: hsl(var(--theme-surface-hover));
  border: 1px dashed hsl(var(--theme-border-strong));
  text-align: center;
}
.profile-empty__icon {
  display: inline-flex;
  margin-bottom: 0.75rem;
  color: hsl(var(--theme-text-faint));
}
.profile-empty__title {
  font-size: 1rem;
  font-weight: 700;
  color: #fff;
}
.profile-empty__text {
  margin-top: 0.5rem;
  font-size: 0.875rem;
  color: hsl(var(--theme-text-soft));
}
.profile-empty .admin-btn { margin-top: 1.25rem; }

[data-copy-btn].is-copied {
  background: hsl(var(--theme-success-border)) !important;
  color: #fff !important;
}

/* Modallar — kapalıyken sayfayı tıklanamaz yapmamalı */
.site-modal[hidden] {
  display: none !important;
  pointer-events: none !important;
  visibility: hidden !important;
}
.site-modal {
  position: fixed;
  inset: 0;
  z-index: 50;
  display: flex;
  align-items: center;
  justify-content: center;
  padding: 1rem;
  background: rgba(0, 0, 0, 0.7);
}
#cartAddedModal { z-index: 60; }
#favoriteAddedModal { z-index: 60; }
#newsletterModal { z-index: 60; }
#purchaseSuccessModal { z-index: 62; }
#wheelModal { z-index: 65; }
#loginModal { z-index: 70; }
#reviewModal { z-index: 68; }

/* Sipariş değerlendirme modalı */
.review-modal__panel {
  display: flex;
  flex-direction: column;
  width: 100%;
  max-width: 34rem;
  max-height: min(92vh, 52rem);
  border-radius: 0.875rem;
  background: hsl(var(--theme-bg-2));
  border: 1px solid hsl(var(--theme-border-dim));
  box-shadow: 0 24px 48px rgba(0, 0, 0, 0.55);
  overflow: hidden;
}
.review-modal__panel--simple {
  max-width: 26rem;
  max-height: none;
}
.review-modal__body--simple {
  padding: 1rem 1.25rem 0.5rem;
}
.review-modal__header {
  display: flex;
  align-items: flex-start;
  justify-content: space-between;
  gap: 1rem;
  padding: 1.25rem 1.25rem 1rem;
  border-bottom: 1px solid hsl(var(--theme-border-alt));
  background: hsl(var(--theme-panel));
  flex-shrink: 0;
}
.review-modal__title {
  font-size: 1.15rem;
  font-weight: 700;
  color: #fff;
  line-height: 1.3;
}
.review-modal__sub {
  margin-top: 0.25rem;
  font-size: 0.8rem;
  color: hsl(var(--theme-text-soft));
}
.review-modal__close {
  border: none;
  background: transparent;
  color: hsl(var(--theme-text-dim));
  font-size: 1.15rem;
  line-height: 1;
  cursor: pointer;
  padding: 0.2rem 0.35rem;
}
.review-modal__close:hover { color: #fff; }
.review-modal__form {
  display: flex;
  flex-direction: column;
  min-height: 0;
  flex: 1;
}
.review-modal__body {
  flex: 1;
  overflow-y: auto;
  padding: 1rem 1.25rem;
  display: flex;
  flex-direction: column;
  gap: 1rem;
}
.review-modal__card {
  padding: 1rem;
  border-radius: 0.625rem;
  background: hsl(var(--theme-deep));
  border: 1px solid hsl(var(--theme-border-accent));
}
.review-modal__card-head {
  display: flex;
  align-items: flex-start;
  justify-content: space-between;
  gap: 0.75rem;
  margin-bottom: 0.75rem;
}
.review-modal__card-title {
  font-size: 0.9rem;
  font-weight: 600;
  color: #fff;
}
.review-modal__card-hint {
  margin-top: 0.15rem;
  font-size: 0.75rem;
  color: hsl(var(--theme-text-dim));
}
.review-modal__optional {
  font-weight: 400;
  color: hsl(var(--theme-text-faint));
}
.review-modal__field {
  display: flex;
  flex-direction: column;
  gap: 0.35rem;
  margin-top: 0.85rem;
  font-size: 0.8rem;
  color: hsl(var(--theme-muted));
}
.review-modal__textarea {
  min-height: 4.5rem;
  resize: vertical;
}
.review-modal__sync {
  flex-shrink: 0;
  padding: 0.35rem 0.65rem;
  border-radius: 999px;
  border: 1px solid hsl(var(--theme-border-elevated));
  background: hsl(var(--theme-elevated));
  color: hsl(var(--theme-accent-soft));
  font-size: 0.7rem;
  font-weight: 600;
  cursor: pointer;
  white-space: nowrap;
}
.review-modal__sync:hover {
  background: hsl(var(--theme-elevated-hover));
  color: #fff;
}
.review-modal__products {
  display: flex;
  flex-direction: column;
  gap: 0.65rem;
  max-height: 42vh;
  overflow-y: auto;
  padding-right: 0.15rem;
}
.review-product {
  padding: 0.75rem;
  border-radius: 0.5rem;
  background: hsl(var(--theme-deeper));
  border: 1px solid hsl(var(--theme-border-inner));
}
.review-product__main {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 0.75rem;
}
.review-product__info {
  display: flex;
  align-items: flex-start;
  gap: 0.5rem;
  min-width: 0;
  flex: 1;
}
.review-product__index {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 1.35rem;
  height: 1.35rem;
  border-radius: 999px;
  background: hsl(var(--theme-purple) / 0.25);
  color: hsl(var(--theme-accent-soft2));
  font-size: 0.7rem;
  font-weight: 700;
  flex-shrink: 0;
}
.review-product__name {
  font-size: 0.8125rem;
  font-weight: 500;
  color: #fff;
  line-height: 1.35;
  word-break: break-word;
}
.review-product__toggle {
  margin-top: 0.5rem;
  padding: 0;
  border: none;
  background: none;
  color: hsl(var(--theme-text-dim));
  font-size: 0.75rem;
  cursor: pointer;
  text-decoration: underline;
  text-underline-offset: 2px;
}
.review-product__toggle:hover { color: hsl(var(--theme-accent-soft)); }
.review-product__comment {
  margin-top: 0.5rem;
}
.review-modal__footer {
  flex-shrink: 0;
  padding: 1rem 1.25rem 1.15rem;
  border-top: 1px solid hsl(var(--theme-border-alt));
  background: hsl(var(--theme-panel-alt));
  display: flex;
  flex-direction: column;
  gap: 0.5rem;
}
.review-modal__submit {
  display: flex;
  width: 100%;
  justify-content: center;
  align-items: center;
  text-align: center;
  font-weight: 600;
}
.review-modal__skip {
  border: none;
  background: none;
  color: hsl(var(--theme-text-dim));
  font-size: 0.8rem;
  cursor: pointer;
  padding: 0.35rem;
}
.review-modal__skip:hover { color: #fff; }

.star-rating {
  display: flex;
  align-items: center;
  gap: 0.65rem;
  flex-shrink: 0;
}
.star-rating__stars {
  display: flex;
  gap: 0.15rem;
}
.star-rating__star {
  display: flex;
  padding: 0.1rem;
  border: none;
  background: transparent;
  cursor: pointer;
  color: hsl(var(--theme-text-faint));
  transition: color 0.12s, transform 0.12s;
}
.star-rating__star svg {
  width: 1.35rem;
  height: 1.35rem;
  fill: currentColor;
}
.star-rating__star:hover,
.star-rating__star.is-active {
  color: hsl(var(--theme-yellow));
}
.star-rating__star:hover {
  transform: scale(1.08);
}
.star-rating__label {
  font-size: 0.75rem;
  font-weight: 600;
  color: hsl(var(--theme-accent-glow));
  min-width: 2rem;
}

/* Ödeme / checkout formu */
.checkout-form { display: flex; flex-direction: column; gap: 1.25rem; }
.checkout-form__section {
  margin: 0;
  padding: 0;
  border: none;
  display: flex;
  flex-direction: column;
  gap: 0.75rem;
}
.checkout-form__legend {
  padding: 0;
  margin-bottom: 0.25rem;
  font-size: 0.8rem;
  font-weight: 600;
  letter-spacing: 0.04em;
  text-transform: uppercase;
  color: hsl(var(--theme-text-dim));
}
.checkout-form__grid {
  display: grid;
  gap: 0.75rem;
}
.checkout-form__grid--2 {
  grid-template-columns: 1fr 1fr;
}
@media (max-width: 480px) {
  .checkout-form__grid--2 { grid-template-columns: 1fr; }
}
.checkout-form__field {
  display: flex;
  flex-direction: column;
  gap: 0.35rem;
  font-size: 0.875rem;
  color: hsl(var(--theme-text-lighter));
}
.checkout-form__field > span:first-child { color: hsl(var(--theme-text-lighter)); }
.checkout-form__optional { font-weight: 400; color: hsl(var(--theme-text-faint)); }
.checkout-form__hint {
  font-size: 0.75rem;
  color: hsl(var(--theme-text-faint));
  line-height: 1.4;
}
.checkout-form__payment {
  display: flex;
  align-items: flex-start;
  gap: 0.65rem;
  padding: 0.75rem;
  border-radius: 0.5rem;
  background: hsl(var(--theme-inset));
  border: 1px solid hsl(var(--theme-border-inner2));
  cursor: pointer;
  transition: border-color 0.15s, background 0.15s;
}
.checkout-form__payment:has(input:checked) {
  border-color: hsl(48 96% 53% / 0.5);
  background: hsl(var(--theme-deep));
}
.checkout-form__payment input { margin-top: 0.2rem; flex-shrink: 0; }
.checkout-form__payment-body {
  display: flex;
  flex-direction: column;
  gap: 0.15rem;
  font-size: 0.875rem;
  color: #fff;
}
.checkout-form__payment-body small {
  font-size: 0.75rem;
  color: hsl(var(--theme-text-dim));
}
.checkout-form__brands {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: 0.5rem;
  opacity: 0.7;
}
.checkout-form__check {
  display: flex;
  align-items: flex-start;
  gap: 0.5rem;
  font-size: 0.8rem;
  line-height: 1.45;
  color: hsl(var(--theme-text-lighter));
}
.checkout-form__check input { margin-top: 0.2rem; flex-shrink: 0; }
.checkout-form__submit { margin-top: 0.25rem; }

/* Ödeme sayfası */
.checkout-page {
  padding: 1.5rem 0 2.5rem;
}
.checkout-page__wrap {
  max-width: 72rem;
  margin: 0 auto;
  padding: 0 1rem;
}
@media (min-width: 1024px) {
  .checkout-page__wrap { padding: 0 2rem; }
}
.checkout-page__back {
  display: inline-block;
  margin-bottom: 0.75rem;
  font-size: 0.875rem;
  color: hsl(var(--theme-text-muted2));
  transition: color 0.15s;
}
.checkout-page__back:hover { color: hsl(var(--theme-accent-soft)); }
.checkout-page__title {
  margin-bottom: 1.25rem;
  font-size: 1.5rem;
  font-weight: 700;
  color: #fff;
}
.checkout-page__alert {
  margin-bottom: 1rem;
  padding: 0.75rem 1rem;
  border-radius: 0.5rem;
  background: hsl(var(--theme-danger-bg) / 0.35);
  color: hsl(var(--theme-red) / 0.35);
  font-size: 0.875rem;
}
.checkout-page__grid {
  display: grid;
  gap: 1.25rem;
  align-items: start;
}
@media (min-width: 1024px) {
  .checkout-page__grid {
    grid-template-columns: minmax(0, 1fr) 20rem;
    gap: 1.5rem;
  }
}
.checkout-page__main {
  display: flex;
  flex-direction: column;
  gap: 1rem;
  min-width: 0;
}
.checkout-page__card {
  padding: 1rem 1.15rem;
  border-radius: 0.75rem;
  background: hsl(var(--theme-surface));
  border: 1px solid hsl(var(--theme-border-mid) / 0.55);
}
.checkout-page__aside { min-width: 0; }
.checkout-page__sticky {
  display: flex;
  flex-direction: column;
  gap: 0.85rem;
}
@media (min-width: 1024px) {
  .checkout-page__sticky {
    position: sticky;
    top: 1rem;
  }
}
.checkout-page__actions {
  padding: 1rem;
  border-radius: 0.75rem;
  background: hsl(var(--theme-surface));
  border: 1px solid hsl(var(--theme-border-mid) / 0.55);
  display: flex;
  flex-direction: column;
  gap: 0.75rem;
}
.checkout-page__secure {
  text-align: center;
  font-size: 0.7rem;
  color: hsl(var(--theme-text-faint));
}
.checkout-page__paytr { margin-top: 1.5rem; }

.checkout-form--page { gap: 0; }
.checkout-form__section--compact { gap: 0.65rem; }
.checkout-form__grid--3 {
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 0.65rem;
}
.checkout-form__field--span2 {
  grid-column: span 2;
}
@media (max-width: 900px) {
  .checkout-form__grid--3 {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
  .checkout-form__field--span2 { grid-column: span 2; }
}
@media (max-width: 540px) {
  .checkout-form__grid--3,
  .checkout-form__field--span2 {
    grid-template-columns: 1fr;
    grid-column: auto;
  }
}
.checkout-form__payments-grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 0.5rem;
}
@media (max-width: 540px) {
  .checkout-form__payments-grid { grid-template-columns: 1fr; }
}
.checkout-form__payment--compact {
  padding: 0.6rem 0.7rem;
  min-height: 0;
}
.checkout-form__payment--compact .checkout-form__payment-body strong {
  font-size: 0.8125rem;
}
.checkout-form__brands--inline {
  margin-top: 0.65rem;
  padding-top: 0.65rem;
  border-top: 1px solid hsl(var(--theme-border-panel));
}
.checkout-page .sepet-ozet {
  margin: 0;
}

/* Sepet özeti — fiyat + ₺ aynı satırda */
.sepet-ozet__line {
  display: flex;
  align-items: baseline;
  justify-content: space-between;
  gap: 0.75rem;
  color: hsl(var(--theme-text-lighter));
}
.sepet-ozet__line--discount { color: hsl(var(--theme-success-soft)); }
.sepet-ozet__line--total {
  font-weight: 700;
  color: hsl(48 96% 53%);
}
.sepet-ozet__name {
  min-width: 0;
  flex: 1;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}
.sepet-ozet__price {
  flex-shrink: 0;
  white-space: nowrap;
  text-align: right;
  font-variant-numeric: tabular-nums;
}
.checkout-page .checkout-form__check {
  font-size: 0.75rem;
  line-height: 1.4;
}
.checkout-page .checkout-form__submit {
  display: flex;
  width: 100%;
  justify-content: center;
  align-items: center;
  text-align: center;
  padding-top: 0.75rem;
  padding-bottom: 0.75rem;
  font-size: 0.9rem;
  font-weight: 600;
}

/* Giriş modalı */
.login-modal__panel {
  position: relative;
  width: 100%;
  max-width: 28rem;
  padding: 1.75rem 1.5rem 1.5rem;
  border-radius: 0.75rem;
  background: hsl(var(--theme-bg-2));
  border: 1px solid hsl(var(--theme-border-dim));
  box-shadow: 0 24px 48px rgba(0, 0, 0, 0.5);
}

.login-modal__close {
  position: absolute;
  top: 0.85rem;
  right: 0.85rem;
  padding: 0.25rem 0.35rem;
  border: none;
  background: transparent;
  color: hsl(var(--theme-text-dim));
  font-size: 1.1rem;
  line-height: 1;
  cursor: pointer;
  transition: color 0.15s;
}
.login-modal__close:hover {
  color: #fff;
}

.login-modal__brand {
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 0.65rem;
  margin-bottom: 1.25rem;
  padding-top: 0.25rem;
}

.login-modal__logo {
  width: 3rem;
  height: 3rem;
  object-fit: contain;
  border-radius: 0.5rem;
}

.login-modal__site-name {
  font-size: 1.125rem;
  font-weight: 700;
  color: #fff;
  letter-spacing: -0.01em;
  text-align: center;
}

.login-modal__head {
  margin-bottom: 1.25rem;
  text-align: center;
}

.login-modal__title {
  font-size: 1.125rem;
  font-weight: 700;
  color: #fff;
  line-height: 1.3;
}

.login-modal__subtitle {
  margin-top: 0.25rem;
  font-size: 0.8125rem;
  color: hsl(var(--theme-text-soft));
}


.favorite-added-modal__icon {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 2.75rem;
  height: 2.75rem;
  flex-shrink: 0;
  border-radius: 9999px;
  background: hsl(var(--theme-accent-warn-bg2) / 0.85);
  color: hsl(var(--theme-yellow-hover));
}

/* Sepete eklendi modalı */
.cart-added-modal__panel {
  width: 100%;
  max-width: 32rem;
  padding: 1.5rem;
  border-radius: 0.75rem;
  background: hsl(var(--theme-bg-2));
  border: 1px solid hsl(var(--theme-border-dim));
  box-shadow: 0 24px 48px rgba(0, 0, 0, 0.5);
}

.cart-added-modal__head {
  display: flex;
  align-items: flex-start;
  justify-content: space-between;
  gap: 0.75rem;
  margin-bottom: 1.25rem;
}

.cart-added-modal__head-main {
  display: flex;
  align-items: flex-start;
  gap: 0.75rem;
  min-width: 0;
}

.cart-added-modal__success {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 2.75rem;
  height: 2.75rem;
  flex-shrink: 0;
  border-radius: 9999px;
  background: hsl(var(--theme-success-surface) / 0.85);
  color: hsl(150 60% 55%);
}

.cart-added-modal__title {
  font-size: 1.125rem;
  font-weight: 700;
  color: #fff;
  line-height: 1.3;
}

.cart-added-modal__subtitle {
  margin-top: 0.2rem;
  font-size: 0.8125rem;
  color: hsl(var(--theme-text-soft));
  line-height: 1.4;
}

.cart-added-modal__close {
  flex-shrink: 0;
  padding: 0.25rem 0.35rem;
  border: none;
  background: transparent;
  color: hsl(var(--theme-text-dim));
  font-size: 1.1rem;
  line-height: 1;
  cursor: pointer;
  transition: color 0.15s;
}

.cart-added-modal__close:hover {
  color: #fff;
}

.cart-added-modal__product {
  display: flex;
  gap: 0.85rem;
  padding: 0.85rem;
  margin-bottom: 1rem;
  border-radius: 0.65rem;
  background: hsl(var(--theme-surface));
  border: 1px solid hsl(var(--theme-border-mid));
}

.cart-added-modal__thumb {
  width: 3.25rem;
  height: 4.25rem;
  flex-shrink: 0;
  overflow: hidden;
  border-radius: 0.35rem;
  background: hsl(var(--theme-accent-text));
}

.cart-added-modal__thumb-img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  display: block;
}

.cart-added-modal__product-body {
  min-width: 0;
  flex: 1;
}

.cart-added-modal__product-name {
  font-size: 0.9rem;
  font-weight: 600;
  color: #fff;
  line-height: 1.35;
  display: -webkit-box;
  -webkit-line-clamp: 2;
  -webkit-box-orient: vertical;
  overflow: hidden;
}

.cart-added-modal__product-qty {
  margin-top: 0.25rem;
  font-size: 0.8125rem;
  color: hsl(var(--theme-text-soft));
}

.cart-added-modal__product-price {
  margin-top: 0.35rem;
  font-size: 0.9375rem;
  font-weight: 700;
  color: hsl(var(--theme-yellow));
}

.cart-added-modal__total {
  margin-bottom: 1.25rem;
  font-size: 0.875rem;
  color: hsl(var(--theme-text-bright));
}

.cart-added-modal__total strong {
  font-weight: 700;
  color: #fff;
}

.cart-added-modal__actions {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 0.5rem;
}

.cart-added-modal__btn {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-height: 2.75rem;
  padding: 0.5rem 0.4rem;
  border-radius: 0.5rem;
  font-size: 0.72rem;
  font-weight: 600;
  text-decoration: none;
  border: none;
  cursor: pointer;
  text-align: center;
  line-height: 1.25;
  white-space: normal;
  transition: background 0.15s, color 0.15s;
}

@media (min-width: 420px) {
  .cart-added-modal__btn {
    font-size: 0.8125rem;
    padding: 0.55rem 0.65rem;
  }
}

.cart-added-modal__btn--secondary {
  background: hsl(var(--theme-surface-active));
  color: #fff;
}

.cart-added-modal__btn--secondary:hover {
  background: hsl(var(--theme-surface-brighter));
}

.cart-added-modal__btn--primary {
  background: hsl(var(--theme-yellow));
  color: hsl(var(--theme-accent-text));
}

.cart-added-modal__btn--primary:hover {
  background: hsl(var(--theme-yellow-hover));
}

.newsletter-modal__panel {
  max-width: 24rem;
}

.newsletter-modal__email {
  margin: 0 0 1.25rem;
  padding: 0.75rem 1rem;
  border-radius: 0.5rem;
  background: hsl(var(--theme-surface-mid));
  border: 1px solid hsl(var(--theme-border-faint));
  color: hsl(var(--theme-yellow-hover));
  font-size: 0.875rem;
  font-weight: 600;
  text-align: center;
  word-break: break-all;
}

.newsletter-modal__actions {
  grid-template-columns: 1fr;
}

.newsletter-modal__icon--error {
  background: hsl(339 55% 42%) !important;
  color: #fff !important;
}

.purchase-success-modal__panel {
  max-width: 26rem;
}

.purchase-success-modal__meta {
  margin: 0 0 1.25rem;
  padding: 0.85rem 1rem;
  border-radius: 0.5rem;
  background: hsl(var(--theme-surface-mid));
  border: 1px solid hsl(var(--theme-border-faint));
}

.purchase-success-modal__meta-row {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 1rem;
  font-size: 0.875rem;
}

.purchase-success-modal__meta-row + .purchase-success-modal__meta-row {
  margin-top: 0.5rem;
  padding-top: 0.5rem;
  border-top: 1px solid hsl(var(--theme-border-dim));
}

.purchase-success-modal__meta-row dt {
  color: hsl(var(--theme-text));
}

.purchase-success-modal__meta-row dd {
  margin: 0;
  color: #fff;
  font-weight: 700;
}

.purchase-success-modal__actions {
  grid-template-columns: repeat(2, minmax(0, 1fr));
}

@media (max-width: 639px) {
  .purchase-success-modal__actions {
    grid-template-columns: 1fr;
  }
}

.favorite-added-modal .cart-added-modal__actions {
  grid-template-columns: repeat(2, minmax(0, 1fr));
}

@media (max-width: 639px) {
  .site-modal.cart-added-modal,
  .site-modal.favorite-added-modal,
  .site-modal.newsletter-modal,
  .site-modal.purchase-success-modal {
    padding: max(0.75rem, env(safe-area-inset-top)) max(0.75rem, env(safe-area-inset-right)) max(0.75rem, env(safe-area-inset-bottom)) max(0.75rem, env(safe-area-inset-left));
    align-items: center;
  }

  .cart-added-modal__panel {
    padding: 1.125rem;
    max-height: min(calc(100dvh - 1.5rem), 36rem);
    overflow-y: auto;
    -webkit-overflow-scrolling: touch;
  }

  .cart-added-modal__head {
    margin-bottom: 1rem;
  }

  .cart-added-modal__head-main {
    gap: 0.625rem;
    padding-right: 0.25rem;
  }

  .favorite-added-modal__icon,
  .cart-added-modal__success {
    width: 2.5rem;
    height: 2.5rem;
  }

  .favorite-added-modal__icon svg,
  .cart-added-modal__success svg {
    width: 1.125rem;
    height: 1.125rem;
  }

  .cart-added-modal__title {
    font-size: 1rem;
  }

  .cart-added-modal__subtitle {
    font-size: 0.75rem;
  }

  .cart-added-modal__product {
    gap: 0.75rem;
    padding: 0.75rem;
    margin-bottom: 0.875rem;
  }

  .cart-added-modal__thumb {
    width: 3rem;
    height: 3.75rem;
  }

  .cart-added-modal__product-name {
    font-size: 0.875rem;
  }

  .cart-added-modal__product-price {
    font-size: 0.875rem;
  }

  .cart-added-modal__total {
    margin-bottom: 1rem;
    font-size: 0.8125rem;
  }

  .favorite-added-modal .cart-added-modal__actions {
    grid-template-columns: 1fr;
    gap: 0.625rem;
  }

  .favorite-added-modal .cart-added-modal__btn {
    width: 100%;
    min-height: 2.875rem;
    font-size: 0.875rem;
    padding: 0.65rem 1rem;
  }

  .cart-added-modal .cart-added-modal__actions {
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 0.4rem;
  }

  .cart-added-modal .cart-added-modal__btn {
    min-height: 2.625rem;
    font-size: 0.68rem;
    padding: 0.45rem 0.3rem;
  }
}

@media (max-width: 359px) {
  .cart-added-modal .cart-added-modal__actions {
    grid-template-columns: 1fr;
    gap: 0.5rem;
  }

  .cart-added-modal .cart-added-modal__btn {
    font-size: 0.8125rem;
    padding: 0.6rem 0.75rem;
  }
}

.sepet-discount-btn {
  flex-shrink: 0;
  white-space: nowrap;
}

/* Kategori mega menü */
.mega-nav {
  position: relative;
  z-index: 50;
  overflow: visible;
  background: hsl(var(--theme-bg-2));
  border-bottom: 1px solid hsl(var(--theme-border));
}

.mega-nav__inner {
  position: relative;
  max-width: 1480px;
  margin: 0 auto;
  padding: 0 1rem;
  overflow: visible;
}

@media (min-width: 1024px) {
  .mega-nav__inner { padding: 0 2rem; }
}

.mega-nav__bar {
  display: flex;
  align-items: center;
  gap: 0.25rem;
  min-height: 2.75rem;
}

.mega-menu__toggle {
  display: inline-flex;
  align-items: center;
  gap: 0.4rem;
  flex-shrink: 0;
  padding: 0.45rem 0.75rem;
  border: none;
  border-radius: 0.375rem;
  background: transparent;
  color: hsl(var(--theme-text-pale2));
  font-size: 0.875rem;
  font-weight: 600;
  cursor: pointer;
  transition: background 0.15s, color 0.15s;
}

.mega-menu__toggle:hover,
.mega-nav.is-open .mega-menu__toggle {
  background: hsl(var(--theme-surface));
  color: #fff;
}

.mega-nav.is-open .mega-menu__toggle {
  box-shadow: inset 0 -2px 0 hsl(var(--theme-yellow));
}

.mega-menu__toggle-icon {
  font-size: 1rem;
  line-height: 1;
  opacity: 0.9;
}

.mega-menu__chevron {
  font-size: 0.65rem;
  line-height: 1;
  opacity: 0.65;
  transition: transform 0.2s ease;
}

.mega-nav.is-open .mega-menu__chevron {
  transform: rotate(180deg);
}

.mega-nav__links {
  display: flex;
  align-items: center;
  gap: 0.15rem;
  min-width: 0;
  flex: 1;
  overflow-x: auto;
  -ms-overflow-style: none;
  scrollbar-width: none;
}

.mega-nav__links::-webkit-scrollbar { display: none; }

.mega-nav__link {
  flex-shrink: 0;
  padding: 0.45rem 0.75rem;
  border-radius: 0.375rem;
  font-size: 0.875rem;
  font-weight: 500;
  color: hsl(var(--theme-text-bright));
  text-decoration: none;
  transition: background 0.15s, color 0.15s;
}

.mega-nav__link:hover {
  background: hsl(var(--theme-surface-mid));
  color: #fff;
}

.mega-nav__link.is-active {
  color: #fff;
  background: hsl(var(--theme-purple-deep));
}

.mega-menu__panel {
  position: absolute;
  left: 0;
  right: 0;
  top: 100%;
  z-index: 100;
}

.mega-menu__panel[hidden] {
  display: none !important;
}

.mega-menu__panel.is-open {
  display: block;
  animation: megaPanelIn 0.18s ease-out;
}

@keyframes megaPanelIn {
  from { opacity: 0; transform: translateY(-6px); }
  to { opacity: 1; transform: translateY(0); }
}

.mega-menu__panel-inner {
  margin-top: 0;
  padding: 1rem 1.25rem 1.15rem;
  border-radius: 0 0 0.75rem 0.75rem;
  border: 1px solid hsl(var(--theme-border-mid));
  border-top: none;
  background: hsl(var(--theme-surface));
  box-shadow: 0 12px 32px rgba(0, 0, 0, 0.4);
}

@media (min-width: 768px) {
  .mega-menu__panel-inner {
    padding: 1.25rem 1.5rem 1.35rem;
    border-radius: 0 0 0.85rem 0.85rem;
  }
}

.mega-menu__list {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 0.15rem 1.25rem;
}

@media (min-width: 640px) {
  .mega-menu__list {
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 0.2rem 1.5rem;
  }
}

@media (min-width: 1024px) {
  .mega-menu__list {
    grid-template-columns: repeat(4, minmax(0, 1fr));
  }
}

@media (min-width: 1280px) {
  .mega-menu__list {
    grid-template-columns: repeat(5, minmax(0, 1fr));
  }
}

.mega-menu__item {
  display: block;
  padding: 0.5rem 0.65rem;
  border-radius: 0.375rem;
  font-size: 0.875rem;
  font-weight: 500;
  line-height: 1.35;
  color: hsl(var(--theme-text-brighter));
  text-decoration: none;
  transition: background 0.15s, color 0.15s;
}

.mega-menu__item:hover {
  background: hsl(var(--theme-surface-bright));
  color: #fff;
}

.mega-menu__footer-row {
  margin-top: 0.85rem;
  padding-top: 0.85rem;
  border-top: 1px solid hsl(var(--theme-border-mid));
  text-align: center;
}

.mega-menu__footer {
  display: inline-block;
  font-size: 0.8125rem;
  font-weight: 600;
  color: hsl(var(--theme-yellow));
  text-decoration: none;
  transition: color 0.15s;
}

.mega-menu__footer:hover {
  color: hsl(var(--theme-yellow-hover));
  text-decoration: underline;
}

/* ===== Çekiliş sayfaları ===== */
.cekilis-page__head {
  display: flex;
  align-items: flex-end;
  justify-content: space-between;
  gap: 1rem;
  margin-bottom: 2rem;
}
.cekilis-page__title {
  font-size: 1.75rem;
  font-weight: 800;
  color: #fff;
}
@media (min-width: 768px) {
  .cekilis-page__title { font-size: 2rem; }
}
.cekilis-page__desc {
  margin-top: 0.35rem;
  font-size: 0.9rem;
  color: hsl(var(--theme-text-muted2));
  max-width: 36rem;
}
.cekilis-page__stat {
  text-align: center;
  padding: 0.75rem 1.25rem;
  border-radius: 0.65rem;
  background: hsl(var(--theme-surface));
  border: 1px solid hsl(var(--theme-border-mid));
}
.cekilis-page__stat-val {
  display: block;
  font-size: 1.5rem;
  font-weight: 800;
  color: hsl(var(--theme-yellow));
}
.cekilis-page__stat-lbl {
  display: block;
  margin-top: 0.15rem;
  font-size: 0.7rem;
  color: hsl(var(--theme-text-soft));
  text-transform: uppercase;
  letter-spacing: 0.04em;
}

.cekilis-section { margin-bottom: 2.5rem; }
.cekilis-section__head {
  display: flex;
  align-items: center;
  justify-content: space-between;
  margin-bottom: 1rem;
}
.cekilis-section__title {
  font-size: 1.125rem;
  font-weight: 700;
  color: #fff;
}

.cekilis-grid {
  display: grid;
  gap: 1.25rem;
  grid-template-columns: 1fr;
}
@media (min-width: 640px) {
  .cekilis-grid { grid-template-columns: repeat(2, 1fr); }
}
@media (min-width: 1024px) {
  .cekilis-grid { grid-template-columns: repeat(3, 1fr); }
}

.cekilis-card {
  display: flex;
  flex-direction: column;
  overflow: hidden;
  border-radius: 0.75rem;
  background: hsl(var(--theme-surface));
  border: 1px solid hsl(var(--theme-border-mid));
  text-decoration: none;
  color: inherit;
  transition: border-color 0.2s, transform 0.2s, box-shadow 0.2s;
}
.cekilis-card:hover {
  border-color: hsl(var(--theme-purple));
  transform: translateY(-2px);
  box-shadow: 0 12px 28px rgba(0, 0, 0, 0.35);
}
.cekilis-card--finished { opacity: 0.88; }
.cekilis-card--finished:hover { opacity: 1; }

.cekilis-card__media {
  position: relative;
  aspect-ratio: 16 / 9;
  background: hsl(var(--theme-accent-text));
}
.cekilis-card__img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  display: block;
}
.cekilis-card__placeholder {
  display: flex;
  align-items: center;
  justify-content: center;
  height: 100%;
  font-size: 2.5rem;
  opacity: 0.5;
}
.cekilis-card__body { padding: 1rem; flex: 1; display: flex; flex-direction: column; }
.cekilis-card__title {
  font-size: 1rem;
  font-weight: 700;
  color: #fff;
  line-height: 1.35;
}
.cekilis-card__prize {
  margin-top: 0.35rem;
  font-size: 0.8125rem;
  font-weight: 600;
  color: hsl(var(--theme-yellow));
}
.cekilis-card__meta {
  display: flex;
  flex-wrap: wrap;
  gap: 0.5rem 1rem;
  margin-top: 0.65rem;
  font-size: 0.75rem;
  color: hsl(var(--theme-text-soft));
}
.cekilis-card__ends {
  margin-top: auto;
  padding-top: 0.65rem;
  font-size: 0.75rem;
  color: hsl(var(--theme-text-faint));
}

.cekilis-badge {
  display: inline-block;
  padding: 0.2rem 0.55rem;
  border-radius: 9999px;
  font-size: 0.65rem;
  font-weight: 700;
  text-transform: uppercase;
  letter-spacing: 0.03em;
}
.cekilis-card .cekilis-badge {
  position: absolute;
  top: 0.65rem;
  left: 0.65rem;
}
.cekilis-badge--active {
  background: hsl(var(--theme-success-surface));
  color: hsl(var(--theme-success-soft));
}
.cekilis-badge--finished {
  background: hsl(var(--theme-badge-muted));
  color: hsl(var(--theme-text-light));
}
.cekilis-badge--muted {
  background: hsl(var(--theme-badge-muted));
  color: hsl(var(--theme-text-soft));
}

.cekilis-empty {
  padding: 3rem 1.5rem;
  text-align: center;
  border-radius: 0.75rem;
  background: hsl(var(--theme-surface-hover));
  border: 1px dashed hsl(var(--theme-border-strong));
}
.cekilis-empty__icon { font-size: 2.5rem; margin-bottom: 0.75rem; }
.cekilis-empty__title { font-size: 1rem; font-weight: 700; color: #fff; }
.cekilis-empty__text { margin-top: 0.5rem; font-size: 0.875rem; color: hsl(var(--theme-text-soft)); }

.cekilis-breadcrumb {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: 0.35rem;
  margin-bottom: 1.25rem;
  font-size: 0.8125rem;
  color: hsl(var(--theme-text-dim));
}
.cekilis-breadcrumb__link {
  color: hsl(var(--theme-muted));
  text-decoration: none;
}
.cekilis-breadcrumb__link:hover { color: #fff; text-decoration: underline; }
.cekilis-breadcrumb__sep { opacity: 0.4; }
.cekilis-breadcrumb__current { color: #fff; }

.cekilis-detail {
  display: grid;
  gap: 1.5rem;
  align-items: start;
}
@media (min-width: 1024px) {
  .cekilis-detail {
    grid-template-columns: minmax(0, 1fr) 20rem;
    gap: 2rem;
  }
}

.cekilis-detail__banner {
  margin-bottom: 1.25rem;
  overflow: hidden;
  border-radius: 0.75rem;
  border: 1px solid hsl(var(--theme-border-mid));
}
.cekilis-detail__banner img {
  width: 100%;
  max-height: 22rem;
  object-fit: cover;
  display: block;
}
.cekilis-detail__head { margin-bottom: 1rem; }
.cekilis-detail__title {
  margin-top: 0.65rem;
  font-size: 1.5rem;
  font-weight: 800;
  color: #fff;
  line-height: 1.25;
}
@media (min-width: 768px) {
  .cekilis-detail__title { font-size: 1.875rem; }
}
.cekilis-detail__desc {
  font-size: 0.9375rem;
  line-height: 1.65;
  color: hsl(var(--theme-text-bright));
}
.cekilis-detail__prize {
  margin-top: 1.25rem;
  padding: 1rem 1.15rem;
  border-radius: 0.65rem;
  background: hsl(var(--theme-surface-hover));
  border-left: 3px solid hsl(var(--theme-yellow));
}
.cekilis-detail__prize-label {
  display: block;
  font-size: 0.7rem;
  font-weight: 700;
  text-transform: uppercase;
  letter-spacing: 0.05em;
  color: hsl(var(--theme-yellow));
}
.cekilis-detail__prize-text {
  margin-top: 0.35rem;
  font-size: 1rem;
  font-weight: 600;
  color: #fff;
}

.cekilis-detail__winners {
  margin-top: 1.5rem;
  padding: 1.15rem;
  border-radius: 0.75rem;
  background: hsl(var(--theme-surface));
  border: 1px solid hsl(var(--theme-border-mid));
}
.cekilis-detail__winners-title {
  margin-bottom: 0.85rem;
  font-size: 1rem;
  font-weight: 700;
  color: #fff;
}
.cekilis-winners-list {
  display: flex;
  flex-direction: column;
  gap: 0.5rem;
  list-style: none;
  padding: 0;
  margin: 0;
}
.cekilis-winners-list__item {
  display: flex;
  align-items: center;
  gap: 0.65rem;
  padding: 0.55rem 0.75rem;
  border-radius: 0.5rem;
  background: hsl(var(--theme-input) / 0.55);
  font-size: 0.9rem;
  font-weight: 600;
  color: #fff;
}
.cekilis-winners-list__icon { font-size: 1.1rem; }

.cekilis-aside-card {
  position: sticky;
  top: 1rem;
  padding: 1.25rem;
  border-radius: 0.75rem;
  background: hsl(var(--theme-surface));
  border: 1px solid hsl(var(--theme-border-mid));
}
.cekilis-aside-card__label {
  font-size: 0.75rem;
  font-weight: 700;
  text-transform: uppercase;
  letter-spacing: 0.05em;
  color: hsl(var(--theme-text-soft));
}
.cekilis-aside-card__ends {
  margin-top: 0.85rem;
  font-size: 0.8rem;
  color: hsl(var(--theme-text-soft));
}
.cekilis-aside-card__finished {
  margin-top: 0.35rem;
  font-size: 0.95rem;
  font-weight: 600;
  color: #fff;
}
.cekilis-aside-card__stats {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 0.75rem;
  margin-top: 1.15rem;
  padding-top: 1.15rem;
  border-top: 1px solid hsl(var(--theme-border-faint));
}
.cekilis-aside-card__stats dt {
  font-size: 0.7rem;
  color: hsl(var(--theme-text-dim));
  text-transform: uppercase;
  letter-spacing: 0.03em;
}
.cekilis-aside-card__stats dd {
  margin-top: 0.15rem;
  font-size: 1.25rem;
  font-weight: 800;
  color: #fff;
}
.cekilis-aside-card__cta { margin-top: 1.15rem; }
.cekilis-aside-card__btn {
  display: block;
  width: 100%;
  padding: 0.75rem 1rem;
  border: none;
  border-radius: 0.5rem;
  background: hsl(var(--theme-yellow));
  color: hsl(var(--theme-accent-text));
  font-size: 0.9rem;
  font-weight: 700;
  cursor: pointer;
  text-align: center;
  text-decoration: none;
  transition: background 0.15s;
}
.cekilis-aside-card__btn:hover { background: hsl(var(--theme-yellow-hover)); }
.cekilis-aside-card__btn:disabled { opacity: 0.6; cursor: wait; }
.cekilis-aside-card__joined {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 0.4rem;
  padding: 0.75rem;
  border-radius: 0.5rem;
  background: hsl(var(--theme-success-bg));
  color: hsl(var(--theme-success-soft));
  font-size: 0.875rem;
  font-weight: 600;
}
.cekilis-aside-card__hint {
  margin-top: 0.65rem;
  font-size: 0.75rem;
  color: hsl(var(--theme-text-faint));
  line-height: 1.4;
}

.cekilis-countdown {
  display: grid;
  grid-template-columns: repeat(4, 1fr);
  gap: 0.5rem;
  margin-top: 0.65rem;
}
.cekilis-countdown__item {
  display: flex;
  flex-direction: column;
  align-items: center;
  padding: 0.55rem 0.25rem;
  border-radius: 0.5rem;
  background: hsl(var(--theme-bg-2));
  border: 1px solid hsl(var(--theme-border-dim));
}
.cekilis-countdown__val {
  font-size: 1.25rem;
  font-weight: 800;
  color: hsl(var(--theme-yellow));
  line-height: 1.2;
  font-variant-numeric: tabular-nums;
}
.cekilis-countdown__lbl {
  margin-top: 0.15rem;
  font-size: 0.6rem;
  font-weight: 600;
  text-transform: uppercase;
  color: hsl(var(--theme-text-dim));
  letter-spacing: 0.04em;
}
.cekilis-countdown.is-ended .cekilis-countdown__val { color: hsl(var(--theme-text-dim)); }

.cekilis-draw {
  margin-top: 1.5rem;
  padding: 1.5rem;
  border-radius: 0.75rem;
  background: hsl(var(--theme-purple-deep) / 0.25);
  border: 1px solid hsl(var(--theme-purple));
  text-align: center;
}
.cekilis-draw__spin {
  font-size: 1.125rem;
  font-weight: 600;
  color: #fff;
  animation: cekilisPulse 1s ease-in-out infinite;
}
.cekilis-draw__title {
  font-size: 1.25rem;
  font-weight: 800;
  color: hsl(var(--theme-yellow));
}
.cekilis-draw__list {
  margin-top: 0.75rem;
  list-style: none;
  padding: 0;
  color: #fff;
  font-weight: 600;
}

/* Canlı kura çekimi */
.cekilis-draw-live {
  margin-top: 1.5rem;
  border-radius: 1rem;
  overflow: hidden;
  border: 1px solid hsl(var(--theme-purple));
  background:
    radial-gradient(ellipse at 50% 0%, hsl(var(--theme-purple) / 0.35), transparent 55%),
    hsl(var(--theme-surface-deep));
  box-shadow: 0 20px 50px hsl(var(--theme-shadow) / 0.45);
}

.cekilis-draw-live__inner {
  padding: 1.25rem;
}

@media (min-width: 768px) {
  .cekilis-draw-live__inner { padding: 1.75rem; }
}

.cekilis-draw-live__loading,
.cekilis-draw-live__error {
  padding: 2.5rem 1rem;
  text-align: center;
  color: hsl(var(--theme-text-bright));
  font-size: 0.95rem;
}

.cekilis-draw-live__spinner {
  display: inline-block;
  width: 2rem;
  height: 2rem;
  margin-bottom: 0.75rem;
  border: 3px solid hsl(var(--theme-border-strong));
  border-top-color: hsl(var(--theme-yellow));
  border-radius: 50%;
  animation: cekilisSpin 0.8s linear infinite;
}

.cekilis-draw-live__header {
  text-align: center;
  margin-bottom: 1.25rem;
}

.cekilis-draw-live__eyebrow {
  font-size: 0.72rem;
  font-weight: 800;
  letter-spacing: 0.12em;
  text-transform: uppercase;
  color: hsl(var(--theme-yellow-hover));
}

.cekilis-draw-live__title {
  margin-top: 0.35rem;
  font-size: 1.5rem;
  font-weight: 800;
  color: #fff;
}

.cekilis-draw-live__sub {
  margin-top: 0.45rem;
  font-size: 0.875rem;
  color: hsl(var(--theme-text));
}

.cekilis-draw-live__arena {
  position: relative;
  padding: 1.25rem;
  border-radius: 0.85rem;
  background: hsl(var(--theme-accent-text));
  border: 1px solid hsl(var(--theme-border-dim));
  overflow: hidden;
}

.cekilis-draw-live__arena.is-shaking {
  animation: cekilisShake 0.45s ease-in-out infinite;
}

.cekilis-draw-live__arena.is-slow {
  animation-duration: 0.7s;
}

.cekilis-draw-live__arena.is-finished {
  animation: none;
  border-color: hsl(var(--theme-yellow) / 0.45);
}

.cekilis-draw-live__glow {
  position: absolute;
  inset: 0;
  background: radial-gradient(circle at 50% 35%, hsl(var(--theme-purple) / 0.28), transparent 62%);
  pointer-events: none;
}

.cekilis-draw-live__spotlight {
  position: relative;
  z-index: 2;
  margin: 0 auto 1.15rem;
  max-width: 28rem;
  padding: 1rem 1.25rem;
  border-radius: 0.75rem;
  text-align: center;
  background: hsl(var(--theme-surface));
  border: 2px solid hsl(var(--theme-purple));
  box-shadow: 0 0 30px hsl(var(--theme-purple) / 0.25);
}

.cekilis-draw-live__spotlight-label {
  display: block;
  font-size: 0.68rem;
  font-weight: 700;
  text-transform: uppercase;
  letter-spacing: 0.08em;
  color: hsl(var(--theme-text-soft));
}

.cekilis-draw-live__spotlight-name {
  display: block;
  margin-top: 0.35rem;
  font-size: clamp(1.1rem, 3vw, 1.65rem);
  font-weight: 800;
  color: #fff;
  line-height: 1.25;
  min-height: 1.4em;
}

.cekilis-draw-live__spotlight-name.is-pop {
  animation: cekilisPop 0.18s ease-out;
}

.cekilis-draw-live__pool {
  position: relative;
  z-index: 1;
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  gap: 0.45rem;
  max-height: 14rem;
  overflow: hidden;
  padding: 0.25rem;
}

.cekilis-draw-live__chip {
  padding: 0.35rem 0.7rem;
  border-radius: 9999px;
  font-size: 0.75rem;
  font-weight: 600;
  color: hsl(var(--theme-text-brighter));
  background: hsl(var(--theme-card));
  border: 1px solid hsl(var(--theme-border-strong));
  transition: transform 0.15s ease, opacity 0.25s ease, background 0.2s ease, color 0.2s ease, border-color 0.2s ease;
  white-space: nowrap;
}

.cekilis-draw-live__chip.is-active {
  transform: scale(1.08);
  color: #fff;
  background: hsl(var(--theme-purple));
  border-color: hsl(var(--theme-yellow));
  box-shadow: 0 0 16px hsl(var(--theme-purple) / 0.45);
}

.cekilis-draw-live__chip.is-blur {
  opacity: 0.35;
  transform: scale(0.96);
}

.cekilis-draw-live__chip.is-winner {
  opacity: 1;
  transform: scale(1.12);
  color: hsl(var(--theme-accent-text));
  background: hsl(var(--theme-yellow));
  border-color: hsl(var(--theme-yellow-hover));
  box-shadow: 0 0 20px hsl(var(--theme-yellow) / 0.35);
  animation: cekilisWinnerPulse 1.2s ease-in-out infinite;
}

.cekilis-draw-live__chip.is-loser {
  opacity: 0.2;
  transform: scale(0.9);
}

.cekilis-draw-live__result {
  margin-top: 1.15rem;
  padding: 1rem 1.15rem;
  border-radius: 0.75rem;
  text-align: center;
  background: hsl(var(--theme-success-bg) / 0.55);
  border: 1px solid hsl(var(--theme-success-surface2));
}

.cekilis-draw-live__result-title {
  font-size: 1.1rem;
  font-weight: 800;
  color: hsl(var(--theme-success-soft));
}

.cekilis-draw-live__result-list {
  margin: 0.65rem 0 0;
  padding: 0;
  list-style: none;
  display: flex;
  flex-direction: column;
  gap: 0.35rem;
  font-size: 1rem;
  font-weight: 700;
  color: #fff;
}

.cekilis-winners-list__item--reveal {
  animation: cekilisReveal 0.5s ease-out both;
}

@keyframes cekilisPulse {
  0%, 100% { opacity: 1; }
  50% { opacity: 0.5; }
}

@keyframes cekilisSpin {
  to { transform: rotate(360deg); }
}

@keyframes cekilisShake {
  0%, 100% { transform: translateX(0); }
  20% { transform: translateX(-4px) rotate(-0.4deg); }
  40% { transform: translateX(4px) rotate(0.4deg); }
  60% { transform: translateX(-3px); }
  80% { transform: translateX(3px); }
}

@keyframes cekilisPop {
  0% { transform: scale(0.92); opacity: 0.65; }
  100% { transform: scale(1); opacity: 1; }
}

@keyframes cekilisWinnerPulse {
  0%, 100% { box-shadow: 0 0 16px hsl(var(--theme-yellow) / 0.25); }
  50% { box-shadow: 0 0 28px hsl(var(--theme-yellow) / 0.55); }
}

@keyframes cekilisReveal {
  from { opacity: 0; transform: translateY(8px); }
  to { opacity: 1; transform: translateY(0); }
}

/* ===== Ürün detay sayfası ===== */
.sr-only {
  position: absolute;
  width: 1px;
  height: 1px;
  padding: 0;
  margin: -1px;
  overflow: hidden;
  clip: rect(0, 0, 0, 0);
  white-space: nowrap;
  border: 0;
}

.product-detail__breadcrumb {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: 0.35rem;
  margin-bottom: 1.25rem;
  font-size: 0.8125rem;
  color: hsl(var(--theme-text-dim));
}
.product-detail__breadcrumb a {
  color: hsl(var(--theme-muted));
  text-decoration: none;
}
.product-detail__breadcrumb a:hover { color: #fff; text-decoration: underline; }
.product-detail__breadcrumb .is-current { color: #fff; }

.product-detail__error {
  margin-bottom: 1rem;
  padding: 0.75rem 1rem;
  border-radius: 0.5rem;
  background: hsl(339 45% 18% / 0.85);
  color: hsl(339 55% 78%);
  font-size: 0.875rem;
}
.product-detail__error.hidden { display: none; }

.product-detail {
  display: grid;
  gap: 1.75rem;
  align-items: start;
}
@media (min-width: 768px) {
  .product-detail {
    grid-template-columns: minmax(0, 340px) minmax(0, 1fr);
    gap: 2rem;
  }
}
@media (min-width: 1024px) {
  .product-detail {
    grid-template-columns: minmax(0, 420px) minmax(0, 1fr);
    gap: 2.5rem;
  }
}

.product-detail__media {
  width: 100%;
  max-width: 420px;
  margin: 0 auto;
}
@media (min-width: 768px) {
  .product-detail__media { margin: 0; }
}

.product-detail__cover-wrap {
  border-radius: 0.75rem;
  overflow: hidden;
  background: hsl(var(--theme-surface));
  border: 1px solid hsl(var(--theme-border-mid));
  box-shadow: 0 8px 24px rgba(0, 0, 0, 0.3);
}

.product-detail__cover {
  aspect-ratio: 2 / 3;
  max-height: 560px;
  overflow: hidden;
  background: hsl(var(--theme-accent-text));
}

.product-detail__cover-img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  display: block;
}

.product-detail__cover-placeholder {
  display: flex;
  align-items: center;
  justify-content: center;
  height: 100%;
  font-size: 3rem;
  opacity: 0.4;
}

.product-detail__info { min-width: 0; }

.product-detail__category {
  display: inline-block;
  margin-bottom: 0.35rem;
  font-size: 0.75rem;
  font-weight: 600;
  text-transform: uppercase;
  letter-spacing: 0.04em;
  color: hsl(var(--theme-yellow));
  text-decoration: none;
}
.product-detail__category:hover { text-decoration: underline; }

.product-detail__title-row {
  display: flex;
  align-items: flex-start;
  gap: 0.75rem;
  margin-bottom: 1.25rem;
}

.product-detail__title {
  font-size: 1.375rem;
  font-weight: 800;
  color: #fff;
  line-height: 1.25;
}
@media (min-width: 768px) {
  .product-detail__title { font-size: 1.75rem; }
}

.product-detail__fav {
  flex-shrink: 0;
  padding: 0.5rem;
  border: none;
  border-radius: 0.5rem;
  background: hsl(var(--theme-surface));
  color: hsl(var(--theme-text-lighter));
  cursor: pointer;
  transition: background 0.15s, color 0.15s;
}
.product-detail__fav:hover { background: hsl(var(--theme-surface-bright)); color: #fff; }
.product-detail__fav.is-active { color: hsl(var(--theme-yellow)); }

.product-detail__rating {
  display: flex;
  align-items: center;
  gap: 0.4rem;
  margin-top: 0.5rem;
}
.product-detail__stars {
  display: inline-flex;
  gap: 0.1rem;
  color: hsl(var(--theme-text-faint));
  font-size: 0.95rem;
}
.product-detail__stars span.is-filled { color: hsl(var(--theme-yellow)); }
.product-detail__rating-val {
  font-size: 0.8125rem;
  color: hsl(var(--theme-muted));
}

.product-detail__buybox {
  padding: 1.15rem;
  margin-bottom: 1.25rem;
  border-radius: 0.75rem;
  background: hsl(var(--theme-surface));
  border: 1px solid hsl(var(--theme-border-mid));
}

.product-detail__price-row {
  display: flex;
  flex-wrap: wrap;
  align-items: baseline;
  gap: 0.5rem 0.75rem;
}

.product-detail__price {
  font-size: 1.75rem;
  font-weight: 800;
  color: hsl(var(--theme-yellow));
  line-height: 1.2;
}

.product-detail__price-old {
  font-size: 1rem;
  color: hsl(255 25% 50%);
  text-decoration: line-through;
}

.product-detail__tax {
  font-size: 0.8125rem;
  color: hsl(var(--theme-text-dim));
}

.product-detail__stock {
  margin-top: 0.5rem;
  font-size: 0.875rem;
  font-weight: 600;
}
.product-detail__stock.is-in { color: hsl(var(--theme-teal)); }
.product-detail__stock.is-out { color: hsl(38 80% 65%); }

.product-detail__cart-form {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: 0.65rem;
  margin-top: 1rem;
}

.product-detail__qty {
  width: 4rem;
  padding: 0.6rem 0.5rem;
  border-radius: 0.5rem;
  border: 1px solid hsl(var(--theme-border));
  background: hsl(var(--theme-input));
  color: #fff;
  font-size: 0.9375rem;
  font-weight: 600;
  text-align: center;
}
.product-detail__qty:focus {
  outline: 2px solid hsl(var(--theme-yellow));
}

.product-detail__btn {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  padding: 0.65rem 1.25rem;
  border-radius: 0.5rem;
  font-size: 0.9rem;
  font-weight: 700;
  border: none;
  cursor: pointer;
  text-decoration: none;
  transition: background 0.15s, opacity 0.15s;
  white-space: nowrap;
}
.product-detail__btn:disabled {
  opacity: 0.45;
  cursor: not-allowed;
}
.product-detail__btn--primary {
  background: hsl(var(--theme-yellow));
  color: hsl(var(--theme-accent-text));
}
.product-detail__btn--primary:hover:not(:disabled) {
  background: hsl(var(--theme-yellow-hover));
}
.product-detail__btn--ghost {
  background: transparent;
  color: #fff;
  border: 1px solid hsl(var(--theme-border-highlight));
}
.product-detail__btn--ghost:hover:not(:disabled) {
  background: hsl(var(--theme-surface-active));
}

.product-detail__delivery {
  margin-bottom: 1.25rem;
  padding: 1rem 1.15rem;
  border-radius: 0.65rem;
  background: hsl(var(--theme-bg-2));
  border: 1px solid hsl(var(--theme-border-dim));
}
.product-detail__delivery-title {
  font-size: 0.9rem;
  font-weight: 700;
  color: #fff;
  margin-bottom: 0.4rem;
}
.product-detail__delivery-text {
  font-size: 0.8125rem;
  line-height: 1.55;
  color: hsl(var(--theme-muted));
}

.product-detail__desc {
  margin-bottom: 1.25rem;
}
.product-detail__desc-title {
  font-size: 0.9rem;
  font-weight: 700;
  color: #fff;
  margin-bottom: 0.5rem;
}
.product-detail__desc-text {
  font-size: 0.875rem;
  line-height: 1.65;
  color: hsl(var(--theme-muted));
}

.product-detail__reviews {
  margin-top: 2.5rem;
  padding-top: 2rem;
  border-top: 1px solid hsl(var(--theme-border-muted));
}
.product-detail__reviews-head {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: 0.75rem;
  margin-bottom: 1.25rem;
}
.product-detail__reviews-title {
  font-size: 1.25rem;
  font-weight: 700;
  color: #fff;
}
.product-detail__reviews-count {
  font-size: 0.8125rem;
  color: hsl(var(--theme-text-dim));
}
.product-detail__reviews-empty {
  font-size: 0.875rem;
  color: hsl(var(--theme-text-dim));
}
.product-detail__reviews-list {
  display: flex;
  flex-direction: column;
  gap: 0.75rem;
}
.product-detail__review {
  padding: 1rem;
  border-radius: 0.65rem;
  background: hsl(var(--theme-surface));
  border: 1px solid hsl(var(--theme-border-faint));
}
.product-detail__review-head {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: 0.5rem 0.75rem;
  color: #fff;
  font-size: 0.875rem;
}
.product-detail__review-text {
  margin-top: 0.5rem;
  font-size: 0.8125rem;
  line-height: 1.55;
  color: hsl(var(--theme-muted));
}
.product-detail__review-form-wrap {
  margin-top: 1.25rem;
  padding: 1.25rem;
  border-radius: 0.65rem;
  background: hsl(var(--theme-surface));
  border: 1px solid hsl(var(--theme-border-faint));
}
.product-detail__review-form-title {
  margin-bottom: 0.35rem;
  font-size: 1rem;
  font-weight: 600;
  color: #fff;
}
.product-detail__review-form-hint {
  margin-bottom: 1rem;
  font-size: 0.8125rem;
  color: hsl(var(--theme-text-dim));
}
.product-detail__review-form {
  display: flex;
  flex-direction: column;
  gap: 1rem;
  max-width: 36rem;
}
.product-detail__review-field {
  display: flex;
  flex-direction: column;
  gap: 0.4rem;
  font-size: 0.8125rem;
  color: hsl(var(--theme-muted));
}
.product-detail__review-textarea {
  min-height: 6.5rem;
  resize: vertical;
}
.product-detail__review-submit {
  align-self: flex-start;
  min-width: 8rem;
}
.product-detail__review-message {
  padding: 0.65rem 0.85rem;
  border-radius: 0.5rem;
  font-size: 0.8125rem;
}
.product-detail__review-message.is-error {
  background: hsl(0 70% 45% / 0.15);
  color: #fca5a5;
}
.product-detail__review-message.is-success {
  background: hsl(142 55% 35% / 0.15);
  color: #86efac;
}
.product-detail__review-cta {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: 0.75rem 1rem;
}
.product-detail__review-cta p {
  margin: 0;
  font-size: 0.875rem;
  color: hsl(var(--theme-muted));
}
.product-detail__review-note {
  margin: 0;
  font-size: 0.875rem;
  color: hsl(var(--theme-text-dim));
}
.product-detail__review-note--success {
  color: hsl(var(--theme-accent-soft));
}

.product-detail__related {
  margin-top: 2.5rem;
}
.product-detail__related-title {
  margin-bottom: 1rem;
  font-size: 1.25rem;
  font-weight: 700;
  color: #fff;
}
.product-detail__related-grid {
  display: grid;
  grid-template-columns: repeat(2, 1fr);
  gap: 1rem;
}
@media (min-width: 640px) {
  .product-detail__related-grid { grid-template-columns: repeat(4, 1fr); }
}

/* Kategori / mağaza katalog filtreleri */
.catalog-layout {
  display: grid;
  gap: 1.5rem;
  align-items: start;
}

@media (min-width: 1024px) {
  .catalog-layout {
    grid-template-columns: 260px minmax(0, 1fr);
    gap: 2rem;
  }
}

.catalog-filters__mobile-bar {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 0.75rem;
  margin-bottom: 0.75rem;
}

.catalog-filters__toggle {
  display: inline-flex;
  align-items: center;
  gap: 0.5rem;
  padding: 0.55rem 1rem;
  border: 1px solid hsl(var(--theme-border-mid));
  border-radius: 0.5rem;
  background: hsl(var(--theme-surface));
  color: #fff;
  font-size: 0.875rem;
  font-weight: 600;
  cursor: pointer;
}

.catalog-filters__badge {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-width: 1.25rem;
  height: 1.25rem;
  padding: 0 0.35rem;
  border-radius: 9999px;
  background: hsl(var(--theme-yellow));
  color: hsl(var(--theme-accent-text));
  font-size: 0.7rem;
  font-weight: 800;
}

.catalog-filters__clear {
  font-size: 0.8rem;
  font-weight: 600;
  color: hsl(var(--theme-yellow-hover));
  text-decoration: none;
}

.catalog-filters__clear:hover {
  text-decoration: underline;
}

.catalog-filters__panel {
  display: none;
  flex-direction: column;
  gap: 1.1rem;
  padding: 1.1rem;
  border-radius: 0.75rem;
  background: hsl(var(--theme-surface-mid));
  border: 1px solid hsl(var(--theme-border-faint));
}

.catalog-filters__panel.is-open {
  display: flex;
}

@media (min-width: 1024px) {
  .catalog-filters__mobile-bar {
    display: none;
  }

  .catalog-filters__panel {
    display: flex;
    position: sticky;
    top: 1rem;
  }
}

.catalog-filters__head {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 0.75rem;
}

.catalog-filters__title {
  font-size: 1rem;
  font-weight: 700;
  color: #fff;
}

.catalog-filters__group {
  display: flex;
  flex-direction: column;
  gap: 0.45rem;
}

.catalog-filters__label {
  font-size: 0.8rem;
  font-weight: 700;
  color: hsl(var(--theme-text-brighter));
}

.catalog-filters__hint {
  font-size: 0.72rem;
  color: hsl(var(--theme-text-dim));
}

.catalog-filters__input,
.catalog-filters__select {
  width: 100%;
  padding: 0.55rem 0.75rem;
  border-radius: 0.45rem;
  border: 1px solid hsl(var(--theme-border-strong));
  background: hsl(var(--theme-bg-2));
  color: #fff;
  font-size: 0.875rem;
}

.catalog-filters__input::placeholder {
  color: hsl(var(--theme-text-faint));
}

.catalog-filters__input:focus,
.catalog-filters__select:focus {
  outline: 2px solid hsl(var(--theme-yellow));
  outline-offset: 1px;
}

.catalog-filters__price-row {
  display: grid;
  grid-template-columns: 1fr auto 1fr;
  align-items: center;
  gap: 0.45rem;
}

.catalog-filters__price-sep {
  color: hsl(var(--theme-text-dim));
  font-size: 0.8rem;
}

.catalog-filters__checks {
  margin: 0;
  padding: 0;
  border: none;
}

.catalog-filters__check {
  display: flex;
  align-items: flex-start;
  gap: 0.55rem;
  margin-top: 0.45rem;
  font-size: 0.85rem;
  color: hsl(var(--theme-text-brighter));
  cursor: pointer;
}

.catalog-filters__check input {
  margin-top: 0.15rem;
  accent-color: hsl(var(--theme-yellow));
}

.catalog-filters__submit {
  width: 100%;
  padding: 0.65rem 1rem;
  border: none;
  border-radius: 0.5rem;
  background: hsl(var(--theme-yellow));
  color: hsl(var(--theme-accent-text));
  font-size: 0.875rem;
  font-weight: 700;
  cursor: pointer;
}

.catalog-filters__submit:hover {
  filter: brightness(1.05);
}

.catalog-main {
  min-width: 0;
}

.catalog-toolbar {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  justify-content: space-between;
  gap: 0.75rem 1rem;
  margin-bottom: 1rem;
  padding-bottom: 1rem;
  border-bottom: 1px solid hsl(var(--theme-border-muted));
}

.catalog-toolbar__count {
  font-size: 0.875rem;
  color: hsl(var(--theme-muted));
}

.catalog-toolbar__count strong {
  color: #fff;
  font-weight: 700;
}

.catalog-toolbar__filtered {
  color: hsl(var(--theme-accent-soft));
}

.catalog-toolbar__sort-form {
  display: flex;
  align-items: center;
  gap: 0.5rem;
}

.catalog-toolbar__sort-label {
  font-size: 0.8rem;
  color: hsl(var(--theme-text-soft));
  white-space: nowrap;
}

.catalog-toolbar__select {
  width: auto;
  min-width: 11rem;
}

.sepet-discount-btn {
  flex-shrink: 0;
}

@media (max-width: 1023px) {
  .catalog-toolbar__sort-form {
    display: flex;
    flex: 1;
    min-width: 0;
    justify-content: flex-end;
  }

  .catalog-toolbar__sort-label {
    display: none;
  }

  .catalog-toolbar__select {
    min-width: 0;
    width: 100%;
    max-width: 11rem;
  }
}

.catalog-chips {
  display: flex;
  flex-wrap: wrap;
  gap: 0.45rem;
  margin-bottom: 1rem;
}

.catalog-chip {
  display: inline-flex;
  align-items: center;
  gap: 0.35rem;
  padding: 0.35rem 0.7rem;
  border-radius: 9999px;
  background: hsl(var(--theme-card));
  border: 1px solid hsl(var(--theme-border-strong));
  color: hsl(var(--theme-text-pale2));
  font-size: 0.75rem;
  font-weight: 600;
  text-decoration: none;
}

.catalog-chip:hover {
  background: hsl(var(--theme-purple));
  color: #fff;
}

.catalog-grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 1rem;
}

@media (min-width: 640px) {
  .catalog-grid { grid-template-columns: repeat(3, minmax(0, 1fr)); }
}

@media (min-width: 1024px) {
  .catalog-grid { grid-template-columns: repeat(4, minmax(0, 1fr)); }
}

@media (min-width: 1280px) {
  .catalog-grid { grid-template-columns: repeat(5, minmax(0, 1fr)); }
}

.catalog-empty {
  padding: 3rem 1.5rem;
  text-align: center;
  border-radius: 0.75rem;
  background: hsl(var(--theme-surface-mid));
  border: 1px dashed hsl(var(--theme-border-mid));
}

.catalog-empty__title {
  font-size: 1.05rem;
  font-weight: 700;
  color: #fff;
}

.catalog-empty__text {
  margin-top: 0.5rem;
  font-size: 0.875rem;
  color: hsl(var(--theme-text-soft));
}

.catalog-empty .admin-btn {
  margin-top: 1.25rem;
}

/* ===== Şans çarkı ===== */
.wheel-page__head {
  text-align: center;
  margin-bottom: 2rem;
}
.wheel-page__title {
  font-size: clamp(1.75rem, 4vw, 2.25rem);
  font-weight: 800;
  color: #fff;
}
.wheel-page__desc {
  margin-top: 0.65rem;
  max-width: 36rem;
  margin-inline: auto;
  font-size: 0.95rem;
  line-height: 1.6;
  color: hsl(var(--theme-muted));
}

.wheel-stage {
  position: relative;
  width: min(100%, 30rem);
  margin: 0 auto;
  aspect-ratio: 1;
  container-type: inline-size;
  --wheel-hub-size: min(10.5rem, 32cqw);
}

.wheel-stage__pointer {
  position: absolute;
  top: -0.35rem;
  left: 50%;
  z-index: 5;
  width: 0;
  height: 0;
  border-left: 16px solid transparent;
  border-right: 16px solid transparent;
  border-top: 30px solid hsl(var(--theme-yellow));
  transform: translateX(-50%);
  filter: drop-shadow(0 3px 6px rgba(0, 0, 0, 0.35));
}

.wheel-stage__wheel {
  position: absolute;
  inset: 0;
  container-type: inline-size;
  --wheel-count: 8;
  --wheel-hub-half: calc(var(--wheel-hub-size) / 2);
  --wheel-outer-r: calc(50cqw - 0.55rem);
  --wheel-label-radius: calc(var(--wheel-hub-half) + (var(--wheel-outer-r) - var(--wheel-hub-half)) * 0.56);
  border-radius: 50%;
  border: 7px solid hsl(var(--theme-yellow));
  box-shadow: 0 16px 40px hsl(var(--theme-shadow) / 0.55), inset 0 0 0 4px hsl(var(--theme-surface-deep));
  transform: rotate(0deg);
  overflow: hidden;
}

.wheel-stage__labels {
  position: absolute;
  inset: 0;
  pointer-events: none;
}

.wheel-stage__label {
  position: absolute;
  inset: 0;
  pointer-events: none;
}

.wheel-stage__label-text {
  position: absolute;
  top: 50%;
  left: 50%;
  width: calc(6.2831853 * var(--wheel-label-radius) / var(--wheel-count, 8) * 0.84);
  max-width: calc((var(--wheel-outer-r) - var(--wheel-hub-half)) * 1.35);
  padding: 0 0.1rem;
  transform:
    translate(-50%, -50%)
    rotate(var(--wheel-angle))
    translate(0, calc(-1 * var(--wheel-label-radius)))
    rotate(var(--wheel-text-rotate, 90deg));
  transform-origin: center center;
  font-size: clamp(0.72rem, calc(24cqw / var(--wheel-count, 8)), 0.98rem);
  font-weight: 800;
  line-height: 1.15;
  letter-spacing: 0.01em;
  text-align: center;
  color: #fff;
  text-shadow: 0 1px 2px rgba(0, 0, 0, 0.65), 0 0 8px rgba(0, 0, 0, 0.25);
  word-break: keep-all;
  overflow-wrap: normal;
  hyphens: manual;
}

.wheel-stage__btn {
  position: absolute;
  top: 50%;
  left: 50%;
  z-index: 6;
  width: var(--wheel-hub-size);
  height: var(--wheel-hub-size);
  border: 5px solid hsl(var(--theme-ring));
  border-radius: 50%;
  background: linear-gradient(180deg, hsl(var(--theme-yellow-hover)), hsl(42 100% 46%));
  color: hsl(var(--theme-accent-text));
  font-size: clamp(1rem, calc(var(--wheel-hub-size) * 0.155), 1.25rem);
  font-weight: 800;
  cursor: pointer;
  transform: translate(-50%, -50%);
  box-shadow: 0 6px 20px rgba(0, 0, 0, 0.35);
  transition: transform 0.15s ease, filter 0.15s ease;
}

.wheel-stage__btn:hover:not(:disabled) {
  transform: translate(-50%, -50%) scale(1.04);
  filter: brightness(1.05);
}

.wheel-stage__btn:disabled {
  opacity: 0.55;
  cursor: not-allowed;
}

.wheel-stage__empty {
  display: flex;
  align-items: center;
  justify-content: center;
  height: 100%;
  padding: 1rem;
  text-align: center;
  color: hsl(var(--theme-text-lighter));
  font-size: 0.9rem;
}

.wheel-meta {
  margin-top: 1.5rem;
  text-align: center;
}

.wheel-meta__spins {
  font-size: 0.9rem;
  color: hsl(var(--theme-muted));
}

.wheel-meta__spins strong {
  color: hsl(var(--theme-yellow));
  font-size: 1.1rem;
}

.wheel-meta__link {
  display: inline-block;
  margin-top: 0.5rem;
  font-size: 0.875rem;
  color: hsl(var(--theme-yellow-hover));
  text-decoration: none;
}

.wheel-meta__link:hover {
  text-decoration: underline;
}

.wheel-meta__login {
  font-size: 0.9rem;
  color: hsl(var(--theme-muted));
}

.wheel-result {
  margin-top: 1.5rem;
}

.wheel-result__card {
  padding: 1.25rem;
  border-radius: 0.85rem;
  text-align: center;
  background: hsl(var(--theme-surface-hover));
  border: 1px solid hsl(var(--theme-success-surface2));
}

.wheel-result__title {
  font-size: 1.05rem;
  font-weight: 700;
  color: #fff;
}

.wheel-result__code-label {
  margin-top: 0.85rem;
  font-size: 0.72rem;
  text-transform: uppercase;
  letter-spacing: 0.06em;
  color: hsl(var(--theme-text-soft));
}

.wheel-result__code {
  display: block;
  margin-top: 0.35rem;
  font-size: 1.25rem;
  font-weight: 800;
  color: hsl(var(--theme-yellow));
}

.wheel-result__hint,
.wheel-result__exp {
  margin-top: 0.65rem;
  font-size: 0.8rem;
  color: hsl(var(--theme-text));
}

.wheel-result__hint a {
  color: hsl(var(--theme-yellow-hover));
}

/* Şans çarkı modal */
.wheel-modal__panel {
  position: relative;
  width: 100%;
  max-width: 34rem;
  max-height: min(92vh, 52rem);
  overflow-x: hidden;
  overflow-y: auto;
  padding: 1.15rem 0.85rem 1.35rem;
  border-radius: 0.875rem;
  background: hsl(var(--theme-bg-2));
  border: 1px solid hsl(var(--theme-border-dim));
  box-shadow: 0 24px 48px rgba(0, 0, 0, 0.55);
  -webkit-overflow-scrolling: touch;
}

.wheel-modal__close {
  position: absolute;
  top: 0.85rem;
  right: 0.85rem;
  z-index: 2;
  border: none;
  background: transparent;
  color: hsl(var(--theme-text-dim));
  font-size: 1.15rem;
  line-height: 1;
  cursor: pointer;
  padding: 0.2rem 0.35rem;
}

.wheel-modal__close:hover {
  color: #fff;
}

.wheel-modal__head {
  text-align: center;
  padding-right: 1.75rem;
  margin-bottom: 1rem;
}

.wheel-modal__title {
  font-size: 1.25rem;
  font-weight: 800;
  color: #fff;
  line-height: 1.25;
}

.wheel-modal__desc {
  margin-top: 0.45rem;
  font-size: 0.8125rem;
  line-height: 1.55;
  color: hsl(var(--theme-muted));
}

.wheel-modal__stage {
  width: min(100%, 30rem);
  margin-inline: auto;
}

.wheel-modal__meta {
  margin-top: 1rem;
  text-align: center;
}

.wheel-modal__meta .wheel-meta__link {
  display: inline-block;
  margin-top: 0.35rem;
}

/* Sepet kuponları */
.sepet-coupons__list {
  display: flex;
  flex-direction: column;
  gap: 0.5rem;
}

.sepet-coupon-card {
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  gap: 0.2rem;
  width: 100%;
  padding: 0.65rem 0.75rem;
  border: 1px solid hsl(var(--theme-border-mid));
  border-radius: 0.55rem;
  background: hsl(var(--theme-bg-2));
  color: #fff;
  text-align: left;
  cursor: pointer;
  transition: border-color 0.15s, background 0.15s;
}

.sepet-coupon-card:hover {
  border-color: hsl(var(--theme-yellow));
  background: hsl(var(--theme-surface-deep));
}

.sepet-coupon-card__label {
  font-size: 0.8rem;
  font-weight: 700;
}

.sepet-coupon-card__code {
  font-size: 0.85rem;
  color: hsl(var(--theme-yellow-hover));
}

.sepet-coupon-card__meta {
  font-size: 0.68rem;
  color: hsl(var(--theme-text-soft));
}

/* Profil kuponları */
.profile-coupon-list {
  display: flex;
  flex-direction: column;
  gap: 0.75rem;
}

.profile-coupon-card {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  justify-content: space-between;
  gap: 0.75rem;
  padding: 1rem 1.1rem;
  border-radius: 0.75rem;
  background: hsl(var(--theme-surface));
  border: 1px solid hsl(var(--theme-border-mid));
}

.profile-coupon-card--product {
  border-left: 3px solid hsl(var(--theme-purple));
}

.profile-coupon-card__title {
  font-size: 0.95rem;
  font-weight: 700;
  color: #fff;
}

.profile-coupon-card__code {
  display: inline-block;
  margin-top: 0.35rem;
  font-size: 0.9rem;
  color: hsl(var(--theme-yellow-hover));
}

.profile-coupon-card__meta {
  margin-top: 0.25rem;
  font-size: 0.75rem;
  color: hsl(var(--theme-text-soft));
}

.profile-coupon-card__btn {
  flex-shrink: 0;
}

/* ===== Mobil uyumluluk (site geneli) ===== */

.header-icon-btn {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-width: 2.75rem;
  min-height: 2.75rem;
  padding: 0.5rem;
  border-radius: 0.375rem;
}

.site-header {
  overflow: visible;
  position: relative;
  z-index: 60;
}

.site-header-inner {
  min-width: 0;
  overflow: visible;
}

.site-header-logo {
  min-width: 0;
  flex-shrink: 1;
  max-width: calc(100% - 11rem);
}

@media (min-width: 640px) {
  .site-header-logo { max-width: none; }
}

.sepet-cart-row {
  display: flex;
  flex-wrap: wrap;
  gap: 1rem;
  align-items: flex-start;
}

.sepet-cart-row__main {
  display: flex;
  gap: 1rem;
  flex: 1;
  min-width: 0;
}

.sepet-cart-row__remove {
  margin-left: auto;
}

.sepet-discount-row {
  display: flex;
  flex-wrap: wrap;
  gap: 0.5rem;
}

.sepet-discount-row .admin-input {
  flex: 1;
  min-width: 0;
}

.sepet-discount-row .sepet-discount-btn {
  width: 100%;
}

@media (min-width: 480px) {
  .sepet-discount-row .sepet-discount-btn {
    width: auto;
  }
}

.footer-newsletter {
  display: flex;
  flex-direction: column;
  gap: 0.5rem;
  width: 100%;
  min-width: 0;
}

.footer-newsletter__label {
  font-size: 0.8125rem;
  font-weight: 600;
  color: #fff;
}

.footer-newsletter__fields {
  display: flex;
  flex-direction: column;
  gap: 0.5rem;
  width: 100%;
}

.footer-newsletter__input {
  width: 100%;
  min-width: 0;
  flex: 1 1 auto;
}

.footer-newsletter__btn {
  width: 100%;
  white-space: nowrap;
  flex-shrink: 0;
}

@media (min-width: 480px) {
  .footer-newsletter__fields {
    flex-direction: row;
    align-items: stretch;
  }

  .footer-newsletter__btn {
    width: auto;
    min-width: 6.5rem;
  }
}

.footer-extra {
  display: flex;
  flex-direction: column;
  gap: 1.25rem;
  margin-top: 2rem;
  padding-top: 2rem;
  border-top: 1px solid rgba(255, 255, 255, 0.1);
}

@media (min-width: 768px) {
  .footer-extra {
    flex-direction: row;
    align-items: flex-end;
    justify-content: space-between;
    gap: 2rem;
  }

  .footer-newsletter {
    flex: 1 1 auto;
    max-width: 28rem;
  }

  .footer-social {
    flex-shrink: 0;
  }
}

.footer-social {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  justify-content: center;
  gap: 0.625rem;
}

.footer-social__link {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 2.375rem;
  height: 2.375rem;
  border-radius: 9999px;
  background: hsl(var(--theme-surface));
  border: 1px solid hsl(var(--theme-border-mid));
  color: rgba(255, 255, 255, 0.82);
  text-decoration: none;
  transition: background 0.15s ease, color 0.15s ease, border-color 0.15s ease, transform 0.15s ease;
}

.footer-social__link:hover {
  color: #fff;
  background: hsl(var(--theme-purple));
  border-color: hsl(var(--theme-yellow) / 0.35);
  transform: translateY(-1px);
}

.footer-social__icon {
  width: 1.125rem;
  height: 1.125rem;
  display: block;
}

@media (min-width: 768px) {
  .footer-social {
    justify-content: flex-end;
  }
}

/* Footer — mobil düzen */
.trust-strip {
  margin-bottom: 2rem;
  padding-bottom: 2rem;
  border-bottom: 1px solid rgba(255, 255, 255, 0.1);
}

.trust-strip__grid {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 0.625rem;
  align-items: start;
}

.trust-strip__item {
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 0.5rem;
  width: auto;
  text-align: center;
}

.trust-strip__icon {
  flex-shrink: 0;
  display: flex;
  align-items: center;
  justify-content: center;
  width: 1.875rem;
  height: 1.875rem;
  border-radius: 9999px;
  background: hsl(var(--theme-purple));
  color: hsl(var(--theme-yellow));
  font-size: 0.75rem;
  font-weight: 700;
  line-height: 1;
}

.trust-strip__text {
  min-width: 0;
  text-align: center;
}

.trust-strip__title {
  display: block;
  font-size: 0.75rem;
  font-weight: 600;
  color: #fff;
  line-height: 1.25;
}

.trust-strip__subtitle {
  display: block;
  margin-top: 0.125rem;
  font-size: 0.625rem;
  color: rgba(255, 255, 255, 0.5);
  line-height: 1.35;
}

@media (min-width: 640px) {
  .trust-strip__grid {
    display: flex;
    flex-direction: row;
    flex-wrap: wrap;
    justify-content: center;
    gap: 1rem 1.5rem;
  }

  .trust-strip__item {
    flex: 1 1 14rem;
    flex-direction: row;
    align-items: flex-start;
    max-width: 18rem;
    text-align: left;
    gap: 0.625rem;
  }

  .trust-strip__icon {
    width: 1.75rem;
    height: 1.75rem;
    font-size: 0.75rem;
  }

  .trust-strip__text {
    text-align: left;
  }

  .trust-strip__title {
    font-size: 0.875rem;
    line-height: 1.3;
  }

  .trust-strip__subtitle {
    font-size: 0.75rem;
    line-height: 1.35;
  }
}

@media (min-width: 1024px) {
  .trust-strip {
    margin-bottom: 2.5rem;
    padding-bottom: 2.5rem;
  }

  .trust-strip__grid {
    flex-wrap: nowrap;
    justify-content: space-between;
    gap: 1.5rem;
  }

  .trust-strip__item {
    flex: 1 1 0;
    max-width: none;
  }
}

.footer-links {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 1.5rem 1rem;
  align-items: start;
}

.footer-links__heading {
  margin-bottom: 0.75rem;
  font-size: 0.8125rem;
  font-weight: 700;
  color: #fff;
}

.footer-links__list {
  display: flex;
  flex-direction: column;
  gap: 0.5rem;
  font-size: 0.8125rem;
}

.footer-links__link {
  color: rgba(255, 255, 255, 0.6);
  text-decoration: none;
  transition: color 0.15s ease;
}

.footer-links__link:hover {
  color: #fff;
}

@media (min-width: 640px) {
  .footer-links {
    gap: 2rem 1.5rem;
  }

  .footer-links__heading {
    margin-bottom: 1rem;
    font-size: 0.875rem;
  }

  .footer-links__list {
    gap: 0.625rem;
    font-size: 0.875rem;
  }
}

@media (min-width: 768px) {
  .footer-links {
    grid-template-columns: repeat(4, minmax(0, 1fr));
    gap: 2.5rem;
  }
}

.footer-payments {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  justify-content: center;
  gap: 1rem 1.25rem;
  margin-top: 2rem;
  padding-top: 2rem;
  border-top: 1px solid rgba(255, 255, 255, 0.1);
}

@media (min-width: 640px) {
  .footer-payments {
    justify-content: flex-start;
  }
}

.footer-payment-icon {
  height: 1.5rem;
  width: auto;
  max-width: 4.5rem;
  object-fit: contain;
  opacity: 0.85;
}

.footer-bottom {
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 1rem;
  margin-top: 1.5rem;
  padding-top: 1.5rem;
  border-top: 1px solid rgba(255, 255, 255, 0.1);
  text-align: center;
}

.footer-bottom__copy {
  font-size: 0.875rem;
  color: rgba(255, 255, 255, 0.5);
}

@media (min-width: 640px) {
  .footer-bottom {
    text-align: left;
    align-items: flex-start;
  }
}

@media (max-width: 639px) {
  .profile-stat-grid {
    grid-template-columns: 1fr;
  }

  .profile-order-card__toggle {
    flex-wrap: wrap;
    align-items: flex-start;
  }

  .profile-order-card__right {
    width: 100%;
    justify-content: space-between;
    margin-top: 0.35rem;
    padding-top: 0.35rem;
    border-top: 1px solid hsl(var(--theme-border-faint));
  }

  .product-detail__cart-form {
    flex-wrap: wrap;
  }

  .product-detail__qty-wrap {
    width: 100%;
  }

  .product-detail__btn {
    flex: 1;
    min-width: calc(50% - 0.25rem);
  }

  .cekilis-countdown {
    gap: 0.35rem;
  }

  .cekilis-countdown__item {
    padding: 0.5rem 0.25rem;
  }

  .wheel-stage,
  .wheel-modal__stage {
    width: min(100%, 26rem);
    --wheel-hub-size: min(8.75rem, 34cqw);
  }

  .wheel-stage__label-text {
    font-size: clamp(0.68rem, calc(22cqw / var(--wheel-count, 8)), 0.88rem);
    width: calc(6.2831853 * var(--wheel-label-radius) / var(--wheel-count, 8) * 0.8);
    max-width: calc((var(--wheel-outer-r) - var(--wheel-hub-half)) * 1.25);
  }

  .review-modal__sync {
    white-space: normal;
  }

  .checkout-form__grid {
    grid-template-columns: 1fr !important;
  }
}

@media (max-width: 374px) {
  .site-logo-text {
    max-width: 5.5rem;
  }
}

.mega-nav__links {
  scrollbar-width: thin;
  scrollbar-color: hsl(var(--theme-border)) transparent;
}

.mega-nav__links::-webkit-scrollbar {
  height: 3px;
}

.mega-nav__links::-webkit-scrollbar-thumb {
  background: hsl(var(--theme-border));
  border-radius: 9999px;
}

@media (max-width: 1023px) {
  .admin-input,
  .admin-input[type="search"],
  .admin-input[type="email"],
  .admin-input[type="password"],
  .admin-input[type="tel"],
  .admin-input[type="number"],
  input[type="search"],
  input[type="email"],
  input[type="password"],
  input[type="tel"],
  input[type="number"],
  select.admin-input,
  textarea.admin-input {
    font-size: 16px;
  }

  .admin-btn {
    min-height: 2.75rem;
  }

  .site-header-inner,
  main > .mx-auto,
  footer .mx-auto {
    padding-left: max(1rem, env(safe-area-inset-left));
    padding-right: max(1rem, env(safe-area-inset-right));
  }
}
