/* =========================================================================
   Instalow docs styles
   Mimari: __tmp/docs baz alindi (sabit sol sidebar + icerik, sifir JavaScript).
   Tasarim: design-brif-agnostik.md token sistemi. Tum degerler var(--token)
   uzerinden gelir; bilesenlerde sabit renk yoktur. Iki tema tek token
   sozlugunden calisir: varsayilan (light) + prefers-color-scheme:dark.
   ========================================================================= */

/* ---------- Tokens: varsayilan (light) — design-brif §1.1 ---------- */
:root{
  --bg:#ffffff; --bg-1:#f8f9fc; --bg-2:#f1f3f9; --bg-3:#e7eaf3;
  --surface-raised:#ffffff;
  --line:#e6e8f0; --line-2:#d3d7e6;
  --ink:#12142b; --ink-2:#4a4f6b; --ink-3:#767c99; --ink-4:#a2a7bd;
  --accent:#7085fe; --accent-2:#5768d8;
  --accent-soft:rgba(112,133,254,.10); --accent-line:rgba(112,133,254,.30);
  --on-accent:#ffffff;
  --success:#1f9d63; --success-soft:rgba(31,157,99,.10);
  --warning:#d9962a; --warning-soft:rgba(217,150,42,.12);
  --info:#3a7fd5;    --info-soft:rgba(58,127,213,.10);
  --danger:#d64545;  --danger-soft:rgba(214,69,69,.10);
  --purple:#8256c9;  --purple-soft:rgba(130,86,201,.10);
  --r-sm:6px; --r-md:10px; --r-lg:16px;
  --font:'Inter',-apple-system,BlinkMacSystemFont,'Segoe UI',sans-serif;
  --font-mono:ui-monospace,SFMono-Regular,Menlo,monospace;
  --shadow-sm:0 1px 2px rgba(18,20,43,.06);
  --shadow-md:0 4px 16px rgba(18,20,43,.08);
  --shadow-lg:0 12px 40px rgba(18,20,43,.14);
  --sidebar-w:252px; --topbar-h:56px;
  --maxw:1240px;
}

/* ---------- Tokens: koyu tema — design-brif §1.2 ----------
   Light varsayilan; dark yalnizca kullanici tema dugmesiyle secince
   (<html data-theme="dark">) devreye girer. OS temasina bagli degildir. */
:root[data-theme="dark"]{
  --bg:#0E0D0B; --bg-1:#15130F; --bg-2:#1C1A15; --bg-3:#24211B;
  --surface-raised:#15130F;
  --line:#2A2620; --line-2:#38332B;
  --ink:#F5EFE3; --ink-2:#C9C0AC; --ink-3:#8E8676; --ink-4:#5C564A;
  --accent:#E8763A; --accent-2:#B85A24;
  --accent-soft:rgba(232,118,58,.08); --accent-line:rgba(232,118,58,.30);
  --on-accent:#1A0D04;
  --success:#6B8A4A; --success-soft:rgba(107,138,74,.08);
  --warning:#D4AC4F; --warning-soft:rgba(212,172,79,.08);
  --info:#6F8FB5;    --info-soft:rgba(111,143,181,.08);
  --danger:#C4504F;  --danger-soft:rgba(196,80,79,.08);
  --purple:#7E5B89;  --purple-soft:rgba(126,91,137,.10);
  --r-sm:4px; --r-md:8px; --r-lg:14px;
  --font:Verdana,Geneva,system-ui,sans-serif;
  --font-mono:Verdana,Geneva,system-ui,sans-serif;
  --shadow-sm:none; --shadow-md:none; --shadow-lg:0 24px 60px rgba(0,0,0,.5);
  --sidebar-w:248px; --topbar-h:52px;
}

*{box-sizing:border-box;margin:0;padding:0}
html{scroll-behavior:smooth}
body{
  background:var(--bg); color:var(--ink-2);
  font-family:var(--font); font-size:14px; line-height:1.62;
  -webkit-font-smoothing:antialiased;
}
a{color:inherit;text-decoration:none}
code,kbd,pre{font-family:var(--font-mono)}
::selection{background:var(--accent);color:var(--on-accent)}

