diff --git a/CLAUDE.md b/CLAUDE.md
index 4cab4c4f..ab46a59d 100644
--- a/CLAUDE.md
+++ b/CLAUDE.md
@@ -181,6 +181,30 @@ For validation issue lists (multiple items), show them as a `
` inside the no
---
+## Don't wrap one-liners used once
+
+A function whose body is a single trivial expression — a ternary, a `??` chain, a
+template string — and that is called exactly once is **bloat**. It forces a reader to
+jump to the definition and back for no gain. Inline the expression at the call site.
+
+```svelte
+
+
+
+
+
+
+```
+
+Use a named function only when it is **reused** (2+ call sites), **multi-statement**,
+or a genuine **multi-branch mapper** (a `switch` / 3+ `if` — inlining those as nested
+ternaries hurts readability more than the wrapper does). In Svelte templates, prefer
+`{@const}` over a helper function for per-row derived values.
+
+---
+
## State management
### Form field state
diff --git a/messages/en.json b/messages/en.json
index 56e83152..f22100fd 100644
--- a/messages/en.json
+++ b/messages/en.json
@@ -80,6 +80,8 @@
"dashboard_loading_view": "Loading dashboard view...",
"dashboard_loading_devices": "Loading devices…",
"dashboard_search_placeholder": "Search by location, device name or EUI…",
+ "dashboard_grid_layout": "Grid layout",
+ "dashboard_masonry_layout": "Masonry layout",
"error_bad_request_title": "Bad Request",
"error_bad_request_description": "The server could not understand your request. Please check the URL and try again.",
"error_unauthorized_title": "Unauthorized",
diff --git a/messages/ja.json b/messages/ja.json
index d8abf100..f7f37eb0 100644
--- a/messages/ja.json
+++ b/messages/ja.json
@@ -80,6 +80,8 @@
"dashboard_loading_view": "ダッシュボードを読み込み中...",
"dashboard_loading_devices": "デバイスを読み込み中…",
"dashboard_search_placeholder": "ロケーション、デバイス名、EUIで検索…",
+ "dashboard_grid_layout": "グリッドレイアウト",
+ "dashboard_masonry_layout": "モザイクレイアウト",
"error_bad_request_title": "不正なリクエスト",
"error_bad_request_description": "サーバーがリクエストを理解できませんでした。URL を確認して再度お試しください。",
"error_unauthorized_title": "認証が必要です",
diff --git a/src/lib/components/dashboard/DashboardCards.svelte b/src/lib/components/dashboard/DashboardCards.svelte
index 848f20dc..ff8b9808 100644
--- a/src/lib/components/dashboard/DashboardCards.svelte
+++ b/src/lib/components/dashboard/DashboardCards.svelte
@@ -1,3 +1,8 @@
+
+
-
+
{#snippet header()}