@import "tailwindcss";

:root {
	--background: #0a0a0a;
	--foreground: #ededed;
}

@theme inline {
	--color-background: var(--background);
	--color-foreground: var(--foreground);
	--font-sans: var(--font-poppins);
}

body {
	background: var(--background);
	color: var(--foreground);
	font-family: var(--font-poppins);
	min-height: 100vh;
}

/* selection */
::selection {
	background: rgba(188, 177, 231, 0.35); /* #BCB1E7 */
	color: #0a0a0a;
}
::-moz-selection {
	background: rgba(188, 177, 231, 0.35);
	color: #0a0a0a;
}

/* scrollbar - Firefox */
* {
	scrollbar-width: thin;
	scrollbar-color: rgba(188, 177, 231, 0.45) transparent;
}

/* scrollbar - WebKit (Chrome, Edge, Safari) */
*::-webkit-scrollbar {
	width: 10px;
	height: 10px;
}
*::-webkit-scrollbar-track {
	background: transparent;
}
*::-webkit-scrollbar-thumb {
	background-color: rgba(188, 177, 231, 0.35);
	border-radius: 9999px;
	border: 2px solid rgba(255, 255, 255, 0.08);
}
*::-webkit-scrollbar-thumb:hover {
	background-color: rgba(188, 177, 231, 0.5);
}

/* animations */
@keyframes float {
	0% {
		transform: translateY(0px);
	}
	50% {
		transform: translateY(-10px);
	}
	100% {
		transform: translateY(0px);
	}
}

.animate-float {
	animation: float 3s ease-in-out infinite;
}

/* subtle grid background with center emphasis */
.grid-light-effect {
	position: absolute;
	inset: 0;
	pointer-events: none;
	background-image:
		linear-gradient(to right, rgba(255, 255, 255, 0.06) 1px, transparent 1px),
		linear-gradient(to bottom, rgba(255, 255, 255, 0.06) 1px, transparent 1px);
	background-size: 32px 32px;
	background-position: center center;
	opacity: 0.5;
	-webkit-mask-image: radial-gradient(
		circle at center,
		black 0%,
		black 40%,
		transparent 70%
	);
	mask-image: radial-gradient(
		circle at center,
		black 0%,
		black 40%,
		transparent 70%
	);
}

.center-radial-glow {
	position: absolute;
	inset: 0;
	pointer-events: none;
	background: radial-gradient(
		ellipse at center,
		rgba(255, 255, 255, 0.14),
		rgba(255, 255, 255, 0) 50%
	);
	filter: blur(30px);
	opacity: 0.6;
}