/* ---------- Topbar — design-brif §4 ---------- */
.topbar{
  position:sticky;top:0;z-index:30;height:var(--topbar-h);
  display:flex;align-items:center;justify-content:space-between;
  padding:0 22px;gap:14px;
  background:var(--bg);border-bottom:1px solid var(--line);
}
.mark{display:flex;align-items:center;gap:10px;font-size:16px;font-weight:700;letter-spacing:-.01em;color:var(--ink)}
.brand-mark{
  width:28px;height:28px;border-radius:8px;flex:none;
  background:var(--accent);color:var(--on-accent);
  display:flex;align-items:center;justify-content:center;
  font-weight:700;font-size:15px;
}
.mark .sep{color:var(--ink-3);font-weight:400;font-size:13px}
.top-links{display:flex;align-items:center;gap:6px;font-size:13px}
.top-links a{padding:6px 10px;border-radius:var(--r-md);color:var(--ink-3);transition:90ms}
.top-links a:hover{color:var(--ink);background:var(--bg-2)}
.top-links a.active{color:var(--accent)}
.lang{border:1px solid var(--line);border-radius:999px;padding:5px 12px;font-size:11px;letter-spacing:.1em;color:var(--ink-2)}
.lang:hover{border-color:var(--accent-line);color:var(--accent);background:transparent}
/* tema dugmesi — design-brif §5.23 theme-card ruhu, kompakt */
.theme-toggle{display:inline-flex;align-items:center;justify-content:center;width:32px;height:32px;border:1px solid var(--line);border-radius:var(--r-md);background:var(--bg);color:var(--ink-2);cursor:pointer;transition:90ms}
.theme-toggle:hover{border-color:var(--line-2);background:var(--bg-2);color:var(--ink)}
.theme-toggle svg{width:16px;height:16px;display:block}
.theme-toggle .i-sun{display:none}
.theme-toggle .i-moon{display:block}
:root[data-theme="dark"] .theme-toggle .i-sun{display:block}
:root[data-theme="dark"] .theme-toggle .i-moon{display:none}

/* ---------- Layout ---------- */
.shell{display:grid;grid-template-columns:var(--sidebar-w) minmax(0,1fr);max-width:var(--maxw);margin:0 auto}
.sidebar{
  position:sticky;top:var(--topbar-h);align-self:start;
  height:calc(100vh - var(--topbar-h));overflow-y:auto;
  padding:26px 18px 60px;border-right:1px solid var(--line);background:var(--bg-1);
}
.sidebar .grp{
  font-size:10.5px;letter-spacing:.12em;text-transform:uppercase;
  color:var(--ink-4);font-weight:600;margin:20px 0 8px;
}
.sidebar .grp:first-child{margin-top:0}
.sidebar a{
  position:relative;display:flex;align-items:center;gap:8px;
  padding:6px 10px;border-radius:var(--r-sm);font-size:13px;color:var(--ink-3);transition:90ms;
}
.sidebar a:hover{color:var(--ink);background:var(--bg-2)}
.sidebar a.active{color:var(--accent);background:var(--accent-soft);font-weight:600}
.sidebar a.active::before{content:"";position:absolute;left:0;top:6px;bottom:6px;width:2px;border-radius:2px;background:var(--accent)}
.sidebar .tag-mini{margin-left:auto;font-size:9.5px;letter-spacing:.08em;text-transform:uppercase;color:var(--ink-4)}

.content{padding:36px 48px 100px;min-width:0}
.eyebrow{font-size:10.5px;font-weight:600;letter-spacing:.14em;text-transform:uppercase;color:var(--ink-4);margin-bottom:12px}
.content h1{font-size:28px;font-weight:700;letter-spacing:-.02em;line-height:1.2;color:var(--ink);margin-bottom:14px}
.lede{color:var(--ink-2);font-size:15.5px;line-height:1.65;max-width:74ch;margin-bottom:10px}

section{padding-top:40px;margin-top:12px;border-top:1px solid var(--line)}
section:first-of-type{border-top:0;padding-top:22px;margin-top:0}
section h2{font-size:20px;font-weight:700;letter-spacing:-.01em;color:var(--ink);margin-bottom:12px;scroll-margin-top:74px}
section h3{font-size:16px;font-weight:600;color:var(--ink);margin:26px 0 10px;scroll-margin-top:74px}
section h4{font-size:10.5px;letter-spacing:.14em;text-transform:uppercase;color:var(--ink-4);font-weight:600;margin:22px 0 8px}
section p{color:var(--ink-2);max-width:74ch;margin-bottom:13px;line-height:1.62}
section p.muted,.muted{color:var(--ink-3)}
section ul,section ol{margin:0 0 15px 20px;color:var(--ink-2)}
section li{margin-bottom:6px;line-height:1.55}
section a.link{color:var(--accent);border-bottom:1px solid var(--accent-line)}
section a.link:hover{border-color:var(--accent)}

/* inline code + endpoint/method pill */
p code,li code,td code,h3 code{
  background:var(--bg-2);border:1px solid var(--line);border-radius:var(--r-sm);
  padding:1px 6px;font-size:.86em;color:var(--ink)}
.endpoint{display:inline-flex;align-items:center;gap:10px;background:var(--bg-2);border:1px solid var(--line-2);border-radius:var(--r-md);padding:8px 14px;font-size:13.5px;margin:6px 0 16px}
.endpoint .m{font-weight:700;color:var(--on-accent);background:var(--accent);border-radius:var(--r-sm);padding:2px 8px;font-size:11px;letter-spacing:.05em}
.endpoint .m.get{background:var(--info)}
.endpoint .path{color:var(--ink);font-family:var(--font-mono)}

