.menu-push-control{width:100%;text-align:left;cursor:pointer}
#mobileMenu .menu-push-copy{display:flex;min-width:0;flex:1;flex-direction:column;gap:2px}
#mobileMenu .menu-push-copy strong{color:#f4f6f8;font-size:inherit;font-weight:500;line-height:1.1}
#mobileMenu .menu-push-copy small{color:#91a0b1;font-size:11px;line-height:1.2}
.menu-push-switch{position:relative;width:46px;height:26px;flex:0 0 46px;border-radius:999px;background:#46515e;box-shadow:inset 0 0 0 1px rgba(255,255,255,.08);transition:background-color .24s ease,opacity .24s ease}
.menu-push-switch i{position:absolute;top:3px;left:3px;width:20px;height:20px;border-radius:50%;background:#fff;box-shadow:0 2px 7px rgba(0,0,0,.28);transition:transform .24s cubic-bezier(.22,1,.36,1)}
[data-push-toggle].is-enabled .menu-push-switch{background:#16a66a}
[data-push-toggle].is-enabled .menu-push-switch i{transform:translateX(20px)}
[data-push-toggle].is-busy{pointer-events:none;opacity:.68}
[data-push-toggle].is-unavailable .menu-push-switch{opacity:.45}
.pwa-install-card,.pwa-notification-float{display:none}
.pwa-install-card.is-visible{position:fixed;z-index:1084;right:max(16px,env(safe-area-inset-right));bottom:max(16px,env(safe-area-inset-bottom));display:grid;grid-template-columns:auto minmax(0,1fr);align-items:center;gap:12px;width:min(420px,calc(100% - 32px));margin:0;padding:16px;padding-top:20px;border:1px solid hsl(var(--primary) / .34);border-radius:16px;background:hsl(var(--surface-2));color:hsl(var(--foreground));box-shadow:0 20px 48px rgba(0,0,0,.24);animation:pwaFloatEnter .38s cubic-bezier(.22,1,.36,1) both}
.pwa-install-card-icon,.pwa-notification-float-icon{display:grid;width:46px;height:46px;place-items:center;border-radius:13px;background:hsl(var(--primary) / .12);color:hsl(var(--primary));font-size:22px}
.pwa-install-card-copy strong,.pwa-notification-float-copy strong{display:block;margin-bottom:3px;font-size:15px;line-height:1.2}
.pwa-install-card-copy span,.pwa-notification-float-copy span{display:block;color:hsl(var(--muted-foreground));font-size:12px;line-height:1.45}
.pwa-install-card-actions{display:flex;grid-column:1/-1;align-items:center;gap:8px}
.pwa-install-card-actions>*{flex:1}
.pwa-install-card-close{position:absolute;top:8px;right:8px;display:grid;width:28px;height:28px;place-items:center;border:0;border-radius:8px;background:transparent;color:hsl(var(--muted-foreground));font-size:13px;cursor:pointer;transition:background-color .2s ease,color .2s ease}
.pwa-install-card-close:hover{background:hsl(var(--primary) / .1);color:hsl(var(--foreground))}
.pwa-install-card-button,.pwa-install-card-help,.pwa-notification-float-button{display:inline-flex;min-height:40px;align-items:center;justify-content:center;gap:7px;padding:9px 14px;border:0;border-radius:10px;font-size:12px;font-weight:800;line-height:1;text-decoration:none!important;cursor:pointer}
.pwa-install-card-button,.pwa-notification-float-button{background:hsl(var(--primary));color:#fff!important}
.pwa-install-card-help{border:1px solid hsl(var(--border));background:hsl(var(--surface-2));color:hsl(var(--foreground))!important}
.pwa-notification-float.is-visible{position:fixed;z-index:1085;right:max(16px,env(safe-area-inset-right));bottom:max(16px,env(safe-area-inset-bottom));display:grid;grid-template-columns:auto minmax(0,1fr) auto auto;align-items:center;gap:12px;width:min(560px,calc(100% - 32px));padding:13px;border:1px solid hsl(var(--primary) / .32);border-radius:16px;background:hsl(var(--surface-2));color:hsl(var(--foreground));box-shadow:0 20px 48px rgba(0,0,0,.28);animation:pwaFloatEnter .38s cubic-bezier(.22,1,.36,1) both}
.pwa-notification-float-close{display:grid;width:30px;height:30px;place-items:center;border:0;border-radius:8px;background:hsl(var(--surface-2));color:hsl(var(--muted-foreground))}
@keyframes pwaFloatEnter{from{opacity:0;transform:translateY(22px) scale(.98)}to{opacity:1;transform:translateY(0) scale(1)}}
@media(max-width:640px){.pwa-install-card.is-visible{right:16px;bottom:max(10px,env(safe-area-inset-bottom));width:calc(100% - 32px)}.pwa-notification-float.is-visible{grid-template-columns:auto minmax(0,1fr) auto;bottom:max(10px,env(safe-area-inset-bottom))}.pwa-notification-float-button{grid-column:1/-1;width:100%}}
@media(prefers-reduced-motion:reduce){.pwa-notification-float.is-visible{animation:none}}
