/* RNBO.css */
body {
	font-family: var(--local-font-family);
	color: rgb(var(--local-font-color));
	accent-color: rgb(var(--local-accent-color));
	background-color: rgb(var(--local-bg-color));
}
h1 {
	/* @apply text-4xl p-2 m-2 font-bold; */
	font-size: 2.25rem; /* 36px */
	line-height: 2.5rem; /* 40px */
	font-weight: 700;
	padding: 0.5rem;
	margin: 0.5rem;
}
h2 {
	/* @apply text-2xl p-2 m-2 font-bold; */
	font-size: 1.5rem; /* 24px */
	line-height: 2rem; /* 32px */
	font-weight: 700;
	padding: 0.5rem;
	margin: 0.5rem;
}
.RNBOtext {
	/* @apply p-2 m-2; */
	padding-top: 0.5rem;
	padding-bottom: 0.5rem;
	margin-top: 0.5rem;
	margin-bottom: 0.5rem;
}
.RNBOsection {
	box-shadow: 0 0 0.1rem rgba(0, 0, 0, 0.5);
	padding: 1rem;
	margin: 1rem;
	border-radius: var(--local-rounded-container);
	background-image: linear-gradient(rgb(0 0 0/5%) 0 0);
}
.RNBOcomponent {
	/* @apply p-2 m-2; */
	padding: 1rem;
	margin: 1rem;
}
.RNBOsubcomponent {
	/* @apply p-2 m-2; */
	padding-top: 0.5rem;
	padding-bottom: 0.5rem;
	margin-top: 0.5rem;
	margin-bottom: 0.5rem;
}
.RNBOtag {
	/* @apply font-bold; */
	font-weight: 700;
	padding-top: 0.25rem;
	padding-bottom: 0.25rem;
	margin-top: 0.25rem;
	margin-bottom: 0.25rem;
}
.RNBOval {
	/* @apply text-xs; */
	font-size: 0.75rem; /* 12px */
	line-height: 1rem; /* 16px */
}
.RNBOalign {
	/* @apply flex justify-between items-center  */
	display: flex;
	justify-content: space-between;
	align-items: center;
	padding-top: 0.5rem;
	padding-bottom: 0.5rem;
	margin-top: 0.5rem;
	margin-bottom: 0.5rem;
}
.RNBOslider {
	width: 100%;
	cursor: pointer;
	/* transition: var(--local-animation) var(--local-animation-duration); */
	/* transition-timing-function: var(--local-animation-function); */
}
.RNBOplaceholder {
	background-color: rgba(var(--local-surface-color), 0.2);
	border-radius: var(--local-rounded-base);
	height: 2rem;
	padding: 0.5rem;
	margin: 0.5rem;
	animation: pulse 1.5s cubic-bezier(0.4, 0, 0.6, 1) infinite;
}

@keyframes pulse {
	0%,
	100% {
		opacity: 1;
	}
	50% {
		opacity: 0.5;
	}
}
:root {
	/* =~= Theme Properties =~= */
	--local-font-family: var(--theme-font-family, system-ui);
	/* --theme-font-color-dark: 255 255 255; */
	--local-rounded-base: var(--theme-rounded-base, 20px);
	--local-rounded-container: var(--theme-rounded-container, 6px);
	--local-border-base: var(--theme-border-base, 1px);
	/* =~= Color Properties =~= */
	--local-accent-color: var(--theme-accent-color, 39, 145, 142);
	--local-surface-color: var(--theme-surface-color, 38, 38, 38);
	--local-bg-color: var(--theme-bg-color, 255, 255, 255);
	--local-font-color: var(--theme-font-color-base, 38, 38, 38);
	/* =~= Animation Properties =~= */
	--local-animation-duration: var(--theme-animation-duration, 0.1s);
	--local-animation: var(--theme-animation, all);
	--local-animation-function: var(--theme-animation-function, ease-out);
}
