.pwa-offline { position: fixed; inset: 0; z-index: 2147483000; background: #f5f4f1; color: #292524; font: 16px/1.6 system-ui, sans-serif; display: grid; place-items: center; padding: 24px; box-sizing: border-box; overflow: auto; }
.pwa-offline[hidden], .pwa-install-invitation[hidden] { display: none !important; }
.pwa-offline-content { max-width: 460px; text-align: center; }
.pwa-offline img { display: block; width: 90px; height: 90px; border-radius: 22px; margin: 0 auto 28px; }
.pwa-offline small { color: #896137; text-transform: uppercase; letter-spacing: .12em; font-weight: 650; }
.pwa-offline h1 { font-size: clamp(28px, 6vw, 38px); letter-spacing: -.035em; line-height: 1.2; margin: 12px 0 18px; }
.pwa-offline p { color: #57534e; margin: 0 0 24px; }
.pwa-offline button, .pwa-install { background: #252525; color: #fff; border: 0; border-radius: 10px; padding: 13px 22px; font: 600 15px/1.4 system-ui, sans-serif; cursor: pointer; }
.pwa-offline button:focus-visible, .pwa-install:focus-visible, .pwa-install-dismiss:focus-visible { outline: 3px solid #bf9460; outline-offset: 4px; }
.pwa-offline button:disabled { opacity: .6; cursor: wait; }
.pwa-offline .pwa-feedback { font-size: 14px; margin-top: 18px; min-height: 24px; }
.pwa-install-invitation { display: flex; align-items: center; background: #252525; border-radius: 10px; position: fixed; right: 20px; bottom: max(20px, env(safe-area-inset-bottom)); z-index: 40; box-shadow: 0 4px 18px #0002; }
@media (prefers-color-scheme: dark) { .pwa-offline { background: #191919; color: #fafaf9; } .pwa-offline p { color: #a8a29e; } .pwa-offline small { color: #d4b58b; } .pwa-offline button { background: #bf9460; color: #191919; } }

.pwa-install-dismiss { width: 44px; height: 44px; flex-shrink: 0; border: 0; border-radius: 10px; background: transparent; color: #fff; font: 26px/1 system-ui, sans-serif; cursor: pointer; }
.pwa-install-dismiss:hover { background: #ffffff18; }

.pwa-install-help { box-sizing: border-box; width: min(28rem, calc(100vw - 2rem)); margin: auto; padding: 24px; border: 0; border-radius: 18px; background: #fff; color: #292524; font: 16px/1.6 system-ui, sans-serif; }
.pwa-install-help::backdrop { background: #0008; }
.pwa-install-help h2 { font-size: 21px; line-height: 1.3; margin: 0 0 16px; font-weight: 650; }
.pwa-install-help p { margin: 0 0 24px; }
.pwa-install-help form { display: flex; justify-content: flex-end; }
@media (prefers-color-scheme: dark) { .pwa-install-help { background: #252525; color: #fafaf9; } .pwa-install-help button { background: #bf9460; color: #191919; } }
