diff --git a/motomate/src/routes/(app)/settings/workflows/+page.svelte b/motomate/src/routes/(app)/settings/workflows/+page.svelte index ed62f69..ffda2a7 100644 --- a/motomate/src/routes/(app)/settings/workflows/+page.svelte +++ b/motomate/src/routes/(app)/settings/workflows/+page.svelte @@ -539,6 +539,9 @@ font-size: var(--text-base); font-weight: 500; color: var(--text); + overflow: hidden; + text-overflow: ellipsis; + white-space: nowrap; } .rule-name--muted { color: var(--text-muted); @@ -567,7 +570,10 @@ } .rule-last-fired { white-space: nowrap; - flex-shrink: 0; + overflow: hidden; + text-overflow: ellipsis; + flex-shrink: 1; + min-width: 0; } .rule-next-fire { overflow: hidden; @@ -689,4 +695,21 @@ color: var(--status-overdue); border-color: var(--status-overdue); } + + @media (max-width: 600px) { + .rule-row { + flex-wrap: wrap; + gap: var(--space-3); + } + .rule-actions { + order: 3; + flex-direction: row; + align-items: center; + gap: var(--space-2); + width: 100%; + justify-content: flex-end; + padding-top: var(--space-2); + border-top: 1px solid color-mix(in srgb, var(--border) 60%, transparent); + } + } diff --git a/motomate/src/routes/(app)/vehicles/[id]/+layout.svelte b/motomate/src/routes/(app)/vehicles/[id]/+layout.svelte index 55acf96..6e373d0 100644 --- a/motomate/src/routes/(app)/vehicles/[id]/+layout.svelte +++ b/motomate/src/routes/(app)/vehicles/[id]/+layout.svelte @@ -358,6 +358,8 @@ letter-spacing: -0.02em; line-height: var(--leading-tight); margin: 0; + overflow-wrap: break-word; + word-break: break-word; } .archived-tag { font-size: var(--text-xs); @@ -374,6 +376,9 @@ font-size: var(--text-sm); color: var(--text-muted); margin-top: 0.125rem; + overflow: hidden; + text-overflow: ellipsis; + white-space: nowrap; } .odo-display { display: flex; @@ -470,6 +475,19 @@ font-size: var(--text-2xl); } } + @media (max-width: 360px) { + .vehicle-avatar { + width: 44px; + height: 44px; + font-size: 1.375rem; + } + .odo-num { + font-size: var(--text-xl); + } + .vehicle-identity { + gap: 0.875rem; + } + } /* Avatar button */ .vehicle-avatar { diff --git a/motomate/src/routes/(app)/vehicles/[id]/+page.svelte b/motomate/src/routes/(app)/vehicles/[id]/+page.svelte index 56f80a9..a9ac714 100644 --- a/motomate/src/routes/(app)/vehicles/[id]/+page.svelte +++ b/motomate/src/routes/(app)/vehicles/[id]/+page.svelte @@ -2147,11 +2147,17 @@ font-size: var(--text-base); font-weight: 500; color: var(--text); + overflow: hidden; + text-overflow: ellipsis; + white-space: nowrap; } .upcoming-detail { font-size: var(--text-sm); margin-top: 0.125rem; color: var(--text-muted); + overflow: hidden; + text-overflow: ellipsis; + white-space: nowrap; } .upcoming-card--overdue .upcoming-detail { color: var(--status-overdue); @@ -2447,23 +2453,28 @@ color: var(--text); } - @media (max-width: 480px) { + @media (max-width: 600px) { .form-row { grid-template-columns: 1fr; } + .inline-form { + padding: 1rem; + } + } + @media (max-width: 480px) { .entry-menu-btn { opacity: 1; width: 44px; height: 44px; } } - @media (max-width: 380px) { - .form-row { - grid-template-columns: 1fr; + @media (pointer: coarse) { + .entry-menu-btn { + opacity: 1; } } - /* ── Attachment UI (form + timeline) ── */ + /* Attachment UI (form + timeline) */ .form-attachments { display: flex; flex-direction: column; @@ -2526,7 +2537,7 @@ cursor: not-allowed; } - /* ── Entry attachments (timeline read-only) ── */ + /* Entry attachments (timeline read-only) */ .entry-attachments { display: flex; flex-wrap: wrap; @@ -2535,7 +2546,7 @@ margin-top: 0.375rem; } - /* ── Edit form attachments (inside entry-edit-card) ── */ + /* Edit form attachments (inside entry-edit-card) */ .edit-attachments { border-top: 1px solid var(--border); margin-top: 0.625rem; @@ -2607,7 +2618,7 @@ color: inherit; } - /* ── Link picker ── */ + /* Link picker */ .link-picker { margin-top: 0.5rem; border: 1px solid var(--border);