@charset "UTF-8";
.-pen-placeholder {
	background: #181921 url('https://blog.codepen.io/wp-content/uploads/2012/06/Button-White-Large.png') center
		center/50vmin 50vmin no-repeat;
	height: 100vh;
}

:root {
	--chrome-factor: 0;
	--firefox-factor: 1;
}

@supports not (-moz-appearance: none) {
	:root {
		--chrome-factor: 1;
		--firefox-factor: 0;
	}
}
:root {
	--unit: 1vmin;
	--zoom: 100;
	--available-screen-min: 665;
	--px: calc(var(--zoom) * (var(--unit) / var(--available-screen-min)));
	--auto-rotate-duration: 10s;
	--auto-rotate-timing-func: ease;
	--auto-rotate-direction: forwards;
	--fallback-fonts:
		-apple-system, BlinkMacSystemFont, 'Segoe UI', Helvetica, Arial, Ubuntu, sans-serif, 'Apple Color Emoji',
		'Twemoji Mozilla', 'Segoe UI Emoji', 'Segoe UI Symbol';
}

*,
*::before,
*::after {
	padding: 0;
	margin: 0;
	box-sizing: border-box;
	-webkit-text-size-adjust: none;
	-moz-text-size-adjust: none;
	text-size-adjust: none;
}

*::before,
*::after {
	display: block;
}

body {
	touch-action: none;
}

html {
	cursor: -webkit-grab;
	cursor: grab;
}

html:active {
	cursor: -webkit-grabbing;
	cursor: grabbing;
}

html,
body {
	position: absolute;
	left: 0;
	top: 0;
	width: 100%;
	height: 100%;
	scrollbar-width: thin;
	font-size: 0;
	overflow: hidden;
	/* to make touch gestures work correctly */
}

html::before {
	content: '';
	position: fixed;
	left: 0;
	top: 0;
	width: 100vw;
	height: 100vh;
	background-image: radial-gradient(circle at 50% 50%, #fff, #f8f8f8);
	background-size: 100vw 100vh;
	background-repeat: no-repeat;
}

[data-camera] {
	--scene-size: 500;
	--scale: 100;
	--perspective: 1200;
	--cameraZ: 0;
	--cameraY: 0;
	--translateX: 0;
	--translateY: 0;
	--translateZ: 0;
}

[data-camera] {
	position: absolute;
	left: 0;
	top: 0;
	width: 100vw;
	height: 100vh;
	--fmt-s: calc(var(--scale, 100) / 100);
	transform: scale(var(--fmt-s));
	display: grid;
	place-items: center;
	overflow: visible;
	transition: transform ease 500ms;
	will-change: transform;
}

[data-scene] {
	position: relative;
	left: 0;
	top: 0;
	width: calc(var(--scene-size) * var(--px));
	height: calc(var(--scene-size) * var(--px));
	background-color: rgba(0, 0, 0, 0.1);
	transform: perspective(calc(var(--perspective, 1000) * 1px)) rotateX(calc(var(--cameraY, 0) * 1deg))
		rotateZ(calc(var(--cameraZ, 0) * 1deg))
		translate3d(
			calc(var(--translateX, 0) * var(--px)),
			calc(var(--translateY, 0) * var(--px) * -1),
			calc(var(--translateZ, 0) * var(--px) * -1)
		);
	--max-rotation: calc((360 + var(--cameraZ)) * 1deg);
	transform-origin: 50% 50%;
}

[data-camera][data-dragging] {
	transition: none;
}

@-webkit-keyframes rotateCamera {
	to {
		transform: perspective(calc(var(--perspective, 1000) * 1px)) rotateX(calc(var(--cameraY, 0) * 1deg))
			rotateZ(var(--max-rotation))
			translate3d(
				calc(var(--translateX, 0) * var(--px)),
				calc(var(--translateY, 0) * var(--px) * -1),
				calc(var(--translateZ, 0) * var(--px) * -1)
			);
	}
}

@keyframes rotateCamera {
	to {
		transform: perspective(calc(var(--perspective, 1000) * 1px)) rotateX(calc(var(--cameraY, 0) * 1deg))
			rotateZ(var(--max-rotation))
			translate3d(
				calc(var(--translateX, 0) * var(--px)),
				calc(var(--translateY, 0) * var(--px) * -1),
				calc(var(--translateZ, 0) * var(--px) * -1)
			);
	}
}
[data-scene],
[data-camera],
[data-3d] {
	transform-style: preserve-3d;
}

[data-hidden],
.class-hidden {
	display: none;
}

/*
 * 20 January 2022
 * CSS 3D Donut
 * ✔ responsive, ✔ rotate (XZ), ✔ pan (XYZ)
 * ✔ 9 toggles, 81 possible appearances
 * mvp: 100 DIVs, 104 pseudo-elements, CSS gradients, mask and chained transforms
 * requires: the latest version of Firefox and Chrome
 */
:root {
	--rotate-duration: 10s;
	--drop-shadow: rgba(0, 0, 0, 0.7);
	--ambient-light: rgba(0, 0, 0, 0.5);
	--accent: #488cfb;
	--accent-background: #31384d;
	--text: #fff;
	--text-secondary: rgba(255, 255, 255, 0.7);
	--controls-padding: 2vmin;
	--controls-transition-duration: 300ms;
	--controls-font-size: max(14px, 2.2vmin);
	--controls-line-opacity: 0.4;
	--controls-line-padding: 30%;
	--controls-line-height: 0.72em;
	--controls-margin-inline: 0.6em;
	--controls-margin-block: 0.8em;
}

[data-camera] {
	--cameraY: 41;
}

.torus {
	--radius: 200;
	--thickness: 131;
	--border-width: 15;
	--color: #488cfb;
	--outline-color: #000;
	--sprinkle-color: #f7f7f770;
	--sprinkle-scale: 0.8;
	--sprinkle-mass: 12;
	--glare-mass: 53;
	position: absolute;
	left: 50%;
	top: 50%;
	transform: translate(-50%, -50%);
}

body:not([data-gradient-colors]) .torus {
	--gradient-colors: none;
}

body[data-gradient-colors] #toggle-donut-fill + label {
	opacity: 0.4;
	pointer-events: none;
}

body[data-donut-fill] {
	--accent: hsl(23, 65%, 53%);
	--text: hsl(36, 79%, 92%);
	--text-secondary: hsla(36, 79%, 88%, 0.7);
}
body[data-donut-fill] .torus {
	--gradient-colors: linear-gradient(hsl(36, 79%, 84%), hsl(32, 67%, 56%) 62%, hsl(23, 65%, 53%) 77%);
	--color: #3a6eeba3;
}
body[data-donut-fill][data-gradient-colors] {
	--accent: #488cfb;
	--text: #fff;
	--text-secondary: rgba(255, 255, 255, 0.7);
}
body[data-donut-fill][data-gradient-colors] .torus {
	--gradient-colors: var(--default-gradient-colors);
}

