/* EVVEGO panel stili. Kurumsal renkler logo kılavuzundan: mavi #0054a4, kırmızı #e82c2e, koyu gri #383e42. */
:root {
  --renk-ana: #0054a4;
  --renk-ana-koyu: #00427f;
  --renk-vurgu: #e82c2e;
  --renk-zemin: #f5f6f8;
  --renk-kart: #ffffff;
  --renk-metin: #383e42;
  --renk-soluk: #5d6677;
  --renk-cizgi: #d9dde4;
  --renk-hata: #b42318;
  --renk-hata-zemin: #fef3f2;
  --renk-basari-zemin: #ecfdf3;
  --yaricap: 8px;
  font-family: system-ui, -apple-system, "Segoe UI", Roboto, sans-serif;
  color: var(--renk-metin);
}

* { box-sizing: border-box; }
body { margin: 0; background: var(--renk-zemin); line-height: 1.5; }
h1 { font-size: 1.5rem; margin: 0 0 1rem; }
a { color: var(--renk-ana); }
.soluk { color: var(--renk-soluk); }

/* Tek kartlı sayfalar: giriş ve doğrulama */
.tek-kart { min-height: 100vh; display: grid; place-items: center; padding: 16px; }
.kart { background: var(--renk-kart); border: 1px solid var(--renk-cizgi); border-radius: var(--yaricap); padding: 24px; }
.giris-karti { width: 100%; max-width: 420px; }
.marka { font-weight: 700; letter-spacing: .12em; color: var(--renk-ana); margin: 0 0 1rem; text-decoration: none; }
.adimlar { padding-left: 1.2rem; color: var(--renk-soluk); }
.karekod { display: flex; justify-content: center; margin: 1rem 0; }
.karekod svg { width: 200px; height: 200px; }

/* Formlar */
.alan { margin-bottom: 1rem; display: flex; flex-direction: column; gap: 4px; }
.alan label { font-weight: 600; font-size: .95rem; }
.alan input, .alan select, .alan textarea {
  font: inherit; padding: 10px 12px; border: 1px solid var(--renk-cizgi); border-radius: var(--yaricap); width: 100%;
}
.alan input:focus, .alan select:focus, .alan textarea:focus { outline: 2px solid var(--renk-ana); outline-offset: 1px; }
.alan-hatali input, .alan-hatali select, .alan-hatali textarea { border-color: var(--renk-hata); }
.alan-hatasi { color: var(--renk-hata); }
.yardim { color: var(--renk-soluk); }
.onay-kutusu { display: flex; gap: 8px; align-items: flex-start; font-weight: 400; }
.onay-kutusu input { width: auto; margin-top: 4px; }
/* Onay kutusu ve seçim düğmesi tam genişlik olmasın (genel .alan input kuralı onları esnetip
   yazıyı alta düşürüyordu); çoklu seçim listeleri yan yana dizilir. */
.alan input[type="checkbox"], .alan input[type="radio"] {
  width: 18px; height: 18px; padding: 0; margin: 0; flex: none; accent-color: var(--renk-ana);
}
/* İlan formundaki kart / hap biçimli seçimler (.secim-karti, .secim-hapi) kendi tasarımını korur. */
.alan div > label:not(.secim-karti, .secim-hapi):has(> input[type="checkbox"]),
.alan div > label:not(.secim-karti, .secim-hapi):has(> input[type="radio"]) {
  display: inline-flex; align-items: center; gap: 8px; font-weight: 400; min-height: 32px;
  cursor: pointer;
}
.alan > div:not(.secim-kartlari, .secim-haplari):has(> div > label > input[type="checkbox"]),
.alan > div:not(.secim-kartlari, .secim-haplari):has(> div > label > input[type="radio"]) {
  display: flex; flex-wrap: wrap; gap: 2px 22px;
}
.hata-kutusu { background: var(--renk-hata-zemin); color: var(--renk-hata); border-radius: var(--yaricap); padding: 8px 12px; margin-bottom: 1rem; }
.hata-kutusu p { margin: 0; }

