.sd-page .sd-architecture figure{max-width:860px;margin:28px auto 0}
.sd-page .sd-architecture-open{display:block;position:relative;padding:8px;background:#fff;border:1px solid #dce7f1;border-radius:18px;overflow:hidden}
.sd-page .sd-architecture-open img{display:block;width:100%;height:auto;max-width:100%;border-radius:12px;object-fit:contain}
.sd-page .sd-architecture-open span{display:block;text-align:center;padding:12px;color:#155da6;font-size:14px;font-weight:600}
.sd-page .sd-architecture figcaption{margin-top:14px;text-align:center;font-size:14px;line-height:1.8;color:#56677b}
.sd-diagram-viewer{position:fixed;inset:0;width:100%;height:100%;max-width:none;max-height:none;margin:0;padding:0;border:0;background:#102238;color:white;box-sizing:border-box;overflow:hidden}
.sd-diagram-viewer::backdrop{background:rgba(6,18,33,.88)}
.sd-diagram-toolbar{height:68px;display:flex;align-items:center;justify-content:space-between;gap:12px;padding:8px 16px;box-sizing:border-box}
.sd-diagram-toolbar strong{font-size:16px}.sd-diagram-toolbar div{display:flex;gap:8px}
.sd-diagram-toolbar button{background:white;color:#142b46;min-height:44px;padding:8px 14px;border:0;border-radius:8px;font:inherit;cursor:pointer;white-space:nowrap}
.sd-diagram-viewport{height:calc(100% - 68px);overflow:auto;padding:12px;box-sizing:border-box;overscroll-behavior:contain;touch-action:pan-x pan-y pinch-zoom}
.sd-diagram-viewport img{display:block;width:auto;height:auto;max-width:100%;max-height:100%;margin:auto;border-radius:8px;background:#fff}
.sd-diagram-viewport.is-zoomed img{width:1100px;max-width:none;max-height:none}
.sd-diagram-viewer button:focus-visible,.sd-page .sd-architecture-open:focus-visible{outline:3px solid #65b6ff;outline-offset:3px}
@media(max-width:600px){.sd-page .sd-architecture figure{margin-top:20px}.sd-diagram-toolbar{padding:8px;gap:6px}.sd-diagram-toolbar strong{font-size:14px}.sd-diagram-toolbar button{padding:8px 10px;font-size:14px}}
