/* Shared viewport-safe dialogs. Existing open/close handlers and forms stay intact. */
:root{--ak-dialog-viewport:100vh;--ak-dialog-top:0px}
@supports(height:100dvh){:root{--ak-dialog-viewport:100dvh}}
html.ak-dialog-active,html.ak-dialog-active body{overflow:hidden!important;overscroll-behavior:none}
.ak-dialog-overlay{
 position:fixed!important;inset:auto 0 auto 0!important;top:var(--ak-dialog-top)!important;
 width:100%!important;height:var(--ak-dialog-viewport)!important;max-height:var(--ak-dialog-viewport)!important;
 box-sizing:border-box!important;z-index:2147483000!important;
 padding:max(12px,env(safe-area-inset-top)) max(12px,env(safe-area-inset-right)) max(12px,env(safe-area-inset-bottom)) max(12px,env(safe-area-inset-left))!important;
 align-items:center!important;justify-content:center!important;place-items:center!important;
 overflow:hidden!important;overscroll-behavior:contain;
}
.ak-dialog-surface{
 box-sizing:border-box!important;min-height:0!important;
 max-height:calc(var(--ak-dialog-viewport) - 32px)!important;
 overflow-y:auto!important;overflow-x:hidden!important;overscroll-behavior:contain;
 -webkit-overflow-scrolling:touch;scrollbar-gutter:stable;scroll-padding-top:76px;
}
.ak-dialog-overlay>.ak-dialog-surface{flex-shrink:1!important;margin:0!important}
dialog.ak-native-dialog{max-height:calc(var(--ak-dialog-viewport) - 32px)!important;margin:auto!important}
.ak-dialog-toolbar{
 position:sticky!important;top:0!important;z-index:100!important;
 box-sizing:border-box!important;display:flex!important;justify-content:flex-end!important;align-items:center!important;
 min-height:62px!important;height:62px!important;flex-shrink:0!important;
 margin:calc(-1 * var(--ak-dialog-pad-top,0px)) calc(-1 * var(--ak-dialog-pad-right,0px)) 12px calc(-1 * var(--ak-dialog-pad-left,0px))!important;
 padding:10px 14px!important;background:var(--ak-dialog-background,#fff)!important;
 pointer-events:none;border-radius:inherit;border-bottom-left-radius:0;border-bottom-right-radius:0;
}
.ak-dialog-toolbar>.ak-dialog-close{
 position:static!important;inset:auto!important;transform:none!important;float:none!important;
 display:grid!important;place-items:center!important;flex:0 0 40px!important;
 width:40px!important;height:40px!important;min-width:40px!important;min-height:40px!important;
 padding:0!important;margin:0!important;border:1px solid #c7d4db!important;border-radius:50%!important;
 background:#fff!important;color:#182a35!important;box-shadow:0 2px 12px #14263218!important;
 font:400 27px/1 Arial,sans-serif!important;letter-spacing:0!important;cursor:pointer!important;
 pointer-events:auto;opacity:1!important;visibility:visible!important;
}
.ak-dialog-toolbar>.ak-dialog-close:hover{background:#e8eff3!important}
.ak-dialog-toolbar>.ak-dialog-close:focus-visible{outline:3px solid #628da5!important;outline-offset:2px!important}
/* The terms dialog uses one scroll area so its close button never leaves it. */
.gw-terms-panel.ak-dialog-surface{display:block!important;height:auto!important}
.gw-terms-panel.ak-dialog-surface .gw-terms-scroll{max-height:none!important;overflow:visible!important}
.gw-terms-panel.ak-dialog-surface .gw-terms-header{position:static!important}
/* Image-only overlays retain a visible close control separate from the image. */
.gw-promise-backdrop.ak-dialog-overlay{padding-top:68px!important}
.gw-promise-backdrop.ak-dialog-overlay>.ak-dialog-close{
 position:absolute!important;top:max(14px,env(safe-area-inset-top))!important;right:max(16px,env(safe-area-inset-right))!important;
 z-index:2!important;width:40px!important;height:40px!important;border:1px solid #c7d4db!important;border-radius:50%!important;
 padding:0!important;background:#fff!important;color:#182a35!important;font:400 27px/1 Arial,sans-serif!important;cursor:pointer;
}
.gw-promise-backdrop.ak-dialog-overlay>img{max-height:calc(var(--ak-dialog-viewport) - 90px)!important;max-width:100%!important;object-fit:contain!important}
.od-lightbox.ak-native-dialog{padding:0 16px 16px!important;box-sizing:border-box!important}
.od-lightbox.ak-native-dialog>.ak-dialog-toolbar{margin:0 -16px 10px!important}
.od-lightbox.ak-native-dialog>img{max-height:calc(var(--ak-dialog-viewport) - 172px)!important;object-fit:contain!important}
@media(max-width:540px){
 .ak-dialog-overlay{padding:10px!important}
 .ak-dialog-surface,dialog.ak-native-dialog{max-height:calc(var(--ak-dialog-viewport) - 20px)!important}
 .ak-dialog-toolbar{min-height:60px!important;height:60px!important;padding:9px 12px!important}
}
