/**
 * PWA install button. BEM; uses motion tokens.
 */
.pwa-install {
  display: inline-flex;
  align-items: center;
  gap: 0.5rem;
}

.pwa-install__btn {
  padding: 0.375rem 0.75rem;
  font-size: 0.875rem;
  font-family: inherit;
  color: var(--color-accent, #00ff88);
  background: transparent;
  border: 1px solid currentColor;
  border-radius: 0.25rem;
  cursor: pointer;
  transition: opacity var(--motion-duration-fast, 0.15s) var(--motion-ease-standard, ease);
}

.pwa-install__btn:hover {
  opacity: 0.9;
}

.pwa-install__btn:focus-visible {
  outline: 2px solid var(--color-accent, #00ff88);
  outline-offset: 2px;
}

.pwa-install[hidden] {
  display: none;
}

/* Update-available banner */
.pwa-update {
  position: fixed;
  bottom: 4.5rem;
  bottom: calc(4.5rem + env(safe-area-inset-bottom, 0));
  left: 50%;
  transform: translateX(-50%);
  z-index: 100;
  display: flex;
  align-items: center;
  gap: 0.75rem;
  padding: 0.5rem 1rem;
  font-size: 0.875rem;
  background: var(--color-surface);
  border: 1px solid var(--color-border);
  border-radius: 0.25rem;
  box-shadow: 0 4px 12px rgba(0, 0, 0, 0.15);
  transition: opacity var(--motion-duration-fast, 0.15s) var(--motion-ease-standard, ease);
}

.pwa-update__text {
  color: var(--color-text);
}

.pwa-update__btn {
  padding: 0.25rem 0.5rem;
  font-size: inherit;
  font-family: inherit;
  color: var(--color-accent, #00ff88);
  background: transparent;
  border: 1px solid currentColor;
  border-radius: 0.25rem;
  cursor: pointer;
}

.pwa-update__btn:hover {
  opacity: 0.9;
}
