/* Hak Aracı. Harici yazı tipi, görsel veya betik kullanılmaz. */

:root {
  --zemin: #f7f5f2;
  --yuzey: #ffffff;
  --metin: #1f1d24;
  --soluk: #57515f;
  --cizgi: #d8d2cc;
  --cizgi-koyu: #847d8c;
  --vurgu: #4a2c82;
  --vurgu-metin: #ffffff;
  --vurgu-acik: #efe8f8;
  --odak: #1a5fd0;
  --tehlike: #b3261e;
  --tehlike-metin: #ffffff;
  --uyari-zemin: #fdf3d8;
  --uyari-metin: #4a3800;
  --uyari-cizgi: #c99a1a;
  --hata: #a1131a;
  --golge: 0 1px 2px rgba(31, 29, 36, 0.06), 0 2px 8px rgba(31, 29, 36, 0.06);
  --ust: 3.75rem;
  color-scheme: light dark;
}

@media (prefers-color-scheme: dark) {
  :root {
    --zemin: #16141a;
    --yuzey: #221f28;
    --metin: #f2f0f5;
    --soluk: #c4bfcc;
    --cizgi: #3d3846;
    --cizgi-koyu: #918a9c;
    --vurgu: #cbb5f3;
    --vurgu-metin: #1d1030;
    --vurgu-acik: #2f2741;
    --odak: #8ab4ff;
    --tehlike: #ff8a80;
    --tehlike-metin: #2a0000;
    --uyari-zemin: #3a2f0a;
    --uyari-metin: #ffe7a3;
    --uyari-cizgi: #c9a227;
    --hata: #ffa3a3;
    --golge: none;
  }
}

*, *::before, *::after { 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, "Noto Sans", Arial, sans-serif;
  font-size: 1.125rem;
  line-height: 1.5;
  overflow-wrap: anywhere;
}
a { color: var(--vurgu); text-underline-offset: 3px; }
:focus-visible { outline: 3px solid var(--odak); outline-offset: 2px; }
[hidden] { display: none !important; }
.gorunmez {
  position: absolute !important; width: 1px; height: 1px; padding: 0; margin: -1px;
  overflow: hidden; clip: rect(0 0 0 0); white-space: nowrap; border: 0;
}
.gecis-baglantisi {
  position: absolute; left: 0.5rem; top: -4rem; z-index: 400;
  background: var(--vurgu); color: var(--vurgu-metin); padding: 0.5rem 0.75rem; border-radius: 8px;
}
.gecis-baglantisi:focus { top: 0.5rem; }

/* ---------- Üst çubuk (yapışkan): hızlı arama + Hızlı Çıkış ---------- */
.ust-cubuk {
  position: sticky; top: 0; z-index: 300;
  display: flex; align-items: center; justify-content: space-between; gap: 0.5rem;
  padding: 0.5rem 1rem;
  background: var(--yuzey);
  border-bottom: 1px solid var(--cizgi);
}
.hizli-ara { display: flex; gap: 0.4rem; }
.ara-dugme {
  display: inline-flex; align-items: center; justify-content: center;
  min-width: 3.1rem; min-height: 44px; padding: 0 0.6rem;
  border: 2px solid var(--cizgi-koyu); border-radius: 999px;
  color: var(--metin); font-weight: 700; text-decoration: none; font-size: 1rem;
}
.ara-dugme:hover { border-color: var(--metin); }
.hizli-cikis {
  min-height: 44px; padding: 0 1rem;
  background: var(--tehlike); color: var(--tehlike-metin);
  border: 0; border-radius: 999px;
  font: inherit; font-weight: 700; font-size: 1rem; cursor: pointer;
  white-space: nowrap;
}
.hizli-cikis:hover { filter: brightness(1.08); }
.taslak-bandi {
  margin: 0; padding: 0.45rem 1rem;
  background: var(--uyari-zemin); color: var(--uyari-metin);
  font-size: 0.9rem; border-bottom: 1px solid var(--uyari-cizgi);
}

/* ---------- Yerleşim ---------- */
main { max-width: 40rem; margin: 0 auto; padding: 1.25rem 1rem 2rem; }
h1 { font-size: 1.75rem; line-height: 1.2; margin: 0.25rem 0 0.75rem; letter-spacing: -0.01em; }
h2 { font-size: 1.25rem; line-height: 1.3; margin: 2rem 0 0.75rem; }
h1:focus, h2:focus { outline: none; }
p { margin: 0 0 1rem; }
.kucuk-not { font-size: 0.9rem; color: var(--soluk); }

