/* Metastaz Education — Metastaz Tasarım Sistemi 1.0'ın (/mz/metastaz.css) üstüne YALNIZ uygulamaya özgü parçalar.
   Ortak bileşenler (başlık, sekme çubuğu, toast, düğme, alan, liste, karşılama) kitten gelir; burada ezilmez. */

html { -webkit-text-size-adjust: 100%; }
body.mz { min-height: 100vh; min-height: 100dvh; }
[hidden] { display: none !important; }
button { font: inherit; color: inherit; }
a { color: var(--mz-link); }

/* ---------------------------------------------------------------- iskelet: alt sekme çubuğu (başparmak hizası) */
.mz-tab > svg { fill: currentColor; }   /* Edu simgeleri dolgulu (Phosphor bold) */

/* ---------------------------------------------------------------- kartlar */
.ed-card { background: var(--mz-surface); border-radius: var(--mz-radius-card); padding: var(--mz-pad); margin: 0 0 16px; }
.ed-card > .mz-title3 { margin-bottom: 4px; }
.ed-stack > * + * { margin-top: 12px; }
.ed-row2 { display: grid; grid-template-columns: 1fr 1fr; gap: 12px; }
.ed-row3 { display: grid; grid-template-columns: 1fr 1fr 1fr; gap: 10px; }
.ed-stat { background: var(--mz-surface); border-radius: var(--mz-r-card); padding: 14px var(--mz-pad); }
.ed-stat b { display: block; font-size: 22px; line-height: 28px; font-weight: 730; letter-spacing: -.012em; font-variant-numeric: tabular-nums; }
.ed-stat span { font-size: 13px; line-height: 18px; color: var(--mz-muted); }
.ed-section { margin: 28px 0 8px; }
.ed-section-head { display: flex; align-items: baseline; justify-content: space-between; margin: 28px 4px 8px; }
.ed-section-head .mz-title3 { margin: 0; }

/* sayaç (sınava kalan gün) */
.ed-count { display: flex; align-items: baseline; gap: 8px; }
.ed-count b { font-size: 34px; line-height: 41px; font-weight: 750; letter-spacing: -.02em; font-variant-numeric: tabular-nums; }

/* ---------------------------------------------------------------- plan blokları */
.ed-plan { list-style: none; margin: 0; padding: 0; background: var(--mz-surface); border-radius: var(--mz-radius-card); overflow: hidden; }
.ed-plan li + li { border-top: .5px solid var(--mz-hairline); margin-left: 60px; }
.ed-plan li + li > a { margin-left: -60px; }
.ed-plan a { display: flex; align-items: center; gap: 12px; min-height: 64px; padding: 10px var(--mz-pad); color: inherit; text-decoration: none; }
.ed-plan a:active { background: var(--mz-field); }
.ed-plan .ed-dk { margin-left: auto; color: var(--mz-muted); font-variant-numeric: tabular-nums; white-space: nowrap; font-size: 15px; }
.ed-check { flex: none; width: 32px; height: 32px; border-radius: 50%; display: grid; place-items: center; }
.ed-check svg { width: 18px; height: 18px; }
.ed-bar { height: 6px; border-radius: 3px; background: var(--mz-field); overflow: hidden; }
.ed-bar > i { display: block; height: 100%; width: 0; background: var(--mz-primary); border-radius: 3px; transition: width var(--mz-dur) var(--mz-ease); }
.ed-bar--ok > i { background: var(--mz-ok); }

/* ---------------------------------------------------------------- konu haritası */
.ed-konu { display: flex; align-items: center; gap: 12px; min-height: 60px; padding: 8px var(--mz-pad); color: inherit; text-decoration: none; width: 100%; background: none; border: 0; text-align: left; }
.ed-konu + .ed-konu { border-top: .5px solid var(--mz-hairline); }
.ed-konu:active { background: var(--mz-field); }
.ed-konu .ed-konu-main { flex: 1; min-width: 0; }
.ed-konu .ed-konu-ad { font-weight: 500; display: block; }
.ed-konu .ed-konu-alt { display: block; font-size: 13px; line-height: 18px; color: var(--mz-muted); letter-spacing: 0; }
.ed-halka { flex: none; width: 36px; height: 36px; }
.ed-halka circle { fill: none; stroke-width: 4; }
.ed-halka .iz { stroke: var(--mz-field); }
.ed-halka .dolu { stroke: var(--mz-primary); stroke-linecap: round; transform: rotate(-90deg); transform-origin: 50% 50%; }
.ed-halka .dolu.ok { stroke: var(--mz-ok); }
.ed-halka text { font: 640 11px var(--mz-font); fill: var(--mz-text); text-anchor: middle; dominant-baseline: central; }
.ed-etiket { display: inline-block; padding: 2px 8px; border-radius: 10px; font-size: 12px; line-height: 16px; font-weight: 640; letter-spacing: 0; background: var(--mz-field); color: var(--mz-muted); }
.ed-etiket--mavi { color: var(--mz-link); }
.ed-etiket--ok { color: var(--mz-t-green); }
@media (prefers-color-scheme: dark) { :root:not([data-theme="light"]) .ed-etiket--ok { color: var(--mz-ok); } }

/* ---------------------------------------------------------------- ders ve soru */
.ed-ders h2 { font-size: 22px; line-height: 28px; font-weight: 730; letter-spacing: -.012em; margin: 8px 0 12px; }
.ed-ders p { margin: 0 0 12px; color: var(--mz-body); }
.ed-ders p b, .ed-soru b { color: var(--mz-text); font-weight: 640; }
.ed-tahta { background: var(--mz-field); border-radius: 14px; padding: 12px 14px; margin: 0 0 12px; font-variant-numeric: tabular-nums; }
.ed-tahta div + div { margin-top: 6px; }
.ed-ornek { border-left: 3px solid var(--mz-primary); padding: 2px 0 2px 14px; margin: 16px 0; }
.ed-ornek > .mz-label { display: block; margin-bottom: 4px; font-weight: 640; }
.ed-adimlar { margin: 8px 0 0; padding-left: 22px; color: var(--mz-body); }
.ed-adimlar li { margin: 0 0 8px; padding-left: 2px; }
.ed-adimlar li::marker { color: var(--mz-muted); font-variant-numeric: tabular-nums; }
.ed-ilerleme { display: flex; gap: 4px; margin: 4px 0 20px; }
.ed-ilerleme i { flex: 1; height: 4px; border-radius: 2px; background: var(--mz-field); }
.ed-ilerleme i.dolu { background: var(--mz-primary); }

