/* Stella's original ✦ glyph and launcher colours, wrapped in CSS-only decoration. */
.stella-orbit-logo {
	--stella-logo-size: 56px;
	display: inline-grid;
	place-items: center;
	position: relative;
	isolation: isolate;
	flex: 0 0 auto;
	width: calc(var(--stella-logo-size) * 1.8);
	height: calc(var(--stella-logo-size) * 1.8);
	vertical-align: middle;
	color: #fff;
	font-family: "Montserrat", "Avenir Next", system-ui, sans-serif;
	font-weight: 400;
	font-style: normal;
	line-height: 1;
	letter-spacing: normal;
	pointer-events: none;
	user-select: none;
}
.stella-orbit-logo--small { --stella-logo-size: 32px; }
.stella-orbit-logo--medium { --stella-logo-size: 56px; }
.stella-orbit-logo--large { --stella-logo-size: 120px; }
.stella-orbit-logo,
.stella-orbit-logo * { box-sizing: border-box; }
.stella-orbit-logo .stella-orbit-logo__disc {
	position: relative;
	z-index: 1;
	display: grid;
	place-items: center;
	width: var(--stella-logo-size);
	height: var(--stella-logo-size);
	overflow: hidden;
	border: 1px solid rgba(255, 105, 105, .75);
	border-radius: 50%;
	color: #fff;
	background: linear-gradient(145deg, rgba(224, 32, 31, .95), rgba(118, 21, 26, .95));
	box-shadow: 0 calc(var(--stella-logo-size) * .178571) calc(var(--stella-logo-size) * .535714) rgba(0, 0, 0, .4), 0 0 calc(var(--stella-logo-size) * .428571) rgba(255, 59, 59, .3);
}
.stella-orbit-logo .stella-orbit-logo__star {
	position: relative;
	z-index: 2;
	display: block;
	font-size: calc(var(--stella-logo-size) * .392857);
	text-shadow: 0 0 calc(var(--stella-logo-size) * .214286) rgba(255, 255, 255, .5);
}
.stella-orbit-logo .stella-orbit-logo__halo {
	position: absolute;
	width: calc(var(--stella-logo-size) * 1.5);
	height: calc(var(--stella-logo-size) * 1.5);
	border-radius: 50%;
	background: radial-gradient(circle, rgba(255, 245, 241, .13), rgba(224, 32, 31, .09) 45%, transparent 70%);
	opacity: .45;
}
.stella-orbit-logo .stella-orbit-logo__dust,
.stella-orbit-logo .stella-orbit-logo__spark {
	position: absolute;
	width: calc(var(--stella-logo-size) * .015);
	height: calc(var(--stella-logo-size) * .015);
	border-radius: 50%;
	background: #fff;
	opacity: .1;
}
.stella-orbit-logo .stella-orbit-logo__dust--1 { left: 20%; top: 29%; --dust-time: 11s; --dust-delay: -3s; }
.stella-orbit-logo .stella-orbit-logo__dust--2 { left: 72%; top: 22%; --dust-time: 15s; --dust-delay: -9s; background: #ffd5d4; }
.stella-orbit-logo .stella-orbit-logo__dust--3 { left: 81%; top: 63%; --dust-time: 13s; --dust-delay: -5s; width: calc(var(--stella-logo-size) * .021); height: calc(var(--stella-logo-size) * .021); }
.stella-orbit-logo .stella-orbit-logo__dust--4 { left: 29%; top: 76%; --dust-time: 17s; --dust-delay: -12s; background: #ffd5d4; }
.stella-orbit-logo .stella-orbit-logo__dust--5 { left: 17%; top: 55%; --dust-time: 14s; --dust-delay: -7s; }
.stella-orbit-logo .stella-orbit-logo__dust--6 { left: 62%; top: 83%; --dust-time: 19s; --dust-delay: -15s; width: calc(var(--stella-logo-size) * .01); height: calc(var(--stella-logo-size) * .01); }
.stella-orbit-logo .stella-orbit-logo__orbit {
	position: absolute;
	inset: 0;
	z-index: 2;
	transform: rotate(var(--orbit-start));
}
.stella-orbit-logo .stella-orbit-logo__orbit--1 { --orbit-radius: .67; --orbit-time: 42s; --orbit-start: 24deg; --note-alpha: .48; --note-time: 13s; }
.stella-orbit-logo .stella-orbit-logo__orbit--2 { --orbit-radius: .76; --orbit-time: 57s; --orbit-start: 129deg; --note-alpha: .35; --note-time: 17s; }
.stella-orbit-logo .stella-orbit-logo__orbit--3 { --orbit-radius: .70; --orbit-time: 49s; --orbit-start: 221deg; --note-alpha: .4; --note-time: 19s; }
.stella-orbit-logo .stella-orbit-logo__orbit--4 { --orbit-radius: .79; --orbit-time: 68s; --orbit-start: 302deg; --note-alpha: .3; --note-time: 23s; }
.stella-orbit-logo .stella-orbit-logo__note {
	position: absolute;
	left: 50%;
	top: calc(50% - var(--stella-logo-size) * var(--orbit-radius));
	display: block;
	font-size: calc(var(--stella-logo-size) * .105);
	color: #efd2cf;
	opacity: var(--note-alpha);
	transform: translate(-50%, -50%) rotate(calc(-1 * var(--orbit-start)));
}
.stella-orbit-logo .stella-orbit-logo__spark { z-index: 2; width: calc(var(--stella-logo-size) * .018); height: calc(var(--stella-logo-size) * .018); }
.stella-orbit-logo .stella-orbit-logo__spark--1 { left: 78%; top: 38%; --spark-time: 17s; --spark-delay: -2s; --spark-x: .06; --spark-y: -.07; }
.stella-orbit-logo .stella-orbit-logo__spark--2 { left: 28%; top: 76%; --spark-time: 23s; --spark-delay: -12s; --spark-x: -.05; --spark-y: .07; background: #ffd5d4; }
.stella-orbit-logo .stella-orbit-logo__spark--3 { left: 24%; top: 29%; --spark-time: 29s; --spark-delay: -19s; --spark-x: -.06; --spark-y: -.04; }
.stella-orbit-logo.is-animated .stella-orbit-logo__star { animation: stella-logo-breathe 7s ease-in-out infinite; }
.stella-orbit-logo.is-animated .stella-orbit-logo__halo { animation: stella-logo-halo 9s ease-in-out infinite; }
.stella-orbit-logo.is-animated .stella-orbit-logo__dust { animation: stella-logo-dust var(--dust-time) ease-in-out var(--dust-delay) infinite; }
.stella-orbit-logo.is-animated .stella-orbit-logo__orbit { animation: stella-logo-orbit var(--orbit-time) linear infinite; }
.stella-orbit-logo.is-animated .stella-orbit-logo__note { animation: stella-logo-note-turn var(--orbit-time) linear infinite, stella-logo-note-fade var(--note-time) ease-in-out infinite; }
.stella-orbit-logo.is-animated .stella-orbit-logo__spark { animation: stella-logo-spark var(--spark-time) ease-in-out var(--spark-delay) infinite; }
@keyframes stella-logo-breathe { 0%, 100% { transform: scale(1); opacity: .96; } 50% { transform: scale(1.025); opacity: 1; } }
@keyframes stella-logo-halo { 0%, 100% { transform: scale(.98); opacity: .35; } 50% { transform: scale(1.03); opacity: .55; } }
@keyframes stella-logo-dust { 0%, 100% { transform: translate(0, 0); opacity: .06; } 50% { transform: translate(calc(var(--stella-logo-size) * .025), calc(var(--stella-logo-size) * -.035)); opacity: .24; } }
@keyframes stella-logo-orbit { from { transform: rotate(var(--orbit-start)); } to { transform: rotate(calc(var(--orbit-start) + 360deg)); } }
@keyframes stella-logo-note-turn { from { transform: translate(-50%, -50%) rotate(calc(-1 * var(--orbit-start))); } to { transform: translate(-50%, -50%) rotate(calc(-1 * var(--orbit-start) - 360deg)); } }
@keyframes stella-logo-note-fade { 0%, 100% { opacity: var(--note-alpha); } 50% { opacity: .14; } }
@keyframes stella-logo-spark { 0%, 65%, 100% { transform: translate(0, 0); opacity: 0; } 75% { opacity: .22; } 92% { transform: translate(calc(var(--stella-logo-size) * var(--spark-x)), calc(var(--stella-logo-size) * var(--spark-y))); opacity: 0; } }
@media (prefers-reduced-motion: reduce) {
	.stella-orbit-logo.is-animated .stella-orbit-logo__star { animation: none; transform: none; opacity: 1; }
	.stella-orbit-logo.is-animated .stella-orbit-logo__halo,
	.stella-orbit-logo.is-animated .stella-orbit-logo__dust,
	.stella-orbit-logo.is-animated .stella-orbit-logo__orbit,
	.stella-orbit-logo.is-animated .stella-orbit-logo__note,
	.stella-orbit-logo.is-animated .stella-orbit-logo__spark { animation: none; display: none; }
}
