/* Shared styles for the guide pages. Colours match the home page. */
:root {
  --bg: #1d2026; --panel: #282c34; --border: #3e4451; --text: #dcdfe4; --dim: #8b929e; --faint: #5c6370;
  --blue: #61afef; --cyan: #56b6c2; --green: #98c379; --yellow: #e5c07b;
  --mono: "JetBrains Mono", ui-monospace, "SF Mono", Menlo, monospace;
  --sans: Inter, system-ui, -apple-system, "Segoe UI", sans-serif;
}
* { box-sizing: border-box; }
body { margin: 0; background: var(--bg); color: var(--text); font: 17px/1.7 var(--sans); -webkit-font-smoothing: antialiased; }
a { color: var(--blue); text-decoration: none; }
a:hover { text-decoration: underline; }
nav { border-bottom: 1px solid rgba(62, 68, 81, 0.6); }
nav .in, main, footer .in { max-width: 760px; margin: 0 auto; padding: 0 16px; }
nav .in { display: flex; align-items: center; gap: 10px; height: 60px; font: 700 17px var(--mono); }
nav .in a { color: var(--text); display: flex; align-items: center; gap: 10px; }
nav .in img { width: 28px; height: 28px; }
nav .in .dl { margin-left: auto; font: 500 14px var(--mono); color: var(--blue); }
.crumbs { font: 13px var(--mono); color: var(--faint); margin: 36px 0 8px; }
.crumbs a { color: var(--dim); }
h1 { font: 700 clamp(28px, 5vw, 40px)/1.15 var(--mono); letter-spacing: -0.02em; margin: 0 0 14px; }
.lede { font-size: 19px; color: var(--dim); margin: 0 0 28px; }
h2 { font: 700 23px/1.3 var(--mono); margin: 44px 0 12px; }
h3 { font: 700 18px/1.4 var(--mono); margin: 28px 0 6px; }
p, li { color: #c3c7ce; }
ul, ol { padding-left: 22px; }
li { margin-bottom: 8px; }
strong { color: var(--text); }
code, kbd { font: 0.88em var(--mono); background: var(--panel); border: 1px solid var(--border); border-radius: 5px; padding: 0.05em 0.4em; }
.check { list-style: none; padding: 0; }
.check li { padding-left: 34px; position: relative; }
.check li::before { content: "[ ]"; position: absolute; left: 0; font: 15px var(--mono); color: var(--dim); }
.tip { background: var(--panel); border: 1px solid rgba(62, 68, 81, 0.7); border-left: 3px solid var(--blue); border-radius: 10px; padding: 14px 18px; margin: 24px 0; }
.tip p { margin: 0; }
.cta { background: var(--panel); border: 1px solid rgba(62, 68, 81, 0.7); border-radius: 14px; padding: 24px; margin: 48px 0 24px; text-align: center; }
.cta p { margin: 0 0 16px; color: var(--dim); }
.btn { display: inline-block; padding: 11px 20px; border-radius: 10px; background: var(--blue); color: #10141a; font: 600 15px var(--mono); }
.btn:hover { text-decoration: none; background: #7cbdf2; }
.more { font: 14px var(--mono); color: var(--dim); }
footer { border-top: 1px solid rgba(62, 68, 81, 0.6); margin-top: 56px; padding: 24px 0 40px; color: var(--faint); font-size: 13px; }
