/* Responsive base safety layer: loaded before app.css theme rules. */
*,*::before,*::after{box-sizing:border-box}html{width:100%;-webkit-text-size-adjust:100%;font-size:100%}body{width:100%;min-height:100vh;min-height:100dvh;margin:0;padding-left:env(safe-area-inset-left,0);padding-right:env(safe-area-inset-right,0);padding-bottom:env(safe-area-inset-bottom,0)}.app-shell{display:flex;flex-direction:column;min-height:100vh;min-height:100dvh}.app-shell>main,.app-shell-main{flex:1 1 auto;min-width:0}img,picture,video{display:block;max-width:100%;height:auto}input,select,textarea{font-size:max(16px,1rem)}p,h1,h2,h3,h4,h5,h6,li,blockquote{overflow-wrap:break-word}button,a[role=button],input[type=button],input[type=submit],select,[role=button]{min-height:44px;min-width:44px;touch-action:manipulation}.responsive-container{width:100%;max-width:1280px;margin-left:auto;margin-right:auto;padding-left:1rem;padding-right:1rem}.text-measure{max-width:65ch}.safe-area-top{padding-top:env(safe-area-inset-top,0)}.safe-area-bottom{padding-bottom:env(safe-area-inset-bottom,0)}.stack-on-mobile{display:flex;flex-direction:column}.responsive-grid{display:grid;gap:1rem}.app-top-bar{position:fixed;top:0;right:0;left:0;z-index:10;min-height:calc(var(--app-top-bar-height,3.5rem) + env(safe-area-inset-top,0px));padding-top:env(safe-area-inset-top,0)}.app-shell-main-with-top-bar{padding-top:calc(var(--app-top-bar-height,3.5rem) + env(safe-area-inset-top,0px));scroll-padding-top:calc(var(--app-top-bar-height,3.5rem) + env(safe-area-inset-top,0px))}.app-bottom-bar{position:fixed;right:0;bottom:0;left:0;z-index:10;min-height:calc(var(--app-bottom-bar-height,4rem) + env(safe-area-inset-bottom,0px));padding-bottom:env(safe-area-inset-bottom,0);gap:.5rem}.app-shell-main-with-bottom-bar{padding-bottom:calc(var(--app-bottom-bar-height,4rem) + env(safe-area-inset-bottom,0));scroll-padding-bottom:calc(var(--app-bottom-bar-height,4rem) + env(safe-area-inset-bottom,0))}@media(min-width:641px){.stack-on-mobile{flex-direction:row;flex-wrap:wrap}.stack-on-mobile>*{flex:1 1 0;min-width:0}}@media(min-width:1025px){.app-top-bar{position:static;min-height:0;padding-top:0}.app-shell-main-with-top-bar{padding-top:0;scroll-padding-top:0}.app-bottom-bar{position:static;min-height:0;padding-bottom:0}.app-shell-main-with-bottom-bar{padding-bottom:0;scroll-padding-bottom:0}}
