/* Kurs / içerik modülü */
.kurs-formu textarea { width: 100%; min-height: 96px; padding: 10px 11px; border: 1px solid var(--cizgi); border-radius: 9px; color: var(--metin); background: #fff; font: inherit; font-weight: 500; line-height: 1.5; resize: vertical; }
.kurs-formu textarea:focus { border-color: var(--kirmizi); outline: 3px solid rgba(201, 15, 29, .08); }
.kurs-formu .genis-alan { grid-column: 1 / -1; }
.kurs-form-karti { margin-bottom: 22px; }
.kurs-ipucu { margin: 0; padding: 0 24px 20px; color: var(--soluk); font-size: 12px; line-height: 1.6; }
.kurs-ipucu a { color: var(--kirmizi); font-weight: 750; }
.kurs-durum-formu { display: flex; flex-wrap: wrap; gap: 8px; padding: 0 24px 22px; }
.kurs-modul-yonetimi { margin-top: 20px; }
.kurs-modul-ekle { grid-template-columns: minmax(200px, 1fr) minmax(220px, 1.3fr) auto; border-bottom: 1px solid #eceef1; }
.kurs-modul-listesi { display: grid; gap: 14px; }
.kurs-modul-yonetimi .kurs-modul-listesi { padding: 18px 22px 22px; }
.kurs-yonetim-modul { border: 1px solid var(--cizgi); border-radius: 14px; background: #fafbfc; }
.kurs-yonetim-modul-ust { display: flex; align-items: center; justify-content: space-between; padding: 14px 18px 0; }
.kurs-sira-dugmeleri { display: inline-flex; gap: 2px; }
.kurs-sira-dugmeleri form { display: inline; }
.kurs-sira-dugmeleri .metin-dugme { display: grid; width: 26px; height: 26px; border: 1px solid var(--cizgi); border-radius: 7px; background: #fff; font-size: 13px; place-items: center; }
.kurs-sira-dugmeleri .metin-dugme:disabled { color: #c3c8d0; cursor: default; }
.kurs-modul-duzenle { display: flex; align-items: end; justify-content: space-between; gap: 12px; padding: 8px 18px 14px; }
.kurs-modul-formu { display: grid; flex: 1; grid-template-columns: minmax(180px, 1fr) minmax(220px, 1.4fr) auto; align-items: end; gap: 10px; }
.kurs-modul-formu label { display: grid; gap: 6px; color: var(--soluk); font-size: 11px; font-weight: 750; }
.kurs-modul-formu input, .kurs-ders-ekle input, .kurs-ders-ekle select { width: 100%; min-height: 38px; padding: 0 10px; border: 1px solid var(--cizgi); border-radius: 8px; color: var(--metin); background: #fff; font: inherit; font-size: 13px; }
.kurs-modul-formu input:focus, .kurs-ders-ekle input:focus, .kurs-ders-ekle select:focus { border-color: var(--kirmizi); outline: 3px solid rgba(201, 15, 29, .08); }
.kurs-modul-sil { padding-bottom: 10px; }
.kurs-yonetim-dersler { border-top: 1px solid #eceef1; background: #fff; border-radius: 0 0 14px 14px; }
.kurs-yonetim-ders { display: grid; grid-template-columns: 31px minmax(0, 1fr) auto auto auto; align-items: center; gap: 12px; padding: 11px 18px; border-bottom: 1px solid #f0f1f3; font-size: 13px; }
.kurs-yonetim-ders .oynat { font-size: 12px; font-weight: 800; }
.kurs-yonetim-ders-bilgi { min-width: 0; }
.kurs-yonetim-ders-bilgi strong, .kurs-yonetim-ders-bilgi small { display: block; }
.kurs-yonetim-ders-bilgi strong { overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
.kurs-yonetim-ders-bilgi strong a { color: var(--metin); }
.kurs-yonetim-ders-bilgi strong a:hover { color: var(--kirmizi); }
.kurs-yonetim-ders-bilgi small { margin-top: 3px; color: var(--soluk); font-size: 11px; }
.kurs-ders-ekle { display: grid; grid-template-columns: minmax(200px, 1.2fr) minmax(200px, 1.4fr) 90px 110px auto; align-items: end; gap: 10px; padding: 12px 18px 16px; }
.kurs-ders-ekle label { display: grid; gap: 6px; color: var(--soluk); font-size: 11px; font-weight: 750; }
.kurs-ders-yonetim-grid { grid-template-columns: minmax(360px, 1.2fr) minmax(300px, .8fr); }
.kurs-ders-sil-formu { padding: 0 24px 22px; }
.kurs-onizleme { padding: 0 22px 22px; }
.kurs-kaynak-alani { padding: 0 22px 22px; }
.kurs-kaynak-alani .odev-dosyalari { margin-bottom: 18px; }
.kurs-kaynak-islem { display: flex; align-items: center; gap: 12px; }
.kurs-kaynak-islem form { display: inline; }
.kurs-dosya-formu { display: grid; gap: 12px; padding-top: 16px; border-top: 1px solid #eef0f3; }
.kurs-dosya-formu .odev-form-islemleri { margin-top: 0; }

/* video alanı */
.kurs-video { position: relative; overflow: hidden; aspect-ratio: 16 / 9; border-radius: 18px; background: #10151d; }
.kurs-video iframe, .kurs-video video { position: absolute; inset: 0; width: 100%; height: 100%; border: 0; }
.kurs-video--yok, .kurs-video--baglanti { display: grid; align-content: center; justify-items: center; gap: 12px; padding: 30px; color: #dce0e6; background: radial-gradient(circle at 50% 45%, #3d4652, #10151d 64%); text-align: center; }
.kurs-video--yok p, .kurs-video--baglanti p { margin: 0; font-size: 13px; }
.kurs-video--yok .buyuk-oynat { opacity: .45; }

/* öğrenci / öğretmen ders sayfası */
.kurs-ders-ust { display: flex; align-items: center; justify-content: space-between; gap: 12px; margin-bottom: 6px; }
.kurs-ders-ust .ust-etiket { margin: 0; }
.kurs-ders-gezinti { display: flex; justify-content: space-between; gap: 10px; margin-top: 16px; }
.kurs-ders-gezinti .buton { max-width: 48%; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
.kurs-kaynak-karti { margin-top: 14px; }
.kurs-mufredat { padding-bottom: 8px; }
.kurs-mufredat .kart-baslik { padding-bottom: 8px; }
.kurs-mufredat-modul { display: grid; gap: 3px; padding: 12px 18px 6px; border-top: 1px solid #f0f1f3; font-size: 13px; }
.kurs-mufredat .ders-link { padding: 11px 18px; }
.kurs-mufredat .ders-link span:nth-child(2) { overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }

/* program içeriği (modül → ders) */
.kurs-modul .hafta-baslik .durum { flex: 0 0 auto; }
.kurs-modul .ders-listesi { padding-bottom: 6px; }
.kurs-ders-satir { color: var(--metin); }
.kurs-ders-satir:hover { color: var(--kirmizi); }
.kurs-ders-satir span:nth-child(2) small { display: block; margin-top: 3px; font-size: 12px; }
.kurs-ders-satir.tamam .oynat { color: #086b49; background: #dbf5ea; }
.kurs-ders-satir .durum { margin-left: 8px; }
.istatistik .ilerleme { margin-top: 12px; }

/* öğrenci kurs kartı ve kurs detayı eklentileri (dashboard.php) */
.kurs-icerik-ilerleme { display: flex; align-items: center; justify-content: space-between; gap: 10px; margin-top: 12px; padding-top: 12px; border-top: 1px solid #eef0f3; color: var(--soluk); font-size: 12px; font-weight: 750; }
.kurs-icerik-ilerleme a { color: var(--kirmizi); }
.kurs-icerik-ilerleme .ilerleme { flex: 1; }
.kurs-detay-yan { display: grid; gap: 20px; align-content: start; }
.kurs-icerik-kutusu { padding: 0 22px 20px; }
.kurs-icerik-kutusu p { margin: 0 0 10px; color: var(--soluk); font-size: 13px; line-height: 1.6; }
.kurs-icerik-kutusu .ilerleme { margin: 8px 0 14px; }

@media (max-width: 980px) {
  .kurs-ders-yonetim-grid, .sinif-yonetim-grid.kurs-ders-yonetim-grid { grid-template-columns: 1fr; }
  .kurs-ders-ekle { grid-template-columns: 1fr 1fr; }
  .kurs-modul-ekle { grid-template-columns: 1fr 1fr; }
}
@media (max-width: 720px) {
  .kurs-modul-formu, .kurs-ders-ekle, .kurs-modul-ekle { grid-template-columns: 1fr; }
  .kurs-modul-duzenle { flex-direction: column; align-items: stretch; }
  .kurs-yonetim-ders { grid-template-columns: 31px minmax(0, 1fr); }
  .kurs-yonetim-ders .durum, .kurs-yonetim-ders .kurs-sira-dugmeleri, .kurs-yonetim-ders .tablo-islem { grid-column: 2; }
  .kurs-ders-gezinti { flex-direction: column; }
  .kurs-ders-gezinti .buton { max-width: none; }
}
.kurs-cogalt { margin: 12px 0 0; }
.kurs-cogalt summary { list-style: none; cursor: pointer; }
.kurs-cogalt summary::-webkit-details-marker { display: none; }
.kurs-cogalt[open] { display: grid; gap: 10px; padding: 12px 14px; margin-top: 12px; border: 1px solid var(--cizgi); border-radius: 12px; }
.kurs-cogalt-not { color: var(--soluk); font-size: 12px; }

/* B-032: .kurs-ders-meta / .kurs-tamamla-formu / .kurs-tamamla-ozet kuralları kaldırıldı.
   Video altı sadeleştirilince o öğeler de kalktı; .kurs-tamamla-formu'nun border-top'u
   açıklamanın altında sahipsiz bir çizgi bırakıyordu. Düzen artık app.css'te. */

/* --- B-070: ders paneli sekmeleri (yorumlar / notlarım) --- */
.ders-panel-sekmeleri { display: flex; gap: 4px; padding: 6px; margin: 0 0 4px; border-bottom: 1px solid var(--cizgi); background: #fafbfc; }
.ders-panel-sekmeleri button { display: inline-flex; align-items: center; gap: 7px; padding: 8px 13px; border: 0; border-radius: 10px; background: transparent; color: var(--soluk); font-size: var(--yazi-mini); font-weight: 700; cursor: pointer; transition: background .14s ease, color .14s ease; }
.ders-panel-sekmeleri button svg { width: 15px; height: 15px; }
.ders-panel-sekmeleri button:hover { color: var(--metin); }
.ders-panel-sekmeleri button.aktif { background: #fff; color: var(--metin); box-shadow: 0 1px 3px rgba(20, 25, 35, .12); }
.ders-panel-sekmeleri b { padding: 1px 6px; border-radius: 99px; background: #1f9d6b; color: #fff; font-size: 10px; font-weight: 800; }

/* --- notlar --- */
.not-formu .sure-gosterge--not { border-color: #bfe3d3; color: #12795a; background: #eaf7f1; }
.not-formu .sure-gosterge--not:hover { border-color: #1f9d6b; }
.not-listesi { display: grid; gap: 8px; padding: 4px 18px 18px; }
.not-satiri { display: grid; grid-template-columns: 46px minmax(0, 1fr) 24px; align-items: start; gap: 10px; padding: 10px 10px 10px 11px; border: 1px solid #dcefe6; border-radius: 12px; background: #f7fcfa; }
.not-sure { padding: 3px 0; border: 0; border-radius: 8px; background: #e2f4eb; color: #12795a; font-size: 11px; font-weight: 800; font-variant-numeric: tabular-nums; cursor: pointer; }
.not-sure:hover { background: #1f9d6b; color: #fff; }
.not-govde p { margin: 0; font-size: var(--yazi-mini); line-height: 1.6; overflow-wrap: anywhere; }
.not-govde small { display: block; margin-top: 3px; color: var(--soluk); font-size: 11px; }
.not-sil { align-self: center; }

/* Zaman çizgisi: yorum sarı, not yeşil. */
.oynatici-isaret--not { background: #22c07f; }

/* --- B-071: fokus modundan çık düğmesi --- */
.fokus-cikis { position: absolute; top: 16px; left: 18px; z-index: 5; display: inline-flex; align-items: center; gap: 8px; padding: 8px 14px; border: 1px solid rgba(255,255,255,.22); border-radius: 11px; background: rgba(12,16,22,.72); color: #eef1f5; font-size: 12px; font-weight: 700; cursor: pointer; backdrop-filter: blur(6px); transition: background .15s ease, border-color .15s ease; }
.fokus-cikis:hover { background: rgba(201,15,29,.85); border-color: transparent; }
.fokus-cikis i { font-style: normal; font-size: 14px; }
.fokus-cikis kbd { padding: 1px 6px; border: 1px solid rgba(255,255,255,.28); border-radius: 5px; font-family: inherit; font-size: 10px; font-weight: 700; opacity: .8; }

/* Fokus modunda not paneli de koyu temaya uyar. */
.video-yerlesim.sinema .ders-panel-sekmeleri { background: #0e131c; border-bottom-color: rgba(255,255,255,.1); }
.video-yerlesim.sinema .ders-panel-sekmeleri button { color: #aab2bf; }
.video-yerlesim.sinema .ders-panel-sekmeleri button.aktif { background: rgba(255,255,255,.1); color: #fff; box-shadow: none; }
.video-yerlesim.sinema .not-satiri { border-color: rgba(255,255,255,.1); background: rgba(34,192,127,.08); }
.video-yerlesim.sinema .not-govde p { color: #e9edf3; }
.video-yerlesim.sinema .not-sure { background: rgba(34,192,127,.18); color: #6fe0b0; }
.video-yerlesim.sinema .not-formu textarea { background: #0b0f16; color: #f2f4f7; }
.video-yerlesim.sinema .not-formu { background: #131925; border-color: rgba(255,255,255,.12); }

/* --- B-072: tamamlanan ders yeşil --- */
.ders-link--tamam { background: #f3fbf7; }
.ders-link--tamam .oynat { background: #e2f4eb; color: #12795a; }
.ders-link--tamam span:not(.oynat) { color: #12795a; }
.ders-link--tamam:hover { background: #e9f7f0; }
.ders-link--tamam.aktif { background: #ddf3e8; }
.yorum-form-mesaj.basarili { color: #12795a; }
.video-yerlesim.sinema .yorum-form-mesaj.basarili { color: #6fe0b0; }