.site-alt {
  max-width: 40rem; margin: 0 auto; padding: 1.5rem 1rem 3rem;
  border-top: 1px solid var(--cizgi); color: var(--soluk); font-size: 0.95rem;
}
.site-alt h2 { font-size: 1rem; margin: 0 0 0.5rem; color: var(--metin); }
.numara-listesi { list-style: none; padding: 0; margin: 0 0 0.5rem; display: grid; gap: 0.3rem; }
.numara-listesi a { font-weight: 700; }
.site-baglantilar { list-style: none; padding: 0; margin: 1.25rem 0 0.75rem; display: flex; flex-wrap: wrap; gap: 0.25rem 1.25rem; }
.site-baglantilar a { display: inline-block; padding: 0.4rem 0; }

/* ---------- Giriş ---------- */
.giris { font-size: 1.15rem; color: var(--soluk); }
.acil-kutu {
  display: flex; flex-wrap: wrap; align-items: center; gap: 0.5rem 0.75rem;
  padding: 0.85rem 1rem; margin: 1.25rem 0 0.5rem;
  border-radius: 14px; background: var(--yuzey); border: 1px solid var(--cizgi);
  border-left: 5px solid var(--tehlike);
}
.acil-kutu p { margin: 0; font-weight: 700; flex: 1 1 10rem; }
.acil-kutu a {
  display: inline-flex; align-items: center; min-height: 44px; padding: 0 1rem;
  border-radius: 999px; background: var(--tehlike); color: var(--tehlike-metin);
  font-weight: 700; text-decoration: none;
}
.kapilar { list-style: none; padding: 0; margin: 0; display: grid; gap: 0.75rem; }
.kapi {
  display: block; position: relative;
  padding: 1.1rem 3rem 1.1rem 1.1rem;
  background: var(--yuzey); color: var(--metin); text-decoration: none;
  border: 2px solid var(--cizgi); border-radius: 16px; box-shadow: var(--golge);
}
.kapi::after {
  content: "→"; position: absolute; right: 1.1rem; top: 50%; transform: translateY(-50%);
  font-size: 1.4rem; color: var(--vurgu);
}
.kapi:hover { border-color: var(--vurgu); }
.kapi-baslik { display: block; font-size: 1.2rem; font-weight: 700; margin-bottom: 0.2rem; }
.kapi-aciklama { display: block; color: var(--soluk); font-size: 1rem; }
.kapi-oncelik { border-color: var(--vurgu); }
.guvenceler { list-style: none; padding: 0; margin: 2rem 0 0; display: grid; gap: 0.9rem; }
.guvenceler li { padding-left: 1.75rem; position: relative; color: var(--soluk); font-size: 1rem; }
.guvenceler li::before { content: "•"; position: absolute; left: 0.5rem; color: var(--vurgu); font-weight: 700; }
.guvenceler strong { color: var(--metin); }

.onay-etiketi {
  display: inline-block; font-size: 0.8rem; font-weight: 600;
  background: var(--uyari-zemin); color: var(--uyari-metin);
  border: 1px solid var(--uyari-cizgi); border-radius: 4px; padding: 0 0.4rem; margin: 0 0 0.3rem;
}

/* ---------- Düğmeler ---------- */
.dugme {
  display: inline-flex; align-items: center; justify-content: center; gap: 0.4rem;
  min-height: 48px; padding: 0.5rem 1.1rem;
  font: inherit; font-weight: 600; font-size: 1rem;
  border-radius: 12px; border: 2px solid var(--vurgu);
  background: var(--yuzey); color: var(--vurgu);
  cursor: pointer; text-decoration: none; text-align: center;
}
.dugme:hover { background: var(--vurgu-acik); }
.dugme:disabled { opacity: 0.5; cursor: not-allowed; }
.dugme-ana { background: var(--vurgu); color: var(--vurgu-metin); }
.dugme-ana:hover { background: var(--vurgu); filter: brightness(1.12); }
.dugme-ikincil { border-color: var(--cizgi-koyu); color: var(--metin); }
.dugme-genis { flex: 1 1 auto; font-size: 1.1rem; }
.dugme-dev {
  display: flex; flex-direction: column; width: 100%;
  min-height: 5rem; font-size: 1.35rem; border-radius: 16px; margin: 0.5rem 0 0.5rem;
}
.dugme-alt { font-size: 0.95rem; font-weight: 400; opacity: 0.9; }

