/* Pastel — eğlenceli: baloncuk kategoriler, renkli kartlar, yuvarlak çıkartma fotoğraflar */
.theme-pastel {
  --bg: #fff7fb; --surface: #ffffff; --surface-2: #fdeef6; --text: #3a1d35; --muted: #7c5a76; --faint: #c2a6bc;
  --line: rgba(58, 29, 53, .08); --radius: 30px; --price: var(--text);
  --k0: #ffe1ee; --k1: #e9e1ff; --k2: #d9f5ea; --k3: #ffe9d6; --k4: #dcefff;
  --r0: #ff8fbf; --r1: #a98bff; --r2: #4fcf9f; --r3: #ffa95e; --r4: #5fb3ff;
}
.theme-pastel [data-section] { scroll-margin-top: 16px; }
body.theme-pastel { font-weight: 450; }
.theme-pastel h1, .theme-pastel h2, .theme-pastel h3 { font-weight: 600; }

/* Şeker giriş */
.candy { position: relative; overflow: hidden; isolation: isolate; text-align: center; padding: calc(60px + var(--safe-t)) 22px 30px; }
.blob { position: absolute; z-index: -1; border-radius: 50%; filter: blur(2px); }
.b1 { width: 260px; height: 260px; top: -80px; inset-inline-start: -70px; background: var(--k0); }
.b2 { width: 220px; height: 220px; top: 30px; inset-inline-end: -80px; background: var(--k1); }
.b3 { width: 200px; height: 200px; bottom: -110px; inset-inline-start: 30%; background: var(--k2); }
.candy-top { position: absolute; top: calc(12px + var(--safe-t)); inset-inline: 12px; display: flex; justify-content: flex-end; z-index: 2; }
.candy .tool { background: color-mix(in srgb, var(--surface) 82%, transparent); color: var(--text); box-shadow: 0 4px 12px -6px rgba(58,29,53,.3); }
.bubble-cover { width: min(64vw, 260px); aspect-ratio: 1; margin: 0 auto -34px; border-radius: 46% 54% 50% 50% / 52% 46% 54% 48%; overflow: hidden; border: 6px solid #fff; box-shadow: 0 24px 40px -22px rgba(219, 39, 119, .55); animation: wobble 9s ease-in-out infinite; }
.bubble-cover img { width: 100%; height: 100%; object-fit: cover; }
@keyframes wobble { 50% { border-radius: 54% 46% 46% 54% / 46% 54% 48% 52%; } }
.sticker-logo { position: relative; width: 78px; height: 78px; margin: 0 auto 12px; border-radius: 26px; overflow: hidden; display: grid; place-items: center; background: var(--surface); transform: rotate(-6deg); box-shadow: 0 0 0 4px #fff, 0 12px 24px -10px rgba(58,29,53,.35); }
.sticker-logo img { width: 100%; height: 100%; object-fit: cover; }
.sticker-logo span { font-family: var(--font-head); font-size: 38px; font-weight: 700; color: var(--primary); }
.candy h1 { font-size: clamp(32px, 9vw, 46px); letter-spacing: -.02em; line-height: 1.05; text-wrap: balance; }
.tagline { color: var(--muted); font-size: 16px; margin: 8px auto 0; max-width: 400px; text-wrap: balance; }
.meta { display: flex; justify-content: center; flex-wrap: wrap; gap: 8px; margin-top: 14px; }
.meta .status-pill { background: var(--surface); box-shadow: 0 4px 12px -6px rgba(58,29,53,.25); }
.meta .table-pill { background: var(--primary); color: var(--on-primary); }

/* Renkli yuvarlak işlemler */
.acts { padding: 8px 14px 0; gap: 12px; }
.acts > .act:first-child { margin-inline-start: auto; }
.acts > .act:last-child { margin-inline-end: auto; }
.act { flex-direction: column; gap: 6px; width: auto; min-width: 68px; max-width: 96px; }
.act-ic { width: 56px; height: 56px; border-radius: 22px; background: var(--k0); color: var(--text); transform: rotate(-4deg); }
.act:nth-child(5n+2) .act-ic { background: var(--k1); transform: rotate(3deg); }
.act:nth-child(5n+3) .act-ic { background: var(--k2); transform: rotate(-2deg); }
.act:nth-child(5n+4) .act-ic { background: var(--k3); transform: rotate(4deg); }
.act:nth-child(5n+5) .act-ic { background: var(--k4); }
.act-ic .icon { width: 24px; height: 24px; }
.act-l { font-size: 12px; font-weight: 500; max-width: 100%; white-space: normal; text-align: center; line-height: 1.2; display: -webkit-box; -webkit-line-clamp: 2; -webkit-box-orient: vertical; overflow: hidden; overflow-wrap: anywhere; }
.banner { margin: 18px 16px 0; border-radius: 24px; background: var(--k3); box-shadow: none; }
.banner-ic { background: #fff; color: var(--r3); }

/* Baloncuk kategoriler */
.bubbles { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 16px 8px; padding: 28px 16px 8px; max-width: 640px; margin: 0 auto; }
.bub { display: flex; flex-direction: column; align-items: center; gap: 8px; text-align: center; }
.bub-img { width: min(24vw, 96px); aspect-ratio: 1; border-radius: 50%; overflow: hidden; display: grid; place-items: center; border: 4px solid #fff; box-shadow: 0 0 0 3px var(--ring-c, var(--r0)), 0 14px 22px -14px rgba(58,29,53,.5); transition: transform .3s var(--spring); }
.bub:active .bub-img { transform: scale(.92) rotate(-4deg); }
.bub-img img { width: 100%; height: 100%; object-fit: cover; }
.bub-img b { font-family: var(--font-head); font-size: 30px; color: var(--ring-c); }
.bub-t { font-size: 14px; font-weight: 600; line-height: 1.2; }
.c0 { --ring-c: var(--r0); --tint: var(--k0); } .c1 { --ring-c: var(--r1); --tint: var(--k1); } .c2 { --ring-c: var(--r2); --tint: var(--k2); } .c3 { --ring-c: var(--r3); --tint: var(--k3); } .c4 { --ring-c: var(--r4); --tint: var(--k4); }
.bub .bub-img { background: var(--tint); }

.main { max-width: 860px; margin: 0 auto; padding: 0 14px 30px; }

/* Bölümler */
.sec { padding-top: 38px; }
.sec-head { display: flex; align-items: center; justify-content: center; gap: 10px; text-align: center; padding-bottom: 14px; }
.sec-head h2 { position: relative; font-size: 28px; letter-spacing: -.02em; z-index: 0; }
.sec-head h2::before { content: ''; position: absolute; z-index: -1; inset-inline: -10px; bottom: 2px; height: 13px; border-radius: 10px; background: var(--tint); }
.cnt { display: grid; place-items: center; min-width: 28px; height: 28px; padding: 0 8px; border-radius: 999px; background: var(--ring-c); color: #2a1426; font-size: 13px; font-weight: 700; }
.sec-desc { text-align: center; color: var(--muted); margin: -6px 0 14px; }
.sec .sec-closed { display: flex; width: fit-content; max-width: 100%; margin: 0 auto 14px; }

/* Renkli kartlar, yuvarlak fotoğraflar */
.items { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 12px; }
.treat { display: flex; flex-direction: column; align-items: center; text-align: center; padding: 16px 12px 16px; border-radius: var(--radius); background: var(--k0); transition: transform .25s var(--spring); }
.treat:active { transform: scale(.96) rotate(-1deg); }
.treat.k1 { background: var(--k1); } .treat.k2 { background: var(--k2); } .treat.k3 { background: var(--k3); } .treat.k4 { background: var(--k4); }
.treat-img { width: 78%; aspect-ratio: 1; border-radius: 50%; overflow: hidden; border: 5px solid #fff; box-shadow: 0 16px 24px -16px rgba(58,29,53,.6); background: #fff; }
.treat-img img { width: 100%; height: 100%; object-fit: cover; }
.treat-img .ph { background: #fff; }
.treat-img .ph b { font-size: 40px; color: var(--primary); }
.treat .tags { justify-content: center; margin-top: 10px; min-height: 0; }
.treat h3 { font-family: var(--font-head); font-size: 16px; line-height: 1.2; margin-top: 8px; }
.treat .tags:empty + h3 { margin-top: 12px; }
.treat .price { margin-top: 8px; padding: 4px 12px; border-radius: 999px; background: #fff; font-weight: 600; font-size: 14.5px; }
.treat .add { position: absolute; top: 10px; inset-inline-end: 10px; width: 34px; height: 34px; background: #fff; color: var(--primary); box-shadow: 0 6px 14px -6px rgba(58,29,53,.45); }
.tag { background: rgba(255,255,255,.75); color: var(--text); }
@media (min-width: 640px) { .items { grid-template-columns: repeat(3, minmax(0, 1fr)); } .bubbles { grid-template-columns: repeat(auto-fit, minmax(110px, 1fr)); } }

/* Yüzen kategori düğmesi */
.theme-pastel { --dock-off: 60px; }
.fab { position: fixed; z-index: 44; inset-inline-start: 14px; bottom: calc(16px + var(--safe-b)); display: inline-flex; align-items: center; gap: 8px; height: 50px; padding: 0 18px 0 14px; border-radius: 999px; background: var(--text); color: #fff; font-weight: 600; font-size: 14.5px; box-shadow: 0 14px 30px -12px rgba(58,29,53,.6); transition: transform .3s var(--spring), opacity .3s; }
body:not(.scrolled) .fab { transform: translateY(90px); opacity: 0; }
.has-cart .fab { bottom: calc(86px + var(--safe-b)); }

.sheet-panel { border-radius: 32px 32px 0 0; }
@media (min-width: 640px) { .sheet-panel { border-radius: 32px; } }
.cta { box-shadow: 0 10px 24px -10px color-mix(in srgb, var(--primary) 70%, transparent); }
.cart-bar { background: var(--text); border-radius: 26px; }
.cart-count { border-radius: 16px; }
.cl-img { border-radius: 50%; }
.foot-social a { background: var(--k1); box-shadow: none; }

/* Kampanya kartı tasarımın yumuşak kartlarıyla aynı dilde */
.camp { border-radius: 22px; background: var(--k1); box-shadow: none; }
.camp-ic { border-radius: 14px; transform: rotate(-4deg); }

body.dm-on { --k0: #3a2232; --k1: #2c2640; --k2: #1f3a31; --k3: #3d2c1f; --k4: #1f3043; }
body.dm-on .treat .price, body.dm-on .treat .add, body.dm-on .treat-img, body.dm-on .bub-img { background: #17171a; border-color: #17171a; }
/* Koyu modda sabit renkli öğeler görünür kalsın */
body.dm-on .fab { background: #f4f1ea; color: #0c0c0e; }
body.dm-on .tag { background: rgba(255,255,255,.12); color: var(--text); }
body.dm-on .banner-ic { background: #17171a; }
body.dm-on .sticker-logo { box-shadow: 0 0 0 4px #17171a, 0 12px 24px -10px rgba(0,0,0,.6); }
@media (prefers-color-scheme: dark) {
  body.dm-auto { --k0: #3a2232; --k1: #2c2640; --k2: #1f3a31; --k3: #3d2c1f; --k4: #1f3043; }
  body.dm-auto .treat .price, body.dm-auto .treat .add, body.dm-auto .treat-img, body.dm-auto .bub-img { background: #17171a; border-color: #17171a; }
}
