|
6 | 6 | :root { |
7 | 7 | --ui-radius: 0.125rem; |
8 | 8 | --ui-bg: var(--color-white); |
9 | | - --fd-sidebar-width: 268px; |
10 | | - --fd-toc-width: 268px; |
11 | | - --fd-content-width: 860px; |
| 9 | + --header-height: 3.5rem; |
| 10 | + /* Mirror better-auth/docs/app/globals.css */ |
| 11 | + --fd-sidebar-width: 280px; |
| 12 | + --fd-toc-width: 0px; |
| 13 | + --fd-page-width: 900px; |
| 14 | + --fd-layout-width: 100%; |
12 | 15 | } |
13 | 16 |
|
| 17 | +@media (min-width: 1024px) { |
| 18 | + :root { |
| 19 | + --fd-sidebar-width: 300px; |
| 20 | + /* same as better-auth: min(100vw - sidebar, 1200px) */ |
| 21 | + --fd-layout-width: min(calc(100vw - var(--fd-sidebar-width)), 1200px); |
| 22 | + } |
| 23 | +} |
| 24 | + |
| 25 | +/* 80rem — better-auth enables side TOC here */ |
14 | 26 | @media (min-width: 1280px) { |
15 | 27 | :root { |
16 | | - --fd-sidebar-width: 286px; |
17 | | - --fd-toc-width: 286px; |
| 28 | + --fd-toc-width: 280px; |
18 | 29 | } |
19 | 30 | } |
20 | 31 |
|
@@ -132,3 +143,123 @@ pre, code { |
132 | 143 | .hero-code > div > div { |
133 | 144 | margin: 0 !important; |
134 | 145 | } |
| 146 | + |
| 147 | +/* Native scrollbar: kill light Windows track "glow" on dark bg */ |
| 148 | +html { |
| 149 | + scrollbar-width: thin; |
| 150 | + scrollbar-color: color-mix(in srgb, var(--ui-border) 90%, transparent) transparent; |
| 151 | +} |
| 152 | + |
| 153 | +html::-webkit-scrollbar, |
| 154 | +body::-webkit-scrollbar, |
| 155 | +.docs-main::-webkit-scrollbar, |
| 156 | +.docs-main *::-webkit-scrollbar { |
| 157 | + width: 10px; |
| 158 | + height: 10px; |
| 159 | +} |
| 160 | + |
| 161 | +html::-webkit-scrollbar-track, |
| 162 | +body::-webkit-scrollbar-track, |
| 163 | +.docs-main::-webkit-scrollbar-track, |
| 164 | +.docs-main *::-webkit-scrollbar-track, |
| 165 | +html::-webkit-scrollbar-corner, |
| 166 | +body::-webkit-scrollbar-corner { |
| 167 | + background: transparent; |
| 168 | +} |
| 169 | + |
| 170 | +html::-webkit-scrollbar-thumb, |
| 171 | +body::-webkit-scrollbar-thumb, |
| 172 | +.docs-main::-webkit-scrollbar-thumb, |
| 173 | +.docs-main *::-webkit-scrollbar-thumb { |
| 174 | + background-color: color-mix(in srgb, var(--ui-border) 90%, transparent); |
| 175 | + border-radius: 9999px; |
| 176 | + border: 2px solid transparent; |
| 177 | + background-clip: padding-box; |
| 178 | +} |
| 179 | + |
| 180 | +html::-webkit-scrollbar-thumb:hover, |
| 181 | +body::-webkit-scrollbar-thumb:hover, |
| 182 | +.docs-main::-webkit-scrollbar-thumb:hover, |
| 183 | +.docs-main *::-webkit-scrollbar-thumb:hover { |
| 184 | + background-color: color-mix(in srgb, var(--ui-text-muted) 70%, transparent); |
| 185 | +} |
| 186 | + |
| 187 | + |
| 188 | +/* Docs page — 1:1 with better-auth fumadocs DocsPage (#nd-page / #nd-article / #nd-toc) */ |
| 189 | +.docs-page, |
| 190 | +#nd-page { |
| 191 | + display: grid; |
| 192 | + grid-template-columns: minmax(0, 1fr) var(--fd-toc-width, 0px); |
| 193 | + column-gap: 0; |
| 194 | + width: 100%; |
| 195 | + max-width: var(--fd-layout-width, 1200px); |
| 196 | + margin-inline: auto; |
| 197 | + min-width: 0; |
| 198 | + padding-inline: 1rem; |
| 199 | + box-sizing: border-box; |
| 200 | +} |
| 201 | + |
| 202 | +@media (min-width: 640px) { |
| 203 | + .docs-page, |
| 204 | + #nd-page { |
| 205 | + padding-inline: 1.5rem; |
| 206 | + } |
| 207 | +} |
| 208 | + |
| 209 | +@media (min-width: 1024px) { |
| 210 | + .docs-page, |
| 211 | + #nd-page { |
| 212 | + padding-inline: 2rem; |
| 213 | + } |
| 214 | +} |
| 215 | + |
| 216 | +@media (min-width: 1280px) { |
| 217 | + .docs-page, |
| 218 | + #nd-page { |
| 219 | + column-gap: 2rem; |
| 220 | + } |
| 221 | +} |
| 222 | + |
| 223 | +.docs-article, |
| 224 | +#nd-article { |
| 225 | + min-width: 0; |
| 226 | + width: 100%; |
| 227 | + max-width: var(--fd-page-width, 900px); |
| 228 | +} |
| 229 | + |
| 230 | +.docs-toc, |
| 231 | +#nd-toc { |
| 232 | + display: none; |
| 233 | + min-width: 0; |
| 234 | + width: var(--fd-toc-width, 0px); |
| 235 | + overflow-x: hidden; |
| 236 | + overflow-y: auto; |
| 237 | + overscroll-behavior-y: contain; |
| 238 | + scrollbar-width: none; |
| 239 | +} |
| 240 | + |
| 241 | +.docs-toc::-webkit-scrollbar, |
| 242 | +#nd-toc::-webkit-scrollbar { |
| 243 | + display: none; |
| 244 | +} |
| 245 | + |
| 246 | +/* 80rem — show side TOC; align top with article title (no extra top padding) */ |
| 247 | +@media (min-width: 1280px) { |
| 248 | + .docs-toc, |
| 249 | + #nd-toc { |
| 250 | + display: block; |
| 251 | + position: sticky; |
| 252 | + top: calc(var(--header-height, 3.5rem) + 1rem); |
| 253 | + align-self: start; |
| 254 | + max-height: calc(100dvh - var(--header-height, 3.5rem) - 2rem); |
| 255 | + padding-top: 0; |
| 256 | + padding-bottom: 4rem; |
| 257 | + padding-inline-start: 2rem; |
| 258 | + } |
| 259 | +} |
| 260 | + |
| 261 | +/* Docs content: keep wide code blocks inside the page */ |
| 262 | +.docs-main :where(pre, table) { |
| 263 | + max-width: 100%; |
| 264 | + overflow-x: auto; |
| 265 | +} |
0 commit comments