/* Kurslar — Çınar paleti, açık + koyu tema */

/* ----- AÇIK TEMA (varsayılan) — Çınar ----- */
:root{
  --zemin:#faf7f0;
  --yuzey:#ffffff;
  --yuzey-2:#f3eee2;
  --kenar:#e6dfcd;
  --metin:#26251a; --metin-soluk:#7a7766;
  --soluk:#7a7766;
  --soluk-2:#9a9686;
  --marka:#525021;
  --marka-2:#6b6a33;
  --vurgu:#525021;
  --vurgu-metin:#faf7f0;
  --vurgu-zemin:#efefd9;
  --tehlike:#a33a2e;
  --uyari:#a8761f;
  --golge:0 18px 40px -26px rgba(82,80,33,.42);
  --r:10px;
  --ust-h:58px;
  color-scheme:light;
}

/* ----- KOYU TEMA — Çınar'ın koyu karşılığı ----- */
html[data-tema="koyu"]{
  --zemin:#14150f;
  --yuzey:#1c1d15;
  --yuzey-2:#24261b;
  --kenar:#33351f;
  --metin:#e8e6d5; --metin-soluk:#9d9b8a;
  --soluk:#9b9880;
  --soluk-2:#78765f;
  --marka:#c9c46a;
  --marka-2:#e3dfa0;
  --vurgu:#c9c46a;
  --vurgu-metin:#1b1a10;
  --vurgu-zemin:#2e2f20;
  --tehlike:#d97a6c;
  --uyari:#d5a94e;
  --golge:0 18px 40px -26px rgba(0,0,0,.85);
  color-scheme:dark;
}

*{box-sizing:border-box}
[hidden]{display:none!important}
html,body{margin:0;padding:0}
body{
  background:var(--zemin);
  color:var(--metin);
  font-family:Inter,-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,Helvetica,Arial,sans-serif;
  font-size:15px;line-height:1.5;
  -webkit-font-smoothing:antialiased;
  min-height:100vh;
  transition:background .2s,color .2s;
  font-feature-settings:"kern" 1,"liga" 0;
}
h1,h2,h3,.marka,.devam-baslik,.kart-ad,.video-baslik,.mufredat-baslik{
  font-family:Literata,Georgia,"Times New Roman",serif;
  letter-spacing:0;
}
a{color:inherit;text-decoration:none}
button{font-family:inherit}
img{display:block}

/* ---------- GİRİŞ ---------- */
.giris-ekrani{
  min-height:100vh;display:grid;place-items:center;padding:24px;
  position:relative;overflow:hidden;
}
.giris-isik{
  position:absolute;inset:-30%;pointer-events:none;
  background:
    radial-gradient(closest-side at 28% 28%, rgba(201,196,106,.32), transparent 70%),
    radial-gradient(closest-side at 74% 68%, rgba(82,80,33,.14), transparent 72%),
    repeating-linear-gradient(115deg, rgba(82,80,33,.03) 0 2px, transparent 2px 30px);
  filter:blur(4px);
  animation:kay 26s ease-in-out infinite alternate;
}
html[data-tema="koyu"] .giris-isik{
  background:
    radial-gradient(closest-side at 28% 28%, rgba(201,196,106,.13), transparent 70%),
    radial-gradient(closest-side at 74% 68%, rgba(90,110,60,.15), transparent 72%),
    repeating-linear-gradient(115deg, rgba(201,196,106,.025) 0 2px, transparent 2px 30px);
}
@keyframes kay{
  from{transform:translate3d(-2%,-1%,0) scale(1.02)}
  to{transform:translate3d(3%,2%,0) scale(1.07)}
}
.giris-kart{
  position:relative;width:100%;max-width:392px;
  background:var(--yuzey);
  border:1px solid var(--kenar);
  border-radius:16px;padding:34px 28px 28px;
  box-shadow:var(--golge);
}
.logo-kutu{
  width:44px;height:44px;margin:0 auto 14px;border-radius:12px;
  background:linear-gradient(145deg,var(--marka),var(--marka-2));
  color:var(--vurgu-metin);display:grid;place-items:center;
  box-shadow:0 2px 8px -2px rgba(82,80,33,.5);
}
.logo-kutu svg{
  width:23px;height:23px;stroke:currentColor;fill:none;
  stroke-width:1.7;stroke-linecap:round;stroke-linejoin:round;
}
.marka{font-size:17px;font-weight:600;text-align:center;margin-bottom:5px}
.giris-alt{text-align:center;color:var(--soluk);font-size:13.5px;margin:0 0 24px}
.alan{display:block;margin-bottom:14px}
.alan>span{
  display:block;font-size:11.5px;letter-spacing:.06em;
  color:var(--soluk);margin-bottom:6px;text-transform:uppercase;
}
.alan input{
  width:100%;padding:11px 13px;
  background:var(--zemin);border:1px solid var(--kenar);
  border-radius:var(--r);color:var(--metin);font-size:15px;
  transition:border-color .15s,box-shadow .15s;
}
.alan input:focus{
  outline:none;border-color:var(--vurgu);
  box-shadow:0 0 0 3px rgba(82,80,33,.12);
}
html[data-tema="koyu"] .alan input:focus{
  box-shadow:0 0 0 3px rgba(201,196,106,.18);
}
.onay{
  display:flex;align-items:center;gap:8px;
  font-size:13px;color:var(--soluk);margin:4px 0 20px;
  cursor:pointer;user-select:none;
}
.onay input{accent-color:var(--vurgu);width:15px;height:15px;margin:0}
.btn{
  border:1px solid var(--kenar);background:var(--yuzey-2);
  color:var(--metin);border-radius:var(--r);
  padding:9px 15px;font-size:14px;cursor:pointer;
  transition:background .15s,border-color .15s,opacity .15s;
}
.btn:hover{background:var(--vurgu-zemin);border-color:var(--marka-2)}
.btn:disabled{opacity:.5;cursor:default}
.btn-ana{
  width:100%;
  background:linear-gradient(145deg,var(--marka),var(--marka-2));
  border-color:transparent;color:var(--vurgu-metin);
  font-weight:650;padding:12px;font-size:15px;letter-spacing:.01em;
}
.btn-ana:hover{filter:brightness(1.07)}
.btn-sade{background:transparent}
.btn-kucuk{padding:6px 11px;font-size:12.5px}
.hata{margin-top:14px;color:var(--tehlike);font-size:13.5px;text-align:center}
.hata[hidden]{display:none}

/* ---------- ÜST ÇUBUK ---------- */
.ust{
  height:var(--ust-h);display:flex;align-items:center;gap:14px;
  padding:0 20px;border-bottom:1px solid var(--kenar);
  background:var(--zemin);
  position:sticky;top:0;z-index:20;
}
.marka-kucuk{
  display:flex;align-items:center;gap:9px;
  font-size:13px;font-weight:600;letter-spacing:.12em;
  color:var(--metin);text-transform:uppercase;
}
.marka-kucuk .mini-logo{
  width:24px;height:24px;border-radius:7px;
  background:linear-gradient(145deg,var(--marka),var(--marka-2));
  color:var(--vurgu-metin);display:grid;place-items:center;flex:0 0 24px;
}
.marka-kucuk .mini-logo svg{
  width:14px;height:14px;stroke:currentColor;fill:none;
  stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round;
}
.ust-sag{margin-left:auto;display:flex;align-items:center;gap:10px}
.kim{font-size:13.5px;color:var(--soluk)}
.baglanti{font-size:13.5px;color:var(--marka);font-weight:550}
.baglanti:hover{text-decoration:underline}
.geri{
  font-size:19px;color:var(--soluk);line-height:1;
  padding:6px 10px;border-radius:8px;
}
.geri:hover{background:var(--yuzey-2);color:var(--metin)}
.ust-orta{min-width:0;flex:1}
.ust-baslik{font-size:14.5px;font-weight:600}
.ust-alt{font-size:12px;color:var(--soluk)}
.ust-baslik,.ust-alt,.kart-ad,.devam-baslik{
  white-space:nowrap;overflow:hidden;text-overflow:ellipsis;
}

/* tema düğmesi */
.tema-btn{
  width:34px;height:34px;flex:0 0 34px;border-radius:9px;
  border:1px solid var(--kenar);background:var(--yuzey);
  color:var(--metin);display:grid;place-items:center;
  cursor:pointer;font-size:15px;line-height:1;
  transition:background .15s,border-color .15s;
}
.tema-btn:hover{background:var(--vurgu-zemin)}

/* ---------- PANEL ---------- */
.govde{max-width:1180px;margin:0 auto;padding:26px 20px 60px}
.bolum-baslik{font-size:16px;font-weight:600;margin:26px 0 14px}
.bolum-baslik:first-child{margin-top:0}

