@tailwind base; @tailwind components; @tailwind utilities; @layer base { :root { --font-geist-sans: 'Geist Sans', -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, Helvetica, Arial, sans-serif, 'Apple Color Emoji', 'Segoe UI Emoji', 'Segoe UI Symbol'; --background: 0 0% 100%; --foreground: 240 10% 3.9%; --muted: 240 4.8% 95.9%; --muted-foreground: 240 3.8% 46.1%; --popover: 0 0% 100%; --popover-foreground: 240 10% 3.9%; --card: 0 0% 100%; --card-foreground: 240 10% 3.9%; --border: 240 5.9% 90%; --input: 240 5.9% 90%; --primary: 240 5.9% 10%; --primary-foreground: 0 0% 98%; --secondary: 240 4.8% 95.9%; --secondary-foreground: 240 5.9% 10%; --accent: 240 4.8% 95.9%; --accent-foreground: 240 5.9% 10%; --destructive: 0 72.22% 50.59%; --destructive-foreground: 0 0% 98%; --ring: 240 5% 64.9%; --radius: 0.5rem; } .dark { --background: 240 10% 3.9%; --foreground: 0 0% 98%; --muted: 240 3.7% 15.9%; --muted-foreground: 240 5% 64.9%; --popover: 240 10% 3.9%; --popover-foreground: 0 0% 98%; --card: 240 10% 3.9%; --card-foreground: 0 0% 98%; --border: 240 3.7% 15.9%; --input: 240 3.7% 15.9%; --primary: 0 0% 98%; --primary-foreground: 240 5.9% 10%; --secondary: 240 3.7% 15.9%; --secondary-foreground: 0 0% 98%; --accent: 240 3.7% 15.9%; --accent-foreground: 0 0% 98%; --destructive: 0 62.8% 30.6%; --destructive-foreground: 0 85.7% 97.3%; --ring: 240 3.7% 15.9%; } } @layer base { * { @apply border-border; } html { -webkit-text-size-adjust: 100%; font-variation-settings: normal; } body { @apply bg-background text-foreground; font-feature-settings: 'rlig' 1, 'calt' 1; } /* Mobile tap highlight */ /* https://developer.mozilla.org/en-US/docs/Web/CSS/-webkit-tap-highlight-color */ html { -webkit-tap-highlight-color: rgba(128, 128, 128, 0.5); } /* Font face Geist font */ @font-face { font-family: 'Geist Sans'; font-style: normal; font-weight: 400; font-display: swap; src: url('/fonts/Geist/Geist-Regular.woff2') format('woff2'); } @font-face { font-family: 'Geist Sans'; font-style: normal; font-weight: 500; font-display: swap; src: url('/fonts/Geist/Geist-Medium.woff2') format('woff2'); } @font-face { font-family: 'Geist Sans'; font-style: normal; font-weight: 600; font-display: swap; src: url('/fonts/Geist/Geist-SemiBold.woff2') format('woff2'); } @font-face { font-family: 'Geist Sans'; font-style: normal; font-weight: 700; font-display: swap; src: url('/fonts/Geist/Geist-Bold.woff2') format('woff2'); } /* === Scrollbars === */ ::-webkit-scrollbar { @apply w-2; @apply h-2; } ::-webkit-scrollbar-track { @apply !bg-muted; } ::-webkit-scrollbar-thumb { @apply rounded-sm !bg-muted-foreground/30; } /* Firefox */ /* https://developer.mozilla.org/en-US/docs/Web/CSS/scrollbar-color#browser_compatibility */ html { scrollbar-color: hsl(215.4 16.3% 46.9% / 0.3); } html.dark { scrollbar-color: hsl(215.4 16.3% 56.9% / 0.3); } .hide-scrollbar::-webkit-scrollbar { display: none; } .hide-scrollbar { -ms-overflow-style: none; scrollbar-width: none; } .antialised { -webkit-font-smoothing: antialiased; -moz-osx-font-smoothing: grayscale; } } @layer utilities { .step { counter-increment: step; } .step:before { @apply absolute inline-flex h-9 w-9 items-center justify-center rounded-full border-4 border-background bg-muted text-center -indent-px font-mono text-base font-medium; @apply ml-[-50px] mt-[-4px]; content: counter(step); } } @media (max-width: 640px) { .container { @apply px-4; } } .mdsvex code { @apply relative rounded bg-muted px-[0.3rem] py-[0.2rem] font-mono text-sm; } [data-theme='default'] { display: flex; } [data-style='new-york'] [data-style='default'] { display: none; } [data-style='default'] [data-style='default'] { display: flex; flex-direction: column; } [data-style='new-york'] [data-style='new-york'] { display: flex; flex-direction: column; } [data-style='default'] [data-style='new-york'] { display: none; } [data-rehype-pretty-code-fragment] { @apply relative; } [data-rehype-pretty-code-fragment] code { @apply grid min-w-full break-words rounded-none border-0 bg-transparent p-0; counter-reset: line; box-decoration-break: clone; } [data-rehype-pretty-code-fragment] .line { @apply inline-block min-h-[1rem] w-full px-4 py-0.5; } [data-rehype-pretty-code-fragment] [data-line-numbers] .line { @apply px-2; } [data-rehype-pretty-code-fragment] [data-line-numbers] > .line::before { @apply text-xs text-zinc-50/40; counter-increment: line; content: counter(line); display: inline-block; width: 1.8rem; margin-right: 1.4rem; text-align: right; } [data-metadata] .pre-copy-btn { @apply top-16 !important; } [data-rehype-pretty-code-fragment] .line--highlighted { @apply bg-zinc-700/50; } [data-rehype-pretty-code-fragment] .with--meta { @apply top-16 !important; } [data-rehype-pretty-code-fragment] .line-highlighted span { @apply relative; } [data-rehype-pretty-code-fragment] .word--highlighted { @apply rounded-md border-zinc-700/70 bg-zinc-700/50 p-1; } .dark [data-rehype-pretty-code-fragment] .word--highlighted { @apply bg-zinc-900; } [data-rehype-pretty-code-title] { @apply mt-2 px-4 pt-6 text-sm font-medium; } [data-rehype-pretty-code-title] + pre { @apply mt-2; } .super-debug { @apply bg-zinc-950 text-[#FFF8] dark:bg-zinc-900 !important; } .super-debug--pre { @apply !bg-transparent !text-[#FFF8]; } .super-debug--code { @apply !bg-transparent; } .super-debug--code .key { @apply text-white !important; } .super-debug--code .undefined { @apply !text-[#FFF8]; } .super-debug--code .string { @apply !text-[#FFF8]; } .super-debug--code .number { @apply !text-[#FFF8]; } .super-debug--code .boolean { @apply !text-[#FFF8]; }