/**
 * WordPress / GeneratePress compatibility fixes for jossef/open-accessibility.
 */
body.joa-lang-he .open-accessibility {
	direction: rtl !important;
}

.open-accessibility {
	position: fixed !important;
	direction: ltr !important;
	z-index: 999999 !important;
	top: auto !important;
	bottom: 24px !important;
	right: 24px !important;
	left: auto !important;
	min-width: 0 !important;
	width: auto !important;
	max-width: none !important;
	pointer-events: none;
}

.open-accessibility,
.open-accessibility * {
	box-sizing: border-box;
}

.open-accessibility .open-accessibility-container,
.open-accessibility .open-accessibility-expand-button,
.open-accessibility .open-accessibility-close-button,
.open-accessibility .open-accessibility-menu-button {
	pointer-events: auto;
}

.open-accessibility.open-accessibility-collapsed {
	min-width: 0 !important;
	width: auto !important;
	height: auto !important;
}

.open-accessibility.open-accessibility-collapsed .open-accessibility-container {
	overflow: hidden;
}

.open-accessibility.open-accessibility-collapsed .open-accessibility-menu,
.open-accessibility.open-accessibility-collapsed .open-accessibility-menu-footer,
.open-accessibility.open-accessibility-collapsed .open-accessibility-close-button {
	display: none !important;
}

.open-accessibility.open-accessibility-expanded {
	bottom: 24px !important;
	top: auto !important;
}

.open-accessibility.open-accessibility-expanded .open-accessibility-container {
	max-height: calc(100vh - 48px);
	overflow: auto;
}

.open-accessibility .open-accessibility-menu-button {
	float: left;
}

.open-accessibility .open-accessibility-expand-button {
	left: 0;
	right: auto;
}

.open-accessibility .open-accessibility-menu-footer {
	font-size: 0;
	line-height: 0;
	height: 0;
	overflow: hidden;
	padding: 0;
}

.open-accessibility-cursor-workaround {
	display: none !important;
	visibility: hidden !important;
	opacity: 0 !important;
	pointer-events: none !important;
}

body.open-accessibility-cursor .open-accessibility-cursor-workaround {
	display: block !important;
	visibility: visible !important;
	opacity: 1 !important;
	pointer-events: none !important;
}

@media screen and (max-width: 780px) {
	.open-accessibility {
		right: 0 !important;
		bottom: 0 !important;
		top: auto !important;
	}

	.open-accessibility.open-accessibility-expanded {
		position: fixed !important;
		inset: auto 0 0 0 !important;
		width: 100% !important;
	}

	.open-accessibility.open-accessibility-expanded .open-accessibility-container {
		width: 100% !important;
		height: auto !important;
		max-height: 70vh;
		border-radius: 12px 12px 0 0 !important;
	}

	.open-accessibility.open-accessibility-collapsed .open-accessibility-container {
		border-radius: 50% !important;
		margin: 12px;
	}
}
