.sr-only{position:absolute!important;width:1px!important;height:1px!important;padding:0!important;margin:-1px!important;overflow:hidden!important;clip:rect(0,0,0,0)!important;white-space:nowrap!important;border:0!important}
.app-loader{position:fixed;inset:0;z-index:2147483646;display:grid;place-items:center;background:rgba(255,255,255,.68);backdrop-filter:blur(2px);opacity:0;visibility:hidden;transition:opacity .06s ease,visibility .06s ease;cursor:progress}
.app-loader.is-visible{opacity:1;visibility:visible}
.app-loader__heartbeat{display:grid;width:150px;height:150px;place-items:center;animation:app-loader-heartbeat 1.25s ease-in-out infinite;transform-origin:center}
.app-loader__logo{display:block;width:100%;height:100%;object-fit:contain}
.app-loader__fallback{display:grid;width:100%;height:100%;place-items:center;border-radius:16px;background:var(--primary-color,#4c45e0);color:#fff;font:800 38px/1 system-ui,-apple-system,sans-serif;text-transform:uppercase}
@keyframes app-loader-heartbeat{0%,100%{transform:scale(1)}10%{transform:scale(1.12)}20%{transform:scale(1)}30%{transform:scale(1.08)}45%{transform:scale(1)} }
.pwa-install{position:fixed;inset:0;z-index:2147483645;display:grid;align-items:end;visibility:hidden;opacity:0;transition:.2s ease}
.pwa-install.is-visible{visibility:visible;opacity:1}
.pwa-install__backdrop{position:absolute;inset:0;background:rgba(15,23,42,.55)}
.pwa-install__card{position:relative;width:min(480px,calc(100% - 28px));box-sizing:border-box;margin:0 auto 18px;padding:28px;border-radius:20px;background:#fff;color:#182230;box-shadow:0 24px 70px rgba(0,0,0,.25);transform:translateY(24px);transition:.2s ease;font-family:system-ui,-apple-system,sans-serif}
.pwa-install.is-visible .pwa-install__card{transform:none}
.pwa-install__close{position:absolute;right:14px;top:10px;border:0;background:transparent;color:#667085;font-size:30px;cursor:pointer}
.pwa-install__icon{display:grid;width:48px;height:48px;place-items:center;border-radius:13px;background:color-mix(in srgb,var(--primary-color,#4c45e0) 12%,white);color:var(--primary-color,#4c45e0);font-size:28px;font-weight:800}
.pwa-install h2{margin:16px 0 8px;font-size:22px}.pwa-install p{margin:0;color:#667085;line-height:1.55}.pwa-install__instructions{margin-top:14px;padding:12px;border-radius:10px;background:#f2f4f7;line-height:1.5;color:#344054}
.pwa-install__actions{display:flex;justify-content:flex-end;gap:10px;margin-top:22px}.pwa-install__actions button{padding:11px 16px;border-radius:9px;font-weight:700;cursor:pointer}.pwa-install__later{border:1px solid #d0d5dd;background:#fff;color:#344054}.pwa-install__button{border:1px solid var(--primary-color,#4c45e0);background:var(--primary-color,#4c45e0);color:#fff}
@media(min-width:700px){.pwa-install{align-items:center}.pwa-install__card{margin:auto}}
@media(prefers-reduced-motion:reduce){.app-loader,.pwa-install,.pwa-install__card{transition:none}.app-loader__heartbeat{animation:none}}
