.deep-intro{padding:30px 28px 22px}.deep-intro>.tiny-label{font-size:8px;color:var(--muted);letter-spacing:1.1px;line-height:1.7}.deep-intro h3{font-size:27px;font-weight:500;letter-spacing:-.7px;margin:16px 0 13px}.deep-intro p{font-size:12px;line-height:1.8;color:var(--muted);max-width:880px;margin:0}.full-toolbar{display:flex;align-items:center;justify-content:space-between;gap:18px;padding:15px 28px;border-block:1px solid var(--line);background:#eef0e7}.full-legend{display:flex;gap:14px;flex-wrap:wrap;font-size:9px;color:var(--muted);max-width:450px}.full-legend span{display:flex;gap:6px;align-items:center}.full-legend i{width:18px;border-top:2px solid #577568}.full-legend .request{border-color:#527eab;border-top-style:dashed}.full-legend .review{border-color:#a18148;border-top-style:dashed}.full-legend .binding{height:10px;border:1px dashed #7d9385;border-radius:2px}.architecture-scales{display:flex;gap:5px;flex:none}.architecture-scales button,.expand-architecture{padding:8px 11px;border:1px solid #c2cfb8;border-radius:3px;background:#fbfaf6;font-size:10px;color:var(--ink);cursor:pointer}.architecture-scales button[aria-pressed="true"]{background:var(--green);border-color:var(--green);color:var(--paper)}.expand-architecture{white-space:nowrap}.expand-architecture span{margin-left:10px;font-size:15px}.pan-hint{font-size:10px;line-height:1.6;color:var(--muted);margin:17px 28px 0}.full-diagram-frame{overflow:auto;overscroll-behavior:contain;max-height:780px;margin:16px 18px 0;border:1px solid #dde2d6;border-radius:4px;background:#fbfaf6;scrollbar-color:#a7b99d #eef0e7;scrollbar-width:thin}.full-solution-svg{display:block;max-width:none;height:auto}.fd-node{cursor:pointer}.component-selector{display:flex;align-items:center;gap:18px;margin:22px 28px;font-size:10px;color:var(--muted)}.component-selector>span{white-space:nowrap}.component-selector select{font:12px var(--sans);max-width:400px;width:100%;padding:11px 13px;color:var(--ink);background:var(--paper);border:1px solid #bac9b6;border-radius:3px}.deep-component-detail{display:grid;grid-template-columns:.65fr 1.35fr;gap:35px;padding:28px;background:var(--green);color:var(--paper);min-height:180px}.deep-component-detail .tiny-label{font-size:8px;color:#bbcd99;letter-spacing:1px;line-height:1.7}.deep-component-detail h4{font:400 27px var(--serif);letter-spacing:-.5px;line-height:1.2;margin:14px 0}.deep-platform{font-size:9px;color:#bdcda7}.deep-component-detail p{font-size:12px;line-height:1.85;color:#d3ded1;margin:0 0 18px}.architecture-requirements{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:0;padding:24px 28px;border-bottom:1px solid var(--line)}.architecture-requirements>div{padding:0 20px;border-right:1px solid var(--line)}.architecture-requirements>div:first-child{padding-left:0}.architecture-requirements>div:last-child{border:0;padding-right:0}.architecture-requirements .tiny-label{font-size:8px;color:var(--muted)}.architecture-requirements strong{display:block;font-size:12px;font-weight:500;line-height:1.6;margin-top:11px}.architecture-topics{padding:0 28px 25px}.architecture-topics details{border:0;border-bottom:1px solid var(--line);margin:0}.architecture-topics summary{padding:22px 0;max-width:none;display:flex;align-items:center;justify-content:space-between;gap:25px;font-size:17px;font-weight:500;letter-spacing:-.2px}.architecture-topics summary small{font-size:10px;font-weight:400;color:var(--muted);display:flex;gap:25px;align-items:center}.architecture-topics summary b{font-size:18px;font-weight:400}.architecture-topics details[open] summary b{transform:rotate(45deg)}.topic-note{font-size:10px;color:var(--muted);line-height:1.7;margin:0 0 20px}.contract-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:20px;padding-bottom:25px}.contract-grid article{padding:22px;background:#e9ece1;border:1px solid #d3dcc9;border-radius:4px;position:relative}.contract-grid article:not(:last-child):after{content:'→';position:absolute;right:-17px;top:50%;color:#718f54;font-size:17px}.contract-grid .tiny-label{font-size:8px;color:var(--muted);letter-spacing:1px}.contract-grid h4{font:500 13px monospace;line-height:1.6;overflow-wrap:anywhere;color:var(--green);margin:19px 0 13px}.contract-grid p{font-size:10px;line-height:1.7;color:var(--muted)}.contract-grid article>div{font:400 18px var(--serif);line-height:1.4;border-top:1px solid #cbd5c0;padding-top:15px;margin-top:20px}.runtime-frame{overflow:auto;border:1px solid var(--line);border-radius:4px;background:#fbfaf6}.runtime-svg{display:block;width:100%;min-width:860px;height:auto}.sequence-download{display:inline-block;font-size:11px;border-bottom:1px solid var(--line);padding-bottom:6px;margin:20px 0 25px}.operations-table-wrap{overflow:auto}.operations-table{width:100%;border-collapse:collapse;min-width:680px;text-align:left;margin:0 0 25px}.operations-table caption{text-align:left;font-size:10px;color:var(--muted);line-height:1.7;padding:0 0 18px}.operations-table th,.operations-table td{padding:18px;border:1px solid var(--line);font-size:11px;font-weight:400;line-height:1.8;vertical-align:top}.operations-table thead th{font-weight:600;background:#e9ece1;font-size:10px}.operations-table tbody th{font-size:9px;letter-spacing:.7px;font-weight:600;width:22%;background:#f0f1e9}.operations-table td{color:var(--muted)}.architecture-dialog{width:94vw;max-width:1700px;max-height:94vh;overflow:auto;border:1px solid #b2c1a9;border-radius:8px;padding:0;background:var(--paper);color:var(--ink)}.architecture-dialog::backdrop{background:#112e24c7;backdrop-filter:blur(3px)}.expanded-header{display:flex;gap:30px;justify-content:space-between;align-items:center;padding:22px 28px}.expanded-header .tiny-label{font-size:8px;color:var(--muted)}.expanded-header h3{font-size:24px;font-weight:500;letter-spacing:-.5px;margin:12px 0 0}.expanded-header button{background:transparent;color:var(--ink);border:1px solid var(--line);padding:9px 13px;border-radius:3px;font-size:11px;cursor:pointer;white-space:nowrap}.architecture-dialog .full-diagram-frame{max-height:65vh}.architecture-dialog .full-toolbar>a{font-size:10px;white-space:nowrap}.architecture-dialog .deep-component-detail{min-height:0}.architecture-dialog select:focus-visible,.component-selector select:focus-visible{outline:3px solid #5f75cf;outline-offset:3px}
@media(max-width:1000px){.explorer-toolbar{align-items:start}.view-tabs{flex-wrap:wrap}.view-tabs button{padding-inline:9px}.diagram-download{padding-top:10px;font-size:10px}.full-toolbar{flex-wrap:wrap}.full-legend{max-width:none;flex:1 1 100%}.architecture-requirements{gap:20px;grid-template-columns:1fr 1fr}.architecture-requirements>div{padding:0;border:0}.contract-grid{gap:16px}.contract-grid article{padding:18px}.deep-component-detail{gap:25px}.architecture-dialog .full-legend{flex:1 1 auto;max-width:500px}}
@media(max-width:760px){.view-tabs{display:grid;grid-template-columns:1fr 1fr;gap:5px}.view-tabs button{font-size:11px;text-align:left;padding:11px}.deep-intro{padding:25px 20px 20px}.deep-intro h3{font-size:25px;line-height:1.2}.deep-intro p{font-size:11px}.full-toolbar{gap:13px;padding:15px 20px}.full-legend{gap:11px;font-size:8px}.architecture-scales button,.expand-architecture{font-size:10px;padding:9px 10px}.pan-hint{margin:17px 20px 0;font-size:10px}.full-diagram-frame{margin:15px 15px 0;max-height:550px}.component-selector{display:block;margin:20px;font-size:10px}.component-selector>span{display:block;margin-bottom:10px}.component-selector select{font-size:12px;max-width:none}.deep-component-detail{display:block;padding:24px;min-height:0}.deep-component-detail h4{font-size:27px}.deep-component-detail>div:last-child{margin-top:23px}.deep-component-detail p{font-size:12px}.architecture-requirements{padding:23px 20px;gap:25px 18px}.architecture-requirements strong{font-size:11px}.architecture-topics{padding:0 20px 20px}.architecture-topics summary{align-items:start;font-size:18px;gap:15px}.architecture-topics summary small{font-size:0;gap:0}.architecture-topics summary b{font-size:20px}.contract-grid{grid-template-columns:1fr;gap:22px}.contract-grid article{padding:22px}.contract-grid article:not(:last-child):after{content:'↓';top:auto;bottom:-21px;left:50%;right:auto}.runtime-svg{min-width:900px}.architecture-dialog{width:96vw;max-height:96vh}.expanded-header{padding:20px;gap:15px}.expanded-header h3{font-size:19px}.expanded-header .tiny-label{font-size:7px}.expanded-header button{font-size:10px;padding:8px}.architecture-dialog .full-toolbar{padding-inline:20px}.architecture-dialog .full-diagram-frame{max-height:55vh}.architecture-dialog .full-legend{flex:1 1 100%}}

.architecture-topics details[open] summary>span{transform:none}

.full-solution-svg{margin-inline:auto}
