@import url("https://fonts.googleapis.com/css2?family=IBM+Plex+Mono:wght@400;500;600;700&display=swap");

@tailwind base;
@tailwind components;
@tailwind utilities;

@layer base {
	.dark {
		--background: 240 10% 8%;
		--foreground: 0 0% 98%;
		--card: 240 10% 10%;
		--card-foreground: 0 0% 98%;
		--popover: 240 10% 10%;
		--popover-foreground: 0 0% 98%;
		--primary: 0 0% 98%;
		--primary-foreground: 240 5.9% 10%;
		--secondary: 240 3.7% 15.9%;
		--secondary-foreground: 0 0% 98%;
		--muted: 240 3.7% 15.9%;
		--muted-foreground: 240 5% 64.9%;
		--accent: 240 3.7% 15.9%;
		--accent-foreground: 0 0% 98%;
		--destructive: 0 75% 45%;
		--destructive-foreground: 0 0% 98%;
		--border: 240 3.7% 15.9%;
		--input: 240 3.7% 15.9%;
		--ring: 240 4.9% 83.9%;
		--radius: 0.5rem;
		color-scheme: dark;
	}
}

* {
	margin: 0;
	padding: 0;
	box-sizing: border-box;
}

body {
	font-family: "IBM Plex Mono", monospace;
	-webkit-font-smoothing: antialiased;
	background-color: hsl(var(--background));
	color: hsl(var(--foreground));
	overscroll-behavior: none;
}

html {
	overscroll-behavior: none;
}

button:focus,
button:focus-visible {
	outline: none;
	box-shadow: none;
}

.scrollbar-hide {
	-ms-overflow-style: none;
	scrollbar-width: none;
}

.scrollbar-hide::-webkit-scrollbar {
	display: none;
}

/* macOS-style overlay scrollbars: only visible while scrolling */
* {
	scrollbar-width: thin;
	scrollbar-color: transparent transparent;
}

.is-scrolling {
	scrollbar-color: rgba(155, 155, 155, 0.5) transparent;
}

::-webkit-scrollbar {
	width: 10px;
	height: 10px;
	background: transparent;
}

::-webkit-scrollbar-track,
::-webkit-scrollbar-track-piece {
	background: transparent;
	border: none;
}

::-webkit-scrollbar-thumb {
	background-color: transparent;
	border-radius: 10px;
	border: 2px solid transparent;
	background-clip: padding-box;
	min-height: 24px;
	transition: background-color 400ms ease;
}

.is-scrolling::-webkit-scrollbar-thumb {
	background-color: rgba(155, 155, 155, 0.5);
	background-clip: padding-box;
	transition: background-color 80ms ease;
}

.is-scrolling::-webkit-scrollbar-thumb:hover {
	background-color: rgba(155, 155, 155, 0.7);
	background-clip: padding-box;
}

.is-scrolling::-webkit-scrollbar-thumb:active {
	background-color: rgba(155, 155, 155, 0.85);
	background-clip: padding-box;
}

::-webkit-scrollbar-corner,
::-webkit-scrollbar-button {
	background: transparent;
	display: none;
}
