:root{--install-banner-height: 0px}.buildside-install-banner,.buildside-pwa-update,.buildside-offline-status{box-sizing:border-box;color:#241b17;font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;-webkit-font-smoothing:antialiased}.buildside-install-banner *,.buildside-pwa-update *{box-sizing:border-box}.buildside-install-banner{position:fixed;inset:auto 0 0;z-index:10000;padding:.625rem max(.75rem,env(safe-area-inset-right,0px)) max(.625rem,env(safe-area-inset-bottom,0px)) max(.75rem,env(safe-area-inset-left,0px));border-top:1px solid rgba(80,52,39,.14);background:#fffcf9f5;box-shadow:0 -18px 48px -28px #3823197a;backdrop-filter:blur(18px) saturate(150%);-webkit-backdrop-filter:blur(18px) saturate(150%)}.buildside-install-banner__content{display:grid;grid-template-columns:2.75rem minmax(0,1fr) auto auto;align-items:center;gap:.625rem;width:min(100%,42rem);margin:0 auto}.buildside-install-banner__icon{width:2.75rem;height:2.75rem;border-radius:.75rem;box-shadow:0 4px 14px #5b2f1a2e}.buildside-install-banner__copy{min-width:0}.buildside-install-banner__title{margin:0;color:inherit;font-size:.9375rem;font-weight:750;line-height:1.2}.buildside-install-banner__description{margin:.18rem 0 0;color:#66554c;font-size:.8125rem;line-height:1.35}.buildside-install-banner__action,.buildside-install-banner__dismiss,.buildside-pwa-update__action,.buildside-pwa-update__dismiss{min-width:2.75rem;min-height:2.75rem;border:0;border-radius:.75rem;font:inherit;font-size:.875rem;font-weight:700;cursor:pointer;touch-action:manipulation}.buildside-install-banner__action,.buildside-pwa-update__action{padding:.65rem .9rem;color:#fff;background:#e84d0e;box-shadow:0 7px 18px -10px #ab3407e6}.buildside-install-banner__action:focus-visible,.buildside-install-banner__dismiss:focus-visible,.buildside-pwa-update__action:focus-visible,.buildside-pwa-update__dismiss:focus-visible{outline:3px solid rgba(232,77,14,.35);outline-offset:2px}.buildside-install-banner__dismiss,.buildside-pwa-update__dismiss{padding:0;color:#5c4b43;background:transparent;font-size:1.35rem;line-height:1}.buildside-install-banner__instructions{grid-column:1 / -1;margin:.15rem 0 0;padding:.65rem .75rem;border-radius:.75rem;color:#55433b;background:#f15a1a14;font-size:.8125rem;line-height:1.45}.buildside-pwa-update{position:fixed;right:max(.75rem,env(safe-area-inset-right,0px));bottom:calc(var(--mobile-bottom-offset, var(--install-banner-height, 0px)) + .75rem);left:max(.75rem,env(safe-area-inset-left,0px));z-index:9999;display:flex;align-items:center;gap:.65rem;width:min(calc(100% - 1.5rem),28rem);margin-left:auto;padding:.65rem;border:1px solid rgba(80,52,39,.14);border-radius:1rem;background:#fffcf9fa;box-shadow:0 18px 50px -22px #321d138c;backdrop-filter:blur(18px) saturate(150%);-webkit-backdrop-filter:blur(18px) saturate(150%)}.buildside-pwa-update__copy{min-width:0;flex:1;margin:0;font-size:.875rem;font-weight:650;line-height:1.35}.buildside-offline-status{position:fixed;top:calc(var(--app-header-height, 4rem) + .5rem);left:50%;z-index:10001;max-width:calc(100% - 1.5rem);transform:translate(-50%);padding:.55rem .8rem;border:1px solid rgba(114,75,23,.24);border-radius:999px;color:#4e3617;background:#fff4d6f7;box-shadow:0 8px 24px -16px #462c09bf;font-size:.8125rem;font-weight:650;line-height:1.25;text-align:center}@media(max-width:420px){.buildside-install-banner__content{grid-template-columns:2.75rem minmax(0,1fr) 2.75rem}.buildside-install-banner__action{grid-column:1 / -1;grid-row:2;width:100%}.buildside-install-banner__dismiss{grid-column:3;grid-row:1}}@media(prefers-reduced-motion:no-preference){.buildside-install-banner,.buildside-pwa-update,.buildside-offline-status{animation:buildside-pwa-enter .18s ease-out both}@keyframes buildside-pwa-enter{0%{opacity:0}}}@media(prefers-color-scheme:dark){.buildside-install-banner,.buildside-pwa-update{color:#fff8f2;border-color:#ffeadc24;background:#1f1713f5}.buildside-install-banner__description,.buildside-install-banner__dismiss,.buildside-pwa-update__dismiss{color:#d9c9c0}.buildside-install-banner__instructions{color:#f2dfd2;background:#f15a1a29}}
