/* Native top-layer dialogs remain inside the current viewport on phones/tablets. */
body dialog#login,body dialog#menu{position:fixed!important;inset:0!important;margin:auto!important;max-height:calc(100vh - 32px)!important;max-height:calc(100dvh - 32px)!important;max-width:calc(100vw - 32px)!important;overflow-y:auto!important;overscroll-behavior:contain;box-sizing:border-box;transform:none!important}
body dialog#login{width:450px!important;height:fit-content!important}
body dialog#menu{width:620px!important;height:fit-content!important}
body dialog#login::backdrop,body dialog#menu::backdrop{background:#0009;backdrop-filter:blur(5px)}
body .gx-public-icon{display:inline-block;width:18px;height:18px;flex:0 0 18px;fill:none;stroke:currentColor;stroke-width:1.7;stroke-linecap:round;stroke-linejoin:round;vertical-align:middle}
body .header .login-trigger,body #menu .sheet-actions .button{align-items:center;gap:8px}
body #login .button .gx-public-icon{margin-inline-end:6px}
/* Legacy Pulse shell hid both controls between its phone and desktop breakpoints. */
@media(max-width:1100px){body .header .menu-trigger{display:inline-flex!important;align-items:center;justify-content:center;flex:0 0 44px;width:44px!important;height:44px!important}body .header .desktop-nav{display:none!important}}
@media(min-width:801px) and (max-width:1100px){body .header .login-trigger{display:inline-flex!important;align-items:center;gap:6px}}
@media(max-width:760px){body dialog#login{padding:24px 20px!important}body dialog#menu{padding:22px 18px!important}body dialog#login .account-links{gap:10px}body dialog#login .account-links a{min-width:0}}
@media(prefers-reduced-motion:reduce){body dialog[open]{animation:none!important}}
