/* =====================================================================
   ÖĞRENCİLER (özel ders defteri) — MASAÜSTÜ (29 Eyl 2026)
   =====================================================================
   Kullanıcı: "tüm içerikleriyle, tıklanabilir her yeri tek tek kontrol
   et". Canlıda liste · takvim · ayrıntı · 7 pencere · veli raporu
   tarandı (yazmalar engelliyken). Bulunanlar:
     - aynı ekranda 5-6 düğme boyu (32/34/38/40/44/46/48)
     - ortak takvim hapında öğrenci adı kesik ("Ada ÜÇLE…"; JS'te ilk ad)
     - gün sayacı 10px
     - ayrıntı özeti dağınık: oran satırının tutarı 23px'lik büyük sayı
       kuralını miras alıp ortada kopuk duruyordu
     - pencerelerde onay kutusu tarayıcı mavisi (ders penceresinde bakır)
     - "Genel toplam" bloğu açık temada lacivert
   Veri, yetki ve işlevler DOKUNULMADI. Yalnız ≥941px (onay kutusu hariç).
   ===================================================================== */

/* onay kutuları uygulamanın dilinde — iki temada, her genişlikte */
.og-kok input[type=checkbox], .modal-card input[type=checkbox] { accent-color: var(--accent); }

@media (min-width: 941px) {
  /* ---------- düğmeler tek boy ---------- */
  .og-kok .btn, .og-kok .btn-sm, .og-kok .schip { min-height: var(--ctrl-h); }
  .og-kok .og-sil { min-width: var(--ctrl-h); justify-content: center; }

  /* ---------- takvim: 10px sayaç ---------- */
  .og-kok .og-gun-rozet b { font-size: var(--fs-xs); }   /* gün rozeti sayısı 10px idi */
  /* iptal edilen ders: saydamlık (%55) yazıyı 2,39:1'e düşürüyordu —
     durumu üstü çizili yazı ve ikincil renk anlatır, saydamlık değil */
  .og-kok .og-cip.iptal { opacity: 1; }
  .og-kok .og-cip.iptal :is(b, em) { color: var(--muted); text-decoration: line-through; }
  /* "Bu ayı ekle" 34px kalmıştı */
  .og-kok #ogAyEkle, .og-kok #ogHaftaEkle, .og-kok #ogGelecekHafta { min-height: var(--ctrl-h); height: auto; }
  .og-kok .og-cip em { font-weight: 500; }

  /* ---------- ayrıntı özeti: tek sıra + tam genişlik çubuk ---------- */
  .og-kok .og-kunye-para {
    display: grid; grid-template-columns: auto auto auto minmax(0, 1fr);
    align-items: end; row-gap: var(--sp-3);
  }
  .og-kok .og-kunye-oran {
    grid-column: 4; grid-row: 1; justify-self: end; align-self: end; margin: 0;
    font-size: var(--fs-sm);
  }
  .og-kok .og-kunye-oran b { font-size: var(--fs-md); letter-spacing: 0; }
  .og-kok .og-kunye-cubuk { grid-column: 1 / -1; grid-row: 2; width: 100%; max-width: none; margin: 0; }
}

/* ders penceresindeki ücret notu açık temada 4,40:1 idi */
.modal-card .og-form-not-alt { color: var(--text); }

/* dar masaüstünde (941–1259; 1181px ölçüldü: ad 22px) takvim hücresi ~85px: ad 0–6px'lik bir
   şeride eziliyordu. Ad gizlenir — kimliği renk noktası ve üstteki
   lejant taşır, tam ad hapın title'ında. */
@media (min-width: 941px) and (max-width: 1259px) {
  .og-kok .og-cip > em { display: none; }
  /* künyedeki ad "Ada ÜÇLEROĞ…" diye kesiliyordu — iki satıra iner */
  .og-kok .og-kunye-ad > b { white-space: normal; overflow: visible; text-overflow: clip; overflow-wrap: break-word; }
}

/* =====================================================================
   ÖĞRENCİLER — TELEFON VE TABLET (30 Eyl 2026)
   ===================================================================== */
/* TAKVIMDE PARMAKLA AY DEGISTIRME (ogrenci.js `kaydirmaBagla`).
   Dikey kaydirma tarayicida; yatay hareket bizde. Yalniz transform +
   opacity (HAREKET kurali); azaltilmis harekette sureler 1ms. */
