/* ==============================================================
   ankitus.com — tasarım sistemi
   Üretim: Claude, 2026-09-02

   TEK KAYNAK: brand_context/visual-identity/tokens.json v1.5.0
   Bu dosya o token setinin web karşılığıdır. Değer değişecekse önce
   tokens.json güncellenir, sonra buraya taşınır. Tersi yapılmaz.

   BAĞLAYICI KURALLAR
     - Hiyerarşi ağırlıkla değil boyutla kurulur. Başlıklar weight 400.
       Kalın başlık görsel bir ünlemdir, marka sesi ünlem kullanmaz.
     - Doygun mavi #00AFF0 semantiktir: açılan yanıt, tik işareti, ".com".
       Seçili durumlar bu yüzden mürekkeple işaretlenir, maviyle değil.
     - Gradyan yok. İkinci aksan rengi yok. Zemin beyaz ya da siyah.
     - Sayfadaki tek koyu obje gerçek Anki kartıdır.
   ============================================================== */

/* --------------------------------------------------------------
   0. Font — self-host. Familjen Grotesk, SIL OFL 1.1, değişken 400-700.
      latin-ext ZORUNLU: ğ ı ş İ orada. Tek aile tanımlarsan Türkçe bozulur.
   -------------------------------------------------------------- */
@font-face{
  font-family:'Familjen Grotesk';font-style:normal;font-weight:400 700;font-display:swap;
  src:url('/fonts/FamiljenGrotesk-var-latin-ext.woff2') format('woff2');
  unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF;
}
@font-face{
  font-family:'Familjen Grotesk';font-style:normal;font-weight:400 700;font-display:swap;
  src:url('/fonts/FamiljenGrotesk-var-latin.woff2') format('woff2');
  unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD;
}

/* --------------------------------------------------------------
   1. Token katmanı
   -------------------------------------------------------------- */
:root{
  /* marka */
  --blue:#00AFF0;
  --ink:#0B0B0B;
  --paper:#FBF8F3;        /* kirli beyaz. Necati kararı 02.09.2026, tokens.json ile senkron edilmeli */

  /* nötr ölçek */
  --ink-muted:#474239;
  --ink-subtle:#6F6960;
  --ink-faint:#9E968A;
  --hairline:#E4DDD1;
  --surface-alt:#F3EEE5;

  /* mavi tonları */
  --blue-050:#E7F5FB;   /* zemin tonu, aksan değil */
  --blue-100:#CCEEFC;
  --blue-700:#0077A8;   /* metin için erişilebilir mavi, 4.5:1 */

  /* ürün yüzeyi, Anki gece modu */
  --card-ground:#2A2A2A;
  --card-answer-bg:#2E3644;

  /* boşluk, 4 birim */
  --s1:4px; --s2:8px; --s3:12px; --s4:16px; --s5:24px;
  --s6:32px; --s7:48px; --s8:64px; --s9:96px; --s10:128px;

  /* köşe */
  --r-sm:6px; --r-md:12px; --r-lg:20px; --r-pill:999px;

  /* tipografi */
  --sans:'Familjen Grotesk', -apple-system, BlinkMacSystemFont, sans-serif;
  --lh-display:1.15; --lh-heading:1.25; --lh-body:1.55;
  --ls-wordmark:-0.042em; --ls-display:-0.02em; --ls-micro:0.12em;

  --t-display:clamp(2.4rem, 5.6vw, 4.25rem);
  --t-h2:clamp(1.75rem, 3.4vw, 2.75rem);
  --t-h3:clamp(1.1rem, 1.5vw, 1.3rem);
  --t-lede:clamp(1.05rem, 1.5vw, 1.3125rem);
  --t-body:1.0625rem;
  --t-micro:0.8125rem;

  --maxw:1160px;
  --maxw-dar:820px;
}

/* --------------------------------------------------------------
   2. Sıfırlama ve tipografi
   -------------------------------------------------------------- */
*,*::before,*::after{box-sizing:border-box}
html{-webkit-text-size-adjust:100%;scroll-behavior:smooth}
/* Sticky üst blok iç bağlantı hedeflerini örtmesin. */
section[id],div[id]{scroll-margin-top:150px}
@media(max-width:1080px){section[id],div[id]{scroll-margin-top:180px}}
body{
  margin:0;background:var(--paper);color:var(--ink);
  font-family:var(--sans);font-size:var(--t-body);font-weight:400;
  line-height:var(--lh-body);-webkit-font-smoothing:antialiased;
}
img,svg{display:block;max-width:100%}
a{color:inherit}
button,input,select,textarea{font:inherit;color:inherit}
::selection{background:var(--blue-100);color:var(--ink)}
[hidden]{display:none !important}


