.pwa-bar{position:fixed;left:50%;transform:translateX(-50%);bottom:calc(20px + env(safe-area-inset-bottom,0px));z-index:95;display:flex;align-items:center;gap:12px;background:#13231b;color:#f3efe3;border:1px solid var(--gold);border-radius:14px;padding:12px 14px;box-shadow:0 12px 34px rgba(0,0,0,.3);font-size:16px;width:min(94vw,560px)}
.pwa-bar[hidden]{display:none!important}.pwa-bar span{flex:1}
.pwa-x{background:none;border:0;color:#f3efe3;font-size:24px;line-height:1;cursor:pointer;padding:0 4px}
.tabbar{display:none}
@media (max-width:820px){
 .tabbar{display:grid;grid-template-columns:repeat(5,1fr);position:fixed;left:0;right:0;bottom:0;z-index:70;background:#13231b;border-top:1px solid rgba(201,162,74,.35);padding:6px 4px calc(6px + env(safe-area-inset-bottom,0px));box-shadow:0 -6px 20px rgba(0,0,0,.18)}
 .tabbar button{background:none;border:0;color:#b9c7bd;display:flex;flex-direction:column;align-items:center;gap:3px;font:600 14px Inter,system-ui,sans-serif;padding:6px 0;border-radius:10px;cursor:pointer;min-height:48px}
 .tabbar svg{width:24px;height:24px;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}
 .tabbar button.on{color:var(--gold-2,#e2c278)}.tabbar button.on svg{stroke:var(--gold-2,#e2c278)}
 .tabbar button:focus-visible{outline:2px solid var(--gold);outline-offset:-2px}
 body.has-tabbar main,body.has-tabbar .main{padding-bottom:calc(84px + env(safe-area-inset-bottom,0px))!important}
 body.has-tabbar .pwa-bar,body.has-tabbar .st2-toast,body.has-tabbar .toast{bottom:calc(84px + env(safe-area-inset-bottom,0px))}
 body.has-tabbar .msbar{bottom:calc(80px + env(safe-area-inset-bottom,0px))}
}
html.pwa-standalone .topbar{padding-top:max(8px,env(safe-area-inset-top,0px))}
html.pwa-standalone body{overscroll-behavior-y:none}