.og-takvim { touch-action: pan-y; }
.og-takvim.og-kaydiriyor { transition: none; user-select: none; }
.og-takvim.og-cikis-ileri, .og-takvim.og-cikis-geri { transition: transform var(--mo-hizli) var(--mo-cikis), opacity var(--mo-hizli) var(--mo-cikis); opacity: .35; }
.og-takvim.og-cikis-ileri { transform: translateX(-18%); }
.og-takvim.og-cikis-geri { transform: translateX(18%); }
.og-takvim:not(.og-kaydiriyor):not(.og-cikis-ileri):not(.og-cikis-geri) { transition: transform var(--mo-orta) var(--mo-cikis); }
.og-takvim.og-giris-ileri { animation: ogGirisIleri var(--mo-orta) var(--mo-cikis) both; }
.og-takvim.og-giris-geri { animation: ogGirisGeri var(--mo-orta) var(--mo-cikis) both; }
@keyframes ogGirisIleri { from { transform: translateX(14%); opacity: .3; } to { transform: none; opacity: 1; } }
@keyframes ogGirisGeri { from { transform: translateX(-14%); opacity: .3; } to { transform: none; opacity: 1; } }

@media (max-width: 600px) {
  /* sekme satiri tek satir: "Genel toplam" ikon dugmesi (390'da ikinci satira dusuyordu) */
  .og-seg { flex-wrap: nowrap; }
  .og-seg > .schip { flex: 1 1 0; justify-content: center; }
  .og-seg > .og-bosluk { display: none; }
  .og-seg { align-items: stretch; }
  .og-seg > .og-genel-btn { flex: none; width: 46px; min-width: 46px; height: auto; min-height: 0; padding: 0; justify-content: center; }
  .og-seg > .og-genel-btn > span { display: none; }
}

/* =====================================================================
   PARMAKLA DERS TAŞIMA (5 Eki 2026, ogrenci.js `dokunTasiBagla`)
   Basılı tut → ders hapı parmağı izler → bırakılan güne taşınır.
   Birden fazla dersli gün ve gün penceresindeki "Taşı" → gün seç kipi.
   ===================================================================== */
.og-takvim .og-tk-gun, .og-takvim .og-cip, .og-takvim .og-tk-ders {
  -webkit-touch-callout: none; -webkit-user-select: none; user-select: none;
}
html.og-tasiyor, html.og-tasiyor body { overscroll-behavior: none; }
.og-tk-gun.suruklenen { opacity: .45; }
.og-hayalet {
  position: fixed; left: 0; top: 0; z-index: 1000; pointer-events: none;
  display: inline-flex; align-items: center; gap: var(--sp-2);
  height: var(--ctrl-h-sm); padding: 0 var(--sp-3);
  background: var(--card); color: var(--text);
  border: 1px solid var(--accent); border-radius: var(--r-full);
  box-shadow: var(--shadow-pop);
  font-size: var(--fs-base); white-space: nowrap;
  will-change: transform;
}
.og-hayalet > b { font-weight: 600; font-variant-numeric: tabular-nums; }

/* gün seç kipi: hedef olabilecek günler belirgin */
.og-gunsec .og-takvim .og-tk-gun:not(.bos) { box-shadow: inset 0 0 0 1px var(--accent); cursor: pointer; }
.og-tasi-serit {
  position: fixed; left: 50%; transform: translateX(-50%); z-index: 900;
  bottom: var(--sp-6);
  display: flex; align-items: center; gap: var(--sp-3);
  width: max-content; max-width: calc(100vw - var(--sp-8));
  padding: var(--sp-2) var(--sp-2) var(--sp-2) var(--sp-4);
  background: var(--yan-bg2); color: var(--yan-metin);
  border: 1px solid var(--yan-cizgi); border-radius: var(--r-md);
  box-shadow: var(--shadow-pop);
  font-size: var(--fs-base);
}
.og-tasi-serit > span { min-width: 0; }
.og-tasi-serit > .btn { flex: none; min-height: 40px; }
/* Telefonda USTTE: alt gezinmenin yuksekligi bir token degil (390'da
   77px olculdu, toast'in 59'u ona binerdi); ust serit `--m-ust` tek
   kaynak. */
@media (max-width: 940px) {
  .og-tasi-serit { bottom: auto; top: calc(var(--m-ust) + var(--sp-2)); }
}

/* gün penceresi: satır + "Taşı" */
.og-gunsatir-kap { display: flex; align-items: stretch; border-top: 1px solid var(--line-kart); }
.og-gunsatir-kap:first-child { border-top: 0; }
.og-gunsatir-kap > .og-gunsatir { flex: 1; min-width: 0; border-top: 0; }
.og-gunsatir-tasi {
  flex: none; display: inline-flex; align-items: center; gap: var(--sp-1);
  min-width: 44px; padding: 0 var(--sp-3);
  background: none; border: 0; border-left: 1px solid var(--line-kart);
  color: var(--accent); font: inherit; font-size: var(--fs-sm); font-weight: 600; cursor: pointer;
}
.og-gunsatir-tasi .ic { width: 16px; height: 16px; }
.og-gunsatir-tasi:hover { background: var(--card2); }