/* ---------- Sihirbaz ---------- */
.ilerleme { display: flex; align-items: center; gap: 0.75rem; margin: 0 0 1rem; }
.ilerleme-sayi { font-size: 0.9rem; color: var(--soluk); white-space: nowrap; }
progress {
  flex: 1; height: 0.5rem; border: 0; border-radius: 999px; overflow: hidden;
  background: var(--cizgi); accent-color: var(--vurgu);
  -webkit-appearance: none; appearance: none;
}
progress::-webkit-progress-bar { background: var(--cizgi); border-radius: 999px; }
progress::-webkit-progress-value { background: var(--vurgu); border-radius: 999px; }
progress::-moz-progress-bar { background: var(--vurgu); border-radius: 999px; }
.soru { margin-bottom: 0.4rem; }
.yardim { color: var(--soluk); margin-bottom: 1.25rem; }
.alt-baslik { font-size: 1.05rem; font-weight: 700; margin: 1.5rem 0 0.6rem; padding: 0; }

.tanik-uyari, .uyari {
  padding: 0.75rem 1rem; border-radius: 12px; margin: 0 0 1rem;
  background: var(--uyari-zemin); color: var(--uyari-metin); border: 1px solid var(--uyari-cizgi);
  font-size: 0.98rem;
}

/* Seçim kartları */
fieldset { border: 0; padding: 0; margin: 0 0 0.5rem; min-width: 0; }
.kartlar { display: grid; gap: 0.6rem; }
@media (min-width: 34rem) { .kartlar-kucuk { grid-template-columns: 1fr 1fr; } }
.kart-sec { position: relative; }
.kart-sec input { position: absolute; opacity: 0; width: 1px; height: 1px; margin: 0; }
.kart-sec label {
  display: flex; flex-direction: column; justify-content: center; gap: 0.1rem;
  position: relative; min-height: 3.5rem; height: 100%;
  padding: 0.75rem 1rem 0.75rem 3.1rem;
  background: var(--yuzey); border: 2px solid var(--cizgi); border-radius: 14px;
  cursor: pointer; box-shadow: var(--golge);
}
.kart-sec label::before {
  content: ""; position: absolute; left: 1rem; top: 50%; transform: translateY(-50%);
  width: 1.4rem; height: 1.4rem; border: 2px solid var(--cizgi-koyu); border-radius: 7px;
  background: var(--yuzey);
  display: flex; align-items: center; justify-content: center;
  font-size: 0.95rem; font-weight: 800; line-height: 1;
}
.kart-sec input[type="radio"] + label::before { border-radius: 50%; }
.kart-sec label:hover { border-color: var(--cizgi-koyu); }
.kart-sec input:checked + label { border-color: var(--vurgu); background: var(--vurgu-acik); }
.kart-sec input:checked + label::before { content: "✓"; background: var(--vurgu); border-color: var(--vurgu); color: var(--vurgu-metin); }
.kart-sec input:focus-visible + label { outline: 3px solid var(--odak); outline-offset: 2px; }
.k-baslik { font-weight: 600; }
.k-ipucu { font-size: 0.92rem; color: var(--soluk); }
.riza { margin: 1rem 0 0.75rem; }
.riza label { border-color: var(--uyari-cizgi); }

/* Yazı alanları */
.alan { margin: 1.1rem 0; }
.alan label { display: block; font-weight: 600; margin-bottom: 0.35rem; }
.ipucu { font-size: 0.92rem; color: var(--soluk); margin: -0.15rem 0 0.4rem; }
.hata { color: var(--hata); font-weight: 600; font-size: 0.92rem; margin: 0.35rem 0 0; }
.hata:empty { display: none; }
input[type="text"], input[type="tel"], textarea {
  width: 100%; font: inherit; color: var(--metin); background: var(--yuzey);
  border: 2px solid var(--cizgi-koyu); border-radius: 12px;
  padding: 0.7rem 0.8rem; min-height: 48px;
}
textarea { resize: vertical; line-height: 1.45; }
::placeholder { color: var(--soluk); opacity: 0.85; }
input[aria-invalid="true"] { border-color: var(--hata); }
.ikili { display: grid; gap: 0 0.75rem; }
@media (min-width: 34rem) { .ikili { grid-template-columns: 1fr 1fr; } }

.bilgi-listesi { padding-left: 1.25rem; margin: 0 0 1rem; }
.bilgi-listesi li { margin-bottom: 0.75rem; }

