@charset "UTF-8";
/* =====================================================================
   Müfredat Akademi — Çerez / Analitik Onayı  (R25.1 yeniden tasarım)
   ---------------------------------------------------------------------
   R25'te bu kutu mobilde ekranın yarısını kaplıyordu. İki sebebi vardı
   ve ikisi de burada kapatıldı:

   1) BAŞLIK GLOBAL KURALA YENİLİYORDU.
      `ma-consent.css` sayfaların <head> bloğunda `ma-theme.css`'ten
      ÖNCE yüklenir. ma-theme.css'in 160. satırındaki
      `h2 { font-size: clamp(24px,2.4vw,34px) }` kuralı, buradaki
      `.ma-cc-banner h2 { font: 700 16px }` kuralını eziyordu; başlık
      masaüstünde ~34px çıkıyordu.
      ÇÖZÜM: kutu artık <h2> KULLANMIYOR. Başlık `.ma-cc-t` bir
      <div>'dir; hiçbir global başlık kuralı ona dokunamaz. Yükleme
      sırasına bağımlılık tamamen ortadan kalktı.

   2) MOBİLDE BUTONLAR TAM GENİŞLİK BLOKLARA DÖNÜŞÜYORDU.
      Eski `@media (max-width:520px)` kuralı `flex-direction:column` +
      `width:100%` veriyordu; üç buton alt alta üç dev şerit oluyordu.
      ÇÖZÜM: butonlar mobilde de tek satırda kalır.

   KALDIRILAN: `.ma-cc-fab` — onay verildikten sonra sayfanın sol altında
   duran kalıcı çerez düğmesi (istek md. 5, kesin ürün kararı). Tercih
   footer'daki "Çerez Tercihleri" bağlantısından yeniden açılır.
   ===================================================================== */
.ma-cc, .ma-cc * { box-sizing: border-box; }

/* ── Onay kartı ──────────────────────────────────────────────────── */
.ma-cc-banner {
  position: fixed;
  right: 16px;
  bottom: 16px;
  left: auto;
  z-index: 2147483000;
  width: min(400px, calc(100vw - 32px));
  background: #fff;
  color: #16243a;
  border: 1px solid #e1e8f2;
  border-radius: 16px;
  box-shadow: 0 10px 34px -8px rgba(11, 31, 58, .22), 0 2px 8px rgba(11, 31, 58, .06);
  padding: 15px 16px 13px;
  font: 400 13px/1.55 Inter, system-ui, -apple-system, "Segoe UI", sans-serif;
  animation: ma-cc-in .24s cubic-bezier(.22, .7, .3, 1);
}
@keyframes ma-cc-in { from { opacity: 0; transform: translateY(10px); } to { opacity: 1; transform: none; } }

