.jstyle-quick-menu {
	position: fixed;
	left: 50%;
	bottom: 18px;
	z-index: 1045;
	width: min(520px, calc(100% - 40px));
	transform: translateX(-50%);
}

.jstyle-quick-menu__inner {
	display: grid;
	grid-template-columns: repeat(3, minmax(0, 1fr));
	overflow: hidden;
	border: 1px solid rgba(255, 255, 255, .2);
	border-radius: 18px;
	background: rgba(8, 47, 73, .95);
	box-shadow: 0 14px 38px rgba(8, 47, 73, .28);
	backdrop-filter: blur(12px);
}

.jstyle-quick-menu__item {
	position: relative;
	display: flex;
	min-width: 0;
	min-height: 50px;
	align-items: center;
	justify-content: center;
	gap: 8px;
	padding: 12px 14px;
	color: rgba(255, 255, 255, .84);
	font-size: 12px;
	font-weight: 600;
	letter-spacing: .02em;
	transition: background-color .2s ease, color .2s ease;
}

.jstyle-quick-menu__item + .jstyle-quick-menu__item {
	border-left: 1px solid rgba(255, 255, 255, .15);
}

.jstyle-quick-menu__item i {
	flex: 0 0 auto;
	font-size: 16px;
}

.jstyle-quick-menu__item span {
	overflow: hidden;
	text-overflow: ellipsis;
	white-space: nowrap;
}

.jstyle-quick-menu__item:hover,
.jstyle-quick-menu__item:focus-visible,
.jstyle-quick-menu__item.is-active {
	background: rgba(255, 255, 255, .14);
	color: #fff;
}

.jstyle-quick-menu__item:focus-visible {
	outline: 2px solid #7dd3fc;
	outline-offset: -3px;
}

.has-jstyle-quick-menu .jstyle-footer {
	padding-bottom: 86px;
}

@media (max-width: 767.98px) {
	.jstyle-quick-menu {
		left: 0;
		bottom: 0;
		width: 100%;
		transform: none;
	}

	.jstyle-quick-menu__inner {
		border-right: 0;
		border-bottom: 0;
		border-left: 0;
		border-radius: 16px 16px 0 0;
		padding-bottom: env(safe-area-inset-bottom);
		background: rgba(8, 47, 73, .98);
	}

	.jstyle-quick-menu__item {
		min-height: 60px;
		flex-direction: column;
		gap: 3px;
		padding: 8px 7px 7px;
		font-size: 10px;
		line-height: 1.2;
	}

	.jstyle-quick-menu__item i {
		font-size: 17px;
	}

	.has-jstyle-quick-menu .jstyle-footer {
		padding-bottom: calc(68px + env(safe-area-inset-bottom));
	}
}

@media (prefers-reduced-motion: reduce) {
	.jstyle-quick-menu__item {
		transition: none;
	}
}