/* Alt çubuk (yapışkan) */
.alt-cubuk {
  position: sticky; bottom: 0; z-index: 50;
  display: flex; gap: 0.6rem;
  margin: 1.5rem -1rem 0; padding: 0.75rem 1rem calc(0.75rem + env(safe-area-inset-bottom));
  background: var(--zemin); border-top: 1px solid var(--cizgi);
}

/* ---------- Sonuç ---------- */
.bolum { margin-top: 1.75rem; }
.adim-listesi { list-style: none; counter-reset: adim; padding: 0; margin: 0; display: grid; gap: 0.6rem; }
.adim-listesi li {
  counter-increment: adim; position: relative;
  padding: 0.7rem 1rem 0.7rem 3.1rem;
  background: var(--yuzey); border: 1px solid var(--cizgi); border-radius: 12px;
}
.adim-listesi li::before {
  content: counter(adim); position: absolute; left: 0.9rem; top: 0.7rem;
  width: 1.6rem; height: 1.6rem; border-radius: 50%;
  background: var(--vurgu-acik); color: var(--vurgu);
  display: flex; align-items: center; justify-content: center; font-weight: 700; font-size: 0.9rem;
}
.belge-listesi { list-style: none; padding: 0; margin: 0; display: grid; gap: 0.75rem; }
.belge-karti {
  padding: 1rem; background: var(--yuzey);
  border: 1px solid var(--cizgi); border-radius: 14px; box-shadow: var(--golge);
}
.belge-karti h3 { margin: 0 0 0.25rem; font-size: 1.1rem; }
.belge-karti p { margin: 0 0 0.75rem; color: var(--soluk); font-size: 0.98rem; }
.kart-eylemler { display: flex; flex-wrap: wrap; gap: 0.5rem; }
.kart-eylemler .dugme { min-height: 44px; padding: 0.35rem 0.9rem; font-size: 0.95rem; }
.toplu-eylem { display: flex; flex-wrap: wrap; gap: 0.6rem; margin: 1.25rem 0 0.75rem; }

