From f4f1ca3ba4b7c482d8fbc22e0ceddfffd45e4f37 Mon Sep 17 00:00:00 2001 From: Theo Browne Date: Sun, 25 Oct 2026 00:30:44 -0700 Subject: [PATCH 1/2] feat(web): UI polish overhaul Bundle Inter Variable for platforms without SF Pro, tighten the radius scale, raise muted text contrast, and calm loud chrome in the sidebar and composer. Co-Authored-By: Claude Opus 5.5 --- apps/web/index.html | 3 +- apps/web/package.json | 1 + apps/web/src/appearanceFonts.ts | 2 +- apps/web/src/components/chat/ChatComposer.tsx | 2 +- .../chat/ComposerPrimaryActions.tsx | 8 ++-- .../src/components/chat/ComposerSurface.tsx | 8 ++-- .../src/components/chat/MessagesTimeline.tsx | 4 +- .../src/components/chat/ProposedPlanCard.tsx | 2 +- .../components/chat/ProviderSubagentBar.tsx | 2 +- .../src/components/chat/ThreadDetailsCard.tsx | 2 +- .../settings/SettingsScopeSentence.tsx | 2 +- .../components/settings/settingsLayout.tsx | 6 +-- .../components/sidebar/SidebarListMarkers.tsx | 5 +-- .../components/sidebar/SidebarThreadRow.tsx | 17 +++---- .../ui/collapsible-section-header.tsx | 3 +- apps/web/src/components/ui/select.tsx | 4 +- apps/web/src/index.css | 45 ++++++++++++------- apps/web/src/main.tsx | 1 + pnpm-lock.yaml | 8 ++++ 19 files changed, 67 insertions(+), 58 deletions(-) diff --git a/apps/web/index.html b/apps/web/index.html index c6941cd039788..6c01298b624d9 100644 --- a/apps/web/index.html +++ b/apps/web/index.html @@ -398,7 +398,8 @@ body { background: #ffffff; color: #262626; - font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", system-ui, sans-serif; + font-family: + -apple-system, BlinkMacSystemFont, "Inter Variable", "Segoe UI", system-ui, sans-serif; } html.dark body { diff --git a/apps/web/package.json b/apps/web/package.json index 2ad03efe77e15..74516847d57af 100644 --- a/apps/web/package.json +++ b/apps/web/package.json @@ -22,6 +22,7 @@ "@dnd-kit/sortable": "^10.0.0", "@dnd-kit/utilities": "^3.2.2", "@effect/atom-react": "catalog:", + "@fontsource-variable/inter": "^5.3.0", "@formkit/auto-animate": "^0.9.0", "@legendapp/list": "catalog:", "@noble/hashes": "catalog:", diff --git a/apps/web/src/appearanceFonts.ts b/apps/web/src/appearanceFonts.ts index 6d94ed565c707..48f8e5955e7e1 100644 --- a/apps/web/src/appearanceFonts.ts +++ b/apps/web/src/appearanceFonts.ts @@ -11,7 +11,7 @@ import { } from "@t3tools/contracts"; export const DEFAULT_SANS_FONT_STACK = - '-apple-system, BlinkMacSystemFont, "Segoe UI", system-ui, sans-serif'; + '-apple-system, BlinkMacSystemFont, "Inter Variable", "Segoe UI", system-ui, sans-serif'; // Some engines map `ui-monospace` to a proportional font, so prefer concrete names. export const DEFAULT_CODE_FONT_STACK = diff --git a/apps/web/src/components/chat/ChatComposer.tsx b/apps/web/src/components/chat/ChatComposer.tsx index aeb55cdfa6721..131c08aa8b8db 100644 --- a/apps/web/src/components/chat/ChatComposer.tsx +++ b/apps/web/src/components/chat/ChatComposer.tsx @@ -3596,7 +3596,7 @@ export const ChatComposer = memo(function ChatComposer(props: ChatComposerProps) data-chat-composer-surface="true" data-chat-composer-mobile-collapsed={isComposerCollapsedMobile ? "true" : "false"} className={cn( - "rounded-3xl transition-[background-color] duration-200", + "rounded-2xl transition-[background-color] duration-200", "in-data-[thread-context-over]:bg-accent/45 in-data-[thread-context-over]:ring-1 in-data-[thread-context-over]:ring-inset in-data-[thread-context-over]:ring-primary/70", isDragOverComposer ? "bg-accent/45 ring-1 ring-inset ring-primary/70" : null, projectSelectionRequired ? "opacity-75" : null, diff --git a/apps/web/src/components/chat/ComposerPrimaryActions.tsx b/apps/web/src/components/chat/ComposerPrimaryActions.tsx index 03d74039945ea..601930c64dcf4 100644 --- a/apps/web/src/components/chat/ComposerPrimaryActions.tsx +++ b/apps/web/src/components/chat/ComposerPrimaryActions.tsx @@ -310,10 +310,10 @@ export const ComposerPrimaryActions = memo(function ComposerPrimaryActions({