From 119e4f70cba629a7a29c7163c425f0f1ba594ff6 Mon Sep 17 00:00:00 2001 From: krusty-agent Date: Tue, 10 Feb 2026 04:35:04 -0800 Subject: [PATCH] =?UTF-8?q?=F0=9F=8E=A8=20Apply=20warm=20cream/amber=20des?= =?UTF-8?q?ign=20system=20across=20all=20pages?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit - Define CSS custom properties for warm cream/amber palette in index.css - Replace all blue/indigo colors with warm amber/orange alternatives - Update all priority indicators, buttons, badges, and highlights - Ensure consistent warm 💩 brand identity throughout the app - Maintain good contrast and accessibility with warm neutrals --- src/components/Attachments.tsx | 2 +- src/components/CalendarView.tsx | 2 +- src/components/ChangeCategoryDialog.tsx | 2 +- src/components/ConfirmDialog.tsx | 2 +- src/components/ErrorBoundary.tsx | 2 +- src/components/ItemDetailsModal.tsx | 2 +- src/components/ListCard.tsx | 2 +- src/components/ListItem.tsx | 6 ++-- src/components/ProvenanceInfo.tsx | 4 +-- src/components/TemplatePickerModal.tsx | 2 +- src/index.css | 38 +++++++++++++++++++++++++ src/pages/JoinList.tsx | 26 ++++++++--------- src/pages/ListView.tsx | 4 +-- src/pages/Profile.tsx | 20 ++++++------- 14 files changed, 76 insertions(+), 38 deletions(-) diff --git a/src/components/Attachments.tsx b/src/components/Attachments.tsx index 2e872c3..1f20f24 100644 --- a/src/components/Attachments.tsx +++ b/src/components/Attachments.tsx @@ -288,7 +288,7 @@ export function Attachments({ itemId, userDid, legacyDid, canEdit }: Attachments diff --git a/src/components/ConfirmDialog.tsx b/src/components/ConfirmDialog.tsx index 030dc34..edb857f 100644 --- a/src/components/ConfirmDialog.tsx +++ b/src/components/ConfirmDialog.tsx @@ -47,7 +47,7 @@ export function ConfirmDialog({ const confirmButtonClasses = confirmVariant === "danger" ? "bg-red-600 text-white hover:bg-red-700" - : "bg-blue-600 text-white hover:bg-blue-700"; + : "bg-gradient-to-r from-amber-600 to-orange-500 text-white hover:from-amber-500 hover:to-orange-400 transition-all"; return (
diff --git a/src/components/ErrorBoundary.tsx b/src/components/ErrorBoundary.tsx index ca73fb4..b5d8426 100644 --- a/src/components/ErrorBoundary.tsx +++ b/src/components/ErrorBoundary.tsx @@ -39,7 +39,7 @@ export class ErrorBoundary extends Component {
diff --git a/src/components/ItemDetailsModal.tsx b/src/components/ItemDetailsModal.tsx index 33866d9..573e05d 100644 --- a/src/components/ItemDetailsModal.tsx +++ b/src/components/ItemDetailsModal.tsx @@ -30,7 +30,7 @@ type Priority = "high" | "medium" | "low" | ""; const PRIORITY_COLORS = { high: "bg-red-100 dark:bg-red-900/30 text-red-700 dark:text-red-400 border-red-300 dark:border-red-700", medium: "bg-yellow-100 dark:bg-yellow-900/30 text-yellow-700 dark:text-yellow-400 border-yellow-300 dark:border-yellow-700", - low: "bg-blue-100 dark:bg-blue-900/30 text-blue-700 dark:text-blue-400 border-blue-300 dark:border-blue-700", + low: "bg-amber-100 dark:bg-amber-900/30 text-amber-800 dark:text-amber-400 border-amber-300 dark:border-amber-700", }; export function ItemDetailsModal({ diff --git a/src/components/ListCard.tsx b/src/components/ListCard.tsx index e9d072d..bb61d9f 100644 --- a/src/components/ListCard.tsx +++ b/src/components/ListCard.tsx @@ -69,7 +69,7 @@ export const ListCard = memo(function ListCard({ list, currentUserDid, showOwner
{!isOwner && ( - + diff --git a/src/components/ListItem.tsx b/src/components/ListItem.tsx index e9b8970..aad0567 100644 --- a/src/components/ListItem.tsx +++ b/src/components/ListItem.tsx @@ -204,7 +204,7 @@ export const ListItem = memo(function ListItem({ : "" } ${ isFocused && !isSelected - ? "bg-blue-50 dark:bg-blue-900/20 ring-2 ring-blue-400 dark:ring-blue-600" + ? "bg-amber-50 dark:bg-amber-900/20 ring-2 ring-amber-300 dark:ring-amber-700" : "" } ${ isSelectMode @@ -330,7 +330,7 @@ export const ListItem = memo(function ListItem({ className={`flex-shrink-0 w-2 h-2 rounded-full ${ item.priority === "high" ? "bg-red-500" : item.priority === "medium" ? "bg-yellow-500" : - "bg-blue-500" + "bg-amber-500" }`} role="img" aria-label={`${item.priority} priority`} @@ -347,7 +347,7 @@ export const ListItem = memo(function ListItem({

{/* Indicators for extras */} {item.url && ( - + 🔗 Link attached diff --git a/src/components/ProvenanceInfo.tsx b/src/components/ProvenanceInfo.tsx index 4135e0b..377fa56 100644 --- a/src/components/ProvenanceInfo.tsx +++ b/src/components/ProvenanceInfo.tsx @@ -229,8 +229,8 @@ function AnchorStatusBadge({ status }: { status: "pending" | "inscribed" | "conf label: "Pending", }, inscribed: { - bg: "bg-blue-100 dark:bg-blue-900/30", - text: "text-blue-700 dark:text-blue-400", + bg: "bg-amber-100 dark:bg-amber-900/30", + text: "text-amber-800 dark:text-amber-400", icon: "📝", label: "Inscribed", }, diff --git a/src/components/TemplatePickerModal.tsx b/src/components/TemplatePickerModal.tsx index bd1daf0..262dcdd 100644 --- a/src/components/TemplatePickerModal.tsx +++ b/src/components/TemplatePickerModal.tsx @@ -241,7 +241,7 @@ export function TemplatePickerModal({ onClose, onCreateBlank }: TemplatePickerMo {item.priority} diff --git a/src/index.css b/src/index.css index f453e33..660beab 100644 --- a/src/index.css +++ b/src/index.css @@ -9,6 +9,44 @@ --safe-area-bottom: env(safe-area-inset-bottom, 0px); --safe-area-left: env(safe-area-inset-left, 0px); --safe-area-right: env(safe-area-inset-right, 0px); + + /* Warm Cream/Amber Design System - 💩 Brand Colors */ + /* Backgrounds - Cream tones */ + --cream-50: #fffcf5; + --cream-100: #fef8ed; + --cream-200: #fcefd5; + --cream-300: #fae5bd; + + /* Amber Accents - Primary interactive colors */ + --amber-400: #fbbf24; + --amber-500: #f59e0b; + --amber-600: #d97706; + --amber-700: #b45309; + --amber-800: #92400e; + --amber-900: #78350f; + + /* Warm Neutrals - Replacing grays */ + --warm-50: #fafaf9; + --warm-100: #f5f5f4; + --warm-200: #e7e5e4; + --warm-300: #d6d3d1; + --warm-400: #a8a29e; + --warm-500: #78716c; + --warm-600: #57534e; + --warm-700: #44403c; + --warm-800: #292524; + --warm-900: #1c1917; + + /* Semantic colors using warm palette */ + --bg-primary: var(--cream-50); + --bg-secondary: var(--cream-100); + --bg-tertiary: var(--cream-200); + --text-primary: var(--warm-900); + --text-secondary: var(--warm-700); + --text-tertiary: var(--warm-600); + --border-color: var(--cream-300); + --accent-primary: var(--amber-600); + --accent-hover: var(--amber-500); } /* Apply to the main layout */ diff --git a/src/pages/JoinList.tsx b/src/pages/JoinList.tsx index f8a739c..2263366 100644 --- a/src/pages/JoinList.tsx +++ b/src/pages/JoinList.tsx @@ -43,9 +43,9 @@ export function JoinList() { // Show login if not authenticated (but don't unmount during loading to preserve OTP state) if (!isAuthenticated) { return ( -
+
-
+
Sign in to join this list.
@@ -56,7 +56,7 @@ export function JoinList() { if (isUserLoading || validation === undefined) { return (
-
Validating invite...
+
Validating invite...
); } @@ -64,11 +64,11 @@ export function JoinList() { // Invalid invite if (!validation.valid) { return ( -
+
:(
-

Invalid Invite

-

{validation.error}

- +

Invalid Invite

+

{validation.error}

+ Go to your lists
@@ -100,17 +100,17 @@ export function JoinList() { }; return ( -
+
{/* Debug: Show DID being used */} -
+
Your DID: {did ?? "null"}
+
-

+

You're invited to join "{validation.listName}"

-

+

Accept this invite to start collaborating on the list.

@@ -121,14 +121,14 @@ export function JoinList() {
Cancel diff --git a/src/pages/ListView.tsx b/src/pages/ListView.tsx index 8563239..cfc7082 100644 --- a/src/pages/ListView.tsx +++ b/src/pages/ListView.tsx @@ -857,7 +857,7 @@ export function ListView() { {/* Aisle section header — highlights when dragging over */}
{aisle.emoji} @@ -944,7 +944,7 @@ export function ListView() { setShowAddAisle(false); } }} - className="text-sm font-medium text-blue-600 dark:text-blue-400 px-2 py-1" + className="text-sm font-medium text-amber-700 dark:text-amber-400 px-2 py-1 hover:text-amber-800 dark:hover:text-amber-300" > Add diff --git a/src/pages/Profile.tsx b/src/pages/Profile.tsx index 3050cc7..f48dff8 100644 --- a/src/pages/Profile.tsx +++ b/src/pages/Profile.tsx @@ -141,20 +141,20 @@ export function Profile() {

-
-

+

+

{completedItems}

-

+

Items Done

-
-

+

+

{completionRate}%

-

+

Completion Rate

@@ -224,9 +224,9 @@ export function Profile() { {completionRate < 80 && completionRate >= 50 && (
-
+

💪

-

+

Great progress! Keep up the momentum!

@@ -235,9 +235,9 @@ export function Profile() { {completionRate < 50 && totalItems > 0 && (
-
+

🚀

-

+

You've got this! Every item counts!