body {
	background-color: black;
}

.bottom-dock {
	position: fixed;
	left: 50%;
	bottom: 18px;
	transform: translateX(-50%);
	display: flex;
	align-items: center;
	justify-content: flex-start;
	gap: 8px;
	padding: 10px;
	border-radius: 999px;
	background: rgba(255, 255, 255, 0.88);
	box-shadow: 0 16px 40px var(--color-shadow-strong);
	backdrop-filter: blur(18px);
	-webkit-backdrop-filter: blur(18px);
	z-index: 1050;
	border: 1px solid var(--glass-border);
	overflow-x: auto;
	scrollbar-width: none;
}

.bottom-dock::-webkit-scrollbar {
	display: none;
}

.dock-link {
	flex: 0 0 auto;
	display: flex;
	flex-direction: column;
	align-items: center;
	justify-content: center;
	gap: 4px;
	min-width: 74px;
	padding: 10px 10px;
	border-radius: 999px;
	color: var(--color-text-muted);
	text-decoration: none;
	font-size: 11px;
	font-weight: 600;
	letter-spacing: 0.02em;
	white-space: nowrap;
	transition:
		background-color 0.2s ease,
		color 0.2s ease,
		transform 0.2s ease,
		box-shadow 0.2s ease;
}

.dock-link i {
	font-size: 15px;
}

.dock-link:hover {
	background: var(--color-primary-soft);
	color: var(--color-primary-dark);
	transform: translateY(-1px);
}

.dock-link.is-active {
	background: linear-gradient(135deg, var(--color-primary), var(--color-primary-dark));
	color: var(--color-white);
	box-shadow: 0 10px 18px rgba(45, 95, 138, 0.24);
}

.dock-link:focus-visible {
	outline: 3px solid var(--color-primary-outline);
	outline-offset: 2px;
}

@media (max-width: 640px) {
	.bottom-dock {
		bottom: 12px;
		width: min(calc(100vw - 16px), 100%);
		gap: 4px;
		padding: 8px;
	}

	.dock-link {
		min-width: 64px;
		padding: 10px 8px;
		font-size: 10px;
	}

	.dock-link i {
		font-size: 14px;
	}
}
