* {
	font-family: 'Helvetica' !important;
	/* 'Helvetica'; */
	/* font-family: 'Segoe UI'; */
}

html, body {
	overflow-x: hidden;
}

body {
	padding-bottom: 120px;
	padding-left: 10px;
	padding-right: 15px;
}

#navbar {
	list-style-type: none;
	margin: 0;
	padding-top: 3px;
	padding-left: 20px;
	padding-bottom: 6px;
	color: black;
	background-color:  white;
	position: fixed;
	top: 0;
	left: -10px;
	width: 100%;
	z-index: 5;
	border-bottom-style: solid;
	border-bottom-width: 1px;
	border-color: lightgrey;
}

#navbar li {
	display: inline;
}


/* Hyperlinks */
a {
  color: #5c96da;
}

#logo {
	width: 35px;
	position: relative;
	bottom: -5px;
}

#beta {
	color: white;
	font-size: 10px;
	margin-left: 3px;
	padding-left: 2px;
	padding-right: 2px;
	padding-top: 1px;
	position: relative;
	top: -15px;
	left: -5px;
	border-radius: 2px;
	background-image: linear-gradient(to right, magenta, purple);;
}

#messages, #message, div {
	font-size: 16px !important;
	/* font-family: 'Segoe UI'; */
}
#messages {
	height: auto;
	width: 100%;
	word-break: normal;
	white-space: pre-line;
	overflow-y: auto;
	padding-left: 10px;
	padding-right: 25px;
	overflow-wrap: break-word;
	overflow: visible; /* For hover tooltips */
	word-spacing: 1px;
	/* line-height: 0.8; */
}

#message {
	resize: none;
	position: fixed;
	bottom: 50px; left: 30px;
	border: none; outline: none;
	height: auto; width: calc(100% - 70px);;
}

#input_area {
	height: 115px;
	position:fixed;
	left: 10px;
	bottom: 10px;
	right: 10px;
	border-radius: 20px; /* 12px */
	border: 1px solid #555769;
	background-color: white;
}

#bottom_box {
	height: 125px;
	position:fixed;
	left: 0px;
	bottom: 0px;
	right: 0px;
	background-color: white;
}

#toBottom {
	z-index: 5;
	position: fixed;
	width: 30px;
	height: 30px;
	text-align: center;
	left: calc(50% - 30px);;
	right: calc(50% - 30px);;
	bottom: 132px;
	background-color: #b9b9b9;
	border: none;
	border-radius: 20px;
	opacity: 0;
	transition: opacity 0.3s;
}
.toBottomImg {
	position: fixed;
	left: calc(50% - 27.4px);;
	bottom: 133.5px;
}

img.toBottomImg {
  width: 25px;
}

#status {
	height: 20px;
	position:fixed;
	left: calc(50% - 120px);;
	bottom: 20px;
	right: calc(50% - 120px);;
	text-align: center;
	z-index: 1;
	white-space: nowrap;
}

#messageStatus {
	position: relative;
	margin-left: 10px;
}

img {
  width: 18px; /* 20px */
}

pre {
  word-wrap: break-word;
  white-space: pre-wrap;
}

.loader {
  border: 3px solid #f3f3f3; /* Light grey */
  border-top: 3px solid #04AA6D;
  border-radius: 50%;
  width: 15px;
  height: 15px;
  animation: spin 2s linear infinite;
}

@keyframes spin {
  0% { transform: rotate(0deg); }
  100% { transform: rotate(360deg); }
}

/* ------------------------------------------------- */

/* Buttons */

#send, #regen {
	position: fixed;
	bottom: 20px; right: 30px;
	background-color: #04AA6D;
	border: none;
	border-radius: 7px; /* 3px; */
	color: white;
	padding: 4px 12px;
	z-index: 2;
}

#regen {
	right: 90px;
	color: white;
	padding: 3px 3px;
	border-radius: 10px; /* 8px; */
	font-size: 0px;
}

#reconButton {
	background-color: #04AA6D;
	border: none;
	border-radius: 7px;
	color: white;
	padding: 3px 5px;
	z-index: 2;
	margin-left: 5px;
}

#send:disabled, #regen:disabled, #reconButton:disabled {
  background-color: dimgrey;
  color: linen;
  opacity: 1;
}

