.pwa-launch-page { display: grid; min-height: 100vh; place-items: center; background: #111111; color: #ffffff; }
.pwa-launch { display: grid; justify-items: center; gap: 16px; padding: 24px; text-align: center; }
.pwa-launch__mark { display: grid; width: 62px; height: 62px; place-items: center; border: 1px solid #c8a24d; color: #c8a24d; font: 700 26px var(--display, Georgia, serif); }
.pwa-launch p { margin: 0; color: #d6d1c7; font: 500 14px var(--font, Arial, sans-serif); }

.pwa-install-card,
.pwa-network-notice,
.pwa-update-notice { display: flex; align-items: center; justify-content: space-between; gap: 16px; margin: 0 0 20px; padding: 14px 16px; border: 1px solid #d8d0bd; background: #f7f4ed; color: #302e2a; font: 500 12px var(--font, Arial, sans-serif); }
.pwa-install-card[hidden],
.pwa-network-notice[hidden] { display: none; }
.pwa-install-card__content { display: grid; gap: 3px; }
.pwa-install-card strong { font-size: 13px; }
.pwa-install-card p { margin: 0; color: #706c64; line-height: 1.45; }
.pwa-install-card button,
.pwa-update-notice button { flex: 0 0 auto; border: 1px solid #c8a24d; background: #111111; color: #ffffff; padding: 9px 11px; font: 700 10px var(--font, Arial, sans-serif); cursor: pointer; }
.pwa-install-card button[hidden],
.pwa-install-card p[hidden] { display: none; }
.pwa-network-notice { border-color: #d5b5ab; background: #fbf2ef; color: #754034; line-height: 1.45; }
.pwa-update-notice { border-color: #c8a24d; background: #111111; color: #ffffff; }
.pwa-update-notice span { font-weight: 700; }
.pwa-update-notice button { background: #c8a24d; color: #111111; }
.pwa-offline [data-appointment-action],
.pwa-offline [data-service-action] { cursor: not-allowed; opacity: 0.58; }

@media (max-width: 640px) {
  .pwa-install-card,
  .pwa-network-notice,
  .pwa-update-notice { align-items: flex-start; flex-direction: column; gap: 10px; margin-bottom: 16px; padding: 13px; }
  .pwa-install-card button,
  .pwa-update-notice button { width: 100%; min-height: 38px; }
}
