/* --- layout block --- */

    /* :root tokens removed — see theme.css */};
      --primary-hover:  ;
      --accent:         ;
      --accent-gold:    #f5c842;
      --danger:         #ff4d6d;
      --success:        #3ecf8e;
      --secondary:      #1a1f2e;

      --bg-main:        ;
      --bg-surface:     ;
      --bg-card:        ;
      --bg-card-hover:  #1c2130;
      --bg-nav:         rgba(11,13,18,0.94);
      --bg-announcement:;

      --text-main:      ;
      --text-muted:     ;
      --text-faint:     #4a5568;
      --text-accent:    ;
      --text-nav:       #c8d0dd;

      --border-color:   rgba(255,255,255,0.07);
      --border-accent:  rgba(124,92,255,0.35);
      --border-card:    rgba(255,255,255,0.05);

      --radius-xs:  4px;
      --radius-sm:  8px;
      --radius-md:  12px;
      --radius-lg:  18px;
      --radius-xl:  24px;
      --radius-pill:999px;

      --shadow-soft:   0 8px 24px rgba(0,0,0,0.30);
      --shadow-card:   0 4px 20px rgba(0,0,0,0.40);
      --shadow-lifted: 0 16px 48px rgba(0,0,0,0.55);
      --glow-primary:  0 0 24px rgba(124,92,255,0.30);
      --glow-accent:   0 0 16px rgba(183,156,255,0.20);

      /* Fonts — schema'dan seçilebilir */
      --font-body:   '', -apple-system, BlinkMacSystemFont, sans-serif;
      --font-heading:'', -apple-system, BlinkMacSystemFont, sans-serif;
      --font-display:'', -apple-system, BlinkMacSystemFont, sans-serif;
      --font-hero:   '', -apple-system, BlinkMacSystemFont, sans-serif;
      --font-price:  '', -apple-system, BlinkMacSystemFont, sans-serif;
      --font-mono:   'JetBrains Mono', 'Consolas', monospace;
      --font:        var(--font-body);

      --text-xs:   0.75rem;
      --text-sm:   0.875rem;
      --text-base: 1rem;
      --text-md:   1.125rem;
      --text-lg:   1.25rem;
      --text-xl:   1.5rem;
      --text-2xl:  2rem;
      --text-3xl:  2.75rem;
      --text-hero: clamp(3rem, 7vw, 5.5rem);

      --space-xs:  0.5rem;
      --space-sm:  0.75rem;
      --space-md:  1rem;
      --space-lg:  1.5rem;
      --space-xl:  2rem;
      --space-2xl: 3rem;
      --space-3xl: 5rem;

      --max-width:     1280px;
      --nav-height:    68px;
      --section-gap:   5rem;

      --transition-fast: 0.15s ease;
      --transition-base: 0.25s ease;

      --hero-min-height: 620px;
      --card-width-min:  240px;
      --card-img-height: 140px;

      /* ---- Card özelleştirme — Schema'dan ---- */
      --card-accent-color: ;
      --card-radius: 8px24px16px;
      --card-cols: repeat(auto-fill,minmax(320px,1fr))repeat(auto-fill,minmax(200px,1fr))repeat(auto-fill,minmax(240px,1fr));
    }
  

