@charset "UTF-8";
:root{--ink:#2b1719;--wine:#7d2634;--wine-dark:#4b1721;--paper:#f5ead2;--paper-light:#fffaf0;--gold:#b5883d;--line:#d6c19e;--muted:#6f625b;--shadow:0 18px 46px rgba(54,25,25,.13);color-scheme:light}
*{box-sizing:border-box}
html{scroll-behavior:smooth}
body{margin:0;background:var(--paper);color:var(--ink);font-family:"Noto Serif SC","Songti SC","STSong",serif;line-height:1.78;overflow-wrap:anywhere}
a{color:var(--wine-dark);text-underline-offset:.2em}
a:hover{text-decoration-thickness:2px}
img{max-width:100%;height:auto;display:block}
button,textarea{font:inherit}
.skip-link{position:absolute;left:-999px;top:0;background:var(--wine-dark);color:white;padding:.7rem 1rem;z-index:20}
.skip-link:focus{left:.5rem}
.site-header{position:sticky;top:0;z-index:10;display:flex;align-items:center;gap:1.25rem;justify-content:space-between;padding:.75rem clamp(1rem,4vw,4rem);background:rgba(255,250,240,.96);border-bottom:1px solid var(--line);backdrop-filter:blur(10px)}
.brand{display:flex;align-items:center;gap:.7rem;text-decoration:none;font-weight:800;letter-spacing:.08em;min-width:0}
.brand small{display:block;color:var(--muted);font:600 .62rem/1.2 system-ui,sans-serif;letter-spacing:.12em}
.brand-seal{display:grid;place-items:center;width:2.4rem;height:2.4rem;border:2px solid var(--wine);border-radius:50%;color:var(--wine);background:var(--paper-light)}
#site-nav{display:flex;flex-wrap:wrap;justify-content:flex-end;gap:.25rem}
#site-nav a{padding:.45rem .65rem;text-decoration:none;border-radius:.2rem;font-size:.92rem}
#site-nav a:hover{background:#ead9bd}
.nav-toggle{display:none;border:1px solid var(--wine);color:var(--wine-dark);background:transparent;padding:.45rem .7rem}
main{min-width:0}
.manual-page{min-width:0}
.page-hero{display:grid;grid-template-columns:minmax(0,1.05fr) minmax(18rem,.95fr);gap:clamp(2rem,5vw,5rem);align-items:center;max-width:1320px;margin:auto;padding:clamp(3rem,8vw,7rem) clamp(1rem,5vw,5rem);border-bottom:1px solid var(--line)}
.eyebrow,.section-code{font:800 .78rem/1.4 system-ui,sans-serif;letter-spacing:.16em;text-transform:uppercase;color:var(--wine)}
h1,h2,h3{line-height:1.25;letter-spacing:-.025em}
h1{font-size:clamp(2.5rem,7vw,5.8rem);margin:.25rem 0 1rem}
h2{font-size:clamp(1.6rem,3vw,2.5rem);margin:.25rem 0 1rem}
.lead{font-size:clamp(1.08rem,1.7vw,1.35rem);max-width:44rem}
.status-row{display:flex;flex-wrap:wrap;gap:.5rem;margin-top:1.4rem}
.status-row span{border:1px solid var(--line);background:var(--paper-light);padding:.25rem .65rem;font:600 .78rem/1.5 system-ui,sans-serif}
.rulebook-figure{margin:0;position:relative}
.rulebook-figure img{border:1px solid var(--gold);box-shadow:var(--shadow);background:var(--paper-light)}
.rulebook-figure figcaption{margin-top:.65rem;color:var(--muted);font-size:.88rem}
.manual-section{max-width:1180px;margin:0 auto;padding:clamp(3rem,7vw,6rem) clamp(1rem,5vw,4rem);border-bottom:1px solid var(--line);min-width:0}
.manual-section>p{max-width:64rem}
.policy-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:1rem;margin-top:2rem}
.policy-card{min-width:0;background:var(--paper-light);border:1px solid var(--line);border-top:4px solid var(--wine);padding:1.35rem;box-shadow:0 8px 20px rgba(54,25,25,.07)}
.policy-card h2{font-size:1.5rem}
.card-index{font:800 .72rem/1 system-ui,sans-serif;letter-spacing:.14em;color:var(--gold)}
.intent{border-top:1px dashed var(--line);padding-top:.8rem;color:var(--muted)}
.split-ledger{display:grid;grid-template-columns:1fr 1fr;gap:clamp(2rem,6vw,6rem)}
.ledger-list,.related-list,.source-list{list-style:none;margin:1.5rem 0 0;padding:0}
.ledger-list li,.related-list li,.source-list li{display:grid;gap:.25rem;padding:1rem 0;border-top:1px solid var(--line)}
.ledger-list span,.related-list span,.source-list span{color:var(--muted);font-size:.9rem}
.decision-steps{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:1rem;list-style:none;padding:0;margin:2rem 0 0}
.decision-steps li{background:var(--wine-dark);color:white;padding:1.25rem;min-width:0}
.decision-steps strong,.decision-steps span{display:block}
.decision-steps span{margin-top:.6rem;color:#ead9bd}
.method-panel{background:#efe0c4}
.caution-panel{border-left:clamp(.5rem,2vw,1.2rem) solid var(--wine)}
.disclosure{background:var(--wine-dark);color:white}
.disclosure .section-code{color:#e6c681}
.demo-panel textarea{display:block;width:100%;max-width:48rem;border:1px solid var(--line);background:var(--paper-light);padding:1rem;margin:.7rem 0}
.demo-panel button{border:1px solid var(--wine);background:var(--wine);color:white;padding:.65rem .9rem;cursor:pointer}
.check-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:.7rem;max-width:48rem}
.check-grid button[aria-pressed="true"]{background:#305a49;border-color:#305a49}
.site-footer{padding:2.5rem clamp(1rem,5vw,5rem);background:#251517;color:#ead9bd}
.site-footer a{color:#fff}
.site-footer nav{display:flex;flex-wrap:wrap;gap:1rem}
.site-footer p{margin:.5rem 0;color:#d8c6ab}
pre{white-space:pre-wrap;background:var(--paper-light);border:1px solid var(--line);padding:1rem;max-width:48rem}
@media(max-width:900px){.page-hero{grid-template-columns:1fr}.policy-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.decision-steps{grid-template-columns:repeat(2,minmax(0,1fr))}.split-ledger{grid-template-columns:1fr}}
@media(max-width:720px){.site-header{align-items:flex-start;flex-wrap:wrap}.nav-toggle{display:block}#site-nav{display:none;flex-basis:100%;justify-content:flex-start;flex-direction:column}#site-nav[data-open="true"]{display:flex}.policy-grid,.decision-steps,.check-grid{grid-template-columns:1fr}h1{font-size:clamp(2.4rem,13vw,4rem)}}
@media(prefers-reduced-motion:reduce){*{scroll-behavior:auto!important}}
