/* Fiİhale Tasarım Sistemi — jetonlar (tasarim/fiihale-site-1111/fiihale-tokens.css aynen; claude.ai/artifact/KxbEfmTdbGoJDFAjopcA2k tokens.json).
   Yazı tipleri KENDİ SUNUCUMUZDAN (/v/…, dış CDN yok): Manrope (değişken 200–800, latin + latin-ext — unicode-range vitrin deseni) + IBM Plex Mono 500 / 600.
   Inter fiihale.com'da kullanılmaz (.site Manrope); --font-metin yığını sistem yazısına düşer. Lisanslar: fiihale-proje/lisans/ (OFL 1.1). */
:root, [data-theme="acik"] { --zemin: #f9fafb; --kagit: #ffffff; --kagit-2: #f9fafb; --yuzey-2: #f3f4f6; --murekkep: #111827; --murekkep-2: #4b5563; --murekkep-3: #6b7280; --murekkep-ters: #ffffff; --cizgi: #e5e7eb; --cizgi-guclu: #d1d5db; --mavi: #2563eb; --yg-btn-mavi-hover: #1d4ed8; --mavi-ton: #eff6ff; --odak: #1d4ed8; --yesil: #1b7f3a; --yesil-ton: #f0fdf4; --turuncu: #c2410c; --turuncu-ton: #fff7ed; --tehlike: #dc2626; --tehlike-ton: #fef2f2; --tehlike-yazi: #b91c1c; --zeytin: #4a5e28; --zeytin-koyu: #36461d; --zeytin-ton: #eef2e2; --on-zeytin: #ffffff; --fi-bas: #6b8230; --fi-son: #34451a; --logo-acik-zemin: #f5f6fa; --logo-koyu-zemin: #15182a; --golge-1: 0 1px 2px 0 rgba(0, 0, 0, 0.05); --golge-2: 0 4px 6px -1px rgba(0, 0, 0, 0.1), 0 2px 4px -2px rgba(0, 0, 0, 0.1); --golge-orta: 0 10px 15px -3px rgba(0, 0, 0, 0.1), 0 4px 6px -4px rgba(0, 0, 0, 0.1); }
[data-theme="koyu"] { --zemin: #030712; --kagit: #111827; --kagit-2: #1f2937; --yuzey-2: #1f2937; --murekkep: #f3f4f6; --murekkep-2: #d1d5db; --murekkep-3: #9ca3af; --murekkep-ters: #ffffff; --cizgi: #1f2937; --cizgi-guclu: #374151; --mavi: #3b82f6; --yg-btn-mavi-hover: #1d4ed8; --mavi-ton: rgba(59, 130, 246, 0.16); --odak: #93c5fd; --yesil: #4ade80; --yesil-ton: rgba(74, 222, 128, 0.13); --turuncu: #fb923c; --turuncu-ton: rgba(251, 146, 60, 0.14); --tehlike: #ef4444; --tehlike-ton: rgba(239, 68, 68, 0.15); --tehlike-yazi: #fca5a5; --zeytin: #a3b86c; --zeytin-koyu: #b8cb85; --zeytin-ton: rgba(163, 184, 108, 0.14); --on-zeytin: #14190a; --fi-bas: #6b8230; --fi-son: #34451a; --logo-acik-zemin: #f5f6fa; --logo-koyu-zemin: #15182a; --golge-1: 0 1px 2px 0 rgba(0, 0, 0, 0.5); --golge-2: 0 4px 6px -1px rgba(0, 0, 0, 0.5), 0 2px 4px -2px rgba(0, 0, 0, 0.4); --golge-orta: 0 10px 15px -3px rgba(0, 0, 0, 0.55), 0 4px 6px -4px rgba(0, 0, 0, 0.45); }
:root { --bos-1: 4px; --bos-2: 8px; --bos-3: 12px; --bos-4: 16px; --bos-5: 24px; --bos-6: 32px; --hucre-y: 5px; --hucre-x: 9px; --r-kucuk: 6px; --r-orta: 8px; --r-buyuk: 12px; --r-hap: 999px; --font-metin: "Inter", ui-sans-serif, system-ui, -apple-system, "Segoe UI", Roboto, Helvetica, Arial, sans-serif; --font-baslik: "Manrope", "Inter", system-ui, -apple-system, "Segoe UI", sans-serif; --font-mono: "IBM Plex Mono", "Cascadia Mono", Consolas, monospace; }
@font-face { font-family: 'Manrope'; font-style: normal; font-weight: 200 800; font-display: swap; src: url('/v/manrope-latin-ext.woff2?s=27eccb1f8944') 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-20C4, U+2113, U+2C60-2C7F, U+A720-A7FF; }
@font-face { font-family: 'Manrope'; font-style: normal; font-weight: 200 800; font-display: swap; src: url('/v/manrope-latin.woff2?s=8bd97e6bbbc1') 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: 'IBM Plex Mono'; font-style: normal; font-weight: 400 500; font-display: swap; src: url('/v/plex-mono-500.woff2?s=0498bcb48294') format('woff2'); }
@font-face { font-family: 'IBM Plex Mono'; font-style: normal; font-weight: 600 700; font-display: swap; src: url('/v/plex-mono-600.woff2?s=5148e1fccb46') format('woff2'); }
/* Fiİhale — bileşen stilleri. Her değer tokens.json'dan (var(--…)); burada renk sabiti yok.
   .btn ve .pul FiMuhasebe'deki sınıfların aynısı (YG1010); ihl- önekliler Fiİhale'nin yeni parçaları. */
*, *::before, *::after { box-sizing: border-box; }
body { margin: 0; font-family: var(--font-metin); font-size: 14px; line-height: 20px; background: var(--zemin); color: var(--murekkep); -webkit-font-smoothing: antialiased; }

/* Önizleme yerleşimi */
.ihl-ornek { padding: var(--bos-4); display: flex; flex-wrap: wrap; gap: var(--bos-2); align-items: center; }
.ihl-ornek-dikey { padding: var(--bos-4); display: grid; gap: var(--bos-4); }
.ihl-ornek-ad { font-size: 11px; line-height: 16px; font-weight: 700; letter-spacing: .06em; text-transform: uppercase; color: var(--murekkep-3); margin: 0 0 var(--bos-2); }
.ihl-gizli { position: absolute; width: 1px; height: 1px; overflow: hidden; clip: rect(0 0 0 0); white-space: nowrap; }

/* Simge — Lucide çizgi simgesi, 24'lük ızgara, currentColor */
.ihl-svg { width: 16px; height: 16px; flex: none; fill: none; stroke: currentColor; stroke-width: 2; stroke-linecap: round; stroke-linejoin: round; }

/* ---------- Düğme (.btn — FiMuhasebe YG1010) ---------- */
.btn { display: inline-flex; align-items: center; justify-content: center; gap: 6px; font: inherit; font-size: 14px; line-height: 20px; font-weight: 500;
  padding: 8px 16px; border-radius: var(--r-orta); border: 1px solid transparent; background: var(--kagit); color: var(--murekkep);
  cursor: pointer; white-space: nowrap; text-decoration: none; transition: background .2s ease, border-color .2s ease, color .2s ease; }
.btn:focus-visible { outline: 2px solid var(--odak); outline-offset: 2px; }
.btn.birincil { background: var(--mavi); color: var(--murekkep-ters); box-shadow: var(--golge-1); }
.btn.birincil:hover { background: var(--yg-btn-mavi-hover); }
.btn.cerceve { background: var(--kagit); border-color: var(--cizgi); color: var(--murekkep-2); box-shadow: var(--golge-1); }
.btn.cerceve:hover { background: var(--kagit-2); color: var(--murekkep); border-color: var(--cizgi-guclu); }
.btn.kirmizi { background: var(--tehlike); color: var(--murekkep-ters); box-shadow: var(--golge-1); }
.btn.zeytin { background: var(--zeytin); color: var(--on-zeytin); box-shadow: var(--golge-1); }
.btn.zeytin:hover { background: var(--zeytin-koyu); }
.btn.yalniz-simge { padding: 9px; }
.btn[disabled], .btn[aria-disabled="true"] { opacity: .5; cursor: not-allowed; box-shadow: none; }

/* ---------- Pul (.pul — FiMuhasebe durum pulu; Fiİhale durumları ModulDurum adlarıyla) ---------- */
.pul { display: inline-flex; align-items: center; gap: 6px; font-size: 11px; line-height: 16px; font-weight: 500; letter-spacing: .01em;
  padding: 4px 11px; border-radius: var(--r-hap); white-space: nowrap; background: var(--yuzey-2); color: var(--murekkep-2); }
.pul::before { content: ""; width: 6px; height: 6px; border-radius: 50%; background: currentColor; }
.pul.YAYINDA, .pul.GONDERILDI { background: var(--mavi-ton); color: var(--odak); }
.pul.DEGERLENDIRME, .pul.ZARF_ACILDI { background: var(--turuncu-ton); color: var(--turuncu); }
.pul.SONUCLANDI, .pul.KAZANDI, .pul.KISMI { background: var(--yesil-ton); color: var(--yesil); }
.pul.KAYBETTI, .pul.GERI_CEKILDI { background: var(--yuzey-2); color: var(--murekkep-2); }
.pul.IPTAL { background: var(--yuzey-2); color: var(--murekkep-2); text-decoration: line-through; }
.pul.IHALE_IPTAL { background: var(--tehlike-ton); color: var(--tehlike-yazi); }

/* ---------- Kalan süre (liste hücresi; kalıcı şerit yok) ---------- */
.ihl-kalan { display: inline-flex; align-items: center; gap: var(--bos-1); font-variant-numeric: tabular-nums; color: var(--murekkep-2); white-space: nowrap; }
.ihl-kalan .ihl-svg { width: 14px; height: 14px; }
.ihl-kalan.yakin { color: var(--turuncu); font-weight: 600; }
.ihl-kalan.doldu { color: var(--murekkep-3); }
.ihl-kalan-tarih { display: block; font-size: 12.5px; line-height: 18px; color: var(--murekkep-3); font-variant-numeric: tabular-nums; white-space: nowrap; }

/* ---------- Sayaçlı sekme (Evraklar .evr6-cip dili) ---------- */
.ihl-sekmeler { display: flex; flex-wrap: wrap; gap: 6px; }
.ihl-sekme { font: inherit; font-size: 12.5px; line-height: 1.4; padding: 4px 11px; border-radius: var(--r-hap); border: 1px solid var(--cizgi);
  background: var(--kagit); color: var(--murekkep-2); cursor: pointer; white-space: nowrap; }
.ihl-sekme:hover { border-color: var(--cizgi-guclu); color: var(--murekkep); }
.ihl-sekme[aria-selected="true"] { background: var(--murekkep); border-color: var(--murekkep); color: var(--kagit); }
.ihl-sekme:focus-visible { outline: 2px solid var(--odak); outline-offset: 2px; }
.ihl-sekme-n { font-family: var(--font-mono); font-weight: 600; margin-left: 4px; font-variant-numeric: tabular-nums; }

/* ---------- Tablo (Açık ihaleler, Açtığım ihaleler, Tekliflerim, karşılaştırma) ---------- */
.ihl-tablo-kutu { background: var(--kagit); border: 1px solid var(--cizgi); border-radius: var(--r-buyuk); box-shadow: var(--golge-1); overflow-x: auto; }
.ihl-tablo { width: 100%; border-collapse: collapse; font-size: 14px; line-height: 20px; }
.ihl-tablo th { font-size: 11px; line-height: 16px; font-weight: 700; letter-spacing: .06em; text-transform: uppercase; color: var(--murekkep-3);
  text-align: left; background: var(--kagit-2); padding: var(--bos-2) var(--bos-3); border-bottom: 1px solid var(--cizgi); white-space: nowrap; }
.ihl-tablo td { padding: var(--bos-2) var(--bos-3); border-bottom: 1px solid var(--cizgi); vertical-align: middle; }
.ihl-tablo tbody tr:last-child td { border-bottom: 0; }
.ihl-tablo tbody tr:hover td { background: var(--kagit-2); }
.ihl-tablo .sag { text-align: right; }
.ihl-no { font-family: var(--font-mono); font-size: 13px; line-height: 18px; font-weight: 500; letter-spacing: .02em; color: var(--murekkep-2); white-space: nowrap; }
.ihl-baslik { display: block; font-size: 15px; line-height: 22px; font-weight: 600; color: var(--murekkep); }
.ihl-alt { display: block; font-size: 12.5px; line-height: 18px; color: var(--murekkep-3); }
.ihl-sayi { font-variant-numeric: tabular-nums; }
.ihl-kilit { display: inline-flex; align-items: center; gap: 6px; font-size: 12.5px; line-height: 18px; color: var(--murekkep-2); white-space: nowrap; }
.ihl-kapali { display: inline-block; width: 64px; height: 10px; border-radius: var(--r-hap); background: var(--yuzey-2); vertical-align: middle; }

/* ---------- Kapalı zarf şeridi (tek beyaz bant, ince ayraç, renkli kutu yok) ---------- */
.ihl-serit { display: flex; flex-wrap: wrap; background: var(--kagit); border: 1px solid var(--cizgi); border-radius: var(--r-buyuk); box-shadow: var(--golge-1); }
.ihl-serit > div { flex: 1 1 170px; padding: var(--bos-3) var(--bos-4); border-left: 1px solid var(--cizgi); min-width: 0; }
.ihl-serit > div:first-child { border-left: 0; }
.ihl-serit-ad { display: flex; align-items: center; gap: 6px; font-size: 12.5px; line-height: 18px; color: var(--murekkep-3); }
.ihl-serit-deger { display: block; font-size: 28px; line-height: 34px; font-weight: 600; font-variant-numeric: tabular-nums; color: var(--murekkep); }
.ihl-serit-deger.kucuk { font-size: 15px; line-height: 22px; margin-top: 6px; }
.ihl-serit-eylem { display: flex; align-items: center; justify-content: flex-end; }

/* ---------- Teklif karşılaştırma matrisi ---------- */
.ihl-matris th.firma { text-align: right; text-transform: none; letter-spacing: 0; font-size: 12.5px; line-height: 18px; font-weight: 600; color: var(--murekkep); }
.ihl-matris th.firma .ihl-alt { font-weight: 400; }
.ihl-matris td.fiyat { text-align: right; font-variant-numeric: tabular-nums; white-space: nowrap; }
.ihl-matris td.fiyat .tutar { display: block; font-size: 12.5px; line-height: 18px; color: var(--murekkep-3); }
.ihl-matris td.en-dusuk { background: var(--yesil-ton); }
.ihl-matris td.en-dusuk .birim { color: var(--yesil); font-weight: 600; }
.ihl-matris tbody tr:hover td.en-dusuk { background: var(--yesil-ton); }
.ihl-matris td.secili { box-shadow: inset 0 0 0 2px var(--mavi); }
.ihl-secim { display: inline-flex; align-items: center; gap: 8px; cursor: pointer; }
.ihl-secim input { accent-color: var(--mavi); width: 16px; height: 16px; margin: 0; }
.ihl-secim input:focus-visible { outline: 2px solid var(--odak); outline-offset: 2px; }
.ihl-matris .yok { color: var(--murekkep-3); }
.ihl-matris tfoot td { background: var(--kagit-2); font-size: 12.5px; line-height: 18px; color: var(--murekkep-2); border-bottom: 1px solid var(--cizgi); }
.ihl-matris tfoot tr.toplam td { font-size: 14px; line-height: 20px; font-weight: 600; color: var(--murekkep); }
.ihl-arac { display: flex; flex-wrap: wrap; gap: var(--bos-2); justify-content: flex-end; align-items: center; padding: var(--bos-3); border-top: 1px solid var(--cizgi); }
.ihl-arac .bosluk { flex: 1 1 auto; }

/* ---------- fiihale.com — ihale kartı ---------- */
.ihl-site { font-family: var(--font-baslik); font-weight: 500; }
.ihl-kartlar { display: grid; grid-template-columns: repeat(auto-fill, minmax(280px, 1fr)); gap: var(--bos-5); }
.ihl-kart { display: flex; flex-direction: column; gap: var(--bos-3); padding: var(--bos-4); background: var(--kagit); border: 1px solid var(--cizgi);
  border-radius: var(--r-buyuk); box-shadow: var(--golge-1); font-family: var(--font-baslik); transition: box-shadow .2s ease; }
.ihl-kart:hover { box-shadow: var(--golge-2); }
.ihl-kart-ust { display: flex; justify-content: space-between; align-items: center; gap: var(--bos-2); flex-wrap: wrap; }
.ihl-cip { display: inline-flex; align-items: center; font-size: 12.5px; line-height: 18px; font-weight: 600; padding: 3px 10px; border-radius: var(--r-hap);
  background: var(--zeytin-ton); color: var(--zeytin); white-space: nowrap; }
.ihl-kart-baslik { font-size: 17px; line-height: 24px; font-weight: 700; color: var(--murekkep); margin: 0; }
.ihl-kart-bilgi { display: grid; gap: 6px; margin: 0; padding: 0; list-style: none; font-size: 15px; line-height: 24px; font-weight: 500; color: var(--murekkep-2); }
.ihl-kart-bilgi li { display: flex; align-items: center; gap: var(--bos-2); }
.ihl-kart-bilgi .ihl-svg { color: var(--murekkep-3); }
.ihl-kart-alt { display: flex; justify-content: space-between; align-items: center; gap: var(--bos-2); padding-top: var(--bos-3); border-top: 1px solid var(--cizgi); }
.ihl-kart-alt .ihl-alt { font-family: var(--font-baslik); }

/* ---------- fiihale.com — kategori kutusu ---------- */
.ihl-kategoriler { display: grid; grid-template-columns: repeat(auto-fill, minmax(190px, 1fr)); gap: var(--bos-3); }
.ihl-kategori { display: flex; flex-direction: column; gap: 2px; padding: var(--bos-3) var(--bos-4); background: var(--kagit); border: 1px solid var(--cizgi);
  border-radius: var(--r-orta); text-decoration: none; color: var(--murekkep); font-family: var(--font-baslik); }
.ihl-kategori b { font-size: 15px; line-height: 22px; font-weight: 700; }
.ihl-kategori span { font-size: 12.5px; line-height: 18px; font-weight: 500; color: var(--murekkep-3); font-variant-numeric: tabular-nums; }
.ihl-kategori:hover { border-color: var(--zeytin); }
.ihl-kategori:focus-visible { outline: 2px solid var(--odak); outline-offset: 2px; }
.ihl-kategori[aria-current="page"] { background: var(--zeytin-ton); border-color: var(--zeytin); }
.ihl-kategori[aria-current="page"] span { color: var(--zeytin); }

/* ---------- Logo (kit dosyaları; açık / koyu zemin sürümü kendi zemininde) ---------- */
.ihl-logo-paneller { display: grid; grid-template-columns: repeat(auto-fill, minmax(260px, 1fr)); gap: var(--bos-3); }
.ihl-logo-panel { display: flex; align-items: center; justify-content: center; min-height: 128px; padding: var(--bos-5); border-radius: var(--r-buyuk);
  border: 1px solid var(--cizgi); background: var(--logo-acik-zemin); }
.ihl-logo-panel.koyu { background: var(--logo-koyu-zemin); border-color: var(--logo-koyu-zemin); }
.ihl-logo-panel img { display: block; max-width: 100%; height: 80px; }
.ihl-logo-panel img.dikey { height: 112px; }
.ihl-logo-panel img.ikon { height: 72px; }

/* ---------- Pencere ve form (FiMuhasebe .modal-kutu / .modal-bas / .form-izgara / .alan — YG1010 değerleri) ---------- */
.modal-kutu { background: var(--kagit); color: var(--murekkep); border: 1px solid var(--cizgi); border-radius: var(--r-buyuk); max-width: 620px; width: 100%;
  padding: 20px 22px; box-shadow: var(--golge-orta); }
.modal-kutu.genis { max-width: 760px; }
.modal-bas { display: flex; justify-content: space-between; align-items: flex-start; gap: 10px; border-bottom: 1px solid var(--cizgi); padding-bottom: var(--bos-3); margin-bottom: 6px; }
.modal-bas h2 { margin: 0; font-size: 18px; line-height: 26px; font-weight: 600; }
.modal-bas .ihl-alt { margin-top: 2px; }
.modal-kapat { border: 0; background: transparent; cursor: pointer; color: var(--murekkep-3); padding: 4px; border-radius: var(--r-orta); display: inline-flex; }
.modal-kapat:hover { background: var(--yuzey-2); color: var(--murekkep); }
.modal-kapat:focus-visible { outline: 2px solid var(--odak); outline-offset: 2px; }
.modal-b { font-size: 11px; line-height: 16px; font-weight: 700; text-transform: uppercase; letter-spacing: .06em; color: var(--murekkep-3); margin: 14px 0 6px; }
.modal-alt { display: flex; flex-wrap: wrap; gap: var(--bos-2); justify-content: flex-end; align-items: center; margin-top: 14px; padding-top: var(--bos-3); border-top: 1px solid var(--cizgi); }
.modal-alt .bosluk { flex: 1 1 auto; }
.form-izgara { display: grid; grid-template-columns: repeat(auto-fit, minmax(220px, 1fr)); gap: 15px 18px; }
.modal-kutu .form-izgara { grid-template-columns: repeat(auto-fit, minmax(260px, 1fr)); }
.alan { display: flex; flex-direction: column; gap: 6px; min-width: 0; }
.alan.tam { grid-column: 1 / -1; }
.alan > label:not(.ihl-secenek), .alan > .etiket { font-size: 12.5px; line-height: 18px; font-weight: 650; letter-spacing: .01em; color: var(--murekkep-2); }
.alan input:not([type=checkbox]):not([type=radio]), .alan select, .alan textarea, .ihl-girdi {
  font-family: var(--font-metin); font-size: 15px; line-height: 20px; color: var(--murekkep); background: var(--kagit);
  border: 1px solid var(--cizgi-guclu); border-radius: var(--r-orta); padding: 9px 12px; width: 100%; min-width: 0; }
.alan textarea { resize: vertical; min-height: 64px; }
.alan input:focus, .alan select:focus, .alan textarea:focus, .ihl-girdi:focus { border-color: var(--mavi); outline: 2px solid var(--odak); outline-offset: 1px; }
.alan input:disabled, .ihl-girdi:disabled { background: var(--kagit-2); color: var(--murekkep-3); }
.ihl-ikili { display: grid; grid-template-columns: 1fr 112px; gap: var(--bos-2); }
.ihl-sonek { position: relative; }
.ihl-sonek input { padding-right: 44px; }
.ihl-sonek span { position: absolute; right: 12px; top: 50%; transform: translateY(-50%); font-size: 14px; color: var(--murekkep-3); pointer-events: none; }
.ihl-secenek { display: inline-flex; align-items: center; gap: var(--bos-2); font-size: 14px; line-height: 20px; color: var(--murekkep); cursor: pointer; }
.ihl-secenek input { accent-color: var(--mavi); width: 16px; height: 16px; margin: 0; }
.ihl-secenek input:focus-visible { outline: 2px solid var(--odak); outline-offset: 2px; }
.ihl-secenek.kapali { color: var(--murekkep-3); cursor: not-allowed; }
.ihl-secenekler { display: flex; flex-wrap: wrap; gap: 10px 20px; }
.ihl-segment { display: inline-flex; padding: 3px; border-radius: var(--r-orta); background: var(--yuzey-2); gap: 2px; }
.ihl-segment label { display: inline-flex; align-items: center; padding: 6px 14px; border-radius: var(--r-kucuk); font-size: 14px; line-height: 20px; color: var(--murekkep-2); cursor: pointer; }
.ihl-segment input { position: absolute; opacity: 0; width: 1px; height: 1px; }
.ihl-segment label:has(input:checked) { background: var(--kagit); color: var(--murekkep); font-weight: 600; box-shadow: var(--golge-1); }
.ihl-segment label:has(input:focus-visible) { outline: 2px solid var(--odak); outline-offset: 1px; }
.ihl-sekme[aria-pressed="true"] { background: var(--murekkep); border-color: var(--murekkep); color: var(--kagit); }
.ihl-kalem-tablo { width: 100%; border-collapse: collapse; font-size: 14px; line-height: 20px; }
.ihl-kalem-tablo td { padding: 6px 0; border-bottom: 1px solid var(--cizgi); vertical-align: middle; }
.ihl-kalem-tablo td + td { padding-left: var(--bos-3); }
.ihl-kalem-tablo tr:last-child td { border-bottom: 0; }
.ihl-kalem-tablo .ihl-girdi { padding: 6px 10px; font-size: 14px; }
.ihl-secim-liste { display: grid; gap: 0; border: 1px solid var(--cizgi); border-radius: var(--r-orta); overflow: hidden; }
.ihl-secim-satir { display: grid; grid-template-columns: auto 1fr auto; gap: var(--bos-3); align-items: center; padding: 10px 12px; border-top: 1px solid var(--cizgi); cursor: pointer; }
.ihl-secim-satir:first-child { border-top: 0; }
.ihl-secim-satir:has(input:checked) { background: var(--mavi-ton); }
.ihl-secim-satir input { accent-color: var(--mavi); width: 16px; height: 16px; margin: 0; }
.ihl-secim-satir .tutar { font-variant-numeric: tabular-nums; font-weight: 600; white-space: nowrap; }
.pul.INDIRIM_ISTENDI { background: var(--turuncu-ton); color: var(--turuncu); }
.ihl-secim-satir .ihl-alt { color: var(--murekkep-2); }
/* fiihale.com — sayfa iskeleti. Kaynak: tasarim/fiihale-site-1111/site.css (patron 11.11 «Baktım, güzel» — ONAYLI, v2 hareketli sahne dahil); renk / ölçü
   yalnız Fiİhale jetonlarından (tokens.css); bileşenler bilesen.css (tasarım sistemi bundle.css). Tek fark: sayaç (.say) betik açınca .on alır —
   betiksiz sayfada rakam düz yazı olarak okunur (satır içi style= YOK, sıkı CSP). */
.site { font-family: var(--font-baslik); font-weight: 500; font-size: 15px; line-height: 24px; color: var(--murekkep); background: var(--zemin); min-height: 100%; }
.site a { color: inherit; }
.site :focus-visible { outline: 2px solid var(--odak); outline-offset: 2px; }
.ic { max-width: 1160px; margin: 0 auto; padding-inline: 32px; }

/* Üst çubuk — buzlu cam, yapışık */
:root { --tepe-cam: rgba(255, 255, 255, .78); --zeytin-acik: #a3b86c; --egri: cubic-bezier(.2, .8, .3, 1); }
[data-theme="koyu"] { --tepe-cam: rgba(17, 24, 39, .78); }
.tepe { position: sticky; top: 0; z-index: 20; background: var(--tepe-cam); -webkit-backdrop-filter: saturate(180%) blur(18px); backdrop-filter: saturate(180%) blur(18px); border-bottom: 1px solid var(--cizgi); }
.tepe .ic { display: flex; flex-wrap: wrap; align-items: center; gap: 12px 28px; min-height: 72px; padding-block: 8px; }
.tepe .logo { display: block; height: 46px; width: auto; }
.tepe nav { display: flex; flex-wrap: wrap; gap: 4px 22px; flex: 1 1 auto; }
.tepe nav a { text-decoration: none; color: var(--murekkep-2); font-weight: 600; font-size: 15px; }
.tepe nav a:hover { color: var(--murekkep); }
.tepe nav a[aria-current="page"] { color: var(--zeytin); }
.tepe .sag { display: flex; gap: 8px; }

/* Manşet */
.manset { padding-block: 48px 28px; }
.manset h1 { margin: 0; font-size: 44px; line-height: 48px; font-weight: 800; letter-spacing: -.02em; text-wrap: balance; }
.manset .giris { margin: 12px 0 0; max-width: 60ch; font-size: 17px; line-height: 26px; color: var(--murekkep-2); }
.suzgec { display: flex; flex-wrap: wrap; gap: 8px; margin-top: 24px; padding: 8px; max-width: 780px; background: var(--kagit); border: 1px solid var(--cizgi); border-radius: var(--r-buyuk); box-shadow: var(--golge-1); }
.suzgec label { position: absolute; width: 1px; height: 1px; overflow: hidden; clip: rect(0 0 0 0); }
.suzgec select { flex: 1 1 210px; min-width: 0; font: 600 15px/20px var(--font-baslik); color: var(--murekkep); background: var(--kagit); border: 1px solid var(--cizgi-guclu); border-radius: var(--r-orta); padding: 11px 12px; }
.ozet { display: flex; flex-wrap: wrap; gap: 6px 24px; margin: 16px 0 0; padding: 0; list-style: none; font-size: 14px; line-height: 20px; color: var(--murekkep-3); }
.ozet b { color: var(--murekkep); font-variant-numeric: tabular-nums; font-weight: 700; }

/* Bölümler */
.bolum { padding-block: 28px; }
.bolum-bas { display: flex; flex-wrap: wrap; align-items: baseline; justify-content: space-between; gap: 6px 16px; margin-bottom: 16px; }
.bolum-bas h2 { margin: 0; font-size: 28px; line-height: 34px; font-weight: 700; letter-spacing: -.01em; }
.bolum-bas .ihl-alt { font-family: var(--font-baslik); }
.site .daha { color: var(--zeytin); font-weight: 700; text-decoration: none; font-size: 15px; }
.site .daha:hover { text-decoration: underline; }
.kirinti { display: flex; flex-wrap: wrap; gap: 6px; padding-top: 24px; margin: 0; list-style: none; font-size: 14px; color: var(--murekkep-3); }
.kirinti a { color: var(--murekkep-2); text-decoration: none; }
.kirinti a:hover { text-decoration: underline; }
.kirinti li + li::before { content: "›"; margin-right: 6px; color: var(--murekkep-3); }

/* Son günü yaklaşanlar — liste */
.yakin { background: var(--kagit); border: 1px solid var(--cizgi); border-radius: var(--r-buyuk); box-shadow: var(--golge-1); }
.yakin-satir { display: grid; grid-template-columns: minmax(0, 1fr) 200px 220px auto; gap: 8px 20px; align-items: center; padding: 14px 16px; border-top: 1px solid var(--cizgi); }
.yakin-satir:first-child { border-top: 0; }
.yakin-satir .ad { font-weight: 700; font-size: 16px; line-height: 22px; }
.yakin-satir .yer { color: var(--murekkep-2); display: flex; align-items: center; gap: 8px; }
.yakin-satir .yer .ihl-svg { color: var(--murekkep-3); }

/* İller */
.iller { display: flex; flex-wrap: wrap; gap: 8px; }
.il { display: inline-flex; align-items: center; gap: 8px; padding: 8px 14px; border: 1px solid var(--cizgi); border-radius: var(--r-hap); background: var(--kagit); text-decoration: none; font-weight: 600; font-size: 15px; }
.il span { color: var(--murekkep-3); font-weight: 500; font-variant-numeric: tabular-nums; }
.il:hover { border-color: var(--zeytin); }

/* Nasıl işler */
.adimlar { display: grid; grid-template-columns: repeat(auto-fit, minmax(250px, 1fr)); gap: 16px; margin: 0; padding: 0; list-style: none; }
.adim { display: flex; flex-direction: column; gap: 6px; padding: 20px; background: var(--kagit); border: 1px solid var(--cizgi); border-radius: var(--r-buyuk); }
.adim .no { font-family: var(--font-mono); font-size: 13px; line-height: 18px; font-weight: 600; color: var(--zeytin); }
.adim h3 { margin: 0; font-size: 17px; line-height: 24px; font-weight: 700; }
.adim p { margin: 0; color: var(--murekkep-2); }
.alici { margin: 16px 0 0; color: var(--murekkep-2); }
.alici b { color: var(--murekkep); }

/* İhale sayfası */
.ihale-bas { display: flex; flex-wrap: wrap; gap: 8px; align-items: center; margin-top: 20px; }
.ihale-bas h1 { flex: 1 0 100%; margin: 6px 0 0; font-size: 36px; line-height: 42px; font-weight: 800; letter-spacing: -.02em; text-wrap: balance; }
.ihale-govde { display: flex; flex-wrap: wrap; gap: 24px; align-items: flex-start; padding-block: 24px 8px; }
.kunye { flex: 999 1 520px; min-width: 0; display: grid; grid-template-columns: repeat(auto-fit, minmax(220px, 1fr)); gap: 0; margin: 0; background: var(--kagit); border: 1px solid var(--cizgi); border-radius: var(--r-buyuk); box-shadow: var(--golge-1); overflow: hidden; }
.kunye div { padding: 16px 20px; border-bottom: 1px solid var(--cizgi); }
.kunye dt { font-size: 13px; line-height: 18px; color: var(--murekkep-3); }
.kunye dd { margin: 4px 0 0; font-size: 17px; line-height: 24px; font-weight: 700; }
.kunye dd .ihl-alt { font-family: var(--font-baslik); font-weight: 500; }
.kapi { flex: 1 1 320px; min-width: 0; display: flex; flex-direction: column; gap: 12px; padding: 24px; background: var(--kagit); border: 1px solid var(--zeytin); border-radius: var(--r-buyuk); box-shadow: var(--golge-2); }
.kapi h2 { margin: 0; font-size: 20px; line-height: 28px; font-weight: 700; display: flex; gap: 10px; align-items: center; }
.kapi h2 .ihl-svg { width: 20px; height: 20px; color: var(--zeytin); }
.kapi p { margin: 0; color: var(--murekkep-2); }
.kapi ol { margin: 0; padding-left: 20px; color: var(--murekkep-2); display: grid; gap: 4px; }
.kapi .btn { align-self: stretch; padding-block: 12px; font-size: 16px; font-weight: 700; }
.kapi .ihl-alt { font-family: var(--font-baslik); }

/* Kategori sayfası */
.suzgec-satir { display: flex; flex-wrap: wrap; gap: 8px; align-items: center; margin-bottom: 16px; }
.suzgec-satir select { font: 600 14px/20px var(--font-baslik); color: var(--murekkep); background: var(--kagit); border: 1px solid var(--cizgi-guclu); border-radius: var(--r-orta); padding: 8px 10px; }
.suzgec-satir .ihl-alt { font-family: var(--font-baslik); margin-left: auto; }

/* Alt bilgi */
.alt { margin-top: 40px; background: var(--logo-koyu-zemin); color: var(--murekkep-ters); }
.alt .ic { display: flex; flex-wrap: wrap; gap: 24px 48px; padding-block: 40px; }
.alt .marka { flex: 1 1 280px; display: flex; flex-direction: column; gap: 12px; }
.alt .marka img { height: 52px; width: auto; align-self: flex-start; }
.alt .marka p { margin: 0; color: rgba(255, 255, 255, .78); font-size: 14px; line-height: 22px; max-width: 46ch; }
.alt nav { flex: 1 1 200px; display: flex; flex-direction: column; gap: 8px; }
.alt nav b { font-size: 13px; letter-spacing: .06em; text-transform: uppercase; color: rgba(255, 255, 255, .78); }
.alt nav a { text-decoration: none; color: var(--murekkep-ters); font-size: 15px; }
.alt nav a:hover { text-decoration: underline; }
.alt .ibare { flex: 1 0 100%; border-top: 1px solid rgba(255, 255, 255, .16); padding-top: 20px; display: flex; flex-wrap: wrap; justify-content: space-between; gap: 8px 24px; color: rgba(255, 255, 255, .78); font-size: 13px; line-height: 20px; }

@media (max-width: 720px) {
  .ic { padding-inline: 16px; }
  .tepe .logo { height: 38px; }
  .tepe nav { order: 3; flex: 1 0 100%; }
  .manset { padding-block: 28px 16px; }
  .manset h1 { font-size: 32px; line-height: 38px; }
  .bolum-bas h2 { font-size: 22px; line-height: 28px; }
  .yakin-satir { grid-template-columns: minmax(0, 1fr) auto; }
  .yakin-satir .yer { grid-column: 1; }
  .yakin-satir .ihl-kalan { grid-column: 1; }
  .yakin-satir .btn { grid-column: 2; grid-row: 1 / span 3; }
  .ihale-bas h1 { font-size: 28px; line-height: 34px; }
}

/* ===================== Vitrin: büyük yazı + hareketli ihale sahnesi ===================== */
.vitrin { position: relative; overflow: hidden; padding-block: 72px 56px; }
.vitrin .ic { display: grid; grid-template-columns: minmax(0, 1.05fr) minmax(0, 1fr); gap: 56px; align-items: center; }
.vitrin .ust-yazi { margin: 0 0 14px; font-size: 15px; font-weight: 700; letter-spacing: .02em; color: var(--zeytin); }
.vitrin h1 { margin: 0; font-size: clamp(40px, 5.6vw, 76px); line-height: 1.02; font-weight: 800; letter-spacing: -.035em; text-wrap: balance; }
.vitrin h1 span { display: inline-block; animation: yukari .9s var(--egri) both; }
.vitrin h1 span:nth-child(2) { animation-delay: .08s; }
.vitrin h1 span:nth-child(3) { animation-delay: .16s; }
.vitrin .giris { margin: 20px 0 0; max-width: 36ch; font-size: 20px; line-height: 30px; color: var(--murekkep-2); animation: yukari .9s .2s var(--egri) both; }
.vitrin .eylem { display: flex; flex-wrap: wrap; gap: 12px 20px; align-items: center; margin-top: 28px; animation: yukari .9s .28s var(--egri) both; }
.btn.iri { border-radius: var(--r-hap); padding: 13px 24px; font-size: 16px; font-weight: 700; }
.ok-bag { color: var(--zeytin); font-weight: 700; text-decoration: none; font-size: 16px; display: inline-flex; gap: 6px; align-items: center; }
.ok-bag .ihl-svg { transition: transform .25s var(--egri); }
.ok-bag:hover .ihl-svg { transform: translateX(3px); }
.vitrin .ozet { margin-top: 28px; gap: 6px 28px; font-size: 15px; animation: yukari .9s .36s var(--egri) both; }
.vitrin .ozet b { font-size: 22px; }
@property --say { syntax: "<integer>"; inherits: false; initial-value: 0; }
.say.on { counter-reset: n var(--say); animation: sayac 1.6s .3s var(--egri) both; }
.say.on::after { content: counter(n); }
@keyframes sayac { from { --say: 0; } }
@keyframes yukari { from { opacity: 0; transform: translateY(18px); } }

/* Arka plandaki Fi çerçeveleri (yavaş dönen yumuşak kareler) */
.yorunge { position: absolute; right: -120px; top: 40px; width: 720px; height: 720px; pointer-events: none; }
.yorunge i { position: absolute; inset: 0; border: 1.5px solid var(--zeytin); border-radius: 31%; opacity: .14; animation: don 70s linear infinite; }
.yorunge i:nth-child(2) { inset: 90px; opacity: .1; animation-duration: 50s; animation-direction: reverse; }
.yorunge i:nth-child(3) { inset: 190px; opacity: .08; animation-duration: 38s; }
@keyframes don { to { transform: rotate(360deg); } }

/* Sahne: bir ihalenin 12 saniyelik hayatı */
.sahne { position: relative; z-index: 1; display: flex; flex-direction: column; gap: 10px; padding: 22px; background: var(--kagit); border: 1px solid var(--cizgi);
  border-radius: 22px; box-shadow: 0 40px 80px -30px rgba(17, 24, 39, .35), var(--golge-1); animation: yukari 1s .15s var(--egri) both; }
.s-bas { display: flex; justify-content: space-between; align-items: center; gap: 8px; }
.s-canli { display: inline-flex; align-items: center; gap: 8px; font-size: 13px; font-weight: 700; color: var(--yesil); }
.s-canli i { width: 8px; height: 8px; border-radius: 50%; background: currentColor; animation: nabiz 1.6s ease-in-out infinite; }
@keyframes nabiz { 50% { box-shadow: 0 0 0 6px var(--yesil-ton); } }
.s-baslik { font-size: 19px; line-height: 26px; font-weight: 800; letter-spacing: -.01em; }
.s-alt { font-size: 14px; color: var(--murekkep-3); margin-top: -6px; }
.s-sayac { display: flex; justify-content: space-between; align-items: baseline; padding: 10px 14px; border-radius: var(--r-buyuk); background: var(--kagit-2); border: 1px solid var(--cizgi); }
.s-sayac span { font-size: 13px; color: var(--murekkep-3); }
.s-sayac b { font-family: var(--font-mono); font-size: 18px; font-weight: 600; font-variant-numeric: tabular-nums; }
.s-sahne { position: relative; height: 236px; }
.s-katman { position: absolute; inset: 0; display: flex; flex-direction: column; gap: 10px; }
.s-durum { font-size: 14px; color: var(--murekkep-2); display: flex; gap: 8px; align-items: center; }
.s-durum b { color: var(--murekkep); font-variant-numeric: tabular-nums; }
.s-durum .ihl-svg { color: var(--zeytin); }

/* A katmanı: kapalı zarflar */
.katman-a { opacity: 0; animation: katmanA 12s linear infinite; }
.zarflar { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 10px; }
.zarf { display: flex; align-items: center; gap: 10px; padding: 14px; border-radius: 14px; background: var(--zeytin-ton); color: var(--zeytin); font-weight: 700; font-size: 14px; border: 1px solid rgba(74, 94, 40, .18); }
.zarf .ihl-svg { width: 18px; height: 18px; }
.zarf span { color: var(--murekkep-2); font-weight: 500; margin-left: auto; font-family: var(--font-mono); font-size: 12px; }
.zarf:nth-child(1) { animation: zarf1 12s var(--egri) infinite; }
.zarf:nth-child(2) { animation: zarf2 12s var(--egri) infinite; }
.zarf:nth-child(3) { animation: zarf3 12s var(--egri) infinite; }
.zarf:nth-child(4) { animation: zarf4 12s var(--egri) infinite; }
.say-teklif { --say: 4; counter-reset: n var(--say); animation: teklifSay 12s linear infinite; }
.say-teklif::after { content: counter(n); }
@keyframes katmanA { 0%, 46% { opacity: 1; transform: none; } 51%, 100% { opacity: 0; transform: scale(.96); } }
@keyframes zarf1 { 0%, 4% { opacity: 0; transform: translateX(40px) rotate(4deg); } 9%, 100% { opacity: 1; transform: none; } }
@keyframes zarf2 { 0%, 12% { opacity: 0; transform: translateX(40px) rotate(4deg); } 17%, 100% { opacity: 1; transform: none; } }
@keyframes zarf3 { 0%, 20% { opacity: 0; transform: translateX(40px) rotate(4deg); } 25%, 100% { opacity: 1; transform: none; } }
@keyframes zarf4 { 0%, 28% { opacity: 0; transform: translateX(40px) rotate(4deg); } 33%, 100% { opacity: 1; transform: none; } }
@keyframes teklifSay { 0% { --say: 0; } 9% { --say: 1; } 17% { --say: 2; } 25% { --say: 3; } 33%, 100% { --say: 4; } }

/* C katmanı: zarflar açıldı → kalem × firma, kazanan zeytin */
.katman-c { animation: katmanC 12s linear infinite; }
.matris { display: grid; grid-template-columns: minmax(0, 1.2fr) repeat(3, minmax(0, 1fr)); gap: 6px; font-size: 13px; }
.matris > * { padding: 7px 8px; border-radius: 8px; background: var(--kagit-2); text-align: right; font-variant-numeric: tabular-nums; transition: none; }
.matris .k { text-align: left; background: transparent; font-weight: 700; color: var(--murekkep-2); padding-left: 0; }
.matris .f { background: transparent; color: var(--murekkep-3); font-weight: 700; font-size: 12px; padding-block: 0; }
.matris .kz { background: var(--zeytin); color: var(--on-zeytin); font-weight: 700; }
.matris .kz1 { animation: kz1 12s linear infinite; }
.matris .kz2 { animation: kz2 12s linear infinite; }
.matris .kz3 { animation: kz3 12s linear infinite; }
.matris .kz4 { animation: kz4 12s linear infinite; }
.siparis { align-self: flex-start; display: inline-flex; gap: 8px; align-items: center; padding: 8px 14px; border-radius: var(--r-hap); background: var(--yesil-ton); color: var(--yesil); font-weight: 700; font-size: 14px; animation: siparis 12s var(--egri) infinite; }
@keyframes katmanC { 0%, 50% { opacity: 0; transform: translateY(10px); } 55%, 93% { opacity: 1; transform: none; } 97%, 100% { opacity: 0; } }
@keyframes kz1 { 0%, 60% { background: var(--kagit-2); color: var(--murekkep); } 62%, 100% { background: var(--zeytin); color: var(--on-zeytin); } }
@keyframes kz2 { 0%, 66% { background: var(--kagit-2); color: var(--murekkep); } 68%, 100% { background: var(--zeytin); color: var(--on-zeytin); } }
@keyframes kz3 { 0%, 72% { background: var(--kagit-2); color: var(--murekkep); } 74%, 100% { background: var(--zeytin); color: var(--on-zeytin); } }
@keyframes kz4 { 0%, 78% { background: var(--kagit-2); color: var(--murekkep); } 80%, 100% { background: var(--zeytin); color: var(--on-zeytin); } }
@keyframes siparis { 0%, 82% { opacity: 0; transform: scale(.85); } 86%, 93% { opacity: 1; transform: none; } 97%, 100% { opacity: 0; } }

/* Kartlar: üzerine gelince kalkar */
.ihl-kart { transition: transform .35s var(--egri), box-shadow .35s var(--egri); }
.ihl-kart:hover { transform: translateY(-4px); box-shadow: var(--golge-orta); }
.ihl-kategori, .il { transition: border-color .2s ease, transform .3s var(--egri); }
.ihl-kategori:hover, .il:hover { transform: translateY(-2px); }

/* Koyu bant: kapalı zarf */
.bant { margin-block: 40px; background: var(--logo-koyu-zemin); color: var(--murekkep-ters); }
.bant .ic { display: grid; grid-template-columns: 220px minmax(0, 1fr); gap: 48px; align-items: center; padding-block: 72px; }
.bant .ust-yazi { margin: 0 0 12px; font-size: 15px; font-weight: 700; color: var(--zeytin-acik); }
.bant h2 { margin: 0; font-size: clamp(30px, 3.6vw, 48px); line-height: 1.08; font-weight: 800; letter-spacing: -.03em; text-wrap: balance; }
.bant ul { margin: 28px 0 0; padding: 0; list-style: none; display: grid; grid-template-columns: repeat(auto-fit, minmax(220px, 1fr)); gap: 20px; }
.bant li { font-size: 16px; line-height: 25px; color: rgba(255, 255, 255, .78); border-top: 1px solid rgba(255, 255, 255, .16); padding-top: 14px; }
.bant li b { display: block; color: var(--murekkep-ters); font-size: 17px; margin-bottom: 4px; }
.kilit { width: 200px; height: 200px; display: grid; place-items: center; border-radius: 31%; background: rgba(163, 184, 108, .12); border: 1.5px solid rgba(163, 184, 108, .35); }
.kilit svg { width: 96px; height: 96px; fill: none; stroke: var(--zeytin-acik); stroke-width: 1.6; stroke-linecap: round; stroke-linejoin: round; overflow: visible; }
.kilit .halka { animation: kilitlen 4s var(--egri) infinite; }
@keyframes kilitlen { 0%, 20% { transform: translateY(-5px); } 35%, 85% { transform: none; } 100% { transform: translateY(-5px); } }

/* Adımlar arasında çizgi */
.adimlar.cizgili { position: relative; }
.adim .no { font-size: 28px; line-height: 32px; font-weight: 600; }

/* Kaydırınca belir (destekleyen tarayıcıda; desteklemeyende her şey yerinde durur) */
@supports (animation-timeline: view()) {
  .belir { animation: yukari linear both; animation-timeline: view(); animation-range: entry 0% entry 90%; }
}

@media (max-width: 960px) {
  .vitrin .ic { grid-template-columns: minmax(0, 1fr); gap: 40px; }
  .bant .ic { grid-template-columns: minmax(0, 1fr); gap: 28px; }
  .kilit { width: 120px; height: 120px; } .kilit svg { width: 60px; height: 60px; }
}
@media (max-width: 720px) {
  .vitrin { padding-block: 36px 28px; }
  .vitrin .giris { font-size: 17px; line-height: 26px; }
  .yorunge { width: 480px; height: 480px; right: -220px; top: 10px; }
  .sahne { padding: 16px; border-radius: 18px; }
  .s-sahne { height: 252px; }
  .bant .ic { padding-block: 48px; }
}
@media (prefers-reduced-motion: reduce) {
  .site *, .site *::before, .site *::after { animation: none !important; transition: none !important; }
  .katman-a { display: none; }
}
/* Fiİhale 0.1.0 — onaylı taslağın (sayfa.css) üstüne YALNIZ uygulamanın gerektirdiği küçük ekler. Satır içi style= kullanılmadığı için taslaktaki
   style="…" değerleri buraya sınıf olarak taşındı; yeni renk / ölçü yok, hepsi jetonlardan. */
html, body { margin: 0; background: var(--zemin); }
body { font-family: var(--font-baslik); }
.site { min-height: 100vh; display: flex; flex-direction: column; }
.site > main { flex: 1 0 auto; }
.atla { position: absolute; left: 16px; top: -48px; z-index: 30; padding: 8px 14px; border-radius: var(--r-orta); background: var(--murekkep); color: var(--murekkep-ters) !important; text-decoration: none; font-weight: 700; }
.atla:focus { top: 12px; }

/* taslaktaki satır içi değerler */
.suzgec.alt-bosluk { margin: 0 0 20px; }
.bolum.ust-yok { padding-top: 0; }
.ihl-no.buyuk { font-size: 16px; }
.suzgec button, .suzgec-satir button { font-family: var(--font-baslik); }

/* betik açıksa (site.js «js» sınıfı) süzgeç seçimi kendiliğinden gönderilir; betiksiz sayfada düğme görünür */
.js .yalniz-betiksiz { display: none; }

/* boş durum, sayfalama */
.bos { margin: 0; padding: 20px; background: var(--kagit); border: 1px dashed var(--cizgi-guclu); border-radius: var(--r-buyuk); color: var(--murekkep-2); }
.sayfalar { display: flex; flex-wrap: wrap; gap: 8px; align-items: center; justify-content: center; margin-top: 24px; color: var(--murekkep-3); font-size: 14px; }

/* künyede izinli firma logosu */
.kunye dd img.firma-logo { display: block; width: 48px; height: 48px; object-fit: contain; margin-bottom: 6px; border-radius: var(--r-orta); background: var(--kagit-2); border: 1px solid var(--cizgi); }

/* il sayfasında ilçe çipleri */
.iller.ilceler { margin-bottom: 20px; }
.il[aria-current="page"] { border-color: var(--zeytin); background: var(--zeytin-ton); }

/* yasal metinler */
.yasal { max-width: 760px; padding-block: 8px 24px; }
.yasal h2 { margin: 28px 0 8px; font-size: 20px; line-height: 28px; font-weight: 700; }
.yasal p, .yasal li { color: var(--murekkep-2); }
.yasal ul, .yasal ol { padding-left: 20px; display: grid; gap: 4px; }
.yasal .tarih { color: var(--murekkep-3); font-size: 14px; }

/* hata / kaldırılmış ilan sayfası */
.hata-kutu { max-width: 640px; padding-block: 56px 24px; }
.hata-kutu h1 { margin: 0 0 12px; font-size: 32px; line-height: 38px; font-weight: 800; letter-spacing: -.02em; }
.hata-kutu p { color: var(--murekkep-2); margin: 0 0 20px; }

/* kırıntı: taslaktaki .kirinti yalnız üst boşluğu sıfırlıyordu — <ol> öndeğer sol girintisi başlıkla hizayı bozuyordu */
.kirinti { padding-left: 0; }
/* alt bilgideki e-posta: alt bilgi bağlantılarıyla aynı (altı çizgi yalnız üzerine gelince) */
.alt .marka a { text-decoration: none; }
.alt .marka a:hover { text-decoration: underline; }
/* 11.11 patron: açılış sahnesi temsilî — görünür «Örnek» etiketi */
.sahne .s-ornek { position: absolute; top: -11px; right: 18px; padding: 2px 10px; font-size: 11px; font-weight: 600; letter-spacing: .02em; color: var(--murekkep-2); background: var(--kagit); border: 1px solid var(--cizgi-guclu); border-radius: var(--r-hap); }