/* Prizma Bahçesi — herkese açık site. Tek CSS, dış font/CDN yok.
   Görsel dil: kristal adalar, aurora renkleri (mor → turkuaz → kehribar), cam paneller.
   Erişilebilirlik: sistem yazı tipi, yeterli kontrast, görünür odak, hareket yok. */

:root {
  color-scheme: light dark;
  --zemin: #f6f5fb;
  --kart: #ffffff;
  --metin: #1d1a33;
  --metin-ikincil: #58547a;
  --cizgi: #dcd8ee;
  --vurgu: #5b46e0;
  --vurgu-koyu: #4634b8;
  --turkuaz: #1a9e93;
  --kehribar: #b8811a;
  --isaret-zemin: #fff1b8;
  --isaret-cizgi: #d9a400;
  --uyari-zemin: #fff7e6;
  --uyari-cizgi: #f0c27a;
  --kod-zemin: #eeebf8;
  --golge: 0 12px 34px -18px rgba(40, 28, 120, 0.35);
  --aurora: linear-gradient(90deg, #6f5bff, #46d7c8 55%, #ffd479);
  --govde-genislik: 74ch;
  --genis-genislik: 1120px;
}

@media (prefers-color-scheme: dark) {
  :root {
    --zemin: #0e0c22;
    --kart: #17143a;
    --metin: #e9e6f8;
    --metin-ikincil: #aaa5cc;
    --cizgi: #2c2858;
    --vurgu: #a597ff;
    --vurgu-koyu: #c2b8ff;
    --turkuaz: #46d7c8;
    --kehribar: #ffd479;
    --isaret-zemin: #4a3a00;
    --isaret-cizgi: #ffd479;
    --uyari-zemin: #2a2110;
    --uyari-cizgi: #8a6a2a;
    --kod-zemin: #221e4d;
    --golge: 0 12px 34px -18px rgba(0, 0, 0, 0.8);
  }
}

* { box-sizing: border-box; }

html { -webkit-text-size-adjust: 100%; }

body {
  margin: 0;
  background: var(--zemin);
  color: var(--metin);
  font-family: system-ui, -apple-system, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif;
  font-size: 1.0625rem;
  line-height: 1.6;
  display: flex;
  flex-direction: column;
  min-height: 100vh;
}

a { color: var(--vurgu); text-decoration-thickness: 0.08em; text-underline-offset: 0.15em; }
a:hover { color: var(--vurgu-koyu); }
a:focus-visible, button:focus-visible, summary:focus-visible {
  outline: 3px solid var(--kehribar);
  outline-offset: 3px;
  border-radius: 4px;
}

code { font-family: ui-monospace, SFMono-Regular, Menlo, Consolas, monospace; font-size: 0.92em; background: var(--kod-zemin); padding: 0.1em 0.35em; border-radius: 4px; overflow-wrap: anywhere; }

hr { border: 0; border-top: 1px solid var(--cizgi); margin: 2rem 0; }

/* Atla bağlantısı */
.atla { position: absolute; left: 1rem; top: -4rem; background: var(--vurgu); color: #fff; padding: 0.5rem 1rem; border-radius: 8px; z-index: 20; }
.atla:focus { top: 1rem; }

/* Üst çubuk */
.ust { border-bottom: 1px solid var(--cizgi); background: var(--kart); position: relative; }
.ust::before { content: ""; display: block; height: 4px; background: var(--aurora); }
.ust-ic { max-width: var(--genis-genislik); margin: 0 auto; padding: 0.75rem 1.25rem; display: flex; flex-wrap: wrap; align-items: center; gap: 0.75rem 1.5rem; }
.marka { display: inline-flex; align-items: center; gap: 0.6rem; font-weight: 700; font-size: 1.15rem; color: var(--metin); text-decoration: none; }
.marka .prizma { width: 1.8rem; height: 1.8rem; color: var(--vurgu); flex: none; }
.menu { display: flex; flex-wrap: wrap; gap: 0.25rem 1rem; margin-inline-start: auto; }
.menu a, .dil { color: var(--metin-ikincil); text-decoration: none; padding: 0.3rem 0.1rem; font-size: 0.97rem; }
.menu a:hover, .dil:hover { color: var(--vurgu); }
.menu a[aria-current="page"] { color: var(--metin); font-weight: 600; box-shadow: inset 0 -2px 0 var(--vurgu); }
.dil { border: 1px solid var(--cizgi); border-radius: 999px; padding: 0.25rem 0.8rem; }

/* Hazırlık afişi ve yer tutucu işareti */
.hazirlik { background: var(--uyari-zemin); border-bottom: 1px solid var(--uyari-cizgi); color: var(--metin); padding: 0.7rem 1.25rem; text-align: center; font-size: 0.95rem; }
mark.doldurulacak { background: var(--isaret-zemin); color: var(--metin); border: 1px dashed var(--isaret-cizgi); border-radius: 4px; padding: 0 0.3em; font-weight: 700; font-family: ui-monospace, SFMono-Regular, Menlo, Consolas, monospace; font-size: 0.85em; }

/* Gövde */
.govde { flex: 1; width: 100%; max-width: var(--govde-genislik); margin: 0 auto; padding: 1.5rem 1.25rem 3rem; }
.govde.genis { max-width: var(--genis-genislik); }
.govde.dar { max-width: 60ch; }

h1, h2, h3 { line-height: 1.25; letter-spacing: -0.01em; }
h1 { font-size: clamp(1.9rem, 4.5vw, 2.6rem); margin: 0.4rem 0 0.6rem; }
h2 { font-size: 1.45rem; margin: 2.2rem 0 0.7rem; }
h3 { font-size: 1.12rem; margin: 1.4rem 0 0.4rem; }
p, ul, ol, dl { margin: 0 0 1rem; }
li { margin: 0.3rem 0; }

.baslik-alani { margin-bottom: 1.5rem; padding-bottom: 1.25rem; border-bottom: 1px solid var(--cizgi); }
.etiket { text-transform: uppercase; letter-spacing: 0.14em; font-size: 0.78rem; font-weight: 700; color: var(--turkuaz); margin: 0; }
.ozet { font-size: 1.15rem; color: var(--metin-ikincil); }
.durum { font-size: 0.95rem; color: var(--metin-ikincil); }
.not { font-size: 0.93rem; color: var(--metin-ikincil); }
.uyari { background: var(--uyari-zemin); border: 1px solid var(--uyari-cizgi); border-radius: 10px; padding: 0.8rem 1rem; }

/* İçindekiler ve belge bölümleri */
.icindekiler { background: var(--kart); border: 1px solid var(--cizgi); border-radius: 12px; padding: 1rem 1.25rem; margin-bottom: 1.5rem; font-size: 0.95rem; }
.icindekiler ul { list-style: none; margin: 0.5rem 0 0; padding: 0; columns: 2; column-gap: 2rem; }
.icindekiler li { break-inside: avoid; }
.belge section { scroll-margin-top: 1rem; }
.belge section + section { margin-top: 1rem; }
.adimlar li { margin: 0.55rem 0; }

dl.kimlik-listesi { display: grid; grid-template-columns: max-content 1fr; gap: 0.35rem 1.25rem; }
dl.kimlik-listesi dt { font-weight: 600; color: var(--metin-ikincil); }
dl.kimlik-listesi dd { margin: 0; }

/* Tablolar */
.tablo-sar { overflow-x: auto; margin: 0 0 1rem; border: 1px solid var(--cizgi); border-radius: 10px; }
table { border-collapse: collapse; width: 100%; min-width: 640px; font-size: 0.95rem; }
th, td { text-align: left; vertical-align: top; padding: 0.6rem 0.75rem; border-bottom: 1px solid var(--cizgi); }
thead th { background: var(--kod-zemin); position: sticky; top: 0; }
tbody tr:last-child td { border-bottom: 0; }

/* Düğmeler */
.dugme { display: inline-block; background: var(--vurgu); color: #fff; padding: 0.7rem 1.3rem; border-radius: 999px; font-weight: 600; text-decoration: none; border: 2px solid transparent; }
.dugme:hover { background: var(--vurgu-koyu); color: #fff; }
.dugme.ikincil { background: transparent; color: var(--vurgu); border-color: var(--vurgu); }
.dugme.ikincil:hover { background: var(--kod-zemin); }
.dugme.pasif { background: var(--kod-zemin); color: var(--metin-ikincil); cursor: not-allowed; }
.eylemler { display: flex; flex-wrap: wrap; gap: 0.6rem; align-items: center; }

/* Ana sayfa */
.kahraman { padding: 2rem 0 1rem; text-align: center; }
.kahraman h1 { font-size: clamp(2.4rem, 7vw, 3.6rem); background: var(--aurora); -webkit-background-clip: text; background-clip: text; color: transparent; display: inline-block; }
.kahraman .ozet { max-width: 60ch; margin: 0 auto 1.25rem; }
.kahraman .eylemler { justify-content: center; }
.kartlar { list-style: none; padding: 0; margin: 0 0 1.25rem; display: grid; grid-template-columns: repeat(auto-fit, minmax(240px, 1fr)); gap: 1rem; }
.kartlar li { background: var(--kart); border: 1px solid var(--cizgi); border-radius: 14px; padding: 1.1rem 1.2rem; box-shadow: var(--golge); }
.kartlar h3 { margin: 0 0 0.35rem; }
.kartlar p { margin: 0; color: var(--metin-ikincil); font-size: 0.97rem; }
.kartlar.baglanti li { padding: 0; }
.kartlar.baglanti a { display: block; padding: 1.1rem 1.2rem; color: inherit; text-decoration: none; height: 100%; border-radius: 14px; }
.kartlar.baglanti a:hover { outline: 2px solid var(--vurgu); }
.kartlar.baglanti h3 { color: var(--vurgu); }

/* Altbilgi */
.alt { border-top: 1px solid var(--cizgi); background: var(--kart); font-size: 0.92rem; color: var(--metin-ikincil); }
.alt-ic { max-width: var(--genis-genislik); margin: 0 auto; padding: 1.25rem; display: flex; flex-wrap: wrap; gap: 0.5rem 2rem; align-items: baseline; }
.alt p { margin: 0; }
.alt .kimlik span { margin-inline-end: 1.5rem; }
.alt nav { display: flex; flex-wrap: wrap; gap: 0.25rem 1rem; width: 100%; }
.alt nav a { color: var(--metin-ikincil); text-decoration: none; }
.alt nav a:hover { color: var(--vurgu); }

@media (max-width: 640px) {
  body { font-size: 1rem; }
  .ust-ic { padding: 0.6rem 1rem; }
  .menu { margin-inline-start: 0; width: 100%; order: 3; gap: 0.1rem 0.8rem; }
  .dil { margin-inline-start: auto; }
  .govde { padding: 1.25rem 1rem 2.5rem; }
  .icindekiler ul { columns: 1; }
  dl.kimlik-listesi { grid-template-columns: 1fr; gap: 0.15rem; }
  dl.kimlik-listesi dd { margin-bottom: 0.5rem; }
}

@media print {
  .ust, .alt, .hazirlik, .atla, .icindekiler { display: none; }
  body { background: #fff; color: #000; }
  a { color: #000; }
  .tablo-sar { border: 0; }
  table { min-width: 0; }
}
