/* =====================================================================
   Kuruyemiş tasarım sistemi — token'lar
   ---------------------------------------------------------------------
   Sıra: yazı tipi → temadan bağımsız ölçekler → açık tema → koyu tema
   → türetilmiş token'lar (yükselti, Bootstrap eşlemesi) → erişilebilirlik.

   Tema seçimi:
     :root                     varsayılan açık
     @media (prefers-color-scheme: dark) :root:not([data-tema="acik"])  sistem koyu
     [data-tema="koyu"]        zorla koyu (herhangi bir öğede)
     [data-tema="acik"]        zorla açık (herhangi bir öğede)

   ÖNEMLİ: Başka token'a başvuran token'lar (var(--...)) tanımlandıkları
   öğede çözülür. Bu yüzden türetilmiş token'lar ve --bs-* eşlemesi
   ":root, [data-tema]" üzerinde yeniden bildirilir; iç içe tema panelleri
   doğru değerleri alır.
   Ayrıntı: docs/tasarim-sistemi.md
   ===================================================================== */

/* ---------- Yazı tipi: Manrope (SIL OFL 1.1, fonts/manrope/OFL.txt) ---------- */
/* Değişken yazı tipi, wght 200–800. Türkçe ğ Ğ ş Ş İ ve ₺ latin-ext alt kümesinde;
   ı ö ü ç ve rakamlar (tnum) latin alt kümesinde. İkisi de gerekli. */