/* ---------- Okuma görünümü (Görevliye göster / Aç) ---------- */
body.okuma-acik { overflow: hidden; }
.okuma {
  position: fixed; left: 0; right: 0; bottom: 0; top: var(--ust);
  z-index: 200; overflow: auto;
  background: #ffffff; color: #111111;
}
.okuma-koyu { background: #000000; color: #ffffff; }
.okuma-arac {
  position: sticky; top: 0; z-index: 1;
  display: flex; flex-wrap: wrap; gap: 0.5rem; padding: 0.6rem 1rem;
  background: inherit; border-bottom: 1px solid currentColor;
}
.okuma .dugme { background: transparent; color: inherit; border-color: currentColor; min-height: 44px; }
.okuma .dugme-ana { background: #111111; color: #ffffff; border-color: #111111; }
.okuma-koyu .dugme-ana { background: #ffffff; color: #000000; border-color: #ffffff; }
.okuma-icerik { max-width: 48rem; margin: 0 auto; padding: 1rem 1rem 3rem; }
.okuma-icerik .belge { background: transparent; color: inherit; border: 0; box-shadow: none; padding: 0; margin: 0; font-size: inherit; }
.okuma-icerik .b-not, .okuma-icerik .b-taslak { background: transparent; color: inherit; border-color: currentColor; }
.okuma-icerik .b-kutu, .okuma-icerik .b-buyuk { border-color: currentColor; }
.okuma-icerik .b-bos-satir { border-bottom-color: currentColor; height: 1.7em; }
.okuma-icerik .b-altnot { color: inherit; border-top-color: currentColor; }
.okuma-boyut-1 .okuma-icerik { font-size: 1.1rem; }
.okuma-boyut-2 .okuma-icerik { font-size: 1.4rem; }
.okuma-boyut-3 .okuma-icerik { font-size: 1.75rem; }
.okuma-boyut-4 .okuma-icerik { font-size: 2.3rem; }

/* ---------- Belge (yazdırma ve okuma görünümü) ---------- */
.belge { background: #ffffff; color: #111111; line-height: 1.5; }
.b-belge-baslik { font-size: 1.3em; text-align: center; margin: 0 0 0.75em; }
.b-taslak {
  display: inline-block; border: 2px dashed #8a5a00; color: #5c3c00; background: #fff6dc;
  font-weight: 700; font-size: 0.85em; padding: 0.1em 0.5em; margin: 0 0 0.8em;
}
.b-hitap { text-align: center; font-weight: 700; margin: 0.4em 0 1.3em; }
.b-baslik { font-size: 1em; margin: 1.1em 0 0.35em; }
.b-paragraf { margin: 0.35em 0 0.7em; }
.b-kullanici { white-space: pre-wrap; }
.b-buyuk { font-size: 1.3em; font-weight: 700; line-height: 1.3; border-left: 0.25em solid #4a2c82; padding: 0.2em 0 0.2em 0.6em; margin: 0.3em 0 0.9em; }
.b-not { border: 1px solid #555; background: #f2f2f2; padding: 0.45em 0.7em; font-style: italic; margin: 0.4em 0 0.9em; }
.b-kutu { border: 2px solid #333; padding: 0.2em 0.8em 0.4em; margin: 0.9em 0; break-inside: avoid; }
.b-kutu-baslik { font-size: 1em; margin: 0.4em 0 0.2em; }
.b-kutu ul { margin: 0.2em 0; padding-left: 1.2em; }
.b-bilgiler, .b-imza { margin: 0.4em 0 0.9em; }
.b-satir { display: flex; flex-wrap: wrap; gap: 0 0.5em; }
.b-satir dt { font-weight: 700; }
.b-satir dt::after { content: ":"; }
.b-satir dd { margin: 0; flex: 1 1 10em; min-width: 0; }
.b-imza { margin-top: 1.8em; margin-left: auto; width: min(100%, 18em); }
.b-isaretler { list-style: none; padding: 0; margin: 0.2em 0 0.7em; }
.b-isaretler li { padding: 0.15em 0 0.15em 1.8em; text-indent: -1.8em; }
.b-kutucuk { display: inline-block; width: 1.8em; text-indent: 0; font-size: 1.1em; line-height: 1; }
.b-liste { margin: 0.2em 0 0.7em; padding-left: 1.5em; }
.b-liste li { margin: 0.15em 0 0.3em; }
.b-bos-satirlar { margin: 0.2em 0 0.7em; }
.b-bos-satir { border-bottom: 1px solid #666; height: 1.8em; }
.b-altnot { margin: 1.5em 0 0; padding-top: 0.45em; border-top: 1px solid #999; font-size: 0.85em; color: #333; }

.gizli-kopya { position: fixed; top: 0; left: -9999px; opacity: 0; }
.baski-alani { display: none; }

@media (prefers-reduced-motion: reduce) { * { scroll-behavior: auto !important; transition: none !important; } }

/* ---------- Yazdırma: A4, 2.5 cm kenar, 12 pt ---------- */
@page { size: A4; margin: 2.5cm; }
@media print {
  html, body { background: #fff !important; color: #000 !important; font-size: 12pt; }
  .ust-cubuk, .taslak-bandi, .gecis-baglantisi, .site-alt, .alt-cubuk { display: none !important; }
  body.baski-modu > *:not(.baski-alani) { display: none !important; }
  body.baski-modu .baski-alani { display: block !important; }
  .belge { font-size: 12pt; line-height: 1.4; color: #000; break-after: page; page-break-after: always; }
  .baski-alani .belge:last-child { break-after: auto; page-break-after: auto; }
  .b-belge-baslik { font-size: 15pt; }
  .b-baslik, .b-kutu-baslik { break-after: avoid; page-break-after: avoid; }
  .b-bos-satir { height: 0.85cm; }
  .b-imza, .b-kutu, .b-bilgiler, .b-isaretler li, .b-liste li { break-inside: avoid; page-break-inside: avoid; }

  /* Görevliye gösterilecek kartlar tek sayfaya sığsın (punto 12 pt kalır) */
  .belge-kompakt { line-height: 1.25; }
  .belge-kompakt .b-baslik { margin: 0.3cm 0 0.1cm; }
  .belge-kompakt .b-taslak, .belge-kompakt .b-not { margin: 0 0 0.2cm; padding: 0.1cm 0.2cm; }
  .belge-kompakt .b-buyuk { margin: 0.1cm 0 0.25cm; }
  .belge-kompakt .b-bilgiler { margin: 0.1cm 0 0.2cm; }
  .belge-kompakt .b-isaretler { margin: 0; }
  .belge-kompakt .b-isaretler li { padding-top: 0; padding-bottom: 0.05cm; }
  .belge-kompakt .b-kutu { margin: 0.3cm 0 0.2cm; padding: 0.1cm 0.3cm 0.15cm; }
  .belge-kompakt .b-kutu ul { margin: 0; }
  .belge-kompakt .b-altnot { margin-top: 0.3cm; }
}

/* Hakkında */
.logo { display: block; width: 160px; height: auto; margin: 0.5rem 0 1rem; }
