:root{
  --bg0:#070a10;
  --bg1:#0b0f17;
  --text:#eef3ff;
  --muted:rgba(238,243,255,.68);
  --line:rgba(255,255,255,.10);
  --line2:rgba(255,255,255,.07);
  --leaf:#7aa874;
  --leaf2:#4f7f55;
  --radius:18px;
}

*{box-sizing:border-box}
html,body{height:100%}

body{
  margin:0;
  color:var(--text);
  font-family: ui-sans-serif, system-ui, -apple-system, Segoe UI, Roboto, Helvetica, Arial;
  background:
    radial-gradient(900px 420px at 15% 5%, rgba(122,168,116,.16), transparent 60%),
    radial-gradient(700px 380px at 85% 0%, rgba(79,127,85,.12), transparent 55%),
    linear-gradient(180deg, var(--bg0), var(--bg1));
  overflow-x:hidden;
}

/* Leaf overlay */
body::before{
  content:"";
  position:fixed;
  inset:0;
  pointer-events:none;
  z-index:0;
  background-image:
    radial-gradient(1200px 500px at 10% 0%, rgba(122,168,116,.10), transparent 60%),
    radial-gradient(900px 450px at 90% 10%, rgba(79,127,85,.08), transparent 55%);
  opacity:.9;
  mix-blend-mode: screen;
}

.topbar, .wrap, .footerbar{position:relative; z-index:1;}

.topbar{
  position:sticky; top:0; z-index:50;
  backdrop-filter: blur(14px);
  background: linear-gradient(to bottom, rgba(7,10,16,.92), rgba(7,10,16,.72));
  border-bottom:1px solid var(--line);
}

.topbar-inner{
  max-width:980px;
  margin:0 auto;
  padding:14px 14px;
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:12px;
}

.brand{display:flex; gap:10px; align-items:center}
.logo{
  width:44px;height:44px;border-radius:14px;
  background: linear-gradient(135deg, rgba(122,168,116,.95), rgba(79,127,85,.65));
  display:grid; place-items:center;
  font-weight:900; color:#0b120f;
}
.brand h1{font-size:16px;margin:0;line-height:1.1}
.brand p{margin:2px 0 0;color:var(--muted);font-size:12.2px}

.pill{
  font-size:12px;color:var(--muted);
  border:1px solid var(--line2);
  padding:9px 11px;border-radius:999px;
  display:flex;align-items:center;gap:8px;
  background: rgba(255,255,255,.04);
}
.pill strong{color:var(--text);font-weight:800}

.wrap{max-width:980px;margin:0 auto;padding:18px 14px 98px}

.search{
  margin-top:14px;
  display:flex;gap:10px;align-items:center;
  background: rgba(255,255,255,.04);
  border:1px solid var(--line2);
  border-radius:999px;
  padding:11px 12px;
}
.search input{
  width:100%;
  background:transparent;
  border:0; outline:0;
  color:var(--text);
  font-size:14px;
}
.search input::placeholder{color:rgba(238,243,255,.55)}

.cats{
  margin-top:12px;
  display:flex;gap:8px;
  overflow:auto;
  padding-bottom:6px;
}
.cat-btn{
  white-space:nowrap;
  border:1px solid var(--line2);
  background: rgba(255,255,255,.035);
  color:var(--text);
  padding:10px 12px;
  border-radius:999px;
  cursor:pointer;
  font-size:13px;
}
.cat-btn.active{
  background: rgba(122,168,116,.13);
  border-color: rgba(122,168,116,.38);
}

.section{margin-top:18px}

/* Kategori yaprak ikonu */
.section h2{
  position:relative;
  padding-left:22px;
  margin:18px 0 10px;
  font-size:15.5px;
  display:flex;
  align-items:center;
  gap:10px;
}
.section h2::before{
  content:"";
  position:absolute;
  left:0;
  top:50%;
  transform:translateY(-50%);
  width:14px;height:14px;
  background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='24' height='24' viewBox='0 0 24 24'%3E%3Cpath d='M20 4c-7 1-12 6-14 10-2 4 0 6 0 6s2 2 6 0c4-2 9-7 10-14-1-1-2-2-2-2z' fill='rgba(122,168,116,0.85)'/%3E%3Cpath d='M6 20c2-4 6-8 12-12' stroke='rgba(238,243,255,0.35)' stroke-width='1.6' stroke-linecap='round'/%3E%3C/svg%3E");
  background-repeat:no-repeat;
  background-size:contain;
  opacity:.9;
}