/* Gövde asla yatay kaymaz. Geniş içerik (tablo, kod) kendi kutusunda kayar. */
html,body{max-width:100%}
body{overflow-x:clip}
.tablo,.tablo__scroll,.wrap,.section{min-width:0}

h1,h2,h3,h4{font-weight:400;margin:0}
h1{font-size:var(--t-display);line-height:var(--lh-display);letter-spacing:var(--ls-display)}
h2{font-size:var(--t-h2);line-height:var(--lh-heading);letter-spacing:var(--ls-display)}
h3{font-size:var(--t-h3);line-height:1.35;font-weight:500}
h4{font-size:1rem;font-weight:500}
p{margin:0 0 var(--s4)}
p:last-child{margin-bottom:0}

.micro{
  font-size:var(--t-micro);font-weight:500;letter-spacing:var(--ls-micro);
  text-transform:uppercase;color:var(--ink-faint);margin:0 0 var(--s5);
}
.lede{font-size:var(--t-lede);color:var(--ink-subtle);line-height:var(--lh-body);max-width:56ch}
.measure{max-width:62ch}
.muted{color:var(--ink-subtle)}
.small{font-size:.9375rem}
.tiny{font-size:.8125rem}
/* Tek vurgulu rakam: cümle içinde yalnız rakam 600 ve ink */
.num{font-weight:600;color:var(--ink);font-variant-numeric:tabular-nums}

/* --------------------------------------------------------------
   3. Düzen
   -------------------------------------------------------------- */
.wrap{max-width:var(--maxw);margin-inline:auto;padding-inline:var(--s5)}
.wrap--dar{max-width:var(--maxw-dar)}
.section{padding-block:var(--s9)}
.section--kisa{padding-block:var(--s8)}
.alt{background:var(--surface-alt)}
.rule{border:0;border-top:1px solid var(--hairline);margin:0}

.duo{display:grid;gap:var(--s7);grid-template-columns:minmax(0,1fr) minmax(0,1fr)}
@media(max-width:860px){.duo{grid-template-columns:1fr;gap:var(--s5)}}

/* --------------------------------------------------------------
   4. Logo, başlık çubuğu, alt bilgi
   -------------------------------------------------------------- */
.logo{display:inline-flex;align-items:center;gap:10px;text-decoration:none}
.logo__sym{width:26px;height:26px;flex:none}
.logo__word{font-size:1.0625rem;font-weight:500;letter-spacing:var(--ls-wordmark);
  text-transform:lowercase;color:var(--ink)}
.logo__tld{color:var(--blue)}

/* Başlık çubuğu ve şeritler tek sticky blokta durur. Ayrı ayrı sticky
   yapılsaydı şeritlerin top ofseti masthead yüksekliğine bağlı olurdu ve
   o yükseklik dar ekranda iki satıra çıkıyor. Tek sarmalayıcı bunu çözer. */
.ustblok{position:sticky;top:0;z-index:50;background:var(--paper);
  backdrop-filter:saturate(140%) blur(8px)}
.masthead{background:transparent;border-bottom:1px solid var(--hairline)}
.masthead__in{max-width:var(--maxw);margin-inline:auto;padding:10px var(--s5);
  display:flex;align-items:center;gap:var(--s5)}
/* Site gezinmesi: tüm sayfa başlıkları üstte ve her zaman görünür.
   Dar ekranda gizlenmez, yatay kaydırılır. */
.nav{display:flex;gap:var(--s5);margin-left:auto;align-items:center;min-width:0}
.nav__links{display:flex;gap:var(--s5);align-items:center;overflow-x:auto;
  scrollbar-width:none;-ms-overflow-style:none}
.nav__links::-webkit-scrollbar{display:none}
.nav a{text-decoration:none;color:var(--ink-muted);font-size:.9375rem;white-space:nowrap;
  padding-block:6px;border-bottom:1px solid transparent}
.nav a:hover{color:var(--ink);border-bottom-color:var(--hairline)}
.nav a[aria-current="page"]{color:var(--ink);border-bottom-color:var(--ink)}
.nav .btn{border-bottom:0}
.nav .btn:hover{border-bottom:0}
/* .nav a seçicisi (0,1,1) .btn--cta'yı (0,1,0) yeniyordu; CTA metni mürekkep
   yerine gri kalıyordu ve mavide okunmuyordu. Özgüllük burada yükseltiliyor. */
