.roat-subpage button.illustration-open{display:block;width:100%;padding:0;border:0;border-radius:0;background:transparent;color:var(--accent-ink);font:inherit;text-align:left;cursor:zoom-in}
.roat-subpage button.illustration-open:hover:not(:disabled){background:transparent;border:0}
.illustration-open-hint{display:block;padding-top:.5rem;font-size:.875rem;line-height:1.5;text-decoration:underline;text-underline-offset:3px}
.illustration-viewer-open{overflow:hidden}
dialog.illustration-viewer{width:min(calc(100% - 2rem),80rem);max-width:none;max-height:calc(100vh - 2rem);max-height:calc(100dvh - 2rem);margin:auto;padding:0;border:1px solid var(--rule);background:#fff;color:var(--ink);overflow:auto;overscroll-behavior:contain}
dialog.illustration-viewer::backdrop{background:rgba(33,12,28,.8)}
.illustration-viewer-toolbar{position:sticky;top:0;z-index:1;display:flex;flex-wrap:wrap;justify-content:space-between;align-items:center;gap:.75rem;padding:.75rem 1rem;background:#fff;border-bottom:1px solid var(--rule)}
.roat-subpage .illustration-viewer-toolbar h2{margin:0;font-size:1rem;line-height:1.4}
.illustration-viewer-controls{display:flex;flex-wrap:wrap;gap:.5rem}
.roat-subpage .illustration-viewer-controls button{min-height:44px;min-width:44px;border-radius:0}
.illustration-viewer-figure{margin:0;padding:1rem}
.illustration-viewer-viewport{max-height:calc(100vh - 14rem);max-height:calc(100dvh - 14rem);overflow:auto;overscroll-behavior:contain}
.illustration-viewer-viewport:focus-visible{outline:2px solid var(--accent);outline-offset:2px}
.illustration-viewer-canvas{width:min(100%,calc((100vh - 14rem)*1.5));width:min(100%,calc((100dvh - 14rem)*1.5));margin:0 auto}
.illustration-viewer-canvas--zoomed{width:min(200%,calc((100vh - 14rem)*3));width:min(200%,calc((100dvh - 14rem)*3));max-width:none}
.illustration-viewer-canvas img{display:block;width:100%;height:auto;aspect-ratio:3/2;object-fit:contain;background:#fff}
.illustration-viewer-canvas :is(.legal-illustration-scene--speed,.practical-scene--speed){position:relative;display:block;aspect-ratio:3/2;overflow:hidden}
.illustration-viewer-canvas :is(.legal-illustration-scene--speed,.practical-scene--speed) img{position:absolute;width:200%;height:200%;max-width:none;left:-100%;top:-23.4375%}
.illustration-viewer-figure figcaption{padding-top:.75rem;font-size:.9375rem;line-height:1.5}
@media(max-width:600px){dialog.illustration-viewer{width:calc(100% - 1rem);max-height:calc(100dvh - 1rem)}.illustration-viewer-toolbar,.illustration-viewer-figure{padding:.75rem}}
@media print{dialog.illustration-viewer,.illustration-open-hint{display:none!important}.illustration-viewer-open{overflow:visible}.roat-subpage button.illustration-open{outline:0!important}}
