/* NYU Deep Learning — LeCun & Canziani (DLSP20) Türkçe — NYU Violet + Gold teması */
/* Renk paleti (Deniz kararı 2026-06-02): NYU Violet #57068C + gold #d4a017 */

:root {
  --bs-primary: #57068c;       /* NYU Violet — birincil */
  --bs-info: #d4a017;          /* gold — accent */
  --bs-success: #7b2cbf;       /* parlak violet */
  --bs-warning: #b8860b;       /* koyu gold (uyarı) */
  --bs-danger: #b56034;        /* koyu turuncu (tehlike) */

  /* NYU paleti */
  --nyu-violet: #57068c;       /* birincil — başlık/çerçeve/link */
  --nyu-violet-dark: #3d0463;  /* koyu violet — vurgu / gradyan */
  --nyu-violet-mid: #7b2cbf;   /* orta violet — ikincil vurgu */
  --nyu-violet-soft: #9b6dc7;  /* soluk violet — pasif kenar */
  --nyu-violet-bg: #f4eefa;    /* açık violet — callout/math arka plan */
  --nyu-gold: #d4a017;         /* gold accent */
  --nyu-gold-dark: #a87d0a;    /* koyu gold — vurgu */
  --nyu-gold-bg: #fbf6e9;      /* açık gold — callout arka plan */
  --nyu-text: #2a2535;         /* deep neutral (hafif violet tint) — gövde metni */
  --nyu-ink: #1e1a2e;          /* en koyu — başlık metni */
}

/* Kitap gövdesi */
body {
  line-height: 1.7;
  color: var(--nyu-text);
}

/* Başlık tipografisi */
h1, h2, h3, h4 {
  font-weight: 600;
  letter-spacing: -0.01em;
}

h1 { color: var(--nyu-ink); }
h2 {
  color: var(--nyu-violet);
  border-bottom: 2px solid #ece3f4;
  padding-bottom: 0.3em;
}
h3 { color: var(--nyu-violet-dark); }
h4 { color: var(--nyu-violet-mid); }

/* Bağlantılar */
a {
  color: var(--nyu-violet);
  text-decoration-thickness: 1px;
  text-underline-offset: 2px;
}
a:hover {
  color: var(--nyu-gold-dark);
}

/* Callout renk vurguları */
/* tip = Builder Notu / İleriye köprü → gold */
.callout-tip {
  border-left-color: var(--nyu-gold);
}
.callout-tip > .callout-header {
  background-color: rgba(212, 160, 23, 0.12);
}

/* note = Geriye köprü / bölüm bilgisi → violet */
.callout-note {
  border-left-color: var(--nyu-violet);
}
.callout-note > .callout-header {
  background-color: rgba(87, 6, 140, 0.08);
}

/* warning = anakronizm / dikkat → koyu gold */
.callout-warning {
  border-left-color: var(--bs-warning);
}
.callout-warning > .callout-header {
  background-color: rgba(184, 134, 11, 0.12);
}

/* important = Tek Cümle / büyük sentez → koyu violet */
.callout-important {
  border-left-color: var(--nyu-violet-dark);
}
.callout-important > .callout-header {
  background-color: rgba(61, 4, 99, 0.12);
}

/* Math blocks — sol kenar gold (accent), arka plan açık violet */
.math.display {
  background: linear-gradient(to right, var(--nyu-violet-bg), #ffffff);
  padding: 1em 1.2em;
  border-radius: 6px;
  border-left: 3px solid var(--nyu-gold);
  overflow-x: auto;
}

/* Inline math hafif vurgu */
.math.inline {
  padding: 0 2px;
}

/* Kod blokları */
div.sourceCode {
  border-radius: 6px;
  border: 1px solid #e7ddf0;
}

/* Tablo modernize — thead violet */
table {
  border-collapse: collapse;
  margin: 1em 0;
}
table thead tr {
  background: var(--nyu-violet);
  color: white;
}
table th, table td {
  padding: 0.6em 1em;
  border-bottom: 1px solid #e7ddf0;
}
table tbody tr:nth-child(even) {
  background: #faf7fd;
}

/* Quote — sol kenar gold, arka plan açık violet */
blockquote {
  border-left: 4px solid var(--nyu-gold);
  background: var(--nyu-violet-bg);
  padding: 0.8em 1.2em;
  margin: 1.2em 0;
  font-style: italic;
  border-radius: 0 4px 4px 0;
}

/* Figür taşma koruması (ETAP C ortak tuzak #1): geniş 2/4-panel figürler
   metin kolonundan taşmasın — dar ekranda kolona sığsın. ZORUNLU. */
.cell-output-display img,
.quarto-figure img,
figure img,
img.figure-img {
  max-width: 100%;
  height: auto;
}

/* Şekil başlıkları */
figcaption {
  font-size: 0.9em;
  color: #5a5168;
  font-style: italic;
  margin-top: 0.4em;
}

/* Sidebar */
.sidebar-title {
  font-weight: 600;
  color: var(--nyu-ink);
}

/* Kapak header */
.quarto-title-block .quarto-title h1.title {
  color: var(--nyu-ink);
  font-weight: 700;
}
.quarto-title-block .subtitle {
  color: #5a5168;
  font-weight: 400;
}

/* İki-hocalı ritim: LeCun (violet) vs Canziani (gold) ayrımı için yardımcı sınıflar */
/* Bölüm başlıklarındaki (LeCun) / (Canziani) etiketleri doğal akışta kalır;
   istenirse span.hoca-lecun / span.hoca-canziani ile renklendirilebilir. */
.hoca-lecun { color: var(--nyu-violet); font-weight: 600; }
.hoca-canziani { color: var(--nyu-gold-dark); font-weight: 600; }

/* ETAP D5 mobile fix — dar viewport'ta math/tablo yatay taşması (desktop etkilenmez) */
@media (max-width: 767px) {
  main table, .cell-output-display table { display: block; overflow-x: auto; max-width: 100%; }
  mjx-container { overflow-x: auto; overflow-y: hidden; max-width: 100%; }
  mjx-container:not([display="true"]) { display: inline-block; max-width: 100%; overflow-x: auto; overflow-y: hidden; }
}
