.pwa-banner{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:12px 20px;background:#1e1e2e;border-bottom:1px solid rgba(255,255,255,.08);margin-left:var(--sidebar-width-closed,62px);transition:margin-left .21s cubic-bezier(.7,.2,.3,.9);font-family:'Nunito',sans-serif}.sidebar-categories:hover~.pwa-banner,.sidebar-categories:focus-within~.pwa-banner{margin-left:var(--sidebar-width-open,240px)}.pwa-banner.hidden{display:none !important}.pwa-banner-left{display:flex;align-items:center;gap:12px}.pwa-banner .pwa-icon{width:40px;height:40px;border-radius:10px;object-fit:cover;flex-shrink:0}.pwa-banner-text{display:flex;flex-direction:column;gap:2px}.pwa-banner .pwa-title{color:#fff;font-size:14px;font-weight:700}.pwa-banner .pwa-subtitle{color:#88a;font-size:11px}.pwa-banner-right{display:flex;gap:8px;flex-shrink:0}.pwa-banner .pwa-btn{border:none;border-radius:8px;font-size:13px;font-weight:700;cursor:pointer;padding:7px 16px;transition:all .2s ease}.pwa-banner .pwa-btn.later{background:#2a2a45;color:#99b;border:1px solid #3a3a5c !important}.pwa-banner .pwa-btn.install{background:#ff7a00;color:#fff;box-shadow:0 4px 14px rgba(255,122,0,.35)}.pwa-banner .pwa-btn.install:hover{background:#ff9130}@media (max-width:700px){.pwa-banner{margin-left:0}}.pwa-popup{position:fixed;bottom:24px;right:24px;z-index:999999;display:none;transform:translateY(80px);opacity:0;transition:transform .4s cubic-bezier(.34,1.56,.64,1),opacity .4s ease}.pwa-popup.pwa-visible{transform:translateY(0);opacity:1}.pwa-popup-content{background:#1e1e2e;border:1px solid #2e2e4e;border-radius:14px;padding:14px 18px;display:flex;align-items:center;gap:14px;box-shadow:0 10px 40px rgba(0,0,0,.6);min-width:300px;max-width:380px;position:relative}.pwa-popup .pwa-icon{width:46px;height:46px;border-radius:10px;object-fit:cover;flex-shrink:0}.pwa-popup .pwa-text{flex:1;display:flex;flex-direction:column;gap:2px;min-width:0}.pwa-popup .pwa-text strong{color:#fff;font-size:14px;font-weight:700;line-height:1.3;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.pwa-popup .pwa-text span{color:#88a;font-size:11px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.pwa-popup .pwa-actions{display:flex;gap:8px;align-items:center;flex-shrink:0}.pwa-popup .pwa-actions button{border:none;border-radius:8px;font-size:13px;font-weight:700;cursor:pointer;padding:8px 16px;transition:all .2s ease;white-space:nowrap}.pwa-popup .pwa-actions button:active{transform:scale(.96)}#pwa-dismiss-btn{background:#2a2a45;color:#99b;border:1px solid #3a3a5c !important}#pwa-dismiss-btn:hover{background:#333360;color:#cce}#pwa-install-btn{background:#4caf50;color:#fff;box-shadow:0 4px 14px rgba(76,175,80,.35)}#pwa-install-btn:hover{background:#43a047;box-shadow:0 4px 20px rgba(76,175,80,.5);transform:scale(1.04)}.pwa-popup .pwa-close{position:absolute;top:8px;right:10px;color:#557;font-size:16px;cursor:pointer;line-height:1;transition:color .2s ease;user-select:none}.pwa-popup .pwa-close:hover{color:#fff}@media (max-width:480px){.pwa-popup{bottom:12px;right:12px;left:12px}.pwa-popup-content{min-width:unset;max-width:100%}.pwa-popup .pwa-actions{flex-direction:column;gap:6px}.pwa-popup .pwa-actions button{width:100%;text-align:center}}