From 37d8511da75c3e9fc03fbe792273c22ecdfddff4 Mon Sep 17 00:00:00 2001
From: Felix Schulze
+ Simulation assumes 7% returns. Standard: Save $10k/yr (age 25-65). Coast: Save $30k/yr (age
+ 25-35), then $0.
+ 4% balances safety and spending power
+ A 5% withdrawal rate risks depleting your portfolio within 30 years, while 3% leaves a large
+ surplus. The 4% rule is widely considered the safe "sweet spot."
+
The best way to decide is to see the math. Use our calculator to simulate both scenarios:
diff --git a/src/components/ui/chart.tsx b/src/components/ui/chart.tsx index a593bb3..6a7d345 100644 --- a/src/components/ui/chart.tsx +++ b/src/components/ui/chart.tsx @@ -209,7 +209,7 @@ function ChartTooltipContent({ {itemConfig?.label ?? item.name} {item.value && ( - + {item.value.toLocaleString()} )} diff --git a/src/styles/globals.css b/src/styles/globals.css index faaacdb..83805f2 100644 --- a/src/styles/globals.css +++ b/src/styles/globals.css @@ -1,12 +1,12 @@ -@import "tailwindcss"; -@import "tw-animate-css"; +@import 'tailwindcss'; +@import 'tw-animate-css'; @custom-variant dark (&:is(.dark *)); @theme { --font-sans: - var(--font-geist-sans), ui-sans-serif, system-ui, sans-serif, - "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji"; + var(--font-geist-sans), ui-sans-serif, system-ui, sans-serif, 'Apple Color Emoji', 'Segoe UI Emoji', + 'Segoe UI Symbol', 'Noto Color Emoji'; } @theme inline { @@ -60,9 +60,7 @@ --secondary: oklch(0.49 0.1326 259.29); /* denim */ --secondary-foreground: oklch(0.97 0.0228 95.96); /* cosmic latte */ --muted: oklch(0.67 0.0763 198.81 / 20%); /* verdigris with opacity */ - --muted-foreground: oklch( - 0.39 0.0215 96.47 / 80% - ); /* black olive with opacity */ + --muted-foreground: oklch(0.39 0.0215 96.47 / 80%); /* black olive with opacity */ --accent: oklch(0.49 0.1326 259.29); /* denim */ --accent-foreground: oklch(0.97 0.0228 95.96); /* cosmic latte */ --destructive: oklch(0.33 0.1316 336.24); /* palatinate */ @@ -80,9 +78,7 @@ --sidebar-primary-foreground: oklch(0.97 0.0228 95.96); /* cosmic latte */ --sidebar-accent: oklch(0.49 0.1326 259.29); /* denim */ --sidebar-accent-foreground: oklch(0.97 0.0228 95.96); /* cosmic latte */ - --sidebar-border: oklch( - 0.67 0.0763 198.81 / 20% - ); /* verdigris with opacity */ + --sidebar-border: oklch(0.67 0.0763 198.81 / 20%); /* verdigris with opacity */ --sidebar-ring: oklch(0.67 0.0763 198.81); /* verdigris */ } @@ -116,9 +112,7 @@ --sidebar-primary-foreground: oklch(0.97 0.0228 95.96); /* cosmic latte */ --sidebar-accent: oklch(0.49 0.1326 259.29); /* denim */ --sidebar-accent-foreground: oklch(0.97 0.0228 95.96); /* cosmic latte */ - --sidebar-border: oklch( - 0.97 0.0228 95.96 / 10% - ); /* cosmic latte with opacity */ + --sidebar-border: oklch(0.97 0.0228 95.96 / 10%); /* cosmic latte with opacity */ --sidebar-ring: oklch(0.67 0.0763 198.81); /* verdigris */ } @@ -142,7 +136,7 @@ @apply scroll-m-20 text-xl font-semibold tracking-tight; } p { - @apply leading-7 [&:not(:first-child)]:mt-6; + @apply mb-2 leading-7 [&:not(:first-child)]:mt-6; } blockquote { @apply mt-6 border-l-2 pl-6 italic; @@ -151,6 +145,6 @@ @apply my-6 ml-6 list-disc [&>li]:mt-2; } code { - @apply bg-muted relative rounded px-[0.3rem] py-[0.2rem] font-mono text-sm font-semibold + @apply bg-muted relative rounded px-[0.3rem] py-[0.2rem] font-mono text-sm font-semibold; } }