/* 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;
  --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;
  --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 ---------- */
.kurs-yerlesim{
  display:grid;grid-template-columns:minmax(0,1fr) 336px;gap:0;
  max-width:1500px;margin:0 auto;align-items:start;
}
.oynatici-alan{padding:18px;min-width:0}
.oynatici-kap{
  position:relative;background:#000;border-radius:12px;overflow:hidden;
  aspect-ratio:16/9;border:1px solid var(--kenar);
}
.oynatici-kap video{width:100%;height:100%;display:block;background:#000}
.yukleniyor{
  position:absolute;inset:0;display:grid;place-items:center;
  background:rgba(0,0,0,.32);pointer-events:none;
}
.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;
}
.oynatici-hata[hidden]{display:none}

/* kontrol çubuğu — video üzerinde olduğu için her iki temada da koyu cam */
.kontrol{
  position:absolute;left:0;right:0;bottom:0;
  padding:26px 12px 9px;
  background:linear-gradient(to top,
    rgba(18,19,14,.92),
    rgba(18,19,14,.55) 55%,
    transparent);
  backdrop-filter:blur(2px);
  transition:opacity .22s;
}
.oynatici-kap.gizli .kontrol{opacity:0;pointer-events:none}
.cubuk-alan{position:relative;padding:6px 0 8px}
#ara{
  -webkit-appearance:none;appearance:none;width:100%;height:3px;
  background:#5c5f4a;border-radius:2px;outline:none;cursor:pointer;
  margin:0;display:block;
}
#ara::-webkit-slider-thumb{
  -webkit-appearance:none;width:12px;height:12px;border-radius:50%;
  background:#c9c46a;cursor:pointer;border:none;
  box-shadow:0 0 0 4px rgba(201,196,106,.22);
}
#ara::-moz-range-thumb{
  width:12px;height:12px;border-radius:50%;background:#c9c46a;border:none;cursor:pointer;
}
.yukleme-cizgi{
  position:absolute;left:0;right:0;top:6px;height:3px;
  border-radius:2px;overflow:hidden;pointer-events:none;
}
.yukleme-cizgi i{display:block;height:100%;width:0;background:rgba(255,255,255,.24)}
.dugme-satir{display:flex;align-items:center;gap:4px}
.ikon{
  background:none;border:none;color:#e8e6d5;
  padding:6px 7px;border-radius:7px;cursor:pointer;
  line-height:0;transition:background .15s,color .15s;
  display:grid;place-items:center;
}
.ikon:hover{background:rgba(232,230,213,.14);color:#fff}
.svg-ikon{width:18px;height:18px;fill:currentColor;display:block}
#geriBtn .svg-ikon,#ileriBtn .svg-ikon{width:19px;height:19px}
#oynatBtn .svg-ikon{width:20px;height:20px}
.ikon.yazi{
  font-size:12px;font-variant-numeric:tabular-nums;
  min-width:36px;padding:7px 8px;letter-spacing:.01em;
  line-height:1;color:#d8d6c6;
}
.zaman{
  font-size:12.5px;color:#c2c0b2;margin-left:6px;
  font-variant-numeric:tabular-nums;white-space:nowrap;
}
.bosluk{flex:1}

.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){
  .kurs-yerlesim{grid-template-columns:1fr}
  .mufredat{
    position:fixed;left:0;right:0;bottom:0;top:auto;
    height:auto;max-height:72vh;
    border-left:none;border-top:1px solid var(--kenar);
    border-radius:16px 16px 0 0;
    transform:translateY(100%);
    transition:transform .26s cubic-bezier(.4,0,.2,1);
    z-index:35;box-shadow:0 -18px 40px -20px rgba(0,0,0,.35);
  }
  .mufredat.acik{transform:translateY(0)}
  .mufredat-ac{display:block}
  .oynatici-alan{padding:10px 10px 0}
  .oynatici-kap{border-radius:9px}
  .video-baslik{font-size:16px}
  .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}
  .kontrol{padding:22px 8px 6px}
  .ikon{padding:9px 7px}
  .zaman{font-size:11.5px}
}
@media (max-width:420px){
  .izgara{grid-template-columns:1fr 1fr}
  .video-baslik{font-size:15px}
  .giris-kart{padding:26px 20px 22px}
}
@media (prefers-reduced-motion:reduce){
  *{animation:none!important;transition:none!important}
}
