.A1 {
	margin-bottom: -1.5vmin;
}
.A2 {
	text-align: left;
}
.A3 {
	text-transform:lowercase;
}
.A4 {
	font-size: 2vmin;
}
.A5 {
	min-width: 0; 
	max-width: fit-content;
}
.A6 {
	list-style-type: none;
}
.A7 {
	padding-right: 2vmin;
}
.A8 {
	width: 100%;
}
.A9 {
	width: 90%; 
	vertical-align: middle;
}
.A10 {
	/*width: 10%; 
	above is a possible problem solver or marker
	it was removed in order to work well with A46
	which calculates the width of what is typically 
	to the left of this element (thus pushing this 
	element to the right).  If it breaks anything,
	this solution may need to be changed. 
	dqb - 20230824 */
	text-align:right; 
	margin-bottom: 0; 
	margin-right: 1vmin; 
	vertical-align: middle;
}
.A11 {
	width: 100%; 
	text-align:right; 
	vertical-align: middle;
}
.A12 {
	margin-right: 1vmin; 
	margin-bottom: 0;
}
.A13 {
	width: 100%; 
	text-align: right; 
	margin-right: 0;
}
.A14 {
	text-align:left; 
	box-sizing: border-box;
	width: 100%; 
	height: 15vmin; 
}
.A15 {
	background-color: transparent;
}
.A16 {
	text-align: right;
}
.A17 {
	margin-right: 1vmin; 
	margin-bottom: 0;
}
.A18 {
	margin-left: 1vmin;
}
.A19 {
	margin-top: 0;
}
.A20 {
	background-color: #6a85c4;
	color: white;
}
.A21 {
	background-color: rgba(245,81,80,1);
	font-weight: 600;
	color: white;
}
.A22 {
	width: 100px;
}
.A23 {
	animation: colorSlide 3s forwards;
}
.A24 {
	background-color: rgba(201,210,230,1);
	font-weight: 600;
	color: black;
}
.A25 {
	font-weight: 100; 
	font-size: 2vmin; 
	padding: 0.5vmin 5vmin 1vmin 5vmin; 
	margin: 0vmin -5vmin; 
	line-height: 2.6vmin; 
	color: black; 
}
.A26 {
	background-color: rgba(48,203,41,1); 
	border-right: 1px solid rgba(140,140,140,1);
}
.A27 {
	background-color: white; 
	border-right: 1px solid rgba(140,140,140,1);
}
.A28 {
	background-color: rgba(246,176,36,1); 
	border-right: 1px solid rgba(140,140,140,1);
}
.A29 {
	min-width: 0; 
	max-width: fit-content;
}
.A30 {
	margin-bottom: 0;
}
.A31 {
	width: fit-content; 
	margin-top: -1vmin; 
	padding-top: 0; 
	padding-bottom: 0;
}
.A32 {
	width: 60%;
}
.A33 {
	width: fit-content; 
	margin-top: 0; 
	padding-top: 0; 
	margin-bottom: 0; 
	padding-bottom: 0;
}
.A34 {
	width: 10%; 
	text-align: right; 
	padding-right: 2vmin; 
	font-variant-numeric: tabular-nums;
}
.A35 {
	width: 30%;
}
.A36 {
	width: 100px;
}
.A37 {
	width: fit-content; 
	color: gray;
}
.A38 {
	margin-top: -2vmin; 
	width: fit-content; 
	min-width: 0;
}
.A39 {
	margin-top: 2vmin; 
	margin-bottom: 2vmin; 
	text-align: center;
}
.A40 {
	margin-top: 0.25vmin; 
	width: fit-content; 
	min-width: 0;
}
.A41 {
	width: 100%;
}
.A42 {
	width: 90%; 
	vertical-align: middle;
}
.A43 {
	width: 10%; 
	text-align:right; 
	margin-bottom: 0; 
	margin-right: 1vmin; 
	vertical-align: middle;
/*	this class is identical to A10 and because of the
	width element, may be causing some spacing issues
	see note on A10
	dqb - 20230824*/
}
.A44 {
	width: 100%; 
	text-align:right; 
	vertical-align: middle;
}
.A45 {
	font-variant-numeric: tabular-nums;
	text-transform: full-width;
  	letter-spacing: .0em;
}
.A46 {
	width: calc(100% - 3vmin);
}
.formula {
	padding: 3vmin;
	display: block;
	text-align: left;
	overflow-x: scroll
}
.formulaW {
	font-variant-numeric: tabular-nums;
	text-transform: full-width;
  	letter-spacing: .0em;
  	margin-left: 3vmin;
  	display: inline-block;
  	width: 2vmin;
}
.formulaWA {
	font-variant-numeric: tabular-nums;
	text-transform: full-width;
  	letter-spacing: .0em;
  	margin-left: 3vmin;
  	display: inline-block;
  	width: 3vmin;
}
.formulaW2 {
	display: inline-block;
  	width: 1vmin;
  	margin-right: 1vmin;
}
.formulaWS {
	font-size: 1.75vmin;
	line-height: 2vmin;
	display: block;
	margin-left: 5vmin;
	margin-bottom: 4vmin;


}
.rheader {
	width: 5vmin;
	text-align: left;
	padding-left: 0.5vmin;
}
.go-to-stats {
	cursor: pointer;
}
.go-to-info {
	cursor: pointer;
	width: fit-content;
}
.go-to-info-inline {
	cursor: pointer;
	width: 4vmin;
	display: inline-block;
	text-align: center;
}
.center {
	text-align: center;
}
.pointer {
	cursor: pointer;
}
.defaultCursor {
	cursor: default;
}
.lightGreen {
	color:#89df86;
}
.lightOrange {
	color: #f8cc7d;
}
.graytc {
	color: gray;
}
.qrcode_fullscreen {
	display: flex;
	align-items: center;
	justify-content: center;
	height: 100vh;
	width: 100vw;
	background-color: rgba(0, 0, 0, 1); /* Optional: add a semi-transparent black background */
	color: white;
	text-align: right;
	font-size: 2vmin;
}
/*.qrcode_fullscreen svg {
    width: 80vmin;
}*/

