:root {
	--tvcasecolour: #303030;
	--tvridgecolour: #222222;
	--tvridgehighlightcolour: #5a5a5a;
	--tvscreencolour: #232933;
	--tvscreengrad1: #5a5a5a;
	--tvscreengrad2: #3c424c;
	--tvexpressioncolour1: #747887;
	--tvexpressioncolour2: #626571;
	
	--tvspeakershadow: #222222;
	--tvspeakerborder1: #242424; /* shadow */
	--tvspeakerborder2: #5a5a5a; /* highlight */
	}

.tvgoeshere {
	display: flex;
	flex-flow: column nowrap;
	justify-content: center;
	align-items: center;
	align-content: center;
	gap: 0;
	
	height: 7.1em;
	width: 9.1em;	
	
	margin-top: var(--marginpara);
	margin-bottom: 1em;
}

.t_right { float: right; margin-left: 0.8em;}
.t_left { float: left; margin-right: 0.8em;}

.tvcase {
	display: flex;
	flex-flow: column nowrap;
	justify-content: flex-start;
	align-items: stretch;
	align-content: stretch;

	padding: 0.55em;
	width: fit-content;

	border-radius: 0.25em;
	background-color: var(--tvcasecolour);
	}
	.tvscreenridge {
		padding: 0.15em;
		border-top-left-radius: 0.6em 0.25em;
		border-top-right-radius: 0.6em 0.25em;
		border-bottom-left-radius: 0.6em 0.25em;
		border-bottom-right-radius: 0.6em 0.25em;
		width: fit-content;
		background-color: var(--tvridgecolour);
		box-shadow: 0px 0px 0.18em inset var(--tvridgehighlightcolour);
	}
	.tvscreen {
		display: flex;
		flex-flow: row nowrap;
		justify-content: center;
		align-items: center;
		align-content: space-around;
	
		height: 6em;
		width: 8em;
		border-top-left-radius: 2em 0.6em;
		border-top-right-radius: 2em 0.6em;
		border-bottom-left-radius: 2em 0.6em;
		border-bottom-right-radius: 2em 0.6em;
		background-color: var(--tvscreencolour);
		background-image:
			radial-gradient(ellipse at top, var(--tvscreengrad1) 30%, transparent),
			radial-gradient(ellipse at center, var(--tvscreengrad2) 50%, transparent);
		}
		.expression {
			font-family: 'julia-mono';
			font-size: 2em;
			color: var(--tvexpressioncolour1);
			text-shadow: 0px 0px 2px var(--tvexpressioncolour2);
			}
			.vrt {
				writing-mode: vertical-rl;
				}
			.rtt:hover {
				transform: rotate(360deg);
				transition: 1s;
				cursor: none;
				}
		
.tvspeakersarea {
	padding: 0.2em 0.3em;
	width: fit-content;
	background-color: var(--tvcasecolour);
	border-radius: 0 0 0.15em 0.15em;
	border-top: 1px solid var(tvspeakershadow);
}
	.tvspeakers {
	height: 0.5em;
	width: 8.2em;
	background-image: linear-gradient(to right, var(--tvspeakershadow) 15%, transparent 25% 75%, var(--tvspeakershadow) 85%);

	border-left: 2px solid var(--tvspeakerborder2);
	border-right: 2px solid var(--tvspeakerborder2);
	border-top: 1px solid var(--tvspeakerborder1);
	border-bottom: 1px solid var(--tvspeakerborder2);
	}

.tvstand {
	height: 0.2em;
	width: 7.8em;
	background-color: var(--tvcasecolour);
	}