/*
  Avoid hardcoding colors, fonts, etc.
	Use variables instead.
	https://picocss.com/docs/css-variables
*/

body {
	max-width: 1200px;
	margin: 0 auto;
}

body.chat-page {
	height: 100vh;
	display: flex;
}

.token-counter {
	background-color: var(--secondary);
	padding: 10px;
	border-radius: var(--border-radius);
	box-shadow: var(--card-box-shadow);
}

.chat-container {
	max-width: 1200px;
	margin: 0 auto;
	padding: 20px;
	flex: 1;
	display: flex;
	flex-direction: column;
	min-height: 0;
}

.messages-list {
	flex: 1;
	overflow-y: auto;
	border: 1px solid var(--primary);
	border-radius: 8px;
	padding: 20px;
	margin-bottom: 20px;
}

.message {
	display: flex;
	align-items: start;
	gap: 12px;
	margin-top: 0;
	margin-bottom: 1rem;
	border: none !important;
	padding: 0 !important;
	box-shadow: none !important;
}

.message-avatar {
	width: 35px;
	height: 35px;
	margin: 5px;
	border-radius: 50%;
	display: flex;
	align-items: center;
	justify-content: center;
	flex-shrink: 0;
	font-weight: bold;
}

.ai-message .message-avatar {
	background: var(--secondary);
}

.user-message .message-avatar {
	background: var(--primary);
}

.message-content {
	padding: 8px 0;
	max-width: 70%;
}

.message p {
	margin: 0;
}

.message-form {
	flex-shrink: 0;
	display: grid;
	grid-template-columns: 1fr auto;
	gap: 10px;
	margin-bottom: 0;
}

.message-content pre {
	background: var(--code-background-color);
	padding: 12px;
	border-radius: 6px;
	margin: 8px 0;
	overflow-x: auto;
}

.message-content code {
	background: none;
	padding: 0;
	margin: 0;
	border: none;
}

.site-header {
	display: flex;
	justify-content: space-between;
	align-items: center;
	margin-bottom: 20px;
}

.site-header h1 {
	margin: 0;
}

.header-nav {
	display: flex;
	gap: 20px;
}

.header-nav a {
	text-decoration: none;
	color: var(--primary);
}

.header-nav a:hover {
	text-decoration: underline;
}

main.chat-container {
	padding: 20px 20px 30px 20px;
}

.header-brand {
	display: flex;
	align-items: center;
	gap: 12px;
}

.header-logo {
	width: 48px;
	height: 48px;
	object-fit: contain;
	border-radius: 50%;
}

.send-button {
	display: flex;
	align-items: center;
	gap: 8px;
}

.send-button i {
	font-size: 1.2em;
}

.hidden {
	display: none;
}