.zoomable{position:relative}.zoomable--inline{vertical-align:top;max-width:100%;display:inline-block}.zoomable--clickable,[data-mermaid-diagram][data-zoomable]{cursor:zoom-in}.zoomable__trigger{z-index:2;border:1px solid color-mix(in oklab, var(--border) 85%, transparent);background:color-mix(in oklab, var(--background) 88%, transparent);width:2rem;height:2rem;color:var(--muted-foreground);opacity:0;cursor:pointer;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);border-radius:.5rem;justify-content:center;align-items:center;padding:0;display:inline-flex;position:absolute;top:.5rem;right:.5rem}.zoomable__trigger svg{width:1rem;height:1rem}.zoomable:hover>.zoomable__trigger,.zoomable:focus-within>.zoomable__trigger,[data-mermaid-diagram]:hover>.zoomable__trigger,[data-mermaid-diagram]:focus-within>.zoomable__trigger,.zoomable__trigger:focus-visible{opacity:1}.zoomable__trigger:hover{color:var(--foreground)}.zoomable__trigger:focus-visible,.zoom-dialog__button:focus-visible{outline:2px solid var(--ring,currentColor);outline-offset:2px}@media (hover:none){.zoomable__trigger{opacity:.72}}@media (prefers-reduced-motion:no-preference){.zoomable__trigger{transition:opacity .15s}}.zoom-dialog{z-index:1000;background:color-mix(in oklab, var(--background) 94%, transparent);color:var(--foreground);-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);overscroll-behavior:contain;flex-direction:column;display:flex;position:fixed;inset:0}.zoom-dialog__toolbar{margin:max(.75rem, env(safe-area-inset-top)) max(.75rem, env(safe-area-inset-right)) .25rem .75rem;border:1px solid var(--border);background:color-mix(in oklab, var(--card) 92%, transparent);border-radius:.75rem;flex:none;align-self:flex-end;gap:.25rem;padding:.25rem;display:flex;box-shadow:0 4px 16px #0000001f}.zoom-dialog__button{width:2.25rem;height:2.25rem;color:var(--foreground);cursor:pointer;background:0 0;border:0;border-radius:.5rem;justify-content:center;align-items:center;padding:0;display:inline-flex}.zoom-dialog__button svg{width:1.125rem;height:1.125rem}.zoom-dialog__button:hover:not(:disabled){background:var(--muted)}.zoom-dialog__button:disabled{opacity:.35;cursor:default}.zoom-dialog__viewport{touch-action:none;-webkit-user-select:none;user-select:none;cursor:zoom-in;flex:1 1 0;justify-content:center;align-items:center;min-height:0;display:flex;position:relative;overflow:hidden;container-type:size}.zoom-dialog__viewport[data-zoomed]{cursor:grab}.zoom-dialog__viewport[data-panning]{cursor:grabbing}.zoom-dialog__stage{transform-origin:50%;background:var(--card);border-radius:.75rem;flex:none}.zoom-dialog__stage--svg{width:min(94cqw, calc(94cqh * var(--zoom-ar,1.333)));aspect-ratio:var(--zoom-ar,1.333);box-sizing:border-box;border:1px solid color-mix(in oklab, var(--border) 78%, transparent);--dg-canvas:var(--card);padding:.5rem}.zoom-dialog__stage--svg>svg{width:100%;min-width:0;height:100%;display:block;max-width:none!important}.zoom-dialog__stage--image{object-fit:contain;-webkit-user-drag:none;width:auto;max-width:94cqw;height:auto;max-height:94cqh;display:block}.zoom-dialog__caption{max-height:22vh;padding:.75rem 1.25rem max(1rem, env(safe-area-inset-bottom));text-align:center;color:var(--muted-foreground);flex:none;font-size:.9375rem;line-height:1.5;overflow-y:auto}@media (prefers-reduced-motion:no-preference){.zoom-dialog{animation:.18s ease-out zoom-dialog-in}.zoom-dialog__stage[data-animate]{transition:transform .2s ease-out}}@keyframes zoom-dialog-in{0%{opacity:0}}