.ed-soru { font-size: 17px; line-height: 25px; margin: 0 0 16px; }
.ed-soru-ust { display: flex; align-items: center; justify-content: space-between; gap: 8px; margin: 0 0 10px; }
.ed-secenekler { display: flex; flex-direction: column; gap: 10px; margin: 0; padding: 0; list-style: none; }
.ed-secenek {
  display: flex; align-items: center; gap: 12px; width: 100%; min-height: 52px; padding: 10px 14px;
  border: 1.5px solid transparent; border-radius: var(--mz-radius-btn); background: var(--mz-surface);
  text-align: left; cursor: pointer; font-variant-numeric: tabular-nums; line-height: 22px;
}
.ed-secenek:active { background: var(--mz-field); }
.ed-secenek .harf { flex: none; width: 28px; height: 28px; border-radius: 50%; display: grid; place-items: center; background: var(--mz-field); font-weight: 640; font-size: 15px; color: var(--mz-muted); }
.ed-secenek.secili { border-color: var(--mz-primary); }
.ed-secenek.dogru { border-color: var(--mz-ok); }
.ed-secenek.dogru .harf { background: var(--mz-ok); color: #fff; }
.ed-secenek.yanlis { border-color: var(--mz-danger); }
.ed-secenek.yanlis .harf { background: var(--mz-danger); color: #fff; }
.ed-secenek:disabled { cursor: default; color: var(--mz-text); }
.ed-geri-bildirim { margin: 16px 0 0; padding: 14px var(--mz-pad); border-radius: var(--mz-radius-card); background: var(--mz-surface); }
.ed-geri-bildirim .mz-emph { display: flex; align-items: center; gap: 8px; margin-bottom: 6px; }
.ed-geri-bildirim .mz-emph svg { width: 22px; height: 22px; }
.ok-renk { color: var(--mz-t-green); } .hata-renk { color: var(--mz-t-red); }
@media (prefers-color-scheme: dark) { :root:not([data-theme="light"]) .ok-renk { color: var(--mz-ok); } :root:not([data-theme="light"]) .hata-renk { color: var(--mz-danger); } }

/* matematik: satır içi kesir, üs, kök */
.fr { display: inline-flex; flex-direction: column; vertical-align: middle; text-align: center; font-size: .92em; line-height: 1.15; margin: 0 2px; }
.fr > span:first-child { border-bottom: 1.2px solid currentColor; padding: 0 3px 1px; }
.fr > span:last-child { padding: 1px 3px 0; }
.kok { white-space: nowrap; }
.kok > span { border-top: 1.2px solid currentColor; padding: 0 2px; }
sup, sub { font-size: .72em; line-height: 0; }
.mat { font-variant-numeric: tabular-nums; white-space: nowrap; }
.mat.mat-kir { white-space: normal; }   /* sığmayan işlem dizisi: uygulama.js matDuzelt yalnız "=" sonrasında kırılır */

/* sayaç (süreli) */
.ed-sayac { font-variant-numeric: tabular-nums; font-weight: 640; }
.ed-sayac.az { color: var(--mz-danger); }

/* alt eylem çubuğu (ders/soru ekranında ana düğme başparmakta) */
.ed-alt {
  position: sticky; bottom: 0; z-index: 5; margin: 20px calc(-1 * var(--mz-edge)) 0;
  padding: 12px var(--mz-edge) calc(12px + env(safe-area-inset-bottom)); background: var(--mz-bg);
}
.ed-alt .mz-btn + .mz-btn { margin-top: 10px; }

/* ---------------------------------------------------------------- formlar */
.ed-field { display: block; margin: 0 0 14px; }
.ed-field > span { display: block; margin: 0 var(--mz-pad) var(--mz-s2); font-size: 15px; line-height: 20px; font-weight: 640; letter-spacing: -.008em; color: var(--mz-muted); }
/* segment: kitteki .mz-seg ile aynı (44 dokunma, görünen 40) */
.ed-seg { display: flex; padding: 0; border-radius: 10px; background: var(--mz-field); }
.ed-seg button { flex: 1; min-height: 44px; padding: 0 8px; border: 2px solid transparent; border-radius: 10px; background: none; background-clip: padding-box; font: 500 15px/20px var(--mz-font); letter-spacing: .002em; cursor: pointer; color: var(--mz-text); }
.ed-seg button[aria-pressed="true"] { background-color: var(--mz-seg-on); font-weight: 640; }
.ed-net { display: grid; grid-template-columns: 1fr 64px 64px 56px; gap: 8px; align-items: center; min-height: 52px; padding: 4px var(--mz-pad); }
.ed-net + .ed-net { border-top: .5px solid var(--mz-hairline); }
.ed-net .mz-input { height: 44px; border-radius: var(--mz-r-m); text-align: center; padding: 0 6px; font-variant-numeric: tabular-nums; background: var(--mz-field); box-shadow: none; }
.ed-net .mz-input:focus { box-shadow: inset 0 0 0 2px var(--mz-primary); }
.ed-net output { text-align: right; font-variant-numeric: tabular-nums; font-weight: 640; }
.ed-net-bas { font-size: 13px; color: var(--mz-muted); min-height: 32px; }
.ed-hata { color: var(--mz-danger); font-size: 15px; margin: 8px 4px 0; }

/* ---------------------------------------------------------------- grafik */
.ed-grafik { width: 100%; height: auto; display: block; }
.ed-grafik .eksen { stroke: var(--mz-hairline); stroke-width: 1; }
.ed-grafik .cizgi { fill: none; stroke: var(--mz-primary); stroke-width: 2.4; stroke-linejoin: round; stroke-linecap: round; }
.ed-grafik .nokta { fill: var(--mz-surface); stroke: var(--mz-primary); stroke-width: 2.4; }
.ed-grafik .hedef { stroke: var(--mz-ok); stroke-width: 1.5; stroke-dasharray: 5 4; }
.ed-grafik text { font: 480 11px var(--mz-font); fill: var(--mz-muted); letter-spacing: 0; }
.ed-grafik .deger { fill: var(--mz-text); font-weight: 640; }


.ed-yazi p, .ed-yazi li { color: var(--mz-body); }
.ed-yazi h2 { font-size: 20px; line-height: 25px; font-weight: 730; margin: 28px 0 8px; }
.ed-yazi ul { padding-left: 20px; }

/* boş durum: kitteki .mz-empty ölçüsü (başlık 20/730, metin 15 muted) */
.ed-bos { text-align: center; padding: 32px var(--mz-pad); color: var(--mz-muted); font-size: 15px; line-height: 20px; letter-spacing: .002em; }
.ed-bos b { display: block; color: var(--mz-text); font-size: 20px; line-height: 25px; font-weight: 730; letter-spacing: -.012em; margin-bottom: 4px; }

@media (prefers-reduced-motion: reduce) { .ed-bar > i { transition: none; } }

/* Simgeler Phosphor "bold" dolgu yolları (kitin .mz-ico'su çizgi simge içindi). */
.mz-ico, .ed-i { fill: currentColor; stroke: none; }
.ed-i { width: 22px; height: 22px; flex: none; }
.ed-gorunur { opacity: 1 !important; }
/* Uzun çubuk başlığı iki satıra iner (kit .mz-nav-title tek satır + "…" idi: "Madde, element, atom: ilk adım" 360 px'te kesiliyordu). */
.mz-nav-title.ed-nav-iki { white-space: normal; overflow: visible; text-overflow: clip; font-size: 15px; line-height: 18px; text-wrap: balance; overflow-wrap: anywhere; }
.ed-blok { display: block; margin-top: 2px; }
.ed-sag { text-align: right; }
.ed-mavi { color: var(--mz-link); font-weight: 480; }
.ed-kisa { width: 108px; flex: none; height: 44px; text-align: right; border-radius: var(--mz-r-m); background: var(--mz-field); box-shadow: none; padding: 0 12px; }
.ed-kisa:focus { box-shadow: inset 0 0 0 2px var(--mz-primary); }
.ed-bilmiyorum { margin-top: 12px; }
.ed-net.hatali .mz-input { box-shadow: 0 0 0 2px var(--mz-danger); }
details.ed-card > summary { cursor: pointer; list-style: none; min-height: 28px; }
details.ed-card > summary::-webkit-details-marker { display: none; }
.mz-row .mz-chev, .ed-konu .mz-chev { width: 14px; height: 14px; color: var(--mz-off); }
.ed-card .mz-title2 { margin: 2px 0 6px; }
.ed-bar { display: block; margin-top: 6px; max-width: 180px; }
.mz-row .mz-chev, .ed-konu .mz-chev { fill: currentColor; stroke: none; }
/* Ders ekranında eylemler içeriğin sonunda (yapışkan çubuk 720p'de seçenekleri örtüyordu, açılış sınavı 2026-10-01). */
.ed-alt--akis { position: static; margin-top: 24px; }
.ed-orta { display: flex; margin: 8px auto 0; }
a.mz-textbtn, a.mz-btn, a.mz-pill, a.mz-row { text-decoration: none; }
.ed-kisa[type="time"] { width: 128px; }

/* ================================================================ kontrol döngüsü, tablet, görünüm (2026-10-01) */

/* Başla kartı: tek dokunuşla sıradaki 5-10 dk birim (başparmak + göz için en belirgin öğe). */
.ed-basla {
  position: relative; display: block; padding: 18px 64px 18px 20px; border-radius: var(--mz-radius-card);
  background: var(--mz-primary-fill); color: #fff; text-decoration: none; margin: 0 0 4px;
}
.ed-basla:active { filter: brightness(.92); }
.ed-basla-ust { display: block; font-size: 15px; line-height: 20px; font-weight: 640; opacity: .9; }
.ed-basla-ad { display: block; font-size: 22px; line-height: 28px; font-weight: 730; letter-spacing: -.012em; margin-top: 2px; }
.ed-basla-alt { display: block; font-size: 15px; line-height: 20px; font-weight: 500; margin-top: 4px; }
.ed-basla-ikon { position: absolute; right: 20px; top: 50%; width: 32px; height: 32px; transform: translateY(-50%); }
.ed-hafta { margin: 10px 4px 0; }
.ed-stat span { display: block; }

/* İlerleme noktaları: doğru / yanlış / bilmiyorum ayrı görünür (anında "çalıştı / çalışmadı" hissi). */
.ed-ilerleme i.simdi { background: var(--mz-link); opacity: .45; }
.ed-ilerleme i.hata { background: var(--mz-danger); }
.ed-ilerleme i.bos { background: var(--mz-off); }

/* Bilmiyorum: birinci sınıf seçenek — şıklarla aynı boyda, ama şık gibi değil (harf yok, ortalı). */
.ed-bilmiyorum-btn {
  display: block; width: 100%; min-height: 52px; margin-top: 10px; border: 1.5px dashed var(--mz-hairline);
  border-radius: var(--mz-radius-btn); background: transparent; color: var(--mz-text); font: 500 17px/22px var(--mz-font); cursor: pointer;
}
.ed-bilmiyorum-btn.secili { border-style: solid; border-color: var(--mz-off); background: var(--mz-field); }
.ed-bilmiyorum-btn:disabled { cursor: default; }
.ed-neden { margin: 0 0 8px; padding: 10px 12px; border-radius: 12px; background: var(--mz-field); color: var(--mz-text); }
.ed-defter-bos { display: none; }

/* Ders: başa alma ve geri çağırma */
.ed-adim-etiket { display: block; margin-top: 4px; font-weight: 640; color: var(--mz-link); }
.ed-ders--basa .ed-adim-etiket { color: var(--mz-t-orange); }
.ed-geri-cagir { border-left: 4px solid var(--mz-link); }
.ed-ornek-ac > summary { cursor: pointer; color: var(--mz-link); font-weight: 500; min-height: 44px; display: flex; align-items: center; }
.ed-kural { margin: 0; padding: 0; list-style: none; display: grid; gap: 10px; }
.ed-kural li { color: var(--mz-body); }
.ed-kural b { color: var(--mz-text); }
.ed-kilit { display: flex; gap: 12px; align-items: flex-start; }
.ed-kilit-ikon { width: 26px; height: 26px; color: var(--mz-muted); }
.ed-kilit-mini { width: 13px; height: 13px; vertical-align: -1px; margin-right: 3px; }
.ed-oneri { border-left: 4px solid var(--mz-primary); }

/* Hız turu süre çubuğu: hedef aşılınca renk değişir, ceza yok. */
.ed-hedef { margin: 0 0 12px; max-width: none; }
.ed-hedef > i { transition: width .2s linear; }
.ed-hedef.asti > i { background: var(--mz-wait); }

/* A/B görünüm seçimi */
.ed-ab { display: grid; grid-template-columns: 1fr; gap: 16px; margin: 12px 0; }
.ed-ab .mz-label { display: block; margin: 0 4px 6px; font-weight: 640; color: var(--mz-text); }
.ed-ab-cevap { display: grid; grid-template-columns: 1fr 1fr; gap: 10px; }
.ed-ab-cevap .mz-btn--plain { grid-column: span 1; }
.ed-ab-cevap [data-c="bilmiyorum"] { grid-column: 1 / -1; }
.ed-onizleme { padding: 12px; border-radius: var(--mz-radius-card); background: var(--mz-bg); box-shadow: 0 0 0 1px var(--mz-hairline); }
.ed-onizleme .ed-card { margin-bottom: 10px; }

/* ---------------------------------------------------------------- görünüm sınıfları (A/B sonucundan) */
/* Kart ayrımı (varsayılan açık): açık temada beyaz kart zeminden yalnız 0,05 parlaklıkla ayrılıyordu. */
.g-cerceve .ed-card, .g-cerceve .mz-list, .g-cerceve .ed-plan, .g-cerceve .ed-stat, .g-cerceve .ed-secenek,
.ed-onizleme.g-cerceve .ed-card, .ed-onizleme.g-cerceve .ed-secenek { box-shadow: 0 0 0 1px var(--mz-hairline); }
/* Yüksek karşıtlık: ikincil yazı ve ayırıcı koyulaşır, gövde birincil renge yaklaşır. */
.g-yuksek, .ed-onizleme.g-yuksek {
  --mz-body: #1C1C1E; --mz-muted: #3A3A3F; --mz-hairline: rgba(0, 0, 0, .28); --mz-field: #DCDCE2;
}
@media (prefers-color-scheme: dark) {
  :root:not([data-theme="light"]).g-yuksek, :root:not([data-theme="light"]) .ed-onizleme.g-yuksek {
    --mz-body: #EDEDF0; --mz-muted: #C4C4C9; --mz-hairline: rgba(255, 255, 255, .32); --mz-field: #3A3A3C;
  }
}
/* Büyük yazı: gövde 19, soru 20. */
.g-buyuk body.mz, .ed-onizleme.g-buyuk { font-size: 19px; line-height: 26px; }
.g-buyuk .mz-body, .g-buyuk .ed-ders p, .ed-onizleme.g-buyuk .mz-body { font-size: 19px; line-height: 26px; }
.g-buyuk .ed-soru { font-size: 20px; line-height: 28px; }
.g-buyuk .ed-secenek { font-size: 19px; }
.g-buyuk .mz-sub, .ed-onizleme.g-buyuk .mz-sub { font-size: 17px; line-height: 22px; }

/* ---------------------------------------------------------------- tablet (768-1024+, dikey ve yatay) */
/* İki sütun: solda soru ve şıklar, sağda adım adım çözüm / defter. Telefonda tek sütun (alt alta). */
@media (min-width: 768px) {
  .mz-page { max-width: 1040px; }
  .ed-iki { display: grid; grid-template-columns: minmax(0, 1.15fr) minmax(0, 1fr); gap: 24px; align-items: start; }
  .ed-kolon-defter { position: sticky; top: 56px; }
  .ed-kolon-defter .ed-geri-bildirim { margin-top: 0; }
  .ed-defter-bos {
    display: block; padding: 24px var(--mz-pad); border-radius: var(--mz-radius-card); border: 1.5px dashed var(--mz-hairline);
    color: var(--mz-muted); text-align: center;
  }
  .ed-ders { max-width: 720px; }
  .ed-ab { grid-template-columns: 1fr 1fr; }
  .ed-ab-cevap { grid-template-columns: repeat(5, 1fr); }
  .ed-ab-cevap [data-c="bilmiyorum"] { grid-column: auto; }
  .ed-row3 { gap: 16px; }
  .ed-alt { margin-left: 0; margin-right: 0; padding-left: 0; padding-right: 0; }
  .ed-alt .mz-btn { max-width: 420px; margin-left: auto; margin-right: auto; }
}
@media (min-width: 1100px) {
  .ed-iki { grid-template-columns: minmax(0, 1fr) minmax(0, 1fr); gap: 32px; }
}

/* ================================================================ ölçülmüş boşluk düzeltmeleri (araclar/olcu.mjs, 2026-10-01) */
/* Satır içi giriş: 44 (dokunma hedefi), satır 60 (üst 8 = alt 8); tam genişlik alanlar kitten 52. */
.ed-net { min-height: 60px; }
/* Kart iç boşluğu simetrik: son öğenin alt kenar boşluğu kartın 16'lık iç boşluğuna eklenmesin (ölçüldü: üst 16 / alt 44). */
.ed-card > :first-child { margin-top: 0; }
.ed-card > :last-child { margin-bottom: 0; }
.ed-card p.mz-body, .ed-card p.mz-sub, .ed-card p.mz-foot { margin: 6px 0 0; }
.ed-card > .mz-label + p, .ed-card > .mz-title3 + p { margin-top: 6px; }
/* Kart içindeki sade düğme kartla aynı renk olmasın. */
.ed-card .mz-btn--plain { background: var(--mz-field); }
.ed-card > p:first-child { margin-top: 0; }
.ed-card > .mz-label { display: block; line-height: 16px; }

/* TV/klavye: plan ve konu satırlarında odak halkası içe (kart overflow:hidden) */
.ed-plan a:focus-visible, .ed-konu:focus-visible { outline: 3px solid var(--mz-primary); outline-offset: -3px; background: var(--mz-press); }

/* ================================================================ günlük döngü, kişiye göre ayar (2026-10-03) */
.ed-tarih { margin: -6px 4px 16px; }

/* afiş: tek seferlik / haftalık davet (profil, haftalık özet) */
.ed-afis { display: flex; align-items: center; gap: 12px; min-height: 64px; padding: 12px var(--mz-pad); color: inherit; text-decoration: none; }
.ed-afis-metin { flex: 1; min-width: 0; }
.ed-afis-metin b { display: block; font-weight: 640; line-height: 22px; }
.ed-afis-metin span { display: block; font-size: 15px; line-height: 20px; color: var(--mz-muted); }
.ed-afis:active { background: var(--mz-field); }
.ed-afis .mz-chev { width: 14px; height: 14px; color: var(--mz-off); fill: currentColor; }

/* görev kartı: iki halka (dakika, soru) + Başla */
.ed-gorev { padding: 16px; }
.ed-gorev-ust { display: flex; align-items: center; gap: 16px; margin: 0 0 14px; }
.ed-gorev-metin { display: flex; flex-direction: column; min-width: 0; }
.ed-gorev-metin .mz-label { font-weight: 640; color: var(--mz-muted); line-height: 16px; }
.ed-gorev-dk { font-size: 28px; line-height: 34px; font-weight: 750; letter-spacing: -.02em; margin: 2px 0 0; }
.ed-gorev .ed-basla { margin: 0; }
.ed-gorev-not { margin: 10px 4px 0; }
.ed-halkalar { flex: none; }
.ed-halkalar circle { fill: none; stroke-width: 8; stroke-linecap: round; transform: rotate(-90deg); transform-origin: 50% 50%; }
.ed-halkalar .iz1 { stroke: color-mix(in srgb, var(--mz-primary) 16%, transparent); }
.ed-halkalar .iz2 { stroke: color-mix(in srgb, var(--mz-t-indigo) 16%, transparent); }
.ed-halkalar .h1 { stroke: var(--mz-primary); transition: stroke-dasharray .6s var(--mz-ease); }
.ed-halkalar .h2 { stroke: var(--mz-t-indigo); transition: stroke-dasharray .6s var(--mz-ease); }
.ed-halkalar .h1.tam, .ed-halkalar .h2.tam { stroke: var(--mz-ok); }
.ed-halkalar .ok { fill: var(--mz-ok); }
.ed-basla-deger { display: inline-block; margin-top: 10px; padding: 4px 10px; border-radius: 12px; background: rgba(255, 255, 255, .18); font-size: 13px; line-height: 18px; font-weight: 640; letter-spacing: 0; }
.ed-basla:focus-visible, .ed-secim-k:focus-visible, .ed-yol:focus-visible, .ed-afis:focus-visible, .ed-niyet:focus-visible { outline: 3px solid var(--mz-primary); outline-offset: 3px; }

/* özerklik: plana uygun iki seçenek daha */
.ed-secim { display: grid; grid-template-columns: 1fr 1fr; gap: 10px; margin: 10px 0 0; }
.ed-secim-k { display: block; min-height: 64px; padding: 10px 12px; border-radius: var(--mz-radius-btn); background: var(--mz-field); color: inherit; text-decoration: none; }
.ed-secim-k b { display: block; font-weight: 640; font-size: 15px; line-height: 20px; }
.ed-secim-k span { display: block; font-size: 13px; line-height: 18px; color: var(--mz-muted); margin-top: 2px; }
.ed-secim-k:active { filter: brightness(.95); }

/* eğer-o-zaman planı satırı ve formu */
.ed-niyet { display: flex; align-items: center; gap: 8px; min-height: 44px; margin: 8px 0 -6px; padding: 0 4px; color: var(--mz-muted); font-size: 15px; line-height: 20px; text-decoration: none; }
.ed-niyet b { color: var(--mz-text); font-weight: 640; }
.ed-niyet .ed-i { width: 18px; height: 18px; color: var(--mz-link); }
.ed-niyet-cumle { display: flex; flex-wrap: wrap; align-items: center; gap: 8px; margin-top: 12px; color: var(--mz-text); }
.ed-niyet-cumle .mz-input { height: 44px; flex: 1 1 140px; min-width: 0; border-radius: var(--mz-r-m); background: var(--mz-field); box-shadow: none; padding: 0 12px; }
.ed-niyet-cumle .mz-input:focus { box-shadow: inset 0 0 0 2px var(--mz-primary); }
.ed-niyet-cumle .ed-kisa { flex: 0 0 auto; text-align: left; }

/* yolculuk: başlangıç → şimdi → hedef (log ölçek) */
.ed-yol { display: block; color: inherit; text-decoration: none; }
.ed-yol-ust { display: flex; justify-content: space-between; align-items: baseline; gap: 8px; }
.ed-yol-ust .mz-label { font-weight: 640; color: var(--mz-muted); }
.ed-yol-iz { position: relative; height: 8px; margin: 18px 10px 12px; border-radius: 4px; background: var(--mz-field); }
.ed-yol-iz > i { display: block; height: 100%; border-radius: 4px; background: linear-gradient(90deg, color-mix(in srgb, var(--mz-primary) 35%, transparent), var(--mz-primary)); min-width: 8px; }
.ed-yol-iz > b { position: absolute; top: 50%; width: 20px; height: 20px; margin: -10px 0 0 -10px; border-radius: 50%; background: var(--mz-surface); box-shadow: 0 0 0 4px var(--mz-primary); }
.ed-yol-iz::after { content: ''; position: absolute; right: -6px; top: 50%; width: 12px; height: 12px; margin-top: -6px; border-radius: 50%; background: var(--mz-ok); }
.ed-yol-alt { display: grid; grid-template-columns: 1fr auto 1fr; gap: 8px; font-size: 15px; line-height: 20px; font-weight: 640; }
.ed-yol-alt small { display: block; font-size: 12px; line-height: 16px; font-weight: 480; color: var(--mz-muted); letter-spacing: 0; }
.ed-yol-alt span:last-child { text-align: right; }
.ed-yol-simdi { text-align: center; color: var(--mz-link); }
.ed-yol .mz-foot { margin-top: 10px; }
.ed-yol--bos .mz-label { font-weight: 640; color: var(--mz-muted); }

/* seri: 7 gün */
.ed-seri-gun { display: grid; grid-template-columns: repeat(7, 1fr); gap: 4px; margin: 0 0 10px; padding: 0; list-style: none; text-align: center; }
.ed-seri-gun i { display: grid; place-items: center; width: 32px; height: 32px; margin: 0 auto 4px; border-radius: 50%; background: var(--mz-field); color: #fff; }
.ed-seri-gun i .ed-i { width: 16px; height: 16px; }
.ed-seri-gun span { font-size: 12px; line-height: 16px; color: var(--mz-muted); }
.ed-seri-gun .dolu i { background: var(--mz-primary); }
.ed-seri-gun .donduruldu i { background: color-mix(in srgb, var(--mz-t-cyan) 30%, transparent); box-shadow: inset 0 0 0 2px var(--mz-t-cyan); }
.ed-seri-gun .bugun i { background: transparent; box-shadow: inset 0 0 0 2px var(--mz-primary); }
.ed-seri-gun .bugun span { color: var(--mz-text); font-weight: 640; }
.ed-seri .mz-sub b { color: var(--mz-text); font-weight: 640; }
.ed-seri .mz-foot { margin-top: 4px; }

/* birim sonu görev kartı */
.ed-gorev-mini { display: flex; align-items: center; gap: 14px; }
.ed-gorev-mini b { display: block; font-size: 20px; line-height: 25px; font-weight: 730; }
.ed-gorev-mini .mz-sub { display: block; }

/* kısa profil */
.ed-tanis-bar { max-width: none; margin: 4px 0 18px; }
.ed-tanis-acik { margin: 0 4px 12px; }
.ed-tanis-madde { font-size: 22px; line-height: 28px; font-weight: 730; letter-spacing: -.012em; margin: 8px 4px 18px; }
.ed-likert .harf { font-variant-numeric: tabular-nums; }
.ed-alt--akis .mz-btn--plain + .mz-btn--plain { margin-top: 10px; }
.ed-ayar b { display: block; font-weight: 640; line-height: 22px; }
.ed-ayar .mz-foot { margin-top: 6px; }
.ed-olcek + .ed-olcek { margin-top: 16px; padding-top: 16px; border-top: .5px solid var(--mz-hairline); }
.ed-olcek-ust { display: flex; justify-content: space-between; align-items: baseline; }
.ed-olcek-ust b { font-weight: 640; }
.ed-olcek-bar { max-width: none; height: 8px; border-radius: 4px; }
.ed-olcek-bar > i { border-radius: 4px; }
.ed-olcek .mz-foot { margin-top: 6px; }
.ed-yikici { color: var(--mz-danger); }

/* odak */
.ed-odak { text-align: center; padding: 28px var(--mz-pad); }
.ed-odak-sayac { display: block; font-size: 64px; line-height: 72px; font-weight: 730; letter-spacing: -.03em; font-variant-numeric: tabular-nums; }
.ed-odak-cizgi { position: fixed; top: 0; left: 0; right: 0; height: 3px; z-index: 60; pointer-events: none; }
.ed-odak-cizgi > i { display: block; height: 100%; width: 0; background: var(--mz-primary); transition: width 1s linear; }
.ed-odak-cizgi.mola > i { background: var(--mz-ok); }

/* haftam */
.ed-hafta-grafik { display: grid; grid-template-columns: repeat(7, 1fr); gap: 8px; height: 132px; align-items: end; padding-bottom: 12px; }
.ed-hafta-grafik div { display: flex; flex-direction: column; justify-content: flex-end; height: 100%; text-align: center; }
.ed-hafta-grafik i { display: block; width: 100%; max-width: 28px; margin: 0 auto 6px; min-height: 3px; border-radius: 6px; background: var(--mz-primary); }
.ed-hafta-grafik span { font-size: 12px; line-height: 16px; color: var(--mz-muted); }

/* kutlama: kısa, ölçülü nokta patlaması (mavi tonlar + yeşil) */
.ed-kutla { position: fixed; left: 50%; top: 42%; width: 0; height: 0; z-index: 80; pointer-events: none; }
.ed-kutla i { position: absolute; width: 8px; height: 8px; margin: -4px; border-radius: 50%; opacity: 0; animation: ed-kutla 1.1s cubic-bezier(.2, .8, .2, 1) var(--g) forwards; }
.ed-kutla i.a { background: var(--mz-primary); }
.ed-kutla i.b { background: var(--mz-ok); }
.ed-kutla i.c { background: var(--mz-t-cyan); width: 6px; height: 6px; }
@keyframes ed-kutla { 0% { opacity: 1; transform: translate(0, 0) scale(.4); } 70% { opacity: 1; } 100% { opacity: 0; transform: translate(var(--x), var(--y)) scale(1); } }
.ed-secenek.dogru { animation: ed-dogru .32s var(--mz-ease); }
@keyframes ed-dogru { 40% { transform: scale(1.02); } }
@media (prefers-reduced-motion: reduce) { .ed-kutla { display: none; } .ed-secenek.dogru { animation: none; } .ed-halkalar circle, .ed-odak-cizgi > i { transition: none; } }

/* gidisat: projeksiyon satiri (Yolculuk karti) */
.ed-yol-gidis { display: flex; align-items: baseline; gap: 8px; flex-wrap: wrap; margin: 12px 0 0; padding: 10px 0 0; border-top: .5px solid var(--mz-hairline); font-size: 15px; line-height: 20px; }
.ed-yol-gidis span { color: var(--mz-muted); }
.ed-yol-gidis b { font-weight: 730; color: var(--mz-text); }
.ed-yol-gidis small { margin-left: auto; font-size: 13px; color: var(--mz-muted); }

/* gidisat ekrani: log eksenli aralik cubugu */
.ed-gidis .ed-count { margin: 2px 0 2px; }
.ed-aralik { position: relative; height: 10px; margin: 22px 8px 6px; border-radius: 5px; background: var(--mz-field); }
.ed-aralik .bant { position: absolute; top: 0; bottom: 0; border-radius: 5px; background: color-mix(in srgb, var(--mz-primary) 35%, transparent); }
.ed-aralik b { position: absolute; top: 50%; width: 14px; height: 14px; margin: -7px 0 0 -7px; border-radius: 50%; }
.ed-aralik b.proj { width: 20px; height: 20px; margin: -10px 0 0 -10px; background: var(--mz-surface); box-shadow: 0 0 0 4px var(--mz-primary); }
.ed-aralik b.simdi { background: var(--mz-muted); }
.ed-aralik b.hedef { background: var(--mz-ok); }
.ed-aralik-eksen { display: flex; justify-content: space-between; margin: 0 0 8px; font-size: 12px; line-height: 16px; color: var(--mz-muted); }
.ed-aralik-lejant { display: flex; flex-wrap: wrap; gap: 6px 16px; margin: 0 0 8px; }
.ed-aralik-lejant span { display: inline-flex; align-items: center; gap: 6px; }
.ed-aralik-lejant b { width: 10px; height: 10px; border-radius: 50%; flex: none; }
.ed-aralik-lejant b.proj { background: var(--mz-primary); }
.ed-aralik-lejant b.simdi { background: var(--mz-muted); }
.ed-aralik-lejant b.hedef { background: var(--mz-ok); }
.ed-gerek .ed-count b { font-size: 28px; line-height: 34px; }
.ed-gerek .mz-body { margin-top: 6px; }
.ed-vurgu .mz-row-title { font-weight: 640; color: var(--mz-link); }

/* kendi modelim: 10 saniyelik kontrol */
.ed-kontrol { display: grid; gap: 16px; }
.ed-kontrol-ust { display: flex; justify-content: space-between; align-items: baseline; gap: 8px; margin: 0 0 8px; }
.ed-kontrol-ust .mz-label { font-weight: 640; color: var(--mz-muted); }
.ed-puan button { min-height: 48px; font-variant-numeric: tabular-nums; font-size: 17px; }
.ed-uyku button { padding: 0 2px; font-size: 15px; }
.ed-kontrol-not summary { min-height: 44px; display: flex; align-items: center; padding: 0 4px; color: var(--mz-link); cursor: pointer; list-style: none; font-size: 15px; }
.ed-kontrol-not summary::-webkit-details-marker { display: none; }
.ed-kontrol-not .mz-input { width: 100%; margin-top: 4px; border-radius: var(--mz-r-m); background: var(--mz-field); box-shadow: none; padding: 10px 12px; min-height: 64px; }
.ed-kontrol-eylem { display: flex; gap: 12px; }
.ed-kontrol-eylem .mz-btn { flex: 1; }
.ed-kontrol .mz-foot { margin: -6px 4px 0; text-align: center; }
.ed-nazik { box-shadow: inset 0 0 0 1.5px color-mix(in srgb, var(--mz-t-purple) 45%, transparent); }
.ed-nazik > b { display: block; font-weight: 640; margin-bottom: 4px; }
.ed-nazik p b { font-weight: 730; }
.ed-bulgu b { display: block; font-weight: 640; margin-bottom: 4px; }
.ed-bulgu .mz-foot { margin-top: 6px; }
.ed-parola .mz-input { width: 100%; height: 44px; margin-top: 12px; border-radius: var(--mz-r-m); background: var(--mz-field); box-shadow: none; padding: 0 12px; text-align: left; }
.ed-parola .ed-hata { margin: 8px 0 0; font-size: 13px; }

/* aylik ozet (ekranda ve kagitta) */
.ed-ay-nav { display: flex; justify-content: space-between; align-items: center; gap: 8px; margin: 0 0 16px; }
.ed-rapor { background: var(--mz-surface); border-radius: var(--mz-radius-card); padding: var(--mz-pad); }
.ed-rapor-bas .mz-title2 { margin: 0; }
.ed-rapor .ed-rapor-uyari { margin: 12px 0; padding: 10px 12px; border-radius: var(--mz-r-m); background: var(--mz-field); font-size: 15px; line-height: 20px; }
.ed-rapor-ozet { display: grid; grid-template-columns: repeat(auto-fill, minmax(120px, 1fr)); gap: 12px 16px; margin: 16px 0; }
.ed-rapor-ozet b { display: block; font-size: 20px; line-height: 25px; font-weight: 730; }
.ed-rapor-ozet span { display: block; font-size: 13px; line-height: 18px; color: var(--mz-muted); }
.ed-rapor-bulgu { margin: 8px 0 16px; padding-left: 20px; color: var(--mz-body); display: grid; gap: 6px; }
.ed-tablo-kap { overflow-x: auto; margin: 0 calc(-1 * var(--mz-pad)); padding: 0 var(--mz-pad); -webkit-overflow-scrolling: touch; }
.ed-tablo { width: 100%; border-collapse: collapse; font-size: 13px; line-height: 18px; white-space: nowrap; }
.ed-tablo th { text-align: left; font-weight: 640; color: var(--mz-muted); padding: 6px 8px 6px 0; border-bottom: .5px solid var(--mz-hairline); }
.ed-tablo td { padding: 6px 8px 6px 0; border-bottom: .5px solid var(--mz-hairline); }
.ed-tablo tr.dusuk td { font-weight: 640; }
.ed-tablo .ed-tablo-not { white-space: normal; min-width: 160px; }
@media print {
  @page { margin: 14mm; }
  html, body, .mz { background: #fff !important; color: #000 !important; }
  .mz-tabbar, .mz-nav, .ed-yazdir-gizle, .mz-toast, .ed-odak-cizgi, #modal { display: none !important; }
  .ed-main { padding: 0 !important; }
  .mz-head .mz-large-title { font-size: 20px; line-height: 26px; }
  .ed-rapor { padding: 0; background: none; }
  .ed-rapor-uyari { background: none; border: 1px solid #999; }
  .ed-tablo-kap { overflow: visible; margin: 0; padding: 0; }
  .ed-tablo { font-size: 10.5px; }
  .ed-tablo th, .ed-tablo td { border-bottom: 1px solid #bbb; color: #000; }
  .ed-rapor-ozet span, .mz-foot, .mz-sub { color: #333 !important; }
}

/* kendi modelim: aylık zaman çizelgesi */
.ed-cizelge .mz-label { display: block; font-weight: 640; color: var(--mz-muted); margin: 0 0 6px; }
.ed-cz-serit { display: flex; align-items: flex-end; gap: 2px; height: 56px; }
.ed-cz-serit i { flex: 1; min-width: 2px; border-radius: 2px 2px 0 0; background: var(--mz-field); }
.ed-cz-serit i.bos { height: 2px !important; }
.ed-cz-ruh { height: 40px; }
.ed-cizelge .d-yuksek { background: var(--mz-primary); }
.ed-cizelge .d-orta { background: color-mix(in srgb, var(--mz-primary) 35%, var(--mz-field)); }
.ed-cizelge .d-dusuk { background: var(--mz-t-purple); }
.ed-cizelge .k { background: var(--mz-ok); }
.ed-cz-eksen { display: flex; gap: 2px; margin: 6px 0 10px; font-size: 11px; line-height: 14px; color: var(--mz-muted); }
.ed-cz-eksen span { flex: 1; min-width: 2px; white-space: nowrap; overflow: visible; }
.ed-rapor-bulgu .mz-textbtn { min-height: 0; padding: 0 4px; font-size: 15px; }

/* Kasa kayıt durumu: "kaydedildi" yalnız doğrulamalı yazma geçince; değilse neden + yeniden dene */
.ed-kayit-durum { display: flex; align-items: center; gap: 8px; margin: 4px 4px 12px; font-size: 15px; font-weight: 590; }
.ed-kayit-ok { color: var(--mz-t-green); }
.ed-kayit-ok .ed-i { width: 18px; height: 18px; flex: none; }
.ed-kayit-hata { box-shadow: inset 0 0 0 1.5px color-mix(in srgb, var(--mz-t-red) 55%, transparent); margin-bottom: 12px; }
.ed-kayit-hata > b { display: block; color: var(--mz-t-red); font-weight: 680; margin-bottom: 4px; }
.ed-kayit-hata .mz-btn { margin-top: 10px; }

/* ================================================================ v2 ders ekranı (2026-10-07) */
/* Kural belgesi C:/dev/stazos/docs/edu-tasarim-kurallari.md §A3/§C: bir ekran = tek fikir, KAYDIRMASIZ (360×780, 400×866);
   ders yazısı 19 px / 1,5; soru 20 / 30; şık 19, dokunma ≥ 52; "neden" satırı 17 px GÖVDE rengi (ikincil gri değil, K-20);
   ders sütunu ≤ 34 em (K-19). Ekran sütun düzeni: üst çubuk + ilerleme + sahne + alt eylem (başparmakta). */
.ed-ders-kip { display: flex; flex-direction: column; min-height: 100vh; min-height: 100dvh; padding-bottom: 0 !important; }
.ed-ders-kip > .ed-ilerleme { margin: 2px 0 14px; }
.ed-sahne { flex: 1 0 auto; width: 100%; max-width: 34em; margin: 0 auto; font-size: 19px; line-height: 1.5; color: var(--mz-body); letter-spacing: -.004em; }
.ed-sahne-alt { width: 100%; max-width: 34em; margin: 0 auto; padding: 12px 0 calc(16px + env(safe-area-inset-bottom)); display: grid; gap: 10px; }
.ed-sahne-alt:empty { padding: 0 0 calc(8px + env(safe-area-inset-bottom)); }
.ed-sahne p { margin: 0 0 14px; }
.ed-sahne b { color: var(--mz-text); font-weight: 640; }
.ed-adim-baslik { font-size: 24px; line-height: 30px; font-weight: 730; letter-spacing: -.014em; color: var(--mz-text); margin: 0 0 12px; }
.ed-sahne .ed-adim-etiket { display: block; margin: 0 0 6px; font-size: 13px; line-height: 18px; font-weight: 640; letter-spacing: 0; color: var(--mz-link); }
.ed-liste { margin: 0 0 14px; padding-left: 24px; }
.ed-liste li { margin: 0 0 8px; padding-left: 2px; }
.ed-liste li::marker { color: var(--mz-text); }
.ed-liste--kart { color: var(--mz-body); }
.ed-not { font-size: 17px; line-height: 25px; color: var(--mz-body); }

/* yeni işaret kartı (K-02): adı + okunuşu + anlamı + sayısal örnek */
.ed-yeni { position: relative; background: var(--mz-surface); border-radius: 18px; padding: 12px 16px 6px; margin: 0 0 14px; box-shadow: inset 0 0 0 1.5px var(--mz-tint); }
.ed-yeni-etiket { display: block; font-size: 13px; line-height: 18px; font-weight: 640; color: var(--mz-link); }
.ed-yeni-bas { display: flex; align-items: baseline; flex-wrap: wrap; gap: 4px 12px; margin: 2px 0 4px; }
.ed-yeni-isaret { font-size: 32px; line-height: 40px; font-weight: 730; color: var(--mz-text); font-variant-numeric: tabular-nums; }
.ed-yeni-okunus { font-size: 17px; line-height: 24px; color: var(--mz-body); }
.ed-sahne .ed-yeni-anlam { margin: 0 0 6px; color: var(--mz-text); }
.ed-sahne .ed-yeni-ornek { margin: 0 0 4px; color: var(--mz-text); font-variant-numeric: tabular-nums; }
/* Örnek satırı düz cümle de olabilir ("352 → 2 birler, 5 onlar, 3 yüzler basamağında"): satır serbestçe kırılır; yalnız
   matSar'ın sardığı işlem dizileri ("5 · 4 · 3", "72 ÷ 4 = 18") .mat içinde bölünmez. Eskiden bütün satır .mat (nowrap) idi → 360 px'te kesiliyordu. */
.ed-yeni-ornek-metin { white-space: normal; overflow-wrap: break-word; }
.ed-yeni-ornek-ad { font-size: 15px; font-weight: 640; color: var(--mz-body); margin-right: 4px; }
.ed-biliyorum { display: inline-flex; align-items: center; min-height: 44px; padding: 0; border: 0; background: none; color: var(--mz-link); font: 500 15px/20px var(--mz-font); cursor: pointer; }
.ed-yeni-kucuk { display: flex; align-items: center; gap: 8px; width: 100%; min-height: 48px; margin: 0 0 12px; padding: 8px 14px; border: 0; border-radius: 14px; background: var(--mz-surface); color: var(--mz-text); font: 480 17px/24px var(--mz-font); text-align: left; cursor: pointer; }
.ed-yeni-kucuk .ed-i, .ed-ipucu .ed-i { color: var(--mz-link); }

/* çözümlü örnek: her işlem ayrı satır (K-28); "neden" küçük ama gövde renginde */
.ed-ornek-soru { font-size: 20px; line-height: 30px; font-weight: 500; color: var(--mz-text); margin: 0 0 10px; }
.ed-cozum { list-style: none; margin: 0 0 12px; padding: 0; counter-reset: c; }
.ed-cozum > li { counter-increment: c; position: relative; padding: 6px 0 6px 34px; border-top: .5px solid var(--mz-hairline); }
.ed-cozum > li:first-child { border-top: 0; }
.ed-cozum > li::before { content: counter(c); position: absolute; left: 0; top: 9px; width: 24px; height: 24px; border-radius: 50%; background: var(--mz-field); color: var(--mz-text); font: 640 13px/24px var(--mz-font); text-align: center; font-variant-numeric: tabular-nums; }
.ed-islem { display: block; font-size: 20px; line-height: 30px; color: var(--mz-text); font-variant-numeric: tabular-nums; }
.ed-neden-k { display: block; font-size: 17px; line-height: 24px; color: var(--mz-body); }
.ed-cozum > li.ed-simdi { background: var(--mz-tint); border-radius: 12px; margin: 2px -8px; padding-left: 42px; padding-right: 8px; border-top-color: transparent; }
.ed-cozum > li.ed-simdi::before { left: 8px; }
.ed-cozum > li.ed-gizli { color: var(--mz-body); font-size: 20px; line-height: 30px; }
.ed-cozum--kart { margin: 4px 0 4px; }
.ed-cozum--kart > li { padding-top: 2px; padding-bottom: 2px; border: 0; }
.ed-cozum--kart > li::before { top: 5px; }
.ed-bosluk { display: inline-block; min-width: 48px; padding: 0 8px; border: 2px dashed var(--mz-primary); border-radius: 8px; line-height: 26px; text-align: center; color: var(--mz-link); font-weight: 640; vertical-align: 1px; }
.ed-bosluk.dogru { border-style: solid; border-color: var(--mz-ok); color: var(--mz-text); }
.ed-bosluk.yanlis { border-style: solid; border-color: var(--mz-wait); color: var(--mz-text); }
/* Şıklar içeriğine göre genişler, sığmayan alt satıra iner (grid + minmax(84px) uzun sözcüklerde "karşılaştırma" gibi şıkları
   komşusunun üstüne ya da ekran dışına taşırıyordu). Kısa şıklar (sayılar) eskisi gibi tek satırda eşit paylaşır. */
.ed-bosluk-secenekler { display: flex; flex-wrap: wrap; gap: 8px; margin: 4px 0 0; }
.ed-bosluk-secenekler > .ed-bosluk-sec { flex: 1 1 auto; min-width: 84px; max-width: 100%; overflow-wrap: anywhere; }
.ed-bosluk-sec { min-height: 52px; padding: 8px 10px; border: 1.5px solid var(--mz-hairline); border-radius: var(--mz-radius-btn); background: var(--mz-surface); color: var(--mz-text); font: 500 20px/28px var(--mz-font); font-variant-numeric: tabular-nums; cursor: pointer; }
.ed-bosluk-sec:active { background: var(--mz-field); }

/* ders sorusu: soru 20/30, şık 19 (K-19); doğru/yanlış ayrıca simge + metinle (K-24) */
.ed-sahne .ed-soru { font-size: 20px; line-height: 30px; color: var(--mz-text); margin: 0 0 14px; }
.ed-sahne .ed-soru--kucuk { font-size: 19px; line-height: 28px; margin-bottom: 10px; }
.ed-sahne .ed-secenekler { gap: 8px; }
.ed-sahne .ed-secenek { font-size: 19px; line-height: 26px; min-height: 52px; padding: 8px 14px; }
.ed-sahne .ed-bilmiyorum-btn { margin-top: 8px; font-size: 19px; }
.ed-sonuc { display: flex; align-items: center; gap: 8px; margin: 0 0 10px; font-size: 19px; line-height: 26px; font-weight: 500; color: var(--mz-text); }
.ed-sonuc .ed-i { width: 22px; height: 22px; flex: none; }
.ed-sahne-alt .ed-sonuc { margin: 0; justify-content: center; }
.ed-ipucu { display: flex; align-items: flex-start; gap: 10px; margin: 0 0 12px; padding: 10px 14px; border-radius: 14px; background: var(--mz-field); color: var(--mz-text); font-size: 17px; line-height: 24px; }
.ed-sahne .ed-neden { font-size: 17px; line-height: 25px; }
.ed-neden-ad, .ed-sik-hata-ad, .ed-taktik-ad { font-weight: 640; color: var(--mz-text); margin-right: 4px; }
.ed-sahne .ed-sik-hata { padding: 10px 14px; border-radius: 14px; background: var(--mz-field); color: var(--mz-text); font-size: 17px; line-height: 25px; }
.ed-sekil { margin: 0 0 14px; }
.ed-sekil svg { display: block; max-width: 100%; height: auto; }

/* taktik kutusu (K-36): ayrı, etiketli; yalnız kapıdan sonra */
.ed-taktik { margin: 0 0 14px; padding: 12px 16px 2px; border-radius: 18px; background: var(--mz-surface); box-shadow: inset 0 0 0 1.5px var(--mz-hairline); font-size: 17px; line-height: 25px; color: var(--mz-body); }
.ed-taktik p { margin: 0 0 10px; }
.ed-taktik-etiket { display: block; margin: 0 0 6px; font-size: 13px; line-height: 18px; font-weight: 640; color: var(--mz-t-orange); }
.ed-taktik-kaynak { font-size: 13px; line-height: 18px; color: var(--mz-muted); }

/* video (K-31…35): iki dokunuşla, çerezsiz gömme */
.ed-video { display: block; width: 100%; aspect-ratio: 16 / 9; border: 0; border-radius: 14px; background: #000; margin: 0 0 12px; }
.ed-video-ac { display: inline-flex; align-items: center; justify-content: center; gap: 8px; width: 100%; margin: 0 0 12px; }

/* TV / klavye: ders öğelerinde odak her zaman görünür */
.ed-bosluk-sec:focus-visible, .ed-biliyorum:focus-visible, .ed-yeni-kucuk:focus-visible { outline: 3px solid var(--mz-primary); outline-offset: 2px; }

/* tema seçimi (Profil › Görünüm) */
.ed-tema { margin: 0 0 16px; }
.ed-tema .mz-foot { margin: 8px var(--mz-pad) 0; }

/* Tema kullanıcı seçimiyle zorlandığında (data-theme) da aynı koyu tema düzeltmeleri. */
:root[data-theme="dark"] .ed-etiket--ok { color: var(--mz-ok); }
:root[data-theme="dark"] .ok-renk { color: var(--mz-ok); }
:root[data-theme="dark"] .hata-renk { color: var(--mz-danger); }
:root[data-theme="dark"].g-yuksek { --mz-body: #EDEDF0; --mz-muted: #C4C4C9; --mz-hairline: rgba(255, 255, 255, .32); --mz-field: #3A3A3C; }
.ed-sonuc--senin { font-weight: 480; color: var(--mz-body); }
.ed-sonuc--senin .ed-i { color: var(--mz-t-red); }
:root[data-theme="dark"] .ed-sonuc--senin .ed-i { color: var(--mz-danger); }
@media (prefers-color-scheme: dark) { :root:not([data-theme="light"]) .ed-sonuc--senin .ed-i { color: var(--mz-danger); } }
/* çok satırlı sonuçta simge ilk satırla hizalı; çözüm ekranındaki düzyazı satırlar gövde boyunda */
.ed-sonuc { align-items: flex-start; }
.ed-sonuc .ed-i { margin-top: 2px; }
.ed-sahne-alt .ed-sonuc { align-items: center; }
.ed-sahne-alt .ed-sonuc .ed-i { margin-top: 0; }
.ed-cozum--cozum .ed-islem { font-size: 19px; line-height: 28px; }

/* ==== Metastaz Design 2.0 uyum katmanı (2026-10-07) — EN SONDA kalmalı; yukarıdaki kuralları yalnız standart değere çeker.
   Kaynak: C:\dev\metastaz-design\tasima\edu_katman.css (python tasima\edu_uygula.py). Belge: docs\tasarim\metastaz-design.md ==== */
.ed-konu { min-height: 64px; }                                                     /* satır 52 / alt yazılı 64 */
.ed-etiket { border-radius: 999px; color: var(--mz-body); }                         /* rozet kapsül; muted / fill 4,19 geçmez */
.ed-tahta, .ed-ipucu, .ed-sahne .ed-sik-hata, .ed-yeni-kucuk, .ed-video, .ed-secenek { border-radius: var(--mz-r-ctl); }   /* 14 → 16 */
.ed-ilerleme { margin-top: 8px; }                                                   /* çubuğa yapışık 4 → 8 (§6.19b) */
.ed-ders-kip > .ed-ilerleme { margin-top: 8px; }
.ed-ilerleme i { border-radius: 999px; }
.ed-seg { border-radius: var(--mz-r-ctl); }
.ed-seg button { border-radius: var(--mz-r-ic); }                                    /* 2.5.2: parça izle aynı köşe (16; görünen dolgu 14) */
details.ed-card > summary { min-height: 44px; display: flex; align-items: center; }  /* dokunma 44 */
details.ed-card { padding-top: 8px; } details.ed-card:not([open]) { padding-bottom: 8px; } details.ed-card > summary { padding-top: 12px; padding-bottom: 12px; }   /* özet yazısı her satır sayısında üstten 8 + 12 = 20 = sol, dokunma ≥ 44 (summary'de eksi kenar boşluğu Chrome'da üstte işlemiyor; köşeye orantılı, sahip 10-08) */
.ed-basla-deger { background: rgba(0, 0, 0, .18); }                                  /* beyaz / açık mavi 3,53 → koyu ton 6+ */
.ed-sahne .ed-secenek { line-height: 28px; }                                         /* reading 19/28 */
.ed-onizleme:not(.g-buyuk) .mz-body { line-height: 25.5px; }
.ed-nav-iki { line-height: 20px; }
.ed-stat span::first-letter, label.mz-row .mz-row-sub::first-letter { text-transform: uppercase; }   /* etiket büyük harfle */
.ed-secenek .harf { color: var(--mz-body); }                                         /* muted / fill 4,19 geçmez */
.mz input:not(.mz-input):focus-visible, .mz select:focus-visible { outline: 3px solid var(--mz-primary); outline-offset: 2px; }   /* TV odak */
.mz .mz-input[type="time"]:focus, .mz .mz-input[type="time"]:focus-within { box-shadow: inset 0 0 0 2px var(--mz-primary); outline: 0; }
/* --- 2.3 tam tarama düzeltmeleri (2026-10-07 gece) --- */
.g-yuksek, .ed-onizleme.g-yuksek { --mz-link: #0040DD; }                             /* yüksek karşıtlık = standart mz-yuksek (bağlantı da koyulaşır: dolgu üstünde 4,08 → 5,54) */
@media (prefers-color-scheme: dark) { :root:not([data-theme="light"]).g-yuksek, :root:not([data-theme="light"]) .ed-onizleme.g-yuksek { --mz-link: #5AB0FF; } }
:root[data-theme="dark"].g-yuksek, :root[data-theme="dark"] .ed-onizleme.g-yuksek { --mz-link: #5AB0FF; }   /* 3,76 → 4,91 */
.ed-konu { padding-top: 12px; padding-bottom: 12px; }                                 /* satır iç boşluğu 8 → 12 (alt yazılı satır 64) */
.ed-net { min-height: 64px; padding-top: 10px; padding-bottom: 10px; }               /* 44'lük alanlar 10 + 44 + 10 */
.ed-net:not(.ed-net-bas) { min-height: 64px; }
.ed-net > span:first-child .mz-foot { display: block; }                              /* "/20" ad altında: satırlar eşit (8–18,5 → 12) */
.ed-net-bas { min-height: 32px; padding-top: 4px; padding-bottom: 4px; }
.ed-konu + .ed-konu, .ed-net + .ed-net { border-top-width: var(--mz-hairline-w); }   /* ayırıcı 1 (tur 2) */
.ed-cozum:not(.ed-cozum--kart) > li { padding-top: 12px; padding-bottom: 12px; border-top-width: var(--mz-hairline-w); }   /* ayırıcı–metin 6 → 12 (kart içi hesap listesi ayırıcısız, 2 kalır) */
.ed-sahne .ed-cozum:not(.ed-cozum--kart) > li { padding-top: 6px; padding-bottom: 6px; }   /* ders ekranı kaydırmasız (K-17): 12 ile 360×780'de +69, 8 ile +13 taştı → Edu'nun 6'sı; satır 28,5'in yarı aralığıyla yazı–ayırıcı görsel ≈ 11 */
.ed-cozum--cozum > li::before { top: 14px; }   /* ders dışı (teşhis 'Neden? Adım adım'): satır 12 + (28 − 24) / 2, numara ilk satırla ortalı */
.ed-sahne .ed-cozum--cozum > li::before { top: 9px; }   /* ders ekranında Edu değeri (6 + 28,5'in yarı aralığı) */

.ed-yeni { border-radius: var(--mz-r-card); }                                         /* 18 → 20 */
.ed-yeni-kucuk { min-height: var(--mz-control-l); }                                  /* 48 → 52 */
.ed-puan button { min-height: var(--mz-control-m); }                                 /* 48 → 44 */
.mz .ed-biliyorum, .mz button.ed-biliyorum { letter-spacing: -0.008em; }                             /* 15 px: −0,008 em */
.g-buyuk .ed-afis-metin b { line-height: 28px; }                                      /* büyük yazıda 19/28 */
.ed-section-head .mz-sub::first-letter, .ed-kontrol-ust .mz-sub::first-letter { text-transform: uppercase; }   /* "son 60 gün" → "Son 60 gün" */
/* tonlu dolgu üstü yazı = standart on-tone (açık beyaz, koyu siyah): beyaz / yeşil 2,22 ve koyuda açık yazı / sarı 1,30 geçmiyordu */
.ed-secenek.dogru .harf { background: var(--mz-ok-text); color: var(--mz-on-tone); }
.ed-secenek.yanlis .harf { background: var(--mz-danger-text); color: var(--mz-on-tone); }
.mz .ed-sembol--bil, .mz .ed-sembol--emin, .mz .ed-sembol--belirsiz, .mz .ed-sembol--tekrar { color: var(--mz-on-tone); }
.ed-ilerleme i.simdi { background: var(--mz-primary); }                               /* bağlantı rengi zemin olmaz → birincil (saydamlık aynı) */
.mz .ed-tus--gonder:not(:disabled) { background: var(--mz-primary-fill); }          /* koyuda beyaz / #0A84FF 3,65 → dolgu mavisi 4,7 */
.ed-seri-gun { margin-left: -5px; margin-right: -5px; }   /* ilk gün dairesi kartın sol boşluğunda (20) — üst = sol (köşeye orantılı, sahip 10-08) */
.ed-sahne .ed-sik-hata { padding: 13px 14px; }   /* köşe 16: üst 13 ≈ sol 14 (±2, ≥ r × 0,8); yan 14 Edu'nunkiyle aynı → satır sayısı değişmez, ders ekranı sığar (K-17, 10-08) */
.ed-onizleme { padding: 16px; }   /* görünüm önizlemesi: köşe 20 → iç boşluk 16 = 20 × 0,8, dört yanda eşit (köşeye orantılı, sahip 10-08) */
.ed-bilmiyorum-btn { border: 1.5px solid transparent; background: var(--mz-fill); }   /* kesik çizgi standart dışı → gri dolgu, çerçevesiz (şıktan ayrı: şıklar yüzey rengi) */
.ed-bilmiyorum-btn.secili { border-color: var(--mz-primary); background: var(--mz-fill); }   /* seçili = şıklarla aynı durum dili */
/* --- denetim 2 (10-08) --- */
.ed-net .mz-input, .ed-niyet-cumle .mz-input, .ed-kontrol-not .mz-input, .ed-parola .mz-input { background: var(--mz-field-bg); box-shadow: inset 0 0 0 1px var(--mz-field-border); }   /* bütün metin/sayı alanları kütüphane alanı: dolgu + 1 px gri kenar (Tarih/Ad ile aynı aile) */
.mz .ed-guven > .ed-guven-btn.mz-btn--plain { background: var(--mz-fill); box-shadow: none; color: var(--mz-text); }   /* güven düğmeleri "Bilmiyorum" ile aynı aile: gri dolgu, kenarsız */
.mz .ed-guven > .ed-guven-btn.mz-btn--plain.secili { background: var(--mz-fill); box-shadow: inset 0 0 0 1.5px var(--mz-primary); }   /* seçili = şıklarla aynı durum dili */
.ed-ab-cevap .mz-btn:not(.mz-btn--plain) { background: var(--mz-fill); color: var(--mz-text); }   /* A / B eşit iki seçenek: ekranda iki dolu mavi ana düğme yerine iki gri seçim düğmesi (§6.1) */
details.ed-card > summary { gap: 12px; }
details.ed-card > summary::after { content: ''; flex: none; width: 8px; height: 14px; margin: 0 2px 0 auto; background: var(--mz-muted); transform: rotate(90deg); transition: transform var(--mz-dur-out, .2s) ease;
  -webkit-mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 8 14'%3E%3Cpath d='M1 1l6 6-6 6' fill='none' stroke='%23000' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E") center/contain no-repeat;
          mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 8 14'%3E%3Cpath d='M1 1l6 6-6 6' fill='none' stroke='%23000' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E") center/contain no-repeat; }   /* açılma işareti (iOS aşağı ok) */
details.ed-card[open] > summary::after { transform: rotate(-90deg); }
.ed-harita-konu > summary::after { display: none; }   /* harita satırının kendi oku var */
details.ed-card.ed-katla > summary { color: var(--mz-text); font-weight: 640; }   /* komşu katlanır kartlarla aynı özet dili (biri mavi biri siyah değil) */
details.ed-card { border-radius: 16px; }   /* tek satırlık katlanır kart 62 px: oranlı köşe r(62) ≈ 16 (2.5.0) */
details.ed-card[open] { border-radius: var(--mz-r-card); }
/* --- yazı uyum katmanı (tasima/yazi_katmani.py ile stil.css'ten üretildi: boy/satır/harf aralığı/ağırlık ölçeğe) --- */
/* --- eş merkezli köşe (sahip 10-11, 2.5.1 §10.7): her yuvarlak kap kendi --mz-r-ic'ini tanımlar; iç denetim = max(dış − iç boşluk, 6) --- */
.ed-onizleme .ed-card, .ed-onizleme .ed-secenek { border-radius: var(--mz-r-ic); }   /* 2.5.2: eş merkezli kural iptal → kart içi sabit 16 (sahip Labs Tune) */
.ed-card .ed-seg, .ed-card .ed-seg button, .ed-kontrol .ed-seg, .ed-kontrol .ed-seg button { border-radius: var(--mz-r-ic); }
.ed-card #basla, .ed-card .mz-btn, .ed-kontrol .mz-btn { border-radius: var(--mz-r-ic); }
.ed-card .mz-input, .ed-kontrol .mz-input { border-radius: var(--mz-r-field); }   /* yazı alanı 13 */
details.ed-card > .mz-btn, details.ed-card a.mz-btn { border-radius: var(--mz-r-ic); }
/* --- K-17 sığma, kenar 24 ile (2.5.1, 10-11): ekran kenarı 24'e çıkınca 360×780'de paragraf soruları 6–56 px taştı. Yazı küçülmez
   (S28), kenar daralmaz (sahip: "kenara değen yazı"); yalnız küçük ve kısa ekranda ders sahnesinin dikey ritmi sıkılaşır. --- */
@media (max-width: 380px) and (max-height: 820px) {
  .ed-sahne .ed-secenek { min-height: 48px; padding: 9px 12px; gap: 10px; }
  .ed-sahne .ed-secenekler { gap: 6px; }
  .ed-sahne .ed-soru { margin-bottom: 10px; }
  .ed-sahne-alt { padding-top: 8px; gap: 8px; }
}
/* --- Lens sonra-turu (10-11) --- */
.mz-list .mz-input, .mz-list .ed-kisa { border-radius: var(--mz-r-field); }   /* satır içi alan: yazı alanı köşesi 13 (2.5.2) */
.ed-onizleme { padding: 18px; }   /* yazı–kenar ≥ 18 */
.ed-yazi p > a:only-child { position: relative; } .ed-yazi p > a:only-child::after { content: ""; position: absolute; inset: -12px -4px; }   /* tek bağlantılı satır dokunma ≥ 44 */
/* --- Metastaz Design 2.5.2 (sahip Labs Tune 5 tur, 2026-10-11; tablo docs/tasarim/tune-sonuc-2026-10-11.md) --- */
/* kart: yan 21 (2.5.3 = satır yan), üst/alt OPTİK 20/23 (CSS 15/18 + yazı dışı ilk/son öğede 5), kart → kart 21 */
.ed-card { padding: var(--mz-pad-top) var(--mz-pad) var(--mz-pad-bottom); margin-bottom: var(--mz-gap-stack); }
.ed-card > :first-child:is(.mz-btn, .mz-actions, .mz-seg, .ed-seg, .mz-input, .mz-list, img, video, figure) { margin-top: var(--mz-pad-optik); }
.ed-card > :last-child:is(.mz-btn, .mz-actions, .mz-seg, .ed-seg, .mz-input, .mz-list, img, video, figure) { margin-bottom: var(--mz-pad-optik); }
/* bölüm başlığı 18 / 680 gri; önceki grup → başlık 31, başlık → kutu 9; satır metniyle hizalı */
.ed-section-head { margin: 31px 0 9px; padding: 0 var(--mz-row-pad); }
.ed-section-head .mz-title3 { font-size: 18px; line-height: 23px; font-weight: var(--mz-w-section); letter-spacing: -.012em; color: var(--mz-muted); }
.ed-section { margin-top: 31px; margin-bottom: 9px; }
/* ders (okuma) ekranı — Tune tur 4: yazı 16 / %132 (21) 560, başlık 23 / 10, paragraf → paragraf 16, madde → madde 9 */
.ed-ders-kip .ed-sahne { font-size: 16px; line-height: 21px; font-weight: var(--mz-w-body); letter-spacing: .002em; }
.ed-ders-kip .ed-adim-baslik { font-size: 23px; line-height: 28px; font-weight: 800; letter-spacing: -.018em; margin: 0 0 var(--mz-ders-gap-title); }
.ed-ders-kip .ed-sahne p { margin: 0 0 var(--mz-ders-gap-p); }
.ed-ders-kip .ed-sahne .ed-liste { margin-bottom: var(--mz-ders-gap-p); }
.ed-ders-kip .ed-sahne .ed-liste li { margin-bottom: var(--mz-ders-gap-li); }
.ed-ders-kip .ed-sahne .ed-neden, .ed-ders-kip .ed-sahne .ed-sik-hata { font-size: 16px; line-height: 21px; letter-spacing: .002em; }
.ed-ders-kip .ed-sahne .ed-sik-hata { padding: 14px 20px; }   /* optik üst ≈ 19 / yan 20 (Lens köşe-boşluğu, yazı–kenar ≥ 18) */
@media (max-width: 380px) and (max-height: 820px) { .ed-ders-kip .ed-sahne .ed-sik-hata { padding-top: 13px; padding-bottom: 13px; } .ed-ders-kip .ed-sahne .ed-soru { margin-bottom: 8px; } }   /* K-17 (kaydırmasız ders): 360×780 uzun paragraf sorusu gövde 560 ile (daha geniş harf → şık satırı) +2 taşıyordu → küçük-kısa ekranda soru → şıklar 8 (önce 10) */
.ed-sahne .ed-yeni { padding: var(--mz-pad-top) 20px var(--mz-pad-bottom); }   /* kavram kartı: yan 20, optik üst/alt ≈ 20/23 */
details.ed-card > summary { padding-top: 7px; }   /* optik üst 20 / yan 21 (2.5.3; önce 11 → 24/23) */
.ed-card.ed-kilit, .ed-card.ed-ozet { padding-top: var(--mz-pad); }   /* simgeyle başlayan kart: üst = yan 21 (optik kural yalnız yazıyla başlayan kartta) */
.g-buyuk .ed-ders-kip .ed-sahne { font-size: 19px; line-height: 25px; }   /* büyük yazı seçeneği: aynı %132 oran */
.g-buyuk .ed-ders-kip .ed-sahne .ed-neden, .g-buyuk .ed-ders-kip .ed-sahne .ed-sik-hata { font-size: 19px; line-height: 25px; }
/* ---- Design 2.5.4 (2026-10-11 gece; denetçi 2.5.3 §5 + sahip Puanla) ---- */
.ed-kisa, .ed-net .mz-input { height: var(--mz-field-h, 47px); }   /* yazı alanı 47 / 13 (Tune; önce 44) */
.ed-secenek, .ed-bilmiyorum-btn { min-height: var(--mz-control, 55px); }   /* şık ve "Bilmiyorum" 55 (önce 52) */
/* Hata tekrarı boş durumu: simge + başlık + metin + düğme, boş alanda optik merkez (üstte biraz fazla hava değil, biraz az) */
.ed-tekrar-bos { min-height: calc(100dvh - var(--mz-sayfa-ust, 50px) - 35px - 31px - var(--mz-tabbar, 64px) - 64px); justify-content: center; padding: 0 var(--mz-pad) 10vh; }
.ed-tekrar-bos > .mz-tone { width: 56px; height: 56px; margin-bottom: var(--mz-gap-durum-icon, 28px); }
.ed-tekrar-bos > .mz-tone .ed-i { width: 28px; height: 28px; }
.ed-tekrar-bos .mz-empty-text { margin-top: var(--mz-gap-durum-text, 11px); }
.ed-tekrar-bos > .mz-btn { width: auto; min-width: 220px; margin-top: 28px; }
.ed-basla { padding-left: var(--mz-pad, 21px); }   /* Başla kartının yazısı kart/satır hattında 21 (önce 20: 1 px kayık, Lens hiza) */
/* ---- Design 2.5.5 (denetçi 254 §6.6) ---- */
.ed-ab .mz-label { margin: 0 0 7px; }   /* Görünüm: A/B etiketi içerik hattında (önce 4 px içeride: 29 ↔ 25) */
.ed-ab { gap: var(--mz-gap-stack, 21px); }
li > a.mz-link { position: relative; } li > a.mz-link::after { content: ""; position: absolute; inset: -2px 0; }   /* rehber kaynak bağlantıları dokunma ≥ 44 (görünen 42 + 2 × 2) */
/* ---- Design 2.5.5b (koordinatör 10-12: Edu Lens'te 9'a; gerçek bulgular) ---- */
.ed-secenek .harf { text-align: center; }   /* şık harfi rozetinde ortalı (A/E genişlik farkı "hizasız" sayılmasın) */

.mz-row-sub, .ed-yazi p { text-wrap: pretty; } .ed-yazi li { text-wrap: balance; }
/* Lens nobet-1021 (#872): kaynak bağlantısı tek satırda da dokunma ≥ 44 (görünüm aynı); liste hattı kart içi yazıyla aynı (25 + 21 = 46); başlık dengeli */
.ed-yazi li > a.mz-link::after { inset: min(-2px, calc(50% - 22px)) 0; }
.ed-yazi ul { padding-left: 21px; }
.ed-yazi h2 { text-wrap: balance; }
label.mz-row .mz-row-sub { text-wrap: balance; }   /* kısa satır açıklaması: son satırda tek sözcük kalmasın */
.ed-stat b { font-weight: 740; }
.ed-stat span { letter-spacing: 0em; }
.ed-count b { font-size: 29px; line-height: 35px; font-weight: 740; }
.ed-plan .ed-dk { line-height: 20px; letter-spacing: -0.008em; }
.ed-ders h2 { font-weight: 740; }
.ed-soru { letter-spacing: -0.012em; }
.ed-secenek .harf { line-height: 20px; letter-spacing: -0.008em; }
.ed-net-bas { line-height: 17px; letter-spacing: 0em; }
.ed-hata { line-height: 20px; letter-spacing: -0.008em; }
.ed-yazi h2 { letter-spacing: -0.012em; font-weight: 740; }
.ed-bos b { font-weight: 740; }
.mz-nav-title.ed-nav-iki { line-height: 20px; letter-spacing: -0.008em; }
.ed-mavi { font-weight: 500; }
.ed-basla-ust { letter-spacing: -0.008em; }
.ed-basla-ad { font-weight: 740; }
.ed-basla-alt { letter-spacing: -0.008em; }
.g-buyuk body.mz, .ed-onizleme.g-buyuk { line-height: 25px; letter-spacing: -0.012em; }
.g-buyuk .mz-body, .g-buyuk .ed-ders p, .ed-onizleme.g-buyuk .mz-body { line-height: 25px; letter-spacing: -0.012em; }
.g-buyuk .ed-soru { letter-spacing: -0.012em; }
.g-buyuk .ed-secenek { line-height: 25px; letter-spacing: -0.012em; }
.g-buyuk .mz-sub, .ed-onizleme.g-buyuk .mz-sub { letter-spacing: -0.012em; }
.ed-afis-metin span { letter-spacing: -0.008em; }
.ed-gorev-dk { font-weight: 740; }
.ed-secim-k b { letter-spacing: -0.008em; }
.ed-secim-k span { letter-spacing: 0em; }
.ed-niyet { letter-spacing: -0.008em; }
.ed-yol-alt { letter-spacing: -0.008em; }
.ed-yol-alt small { font-weight: 500; }
.ed-seri-gun span { letter-spacing: 0em; }
.ed-gorev-mini b { letter-spacing: -0.012em; font-weight: 740; }
.ed-tanis-madde { font-weight: 740; }
.ed-odak-sayac { line-height: 68px; font-weight: 740; }
.ed-hafta-grafik span { letter-spacing: 0em; }
.ed-yol-gidis { letter-spacing: -0.008em; }
.ed-yol-gidis b { font-weight: 740; }
.ed-yol-gidis small { line-height: 17px; letter-spacing: 0em; }
.ed-aralik-eksen { letter-spacing: 0em; }
.ed-gerek .ed-count b { letter-spacing: -0.02em; }
.ed-puan button { line-height: 22px; letter-spacing: -0.012em; }
.ed-uyku button { line-height: 20px; letter-spacing: -0.008em; }
.ed-kontrol-not summary { line-height: 20px; letter-spacing: -0.008em; }
.ed-nazik p b { font-weight: 740; }
.ed-parola .ed-hata { line-height: 17px; letter-spacing: 0em; }
.ed-rapor .ed-rapor-uyari { letter-spacing: -0.008em; }
.ed-rapor-ozet b { letter-spacing: -0.012em; font-weight: 740; }
.ed-rapor-ozet span { letter-spacing: 0em; }
.ed-tablo { letter-spacing: 0em; }
@media print { .mz-head .mz-large-title { line-height: 25px; letter-spacing: -0.012em; } }
@media print { .ed-tablo { font-size: 11px; line-height: 13px; letter-spacing: 0em; } }
.ed-cz-eksen { line-height: 13px; letter-spacing: 0em; }
.ed-rapor-bulgu .mz-textbtn { line-height: 20px; letter-spacing: -0.008em; }
.ed-kayit-durum { line-height: 20px; letter-spacing: -0.008em; font-weight: 640; }
.ed-sahne { letter-spacing: -0.012em; }
.ed-adim-baslik { font-size: 23px; line-height: 28px; font-weight: 740; }
.ed-not { letter-spacing: -0.012em; }
.ed-yeni-etiket { letter-spacing: 0em; }
.ed-yeni-isaret { font-size: 29px; line-height: 35px; letter-spacing: -0.02em; font-weight: 740; }
.ed-yeni-okunus { letter-spacing: -0.012em; }
.ed-yeni-ornek-ad { line-height: 20px; letter-spacing: -0.008em; }
.ed-yeni-kucuk { font-weight: 500; }
.ed-ornek-soru { letter-spacing: -0.012em; }
.ed-cozum > li::before { line-height: 20px; }
.ed-islem { letter-spacing: -0.012em; }
.ed-neden-k { letter-spacing: -0.012em; }
.ed-cozum > li.ed-gizli { letter-spacing: -0.012em; }
.ed-sahne .ed-soru { letter-spacing: -0.012em; }
.ed-sahne .ed-soru--kucuk { letter-spacing: -0.012em; }
.ed-sahne .ed-secenek { line-height: 25px; letter-spacing: -0.012em; }
.ed-sahne .ed-bilmiyorum-btn { line-height: 25px; letter-spacing: -0.012em; }
.ed-sonuc { line-height: 25px; letter-spacing: -0.012em; }
.ed-ipucu { letter-spacing: -0.012em; }
.ed-sahne .ed-neden { letter-spacing: -0.012em; }
.ed-sahne .ed-sik-hata { letter-spacing: -0.012em; }
.ed-taktik { letter-spacing: -0.012em; }
.ed-taktik-etiket { letter-spacing: 0em; }
.ed-taktik-kaynak { letter-spacing: 0em; }
.ed-sonuc--senin { font-weight: 500; }
.ed-cozum--cozum .ed-islem { letter-spacing: -0.012em; }
/* 10-21 çift dil (#1082): sekme köklerinde çubuk kapsülü (tanıtımdaki .ed-dil ile aynı ölçü), EN içerik notu */
.ed-dil-cubuk{display:inline-flex;align-items:center;gap:2px;height:32px;padding:2px;border-radius:var(--mz-r-full);background:var(--mz-ctl-track);pointer-events:auto;vertical-align:middle}
.ed-dil-cubuk button{position:relative;appearance:none;-webkit-appearance:none;border:0;margin:0;background:transparent;font:inherit;font-size:13px;line-height:18px;font-weight:600;letter-spacing:.02em;color:color-mix(in srgb,var(--mz-text) 58%,transparent);min-width:30px;height:28px;padding:0 7px;border-radius:var(--mz-r-full);cursor:pointer}
.ed-dil-cubuk button[aria-pressed="true"]{background:var(--mz-seg-on);color:var(--mz-text);box-shadow:0 1px 2px rgba(0,0,0,.14)}
.ed-dil-cubuk button::after{content:'';position:absolute;inset:-8px -1px}
.mz-nav > span:last-child:has(> .ed-dil-cubuk){display:flex;justify-content:flex-end;align-items:center}
.ed-dil-not{margin:0 0 8px}
