
@font-face{font-family:'Fraunces';font-weight:460;src:url(/assets/fonts/Fraunces-460-normal.woff2) format('woff2');font-display:swap;}
@font-face{font-family:'Fraunces';font-weight:600;src:url(/assets/fonts/Fraunces-600-normal.woff2) format('woff2');font-display:swap;}
@font-face{font-family:'EB Garamond';font-weight:400;src:url(/assets/fonts/EBGaramond-400-normal.woff2) format('woff2');font-display:swap;}
@font-face{font-family:'EB Garamond';font-weight:600;src:url(/assets/fonts/EBGaramond-600-normal.woff2) format('woff2');font-display:swap;}
@font-face{font-family:'EB Garamond';font-weight:400;font-style:italic;src:url(/assets/fonts/EBGaramond-400-italic.woff2) format('woff2');font-display:swap;}
@font-face{font-family:'Newsreader';font-weight:400;src:url(/assets/fonts/Newsreader-400-normal.woff2) format('woff2');font-display:swap;}
@font-face{font-family:'JetBrains Mono';font-weight:400;src:url(/assets/fonts/JetBrainsMono-400-normal.woff2) format('woff2');font-display:swap;}
@font-face{font-family:'JetBrains Mono';font-weight:500;src:url(/assets/fonts/JetBrainsMono-500-normal.woff2) format('woff2');font-display:swap;}
:root{color-scheme:light;--paper:#F3EEE4;--ink:#1A1714;--oxblood:#9A3324;--oxblood-deep:#7E2A1C;--paper-deep:#EBE4D5;--paper-card:#FCFAF4;--ink-soft:#4A443C;--ink-mute:#8A8175;--rule:#DCD4C4;--rule-soft:#E7E0D2;--oxblood-soft:rgba(154,51,36,.08);}
*{box-sizing:border-box;margin:0;padding:0}
html{scroll-behavior:smooth;background:#F3EEE4!important;color-scheme:light!important}
body{background:#F3EEE4!important;color:#1A1714!important;font-family:'EB Garamond',Georgia,serif;font-size:19px;line-height:1.62;-webkit-font-smoothing:antialiased;forced-color-adjust:none;min-height:100dvh}
@media (prefers-color-scheme:dark){html,body{background:#F3EEE4!important;color:#1A1714!important}.card,.tile{background:#FCFAF4!important}}
body::before{content:'';position:fixed;inset:0;pointer-events:none;z-index:0;background:radial-gradient(circle at 20% 30%,rgba(122,30,30,.015) 0%,transparent 40%),radial-gradient(circle at 80% 70%,rgba(74,64,56,.02) 0%,transparent 40%)}
.progress{position:fixed;top:0;left:0;height:2px;background:var(--oxblood);width:0;z-index:100}
.topbar{position:sticky;top:0;z-index:50;background:rgba(243,238,228,.92);backdrop-filter:blur(8px);border-bottom:1px solid var(--rule);padding:12px 28px;display:flex;justify-content:space-between;align-items:center;gap:16px;flex-wrap:wrap}
.topbar .brand{text-decoration:none;color:var(--ink);display:flex;align-items:baseline;gap:10px}
.topbar .sep{color:var(--oxblood)}
.topbar .space{font-family:'JetBrains Mono',monospace;font-size:11.5px;letter-spacing:.14em;text-transform:uppercase;color:var(--ink-mute)}
.topbar nav{display:flex;gap:2px;flex-wrap:wrap}
.topbar nav a{font-family:'JetBrains Mono',monospace;font-size:11.5px;letter-spacing:.1em;text-transform:uppercase;color:var(--ink-soft);text-decoration:none;padding:6px 10px;border-radius:4px}
.topbar nav a:hover{background:var(--oxblood-soft);color:var(--oxblood)}
.topbar nav a.on{color:var(--oxblood);border-bottom:2px solid var(--oxblood);border-radius:0}
.mark-1706{font-family:'Fraunces',Georgia,serif;font-weight:600;line-height:1;letter-spacing:-.01em;color:var(--ink);font-variant-numeric:lining-nums;display:inline-block;font-size:22px}
.mark-1706 .dot{color:var(--oxblood)}
.frame{position:relative;z-index:1;max-width:820px;margin:0 auto;padding:56px 40px 100px}
.frame.wide{max-width:1080px}
.eyebrow{font-family:'JetBrains Mono',monospace;font-size:12px;letter-spacing:.18em;text-transform:uppercase;color:var(--ink-mute)}
.eyebrow .mark{color:var(--oxblood)}
.crumb{display:inline-block;font-family:'JetBrains Mono',monospace;font-size:11.5px;letter-spacing:.14em;text-transform:uppercase;color:var(--ink-mute);text-decoration:none;margin-bottom:18px;padding:6px 10px 6px 0;border-radius:4px}
.crumb:hover{color:var(--oxblood)}
.mast{border-bottom:1px solid var(--rule);padding-bottom:30px;margin-bottom:40px}
.mast h1{font-family:'Fraunces',Georgia,serif;font-weight:460;font-size:clamp(32px,5.5vw,48px);line-height:1.08;letter-spacing:-.01em;margin:16px 0 12px}
.mast .standfirst{font-family:'Newsreader',Georgia,serif;font-size:21px;line-height:1.5;color:var(--ink-soft);max-width:60ch}
section{margin:48px 0}
.sec-mark{font-family:'JetBrains Mono',monospace;font-size:12px;letter-spacing:.14em;color:var(--oxblood);margin-bottom:12px}
h2{font-family:'Fraunces',Georgia,serif;font-weight:440;font-size:clamp(24px,4vw,31px);line-height:1.15;margin:40px 0 14px}
h3{font-family:'Fraunces',Georgia,serif;font-weight:500;font-size:21px;line-height:1.25;margin:26px 0 8px}
h4{font-family:'Fraunces',Georgia,serif;font-weight:500;font-size:18px;margin:18px 0 6px}
p{margin-bottom:16px}
ul,ol{margin:0 0 16px 24px}
li{margin-bottom:6px}
a{color:var(--oxblood-deep)}
.em{color:var(--oxblood-deep);font-weight:500}
hr{border:none;border-top:1px solid var(--rule);margin:40px 0}
blockquote{border-left:2px solid var(--oxblood);padding-left:20px;margin:22px 0;color:var(--ink-soft);font-family:'Newsreader',Georgia,serif;font-size:20px}
code{font-family:'JetBrains Mono',monospace;font-size:14px;background:var(--paper-deep);border-radius:3px;padding:1px 6px}
table{width:100%;border-collapse:collapse;margin:18px 0;font-size:15px;line-height:1.45}
th{font-family:'JetBrains Mono',monospace;font-size:10.5px;letter-spacing:.1em;text-transform:uppercase;color:var(--ink-mute);text-align:left;padding:9px 10px 7px;border-bottom:1.5px solid var(--ink-soft)}
td{padding:9px 10px;border-bottom:1px solid var(--rule-soft);vertical-align:top}
.card{background:#FCFAF4;border:1px solid var(--rule-soft);border-radius:6px;padding:22px 26px;margin:20px 0}
.card p:last-child{margin-bottom:0}
.grid{display:grid;grid-template-columns:repeat(2,1fr);gap:14px;margin:20px 0}
.grid.three{grid-template-columns:repeat(3,1fr)}
.speech{margin-top:10px}
.beat{padding:26px 0;border-bottom:1px solid var(--rule-soft)}
.beat:last-child{border-bottom:none}
.beat-k{font-family:'JetBrains Mono',monospace;font-size:11px;letter-spacing:.18em;text-transform:uppercase;color:var(--oxblood);margin-bottom:12px;display:flex;justify-content:space-between;gap:12px;flex-wrap:wrap}
.beat-note{color:var(--ink-mute);text-decoration:none;font-weight:400}
.beat-note:hover{color:var(--oxblood)}
.beat p{font-size:20px;line-height:1.62;color:var(--ink);max-width:64ch}
.pull{font-family:'Fraunces',Georgia,serif;font-weight:460;font-size:clamp(22px,3.4vw,28px);line-height:1.3;color:var(--ink);border-left:2px solid var(--oxblood);padding:6px 0 6px 22px;margin:22px 0 26px}
.principles{margin-top:10px}
.pr{display:grid;grid-template-columns:54px 1fr;gap:18px;padding:22px 0;border-bottom:1px solid var(--rule-soft)}
.pr:last-child{border-bottom:none}
.pn{font-family:'JetBrains Mono',monospace;font-size:12px;letter-spacing:.14em;color:var(--oxblood);padding-top:8px}
.pr h3{margin:0 0 6px}
.pr p{font-size:17px;color:var(--ink-soft);margin:0}
.faq{padding:20px 0;border-bottom:1px solid var(--rule-soft)}
.faq:last-child{border-bottom:none}
.faq h3{margin:0 0 8px}
.faq p{font-size:17.5px;color:var(--ink-soft);margin:0}
.intro{font-family:'Newsreader',Georgia,serif;font-size:21px;line-height:1.5;color:var(--ink-soft);margin-bottom:24px}
.fb{display:flex;flex-direction:column;gap:8px;margin-top:18px;max-width:640px}
.fb label{font-family:'JetBrains Mono',monospace;font-size:10.5px;letter-spacing:.18em;text-transform:uppercase;color:var(--ink-mute);margin-top:8px}
.fb input,.fb textarea{font-family:'EB Garamond',Georgia,serif;font-size:18px;background:#FCFAF4;border:1px solid var(--rule);border-radius:6px;padding:12px 14px;color:var(--ink);outline:none;resize:vertical}
.fb input:focus,.fb textarea:focus{border-color:var(--oxblood)}
.fb-row{display:flex;align-items:center;gap:16px;margin-top:10px;flex-wrap:wrap}
.fb-send{background:var(--ink);color:var(--paper);border:none;border-radius:6px;padding:12px 22px;font-family:'JetBrains Mono',monospace;font-size:12px;letter-spacing:.14em;text-transform:uppercase;cursor:pointer}
.fb-send:hover{background:var(--oxblood-deep)}
.fb-send:disabled{opacity:.5;cursor:default}
.fb-status{font-family:'EB Garamond',Georgia,serif;font-style:italic;font-size:17px;color:var(--ink-soft)}
.fb-entry{padding:16px 20px;background:#FCFAF4;border:1px solid var(--rule-soft);border-left:2px solid var(--oxblood);border-radius:0 6px 6px 0;margin:12px 0;max-width:640px}
.fb-meta{font-family:'JetBrains Mono',monospace;font-size:10.5px;letter-spacing:.14em;text-transform:uppercase;color:var(--ink-mute);margin-bottom:6px}
.fb-meta .mark{color:var(--oxblood)}
.fb-entry p{margin:0;font-size:17px;color:var(--ink)}
.tile{display:block;background:#FCFAF4;border:1px solid var(--rule-soft);border-radius:6px;padding:20px 22px;text-decoration:none;color:var(--ink);transition:transform .15s,border-color .2s}
.tile:hover{transform:translateY(-2px);border-color:var(--oxblood)}
.tile .k{font-family:'JetBrains Mono',monospace;font-size:10.5px;letter-spacing:.14em;text-transform:uppercase;color:var(--oxblood);margin-bottom:8px}
.tile h3{margin:0 0 6px;font-size:19px}
.tile p{font-size:15px;line-height:1.5;color:var(--ink-soft);margin:0}
.tile .meta{font-family:'JetBrains Mono',monospace;font-size:10.5px;color:var(--ink-mute);margin-top:10px}
.pill{font-family:'JetBrains Mono',monospace;font-size:10px;letter-spacing:.1em;text-transform:uppercase;border-radius:3px;padding:2px 7px;display:inline-block}
.pill.built{background:var(--oxblood);color:#fff}
.pill.live{background:var(--ink-soft);color:#fff}
.pill.proposed{border:1px solid var(--ink-mute);color:var(--ink-mute)}
.pull{font-family:'Newsreader',Georgia,serif;font-size:25px;line-height:1.35;border-left:2px solid var(--oxblood);padding-left:24px;margin:36px 0}
.dark-panel{background:#1A1714;color:var(--paper);border-radius:6px;padding:44px 40px;margin:56px 0 0;forced-color-adjust:none}
.dark-panel .eyebrow{color:rgba(244,237,218,.6)}
.dark-panel h2{color:var(--paper);margin-top:12px}
.dark-panel p{color:rgba(244,237,218,.86)}
.dark-panel .accent{color:#E0A0A0}
.foot{margin-top:70px;padding-top:24px;border-top:1px solid var(--rule);font-family:'JetBrains Mono',monospace;font-size:12px;letter-spacing:.08em;color:var(--ink-mute);display:flex;justify-content:space-between;align-items:baseline;flex-wrap:wrap;gap:8px}
.foot .mark{color:var(--oxblood)}
.dl{display:grid;grid-template-columns:180px 1fr;gap:6px 18px;margin:16px 0}
.dl dt{font-family:'JetBrains Mono',monospace;font-size:11px;letter-spacing:.12em;text-transform:uppercase;color:var(--ink-mute);padding-top:5px}
.dl dd{margin:0 0 10px}
.filter{width:100%;font-family:'Work Sans','EB Garamond',serif;font-size:16px;padding:10px 14px;border:1.5px solid var(--rule);border-radius:6px;background:#fff;margin:14px 0 6px}
.changelog li{margin-bottom:10px}
.changelog .d{font-family:'JetBrains Mono',monospace;font-size:11.5px;color:var(--oxblood);margin-right:10px}
.md-doc h1{font-family:'Fraunces',Georgia,serif;font-weight:460;font-size:clamp(30px,5vw,44px);line-height:1.1;margin:0 0 12px}
.md-doc h2{margin-top:44px}
.md-doc p a{word-break:break-all;font-family:'JetBrains Mono',monospace;font-size:12px}
.md-doc li a{word-break:break-all;font-family:'JetBrains Mono',monospace;font-size:12px}
.md-doc td a{word-break:break-all;font-family:'JetBrains Mono',monospace;font-size:11px}
.status{display:grid;grid-template-columns:repeat(4,1fr);gap:12px;margin:8px 0 8px}
.status .ws{background:#FCFAF4;border:1px solid var(--rule-soft);border-radius:6px;padding:14px 16px}
.status .ws .k{font-family:'JetBrains Mono',monospace;font-size:10px;letter-spacing:.14em;text-transform:uppercase;color:var(--oxblood);margin-bottom:6px}
.status .ws .st{font-weight:600;font-size:16px;line-height:1.3}
.status .ws .nx{font-size:13.5px;color:var(--ink-soft);margin-top:4px;line-height:1.4}
.log{list-style:none;margin:0}
.log li{display:grid;grid-template-columns:110px 1fr;gap:16px;padding:12px 0;border-bottom:1px solid var(--rule-soft)}
.log .d{font-family:'JetBrains Mono',monospace;font-size:11.5px;color:var(--oxblood);padding-top:4px}
.read{list-style:none;margin:0}
.read li{padding:16px 0;border-bottom:1px solid var(--rule-soft)}
.read .t{font-family:'Fraunces',Georgia,serif;font-weight:500;font-size:19px}
.read .a{font-family:'JetBrains Mono',monospace;font-size:11px;letter-spacing:.08em;color:var(--ink-mute);margin:2px 0 6px}
.read p{font-size:16px;color:var(--ink-soft);margin:0}
.sample{background:#fff;border:1px solid var(--rule);border-radius:6px;padding:20px 24px;margin:16px 0;font-size:16px}
.sample .sh{font-family:'JetBrains Mono',monospace;font-size:10.5px;letter-spacing:.14em;text-transform:uppercase;color:var(--oxblood);margin-bottom:8px}
.sample p{margin-bottom:10px}
.sample ul{margin-bottom:10px}
.ask{margin-top:44px;border:1.5px solid var(--oxblood);border-radius:6px;padding:20px 24px;display:flex;justify-content:space-between;align-items:center;gap:16px;flex-wrap:wrap}
.ask a.btn{background:var(--oxblood);color:#fff;text-decoration:none;font-family:'JetBrains Mono',monospace;font-size:11.5px;letter-spacing:.1em;text-transform:uppercase;padding:10px 16px;border-radius:4px}
@media (max-width:900px){.status{grid-template-columns:1fr 1fr}}
@media (max-width:700px){.frame{padding:40px 20px 80px}.status{grid-template-columns:1fr}.log li{grid-template-columns:1fr}.grid,.grid.three{grid-template-columns:1fr}.dl{grid-template-columns:1fr}.dark-panel{padding:36px 24px}}
@media print{.progress,.topbar{display:none}*{-webkit-print-color-adjust:exact;print-color-adjust:exact}@page{margin:16mm 15mm}}
