.fm-a11y {
	--fm-a11y-bg: transparent;
	--fm-a11y-color: #111;
	--fm-a11y-border: #2b2b2b;
	--fm-a11y-focus: #075985;
	position: relative;
	z-index: 20;
	display: inline-flex;
	align-items: center;
	color: var(--fm-a11y-color);
	font-family: system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;
	font-size: 16px !important;
	line-height: 1 !important;
}

.fm-a11y button {
	box-sizing: border-box;
	min-width: 44px;
	min-height: 44px;
	margin: 0;
	padding: 8px 10px;
	border: 0;
	border-radius: 0;
	background: transparent;
	color: inherit;
	font: inherit;
	line-height: 1;
	cursor: pointer;
}

.fm-a11y button:focus-visible {
	outline: 3px solid var(--fm-a11y-focus);
	outline-offset: 3px;
}

.fm-a11y__inline .fm-a11y__button:focus-visible,
.fm-a11y__menu .fm-a11y__button:focus {
	border-radius: 999px;
	outline-width: 2px;
	outline-offset: -4px;
}

.fm-a11y button:disabled {
	opacity: .38;
	cursor: not-allowed;
}

.fm-a11y__trigger {
	display: inline-flex;
	align-items: baseline;
	justify-content: center;
}

.fm-a11y__mobile-control {
	display: none;
}

.fm-a11y__aa {
	display: inline-flex;
	align-items: baseline;
	gap: 1px;
	font-weight: 700;
	letter-spacing: -.05em;
}

.fm-a11y__aa span:first-child {
	font-size: 19px;
}

.fm-a11y__aa span:last-child {
	font-size: 27px;
}

.fm-a11y__menu {
	position: absolute;
	top: calc(100% + 8px);
	left: 50%;
	display: inline-flex;
	overflow: hidden;
	transform: translateX(-50%);
	border: 2px solid var(--fm-a11y-border);
	border-radius: 999px;
	background: var(--fm-a11y-bg);
	box-shadow: 0 8px 24px rgb(0 0 0 / 16%);
	white-space: nowrap;
}

.fm-a11y__menu[hidden] {
	display: none;
}

.fm-a11y__inline {
	display: inline-flex;
	overflow: hidden;
	border: 2px solid var(--fm-a11y-border);
	border-radius: 999px;
	background: var(--fm-a11y-bg);
	white-space: nowrap;
}

.fm-a11y__button {
	font-size: 18px !important;
	font-weight: 700 !important;
}

.fm-a11y__button + .fm-a11y__button {
	border-left: 1px solid rgb(0 0 0 / 18%);
}

.fm-a11y__button--increase {
	font-size: 22px !important;
}

.fm-a11y__status {
	position: absolute !important;
	width: 1px !important;
	height: 1px !important;
	padding: 0 !important;
	margin: -1px !important;
	overflow: hidden !important;
	clip: rect(0, 0, 0, 0) !important;
	white-space: nowrap !important;
	border: 0 !important;
}

.fm-a11y--automatic {
	position: fixed;
	right: clamp(12px, 2vw, 28px);
	z-index: 9998;
}

.fm-a11y--floating_top {
	top: calc(var(--wp-admin--admin-bar--height, 0px) + 16px);
}

.fm-a11y--floating_bottom {
	bottom: 16px;
}

body.admin-bar .fm-a11y--floating_top {
	top: calc(var(--wp-admin--admin-bar--height, 32px) + 16px);
}

html.fm-a11y-is-scaling,
html.fm-a11y-is-scaling body {
	max-width: 100%;
	overflow-x: clip;
}

html.fm-a11y-is-scaling :where(h1, h2, h3, h4, h5, h6) {
	word-break: normal;
	overflow-wrap: normal;
	hyphens: manual;
	text-wrap: balance;
}

html.fm-a11y-is-scaling :where(p, li, dd, dt, blockquote, figcaption, label, legend, td, th, caption) {
	max-width: 100%;
	overflow-wrap: break-word;
}

@media (max-width: 359px) {
	.fm-a11y--inline > .fm-a11y__inline {
		display: none;
	}

	.fm-a11y--inline > .fm-a11y__mobile-control {
		display: inline-flex;
	}

	.fm-a11y__mobile-control > .fm-a11y__trigger--mobile {
		display: inline-flex;
	}

	.fm-a11y__mobile-control > .fm-a11y__menu--mobile:not([hidden]) {
		display: inline-flex;
	}
}

@media (max-width: 782px) {
	body.admin-bar .fm-a11y--floating_top {
		top: calc(var(--wp-admin--admin-bar--height, 46px) + 12px);
	}
}

@media (forced-colors: active) {
	.fm-a11y__inline,
	.fm-a11y__menu {
		border: 2px solid ButtonText;
	}
}
