:root{--bg:#fafaf7;--bg-panel:#fff;--bg-code:#f4f3ee;--bg-soft:#f4f3ee;--ink:#1a1a1a;--ink-muted:#5a5a5a;--ink-subtle:#8a8a8a;--accent:#1f3a5f;--accent-2:#8b3a2a;--accent-soft:#2d5481;--rule:#d8d6d0;--rule-soft:#e8e6e0;--table-head:#1f3a5f;--table-head-ink:#fff;--table-row-alt:#faf9f5;--gold:#a9791f;--gap:#8b3a2a;--serif:"Instrument Serif", Georgia, serif;--sans:"IBM Plex Sans", -apple-system, sans-serif;--mono:"IBM Plex Mono", "SF Mono", Menlo, monospace;--w:800px;--sidebar-w:260px}*{box-sizing:border-box;margin:0;padding:0}html{scroll-behavior:smooth}body{font-family:var(--sans);color:var(--ink);background:var(--bg);-webkit-font-smoothing:antialiased;font-size:16px;font-weight:400;line-height:1.68}::selection{background:#1f3a5f29}.sidebar{width:var(--sidebar-w);border-right:1px solid var(--rule);z-index:100;background:#fff;padding:1.5rem 0;position:fixed;top:0;bottom:0;left:0;overflow-y:auto}.sidebar-brand{border-bottom:1px solid var(--rule-soft);align-items:baseline;gap:.5rem;margin-bottom:1rem;padding:0 1.2rem 1.2rem;display:flex}.sidebar-brand .logo{font-family:var(--sans);letter-spacing:-.02em;color:var(--ink);font-size:1.2rem;font-weight:700}.sidebar-brand .logo .y{color:var(--accent-2)}.sidebar-brand .tag{font-family:var(--mono);letter-spacing:.15em;text-transform:uppercase;color:var(--ink-subtle);font-size:.55rem}.nav-cat{font-family:var(--mono);letter-spacing:.15em;text-transform:uppercase;color:var(--accent-2);margin-top:.3rem;padding:1rem 1.2rem .3rem;font-size:.6rem;font-weight:600}.nav-item{color:var(--ink-muted);border-left:2px solid #0000;padding:.35rem 1.2rem;font-size:.78rem;text-decoration:none;transition:all .15s;display:block}.nav-item:hover{color:var(--ink);background:var(--bg-soft);border-left-color:var(--rule)}.nav-item.active{color:var(--accent);border-left-color:var(--accent);background:#1f3a5f0a;font-weight:500}.nav-doc{color:var(--ink);font-size:.82rem;font-weight:500}.nav-divider{background:var(--rule-soft);height:1px;margin:.8rem 1.2rem}.content{margin-left:var(--sidebar-w)}.doc-section{border-bottom:3px solid var(--rule);min-height:50vh}.doc-section .topbar{border-bottom:1px solid var(--rule);background:var(--bg);z-index:50;justify-content:space-between;align-items:center;padding:.9rem clamp(1.2rem,5vw,3rem);display:flex;position:sticky;top:0}.doc-section .brand{align-items:baseline;gap:.7rem;display:flex}.doc-section .brand .logo{font-family:var(--sans);letter-spacing:-.02em;color:var(--ink);font-size:1.3rem;font-weight:700}.doc-section .brand .logo .y{color:var(--accent-2)}.doc-section .brand .tag{font-family:var(--mono);letter-spacing:.18em;text-transform:uppercase;color:var(--ink-subtle);font-size:.62rem}.doc-section .doc-meta{font-family:var(--mono);letter-spacing:.1em;text-transform:uppercase;color:var(--ink-subtle);text-align:right;font-size:.64rem}main,.page{max-width:var(--w);margin:0 auto;padding:0 clamp(1.2rem,5vw,2rem)}.hero{border-bottom:1px solid var(--rule);padding:clamp(2.5rem,6vw,4.5rem) 0 clamp(2rem,4vw,3rem)}.eyebrow{font-family:var(--mono);letter-spacing:.2em;text-transform:uppercase;color:var(--accent-2);align-items:center;gap:.8rem;margin:0 0 1.5rem;font-size:.72rem;font-weight:500;display:flex}.eyebrow:before{content:"";background:var(--accent-2);width:34px;height:1px;display:inline-block}.hero h1{font-family:var(--serif);letter-spacing:-.005em;color:var(--ink);margin:0 0 1.1rem;font-size:clamp(2.2rem,5vw,3.6rem);font-weight:400;line-height:1.06}.hero h1 em{color:var(--accent);font-style:italic}.hero .lede{font-family:var(--serif);color:var(--ink-muted);max-width:44ch;margin:0 0 2rem;font-size:clamp(1.1rem,2vw,1.45rem);font-style:italic;font-weight:400;line-height:1.4}.hero-meta{border-top:1px solid var(--rule);flex-wrap:wrap;gap:1.2rem 2.5rem;padding-top:1.5rem;display:flex}.hero-meta .item .k{font-family:var(--mono);letter-spacing:.12em;text-transform:uppercase;color:var(--ink-subtle);margin:0 0 .2rem;font-size:.6rem}.hero-meta .item .v{color:var(--ink);font-size:.85rem;font-weight:500}.hero-meta dt{font-family:var(--mono);letter-spacing:.12em;text-transform:uppercase;color:var(--ink-subtle);margin:0 0 .2rem;font-size:.6rem}.hero-meta dd{color:var(--ink);margin:0 0 1rem;font-size:.85rem;font-weight:500}section{border-bottom:1px solid var(--rule);padding:clamp(2rem,4vw,3rem) 0}.sec-num{font-family:var(--mono);letter-spacing:.18em;text-transform:uppercase;color:var(--accent-2);margin:0 0 .85rem;font-size:.7rem;font-weight:500}h2{font-family:var(--serif);color:var(--ink);margin:0 0 1.1rem;font-size:clamp(1.8rem,3.5vw,2.5rem);font-weight:400;line-height:1.1}h3{font-family:var(--sans);letter-spacing:-.005em;color:var(--ink);margin:1.8rem 0 .5rem;font-size:1.05rem;font-weight:600}p{color:var(--ink-muted);margin:0 0 1rem}p strong,li strong{color:var(--ink);font-weight:600}a{color:var(--accent);text-decoration:none}.dropcap:first-letter{font-family:var(--serif);float:left;color:var(--accent-2);margin:.2rem .5rem 0 0;font-size:3.4rem;font-weight:400;line-height:.78}.pull{font-family:var(--serif);color:var(--ink);border-left:2px solid var(--accent-2);max-width:38ch;margin:1.5rem 0;padding:.3rem 0 .3rem 1.4rem;font-size:clamp(1.3rem,2.5vw,1.8rem);font-style:italic;line-height:1.28}.callout{border:1px solid var(--rule);background:var(--bg-panel);border-left-width:3px;border-radius:10px;margin:1.5rem 0;padding:1.2rem 1.4rem}.callout .co-label,.callout .callout-label{font-family:var(--mono);letter-spacing:.15em;text-transform:uppercase;margin:0 0 .5rem;font-size:.62rem;font-weight:600}.callout p:last-child{margin-bottom:0}.callout.navy{border-left-color:var(--accent)}.callout.navy .co-label,.callout.navy .callout-label{color:var(--accent)}.callout.rust{border-left-color:var(--accent-2)}.callout.rust .co-label,.callout.rust .callout-label{color:var(--accent-2)}.callout.gold{border-left-color:var(--gold)}.callout.gold .co-label,.callout.gold .callout-label{color:var(--gold)}ul.clean{margin:1rem 0;padding:0;list-style:none}ul.clean li{color:var(--ink-muted);border-bottom:1px solid var(--rule-soft);padding:.5rem 0 .5rem 1.5rem;font-size:.92rem;position:relative}ul.clean li:before{content:"→";color:var(--accent-2);font-weight:600;position:absolute;left:0}ul.clean li:last-child{border-bottom:none}ul.clean li strong{color:var(--ink);font-weight:600}.flow{margin:1.5rem 0}.flow-step{border-bottom:1px solid var(--rule-soft);grid-template-columns:36px 1fr;gap:.8rem;padding:.8rem 0;display:grid}.flow-step:last-child{border-bottom:none}.flow-step .n{font-family:var(--mono);color:#fff;background:var(--accent);border-radius:50%;justify-content:center;align-items:center;width:28px;height:28px;font-size:.78rem;font-weight:600;display:flex}.flow-step .body h4{color:var(--ink);margin:0 0 .15rem;font-size:.95rem;font-weight:600}.flow-step .body p{margin:0;font-size:.87rem}.roles-table{margin:1.5rem 0;overflow-x:auto}.roles-table table{border-collapse:collapse;background:var(--bg-panel);border:1px solid var(--rule);border-radius:8px;width:100%;font-size:.84rem;overflow:hidden}.roles-table thead th{font-family:var(--mono);letter-spacing:.08em;text-transform:uppercase;color:var(--table-head-ink);background:var(--table-head);text-align:left;padding:.65rem .85rem;font-size:.58rem;font-weight:600}.roles-table tbody td{border-bottom:1px solid var(--rule-soft);color:var(--ink-muted);vertical-align:top;padding:.65rem .85rem}.roles-table tbody tr:nth-child(2n){background:var(--table-row-alt)}.roles-table tbody tr td:first-child{color:var(--ink);white-space:nowrap;font-weight:600}.verify-grid{grid-template-columns:1fr 1fr;gap:1rem;margin:1.5rem 0;display:grid}.verify-card{background:var(--bg-panel);border:1px solid var(--rule);border-radius:12px;padding:1.2rem;position:relative;overflow:hidden}.verify-card:before{content:"";background:var(--accent);height:3px;position:absolute;inset:0 0 auto}.verify-card.neg:before{background:var(--accent-2)}.verify-card .role{font-family:var(--mono);letter-spacing:.12em;text-transform:uppercase;color:var(--ink-subtle);margin:0 0 .4rem;font-size:.6rem}.verify-card h4{font-family:var(--serif);color:var(--ink);margin:0 0 .6rem;font-size:1.25rem;font-weight:400;line-height:1.15}.verify-card ul{margin:0;padding:0;list-style:none}.verify-card li{color:var(--ink-muted);border-bottom:1px dashed var(--rule-soft);padding:.35rem 0 .35rem 1.2rem;font-size:.85rem;position:relative}.verify-card li:last-child{border-bottom:none}.verify-card li:before{content:"✓";color:var(--accent);font-weight:700;position:absolute;left:0}.verify-card.neg li:before{content:"—";color:var(--accent-2)}.diagram-wrap{background:var(--bg-panel);border:1px solid var(--rule);border-radius:12px;margin:1.5rem 0;padding:clamp(1rem,2vw,1.5rem)}.diagram-wrap svg{width:100%;height:auto;display:block}.diagram-caption{font-family:var(--mono);letter-spacing:.08em;text-transform:uppercase;color:var(--ink-subtle);text-align:center;border-top:1px solid var(--rule-soft);margin-top:.8rem;padding-top:.7rem;font-size:.65rem}ol.principles{counter-reset:p;margin:1.2rem 0;padding:0;list-style:none}ol.principles>li{counter-increment:p;padding:0 0 1.3rem 2.8rem;position:relative}ol.principles>li:before{content:counter(p, decimal-leading-zero);font-family:var(--mono);color:var(--accent-2);font-size:.9rem;font-weight:600;position:absolute;top:0;left:0}ol.principles>li h3{margin:0 0 .35rem;font-size:1rem}ol.principles>li p{margin:0;font-size:.92rem}footer{text-align:center;font-family:var(--mono);letter-spacing:.06em;color:var(--ink-subtle);padding:2rem 0 3rem;font-size:.65rem;line-height:1.7}footer .conf{color:var(--accent-2);letter-spacing:.15em;text-transform:uppercase;margin-bottom:.4rem;font-weight:500}@media (max-width:900px){.sidebar{display:none}.content{margin-left:0}}.sidebar::-webkit-scrollbar{width:4px}.sidebar::-webkit-scrollbar-track{background:0 0}.sidebar::-webkit-scrollbar-thumb{background:var(--rule);border-radius:2px}a{color:inherit}.landing{background:radial-gradient(1100px 600px at 80% -10%, #1f3a5f12, transparent 60%), radial-gradient(900px 500px at -10% 110%, #8b3a2a0f, transparent 55%), var(--bg);flex-direction:column;min-height:100vh;display:flex}.landing-bar{justify-content:space-between;align-items:center;padding:1.4rem clamp(1.2rem,5vw,3rem);display:flex}.landing-bar .brand{align-items:baseline;gap:.6rem;display:flex}.landing-bar .brand .logo{font-family:var(--sans);letter-spacing:-.02em;color:var(--ink);font-size:1.25rem;font-weight:700}.landing-bar .brand .logo .y{color:var(--accent-2)}.landing-bar .brand .tag{font-family:var(--mono);letter-spacing:.16em;text-transform:uppercase;color:var(--ink-subtle);font-size:.55rem}.landing-main{flex:1;align-items:center;padding:2rem clamp(1.2rem,5vw,3rem) 4rem;display:flex}.landing-inner{width:100%;max-width:720px;margin:0 auto}.landing-eyebrow{font-family:var(--mono);letter-spacing:.18em;text-transform:uppercase;color:var(--accent-2);margin-bottom:1.4rem;font-size:.68rem;font-weight:600}.landing-inner h1{font-family:var(--serif);letter-spacing:-.01em;color:var(--ink);margin-bottom:1.2rem;font-size:clamp(2.6rem,6vw,4.2rem);font-weight:400;line-height:1.05}.landing-inner h1 em{color:var(--accent);font-style:italic}.landing-lede{color:var(--ink-muted);max-width:52ch;margin-bottom:2.2rem;font-size:1.12rem;line-height:1.6}.landing-cta{background:var(--accent);color:#fff;font-family:var(--sans);border-radius:10px;align-items:center;gap:.6rem;padding:.85rem 1.6rem;font-size:.95rem;font-weight:500;text-decoration:none;transition:background .15s,transform .15s;display:inline-flex}.landing-cta:hover{background:var(--accent-soft);transform:translateY(-1px)}.landing-meta{border-top:1px solid var(--rule-soft);flex-wrap:wrap;gap:1.8rem;margin-top:3rem;padding-top:1.8rem;display:flex}.landing-meta .item{flex-direction:column;gap:.2rem;display:flex}.landing-meta .num{font-family:var(--serif);color:var(--accent);font-size:1.9rem;line-height:1}.landing-meta .lbl{font-family:var(--mono);letter-spacing:.12em;text-transform:uppercase;color:var(--ink-subtle);font-size:.6rem}.landing-foot{font-family:var(--mono);letter-spacing:.06em;color:var(--ink-subtle);padding:1.4rem clamp(1.2rem,5vw,3rem);font-size:.62rem}.landing-foot .conf{color:var(--accent-2);text-transform:uppercase;letter-spacing:.15em}.login-wrap{background:radial-gradient(900px 500px at 80% -10%, #1f3a5f12, transparent 60%), var(--bg);justify-content:center;align-items:center;min-height:100vh;padding:2rem;display:flex}.login-card{background:var(--bg-panel);border:1px solid var(--rule);border-radius:16px;width:100%;max-width:380px;padding:2.4rem 2.2rem;box-shadow:0 18px 50px -28px #1a1a1a52}.login-card .brand{align-items:baseline;gap:.5rem;margin-bottom:1.6rem;display:flex}.login-card .brand .logo{letter-spacing:-.02em;font-size:1.15rem;font-weight:700}.login-card .brand .logo .y{color:var(--accent-2)}.login-card .brand .tag{font-family:var(--mono);letter-spacing:.15em;text-transform:uppercase;color:var(--ink-subtle);font-size:.52rem}.login-card h2{font-family:var(--serif);margin-bottom:.3rem;font-size:1.7rem;font-weight:400}.login-card .sub{color:var(--ink-muted);margin-bottom:1.6rem;font-size:.88rem}.login-field{margin-bottom:1rem}.login-field label{font-family:var(--mono);letter-spacing:.1em;text-transform:uppercase;color:var(--ink-subtle);margin-bottom:.4rem;font-size:.62rem;display:block}.login-field input{width:100%;font-family:var(--sans);color:var(--ink);background:var(--bg);border:1px solid var(--rule);border-radius:9px;outline:none;padding:.7rem .85rem;font-size:.95rem;transition:border-color .15s,box-shadow .15s}.login-field input:focus{border-color:var(--accent-soft);box-shadow:0 0 0 3px #1f3a5f1a}.login-btn{cursor:pointer;background:var(--accent);color:#fff;width:100%;font-family:var(--sans);border:none;border-radius:9px;margin-top:.6rem;padding:.8rem 1rem;font-size:.95rem;font-weight:500;transition:background .15s}.login-btn:hover{background:var(--accent-soft)}.login-btn:disabled{opacity:.6;cursor:default}.login-error{color:var(--accent-2);background:#8b3a2a12;border:1px solid #8b3a2a33;border-radius:8px;margin-top:1rem;padding:.6rem .75rem;font-size:.82rem}.login-foot{border-top:1px solid var(--rule-soft);font-family:var(--mono);letter-spacing:.06em;color:var(--ink-subtle);text-align:center;margin-top:1.6rem;padding-top:1.2rem;font-size:.6rem}.sidebar-tools{padding:0 1.2rem .8rem}.search-trigger{background:var(--bg-soft);border:1px solid var(--rule);cursor:pointer;width:100%;color:var(--ink-subtle);font-family:var(--sans);border-radius:8px;align-items:center;gap:.5rem;padding:.5rem .7rem;font-size:.78rem;transition:border-color .15s,color .15s;display:flex}.search-trigger:hover{border-color:var(--accent-soft);color:var(--ink-muted)}.search-trigger .kbd{font-family:var(--mono);border:1px solid var(--rule);color:var(--ink-subtle);border-radius:4px;margin-left:auto;padding:.05rem .3rem;font-size:.6rem}.sidebar-logout{text-align:left;cursor:pointer;width:100%;font-family:var(--mono);letter-spacing:.08em;text-transform:uppercase;color:var(--ink-subtle);background:0 0;border:none;padding:.35rem 1.2rem;font-size:.62rem;transition:color .15s;display:block}.sidebar-logout:hover{color:var(--accent-2)}.search-overlay{z-index:500;-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px);background:#1a1a1a47;justify-content:center;padding-top:12vh;display:flex;position:fixed;inset:0}.search-modal{background:var(--bg-panel);border:1px solid var(--rule);border-radius:14px;flex-direction:column;width:100%;max-width:600px;max-height:70vh;display:flex;overflow:hidden;box-shadow:0 30px 80px -30px #1a1a1a80}.search-modal input{border:none;border-bottom:1px solid var(--rule-soft);font-family:var(--sans);color:var(--ink);background:0 0;outline:none;padding:1.1rem 1.3rem;font-size:1.05rem}.search-results{overflow-y:auto}.search-result{text-align:left;cursor:pointer;border:none;border-bottom:1px solid var(--rule-soft);background:0 0;width:100%;padding:.8rem 1.3rem;display:block}.search-result:hover,.search-result.active{background:var(--bg-soft)}.search-result .r-cat{font-family:var(--mono);letter-spacing:.1em;text-transform:uppercase;color:var(--accent-2);margin-bottom:.2rem;font-size:.58rem}.search-result .r-title{color:var(--ink);margin-bottom:.2rem;font-size:.92rem;font-weight:500}.search-result .r-snippet{color:var(--ink-muted);font-size:.78rem;line-height:1.45}.search-result .r-snippet mark{color:inherit;background:#a9791f47;border-radius:2px;padding:0 1px}.search-empty{color:var(--ink-subtle);padding:1.4rem 1.3rem;font-size:.85rem}.search-hint{font-family:var(--mono);letter-spacing:.06em;color:var(--ink-subtle);border-top:1px solid var(--rule-soft);gap:1rem;padding:.6rem 1.3rem;font-size:.6rem;display:flex}.jump-flash{animation:1.4s jumpflash}@keyframes jumpflash{0%{background:#a9791f29}to{background:0 0}}@media (max-width:900px){.search-modal{max-width:92vw}}
