:root{--bg:#f3f5f8;--card:#fff;--txt:#1b2333;--mut:#4b5567;--line:#e3e8ef;--strong:#0b2f63;--acc:#1351b4;--tse:#0b2f63;color-scheme:light}
:root[data-theme="dark"]{--bg:#020617;--card:#0b1222;--txt:#e2e8f0;--mut:#a9b4c6;--line:#1e293b;--strong:#f1f5f9;--acc:#5b9dff;--tse:#0a2350;color-scheme:dark}
*{box-sizing:border-box}
body{margin:0;background:var(--bg);color:var(--txt);font:15px/1.7 Inter,"Segoe UI",system-ui,-apple-system,Roboto,sans-serif;-webkit-font-smoothing:antialiased}
header{background:var(--tse);color:#fff;padding:14px 20px}
header a{color:#fff;text-decoration:none;font-weight:700;display:inline-flex;align-items:center;gap:10px}
header img{width:30px;height:30px}
main{max-width:860px;margin:24px auto;padding:28px clamp(18px,4vw,40px);background:var(--card);border:1px solid var(--line);border-radius:12px}
h1{font-size:clamp(24px,4vw,30px);color:var(--strong);margin:0 0 4px;line-height:1.25}
h2{font-size:18px;color:var(--strong);margin:30px 0 8px;padding-top:10px;border-top:1px solid var(--line)}
p,li{color:var(--mut)}
a{color:var(--acc)}
.meta{font-size:13px;color:var(--mut);margin-bottom:18px}
.box{background:rgba(19,81,180,.07);border-left:4px solid var(--acc);padding:12px 14px;border-radius:6px;margin:16px 0}
.tw{overflow-x:auto}
table{width:100%;border-collapse:collapse;font-size:13.5px;margin:10px 0;min-width:560px}
th,td{border:1px solid var(--line);padding:8px 10px;text-align:left;vertical-align:top}
th{background:rgba(19,81,180,.07);color:var(--strong)}
code{font-size:13px}
footer{max-width:860px;margin:0 auto 32px;padding:0 16px;font-size:13px;color:var(--mut);text-align:center}
footer a{margin:0 6px}
.btn{display:inline-block;padding:9px 16px;border-radius:8px;background:var(--acc);color:#fff;text-decoration:none;font-weight:700}
