/* ===== e9e Dokümantasyon (sade docs UX, e9e mavisi) ===== */
:root{
  --blue:#2563eb;
  --blue-d:#1d4ed8;
  --blue-50:#eef4ff;
  --blue-100:#dbe6fe;
  --fg:#18181b;
  --fg-2:#3f3f46;
  --muted:#6b7280;
  --muted-2:#9ca3af;
  --line:#ececef;
  --line-2:#f3f3f5;
  --bg:#ffffff;
  --bg-sidebar:#fbfbfc;
  --bg-soft:#f7f8fa;
  --green:#16a34a;
  --amber:#d97706;
  --radius:12px;
  --sidebar-w:268px;
  --toc-w:230px;
  --content-max:730px;
  --font:'Satoshi','Inter','Segoe UI',-apple-system,BlinkMacSystemFont,Roboto,Arial,sans-serif;
  --font-head:'Gabarito','Satoshi','Segoe UI',sans-serif;
}

*{box-sizing:border-box;margin:0;padding:0}
html{scroll-behavior:smooth}
body{
  font-family:var(--font);
  color:var(--fg-2);
  background:var(--bg);
  -webkit-font-smoothing:antialiased;
  -moz-osx-font-smoothing:grayscale;
  text-rendering:optimizeLegibility;
  font-size:15px;
  line-height:1.65;
  letter-spacing:-.003em;
}

/* ===== Marka ===== */
.brand-mark{font-weight:800;letter-spacing:-.04em;color:var(--blue);font-size:19px}
.brand-doc{color:var(--muted);font-weight:500;font-size:14px}
.brand-logo{height:26px;width:auto;display:block}

/* Başlıklar Gabarito (bizim font) */
.doc-section h1,.doc-section h2,.doc-section h3,.feat h4{font-family:var(--font-head)}

/* ===== Üst çubuk (mobil) ===== */
.topbar{
  display:none;align-items:center;gap:14px;height:56px;padding:0 16px;
  border-bottom:1px solid var(--line);position:sticky;top:0;z-index:50;
  background:rgba(255,255,255,.88);backdrop-filter:saturate(180%) blur(10px);
}
.topbar-brand{display:flex;align-items:center;gap:8px;text-decoration:none}
.hamburger{
  width:36px;height:36px;border:1px solid var(--line);border-radius:9px;background:#fff;
  display:flex;flex-direction:column;justify-content:center;align-items:center;gap:4px;cursor:pointer;
}
.hamburger span{width:16px;height:1.8px;background:var(--fg-2);border-radius:2px}

/* ===== Düzen: 3 kolon ===== */
.layout{display:flex;justify-content:center;align-items:flex-start}

