.architecture{color:var(--color-text,#202020)}.architecture section{margin-top:3.5rem;scroll-margin-top:7rem}.architecture a{text-underline-offset:.2em}.architecture a:focus-visible,.architecture summary:focus-visible,.architecture-table:focus-visible{outline-offset:4px;outline:3px solid #b6202c}.architecture-lead{max-width:76ch;font-size:1.15rem;line-height:1.7}.architecture-counts{flex-wrap:wrap;gap:.75rem;margin:1.5rem 0;display:flex}.architecture-counts span{background:#fff;border:1px solid #e6e0db;border-radius:12px;align-items:baseline;gap:.65rem;padding:.75rem 1.2rem;display:flex}.architecture-counts strong{color:#b6202c;font-size:2rem}.architecture-nav{border-top:1px solid #e6e0db;border-bottom:1px solid #e6e0db;flex-wrap:wrap;gap:.6rem 1.25rem;padding:1rem 0;display:flex}.architecture-eyebrow{color:#6b625c;letter-spacing:.04em;font-size:.875rem}.architecture-terms{grid-template-columns:repeat(2,minmax(0,1fr));gap:1rem;display:grid}.architecture-terms>div{background:#fff;border:1px solid #e6e0db;border-radius:12px;padding:1.1rem}.architecture-terms dt{font-size:1.08rem;font-weight:750}.architecture-terms dd{margin:.5rem 0 0;line-height:1.6}.architecture-product,.architecture-subsystem,.architecture-faq details{background:#fff;border:1px solid #e6e0db;border-radius:12px;margin:.75rem 0;overflow:clip}.architecture summary{cursor:pointer;padding:1.1rem 1.3rem;font-weight:700;line-height:1.5}.architecture-product>summary,.architecture-subsystem>summary{display:list-item}.architecture-product>summary>span:last-child,.architecture-subsystem>summary>span:last-child{color:#756b64;white-space:nowrap;margin-left:.75rem;font-size:.875rem;font-weight:500}.architecture details[open]>summary{background:#faf8f6;border-bottom:1px solid #e6e0db}.architecture-product-body,.architecture-subsystem-body,.architecture-faq details>div{padding:.25rem 1.3rem 1.2rem}.architecture-product-groups{grid-template-columns:repeat(2,minmax(0,1fr));gap:0 1.5rem;display:grid}.architecture-product-groups h3{margin-bottom:.5rem;font-size:1rem}.architecture-product-groups ul{margin:0 0 1rem}.architecture-scenario{background:#faf8f6;border:1px solid #e6e0db;border-radius:16px;margin:2rem 0;padding:1.5rem}.architecture-flow{counter-reset:architecture-step;grid-template-columns:repeat(3,minmax(0,1fr));gap:1rem;margin:1.5rem 0;padding:0;list-style:none;display:grid}.architecture-flow>li{counter-increment:architecture-step;background:#fff;border:1px solid #e6e0db;border-radius:12px;margin:0;padding:1.15rem;position:relative}.architecture-flow>li:before{content:counter(architecture-step, decimal-leading-zero);color:#b6202c;margin-bottom:.6rem;font-weight:750;display:block}.architecture-flow h4{margin:0;font-size:1.05rem}.architecture-flow p{font-size:.9375rem;line-height:1.6}.architecture-role{color:#756b64}.architecture-flow-modules{border-top:1px solid #e6e0db;padding-top:.75rem}.architecture-boundary{background:#f5f1ed;border-left:3px solid #b6202c;border-radius:0 8px 8px 0;padding:1rem 1.2rem;line-height:1.65}.architecture-sources{color:#6b625c;font-size:.875rem}.architecture-table{margin:1rem 0}.architecture-table table{min-width:680px}.architecture-table th,.architecture-table td{vertical-align:top}.architecture-table th[scope=row]{min-width:180px}.architecture-table caption{text-align:left;padding:.6rem 0;font-size:.875rem}.architecture-table tr{scroll-margin-top:7rem}.architecture-fact{margin:1.75rem 0}.architecture-fact h3{margin-bottom:.5rem}.architecture-cta{background:#fff;border:1px solid #e6e0db;border-radius:16px;margin-top:2rem;padding:1.5rem;display:block}@media (width<=900px){.architecture-flow{grid-template-columns:1fr}}@media (width<=600px){.architecture-terms,.architecture-product-groups{grid-template-columns:1fr}.architecture-scenario{padding:1rem}.architecture section{margin-top:2.5rem}.architecture summary{padding:1rem}.architecture-product-body,.architecture-subsystem-body,.architecture-faq details>div{padding-left:1rem;padding-right:1rem}}@media (forced-colors:active){.architecture-boundary,.architecture-product,.architecture-subsystem,.architecture-flow>li,.architecture-terms>div{border:1px solid canvastext}}