.badge{
  font-size:11px;
  color:rgba(238,243,255,.62);
  border:1px solid var(--line2);
  padding:4px 8px;
  border-radius:999px;
  background: rgba(255,255,255,.03);
}

.grid{display:grid;grid-template-columns:1fr;gap:10px}
@media(min-width:720px){ .grid{grid-template-columns:1fr 1fr} }

.item{
  background:
    radial-gradient(220px 120px at 20% 20%, rgba(122,168,116,.12), transparent 60%),
    linear-gradient(180deg, rgba(255,255,255,.055), rgba(255,255,255,.03));
  border:1px solid rgba(255,255,255,.09);
  border-radius:var(--radius);
  padding:12px;
  display:flex;
  gap:12px;
  min-height:112px;
  overflow:hidden;
}

.thumb{
  width:78px;height:78px;border-radius:16px;
  border:1px solid rgba(255,255,255,.10);
  background: rgba(255,255,255,.04);
  display:grid;place-items:center;
  font-weight:900;
  color:rgba(238,243,255,.92);

  position:relative;
  overflow:hidden;
}

/* ✅ Görsel kesin görünür */
.thumb img{
  width:100%;
  height:100%;
  object-fit:cover;
  display:block;
  border-radius:inherit;
}

/* Hafif premium overlay */
.thumb::after{
  content:"";
  position:absolute;
  inset:0;
  border-radius:inherit;
  background: linear-gradient(180deg, rgba(0,0,0,0.05), rgba(0,0,0,0.35));
  pointer-events:none;
}

.meta{flex:1;display:flex;flex-direction:column;gap:6px}
.title-row{display:flex;gap:10px;align-items:flex-start;justify-content:space-between}
.name{font-weight:900;font-size:14.2px;margin:0}
.desc{margin:0;color:rgba(238,243,255,.68);font-size:12.6px;line-height:1.38}
.price{font-weight:950;font-size:14px;white-space:nowrap}
.price::before{
  content:"";
  display:inline-block;
  width:8px;height:8px;border-radius:999px;
  margin-right:8px;
  background: rgba(122,168,116,.65);
  box-shadow:0 0 0 3px rgba(122,168,116,.12);
  transform:translateY(-1px);
}

.tags{display:flex;gap:6px;flex-wrap:wrap}
.tag{
  font-size:11px;
  padding:4px 9px;
  border-radius:999px;
  border:1px solid rgba(255,255,255,.10);
  color:rgba(238,243,255,.70);
  background: rgba(255,255,255,.03);
}
.tag.pop{
  border-color: rgba(255,255,255,.14);
  color: rgba(238,243,255,.92);
  background: rgba(255,255,255,.06)
}
.tag.hot{
  border-color: rgba(122,168,116,.42);
  color: rgba(238,243,255,.92);
  background: rgba(122,168,116,.14)
}

.hr{height:1px;background:rgba(255,255,255,.10);margin:12px 0}
.hint{font-size:12px;color:rgba(238,243,255,.62)}
.empty{
  margin-top:18px;
  border:1px dashed rgba(255,255,255,.16);
  border-radius:var(--radius);
  padding:16px;
  color:rgba(238,243,255,.70);
  background: rgba(255,255,255,.025);
}