body:not([data-outlines]) .torus {
	--outline: none;
}

body[data-wireframe] .torus {
	--m-image: linear-gradient(#000 0 0);
	--border-width: 3;
}

body[data-pbp] .torus {
	--y-base: 98;
}

body[data-lights] .torus {
	--inner-shade-color: var(--ambient-light);
}

body:not([data-lights]) .torus {
	--lights: none;
}

body:not([data-glare]) .torus {
	--glare-images: none;
	--glare-points: 0 0;
	--glare-size: 0 0;
}

body:not([data-sprinkles]) .torus::before {
	content: none;
}

body[data-rotate] [data-float] {
	-webkit-animation-play-state: running;
	animation-play-state: running;
}

body {
	filter: drop-shadow(calc(13 * var(--px)) calc(13 * var(--px)) calc(17 * var(--px)) var(--drop-shadow));
}
body .torus {
	--m-image: none;
}

label {
	transition-property: color, opacity;
}

html::before {
	background-image: radial-gradient(circle at 50% 50%, var(--accent-background), #000);
}

[data-scene] {
	background-color: transparent;
}

[data-float] {
	position: absolute;
	left: 0;
	top: 0;
	width: 100%;
	height: 100%;
	transform: rotateX(0turn) rotateY(0turn) rotateZ(0turn);
	-webkit-animation: rotate linear var(--rotate-duration) forwards infinite;
	animation: rotate linear var(--rotate-duration) forwards infinite;
	-webkit-animation-play-state: paused;
	animation-play-state: paused;
	transform-style: preserve-3d;
}

@-webkit-keyframes rotate {
	to {
		transform: rotateX(1turn) rotateY(2turn) rotateZ(3turn);
	}
}

@keyframes rotate {
	to {
		transform: rotateX(1turn) rotateY(2turn) rotateZ(3turn);
	}
}
.torus {
	--default-outline: 0 0 0 1px var(--outline-color, #000);
	--default-lights: linear-gradient(to right, transparent, var(--inner-shade-color, transparent));
	--default-gradient-colors: conic-gradient(
		hsl(217, 96%, 63%),
		hsl(170, 71%, 51%),
		hsl(66, 96%, 49%),
		hsl(36, 100%, 53%),
		hsl(315, 75%, 57%),
		hsl(245, 65%, 61%),
		hsl(217, 96%, 63%)
	);
	--default-glare-color: rgba(255, 255, 255, 0.13);
	--calc-border-width: calc(var(--border-width) * var(--px));
	--calc-diameter: calc(var(--radius) * 2 * var(--px));
	--calc-thickness: calc(var(--thickness) * var(--px));
	--calc-half-thickness: calc(((var(--thickness) * 0.5) - 4) * var(--px));
	--calc-distance: calc((var(--radius) - (var(--thickness) * 0.5)) * var(--px));
	--calc-reverse-distance: calc((var(--radius) - (var(--thickness) * 0.5)) * -2 * var(--px));
	--calc-glare-mass: calc(var(--glare-mass) * var(--px));
	--calc-sprinkle-mass: calc(var(--sprinkle-mass) * var(--px));
	--glare-image: radial-gradient(
		circle at center,
		var(--glare-color, var(--default-glare-color)) 50%,
		transparent calc(50% + 1px)
	);
	--glare-images:
		var(--glare-image), var(--glare-image), var(--glare-image), var(--glare-image), var(--glare-image),
		var(--glare-image), var(--glare-image), var(--glare-image);
	--glare-points:
		calc(50% + 50% * -0.2174715247) calc(50% + 50% * 1.0933031845),
		calc(50% + 50% * -0.4352592761) calc(50% + 50% * 1.0508088474),
		calc(50% + 50% * -0.6422655691) calc(50% + 50% * 0.9612183519),
		calc(50% + 50% * -0.7877775401) calc(50% + 50% * 0.7877775401),
		calc(50% + 50% * -0.8789920853) calc(50% + 50% * 0.5873237343),
		calc(50% + 50% * -1.0862836956) calc(50% + 50% * 0.4499534393),
		calc(50% + 50% * -1.0126947969) calc(50% + 50% * 0.2014375195),
		calc(50% + 50% * -1.0352571626) calc(50% + 50% * 0);
	--glare-size:
		var(--calc-glare-mass) var(--calc-glare-mass), var(--calc-glare-mass) var(--calc-glare-mass),
		var(--calc-glare-mass) var(--calc-glare-mass), var(--calc-glare-mass) var(--calc-glare-mass),
		var(--calc-glare-mass) var(--calc-glare-mass), var(--calc-glare-mass) var(--calc-glare-mass),
		var(--calc-glare-mass) var(--calc-glare-mass), var(--calc-glare-mass) var(--calc-glare-mass);
	--m-image: linear-gradient(#000 0 0);
	--m-origin: content-box, padding-box;
	width: var(--calc-diameter);
	height: var(--calc-diameter);
}
.torus::before {
	content: '';
	position: absolute;
	left: 50%;
	top: 50%;
	width: 100%;
	height: 100%;
	border-radius: 50%;
	transform: translate(-50%, -50%) translateZ(var(--calc-half-thickness)) scale(var(--sprinkle-scale));
	--sprinkle-image: radial-gradient(circle at center, var(--sprinkle-color) 50%, transparent calc(50% + 1px));
	--sprinkle-images:
		var(--sprinkle-image), var(--sprinkle-image), var(--sprinkle-image), var(--sprinkle-image),
		var(--sprinkle-image), var(--sprinkle-image), var(--sprinkle-image), var(--sprinkle-image),
		var(--sprinkle-image), var(--sprinkle-image), var(--sprinkle-image), var(--sprinkle-image),
		var(--sprinkle-image), var(--sprinkle-image), var(--sprinkle-image), var(--sprinkle-image),
		var(--sprinkle-image), var(--sprinkle-image), var(--sprinkle-image), var(--sprinkle-image),
		var(--sprinkle-image), var(--sprinkle-image), var(--sprinkle-image), var(--sprinkle-image),
		var(--sprinkle-image), var(--sprinkle-image), var(--sprinkle-image), var(--sprinkle-image),
		var(--sprinkle-image), var(--sprinkle-image), var(--sprinkle-image), var(--sprinkle-image),
		var(--sprinkle-image), var(--sprinkle-image), var(--sprinkle-image), var(--sprinkle-image),
		var(--sprinkle-image), var(--sprinkle-image), var(--sprinkle-image), var(--sprinkle-image),
		var(--sprinkle-image), var(--sprinkle-image), var(--sprinkle-image), var(--sprinkle-image),
		var(--sprinkle-image), var(--sprinkle-image), var(--sprinkle-image), var(--sprinkle-image),
		var(--sprinkle-image), var(--sprinkle-image), var(--sprinkle-image), var(--sprinkle-image),
		var(--sprinkle-image), var(--sprinkle-image), var(--sprinkle-image), var(--sprinkle-image),
		var(--sprinkle-image), var(--sprinkle-image), var(--sprinkle-image), var(--sprinkle-image),
		var(--sprinkle-image), var(--sprinkle-image), var(--sprinkle-image), var(--sprinkle-image),
		var(--sprinkle-image), var(--sprinkle-image), var(--sprinkle-image), var(--sprinkle-image),
		var(--sprinkle-image), var(--sprinkle-image), var(--sprinkle-image), var(--sprinkle-image),
		var(--sprinkle-image), var(--sprinkle-image), var(--sprinkle-image), var(--sprinkle-image),
		var(--sprinkle-image), var(--sprinkle-image), var(--sprinkle-image), var(--sprinkle-image),
		var(--sprinkle-image), var(--sprinkle-image), var(--sprinkle-image), var(--sprinkle-image),
		var(--sprinkle-image), var(--sprinkle-image), var(--sprinkle-image), var(--sprinkle-image),
		var(--sprinkle-image), var(--sprinkle-image), var(--sprinkle-image), var(--sprinkle-image),
		var(--sprinkle-image), var(--sprinkle-image), var(--sprinkle-image), var(--sprinkle-image),
		var(--sprinkle-image), var(--sprinkle-image), var(--sprinkle-image), var(--sprinkle-image),
		var(--sprinkle-image), var(--sprinkle-image), var(--sprinkle-image), var(--sprinkle-image),
		var(--sprinkle-image), var(--sprinkle-image), var(--sprinkle-image), var(--sprinkle-image),
		var(--sprinkle-image), var(--sprinkle-image), var(--sprinkle-image), var(--sprinkle-image),
		var(--sprinkle-image), var(--sprinkle-image), var(--sprinkle-image), var(--sprinkle-image),
		var(--sprinkle-image), var(--sprinkle-image), var(--sprinkle-image), var(--sprinkle-image),
		var(--sprinkle-image), var(--sprinkle-image), var(--sprinkle-image), var(--sprinkle-image),
		var(--sprinkle-image), var(--sprinkle-image), var(--sprinkle-image), var(--sprinkle-image),
		var(--sprinkle-image), var(--sprinkle-image), var(--sprinkle-image), var(--sprinkle-image),
		var(--sprinkle-image), var(--sprinkle-image), var(--sprinkle-image), var(--sprinkle-image),
		var(--sprinkle-image), var(--sprinkle-image), var(--sprinkle-image), var(--sprinkle-image),
		var(--sprinkle-image), var(--sprinkle-image), var(--sprinkle-image), var(--sprinkle-image),
		var(--sprinkle-image), var(--sprinkle-image), var(--sprinkle-image), var(--sprinkle-image),
		var(--sprinkle-image), var(--sprinkle-image), var(--sprinkle-image), var(--sprinkle-image),
		var(--sprinkle-image), var(--sprinkle-image), var(--sprinkle-image), var(--sprinkle-image),
		var(--sprinkle-image), var(--sprinkle-image), var(--sprinkle-image), var(--sprinkle-image),
		var(--sprinkle-image), var(--sprinkle-image), var(--sprinkle-image), var(--sprinkle-image),
		var(--sprinkle-image), var(--sprinkle-image), var(--sprinkle-image), var(--sprinkle-image),
		var(--sprinkle-image), var(--sprinkle-image), var(--sprinkle-image), var(--sprinkle-image),
		var(--sprinkle-image), var(--sprinkle-image), var(--sprinkle-image), var(--sprinkle-image),
		var(--sprinkle-image), var(--sprinkle-image), var(--sprinkle-image), var(--sprinkle-image),
		var(--sprinkle-image), var(--sprinkle-image), var(--sprinkle-image), var(--sprinkle-image),
		var(--sprinkle-image), var(--sprinkle-image), var(--sprinkle-image), var(--sprinkle-image),
		var(--sprinkle-image), var(--sprinkle-image), var(--sprinkle-image), var(--sprinkle-image),
		var(--sprinkle-image), var(--sprinkle-image), var(--sprinkle-image), var(--sprinkle-image),
		var(--sprinkle-image), var(--sprinkle-image), var(--sprinkle-image), var(--sprinkle-image);
	--sprinkle-points:
		calc(50% + 50% * -0.8874915925) calc(50% + 50% * -0.0278905469),
		calc(50% + 50% * -0.9742619185) calc(50% + 50% * -0.0612953644),
		calc(50% + 50% * -0.9903317325) calc(50% + 50% * -0.0936139108),
		calc(50% + 50% * -0.8680154574) calc(50% + 50% * -0.1096558532),
		calc(50% + 50% * -0.8323508017) calc(50% + 50% * -0.1318314159),
		calc(50% + 50% * -0.9774430879) calc(50% + 50% * -0.1864572411),
		calc(50% + 50% * -0.7923986966) calc(50% + 50% * -0.1771220937),
		calc(50% + 50% * -0.8756415874) calc(50% + 50% * -0.224826547),
		calc(50% + 50% * -0.928905139) calc(50% + 50% * -0.2698718902),
		calc(50% + 50% * -0.7757261114) calc(50% + 50% * -0.2520486925),
		calc(50% + 50% * -0.8522943802) calc(50% + 50% * -0.3068448578),
		calc(50% + 50% * -0.9231849355) calc(50% + 50% * -0.3655147732),
		calc(50% + 50% * -0.8763016896) calc(50% + 50% * -0.3792096034),
		calc(50% + 50% * -0.7657712959) calc(50% + 50% * -0.3603446194),
		calc(50% + 50% * -0.7612210206) calc(50% + 50% * -0.3878614827),
		calc(50% + 50% * -0.8325917242) calc(50% + 50% * -0.4577211737),
		calc(50% + 50% * -0.8227270861) calc(50% + 50% * -0.4865594424),
		calc(50% + 50% * -0.6797992511) calc(50% + 50% * -0.4314137232),
		calc(50% + 50% * -0.7634389603) calc(50% + 50% * -0.5188325817),
		calc(50% + 50% * -0.7994357097) calc(50% + 50% * -0.5808240415),
		calc(50% + 50% * -0.6330207478) calc(50% + 50% * -0.4910212242),
		calc(50% + 50% * -0.7162096212) calc(50% + 50% * -0.592500127),
		calc(50% + 50% * -0.6630858042) calc(50% + 50% * -0.5845887733),
		calc(50% + 50% * -0.6215105429) calc(50% + 50% * -0.5836372478),
		calc(50% + 50% * -0.6708309606) calc(50% + 50% * -0.6708309606),
		calc(50% + 50% * -0.6701237741) calc(50% + 50% * -0.713609339),
		calc(50% + 50% * -0.5468671215) calc(50% + 50% * -0.620298989),
		calc(50% + 50% * -0.6090185072) calc(50% + 50% * -0.7361769127),
		calc(50% + 50% * -0.5124229914) calc(50% + 50% * -0.6606117399),
		calc(50% + 50% * -0.5434291084) calc(50% + 50% * -0.7479659998),
		calc(50% + 50% * -0.4692431009) calc(50% + 50% * -0.6904702552),
		calc(50% + 50% * -0.5221838555) calc(50% + 50% * -0.8228300929),
		calc(50% + 50% * -0.4361346424) calc(50% + 50% * -0.7374634058),
		calc(50% + 50% * -0.4461262442) calc(50% + 50% * -0.8115006256),
		calc(50% + 50% * -0.4243940813) calc(50% + 50% * -0.8329202824),
		calc(50% + 50% * -0.4110012385) calc(50% + 50% * -0.873422091),
		calc(50% + 50% * -0.3692080946) calc(50% + 50% * -0.8531895666),
		calc(50% + 50% * -0.3146326286) calc(50% + 50% * -0.7946713078),
		calc(50% + 50% * -0.3086191836) calc(50% + 50% * -0.8572227595),
		calc(50% + 50% * -0.2554138683) calc(50% + 50% * -0.7860830576),
		calc(50% + 50% * -0.2300001111) calc(50% + 50% * -0.7916655749),
		calc(50% + 50% * -0.22800663) calc(50% + 50% * -0.8880271929),
		calc(50% + 50% * -0.1821087104) calc(50% + 50% * -0.8147075373),
		calc(50% + 50% * -0.1583304354) calc(50% + 50% * -0.8299972087),
		calc(50% + 50% * -0.1554381306) calc(50% + 50% * -0.9813977325),
		calc(50% + 50% * -0.1226119573) calc(50% + 50% * -0.9705735815),
		calc(50% + 50% * -0.0898657802) calc(50% + 50% * -0.9506806523),
		calc(50% + 50% * -0.0531356907) calc(50% + 50% * -0.8445676181),
		calc(50% + 50% * -0.0275310706) calc(50% + 50% * -0.8760528708),
		calc(50% + 50% * 0) calc(50% + 50% * -0.8097812774),
		calc(50% + 50% * 0.0265428431) calc(50% + 50% * -0.8446069607),
		calc(50% + 50% * 0.0519252999) calc(50% + 50% * -0.8253290081),
		calc(50% + 50% * 0.0932401374) calc(50% + 50% * -0.9863776222),
		calc(50% + 50% * 0.1057913417) calc(50% + 50% * -0.8374246991),
		calc(50% + 50% * 0.1273932357) calc(50% + 50% * -0.8043292352),
		calc(50% + 50% * 0.1838989388) calc(50% + 50% * -0.9640319973),
		calc(50% + 50% * 0.1936734786) calc(50% + 50% * -0.866445336),
		calc(50% + 50% * 0.2402812452) calc(50% + 50% * -0.9358336631),
		calc(50% + 50% * 0.2550347751) calc(50% + 50% * -0.8778354537),
		calc(50% + 50% * 0.2574853581) calc(50% + 50% * -0.7924584477),
		calc(50% + 50% * 0.2805767721) calc(50% + 50% * -0.7793319652),
		calc(50% + 50% * 0.3152104876) calc(50% + 50% * -0.7961308131),
		calc(50% + 50% * 0.3392505857) calc(50% + 50% * -0.7839618481),
		calc(50% + 50% * 0.3540254433) calc(50% + 50% * -0.752342363),
		calc(50% + 50% * 0.4054057237) calc(50% + 50% * -0.7956535322),
		calc(50% + 50% * 0.4241827982) calc(50% + 50% * -0.7715856456),
		calc(50% + 50% * 0.438751266) calc(50% + 50% * -0.7418878746),
		calc(50% + 50% * 0.513008343) calc(50% + 50% * -0.8083717986),
		calc(50% + 50% * 0.5345952787) calc(50% + 50% * -0.7866330646),
		calc(50% + 50% * 0.5399937355) calc(50% + 50% * -0.7432376147),
		calc(50% + 50% * 0.5212351237) calc(50% + 50% * -0.6719722724),
		calc(50% + 50% * 0.5240429114) calc(50% + 50% * -0.6334590626),
		calc(50% + 50% * 0.5448640445) calc(50% + 50% * -0.6180269441),
		calc(50% + 50% * 0.5502295877) calc(50% + 50% * -0.5859349982),
		calc(50% + 50% * 0.6601669912) calc(50% + 50% * -0.6601669912),
		calc(50% + 50% * 0.7245902601) calc(50% + 50% * -0.6804355454),
		calc(50% + 50% * 0.6105699249) calc(50% + 50% * -0.5382897977),
		calc(50% + 50% * 0.6398002496) calc(50% + 50% * -0.5292887975),
		calc(50% + 50% * 0.6658115172) calc(50% + 50% * -0.5164563521),
		calc(50% + 50% * 0.7537628663) calc(50% + 50% * -0.5476407784),
		calc(50% + 50% * 0.7203167335) calc(50% + 50% * -0.4895267466),
		calc(50% + 50% * 0.7734506588) calc(50% + 50% * -0.4908467138),
		calc(50% + 50% * 0.802490984) calc(50% + 50% * -0.474591845),
		calc(50% + 50% * 0.7656958011) calc(50% + 50% * -0.4209448288),
		calc(50% + 50% * 0.7144148349) calc(50% + 50% * -0.3640125399),
		calc(50% + 50% * 0.7336467868) calc(50% + 50% * -0.3452279729),
		calc(50% + 50% * 0.8100069025) calc(50% + 50% * -0.3505212872),
		calc(50% + 50% * 0.7586941808) calc(50% + 50% * -0.3003882763),
		calc(50% + 50% * 0.9233490234) calc(50% + 50% * -0.3324261035),
		calc(50% + 50% * 0.8790528052) calc(50% + 50% * -0.2856215705),
		calc(50% + 50% * 0.9405917894) calc(50% + 50% * -0.273267176),
		calc(50% + 50% * 0.791154918) calc(50% + 50% * -0.2031340572),
		calc(50% + 50% * 0.9739194981) calc(50% + 50% * -0.2176968),
		calc(50% + 50% * 0.8995765962) calc(50% + 50% * -0.1716034134),
		calc(50% + 50% * 0.7962345276) calc(50% + 50% * -0.12611116),
		calc(50% + 50% * 0.9322178488) calc(50% + 50% * -0.1177665014),
		calc(50% + 50% * 0.9757821512) calc(50% + 50% * -0.0922385705),
		calc(50% + 50% * 0.8753465316) calc(50% + 50% * -0.0550721358),
		calc(50% + 50% * 0.9389285652) calc(50% + 50% * -0.0295070189),
		calc(50% + 50% * 0.860657697) calc(50% + 50% * 0),
		calc(50% + 50% * 0.9740073864) calc(50% + 50% * 0.0306094153),
		calc(50% + 50% * 0.8435362955) calc(50% + 50% * 0.0530708053),
		calc(50% + 50% * 0.8422962243) calc(50% + 50% * 0.0796204353),
		calc(50% + 50% * 0.8502511213) calc(50% + 50% * 0.1074116957),
		calc(50% + 50% * 0.9788987141) calc(50% + 50% * 0.155042325),
		calc(50% + 50% * 0.9048395241) calc(50% + 50% * 0.1726073706),
		calc(50% + 50% * 0.9109033653) calc(50% + 50% * 0.2036110255),
		calc(50% + 50% * 0.8680111775) calc(50% + 50% * 0.2228673907),
		calc(50% + 50% * 0.8801661094) calc(50% + 50% * 0.2557118932),
		calc(50% + 50% * 0.9254492207) calc(50% + 50% * 0.3006966797),
		calc(50% + 50% * 0.9289989085) calc(50% + 50% * 0.3344601873),
		calc(50% + 50% * 0.8922038381) calc(50% + 50% * 0.3532484891),
		calc(50% + 50% * 0.8374007947) calc(50% + 50% * 0.3623756829),
		calc(50% + 50% * 0.8114330967) calc(50% + 50% * 0.3818314319),
		calc(50% + 50% * 0.7505019535) calc(50% + 50% * 0.3823998452),
		calc(50% + 50% * 0.8279561101) calc(50% + 50% * 0.4551727233),
		calc(50% + 50% * 0.7912075714) calc(50% + 50% * 0.4679188533),
		calc(50% + 50% * 0.8416756691) calc(50% + 50% * 0.5341436219),
		calc(50% + 50% * 0.7172970037) calc(50% + 50% * 0.4874745403),
		calc(50% + 50% * 0.6706032139) calc(50% + 50% * 0.4872217543),
		calc(50% + 50% * 0.7522116799) calc(50% + 50% * 0.5834751881),
		calc(50% + 50% * 0.6803189884) calc(50% + 50% * 0.5628088134),
		calc(50% + 50% * 0.612939086) calc(50% + 50% * 0.5403784942),
		calc(50% + 50% * 0.6934356411) calc(50% + 50% * 0.6511794108),
		calc(50% + 50% * 0.5903767724) calc(50% + 50% * 0.5903767724),
		calc(50% + 50% * 0.6319081635) calc(50% + 50% * 0.6729138471),
		calc(50% + 50% * 0.5470574289) calc(50% + 50% * 0.6205148503),
		calc(50% + 50% * 0.5139235575) calc(50% + 50% * 0.621226865),
		calc(50% + 50% * 0.5195030774) calc(50% + 50% * 0.6697393318),
		calc(50% + 50% * 0.5534277071) calc(50% + 50% * 0.7617278904),
		calc(50% + 50% * 0.511238643) calc(50% + 50% * 0.7522648189),
		calc(50% + 50% * 0.5060287104) calc(50% + 50% * 0.7973736574),
		calc(50% + 50% * 0.4940181569) calc(50% + 50% * 0.8353390836),
		calc(50% + 50% * 0.4306598981) calc(50% + 50% * 0.7833674465),
		calc(50% + 50% * 0.3944301444) calc(50% + 50% * 0.7741127451),
		calc(50% + 50% * 0.3573785134) calc(50% + 50% * 0.7594679996),
		calc(50% + 50% * 0.3870762327) calc(50% + 50% * 0.8944803974),
		calc(50% + 50% * 0.3485608715) calc(50% + 50% * 0.8803642678),
		calc(50% + 50% * 0.302560042) calc(50% + 50% * 0.8403928464),
		calc(50% + 50% * 0.2567219595) calc(50% + 50% * 0.7901089485),
		calc(50% + 50% * 0.2281560469) calc(50% + 50% * 0.7853182644),
		calc(50% + 50% * 0.2176687373) calc(50% + 50% * 0.8477637593),
		calc(50% + 50% * 0.2170199007) calc(50% + 50% * 0.9708912246),
		calc(50% + 50% * 0.1832891979) calc(50% + 50% * 0.9608356239),
		calc(50% + 50% * 0.1255517744) calc(50% + 50% * 0.7927027055),
		calc(50% + 50% * 0.1164930502) calc(50% + 50% * 0.9221374446),
		calc(50% + 50% * 0.0809144482) calc(50% + 50% * 0.855985451),
		calc(50% + 50% * 0.056796647) calc(50% + 50% * 0.9027568526),
		calc(50% + 50% * 0.0284343252) calc(50% + 50% * 0.9047948984),
		calc(50% + 50% * 0) calc(50% + 50% * 0.8700193907),
		calc(50% + 50% * -0.0268462878) calc(50% + 50% * 0.8542627277),
		calc(50% + 50% * -0.0605325346) calc(50% + 50% * 0.9621370864),
		calc(50% + 50% * -0.0774288218) calc(50% + 50% * 0.819111375),
		calc(50% + 50% * -0.122305824) calc(50% + 50% * 0.9681502867),
		calc(50% + 50% * -0.1303833894) calc(50% + 50% * 0.823208322),
		calc(50% + 50% * -0.1651087096) calc(50% + 50% * 0.8655301664),
		calc(50% + 50% * -0.1746328997) calc(50% + 50% * 0.7812626828),
		calc(50% + 50% * -0.2414310789) calc(50% + 50% * 0.9403119697),
		calc(50% + 50% * -0.2369275823) calc(50% + 50% * 0.8155100873),
		calc(50% + 50% * -0.2920142536) calc(50% + 50% * 0.8987274608),
		calc(50% + 50% * -0.3218846465) calc(50% + 50% * 0.8940690002),
		calc(50% + 50% * -0.344338824) calc(50% + 50% * 0.869700593),
		calc(50% + 50% * -0.3683437596) calc(50% + 50% * 0.8511922063),
		calc(50% + 50% * -0.3720222882) calc(50% + 50% * 0.7905876053),
		calc(50% + 50% * -0.3848755668) calc(50% + 50% * 0.7553608308),
		calc(50% + 50% * -0.420375085) calc(50% + 50% * 0.764659441),
		calc(50% + 50% * -0.4620258301) calc(50% + 50% * 0.7812430134),
		calc(50% + 50% * -0.5161658384) calc(50% + 50% * 0.8133472152),
		calc(50% + 50% * -0.4617763615) calc(50% + 50% * 0.6794832819),
		calc(50% + 50% * -0.5474611858) calc(50% + 50% * 0.7535156782),
		calc(50% + 50% * -0.4929256744) calc(50% + 50% * 0.6354759503),
		calc(50% + 50% * -0.5824659802) calc(50% + 50% * 0.7040804212),
		calc(50% + 50% * -0.6249060595) calc(50% + 50% * 0.7088167887),
		calc(50% + 50% * -0.6173855745) calc(50% + 50% * 0.6574488606),
		calc(50% + 50% * -0.642654614) calc(50% + 50% * 0.642654614),
		calc(50% + 50% * -0.7242258884) calc(50% + 50% * 0.6800933775),
		calc(50% + 50% * -0.7118099967) calc(50% + 50% * 0.6275449273),
		calc(50% + 50% * -0.735211443) calc(50% + 50% * 0.6082198012),
		calc(50% + 50% * -0.6612822347) calc(50% + 50% * 0.5129430805),
		calc(50% + 50% * -0.731829454) calc(50% + 50% * 0.5317052216),
		calc(50% + 50% * -0.6712937155) calc(50% + 50% * 0.456210738),
		calc(50% + 50% * -0.7909799216) calc(50% + 50% * 0.5019711222),
		calc(50% + 50% * -0.7322178385) calc(50% + 50% * 0.4330324226),
		calc(50% + 50% * -0.8142959441) calc(50% + 50% * 0.4476629835),
		calc(50% + 50% * -0.7320889236) calc(50% + 50% * 0.3730179379),
		calc(50% + 50% * -0.7760348067) calc(50% + 50% * 0.365174261),
		calc(50% + 50% * -0.7841229202) calc(50% + 50% * 0.3393202878),
		calc(50% + 50% * -0.8872391531) calc(50% + 50% * 0.3512828312),
		calc(50% + 50% * -0.7976974769) calc(50% + 50% * 0.2871887631),
		calc(50% + 50% * -0.9006947319) calc(50% + 50% * 0.2926534587),
		calc(50% + 50% * -0.9155615323) calc(50% + 50% * 0.2659952141),
		calc(50% + 50% * -0.9265829835) calc(50% + 50% * 0.2379060744),
		calc(50% + 50% * -0.8723904177) calc(50% + 50% * 0.1950023618),
		calc(50% + 50% * -0.7973521976) calc(50% + 50% * 0.1521030665),
		calc(50% + 50% * -0.9193851318) calc(50% + 50% * 0.1456162995),
		calc(50% + 50% * -0.8581526444) calc(50% + 50% * 0.1084098902),
		calc(50% + 50% * -0.8529904497) calc(50% + 50% * 0.0806313372),
		calc(50% + 50% * -0.8463813078) calc(50% + 50% * 0.0532497983),
		calc(50% + 50% * -0.8387054555) calc(50% + 50% * 0.0263573808),
		calc(50% + 50% * -0.8945752597) calc(50% + 50% * 0);
	--sprinkle-size:
		var(--calc-sprinkle-mass) var(--calc-sprinkle-mass), var(--calc-sprinkle-mass) var(--calc-sprinkle-mass),
		var(--calc-sprinkle-mass) var(--calc-sprinkle-mass), var(--calc-sprinkle-mass) var(--calc-sprinkle-mass),
		var(--calc-sprinkle-mass) var(--calc-sprinkle-mass), var(--calc-sprinkle-mass) var(--calc-sprinkle-mass),
		var(--calc-sprinkle-mass) var(--calc-sprinkle-mass), var(--calc-sprinkle-mass) var(--calc-sprinkle-mass),
		var(--calc-sprinkle-mass) var(--calc-sprinkle-mass), var(--calc-sprinkle-mass) var(--calc-sprinkle-mass),
		var(--calc-sprinkle-mass) var(--calc-sprinkle-mass), var(--calc-sprinkle-mass) var(--calc-sprinkle-mass),
		var(--calc-sprinkle-mass) var(--calc-sprinkle-mass), var(--calc-sprinkle-mass) var(--calc-sprinkle-mass),
		var(--calc-sprinkle-mass) var(--calc-sprinkle-mass), var(--calc-sprinkle-mass) var(--calc-sprinkle-mass),
		var(--calc-sprinkle-mass) var(--calc-sprinkle-mass), var(--calc-sprinkle-mass) var(--calc-sprinkle-mass),
		var(--calc-sprinkle-mass) var(--calc-sprinkle-mass), var(--calc-sprinkle-mass) var(--calc-sprinkle-mass),
		var(--calc-sprinkle-mass) var(--calc-sprinkle-mass), var(--calc-sprinkle-mass) var(--calc-sprinkle-mass),
		var(--calc-sprinkle-mass) var(--calc-sprinkle-mass), var(--calc-sprinkle-mass) var(--calc-sprinkle-mass),
		var(--calc-sprinkle-mass) var(--calc-sprinkle-mass), var(--calc-sprinkle-mass) var(--calc-sprinkle-mass),
		var(--calc-sprinkle-mass) var(--calc-sprinkle-mass), var(--calc-sprinkle-mass) var(--calc-sprinkle-mass),
		var(--calc-sprinkle-mass) var(--calc-sprinkle-mass), var(--calc-sprinkle-mass) var(--calc-sprinkle-mass),
		var(--calc-sprinkle-mass) var(--calc-sprinkle-mass), var(--calc-sprinkle-mass) var(--calc-sprinkle-mass),
		var(--calc-sprinkle-mass) var(--calc-sprinkle-mass), var(--calc-sprinkle-mass) var(--calc-sprinkle-mass),
		var(--calc-sprinkle-mass) var(--calc-sprinkle-mass), var(--calc-sprinkle-mass) var(--calc-sprinkle-mass),
		var(--calc-sprinkle-mass) var(--calc-sprinkle-mass), var(--calc-sprinkle-mass) var(--calc-sprinkle-mass),
		var(--calc-sprinkle-mass) var(--calc-sprinkle-mass), var(--calc-sprinkle-mass) var(--calc-sprinkle-mass),
		var(--calc-sprinkle-mass) var(--calc-sprinkle-mass), var(--calc-sprinkle-mass) var(--calc-sprinkle-mass),
		var(--calc-sprinkle-mass) var(--calc-sprinkle-mass), var(--calc-sprinkle-mass) var(--calc-sprinkle-mass),
		var(--calc-sprinkle-mass) var(--calc-sprinkle-mass), var(--calc-sprinkle-mass) var(--calc-sprinkle-mass),
		var(--calc-sprinkle-mass) var(--calc-sprinkle-mass), var(--calc-sprinkle-mass) var(--calc-sprinkle-mass),
		var(--calc-sprinkle-mass) var(--calc-sprinkle-mass), var(--calc-sprinkle-mass) var(--calc-sprinkle-mass),
		var(--calc-sprinkle-mass) var(--calc-sprinkle-mass), var(--calc-sprinkle-mass) var(--calc-sprinkle-mass),
		var(--calc-sprinkle-mass) var(--calc-sprinkle-mass), var(--calc-sprinkle-mass) var(--calc-sprinkle-mass),
		var(--calc-sprinkle-mass) var(--calc-sprinkle-mass), var(--calc-sprinkle-mass) var(--calc-sprinkle-mass),
		var(--calc-sprinkle-mass) var(--calc-sprinkle-mass), var(--calc-sprinkle-mass) var(--calc-sprinkle-mass),
		var(--calc-sprinkle-mass) var(--calc-sprinkle-mass), var(--calc-sprinkle-mass) var(--calc-sprinkle-mass),
		var(--calc-sprinkle-mass) var(--calc-sprinkle-mass), var(--calc-sprinkle-mass) var(--calc-sprinkle-mass),
		var(--calc-sprinkle-mass) var(--calc-sprinkle-mass), var(--calc-sprinkle-mass) var(--calc-sprinkle-mass),
		var(--calc-sprinkle-mass) var(--calc-sprinkle-mass), var(--calc-sprinkle-mass) var(--calc-sprinkle-mass),
		var(--calc-sprinkle-mass) var(--calc-sprinkle-mass), var(--calc-sprinkle-mass) var(--calc-sprinkle-mass),
		var(--calc-sprinkle-mass) var(--calc-sprinkle-mass), var(--calc-sprinkle-mass) var(--calc-sprinkle-mass),
		var(--calc-sprinkle-mass) var(--calc-sprinkle-mass), var(--calc-sprinkle-mass) var(--calc-sprinkle-mass),
		var(--calc-sprinkle-mass) var(--calc-sprinkle-mass), var(--calc-sprinkle-mass) var(--calc-sprinkle-mass),
		var(--calc-sprinkle-mass) var(--calc-sprinkle-mass), var(--calc-sprinkle-mass) var(--calc-sprinkle-mass),
		var(--calc-sprinkle-mass) var(--calc-sprinkle-mass), var(--calc-sprinkle-mass) var(--calc-sprinkle-mass),
		var(--calc-sprinkle-mass) var(--calc-sprinkle-mass), var(--calc-sprinkle-mass) var(--calc-sprinkle-mass),
		var(--calc-sprinkle-mass) var(--calc-sprinkle-mass), var(--calc-sprinkle-mass) var(--calc-sprinkle-mass),
		var(--calc-sprinkle-mass) var(--calc-sprinkle-mass), var(--calc-sprinkle-mass) var(--calc-sprinkle-mass),
		var(--calc-sprinkle-mass) var(--calc-sprinkle-mass), var(--calc-sprinkle-mass) var(--calc-sprinkle-mass),
		var(--calc-sprinkle-mass) var(--calc-sprinkle-mass), var(--calc-sprinkle-mass) var(--calc-sprinkle-mass),
		var(--calc-sprinkle-mass) var(--calc-sprinkle-mass), var(--calc-sprinkle-mass) var(--calc-sprinkle-mass),
		var(--calc-sprinkle-mass) var(--calc-sprinkle-mass), var(--calc-sprinkle-mass) var(--calc-sprinkle-mass),
		var(--calc-sprinkle-mass) var(--calc-sprinkle-mass), var(--calc-sprinkle-mass) var(--calc-sprinkle-mass),
		var(--calc-sprinkle-mass) var(--calc-sprinkle-mass), var(--calc-sprinkle-mass) var(--calc-sprinkle-mass),
		var(--calc-sprinkle-mass) var(--calc-sprinkle-mass), var(--calc-sprinkle-mass) var(--calc-sprinkle-mass),
		var(--calc-sprinkle-mass) var(--calc-sprinkle-mass), var(--calc-sprinkle-mass) var(--calc-sprinkle-mass),
		var(--calc-sprinkle-mass) var(--calc-sprinkle-mass), var(--calc-sprinkle-mass) var(--calc-sprinkle-mass),
		var(--calc-sprinkle-mass) var(--calc-sprinkle-mass), var(--calc-sprinkle-mass) var(--calc-sprinkle-mass),
		var(--calc-sprinkle-mass) var(--calc-sprinkle-mass), var(--calc-sprinkle-mass) var(--calc-sprinkle-mass),
		var(--calc-sprinkle-mass) var(--calc-sprinkle-mass), var(--calc-sprinkle-mass) var(--calc-sprinkle-mass),
		var(--calc-sprinkle-mass) var(--calc-sprinkle-mass), var(--calc-sprinkle-mass) var(--calc-sprinkle-mass),
		var(--calc-sprinkle-mass) var(--calc-sprinkle-mass), var(--calc-sprinkle-mass) var(--calc-sprinkle-mass),
		var(--calc-sprinkle-mass) var(--calc-sprinkle-mass), var(--calc-sprinkle-mass) var(--calc-sprinkle-mass),
		var(--calc-sprinkle-mass) var(--calc-sprinkle-mass), var(--calc-sprinkle-mass) var(--calc-sprinkle-mass),
		var(--calc-sprinkle-mass) var(--calc-sprinkle-mass), var(--calc-sprinkle-mass) var(--calc-sprinkle-mass),
		var(--calc-sprinkle-mass) var(--calc-sprinkle-mass), var(--calc-sprinkle-mass) var(--calc-sprinkle-mass),
		var(--calc-sprinkle-mass) var(--calc-sprinkle-mass), var(--calc-sprinkle-mass) var(--calc-sprinkle-mass),
		var(--calc-sprinkle-mass) var(--calc-sprinkle-mass), var(--calc-sprinkle-mass) var(--calc-sprinkle-mass),
		var(--calc-sprinkle-mass) var(--calc-sprinkle-mass), var(--calc-sprinkle-mass) var(--calc-sprinkle-mass),
		var(--calc-sprinkle-mass) var(--calc-sprinkle-mass), var(--calc-sprinkle-mass) var(--calc-sprinkle-mass),
		var(--calc-sprinkle-mass) var(--calc-sprinkle-mass), var(--calc-sprinkle-mass) var(--calc-sprinkle-mass),
		var(--calc-sprinkle-mass) var(--calc-sprinkle-mass), var(--calc-sprinkle-mass) var(--calc-sprinkle-mass),
		var(--calc-sprinkle-mass) var(--calc-sprinkle-mass), var(--calc-sprinkle-mass) var(--calc-sprinkle-mass),
		var(--calc-sprinkle-mass) var(--calc-sprinkle-mass), var(--calc-sprinkle-mass) var(--calc-sprinkle-mass),
		var(--calc-sprinkle-mass) var(--calc-sprinkle-mass), var(--calc-sprinkle-mass) var(--calc-sprinkle-mass),
		var(--calc-sprinkle-mass) var(--calc-sprinkle-mass), var(--calc-sprinkle-mass) var(--calc-sprinkle-mass),
		var(--calc-sprinkle-mass) var(--calc-sprinkle-mass), var(--calc-sprinkle-mass) var(--calc-sprinkle-mass),
		var(--calc-sprinkle-mass) var(--calc-sprinkle-mass), var(--calc-sprinkle-mass) var(--calc-sprinkle-mass),
		var(--calc-sprinkle-mass) var(--calc-sprinkle-mass), var(--calc-sprinkle-mass) var(--calc-sprinkle-mass),
		var(--calc-sprinkle-mass) var(--calc-sprinkle-mass), var(--calc-sprinkle-mass) var(--calc-sprinkle-mass),
		var(--calc-sprinkle-mass) var(--calc-sprinkle-mass), var(--calc-sprinkle-mass) var(--calc-sprinkle-mass),
		var(--calc-sprinkle-mass) var(--calc-sprinkle-mass), var(--calc-sprinkle-mass) var(--calc-sprinkle-mass),
		var(--calc-sprinkle-mass) var(--calc-sprinkle-mass), var(--calc-sprinkle-mass) var(--calc-sprinkle-mass),
		var(--calc-sprinkle-mass) var(--calc-sprinkle-mass), var(--calc-sprinkle-mass) var(--calc-sprinkle-mass),
		var(--calc-sprinkle-mass) var(--calc-sprinkle-mass), var(--calc-sprinkle-mass) var(--calc-sprinkle-mass),
		var(--calc-sprinkle-mass) var(--calc-sprinkle-mass), var(--calc-sprinkle-mass) var(--calc-sprinkle-mass),
		var(--calc-sprinkle-mass) var(--calc-sprinkle-mass), var(--calc-sprinkle-mass) var(--calc-sprinkle-mass),
		var(--calc-sprinkle-mass) var(--calc-sprinkle-mass), var(--calc-sprinkle-mass) var(--calc-sprinkle-mass),
		var(--calc-sprinkle-mass) var(--calc-sprinkle-mass), var(--calc-sprinkle-mass) var(--calc-sprinkle-mass),
		var(--calc-sprinkle-mass) var(--calc-sprinkle-mass), var(--calc-sprinkle-mass) var(--calc-sprinkle-mass),
		var(--calc-sprinkle-mass) var(--calc-sprinkle-mass), var(--calc-sprinkle-mass) var(--calc-sprinkle-mass),
		var(--calc-sprinkle-mass) var(--calc-sprinkle-mass), var(--calc-sprinkle-mass) var(--calc-sprinkle-mass),
		var(--calc-sprinkle-mass) var(--calc-sprinkle-mass), var(--calc-sprinkle-mass) var(--calc-sprinkle-mass),
		var(--calc-sprinkle-mass) var(--calc-sprinkle-mass), var(--calc-sprinkle-mass) var(--calc-sprinkle-mass),
		var(--calc-sprinkle-mass) var(--calc-sprinkle-mass), var(--calc-sprinkle-mass) var(--calc-sprinkle-mass),
		var(--calc-sprinkle-mass) var(--calc-sprinkle-mass), var(--calc-sprinkle-mass) var(--calc-sprinkle-mass),
		var(--calc-sprinkle-mass) var(--calc-sprinkle-mass), var(--calc-sprinkle-mass) var(--calc-sprinkle-mass),
		var(--calc-sprinkle-mass) var(--calc-sprinkle-mass), var(--calc-sprinkle-mass) var(--calc-sprinkle-mass),
		var(--calc-sprinkle-mass) var(--calc-sprinkle-mass), var(--calc-sprinkle-mass) var(--calc-sprinkle-mass),
		var(--calc-sprinkle-mass) var(--calc-sprinkle-mass), var(--calc-sprinkle-mass) var(--calc-sprinkle-mass),
		var(--calc-sprinkle-mass) var(--calc-sprinkle-mass), var(--calc-sprinkle-mass) var(--calc-sprinkle-mass),
		var(--calc-sprinkle-mass) var(--calc-sprinkle-mass), var(--calc-sprinkle-mass) var(--calc-sprinkle-mass),
		var(--calc-sprinkle-mass) var(--calc-sprinkle-mass), var(--calc-sprinkle-mass) var(--calc-sprinkle-mass),
		var(--calc-sprinkle-mass) var(--calc-sprinkle-mass), var(--calc-sprinkle-mass) var(--calc-sprinkle-mass),
		var(--calc-sprinkle-mass) var(--calc-sprinkle-mass), var(--calc-sprinkle-mass) var(--calc-sprinkle-mass),
		var(--calc-sprinkle-mass) var(--calc-sprinkle-mass), var(--calc-sprinkle-mass) var(--calc-sprinkle-mass);
	background-image: var(--sprinkle-images);
	background-position: var(--sprinkle-points);
	background-size: var(--sprinkle-size);
	background-repeat: no-repeat;
}
.torus,
.torus .side {
	transform-style: preserve-3d;
}
.torus .side {
	--angle: calc((var(--i) / var(--n)) * 1turn);
	position: absolute;
	left: 50%;
	top: 50%;
	width: var(--calc-thickness);
	height: var(--calc-thickness);
	transform: translate(-50%, -50%) rotateZ(var(--angle)) rotateX(calc(var(--y-base, 90) * 1deg))
		translateX(var(--calc-distance));
	box-shadow: var(--outline, var(--default-outline));
	border-radius: 50%;
}
.torus .side::before,
.torus .side::after {
	content: '';
	position: absolute;
	left: 0;
	top: 0;
	width: 100%;
	height: 100%;
	border-radius: 50%;
	padding: var(--calc-border-width);
	transform: scaleX(-1);
	background-color: var(--color, #000);
	background-image:
		var(--glare-images), var(--lights, var(--default-lights)),
		var(--gradient-colors, var(--default-gradient-colors));
	background-position:
		var(--glare-points),
		0 0,
		0 0;
	background-size:
		var(--glare-size),
		100% 100%,
		100% 100%;
	background-repeat: no-repeat;
	mask-image: var(--m-image), var(--m-image);
	-webkit-mask-image: var(--m-image), var(--m-image);
	mask-origin: var(--m-origin);
	-webkit-mask-origin: var(--m-origin);
	mask-clip: var(--m-origin);
	-webkit-mask-clip: var(--m-origin);
	mask-composite: exclude;
	-webkit-mask-composite: destination-out;
}
.torus .side::before {
	transform: translateX(var(--calc-reverse-distance));
}
