/* ==========================================================================
   LUXURY — ŞANS ÇARKI (func/sanscarki.php ortak bileşeni) · her sayfada yüklenir · §21.3 + §11 pencere kabuğu
   Çekirdeğe dokunulmaz; görünüm Luxury pencere diline uyarlanır: 460 px beyaz kart, r12, gölgesiz, perde #000 .5;
   başlık 28/33 500, açıklama 15/22; dilimler sırayla #22201D / #F4F3F1 / #DBAF36 (yazı dilime göre beyaz / koyu, 12/16 700 büyük harf);
   merkez göbek 56 beyaz daire + altın pırıltı; gösterge üstte altın üçgen; "Çevir" birincil koyu tam genişlik (50);
   sonuç: kupon kodu kutusu kesik 1px altın r9, 18/24 700 ls 2 + "Kopyala" metin bağlantısı.
   SVG dilimleri JS ile `fill` niteliğiyle çizilir; CSS `fill` niteliği ezer. Açılış zamanlaması: temafooter.php.
   ========================================================================== */
:root { --ln-cark-boy: 300px; --ln-cark-gobek: 56px; }

/* ---------- perde + kart ---------- */
html body.lx-govde .bp-cark-ov { z-index: 3000; padding: 40px 16px; background: var(--lx-overlay); -webkit-backdrop-filter: none; backdrop-filter: none; font-family: var(--lx-font); overscroll-behavior: contain; }
html body.lx-govde .bp-cark-ov.open { animation: lxCarkPerde .3s ease-out both; }
html body.lx-govde .bp-cark-box { position: relative; width: 100%; max-width: 460px; max-height: calc(100dvh - 32px); overflow-y: auto; padding: 40px 32px 32px; border: 0; border-radius: 12px;
  background: var(--lx-surface); color: var(--lx-ink); text-align: center; box-shadow: none; filter: none; scrollbar-width: thin; }
html body.lx-govde .bp-cark-box::before { content: none !important; }
html body.lx-govde .bp-cark-ov.open .bp-cark-box { animation: lxCarkKart .3s ease-out both; }
html body.lx-govde .bp-cark-box:focus { outline: none; }
html body.lx-govde #bpCarkOverlay .bp-cark-x { position: absolute; top: 12px; right: 12px; z-index: 6; opacity: .6 !important; }
html body.lx-govde #bpCarkOverlay .bp-cark-x:hover { opacity: 1 !important; color: var(--lx-ink) !important; }