.footerbar{
  position:fixed;left:0;right:0;bottom:0;z-index:60;
  border-top:1px solid rgba(255,255,255,.10);
  background: rgba(7,10,16,.78);
  backdrop-filter: blur(14px);
}
.footer-inner{
  max-width:980px;margin:0 auto;
  padding:10px 14px;
  display:flex;gap:10px;align-items:center;justify-content:space-between
}
.btn{
  border:1px solid rgba(255,255,255,.12);
  background: rgba(255,255,255,.04);
  color:var(--text);
  padding:10px 12px;border-radius:14px;
  font-weight:800;
  cursor:pointer;
  display:inline-flex;align-items:center;gap:8px;
  text-decoration:none;
}
.btn.primary{
  background: linear-gradient(135deg, rgba(122,168,116,.95), rgba(79,127,85,.70));
  border-color: rgba(122,168,116,.50);
  color:#0b120f;
}
.btn.success{
  background: linear-gradient(135deg, rgba(238,243,255,.18), rgba(238,243,255,.06));
  border-color: rgba(255,255,255,.16);
}

/* =========================================
   Robin Kafe — Calm Leaf Background (v2)
   - Yapraklar geri gelir (göz yormaz)
   - Hafif renk geçişi geri gelir
   - Cam/blur yok
   ========================================= */