.devam{margin-bottom:30px}
.devam-etiket{
  font-size:11px;letter-spacing:.13em;color:var(--soluk);
  font-weight:600;margin-bottom:9px;text-transform:uppercase;
}
.devam-kart{
  display:flex;align-items:center;gap:16px;
  background:var(--yuzey);border:1px solid var(--kenar);
  border-radius:14px;padding:12px;
  transition:border-color .18s,transform .18s,box-shadow .18s;
}
.devam-kart:hover{
  border-color:var(--marka-2);
  transform:translateY(-1px);box-shadow:var(--golge);
}
.devam-gorsel{
  width:150px;flex:0 0 150px;aspect-ratio:16/9;
  border-radius:9px;overflow:hidden;background:var(--yuzey-2);
}
.devam-gorsel img{width:100%;height:100%;object-fit:cover}
.devam-metin{min-width:0;flex:1}
.devam-kurs{font-size:11.5px;letter-spacing:.06em;color:var(--soluk);text-transform:uppercase}
.devam-baslik{font-size:16px;font-weight:600;margin:3px 0 9px}
.devam-cubuk{height:3px;background:var(--yuzey-2);border-radius:2px;overflow:hidden;max-width:340px}
.devam-cubuk i{display:block;height:100%;background:var(--marka);border-radius:2px}
.devam-sure{font-size:12px;color:var(--soluk-2);margin-top:7px}
.devam-ok{
  width:38px;height:38px;flex:0 0 38px;display:grid;place-items:center;
  border:1px solid var(--kenar);border-radius:50%;
  color:var(--marka);font-size:13px;
}

.izgara{
  display:grid;grid-template-columns:repeat(auto-fill,minmax(236px,1fr));gap:18px;
}
.kart{
  display:block;border-radius:12px;overflow:hidden;
  background:var(--yuzey);border:1px solid var(--kenar);
  transition:transform .18s,border-color .18s,box-shadow .18s;
  position:relative;
}
.kart:hover{
  transform:translateY(-3px);
  border-color:var(--marka-2);
  box-shadow:var(--golge);
}
.kart-gorsel{
  aspect-ratio:16/9;background:var(--yuzey-2);
  position:relative;overflow:hidden;
}
.kart-gorsel img{width:100%;height:100%;object-fit:cover;transition:transform .35s}
.kart:hover .kart-gorsel img{transform:scale(1.035)}
.kart-gorsel-fallback{
  position:absolute;inset:0;display:grid;place-items:center;
  font-family:Literata,Georgia,serif;
  font-size:28px;font-weight:600;color:var(--soluk-2);
}
.kart-bitti{
  position:absolute;top:9px;right:9px;width:24px;height:24px;
  border-radius:50%;background:var(--marka);color:var(--vurgu-metin);
  display:grid;place-items:center;font-size:13px;font-weight:700;
}
.kart-metin{padding:11px 13px 13px}
.kart-ad{
  font-size:15px;font-weight:600;
  display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;
  white-space:normal;
}
.kart-alt{
  font-size:12px;color:var(--soluk);margin-top:6px;
  display:flex;align-items:center;gap:8px;
}
.kart-cubuk{height:2px;background:var(--yuzey-2);margin-top:10px;border-radius:2px;overflow:hidden}
.kart-cubuk i{display:block;height:100%;background:var(--marka)}
.bos{color:var(--soluk);font-size:14px}

/* ---------- KURS / OYNATICI ---------- */
/* tek sütun: oynatıcı + altında playlist */
.kurs-yerlesim{
  display:block;
  max-width:1080px;
  margin:0 auto;
  padding-bottom:60px;
}
.oynatici-alan{padding:18px 20px 0;min-width:0}

/* playlist (hem masaüstü hem mobil) */
.mufredat{display:none}          /* eski sağ sütun kullanılmıyor */
.playlist{
  padding:18px 20px 40px;
  max-width:1080px;
  margin:0 auto;
}
.playlist-ust{
  display:flex;align-items:center;gap:14px;
  padding:0 2px 14px;border-bottom:1px solid var(--kenar);
  margin-bottom:6px;
}
.playlist-baslik{
  font-size:15px;font-weight:600;
  font-family:Literata,Georgia,serif;
}
.playlist-sayac{font-size:12.5px;color:var(--soluk);margin-left:auto;
  font-variant-numeric:tabular-nums}
.playlist-cubuk{
  height:3px;background:var(--yuzey-2);border-radius:2px;overflow:hidden;
  margin-top:10px;
}
.playlist-cubuk i{display:block;height:100%;background:var(--marka)}

/* satır (YouTube playlist görünümü) */
.pl-satir{
  display:flex;gap:12px;align-items:flex-start;
  padding:9px 6px;border-radius:9px;cursor:pointer;
  transition:background .13s;position:relative;
}
.pl-satir:hover{background:var(--yuzey-2);backdrop-filter:none}
.pl-satir.aktif{background:var(--vurgu-zemin);backdrop-filter:none}
.pl-satir.aktif::before{
  content:'';position:absolute;left:0;top:8px;bottom:8px;width:2px;
  background:var(--marka);border-radius:2px;
}
.pl-no{
  flex:0 0 22px;text-align:center;padding-top:12px;
  font-size:11.5px;color:var(--soluk-2);
  font-variant-numeric:tabular-nums;
}
.pl-satir.aktif .pl-no{color:var(--marka);font-weight:600}
.pl-gorsel{
  position:relative;flex:0 0 132px;aspect-ratio:16/9;
  border-radius:7px;overflow:hidden;background:var(--yuzey-2);
  display:grid;place-items:center;
  backdrop-filter:none;filter:none;
}
.pl-gorsel img{width:100%;height:100%;object-fit:cover}
.pl-gorsel .pl-harf{font-family:Literata,Georgia,serif;font-size:20px;color:var(--soluk-2)}
.pl-sure-badge{
  position:absolute;right:4px;bottom:4px;
  background:rgba(0,0,0,.82);color:#fff;font-size:10px;
  padding:1px 4px;border-radius:3px;font-variant-numeric:tabular-nums;
}
.pl-metin{flex:1;min-width:0;padding-top:2px}
.pl-ad{
  font-size:14px;line-height:1.35;font-weight:500;
  display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;
}
.pl-satir.aktif .pl-ad{font-weight:600}
.pl-alt{
  font-size:11.5px;color:var(--soluk);margin-top:4px;
  display:flex;align-items:center;gap:7px;flex-wrap:wrap;
}
.pl-bitti{color:var(--marka);font-weight:600}
.pl-cubuk{height:2px;background:var(--yuzey-2);margin-top:7px;border-radius:2px;
  overflow:hidden;max-width:340px;filter:none;backdrop-filter:none}
.pl-cubuk i{display:block;height:100%;background:var(--marka)}

.pl-bolum{
  font-size:11px;letter-spacing:.08em;text-transform:uppercase;
  color:var(--soluk-2);font-weight:600;
  padding:16px 6px 7px;
}

/* ============ Plyr oynatıcı ============ */

/* video kapsayıcıyı tam doldursun, siyah bant kalmasın */
/* Plyr kapsayıcı: video alanı tam otursun, kontrol içinde kalsın */
.plyr-kap{
  position:relative;
  width:100%;
  margin:0 auto;
  background:#000;
  border-radius:12px;
  overflow:hidden;
  border:1px solid var(--kenar);
}
.plyr-kap .plyr{
  width:100%;
  min-width:0;
  border-radius:0;
  background:#000;
}
.plyr-kap .plyr__video-wrapper{
  width:100%;
  background:#000;
  padding-bottom:0 !important;
  height:auto !important;
}
.plyr-kap video{
  position:relative !important;
  display:block !important;
  width:100% !important;
  height:auto !important;
  max-height:calc(100vh - 240px);
  object-fit:contain;
  line-height:0;
}
/* Plyr'ın kendi aspect-ratio sarmalayıcısını etkisizleştir */
.plyr-kap .plyr--video .plyr__video-wrapper{
  height:auto;
}
.plyr-kap .plyr__controls{
  position:absolute !important;
  left:0;right:0;bottom:0;
  z-index:3;
}
.plyr-kap .plyr{
  width:100%;
  border-radius:12px;
  overflow:hidden;
}
.plyr-kap .plyr__video-wrapper{
  width:100%;
  background:#000;
}
.plyr-kap video{
  display:block;
  width:100%;
  height:auto;
  object-fit:contain;
}

