html:has(.welcome-dialog[open]) { overflow: hidden; }
.welcome-dialog { border: 0; padding: 0; background: transparent; width: fit-content; max-width: calc(100vw - 24px); max-height: calc(100dvh - 24px); overflow: visible; }
.welcome-dialog::backdrop { background: rgba(3, 20, 35, .88); }
.welcome-content { position: relative; line-height: 0; }
.welcome-content img { display: block; width: auto; height: auto; max-width: calc(100vw - 24px); max-height: calc(100dvh - 24px); object-fit: contain; border-radius: 8px; }
.welcome-close { position: absolute; z-index: 1; top: 8px; right: 8px; width: 48px; height: 48px; display: grid; place-items: center; padding: 0; border: 2px solid white; border-radius: 50%; background: #08283f; color: white; font: 36px/1 system-ui, sans-serif; cursor: pointer; box-shadow: 0 2px 12px #0006; }
.welcome-close:hover { background: #154664; }
.welcome-close:focus-visible { outline: 3px solid #e6af42; outline-offset: 3px; }