.nav a.btn--cta,.nav a.btn--cta:hover{color:var(--ink)}
.nav a.btn--primary,.nav a.btn--primary:hover{color:var(--paper)}
@media(max-width:1080px){
  /* Dar ekranda CTA logonun yanına çıkar, sayfa başlıkları alt satırda
     tam genişlikte yatay kayar. Hiçbir başlık gizlenmez. */
  .masthead__in{flex-wrap:wrap;gap:6px var(--s5);padding:10px var(--s5) 6px}
  .logo{order:1}
  .nav{display:contents}
  .nav .btn--cta{order:2;margin-left:auto;padding:11px 20px;font-size:.9375rem}
  .nav__links{order:3;width:100%;gap:var(--s4);padding-bottom:0;
    -webkit-overflow-scrolling:touch}
}

.foot{border-top:1px solid var(--hairline);padding-block:var(--s7)}
.foot__in{display:flex;flex-wrap:wrap;gap:var(--s6);align-items:flex-start;justify-content:space-between}
.foot__links{display:flex;flex-wrap:wrap;gap:var(--s5);font-size:.9375rem}
.foot__links a{color:var(--ink-subtle);text-decoration:none}
.foot__links a:hover{color:var(--ink)}
.foot__legal{font-size:.875rem;color:var(--ink-faint);margin-top:var(--s5);width:100%}


/* --------------------------------------------------------------
   4b. Üst şeritler — üç ince duyuru satırı, başlık çubuğunun üstünde.
       Eski sitedeki üç şeridin yeni formattaki karşılığı: koyu kahve
       zemin ve turuncu bağlantı yerine kirli beyaz zemin, mürekkep metin.
       Yükseklik bilerek düşük tutuldu, sayfayı bastırmasın.
   -------------------------------------------------------------- */
.seritler{border-bottom:1px solid var(--hairline);background:var(--surface-alt)}
.ustblok .seritler{border-bottom:1px solid var(--hairline)}
.serit{display:block;text-decoration:none;border-bottom:1px solid var(--hairline)}
.serit:last-child{border-bottom:0}
.serit__in{max-width:var(--maxw);margin-inline:auto;padding:5px var(--s5);
  display:flex;align-items:center;gap:var(--s3);font-size:.78125rem;line-height:1.35}
