99}
1010
1111@theme {
12- --color-fd-primary : # 802fff ; /* Purple from control-bar component */
12+ --color-fd-primary : # 33c482 ; /* Green from Sim logo */
1313 --font-geist-sans : var (--font-geist-sans );
1414 --font-geist-mono : var (--font-geist-mono );
1515}
1616
17+ /* Ensure primary color is set in both light and dark modes */
18+ : root {
19+ --color-fd-primary : # 33c482 ;
20+ }
21+
22+ .dark {
23+ --color-fd-primary : # 33c482 ;
24+ }
25+
1726/* Font family utilities */
1827.font-sans {
1928 font-family : var (--font-geist-sans ), ui-sans-serif, system-ui, -apple-system, BlinkMacSystemFont,
3443: root {
3544 --fd-border : transparent !important ;
3645 --fd-border-sidebar : transparent !important ;
37- --fd-nav-height : 64 px ; /* Custom navbar height (h-16 = 4rem = 64px ) */
46+ --fd-nav-height : 65 px ; /* Custom navbar height (h-16 = 64px + 1px border ) */
3847 /* Content container width used to center main content */
3948 --spacing-fd-container : 1400px ;
4049 /* Edge gutter = leftover space on each side of centered container */
@@ -136,11 +145,11 @@ aside#nd-sidebar {
136145/* On mobile, let fumadocs handle the layout natively */
137146@media (min-width : 1024px ) {
138147 : root {
139- --fd-banner-height : 64 px !important ;
148+ --fd-banner-height : 65 px !important ; /* 64px navbar + 1px border */
140149 }
141150
142151 # nd-docs-layout {
143- --fd-docs-height : calc (100dvh - 64 px ) !important ;
152+ --fd-docs-height : calc (100dvh - 65 px ) !important ; /* 64px navbar + 1px border */
144153 --fd-sidebar-width : 300px !important ;
145154 margin-left : var (--sidebar-offset ) !important ;
146155 margin-right : var (--toc-offset ) !important ;
@@ -227,19 +236,19 @@ html:not(.dark) #nd-sidebar button:not([aria-label*="ollapse"]):not([aria-label*
227236 letter-spacing : 0.05em !important ;
228237}
229238
230- /* Override active state (NO PURPLE) */
239+ /* Override active state */
231240# nd-sidebar a [data-active = "true" ],
232241# nd-sidebar button [data-active = "true" ],
233242# nd-sidebar a .bg-fd-primary\/ 10,
234243# nd-sidebar a .text-fd-primary ,
235244# nd-sidebar a [class *= "bg-fd-primary" ],
236245# nd-sidebar a [class *= "text-fd-primary" ],
237- /* Override custom sidebar purple classes */
246+ /* Override custom sidebar green classes */
238247 # nd-sidebar
239- a .bg-purple -50\/ 80,
240- # nd-sidebar a .text-purple -600 ,
241- # nd-sidebar a [class *= "bg-purple " ],
242- # nd-sidebar a [class *= "text-purple " ] {
248+ a .bg-emerald -50\/ 80,
249+ # nd-sidebar a .text-emerald -600 ,
250+ # nd-sidebar a [class *= "bg-emerald " ],
251+ # nd-sidebar a [class *= "text-emerald " ] {
243252 background-image : none !important ;
244253}
245254
@@ -250,10 +259,10 @@ html.dark #nd-sidebar a.bg-fd-primary\/10,
250259html .dark # nd-sidebar a .text-fd-primary ,
251260html .dark # nd-sidebar a [class *= "bg-fd-primary" ],
252261html .dark # nd-sidebar a [class *= "text-fd-primary" ],
253- html .dark # nd-sidebar a .bg-purple -50\/ 80,
254- html .dark # nd-sidebar a .text-purple -600 ,
255- html .dark # nd-sidebar a [class *= "bg-purple " ],
256- html .dark # nd-sidebar a [class *= "text-purple " ] {
262+ html .dark # nd-sidebar a .bg-emerald -50\/ 80,
263+ html .dark # nd-sidebar a .text-emerald -600 ,
264+ html .dark # nd-sidebar a [class *= "bg-emerald " ],
265+ html .dark # nd-sidebar a [class *= "text-emerald " ] {
257266 background-color : rgba (255 , 255 , 255 , 0.15 ) !important ;
258267 color : rgba (255 , 255 , 255 , 1 ) !important ;
259268}
@@ -265,10 +274,10 @@ html:not(.dark) #nd-sidebar a.bg-fd-primary\/10,
265274html : not (.dark ) # nd-sidebar a .text-fd-primary ,
266275html : not (.dark ) # nd-sidebar a [class *= "bg-fd-primary" ],
267276html : not (.dark ) # nd-sidebar a [class *= "text-fd-primary" ],
268- html : not (.dark ) # nd-sidebar a .bg-purple -50\/ 80,
269- html : not (.dark ) # nd-sidebar a .text-purple -600 ,
270- html : not (.dark ) # nd-sidebar a [class *= "bg-purple " ],
271- html : not (.dark ) # nd-sidebar a [class *= "text-purple " ] {
277+ html : not (.dark ) # nd-sidebar a .bg-emerald -50\/ 80,
278+ html : not (.dark ) # nd-sidebar a .text-emerald -600 ,
279+ html : not (.dark ) # nd-sidebar a [class *= "bg-emerald " ],
280+ html : not (.dark ) # nd-sidebar a [class *= "text-emerald " ] {
272281 background-color : rgba (0 , 0 , 0 , 0.07 ) !important ;
273282 color : rgba (0 , 0 , 0 , 0.9 ) !important ;
274283}
@@ -286,17 +295,17 @@ html:not(.dark) #nd-sidebar button:hover:not([data-active="true"]) {
286295}
287296
288297/* Dark mode - ensure active/selected items don't change on hover */
289- html .dark # nd-sidebar a .bg-purple -50\/ 80: hover,
290- html .dark # nd-sidebar a [class *= "bg-purple " ]: hover ,
298+ html .dark # nd-sidebar a .bg-emerald -50\/ 80: hover,
299+ html .dark # nd-sidebar a [class *= "bg-emerald " ]: hover ,
291300html .dark # nd-sidebar a [data-active = "true" ]: hover ,
292301html .dark # nd-sidebar button [data-active = "true" ]: hover {
293302 background-color : rgba (255 , 255 , 255 , 0.15 ) !important ;
294303 color : rgba (255 , 255 , 255 , 1 ) !important ;
295304}
296305
297306/* Light mode - ensure active/selected items don't change on hover */
298- html : not (.dark ) # nd-sidebar a .bg-purple -50\/ 80: hover,
299- html : not (.dark ) # nd-sidebar a [class *= "bg-purple " ]: hover ,
307+ html : not (.dark ) # nd-sidebar a .bg-emerald -50\/ 80: hover,
308+ html : not (.dark ) # nd-sidebar a [class *= "bg-emerald " ]: hover ,
300309html : not (.dark ) # nd-sidebar a [data-active = "true" ]: hover ,
301310html : not (.dark ) # nd-sidebar button [data-active = "true" ]: hover {
302311 background-color : rgba (0 , 0 , 0 , 0.07 ) !important ;
@@ -368,16 +377,22 @@ aside[data-sidebar] > *:not([data-sidebar-viewport]) {
368377 button [aria-label = "Toggle Sidebar" ],
369378 button [aria-label = "Collapse Sidebar" ],
370379 /* Hide nav title/logo in sidebar on desktop - target all possible locations */
380+ # nd-sidebar
381+ a [href = "/" ],
382+ # nd-sidebar a [href = "/" ] img ,
383+ # nd-sidebar a [href = "/" ] svg ,
384+ # nd-sidebar > a : first-child ,
385+ # nd-sidebar > div : first-child > a : first-child ,
386+ # nd-sidebar img [alt = "Sim" ],
387+ # nd-sidebar svg [aria-label = "Sim" ],
371388 aside [data-sidebar ] a [href = "/" ],
372389 aside [data-sidebar ] a [href = "/" ] img ,
373390 aside [data-sidebar ] > a : first-child ,
374391 aside [data-sidebar ] > div > a : first-child ,
375392 aside [data-sidebar ] img [alt = "Sim" ],
393+ aside [data-sidebar ] svg [aria-label = "Sim" ],
376394 [data-sidebar-header ],
377395 [data-sidebar ] [data-title ],
378- # nd-sidebar > a : first-child ,
379- # nd-sidebar > div : first-child > a : first-child ,
380- # nd-sidebar img [alt = "Sim" ],
381396 /* Hide theme toggle at bottom of sidebar on desktop */
382397 # nd-sidebar
383398 > footer ,
@@ -515,6 +530,15 @@ pre code .line {
515530 color : var (--color-fd-primary );
516531}
517532
533+ /* ============================================
534+ TOC (Table of Contents) Styling
535+ ============================================ */
536+
537+ /* Remove the thin border-left on nested TOC items (keeps main indicator only) */
538+ # nd-toc a [style *= "padding-inline-start" ] {
539+ border-left : none !important ;
540+ }
541+
518542/* Add bottom spacing to prevent abrupt page endings */
519543[data-content ] {
520544 padding-top : 1.5rem !important ;
0 commit comments