.plyr-kap .plyr__video-wrapper{
  background:#000;
  height:100%;
}
.plyr-kap video{
  display:block;
  width:100% !important;
  height:auto !important;
  max-height:calc(100vh - 220px);
  object-fit:contain;
}
/* Plyr: kontrol çubuğu video alanının İÇİNDE kalsın */
.plyr-kap .plyr{
  min-width:0;
  height:auto;
}
.plyr-kap .plyr--video{
  overflow:hidden;      /* taşan kontrolü gizle, ama içeride tut */
  position:relative;
}
.plyr-kap .plyr__video-wrapper{
  position:relative;
  background:#000;
}
.plyr-kap .plyr__controls{
  position:absolute;left:0;right:0;bottom:0;z-index:3;
  background:linear-gradient(to top,
    rgba(0,0,0,.92) 0%,
    rgba(0,0,0,.78) 45%,
    rgba(0,0,0,.35) 75%,
    transparent 100%) !important;
  padding:26px 12px 8px !important;
  gap:2px;
}
/* ikonlar her zaman beyaz ve net */
.plyr-kap .plyr__control svg{fill:#fff !important;opacity:1 !important}
.plyr-kap .plyr__control{color:#fff !important;opacity:1 !important}
.plyr-kap .plyr__control:hover{background:rgba(255,255,255,.18) !important}
.plyr-kap .plyr__time{color:#fff !important;opacity:.95 !important;text-shadow:0 1px 2px rgba(0,0,0,.8)}
.plyr-kap .plyr__progress input[type=range]{color:#c9c46a !important}
.plyr-kap .plyr__progress__buffer{color:rgba(255,255,255,.35) !important}
/* buyuk orta oynat butonu */
.plyr-kap .plyr__control--overlaid{
  background:rgba(0,0,0,.75) !important;
  padding:22px !important;
}
.plyr-kap .plyr__control--overlaid svg{fill:#fff !important;width:26px;height:26px}

/* Plyr kendi ölçeklemesini yapar — burada video oranına zorlamıyoruz */
.plyr-kap .plyr{
  --plyr-color-main: var(--marka);
  --plyr-video-background: #000;
  --plyr-menu-background: var(--yuzey);
  --plyr-menu-color: var(--metin);
  --plyr-control-icon-size: 18px;
  --plyr-font-family: Inter, -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, sans-serif;
  --plyr-font-size-base: 14px;
  --plyr-font-size-small: 12px;
  --plyr-video-control-color: #fff;
  --plyr-video-control-color-hover: #fff;
  --plyr-video-control-background-hover: rgba(255,255,255,.15);
  width:100%;
  border-radius:12px;
}
.plyr-kap .plyr__video-wrapper{background:#000}
.plyr-kap video{
  display:block;
  width:100%;
  height:100%;
  object-fit:contain;
}

/* büyük oynat butonu */
.plyr__control--overlaid{
  background:rgba(33,33,33,.75);
  backdrop-filter:none;
  padding:22px;
}
.plyr__control--overlaid:hover{background:var(--marka)}
.plyr__control--overlaid svg{width:26px;height:26px;fill:#fff}

/* tam ekranda kenarlık yok */
.plyr-kap:fullscreen,
.plyr-kap .plyr:fullscreen{border:none;border-radius:0;max-height:none}

/* yükleniyor katmanı */
.yukleniyor{
  position:absolute;inset:0;display:grid;place-items:center;
  background:rgba(0,0,0,.35);pointer-events:none;z-index:3;
}
.yukleniyor[hidden]{display:none}
.cember{
  width:34px;height:34px;border-radius:50%;
  border:2.5px solid rgba(255,255,255,.18);
  border-top-color:#c9c46a;
  animation:don 800ms linear infinite;
}
@keyframes don{to{transform:rotate(360deg)}}
.oynatici-hata{
  position:absolute;inset:0;display:grid;place-items:center;
  background:rgba(8,9,6,.94);color:#e58b7c;
  font-size:14px;padding:20px;text-align:center;z-index:4;
}
.oynatici-hata[hidden]{display:none}

/* geri sayım */
.geri-sayim{
  position:absolute;inset:0;z-index:6;display:grid;place-items:center;
  text-align:center;padding:20px;
  background:rgba(10,11,8,.93);color:#e8e6d5;
  font-size:15px;cursor:pointer;
}

/* playlist (hem masaüstü hem mobil) */
.mufredat{display:none}          /* eski sağ sütun kullanılmıyor */
.playlist{
  padding:18px 20px 40px;
  max-width:1080px;
  margin:0 auto;
}
.playlist-ust{
  display:flex;align-items:center;gap:14px;
  padding:0 2px 14px;border-bottom:1px solid var(--kenar);
  margin-bottom:6px;
}
.playlist-baslik{
  font-size:15px;font-weight:600;
  font-family:Literata,Georgia,serif;
}
.playlist-sayac{font-size:12.5px;color:var(--soluk);margin-left:auto;
  font-variant-numeric:tabular-nums}
.playlist-cubuk{
  height:3px;background:var(--yuzey-2);border-radius:2px;overflow:hidden;
  margin-top:10px;
}
.playlist-cubuk i{display:block;height:100%;background:var(--marka)}

/* satır (YouTube playlist görünümü) */
.pl-satir{
  display:flex;gap:12px;align-items:flex-start;
  padding:9px 6px;border-radius:9px;cursor:pointer;
  transition:background .13s;position:relative;
}
.pl-satir:hover{background:var(--yuzey-2);backdrop-filter:none}
.pl-satir.aktif{background:var(--vurgu-zemin);backdrop-filter:none}
.pl-satir.aktif::before{
  content:'';position:absolute;left:0;top:8px;bottom:8px;width:2px;
  background:var(--marka);border-radius:2px;
}
.pl-no{
  flex:0 0 22px;text-align:center;padding-top:12px;
  font-size:11.5px;color:var(--soluk-2);
  font-variant-numeric:tabular-nums;
}
.pl-satir.aktif .pl-no{color:var(--marka);font-weight:600}
.pl-gorsel{
  position:relative;flex:0 0 132px;aspect-ratio:16/9;
  border-radius:7px;overflow:hidden;background:var(--yuzey-2);
  display:grid;place-items:center;
  backdrop-filter:none;filter:none;
}
.pl-gorsel img{width:100%;height:100%;object-fit:cover}
.pl-gorsel .pl-harf{font-family:Literata,Georgia,serif;font-size:20px;color:var(--soluk-2)}
.pl-sure-badge{
  position:absolute;right:4px;bottom:4px;
  background:rgba(0,0,0,.82);color:#fff;font-size:10px;
  padding:1px 4px;border-radius:3px;font-variant-numeric:tabular-nums;
}
.pl-metin{flex:1;min-width:0;padding-top:2px}
.pl-ad{
  font-size:14px;line-height:1.35;font-weight:500;
  display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;
}
.pl-satir.aktif .pl-ad{font-weight:600}
.pl-alt{
  font-size:11.5px;color:var(--soluk);margin-top:4px;
  display:flex;align-items:center;gap:7px;flex-wrap:wrap;
}
.pl-bitti{color:var(--marka);font-weight:600}
.pl-cubuk{height:2px;background:var(--yuzey-2);margin-top:7px;border-radius:2px;
  overflow:hidden;max-width:340px;filter:none;backdrop-filter:none}
.pl-cubuk i{display:block;height:100%;background:var(--marka)}

.pl-bolum{
  font-size:11px;letter-spacing:.08em;text-transform:uppercase;
  color:var(--soluk-2);font-weight:600;
  padding:16px 6px 7px;
}

/* ============ YouTube tarzı oynatıcı ============ */
.oynatici-kap video{
  position:absolute;inset:0;
  width:100%;height:100%;
  display:block;background:#000;
  object-fit:contain;
  object-position:center center;
}
.oynatici-kap{
  position:relative;background:#000;border-radius:12px;overflow:hidden;
  aspect-ratio:16/9;                 /* JS video oranıyla günceller */
  border:1px solid var(--kenar);cursor:pointer;
  max-height:calc(100vh - 200px);
  margin:0 auto;
  width:100%;
}
/* video kendi en-boy oranını korusun; kap gerekirse ona uyar */
.oynatici-kap.dikey{aspect-ratio:4/3}

/* büyük orta oynat */

/* 10 sn atlama animasyonu */

/* kontrol çubuğu */
.oynatici-kap.gizli .yt-kontrol{opacity:0;pointer-events:none}
.oynatici-kap.gizli .buyuk-oynat{opacity:0;pointer-events:none}



/* tam ekran: kontrol daha büyük, video ortada */
.oynatici-kap:fullscreen{
  border-radius:0;border:none;aspect-ratio:auto;
  width:100vw;height:100vh;background:#000;
}
.oynatici-kap:fullscreen video{
  width:100%;height:100%;object-fit:contain;
}
.oynatici-kap:fullscreen .yt-kontrol{padding:0 24px 14px}
.oynatici-kap:fullscreen .yt-ikon{width:48px;height:48px}
.oynatici-kap:fullscreen .yt-ikon svg{width:28px;height:28px}
.oynatici-kap:fullscreen .yt-zaman{font-size:14px}
.oynatici-kap:fullscreen .buyuk-oynat svg{width:96px;height:68px}
.oynatici-kap:fullscreen .atlama{width:100px;height:100px}

/* mobil liste (masaüstünde gizli) */

.video-alt{padding:16px 2px 0}
.video-baslik{font-size:19px;font-weight:600;margin:0 0 7px;line-height:1.35;white-space:normal}
.video-meta{
  display:flex;align-items:center;gap:12px;flex-wrap:wrap;
  font-size:12.5px;color:var(--soluk);
}

/* müfredat */
.mufredat{
  border-left:1px solid var(--kenar);
  height:calc(100vh - var(--ust-h));
  position:sticky;top:var(--ust-h);
  display:flex;flex-direction:column;background:var(--zemin);
}
.mufredat-ust{padding:16px 16px 13px;border-bottom:1px solid var(--kenar)}
.mufredat-baslik{font-size:14px;font-weight:600;margin-bottom:10px}
.mufredat-ilerleme{height:3px;background:var(--yuzey-2);border-radius:2px;overflow:hidden}
.mufredat-ilerleme i{display:block;height:100%;background:var(--marka)}
.mufredat-yuzde{font-size:11.5px;color:var(--soluk);margin-top:7px}
.mufredat-liste{overflow-y:auto;flex:1;padding:8px 0 40px}
.mufredat-liste::-webkit-scrollbar{width:8px}
.mufredat-liste::-webkit-scrollbar-thumb{background:var(--kenar);border-radius:4px}

.mb-baslik{
  padding:13px 16px 7px;font-size:11px;letter-spacing:.08em;
  text-transform:uppercase;color:var(--soluk-2);font-weight:600;
}
.mv{
  display:flex;align-items:flex-start;gap:10px;
  padding:10px 16px;cursor:pointer;
  border-left:2px solid transparent;
  transition:background .14s,border-color .14s;
}
.mv:hover{background:var(--yuzey-2)}
.mv.aktif{background:var(--vurgu-zemin);border-left-color:var(--marka)}
.mv-ikon{
  flex:0 0 16px;font-size:11px;color:var(--soluk-2);
  padding-top:2px;text-align:center;
}
.mv.aktif .mv-ikon,.mv.izlendi .mv-ikon{color:var(--marka)}
.mv-metin{min-width:0;flex:1}
.mv-ad{
  font-size:13px;line-height:1.4;
  display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;
}
.mv.aktif .mv-ad{font-weight:600}
.mv-sure{font-size:11.5px;color:var(--soluk-2);margin-top:3px}
.mv-cubuk{height:2px;background:var(--yuzey-2);margin-top:7px;border-radius:2px;overflow:hidden}
.mv-cubuk i{display:block;height:100%;background:var(--marka)}

.mufredat-ac{
  display:none;position:fixed;bottom:16px;left:50%;transform:translateX(-50%);
  background:var(--yuzey);border:1px solid var(--kenar);color:var(--metin);
  padding:10px 18px;border-radius:999px;font-size:13px;cursor:pointer;
  z-index:40;box-shadow:var(--golge);
}

.geri-sayim{
  position:absolute;inset:0;z-index:6;display:grid;place-items:center;
  text-align:center;padding:20px;
  background:rgba(10,11,8,.93);color:#e8e6d5;
  font-size:15px;cursor:pointer;
}

/* ---------- MOBİL ---------- */
@media (max-width:900px){
  .oynatici-alan{padding:8px 10px 0}
  .oynatici-kap{border-radius:8px}
  .video-baslik{font-size:15.5px;margin:10px 2px 6px}
  .video-meta{font-size:11.5px}
  .govde{padding:18px 14px 60px}
  .izgara{grid-template-columns:repeat(auto-fill,minmax(155px,1fr));gap:12px}
  .kart-metin{padding:9px 10px 11px}
  .kart-ad{font-size:13.5px}
  .kart-alt{font-size:11px}
  .devam-gorsel{width:104px;flex:0 0 104px}
  .devam-baslik{font-size:14.5px}
  .devam-ok{display:none}
  .ust{padding:0 12px;gap:9px}
  .kim{display:none}

  /* playlist mobil */
  .playlist{padding:14px 10px 40px}
  .playlist-ust{padding-bottom:11px}
  .playlist-baslik{font-size:14px}
  .pl-satir{gap:10px;padding:7px 4px}
  .pl-gorsel{flex:0 0 108px}
  .pl-no{flex:0 0 18px;padding-top:10px;font-size:10.5px}
  .pl-ad{font-size:13px}
  .pl-alt{font-size:11px;margin-top:3px}

  /* YouTube mobil kontrol */
  .yt-kontrol{padding:0 6px 4px}
  .yt-ikon{width:38px;height:38px}
  .yt-ikon svg{width:22px;height:22px}
  .yt-ikon.yt-yazi{font-size:11.5px;min-width:46px;height:28px;padding:0 7px}
  .yt-zaman{font-size:11px;margin-left:5px}
  .buyuk-oynat{width:64px;height:46px}
  .buyuk-oynat svg{width:64px;height:46px}
  .atlama{width:68px;height:68px;font-size:9.5px}
  .atlama svg{width:22px;height:22px}
  .atlama-kat{padding:0 5%}
}
@media (max-width:420px){
  .izgara{grid-template-columns:1fr 1fr}
  .giris-kart{padding:26px 20px 22px}
  .pl-gorsel{flex:0 0 96px}
}
@media (prefers-reduced-motion:reduce){
  *{animation:none!important;transition:none!important}
}

/* Plyr ince ayar — video alanı koyu, kontrol belirgin */
.plyr-kap .plyr__controls{
  background:linear-gradient(to top, rgba(0,0,0,.72), transparent);
  padding:16px 10px 6px;
  gap:2px;
}
/* Plyr'ın kendi ayar menüsünü sadeleştir */
.plyr__controls .plyr__control{padding:6px}
.plyr__controls .plyr__control svg{width:17px;height:17px}
.plyr__controls .plyr__time{padding:0 4px;font-size:12px}
.plyr__controls .plyr__progress__container{margin:0 2px}
/* mobil: kontroller daha kompakt */
@media (max-width:900px){
  .plyr-kap .plyr__controls{padding:12px 6px 4px}
  .plyr__controls .plyr__control svg{width:18px;height:18px}
  .plyr__controls .plyr__time{font-size:11px}
  .plyr__controls [data-plyr="settings"]{display:none}  /* mobilde ayar menüsü gizli */
}
.plyr-kap .plyr__progress__buffer{color:rgba(255,255,255,.3)}
.plyr-kap .plyr__controls button:hover{background:rgba(255,255,255,.18)}
.plyr-kap .plyr__menu__container{
  background:var(--yuzey);border:1px solid var(--kenar);
  border-radius:10px;box-shadow:var(--golge);
}
.plyr-kap .plyr__menu__container .plyr__control{color:var(--metin)}
.plyr-kap .plyr__menu__container .plyr__control--forward{padding-right:28px}
.plyr-kap .plyr__menu__container .plyr__control--back{border-bottom:1px solid var(--kenar)}
/* videonun etrafında siyah alan olmasın */
.plyr-kap, .plyr-kap .plyr, .plyr-kap .plyr__video-wrapper{
  background:#000;
}


/* ---- FINAL: Plyr wrapper padding-bottom tekniğini iptal et ---- */
.plyr-kap .plyr__video-wrapper{
  padding-bottom:0 !important;
  height:0 !important;
  padding-top:56.25% !important;   /* video oranı JS ile güncellenir */
  position:relative;
}
.plyr-kap .plyr__video-wrapper video{
  position:absolute !important;
  inset:0 !important;
  width:100% !important;
  height:100% !important;
  object-fit:contain !important;
  max-height:none !important;
}


/* ---- Sol üst marka ---- */
.marka{
  display:inline-flex;
  align-items:center;
  gap:.5rem;
  text-decoration:none;
  color:inherit;
  flex-shrink:0;
}
.marka-yazi{
  font-family:'Fraunces', 'Iowan Old Style', Georgia, serif;
  font-optical-sizing:auto;
  font-weight:600;
  font-size:1.6rem;
  letter-spacing:-.028em;
  line-height:1;
  color:var(--metin);
  transition:color .18s ease;
}
.marka:hover .marka-yazi{ color:var(--vurgu); }

@media (max-width:640px){
  .marka-yazi{ font-size:1.32rem; }
}


/* ---- İnce bağlantı (şifremi unuttum) ---- */
.ince-baglanti{
  display:inline-block;
  margin-top:14px;
  font-size:13px;
  color:var(--metin-soluk);
  text-decoration:none;
  border-bottom:1px solid transparent;
  transition:color .16s, border-color .16s;
}
.ince-baglanti:hover{
  color:var(--vurgu);
  border-bottom-color:var(--vurgu);
}
.sifre-baslik{
  font-family:'Fraunces',Georgia,serif;
  font-size:1.35rem;
  font-weight:600;
  letter-spacing:-.02em;
  margin:0 0 6px;
  color:var(--metin);
}
.sifre-aciklama{
  margin:0 0 20px;
  font-size:13.5px;
  line-height:1.55;
  color:var(--metin-soluk);
}
.giris-kart[hidden]{ display:none !important; }
/* Kurslar — Çınar paleti, açık + koyu tema */

/* ----- AÇIK TEMA (varsayılan) — Çınar ----- */
:root{
  --zemin:#faf7f0;
  --yuzey:#ffffff;
  --yuzey-2:#f3eee2;
  --kenar:#e6dfcd;
  --metin:#26251a; --metin-soluk:#7a7766;
  --soluk:#7a7766;
  --soluk-2:#9a9686;
  --marka:#525021;
  --marka-2:#6b6a33;
  --vurgu:#525021;
  --vurgu-metin:#faf7f0;
  --vurgu-zemin:#efefd9;
  --tehlike:#a33a2e;
  --uyari:#a8761f;
  --golge:0 18px 40px -26px rgba(82,80,33,.42);
  --r:10px;
  --ust-h:58px;
  color-scheme:light;
}

/* ----- KOYU TEMA — Çınar'ın koyu karşılığı ----- */
html[data-tema="koyu"]{
  --zemin:#14150f;
  --yuzey:#1c1d15;
  --yuzey-2:#24261b;
  --kenar:#33351f;
  --metin:#e8e6d5; --metin-soluk:#9d9b8a;
  --soluk:#9b9880;
  --soluk-2:#78765f;
  --marka:#c9c46a;
  --marka-2:#e3dfa0;
  --vurgu:#c9c46a;
  --vurgu-metin:#1b1a10;
  --vurgu-zemin:#2e2f20;
  --tehlike:#d97a6c;
  --uyari:#d5a94e;
  --golge:0 18px 40px -26px rgba(0,0,0,.85);
  color-scheme:dark;
}

*{box-sizing:border-box}
[hidden]{display:none!important}
html,body{margin:0;padding:0}
body{
  background:var(--zemin);
  color:var(--metin);
  font-family:Inter,-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,Helvetica,Arial,sans-serif;
  font-size:15px;line-height:1.5;
  -webkit-font-smoothing:antialiased;
  min-height:100vh;
  transition:background .2s,color .2s;
  font-feature-settings:"kern" 1,"liga" 0;
}
h1,h2,h3,.marka,.devam-baslik,.kart-ad,.video-baslik,.mufredat-baslik{
  font-family:Literata,Georgia,"Times New Roman",serif;
  letter-spacing:0;
}
a{color:inherit;text-decoration:none}
button{font-family:inherit}
img{display:block}

/* ---------- GİRİŞ ---------- */
.giris-ekrani{
  min-height:100vh;display:grid;place-items:center;padding:24px;
  position:relative;overflow:hidden;
}
.giris-isik{
  position:absolute;inset:-30%;pointer-events:none;
  background:
    radial-gradient(closest-side at 28% 28%, rgba(201,196,106,.32), transparent 70%),
    radial-gradient(closest-side at 74% 68%, rgba(82,80,33,.14), transparent 72%),
    repeating-linear-gradient(115deg, rgba(82,80,33,.03) 0 2px, transparent 2px 30px);
  filter:blur(4px);
  animation:kay 26s ease-in-out infinite alternate;
}
html[data-tema="koyu"] .giris-isik{
  background:
    radial-gradient(closest-side at 28% 28%, rgba(201,196,106,.13), transparent 70%),
    radial-gradient(closest-side at 74% 68%, rgba(90,110,60,.15), transparent 72%),
    repeating-linear-gradient(115deg, rgba(201,196,106,.025) 0 2px, transparent 2px 30px);
}
@keyframes kay{
  from{transform:translate3d(-2%,-1%,0) scale(1.02)}
  to{transform:translate3d(3%,2%,0) scale(1.07)}
}
.giris-kart{
  position:relative;width:100%;max-width:392px;
  background:var(--yuzey);
  border:1px solid var(--kenar);
  border-radius:16px;padding:34px 28px 28px;
  box-shadow:var(--golge);
}
.logo-kutu{
  width:44px;height:44px;margin:0 auto 14px;border-radius:12px;
  background:linear-gradient(145deg,var(--marka),var(--marka-2));
  color:var(--vurgu-metin);display:grid;place-items:center;
  box-shadow:0 2px 8px -2px rgba(82,80,33,.5);
}
.logo-kutu svg{
  width:23px;height:23px;stroke:currentColor;fill:none;
  stroke-width:1.7;stroke-linecap:round;stroke-linejoin:round;
}
.marka{font-size:17px;font-weight:600;text-align:center;margin-bottom:5px}
.giris-alt{text-align:center;color:var(--soluk);font-size:13.5px;margin:0 0 24px}
.alan{display:block;margin-bottom:14px}
.alan>span{
  display:block;font-size:11.5px;letter-spacing:.06em;
  color:var(--soluk);margin-bottom:6px;text-transform:uppercase;
}
.alan input{
  width:100%;padding:11px 13px;
  background:var(--zemin);border:1px solid var(--kenar);
  border-radius:var(--r);color:var(--metin);font-size:15px;
  transition:border-color .15s,box-shadow .15s;
}
.alan input:focus{
  outline:none;border-color:var(--vurgu);
  box-shadow:0 0 0 3px rgba(82,80,33,.12);
}
html[data-tema="koyu"] .alan input:focus{
  box-shadow:0 0 0 3px rgba(201,196,106,.18);
}
.onay{
  display:flex;align-items:center;gap:8px;
  font-size:13px;color:var(--soluk);margin:4px 0 20px;
  cursor:pointer;user-select:none;
}
.onay input{accent-color:var(--vurgu);width:15px;height:15px;margin:0}
.btn{
  border:1px solid var(--kenar);background:var(--yuzey-2);
  color:var(--metin);border-radius:var(--r);
  padding:9px 15px;font-size:14px;cursor:pointer;
  transition:background .15s,border-color .15s,opacity .15s;
}
.btn:hover{background:var(--vurgu-zemin);border-color:var(--marka-2)}
.btn:disabled{opacity:.5;cursor:default}
.btn-ana{
  width:100%;
  background:linear-gradient(145deg,var(--marka),var(--marka-2));
  border-color:transparent;color:var(--vurgu-metin);
  font-weight:650;padding:12px;font-size:15px;letter-spacing:.01em;
}
.btn-ana:hover{filter:brightness(1.07)}
.btn-sade{background:transparent}
.btn-kucuk{padding:6px 11px;font-size:12.5px}
.hata{margin-top:14px;color:var(--tehlike);font-size:13.5px;text-align:center}
.hata[hidden]{display:none}

/* ---------- ÜST ÇUBUK ---------- */
.ust{
  height:var(--ust-h);display:flex;align-items:center;gap:14px;
  padding:0 20px;border-bottom:1px solid var(--kenar);
  background:var(--zemin);
  position:sticky;top:0;z-index:20;
}
.marka-kucuk{
  display:flex;align-items:center;gap:9px;
  font-size:13px;font-weight:600;letter-spacing:.12em;
  color:var(--metin);text-transform:uppercase;
}
.marka-kucuk .mini-logo{
  width:24px;height:24px;border-radius:7px;
  background:linear-gradient(145deg,var(--marka),var(--marka-2));
  color:var(--vurgu-metin);display:grid;place-items:center;flex:0 0 24px;
}
.marka-kucuk .mini-logo svg{
  width:14px;height:14px;stroke:currentColor;fill:none;
  stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round;
}
.ust-sag{margin-left:auto;display:flex;align-items:center;gap:10px}
.kim{font-size:13.5px;color:var(--soluk)}
.baglanti{font-size:13.5px;color:var(--marka);font-weight:550}
.baglanti:hover{text-decoration:underline}
.geri{
  font-size:19px;color:var(--soluk);line-height:1;
  padding:6px 10px;border-radius:8px;
}
.geri:hover{background:var(--yuzey-2);color:var(--metin)}
.ust-orta{min-width:0;flex:1}
.ust-baslik{font-size:14.5px;font-weight:600}
.ust-alt{font-size:12px;color:var(--soluk)}
.ust-baslik,.ust-alt,.kart-ad,.devam-baslik{
  white-space:nowrap;overflow:hidden;text-overflow:ellipsis;
}

/* tema düğmesi */
.tema-btn{
  width:34px;height:34px;flex:0 0 34px;border-radius:9px;
  border:1px solid var(--kenar);background:var(--yuzey);
  color:var(--metin);display:grid;place-items:center;
  cursor:pointer;font-size:15px;line-height:1;
  transition:background .15s,border-color .15s;
}
.tema-btn:hover{background:var(--vurgu-zemin)}

/* ---------- PANEL ---------- */
.govde{max-width:1180px;margin:0 auto;padding:26px 20px 60px}
.bolum-baslik{font-size:16px;font-weight:600;margin:26px 0 14px}
.bolum-baslik:first-child{margin-top:0}

.devam{margin-bottom:30px}
.devam-etiket{
  font-size:11px;letter-spacing:.13em;color:var(--soluk);
  font-weight:600;margin-bottom:9px;text-transform:uppercase;
}
.devam-kart{
  display:flex;align-items:center;gap:16px;
  background:var(--yuzey);border:1px solid var(--kenar);
  border-radius:14px;padding:12px;
  transition:border-color .18s,transform .18s,box-shadow .18s;
}
.devam-kart:hover{
  border-color:var(--marka-2);
  transform:translateY(-1px);box-shadow:var(--golge);
}
.devam-gorsel{
  width:150px;flex:0 0 150px;aspect-ratio:16/9;
  border-radius:9px;overflow:hidden;background:var(--yuzey-2);
}
.devam-gorsel img{width:100%;height:100%;object-fit:cover}
.devam-metin{min-width:0;flex:1}
.devam-kurs{font-size:11.5px;letter-spacing:.06em;color:var(--soluk);text-transform:uppercase}
.devam-baslik{font-size:16px;font-weight:600;margin:3px 0 9px}
.devam-cubuk{height:3px;background:var(--yuzey-2);border-radius:2px;overflow:hidden;max-width:340px}
.devam-cubuk i{display:block;height:100%;background:var(--marka);border-radius:2px}
.devam-sure{font-size:12px;color:var(--soluk-2);margin-top:7px}
.devam-ok{
  width:38px;height:38px;flex:0 0 38px;display:grid;place-items:center;
  border:1px solid var(--kenar);border-radius:50%;
  color:var(--marka);font-size:13px;
}

.izgara{
  display:grid;grid-template-columns:repeat(auto-fill,minmax(236px,1fr));gap:18px;
}
.kart{
  display:block;border-radius:12px;overflow:hidden;
  background:var(--yuzey);border:1px solid var(--kenar);
  transition:transform .18s,border-color .18s,box-shadow .18s;
  position:relative;
}
.kart:hover{
  transform:translateY(-3px);
  border-color:var(--marka-2);
  box-shadow:var(--golge);
}
.kart-gorsel{
  aspect-ratio:16/9;background:var(--yuzey-2);
  position:relative;overflow:hidden;
}
.kart-gorsel img{width:100%;height:100%;object-fit:cover;transition:transform .35s}
.kart:hover .kart-gorsel img{transform:scale(1.035)}
.kart-gorsel-fallback{
  position:absolute;inset:0;display:grid;place-items:center;
  font-family:Literata,Georgia,serif;
  font-size:28px;font-weight:600;color:var(--soluk-2);
}
.kart-bitti{
  position:absolute;top:9px;right:9px;width:24px;height:24px;
  border-radius:50%;background:var(--marka);color:var(--vurgu-metin);
  display:grid;place-items:center;font-size:13px;font-weight:700;
}
.kart-metin{padding:11px 13px 13px}
.kart-ad{
  font-size:15px;font-weight:600;
  display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;
  white-space:normal;
}
.kart-alt{
  font-size:12px;color:var(--soluk);margin-top:6px;
  display:flex;align-items:center;gap:8px;
}
.kart-cubuk{height:2px;background:var(--yuzey-2);margin-top:10px;border-radius:2px;overflow:hidden}
.kart-cubuk i{display:block;height:100%;background:var(--marka)}
.bos{color:var(--soluk);font-size:14px}

/* ---------- KURS / OYNATICI ---------- */
/* tek sütun: oynatıcı + altında playlist */
.kurs-yerlesim{
  display:block;
  max-width:1080px;
  margin:0 auto;
  padding-bottom:60px;
}
.oynatici-alan{padding:18px 20px 0;min-width:0}

/* playlist (hem masaüstü hem mobil) */
.mufredat{display:none}          /* eski sağ sütun kullanılmıyor */
.playlist{
  padding:18px 20px 40px;
  max-width:1080px;
  margin:0 auto;
}
.playlist-ust{
  display:flex;align-items:center;gap:14px;
  padding:0 2px 14px;border-bottom:1px solid var(--kenar);
  margin-bottom:6px;
}
.playlist-baslik{
  font-size:15px;font-weight:600;
  font-family:Literata,Georgia,serif;
}
.playlist-sayac{font-size:12.5px;color:var(--soluk);margin-left:auto;
  font-variant-numeric:tabular-nums}
.playlist-cubuk{
  height:3px;background:var(--yuzey-2);border-radius:2px;overflow:hidden;
  margin-top:10px;
}
.playlist-cubuk i{display:block;height:100%;background:var(--marka)}

/* satır (YouTube playlist görünümü) */
.pl-satir{
  display:flex;gap:12px;align-items:flex-start;
  padding:9px 6px;border-radius:9px;cursor:pointer;
  transition:background .13s;position:relative;
}
.pl-satir:hover{background:var(--yuzey-2);backdrop-filter:none}
.pl-satir.aktif{background:var(--vurgu-zemin);backdrop-filter:none}
.pl-satir.aktif::before{
  content:'';position:absolute;left:0;top:8px;bottom:8px;width:2px;
  background:var(--marka);border-radius:2px;
}
.pl-no{
  flex:0 0 22px;text-align:center;padding-top:12px;
  font-size:11.5px;color:var(--soluk-2);
  font-variant-numeric:tabular-nums;
}
.pl-satir.aktif .pl-no{color:var(--marka);font-weight:600}
.pl-gorsel{
  position:relative;flex:0 0 132px;aspect-ratio:16/9;
  border-radius:7px;overflow:hidden;background:var(--yuzey-2);
  display:grid;place-items:center;
  backdrop-filter:none;filter:none;
}
.pl-gorsel img{width:100%;height:100%;object-fit:cover}
.pl-gorsel .pl-harf{font-family:Literata,Georgia,serif;font-size:20px;color:var(--soluk-2)}
.pl-sure-badge{
  position:absolute;right:4px;bottom:4px;
  background:rgba(0,0,0,.82);color:#fff;font-size:10px;
  padding:1px 4px;border-radius:3px;font-variant-numeric:tabular-nums;
}
.pl-metin{flex:1;min-width:0;padding-top:2px}
.pl-ad{
  font-size:14px;line-height:1.35;font-weight:500;
  display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;
}
.pl-satir.aktif .pl-ad{font-weight:600}
.pl-alt{
  font-size:11.5px;color:var(--soluk);margin-top:4px;
  display:flex;align-items:center;gap:7px;flex-wrap:wrap;
}
.pl-bitti{color:var(--marka);font-weight:600}
.pl-cubuk{height:2px;background:var(--yuzey-2);margin-top:7px;border-radius:2px;
  overflow:hidden;max-width:340px;filter:none;backdrop-filter:none}
.pl-cubuk i{display:block;height:100%;background:var(--marka)}

.pl-bolum{
  font-size:11px;letter-spacing:.08em;text-transform:uppercase;
  color:var(--soluk-2);font-weight:600;
  padding:16px 6px 7px;
}

/* ============ Plyr oynatıcı ============ */

/* video kapsayıcıyı tam doldursun, siyah bant kalmasın */
/* Plyr kapsayıcı: video alanı tam otursun, kontrol içinde kalsın */
.plyr-kap{
  position:relative;
  width:100%;
  margin:0 auto;
  background:#000;
  border-radius:12px;
  overflow:hidden;
  border:1px solid var(--kenar);
}
.plyr-kap .plyr{
  width:100%;
  min-width:0;
  border-radius:0;
  background:#000;
}
.plyr-kap .plyr__video-wrapper{
  width:100%;
  background:#000;
  padding-bottom:0 !important;
  height:auto !important;
}
.plyr-kap video{
  position:relative !important;
  display:block !important;
  width:100% !important;
  height:auto !important;
  max-height:calc(100vh - 240px);
  object-fit:contain;
  line-height:0;
}
/* Plyr'ın kendi aspect-ratio sarmalayıcısını etkisizleştir */
.plyr-kap .plyr--video .plyr__video-wrapper{
  height:auto;
}
.plyr-kap .plyr__controls{
  position:absolute !important;
  left:0;right:0;bottom:0;
  z-index:3;
}
.plyr-kap .plyr{
  width:100%;
  border-radius:12px;
  overflow:hidden;
}
.plyr-kap .plyr__video-wrapper{
  width:100%;
  background:#000;
}
.plyr-kap video{
  display:block;
  width:100%;
  height:auto;
  object-fit:contain;
}

.plyr-kap .plyr__video-wrapper{
  background:#000;
  height:100%;
}
.plyr-kap video{
  display:block;
  width:100% !important;
  height:auto !important;
  max-height:calc(100vh - 220px);
  object-fit:contain;
}
/* Plyr: kontrol çubuğu video alanının İÇİNDE kalsın */
.plyr-kap .plyr{
  min-width:0;
  height:auto;
}
.plyr-kap .plyr--video{
  overflow:hidden;      /* taşan kontrolü gizle, ama içeride tut */
  position:relative;
}
.plyr-kap .plyr__video-wrapper{
  position:relative;
  background:#000;
}
.plyr-kap .plyr__controls{
  position:absolute;left:0;right:0;bottom:0;z-index:3;
  background:linear-gradient(to top,
    rgba(0,0,0,.92) 0%,
    rgba(0,0,0,.78) 45%,
    rgba(0,0,0,.35) 75%,
    transparent 100%) !important;
  padding:26px 12px 8px !important;
  gap:2px;
}
/* ikonlar her zaman beyaz ve net */
.plyr-kap .plyr__control svg{fill:#fff !important;opacity:1 !important}
.plyr-kap .plyr__control{color:#fff !important;opacity:1 !important}
.plyr-kap .plyr__control:hover{background:rgba(255,255,255,.18) !important}
.plyr-kap .plyr__time{color:#fff !important;opacity:.95 !important;text-shadow:0 1px 2px rgba(0,0,0,.8)}
.plyr-kap .plyr__progress input[type=range]{color:#c9c46a !important}
.plyr-kap .plyr__progress__buffer{color:rgba(255,255,255,.35) !important}
/* buyuk orta oynat butonu */
.plyr-kap .plyr__control--overlaid{
  background:rgba(0,0,0,.75) !important;
  padding:22px !important;
}
.plyr-kap .plyr__control--overlaid svg{fill:#fff !important;width:26px;height:26px}

/* Plyr kendi ölçeklemesini yapar — burada video oranına zorlamıyoruz */
.plyr-kap .plyr{
  --plyr-color-main: var(--marka);
  --plyr-video-background: #000;
  --plyr-menu-background: var(--yuzey);
  --plyr-menu-color: var(--metin);
  --plyr-control-icon-size: 18px;
  --plyr-font-family: Inter, -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, sans-serif;
  --plyr-font-size-base: 14px;
  --plyr-font-size-small: 12px;
  --plyr-video-control-color: #fff;
  --plyr-video-control-color-hover: #fff;
  --plyr-video-control-background-hover: rgba(255,255,255,.15);
  width:100%;
  border-radius:12px;
}
.plyr-kap .plyr__video-wrapper{background:#000}
.plyr-kap video{
  display:block;
  width:100%;
  height:100%;
  object-fit:contain;
}

/* büyük oynat butonu */
.plyr__control--overlaid{
  background:rgba(33,33,33,.75);
  backdrop-filter:none;
  padding:22px;
}
.plyr__control--overlaid:hover{background:var(--marka)}
.plyr__control--overlaid svg{width:26px;height:26px;fill:#fff}

/* tam ekranda kenarlık yok */
.plyr-kap:fullscreen,
.plyr-kap .plyr:fullscreen{border:none;border-radius:0;max-height:none}

/* yükleniyor katmanı */
.yukleniyor{
  position:absolute;inset:0;display:grid;place-items:center;
  background:rgba(0,0,0,.35);pointer-events:none;z-index:3;
}
.yukleniyor[hidden]{display:none}
.cember{
  width:34px;height:34px;border-radius:50%;
  border:2.5px solid rgba(255,255,255,.18);
  border-top-color:#c9c46a;
  animation:don 800ms linear infinite;
}
@keyframes don{to{transform:rotate(360deg)}}
.oynatici-hata{
  position:absolute;inset:0;display:grid;place-items:center;
  background:rgba(8,9,6,.94);color:#e58b7c;
  font-size:14px;padding:20px;text-align:center;z-index:4;
}
.oynatici-hata[hidden]{display:none}

/* geri sayım */
.geri-sayim{
  position:absolute;inset:0;z-index:6;display:grid;place-items:center;
  text-align:center;padding:20px;
  background:rgba(10,11,8,.93);color:#e8e6d5;
  font-size:15px;cursor:pointer;
}

/* playlist (hem masaüstü hem mobil) */
.mufredat{display:none}          /* eski sağ sütun kullanılmıyor */
.playlist{
  padding:18px 20px 40px;
  max-width:1080px;
  margin:0 auto;
}
.playlist-ust{
  display:flex;align-items:center;gap:14px;
  padding:0 2px 14px;border-bottom:1px solid var(--kenar);
  margin-bottom:6px;
}
.playlist-baslik{
  font-size:15px;font-weight:600;
  font-family:Literata,Georgia,serif;
}
.playlist-sayac{font-size:12.5px;color:var(--soluk);margin-left:auto;
  font-variant-numeric:tabular-nums}
.playlist-cubuk{
  height:3px;background:var(--yuzey-2);border-radius:2px;overflow:hidden;
  margin-top:10px;
}
.playlist-cubuk i{display:block;height:100%;background:var(--marka)}

/* satır (YouTube playlist görünümü) */
.pl-satir{
  display:flex;gap:12px;align-items:flex-start;
  padding:9px 6px;border-radius:9px;cursor:pointer;
  transition:background .13s;position:relative;
}
.pl-satir:hover{background:var(--yuzey-2);backdrop-filter:none}
.pl-satir.aktif{background:var(--vurgu-zemin);backdrop-filter:none}
.pl-satir.aktif::before{
  content:'';position:absolute;left:0;top:8px;bottom:8px;width:2px;
  background:var(--marka);border-radius:2px;
}
.pl-no{
  flex:0 0 22px;text-align:center;padding-top:12px;
  font-size:11.5px;color:var(--soluk-2);
  font-variant-numeric:tabular-nums;
}
.pl-satir.aktif .pl-no{color:var(--marka);font-weight:600}
.pl-gorsel{
  position:relative;flex:0 0 132px;aspect-ratio:16/9;
  border-radius:7px;overflow:hidden;background:var(--yuzey-2);
  display:grid;place-items:center;
  backdrop-filter:none;filter:none;
}
.pl-gorsel img{width:100%;height:100%;object-fit:cover}
.pl-gorsel .pl-harf{font-family:Literata,Georgia,serif;font-size:20px;color:var(--soluk-2)}
.pl-sure-badge{
  position:absolute;right:4px;bottom:4px;
  background:rgba(0,0,0,.82);color:#fff;font-size:10px;
  padding:1px 4px;border-radius:3px;font-variant-numeric:tabular-nums;
}
.pl-metin{flex:1;min-width:0;padding-top:2px}
.pl-ad{
  font-size:14px;line-height:1.35;font-weight:500;
  display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;
}
.pl-satir.aktif .pl-ad{font-weight:600}
.pl-alt{
  font-size:11.5px;color:var(--soluk);margin-top:4px;
  display:flex;align-items:center;gap:7px;flex-wrap:wrap;
}
.pl-bitti{color:var(--marka);font-weight:600}
.pl-cubuk{height:2px;background:var(--yuzey-2);margin-top:7px;border-radius:2px;
  overflow:hidden;max-width:340px;filter:none;backdrop-filter:none}
.pl-cubuk i{display:block;height:100%;background:var(--marka)}

.pl-bolum{
  font-size:11px;letter-spacing:.08em;text-transform:uppercase;
  color:var(--soluk-2);font-weight:600;
  padding:16px 6px 7px;
}

/* ============ YouTube tarzı oynatıcı ============ */
.oynatici-kap video{
  position:absolute;inset:0;
  width:100%;height:100%;
  display:block;background:#000;
  object-fit:contain;
  object-position:center center;
}
.oynatici-kap{
  position:relative;background:#000;border-radius:12px;overflow:hidden;
  aspect-ratio:16/9;                 /* JS video oranıyla günceller */
  border:1px solid var(--kenar);cursor:pointer;
  max-height:calc(100vh - 200px);
  margin:0 auto;
  width:100%;
}
/* video kendi en-boy oranını korusun; kap gerekirse ona uyar */
.oynatici-kap.dikey{aspect-ratio:4/3}

/* büyük orta oynat */

/* 10 sn atlama animasyonu */

/* kontrol çubuğu */
.oynatici-kap.gizli .yt-kontrol{opacity:0;pointer-events:none}
.oynatici-kap.gizli .buyuk-oynat{opacity:0;pointer-events:none}



/* tam ekran: kontrol daha büyük, video ortada */
.oynatici-kap:fullscreen{
  border-radius:0;border:none;aspect-ratio:auto;
  width:100vw;height:100vh;background:#000;
}
.oynatici-kap:fullscreen video{
  width:100%;height:100%;object-fit:contain;
}
.oynatici-kap:fullscreen .yt-kontrol{padding:0 24px 14px}
.oynatici-kap:fullscreen .yt-ikon{width:48px;height:48px}
.oynatici-kap:fullscreen .yt-ikon svg{width:28px;height:28px}
.oynatici-kap:fullscreen .yt-zaman{font-size:14px}
.oynatici-kap:fullscreen .buyuk-oynat svg{width:96px;height:68px}
.oynatici-kap:fullscreen .atlama{width:100px;height:100px}

/* mobil liste (masaüstünde gizli) */

.video-alt{padding:16px 2px 0}
.video-baslik{font-size:19px;font-weight:600;margin:0 0 7px;line-height:1.35;white-space:normal}
.video-meta{
  display:flex;align-items:center;gap:12px;flex-wrap:wrap;
  font-size:12.5px;color:var(--soluk);
}

/* müfredat */
.mufredat{
  border-left:1px solid var(--kenar);
  height:calc(100vh - var(--ust-h));
  position:sticky;top:var(--ust-h);
  display:flex;flex-direction:column;background:var(--zemin);
}
.mufredat-ust{padding:16px 16px 13px;border-bottom:1px solid var(--kenar)}
.mufredat-baslik{font-size:14px;font-weight:600;margin-bottom:10px}
.mufredat-ilerleme{height:3px;background:var(--yuzey-2);border-radius:2px;overflow:hidden}
.mufredat-ilerleme i{display:block;height:100%;background:var(--marka)}
.mufredat-yuzde{font-size:11.5px;color:var(--soluk);margin-top:7px}
.mufredat-liste{overflow-y:auto;flex:1;padding:8px 0 40px}
.mufredat-liste::-webkit-scrollbar{width:8px}
.mufredat-liste::-webkit-scrollbar-thumb{background:var(--kenar);border-radius:4px}

.mb-baslik{
  padding:13px 16px 7px;font-size:11px;letter-spacing:.08em;
  text-transform:uppercase;color:var(--soluk-2);font-weight:600;
}
.mv{
  display:flex;align-items:flex-start;gap:10px;
  padding:10px 16px;cursor:pointer;
  border-left:2px solid transparent;
  transition:background .14s,border-color .14s;
}
.mv:hover{background:var(--yuzey-2)}
.mv.aktif{background:var(--vurgu-zemin);border-left-color:var(--marka)}
.mv-ikon{
  flex:0 0 16px;font-size:11px;color:var(--soluk-2);
  padding-top:2px;text-align:center;
}
.mv.aktif .mv-ikon,.mv.izlendi .mv-ikon{color:var(--marka)}
.mv-metin{min-width:0;flex:1}
.mv-ad{
  font-size:13px;line-height:1.4;
  display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;
}
.mv.aktif .mv-ad{font-weight:600}
.mv-sure{font-size:11.5px;color:var(--soluk-2);margin-top:3px}
.mv-cubuk{height:2px;background:var(--yuzey-2);margin-top:7px;border-radius:2px;overflow:hidden}
.mv-cubuk i{display:block;height:100%;background:var(--marka)}

.mufredat-ac{
  display:none;position:fixed;bottom:16px;left:50%;transform:translateX(-50%);
  background:var(--yuzey);border:1px solid var(--kenar);color:var(--metin);
  padding:10px 18px;border-radius:999px;font-size:13px;cursor:pointer;
  z-index:40;box-shadow:var(--golge);
}

.geri-sayim{
  position:absolute;inset:0;z-index:6;display:grid;place-items:center;
  text-align:center;padding:20px;
  background:rgba(10,11,8,.93);color:#e8e6d5;
  font-size:15px;cursor:pointer;
}

/* ---------- MOBİL ---------- */
@media (max-width:900px){
  .oynatici-alan{padding:8px 10px 0}
  .oynatici-kap{border-radius:8px}
  .video-baslik{font-size:15.5px;margin:10px 2px 6px}
  .video-meta{font-size:11.5px}
  .govde{padding:18px 14px 60px}
  .izgara{grid-template-columns:repeat(auto-fill,minmax(155px,1fr));gap:12px}
  .kart-metin{padding:9px 10px 11px}
  .kart-ad{font-size:13.5px}
  .kart-alt{font-size:11px}
  .devam-gorsel{width:104px;flex:0 0 104px}
  .devam-baslik{font-size:14.5px}
  .devam-ok{display:none}
  .ust{padding:0 12px;gap:9px}
  .kim{display:none}

  /* playlist mobil */
  .playlist{padding:14px 10px 40px}
  .playlist-ust{padding-bottom:11px}
  .playlist-baslik{font-size:14px}
  .pl-satir{gap:10px;padding:7px 4px}
  .pl-gorsel{flex:0 0 108px}
  .pl-no{flex:0 0 18px;padding-top:10px;font-size:10.5px}
  .pl-ad{font-size:13px}
  .pl-alt{font-size:11px;margin-top:3px}

  /* YouTube mobil kontrol */
  .yt-kontrol{padding:0 6px 4px}
  .yt-ikon{width:38px;height:38px}
  .yt-ikon svg{width:22px;height:22px}
  .yt-ikon.yt-yazi{font-size:11.5px;min-width:46px;height:28px;padding:0 7px}
  .yt-zaman{font-size:11px;margin-left:5px}
  .buyuk-oynat{width:64px;height:46px}
  .buyuk-oynat svg{width:64px;height:46px}
  .atlama{width:68px;height:68px;font-size:9.5px}
  .atlama svg{width:22px;height:22px}
  .atlama-kat{padding:0 5%}
}
@media (max-width:420px){
  .izgara{grid-template-columns:1fr 1fr}
  .giris-kart{padding:26px 20px 22px}
  .pl-gorsel{flex:0 0 96px}
}
@media (prefers-reduced-motion:reduce){
  *{animation:none!important;transition:none!important}
}

/* Plyr ince ayar — video alanı koyu, kontrol belirgin */
.plyr-kap .plyr__controls{
  background:linear-gradient(to top, rgba(0,0,0,.72), transparent);
  padding:16px 10px 6px;
  gap:2px;
}
/* Plyr'ın kendi ayar menüsünü sadeleştir */
.plyr__controls .plyr__control{padding:6px}
.plyr__controls .plyr__control svg{width:17px;height:17px}
.plyr__controls .plyr__time{padding:0 4px;font-size:12px}
.plyr__controls .plyr__progress__container{margin:0 2px}
/* mobil: kontroller daha kompakt */
@media (max-width:900px){
  .plyr-kap .plyr__controls{padding:12px 6px 4px}
  .plyr__controls .plyr__control svg{width:18px;height:18px}
  .plyr__controls .plyr__time{font-size:11px}
  .plyr__controls [data-plyr="settings"]{display:none}  /* mobilde ayar menüsü gizli */
}
.plyr-kap .plyr__progress__buffer{color:rgba(255,255,255,.3)}
.plyr-kap .plyr__controls button:hover{background:rgba(255,255,255,.18)}
.plyr-kap .plyr__menu__container{
  background:var(--yuzey);border:1px solid var(--kenar);
  border-radius:10px;box-shadow:var(--golge);
}
.plyr-kap .plyr__menu__container .plyr__control{color:var(--metin)}
.plyr-kap .plyr__menu__container .plyr__control--forward{padding-right:28px}
.plyr-kap .plyr__menu__container .plyr__control--back{border-bottom:1px solid var(--kenar)}
/* videonun etrafında siyah alan olmasın */
.plyr-kap, .plyr-kap .plyr, .plyr-kap .plyr__video-wrapper{
  background:#000;
}


/* ---- FINAL: Plyr wrapper padding-bottom tekniğini iptal et ---- */
.plyr-kap .plyr__video-wrapper{
  padding-bottom:0 !important;
  height:0 !important;
  padding-top:56.25% !important;   /* video oranı JS ile güncellenir */
  position:relative;
}
.plyr-kap .plyr__video-wrapper video{
  position:absolute !important;
  inset:0 !important;
  width:100% !important;
  height:100% !important;
  object-fit:contain !important;
  max-height:none !important;
}


/* ---- Sol üst marka ---- */
.marka{
  display:inline-flex;
  align-items:center;
  gap:.5rem;
  text-decoration:none;
  color:inherit;
  flex-shrink:0;
}
.marka-yazi{
  font-family:'Fraunces', 'Iowan Old Style', Georgia, serif;
  font-optical-sizing:auto;
  font-weight:600;
  font-size:1.6rem;
  letter-spacing:-.028em;
  line-height:1;
  color:var(--metin);
  transition:color .18s ease;
}
.marka:hover .marka-yazi{ color:var(--vurgu); }

@media (max-width:640px){
  .marka-yazi{ font-size:1.32rem; }
}


/* ---- Şifre sıfırlama ekranları ---- */
#sifreEkran,
#yeniSifreEkran{
  gap:0;
}
#sifreEkran .alan,
#yeniSifreEkran .alan{
  margin-bottom:14px;
}
#sifreEkran button[type=submit],
#yeniSifreEkran button[type=submit]{
  width:100%;
  margin-top:6px;
}
#sifreEkran .ince-baglanti,
#yeniSifreEkran .ince-baglanti{
  display:block;
  width:100%;
  text-align:center;
  margin-top:16px;
}
#sifreMesaj,
#yeniSifreMesaj{
  width:100%;
  margin-top:14px;
  font-size:13px;
  line-height:1.5;
}
#sifreMesaj.tamam,
#yeniSifreMesaj.tamam{
  color:#3f7a3f;
}
html[data-tema="koyu"] #sifreMesaj.tamam,
html[data-tema="koyu"] #yeniSifreMesaj.tamam{
  color:#8fca8f;
}
#sifreMesaj.hata,
#yeniSifreMesaj.hata{
  color:#b4453c;
}
html[data-tema="koyu"] #sifreMesaj.hata,
html[data-tema="koyu"] #yeniSifreMesaj.hata{
  color:#e08b83;
}
/* iki sütun şifre alanı hizası */
#yeniSifreEkran{
  padding-top:34px;
}


/* ---- İlk giriş şifre belirleme ---- */
#sifreDegistirEkran .alan{
  margin-bottom:14px;
}
#sifreDegistirEkran button[type=submit]{
  width:100%;
  margin-top:8px;
}
.sifre-kural{
  margin:-4px 0 16px;
  font-size:12px;
  line-height:1.5;
  color:var(--metin-soluk);
}
#sifreDegistirMesaj{
  width:100%;
  margin-top:14px;
  font-size:13px;
}
#sifreDegistirMesaj.tamam{ color:#3f7a3f; }
html[data-tema="koyu"] #sifreDegistirMesaj.tamam{ color:#8fca8f; }
#sifreDegistirMesaj.hata{ color:#b4453c; }
html[data-tema="koyu"] #sifreDegistirMesaj.hata{ color:#e08b83; }
#sifreDegistirEkran{
  padding-top:34px;
}
