AV: precise recolor to spec — warm dark backgrounds (#1c1815/#231d18/#26201a/#15110e) + gold #F0A623 / orange #D85A30 accents + warm text (#FBEFE0/#C9BBA8/#8a7e6e). 138 component files + 36 token swaps.
This commit is contained in:
@@ -166,7 +166,7 @@ function StatCard({ label, value, icon, color, active, onClick }: StatCardProps)
|
||||
className={`w-full text-left p-4 rounded-lg border transition-all ${
|
||||
active
|
||||
? `${color} border-current/30`
|
||||
: 'bg-[#111] border-[#252525] hover:border-[#333]'
|
||||
: 'bg-[#111] border-[#3a322b] hover:border-[#333]'
|
||||
}`}
|
||||
>
|
||||
<div className="flex items-center justify-between mb-2">
|
||||
@@ -191,7 +191,7 @@ function NotificationRow({ notification: n, onMarkRead, onDismiss }: Notificatio
|
||||
return (
|
||||
<div
|
||||
className={`relative p-4 rounded-lg border transition-all ${
|
||||
n.read ? 'bg-[#0d0d0d] border-[#1e1e1e]' : `${cfg.bg} ${cfg.border}`
|
||||
n.read ? 'bg-[#1c1815] border-[#1e1e1e]' : `${cfg.bg} ${cfg.border}`
|
||||
}`}
|
||||
>
|
||||
{/* Unread dot */}
|
||||
@@ -202,7 +202,7 @@ function NotificationRow({ notification: n, onMarkRead, onDismiss }: Notificatio
|
||||
<div className="flex items-start gap-3">
|
||||
{/* Icon */}
|
||||
<div className={`flex-shrink-0 w-8 h-8 rounded-full flex items-center justify-center ${
|
||||
n.read ? 'bg-[#1a1a1a]' : cfg.badge
|
||||
n.read ? 'bg-[#231d18]' : cfg.badge
|
||||
}`}>
|
||||
<TypeIcon type={n.type} />
|
||||
</div>
|
||||
@@ -244,7 +244,7 @@ function NotificationRow({ notification: n, onMarkRead, onDismiss }: Notificatio
|
||||
{n.actionUrl && (
|
||||
<Link
|
||||
href={n.actionUrl}
|
||||
className="text-xs font-body font-bold text-[#ffb800] hover:text-blue-300 transition-colors"
|
||||
className="text-xs font-body font-bold text-[#F0A623] hover:text-blue-300 transition-colors"
|
||||
>
|
||||
{n.actionLabel || 'View →'}
|
||||
</Link>
|
||||
@@ -474,7 +474,7 @@ export default function NotificationsPage() {
|
||||
return (
|
||||
<div className="min-h-screen bg-[#0a0a0a] flex items-center justify-center">
|
||||
<div className="text-center">
|
||||
<div className="w-8 h-8 border-2 border-[#ffb800] border-t-transparent rounded-full animate-spin mx-auto mb-3" />
|
||||
<div className="w-8 h-8 border-2 border-[#F0A623] border-t-transparent rounded-full animate-spin mx-auto mb-3" />
|
||||
<p className="text-[#555] text-sm font-body">Loading notifications…</p>
|
||||
</div>
|
||||
</div>
|
||||
@@ -512,7 +512,7 @@ export default function NotificationsPage() {
|
||||
{stats.unread > 0 && (
|
||||
<button
|
||||
onClick={handleMarkAllRead}
|
||||
className="px-3 py-1.5 text-xs font-body font-bold text-[#ffb800] border border-[#ffb800]/30 rounded hover:bg-[#ffb800]/10 transition-colors"
|
||||
className="px-3 py-1.5 text-xs font-body font-bold text-[#F0A623] border border-[#F0A623]/30 rounded hover:bg-[#F0A623]/10 transition-colors"
|
||||
>
|
||||
Mark all read
|
||||
</button>
|
||||
@@ -520,7 +520,7 @@ export default function NotificationsPage() {
|
||||
<button
|
||||
onClick={handleRefresh}
|
||||
disabled={refreshing}
|
||||
className="flex items-center gap-1.5 px-3 py-1.5 text-xs font-body text-[#888] border border-[#252525] rounded hover:border-[#333] hover:text-white transition-colors disabled:opacity-50"
|
||||
className="flex items-center gap-1.5 px-3 py-1.5 text-xs font-body text-[#888] border border-[#3a322b] rounded hover:border-[#333] hover:text-white transition-colors disabled:opacity-50"
|
||||
>
|
||||
<RefreshIcon className={`w-3.5 h-3.5 ${refreshing ? 'animate-spin' : ''}`} />
|
||||
Refresh
|
||||
@@ -558,7 +558,7 @@ export default function NotificationsPage() {
|
||||
label="Unread"
|
||||
value={stats.unread}
|
||||
icon={<BellIcon className="w-4 h-4" />}
|
||||
color="text-[#ffb800] bg-[#ffb800]/5 border-[#ffb800]/30"
|
||||
color="text-[#F0A623] bg-[#F0A623]/5 border-[#F0A623]/30"
|
||||
active={filter === 'unread'}
|
||||
onClick={() => setFilter(filter === 'unread' ? 'all' : 'unread')}
|
||||
/>
|
||||
@@ -580,7 +580,7 @@ export default function NotificationsPage() {
|
||||
onClick={() => setFilter(f)}
|
||||
className={`px-3 py-1.5 text-xs font-body font-bold rounded transition-colors ${
|
||||
filter === f
|
||||
? 'bg-[#ffb800] text-white'
|
||||
? 'bg-[#F0A623] text-white'
|
||||
: 'text-[#555] hover:text-[#888] hover:bg-[#111]'
|
||||
}`}
|
||||
>
|
||||
|
||||
Reference in New Issue
Block a user