/* Responsive enhancements for mobile, tablet, laptop, and desktop */
html{overflow-x:hidden;scroll-padding-top:4rem}body{min-width:0;overflow-wrap:break-word}img,video,svg{max-width:100%;height:auto}main{min-width:0}main table{width:100%;}main :is(.overflow-x-auto,.table-responsive){-webkit-overflow-scrolling:touch}input,select,textarea{max-width:100%}button,a{touch-action:manipulation}
.pwa-install-bar{background:#ecfdf5;color:#064e3b;padding:10px clamp(12px,3vw,36px);display:flex;align-items:center;justify-content:center;gap:12px;flex-wrap:wrap;font:600 13px/1.5 system-ui,sans-serif;border-bottom:1px solid #a7f3d0}
.pwa-install-bar[hidden]{display:none!important}.pwa-install-bar button{cursor:pointer;border:0;border-radius:10px;padding:9px 13px;background:#064e3b;color:#fff;font-weight:700}.pwa-install-bar #pwa-dismiss-btn{background:transparent;color:#064e3b;font-size:22px;padding:0 7px}
@media(max-width:767px){.pwa-install-bar{justify-content:space-between}.pwa-install-bar span{flex-basis:100%}main :is(table,.table){display:block;overflow-x:auto;max-width:100%;white-space:normal}main :is(td,th){min-width:90px}main :is(input,select,textarea){font-size:16px}main :is(.grid,.flex){min-width:0}main :is(h1,h2){overflow-wrap:anywhere}}
@media(min-width:768px) and (max-width:1023px){main{max-width:100vw}main :is(table,.table){max-width:100%;overflow-x:auto}}
@media(min-width:1200px){main{width:100%}}


/* Branded splash screen */
.app-splash{position:fixed;inset:0;z-index:99999;display:flex;align-items:center;justify-content:center;background:linear-gradient(180deg,#ffffff 0%,#f0fdf4 100%);padding:24px;transition:opacity .45s ease,visibility .45s ease}
.app-splash.is-hidden{opacity:0;visibility:hidden;pointer-events:none}
.app-splash-card{max-width:min(92vw,520px);display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center}
.app-splash-logo{width:min(72vw,300px);max-width:300px;height:auto;filter:drop-shadow(0 10px 24px rgba(6,78,59,.18))}
.app-splash-message{margin-top:16px;font:700 clamp(14px,2.4vw,18px)/1.5 Inter,system-ui,sans-serif;color:#064e3b}
@media (max-width:480px){.app-splash-logo{width:min(80vw,260px)}.app-splash-message{font-size:14px}}