/* 1) Arkaplan: çok hafif yeşil tonlu geçiş */
body{
  background:
    radial-gradient(900px 520px at 12% 18%, rgba(122,168,116,.10), transparent 62%),
    radial-gradient(760px 460px at 88% 10%, rgba(79,127,85,.08), transparent 58%),
    linear-gradient(180deg, #070a10 0%, #0b0f17 55%, #070a10 100%) !important;
}

/* 2) Yaprak overlay: tek seferde net tanım (görünür ama sakin) */
body::before{
  content:"";
  position: fixed;
  inset: 0;
  pointer-events: none;
  z-index: 0;

  background-image:
    url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='520' height='520' viewBox='0 0 520 520'%3E%3Cg fill='none'%3E%3Cg opacity='1'%3E%3Cpath d='M120 420C95 310 145 205 230 150c78-50 165-40 215-115-20 80-10 150-60 210-55 68-150 110-210 175-18 20-35 35-55 0z' fill='rgba(122,168,116,0.22)'/%3E%3Cpath d='M155 420c20-65 55-125 105-175 55-55 120-95 190-120' stroke='rgba(238,243,255,0.10)' stroke-width='2.1' stroke-linecap='round'/%3E%3C/g%3E%3C/g%3E%3C/svg%3E"),
    url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='520' height='520' viewBox='0 0 520 520'%3E%3Cg fill='none'%3E%3Cg opacity='1'%3E%3Cpath d='M410 90c-75 30-125 80-150 145-24 62-20 130-80 200 95-45 160-115 185-190 18-52 12-110 45-155z' fill='rgba(79,127,85,0.18)'/%3E%3Cpath d='M395 95c-60 55-105 120-130 190-18 50-25 95-55 140' stroke='rgba(238,243,255,0.08)' stroke-width='2' stroke-linecap='round'/%3E%3C/g%3E%3C/g%3E%3C/svg%3E"),
    url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='520' height='520' viewBox='0 0 520 520'%3E%3Cg fill='none'%3E%3Cg opacity='1'%3E%3Cpath d='M450 520c-25-120-80-205-160-255-70-44-155-52-220-160 10 120 55 205 125 260 72 56 170 78 240 155 10 11 20 10 15 0z' fill='rgba(122,168,116,0.16)'/%3E%3Cpath d='M440 520c-50-75-120-125-205-160-60-25-120-35-170-85' stroke='rgba(238,243,255,0.07)' stroke-width='2.0' stroke-linecap='round'/%3E%3C/g%3E%3C/g%3E%3C/svg%3E");

  background-repeat: no-repeat, no-repeat, no-repeat;
  background-size: 420px 420px, 330px 330px, 460px 460px;
  background-position:
    left -150px top -150px,
    right -150px top -120px,
    right -190px bottom -210px;

  /* GÖZ YORMAYAN görünürlük */
  opacity: .75;
  mix-blend-mode: normal;
  filter: saturate(1.05);
}

/* 3) Yaprakların üstte kalmaması için içerik layer'ı */
.topbar, .wrap, .footerbar{ position: relative; z-index: 1; }

/* 4) Cam/blur kapalı, solid bar */
.topbar{
  backdrop-filter: none !important;
  background: rgba(7,10,16,.98) !important;
  border-bottom: 1px solid rgba(255,255,255,.08) !important;
}
.footerbar{
  backdrop-filter: none !important;
  background: rgba(7,10,16,.98) !important;
  border-top: 1px solid rgba(255,255,255,.08) !important;
}

/* 5) Kartlar: daha solid, daha az parlama */
.item{
  background: linear-gradient(180deg, rgba(255,255,255,.055), rgba(255,255,255,.03)) !important;
  border: 1px solid rgba(255,255,255,.10) !important;
  box-shadow: 0 14px 34px rgba(0,0,0,.35) !important;
}

/* 6) Search / kategori butonları: daha az “cam” */
.search{
  background: rgba(255,255,255,.05) !important;
  border: 1px solid rgba(255,255,255,.10) !important;
}
.cat-btn{
  background: rgba(255,255,255,.04) !important;
  border: 1px solid rgba(255,255,255,.10) !important;
}
.cat-btn.active{
  background: rgba(122,168,116,.16) !important;
  border-color: rgba(122,168,116,.42) !important;
}

/* 7) Okla işaretli “bant” hissini azalt (arka planın section'a yansımasını önler) */
.section{ background: transparent !important; }

/* ===== Smooth background blend (banding/çizgi yok) ===== */
body{
  /* daha yumuşak, uzun geçiş + düşük kontrast */
  background:
    radial-gradient(1200px 700px at 12% 18%, rgba(122,168,116,.09), transparent 68%),
    radial-gradient(1100px 640px at 88% 12%, rgba(79,127,85,.07), transparent 70%),
    radial-gradient(1200px 800px at 55% 105%, rgba(255,255,255,.03), transparent 75%),
    linear-gradient(180deg,
      #070a10 0%,
      #080c13 18%,
      #0b0f17 52%,
      #0a0e15 78%,
      #070a10 100%
    ) !important;
}

/* Yaprak overlay aynı kalsın ama banding azalt */
body::before{
  opacity: .68 !important;           /* biraz daha sakin */
  filter: saturate(1.03) blur(.2px);  /* çok hafif blur bandingi kırar */
}

/* =========================
   BACKGROUND • PREMIUM + LEAF (INLINE SVG)
   Fix: harsh banding/line
   ========================= */

body{
  /* yumuşak renk uyumu: keskin durak yok */
  background:
    radial-gradient(1200px 800px at 12% 18%, rgba(111,143,121,.12), transparent 72%),
    radial-gradient(1000px 700px at 92% 14%, rgba(143,181,154,.08), transparent 74%),
    radial-gradient(1200px 900px at 55% 115%, rgba(255,255,255,.025), transparent 72%),
    linear-gradient(180deg,
      #070a0c 0%,
      #080c10 22%,
      #0b0f13 52%,
      #0a0e12 78%,
      #070a0c 100%
    ) !important;
}

/* banding (çizgi) kırıcı: ultra hafif noise layer */
body::after{
  content:"";
  position:fixed;
  inset:0;
  pointer-events:none;
  z-index:0;
  background-image:
    repeating-linear-gradient(
      0deg,
      rgba(255,255,255,.010) 0px,
      rgba(255,255,255,.010) 1px,
      rgba(0,0,0,0) 2px,
      rgba(0,0,0,0) 7px
    ),
    repeating-linear-gradient(
      90deg,
      rgba(255,255,255,.008) 0px,
      rgba(255,255,255,.008) 1px,
      rgba(0,0,0,0) 2px,
      rgba(0,0,0,0) 8px
    );
  opacity:.22;
  mix-blend-mode: overlay;
}

/* yaprak overlay (inline svg) */
body::before{
  content:"";
  position:fixed;
  inset:0;
  pointer-events:none;
  z-index:0;
  opacity:.9; /* artır/azalt: 0.55 - 0.85 arası güzel */

  background-repeat:no-repeat;
  background-size: 560px, 460px, 580px;
  background-position:
    -170px -120px,
    calc(100% + 170px) 170px,
    -210px calc(100% + 170px);

  background-image:
    url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='520' height='520' viewBox='0 0 520 520'%3E%3Cg fill='none'%3E%3Cg opacity='1'%3E%3Cpath d='M120 420C95 310 145 205 230 150c78-50 165-40 215-115-20 80-10 150-60 210-55 68-150 110-210 175-18 20-35 35-55 0z' fill='rgba(122,168,116,0.22)'/%3E%3Cpath d='M155 420c20-65 55-125 105-175 55-55 120-95 190-120' stroke='rgba(238,243,255,0.10)' stroke-width='2.1' stroke-linecap='round'/%3E%3C/g%3E%3C/g%3E%3C/svg%3E"),
    url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='520' height='520' viewBox='0 0 520 520'%3E%3Cg fill='none'%3E%3Cg opacity='1'%3E%3Cpath d='M410 90c-75 30-125 80-150 145-24 62-20 130-80 200 95-45 160-115 185-190 18-52 12-110 45-155z' fill='rgba(79,127,85,0.18)'/%3E%3Cpath d='M395 95c-60 55-105 120-130 190-18 50-25 95-55 140' stroke='rgba(238,243,255,0.08)' stroke-width='2' stroke-linecap='round'/%3E%3C/g%3E%3C/g%3E%3C/svg%3E"),
    url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='520' height='520' viewBox='0 0 520 520'%3E%3Cg fill='none'%3E%3Cg opacity='1'%3E%3Cpath d='M450 520c-25-120-80-205-160-255-70-44-155-52-220-160 10 120 55 205 125 260 72 56 170 78 240 155 10 11 20 10 15 0z' fill='rgba(122,168,116,0.16)'/%3E%3Cpath d='M440 520c-50-75-120-125-205-160-60-25-120-35-170-85' stroke='rgba(238,243,255,0.07)' stroke-width='2.0' stroke-linecap='round'/%3E%3C/g%3E%3C/g%3E%3C/svg%3E");
}

/* içerik katmanı yaprak/noise üstüne gelsin */
.topbar, .wrap, .footerbar{ position:relative; z-index:1; }


/* ==========================================
   FIX: TON FARKI YOK (ALT TON SABİT)
   - Alt ton baz alınır
   - Gradient var ama DİKEY DEĞİL (yukarı-aşağı fark yapmaz)
   - Yaprak overlay aynı kalır
   - Noise/banding yok
   ========================================== */

/* 1) Noise/banding katmanı kapalı (sende vardı) */
body::after{
  content: none !important;
  display: none !important;
}

/* 2) Zemin: ALT TON SABİT + sadece “merkezli” yumuşak ışık (dikey geçiş yok) */
body{
  background-color: #0a0e14 !important; /* senin istediğin alt ton */
  background-image:
    radial-gradient(1200px 900px at 18% 25%, rgba(122,168,116,.10), transparent 72%),
    radial-gradient(1200px 900px at 82% 30%, rgba(79,127,85,.08), transparent 74%),
    radial-gradient(1400px 1000px at 50% 55%, rgba(255,255,255,.025), transparent 78%) !important;
  background-repeat: no-repeat !important;
  background-attachment: fixed !important; /* scroll’da ton oynamasını engeller */
}

/* 3) Yaprak overlay kalsın ama ton farkı üretmesin */
body::before{
  mix-blend-mode: normal !important;
  filter: none !important;
  opacity: .72 !important;
}

/* ==========================================
   SECTION TITLE — ALT AYIRICI ÇİZGİ
   ========================================== */

.section h2{
  position: relative;
  padding-bottom: 10px; /* çizgi için boşluk */
}

/* Başlık altı çizgi */
.section h2::after{
  content: "";
  position: absolute;
  left: 0;
  bottom: 0;

  width: 160px;           /* çizgi uzunluğu */
  height: 1px;

  background: linear-gradient(
    to right,
    rgba(122,168,116,.55),
    rgba(122,168,116,.25),
    rgba(122,168,116,0)
  );

  opacity: .85;
}

