/* ============================================================
   KAMUISI — Tasarım Katmanı v2 (2026-11-03)
   theme.css'in ÜZERİNE yüklenir. Amaç: nefes alan, profesyonel,
   okunabilir bir arayüz. Renk değişkenleri korunur.
   ============================================================ */

:root{
  --ki-radius: 16px;
  --ki-radius-sm: 10px;
  --ki-surface: #ffffff;
  --ki-bg: #f6f8fc;
  --ki-border: #e6ecf5;
  --ki-ink: #0f1f3a;
  --ki-ink-soft: #3c4c66;
  --ki-muted: #6b7a90;
  --ki-shadow-sm: 0 1px 2px rgba(15,31,58,.04), 0 4px 12px rgba(15,31,58,.04);
  --ki-shadow-md: 0 2px 4px rgba(15,31,58,.05), 0 12px 28px rgba(15,31,58,.07);
  --ki-shadow-lg: 0 8px 24px rgba(15,31,58,.10), 0 24px 48px rgba(15,31,58,.08);
  --ki-container: 1180px;
  --ki-ease: cubic-bezier(.22,.61,.36,1);
}

/* ---------- TEMEL ---------- */
html{ -webkit-text-size-adjust:100%; }
body{
  background: var(--ki-bg);
  color: var(--ki-ink);
  font-size: 16.5px;
  line-height: 1.72;
  letter-spacing: -.005em;
  -webkit-font-smoothing: antialiased;
  text-rendering: optimizeLegibility;
}
.container{ max-width: var(--ki-container); }
h1,h2,h3,h4,h5,h6{ letter-spacing: -.02em; color: var(--ki-ink); }
h1{ line-height: 1.22; }
h2{ line-height: 1.3; }
a{ text-decoration-thickness: 1px; text-underline-offset: 2px; }
::selection{ background: #d8e6ff; color: #0b2a56; }

/* Odak halkası — erişilebilirlik */
a:focus-visible, button:focus-visible, input:focus-visible,
select:focus-visible, textarea:focus-visible{
  outline: 3px solid rgba(30,86,192,.35);
  outline-offset: 2px;
  border-radius: 6px;
}

/* ---------- KARTLAR ---------- */
/* height:100% yalnızca grid içinde; tek başına duran kartlar içeriğe göre kalır.
   (Önceden makale sayfasında 4000px'lik boş kart oluşuyordu.) */
.ki-card{ height: auto; border-radius: var(--ki-radius); border: 1px solid var(--ki-border);
  box-shadow: var(--ki-shadow-sm); display:flex; flex-direction:column; overflow:hidden;
  transition: box-shadow .22s var(--ki-ease), transform .22s var(--ki-ease), border-color .22s var(--ki-ease); }
.row > [class*="col-"] > .ki-card,
.row > [class*="col-"] > article.ki-card{ height: 100%; }
/* Sadece tıklanabilir kartlar hover'da kalksın */
.ki-card:hover{ transform: none; box-shadow: var(--ki-shadow-sm); }
.ki-card:has(h3 a):hover, .ki-card:has(.ki-card-body a.stretched-link):hover{
  transform: translateY(-2px); box-shadow: var(--ki-shadow-md); border-color: #d6e2f3;
}
.ki-card .ki-card-body{ padding: 1.15rem 1.25rem 1.2rem; }

/* ---------- BÖLÜM BAŞLIKLARI ---------- */
.ki-section-head{
  display:flex; align-items:center; justify-content:space-between; gap:12px;
  margin: 2rem 0 1rem; padding: 0;
  border: 0;
}
.ki-section-head h2, .ki-section-head .h2{
  font-size: 1.28rem; font-weight: 800; letter-spacing:-.02em; margin:0;
  display:flex; align-items:center; gap:.55rem;
}
.ki-section-head h2::before{
  content:""; width:4px; height:1.05em; border-radius:2px;
  background: linear-gradient(180deg, var(--ki-primary), #4b8ef0);
}
.ki-section-head a{ font-size:.9rem; font-weight:600; }

/* ---------- TİPOGRAFİ: İÇERİK ---------- */
.ki-prose{
  font-size: 1.045rem; line-height: 1.88; color: #253550;
  max-width: 74ch;
}
.ki-prose > p{ margin: 0 0 1.05em; }
.ki-prose > p:last-child{ margin-bottom:0; }
.ki-prose h2{
  font-size: 1.34rem; font-weight: 800; color: var(--ki-ink);
  margin: 2.1em 0 .6em; padding-bottom:.25em; border-bottom:1px solid var(--ki-border);
  scroll-margin-top: 90px;
}
.ki-prose h3{ font-size: 1.12rem; font-weight: 700; color: #1b2f52; margin: 1.6em 0 .5em; }
.ki-prose h4{ font-size: 1rem; font-weight: 700; margin: 1.3em 0 .4em; }
.ki-prose ul, .ki-prose ol{ margin: 0 0 1.1em; padding-left: 1.35em; }
.ki-prose li{ margin-bottom: .45em; }
.ki-prose li::marker{ color: var(--ki-primary); }
.ki-prose blockquote{
  margin: 1.4em 0; padding: .9em 1.1em; border-left: 4px solid var(--ki-primary);
  background: #f3f7ff; border-radius: 0 var(--ki-radius-sm) var(--ki-radius-sm) 0; color:#26406b;
}
.ki-prose table{ width:100%; border-collapse:separate; border-spacing:0; margin:1.3em 0; font-size:.95rem;
  border:1px solid var(--ki-border); border-radius:12px; overflow:hidden; }
.ki-prose th{ background:#f4f7fc; text-align:left; font-weight:700; }
.ki-prose th, .ki-prose td{ padding:.65em .85em; border-bottom:1px solid var(--ki-border); vertical-align:top; }
.ki-prose tr:last-child td{ border-bottom:0; }
.ki-prose tbody tr:nth-child(even) td{ background:#fbfcfe; }
.ki-prose img{ max-width:100%; height:auto; border-radius:12px; }
.ki-prose code{ background:#eef3fa; padding:.12em .4em; border-radius:6px; font-size:.9em; }
.ki-prose a{ color: var(--ki-primary); font-weight: 500; }
.ki-prose a:hover{ color:#0d3f8f; }
.ki-prose details{
  border:1px solid var(--ki-border); border-radius:12px; padding:.75em 1em; margin:.6em 0; background:#fff;
}
.ki-prose details summary{ font-weight:600; cursor:pointer; list-style:none; display:flex; justify-content:space-between; gap:12px; }
.ki-prose details summary::-webkit-details-marker{ display:none; }
.ki-prose details summary::after{ content:"+"; color:var(--ki-primary); font-weight:700; }
.ki-prose details[open] summary::after{ content:"–"; }

/* ---------- HERO ---------- */
.ki-kamu-hero{
  position: relative; border-radius: 20px; padding: 2rem 2.1rem !important;
  background: linear-gradient(135deg,#0a2f68 0%,#174a9c 45%,#2f76d0 100%) !important;
  box-shadow: 0 18px 40px -18px rgba(16,58,131,.55);
  overflow: hidden;
}
.ki-kamu-hero::after{
  content:""; position:absolute; inset:0; pointer-events:none;
  background:
    radial-gradient(680px 220px at 88% -30%, rgba(255,255,255,.22), transparent 70%),
    radial-gradient(420px 200px at -10% 120%, rgba(255,255,255,.10), transparent 70%);
}
.ki-kamu-hero h1{ font-size: clamp(1.45rem, 2.4vw, 2.05rem); font-weight: 800; color:#fff; margin:.35rem 0 .5rem; }
.ki-kamu-hero p{ color: rgba(255,255,255,.86); margin:0; font-size:.98rem; max-width:70ch; }
.ki-kamu-hero-badge{
  display:inline-flex; align-items:center; gap:.35rem;
  background: rgba(255,255,255,.16); color:#fff; border:1px solid rgba(255,255,255,.22);
  padding:.28rem .7rem; border-radius:999px; font-size:.76rem; font-weight:700; letter-spacing:.02em;
  backdrop-filter: blur(6px);
}
.ki-kamu-hero-stat{ background: rgba(255,255,255,.13); border:1px solid rgba(255,255,255,.2);
  border-radius:16px; padding:.7rem 1.2rem; text-align:center; backdrop-filter: blur(6px); }

/* ---------- İLAN KARTI ---------- */
.ki-card .ki-card-cat{ color: var(--ki-primary); letter-spacing:.06em; }
.ki-card h3{ font-size: 1.03rem; line-height:1.42; margin-bottom:.5rem; letter-spacing:-.01em; }
.ki-card .ki-card-meta{ gap:.35rem .9rem; color: var(--ki-muted); }
.ki-card .ki-card-body > .d-flex:first-child{ margin-bottom:.5rem; }

/* ---------- BADGE / ÇİP ---------- */
.ki-badge{
  background:#eef4ff; color:#17417f; border:1px solid #dbe7fb;
  padding:.26rem .7rem; font-weight:600; transition: background .16s ease, border-color .16s ease;
}
.ki-badge:hover{ background:#e2edff; border-color:#c9dcf9; }

/* ---------- FORMLAR ---------- */
.form-control, .form-select{
  border-radius: 12px; border:1px solid #d9e3f0; padding:.72rem .9rem; font-size:.97rem;
  transition: border-color .16s ease, box-shadow .16s ease;
}
.form-control:focus, .form-select:focus{
  border-color:#8fb4ee; box-shadow: 0 0 0 4px rgba(30,86,192,.12);
}
.form-label{ font-weight:600; font-size:.9rem; margin-bottom:.35rem; }
.btn{ border-radius:12px; font-weight:700; }

/* ---------- ÜST BAR / MENÜ ---------- */
.ki-nav{ background:#fff; box-shadow: 0 1px 0 var(--ki-border); }
.ki-nav .nav-link{ font-size:.86rem; font-weight:700; color:#20334f; padding:.55rem .7rem; border-radius:8px; }
.ki-nav .nav-link:hover{ background:#f1f6ff; color: var(--ki-primary); }

/* ---------- TABLOLAR (genel) ---------- */
.table{ --bs-table-bg: transparent; }
.table > :not(caption) > * > *{ padding:.6rem .7rem; border-bottom-color:#ecf1f8; }
.table thead th{ background:#f7f9fd; font-size:.82rem; text-transform:uppercase; letter-spacing:.04em; color:#5b6b83; }

/* ---------- MAKALE ---------- */
.ki-card-meta{ font-size:.83rem; }
.ki-makale-gorsel img{ border-radius:14px; box-shadow: var(--ki-shadow-sm); }
.ki-tag-cloud a{ display:inline-block; margin:0 .35rem .35rem 0; padding:.25rem .65rem; border-radius:999px;
  background:#f1f5fb; color:#3b5170; font-size:.8rem; text-decoration:none; }
.ki-tag-cloud a:hover{ background:#e3ecfa; color:var(--ki-primary); }

/* ---------- FOOTER ---------- */
footer, .ki-footer{ background:#0d1b30 !important; color:#b9c6d8; }
footer a, .ki-footer a{ color:#cfdaea; text-decoration:none; }
footer a:hover, .ki-footer a:hover{ color:#fff; text-decoration:underline; }
footer h5, footer h6, .ki-footer h5{ color:#fff; font-size:.9rem; letter-spacing:.04em; text-transform:uppercase; }

/* ---------- MOBİL ---------- */
@media (max-width: 991.98px){
  body{ font-size:16px; }
  .ki-kamu-hero{ padding:1.4rem 1.2rem !important; border-radius:16px; }
  .ki-section-head h2{ font-size:1.12rem; }
  .ki-prose{ font-size:1rem; line-height:1.8; }
}
@media (max-width: 575.98px){
  .container{ padding-left:14px; padding-right:14px; }
  .ki-card .ki-card-body{ padding:1rem 1rem 1.05rem; }
  h1{ font-size:1.5rem; }
}

/* ---------- YAZDIRMA ---------- */
@media print{
  .ki-nav, footer, .ki-ad, .reklam-alani{ display:none !important; }
  .ki-card{ box-shadow:none; border-color:#ddd; }
}
