/* The install offer: one compact row above the bottom navigation, on a phone only. */
#install-bar { position: fixed; inset-inline: 8px; bottom: calc(70px + env(safe-area-inset-bottom, 0px)); z-index: 90; box-sizing: border-box;
  background: var(--ds-card); color: var(--ds-ink); border: 1.5px solid var(--ds-ink); box-shadow: 0 6px 24px rgba(8, 12, 22, .22); }
#install-bar .ib-row { display: flex; align-items: center; gap: 8px; padding: 8px 8px 8px 12px; }
#install-bar .ib-t { flex: 1; display: flex; flex-direction: column; gap: 2px; min-width: 0; }
#install-bar .ib-t b { font: 800 15px/1.3 var(--ds-font); }
#install-bar .ib-t span { font: 500 12px/1.35 var(--ds-font); color: var(--ds-ink2); }
#install-bar button { min-height: 44px; padding: 0 16px; font: 800 14px var(--ds-font); border: 1.5px solid var(--ds-ink); cursor: pointer; flex: none; }
#install-bar .ib-go { background: var(--ds-ink); color: var(--ds-card); }
#install-bar .ib-x { background: transparent; color: var(--ds-ink); min-width: 44px; padding: 0; font-size: 22px; line-height: 1; border-color: transparent; }
#install-bar .ib-how { margin: 0; padding: 10px 12px 12px; border-top: 1px solid var(--ds-line); font: 500 13px/1.5 var(--ds-font); color: var(--ds-ink2); }
@media (min-width: 768px) { #install-bar { display: none; } }