@font-face {
    font-family: "Manrope";
    font-style: normal;
    font-display: swap;
    font-weight: 200 800;
    src: url("../../fonts/manrope/manrope-latin-ext-wght-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: "Manrope";
    font-style: normal;
    font-display: swap;
    font-weight: 200 800;
    src: url("../../fonts/manrope/manrope-latin-wght-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;
}

/* ---------- Temadan bağımsız ölçekler ---------- */
:root {
    /* Yazı */
    --yazi-aile: "Manrope", ui-sans-serif, system-ui, -apple-system, "Segoe UI", "Helvetica Neue", Arial, sans-serif;
    --yazi-aile-es: ui-monospace, "Cascadia Mono", "Segoe UI Mono", Consolas, "Liberation Mono", monospace;

    --yazi-2xs: 0.6875rem;  /* 11 px — büyük harfli küçük etiketler */
    --yazi-xs: 0.75rem;     /* 12 px */
    --yazi-sm: 0.875rem;    /* 14 px */
    --yazi-md: 1rem;        /* 16 px — gövde */
    --yazi-lg: 1.125rem;    /* 18 px */
    --yazi-xl: clamp(1.25rem, 1.15rem + 0.45vw, 1.5rem);      /* 20 → 24 */
    --yazi-2xl: clamp(1.5rem, 1.3rem + 0.9vw, 1.875rem);      /* 24 → 30 */
    --yazi-3xl: clamp(1.875rem, 1.55rem + 1.5vw, 2.5rem);     /* 30 → 40 */
    --yazi-dugme: 0.9375rem; /* 15 px */

    --satir-siki: 1.2;
    --satir-baslik: 1.25;
    --satir-govde: 1.55;

    --kalinlik-normal: 450;
    --kalinlik-orta: 550;
    --kalinlik-yari-kalin: 650;
    --kalinlik-kalin: 750;

    --harf-baslik: -0.015em;
    --harf-etiket: 0.06em;

    /* Boşluk (4 px tabanlı) */
    --bosluk-0: 0;
    --bosluk-px: 1px;
    --bosluk-1: 0.25rem;   /*  4 */
    --bosluk-2: 0.5rem;    /*  8 */
    --bosluk-3: 0.75rem;   /* 12 */
    --bosluk-4: 1rem;      /* 16 */
    --bosluk-5: 1.25rem;   /* 20 */
    --bosluk-6: 1.5rem;    /* 24 */
    --bosluk-8: 2rem;      /* 32 */
    --bosluk-10: 2.5rem;   /* 40 */
    --bosluk-12: 3rem;     /* 48 */
    --bosluk-16: 4rem;     /* 64 */

    /* Yarıçap */
    --yaricap-xs: 4px;
    --yaricap-sm: 6px;
    --yaricap-md: 10px;
    --yaricap-lg: 14px;
    --yaricap-xl: 20px;
    --yaricap-tam: 999px;

    /* Boyutlar */
    --dokunma-min: 48px;
    --kontrol-yukseklik: 48px;
    --kontrol-yukseklik-sm: 36px;
    --kontrol-yukseklik-lg: 52px;
    --kontrol-dolgu-y: var(--bosluk-2);
    --ikon-boyut: 1.25rem;
    --yan-menu-genislik: 16rem;
    --alt-gezinme-yukseklik: 4rem;
    --ust-cubuk-yukseklik: 3.5rem;
    --icerik-azami: 80rem;
    --kabuk-yukseklik: 100dvh;

    /* Hareket — yalnızca transform ve opacity canlandırılır */
    --sure-anlik: 80ms;
    --sure-hizli: 140ms;
    --sure-orta: 220ms;
    --sure-yavas: 360ms;
    --egri-standart: cubic-bezier(0.4, 0, 0.2, 1);
    --egri-cikis: cubic-bezier(0.2, 0.8, 0.2, 1);
    --egri-yay: cubic-bezier(0.34, 1.4, 0.64, 1);
    --egik-aci: 3deg;
    --egik-perspektif: 900px;
    --egik-yukari: -3px;
    --basili-asagi: 1px;

    /* Cam */
    --cam-bulaniklik: 14px;

    /* Güvenli alan (çentik, ana sayfa çubuğu). viewport-fit=cover gerekir. */
    --guvenli-ust: env(safe-area-inset-top, 0px);
    --guvenli-alt: env(safe-area-inset-bottom, 0px);
    --guvenli-sol: env(safe-area-inset-left, 0px);
    --guvenli-sag: env(safe-area-inset-right, 0px);

    /* Katmanlar */
    --katman-yapiskan: 1020;
    --katman-alt-gezinme: 1030;
    --katman-ust: 1040;
}

/* ---------- Açık tema ---------- */
:root,
[data-tema="acik"] {
    color-scheme: light;

    /* Yüzeyler — nötrler fıstık yeşiline hafif kaydırılmış */
    --renk-zemin: #F2F4EF;
    --renk-yuzey: #FDFEFB;
    --renk-yuzey-yukselmis: #FFFFFF;
    --renk-yuzey-cukur: #E8EBE3;
    --renk-yuzey-ters: #1C2219;
    --renk-metin-ters: #F2F4EF;
    --renk-alan-zemin: #FFFFFF;
    --renk-alan-devre-disi: #ECEFE8;

    /* Çizgiler */
    --renk-cizgi: #D7DCD0;
    --renk-cizgi-guclu: #B9C0AF;
    --renk-cizgi-alan: #7A8370;          /* form alanı kenarı, ≥3:1 */

    /* Metin */
    --renk-metin: #1C2219;
    --renk-metin-ikincil: #4A5443;
    --renk-metin-soluk: #5F6856;
    --renk-metin-devre-disi: #8E9685;

    /* Birincil: fıstık yeşili */
    --renk-birincil: #3D6922;
    --renk-birincil-hover: #335A1C;
    --renk-birincil-basili: #2B4A17;
    --renk-birincil-uzerinde: #FFFFFF;
    --renk-birincil-zayif: #E2EED4;
    --renk-birincil-zayif-metin: #2D4F18;
    --renk-birincil-metin: #3D6922;      /* bağlantı, hayalet buton */

    /* Vurgu: kavrulmuş kabuk */
    --renk-vurgu: #93561A;
    --renk-vurgu-zayif: #F7E8D4;
    --renk-vurgu-metin: #6F3F0E;

    /* Zeytin antrasit: yan menü (2026-10-17; eski ceviz kahvesi #3A2A1F). Nötr zemin: yeşil hareket/bakiye anlamıyla çakışmaz */
    --renk-yanmenu-zemin: #262B22;
    --renk-yanmenu-zemin-acik: #333A2D;
    --renk-yanmenu-metin: #E8EBE3;
    --renk-yanmenu-soluk: #A3AB98;
    --renk-yanmenu-aktif: #363E2F;
    --renk-yanmenu-isaret: #A9D47C;
    --renk-yanmenu-kenar: rgb(255 255 255 / 0.06);

    /* Durum */
    --renk-basari: #1E7346;
    --renk-basari-zayif: #DCF1E3;
    --renk-basari-metin: #145834;
    --renk-basari-kenar: #A9D9BA;

    --renk-uyari: #95580A;
    --renk-uyari-zayif: #FBEDD0;
    --renk-uyari-metin: #6E4200;
    --renk-uyari-kenar: #EDCB85;

    --renk-hata: #B0232C;
    --renk-hata-zayif: #FAE2E1;
    --renk-hata-metin: #8A1820;
    --renk-hata-kenar: #EFB1B0;
    --renk-hata-dolu: #B0232C;
    --renk-hata-dolu-hover: #951C24;
    --renk-hata-dolu-uzerinde: #FFFFFF;

    --renk-bilgi: #1C68A0;
    --renk-bilgi-zayif: #DCEAF5;
    --renk-bilgi-metin: #14507C;
    --renk-bilgi-kenar: #A9CBE6;

    --renk-odak: #0F62C9;

    /* Kavramlar — SablonAkisi pastelleriyle birebir */
    --renk-fason-zemin: #E7DEFA;
    --renk-fason-ust: #F3EEFD;
    --renk-fason-yan: #CDBFF0;
    --renk-fason-metin: #45356A;
    --renk-fason-kenar: #CDBFF0;

    --renk-ic-zemin: #D4F1E5;
    --renk-ic-ust: #E9F9F2;
    --renk-ic-yan: #B2E1CD;
    --renk-ic-metin: #22574A;
    --renk-ic-kenar: #B2E1CD;

    --renk-girdi-zemin: #FCEFC8;
    --renk-girdi-ust: #FEF8E3;
    --renk-girdi-yan: #F1D98F;
    --renk-girdi-metin: #66501B;
    --renk-girdi-kenar: #F1D98F;

    --renk-cikti-zemin: #D7E9FB;
    --renk-cikti-ust: #ECF4FE;
    --renk-cikti-yan: #B3D1F2;
    --renk-cikti-metin: #24476D;
    --renk-cikti-kenar: #B3D1F2;

    --renk-maliyet-zemin: #FBE4EA;
    --renk-maliyet-ust: #FDF1F4;
    --renk-maliyet-yan: #F0C4D0;
    --renk-maliyet-metin: #7A3A4C;
    --renk-maliyet-kenar: #F5CCD7;

    /* Gölge bileşenleri: ceviz-zeytin tonlu, siyah değil */
    --golge-rgb: 40 36 20;
    --golge-carpan: 1;
    --isik-ust: rgb(255 255 255 / 0.8);
    --isik-ust-guclu: rgb(255 255 255 / 0.95);
    --cam-zemin: rgb(253 254 251 / 0.72);
    --cam-kenar: rgb(255 255 255 / 0.6);

    /* Form ikonları (temaya göre çizgi rengi) */
    --ikon-onay: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 20 20'%3e%3cpath fill='none' stroke='%23fff' stroke-linecap='round' stroke-linejoin='round' stroke-width='3' d='m6 10 3 3 6-6'/%3e%3c/svg%3e");
    --ikon-radyo: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='-4 -4 8 8'%3e%3ccircle r='2' fill='%23fff'/%3e%3c/svg%3e");
    --ikon-secim-ok: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16'%3e%3cpath fill='none' stroke='%234A5443' stroke-linecap='round' stroke-linejoin='round' stroke-width='2' d='m2 5 6 6 6-6'/%3e%3c/svg%3e");

    /* Bootstrap'in RGB üçlüleri (text-*, bg-*, bağlantılar) */
    --bs-primary-rgb: 61, 105, 34;
    --bs-secondary-rgb: 74, 84, 67;
    --bs-success-rgb: 30, 115, 70;
    --bs-info-rgb: 28, 104, 160;
    --bs-warning-rgb: 149, 88, 10;
    --bs-danger-rgb: 176, 35, 44;
    --bs-body-color-rgb: 28, 34, 25;
    --bs-body-bg-rgb: 242, 244, 239;
    --bs-emphasis-color-rgb: 28, 34, 25;
    --bs-link-color-rgb: 61, 105, 34;
    --bs-link-hover-color-rgb: 51, 90, 28;
}

/* ---------- Koyu tema ---------- */
/* Aynı blok iki kez: sistem tercihi (media) ve zorla koyu ([data-tema="koyu"]).
   Bir değeri değiştirirken İKİSİNİ de güncelleyin. */
[data-tema="koyu"] {
    color-scheme: dark;

    --renk-zemin: #121510;
    --renk-yuzey: #1A1E17;
    --renk-yuzey-yukselmis: #23281F;
    --renk-yuzey-cukur: #0E110C;
    --renk-yuzey-ters: #E6EBE0;
    --renk-metin-ters: #121510;
    --renk-alan-zemin: #161A13;
    --renk-alan-devre-disi: #1F231C;

    --renk-cizgi: #2C3327;
    --renk-cizgi-guclu: #3F4838;
    --renk-cizgi-alan: #6E7865;

    --renk-metin: #E6EBE0;
    --renk-metin-ikincil: #B4BCAA;
    --renk-metin-soluk: #929B88;
    --renk-metin-devre-disi: #687160;

    --renk-birincil: #9BC96B;
    --renk-birincil-hover: #AED682;
    --renk-birincil-basili: #8AB85C;
    --renk-birincil-uzerinde: #14210A;
    --renk-birincil-zayif: #25341B;
    --renk-birincil-zayif-metin: #C2E3A0;
    --renk-birincil-metin: #A8D27A;

    --renk-vurgu: #E3A55A;
    --renk-vurgu-zayif: #3A2A17;
    --renk-vurgu-metin: #F3C88F;

    --renk-yanmenu-zemin: #161A13;
    --renk-yanmenu-zemin-acik: #1F241B;
    --renk-yanmenu-metin: #E3E8DC;
    --renk-yanmenu-soluk: #949C8A;
    --renk-yanmenu-aktif: #252B20;
    --renk-yanmenu-isaret: #9BC96B;
    --renk-yanmenu-kenar: #2E3A28;

    --renk-basari: #63C98F;
    --renk-basari-zayif: #15301F;
    --renk-basari-metin: #93DDB2;
    --renk-basari-kenar: #2A5A3D;

    --renk-uyari: #E2A743;
    --renk-uyari-zayif: #38290D;
    --renk-uyari-metin: #F2CB7E;
    --renk-uyari-kenar: #6A4E1A;

    --renk-hata: #F07F81;
    --renk-hata-zayif: #3B1719;
    --renk-hata-metin: #F7ACAD;
    --renk-hata-kenar: #6E2C2F;
    --renk-hata-dolu: #F07F81;
    --renk-hata-dolu-hover: #F59597;
    --renk-hata-dolu-uzerinde: #1F0708;

    --renk-bilgi: #72B6EE;
    --renk-bilgi-zayif: #12273A;
    --renk-bilgi-metin: #A7D3F6;
    --renk-bilgi-kenar: #26486A;

    --renk-odak: #7DB4FF;

    --renk-fason-zemin: #2E2645;
    --renk-fason-ust: #3A3157;
    --renk-fason-yan: #221B36;
    --renk-fason-metin: #DCD0FA;
    --renk-fason-kenar: #4A3E70;

    --renk-ic-zemin: #183A30;
    --renk-ic-ust: #21493D;
    --renk-ic-yan: #112B23;
    --renk-ic-metin: #AEE6D0;
    --renk-ic-kenar: #2A5E4E;

    --renk-girdi-zemin: #393016;
    --renk-girdi-ust: #4A3E1D;
    --renk-girdi-yan: #2A230F;
    --renk-girdi-metin: #F2DC98;
    --renk-girdi-kenar: #5E4D22;

    --renk-cikti-zemin: #1A3047;
    --renk-cikti-ust: #223D59;
    --renk-cikti-yan: #122335;
    --renk-cikti-metin: #B8D6F6;
    --renk-cikti-kenar: #2D4E70;

    --renk-maliyet-zemin: #3D1E28;
    --renk-maliyet-ust: #4C2733;
    --renk-maliyet-yan: #2E161E;
    --renk-maliyet-metin: #F5C2CF;
    --renk-maliyet-kenar: #5E3040;

    --golge-rgb: 0 0 0;
    --golge-carpan: 2.6;
    --isik-ust: rgb(255 255 255 / 0.06);
    --isik-ust-guclu: rgb(255 255 255 / 0.1);
    --cam-zemin: rgb(26 30 23 / 0.72);
    --cam-kenar: rgb(255 255 255 / 0.08);

    --ikon-onay: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 20 20'%3e%3cpath fill='none' stroke='%2314210A' stroke-linecap='round' stroke-linejoin='round' stroke-width='3' d='m6 10 3 3 6-6'/%3e%3c/svg%3e");
    --ikon-radyo: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='-4 -4 8 8'%3e%3ccircle r='2' fill='%2314210A'/%3e%3c/svg%3e");
    --ikon-secim-ok: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16'%3e%3cpath fill='none' stroke='%23B4BCAA' stroke-linecap='round' stroke-linejoin='round' stroke-width='2' d='m2 5 6 6 6-6'/%3e%3c/svg%3e");

    --bs-primary-rgb: 155, 201, 107;
    --bs-secondary-rgb: 180, 188, 170;
    --bs-success-rgb: 99, 201, 143;
    --bs-info-rgb: 114, 182, 238;
    --bs-warning-rgb: 226, 167, 67;
    --bs-danger-rgb: 240, 127, 129;
    --bs-body-color-rgb: 230, 235, 224;
    --bs-body-bg-rgb: 18, 21, 16;
    --bs-emphasis-color-rgb: 230, 235, 224;
    --bs-link-color-rgb: 168, 210, 122;
    --bs-link-hover-color-rgb: 174, 214, 130;
}

@media (prefers-color-scheme: dark) {
    :root:not([data-tema="acik"]) {
        color-scheme: dark;

        --renk-zemin: #121510;
        --renk-yuzey: #1A1E17;
        --renk-yuzey-yukselmis: #23281F;
        --renk-yuzey-cukur: #0E110C;
        --renk-yuzey-ters: #E6EBE0;
        --renk-metin-ters: #121510;
        --renk-alan-zemin: #161A13;
        --renk-alan-devre-disi: #1F231C;

        --renk-cizgi: #2C3327;
        --renk-cizgi-guclu: #3F4838;
        --renk-cizgi-alan: #6E7865;

        --renk-metin: #E6EBE0;
        --renk-metin-ikincil: #B4BCAA;
        --renk-metin-soluk: #929B88;
        --renk-metin-devre-disi: #687160;

        --renk-birincil: #9BC96B;
        --renk-birincil-hover: #AED682;
        --renk-birincil-basili: #8AB85C;
        --renk-birincil-uzerinde: #14210A;
        --renk-birincil-zayif: #25341B;
        --renk-birincil-zayif-metin: #C2E3A0;
        --renk-birincil-metin: #A8D27A;

        --renk-vurgu: #E3A55A;
        --renk-vurgu-zayif: #3A2A17;
        --renk-vurgu-metin: #F3C88F;

        --renk-yanmenu-zemin: #161A13;
        --renk-yanmenu-zemin-acik: #1F241B;
        --renk-yanmenu-metin: #E3E8DC;
        --renk-yanmenu-soluk: #949C8A;
        --renk-yanmenu-aktif: #252B20;
        --renk-yanmenu-isaret: #9BC96B;
        --renk-yanmenu-kenar: #2E3A28;

        --renk-basari: #63C98F;
        --renk-basari-zayif: #15301F;
        --renk-basari-metin: #93DDB2;
        --renk-basari-kenar: #2A5A3D;

        --renk-uyari: #E2A743;
        --renk-uyari-zayif: #38290D;
        --renk-uyari-metin: #F2CB7E;
        --renk-uyari-kenar: #6A4E1A;

        --renk-hata: #F07F81;
        --renk-hata-zayif: #3B1719;
        --renk-hata-metin: #F7ACAD;
        --renk-hata-kenar: #6E2C2F;
        --renk-hata-dolu: #F07F81;
        --renk-hata-dolu-hover: #F59597;
        --renk-hata-dolu-uzerinde: #1F0708;

        --renk-bilgi: #72B6EE;
        --renk-bilgi-zayif: #12273A;
        --renk-bilgi-metin: #A7D3F6;
        --renk-bilgi-kenar: #26486A;

        --renk-odak: #7DB4FF;

        --renk-fason-zemin: #2E2645;
        --renk-fason-ust: #3A3157;
        --renk-fason-yan: #221B36;
        --renk-fason-metin: #DCD0FA;
        --renk-fason-kenar: #4A3E70;

        --renk-ic-zemin: #183A30;
        --renk-ic-ust: #21493D;
        --renk-ic-yan: #112B23;
        --renk-ic-metin: #AEE6D0;
        --renk-ic-kenar: #2A5E4E;

        --renk-girdi-zemin: #393016;
        --renk-girdi-ust: #4A3E1D;
        --renk-girdi-yan: #2A230F;
        --renk-girdi-metin: #F2DC98;
        --renk-girdi-kenar: #5E4D22;

        --renk-cikti-zemin: #1A3047;
        --renk-cikti-ust: #223D59;
        --renk-cikti-yan: #122335;
        --renk-cikti-metin: #B8D6F6;
        --renk-cikti-kenar: #2D4E70;

        --renk-maliyet-zemin: #3D1E28;
        --renk-maliyet-ust: #4C2733;
        --renk-maliyet-yan: #2E161E;
        --renk-maliyet-metin: #F5C2CF;
        --renk-maliyet-kenar: #5E3040;

        --golge-rgb: 0 0 0;
        --golge-carpan: 2.6;
        --isik-ust: rgb(255 255 255 / 0.06);
        --isik-ust-guclu: rgb(255 255 255 / 0.1);
        --cam-zemin: rgb(26 30 23 / 0.72);
        --cam-kenar: rgb(255 255 255 / 0.08);

        --ikon-onay: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 20 20'%3e%3cpath fill='none' stroke='%2314210A' stroke-linecap='round' stroke-linejoin='round' stroke-width='3' d='m6 10 3 3 6-6'/%3e%3c/svg%3e");
        --ikon-radyo: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='-4 -4 8 8'%3e%3ccircle r='2' fill='%2314210A'/%3e%3c/svg%3e");
        --ikon-secim-ok: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16'%3e%3cpath fill='none' stroke='%23B4BCAA' stroke-linecap='round' stroke-linejoin='round' stroke-width='2' d='m2 5 6 6 6-6'/%3e%3c/svg%3e");

        --bs-primary-rgb: 155, 201, 107;
        --bs-secondary-rgb: 180, 188, 170;
        --bs-success-rgb: 99, 201, 143;
        --bs-info-rgb: 114, 182, 238;
        --bs-warning-rgb: 226, 167, 67;
        --bs-danger-rgb: 240, 127, 129;
        --bs-body-color-rgb: 230, 235, 224;
        --bs-body-bg-rgb: 18, 21, 16;
        --bs-emphasis-color-rgb: 230, 235, 224;
        --bs-link-color-rgb: 168, 210, 122;
        --bs-link-hover-color-rgb: 174, 214, 130;
    }
}

/* ---------- Türetilmiş token'lar (her tema kökünde yeniden çözülür) ---------- */
:root,
[data-tema] {
    /* Yükselti: üst kenarda iç ışık + katmanlı gölgeler. Bulanıklık en çok 44 px. */
    --yukselti-0: none;
    --yukselti-1:
        inset 0 1px 0 var(--isik-ust),
        0 1px 1px rgb(var(--golge-rgb) / calc(0.05 * var(--golge-carpan))),
        0 1px 3px rgb(var(--golge-rgb) / calc(0.07 * var(--golge-carpan)));
    --yukselti-2:
        inset 0 1px 0 var(--isik-ust),
        0 1px 2px rgb(var(--golge-rgb) / calc(0.06 * var(--golge-carpan))),
        0 4px 10px -2px rgb(var(--golge-rgb) / calc(0.09 * var(--golge-carpan))),
        0 2px 4px -2px rgb(var(--golge-rgb) / calc(0.06 * var(--golge-carpan)));
    --yukselti-3:
        inset 0 1px 0 var(--isik-ust-guclu),
        0 2px 4px rgb(var(--golge-rgb) / calc(0.05 * var(--golge-carpan))),
        0 10px 22px -6px rgb(var(--golge-rgb) / calc(0.14 * var(--golge-carpan))),
        0 4px 8px -4px rgb(var(--golge-rgb) / calc(0.08 * var(--golge-carpan)));
    --yukselti-4:
        inset 0 1px 0 var(--isik-ust-guclu),
        0 4px 8px rgb(var(--golge-rgb) / calc(0.05 * var(--golge-carpan))),
        0 22px 44px -12px rgb(var(--golge-rgb) / calc(0.22 * var(--golge-carpan))),
        0 10px 18px -10px rgb(var(--golge-rgb) / calc(0.12 * var(--golge-carpan)));
    /* Basılı buton ve çukur alanlar */
    --yukselti-basili:
        inset 0 2px 4px rgb(var(--golge-rgb) / calc(0.14 * var(--golge-carpan))),
        inset 0 1px 1px rgb(var(--golge-rgb) / calc(0.1 * var(--golge-carpan)));
    --yukselti-cukur:
        inset 0 1px 2px rgb(var(--golge-rgb) / calc(0.07 * var(--golge-carpan)));

    --odak-halka-renk: var(--renk-odak);
    --odak-halka-yumusak: color-mix(in srgb, var(--renk-odak) 30%, transparent);

    /* ---- Bootstrap 5.3 değişken eşlemesi ---- */
    --bs-body-font-family: var(--yazi-aile);
    --bs-body-font-size: var(--yazi-md);
    --bs-body-font-weight: var(--kalinlik-normal);
    --bs-body-line-height: var(--satir-govde);
    --bs-body-color: var(--renk-metin);
    --bs-body-bg: var(--renk-zemin);
    --bs-emphasis-color: var(--renk-metin);
    --bs-heading-color: var(--renk-metin);
    --bs-secondary-color: var(--renk-metin-ikincil);
    --bs-secondary-bg: var(--renk-yuzey-cukur);
    --bs-tertiary-color: var(--renk-metin-soluk);
    --bs-tertiary-bg: var(--renk-yuzey-cukur);
    --bs-link-color: var(--renk-birincil-metin);
    --bs-link-hover-color: var(--renk-birincil-hover);
    --bs-code-color: var(--renk-vurgu-metin);
    --bs-highlight-color: var(--renk-metin);
    --bs-highlight-bg: var(--renk-vurgu-zayif);

    --bs-border-color: var(--renk-cizgi);
    --bs-border-color-translucent: var(--renk-cizgi);
    --bs-border-radius: var(--yaricap-md);
    --bs-border-radius-sm: var(--yaricap-sm);
    --bs-border-radius-lg: var(--yaricap-lg);
    --bs-border-radius-xl: var(--yaricap-xl);
    --bs-border-radius-pill: var(--yaricap-tam);
    --bs-box-shadow-sm: var(--yukselti-1);
    --bs-box-shadow: var(--yukselti-2);
    --bs-box-shadow-lg: var(--yukselti-4);
    --bs-box-shadow-inset: var(--yukselti-cukur);

    --bs-focus-ring-color: var(--odak-halka-yumusak);
    --bs-form-valid-color: var(--renk-basari);
    --bs-form-valid-border-color: var(--renk-basari);
    --bs-form-invalid-color: var(--renk-hata);
    --bs-form-invalid-border-color: var(--renk-hata);

    --bs-primary-text-emphasis: var(--renk-birincil-zayif-metin);
    --bs-primary-bg-subtle: var(--renk-birincil-zayif);
    --bs-primary-border-subtle: var(--renk-birincil);
    --bs-secondary-text-emphasis: var(--renk-metin);
    --bs-secondary-bg-subtle: var(--renk-yuzey-cukur);
    --bs-secondary-border-subtle: var(--renk-cizgi-guclu);
    --bs-success-text-emphasis: var(--renk-basari-metin);
    --bs-success-bg-subtle: var(--renk-basari-zayif);
    --bs-success-border-subtle: var(--renk-basari-kenar);
    --bs-warning-text-emphasis: var(--renk-uyari-metin);
    --bs-warning-bg-subtle: var(--renk-uyari-zayif);
    --bs-warning-border-subtle: var(--renk-uyari-kenar);
    --bs-danger-text-emphasis: var(--renk-hata-metin);
    --bs-danger-bg-subtle: var(--renk-hata-zayif);
    --bs-danger-border-subtle: var(--renk-hata-kenar);
    --bs-info-text-emphasis: var(--renk-bilgi-metin);
    --bs-info-bg-subtle: var(--renk-bilgi-zayif);
    --bs-info-border-subtle: var(--renk-bilgi-kenar);
    --bs-light-text-emphasis: var(--renk-metin);
    --bs-light-bg-subtle: var(--renk-yuzey-cukur);
    --bs-light-border-subtle: var(--renk-cizgi);
}

/* ---------- Yoğun ölçek: fareyle kullanılan ekranlar ----------
   Telefon/tablet (kaba işaretçi) varsayılanda kalır: 16 px gövde (iOS odak yakınlaştırması olmaz) ve 44 px dokunma.
   Fare/dokunmatik yüzeyde hedefler küçük olabilir; masaüstü iş ekranı daha sıkı ve daha çok veri gösterir. */
@media (hover: hover) and (pointer: fine) {
    :root {
        --yazi-sm: 0.8125rem;   /* 13 px */
        --yazi-md: 0.875rem;    /* 14 px — gövde ve alanlar */
        --yazi-lg: 1rem;        /* 16 px */
        --yazi-xl: clamp(1.125rem, 1.05rem + 0.3vw, 1.25rem);   /* 18 → 20 */
        --yazi-2xl: clamp(1.25rem, 1.1rem + 0.5vw, 1.5rem);     /* 20 → 24 */
        --yazi-3xl: clamp(1.5rem, 1.3rem + 0.8vw, 1.875rem);    /* 24 → 30 */
        --yazi-dugme: 0.875rem;

        --dokunma-min: 36px;
        --kontrol-yukseklik: 36px;
        --kontrol-yukseklik-sm: 30px;
        --kontrol-yukseklik-lg: 44px;
        --kontrol-dolgu-y: 0.375rem;
        --ikon-boyut: 1.125rem;
        --yan-menu-genislik: 15rem;
        --ust-cubuk-yukseklik: 3rem;
    }
}

/* ---------- Erişilebilirlik: hareketi azalt ---------- */
@media (prefers-reduced-motion: reduce) {
    :root,
    [data-tema] {
        --sure-anlik: 0ms;
        --sure-hizli: 0ms;
        --sure-orta: 0ms;
        --sure-yavas: 0ms;
        --egik-aci: 0deg;
        --egik-yukari: 0px;
    }
}

/* ---------- Erişilebilirlik: yüksek kontrast ---------- */
@media (prefers-contrast: more) {
    :root,
    [data-tema="acik"] {
        --renk-cizgi: #8A9380;
        --renk-cizgi-guclu: #5B6451;
        --renk-cizgi-alan: #4A5443;
        --renk-metin-ikincil: #30382B;
        --renk-metin-soluk: #3D4637;
        --cam-zemin: var(--renk-yuzey);
    }

    [data-tema="koyu"] {
        --renk-cizgi: #5D6754;
        --renk-cizgi-guclu: #8A947F;
        --renk-cizgi-alan: #A3AC98;
        --renk-metin-ikincil: #D3DACB;
        --renk-metin-soluk: #C0C8B6;
        --cam-zemin: var(--renk-yuzey);
    }
}

@media (prefers-contrast: more) and (prefers-color-scheme: dark) {
    :root:not([data-tema="acik"]) {
        --renk-cizgi: #5D6754;
        --renk-cizgi-guclu: #8A947F;
        --renk-cizgi-alan: #A3AC98;
        --renk-metin-ikincil: #D3DACB;
        --renk-metin-soluk: #C0C8B6;
        --cam-zemin: var(--renk-yuzey);
    }
}