.serit__dot{width:5px;height:5px;border-radius:50%;background:var(--ink-faint);flex:none}
.serit__t{color:var(--ink-subtle);min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.serit__t b{color:var(--ink);font-weight:500}
.serit__a{margin-left:auto;color:var(--ink);font-weight:500;white-space:nowrap;
  border-bottom:1px solid var(--hairline)}
.serit:not(.serit--tek):hover .serit__a{border-bottom-color:var(--ink)}
.serit:not(.serit--tek):hover .serit__t b{text-decoration:underline}
@media(max-width:720px){
  .serit__in{padding:4px var(--s4);gap:var(--s2);font-size:.71875rem}
  .serit__dot{display:none}
}

/* Tek satır + "Diğer ürünler" tetiği (12.09.2026). Üç satır #urunler pop-up'ına taşındı. */
.serit__git{display:flex;align-items:center;gap:var(--s3);min-width:0;flex:1;text-decoration:none;color:inherit}
.serit__git:hover .serit__a{border-bottom-color:var(--ink)}
.serit__git:hover .serit__t b{text-decoration:underline}
.serit__diger{flex:none;margin-left:var(--s3);padding:3px 10px;border:1px solid var(--hairline);
  border-radius:var(--r-pill);background:var(--paper);color:var(--ink-subtle);font:inherit;
  font-size:.71875rem;line-height:1.3;cursor:pointer}
.serit__diger:hover{border-color:var(--ink-faint);color:var(--ink)}
.serit__diger-kisa{display:none}
@media(max-width:720px){
  .serit--tek .serit__in{padding:8px var(--s4)}
  .serit--tek .serit__t{white-space:normal;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical}
  .serit--tek .serit__a{display:none}
  .serit__diger{margin-left:var(--s2);padding:3px 8px}
  .serit__diger-uzun{display:none}
  .serit__diger-kisa{display:inline}
}

/* --------------------------------------------------------------
   4b. Ürünler pop-up'ı — <dialog id="urunler">, urunler.js açar/kapatır.
       Zemin kâğıt, çizgi hairline, mavi yok: seçim mürekkeple işaretlenir.
   -------------------------------------------------------------- */
.urunler{border:1px solid var(--hairline);border-radius:var(--r-lg);background:var(--paper);color:var(--ink);
  padding:0;width:min(94vw,900px);margin:auto;box-shadow:0 24px 64px rgba(11,11,11,.18)}
.urunler::backdrop{background:rgba(11,11,11,.5)}
.urunler__bas{display:flex;align-items:center;justify-content:space-between;padding:var(--s4) var(--s5)}
.urunler__bas h2{margin:0;font-size:1.25rem;font-weight:400;line-height:1.25}
.urunler__kapat{border:1px solid var(--hairline);border-radius:var(--r-pill);background:none;color:var(--ink);
  font:inherit;font-size:.875rem;cursor:pointer;padding:6px 14px;min-height:36px}
.urunler__kapat:hover{border-color:var(--ink)}
/* Üç kare: her karede tek sayı, tek satır, tek eylem. Bakışta okunur; paragraf yok. */
.urunler__kareler{display:grid;grid-template-columns:repeat(3,1fr);gap:var(--s3);padding:0 var(--s5) var(--s5)}
.urun{display:flex;flex-direction:column;gap:var(--s1);text-decoration:none;color:inherit;
  padding:var(--s5);border:1px solid var(--hairline);border-radius:var(--r-md);background:var(--surface-alt);min-width:0}
.urun:hover,.urun:focus-visible{border-color:var(--ink);background:var(--paper);outline:none}
.urun--birincil{border-color:var(--ink)}
.urun__ust{font-size:.75rem;letter-spacing:.06em;text-transform:uppercase;color:var(--ink-subtle)}
.urun__sayi{font-size:2.25rem;line-height:1;font-weight:400;color:var(--ink);font-variant-numeric:tabular-nums;margin-top:var(--s1)}
.urun__sayi small{display:block;font-size:.875rem;color:var(--ink-muted);margin-top:var(--s1);letter-spacing:0}
.urun__t{font-size:.9375rem;line-height:1.35;color:var(--ink-muted);margin-top:var(--s2)}
.urun__a{display:inline-flex;align-items:center;justify-content:center;gap:var(--s2);margin-top:var(--s4);
  font-size:.9375rem;font-weight:500;color:var(--paper);background:var(--ink);border-radius:var(--r-pill);
  padding:12px 16px;min-height:44px}
.urun:hover .urun__a{background:#000}
@media(max-width:720px){
  .urunler{width:min(94vw,440px);border-radius:var(--r-md)}
  .urunler__bas{padding:var(--s4)}
  .urunler__bas h2{font-size:1.125rem}
  .urunler__kareler{grid-template-columns:1fr;gap:var(--s2);padding:0 var(--s4) var(--s4)}
  .urun{padding:var(--s3) var(--s4);gap:2px}
  .urun__sayi{font-size:1.75rem;margin-top:2px;white-space:nowrap}
  .urun__sayi small{display:inline;font-size:.875rem;margin-left:6px}
  .urun__t{font-size:.875rem;margin-top:0}
  .urun__a{margin-top:var(--s2);padding:10px 14px;min-height:40px;font-size:.875rem;width:100%}
}

/* --------------------------------------------------------------
   5. Buton ve form
   -------------------------------------------------------------- */
.btn{display:inline-flex;align-items:center;justify-content:center;gap:var(--s2);
  padding:14px 24px;border-radius:var(--r-pill);font-size:1rem;font-weight:500;line-height:1;
  text-decoration:none;cursor:pointer;border:1px solid transparent;
  transition:background .15s ease,border-color .15s ease,color .15s ease}
.btn--primary{background:var(--ink);color:var(--paper)}
.btn--primary:hover{background:#000}
.btn--primary[disabled]{background:var(--hairline);color:var(--ink-faint);cursor:not-allowed}
.btn--ghost{background:transparent;color:var(--ink);border-color:var(--hairline)}
.btn--ghost:hover{border-color:var(--ink-faint)}
.btn--sm{padding:10px 18px;font-size:.9375rem}
/* Ana çağrı butonu. Doygun marka mavisi zemin, mürekkep metin.
   Beyaz metin mavide 2,3:1 kalıyor ve erişilebilir değil; mürekkep 8:1 veriyor.
   NOT: bu, mavinin beşinci kullanım yeri. tokens.json → blue_is_semantic
   şu an dört yer sayıyor (yanıt, tik, ".com", logo). Senkron gerekiyor. */
.btn--cta{
  background:var(--blue);color:var(--ink);
  padding:15px 28px;font-size:1.0625rem;font-weight:500;
  box-shadow:0 1px 2px rgba(11,11,11,.10);
}
.btn--cta:hover{background:#25BDF5;box-shadow:0 2px 8px rgba(0,175,240,.30)}
.btn--cta:active{background:#00A0DC}
.btn--block{width:100%}
.btn:focus-visible{outline:2px solid var(--blue-700);outline-offset:2px}

.field{margin-bottom:var(--s4)}
.field label{display:block;font-size:.875rem;color:var(--ink-muted);margin-bottom:6px}
.field input,.field select{width:100%;padding:12px 14px;border:1px solid var(--hairline);
  border-radius:var(--r-md);background:var(--paper)}
.field input:focus,.field select:focus{outline:none;border-color:var(--ink)}
.err{font-size:.8125rem;color:var(--blue-700);margin-top:6px}
/* Zorunlu alan işareti. */
.zorunlu{float:right;font-size:.75rem;color:var(--ink-faint);font-weight:400}
input[aria-invalid="true"]{border-color:var(--blue-700)}
.note{font-size:.8125rem;color:var(--ink-faint);margin-top:var(--s4);line-height:1.45}
/* Bal küpü: gerçek kullanıcı görmez, bot doldurur */
.tuzak{position:absolute;left:-9999px;width:1px;height:1px;overflow:hidden}

/* Seçim çipi. Seçili durum mürekkeple, maviyle değil. */
.chip{cursor:pointer;border:1px solid var(--hairline);background:var(--paper);
  border-radius:var(--r-pill);padding:8px 16px;font-size:.875rem;white-space:nowrap;
  font-variant-numeric:tabular-nums;transition:border-color .15s ease}
.chip:hover{border-color:var(--ink-faint)}
.chip[aria-pressed="true"]{border-color:var(--ink);box-shadow:inset 0 0 0 1px var(--ink)}
.chip[disabled]{cursor:default;color:var(--ink-faint);background:var(--surface-alt);border-color:transparent}

/* --------------------------------------------------------------
   6. Anki kartı — sayfadaki TEK koyu obje
      tokens.json → components.deck_card
      (A) tek yanıt ve (C) alt sorulu grup biçimlerini birlikte taşır.
   -------------------------------------------------------------- */
.stage{position:relative;display:flex;justify-content:center;align-items:center;isolation:isolate}
.stage::before{content:"";position:absolute;z-index:-1;width:min(670px,116%);
  aspect-ratio:1;border-radius:50%;background:var(--blue-050)}
.deck{width:100%;max-width:530px;background:var(--card-ground);border-radius:var(--r-lg);
  box-shadow:0 24px 60px rgba(11,11,11,.16), 0 2px 8px rgba(11,11,11,.08);
  padding:var(--s5) var(--s5) var(--s4);transform:rotate(-1.4deg)}
@media(max-width:980px){.deck{transform:none}}
.deck__meta{display:flex;justify-content:center;font-size:.75rem;letter-spacing:.06em;
  text-transform:uppercase;color:#8A8A8A;margin-bottom:var(--s6)}
.deck__q{color:#fff;font-weight:600;font-size:clamp(1.05rem,2.1vw,1.3125rem);line-height:1.34;
  text-align:center;max-width:36ch;margin:0 auto var(--s6)}
.deck__answers{display:grid;gap:var(--s5);margin-bottom:var(--s5)}
.deck__answers--sik{gap:var(--s3)}
.qa__label{color:#B8B8B8;font-size:.9375rem;text-align:center;margin:0 0 var(--s3)}
.slot{border:2px solid var(--blue);background:var(--card-answer-bg);border-radius:14px;
  color:var(--blue);font-weight:600;font-size:clamp(.9375rem,1.9vw,1.1875rem);line-height:1.3;
  text-align:center;padding:13px var(--s4);min-height:52px;
  display:flex;align-items:center;justify-content:center}
.slot__hidden{letter-spacing:.18em}
/* Açıklama kartın parçasıdır, yanıtla birlikte açılır. */
.deck__exp{border-top:1px solid rgba(255,255,255,.09);padding-top:var(--s4);
  margin-bottom:var(--s5);color:#A8A8A8;font-size:.875rem;line-height:1.5}
.deck__controls{border-top:1px solid rgba(255,255,255,.09);padding-top:var(--s4)}
.deck__show{width:100%;background:#3A3A3A;color:#fff;border:0;border-radius:var(--r-md);
  padding:13px;font-weight:500;cursor:pointer}
.deck__show:hover{background:#454545}
.deck__show:focus-visible{outline:2px solid var(--blue);outline-offset:2px}
.deck__hint{text-align:center;color:#7E7E7E;font-size:.75rem;margin:var(--s3) 0 0}
.deck__grades{display:grid;grid-template-columns:repeat(4,1fr);gap:var(--s2)}
.grade{background:#3A3A3A;color:#fff;border:0;border-radius:var(--r-md);
  padding:9px 4px 10px;text-align:center;cursor:pointer;line-height:1.2}
.grade:hover{background:#454545}
.grade span{display:block;font-size:.6875rem;color:#9A9A9A;margin-bottom:3px}
.grade b{font-weight:500;font-size:.875rem}
/* Slayt başına tek vurgu kuralı: tek buton vurgulanır */
.grade--hi{background:rgba(0,175,240,.12);box-shadow:inset 0 0 0 1.5px var(--blue)}
.grade--hi b{color:var(--blue)}

/* --------------------------------------------------------------
   7. Hero
   -------------------------------------------------------------- */
.hero{padding-block:var(--s9) var(--s8)}
.hero__grid{display:grid;gap:var(--s9);align-items:center;
  grid-template-columns:minmax(0,1fr) minmax(0,.95fr)}
@media(max-width:980px){.hero__grid{grid-template-columns:1fr;gap:var(--s8)}}
.hero__copy h1{margin-bottom:var(--s5);max-width:16ch}
.hero__actions{display:flex;flex-wrap:wrap;gap:var(--s3);margin-top:var(--s6)}
.hero__note{margin-top:var(--s4);font-size:.9375rem;color:var(--ink-faint)}
.hero__kanit{margin-top:var(--s4);padding:var(--s3) var(--s4);border:2px solid #D6453D;border-radius:var(--r-md);
  background:var(--surface-alt);font-size:.9375rem;line-height:1.5;color:var(--ink-muted);max-width:52ch}
.hero__kanit b{font-weight:600;color:var(--ink)}
.hero__kanit a{color:var(--blue-700)}

/* --------------------------------------------------------------
   8. Panel, adım listesi, tik listesi, istatistik
   -------------------------------------------------------------- */
.panel{border:1px solid var(--hairline);border-radius:var(--r-lg);padding:var(--s6);
  background:var(--paper);display:flex;flex-direction:column;gap:var(--s4)}
.panel--sticky{position:sticky;top:88px}
.panel__stat{font-size:clamp(1.75rem,3vw,2.25rem);line-height:1.1;letter-spacing:var(--ls-display)}
.panel__stat small{display:block;font-size:var(--t-micro);letter-spacing:var(--ls-micro);
  text-transform:uppercase;color:var(--ink-faint);margin-top:var(--s2)}
.panel__foot{margin-top:auto;padding-top:var(--s4);border-top:1px solid var(--hairline)}
.panels-2{display:grid;gap:var(--s5);grid-template-columns:repeat(2,minmax(0,1fr));margin-top:var(--s7)}
@media(max-width:860px){.panels-2{grid-template-columns:1fr}}
.panels-3{display:grid;gap:var(--s5);grid-template-columns:repeat(3,minmax(0,1fr));margin-top:var(--s7)}
@media(max-width:900px){.panels-3{grid-template-columns:1fr}}

.steps{display:grid;margin-top:var(--s8);border-top:1px solid var(--hairline)}
.step{display:grid;grid-template-columns:56px minmax(0,1fr) minmax(0,1.5fr);gap:var(--s5);
  align-items:start;padding-block:var(--s6);border-bottom:1px solid var(--hairline)}
@media(max-width:860px){.step{grid-template-columns:1fr;gap:var(--s3);padding-block:var(--s5)}}
.step__n{font-size:var(--t-micro);font-weight:500;letter-spacing:var(--ls-micro);
  color:var(--ink-faint);padding-top:.35em}
.step__body{color:var(--ink-subtle)}

/* Tik işaretleri doygun mavi. Kural gereği izinli dört yerden biri. */
.checks{list-style:none;margin:0;padding:0;display:grid;gap:var(--s3)}
.checks li{display:grid;grid-template-columns:20px 1fr;gap:var(--s3);align-items:start;color:var(--ink-muted)}
.checks svg{width:20px;height:20px;margin-top:.25em;flex:none}

.stats{display:grid;gap:var(--s5);grid-template-columns:repeat(3,minmax(0,1fr));
  margin-top:var(--s7);border-top:1px solid var(--hairline);padding-top:var(--s6)}
@media(max-width:760px){.stats{grid-template-columns:1fr}}
.stat b{display:block;font-size:clamp(1.75rem,3vw,2.25rem);font-weight:400;
  letter-spacing:var(--ls-display);line-height:1.1;font-variant-numeric:tabular-nums}
.stat span{display:block;font-size:var(--t-micro);letter-spacing:var(--ls-micro);
  text-transform:uppercase;color:var(--ink-faint);margin-top:var(--s2)}

/* --------------------------------------------------------------
   9. Tablo
   -------------------------------------------------------------- */
.tablo{margin-top:var(--s7);border-top:1px solid var(--hairline)}
.tablo__scroll{overflow-x:auto}
.tablo table{width:100%;border-collapse:collapse;font-size:.9375rem}
.tablo caption{text-align:left;padding-top:var(--s5)}
.tablo th{text-align:left;font-weight:500;font-size:var(--t-micro);letter-spacing:var(--ls-micro);
  text-transform:uppercase;color:var(--ink-faint);padding:var(--s4) var(--s3);
  border-bottom:1px solid var(--hairline);white-space:nowrap}
.tablo td{padding:var(--s3);border-bottom:1px solid var(--hairline);color:var(--ink-muted)}
.tablo td:first-child{color:var(--ink)}
.tablo .n{text-align:right;font-variant-numeric:tabular-nums}
.tablo tfoot td{font-weight:500;color:var(--ink);border-bottom:0}
.tablo tr.hi td{background:var(--blue-050)}
.grp-row td{background:var(--surface-alt);font-size:var(--t-micro);letter-spacing:var(--ls-micro);
  text-transform:uppercase;color:var(--ink-faint)}
.dash{color:var(--ink-faint)}


/* --------------------------------------------------------------
   9b. Kanıt kutusu — referans sayıları. Dikkat çekmesi gereken tek
       veri bloğu olduğu için mürekkep kenarlıklı ve blue-050 başlıklı.
       blue-050 zemin tonudur, aksan değil (tokens.json → blue-tint).
   -------------------------------------------------------------- */
.kanit{border:1px solid var(--ink);border-radius:var(--r-lg);overflow:hidden;margin-top:var(--s7)}
.kanit__ust{background:var(--blue-050);padding:var(--s6);display:flex;gap:var(--s6);
  align-items:baseline;flex-wrap:wrap;border-bottom:1px solid var(--ink)}
.kanit__buyuk{font-size:clamp(2.5rem,6vw,3.75rem);line-height:1;letter-spacing:var(--ls-display);
  font-variant-numeric:tabular-nums;margin:0;white-space:nowrap}
.kanit__buyuk b{font-weight:600}
.kanit__buyuk small{font-size:.4em;color:var(--ink-subtle);font-weight:400}
/* .kanit__ust p (0,1,1) büyük rakamın font-size'ını eziyordu (0,1,0).
   Açıklama paragrafı büyük rakamın dışında hedefleniyor. */
.kanit__ust > p:not(.kanit__buyuk){margin:0;color:var(--ink-muted);max-width:42ch;
  flex:1;min-width:220px;font-size:.9375rem}
.kanit__govde{padding:var(--s5) var(--s6) var(--s6)}
.kanit__govde .tablo{margin-top:0;border-top:0}
@media(max-width:640px){.kanit__govde .tablo table{font-size:.875rem}
  .kanit__govde .tablo td,.kanit__govde .tablo th{padding-inline:var(--s2)}
  .kanit__govde .tablo td:first-child,.kanit__govde .tablo th:first-child{padding-left:0}}
.kanit__not{padding:0 var(--s6) var(--s6);margin:0;font-size:.8125rem;color:var(--ink-faint);line-height:1.5}
@media(max-width:640px){
  .kanit__ust{padding:var(--s5);gap:var(--s4)}
  .kanit__govde{padding:var(--s4) var(--s4) var(--s5)}
  .kanit__not{padding:0 var(--s4) var(--s5)}
}

/* --------------------------------------------------------------
   10. Kullanıcı yorumları
       Kişi fotoğrafı, avatar, portre yok (tokens.json → person.enabled=false).
       Puanlar kullanıcı beyanıdır, bu not blokta açıkça yazılır.
   -------------------------------------------------------------- */
.says{display:grid;gap:var(--s5);grid-template-columns:repeat(3,minmax(0,1fr));margin-top:var(--s7)}
@media(max-width:900px){.says{grid-template-columns:1fr}}
.say{border:1px solid var(--hairline);border-radius:var(--r-lg);padding:var(--s5);margin:0;
  display:flex;flex-direction:column;gap:var(--s4)}
.say blockquote{margin:0;font-size:1.0625rem;line-height:1.5}
.say figcaption{margin-top:auto;padding-top:var(--s4);border-top:1px solid var(--hairline);font-size:.875rem}
.say__ad{display:block;font-weight:500}
.say__meta{display:block;color:var(--ink-subtle)}

/* --------------------------------------------------------------
   11. Sipariş ve ödeme
   -------------------------------------------------------------- */
.price{display:flex;align-items:baseline;gap:var(--s3);flex-wrap:wrap}
.price__now{font-size:clamp(2rem,4vw,2.75rem);letter-spacing:var(--ls-display);
  line-height:1;font-variant-numeric:tabular-nums}
.price__old{font-size:1.125rem;color:var(--ink-faint);text-decoration:line-through;
  font-variant-numeric:tabular-nums}

.done{border:1px solid var(--hairline);border-radius:var(--r-lg);padding:var(--s7);
  margin-top:var(--s7);background:var(--surface-alt)}
.done__tick{width:34px;height:34px;border-radius:50%;background:var(--blue-050);
  display:flex;align-items:center;justify-content:center;margin-bottom:var(--s5)}
/* Ödeme ekranının ana bloğu: alıcı adı + IBAN. Havalede aslolan bu ikisi,
   geri kalanı ayrıntı — o yüzden listeden çıkıp ortada büyür.
   Vurgu boyutla kurulur, ağırlıkla değil (bkz. .price__now). */
.odeme-ana{background:var(--paper);border:1px solid var(--hairline);
  border-radius:var(--r-md);padding:var(--s6) var(--s5);margin:var(--s5) 0;text-align:center}
.odeme-ana__lbl{margin:0 0 var(--s1);font-size:.75rem;letter-spacing:.14em;
  text-transform:uppercase;color:var(--ink-faint)}
.odeme-ana__ad{margin:0 0 var(--s5);font-size:1.25rem;line-height:1.2}
.odeme-ana__iban{margin:0 0 var(--s5);font-size:clamp(1.375rem,5vw,1.875rem);
  line-height:1.3;letter-spacing:.01em;font-variant-numeric:tabular-nums;
  word-break:break-word;text-wrap:balance}
.odeme-ana__kopya[data-durum="ok"]{border-color:var(--ink);color:var(--ink)}

.kv{display:grid;gap:var(--s3);margin:var(--s5) 0;border-top:1px solid var(--hairline);padding-top:var(--s5)}
.kv div{display:flex;justify-content:space-between;gap:var(--s5);flex-wrap:wrap;font-size:.9375rem}
.kv dt{color:var(--ink-subtle);margin:0}
.kv dd{margin:0;font-weight:500;font-variant-numeric:tabular-nums;text-align:right}


/* --------------------------------------------------------------
   11b. Kip pencere (dialog). Ücretsiz destede sürtünmeyi düşürmek
        için kullanılıyor: indirme önce başlar, e-posta sonra sorulur.
   -------------------------------------------------------------- */
.modal{border:0;padding:0;border-radius:var(--r-lg);background:var(--paper);color:var(--ink);
  max-width:420px;width:calc(100% - 32px);box-shadow:0 24px 60px rgba(11,11,11,.20)}
.modal::backdrop{background:rgba(11,11,11,.45)}
.modal__in{padding:var(--s6)}
.modal h2{font-size:1.375rem;margin-bottom:var(--s3)}
.modal__kapat{position:absolute;top:10px;right:12px;background:none;border:0;cursor:pointer;
  color:var(--ink-faint);font-size:1.5rem;line-height:1;padding:6px}
.modal__kapat:hover{color:var(--ink)}
.modal__alt{display:flex;gap:var(--s3);align-items:center;margin-top:var(--s5);flex-wrap:wrap}
.modal__vazgec{background:none;border:0;color:var(--ink-subtle);cursor:pointer;
  font-size:.9375rem;text-decoration:underline;text-underline-offset:3px;padding:6px 2px}
.modal__vazgec:hover{color:var(--ink)}

/* --------------------------------------------------------------
   12. SSS ve kapanış
   -------------------------------------------------------------- */
.faq{margin-top:var(--s7);border-top:1px solid var(--hairline)}
.faq details{border-bottom:1px solid var(--hairline)}
.faq summary{cursor:pointer;list-style:none;padding:var(--s5) 0;
  font-size:clamp(1.0625rem,1.6vw,1.1875rem);display:flex;justify-content:space-between;
  gap:var(--s5);align-items:center}
.faq summary::-webkit-details-marker{display:none}
.faq summary::after{content:"+";color:var(--ink-faint);font-size:1.25rem;line-height:1}
.faq details[open] summary::after{content:"–"}
.faq summary:focus-visible{outline:2px solid var(--blue-700);outline-offset:2px}
.faq p{padding-bottom:var(--s5);color:var(--ink-subtle);max-width:70ch}

.close__in{display:grid;gap:var(--s6);justify-items:start;max-width:60ch}

@media(prefers-reduced-motion:reduce){*{transition:none !important;scroll-behavior:auto}}