#send:hover:enabled, #regen:hover:enabled, #reconButton:hover:enabled {
	background-color: #17c37c;
}

.usrMsgButtons {
	flex-direction: row-reverse;
}

button.features {
	resize: none;
	border-radius: 8px;
	border: none;
	background-color: #e6e6e6;
	color: black;
	padding: 5px 10px 3px 10px ;
}

button.features:hover {
	background-color: #f3f3f3;
}

button.tooltip, button.tooltip2, button.tooltip3, button#theme, button#knowledge {
	resize: none;
	border-radius: 8px;
	border: none;
	background-color: white;
	color: dimgrey;
	padding: 5px 5px;
	font-size: 0px;
}

button.tooltip:hover, button.tooltip2:hover, button.tooltip3:hover, #toBottom:hover, button#theme:hover, button#knowledge:hover {
	background-color: lightgrey;
}

/* Msg Buttons */
.tooltip, .tooltip2, .tooltip3 {
  position: relative;
  float: left;
}

#msgButtons {
	position: relative;
	bottom: 25px;
}

/* Thumb Up/Down Buttons */
.tooltip2, .tooltip3 {
  margin-left: 3px;
}

.tooltiptext, .tooltiptext2, .tooltiptext3, .tooltiptext4{
  font-size: 14px;
  visibility: hidden;
  width: 50px;
  background-color: #555;
  color: #fff;
  text-align: center;
  border-radius: 6px;
  padding: 5px;
  position: absolute;
  z-index: 1;
  top: 120%;
  left: 50%;
  margin-left: -30px;
  opacity: 0;
  transition: opacity 0.3s;
}

 /* Theme Button */
#theme {
	position: fixed;
	top: 13px;
	right: 20px;
	z-index: 5;
}

#knowledge {
	position: fixed;
	top: 13px;
	right: 55px;
	z-index: 5;
}

button#knowledge .tooltiptext2  {
	width: 75px;
	margin-left: -45px;
}

button#theme, button#knowledge {
	background-color: white;
}

button#regen .tooltiptext4 {
	top: -130%;
}

.tooltip:hover .tooltiptext, .tooltip2:hover .tooltiptext2, .tooltip3:hover .tooltiptext3, .tooltip4:hover .tooltiptext4 {
  visibility: visible;
  opacity: 1;
}

/* ------------------------------------------------- */

/* User Message */
div.usrAgent {
	height: auto;
	display: flex;
	flex-direction: row-reverse;
}

p.usrAgent {
	background-color: lightgrey;
	border-radius: 12px;
	color: black;
	right: 25px;
	padding-right: 12px;
	padding-left: 12px;
	padding-top: 7px;
	padding-bottom: 7px;
	margin-right: 20px;
	max-width: 90%;
	overflow-wrap: break-word;
	height: auto;
	word-spacing: 0px;
}

button.usrAgent {
	position: relative;
	float: right;
	right: 25px;
}

/* AI Message */
div.aiAgent {
	max-width: 90%;
	margin-top: 7px;
	margin-bottom: 7px;
}

/* ------------------------------------------------- */

 /* Themes */
 
.darkTheme, .darkTheme #bottom_box, .darkTheme #input_area {
	background-color: #202123;
}

.darkTheme button.tooltip, .darkTheme button.tooltip2, .darkTheme button.tooltip3 {
	background-color: #202123;
}

.darkTheme #navbar, .darkTheme #message, .darkTheme #messages, .darkTheme #status, .darkTheme #messageStatus, .darkTheme #theme, .darkTheme button#knowledge {
	background-color: #202123;
	color: white;
}

.darkTheme #navbar {
	border-color: #666666;
}

.darkTheme #theme img {
	filter: invert(100%);
}

.darkTheme p.usrAgent {
	background-color: #38383B;
	color: white;
}

.darkTheme button.tooltip:hover, .darkTheme button.tooltip2:hover, .darkTheme button.tooltip3:hover, .darkTheme #theme:hover, .darkTheme button#knowledge:hover {
	background-color: #383838;
}

.darkTheme button.features {
	background-color: #38383B;
	color: white;
}

.darkTheme button.features:hover {
	background-color: #434548;
}

.darkTheme .loader {
  border: 3px solid dimgrey;
  border-top: 3px solid #04AA6D;
}