/* Shared public PWA banner. Header stays below its measured height. */
.pwa-banner{position:fixed;inset:0 0 auto;z-index:120;padding:calc(12px + env(safe-area-inset-top,0px)) 24px 12px;background:#f7efe6;color:#4f3b2b;border-bottom:1px solid #d9c5af;box-shadow:0 8px 28px #2f231a12;font-family:Manrope,Arial,sans-serif}
.pwa-banner__inner{max-width:1500px;margin:0 auto;display:flex;align-items:center;gap:16px}.pwa-banner__icon{flex-shrink:0;border-radius:12px}.pwa-banner__copy{flex:1;min-width:0}.pwa-banner__copy strong{font-size:15px;font-weight:600;line-height:1.4}.pwa-banner__copy p{margin:3px 0 0;font-size:12px;line-height:1.5;color:#796046}.pwa-banner__actions{display:flex;align-items:center;gap:12px}.pwa-banner button{font:inherit;font-size:13px;cursor:pointer;min-height:42px;border-radius:24px;padding:10px 20px}.pwa-banner__install{background:#4f3b2b;color:#fff7ef;border:1px solid #4f3b2b}.pwa-banner__later{background:transparent;color:#796046;border:1px solid #d9c5af}.pwa-banner button:focus-visible{outline:3px solid #8a6d50;outline-offset:3px}.pwa-banner button:disabled{opacity:.6;cursor:wait}.has-pwa-banner body{padding-top:var(--pwa-banner-height,100px)}.has-pwa-banner .header{top:calc(var(--pwa-banner-height,100px) + 24px)}
.pwa-offline{margin:0;min-height:100vh;display:grid;place-items:center;background:#f7efe6;color:#4f3b2b;font:16px/1.6 Arial,sans-serif;text-align:center}.pwa-offline main{padding:32px}.pwa-offline img{margin:auto;border-radius:20px}.pwa-offline a{display:inline-block;padding:12px 24px;border-radius:24px;background:#4f3b2b;color:#fff7ef;text-decoration:none}
@media(max-width:600px){.pwa-banner{padding-right:16px;padding-left:16px}.pwa-banner__inner{gap:10px;flex-wrap:wrap}.pwa-banner__icon{width:40px;height:40px}.pwa-banner__copy{flex-basis:calc(100% - 54px)}.pwa-banner__copy strong{font-size:13px}.pwa-banner__copy p{font-size:11px}.pwa-banner__actions{width:100%;padding-left:50px}.pwa-banner button{min-height:38px;padding:8px 18px;font-size:12px}.has-pwa-banner .header{top:calc(var(--pwa-banner-height,150px) + 12px)}}