.dugme { font: inherit; border: 1px solid var(--renk-cizgi); background: var(--renk-kart); border-radius: var(--yaricap); padding: 10px 16px; cursor: pointer; text-decoration: none; color: var(--renk-metin); display: inline-block; }
.ana-dugme { background: var(--renk-ana); border-color: var(--renk-ana); color: #fff; width: 100%; }
.ana-dugme:hover { background: var(--renk-ana-koyu); }
.baglanti-dugme { font: inherit; background: none; border: none; color: var(--renk-ana); cursor: pointer; padding: 0; text-decoration: underline; }
.ikincil-form { margin-top: 1rem; text-align: center; }

/* Panel */
.ust-cubuk { background: var(--renk-ana); color: #fff; display: flex; flex-wrap: wrap; align-items: center; gap: 12px 24px; padding: 12px 16px; }
.ust-cubuk .marka { color: #fff; margin: 0; }
.ana-menu { display: flex; flex-wrap: wrap; gap: 4px 16px; flex: 1; }
.ana-menu a { color: #fff; text-decoration: none; opacity: .9; }
.ana-menu a:hover { opacity: 1; text-decoration: underline; }
.kullanici-alani { display: flex; align-items: center; gap: 12px; }
.kullanici-alani .kullanici-adi { display: flex; flex-direction: column; line-height: 1.2; }
.kullanici-alani small { opacity: .8; }
.kullanici-alani .baglanti-dugme { color: #fff; }
.icerik { max-width: 1100px; margin: 0 auto; padding: 24px 16px; }
.bildirim { padding: 10px 12px; border-radius: var(--yaricap); margin-bottom: 1rem; background: var(--renk-basari-zemin); }
.bildirim-error { background: var(--renk-hata-zemin); color: var(--renk-hata); }

/* Liste ve ayrıntı sayfaları */
h2 { font-size: 1.15rem; margin: 1.25rem 0 .75rem; }
h3 { font-size: 1rem; margin: 1rem 0 .5rem; }
.gorunmez { position: absolute; width: 1px; height: 1px; overflow: hidden; clip: rect(0 0 0 0); }
.sayfa-basi { display: flex; flex-wrap: wrap; gap: 12px; align-items: center; justify-content: space-between; margin-bottom: 1rem; }
.sayfa-basi h1 { margin: 0; }
.dar { width: auto; }
.arama { display: flex; flex-wrap: wrap; gap: 8px; align-items: center; margin-bottom: 1rem; }
.arama input { flex: 1; min-width: 200px; font: inherit; padding: 10px 12px; border: 1px solid var(--renk-cizgi); border-radius: var(--yaricap); }
.tablo-sarmal { overflow-x: auto; background: var(--renk-kart); border: 1px solid var(--renk-cizgi); border-radius: var(--yaricap); }
.tablo { width: 100%; border-collapse: collapse; }
.tablo th, .tablo td { text-align: left; padding: 10px 12px; border-bottom: 1px solid var(--renk-cizgi); }
.tablo th { font-size: .85rem; color: var(--renk-soluk); font-weight: 600; }
.tablo tr:last-child td { border-bottom: none; }
.etiket { display: inline-block; font-size: .75rem; padding: 1px 8px; border-radius: 999px; background: var(--renk-zemin); border: 1px solid var(--renk-cizgi); color: var(--renk-soluk); }
.sayfalama { display: flex; gap: 16px; align-items: center; justify-content: center; margin: 1rem 0; }
.bos-durum { color: var(--renk-soluk); padding: 24px 0; }
.kart-izgara { display: grid; grid-template-columns: repeat(auto-fit, minmax(260px, 1fr)); gap: 16px; margin-bottom: 16px; }
.kart-izgara .kart h2 { margin-top: 0; }
.bilgi-listesi { display: grid; grid-template-columns: max-content 1fr; gap: 6px 16px; margin: 0; }
.bilgi-listesi dt { color: var(--renk-soluk); }
.bilgi-listesi dd { margin: 0; }
/* Hizmet bedeli ve danışman alacağı özeti: tutarlar sağa hizalı, dar ekranda kesilmez */
.hizmet-ozeti .bilgi-listesi { grid-template-columns: minmax(0, 1fr) auto; }
.hizmet-ozeti .bilgi-listesi dd { text-align: right; white-space: nowrap; }
/* Rapor formunda KDV dahil tutarın altında hesaplanan KDV hariç tutar ve KDV */
.kdv-ayrimi { margin: 4px 0 0; font-size: 14px; color: var(--renk-soluk); }
.kdv-ayrimi:empty { display: none; }
/* Performans raporu dönem seçimi: tarih aralığı telefonda alt alta */
.donem-secimi .tarih-araligi { display: inline-flex; flex-wrap: wrap; align-items: center; gap: 6px; }
.donem-secimi .tarih-araligi input { width: auto; min-width: 0; }
/* Broker danışman gözüyle görüntülerken üst şerit */
.gecis-seridi { display: flex; flex-wrap: wrap; gap: 8px 12px; align-items: center;
  justify-content: space-between; padding: 8px 16px; background: #fff3cd; color: #5c4400;
  border-bottom: 2px solid #e0a800; position: sticky; top: 0; z-index: 50; }
.gecis-seridi form { margin: 0; }
.gecis-seridi .dugme { width: auto; }
/* Portföy kartında site önizlemesi dışında yönetim bağlantısı */
.yonet-baglantisi { font-size: 14px; }
/* Liste + yanında düğme (ör. rapor formunda müşteri seçimi ve "Müşteri oluştur") */
/* Gizlenen öğe, display kuralı olan sınıflarda da gizli kalsın */
[hidden] { display: none !important; }
.secim-ve-dugme { display: flex; gap: 8px; align-items: stretch; }
.secim-ve-dugme select { flex: 1 1 0; min-width: 0; width: auto; }
.secim-ve-dugme .dugme { flex: 0 0 auto; width: auto; white-space: nowrap; }
/* Açılır pencere (dialog): telefonda tam genişlik, uzun içerikte kaydırılır */
dialog.pencere { width: min(560px, calc(100vw - 24px)); max-height: calc(100dvh - 24px);
  padding: 20px; border: 0; border-radius: 12px; box-shadow: 0 20px 60px #0004; overflow: auto; }
dialog.pencere::backdrop { background: #18202a88; }
.pencere-basi { display: flex; justify-content: space-between; align-items: center; gap: 12px; }
.pencere-basi h2 { margin: 0; }
.pencere-kapat { background: none; border: 0; font-size: 20px; cursor: pointer; padding: 4px 8px; }
.pencere-dugmeleri { display: flex; gap: 8px; flex-wrap: wrap; margin-top: 12px; }
.pencere-dugmeleri .dugme { width: auto; }
.duz-liste { list-style: none; padding: 0; margin: 0; display: grid; gap: 4px; }
.satir-koru { white-space: pre-line; margin: 0; }
.form-karti { max-width: 640px; }
.form-karti .ana-dugme { width: auto; }
.uyari-kutusu { background: #fffaeb; border: 1px solid #f5d38a; border-radius: var(--yaricap); padding: 12px 16px; margin-bottom: 1rem; max-width: 640px; }
.uyari-kutusu p { margin: .25rem 0; }
.iletisim-satiri { border: 1px solid var(--renk-cizgi); border-radius: var(--yaricap); padding: 12px; margin: 0 0 12px; }
.alan ul { list-style: none; padding: 0; margin: 0; display: flex; flex-wrap: wrap; gap: 4px 16px; }
.alan ul label { font-weight: 400; display: flex; gap: 6px; align-items: center; }
.alan ul input { width: auto; }
button:disabled { opacity: .6; cursor: wait; }

/* Telefon genişliğinde tablo satırları kart gibi görünür */
@media (max-width: 640px) {
  .tablo thead { display: none; }
  .tablo, .tablo tbody, .tablo tr, .tablo td { display: block; width: 100%; }
  .tablo tr { border-bottom: 1px solid var(--renk-cizgi); padding: 8px 0; }
  .tablo td { border: none; padding: 4px 12px; }
  .tablo td::before { content: attr(data-etiket) ": "; color: var(--renk-soluk); font-size: .85rem; }
  .tablo td:first-child::before { content: ""; }
}

/* Web talepleri */
.sekmeler { display: flex; flex-wrap: wrap; gap: 4px; margin-bottom: 1rem; }
.sekmeler a { padding: 6px 12px; border-radius: 999px; text-decoration: none; border: 1px solid var(--renk-cizgi); background: var(--renk-kart); }
.sekmeler a[aria-current="page"] { background: var(--renk-ana); color: #fff; border-color: var(--renk-ana); }
section.kart, details.kart { margin-bottom: 16px; }
details.kart summary { cursor: pointer; font-weight: 600; }
details.kart form { margin-top: 1rem; }
.ikincil-blok { margin-top: 1.5rem; padding-top: 1rem; border-top: 1px solid var(--renk-cizgi); }

/* Kurumsal site (geçici tasarım) */
.site { display: flex; flex-direction: column; min-height: 100vh; }
.site-ust { display: flex; flex-wrap: wrap; align-items: center; justify-content: space-between; gap: 12px 24px; padding: 16px; background: var(--renk-kart); border-bottom: 1px solid var(--renk-cizgi); }
.site-marka { font-weight: 700; letter-spacing: .14em; color: var(--renk-ana); text-decoration: none; font-size: 1.2rem; }
.site-menu { display: flex; flex-wrap: wrap; gap: 4px 20px; }
.site-menu a { text-decoration: none; color: var(--renk-metin); }
.site-menu a:hover { color: var(--renk-ana); text-decoration: underline; }
.site-icerik { flex: 1; width: 100%; max-width: 1000px; margin: 0 auto; padding: 32px 16px; }
.site-alt { background: var(--renk-ana); color: #fff; padding: 20px 16px; text-align: center; }
.site-alt a { color: #fff; }
.site-alt p { margin: .25rem 0; }
.vitrin { padding: 32px 0 40px; }
.vitrin-ust { color: var(--renk-vurgu); font-weight: 600; letter-spacing: .08em; text-transform: uppercase; margin: 0; }
.vitrin h1 { font-size: clamp(2rem, 6vw, 3.25rem); margin: .25rem 0 1rem; color: var(--renk-ana); }
.vitrin-metin { font-size: 1.15rem; color: var(--renk-soluk); max-width: 560px; }
.uzmanliklar { display: grid; grid-template-columns: repeat(auto-fit, minmax(240px, 1fr)); gap: 16px; }
.uzmanlik { text-decoration: none; color: var(--renk-metin); }
.uzmanlik:hover { border-color: var(--renk-ana); }
.uzmanlik h2 { margin-top: 0; color: var(--renk-ana); }
.degerler { display: flex; flex-wrap: wrap; gap: 8px; list-style: none; padding: 0; }
.degerler li { background: var(--renk-kart); border: 1px solid var(--renk-cizgi); border-radius: 999px; padding: 4px 14px; }
.gecici-not { margin-top: 2rem; font-size: .85rem; color: var(--renk-soluk); border-left: 3px solid var(--renk-vurgu); padding-left: 8px; }
.tuzak { position: absolute; left: -10000px; width: 1px; height: 1px; overflow: hidden; }
.baglanti-kutusu { background: var(--renk-zemin); border: 1px solid var(--renk-cizgi); border-radius: var(--yaricap); padding: 10px 12px; overflow-wrap: anywhere; }

/* DTS özet kartları */
.ozet-karti p { margin: 0; }
.buyuk-sayi { font-size: 2rem; font-weight: 700; color: var(--renk-ana); line-height: 1.2; margin: 4px 0 !important; }
.sayfa-basi > div { display: flex; flex-wrap: wrap; gap: 8px; }
form button + button { margin-left: 8px; }

/* İşlem raporu */
.eylemler { display: flex; flex-wrap: wrap; gap: 12px; align-items: center; }
.gerekce-tam { background: var(--renk-zemin); border-left: 3px solid var(--renk-vurgu); padding: 8px 12px; margin: 6px 0; }
.satir-ici { display: inline; }

/* Sıralamalar */
.siralama-listesi { list-style: none; padding: 0; margin: 0; display: grid; gap: 2px; }
.siralama-listesi li { display: grid; grid-template-columns: 3rem 1fr auto; gap: 8px; padding: 6px 8px; border-radius: var(--yaricap); }
.kendi-satiri { background: var(--renk-zemin); border: 1px solid var(--renk-ana); font-weight: 600; }

/* Komisyon ödemeleri: kısmi ödeme sabit renk (danışman ve yönetici aynı), tamamlanan gri */
.gizlilik-uyarisi { background: var(--renk-zemin); border-left: 3px solid var(--renk-ana); padding: 8px 12px; }
.odeme-filtre { display: flex; flex-wrap: wrap; gap: 8px; margin: 1rem 0; }
.odeme-filtre input, .odeme-filtre select { font: inherit; padding: 8px 10px; border: 1px solid var(--renk-cizgi); border-radius: var(--yaricap); }
.odeme-filtre input { flex: 1; min-width: 180px; }
.odeme-kismen td { background: #fff4d6; }
.odeme-tamamlandi td { background: #eef0f3; color: #6b7280; }
.durum-rozeti { display: inline-block; padding: 1px 8px; border-radius: 999px; font-size: .8rem; border: 1px solid var(--renk-cizgi); background: var(--renk-kart); position: relative; }
.durum-rozeti.kismi { background: #f5b83d; border-color: #d89a1c; color: #3b2a05; }
.durum-rozeti.tamam { background: #d1d5db; color: #374151; }
.durum-rozeti[data-aciklama]:hover::after, .durum-rozeti[data-aciklama]:focus::after {
  content: attr(data-aciklama); position: absolute; left: 0; top: 120%; z-index: 5; white-space: nowrap;
  background: var(--renk-metin); color: #fff; padding: 4px 8px; border-radius: 6px; font-size: .8rem; }
.arama-vurgusu { background: #b7e4ff; color: inherit; padding: 0 1px; border-radius: 2px; }
.ara-toplam summary { cursor: pointer; }
.bildirim-baglantisi { color: #fff; text-decoration: none; }
.sayac { background: var(--renk-vurgu); color: #fff; border-radius: 999px; padding: 0 7px; font-size: .8rem; }
.bildirim-listesi .okunmamis { border-color: var(--renk-ana); }
@media (max-width: 640px) {
  .mobilde-gizli { display: none !important; }
  .durum-rozeti[data-aciklama]::after { display: none; }  /* mobilde lejant yok */
}
@media print { .arama-vurgusu { outline: 1px solid #000; } }

/* Yönetici ödeme panelleri: en fazla 5 panel; dar ekranda yatay kaydırma */
.panel-satiri { display: grid; grid-auto-flow: column; grid-auto-columns: minmax(280px, 1fr); gap: 12px; overflow-x: auto; padding-bottom: 8px; }
.odeme-paneli h2 { margin-top: 0; }
.odeme-paneli input[type=search] { width: 100%; font: inherit; padding: 8px 10px; border: 1px solid var(--renk-cizgi); border-radius: var(--yaricap); margin-bottom: 8px; }
.panel-kaydi { padding: 8px; border-radius: var(--yaricap); border: 1px solid var(--renk-cizgi); }
.panel-kaydi.odeme-kismen { background: #fff4d6; }
.panel-kaydi.odeme-tamamlandi { background: #eef0f3; color: #6b7280; }
.hareketler { margin: 4px 0 0 1rem; padding: 0; font-size: .9rem; }
.secim-listesi { display: flex; flex-wrap: wrap; gap: 4px 16px; margin: 8px 0; }
.panel-secimi fieldset { border: none; padding: 0; margin: 0 0 8px; }
.duzeltme-farki-satiri td, div.duzeltme-farki-satiri { background: #eef6ff; font-style: italic; }
/* Broker düzeltmesi: ofis genelinde standart renkli, kalıcı "Güncellendi" etiketi */
.etiket.guncellendi { background: #e0ecff; border-color: #9cbcf0; color: #1f3a5f; }
.duzeltildi-bilgisi { background: #e0ecff; border-left: 3px solid #1f3a5f; padding: 6px 12px; }
/* Aidat */
.aidat-gecikmis td, .aidat-gecikmis_kismen td { background: #fdecec; }
.aidat-odendi td, .aidat-muaf td, .aidat-iptal td { color: #6b7280; }
.tablo details form { display: flex; flex-wrap: wrap; gap: 4px; margin-top: 6px; }
.tablo details input { font: inherit; padding: 4px 6px; border: 1px solid var(--renk-cizgi); border-radius: 6px; max-width: 140px; }
/* Finans */
.sonuc-kar { color: #166534; }
.sonuc-zarar { color: var(--renk-hata); }
.cubuk-satiri { display: grid; grid-template-columns: minmax(90px, 1fr) 2fr auto; gap: 8px; align-items: center; margin: 4px 0; }
.cubuk { display: block; height: 10px; background: var(--renk-zemin); border-radius: 999px; overflow: hidden; min-width: 80px; margin: 2px 0; }
.cubuk > span { display: block; height: 100%; background: var(--renk-ana); }
.cubuk.gider > span { background: var(--renk-vurgu); }
/* Portföy */
.portfoy-izgara { display: grid; grid-template-columns: repeat(auto-fill, minmax(220px, 1fr)); gap: 12px; }
.portfoy-karti { display: flex; flex-direction: column; gap: 4px; text-decoration: none; color: var(--renk-metin); padding: 0 0 12px; overflow: hidden; }
.portfoy-karti > *:not(img):not(.foto-yok) { padding: 0 12px; }
.portfoy-karti img, .foto-yok { width: 100%; aspect-ratio: 4 / 3; object-fit: cover; background: var(--renk-zemin); }
.foto-yok { display: grid; place-items: center; color: var(--renk-soluk); }
.portfoy-karti:hover { border-color: var(--renk-ana); }
.harita { height: 320px; border-radius: var(--yaricap); border: 1px solid var(--renk-cizgi); }
.foto-izgara { display: grid; grid-template-columns: repeat(auto-fill, minmax(160px, 1fr)); gap: 8px; margin-bottom: 1rem; }
.foto-izgara figure { margin: 0; }
.foto-izgara img { width: 100%; aspect-ratio: 4 / 3; object-fit: cover; border-radius: var(--yaricap); }
.tur-alanlari { border: 1px solid var(--renk-cizgi); border-radius: var(--yaricap); padding: 12px; margin: 0 0 12px; }

/* Kurumsal sitede ilanlar */
.ilan-izgara { display: grid; grid-template-columns: repeat(auto-fill, minmax(240px, 1fr)); gap: 16px; margin: 16px 0; }
.ilan-karti { display: flex; flex-direction: column; background: var(--renk-kart); border: 1px solid var(--renk-cizgi); border-radius: var(--yaricap); overflow: hidden; text-decoration: none; color: var(--renk-metin); }
.ilan-karti:hover { border-color: var(--renk-ana); }
.ilan-karti img, .ilan-gorselsiz { width: 100%; aspect-ratio: 4 / 3; object-fit: cover; display: grid; place-items: center; background: var(--renk-cizgi); }
.ilan-karti-govde { display: flex; flex-direction: column; gap: 4px; padding: 12px; }
.ilan-galeri { display: grid; grid-template-columns: repeat(auto-fill, minmax(200px, 1fr)); gap: 8px; margin-bottom: 16px; }
.ilan-galeri img { width: 100%; aspect-ratio: 4 / 3; object-fit: cover; border-radius: var(--yaricap); display: block; }
.ilan-ozellikleri { display: grid; grid-template-columns: max-content 1fr; gap: 6px 16px; margin: 0; }
.ilan-ozellikleri dt { font-weight: 600; }
.ilan-ozellikleri dd { margin: 0; }

/* Fırsat ve takvim */
.etiket.gecikti { background: #fdecec; border-color: #f0b4b4; color: #8a1f1f; }
.takvim { display: grid; grid-template-columns: repeat(7, minmax(0, 1fr)); gap: 4px; }
.takvim-baslik { font-size: .8rem; color: var(--renk-soluk); font-weight: 600; padding: 4px; }
.takvim-gun { min-height: 90px; background: var(--renk-kart); border: 1px solid var(--renk-cizgi); border-radius: 6px; padding: 4px; font-size: .8rem; overflow: hidden; }
.takvim-gun.diger-ay { opacity: .5; }
.takvim-gun.bugun { border-color: var(--renk-ana, #1f3a5f); box-shadow: inset 0 0 0 1px var(--renk-ana, #1f3a5f); }
.takvim-tarih { display: block; font-weight: 600; margin-bottom: 2px; }
.takvim-kayit { padding: 1px 4px; border-radius: 4px; background: var(--renk-zemin); margin-bottom: 2px; overflow-wrap: anywhere; }
.takvim-kayit.gecikti { background: #fdecec; }
.takvim-kayit.tamam { text-decoration: line-through; opacity: .6; }
.takvim-kayit.hedef { background: #e0ecff; }
@media (max-width: 640px) { .takvim-gun { min-height: 60px; font-size: .7rem; } }

/* Site içerik sayfaları (Wagtail) */
.icerik-sayfasi { max-width: 860px; }
.icerik-gorsel { max-width: 100%; height: auto; border-radius: var(--yaricap); }
.icerik-figur { margin: 1.5rem 0; }
.icerik-figur figcaption { color: var(--renk-soluk); font-size: .85rem; margin-top: .25rem; }
.cagri-kutusu { margin: 2rem 0; text-align: center; }

/* Danışman profilleri (site) */
.danisman-izgara { display: grid; grid-template-columns: repeat(auto-fill, minmax(200px, 1fr)); gap: 1rem; }
.danisman-karti { display: flex; flex-direction: column; align-items: center; text-align: center; gap: .25rem; text-decoration: none; color: inherit; }
.danisman-karti img, .profil-bos { width: 140px; height: 140px; object-fit: cover; border-radius: 50%; }
.profil-bos { display: flex; align-items: center; justify-content: center; background: var(--renk-zemin); font-size: 2rem; color: var(--renk-soluk); }
.danisman-profili { display: flex; gap: 2rem; flex-wrap: wrap; align-items: flex-start; margin-bottom: 2rem; }
.profil-foto { width: 220px; max-width: 100%; border-radius: var(--yaricap); object-fit: cover; }

/* Müşteri yorumları (site) */
.yorum-izgara { display: grid; grid-template-columns: repeat(auto-fill, minmax(280px, 1fr)); gap: 1rem; }
.yorum { margin: 0; }
.yorum footer { color: var(--renk-soluk); font-size: .85rem; }
.yildizlar { color: #c99700; letter-spacing: 2px; margin: 0 0 .25rem; }

/* Panel menüsü: gruplar */
.ana-menu { align-items: center; }
.menu-grup { position: relative; }
.menu-grup summary { cursor: pointer; list-style: none; color: #fff; opacity: .9; }
.menu-grup summary::-webkit-details-marker { display: none; }
.menu-grup summary::after { content: " ▾"; font-size: .8em; }
.menu-grup[open] summary { opacity: 1; text-decoration: underline; }
.menu-acilir { position: absolute; top: calc(100% + 8px); left: 0; z-index: 20; min-width: 210px; display: flex; flex-direction: column; background: var(--renk-kart); border: 1px solid var(--renk-cizgi); border-radius: var(--yaricap); box-shadow: 0 8px 24px rgba(0,0,0,.15); padding: 6px 0; }
.ana-menu .menu-acilir a { color: var(--renk-metin, #1f2933); padding: 6px 14px; opacity: 1; }
.ana-menu .menu-acilir a:hover { background: var(--renk-zemin); text-decoration: none; }
@media (max-width: 640px) { .menu-acilir { position: static; box-shadow: none; margin-top: 6px; } }

/* Panel üst çubuğunda logo */
.ust-cubuk .marka.logo-kutusu { background: #fff; border-radius: 6px; padding: 5px 8px; display: inline-flex; }
.ust-cubuk .marka.logo-kutusu img { width: 120px; height: auto; display: block; }


/* Panel üst çubuğu: telefonda menü düğmesi */
.menu-dugmesi { display: none; background: transparent; color: #fff; border: 1px solid #ffffff80; border-radius: 6px; padding: 6px 12px; font: inherit; cursor: pointer; }
.sayac { display: inline-block; min-width: 1.4em; text-align: center; line-height: 1.4; }
@media (max-width: 800px) {
  .ust-cubuk { gap: 10px; }
  .ust-cubuk .marka.logo-kutusu img { width: 104px; }
  .menu-dugmesi { display: inline-flex; gap: 6px; align-items: center; order: 2; }
  .kullanici-alani { order: 1; margin-left: auto; gap: 10px; }
  .kullanici-alani .kullanici-adi { display: none; }
  .ana-menu { order: 3; display: none; flex: 1 1 100%; flex-direction: column; align-items: stretch; gap: 0; padding: 6px 0 4px; border-top: 1px solid #ffffff40; }
  .ana-menu.acik { display: flex; }
  .ana-menu > a, .menu-grup summary { display: block; padding: 10px 2px; border-bottom: 1px solid #ffffff1f; }
  .menu-acilir { position: static; box-shadow: none; margin: 0 0 8px; min-width: 0; }
}

/* Takvim: telefonda gün listesi */
@media (max-width: 640px) {
  .takvim { grid-template-columns: 1fr; gap: 6px; }
  .takvim-baslik, .takvim-gun.diger-ay, .takvim-gun.bos { display: none; }
  .takvim-gun { min-height: 0; display: flex; gap: 10px; align-items: flex-start; font-size: .9rem; }
  .takvim-gun .takvim-tarih { flex: 0 0 64px; margin: 0; }
  .takvim-gun .takvim-tarih::after { content: attr(data-gun); display: block; font-weight: 400; font-size: .75rem; color: var(--renk-soluk); }
  .takvim-kayitlar { flex: 1; }
}
.mobil-bos { display: none; }
@media (max-width: 640px) { .takvim-gun .mobil-bos { display: inline; } }

/* Tarihli notlar ve hatırlatıcılar */
.not-formu textarea { width: 100%; padding: 10px; border: 1px solid var(--renk-cizgi); border-radius: var(--yaricap); font: inherit; }
.not-formu { display: flex; flex-direction: column; gap: 10px; margin-bottom: 18px; }
.not-formu .dugme { align-self: flex-start; }
.hatirlatici-sec summary { cursor: pointer; color: var(--renk-ana); font-size: .9rem; }
.hatirlatici-alanlari { display: flex; flex-wrap: wrap; gap: 10px; align-items: flex-end; margin-top: 8px; }
.hatirlatici-alanlari label { display: flex; flex-direction: column; font-size: .85rem; gap: 4px; }
.hatirlatici-alanlari input, .hatirlatici-alanlari select { padding: 8px; border: 1px solid var(--renk-cizgi); border-radius: var(--yaricap); font: inherit; min-height: 40px; }
.not-listesi { list-style: none; margin: 0; padding: 0; display: flex; flex-direction: column; gap: 12px; }
.not-kaydi { border-left: 3px solid var(--renk-ana); background: var(--renk-zemin); border-radius: 0 var(--yaricap) var(--yaricap) 0; padding: 10px 14px; }
.not-ust { display: flex; flex-wrap: wrap; gap: 6px; align-items: center; font-size: .85rem; }
.not-ust time { font-weight: 700; }
.not-ust .not-sil { margin-left: auto; }
.not-metni { margin: 0 0 4px; }
.not-imza { color: var(--renk-soluk, #6b7280); font-size: .85rem; margin: 0; }
.not-imza time { color: var(--renk-ana); }
.ihtiyac-bolumu { border: 1px solid var(--renk-cizgi); border-radius: var(--yaricap); padding: 4px 14px; margin: 8px 0 16px; }
.ihtiyac-bolumu > summary { cursor: pointer; color: var(--renk-ana); }
.ihtiyac-bolumu > summary h2 { display: inline; font-size: 1.1rem; }
.ihtiyac-bolumu[open] { padding-bottom: 14px; }
.takvim-kayit.not-kaydi-takvim { background: #fff6d6; }
.takvim-kayit.hatirlatici-takvim { background: #e6f4ea; }
.hatirlatici-listesi { list-style: none; margin: 6px 0; padding: 0; font-size: .9rem; display: flex; flex-direction: column; gap: 4px; }
.hatirlatici-listesi li.gecikmis { color: var(--renk-hata); }
@media (max-width: 640px) { .hatirlatici-alanlari label { flex: 1 1 45%; } .not-formu .dugme { align-self: stretch; } }

/* Portföy ilan girişi (sahibinden.com düzeni) */
.ilan-adimlari { display: flex; gap: 8px; list-style: none; padding: 0; margin: 0 0 16px; counter-reset: adim; flex-wrap: wrap; }
.ilan-adimlari li { counter-increment: adim; padding: 6px 12px; border-radius: 999px; background: var(--renk-zemin); color: var(--renk-soluk); font-size: .9rem; }
.ilan-adimlari li::before { content: counter(adim) ". "; }
.ilan-adimlari li.etkin { background: var(--renk-ana); color: #fff; }
.ilan-detay-izgara { display: grid; grid-template-columns: repeat(auto-fill, minmax(190px, 1fr)); gap: 0 16px; }
.ozellik-grubu { border: 1px solid var(--renk-cizgi); border-radius: var(--yaricap); padding: 8px 12px; margin-bottom: 8px; }
.ozellik-grubu > summary { cursor: pointer; font-weight: 600; }
.secili-sayi { font-weight: 400; color: var(--renk-ana); }
.ozellik-secenekleri { display: grid; grid-template-columns: repeat(auto-fill, minmax(190px, 1fr)); gap: 6px 14px; margin-top: 10px; }
.ozellik-secenegi { display: flex; align-items: center; gap: 8px; font-size: .92rem; min-height: 32px; }
.ozellik-secenegi input { width: 18px; height: 18px; flex: none; }
.ozellik-gosterim h3 { font-size: 1rem; margin: 14px 0 6px; }
.ozellik-gosterim ul { list-style: none; padding: 0; margin: 0; display: grid; grid-template-columns: repeat(auto-fill, minmax(170px, 1fr)); gap: 4px 12px; font-size: .9rem; }
.ozellik-gosterim li.secili { font-weight: 600; color: var(--renk-metin); }
.ozellik-gosterim li.secilmedi { color: var(--renk-soluk); opacity: .55; }
@media (max-width: 640px) { .ilan-detay-izgara, .ozellik-secenekleri { grid-template-columns: 1fr 1fr; } .ozellik-gosterim ul { grid-template-columns: 1fr 1fr; } }

/* İlan girişi (RE/MAX düzeni) */
.ilan-formu { display: flex; flex-direction: column; gap: 16px; }
.ilan-bolumu h2 { display: flex; align-items: center; gap: 10px; flex-wrap: wrap; }
.adim-no { display: inline-grid; place-items: center; width: 28px; height: 28px; border-radius: 50%; background: var(--renk-ana); color: #fff; font-size: .9rem; flex: none; }
.ilan-bolumu fieldset { border: 0; padding: 0; margin: 0 0 14px; }
.ilan-bolumu legend { font-weight: 600; margin-bottom: 8px; }
.zorunlu { color: var(--renk-hata); }
.secim-kartlari { display: grid; grid-template-columns: repeat(3, 1fr); gap: 10px; }
.secim-karti { position: relative; display: flex; align-items: center; justify-content: center; min-height: 56px; border: 2px solid var(--renk-cizgi); border-radius: var(--yaricap); cursor: pointer; font-weight: 600; text-align: center; padding: 8px; }
.secim-karti input, .secim-hapi input { position: absolute; opacity: 0; pointer-events: none; }
.secim-karti:has(input:checked) { border-color: var(--renk-ana); background: #e8f0fa; color: var(--renk-ana); }
.secim-karti:has(input:focus-visible), .secim-hapi:has(input:focus-visible) { outline: 3px solid var(--renk-ana); outline-offset: 2px; }
.secim-haplari { display: flex; flex-wrap: wrap; gap: 8px; }
.secim-hapi { position: relative; border: 1px solid var(--renk-cizgi); border-radius: 999px; padding: 8px 16px; cursor: pointer; min-height: 40px; display: inline-flex; align-items: center; }
.secim-hapi:has(input:checked) { background: var(--renk-ana); border-color: var(--renk-ana); color: #fff; }
.ilan-izgara-3 { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 0 16px; }
.fiyat-grubu { display: grid; grid-template-columns: minmax(0, 2fr) minmax(90px, 1fr); gap: 0 8px; }
.yerlesim-ara { width: 100%; margin-top: -6px; margin-bottom: 14px; padding: 8px 10px; border: 1px solid var(--renk-cizgi); border-radius: var(--yaricap); font: inherit; }
.ilan-kaydet { position: sticky; bottom: 0; background: var(--renk-zemin); padding: 12px 0; z-index: 5; }
.ilan-kaydet .dugme { min-width: 220px; }
@media (max-width: 760px) {
  .ilan-izgara-3 { grid-template-columns: 1fr; }
  .secim-kartlari { grid-template-columns: 1fr 1fr 1fr; gap: 6px; }
  .secim-karti { min-height: 48px; font-size: .9rem; padding: 6px; }
  .ilan-kaydet .dugme { width: 100%; }
}
.ilan-formu [hidden] { display: none !important; }

/* Portföy kartında durum menüsü */
.portfoy-karti { display: flex; flex-direction: column; }
.portfoy-karti-baglanti { display: flex; flex-direction: column; gap: 4px; color: inherit; text-decoration: none; flex: 1; }
.durum-formu { margin-top: 10px; }
.durum-formu select { width: 100%; min-height: 40px; padding: 6px 10px; border: 1px solid var(--renk-cizgi); border-radius: var(--yaricap); font: inherit; background: #fff; }
.durum-etiketi { align-self: flex-start; margin-top: 10px; }
.pasif-portfoy img, .pasif-portfoy .foto-yok { opacity: .55; }
/* Eski kart kuralı (.portfoy-karti > *:not(img):not(.foto-yok)) bağlantıya da boşluk veriyordu */
.portfoy-karti > a.portfoy-karti-baglanti:not(.foto-yok) { padding: 0; }
.portfoy-karti-baglanti > *:not(img):not(.foto-yok) { padding: 0 12px; }
.portfoy-karti > .durum-formu, .portfoy-karti > .durum-etiketi { margin-top: 10px; }
.portfoy-karti > span.durum-etiketi:not(.foto-yok) { margin-left: 12px; padding: 2px 8px; }
.portfoy-karti > a.yayina-al:not(.foto-yok), .portfoy-karti > a.durum-baglantisi:not(.foto-yok) { margin: 10px 12px 0; }
.portfoy-karti > a.yayina-al { text-align: center; }
.portfoy-karti > a.yayina-al:not(.foto-yok) { width: auto; align-self: stretch; box-sizing: border-box; }

/* Fotoğraf yönetimi: vitrin, sıralama, silme (form ve portföy sayfası) */
.foto-yonetimi { list-style: none; padding: 0; margin: 0 0 16px; display: grid; grid-template-columns: repeat(auto-fill, minmax(200px, 1fr)); gap: 12px; }
.foto-kalemi { border: 1px solid var(--renk-cizgi); border-radius: var(--yaricap); overflow: hidden; background: var(--renk-kart); }
.foto-kalemi img { width: 100%; aspect-ratio: 4 / 3; object-fit: cover; display: block; }
.foto-kalemi.silinecek { opacity: .45; outline: 2px dashed var(--renk-hata); }
.foto-araclari { display: flex; flex-wrap: wrap; align-items: center; gap: 6px; padding: 8px; }
.foto-araclari .dugme.dar { min-height: 36px; padding: 4px 10px; font-size: .9rem; }
.sira-dugmeleri { display: inline-flex; gap: 4px; }
.vitrin-sec, .foto-sil { display: inline-flex; align-items: center; gap: 4px; font-size: .9rem; min-height: 36px; }
.vitrin-sec input, .foto-sil input { width: 18px; height: 18px; }
.vitrin-etiketi { background: #fff3cd; border-color: #f0c36d; }
.dugme.tehlikeli { color: var(--renk-hata); border-color: var(--renk-hata); }
@media (max-width: 640px) { .foto-yonetimi { grid-template-columns: 1fr 1fr; } }
.foto-adi { display: block; padding: 0 8px 8px; overflow-wrap: anywhere; }
.ilan-formu #secilen-liste[hidden] { display: none !important; }
/* Para kutusunda anlaşılmayan yazım (sessizce düzeltilmez, kullanıcı düzeltir) */
input.para-hatali { border-color: var(--renk-hata); outline-color: var(--renk-hata); }

/* Etkinlik ve nöbet */
.onay-satiri { display: flex; gap: 8px; align-items: center; font-weight: 400; margin: 8px 0; }
.onay-satiri input { width: auto; }
.takvim-kayit.etkinlik { background: #eaf6ea; }
.takvim-kayit.nobet { background: #fff3d6; }

/* Kullanım kılavuzu */
.kilavuz-arama { max-width: 640px; }
.kilavuz-icindekiler { display: grid; grid-template-columns: repeat(auto-fit, minmax(240px, 1fr)); gap: 8px 24px; }
.kilavuz-icindekiler h2 { font-size: 1rem; margin: .25rem 0; }
.kilavuz-icindekiler ol { margin: 0 0 .5rem; padding-left: 1.25rem; }
.kilavuz-icindekiler li { margin: 2px 0; }
.kilavuz-bolum { scroll-margin-top: 80px; line-height: 1.55; }
.kilavuz-bolum h3 { font-size: 1.05rem; margin: 1.25rem 0 .4rem; }
.kilavuz-bolum ul, .kilavuz-bolum ol { padding-left: 1.25rem; }
.kilavuz-bolum li { margin: 3px 0; }
.kilavuz-bolum table { margin: .5rem 0; }
.rol-notu { border-left: 4px solid var(--renk-ana); background: var(--renk-zemin); padding: 8px 12px; margin: .75rem 0; border-radius: 4px; }
.rol-notu > strong:first-child { display: block; margin-bottom: 2px; }
.kilavuz-yukari { margin: 1rem 0 0; font-size: .9rem; }
.kilavuz-sss dt { font-weight: 600; margin-top: .9rem; }
.kilavuz-sss dd { margin: .25rem 0 0; }

/* Danışman ana sayfası: aylık DTS tablosu (telefonda kendi kutusunda yatay kaydırılır) */
.dts-tablo-sarmal { overflow-x: auto; -webkit-overflow-scrolling: touch; }
.dts-tablo { border-collapse: collapse; width: 100%; font-size: .85rem; white-space: nowrap; }
.dts-tablo th, .dts-tablo td { border-bottom: 1px solid var(--renk-cizgi); padding: 6px 8px; text-align: center; }
.dts-tablo thead th { font-weight: 600; color: var(--renk-soluk); }
.dts-tablo tbody th, .dts-tablo tfoot th, .dts-tablo thead th:first-child { text-align: left; position: sticky; left: 0; background: var(--renk-kart); z-index: 1; font-weight: 400; white-space: normal; min-width: 8.5rem; max-width: 11rem; }
.dts-tablo thead th.bu-ay { color: var(--renk-ana); border-bottom: 2px solid var(--renk-ana); }
.dts-tablo tfoot th, .dts-tablo tfoot td, .dts-tablo .toplam { font-weight: 600; }
.dts-tablo .bos-satir th { color: var(--renk-soluk); }
.dts-tablo a { display: inline-block; min-width: 2.5rem; padding: 4px 2px; border-radius: 4px; text-decoration: none; font-weight: 600; }
.dts-tablo a.arti { background: #e6f4ea; color: #1e6b35; }
.dts-tablo a.eksi { background: #fdecec; color: #8a1f1f; }

/* Aidat aylık hesap özeti */
.aylik-hesap .borc { color: #8a1f1f; font-weight: 600; }
.aylik-hesap .avans { color: #1e6b35; font-weight: 600; }

/* Komisyon ödemeleri: danışman ve tarih süzgeci, toplam satırı */
.komisyon-suzgeci { align-items: flex-end; }
.komisyon-suzgeci .suzgec-alani { display: flex; flex-direction: column; gap: 2px; flex: 1 1 180px; }
.komisyon-suzgeci .suzgec-alani label { font-size: .85rem; color: var(--renk-soluk); }
.komisyon-suzgeci .suzgec-alani input, .komisyon-suzgeci .suzgec-alani select { min-width: 0; width: 100%; }
.komisyon-suzgeci .suzgec-dugmeleri { display: flex; gap: 8px; }
.odeme-tablosu tfoot td { border-top: 2px solid var(--renk-cizgi); }
@media (max-width: 640px) {
  .tablo td.mobilde-gizli { display: none; }
  .tablo tfoot { display: block; width: 100%; }
  .odeme-tablosu tfoot td { border-top: 0; }
  .odeme-tablosu tfoot tr { border-top: 2px solid var(--renk-cizgi); }
}

/* Gelir–gider paneli (26 Ekim 2026) */
.finans-baglantilar { display: flex; flex-wrap: wrap; gap: 6px; }
.finans-donem .sekmeler { margin-bottom: .5rem; }
.donem-gezinme { display: flex; align-items: center; gap: 10px; flex-wrap: wrap; margin: .5rem 0; }
.donem-gezinme .donem-metni { font-size: 1.05rem; }
.finans-donem details { margin: .5rem 0; }
.finans-ozet .degisim { font-size: .9rem; margin: .25rem 0 0; }
.finans-ozet .degisim .soluk { display: block; font-size: .8rem; }
.degisim.iyi { color: #1e6b35; }
.degisim.kotu { color: #8a1f1f; }
.finans-akis dd { text-align: right; }
.aylik-finans tr.secili-ay td { background: #eef4ff; }
.finans-tablo tfoot td { border-top: 2px solid var(--renk-cizgi); }
.finans-aciklama summary { cursor: pointer; font-weight: 600; }
.finans-aciklama li { margin: .3rem 0; }
@media (max-width: 640px) {
  .finans-tablo tfoot td { border-top: 0; }
  .finans-tablo tfoot tr { border-top: 2px solid var(--renk-cizgi); }
  .aylik-finans tr.secili-ay { background: #eef4ff; }
}
/* Telefonda uzun etiketler tutarı ekrandan itmesin (hizmet özetiyle aynı düzen) */
.finans-sayfa .bilgi-listesi { grid-template-columns: minmax(0, 1fr) minmax(0, auto); }
.finans-sayfa .bilgi-listesi dd { text-align: right; overflow-wrap: anywhere; }
.finans-ozet { grid-template-columns: repeat(auto-fit, minmax(210px, 1fr)); }
.finans-tablo td:not(:first-child) { white-space: nowrap; }
.aylik-finans tr.gelecek-ay td { opacity: .5; }
@media (max-width: 640px) { .finans-tablo td:not(:first-child) { white-space: normal; } }

/* Giderler tablosu (en üst satır giriş) ve gider analizi (26 Ekim 2026) */
.bildirim-warning { background: #fff4d6; color: #6b4a00; }
.gider-tablosu .gider-giris td { background: #f3f7fd; vertical-align: top; }
.gider-tablosu .gider-giris input, .gider-tablosu .gider-giris select {
  width: 100%; min-width: 0; box-sizing: border-box; font: inherit; padding: 6px 8px;
  border: 1px solid var(--renk-cizgi); border-radius: var(--yaricap); background: #fff;
}
.gider-tablosu .gider-giris .alan-hatali input, .gider-tablosu .gider-giris .alan-hatali select { border-color: var(--renk-hata); }
.gider-tablosu .gider-giris .alan-hatasi { display: block; font-size: .8rem; }
.gider-tablosu .gider-giris td:nth-child(1) { min-width: 175px; }
.gider-tablosu .gider-giris td:nth-child(2) { min-width: 120px; }
.gider-tablosu .gider-giris td:nth-child(4), .gider-tablosu .gider-giris td:nth-child(5) { min-width: 90px; }
.belge-sec { position: relative; display: inline-block; max-width: 140px; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; cursor: pointer; }
.belge-sec input[type=file] { position: absolute; inset: 0; opacity: 0; cursor: pointer; }
.belge-sec:focus-within { outline: 2px solid var(--renk-ana); outline-offset: 1px; }
.gider-tablosu tr.yeni-satir td { background: #eaf6ee; }
.sutun-grafik { display: flex; align-items: flex-end; gap: 2px; height: 220px; padding: 24px 0 0; border-bottom: 1px solid var(--renk-cizgi); margin: .5rem 0 1.6rem; }
.sutun { position: relative; flex: 1 1 0; min-width: 0; height: 100%; display: flex; flex-direction: column; justify-content: flex-end; align-items: center; outline: none; }
.sutun-cubuk { position: relative; display: block; width: 70%; max-width: 40px; background: #f19a9b; border-radius: 4px 4px 0 0; }
.sutun.secili .sutun-cubuk { background: var(--renk-vurgu); }
.sutun.gelecek .sutun-cubuk { opacity: .4; }
.sutun-ay { position: absolute; bottom: -1.4rem; font-size: .75rem; color: var(--renk-soluk); white-space: nowrap; }
.sutun-deger { position: absolute; bottom: calc(100% + 2px); left: 50%; transform: translateX(-50%); font-size: .75rem; color: var(--renk-soluk); white-space: nowrap; }
.sutun:first-child .sutun-deger { left: 0; transform: none; }
.sutun:last-child .sutun-deger { left: auto; right: 0; transform: none; }
.yatay-grafik { margin-bottom: 1rem; }
.yatay-grafik .cubuk-satiri { grid-template-columns: minmax(120px, 1fr) 2fr 11rem; }
.yatay-grafik .cubuk-satiri > span:last-child { text-align: right; white-space: nowrap; }
.gider-tablosu .kaydet-hucresi::before { content: none !important; }
.satir-iptal { display: inline-block; margin-left: 6px; }
.satir-iptal summary { color: var(--renk-ana); text-decoration: underline; cursor: pointer; list-style: none; }
.satir-iptal summary::-webkit-details-marker { display: none; }
.satir-iptal[open] form { display: flex; gap: 6px; flex-wrap: wrap; margin-top: 6px; }
.satir-iptal input { min-width: 0; flex: 1 1 140px; }
.sutun .ipucu { display: none; position: absolute; bottom: calc(100% + 4px); left: 50%; transform: translateX(-50%); z-index: 2;
  background: #1f2633; color: #fff; font-size: .8rem; padding: 6px 8px; border-radius: 6px; white-space: nowrap; pointer-events: none; }
.sutun:first-child .ipucu { left: 0; transform: none; }
.sutun:last-child .ipucu { left: auto; right: 0; transform: none; }
.sutun:hover .ipucu, .sutun:focus .ipucu { display: block; }
.sutun:hover .sutun-cubuk, .sutun:focus .sutun-cubuk { filter: brightness(.85); }
.sutun:focus-visible { outline: 2px solid var(--renk-ana); outline-offset: 2px; }
.matris-sarmal { overflow-x: auto; border: 1px solid var(--renk-cizgi); border-radius: var(--yaricap); }
.matris { border-collapse: collapse; width: 100%; font-size: .85rem; }
.matris th, .matris td { padding: 6px 8px; border-bottom: 1px solid var(--renk-cizgi); text-align: right; white-space: nowrap; }
.matris th[scope=row], .matris thead th:first-child { text-align: left; position: sticky; left: 0; background: var(--renk-kart); }
.matris thead th { color: var(--renk-soluk); font-weight: 600; }
.matris tfoot td, .matris tfoot th { border-top: 2px solid var(--renk-cizgi); border-bottom: 0; }
@media (max-width: 640px) {
  .gider-tablosu .gider-giris td { display: block; min-width: 0 !important; }
  .gider-tablosu .gider-giris td::before { display: block; margin-bottom: 2px; }
  .gider-tablosu .gider-giris td:first-child::before { content: attr(data-etiket); }
  .gider-tablosu .gider-giris .ana-dugme { width: 100%; }
  .belge-sec { max-width: 100%; }
  .sutun-grafik { height: 180px; }
  .sutun-cubuk { width: 80%; }
  .sutun-ay { font-size: .65rem; }
  .yatay-grafik .cubuk-satiri { grid-template-columns: minmax(0, 1fr) auto; gap: 2px 8px; margin: 8px 0; }
  .yatay-grafik .cubuk { grid-column: 1 / -1; grid-row: 2; }
}
.gider-tablosu td[data-etiket="Açıklama"] { white-space: normal; min-width: 140px; }

/* Dokümanlar (28 Ekim 2026) */
.dokuman-arama { display: flex; flex-wrap: wrap; gap: 8px; align-items: center; margin-bottom: .75rem; }
.dokuman-arama input[type=search] { flex: 1 1 240px; min-width: 0; font: inherit; padding: 8px 10px; border: 1px solid var(--renk-cizgi); border-radius: var(--yaricap); }
.dokuman-tablosu td:first-child { min-width: 220px; }
.dokuman-islem { white-space: nowrap; }
.dokuman-islem form { display: inline-block; }
.dokuman-islem .satir-iptal { display: block; margin: 6px 0 0; white-space: normal; }
.sayac-etiket { display: inline-block; min-width: 1.6em; padding: 0 6px; border-radius: 999px; background: var(--renk-vurgu); color: #fff; font-size: .8rem; text-align: center; vertical-align: middle; }
.dokuman-bekleyen { border-left: 4px solid #e0a400; }
.etiket-yeni { background: #e6f4ea; border-color: #9fd3ad; color: #1e6b35; }
.etiket.durum-bekliyor { background: #fff4d6; border-color: #e8c76a; color: #6b4a00; }
.etiket.durum-reddedildi { background: var(--renk-hata-zemin); color: var(--renk-hata); }
@media (max-width: 640px) {
  .dokuman-tablosu td:first-child { min-width: 0; }
  .dokuman-islem { white-space: normal; }
}

/* Danışman kazanımı (28 Ekim 2026) */
.kazanim-sekmeler { flex-wrap: wrap; margin-bottom: 12px; }
.kazanim-ozet { display: grid; grid-template-columns: repeat(auto-fit, minmax(150px, 1fr)); gap: 10px; margin: 12px 0; }
.kazanim-ozet .ozet-karti { display: flex; flex-direction: column; gap: 4px; text-decoration: none; color: inherit; padding: 12px 14px; }
.kazanim-ozet .buyuk-sayi { font-size: 1.6rem; }
.kazanim-filtre summary { cursor: pointer; font-weight: 600; }
.kazanim-filtre-formu { display: grid; grid-template-columns: repeat(auto-fit, minmax(190px, 1fr)); gap: 10px 14px; margin-top: 10px; align-items: end; }
.kazanim-filtre-formu label { display: flex; flex-direction: column; gap: 4px; font-size: .9rem; color: var(--renk-soluk); }
.kazanim-filtre-formu label.onay-kutusu { flex-direction: row; align-items: center; color: inherit; }
.kazanim-filtre-formu input, .kazanim-filtre-formu select { font: inherit; padding: 7px 9px; border: 1px solid var(--renk-cizgi); border-radius: var(--yaricap); min-width: 0; }
.gecikti { color: var(--renk-hata); font-weight: 600; }
.etiket-uyari { background: #fff4d6; border-color: #e8c76a; color: #6b4a00; }
.etiket.durum-ulasilamadi, .etiket.durum-ileride, .etiket.durum-bekliyor, .etiket.durum-kararsiz { background: #fff4d6; border-color: #e8c76a; color: #6b4a00; }
.etiket.durum-vazgecti, .etiket.durum-uygun_degil, .etiket.durum-geri, .etiket.durum-gecersiz, .etiket.durum-olumsuz { background: var(--renk-hata-zemin); color: var(--renk-hata); }
.etiket.durum-onaylandi, .etiket.durum-olumlu { background: #e6f4ea; border-color: #9fd3ad; color: #1e6b35; }
.kazanim-pano { display: flex; gap: 12px; overflow-x: auto; padding-bottom: 8px; align-items: flex-start; }
.pano-kolonu { flex: 0 0 240px; background: var(--renk-kart); border: 1px solid var(--renk-cizgi); border-radius: var(--yaricap); padding: 10px; }
.pano-kolonu h2 { font-size: .95rem; margin: 0 0 8px; }
.pano-karti { display: flex; flex-direction: column; gap: 3px; padding: 8px 10px; margin-bottom: 8px; border: 1px solid var(--renk-cizgi); border-radius: var(--yaricap); text-decoration: none; color: inherit; background: var(--renk-zemin); }
.pano-karti:hover, .pano-karti:focus { border-color: var(--renk-ana); }
.pano-karti small { font-size: .8rem; }
.aday-eylemleri { display: flex; flex-wrap: wrap; gap: 8px; margin: 10px 0; }
.asama-satiri { margin: 0 0 10px; }
.aday-karti .bilgi-listesi { grid-template-columns: minmax(0, 11rem) minmax(0, 1fr); }
.aday-karti .bilgi-listesi dd { overflow-wrap: anywhere; }
.sonraki-islem { border: 1px solid var(--renk-cizgi); border-radius: var(--yaricap); padding: 10px 14px; margin: 14px 0; }
.sonraki-islem legend { font-weight: 600; padding: 0 6px; }
.eslestirme-izgara { display: grid; grid-template-columns: repeat(auto-fit, minmax(220px, 1fr)); gap: 0 16px; }
.rapor-tablosu tr.alt-satir td { background: var(--renk-zemin); }
.rapor-tablosu tr.alt-satir td:first-child { padding-left: 24px; }
.kirilir { overflow-wrap: anywhere; word-break: break-all; }
.etiket.aktarim-hata { background: var(--renk-hata-zemin); color: var(--renk-hata); }
.etiket.aktarim-tekrar { background: #fff4d6; border-color: #e8c76a; color: #6b4a00; }
.etiket.aktarim-ekle, .etiket.baglanti-aktif { background: #e6f4ea; border-color: #9fd3ad; color: #1e6b35; }
.etiket.baglanti-hata { background: var(--renk-hata-zemin); color: var(--renk-hata); }
.basvuru-formu fieldset { border: 0; padding: 0; margin: 0 0 18px; }
.basvuru-formu legend { font-weight: 700; margin-bottom: 8px; }
.basvuru-formu .onay-kutusu { margin: 4px 0; }
.basvuru-formu input[type=text], .basvuru-formu input[type=email], .basvuru-formu input[type=url], .basvuru-formu select, .basvuru-formu textarea { width: 100%; box-sizing: border-box; }
@media (max-width: 640px) {
  .kazanim-ozet { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .pano-kolonu { flex-basis: 78vw; }
  .aday-karti .bilgi-listesi { grid-template-columns: minmax(0, 1fr); }
  .aday-karti .bilgi-listesi dd { margin-bottom: 6px; }
  .rapor-tablosu tr.alt-satir td:first-child { padding-left: 12px; }
}
/* Pozisyonlar ve ekip (30 Ekim 2026) */
.yetki-tablosu select { min-width: 9rem; }
.uye-fotografi { width: 120px; height: 120px; object-fit: cover; border-radius: 8px; }
/* Harita kütüphanesi yüklenemediğinde (30 Ekim 2026) */
.harita.harita-yok { display: flex; align-items: center; justify-content: center; height: auto; min-height: 4rem; padding: 1rem; text-align: center; color: var(--renk-soluk); background: var(--renk-zemin); }
