style(ui): padronizar tipografia — font-medium para font-semibold

Padronização de peso tipográfico em títulos, rótulos de seção,
nomes de entidades e valores monetários em toda a interface.

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
This commit is contained in:
Felipe Coutinho
2026-04-11 17:51:34 +00:00
parent 3bd8117b65
commit e8cc673e52
111 changed files with 361 additions and 272 deletions

View File

@@ -98,7 +98,7 @@ function AlertDialogTitle({
return (
<AlertDialogPrimitive.Title
data-slot="alert-dialog-title"
className={cn("text-lg font-medium", className)}
className={cn("text-lg font-semibold", className)}
{...props}
/>
);

View File

@@ -266,7 +266,7 @@ function ChartTooltipContent({
</span>
</div>
{item.value !== undefined && item.value !== null && (
<span className="text-foreground font-mono font-medium tabular-nums">
<span className="text-foreground font-mono font-medium">
{item.value.toLocaleString()}
</span>
)}

View File

@@ -1,7 +1,7 @@
"use client";
import * as CheckboxPrimitive from "@radix-ui/react-checkbox";
import { RiCheckLine } from "@remixicon/react";
import { RiCheckLine, RiSubtractLine } from "@remixicon/react";
import type * as React from "react";
import { cn } from "@/shared/utils/ui";
@@ -13,7 +13,7 @@ function Checkbox({
<CheckboxPrimitive.Root
data-slot="checkbox"
className={cn(
"peer border-input dark:bg-input/30 data-[state=checked]:bg-primary data-[state=checked]:text-primary-foreground dark:data-[state=checked]:bg-primary data-[state=checked]:border-primary focus-visible:border-ring focus-visible:ring-ring/50 aria-invalid:ring-destructive/20 dark:aria-invalid:ring-destructive/40 aria-invalid:border-destructive size-4 shrink-0 rounded-lg border shadow-xs transition-shadow outline-none focus-visible:ring-[3px] disabled:cursor-not-allowed disabled:opacity-50",
"peer border-input dark:bg-input/30 data-[state=checked]:bg-primary data-[state=checked]:text-primary-foreground dark:data-[state=checked]:bg-primary data-[state=checked]:border-primary data-[state=indeterminate]:bg-primary data-[state=indeterminate]:text-primary-foreground data-[state=indeterminate]:border-primary focus-visible:border-ring focus-visible:ring-ring/50 aria-invalid:ring-destructive/20 dark:aria-invalid:ring-destructive/40 aria-invalid:border-destructive size-4 shrink-0 rounded-lg border shadow-xs transition-shadow outline-none focus-visible:ring-[3px] disabled:cursor-not-allowed disabled:opacity-50",
className,
)}
{...props}
@@ -22,7 +22,8 @@ function Checkbox({
data-slot="checkbox-indicator"
className="grid place-content-center text-current transition-none"
>
<RiCheckLine className="size-3.5" />
<RiCheckLine className="size-3.5 [[data-state=indeterminate]_&]:hidden" />
<RiSubtractLine className="size-3.5 hidden [[data-state=indeterminate]_&]:block" />
</CheckboxPrimitive.Indicator>
</CheckboxPrimitive.Root>
);

View File

@@ -95,10 +95,7 @@ export const CurrencyInput = React.forwardRef<
value={displayValue}
onChange={handleChange}
onBlur={onBlur}
className={cn(
"text-left font-medium tabular-nums tracking-tight",
className,
)}
className={cn("text-left tracking-tight", className)}
/>
);
});

View File

@@ -106,7 +106,7 @@ function DialogTitle({
return (
<DialogPrimitive.Title
data-slot="dialog-title"
className={cn("text-lg leading-none font-medium", className)}
className={cn("text-lg leading-none font-semibold", className)}
{...props}
/>
);

View File

@@ -62,7 +62,7 @@ function EmptyTitle({ className, ...props }: React.ComponentProps<"div">) {
return (
<div
data-slot="empty-title"
className={cn("text-lg font-medium tracking-tight", className)}
className={cn("text-lg font-semibold tracking-tight", className)}
{...props}
/>
);

View File

@@ -586,7 +586,7 @@ function SidebarMenuBadge({
data-slot="sidebar-menu-badge"
data-sidebar="menu-badge"
className={cn(
"text-sidebar-foreground pointer-events-none absolute right-1 flex h-5 min-w-5 items-center justify-center rounded-md px-1 text-xs font-medium tabular-nums select-none",
"text-sidebar-foreground pointer-events-none absolute right-1 flex h-5 min-w-5 items-center justify-center rounded-md px-1 text-xs font-medium select-none",
"peer-hover/menu-button:text-sidebar-accent-foreground peer-data-[active=true]/menu-button:text-sidebar-accent-foreground",
"peer-data-[size=sm]/menu-button:top-1",
"peer-data-[size=default]/menu-button:top-1.5",