diff --git a/src/routes/(app)/database/jobs/+page.svelte b/src/routes/(app)/database/jobs/+page.svelte
index a1e5bcf3..738924a7 100644
--- a/src/routes/(app)/database/jobs/+page.svelte
+++ b/src/routes/(app)/database/jobs/+page.svelte
@@ -2,143 +2,218 @@
-
-
-
-
+ {#if viewMode === 'jobs'}
+
+
+ {#snippet leftActions()}
+
+ Jobs
+ Accessories
+
+ {/snippet}
+
+ {:else}
+
+
+
+
+
+ Jobs
+ Accessories
+
- {#if jobsQuery.isLoading}
-
Loading jobs...
- {:else if jobsQuery.isError}
-
Failed to load jobs
- {:else}
-
-
-
-
- | Image |
- Name |
- Row |
- Proficiencies |
- Features |
-
-
-
- {#each sortedJobs as job (job.id)}
- handleRowClick(job)} class="clickable">
-
-
- |
-
-
- {job.name.en}
-
- |
-
- {getJobTierName(job.row)}
- |
-
-
- {#if job.proficiency?.[0]}
-
- {/if}
- {#if job.proficiency?.[1]}
-
- {/if}
-
- |
-
-
- {#if job.masterLevel}
- Master
- {/if}
- {#if job.ultimateMastery}
- Ultimate
- {/if}
- {#if job.accessory}
- Accessory
- {/if}
-
- |
+
+
+
+
+
+
+ {#if accessoriesQuery.isLoading}
+ Loading accessories...
+ {:else if accessoriesQuery.isError}
+ Failed to load accessories
+ {:else if sortedAccessories.length === 0}
+ No accessories found
+ {:else}
+
+
+
+
+ | Name |
+ Type |
+ Job |
+ Rarity |
+ Granblue ID |
- {/each}
-
-
-
+
+
+ {#each sortedAccessories as accessory (accessory.id)}
+ handleAccessoryRowClick(accessory)} class="clickable">
+ |
+
+ {accessory.name.en}
+ {#if accessory.name.ja}
+ {accessory.name.ja}
+ {/if}
+
+ |
+
+
+ {getAccessoryTypeName(accessory.accessoryType)}
+
+ |
+
+ {#if accessory.job}
+ {accessory.job.name.en}
+ {:else}
+ —
+ {/if}
+ |
+
+ {accessory.rarity ?? '—'}
+ |
+
+ {accessory.granblueId}
+ |
+
+ {/each}
+
+
+
-
- {/if}
-
+
+ {/if}
+
+ {/if}