/* code blocks — design-brif §5.20 */
.code{background:var(--bg-2);border:1px solid var(--line);border-radius:var(--r-md);margin:0 0 18px;overflow:hidden}
.code .cap{display:flex;justify-content:space-between;font-size:10.5px;letter-spacing:.1em;text-transform:uppercase;color:var(--ink-4);padding:9px 14px;border-bottom:1px solid var(--line)}
.code pre{overflow-x:auto;padding:14px 16px;font-size:12.5px;line-height:1.7;color:var(--ink);white-space:pre}

/* tables — design-brif §5.7 */
.tbl{width:100%;border-collapse:collapse;margin:4px 0 20px;font-size:13.5px}
.tbl th{text-align:left;font-size:11px;letter-spacing:.05em;text-transform:uppercase;color:var(--ink-3);font-weight:600;padding:0 14px 10px;border-bottom:1px solid var(--line-2);background:var(--bg-1)}
.tbl td{padding:11px 14px;border-bottom:1px solid var(--line);vertical-align:top;color:var(--ink-2)}
.tbl tr:hover td{background:var(--bg-1)}
.tbl td:first-child{white-space:nowrap;color:var(--ink)}
.tbl .num{text-align:right;font-variant-numeric:tabular-nums}
.tbl .req{color:var(--accent);font-size:11px}
.tbl .opt{color:var(--ink-4);font-size:11px}

/* tag / rozet — design-brif §5.4 */
.tag{display:inline-flex;align-items:center;gap:6px;border-radius:999px;font-size:11px;padding:3px 9px;border:1px solid var(--line);background:var(--bg-2);color:var(--ink-2)}
.tag .dot{width:6px;height:6px;border-radius:50%;background:currentColor}
.tag.accent{color:var(--accent);background:var(--accent-soft);border-color:var(--accent-line)}
.tag.success{color:var(--success);background:var(--success-soft);border-color:color-mix(in srgb,var(--success) 30%,transparent)}
.tag.warning{color:var(--warning);background:var(--warning-soft);border-color:color-mix(in srgb,var(--warning) 30%,transparent)}
.tag.danger{color:var(--danger);background:var(--danger-soft);border-color:color-mix(in srgb,var(--danger) 30%,transparent)}
.tag.info{color:var(--info);background:var(--info-soft);border-color:color-mix(in srgb,var(--info) 30%,transparent)}

/* notice / callout — design-brif §5.10 */
.note{padding:12px 15px;border-radius:var(--r-md);background:var(--bg-2);border:1px solid var(--line);margin:0 0 18px;color:var(--ink-2)}
.note strong{color:var(--ink)}
.note.accent{background:var(--accent-soft);border-color:var(--accent-line)}
.note.accent strong{color:var(--accent)}
.note.warning{background:var(--warning-soft);border-color:color-mix(in srgb,var(--warning) 30%,transparent)}
.note.warning strong{color:var(--warning)}
.note.danger{background:var(--danger-soft);border-color:color-mix(in srgb,var(--danger) 30%,transparent)}
.note.danger strong{color:var(--danger)}
.note.success{background:var(--success-soft);border-color:color-mix(in srgb,var(--success) 30%,transparent)}
.note.success strong{color:var(--success)}

/* steps list */
.steps{list-style:none;margin:4px 0 18px;padding:0;counter-reset:s}
.steps li{position:relative;padding:2px 0 14px 34px;counter-increment:s;border-left:1px solid var(--line);margin-left:11px}
.steps li:last-child{border-left-color:transparent}
.steps li::before{content:counter(s);position:absolute;left:-11px;top:0;width:22px;height:22px;border-radius:50%;background:var(--accent-soft);border:1px solid var(--accent-line);color:var(--accent);font-size:11px;font-weight:700;display:flex;align-items:center;justify-content:center}

footer.docs-foot{border-top:1px solid var(--line);margin-top:64px;padding-top:24px;color:var(--ink-3);font-size:12.5px;display:flex;justify-content:space-between;flex-wrap:wrap;gap:12px}

/* ---------- responsive — design-brif §4 kirilimlari ---------- */
@media(max-width:900px){
  .shell{grid-template-columns:1fr}
  .sidebar{display:none}
  .content{padding:28px 20px 80px}
  .top-links .hide-sm{display:none}
}
:focus-visible{outline:2px solid var(--accent);outline-offset:2px;border-radius:var(--r-sm)}

/* scrollbar — design-brif §6 */
*{scrollbar-width:thin;scrollbar-color:var(--line-2) transparent}
*::-webkit-scrollbar{width:10px;height:10px}
*::-webkit-scrollbar-thumb{background:var(--line-2);border:3px solid var(--bg);border-radius:999px}
*::-webkit-scrollbar-track{background:transparent}
