/* Montserrat — yerel olarak vendor edilmiş (src/fonts/), CDN kullanılmaz. */
@font-face {
  font-family: 'Montserrat';
  font-style: normal;
  font-display: swap;
  font-weight: 400;
  src: url(../fonts/montserrat-latin-ext-400-normal.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: 'Montserrat';
  font-style: normal;
  font-display: swap;
  font-weight: 400;
  src: url(../fonts/montserrat-latin-400-normal.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;
}
@font-face {
  font-family: 'Montserrat';
  font-style: normal;
  font-display: swap;
  font-weight: 500;
  src: url(../fonts/montserrat-latin-ext-500-normal.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: 'Montserrat';
  font-style: normal;
  font-display: swap;
  font-weight: 500;
  src: url(../fonts/montserrat-latin-500-normal.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;
}
@font-face {
  font-family: 'Montserrat';
  font-style: normal;
  font-display: swap;
  font-weight: 600;
  src: url(../fonts/montserrat-latin-ext-600-normal.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: 'Montserrat';
  font-style: normal;
  font-display: swap;
  font-weight: 600;
  src: url(../fonts/montserrat-latin-600-normal.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;
}
/* 800 (ExtraBold) kesiti 2026-09-19'da KALDIRILDI: tek tüketicisi üst
   bardaki CSS metin logosuydu, logo sahibin görseliyle değişince kesit
   tüketicisiz kaldı. İki @font-face bloğu ve iki .woff2 dosyası
   (montserrat-latin-800-normal 19.012 B + montserrat-latin-ext-800-normal
   33.624 B = 52.636 B) birlikte silindi. 800'e yeniden ihtiyaç duyulursa
   font dosyaları da geri konmalıdır: yalnızca `font-weight: 800` yazmak
   tarayıcıya 600 kesitini sentetik olarak kalınlaştırtır (taklit bold).
   Dosyalar geri konursa ilk yükleme 19.012 B büyür — bkz.
   tests/e2e/performans.spec.mjs bayt bütçesi. */

:root {
  /* Markanın pembesi: PDF'te ölçüldü — kapaktaki logo kutusu, kapağın alt
     adres kutusu, sayfa başlığı şeridi ve sayfa numarası kutusu; dördünde
     de en sık renk (254, 26, 139). Bugün hiçbir kural doğrudan buna
     başvurmuyor; DURUYOR, çünkü favicon.ico ve apple-touch-icon.png bu
     renkle üretildi ve simge yenilenirse referans burasıdır.

     Türetilen iki ton KRUGER'in sarıdan türettiği yolla, HSL farklarıyla
     hesaplandı (KRUGER: sarı #FFD401 = H50 S100 L50,2):
     - --vurgu: KRUGER'de #FED528 = sarıdan +7,4 açıklık, doygunluk aynı.
       Pembeye aynı fark: H330 S99 L54,9+7,4 → #FD409E. Ham pembe arama
       listesinin vurgulu satırında (--satir-vurgu / --kart) 4,26:1 kalıp
       yazı eşiğinin altına düşüyordu; türetilmiş ton 4,63:1.
     - --altin: KRUGER'de #E1BD35 = doygunluk ×0,74, açıklık +4,3 (soluk,
       çerçeve tonu). Pembeye aynı oran/fark → #E34B96.
     Kontrastlar tests/test_renk_karsitligi.py'de tokenlardan ölçülür. */
  --mayerbach-pembe: #FE1A8B;
  --vurgu: #FD409E;
  --altin: #E34B96;
  /* Vurgu kutusunun dış parıltısı: --altin, 0,6 saydamlık (KRUGER'de bu
     değer app.css'e sabit yazılıydı ve marka değişince sarı kalırdı). */
  --altin-parilti: rgba(227, 75, 150, .6);
  --kirmizi: #EE342E;

  --zemin: #141211;
  --zemin-2: #1B1918;
  --kart: #191E21;
  /* --altin, 0,28 saydamlık (KRUGER'de de --altin'in 0,28'i). */
  --cizgi: rgba(227, 75, 150, 0.28);
  --zoom-perde: rgba(10, 9, 8, .96);

  --metin: #FFFFFF;
  --metin-soluk: #9BA0A3;
  --metin-ters: #000000;

  /* --vurgu, 0,1 saydamlık (KRUGER'de de --vurgu'nun 0,1'i). */
  --satir-vurgu: rgba(253, 64, 158, .1);
  --satir-cizgi: rgba(255, 255, 255, .06);
  --golge-guclu: rgba(0, 0, 0, .55);
  --etiket-zemin: rgba(0, 0, 0, .65);

  --panel-genislik: 264px;
  --ust-bar: 56px;
  --serit: 92px;

  --yuvarlak: 10px;
  --gecis: 180ms cubic-bezier(.2, .7, .3, 1);
}

* { box-sizing: border-box; }

html, body {
  margin: 0;
  height: 100%;
  background: var(--zemin);
  color: var(--metin);
  font-family: Montserrat, system-ui, -apple-system, 'Segoe UI', sans-serif;
  overscroll-behavior: none;
}