/* Başlık bilerek <h2> DEĞİL — yukarıdaki 1. maddeye bakınız. */
.ma-cc-t {
  font: 650 14px/1.35 "Plus Jakarta Sans", Inter, system-ui, sans-serif;
  color: #0b1f3a;
  margin: 0 0 4px;
  letter-spacing: -.01em;
}
.ma-cc-banner p { margin: 0 0 12px; color: #4a5b73; font-size: 12.5px; line-height: 1.55; }
.ma-cc-banner a { color: #1552c8; text-decoration: underline; text-underline-offset: 2px; }

.ma-cc-actions { display: flex; flex-wrap: wrap; gap: 8px; align-items: center; }

.ma-cc-btn {
  appearance: none; -webkit-appearance: none;
  border: 1px solid transparent;
  border-radius: 9px;
  padding: 8px 15px;
  font: 600 12.5px/1 Inter, system-ui, sans-serif;
  cursor: pointer;
  white-space: nowrap;
  transition: background .15s, border-color .15s;
}
.ma-cc-btn:focus-visible { outline: 3px solid #a9c4f5; outline-offset: 2px; }
.ma-cc-primary { background: #1552c8; color: #fff; }
.ma-cc-primary:hover { background: #1146ac; }
.ma-cc-ghost { background: #eff3fb; color: #33455f; border-color: #e1e8f2; }
.ma-cc-ghost:hover { background: #e5ecf8; }
.ma-cc-link {
  background: none; border: 0; color: #657590;
  padding: 8px 4px; cursor: pointer;
  font: 600 12.5px/1 Inter, system-ui, sans-serif;
  text-decoration: underline; text-underline-offset: 2px;
}
.ma-cc-link:hover { color: #1552c8; }
.ma-cc-actions .ma-cc-spacer { flex: 1 1 auto; }

/* ── Tercih penceresi ────────────────────────────────────────────── */
.ma-cc-overlay {
  position: fixed; inset: 0; z-index: 2147483600;
  background: rgba(8, 20, 45, .48);
  display: flex; align-items: center; justify-content: center;
  padding: 16px;
  animation: ma-cc-fade .18s ease;
}
@keyframes ma-cc-fade { from { opacity: 0; } to { opacity: 1; } }
.ma-cc-modal {
  background: #fff; color: #16243a;
  width: 100%; max-width: 420px;
  border-radius: 16px;
  box-shadow: 0 24px 60px -18px rgba(11, 31, 58, .4);
  padding: 18px;
  font: 400 13px/1.55 Inter, system-ui, sans-serif;
  max-height: 84vh; overflow: auto;
}
.ma-cc-modal .ma-cc-t { font-size: 15px; margin-bottom: 3px; }
.ma-cc-modal > p { margin: 0 0 4px; color: #4a5b73; font-size: 12.5px; }

/* Kart bazlı satırlar — uzun hukuk metni YOK, politikaya bağlantı var. */
/* R25.1 — sınıf adı bilerek "-row" DEĞİL.
   ma-theme.css'in 647. satırındaki `[class*="-row"]{flex-wrap:wrap}`
   kuralı (≤520px) eski `.ma-cc-row` adına takılıyordu: anahtar ve
   "Her zaman açık" rozeti metnin ALTINA düşüyor, pencere gereksiz
   uzuyordu. `nowrap` ayrıca açıkça yazıldı — ad değişse de davranış
   bir daha global bir kurala teslim edilmesin. */
.ma-cc-line {
  display: flex; flex-wrap: nowrap; gap: 12px; align-items: center;
  margin-top: 10px; padding: 11px 12px;
  background: #f7f9fd; border: 1px solid #eaf0f8; border-radius: 12px;
}
.ma-cc-ltx { flex: 1 1 auto; min-width: 0; }
.ma-cc-ltx strong { display: block; font-size: 13px; font-weight: 650; color: #0b1f3a; }
.ma-cc-ltx span { display: block; margin-top: 1px; color: #657590; font-size: 11.5px; line-height: 1.45; }
.ma-cc-always { flex: 0 0 auto; font: 600 11px/1 Inter, sans-serif; color: #0e9e6e; background: #e8f7f1; border-radius: 999px; padding: 6px 10px; }

/* Anahtar */
.ma-cc-switch { position: relative; width: 42px; height: 24px; flex: 0 0 auto; }
.ma-cc-switch input { position: absolute; opacity: 0; width: 100%; height: 100%; margin: 0; cursor: pointer; }
.ma-cc-slider { position: absolute; inset: 0; background: #cbd5e1; border-radius: 999px; transition: background .18s; }
.ma-cc-slider::before {
  content: ""; position: absolute; top: 3px; left: 3px;
  width: 18px; height: 18px; background: #fff; border-radius: 50%;
  transition: transform .18s; box-shadow: 0 1px 3px rgba(0, 0, 0, .22);
}
.ma-cc-switch input:checked + .ma-cc-slider { background: #1552c8; }
.ma-cc-switch input:checked + .ma-cc-slider::before { transform: translateX(18px); }
.ma-cc-switch input:focus-visible + .ma-cc-slider { outline: 3px solid #a9c4f5; outline-offset: 2px; }

.ma-cc-policy { margin: 12px 0 0; font-size: 11.5px; color: #657590; }
.ma-cc-modal-actions { display: flex; gap: 8px; margin-top: 14px; align-items: center; }
.ma-cc-modal-actions .ma-cc-spacer { flex: 1 1 auto; }

/* ── Koyu tema ───────────────────────────────────────────────────── */
@media (prefers-color-scheme: dark) {
  .ma-cc-banner, .ma-cc-modal { background: #0f1b30; color: #e7eefb; border-color: #24344f; }
  .ma-cc-t { color: #eaf1ff; }
  .ma-cc-banner p, .ma-cc-modal > p { color: #a9b8d4; }
  .ma-cc-ghost { background: #1c2a44; color: #dbe6f7; border-color: #27384f; }
  .ma-cc-ghost:hover { background: #243452; }
  .ma-cc-line { background: #14223a; border-color: #24344f; }
  .ma-cc-ltx strong { color: #eaf1ff; }
  .ma-cc-ltx span, .ma-cc-policy, .ma-cc-link { color: #9fb0cc; }
}

/* ── Mobil ───────────────────────────────────────────────────────────
   Alt kart tam genişliğe yaklaşır ama YÜKSEKLİĞİ artmaz. Mobil alt
   navigasyon (.mau-tabbar, 64px) ve güvenli alan kadar yukarıda durur;
   ikisi asla üst üste binmez. */
@media (max-width: 640px) {
  .ma-cc-banner {
    left: 10px; right: 10px; width: auto;
    bottom: calc(12px + 64px + env(safe-area-inset-bottom, 0px));
    padding: 13px 14px 11px;
    border-radius: 14px;
  }
  .ma-cc-actions { gap: 7px; }
  .ma-cc-btn { padding: 8px 13px; font-size: 12.5px; }
  .ma-cc-actions .ma-cc-spacer { display: none; }
  .ma-cc-link { margin-left: auto; }
  .ma-cc-modal { max-width: none; padding: 16px; }
}

/* Mobil alt navigasyonu olmayan sayfalarda kart en alta iner. */
body:not(.mau-shell) .ma-cc-banner {
  bottom: calc(16px + env(safe-area-inset-bottom, 0px));
}
