.crt { margin: 1rem 0 1rem; border-radius: var(--rounded-corner); background: radial-gradient(rgba(0, 0, 0, 0.7), rgba(0, 0, 0, 0.85)), var(--primary-color); box-shadow: 0 0 0 1px var(--primary-color-alpha), 0 2px 6px 2px var(--primary-color-alpha), 0 4px 24px 4px var(--primary-color-alpha); pre { color: var(--primary-color); padding: 1rem 1rem; text-shadow: var(--primary-color-alpha) 0 0 4px, var(--primary-color) 0 0 12px; // Unset some
 stuff
		background-color: unset;
		box-shadow: unset;
		margin: unset;
		animation: flicker 250ms alternate infinite;

		@keyframes flicker {
			from {
				opacity: 1;
			}

			25% {
				opacity: 0.95;
			}

			50% {
				opacity: 0.85;
			}

			75% {
				opacity: 1;
			}

			to {
				opacity: 0.9;
			}
		}

		@media (prefers-reduced-motion) {
			animation: none;
		}
	}
}

.scanlines {
	position: relative;
	overflow: hidden;

	&::before {
		animation: scanlines 250ms linear infinite;
		background: repeating-linear-gradient(to top, rgba(0, 0, 0, 0.25), rgba(0, 0, 0, 0.25) 1px, transparent 3px, transparent 4px);
		content: "";
		display: block;
		height: calc(100% + 0.5rem);
		left: 0;
		pointer-events: none;
		position: absolute;
		top: 0;
		width: 100%;
		z-index: 1;

		@keyframes scanlines {
			from {
				transform: translateY(-0.5rem);
			}

			to {
				transform: translateY(0);
			}
		}

		@media (prefers-reduced-motion) {
			animation: none;
		}
	}

	&::after {
		animation: scanline 5s linear infinite;
		background: linear-gradient(to top, transparent 0%, var(--primary-color-alpha) 10%, transparent 100%);
		bottom: 100%;
		content: "";
		display: block;
		height: 8rem;
		left: 0;
		pointer-events: none;
		position: absolute;
		width: 100%;

		@keyframes scanline {
			from {
				bottom: 100%;
			}

			50% {
				bottom: 100%;
			}

			to {
				bottom: -8rem;
			}
		}

		@media (prefers-reduced-motion) {
			animation: none;
		}
	}
}

.cursor {
	animation: cursor-blink 1s infinite;

	@keyframes cursor-blink {
		from {
			opacity: 1;
		}

		50% {
			opacity: 0;
		}

		75% {
			opacity: 1;
		}
	}

	@media (prefers-reduced-motion) {
		animation: none;
	}
}