/* ════ Gece Mührü v1.2.1 — premium Dükkân + Dedektif Bileti + genel cila ════
   Altın varak çerçeveler, degrade dokular, el yapımı SVG ürün çizimleri, parlak fiyat hapları, kurdeleler, giriş animasyonları.
   prefers-reduced-motion ve "Hareketi azalt" ayarına uyar. 360×640'ta da tek sütun düzgün akar. */
:root { --foil: linear-gradient(135deg, #6b4f1f 0%, #f6e2a8 18%, #a37d3a 38%, #f1d79a 55%, #7a5a26 75%, #e9c77a 100%);
  --pz-card: linear-gradient(180deg, #1d1810 0%, #110e09 100%); --pz-glow: 0 10px 26px rgba(0,0,0,.55); }
.pz-in { animation: pzIn .5s cubic-bezier(.2, 1.2, .4, 1) both; animation-delay: var(--d, 0ms); }
@keyframes pzIn { from { opacity: 0; transform: translateY(14px) scale(.97); } }
.sart { width: 100%; height: 100%; display: block; overflow: visible; }
.sart__tw { animation: pzTw 1.8s ease-in-out infinite; transform-box: fill-box; transform-origin: center; }
.sart__tw--2 { animation-delay: .9s; }
@keyframes pzTw { 0%, 100% { opacity: 0; transform: scale(.3); } 50% { opacity: 1; transform: scale(1.2); } }
.sart__beat { animation: pzBeat 1.4s ease-in-out infinite; transform-box: fill-box; transform-origin: center; }
@keyframes pzBeat { 0%, 100% { transform: scale(1); } 15% { transform: scale(1.08); } 30% { transform: scale(.98); } }

/* Fiyat hapı: parlak altın */
.pz-price { position: relative; overflow: hidden; display: inline-flex; align-items: center; justify-content: center; min-width: 84px; padding: 7px 14px; border-radius: 99px; font: 800 15px var(--f-ui); color: #1b1408; white-space: nowrap;
  background: linear-gradient(180deg, #fff6d0 0%, #f1d79a 35%, #d6a948 70%, #a87a1c 100%); box-shadow: 0 0 0 1.5px #5a3a0a, 0 3px 0 #5a3a0a, 0 6px 12px rgba(0,0,0,.45), inset 0 1px 0 rgba(255,255,255,.75); }
.pz-price::after, .pz-buy::after { content: ''; position: absolute; top: 0; bottom: 0; width: 45%; left: -70%; background: linear-gradient(100deg, transparent, rgba(255,255,255,.7), transparent); animation: pzShine 3.2s ease-in-out infinite; }
@keyframes pzShine { 55%, 100% { left: 140%; } }
.pz-buy { position: relative; overflow: hidden; display: flex; align-items: center; justify-content: center; gap: 10px; width: 100%; min-height: 50px; padding: 8px 14px; border: 0; border-radius: 99px; cursor: pointer; font: 800 16px var(--f-ui); color: #1b1408;
  background: linear-gradient(180deg, #fff6d0 0%, #f1d79a 30%, #d6a948 70%, #a87a1c 100%); box-shadow: 0 0 0 2px #5a3a0a, 0 5px 0 #5a3a0a, 0 10px 20px rgba(0,0,0,.5), inset 0 2px 0 rgba(255,255,255,.7); }
.pz-buy:active { transform: translateY(3px); box-shadow: 0 0 0 2px #5a3a0a, 0 2px 0 #5a3a0a, inset 0 2px 0 rgba(255,255,255,.7); }
.pz-buy .pz-price { background: rgba(42,26,6,.9); color: #ffe7a8; box-shadow: none; min-width: 0; }
.pz-buy .pz-price::after { display: none; }
.pz-buy .ico { width: 20px; height: 20px; }
.pz-buy--xl { min-height: 58px; font-size: 17px; }

/* Kurdele */
.pz-ribbon { position: absolute; z-index: 3; top: -9px; left: 50%; transform: translateX(-50%); padding: 4px 14px; white-space: nowrap; font: 800 10.5px var(--f-ui); letter-spacing: .06em; text-transform: uppercase; color: #2a1a06;
  background: linear-gradient(180deg, #fff1c4, #e3b85c 55%, #a77a2c); clip-path: polygon(0 0, 100% 0, 94% 50%, 100% 100%, 0 100%, 6% 50%); filter: drop-shadow(0 3px 4px rgba(0,0,0,.5)); display: inline-flex; gap: 4px; align-items: center; }
.pz-ribbon .ico { width: 12px; height: 12px; }
.pz-ribbon--green { color: #eafff2; background: linear-gradient(180deg, #5fd08f, #1f7a49); }
.pz-ribbon--red { color: #fff3df; background: linear-gradient(180deg, #e0574c, #8e1b1b); left: 18px; transform: none; }
.pz-tag { font-style: normal; font: 700 11px var(--f-ui); color: #7fe0a8; }

/* Dükkân başlığı ve bakiye */
.shop .screen-head h1 { background: linear-gradient(180deg, #fffbe8, #ffd36a 55%, #c4861e); -webkit-background-clip: text; background-clip: text; -webkit-text-fill-color: transparent; filter: drop-shadow(0 2px 0 #2a1a06); }
.shop .balance[data-testid="shop-balance"] { display: flex; flex-wrap: wrap; gap: 8px; align-items: center; padding: 8px 12px; border-radius: 99px; background: linear-gradient(180deg, rgba(36,28,16,.95), rgba(14,11,8,.95)); box-shadow: 0 0 0 1px #8c6a2f, var(--pz-glow); width: fit-content; }
.shop .balance[data-testid="shop-balance"] > b { font-size: 18px; color: #bfe9ff; }
.shop .balance__altin b { color: #ffe08a; }

/* Reklam kartları */
.pz-ads { display: grid; gap: 10px; margin-top: 12px; }
.pz-ad.free-card { position: relative; display: grid; grid-template-columns: 58px 1fr auto; gap: 10px; align-items: center; padding: 10px 12px; border-radius: 18px; border: 0;
  background: radial-gradient(120% 140% at 0% 0%, rgba(214,178,106,.22), transparent 55%), var(--pz-card); box-shadow: 0 0 0 1.5px #8c6a2f, 0 0 0 3px rgba(214,178,106,.12), var(--pz-glow); }
.pz-ad--gem.free-card { background: radial-gradient(120% 140% at 0% 0%, rgba(95,208,143,.2), transparent 55%), var(--pz-card); }
.pz-ad__art { width: 58px; height: 50px; }
.pz-ad.free-card > div { display: grid; grid-template-columns: 1fr; gap: 3px; min-width: 0; } .pz-ad > div b { font-size: 16px; line-height: 1.2; } .pz-ad > div small { color: var(--muted); font-size: 11.5px; line-height: 1.35; }
.pz-ad.free-card { margin-bottom: 0; } .pz-ad .btn { white-space: nowrap; }

/* Bölüm başlıkları: süslü çizgi */
.pz-h { display: flex; align-items: center; gap: 10px; margin: 22px 0 12px; font: 700 20px var(--f-display); color: var(--gold-hi); }
.pz-h::before, .pz-h::after { content: ''; flex: 1; height: 2px; background: linear-gradient(90deg, transparent, #b8924a, transparent); }
.pz-h span { display: inline-flex; gap: 6px; align-items: center; }

/* Elmas 3'lü ızgara */
.pz-packs.packs { display: grid; grid-template-columns: repeat(3, 1fr); gap: 10px; padding-top: 8px; }
.pz-pack.pack { position: relative; display: grid; justify-items: center; gap: 2px; padding: 16px 6px 10px; border: 0; border-radius: 18px; cursor: pointer; color: var(--text); overflow: visible;
  background: radial-gradient(90% 70% at 50% 30%, rgba(111,208,255,.22), transparent 70%), linear-gradient(180deg, #17222c, #0b1016); box-shadow: 0 0 0 1.5px #8c6a2f, 0 0 0 3px rgba(214,178,106,.14), var(--pz-glow), inset 0 1px 0 rgba(255,255,255,.08); }
.pz-pack--2.pack { box-shadow: 0 0 0 2px #e3b85c, 0 0 0 4px rgba(214,178,106,.3), 0 0 22px rgba(255,210,120,.3), var(--pz-glow); transform: translateY(-4px); }
.pz-pack--3.pack { background: radial-gradient(90% 70% at 50% 30%, rgba(255,210,120,.25), transparent 70%), linear-gradient(180deg, #2a2014, #120d07); }
.pz-pack__art { width: 100%; height: 72px; }
.pz-pack b { font: 800 22px var(--f-ui); color: #e8f8ff; text-shadow: 0 2px 0 #0e2f66, 0 0 12px rgba(111,208,255,.6); }
.pz-pack small { font-size: 11px; color: var(--muted); }
.pz-pack .pz-price { margin-top: 6px; min-width: 0; width: 100%; padding: 6px 4px; font-size: 13.5px; }

/* Çaylak kahraman kartı */
.pz-hero { position: relative; margin-top: 22px; display: grid; grid-template-columns: 96px 1fr; gap: 10px; padding: 18px 14px 14px; border-radius: 22px;
  background: radial-gradient(100% 120% at 0% 0%, rgba(255,210,120,.28), transparent 60%), radial-gradient(80% 80% at 100% 100%, rgba(179,38,42,.25), transparent 60%), linear-gradient(180deg, #2a2014, #100c07);
  box-shadow: 0 0 0 2px #2a1d0b, 0 0 0 4px #d6b26a, 0 0 0 5px #6b4f1f, var(--pz-glow); }
.pz-hero__art { width: 96px; height: 96px; align-self: center; }
.pz-hero__body h3 { margin: 2px 0 6px; font: 700 21px var(--f-display); color: #fff3cf; }
.pz-hero__list { list-style: none; margin: 0 0 8px; padding: 0; display: flex; flex-wrap: wrap; gap: 4px 10px; font-size: 12.5px; color: #e8dcc0; }
.pz-hero__list li { display: inline-flex; gap: 4px; align-items: center; } .pz-hero__list .ico { width: 14px; height: 14px; color: var(--gold); }
.pz-timer { margin: 0 0 10px; font-size: 12.5px; color: #ffb3a8; display: flex; gap: 6px; align-items: center; } .pz-timer b { color: #fff; font-variant-numeric: tabular-nums; } .pz-timer .ico { width: 14px; height: 14px; }

/* Mühürdar afişi */
.pz-prem.prem-card { margin-top: 22px; border: 0; border-radius: 22px; box-shadow: 0 0 0 2px #2a1d0b, 0 0 0 4px #d6b26a, 0 0 0 5px #6b4f1f, 0 0 30px rgba(255,210,120,.18), var(--pz-glow); }
.pz-prem .prem-card__body h2 { background: linear-gradient(180deg, #fffbe8, #ffd36a 55%, #c4861e); -webkit-background-clip: text; background-clip: text; -webkit-text-fill-color: transparent; }
.pz-prem .pz-buy { width: auto; padding: 8px 10px 8px 16px; }

/* Alt liste: ürün kartları */
.pz-offers.offers { display: grid; gap: 12px; }
.pz-offer.offer { position: relative; display: grid; grid-template-columns: 76px 1fr auto; gap: 10px; align-items: center; padding: 12px; border: 0; border-radius: 18px; text-align: left; cursor: pointer; color: var(--text); overflow: visible;
  background: radial-gradient(120% 120% at 0% 50%, rgba(214,178,106,.16), transparent 55%), var(--pz-card); box-shadow: 0 0 0 1.5px #8c6a2f, 0 0 0 3px rgba(214,178,106,.1), var(--pz-glow), inset 0 1px 0 rgba(255,240,200,.08); }
.pz-offer .pz-ribbon { left: auto; right: 16px; transform: none; }
.pz-offer__art { width: 76px; height: 64px; }
.pz-offer .offer__txt { display: grid; gap: 3px; } .pz-offer .offer__txt b { font-size: 15px; color: #fff3cf; } .pz-offer .offer__txt small { font-size: 12px; color: #b9b1a0; line-height: 1.35; }
.pz-offer.is-owned { cursor: default; box-shadow: 0 0 0 1.5px #3f8f63, var(--pz-glow); } .pz-offer.is-owned > .ico { color: #7fe0a8; width: 24px; height: 24px; }
.pz-soon.offer { margin-top: 12px; filter: saturate(.5); opacity: .8; cursor: default; }
.pz-restore { margin-top: 14px; border-radius: 99px; box-shadow: 0 0 0 1px #8c6a2f; }

/* ── Dedektif Bileti ── */
.pz-passhero { position: relative; display: grid; grid-template-columns: 104px 1fr; gap: 12px; align-items: center; padding: 14px; border-radius: 22px;
  background: radial-gradient(100% 140% at 0% 0%, rgba(255,210,120,.25), transparent 60%), linear-gradient(180deg, #221a10, #0f0b07); box-shadow: 0 0 0 1.5px #8c6a2f, var(--pz-glow); }
.pz-passhero__art { width: 104px; height: 88px; }
.pz-passhero h1 { margin: 2px 0 4px; font: 700 28px/1 var(--f-display); background: linear-gradient(180deg, #fffbe8, #ffd36a 55%, #c4861e); -webkit-background-clip: text; background-clip: text; -webkit-text-fill-color: transparent; }
.pz-passhero p { margin: 0; color: #c9bfae; }
.pz-prog.pass__prog { margin-top: 12px; padding: 12px; border-radius: 16px; background: var(--pz-card); box-shadow: 0 0 0 1px #6b4f1f; }
.pz-prog .bar { height: 12px; border-radius: 99px; background: #0a0806; box-shadow: inset 0 1px 3px #000; }
.pz-prog .bar i { border-radius: 99px; background: linear-gradient(180deg, #fff1c4, #e3b85c 50%, #a77a2c); box-shadow: 0 0 10px rgba(255,210,120,.6); }
.pz-gold { position: relative; margin-top: 18px; padding: 20px 14px 12px; border-radius: 22px; text-align: center; overflow: visible;
  background: radial-gradient(90% 80% at 50% 0%, rgba(255,214,120,.35), transparent 65%), linear-gradient(180deg, #2c2212, #0f0b07); box-shadow: 0 0 0 2px #2a1d0b, 0 0 0 4px #d6b26a, 0 0 0 5px #6b4f1f, 0 0 34px rgba(255,210,120,.25), var(--pz-glow); }
.pz-gold h3 { margin: 4px 0 8px; display: inline-flex; gap: 6px; align-items: center; font: 700 24px var(--f-display); color: #ffe7a8; }
.pz-gold__tot { list-style: none; margin: 0 0 12px; padding: 0; display: grid; grid-template-columns: repeat(4, 1fr); gap: 6px; }
.pz-gold__tot li { display: grid; justify-items: center; padding: 6px 2px; border-radius: 14px; background: rgba(0,0,0,.35); box-shadow: inset 0 0 0 1px rgba(214,178,106,.25); }
.pz-gold__tot .sart { width: 54px; height: 44px; } .pz-gold__tot b { font: 800 17px var(--f-ui); color: #fff3cf; } .pz-gold__tot small { font-size: 10.5px; color: var(--muted); }
.pz-owned.pass__owned { margin-top: 14px; padding: 12px; border-radius: 16px; text-align: center; font-weight: 800; color: #2a1a06; background: linear-gradient(180deg, #fff1c4, #e3b85c 55%, #a77a2c); box-shadow: var(--pz-glow); }
.pz-cols.pass__cols { margin-top: 16px; display: grid; grid-template-columns: 1fr 40px 1fr; text-align: center; font: 800 12px var(--f-ui); letter-spacing: .08em; text-transform: uppercase; color: var(--muted); }
.pz-cols .is-gold { color: #ffd36a; display: inline-flex; gap: 4px; justify-content: center; align-items: center; } .pz-cols .ico { width: 14px; height: 14px; }
.pz-list.pass__list { list-style: none; margin: 6px 0 0; padding: 0; display: grid; gap: 8px; position: relative; }
.pz-list li { display: grid; grid-template-columns: 1fr 40px 1fr; gap: 6px; align-items: stretch; animation: pzIn .45s both; animation-delay: var(--d); }
.pz-tier.pass__tier { display: grid; place-items: center; align-self: center; width: 36px; height: 36px; margin: 0 auto; border-radius: 50%; font: 800 14px var(--f-ui); color: #8a8070; background: #15110b; box-shadow: 0 0 0 2px #3a2f20; }
.pz-list li.is-reach .pz-tier { color: #2a1a06; background: radial-gradient(circle at 40% 30%, #fffbe8, #e3b85c 60%, #a77a2c); box-shadow: 0 0 0 2px #5a3a0a, 0 0 12px rgba(255,210,120,.5); }
.pz-list li.is-next .pz-tier { color: #fff; box-shadow: 0 0 0 2px #e3b85c; animation: m3pulse 1.6s infinite; }
.pz-cell.pass__cell { position: relative; display: grid; grid-template-columns: 44px 1fr; gap: 6px; align-items: center; min-height: 58px; padding: 6px 8px; border: 0; border-radius: 14px; text-align: left; color: #d8cfbb; font-size: 11.5px;
  background: linear-gradient(180deg, #1a2026, #0e1216); box-shadow: 0 0 0 1px #2c3640; overflow: hidden; }
.pz-cell.is-prem { background: linear-gradient(180deg, #2a2014, #120d07); box-shadow: 0 0 0 1.5px #8c6a2f; }
.pz-cell.is-prem::before { content: ''; position: absolute; inset: 0; background: linear-gradient(100deg, transparent 30%, rgba(255,236,170,.14) 50%, transparent 70%); background-size: 250% 100%; animation: pzCol 4s linear infinite; pointer-events: none; }
@keyframes pzCol { from { background-position: 150% 0; } to { background-position: -100% 0; } }
.pz-cell__art { width: 44px; height: 38px; }
.pz-cell small { line-height: 1.2; }
.pz-cell.is-future, .pz-cell.is-locked { opacity: .62; } .pz-cell.is-locked .pz-cell__art { filter: grayscale(.6) brightness(.8); }
.pz-cell.is-ready { box-shadow: 0 0 0 2px #ffd36a, 0 0 16px rgba(255,210,120,.55); cursor: pointer; animation: pzReady 1.4s ease-in-out infinite; }
@keyframes pzReady { 50% { box-shadow: 0 0 0 2px #fff1c4, 0 0 24px rgba(255,210,120,.85); } }
.pz-cell.is-got { box-shadow: 0 0 0 1.5px #3f8f63; } .pz-cell.is-got .pz-cell__art { opacity: .55; }
.pz-cell__st { position: absolute; top: 4px; right: 4px; display: grid; place-items: center; min-width: 20px; height: 20px; padding: 0 6px; border-radius: 99px; font: 800 11px var(--f-ui); background: rgba(0,0,0,.6); color: #c9bfae; }
.pz-cell__st .ico { width: 12px; height: 12px; }
.pz-cell__st--got { background: #2f8f5a; color: #fff; } .pz-cell__st--go { background: linear-gradient(180deg, #fff1c4, #d6a948); color: #2a1a06; }

@media (max-width: 380px) {
  .pz-packs.packs { gap: 7px; } .pz-pack b { font-size: 18px; } .pz-pack .pz-price { font-size: 12px; }
  .pz-offer.offer { grid-template-columns: 58px 1fr; } .pz-offer .pz-price { grid-column: 1 / -1; justify-self: end; } .pz-offer__art { width: 58px; height: 52px; }
  .pz-hero { grid-template-columns: 70px 1fr; } .pz-hero__art { width: 70px; height: 70px; }
  .pz-cell.pass__cell { grid-template-columns: 34px 1fr; font-size: 10.5px; } .pz-cell__art { width: 34px; height: 30px; }
  .pz-gold__tot .sart { width: 42px; height: 36px; }
}
@media (prefers-reduced-motion: reduce) { .pz-in, .pz-list li, .sart__tw, .sart__beat, .pz-price::after, .pz-buy::after, .pz-cell.is-prem::before, .pz-cell.is-ready, .pz-list li.is-next .pz-tier { animation: none !important; } }
html.reduce-motion .pz-in, html.reduce-motion .pz-list li, html.reduce-motion .sart__tw, html.reduce-motion .sart__beat, html.reduce-motion .pz-price::after, html.reduce-motion .pz-buy::after, html.reduce-motion .pz-cell.is-prem::before, html.reduce-motion .pz-cell.is-ready { animation: none !important; }

/* ═════ v1.2.1 Tüm uygulama premium katmanı (yalnızca CSS; ekran JS'sine dokunmaz) ═════ */
.tabbar { background: linear-gradient(0deg, rgba(9,7,5,.98), rgba(22,17,11,.94)); border-top: 1px solid rgba(214,178,106,.28); box-shadow: 0 -10px 30px rgba(0,0,0,.45); }
.tabbar__t.is-on { color: #ffe39a; text-shadow: 0 0 14px rgba(255,214,120,.45); }
.tabbar__t.is-on .ico { filter: drop-shadow(0 0 6px rgba(255,214,120,.55)); }
.tabbar__t.is-on::before { width: 34px; height: 3px; background: linear-gradient(90deg, transparent, #ffd977, transparent); }
.topbar { box-shadow: 0 8px 24px rgba(0,0,0,.35); }
.btn--gold { position: relative; overflow: hidden; background: linear-gradient(180deg, #ffeeb8, #f0c766 45%, #c89236); box-shadow: 0 8px 22px -10px rgba(214,178,106,.8), inset 0 1px 0 rgba(255,255,255,.7), inset 0 -2px 0 rgba(120,72,10,.35); }
.btn--gold:not(:disabled)::after { content: ''; position: absolute; inset: 0; background: linear-gradient(110deg, transparent 35%, rgba(255,255,255,.45) 50%, transparent 65%); transform: translateX(-120%); animation: pzSheen 5.5s ease-in-out infinite; pointer-events: none; }
@keyframes pzSheen { 0%, 70% { transform: translateX(-120%); } 85%, 100% { transform: translateX(120%); } }
.tile-link, .free-card:not(.pz-ad), .card-streak, .card-daily, .card-pass, .altin-card { border-color: rgba(214,178,106,.28); background-image: radial-gradient(120% 120% at 0 0, rgba(214,178,106,.10), transparent 55%); box-shadow: 0 10px 24px -14px rgba(0,0,0,.8), inset 0 1px 0 rgba(255,255,255,.04); }
.tile-link:active, .card-social nav a:active { transform: scale(.98); }
.modal__card, .modal .card { box-shadow: 0 0 0 1.5px rgba(214,178,106,.55), 0 30px 60px rgba(0,0,0,.6); }
.eyebrow { letter-spacing: .14em; }
@media (prefers-reduced-motion: reduce) { .btn--gold::after { animation: none; display: none; } }
/* v1.2.3: reklam ödül kartlarında başlık + açıklama tek sütunda alt alta (dar orta sütun düzeltmesi) */
.pz-ads .pz-ad.free-card > div { display: flex; flex-direction: column; align-items: flex-start; gap: 3px; min-width: 0; }
.pz-ads .pz-ad.free-card > div b { font-size: 16px; line-height: 1.2; }
.pz-ads .pz-ad.free-card > div small { display: block; }
@media (max-width: 380px) { .pz-ads .pz-ad.free-card { grid-template-columns: 46px 1fr auto; padding: 10px; } .pz-ads .pz-ad__art { width: 46px; height: 42px; } }
