/* ==========================================================================
   Genel Kurul açık oylamaları (oylama ajanı) — teklif kartı, vekil oylamaları, gün ve ana sayfa oy çubukları.
   Tasarım: Teklif.dc.html "OYLAMA · 125. BİRLEŞİM" kartı (yeşil üst çizgi, mono sayılar, 2px aralıklı çubuk),
   Bugun.dc.html "BUGÜN KABUL EDİLEN" (büyük kabul sayısı + çubuk + lejant). Renkler: kabul --yesil, ret --kirmizi,
   çekimser #A0A8B3 (sayı #C9CED5), katılmadı #3A414D.
   ========================================================================== */

/* ---------------------------------------------------------------- ortak çubuk ve kısa yazı */
.oy-cubugu { width: 100%; }
.oy-yazi { display: block; margin-top: 6px; font-size: 12px; color: var(--soluk); letter-spacing: 0.02em; }
.oy-dip { font-size: 11px; letter-spacing: 0.04em; }

/* ---------------------------------------------------------------- teklif kartı */
.oy-kart .sayilar-buyuk .sayi-kutu { padding: 16px 18px; }
.oy-kart .sayilar-buyuk .sayi-deger { font-size: 42px; }
.oy-kart .sayi-alt { font-family: var(--mono); font-size: 11px; letter-spacing: 0.04em; color: var(--soluk); }

