diff --git a/src/components/welcome/WelcomeBackupPanel.vue b/src/components/welcome/WelcomeBackupPanel.vue
new file mode 100644
index 0000000..c4b044c
--- /dev/null
+++ b/src/components/welcome/WelcomeBackupPanel.vue
@@ -0,0 +1,109 @@
+
+
+ Sets this device up from a downloaded backup file — no recovery phrase needed, as long as you
+ still know the password the backup was encrypted with. Notes from the file are merged into
+ storage either way.
+
+
+
+ This device already has a wallet, so the backup's own key was not installed.
+ Its notes were merged and will appear if the existing wallet is the one this backup belongs to.
+
+
+
+
+ The backup's key was installed. Whoever wrote that file may know it — only continue if you
+ trust the file's source completely. Otherwise set up a fresh wallet from your own recovery
+ phrase instead.
+
+
+
+
+
+ Backup restored: {{ result.added }} note(s) added, {{ result.skipped }} already present.
+
+ The file carried no usable key of its own — restore its recovery phrase to unlock the notes.
+
+
+ A fresh recovery phrase is generated in your browser. It is the master key to your wallet —
+ and the only way to recover your notes on another device.
+
+
+ Password (optional) — encrypts your wallet on this device and enables locking. Minimum
+ {{ MIN_PASSWORD_LENGTH }} characters. Leave empty to store unencrypted.
+
+
+
+
+ At least {{ MIN_PASSWORD_LENGTH }} characters — this password is the only thing standing
+ between an offline brute-force and your notes.
+
+
+ Passwords do not match.
+
+
+
+
+
+ Your recovery phrase — shown once, never stored:
+
+
+
+ {{ index + 1 }}.{{ word }}
+
+
+
+
+ Write these 12 words down and keep them somewhere safe. Anyone who knows them can spend your
+ notes; if you lose them, your notes are gone forever.
+
+
+
+
+
+
+
+
+
diff --git a/src/components/welcome/WelcomeNostrPanel.vue b/src/components/welcome/WelcomeNostrPanel.vue
new file mode 100644
index 0000000..a0ee4a4
--- /dev/null
+++ b/src/components/welcome/WelcomeNostrPanel.vue
@@ -0,0 +1,163 @@
+
+
+ If this wallet used nostr backup before, your notes, mints and settings are waiting on your
+ relays - encrypted so only your recovery phrase can read them.
+
+
+
Relays to look on
+
+
{{ error }}
+
+
+ No backup found for this phrase on those relays. Check the phrase and the relay list - or
+ restore from a backup file instead.
+
+
+
+
+
+ Found a backup: {{ found.notes }} note(s), {{ found.mints }} mint(s), settings.
+
+
+ Password (optional) — encrypts your wallet on this device and enables locking. Minimum
+ {{ MIN_PASSWORD_LENGTH }} characters. Leave empty to store unencrypted.
+
+
+
+
+ At least {{ MIN_PASSWORD_LENGTH }} characters.
+
+ Password (optional) — encrypts your wallet on this device and enables locking. Minimum
+ {{ MIN_PASSWORD_LENGTH }} characters. Leave empty to store unencrypted.
+
+
+
+
+ At least {{ MIN_PASSWORD_LENGTH }} characters.
+
-
-
-
-
- A wallet already exists on this device. Setting up a new one replaces its key —
- notes belonging to the current wallet become unreadable until its own seed is
- restored again.
+
+ A wallet already exists on this device. Setting up a new one replaces its key — notes
+ belonging to the current wallet become unreadable until its own seed is restored again.
-
-
-
-
-
-
- A fresh recovery phrase is generated in your browser. It is the master key
- to your wallet — and the only way to recover your notes on another device.
-
-
- Password (optional) — encrypts your wallet on this device and enables
- locking. Minimum {{ MIN_PASSWORD_LENGTH }} characters. Leave empty to
- store unencrypted.
-
-
-
-
- At least {{ MIN_PASSWORD_LENGTH }} characters — this password is the only
- thing standing between an offline brute-force and your notes.
-
-
- Passwords do not match.
-
-
-
-
-
-
- Your recovery phrase — shown once, never stored:
-
-
-
- {{ i + 1 }}.{{ word }}
-
-
-
-
-
-
- Write these 12 words down and keep them somewhere safe. Anyone who knows
- them can spend your notes; if you lose them, your notes are gone forever.
-
-
-
-
-
-
-
-
-
-
- Password (optional) — encrypts your wallet on this device and enables
- locking. Minimum {{ MIN_PASSWORD_LENGTH }} characters. Leave empty to store
- unencrypted.
-
-
-
-
- At least {{ MIN_PASSWORD_LENGTH }} characters.
-
-
- Passwords do not match.
-
-
{{ restoreError }}
-
-
-
-
-
-
- If this wallet used nostr backup before, your notes, mints and settings are
- waiting on your relays - encrypted so only your recovery phrase can read
- them.
-
-
-
Relays to look on
-
-
-
{{ nostrError }}
-
-
-
- No backup found for this phrase on those relays. Check the phrase and the
- relay list - or restore from a backup file instead.
-
-
-
-
-
-
- Found a backup: {{ nostrFound.notes }} note(s), {{ nostrFound.mints }}
- mint(s), settings.
-
-
- Password (optional) — encrypts your wallet on this device and enables
- locking. Minimum {{ MIN_PASSWORD_LENGTH }} characters. Leave empty to
- store unencrypted.
-
-
-
-
- At least {{ MIN_PASSWORD_LENGTH }} characters.
-
-
- Passwords do not match.
-
-
-
-
-
-
-
-
- Sets this device up from a downloaded backup file — no recovery phrase
- needed, as long as you still know the password the backup was encrypted
- with. Notes from the file are merged into storage either way.
-
-
-
-
-
-
- This device already has a wallet, so the backup's own key was
- not installed. Its notes were merged and will appear if the
- existing wallet is the one this backup belongs to.
-
-
-
-
-
-
-
- The backup's key was installed. Whoever wrote that file may know it — only
- continue if you trust the file's source completely. Otherwise set up a
- fresh wallet from your own recovery phrase instead.
-
-
-
-
-
-
- Backup restored: {{ backupResult.added }} note(s) added,
- {{ backupResult.skipped }} already present.
-
- The file carried no usable key of its own — restore its recovery phrase
- to unlock the notes.
-
-