/* Responsive additions: window size, not device identity. */
@media screen {
body{padding:env(safe-area-inset-top,0px) env(safe-area-inset-right,0px) env(safe-area-inset-bottom,0px) env(safe-area-inset-left,0px)}
:root body :is(button,.btn,.button,summary){min-width:44px;min-height:44px}
:root body :is(input:not([type=checkbox]):not([type=radio]):not([type=hidden]),select,textarea){font-size:16px;min-height:44px;max-width:100%;min-width:0}
.foldable-table{max-width:100%;overflow:auto;overscroll-behavior-x:contain}.foldable-table:focus-visible{outline:2px solid currentColor;outline-offset:2px}
}
@media screen{
:root body>nav{top:env(safe-area-inset-top,0px);left:env(safe-area-inset-left,0px);right:env(safe-area-inset-right,0px)}
:root [data-mobile-menu]{justify-content:flex-start!important;padding-top:calc(80px + env(safe-area-inset-top,0px))!important;padding-bottom:calc(40px + env(safe-area-inset-bottom,0px))!important;height:100dvh}
:root [data-menu-close]{top:calc(18px + env(safe-area-inset-top,0px))!important;right:calc(22px + env(safe-area-inset-right,0px))!important}
:root [data-bubble-open],:root [data-bubble-panel]{right:calc(20px + env(safe-area-inset-right,0px))!important;bottom:calc(20px + env(safe-area-inset-bottom,0px))!important}
:root [data-fb-toggle],:root [data-fb-panel]{left:calc(20px + env(safe-area-inset-left,0px))!important;bottom:calc(20px + env(safe-area-inset-bottom,0px))!important}
:root [data-bubble-panel],:root [data-fb-panel]{max-height:calc(100dvh - 40px - env(safe-area-inset-top,0px) - env(safe-area-inset-bottom,0px))!important;overflow:auto;max-width:calc(100vw - 40px - env(safe-area-inset-left,0px) - env(safe-area-inset-right,0px))}
:root [data-consent-note]{bottom:calc(16px + env(safe-area-inset-bottom,0px))!important;max-height:calc(100dvh - 32px);overflow:auto}
:root [data-nav-cta],:root [data-mobile-hide],:root [data-social-row] a{min-height:44px;align-items:center}
:root .modal{max-height:calc(100dvh - 32px);overflow:auto}.sidebar{height:100dvh;overflow:auto}.main-content,.modal-content,.detail-content{min-width:0}
@media(max-height:500px){.sidebar{position:relative;height:auto}.topbar{position:relative}}
}
@media screen{main :is(h1,h2,h3){overflow-wrap:anywhere}main [style*="grid-template-columns"]>*{min-width:0}:root dialog{max-height:calc(100dvh - 32px - env(safe-area-inset-top,0px) - env(safe-area-inset-bottom,0px));overflow:auto}}
@media screen{:root [data-mobile-menu]{box-sizing:border-box}:root [data-mobile-menu]>div{flex-shrink:0}}

/* Keep menu actions unobstructed while preserving any contact draft. */
@media screen{body:has([data-mobile-menu]:not([inert])) :is([data-bubble-open],[data-bubble-panel]){visibility:hidden}}
