.theme-toggle.theme-toggle--reversed .theme-toggle__expand {
	transform: scale(-1, 1);
}

.theme-toggle {
	--theme-toggle__expand--duration: 0ms;
}

.theme-toggle--loaded {
	--theme-toggle__expand--duration: 500ms;
}

.theme-toggle__expand g circle,
.theme-toggle__expand g path {
	transform-origin: center;
	transition: transform calc(var(--theme-toggle__expand--duration) * 0.65)
		cubic-bezier(0, 0, 0, 1.25) calc(var(--theme-toggle__expand--duration) * 0.35);
}

.theme-toggle__expand :first-child path {
	transition-property: transform, d;
	transition-duration: calc(var(--theme-toggle__expand--duration) * 0.6);
	transition-timing-function: cubic-bezier(0, 0, 0.5, 1);
}

.theme-toggle input[type="checkbox"]:checked ~ .theme-toggle__expand g circle,
.theme-toggle--toggled:not(label).theme-toggle .theme-toggle__expand g circle {
	transform: scale(1.4);
	transition-delay: 0s;
}

.theme-toggle input[type="checkbox"]:checked ~ .theme-toggle__expand g path,
.theme-toggle--toggled:not(label).theme-toggle .theme-toggle__expand g path {
	transform: scale(0.75);
	transition-delay: 0s;
}

.theme-toggle input[type="checkbox"]:checked ~ .theme-toggle__expand :first-child path,
.theme-toggle--toggled:not(label).theme-toggle .theme-toggle__expand :first-child path {
	d: path("M-9 3h25a1 1 0 0017 13v30H0Z");
	transition-delay: calc(var(--theme-toggle__expand--duration) * 0.4);
	transition-timing-function: cubic-bezier(0, 0, 0, 1.25);
}

@supports not (d: path("")) {
	.theme-toggle input[type="checkbox"]:checked ~ .theme-toggle__expand :first-child path,
	.theme-toggle--toggled:not(label).theme-toggle .theme-toggle__expand :first-child path {
		transform: translate3d(-9px, 14px, 0);
	}
}

.theme-toggle {
	border: none;
	background: 0 0;
	cursor: pointer;
}

.theme-toggle input[type="checkbox"] {
	display: none;
}

.theme-toggle .theme-toggle-sr {
	position: absolute;
	width: 1px;
	height: 1px;
	padding: 0;
	margin: -1px;
	overflow: hidden;
	clip: rect(0, 0, 0, 0);
	white-space: nowrap;
	border-width: 0;
}

@media (prefers-reduced-motion: reduce) {
	.theme-toggle:not(.theme-toggle--force-motion) * {
		transition: none !important;
	}
}
