diff --git a/src/lib/components/sidebar/details/DetailRow.svelte b/src/lib/components/sidebar/details/DetailRow.svelte
new file mode 100644
index 00000000..5f153590
--- /dev/null
+++ b/src/lib/components/sidebar/details/DetailRow.svelte
@@ -0,0 +1,65 @@
+
+
+
+ {label}
+
+ {#if children}
+ {@render children()}
+ {:else}
+ {value ?? '—'}
+ {/if}
+
+
+
+
diff --git a/src/lib/components/sidebar/details/DetailsSection.svelte b/src/lib/components/sidebar/details/DetailsSection.svelte
new file mode 100644
index 00000000..ae1ec4c5
--- /dev/null
+++ b/src/lib/components/sidebar/details/DetailsSection.svelte
@@ -0,0 +1,32 @@
+
+
+
+
{title}
+ {@render children()}
+
+
+