.pwa-install-banner{align-items:center;gap:var(--space-2);margin:var(--space-3) var(--space-4);padding:var(--space-3);border:1px solid var(--line);border-radius:var(--radius-card);background:var(--paper-2);color:var(--ink);grid-template-columns:44px minmax(0,1fr) 44px;display:grid}.pwa-install-brand-mark{width:44px;height:44px;color:var(--brand-logo);display:block}.pwa-install-copy{min-width:0;font-size:14px}.pwa-install-copy p{margin-top:var(--space-1);color:var(--muted);font-size:12px}.pwa-install-action,.pwa-install-close{border-radius:var(--radius-control);min-width:44px;min-height:44px;padding:var(--space-2) var(--space-3);cursor:pointer}.pwa-install-action{background:var(--action-accent);color:var(--on-action);font-size:14px;font-weight:600}.pwa-install-action:disabled{opacity:.65;cursor:wait}.pwa-install-banner>.pwa-install-action{grid-column:2;justify-self:start}.pwa-install-close{padding:var(--space-2);color:var(--muted);grid-area:1/3;place-items:center;display:grid}.pwa-install-action:focus-visible,.pwa-install-close:focus-visible,.pwa-install-link:focus-visible{outline:2px solid var(--ink);outline-offset:2px}.pwa-install-dialog{background:var(--paper);color:var(--ink);border-color:var(--line);border-radius:var(--radius-overlay);max-height:85dvh;overflow-y:auto}.pwa-install-dialog ol{padding-left:var(--space-6);list-style:decimal}.pwa-install-dialog li+li{margin-top:var(--space-2)}.pwa-install-link{width:100%;min-width:0;min-height:44px;padding:var(--space-2);border:1px solid var(--line);border-radius:var(--radius-control);background:var(--paper-2)}@media (min-width:1024px){.pwa-install-banner{display:none}}
