.fast-offline-dialog-root {
  position: fixed;
  inset: 0;
  z-index: 10050;
  display: grid;
  place-items: center;
  padding: max(20px, env(safe-area-inset-top)) 20px
    max(20px, env(safe-area-inset-bottom));
  background: rgba(4, 16, 25, 0.72);
  overflow: auto;
}

.fast-offline-dialog-card {
  width: min(100%, 460px);
  margin: auto;
  padding: 24px;
}

.fast-offline-dialog-card h2 {
  margin: 0 0 12px;
}

.fast-offline-dialog-card p {
  margin: 0 0 20px;
  color: var(--muted);
  line-height: 1.55;
}

.fast-offline-dialog-card .action-row {
  display: flex;
  flex-wrap: wrap;
  gap: 10px;
}

.sync-chip.is-syncing i {
  animation: qy-sync-pulse 1.2s ease-in-out infinite;
}

@keyframes qy-sync-pulse {
  50% {
    opacity: 0.35;
  }
}

@media (max-width: 520px) {
  .fast-offline-dialog-root {
    align-items: end;
    padding-inline: 0;
    padding-bottom: 0;
  }

  .fast-offline-dialog-card {
    width: 100%;
    border-radius: 20px 20px 0 0;
    padding-bottom: max(24px, env(safe-area-inset-bottom));
  }

  .fast-offline-dialog-card .action-row > * {
    flex: 1 1 100%;
  }
}
