:root{--ink:#0d0a08;--paper:#ece3d5;--muted:#b6a98f;--blood:#c8181c;--blood-bright:#ee2630;--gold:#c8a23f;--line:rgba(200,24,28,.22);--card:#15100d}
*{box-sizing:border-box;margin:0;padding:0}
body{background:var(--ink);color:var(--paper);font-family:'Spectral',Georgia,'Times New Roman',serif;line-height:1.75;-webkit-font-smoothing:antialiased}
.wrap{max-width:820px;margin:0 auto;padding:0 24px}
header.site{border-bottom:1px solid var(--line);background:rgba(8,5,4,.85);position:sticky;top:0;backdrop-filter:blur(6px);z-index:10}
.nav{display:flex;align-items:center;justify-content:space-between;height:62px}
.brand{font-weight:700;font-size:1.15rem;letter-spacing:1px;color:var(--paper);text-decoration:none}
.brand b{color:var(--blood-bright)}
.nav .links a{color:var(--muted);text-decoration:none;font-size:.85rem;margin-left:18px}
.nav .links a:hover{color:#fff}
.nav .links a.cta{color:#0d0a08;background:var(--blood);padding:8px 16px;border-radius:6px;font-weight:700}
.nav .links a.cta:hover{background:var(--blood-bright);color:#0d0a08}
main{padding:30px 0 70px}
.crumb{font-size:.8rem;color:var(--muted);letter-spacing:.04em;margin:10px 0 22px}
.crumb a{color:var(--muted);text-decoration:none}
.crumb a:hover{color:#fff}
.eyebrow{font-family:'JetBrains Mono',monospace;font-size:.72rem;letter-spacing:.22em;text-transform:uppercase;color:var(--blood-bright)}
h1{font-family:'Cinzel',Georgia,serif;font-size:clamp(2rem,5vw,2.9rem);line-height:1.12;margin:8px 0 16px;letter-spacing:.5px}
h1 .a{color:var(--blood-bright)}
.lede{font-size:1.18rem;color:#d8ccba;margin-bottom:10px}
h2{font-family:'Cinzel',Georgia,serif;font-size:1.4rem;margin:34px 0 12px;color:var(--gold);border-bottom:1px solid var(--line);padding-bottom:8px}
h3{font-family:'Cinzel',Georgia,serif;font-size:1.08rem;margin:22px 0 8px;color:#ece3d5}
p,li{color:#d3c7b5;margin-bottom:13px}
ul,ol{padding-left:22px}
li::marker{color:var(--blood)}
a{color:var(--blood-bright)}
strong{color:#fff}
code{font-family:'JetBrains Mono',monospace;font-size:.88em;color:#e6a23c;background:rgba(200,24,28,.1);padding:1px 5px;border-radius:3px}
pre{background:#0a0706;border:1px solid var(--line);border-left:3px solid var(--blood);border-radius:4px;padding:16px 18px;margin:8px 0 18px;overflow-x:auto;font-family:'JetBrains Mono',monospace;font-size:12.5px;line-height:1.65;color:#cdbfa6;white-space:pre}
pre .k{color:#e6a23c}
pre .s{color:#9ccb7a}
pre .c{color:#7a6f5d}
.note{background:var(--card);border:1px solid var(--line);border-left:3px solid var(--gold);border-radius:4px;padding:14px 18px;margin:16px 0;color:#cabfa9}
details{border:1px solid var(--line);border-radius:4px;padding:4px 16px;margin:8px 0;background:rgba(0,0,0,.2)}
summary{cursor:pointer;font-weight:600;color:#ece3d5;padding:10px 0}
details p{padding-bottom:10px}
.cta-box{margin:38px 0 10px;background:linear-gradient(180deg,rgba(200,24,28,.12),rgba(20,16,13,.6));border:1px solid var(--line);border-radius:8px;padding:28px;text-align:center}
.cta-box h2{border:none;color:#ece3d5;margin:0 0 6px}
.cta-box .btn{display:inline-block;margin-top:12px;background:var(--blood);color:#0d0a08;font-weight:800;padding:13px 28px;border-radius:7px;text-decoration:none}
.cta-box .btn:hover{background:var(--blood-bright)}
.related{display:flex;flex-wrap:wrap;gap:10px;margin:14px 0 0}
.related a{font-size:.85rem;border:1px solid var(--line);border-radius:999px;padding:7px 14px;text-decoration:none;color:#d8ccba}
.related a:hover{border-color:var(--blood);color:#fff}
table.tbl{width:100%;border-collapse:collapse;margin:14px 0;font-size:.95rem}
table.tbl th,table.tbl td{border:1px solid var(--line);padding:10px 12px;text-align:left;vertical-align:top}
table.tbl th{background:rgba(200,24,28,.1);color:#ece3d5;font-family:'Cinzel',serif}
footer.site{border-top:1px solid var(--line);padding:30px 0;color:var(--muted);font-size:.82rem;text-align:center}
footer.site a{color:var(--muted);margin:0 8px;text-decoration:none}
footer.site a:hover{color:#fff}
@media(max-width:560px){.nav .links a:not(.cta){display:none}}