.qrcode_holder {
	width: 70vmin;
}

.qrcode_holder svg {
    width: 100%;
    height: 100%;
    margin: 0;
    padding: 0;
}

.exit_button {
	position: absolute;
	bottom: 5vmin;
	right: 5vmin;
	color: black;
}

.welcome_back_wrapper {
	position: fixed;
	width: 100vw;
	height: 115vh;
	top: 0;
	left: 0;
	z-index: 500;
	background-color: rgba(256,256,256,1);
}

.welcome_wrapper {
  	width: 100vw;
  	height: 120vh;
  	top: -10vh;
  	left: 0;
  	overflow: hidden;
  	color: black;
  	text-align: center;
	vertical-align: middle;
  	display: flex;
  	align-items: center;
  	justify-content: center;
  	z-index: 1000;
  	text-align: center;
}

.welcome_text {
	font-size: 15vmin;
	font-weight: 100;
	line-height: 10vmin;
	background: linear-gradient(60deg, rgba(82,114,187,1) 100%, rgba(141,162,208,1) 0%);;
  	-webkit-background-clip: text;
  	background-clip: text;
  	color: transparent;
  	z-index: 2000;
  	margin-bottom: 20vmin;
}

.welcome_subline {
	font-size: 4vmin;
	font-weight: 100;
}

.speech-bubble {
  	position: absolute;
  	background-image: url('../speech-bubble-right.svg');
  	background-size: 100% 100%;
  	background-repeat: no-repeat;
  	z-index: 100;
  	text-align: center;
  	display: flex;
  	justify-content: center;
  	align-items: center;
  	color: #DBDADA;
  	font-weight: 600;
  	border: none;
  	text-align: center;
  	vertical-align: middle;
  	display: flex;
  	align-items: center;
  	justify-content: center;
}

#language-menu {
  position: fixed;
  bottom: 1.5vmin;
  right: -12vmin;
  width: 8vmin;
  background-color: rgba(0, 0, 0, 0.4);
  padding: 10px;
  border-radius: 1vmin 0 0 1vmin;
  transition: right 0.5s ease;
  z-index: 4000;
}

#language-menu.shown {
  right: 0vmin;
}

#language-menu.hidden {
  right: -12vmin;
}

#toggle-button {
  position: fixed;
  bottom: 1vmin;
  right: 1vmin;
  font-weight: 100;
  background-color: rgba(0, 0, 0, 0.4);
  color: #fff;
  padding: 1vmin;
  border-radius: 50%;
  cursor: pointer;
  transition: bottom 0.5s ease;
  z-index: 4000;
}

#toggle-button.lower {
  bottom: 1vmin;
}

#toggle-button.higher {
  bottom: 8vmin;
}

.image_holder {
	display: flex;
	justify-content: center;

}
.more_info {
	width: 45vmin;
}
.more_info_double {
	width: 35vmin;
	max-width: 50%;
}
.big {
	font-size: 5vmin;
	line-height: 6vmin;
}
