.ahna-trigger-wrap { box-sizing: border-box; margin: 8px 0; padding: var(--ahna-padding,12px); color: var(--ahna-color,#003399); background: var(--ahna-background,#f0f5ff); border: 1px solid currentColor; border-radius: 6px; font: 600 var(--ahna-font-size,16px)/1.5 system-ui,sans-serif; }
.ahna-trigger-wrap .ahna-trigger { display: inline-block; color: inherit; text-decoration: underline; text-underline-offset: .2em; min-height: 24px; }
.ahna-trigger-wrap .ahna-trigger:hover { color: inherit; text-decoration-thickness: 2px; }
#ahna-top .ahna-trigger-wrap { margin: 0; text-align: center; border-radius: 0; }
#ahna-top[hidden],.ahna-zoom[hidden] { display: none !important; }
.ahna-dialog:not([open]) { display: none !important; }
.ahna-dialog { box-sizing: border-box; width: min(1000px,calc(100% - 24px)); max-width: none; max-height: calc(100dvh - 24px); margin: auto; padding: 20px; overflow: auto; border: 1px solid #64748b; border-radius: 12px; background: #fff; color: #172033; font: 16px/1.5 system-ui,sans-serif; }
.ahna-dialog::backdrop { background: rgba(15,23,42,.72); }
.ahna-dialog__heading { display: flex; align-items: center; justify-content: space-between; gap: 16px; margin-bottom: 16px; }
.ahna-dialog__heading h2 { margin: 0; font: 700 22px/1.3 system-ui,sans-serif; color: #172033; }
.ahna-dialog__close,.ahna-zoom button { box-sizing: border-box; min-width: 44px; min-height: 44px; padding: 8px 12px; border: 1px solid #64748b; border-radius: 4px; background: #f1f5f9; color: #172033; font: 600 16px/1.4 system-ui,sans-serif; cursor: pointer; }
.ahna-dialog__close { flex-shrink: 0; }
.ahna-document { box-sizing: border-box; max-width: 100%; margin: 0 auto; color: #172033; background: #fff; font: 16px/1.5 system-ui,sans-serif; }
.ahna-document .ahna-document__help { margin: 0 0 12px; }
.ahna-document .ahna-document__viewport { width: 100%; max-height: none; overflow: auto; background: #fff; overscroll-behavior: contain; }
.ahna-document .ahna-document__image { display: block !important; width: 100%; min-width: 760px; max-width: none !important; height: auto !important; max-height: none !important; margin: 0 !important; padding: 0 !important; border: 0 !important; border-radius: 0 !important; box-shadow: none !important; filter: none !important; opacity: 1 !important; object-fit: contain !important; aspect-ratio: auto !important; }
.ahna-document a { color: #003399; text-decoration: underline; overflow-wrap: anywhere; }
.ahna-document p { margin: 12px 0; }
.ahna-zoom { display: flex; flex-wrap: wrap; align-items: center; gap: 8px; margin-bottom: 12px; }
.ahna-zoom output { min-width: 52px; text-align: center; }
.ahna-document details { margin: 16px 0; padding: 12px; border: 1px solid #64748b; }
.ahna-document summary { cursor: pointer; font-weight: 600; }
.ahna-document pre { white-space: pre-wrap; overflow-wrap: anywhere; font: inherit; color: inherit; background: transparent; border: 0; }
.ahna-trigger-wrap a:focus-visible,.ahna-dialog :focus-visible,.ahna-document :focus-visible { outline: 3px solid #172033; outline-offset: 3px; }
html.ahna-modal-open { overflow: hidden; }
.ahna-standalone .ahna-standalone__main { box-sizing: border-box; width: min(100%,1000px); margin: 24px auto; padding: 16px; }
@media (max-width:600px) { .ahna-dialog { padding: 12px; } .ahna-dialog__heading { align-items: flex-start; gap: 8px; } .ahna-dialog__heading h2 { font-size: 19px; } }
