:root { --ink:#1a2333; --mut:#5a6b7f; --bg:#fff; --acc:#0b5fd0; --ok:#177245; --wrn:#a56b00; --bad:#b3231f; --lt:#f3f6fa; }
* { box-sizing:border-box; }
body { margin:0; font:16px/1.6 system-ui,-apple-system,"Segoe UI",Roboto,sans-serif; color:var(--ink); background:var(--bg); }
main { max-width:44rem; margin:0 auto; padding:0 1.1rem 4rem; }
header.site { max-width:44rem; margin:0 auto; padding:1.1rem; display:flex; justify-content:space-between; align-items:center; }
header.site a.brand { font-weight:700; text-decoration:none; color:var(--ink); font-size:1.05rem; }
nav.site a { margin-left:1rem; color:var(--mut); text-decoration:none; font-size:.95rem; }
nav.site a:hover { color:var(--acc); }
h1 { font-size:1.7rem; line-height:1.25; margin:.6rem 0 .8rem; }
h2 { font-size:1.25rem; margin-top:2rem; }
code, .rec { font-family:ui-monospace,Menlo,Consolas,monospace; font-size:.85rem; background:var(--lt); padding:.15rem .4rem; border-radius:4px; word-break:break-all; }
table.rec { border-collapse:collapse; width:100%; margin:1rem 0; font-size:.88rem; }
table.rec th, table.rec td { text-align:left; border:1px solid #d6dee9; padding:.45rem .6rem; }
table.rec th { background:var(--lt); }
.badge { display:inline-block; font-size:.78rem; font-weight:600; padding:.1rem .5rem; border-radius:9px; }
.badge.ok { background:#e5f3ea; color:var(--ok); }
.badge.warn { background:#faf1dc; color:var(--wrn); }
.badge.bad { background:#fbe4e3; color:var(--bad); }
.card { background:var(--lt); border:1px solid #dde5ee; border-radius:10px; padding:1rem 1.1rem; margin:1rem 0; }
.cta-strip { background:var(--lt); border-top:1px solid #dde5ee; margin-top:2.5rem; }
.cta-inner { max-width:44rem; margin:0 auto; padding:1.6rem 1.1rem; }
.btn { display:inline-block; background:var(--acc); color:#fff; text-decoration:none; font-weight:600; padding:.7rem 1.3rem; border-radius:8px; border:0; cursor:pointer; font-size:1rem; }
.btn:hover { background:#084ba6; }
label { display:block; font-weight:600; margin:.9rem 0 .25rem; }
input[type=text], input[type=email], select { width:100%; padding:.55rem .6rem; border:1px solid #b9c4d2; border-radius:6px; font:inherit; }
form.chk, form.intent { max-width:30rem; }
.chk-out { margin-top:1.2rem; }
.chk-row { margin:.55rem 0; }
.muted { color:var(--mut); font-size:.9rem; }
footer.site { max-width:44rem; margin:0 auto; padding:1.2rem 1.1rem 3rem; color:var(--mut); font-size:.85rem; }
footer.site a { color:inherit; }
#intent-msg { margin-top:.9rem; }
@media (prefers-reduced-motion: no-preference) { :target { scroll-behavior:smooth; } }