/* ---------- çark ---------- */
html body.lx-govde .bp-cark-wheelwrap { position: relative; width: var(--ln-cark-boy); height: var(--ln-cark-boy); margin: 8px auto 28px; }
html body.lx-govde .bp-cark-svg { width: var(--ln-cark-boy); height: var(--ln-cark-boy); overflow: visible; }
html body.lx-govde #bpCarkSvg > circle { fill: #FFFFFF; stroke: none; }
html body.lx-govde #bpCarkSvg > circle:first-child { fill: #22201D; }
html body.lx-govde #bpCarkSvg > path { fill: #22201D; stroke: #FFFFFF; stroke-width: 1.5; stroke-linejoin: round; }
html body.lx-govde #bpCarkSvg > path:nth-of-type(3n+2) { fill: #F4F3F1; }
html body.lx-govde #bpCarkSvg > path:nth-of-type(3n) { fill: var(--lx-gold, #DBAF36); }
html body.lx-govde #bpCarkSvg > text { fill: #FFFFFF; font-family: var(--lx-font); font-size: 12px; font-weight: 700; letter-spacing: 0; text-transform: uppercase; }
html body.lx-govde #bpCarkSvg > text:nth-of-type(3n+2), html body.lx-govde #bpCarkSvg > text:nth-of-type(3n) { fill: #22201D; }
html body.lx-govde #bpCarkSvg:has(> path:nth-of-type(8)) > text { font-size: 10px; }
html body.lx-govde .bp-cark-hub { width: var(--ln-cark-gobek); height: var(--ln-cark-gobek); border: 0; background: #FFFFFF; box-shadow: 0 0 0 4px rgba(34, 32, 29, .12); }
html body.lx-govde .bp-cark-hub::after { content: ""; width: 26px; height: 26px; background: var(--lx-gold, #DBAF36);
  -webkit-mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath d='M12 1.5c.7 5.6 3.4 8.3 9 9-5.6.7-8.3 3.4-9 9-.7-5.6-3.4-8.3-9-9 5.6-.7 8.3-3.4 9-9z'/%3E%3C/svg%3E") center / contain no-repeat;
          mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath d='M12 1.5c.7 5.6 3.4 8.3 9 9-5.6.7-8.3 3.4-9 9-.7-5.6-3.4-8.3-9-9 5.6-.7 8.3-3.4 9-9z'/%3E%3C/svg%3E") center / contain no-repeat; }
html body.lx-govde .bp-cark-hub img { display: none; }
html body.lx-govde .bp-cark-pointer { top: -10px; width: 26px; height: 22px; filter: none; }
html body.lx-govde .bp-cark-pointer svg { display: none; }
html body.lx-govde .bp-cark-pointer::before { content: ""; display: block; width: 0; height: 0; margin: 0 auto; border-top: 22px solid var(--lx-gold, #DBAF36); border-left: 13px solid transparent; border-right: 13px solid transparent; }

/* ---------- metin + düğme ---------- */
html body.lx-govde .bp-cark-title { max-width: 380px; margin: 0 auto 8px; color: var(--lx-ink); font-family: var(--lx-font); font-size: 28px; font-weight: 500; line-height: 33px; letter-spacing: 0; }
html body.lx-govde .bp-cark-sub { max-width: 380px; margin: 0 auto 24px; color: var(--lx-text); font-size: 15px; line-height: 22px; letter-spacing: .5px; }
html body.lx-govde .bp-cark-spin { display: flex; align-items: center; justify-content: center; width: 100%; min-height: 50px; padding: 13px 30px; border: 1px solid var(--lx-btn-bg); border-radius: 9px;
  background: var(--lx-btn-bg); color: var(--lx-btn-ink); font: 600 14px/24px var(--lx-font); letter-spacing: .28px; cursor: pointer; opacity: 1; transition: background-color .3s, border-color .3s, color .3s; }
html body.lx-govde .bp-cark-spin:hover { border-color: var(--lx-gold); background: var(--lx-gold); color: var(--lx-gold-ink); transform: none; box-shadow: none; }
html body.lx-govde .bp-cark-spin:focus-visible { outline: 2px solid var(--lx-focus); outline-offset: 3px; }
html body.lx-govde .bp-cark-spin:disabled { border-color: #F6F6F6; background: #F6F6F6; color: #B8B8B8; cursor: default; }

/* ---------- sonuç ---------- */
html body.lx-govde .bp-cark-result { margin: 0; padding: 0; border: 0; background: none; color: var(--lx-text); font-size: 15px; line-height: 22px; }
html body.lx-govde .bp-cark-result .rw { margin-bottom: 4px; color: var(--lx-ink); font-size: 22px; font-weight: 500; line-height: 28px; }
html body.lx-govde .bp-cark-code { display: inline-flex; flex-wrap: wrap; align-items: center; justify-content: center; gap: 8px 16px; max-width: 100%; margin-top: 16px; padding: 12px 16px;
  border: 1px dashed var(--lx-gold); border-radius: 9px; background: transparent; color: var(--lx-ink); font-size: 18px; font-weight: 700; line-height: 24px; letter-spacing: 2px; }
html body.lx-govde .bp-cark-code span { overflow-wrap: anywhere; }
html body.lx-govde .bp-cark-code button { flex: none; height: auto; padding: 0 0 1px; border: 0; border-radius: 0; background: linear-gradient(currentColor, currentColor) left bottom / 100% 1px no-repeat;
  color: var(--lx-ink); font: 600 14px/24px var(--lx-font); letter-spacing: 0; cursor: pointer; }
html body.lx-govde .bp-cark-code button:hover { color: var(--lx-gold); box-shadow: none; }

html.ln-cark-acik, html.ln-cark-acik body { overflow: hidden; }
html.ln-cark-acik.ln-cark-cubuk { scrollbar-gutter: stable; }

@keyframes lxCarkPerde { from { opacity: 0; } to { opacity: 1; } }
@keyframes lxCarkKart { from { opacity: 0; transform: translateY(-25%); } to { opacity: 1; transform: none; } }

@media (max-width: 480px) {
  :root { --ln-cark-boy: 264px; --ln-cark-gobek: 52px; }
  html body.lx-govde .bp-cark-box { padding: 40px 20px 20px; }
  html body.lx-govde .bp-cark-title { font-size: 24px; line-height: 30px; }
  html body.lx-govde .bp-cark-sub { margin-bottom: 20px; font-size: 14px; }
}
@media (max-width: 340px) { :root { --ln-cark-boy: 232px; } }
@media (max-height: 640px) and (min-width: 481px) { :root { --ln-cark-boy: 240px; --ln-cark-gobek: 48px; } }
@media (max-height: 480px) and (min-width: 481px) {
  :root { --ln-cark-boy: 180px; --ln-cark-gobek: 40px; }
  html body.lx-govde .bp-cark-box { padding: 28px 24px 20px; }
  html body.lx-govde .bp-cark-wheelwrap { margin-bottom: 16px; }
  html body.lx-govde .bp-cark-title { font-size: 20px; line-height: 26px; }
}
:root[data-tema="kontrast"] body.lx-govde .bp-cark-box { border: 2px solid #000000; }
/* yüksek kontrastta altın metin rengi koyulaşır; altın ZEMİNLER (dilim, göbek pırıltısı, gösterge) #DBAF36 kalır (§26.2) */
:root[data-tema="kontrast"] body.lx-govde #bpCarkSvg > path:nth-of-type(3n) { fill: #DBAF36; }
:root[data-tema="kontrast"] body.lx-govde .bp-cark-hub::after { background: #DBAF36; }
:root[data-tema="kontrast"] body.lx-govde .bp-cark-pointer::before { border-top-color: #DBAF36; }
@media (prefers-reduced-motion: reduce) {
  html body.lx-govde .bp-cark-ov.open, html body.lx-govde .bp-cark-ov.open .bp-cark-box { animation: none; }
}
@media (forced-colors: active) {
  html body.lx-govde .bp-cark-box { border: 1px solid CanvasText; }
  html body.lx-govde :is(.bp-cark-x, .bp-cark-spin, .bp-cark-code button) { border: 1px solid ButtonText; }
  html body.lx-govde #bpCarkSvg > path { stroke: CanvasText; }
}
