.pwa-install-root{position:fixed;inset:0;z-index:9999;pointer-events:none}.pwa-install-popup{position:fixed;right:1rem;bottom:1rem;left:auto;width:min(22rem,calc(100vw - 2rem));pointer-events:auto;border-radius:1rem;border:1px solid hsl(var(--border));background:hsl(var(--card));color:hsl(var(--card-foreground));box-shadow:0 20px 40px -12px rgb(0 0 0/.18),0 0 0 1px rgb(0 0 0/.04);animation:pwa-install-slide-in .35s cubic-bezier(.22,1,.36,1)}.dark .pwa-install-popup{box-shadow:0 20px 40px -12px rgb(0 0 0/.55),0 0 0 1px rgb(255 255 255/.06)}@keyframes pwa-install-slide-in{0%{opacity:0;transform:translateY(1rem) scale(.98)}to{opacity:1;transform:translateY(0) scale(1)}}.pwa-install-popup__inner{padding:1.125rem 1.125rem 1rem}.pwa-install-popup__header{display:flex;align-items:flex-start;gap:.75rem;margin-bottom:.75rem}.pwa-install-popup__icon{flex-shrink:0;width:2.75rem;height:2.75rem;border-radius:.625rem;overflow:hidden;box-shadow:0 2px 8px rgb(5 150 105/.25)}.pwa-install-popup__icon img{display:block;width:100%;height:100%}.pwa-install-popup__title{margin:0 0 .25rem;font-size:.9375rem;font-weight:600;line-height:1.35}.pwa-install-popup__body{margin:0;font-size:.8125rem;line-height:1.5;color:hsl(var(--muted-foreground))}.pwa-install-popup__steps{margin:.75rem 0 0;padding:.625rem .75rem;list-style:none;border-radius:.5rem;background:hsl(var(--muted));font-size:.8125rem;line-height:1.45}.pwa-install-popup__steps li{display:flex;align-items:flex-start;gap:.5rem;padding:.25rem 0}.pwa-install-popup__steps li+li{margin-top:.25rem}.pwa-install-popup__step-num{flex-shrink:0;display:inline-flex;align-items:center;justify-content:center;width:1.25rem;height:1.25rem;border-radius:9999px;background:hsl(var(--primary));color:hsl(var(--primary-foreground));font-size:.6875rem;font-weight:600}.pwa-install-popup__actions{display:flex;gap:.5rem;margin-top:1rem}.pwa-install-popup__btn{flex:1;min-height:2.375rem;padding:.5rem .875rem;border-radius:.5rem;border:1px solid transparent;font-size:.8125rem;font-weight:600;line-height:1.2;cursor:pointer;transition:background-color .15s ease,border-color .15s ease,color .15s ease}.pwa-install-popup__btn:focus-visible{outline:2px solid hsl(var(--ring));outline-offset:2px}.pwa-install-popup__btn--primary{background:hsl(var(--primary));color:hsl(var(--primary-foreground))}.pwa-install-popup__btn--primary:hover{filter:brightness(1.05)}.pwa-install-popup__btn--primary:disabled{opacity:.45;cursor:not-allowed;filter:grayscale(.3);background:hsl(var(--muted-foreground));color:hsl(var(--background))}.pwa-install-popup__btn--secondary{background:transparent;border-color:hsl(var(--border));color:hsl(var(--foreground))}.pwa-install-popup__btn--secondary:hover{background:hsl(var(--muted))}.pwa-install-popup__close{position:absolute;top:.5rem;right:.5rem;display:flex;align-items:center;justify-content:center;width:1.75rem;height:1.75rem;padding:0;border:none;border-radius:.375rem;background:transparent;color:hsl(var(--muted-foreground));cursor:pointer;transition:background-color .15s ease,color .15s ease}.pwa-install-popup__close:hover{background:hsl(var(--muted));color:hsl(var(--foreground))}.pwa-install-popup__close:focus-visible{outline:2px solid hsl(var(--ring));outline-offset:2px}@media (max-width:480px){.pwa-install-popup{right:.75rem;bottom:.75rem;left:.75rem;width:auto}.pwa-install-popup__actions{flex-direction:column}}