/* Parti parti: Parti | Kabul | Ret | Çekimser | Katılmadı, altında ince yığma çubuk (satırın tamamı) */
.oy-partiler { --sutunlar: minmax(0, 1fr) 56px 48px 72px 72px; }
.oy-partiler .tablo-satir { row-gap: 6px; padding: 8px 0; }
.oy-partiler .tablo-satir .mono { font-size: 14px; }
.oy-parti-ad { min-width: 0; overflow-wrap: anywhere; }
.oy-parti-ad a { color: var(--metin); }
.oy-parti-ad .nokta { margin-right: 8px; vertical-align: 1px; }
.oy-parti-ad .mono { font-size: 12px; }
.oy-parti-cubuk { grid-column: 1 / -1; }
.oy-sifir { color: #8A93A0; }   /* sönük ama AA (≥4,5:1, kart zemininde ~5,4) */
.oy-dar { display: none; }   /* dar ekranda kısa başlık (görsel); uzun başlık ekran okuyucuda kalır */

/* Diğer açık oylamalar (maddelerine geçilmesi …) */
.oy-diger > li { padding: 12px 0; border-top: 1px solid var(--ayrac); }
.oy-diger-ust { display: flex; flex-wrap: wrap; gap: 4px 12px; align-items: baseline; justify-content: space-between; margin-bottom: 8px; font-size: 14px; }
.oy-diger-ust .mono { font-size: 11px; }

/* İsim isim oylar: parti süzgeci betiksiz (radyo + kardeş seçici). Radyolar görünmez ama klavyeyle seçilir; görünen denetim etiket (.cip). */
.oy-suz { position: relative; border: 0; margin: 0; padding: 0; min-width: 0; }
.oy-suz > input { position: absolute; top: 0; left: 0; width: 1px; height: 1px; margin: 0; opacity: 0; pointer-events: none; }
.oy-suz-cipler .cip { cursor: pointer; }
.oy-suz-cipler .cip .mono { color: inherit; opacity: 0.75; }
.oy-suz-cipler .nokta { margin-right: 2px; }
/* En çok 20 parti grubu (28. dönemde bir oylamada en çok 17 parti görüldü). */
.oy-suz > input:nth-of-type(1):checked ~ .oy-suz-cipler > label:nth-of-type(1),
.oy-suz > input:nth-of-type(2):checked ~ .oy-suz-cipler > label:nth-of-type(2),
.oy-suz > input:nth-of-type(3):checked ~ .oy-suz-cipler > label:nth-of-type(3),
.oy-suz > input:nth-of-type(4):checked ~ .oy-suz-cipler > label:nth-of-type(4),
.oy-suz > input:nth-of-type(5):checked ~ .oy-suz-cipler > label:nth-of-type(5),
.oy-suz > input:nth-of-type(6):checked ~ .oy-suz-cipler > label:nth-of-type(6),
.oy-suz > input:nth-of-type(7):checked ~ .oy-suz-cipler > label:nth-of-type(7),
.oy-suz > input:nth-of-type(8):checked ~ .oy-suz-cipler > label:nth-of-type(8),
.oy-suz > input:nth-of-type(9):checked ~ .oy-suz-cipler > label:nth-of-type(9),
.oy-suz > input:nth-of-type(10):checked ~ .oy-suz-cipler > label:nth-of-type(10),
.oy-suz > input:nth-of-type(11):checked ~ .oy-suz-cipler > label:nth-of-type(11),
.oy-suz > input:nth-of-type(12):checked ~ .oy-suz-cipler > label:nth-of-type(12),
.oy-suz > input:nth-of-type(13):checked ~ .oy-suz-cipler > label:nth-of-type(13),
.oy-suz > input:nth-of-type(14):checked ~ .oy-suz-cipler > label:nth-of-type(14),
.oy-suz > input:nth-of-type(15):checked ~ .oy-suz-cipler > label:nth-of-type(15),
.oy-suz > input:nth-of-type(16):checked ~ .oy-suz-cipler > label:nth-of-type(16),
.oy-suz > input:nth-of-type(17):checked ~ .oy-suz-cipler > label:nth-of-type(17),
.oy-suz > input:nth-of-type(18):checked ~ .oy-suz-cipler > label:nth-of-type(18),
.oy-suz > input:nth-of-type(19):checked ~ .oy-suz-cipler > label:nth-of-type(19),
.oy-suz > input:nth-of-type(20):checked ~ .oy-suz-cipler > label:nth-of-type(20),
.oy-suz > input:nth-of-type(21):checked ~ .oy-suz-cipler > label:nth-of-type(21) {
  background: var(--soguk); border-color: var(--soguk); color: var(--zemin); font-weight: 700;
}
.oy-suz > input:nth-of-type(1):focus-visible ~ .oy-suz-cipler > label:nth-of-type(1),
.oy-suz > input:nth-of-type(2):focus-visible ~ .oy-suz-cipler > label:nth-of-type(2),
.oy-suz > input:nth-of-type(3):focus-visible ~ .oy-suz-cipler > label:nth-of-type(3),
.oy-suz > input:nth-of-type(4):focus-visible ~ .oy-suz-cipler > label:nth-of-type(4),
.oy-suz > input:nth-of-type(5):focus-visible ~ .oy-suz-cipler > label:nth-of-type(5),
.oy-suz > input:nth-of-type(6):focus-visible ~ .oy-suz-cipler > label:nth-of-type(6),
.oy-suz > input:nth-of-type(7):focus-visible ~ .oy-suz-cipler > label:nth-of-type(7),
.oy-suz > input:nth-of-type(8):focus-visible ~ .oy-suz-cipler > label:nth-of-type(8),
.oy-suz > input:nth-of-type(9):focus-visible ~ .oy-suz-cipler > label:nth-of-type(9),
.oy-suz > input:nth-of-type(10):focus-visible ~ .oy-suz-cipler > label:nth-of-type(10),
.oy-suz > input:nth-of-type(11):focus-visible ~ .oy-suz-cipler > label:nth-of-type(11),
.oy-suz > input:nth-of-type(12):focus-visible ~ .oy-suz-cipler > label:nth-of-type(12),
.oy-suz > input:nth-of-type(13):focus-visible ~ .oy-suz-cipler > label:nth-of-type(13),
.oy-suz > input:nth-of-type(14):focus-visible ~ .oy-suz-cipler > label:nth-of-type(14),
.oy-suz > input:nth-of-type(15):focus-visible ~ .oy-suz-cipler > label:nth-of-type(15),
.oy-suz > input:nth-of-type(16):focus-visible ~ .oy-suz-cipler > label:nth-of-type(16),
.oy-suz > input:nth-of-type(17):focus-visible ~ .oy-suz-cipler > label:nth-of-type(17),
.oy-suz > input:nth-of-type(18):focus-visible ~ .oy-suz-cipler > label:nth-of-type(18),
.oy-suz > input:nth-of-type(19):focus-visible ~ .oy-suz-cipler > label:nth-of-type(19),
.oy-suz > input:nth-of-type(20):focus-visible ~ .oy-suz-cipler > label:nth-of-type(20),
.oy-suz > input:nth-of-type(21):focus-visible ~ .oy-suz-cipler > label:nth-of-type(21) {
  outline: 2px solid var(--soguk); outline-offset: 2px;
}
.oy-suz > input:nth-of-type(2):checked ~ .oy-gruplar > .oy-grup:not(:nth-child(1)),
.oy-suz > input:nth-of-type(3):checked ~ .oy-gruplar > .oy-grup:not(:nth-child(2)),
.oy-suz > input:nth-of-type(4):checked ~ .oy-gruplar > .oy-grup:not(:nth-child(3)),
.oy-suz > input:nth-of-type(5):checked ~ .oy-gruplar > .oy-grup:not(:nth-child(4)),
.oy-suz > input:nth-of-type(6):checked ~ .oy-gruplar > .oy-grup:not(:nth-child(5)),
.oy-suz > input:nth-of-type(7):checked ~ .oy-gruplar > .oy-grup:not(:nth-child(6)),
.oy-suz > input:nth-of-type(8):checked ~ .oy-gruplar > .oy-grup:not(:nth-child(7)),
.oy-suz > input:nth-of-type(9):checked ~ .oy-gruplar > .oy-grup:not(:nth-child(8)),
.oy-suz > input:nth-of-type(10):checked ~ .oy-gruplar > .oy-grup:not(:nth-child(9)),
.oy-suz > input:nth-of-type(11):checked ~ .oy-gruplar > .oy-grup:not(:nth-child(10)),
.oy-suz > input:nth-of-type(12):checked ~ .oy-gruplar > .oy-grup:not(:nth-child(11)),
.oy-suz > input:nth-of-type(13):checked ~ .oy-gruplar > .oy-grup:not(:nth-child(12)),
.oy-suz > input:nth-of-type(14):checked ~ .oy-gruplar > .oy-grup:not(:nth-child(13)),
.oy-suz > input:nth-of-type(15):checked ~ .oy-gruplar > .oy-grup:not(:nth-child(14)),
.oy-suz > input:nth-of-type(16):checked ~ .oy-gruplar > .oy-grup:not(:nth-child(15)),
.oy-suz > input:nth-of-type(17):checked ~ .oy-gruplar > .oy-grup:not(:nth-child(16)),
.oy-suz > input:nth-of-type(18):checked ~ .oy-gruplar > .oy-grup:not(:nth-child(17)),
.oy-suz > input:nth-of-type(19):checked ~ .oy-gruplar > .oy-grup:not(:nth-child(18)),
.oy-suz > input:nth-of-type(20):checked ~ .oy-gruplar > .oy-grup:not(:nth-child(19)),
.oy-suz > input:nth-of-type(21):checked ~ .oy-gruplar > .oy-grup:not(:nth-child(20)) {
  display: none;
}
.oy-gruplar { margin-top: 8px; }
.oy-grup { padding-top: 14px; }
.oy-grup + .oy-grup { margin-top: 6px; border-top: 1px solid var(--ayrac); }
.oy-grup-baslik { display: flex; flex-wrap: wrap; align-items: center; gap: 4px 10px; font-size: 15px; font-weight: 700; color: var(--baslik); }
.oy-grup-baslik .mono { font-size: 12px; font-weight: 400; }
.oy-isim-liste { list-style: none; margin: 8px 0 0; padding: 0; display: grid; grid-template-columns: repeat(auto-fill, minmax(min(100%, 250px), 1fr)); gap: 0 24px; }
.oy-isim-liste li { display: flex; align-items: baseline; gap: 6px; min-height: 32px; padding: 4px 0; border-bottom: 1px solid var(--ayrac); font-size: 14px; min-width: 0; }
.oy-isim-liste li > a { display: inline-block; padding: 3px 0; min-width: 0; overflow-wrap: anywhere; color: var(--metin); }   /* dokunma hedefi ≥24px (WCAG 2.5.8) */
.oy-isim-liste li > .soluk { min-width: 0; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }

/* Oy etiketi: renk + YAZI (renk tek başına bilgi taşımaz) */
.oy-etiket { margin-left: auto; flex: 0 0 auto; font-family: var(--mono); font-size: 11px; font-weight: 600; letter-spacing: 0.04em; }
.oy-kabul { color: var(--yesil); }
.oy-ret { color: var(--kirmizi); }
.oy-cekimser { color: var(--yumusak); }
.oy-katilmadi { color: var(--soluk); font-weight: 400; }   /* --sonuk kart zemininde 2,8:1 (axe); ayrım kesikli çerçeve ve ağırlıkla */
.oy-gecersiz, .oy-bos { color: var(--sicak); }
.oy-cip { display: inline-block; padding: 2px 7px; font-family: var(--mono); font-size: 11px; font-weight: 600; letter-spacing: 0.04em; border: 1px solid currentColor; white-space: nowrap; }
.oy-cip.oy-katilmadi { border-style: dashed; }

/* ---------------------------------------------------------------- gün sayfası (BUGÜN KABUL EDİLEN kartında oy bloğu) */
.oy-gun { margin-top: 20px; max-width: 560px; }
.oy-gun-sayilar { display: flex; flex-wrap: wrap; gap: 6px 26px; align-items: baseline; }
.oy-gun-sayilar .oy-buyuk { font-family: var(--mono); font-size: 44px; font-weight: 500; letter-spacing: -0.02em; line-height: 1.1; color: var(--yesil); }
.oy-gun-sayilar .oy-orta { font-family: var(--mono); font-size: 28px; line-height: 1.1; }
.oy-gun-sayilar .not { font-size: 15px; }
.oy-gun .lejant { margin-top: 12px; }
.oy-gun-alt { display: flex; flex-wrap: wrap; gap: 8px 24px; justify-content: space-between; align-items: center; margin-top: 14px; padding-top: 12px; border-top: 1px solid var(--kenar); font-size: 14px; color: var(--soluk); }

/* ---------------------------------------------------------------- ana sayfa "Son yasalaşanlar" */
.liste-bag .oy-liste { display: block; margin-top: 8px; max-width: 420px; }

/* ---------------------------------------------------------------- vekil oylamaları (/vekil/{slug}/oylamalar) */
.oy-vekil-ozet .yigma { margin-top: 14px; }
.oy-vekil-satir { display: grid; grid-template-columns: 96px minmax(0, 1fr) 210px; gap: 8px 20px; align-items: start; padding: 16px 0; border-top: 1px solid var(--kenar); }
.oy-vekil-satir:first-child { border-top: 0; }
.oy-vekil-tarih { font-family: var(--mono); font-size: 12px; line-height: 1.5; color: var(--soluk); }
.oy-vekil-baslik { display: block; font-size: 16px; font-weight: 700; line-height: 1.35; color: var(--baslik); overflow-wrap: anywhere; }
.oy-vekil-alt { margin-top: 4px; font-size: 13px; color: var(--soluk); }
.oy-vekil-sag { display: flex; flex-direction: column; gap: 8px; align-items: flex-start; min-width: 0; }
.oy-vekil-sag .oy-yazi { margin-top: 0; }

@media (max-width: 760px) {
  .oy-partiler { --sutunlar: minmax(0, 1fr) 42px 36px 40px 40px; column-gap: 8px; }
  .oy-partiler .tablo-bas, .oy-partiler .tablo-satir { column-gap: 8px; }
  .oy-partiler .tablo-bas { font-size: 10px; letter-spacing: 0; }
  .oy-genis { position: absolute; width: 1px; height: 1px; overflow: hidden; clip: rect(0 0 0 0); clip-path: inset(50%); white-space: nowrap; }
  .oy-dar { display: inline; }
  .oy-vekil-satir { grid-template-columns: minmax(0, 1fr); gap: 6px; }
  .oy-gun-sayilar .oy-buyuk { font-size: 38px; }
}