/* ===== Sol menü ===== */
.sidebar{
  width:var(--sidebar-w);flex-shrink:0;position:sticky;top:0;height:100vh;
  overflow-y:auto;border-right:1px solid var(--line);background:var(--bg-sidebar);
  padding:18px 12px 40px;
}
.sidebar::-webkit-scrollbar{width:7px}
.sidebar::-webkit-scrollbar-thumb{background:#e4e4e8;border-radius:8px}
.sidebar::-webkit-scrollbar-thumb:hover{background:#d4d4d8}

.sidebar-brand{display:flex;align-items:center;gap:8px;text-decoration:none;padding:6px 10px 16px}

.search-wrap{position:relative;margin:0 4px 20px}
.search-ic{position:absolute;left:11px;top:50%;transform:translateY(-50%);color:var(--muted-2)}
#search{
  width:100%;padding:9px 46px 9px 33px;border:1px solid var(--line);border-radius:9px;
  font-family:var(--font);font-size:13.5px;color:var(--fg);background:#fff;outline:none;transition:.15s;
}
#search::placeholder{color:var(--muted-2)}
#search:focus{border-color:var(--blue);box-shadow:0 0 0 3px var(--blue-50)}
.search-kbd{position:absolute;right:9px;top:50%;transform:translateY(-50%);display:flex;gap:3px;pointer-events:none}
.search-kbd kbd{
  font-family:var(--font);font-size:10px;font-weight:500;color:var(--muted-2);
  background:#f6f6f8;border:1px solid var(--line);border-radius:5px;padding:1.5px 5px;line-height:1.3;
}

.nav-group{margin-bottom:16px}
.nav-group-title{
  font-size:11px;font-weight:600;text-transform:uppercase;letter-spacing:.07em;
  color:var(--muted-2);padding:0 12px 7px;
}
.nav-link{
  display:block;text-decoration:none;color:var(--fg-2);font-size:13.5px;font-weight:400;
  padding:6.5px 12px;border-radius:7px;margin-bottom:1px;transition:background .12s,color .12s;
}
.nav-link:hover{background:#f0f1f3;color:var(--fg)}
.nav-link.active{background:var(--blue-50);color:var(--blue-d);font-weight:600}
.nav-link.hidden{display:none}
.nav-group.hidden{display:none}

/* ===== İçerik ===== */
.content{
  flex:1 1 auto;min-width:0;max-width:calc(var(--content-max) + 120px);
  padding:50px 60px 96px;
}
.doc-section{display:none}
.doc-section.active{display:block;animation:fade .2s ease}
@keyframes fade{from{opacity:0;transform:translateY(4px)}to{opacity:1;transform:none}}

.crumb{font-size:13px;font-weight:600;color:var(--blue);margin-bottom:13px}

.doc-section h1{
  font-size:31px;font-weight:800;letter-spacing:-.03em;line-height:1.2;
  margin-bottom:11px;color:var(--fg);
}
.lead{font-size:16px;color:var(--muted);line-height:1.62;margin-bottom:36px;max-width:66ch;font-weight:400}

.doc-section h2{
  font-size:20px;font-weight:700;letter-spacing:-.02em;
  margin:46px 0 15px;padding-top:18px;border-top:1px solid var(--line-2);color:var(--fg);
  scroll-margin-top:24px;
}
.doc-section h2:first-of-type{border-top:none;padding-top:0;margin-top:8px}
.doc-section h3{font-size:16px;font-weight:600;margin:26px 0 8px;color:var(--fg);scroll-margin-top:24px}
.doc-section p{margin-bottom:14px;color:var(--fg-2);max-width:68ch}
.doc-section a{color:var(--blue);text-decoration:none;font-weight:500}
.doc-section a:hover{text-decoration:underline;text-underline-offset:2px}
.doc-section strong{color:var(--fg);font-weight:600}

/* listeler */
.doc-section ul,.doc-section ol{margin:0 0 16px;padding:0;list-style:none;max-width:68ch}
.doc-section ul li{position:relative;padding:5px 0 5px 22px;color:var(--fg-2)}
.doc-section ul li::before{content:"";position:absolute;left:3px;top:12.5px;width:5px;height:5px;border-radius:50%;background:var(--blue-100)}
.doc-section ol{counter-reset:st}
.doc-section ol li{position:relative;padding:6px 0 6px 36px;margin-bottom:3px;counter-increment:st;color:var(--fg-2)}
.doc-section ol li::before{
  content:counter(st);position:absolute;left:0;top:5px;width:23px;height:23px;border-radius:7px;
  background:var(--blue-50);color:var(--blue-d);font-size:12px;font-weight:600;
  display:flex;align-items:center;justify-content:center;
}
.doc-section li strong{color:var(--fg)}

/* kart ızgarası */
.feat-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:12px;margin:6px 0 24px}
.feat{border:1px solid var(--line);border-radius:var(--radius);padding:16px;background:#fff;transition:.15s;display:block}
.feat:hover{border-color:var(--blue-100);box-shadow:0 4px 14px -8px rgba(37,99,235,.25)}
.feat .ic{
  width:34px;height:34px;border-radius:9px;background:var(--blue-50);color:var(--blue);
  display:flex;align-items:center;justify-content:center;margin-bottom:11px;font-size:16px;
}
.feat h4{font-size:14.5px;font-weight:600;margin-bottom:4px;color:var(--fg)}
.feat p{font-size:13px;color:var(--muted);margin:0;line-height:1.55}

/* callout */
.note{
  border:1px solid var(--line);border-radius:var(--radius);background:var(--bg-soft);
  padding:14px 16px 14px 44px;margin:20px 0;font-size:14px;color:var(--fg-2);position:relative;
}
.note::before{
  content:"i";position:absolute;left:15px;top:14px;width:20px;height:20px;border-radius:50%;
  background:var(--blue);color:#fff;font-size:12px;font-weight:700;
  display:flex;align-items:center;justify-content:center;font-family:Georgia,serif;font-style:italic;
}
.note.tip{background:#f1faf4;border-color:#d2ead9}
.note.tip::before{content:"✓";background:var(--green);font-style:normal;font-family:var(--font);font-size:12px}
.note.warn{background:#fdf7ee;border-color:#f1e1c8}
.note.warn::before{content:"!";background:var(--amber);font-style:normal;font-family:var(--font)}
.note .nt{display:block;font-weight:600;color:var(--fg);margin-bottom:3px;font-size:13.5px}
.note ul{margin:8px 0 0!important}
.note ul li{padding:3px 0 3px 18px}
.note ul li::before{top:11px}
.note a{color:var(--blue)}

/* tablo */
.tbl-wrap{overflow-x:auto;margin:6px 0 24px;border:1px solid var(--line);border-radius:var(--radius)}
table{width:100%;border-collapse:collapse;font-size:13.5px;min-width:480px}
thead th{
  text-align:left;background:var(--bg-soft);color:var(--fg);font-weight:600;
  padding:10px 16px;border-bottom:1px solid var(--line);font-size:12.5px;
}
tbody td{padding:10px 16px;border-bottom:1px solid var(--line-2);color:var(--fg-2);vertical-align:top}
tbody tr:last-child td{border-bottom:none}
tbody td:first-child{font-weight:600;color:var(--fg)}
.yes{color:var(--green);font-weight:600}
.no{color:var(--muted-2)}

/* kbd, pill */
kbd{
  font-family:var(--font);font-size:11.5px;font-weight:500;background:#f6f6f8;
  border:1px solid var(--line);border-bottom-width:2px;border-radius:5px;padding:1px 6px;color:var(--fg-2);
}
.pill{
  display:inline-block;font-size:11px;font-weight:600;padding:2px 8px;border-radius:20px;
  background:var(--blue-50);color:var(--blue-d);margin-left:5px;vertical-align:middle;
}
.pill.biz{background:#f4f1fe;color:#7c3aed}

/* önceki/sonraki */
.pager{display:flex;gap:12px;margin-top:52px;flex-wrap:wrap}
.pager a{flex:1;min-width:190px;border:1px solid var(--line);border-radius:var(--radius);padding:14px 16px;text-decoration:none;transition:.15s;background:#fff}
.pager a:hover{border-color:var(--blue-100);background:var(--blue-50)}
.pager .dir{font-size:12px;color:var(--muted);font-weight:500;margin-bottom:3px}
.pager .ttl{font-size:14px;color:var(--blue);font-weight:600}
.pager .next{text-align:right}

.doc-footer{margin-top:60px;padding-top:22px;border-top:1px solid var(--line);color:var(--muted);font-size:13.5px}
.doc-footer-sub{font-size:12.5px;margin-top:3px;color:var(--muted-2)}

/* ===== Sağ: Bu sayfada ===== */
.toc{width:var(--toc-w);flex-shrink:0;position:sticky;top:0;height:100vh;overflow-y:auto;padding:54px 18px 40px}
.toc.empty{visibility:hidden}
.toc-title{font-size:11.5px;font-weight:600;color:var(--muted);text-transform:uppercase;letter-spacing:.06em;margin-bottom:11px;padding-left:13px}
.toc-nav{border-left:1px solid var(--line)}
.toc-link{display:block;font-size:13px;color:var(--muted);padding:5px 13px;border-left:2px solid transparent;margin-left:-1px;text-decoration:none;transition:.12s;line-height:1.45}
.toc-link:hover{color:var(--fg-2)}
.toc-link.active{color:var(--blue-d);border-left-color:var(--blue);font-weight:500}
.toc-link.lvl-3{padding-left:25px;font-size:12.5px}

.sidebar-overlay{display:none}

/* ===== Responsive ===== */
@media (max-width:1180px){
  .toc{display:none}
  .content{padding:46px 48px 90px}
}
@media (max-width:860px){
  .topbar{display:flex}
  .layout{display:block}
  .sidebar{position:fixed;top:0;left:0;z-index:60;transform:translateX(-100%);transition:transform .25s ease;box-shadow:0 20px 60px -20px rgba(15,23,42,.35)}
  .sidebar.open{transform:translateX(0)}
  .sidebar-brand{display:none}
  .sidebar-overlay.show{display:block;position:fixed;inset:0;z-index:55;background:rgba(15,23,42,.4)}
  .content{padding:28px 22px 60px;max-width:100%}
  .doc-section h1{font-size:26px}
  .feat-grid{grid-template-columns:1fr}
}
