@media (min-width: 768px) {
	.lean-legal-footer-flyout { overflow: visible; }
}

div.lean-legal-footer-links {
	display: flex;
	flex-wrap: nowrap;
	align-items: center;
	justify-content: space-between;
	gap: 0.5em 1em;
	padding: 1em;
}

.lean-legal-footer-links {
	color: inherit;
	background: transparent;
	font: inherit;
}

div.lean-legal-footer-links > * { min-width: 0; }
.lean-legal-footer-links p { margin: 0; overflow-wrap: anywhere; }
.lean-legal-footer-trigger { display: none; }

.lean-legal-footer-flyout {
	display: block;
	position: static;
	inset: auto;
	margin: 0;
	padding: 0;
	border: 0;
	color: inherit;
	background: transparent;
	font: inherit;
}

.lean-legal-footer-links ul {
	display: flex;
	flex-wrap: wrap;
	gap: 0.5em 1em;
	margin: 0;
	padding: 0;
	list-style: none;
}

.lean-legal-footer-links a {
	color: inherit;
	font: inherit;
	text-decoration: none;
	background-image: linear-gradient(currentColor, currentColor);
	background-repeat: no-repeat;
	background-position: 0 100%;
	background-size: 0% 1px;
	padding-block-end: 0.2em;
	transition: background-size 180ms ease-out;
}

.lean-legal-footer-links a:is(:hover, :focus-visible) { background-size: 100% 1px; }
[dir="rtl"] .lean-legal-footer-links a { background-position: 100% 100%; }

@media (max-width: 767px) {
	.lean-legal-footer-trigger {
		display: block;
		flex: 0 0 auto;
		min-width: 44px;
		min-height: 44px;
		padding: 0;
		border: 0;
		color: inherit;
		background: transparent;
		font: inherit;
		font-size: 1.5em;
		cursor: pointer;
	}
	.lean-legal-footer-flyout:not(:popover-open) { display: none; }
	.lean-legal-footer-flyout:popover-open {
		position: fixed;
		inset: auto 1em 5em auto;
		box-sizing: border-box;
		width: max-content;
		max-width: calc(100vw - 2em);
		max-height: calc(100dvh - 6em);
		padding: 0.75em;
		overflow: auto;
		border: 1px solid ButtonBorder;
		border-radius: 0.25em;
		color: CanvasText;
		background: Canvas;
	}
	.lean-legal-footer-flyout ul { flex-direction: column; gap: 0; }
	.lean-legal-footer-flyout a {
		display: block;
		padding: 0.75em 0.5em;
		overflow-wrap: anywhere;
	}
}

@media (prefers-reduced-motion: reduce) {
	.lean-legal-footer-links a { transition: none; }
}

@media print {
	.lean-legal-footer-links { display: none; }
}