/* --- layout block --- */

    /* ---- RESET ---- */
    *, *::before, *::after { box-sizing: border-box; margin: 0; padding: 0; }
    html { scroll-behavior: smooth; font-size: 16px; }
    body { font-family: var(--font-body); background: var(--bg-main); color: var(--text-main); line-height: 1.6; min-height: 100vh; overflow-x: hidden; -webkit-font-smoothing: antialiased; }
    img  { display: block; max-width: 100%; }
    a    { color: inherit; text-decoration: none; }
    ul   { list-style: none; }
    button { font-family: var(--font-body); }
    ::-webkit-scrollbar { width: 5px; }
    ::-webkit-scrollbar-track { background: var(--bg-main); }
    ::-webkit-scrollbar-thumb { background: var(--primary); border-radius: var(--radius-pill); }

    /* ---- LAYOUT ---- */
    .container  { width: 100%; max-width: var(--max-width); margin: 0 auto; padding: 0 var(--space-xl); }
    .section    { padding: var(--section-gap) 0; }
    .section-header { margin-bottom: var(--space-2xl); }
    .section-header h2 { font-family: var(--font-heading); font-size: var(--text-2xl); font-weight: 800; letter-spacing: -0.02em; color: var(--text-main); }
    .section-header p  { margin-top: var(--space-xs); font-size: var(--text-md); color: var(--text-muted); }
    .section-header--centered { text-align: center; }
    .section-header h2::after { content: ''; display: block; width: 40px; height: 3px; margin-top: 10px; background: linear-gradient(90deg, var(--primary), var(--accent)); border-radius: var(--radius-pill); }
    .section-header--centered h2::after { margin: 10px auto 0; }
    .section-header__h1 { font-family: var(--font-heading); font-size: var(--text-2xl); font-weight: 800; letter-spacing: -0.02em; color: var(--text-main); }
    .section-header__h1::after { content: ''; display: block; width: 40px; height: 3px; margin-top: 10px; background: linear-gradient(90deg, var(--primary), var(--accent)); border-radius: var(--radius-pill); }

    /* ---- ANNOUNCEMENT BAR ---- */
    .announcement-bar { background: var(--bg-announcement); border-bottom: 1px solid var(--border-accent); padding: 8px 0; text-align: center; font-size: var(--text-sm); font-weight: 500; color: var(--accent); letter-spacing: 0.02em; position: relative; z-index: 100; overflow: hidden; }
    .announcement-bar__inner { display: flex; align-items: center; justify-content: center; gap: var(--space-sm); position: relative; z-index: 2; }

    /* ===== NEON ANNOUNCEMENT ANIMATION ===== */
    .announcement-bar--neon {
      background: linear-gradient(90deg,
        var(--bg-announcement) 0%,
        var(--bg-announcement) 100%);
      border-top: 1px solid transparent;
      border-bottom: 1px solid var(--accent);
      box-shadow:
        inset 0 0 24px rgba(124, 92, 255, 0.20),
        0 0 16px rgba(124, 92, 255, 0.35);
      animation: announcement-pulse 2.6s ease-in-out infinite;
    }
    .announcement-bar--neon .announcement-bar__text {
      color: #fff;
      text-shadow:
        0 0 6px var(--accent),
        0 0 14px var(--accent),
        0 0 22px rgba(124, 92, 255, 0.65);
      animation: announcement-text-glow 2.6s ease-in-out infinite;
    }
    /* Sweeping light bar across the announcement */
    .announcement-bar--neon::before {
      content: '';
      position: absolute;
      top: 0;
      left: -30%;
      width: 30%;
      height: 100%;
      background: linear-gradient(90deg,
        transparent 0%,
        rgba(255, 255, 255, 0.18) 40%,
        rgba(255, 255, 255, 0.30) 50%,
        rgba(255, 255, 255, 0.18) 60%,
        transparent 100%);
      transform: skewX(-20deg);
      animation: announcement-sweep 4s linear infinite;
      pointer-events: none;
      z-index: 1;
    }
    @keyframes announcement-pulse {
      0%, 100% {
        box-shadow:
          inset 0 0 24px rgba(124, 92, 255, 0.20),
          0 0 16px rgba(124, 92, 255, 0.35);
      }
      50% {
        box-shadow:
          inset 0 0 32px rgba(124, 92, 255, 0.35),
          0 0 28px rgba(124, 92, 255, 0.65);
      }
    }
    @keyframes announcement-text-glow {
      0%, 100% {
        text-shadow:
          0 0 6px var(--accent),
          0 0 14px var(--accent),
          0 0 22px rgba(124, 92, 255, 0.65);
      }
      50% {
        text-shadow:
          0 0 10px var(--accent),
          0 0 22px var(--accent),
          0 0 36px rgba(124, 92, 255, 0.95),
          0 0 50px rgba(124, 92, 255, 0.55);
      }
    }
    @keyframes announcement-sweep {
      0%   { left: -30%; }
      100% { left: 130%; }
    }
    /* Reduce motion */
    @media (prefers-reduced-motion: reduce) {
      .announcement-bar--neon,
      .announcement-bar--neon .announcement-bar__text,
      .announcement-bar--neon::before {
        animation: none;
      }
    }

    /* ---- NAVBAR ---- */
    .navbar { position: sticky; top: 0; z-index: 200; height: var(--nav-height); background: var(--bg-nav); backdrop-filter: blur(20px); -webkit-backdrop-filter: blur(20px); border-bottom: 1px solid var(--border-color); }
    .navbar__inner { position: relative; display: flex; align-items: center; justify-content: space-between; height: 100%; max-width: var(--max-width); margin: 0 auto; padding: 0 var(--space-xl); }

    /* Logo */
    .navbar__logo { display: flex; align-items: center; gap: 10px; font-family: var(--font-heading); font-size: var(--text-md); font-weight: 800; color: var(--text-main); letter-spacing: -0.02em; transition: opacity var(--transition-fast); flex-shrink: 0; z-index: 1; }
    .navbar__logo:hover { opacity: 0.85; }
    .navbar__logo-icon { width: 34px; height: 34px; border-radius: var(--radius-sm); object-fit: cover; }
    .navbar__logo-img  { height: 36px; width: auto; max-width: 180px; object-fit: contain; display: block; }

    /* Nav links — centered absolutely */
    .navbar__nav { display: flex; align-items: center; gap: 4px; position: absolute; left: 50%; transform: translateX(-50%); }
    .navbar__link { font-size: var(--text-sm); font-weight: 500; color: var(--text-nav); padding: 6px 12px; border-radius: var(--radius-sm); transition: all var(--transition-fast); white-space: nowrap; }
    .navbar__link:hover  { color: var(--text-main); background: rgba(255,255,255,0.06); }
    .navbar__link.active { color: var(--text-main); background: rgba(124,92,255,0.12); }

    /* Nav divider */
    .navbar__nav-divider { width: 1px; height: 18px; background: var(--border-color); margin: 0 var(--space-xs); flex-shrink: 0; }

    /* Actions */
    .navbar__actions { display: flex; align-items: center; gap: var(--space-sm); flex-shrink: 0; z-index: 1; }

    /* Cart button */
    .navbar__cart { display: flex; align-items: center; gap: 7px; font-size: var(--text-sm); font-weight: 600; color: var(--text-nav); padding: 7px 14px; border: 1px solid var(--border-color); border-radius: var(--radius-pill); transition: all var(--transition-fast); }
    .navbar__cart:hover { color: var(--text-main); border-color: var(--border-accent); background: rgba(124,92,255,0.08); }
    .navbar__cart-count { background: var(--primary); color: #fff; font-size: 0.65rem; font-weight: 700; padding: 1px 6px; border-radius: var(--radius-pill); }

    /* Login button — ayrı, ghost style */
    .navbar__login { display: flex; align-items: center; gap: 6px; font-size: var(--text-sm); font-weight: 600; color: var(--text-muted); padding: 7px 14px; border: 1px solid var(--border-color); border-radius: var(--radius-pill); transition: all var(--transition-fast); background: transparent; cursor: pointer; }
    .navbar__login:hover { color: var(--text-main); border-color: var(--border-color); background: rgba(255,255,255,0.05); }

    /* Hamburger */
    .navbar__hamburger { display: none; flex-direction: column; gap: 5px; cursor: pointer; padding: 6px; background: none; border: none; }
    .navbar__hamburger span { display: block; width: 22px; height: 2px; background: var(--text-nav); border-radius: var(--radius-pill); transition: all var(--transition-base); }

    /* ---- BUTTONS ---- */
    .btn { display: inline-flex; align-items: center; justify-content: center; gap: 7px; font-family: var(--font); font-size: var(--text-sm); font-weight: 600; line-height: 1; padding: 10px 20px; border-radius: var(--radius-md); border: none; cursor: pointer; transition: all var(--transition-base); text-decoration: none; white-space: nowrap; }
    .btn--primary { background: linear-gradient(135deg, var(--primary), var(--primary-hover)); color: #fff; box-shadow: var(--glow-primary); }
    .btn--primary:hover { transform: translateY(-2px); box-shadow: 0 0 28px rgba(124,92,255,0.50); }
    .btn--primary:active { transform: translateY(0); }
    .btn--ghost   { background: transparent; color: var(--text-main); border: 1px solid var(--border-color); }
    .btn--ghost:hover { border-color: var(--border-accent); background: rgba(124,92,255,0.08); color: var(--accent); }
    .btn--discord { background: #5865F2; color: #fff; }
    .btn--discord:hover { background: #4752c4; transform: translateY(-2px); box-shadow: 0 8px 24px rgba(88,101,242,0.35); }
    .btn--sm  { font-size: var(--text-xs); padding: 7px 14px; border-radius: var(--radius-sm); }
    .btn--lg  { font-size: var(--text-base); padding: 13px 28px; border-radius: var(--radius-lg); }
    .btn--full { width: 100%; }

    /* ---- BADGES ---- */
    .badge { display: inline-flex; align-items: center; gap: 4px; font-size: 0.7rem; font-weight: 700; padding: 3px 9px; border-radius: var(--radius-pill); letter-spacing: 0.04em; text-transform: uppercase; }
    .badge--featured { background: rgba(245,200,66,0.15); color: var(--accent-gold); border: 1px solid rgba(245,200,66,0.30); }
    .badge--sale     { background: rgba(255,77,109,0.15);  color: var(--danger);      border: 1px solid rgba(255,77,109,0.30); }
    .badge--new      { background: rgba(62,207,142,0.15);  color: var(--success);     border: 1px solid rgba(62,207,142,0.30); }
    .badge--popular  { background: rgba(124,92,255,0.15);  color: var(--accent);      border: 1px solid var(--border-accent); }

    /* ---- HERO ---- */
    .hero { position: relative; min-height: var(--hero-min-height); display: flex; align-items: center; overflow: hidden; }
    .hero__bg { position: absolute; inset: 0; background-size: cover; background-position: center; filter: brightness(0.30) saturate(1.2); transform: scale(1.05); transition: transform 10s ease-out; }
    .hero:hover .hero__bg { transform: scale(1.0); }
    .hero__overlay { position: absolute; inset: 0; background: linear-gradient(to right, rgba(11,13,18,0.97) 0%, rgba(11,13,18,0.80) 45%, rgba(11,13,18,0.25) 100%), linear-gradient(to top, rgba(11,13,18,0.95) 0%, transparent 40%); }
    .hero__grid { position: absolute; inset: 0; background-image: linear-gradient(rgba(124,92,255,0.04) 1px, transparent 1px), linear-gradient(90deg, rgba(124,92,255,0.04) 1px, transparent 1px); background-size: 60px 60px; mask-image: linear-gradient(to right, transparent 0%, black 30%, black 70%, transparent 100%); pointer-events: none; }
    .hero__glow   { position: absolute; top: -10%; left: -5%; width: 700px; height: 700px; background: radial-gradient(circle, rgba(124,92,255,0.14) 0%, transparent 65%); pointer-events: none; animation: glow-pulse 6s ease-in-out infinite; }
    .hero__glow-2 { position: absolute; bottom: 0; right: 10%; width: 500px; height: 500px; background: radial-gradient(circle, rgba(183,156,255,0.07) 0%, transparent 65%); pointer-events: none; animation: glow-pulse 8s ease-in-out infinite reverse; }
    @keyframes glow-pulse { 0%,100% { opacity:0.6; transform:scale(1); } 50% { opacity:1.0; transform:scale(1.08); } }
    .hero__orb { position: absolute; border-radius: 50%; pointer-events: none; }
    .hero__orb--1 { width:300px; height:300px; right:8%; top:15%; background:radial-gradient(circle at 40% 40%, rgba(124,92,255,0.18) 0%, transparent 70%); border:1px solid rgba(124,92,255,0.10); animation:orb-float 7s ease-in-out infinite; }
    .hero__orb--2 { width:160px; height:160px; right:20%; top:50%; background:radial-gradient(circle at 40% 40%, rgba(183,156,255,0.10) 0%, transparent 70%); border:1px solid rgba(183,156,255,0.07); animation:orb-float 5s ease-in-out infinite reverse; animation-delay:-2s; }
    @keyframes orb-float { 0%,100% { transform:translateY(0) rotate(0deg); } 50% { transform:translateY(-18px) rotate(3deg); } }
    .hero::after { content:''; position:absolute; bottom:0; left:0; right:0; height:1px; background:linear-gradient(90deg, transparent, var(--primary), var(--accent), transparent); opacity:0.4; }
    .hero__layout { display:grid; grid-template-columns:1fr 460px; align-items:center; gap:var(--space-2xl); width:100%; padding:var(--space-3xl) 0; }
    .hero__content { position:relative; z-index:2; }
    .hero__eyebrow { display:inline-flex; align-items:center; gap:7px; font-size:var(--text-xs); font-weight:700; letter-spacing:0.12em; text-transform:uppercase; color:var(--accent); margin-bottom:var(--space-lg); padding:6px 14px; background:rgba(124,92,255,0.10); border:1px solid var(--border-accent); border-radius:var(--radius-pill); }
    .hero__title { font-family:var(--font-hero); font-size:var(--text-hero); font-weight:900; line-height:1.0; letter-spacing:-0.03em; color:var(--text-main); margin-bottom:var(--space-lg); }
    .hero__title--accent { background:linear-gradient(135deg, var(--primary) 0%, var(--accent) 60%); -webkit-background-clip:text; -webkit-text-fill-color:transparent; background-clip:text; display:inline-block; }
    .hero__subtitle { font-size:var(--text-md); font-weight:400; color:var(--text-muted); line-height:1.75; margin-bottom:var(--space-2xl); max-width:520px; }
    .hero__actions { display:flex; flex-wrap:wrap; gap:var(--space-md); align-items:center; }
    .hero__stats { display:flex; gap:var(--space-2xl); margin-top:var(--space-3xl); padding-top:var(--space-xl); border-top:1px solid var(--border-color); flex-wrap:wrap; }
    .hero__stat-value { font-size:var(--text-xl); font-weight:800; color:var(--text-main); letter-spacing:-0.02em; }
    .hero__stat-label { font-size:var(--text-xs); color:var(--text-muted); text-transform:uppercase; letter-spacing:0.08em; margin-top:2px; font-weight:500; }
    .hero__online-dot { display:inline-block; width:8px; height:8px; background:var(--success); border-radius:50%; margin-right:6px; box-shadow:0 0 8px var(--success); animation:pulse-dot 2s infinite; }
    @keyframes pulse-dot { 0%,100% { opacity:1; } 50% { opacity:0.4; } }

    /* HERO VISUAL */
    .hero__visual { position:relative; display:flex; align-items:center; justify-content:center; height:460px; flex-shrink:0; }
    .hero__visual-ring { position:absolute; border-radius:50%; border:1px solid rgba(124,92,255,0.15); pointer-events:none; }
    .hero__visual-ring--outer { width:400px; height:400px; animation:ring-spin 22s linear infinite; border-color:rgba(124,92,255,0.10); background:repeating-conic-gradient(rgba(124,92,255,0.03) 0deg, transparent 2deg, transparent 20deg); }
    .hero__visual-ring--inner { width:300px; height:300px; border-color:rgba(183,156,255,0.12); animation:ring-spin 15s linear infinite reverse; }
    @keyframes ring-spin { from { transform:rotate(0deg); } to { transform:rotate(360deg); } }
    .hero__visual-glow { position:absolute; width:260px; height:260px; border-radius:50%; background:radial-gradient(circle, rgba(124,92,255,0.25) 0%, transparent 70%); pointer-events:none; animation:glow-pulse 4s ease-in-out infinite; }
    .hero__visual-img { position:relative; z-index:2; max-height:380px; max-width:380px; width:auto; height:auto; object-fit:contain; filter:drop-shadow(0 16px 48px rgba(124,92,255,0.40)) drop-shadow(0 4px 16px rgba(0,0,0,0.55)); animation:hero-float 5s ease-in-out infinite; }
    @keyframes hero-float { 0%,100% { transform:translateY(0); } 50% { transform:translateY(-14px); } }
    .hero__visual--placeholder .hero__visual-ph { position:relative; z-index:2; display:flex; flex-direction:column; align-items:center; gap:var(--space-sm); padding:var(--space-2xl); background:rgba(124,92,255,0.05); border:2px dashed rgba(124,92,255,0.20); border-radius:var(--radius-xl); text-align:center; }
    .hero__visual-ph-icon { font-size:3rem; opacity:0.4; }
    .hero__visual-ph-text { font-size:var(--text-sm); font-weight:600; color:var(--text-muted); }
    .hero__visual-ph-hint { font-size:var(--text-xs); color:var(--text-faint); background:rgba(124,92,255,0.08); padding:3px 10px; border-radius:var(--radius-pill); }

    /* ---- CATEGORY GRID ---- */
    .categories { background:var(--bg-surface); border-top:1px solid var(--border-color); border-bottom:1px solid var(--border-color); }
    .category-grid { display:grid; grid-template-columns:repeat(auto-fit, minmax(170px,1fr)); gap:var(--space-md); }
    .category-card { position:relative; display:flex; flex-direction:column; align-items:center; justify-content:center; gap:var(--space-md); padding:var(--space-xl) var(--space-lg); background:var(--bg-card); border:1px solid var(--border-card); border-radius:var(--radius-lg); cursor:pointer; transition:all var(--transition-base); overflow:hidden; text-align:center; text-decoration:none; }
    .category-card::after { content:''; position:absolute; bottom:0; left:0; right:0; height:2px; background:linear-gradient(90deg, var(--primary), var(--accent)); transform:scaleX(0); transform-origin:left; transition:transform var(--transition-base); }
    .category-card:hover { background:var(--bg-card-hover); border-color:var(--border-accent); transform:translateY(-4px); box-shadow:var(--shadow-lifted); }
    .category-card:hover::after { transform:scaleX(1); }
    .category-card__icon-wrap { width: 64px; height: 64px; display: flex; align-items: center; justify-content: center; border-radius: var(--radius-lg); background: rgba(124,92,255,0.08); border: 1px solid rgba(124,92,255,0.15); transition: transform var(--transition-base), box-shadow var(--transition-base); overflow: hidden; }
    .category-card:hover .category-card__icon-wrap { transform: scale(1.10) rotate(-2deg); box-shadow: 0 8px 24px rgba(124,92,255,0.25); }
    .category-card__icon-img { width: 40px; height: 40px; object-fit: contain; }
    .category-card__icon-letter { width: 64px; height: 64px; display: flex; align-items: center; justify-content: center; font-size: 1.6rem; font-weight: 900; color: #fff; border-radius: var(--radius-lg); letter-spacing: -0.02em; }
    .category-card__name  { font-size:var(--text-sm); font-weight:700; color:var(--text-main); }
    .category-card__count { font-size:var(--text-xs); color:var(--text-muted); font-weight:500; }

    /* ---- PRODUCT CARDS ---- */
    .featured { background:var(--bg-main); }
    .product-grid { display:grid; grid-template-columns:var(--card-cols); gap:var(--space-lg); }

    .product-card {
      position: relative;
      display: flex;
      flex-direction: column;
      overflow: hidden;
      transition: transform var(--transition-base), border-color var(--transition-base), box-shadow var(--transition-base);
      border-radius: var(--card-radius);
      /* Style: default */
      background: var(--bg-card);
      border: 1px solid var(--border-card);
    }
    /* Style variants */
    .product-card--bordered  { border: 1px solid var(--border-color); background: var(--bg-card); }
    .product-card--minimal   { background: transparent; border: none; border-bottom: 1px solid var(--border-color); border-radius: 0; }
    .product-card--glass     { background: rgba(255,255,255,0.04); border: 1px solid rgba(255,255,255,0.10); backdrop-filter: blur(12px); -webkit-backdrop-filter: blur(12px); }

    /* Hover variants */
    .product-card--hover-lift:hover   { transform: translateY(-6px); box-shadow: var(--shadow-lifted), 0 0 20px rgba(124,92,255,0.20); border-color: var(--border-accent); }
    .product-card--hover-glow:hover   { box-shadow: 0 0 0 2px var(--card-accent-color), 0 0 32px rgba(124,92,255,0.30); border-color: var(--card-accent-color); }
    .product-card--hover-border:hover { border-color: var(--card-accent-color); border-width: 1px; }

    /* Accent bar */
    .product-card__accent-bar {
      height: 3px;
      width: 100%;
      background: var(--card-accent-color);
      flex-shrink: 0;
    }

    /* Media / image area */
    .product-card__media {
      position: relative;
      height: var(--card-img-height);
      display: flex;
      align-items: center;
      justify-content: center;
      overflow: hidden;
    }
    .product-card__media--surface     { background: var(--bg-surface); }
    .product-card__media--transparent { background: transparent; }
    .product-card__media--gradient    { background: linear-gradient(135deg, var(--secondary), var(--bg-surface)); }

    .product-card__icon {
      width: 78px;
      height: 78px;
      object-fit: contain;
      transition: transform var(--transition-base);
      filter: drop-shadow(0 4px 12px rgba(124,92,255,0.25));
    }
    .product-card:hover .product-card__icon { transform: scale(1.08) translateY(-4px); }
    .product-card__badge { position: absolute; top: var(--space-sm); right: var(--space-sm); }

    /* Body */
    .product-card__body { padding: var(--space-lg); flex: 1; display: flex; flex-direction: column; }
    .product-card__game-label {
      font-size: 0.65rem;
      font-weight: 700;
      text-transform: uppercase;
      letter-spacing: 0.08em;
      color: var(--text-faint);
      margin-bottom: 4px;
    }
    .product-card__name {
      font-family: var(--font-heading);
      font-size: var(--text-sm);
      font-weight: 700;
      color: var(--text-main);
      margin-bottom: var(--space-xs);
      line-height: 1.35;
    }
    .product-card__description {
      font-size: var(--text-sm);
      color: var(--text-muted);
      line-height: 1.55;
      flex: 1;
      margin-bottom: var(--space-md);
      display: -webkit-box;
      -webkit-line-clamp: 2;
      -webkit-box-orient: vertical;
      overflow: hidden;
    }
    .product-card__description p { margin: 0; display: inline; }
    .product-card__footer {
      display: flex;
      align-items: center;
      justify-content: space-between;
      margin-top: auto;
      padding-top: var(--space-sm);
      border-top: 1px solid var(--border-color);
    }
    .product-card__price         { font-family: var(--font-price); font-size: var(--text-lg); font-weight: 800; color: var(--text-main); letter-spacing: -0.01em; }
    .product-card__price--original { display: block; font-size: var(--text-xs); color: var(--text-faint); text-decoration: line-through; margin-bottom: 1px; }

    /* Hover overlay — kaldırıldı, artık kullanılmıyor */

    /* ---- DISCORD CTA ---- */
    .discord-cta { background:var(--bg-surface); border-top:1px solid var(--border-color); border-bottom:1px solid var(--border-color); }
    .discord-cta__inner { display:flex; align-items:center; justify-content:space-between; gap:var(--space-2xl); padding:var(--space-2xl) 0; }
    .discord-cta__icon { display:flex; align-items:center; justify-content:center; width:56px; height:56px; background:rgba(88,101,242,0.15); border:1px solid rgba(88,101,242,0.30); border-radius:var(--radius-lg); color:#5865F2; flex-shrink:0; }
    .discord-cta__title { font-size:var(--text-xl); font-weight:800; color:var(--text-main); margin-bottom:4px; letter-spacing:-0.02em; }
    .discord-cta__subtitle { font-size:var(--text-sm); color:var(--text-muted); }

    /* ---- RECENT PURCHASES ---- */
    .recent-purchases { background:var(--bg-main); }
    .purchase-feed { display:flex; flex-direction:column; gap:var(--space-sm); max-width:640px; margin:0 auto; }
    .purchase-item { display:flex; align-items:center; gap:var(--space-md); background:var(--bg-card); border:1px solid var(--border-card); border-radius:var(--radius-md); padding:var(--space-sm) var(--space-lg); }
    .purchase-item__avatar { width:36px; height:36px; border-radius:var(--radius-sm); background:var(--secondary); object-fit:cover; flex-shrink:0; }
    .purchase-item__info { flex:1; }
    .purchase-item__player  { font-size:var(--text-sm); font-weight:600; color:var(--text-main); }
    .purchase-item__package { font-size:var(--text-xs); color:var(--text-muted); }
    .purchase-item__price   { font-size:var(--text-sm); font-weight:700; color:var(--accent); }

    /* ---- ABOUT SECTION ---- */
    .about-section { background:var(--bg-surface); border-top:1px solid var(--border-color); }
    .about-layout  { display:grid; grid-template-columns:1fr 1fr; gap:var(--space-3xl); align-items:center; }
    .about-text p  { font-size:var(--text-base); color:var(--text-muted); line-height:1.85; margin-bottom:var(--space-md); }
    .about-text p:last-child { margin-bottom:0; }
    .about-features { display:grid; grid-template-columns:1fr 1fr; gap:var(--space-md); }
    .about-feature { background:var(--bg-card); border:1px solid var(--border-card); border-radius:var(--radius-lg); padding:var(--space-lg); transition:border-color var(--transition-fast); }
    .about-feature:hover { border-color:var(--border-accent); }
    .about-feature__icon  { font-size:1.75rem; margin-bottom:var(--space-sm); }
    .about-feature__title { font-size:var(--text-sm); font-weight:700; color:var(--text-main); margin-bottom:4px; }
    .about-feature__desc  { font-size:var(--text-xs); color:var(--text-muted); line-height:1.55; }

    /* ---- FAQ SECTION ---- */
    .faq-section { background:var(--bg-main); }
    .faq-list { max-width:760px; margin:0 auto; display:flex; flex-direction:column; gap:var(--space-sm); }
    .faq-item { background:var(--bg-card); border:1px solid var(--border-card); border-radius:var(--radius-lg); overflow:hidden; transition:border-color var(--transition-fast); }
    .faq-item:hover { border-color:var(--border-accent); }
    .faq-item.open  { border-color:var(--border-accent); }
    .faq-q { display:flex; align-items:center; justify-content:space-between; padding:var(--space-lg) var(--space-xl); cursor:pointer; user-select:none; gap:var(--space-md); }
    .faq-q__text   { font-size:var(--text-base); font-weight:600; color:var(--text-main); }
    .faq-q__icon   { font-size:1.2rem; color:var(--text-faint); flex-shrink:0; transition:transform var(--transition-base); }
    .faq-item.open .faq-q__icon { transform:rotate(45deg); color:var(--accent); }
    .faq-a { display:none; padding:0 var(--space-xl) var(--space-lg); font-size:var(--text-sm); color:var(--text-muted); line-height:1.75; border-top:1px solid var(--border-color); }
    .faq-item.open .faq-a { display:block; padding-top:var(--space-md); }

    /* ---- FOOTER ---- */
    .footer { background:var(--bg-surface); border-top:1px solid var(--border-color); padding:var(--space-3xl) 0 var(--space-xl); }
    .footer__grid { display:grid; grid-template-columns:2fr 1fr 1fr 1fr; gap:var(--space-2xl); margin-bottom:var(--space-3xl); }
    .footer__brand-name { font-size:var(--text-lg); font-weight:800; color:var(--text-main); margin-bottom:var(--space-sm); letter-spacing:-0.02em; }
    .footer__brand-desc { font-size:var(--text-sm); color:var(--text-muted); line-height:1.7; margin-bottom:var(--space-lg); }
    .footer__social { display:flex; gap:var(--space-sm); }
    .footer__social-link { display:flex; align-items:center; justify-content:center; width:36px; height:36px; background:var(--bg-card); border:1px solid var(--border-card); border-radius:var(--radius-sm); color:var(--text-muted); transition:all var(--transition-fast); }
    .footer__social-link:hover { color:var(--text-main); border-color:var(--border-accent); background:rgba(124,92,255,0.10); }
    .footer__social-link svg { display:block; fill:currentColor; flex-shrink:0; }
    .footer__col-title { font-size:var(--text-xs); font-weight:700; letter-spacing:0.10em; text-transform:uppercase; color:var(--text-faint); margin-bottom:var(--space-lg); }
    .footer__links { display:flex; flex-direction:column; gap:var(--space-sm); }
    .footer__link { font-size:var(--text-sm); color:var(--text-muted); transition:color var(--transition-fast); }
    .footer__link:hover { color:var(--text-main); }
    .footer__bottom { display:flex; align-items:center; justify-content:space-between; padding-top:var(--space-xl); border-top:1px solid var(--border-color); font-size:var(--text-xs); color:var(--text-faint); }
    .footer__bottom-links { display:flex; gap:var(--space-lg); }
    .footer__bottom a { color:var(--text-faint); transition:color var(--transition-fast); }
    .footer__bottom a:hover { color:var(--text-muted); }
    .footer__powered { display:flex; align-items:center; gap:5px; color:var(--text-faint); font-size:var(--text-xs); }

    /* ---- MOBILE MENU ---- */
    .mobile-menu { display:none; position:fixed; inset:0; z-index:300; background:var(--bg-main); padding:var(--space-xl); flex-direction:column; gap:var(--space-lg); overflow-y:auto; }
    .mobile-menu.is-open { display:flex; }
    .mobile-menu__top { display:flex; align-items:center; justify-content:space-between; }
    .mobile-menu__logo { font-size:var(--text-md); font-weight:800; color:var(--text-main); }
    .mobile-menu__close { background:none; border:none; color:var(--text-muted); font-size:1.4rem; cursor:pointer; padding:4px; }
    .mobile-menu__nav { display:flex; flex-direction:column; gap:2px; border-top:1px solid var(--border-color); padding-top:var(--space-lg); }
    .mobile-menu__link { font-size:var(--text-base); font-weight:600; color:var(--text-main); padding:var(--space-sm) var(--space-md); border-radius:var(--radius-md); transition:background var(--transition-fast); }
    .mobile-menu__link:hover { background:rgba(255,255,255,0.05); }
    .mobile-menu__divider { height:1px; background:var(--border-color); margin:var(--space-sm) 0; }
    .mobile-menu__actions { display:flex; flex-direction:column; gap:var(--space-sm); padding-top:var(--space-md); border-top:1px solid var(--border-color); }
    .mobile-menu__user { display:flex; align-items:center; gap:var(--space-sm); padding:var(--space-sm) var(--space-md); background:rgba(255,255,255,0.04); border-radius:var(--radius-md); }
    .mobile-menu__user-name { font-size:var(--text-sm); font-weight:600; color:var(--text-main); }

    /* ---- PAGE BANNER ---- */
    .page-banner { position:relative; min-height:240px; display:flex; align-items:center; background-size:cover; background-position:center; overflow:hidden; }
    .page-banner--minimal { min-height:160px; background:var(--bg-surface) !important; border-bottom:1px solid var(--border-color); }
    .page-banner__overlay { position:absolute; inset:0; background:linear-gradient(to right, rgba(11,13,18,0.96) 0%, rgba(11,13,18,0.70) 60%, rgba(11,13,18,0.45) 100%); }
    .page-banner__glow { position:absolute; top:50%; left:50%; transform:translate(-50%,-50%); width:500px; height:500px; background:radial-gradient(circle, rgba(124,92,255,0.09) 0%, transparent 70%); pointer-events:none; }
    .page-banner__content { position:relative; z-index:2; padding:var(--space-2xl) 0; }
    .page-banner__title    { font-size:var(--text-3xl); font-weight:900; letter-spacing:-0.03em; color:var(--text-main); margin-top:var(--space-sm); }
    .page-banner__subtitle { font-size:var(--text-base); color:var(--text-muted); margin-top:6px; }

    /* ---- BREADCRUMB ---- */
    .breadcrumb-bar { background:var(--bg-surface); border-bottom:1px solid var(--border-color); padding:10px 0; }
    .breadcrumb { display:flex; align-items:center; gap:6px; font-size:var(--text-sm); }
    .breadcrumb__link    { color:var(--text-muted); transition:color var(--transition-fast); font-weight:500; }
    .breadcrumb__link:hover { color:var(--text-main); }
    .breadcrumb__sep     { color:var(--text-faint); }
    .breadcrumb__current { color:var(--accent); font-weight:600; }

    /* ---- FILTER BAR ---- */
    .filter-bar { display:flex; flex-wrap:wrap; gap:var(--space-sm); margin-bottom:var(--space-2xl); }
    .filter-btn { font-family:var(--font); font-size:var(--text-sm); font-weight:600; padding:7px 16px; border-radius:var(--radius-pill); border:1px solid var(--border-color); background:var(--bg-card); color:var(--text-muted); cursor:pointer; transition:all var(--transition-fast); }
    .filter-btn:hover  { border-color:var(--border-accent); color:var(--text-main); }
    .filter-btn.active { background:var(--primary); border-color:var(--primary); color:#fff; box-shadow:var(--glow-primary); }

    /* ---- PACKAGE DETAIL ---- */
    .package-layout { display:grid; grid-template-columns:340px 1fr; gap:var(--space-2xl); align-items:start; }
    .package-image-card { position:relative; background:var(--bg-card); border:1px solid var(--border-card); border-radius:var(--radius-xl); padding:var(--space-2xl); display:flex; align-items:center; justify-content:center; min-height:260px; overflow:hidden; }
    .package-image-card__bg { position:absolute; inset:0; pointer-events:none; }
    .package-image-card__badge { position:absolute; top:var(--space-md); right:var(--space-md); }
    .package-image-card__img { position:relative; z-index:1; width:160px; height:160px; object-fit:contain; animation:hero-float 5s ease-in-out infinite; }
    .buy-box { background:var(--bg-card); border:1px solid var(--border-card); border-radius:var(--radius-xl); padding:var(--space-xl); margin-top:var(--space-md); display:flex; flex-direction:column; gap:var(--space-md); }
    .buy-box__price-row { display:flex; align-items:baseline; gap:var(--space-sm); flex-wrap:wrap; }
    .buy-box__price { font-family:var(--font-price); font-size:var(--text-2xl); font-weight:900; color:var(--text-main); letter-spacing:-0.03em; }
    .buy-box__price--original { font-size:var(--text-base); color:var(--text-faint); text-decoration:line-through; }
    .buy-box__meta { display:flex; flex-direction:column; gap:5px; }
    .buy-box__meta-item { font-size:var(--text-xs); color:var(--text-muted); display:flex; align-items:center; gap:6px; font-weight:500; }
    .package-info__title { font-size:var(--text-2xl); font-weight:900; letter-spacing:-0.03em; margin-bottom:var(--space-md); color:var(--text-main); }
    .package-info__desc { font-size:var(--text-base); color:var(--text-muted); line-height:1.8; margin-bottom:var(--space-2xl); }
    .package-info__desc h2, .package-info__desc h3 { font-weight:700; color:var(--text-main); margin:var(--space-lg) 0 var(--space-sm); }
    .package-info__desc ul { padding-left:var(--space-xl); margin-bottom:var(--space-md); }
    .package-info__desc li { list-style:disc; color:var(--text-muted); margin-bottom:4px; }
    .package-info__desc strong { color:var(--text-main); font-weight:600; }
    .package-info__desc img { border-radius:var(--radius-md); max-width:100%; margin:var(--space-md) 0; }
    .package-includes { margin-bottom:var(--space-2xl); }
    .package-perks    { margin-bottom:var(--space-2xl); }
    .package-includes__title, .package-perks__title { font-size:var(--text-lg); font-weight:700; color:var(--text-main); margin-bottom:var(--space-lg); padding-bottom:var(--space-sm); border-bottom:1px solid var(--border-color); }
    .package-includes__grid { display:grid; grid-template-columns:repeat(auto-fill, minmax(200px,1fr)); gap:var(--space-md); }
    .include-item { display:flex; align-items:flex-start; gap:var(--space-md); background:var(--bg-card); border:1px solid var(--border-card); border-radius:var(--radius-md); padding:var(--space-md); transition:border-color var(--transition-fast); }
    .include-item:hover { border-color:var(--border-accent); }
    .include-item__icon  { font-size:1.4rem; flex-shrink:0; }
    .include-item__label { font-size:var(--text-sm); font-weight:600; color:var(--text-main); }
    .include-item__desc  { font-size:var(--text-xs); color:var(--text-muted); margin-top:2px; }
    .package-perks__list { display:grid; grid-template-columns:repeat(auto-fill, minmax(260px,1fr)); gap:var(--space-sm); }
    .package-perks__item { display:flex; align-items:center; gap:var(--space-sm); font-size:var(--text-sm); color:var(--text-muted); padding:var(--space-sm) var(--space-md); background:var(--bg-card); border:1px solid var(--border-card); border-radius:var(--radius-sm); }
    .package-perks__check { font-weight:700; flex-shrink:0; }
    .related-packages { background:var(--bg-surface); border-top:1px solid var(--border-color); }
    .related-grid { display:flex; gap:var(--space-md); flex-wrap:wrap; }
    .related-card { display:flex; flex-direction:column; align-items:center; gap:var(--space-sm); padding:var(--space-lg); background:var(--bg-card); border:1px solid var(--border-card); border-radius:var(--radius-lg); min-width:150px; text-align:center; transition:all var(--transition-base); }
    .related-card:hover { transform:translateY(-4px); border-color:var(--border-accent); box-shadow:var(--shadow-soft); }
    .related-card__icon  { width:52px; height:52px; object-fit:contain; }
    .related-card__name  { font-size:var(--text-sm); font-weight:600; color:var(--text-main); }
    .related-card__price { font-size:var(--text-sm); font-weight:700; color:var(--accent); }

    /* ---- CHECKOUT ---- */
    .checkout-section { padding-top: var(--space-2xl); }
    .checkout-layout { display:grid; grid-template-columns:1fr 360px; gap:var(--space-2xl); align-items:start; }
    .checkout-main { display:flex; flex-direction:column; min-width:0; }
    .checkout-sidebar { position:sticky; top:calc(var(--nav-height) + var(--space-md)); }
    .checkout-block { background:var(--bg-card); border:1px solid var(--border-card); border-radius:var(--radius-xl); padding:var(--space-xl); margin-bottom:var(--space-lg); }
    .checkout-block__title { font-size:var(--text-base); font-weight:700; color:var(--text-main); margin-bottom:var(--space-lg); display:flex; align-items:center; gap:var(--space-md); }
    .checkout-block__num { display:flex; align-items:center; justify-content:center; width:26px; height:26px; background:var(--primary); border-radius:50%; font-size:var(--text-xs); font-weight:700; color:#fff; flex-shrink:0; }
    .cart-items { display:flex; flex-direction:column; gap:var(--space-sm); }
    .cart-item { display:flex; align-items:center; gap:var(--space-md); padding:var(--space-md); background:var(--bg-surface); border:1px solid var(--border-card); border-radius:var(--radius-md); transition:border-color var(--transition-fast); }
    .cart-item:hover { border-color:var(--border-accent); }
    .cart-item__icon { width:50px; height:50px; object-fit:contain; flex-shrink:0; }
    .cart-item__info { flex:1; }
    .cart-item__name     { font-size:var(--text-sm); font-weight:600; color:var(--text-main); }
    .cart-item__category { font-size:var(--text-xs); color:var(--text-muted); margin-top:1px; }
    .cart-item__price    { font-size:var(--text-base); font-weight:700; color:var(--text-main); }
    .cart-item__remove   { color:var(--text-faint); font-size:var(--text-sm); padding:4px 8px; border-radius:var(--radius-sm); transition:all var(--transition-fast); }
    .cart-item__remove:hover { color:var(--danger); background:rgba(255,77,109,0.10); }
    .checkout-continue-link { display:inline-block; margin-top:var(--space-md); font-size:var(--text-sm); color:var(--accent); transition:color var(--transition-fast); font-weight:500; }
    .checkout-continue-link:hover { color:var(--text-main); }
    .order-summary { background:var(--bg-card); border:1px solid var(--border-card); border-radius:var(--radius-xl); padding:var(--space-xl); position:sticky; top:calc(var(--nav-height) + var(--space-md)); }
    .order-summary__title { font-size:var(--text-base); font-weight:700; color:var(--text-main); margin-bottom:var(--space-lg); padding-bottom:var(--space-md); border-bottom:1px solid var(--border-color); }
    .order-summary__lines { display:flex; flex-direction:column; gap:var(--space-sm); margin-bottom:var(--space-lg); }
    .order-summary__line { display:flex; justify-content:space-between; font-size:var(--text-sm); color:var(--text-muted); }
    .order-summary__line--total { font-size:var(--text-base); font-weight:700; color:var(--text-main); padding-top:var(--space-sm); }
    .order-summary__total-price { font-weight:800; color:var(--accent); }
    .order-summary__divider { height:1px; background:var(--border-color); margin:4px 0; }
    .order-summary__btn { margin-bottom:var(--space-lg); }
    .trust-badges { display:flex; flex-direction:column; gap:var(--space-sm); padding-top:var(--space-md); border-top:1px solid var(--border-color); }
    .trust-badge { display:flex; align-items:center; gap:var(--space-md); }
    .trust-badge__icon  { font-size:1rem; flex-shrink:0; }
    .trust-badge__label { font-size:var(--text-xs); font-weight:600; color:var(--text-main); }
    .trust-badge__desc  { font-size:var(--text-xs); color:var(--text-faint); }
    .tebex-checkout-btn { display:flex; align-items:center; justify-content:center; gap:7px; width:100%; padding:13px; border-radius:var(--radius-lg); border:none; cursor:pointer; font-family:var(--font); font-size:var(--text-base); font-weight:700; background:linear-gradient(135deg, var(--primary), var(--primary-hover)); color:#fff; box-shadow:var(--glow-primary); transition:all var(--transition-base); margin-bottom:var(--space-md); letter-spacing:0.01em; }
    .tebex-checkout-btn:hover:not(:disabled) { transform:translateY(-2px); box-shadow:0 0 28px rgba(124,92,255,0.50); }
    .tebex-checkout-btn:disabled { opacity:0.6; cursor:not-allowed; }
    .coupon-form { display:flex; gap:var(--space-sm); margin-bottom:var(--space-lg); }
    .coupon-form__input { flex:1; background:var(--bg-surface); border:1px solid var(--border-color); border-radius:var(--radius-md); padding:8px 14px; font-family:var(--font); font-size:var(--text-sm); color:var(--text-main); outline:none; transition:border-color var(--transition-fast); }
    .coupon-form__input:focus { border-color:var(--primary); }
    .coupon-form__input::placeholder { color:var(--text-faint); }

    /* ---- TERMS ---- */
    .terms-layout { display:grid; grid-template-columns:220px 1fr; gap:var(--space-2xl); align-items:start; }
    .terms-toc__inner { background:var(--bg-card); border:1px solid var(--border-card); border-radius:var(--radius-lg); padding:var(--space-lg); position:sticky; top:calc(var(--nav-height) + var(--space-md)); }
    .terms-toc__title { font-size:var(--text-xs); font-weight:700; letter-spacing:0.10em; text-transform:uppercase; color:var(--text-faint); margin-bottom:var(--space-md); }
    .terms-toc__list  { display:flex; flex-direction:column; gap:3px; }
    .terms-toc__link  { display:block; font-size:var(--text-xs); color:var(--text-muted); padding:6px var(--space-sm); border-radius:var(--radius-sm); border-left:2px solid transparent; transition:all var(--transition-fast); line-height:1.4; font-weight:500; }
    .terms-toc__link:hover, .terms-toc__link.active { color:var(--accent); background:rgba(124,92,255,0.07); border-left-color:var(--primary); }
    .terms-intro { background:rgba(124,92,255,0.05); border:1px solid var(--border-accent); border-radius:var(--radius-md); padding:var(--space-lg); margin-bottom:var(--space-2xl); font-size:var(--text-sm); color:var(--text-muted); line-height:1.7; }
    .terms-block { margin-bottom:var(--space-2xl); padding-bottom:var(--space-2xl); border-bottom:1px solid var(--border-color); }
    .terms-block:last-of-type { border-bottom:none; }
    .terms-block__header { display:flex; align-items:center; gap:var(--space-md); margin-bottom:var(--space-md); }
    .terms-block__icon  { font-size:1.4rem; flex-shrink:0; }
    .terms-block__title { font-size:var(--text-lg); font-weight:700; color:var(--text-main); }
    .terms-block__content { font-size:var(--text-base); color:var(--text-muted); line-height:1.85; padding-left:calc(1.4rem + var(--space-md)); }
    .terms-contact-cta { background:var(--bg-card); border:1px solid var(--border-accent); border-radius:var(--radius-xl); padding:var(--space-2xl); text-align:center; margin-top:var(--space-2xl); }
    .terms-contact-cta__text { font-size:var(--text-base); color:var(--text-muted); margin-bottom:var(--space-lg); }

    /* ---- EMPTY STATE ---- */
    .empty-state { text-align:center; padding:var(--space-3xl) var(--space-xl); display:flex; flex-direction:column; align-items:center; gap:var(--space-lg); }
    .empty-state__text { font-size:var(--text-md); color:var(--text-muted); }

    /* ---- ALERT ---- */
    .alert { padding:var(--space-md) var(--space-lg); border-radius:var(--radius-md); font-size:var(--text-sm); margin-bottom:var(--space-md); display:flex; align-items:flex-start; gap:var(--space-sm); font-weight:500; }
    .alert--success { background:rgba(62,207,142,0.09); border:1px solid rgba(62,207,142,0.28); color:var(--success); }
    .alert--error   { background:rgba(255,77,109,0.09); border:1px solid rgba(255,77,109,0.28); color:var(--danger); }
    .alert--info    { background:rgba(124,92,255,0.09); border:1px solid var(--border-accent); color:var(--accent); }

    /* ---- MODULES ---- */
    .module { background:var(--bg-card); border:1px solid var(--border-card); border-radius:var(--radius-lg); overflow:hidden; margin-bottom:var(--space-md); }
    /* ---- Sidebar Layout ---- */
    .page-with-sidebar { display: flex; align-items: flex-start; gap: var(--space-2xl); }
    .page-content { flex: 1; min-width: 0; }
    .store-sidebar { width: 300px; flex-shrink: 0; display: flex; flex-direction: column; gap: var(--space-lg); position: sticky; top: calc(var(--nav-height) + var(--space-md)); padding: var(--space-2xl) var(--space-xl) var(--space-2xl) 0; }
    .module { background: var(--bg-card); border: 1px solid var(--border-card); border-radius: var(--radius-lg); overflow: hidden; }
    @media (max-width: 1024px) {
      .page-with-sidebar { flex-direction: column; }
      .store-sidebar { width: 100%; position: static; padding: 0 var(--space-xl) var(--space-2xl); }
    }
    /* ---- MODULES BASE ---- */
    .module { background:var(--bg-card); border:1px solid var(--border-card); border-radius:var(--radius-lg); overflow:hidden; }
    .module__header { display:flex; align-items:center; gap:10px; padding:11px 14px; border-bottom:1px solid rgba(255,255,255,0.05); }
    .module__icon-wrap { width:26px; height:26px; border-radius:6px; display:flex; align-items:center; justify-content:center; font-size:12px; flex-shrink:0; }
    .module__icon  { font-size:12px; flex-shrink:0; }
    .module__title { font-size:11px; font-weight:700; color:var(--text-main); letter-spacing:0.06em; text-transform:uppercase; }
    .module__body  { padding:12px 14px; }
    .module__empty { font-size:11px; color:var(--text-faint); text-align:center; padding:14px 0; }
    .module-goal__bar { width:100%; height:9px; background:var(--bg-surface); border-radius:var(--radius-pill); overflow:hidden; border:1px solid var(--border-color); }
    .module-goal__fill { height:100%; background:linear-gradient(90deg, var(--primary), var(--accent)); border-radius:var(--radius-pill); transition:width 1s ease; }
    .module-goal__fill--gold { background:linear-gradient(90deg, var(--accent-gold), #e6b800); }
    .module-goal__labels { display:flex; justify-content:space-between; font-size:var(--text-xs); color:var(--text-muted); margin-top:6px; font-weight:500; }
    .module-goal__percent { color:var(--accent); font-weight:700; }
    .module-goal__achieved { margin-top:var(--space-md); text-align:center; font-size:var(--text-sm); font-weight:700; color:var(--accent-gold); background:rgba(245,200,66,0.09); border:1px solid rgba(245,200,66,0.25); border-radius:var(--radius-md); padding:var(--space-sm); }
    .module-payments__list { display:flex; flex-direction:column; }
    .module-payments__item { display:flex; align-items:center; gap:8px; padding:7px 0; border-bottom:1px solid rgba(255,255,255,0.04); }
    .module-payments__item:last-child { border-bottom:none; }
    .module-payments__avatar { width:28px; height:28px; border-radius:6px; flex-shrink:0; }
    .module-payments__avatar--initials { display:flex; align-items:center; justify-content:center; background:linear-gradient(135deg,var(--primary),var(--accent)); color:#fff; font-size:10px; font-weight:700; }
    .module-payments__info { flex:1; min-width:0; }
    .module-payments__name    { display:block; font-size:11px; font-weight:600; color:var(--text-main); white-space:nowrap; overflow:hidden; text-overflow:ellipsis; }
    .module-payments__package { display:block; font-size:10px; color:var(--text-faint); white-space:nowrap; overflow:hidden; text-overflow:ellipsis; }
    .module-payments__price   { font-size:11px; font-weight:700; color:var(--accent); flex-shrink:0; font-family:var(--font-mono); }
    .module-status__row { display:flex; align-items:center; gap:var(--space-sm); margin-bottom:var(--space-md); }
    .module-status__dot { width:9px; height:9px; border-radius:50%; flex-shrink:0; }
    .module-status__dot--online  { background:var(--success); box-shadow:0 0 7px var(--success); animation:pulse-dot 2s infinite; }
    .module-status__dot--offline { background:var(--danger); }
    .module-status__label   { font-size:var(--text-sm); font-weight:600; color:var(--text-main); }
    .module-status__players { font-size:var(--text-xs); color:var(--text-muted); margin-left:auto; font-weight:500; }
    .module-status__ip { display:flex; align-items:center; justify-content:space-between; padding:var(--space-sm) var(--space-md); background:var(--bg-surface); border:1px solid var(--border-color); border-radius:var(--radius-md); cursor:pointer; user-select:none; transition:border-color var(--transition-fast); }
    .module-status__ip:hover { border-color:var(--border-accent); }
    .module-status__ip-text { font-size:var(--text-sm); font-weight:600; color:var(--text-main); }
    .module-status__ip-copy { font-size:var(--text-xs); color:var(--text-faint); }
    /* Top Donators — Podium */
    .module-donators__body  { padding: 0; }
    .module-donators__podium { display:flex; align-items:flex-end; justify-content:center; gap:6px; padding:16px 16px 0; }
    .module-donators__podium-col { flex:1; display:flex; flex-direction:column; align-items:center; gap:4px; }
    .module-donators__podium-avatar { position:relative; display:inline-flex; }
    .module-donators__podium-avatar--first img,
    .module-donators__podium-avatar--first .module-donators__initials--lg { width:44px !important; height:44px !important; }
    .module-donators__medal { position:absolute; bottom:-5px; right:-5px; width:16px; height:16px; border-radius:50%; display:flex; align-items:center; justify-content:center; font-size:8px; font-weight:700; border:2px solid var(--bg-card); }
    .module-donators__medal--gold   { background:var(--accent-gold); color:#1a1000; font-size:9px; width:18px; height:18px; }
    .module-donators__medal--silver { background:#b0b0b0; color:#111; }
    .module-donators__medal--bronze { background:#b4783c; color:#fff; }
    .module-donators__podium-name { font-size:10px; font-weight:600; color:var(--text-muted); white-space:nowrap; overflow:hidden; text-overflow:ellipsis; max-width:72px; text-align:center; margin-top:6px; }
    .module-donators__podium-name--first { color:var(--text-main); font-weight:700; }
    .module-donators__podium-amt { font-size:10px; font-weight:700; font-family:var(--font-mono); }
    .module-donators__podium-amt--gold   { color:var(--accent-gold); font-size:11px; }
    .module-donators__podium-amt--silver { color:#b0b0b0; }
    .module-donators__podium-amt--bronze { color:#b4783c; }
    .module-donators__podium-bar { width:100%; border-radius:var(--radius-xs) var(--radius-xs) 0 0; margin-top:var(--space-xs); }
    .module-donators__podium-bar--gold   { height:48px; background:rgba(245,200,66,0.10); border-top:2px solid rgba(245,200,66,0.45); }
    .module-donators__podium-bar--silver { height:32px; background:rgba(176,176,176,0.10); border-top:2px solid rgba(176,176,176,0.35); }
    .module-donators__podium-bar--bronze { height:20px; background:rgba(180,120,60,0.10); border-top:2px solid rgba(180,120,60,0.35); }
    .module-donators__initials { width:36px; height:36px; border-radius:var(--radius-xs); display:flex; align-items:center; justify-content:center; background:linear-gradient(135deg,var(--primary),var(--accent)); color:#fff; font-size:13px; font-weight:700; }
    .module-donators__initials--lg { width:44px; height:44px; font-size:17px; }
    /* 4th+ list */
    .module-donators__list { border-top:1px solid var(--border-color); margin-top:4px; }
    .module-donators__list--solo { border-top:none; padding:var(--space-sm) 0; }
    .module-donators__item { display:flex; align-items:center; gap:8px; padding:8px 16px; border-bottom:1px solid var(--border-color); }
    .module-donators__item:last-child { border-bottom:none; }
    .module-donators__rank { width:18px; height:18px; border-radius:50%; display:flex; align-items:center; justify-content:center; font-size:9px; font-weight:700; background:var(--bg-surface); color:var(--text-faint); flex-shrink:0; }
    .module-donators__rank--gold   { background:rgba(245,200,66,0.20); color:var(--accent-gold); }
    .module-donators__rank--silver { background:rgba(176,176,176,0.20); color:#b0b0b0; }
    .module-donators__avatar { width:22px; height:22px; border-radius:var(--radius-xs); flex-shrink:0; }
    .module-donators__avatar--initials { display:flex; align-items:center; justify-content:center; background:linear-gradient(135deg,var(--primary),var(--accent)); color:#fff; font-size:9px; font-weight:700; }
    .module-donators__name   { flex:1; font-size:11px; font-weight:600; color:var(--text-muted); white-space:nowrap; overflow:hidden; text-overflow:ellipsis; }
    .module-donators__amount { font-size:11px; font-weight:700; color:var(--accent); flex-shrink:0; font-family:var(--font-mono); }
    .module-featured__card   { display:flex; flex-direction:column; gap:8px; }
    .module-featured__img    { width:100%; height:80px; object-fit:contain; border-radius:8px; background:var(--bg-surface); padding:8px; }
    .module-featured__name   { font-size:12px; font-weight:700; color:var(--text-main); }
    .module-featured__desc   { font-size:10px; color:var(--text-faint); line-height:1.55; }
    .module-featured__footer { display:flex; align-items:center; justify-content:space-between; margin-top:2px; }
    .module-featured__price  { font-size:13px; font-weight:700; color:var(--accent); font-family:var(--font-mono); }
    .module-giftcard__form   { display:flex; flex-direction:column; gap:8px; }
    .module-giftcard__input  { width:100%; background:var(--bg-surface); border:1px solid var(--border-color); border-radius:8px; padding:8px 12px; font-size:12px; color:var(--text-main); outline:none; transition:border-color var(--transition-fast); }
    .module-giftcard__input:focus { border-color:var(--primary); }
    .module-giftcard__input::placeholder { color:var(--text-faint); font-size:11px; }
    .module-giftcard__btn    { font-size:12px; padding:8px; }
    .module-giftcard__result { display:flex; align-items:center; justify-content:space-between; margin-top:8px; padding:8px 10px; background:rgba(62,207,142,0.08); border:1px solid rgba(62,207,142,0.20); border-radius:8px; }
    .module-giftcard__label  { font-size:11px; color:var(--text-muted); }
    .module-giftcard__balance { font-size:13px; font-weight:700; color:var(--success); font-family:var(--font-mono); }
    .module-textbox__body    { font-size:12px; color:var(--text-muted); line-height:1.6; }
    .module-featured__price  { font-size:var(--text-md); font-weight:800; color:var(--text-main); }
    .module-giftcard__form   { display:flex; flex-direction:column; gap:var(--space-sm); }
    .module-giftcard__input  { width:100%; padding:var(--space-md) var(--space-lg); background:var(--bg-surface); border:1px solid var(--border-color); border-radius:var(--radius-md); font-family:var(--font); font-size:var(--text-sm); color:var(--text-main); outline:none; }
    .module-giftcard__input:focus { border-color:var(--primary); }
    .module-giftcard__result { display:flex; justify-content:space-between; align-items:center; margin-top:var(--space-md); padding:var(--space-md); background:rgba(62,207,142,0.07); border:1px solid rgba(62,207,142,0.22); border-radius:var(--radius-md); }
    .module-giftcard__balance { font-size:var(--text-lg); font-weight:800; color:var(--success); }
    .module-textbox__body { font-size:var(--text-sm); color:var(--text-muted); line-height:1.7; }
    .module-textbox__body a { color:var(--accent); text-decoration:underline; }

    /* ---- CMS CONTENT ---- */
    .cms-content { max-width:760px; font-size:var(--text-base); color:var(--text-muted); line-height:1.85; }
    .cms-content h1,.cms-content h2,.cms-content h3 { font-weight:700; color:var(--text-main); margin:var(--space-lg) 0 var(--space-sm); }
    .cms-content h1 { font-size:var(--text-2xl); } .cms-content h2 { font-size:var(--text-xl); } .cms-content h3 { font-size:var(--text-lg); }
    .cms-content p  { margin-bottom:var(--space-md); }
    .cms-content a  { color:var(--accent); text-decoration:underline; }
    .cms-content ul,.cms-content ol { padding-left:var(--space-xl); margin-bottom:var(--space-md); }
    .cms-content li { margin-bottom:4px; }
    .cms-content strong { color:var(--text-main); font-weight:600; }
    .cms-content blockquote { border-left:3px solid var(--primary); padding:var(--space-md) var(--space-lg); background:rgba(124,92,255,0.05); border-radius:0 var(--radius-md) var(--radius-md) 0; margin:var(--space-lg) 0; font-style:italic; }
    .cms-content table { width:100%; border-collapse:collapse; font-size:var(--text-sm); margin-bottom:var(--space-lg); }
    .cms-content th { background:var(--bg-card); color:var(--text-main); font-weight:700; padding:var(--space-sm) var(--space-md); border:1px solid var(--border-color); }
    .cms-content td { padding:var(--space-sm) var(--space-md); border:1px solid var(--border-color); color:var(--text-muted); }

    /* ---- RESPONSIVE ---- */
    @media (max-width: 1024px) {
      .footer__grid { grid-template-columns:1fr 1fr; }
    }
    @media (max-width: 768px) {
      :root { --section-gap:3.5rem; --nav-height:60px; }
      .container { padding:0 var(--space-lg); }
      .navbar__nav, .navbar__actions { display:none; }
      .navbar__hamburger { display:flex; }
      .hero__layout { grid-template-columns:1fr; text-align:center; padding:var(--space-2xl) 0; }
      .hero__visual { height:260px; order:-1; }
      .hero__visual-ring--outer { width:240px; height:240px; }
      .hero__visual-ring--inner { width:180px; height:180px; }
      .hero__visual-img { max-height:220px; }
      .hero__stats { justify-content:center; gap:var(--space-xl); }
      .hero__actions { justify-content:center; }
      .hero__subtitle { max-width:100%; }
      .category-grid { grid-template-columns:repeat(2,1fr); }
      .product-grid  { grid-template-columns:repeat(2,1fr); }
      .discord-cta__inner { flex-direction:column; text-align:center; }
      .footer__grid  { grid-template-columns:1fr; }
      .footer__bottom { flex-direction:column; gap:var(--space-md); text-align:center; }
      .footer__bottom-links { justify-content:center; }
      .section-header { text-align:center; }
      .section-header h2::after { margin:10px auto 0; }
      .package-layout { grid-template-columns:1fr; }
      .package-includes__grid { grid-template-columns:1fr; }
      .package-perks__list { grid-template-columns:1fr; }
      .checkout-layout { grid-template-columns:1fr; }
      .checkout-sidebar { position:static; }
      .order-summary { position:static; }
      .terms-layout  { grid-template-columns:1fr; }
      .terms-toc__inner { position:static; }
      .about-layout  { grid-template-columns:1fr; }
    }
    @media (max-width: 480px) {
      .product-grid  { grid-template-columns:1fr; }
      .about-features { grid-template-columns:1fr; }
      .hero__actions { flex-direction:column; }
      .hero__actions .btn { width:100%; justify-content:center; }
    }
    @media (prefers-reduced-motion:reduce) {
      *,*::before,*::after { animation-duration:0.01ms !important; transition-duration:0.01ms !important; }
    }
  

/* --- layout block --- */

/* ================================================================
   GAME STRIP
================================================================ */
.game-strip { background: var(--bg-surface); border-top: 1px solid var(--border-color); border-bottom: 1px solid var(--border-color); padding: 14px 0; }
.game-strip__inner { display: flex; align-items: center; gap: var(--space-xl); flex-wrap: wrap; }
.game-strip__label { font-size: var(--text-xs); font-weight: 700; text-transform: uppercase; letter-spacing: 0.10em; color: var(--text-faint); flex-shrink: 0; }
.game-strip__games { display: flex; gap: var(--space-sm); flex-wrap: wrap; }
.game-chip { font-size: var(--text-xs); font-weight: 600; color: var(--text-muted); background: var(--bg-card); border: 1px solid var(--border-card); border-radius: var(--radius-pill); padding: 5px 12px; transition: all var(--transition-fast); }
.game-chip:hover { border-color: var(--border-accent); color: var(--text-main); }

/* ================================================================
   PREMIUM PACKAGE CARDS
================================================================ */
.pkg-grid { display: grid; grid-template-columns: repeat(auto-fill, minmax(280px, 1fr)); gap: var(--space-lg); }

.pkg-card { position: relative; background: var(--bg-card); border: 1px solid var(--border-card); border-radius: var(--radius-xl); overflow: hidden; display: flex; flex-direction: column; transition: transform var(--transition-base), border-color var(--transition-base), box-shadow var(--transition-base); }
.pkg-card:hover { transform: translateY(-6px); border-color: var(--border-accent); box-shadow: var(--shadow-lifted), var(--glow-accent); }

.pkg-card__bar { height: 3px; width: 100%; }
.pkg-card__bar--0 { background: linear-gradient(90deg, var(--primary), var(--accent)); }
.pkg-card__bar--1 { background: linear-gradient(90deg, #3ecf8e, #2ba870); }
.pkg-card__bar--2 { background: linear-gradient(90deg, #f5c842, #e6a800); }
.pkg-card__bar--3 { background: linear-gradient(90deg, #ff4d6d, #c0304a); }

.pkg-card__media { position: relative; height: 160px; display: flex; align-items: center; justify-content: center; overflow: hidden; background: linear-gradient(135deg, var(--secondary) 0%, var(--bg-surface) 100%); }
.pkg-card__media-bg { position: absolute; inset: 0; background: radial-gradient(circle at 50% 70%, rgba(124,92,255,0.12) 0%, transparent 65%); pointer-events: none; }
.pkg-card__img { position: relative; z-index: 1; width: 90px; height: 90px; object-fit: contain; filter: drop-shadow(0 8px 20px rgba(124,92,255,0.35)); transition: transform var(--transition-base); }
.pkg-card:hover .pkg-card__img { transform: scale(1.08) translateY(-5px); }
.pkg-card__placeholder { font-size: 3.5rem; position: relative; z-index: 1; transition: transform var(--transition-base); }
.pkg-card:hover .pkg-card__placeholder { transform: scale(1.1) translateY(-4px); }
.pkg-card__badge { position: absolute; top: var(--space-sm); right: var(--space-sm); z-index: 2; }
.pkg-card__category-chip { position: absolute; bottom: var(--space-sm); left: var(--space-sm); z-index: 2; font-size: 0.65rem; font-weight: 700; text-transform: uppercase; letter-spacing: 0.08em; color: var(--text-faint); background: rgba(0,0,0,0.50); backdrop-filter: blur(4px); padding: 3px 8px; border-radius: var(--radius-pill); }

.pkg-card__body { padding: var(--space-lg); flex: 1; display: flex; flex-direction: column; gap: var(--space-sm); }
.pkg-card__name { font-family: var(--font-heading); font-size: var(--text-base); font-weight: 700; color: var(--text-main); }
.pkg-card__desc { font-size: var(--text-sm); color: var(--text-muted); line-height: 1.55; flex: 1; display: -webkit-box; -webkit-line-clamp: 2; -webkit-box-orient: vertical; overflow: hidden; }
.pkg-card__footer { display: flex; align-items: center; justify-content: space-between; margin-top: auto; padding-top: var(--space-sm); border-top: 1px solid var(--border-color); }
.pkg-card__pricing { display: flex; flex-direction: column; }
.pkg-card__price-old { font-size: var(--text-xs); color: var(--text-faint); text-decoration: line-through; line-height: 1; }
.pkg-card__price { font-family: var(--font-price); font-size: var(--text-xl); font-weight: 800; color: var(--text-main); letter-spacing: -0.02em; }

.pkg-card__overlay { position: absolute; inset: 0; background: rgba(11,13,18,0.82); display: flex; align-items: center; justify-content: center; opacity: 0; transition: opacity var(--transition-base); backdrop-filter: blur(6px); z-index: 5; }
.pkg-card:hover .pkg-card__overlay { opacity: 1; }
.pkg-card__overlay-btn { font-family: var(--font-heading); font-size: var(--text-base); font-weight: 700; color: #fff; background: linear-gradient(135deg, var(--primary), var(--primary-hover)); padding: 12px 28px; border-radius: var(--radius-lg); box-shadow: var(--glow-primary); transition: transform var(--transition-fast); }
.pkg-card__overlay-btn:hover { transform: scale(1.04); }

/* ================================================================
   REVIEWS
================================================================ */
.reviews-section { background: var(--bg-surface); border-top: 1px solid var(--border-color); }
.reviews-summary { display: flex; align-items: flex-start; gap: var(--space-3xl); margin-bottom: var(--space-2xl); padding: var(--space-2xl); background: var(--bg-card); border: 1px solid var(--border-card); border-radius: var(--radius-xl); }
.reviews-summary__score { display: flex; flex-direction: column; align-items: center; gap: var(--space-sm); flex-shrink: 0; }
.reviews-summary__number { font-family: var(--font-price); font-size: 3.5rem; font-weight: 900; color: var(--text-main); line-height: 1; }
.reviews-summary__stars { display: flex; gap: 3px; font-size: 1.4rem; color: var(--accent-gold); }
.reviews-summary__count { font-size: var(--text-xs); color: var(--text-muted); font-weight: 500; }
.reviews-summary__bars { flex: 1; display: flex; flex-direction: column; gap: 8px; justify-content: center; }
.reviews-bar { display: flex; align-items: center; gap: var(--space-sm); }
.reviews-bar__label { font-size: var(--text-xs); color: var(--text-muted); font-weight: 600; width: 20px; text-align: right; flex-shrink: 0; }
.reviews-bar__track { flex: 1; height: 7px; background: var(--bg-surface); border-radius: var(--radius-pill); overflow: hidden; }
.reviews-bar__fill { height: 100%; background: linear-gradient(90deg, var(--accent-gold), #e6a800); border-radius: var(--radius-pill); }
.reviews-bar__pct { font-size: var(--text-xs); color: var(--text-faint); font-weight: 500; width: 30px; flex-shrink: 0; }
.reviews-grid { display: grid; grid-template-columns: repeat(auto-fill, minmax(300px, 1fr)); gap: var(--space-md); }
.review-card { background: var(--bg-card); border: 1px solid var(--border-card); border-radius: var(--radius-lg); padding: var(--space-xl); display: flex; flex-direction: column; gap: var(--space-md); transition: border-color var(--transition-fast); }
.review-card:hover { border-color: var(--border-accent); }
.review-card__header { display: flex; align-items: center; gap: var(--space-md); }
.review-card__avatar-wrap { flex-shrink: 0; }
.review-card__avatar { width: 40px; height: 40px; border-radius: var(--radius-sm); background: var(--bg-surface); }
.review-card__avatar--initials { display:flex; align-items:center; justify-content:center; background:linear-gradient(135deg,var(--primary),var(--accent)); color:#fff; font-size:var(--text-sm); font-weight:700; }
.review-card__meta { flex: 1; min-width: 0; }
.review-card__name { font-size: var(--text-sm); font-weight: 700; color: var(--text-main); display: flex; align-items: center; gap: 5px; }
.review-card__verified { width: 15px; height: 15px; background: var(--success); border-radius: 50%; display: inline-flex; align-items: center; justify-content: center; font-size: 0.55rem; color: #fff; font-weight: 900; flex-shrink: 0; }
.review-card__rank { font-size: var(--text-xs); color: var(--accent); font-weight: 600; }
.review-card__stars { display: flex; gap: 2px; font-size: 0.85rem; flex-shrink: 0; }
.star-filled { color: var(--accent-gold); }
.star-empty  { color: var(--text-faint); }
.review-card__text { font-size: var(--text-sm); color: var(--text-muted); line-height: 1.7; font-style: italic; }

/* ================================================================
   RESPONSIVE ADDITIONS
================================================================ */
@media (max-width: 768px) {
  .pkg-grid { grid-template-columns: repeat(2, 1fr); }
  .reviews-grid { grid-template-columns: 1fr; }
  .reviews-summary { flex-direction: column; gap: var(--space-xl); }
  .game-strip__inner { gap: var(--space-md); }
}
@media (max-width: 480px) {
  .pkg-grid { grid-template-columns: 1fr; }
}

/* Clean media — no background */
.product-card__media--clean       { background: transparent !important; }
.product-card__media--surface     { background: var(--bg-surface); }
.product-card__media--transparent { background: transparent; }
.product-card__media--gradient    { background: linear-gradient(135deg, var(--secondary), var(--bg-surface)); }
.pkg-card__media--clean     { background: transparent !important; }
.pkg-card__media--clean .pkg-card__media-bg { display: none; }

/* No-image letter placeholders */
.product-card__no-img {
  width: 64px; height: 64px;
  border-radius: var(--radius-md);
  background: linear-gradient(135deg, var(--primary), var(--accent));
  display: flex; align-items: center; justify-content: center;
  font-size: 1.5rem; font-weight: 900; color: #fff;
}
.pkg-card__no-img {
  width: 80px; height: 80px;
  border-radius: var(--radius-lg);
  background: linear-gradient(135deg, var(--primary), var(--accent));
  display: flex; align-items: center; justify-content: center;
  font-size: 1.75rem; font-weight: 900; color: #fff;
  position: relative; z-index: 1;
}
.pkg-list-item__no-img {
  width: 80px; height: 80px;
  border-radius: var(--radius-md);
  background: linear-gradient(135deg, var(--primary), var(--accent));
  display: flex; align-items: center; justify-content: center;
  font-size: 1.75rem; font-weight: 900; color: #fff;
}

/* Clamp description HTML content */
.pkg-card__desc,
.product-card__description,
.pkg-list-item__desc {
  display: -webkit-box;
  -webkit-line-clamp: 2;
  -webkit-box-orient: vertical;
  overflow: hidden;
  max-height: 3em;
}
.pkg-card__desc p,
.product-card__description p,
.pkg-list-item__desc p {
  margin: 0;
  display: inline;
}
.pkg-list-item__desc {
  -webkit-line-clamp: 3;
  max-height: 4.5em;
}
  

/* --- layout block --- */


/* --- layout block --- */

    .navbar__user { display:flex; align-items:center; gap:7px; font-size:var(--text-sm); font-weight:600; color:var(--text-nav); padding:5px 10px; border-radius:var(--radius-pill); background:rgba(255,255,255,0.05); }
    .navbar__user-name { color:var(--text-main); }
    .navbar__logout { display:flex; align-items:center; color:var(--text-faint); padding:2px 4px; border-radius:var(--radius-xs); transition:color var(--transition-fast); margin-left:2px; }
    .navbar__logout:hover { color:var(--danger); }
  

/* --- layout block --- */

    .page-transition{position:fixed;inset:0;background:var(--bg-main);z-index:9999;pointer-events:none;opacity:0;transition:opacity 0.25s ease;}
    .page-transition.out{opacity:1;}

    /* Scroll Reveal */
    .reveal{opacity:0;transform:translateY(28px);transition:opacity 0.55s ease,transform 0.55s ease;will-change:opacity,transform;}
    .reveal.visible{opacity:1;transform:translateY(0);}
    .reveal-d1{transition-delay:0.08s;}
    .reveal-d2{transition-delay:0.16s;}
    .reveal-d3{transition-delay:0.24s;}

    /* Particles */
    #hero-particles{position:absolute;inset:0;pointer-events:none;z-index:0;}

    /* Kinetic Typography */
    .hero__title .word{display:inline-block;animation:word-rise 1.1s cubic-bezier(0.16,1,0.3,1) both;}
    .hero__title--accent.word{animation-delay:0.3s;}
    @keyframes word-rise{from{opacity:0;transform:translateY(40px);}to{opacity:1;transform:translateY(0);}}

    /* Parallax */
    .page-banner{will-change:background-position;}

    /* Micro-interactions — Button ripple */
    .btn{position:relative;overflow:hidden;}
    .btn-ripple{position:absolute;border-radius:50%;background:rgba(255,255,255,0.2);transform:scale(0);animation:ripple-anim 0.55s linear;pointer-events:none;}
    @keyframes ripple-anim{to{transform:scale(4);opacity:0;}}

    /* Micro-interactions — Add to cart pulse */
    @keyframes cart-pop{0%{transform:scale(1);}40%{transform:scale(1.12);}70%{transform:scale(0.96);}100%{transform:scale(1);}}
    .cart-pop{animation:cart-pop 0.4s ease;}

    /* Micro-interactions — Navbar cart bounce */
    @keyframes cart-bounce{0%,100%{transform:translateY(0);}30%{transform:translateY(-5px);}60%{transform:translateY(-2px);}}
    .cart-bounce{animation:cart-bounce 0.45s ease;}
  

/* --- layout block --- */

    #nyx-overlay { position:fixed;inset:0;z-index:1999;background:rgba(5,6,10,0.65);opacity:0;pointer-events:none;transition:opacity .3s ease; }
    #nyx-overlay.is-open { opacity:1;pointer-events:auto; }
    #nyx-drawer { position:fixed;top:0;right:0;height:100vh;width:min(420px,100vw);z-index:2000;display:flex;flex-direction:column;background:var(--bg-card);border-left:1px solid var(--border-accent);box-shadow:var(--shadow-lifted);transform:translateX(105%);transition:transform .32s cubic-bezier(.25,.46,.45,.94);overflow:hidden; }
    #nyx-drawer.is-open { transform:translateX(0); }
    .nyx-drawer__header { display:flex;align-items:center;justify-content:space-between;gap:12px;padding:18px 20px;border-bottom:1px solid var(--border-color);flex-shrink:0; }
    .nyx-drawer__header-left { display:flex;align-items:baseline;gap:10px; }
    .nyx-drawer__title { font-family:var(--font-display);font-size:var(--text-lg);font-weight:700;color:var(--text-main);margin:0; }
    .nyx-drawer__sub { font-family:var(--font-mono);font-size:var(--text-xs);color:var(--text-muted);font-weight:600; }
    .nyx-drawer__close { width:32px;height:32px;border-radius:var(--radius-sm);border:1px solid var(--border-color);background:transparent;color:var(--text-muted);cursor:pointer;display:flex;align-items:center;justify-content:center;transition:all var(--transition-fast);flex-shrink:0; }
    .nyx-drawer__close:hover { background:rgba(255,77,109,0.10);border-color:rgba(255,77,109,0.3);color:var(--danger); }
    .nyx-drawer__items { flex:1;overflow-y:auto;padding:8px 0;overscroll-behavior:contain; }
    .nyx-item { display:flex;align-items:center;gap:12px;padding:12px 20px;border-bottom:1px solid var(--border-color);transition:opacity .25s ease,background .15s; }
    .nyx-item:last-child { border-bottom:none; }
    .nyx-item:hover { background:rgba(255,255,255,0.02); }
    .nyx-item.is-removing { opacity:0;pointer-events:none; }
    .nyx-item__img { width:52px;height:52px;border-radius:var(--radius-sm);object-fit:cover;flex-shrink:0;background:var(--bg-surface); }
    .nyx-item__img--ph { display:flex;align-items:center;justify-content:center;font-size:1.5rem; }
    .nyx-item__info { flex:1;min-width:0; }
    .nyx-item__name { font-family:var(--font-display);font-size:var(--text-sm);font-weight:600;color:var(--text-main);white-space:nowrap;overflow:hidden;text-overflow:ellipsis;display:block; }
    .nyx-item__row { display:flex;align-items:center;gap:6px; }
    .nyx-item__qty-badge { font-family:var(--font-mono);font-size:0.68rem;font-weight:800;background:rgba(62,207,142,0.15);color:var(--success);padding:1px 6px;border-radius:4px;flex-shrink:0; }
    .nyx-item__cat { font-size:var(--text-xs);color:var(--text-faint);margin-top:2px;text-transform:uppercase;letter-spacing:.05em; }
    .nyx-item__price { font-family:var(--font-mono);font-size:var(--text-sm);font-weight:700;color:var(--primary);white-space:nowrap;flex-shrink:0; }
    .nyx-item__remove { width:30px;height:30px;border-radius:var(--radius-xs);border:1px solid var(--border-color);background:transparent;color:var(--text-faint);cursor:pointer;display:flex;align-items:center;justify-content:center;transition:all var(--transition-fast);flex-shrink:0; }
    .nyx-item__remove:hover { background:rgba(255,77,109,0.10);border-color:rgba(255,77,109,0.3);color:var(--danger); }
    .nyx-empty { text-align:center;padding:48px 24px;display:flex;flex-direction:column;align-items:center;gap:12px; }
    .nyx-empty__icon { font-size:3rem;opacity:.45; }
    .nyx-empty__text { color:var(--text-muted);font-size:var(--text-sm); }
    .nyx-drawer__footer { flex-shrink:0;border-top:1px solid var(--border-color);padding:16px 20px;display:flex;flex-direction:column;gap:10px;background:var(--bg-card); }
    .nyx-total { display:flex;align-items:baseline;justify-content:space-between; }
    .nyx-total__label { font-family:var(--font-display);font-size:var(--text-sm);font-weight:700;text-transform:uppercase;letter-spacing:.08em;color:var(--text-main); }
    .nyx-total__amount { font-family:var(--font-mono);font-size:var(--text-xl);font-weight:800;color:var(--primary); }
    .nyx-co-btn { display:flex;align-items:center;justify-content:center;gap:8px;width:100%;padding:14px;background:linear-gradient(135deg,var(--success),#2eb87e);color:#fff;border:none;border-radius:var(--radius-md);font-family:var(--font-display);font-size:var(--text-sm);font-weight:800;text-transform:uppercase;letter-spacing:.05em;cursor:pointer;transition:all var(--transition-fast);box-shadow:0 4px 14px rgba(62,207,142,0.2); }
    .nyx-co-btn:hover { transform:translateY(-2px);box-shadow:0 8px 24px rgba(62,207,142,0.38);filter:brightness(1.05); }
    .nyx-login-btn { align-items:center;justify-content:center;gap:8px;width:100%;padding:14px;background:var(--primary);color:#fff;border-radius:var(--radius-md);text-decoration:none;font-family:var(--font-display);font-size:var(--text-sm);font-weight:800;text-transform:uppercase;letter-spacing:.05em;transition:all var(--transition-fast); }
    .nyx-login-btn:hover { filter:brightness(1.08);transform:translateY(-1px); }
    .nyx-fullcart-link { text-align:center;font-size:var(--text-xs);color:var(--text-muted);text-decoration:none;transition:color var(--transition-fast); }
    .nyx-fullcart-link:hover { color:var(--accent); }
    @media (max-width:480px) { .nyx-item { padding:10px 14px; } .nyx-drawer__header,.nyx-drawer__footer { padding-left:14px;padding-right:14px; } }
