#pwa-install-banner{position:fixed;bottom:-200px;left:0;right:0;background:linear-gradient(135deg,#2d2d2d 0%,#2a3328 100%);color:#e0e0e0;padding:1rem 1.25rem;z-index:9999;transition:bottom .4s ease;box-shadow:0 -4px 20px rgba(0,0,0,0.5);border-top:1px solid #444}#pwa-install-banner.pwa-banner-visible{bottom:0}.pwa-banner-content{display:flex;align-items:center;max-width:600px;margin:0 auto;gap:.85rem}.pwa-banner-icon{width:44px;height:44px;border-radius:10px;flex-shrink:0}.pwa-banner-text{flex:1;display:flex;flex-direction:column;gap:.15rem}.pwa-banner-text strong{color:#DAD6C9;font-size:.9rem}.pwa-banner-text span{color:#999;font-size:.75rem}.pwa-banner-actions{display:flex;align-items:center;gap:.5rem;flex-shrink:0}.pwa-btn-install{background:linear-gradient(135deg,#6b7c5e 0%,#8a9e78 100%);color:#fff;border:none;padding:.6rem 1.5rem;border-radius:8px;cursor:pointer;font-weight:700;font-size:.85rem;font-family:inherit;letter-spacing:.02em;box-shadow:0 2px 8px rgba(107,124,94,0.35);transition:transform .15s,box-shadow .15s}.pwa-btn-install:hover{transform:translateY(-1px);box-shadow:0 4px 12px rgba(107,124,94,0.45)}.pwa-btn-install:active{transform:translateY(0);box-shadow:0 1px 4px rgba(107,124,94,0.3)}.pwa-btn-dismiss{background:rgba(255,255,255,0.06);border:1px solid rgba(255,255,255,0.1);color:#999;font-size:.8rem;cursor:pointer;padding:.5rem 1rem;border-radius:8px;font-family:inherit;transition:background .15s,color .15s}.pwa-btn-dismiss:hover{background:rgba(255,255,255,0.1);color:#ccc}#pwa-update-banner{position:fixed;top:-100px;left:0;right:0;background:#2196F3;color:#fff;padding:.75rem 1rem;z-index:9999;transition:top .4s ease;text-align:center;font-size:.9rem}#pwa-update-banner.pwa-update-visible{top:0}#pwa-update-banner button{background:#fff;color:#2196F3;border:none;padding:.3rem 1rem;border-radius:4px;margin-left:1rem;cursor:pointer;font-weight:600}#pwa-network-status{position:fixed;bottom:0;left:0;right:0;text-align:center;padding:.4rem;font-size:.85rem;z-index:9998;transition:opacity .3s ease}.pwa-network-offline{background:#ff9800;color:#000}.pwa-network-online{display:none}@media (max-width:768px){#pwa-install-banner.pwa-banner-visible{bottom:64px}}@media (max-width:480px){.pwa-banner-content{flex-wrap:wrap}.pwa-banner-actions{width:100%;justify-content:flex-end;margin-top:.25rem}}