﻿@charset "UTF-8";

html,
html.dark {
	--fsk-red: #ef4444;
	--fsk-orange: #f97316;
	--fsk-amber: #f59e0b;
	--fsk-lime: #84cc16;
	--fsk-green: #22c55e;
	--fsk-emerald: #10b981;
	--fsk-teal: #14b8a6;
	--fsk-cyan: #06b6d4;
	--fsk-sky: #0ea5e9;
	--fsk-blue: #3b82f6;
	--fsk-indigo: #6366f1;
	--fsk-violet: #8b5cf6;
	--fsk-purple: #a855f7;
	--fsk-fuchsia: #d946ef;
	--fsk-pink: #ec4899;
	--fsk-rose: #f43f5e;
	--fsk-red-100: #fee2e2;
	--fsk-orange-100: #fef3c7;
	--fsk-amber-100: #fefce8;
	--fsk-lime-100: #ecfccb;
	--fsk-green-100: #dcfce7;
	--fsk-emerald-100: #d1fae5;
	--fsk-teal-100: #ccfbf1;
	--fsk-cyan-100: #cffafe;
	--fsk-sky-100: #e0f2fe;
	--fsk-indigo-100: #e0e7ff;
	--fsk-violet-100: #ede9fe;
	--fsk-purple-100: #f3e8ff;
	--fsk-fuchsia-100: #fae8ff;
	--fsk-pink-100: #fce7f3;
	--fsk-rose-100: #ffe4e6
}

body,
p {
	margin: 0
}

a,
body {
	color: var(--fsk-500)
}

* {
	font-family: GILROY;
}

@font-face {
	font-family: GILROY;
	src: url(https://cdn.fsksoft.com/fonts/gilroy/GILROY-300.TTF) format("truetype");
	font-weight: 300;
	font-style: normal;
	font-display: swap
}

@font-face {
	font-family: GILROY;
	src: url(https://cdn.fsksoft.com/fonts/gilroy/GILROY-400.TTF) format("truetype");
	font-weight: 400;
	font-style: normal;
	font-display: swap
}

@font-face {
	font-family: GILROY;
	src: url(https://cdn.fsksoft.com/fonts/gilroy/GILROY-500.TTF) format("truetype");
	font-weight: 500;
	font-style: normal;
	font-display: swap
}

@font-face {
	font-family: GILROY;
	src: url(https://cdn.fsksoft.com/fonts/gilroy/GILROY-600.TTF) format("truetype");
	font-weight: 600;
	font-style: normal;
	font-display: swap
}

@font-face {
	font-family: GILROY;
	src: url(https://cdn.fsksoft.com/fonts/gilroy/GILROY-700.TTF) format("truetype");
	font-weight: 700;
	font-style: normal;
	font-display: swap
}

@font-face {
	font-family: GILROY;
	src: url(https://cdn.fsksoft.com/fonts/gilroy/GILROY-800.TTF) format("truetype");
	font-weight: 800;
	font-style: normal;
	font-display: swap
}

html {
	--fsk-50: #0A0A0A;
	--fsk-100: #141414;
	--fsk-200: #1F1F1F;
	--fsk-300: #292929;
	--fsk-400: #424242;
	--fsk-500: #7A7A7A;
	--fsk-600: #A0A0A0;
	--fsk-700: #CCCCCC;
	--fsk-800: #EBEBEB;
	--fsk-900: #F5F5F5;
	--fsk-gradient: linear-gradient(90deg,rgb(27, 27, 27) 0%, rgb(0, 0, 0) 100%);
}

html.dark {
	--fsk-50: #F5F5F5;
	--fsk-100: #EBEBEB;
	--fsk-200: #CCCCCC;
	--fsk-300: #A0A0A0;
	--fsk-400: #7A7A7A;
	--fsk-500: #424242;
	--fsk-600: #292929;
	--fsk-700: #1F1F1F;
	--fsk-800: #141414;
	--fsk-900: #0A0A0A;
	--fsk-gradient: linear-gradient(90deg,rgba(191, 191, 191, 1) 0%, rgba(245, 245, 245, 1) 100%);
}

body {
	font-family: GILROY, sans-serif;
	font-size: 14px;
	line-height: 1.42857143;
	FONT-WEIGHT: 500;
	background-color: var(--fsk-900);
	-webkit-appearance: none;
	-moz-appearance: none;
	appearance: none;
	transition: all .3s ease;
}


a {
	text-decoration: none
}

.justify-content-center {
	justify-content: center !important
}

.text-center {
	display: flex;
	justify-content: center
}

.hidden {
	display: none !important
}

.container {
	width: 100%;
	margin-right: auto;
	margin-left: auto;
	height: 100vh;
	position: relative;
}

@media (min-width: 640px) {
	.container {
		max-width: 620px
	}
}

@media (min-width: 768px) {
	.container {
		max-width: 720px
	}
}

@media (min-width: 1024px) {
	.container {
		max-width: 968px;
	}
}

@media (min-width: 1280px) {
	.container {
		max-width: 1140px;
	}
}

@media (min-width: 1536px) {
	.container {
		max-width: 1480px
	}
}

.grid-container {
	display: grid;
	grid-template-columns: repeat(12, 1fr);
	gap: 10px;
	padding-right: 1.5rem;
	padding-left: 1.5rem;
}

.grid-item {
	background-color: #ccc;
	padding: 10px;
	text-align: center;
}

.col-span-1 {
	grid-column: span 1 / span 1;
}

.col-span-2 {
	grid-column: span 2 / span 2;
}

.col-span-3 {
	grid-column: span 3 / span 3;
}

.col-span-4 {
	grid-column: span 4 / span 4;
}

.col-span-5 {
	grid-column: span 5 / span 5;
}

.col-span-6 {
	grid-column: span 6 / span 6;
}

.col-span-7 {
	grid-column: span 7 / span 7;
}

.col-span-8 {
	grid-column: span 8 / span 8;
}

.col-span-9 {
	grid-column: span 9 / span 9;
}

.col-span-10 {
	grid-column: span 10 / span 10;
}

.col-span-11 {
	grid-column: span 11 / span 11;
}

.col-span-12 {
	grid-column: span 12 / span 12;
}

@media only screen and (max-width: 640px) {
	.grid-container {
		grid-template-columns: repeat(6, 1fr);
	}

	.col-span-1,
	.col-span-2,
	.col-span-3,
	.col-span-4,
	.col-span-5,
	.col-span-6,
	.col-span-7,
	.col-span-8,
	.col-span-9,
	.col-span-10,
	.col-span-11,
	.col-span-12 {
		grid-column: span 6 / span 6;
	}
}

@media only screen and (min-width: 641px) and (max-width: 768px) {
	.grid-container {
		grid-template-columns: repeat(8, 1fr);
	}

	.col-span-1,
	.col-span-2,
	.col-span-3,
	.col-span-4,
	.col-span-5,
	.col-span-6,
	.col-span-7,
	.col-span-8,
	.col-span-9,
	.col-span-10,
	.col-span-11,
	.col-span-12 {
		grid-column: span 8 / span 8;
	}
}

@media only screen and (min-width: 769px) and (max-width: 1024px) {
	.grid-container {
		grid-template-columns: repeat(12, 1fr);
	}

	.col-span-1,
	.col-span-2,
	.col-span-3,
	.col-span-4,
	.col-span-5,
	.col-span-6,
	.col-span-7,
	.col-span-8,
	.col-span-9,
	.col-span-10,
	.col-span-11,
	.col-span-12 {
		grid-column: span 12 / span 12;
	}
}

@media only screen and (min-width: 1025px) and (max-width: 1280px) {
	.grid-container {
		grid-template-columns: repeat(12, 1fr);
	}
}

@media only screen and (min-width: 1281px) and (max-width: 1536px) {
	.grid-container {
		grid-template-columns: repeat(12, 1fr);
	}
}

.assistant-image img {
	height: 40px;
}

@media (max-width: 1024px) {
	.chat-message-input.active {
		display: flex;
		border-radius: 10px;
		align-items: center;
		position: fixed;
		min-height: 53px;
		left: 5%;
		right: 5%;
		bottom: 40%;
		flex-direction: column;
	}

	.assistant-image img {
		height: 25px;
	}

	.chat-message-input {
		display: flex;
		border-radius: 10px;
		align-items: center;
		position: fixed;
		min-height: 53px;
		transition: .3s cubic-bezier(0.73, -0.07, 0.28, 1.07);
		bottom: 21px;
	}

	.fskai-img {
		display: none;
	}

	.chat-message-input.active .fskai-img img {
		height: 50px;
	}

	.chat-message-input.active .fskai-img {
		position: absolute;
		top: -80px;
		display: flex;
		gap: 10px;
		left: 50%;
		font-size: 36px;
		color: var(--fsk-50);
		font-weight: 600;
		background: var(--fsk-gradient);
		-webkit-background-clip: text;
		-webkit-text-fill-color: transparent;
		transform: translate(-50%, -50%);
		flex-direction: column;
		white-space: nowrap;
		opacity: 1;
	}

	.consent-banner{
	flex-direction: column;
	}

	.chat-message-input .fskai-img {
		display: none;
	}

	.chat-message-input.chat-started {
		bottom: 16px;
		left: 50%;
		right: auto;
		transform: translateX(-50%);
		width: min(720px, calc(100% - 32px));
		z-index: 5;
	}

	.chat-message-input.chat-started .fskai-img {
		display: none !important;
	}

	.chat-content {
		height: 100%;
		overflow-y: auto;
		position: fixed;
		top: 0;
		left: 0;
		right: 0;
		padding-right: 15px;
		padding-left: 15px;
		background: linear-gradient(0deg, var(--fsk-900) 0%, rgba(229, 231, 235, 0) 5%);
	}

	.assistant-image {
		position: absolute;
		display: none !important;
		height: 30px;
		right: -5px;
		bottom: -5px;
		background: var(--fsk-700);
		border-radius: 10px;
		width: 36px;
		height: 37px;
		display: flex;
		align-items: center;
		justify-content: center;
	}


	#messages {
		display: flex;
		gap: 25px;
		position: relative;
		z-index: 1;
		width: 100%;
		padding-bottom: 120px;
		flex-direction: column;
		margin-top: 60px;
	}
	.chat-box{
		padding: 20px;
	}
}

@media (min-width: 1024px) {
	.chat-message-input {
		display: flex;
		border-radius: 10px;
		align-items: center;
		color: var(--fsk-50);
		position: fixed;
		min-height: 53px;
		margin-bottom: 34px;
		width: 54rem;
		z-index: 2;
		bottom: 0;
	}

	.chat-message-input.active {
		display: flex;
		border-radius: 10px;
		align-items: center;
		position: fixed;
		min-height: 53px;
		color: var(--fsk-50);
		bottom: 40%;
		gap: 10px;
		flex-direction: column;
	}

	.chat-message-input.active .fskai-img img {
		height: 50px;
		width: 50px;
	}

	.chat-message-input.active .fskai-img {
		position: absolute;
		top: -70px;
		display: flex;
		gap: 10px;
		left: 50%;
		font-size: 38px;
		color: var(--fsk-50);
		font-weight: 600;
		background: var(--fsk-gradient);
		-webkit-background-clip: text;
		-webkit-text-fill-color: transparent;
		transform: translate(-50%, -50%);
		flex-direction: column;
		opacity: 1;
		align-items: center;
	}

	.chat-message-input .fskai-img {
		display: none;
	}

	.chat-content {
		padding-bottom: 48px;
		background: linear-gradient(0deg, var(--fsk-900) 0%, rgba(229, 231, 235, 0) 5%);
		width: 64rem;
	}

	.assistant-image {
		height: 40px;
		display: none;
	}

	.assistant-message {
		display: flex;
		gap: 5px;
		border-radius: 10px;
		width: -webkit-fill-available;
		position: relative;
		flex-direction: column;
	}

	#messages {
		display: flex;
		gap: 25px;
		padding-top: 20px;
		position: relative;
		z-index: 1;
		width: 52rem;
		padding-bottom: 120px;
		flex-direction: column;
		margin-top: 40px;
	}

}


.chat-message-input .input-box {
	display: flex;
	justify-content: space-between;
	gap: 12px;
	width: 100%;
	padding: 10px 12px;
	background: var(--fsk-800);
	border-radius: 25px;
	border: 1px solid var(--fsk-700);
	z-index: 10;
	box-shadow: 0 44px 8px var(--fsk-900);
	align-items: flex-end;
}

.chat-message-input.active .input-box{
	box-shadow: none;
}

.chat-page {
	width: -webkit-fill-available;
}

.focused {
	border-radius: 20px;
}

::-webkit-input-placeholder {
	color: var(--fsk-50);
}

:-moz-placeholder {
	color: var(--fsk-50);
}

::-moz-placeholder {
	color: var(--fsk-50);
}

:-ms-input-placeholder {
	color: var(--fsk-50);
}

.chat-page :hover::before {
	opacity: 1;
}

.chat-box {
	display: flex;
	gap: 20px;
	position: absolute;
	top: 0;
	right: 0;
	left: 0;
	bottom: 0;
	flex-direction: column;
	align-items: center;
}

.user-message {
	display: flex;
	border-radius: 18px;
	text-align: right;
	justify-content: flex-end;
}

.user-message-text {
	border-radius: 20px 20px 5px 20px;
	line-break: anywhere;
	color: var(--fsk-50);
	padding: 15px;
	background: var(--fsk-800);
	border: 1px solid var(--fsk-700);
}


.assistant-message-text {
	border-radius: 15px;
	color: var(--fsk-50);
	display: flex;
	flex-direction: column;
	gap: 10px;
	align-items: flex-start;
	line-height: 1.9;
	justify-content: center;
	width: 100%;
	font-size: 16px;
}

.assistant-thinking {
	display: inline-flex;
	align-items: center;
	font-size: 15px;
	font-weight: 500;
	letter-spacing: 0.08em;
	background: linear-gradient(90deg, rgba(229, 231, 235, 0.15), rgba(255, 255, 255, 0.85), rgba(229, 231, 235, 0.15));
	background-size: 200% 100%;
	-webkit-background-clip: text;
	-webkit-text-fill-color: transparent;
	animation: thinkingShimmer 2.4s ease-in-out infinite;
	margin-bottom: 4px;
}

.assistant-thinking.hidden {
	display: none;
}

@keyframes thinkingShimmer {
	0% {
		background-position: 200% 0;
	}
	50% {
		background-position: 100% 0;
	}
	100% {
		background-position: 0 0;
	}
}

.chat-message-input i {
	width: 38px;
	height: 38px;
	display: flex;
	align-items: center;
	justify-content: center;
	font-size: 22px;
	color: var(--fsk-200);
	cursor: pointer;
	transition: color 0.2s ease, transform 0.2s ease, opacity 0.2s ease;
}

.chat-message-input i:hover {
	color: var(--fsk-blue);
}

#send.is-disabled,
#send.is-sending {
	opacity: 0.35;
	pointer-events: none;
	transform: none;
}

#send.is-sending {
	opacity: 0.5;
}

.chat-message-input:focus {
	border: 2px solid var(--fsk-blue);
}

.message-editor {
	display: block;
	width: 100%;
	border: none;
	background: transparent;
	padding: 6px;
	font-size: 16px;
	line-height: 1.6;
	color: var(--fsk-50);
	border-radius: 18px;
	outline: none;
	min-height: 20px;
	max-height: calc(1.6em * 6 + 20px);
	overflow-y: auto;
	white-space: normal;
	word-break: break-word;
}

.message-editor:focus {
	outline: none;
}

.message-editor:empty:before {
	content: attr(data-placeholder);
	color: var(--fsk-400);
	pointer-events: none;
}

.message-editor[contenteditable='false'] {
	opacity: 0.55;
	pointer-events: none;
}

.message-editor::-webkit-scrollbar {
	width: 6px;
}

.message-editor::-webkit-scrollbar-thumb {
	background-color: rgba(255, 255, 255, 0.25);
	border-radius: 8px;
}

.message-editor::-webkit-scrollbar-track {
	background: transparent;
}

pre {
	border-radius: 6px;
	padding: 14px;
	background: var(--fsk-700);
	margin-bottom: 0px;
	margin-bottom: 6px;
	width: -webkit-fill-available;
	transition: .3s ease;
	color: var(--fsk-900);
}

.code-shell {
	position: relative;
	margin: 12px 0;
	border-radius: 18px;
	border: 1px solid rgba(148, 163, 184, 0.2);
	background: var(--fsk-800);
	overflow: hidden;
	backdrop-filter: blur(18px);
}

.code-shell__header {
	display: flex;
	align-items: center;
	justify-content: space-between;
	padding: 12px 12px 12px 18px;
	background: var(--fsk-700);
	border-bottom: var(--fsk-700);
}

.code-shell__lang {
	font-size: 12px;
	font-weight: 600;
	letter-spacing: 0.14em;
	text-transform: uppercase;
	color: var(--fsk-50);
	display: flex;
	align-items: center;
	gap: 6px;
}

.code-shell__lang::before {
	content: '';
	width: 8px;
	height: 8px;
	border-radius: 999px;
	background: var(--fsk-400);
}

.code-shell__copy {
	appearance: none;
	border: 1px solid var(--fsk-500);
	background: var(--fsk-700);
	color: var(--fsk-50);
	border-radius: 10px;
	padding: 6px 14px;
	font-size: 12px;
	font-weight: 600;
	letter-spacing: 0.04em;
	display: inline-flex;
	align-items: center;
	gap: 6px;
	cursor: pointer;
	transition: all 0.2s ease;
}

.code-shell__copy:hover {
	background: var(--fsk-600);
	border-color: var(--fsk-500);
	color: #f8fafc;
}

.code-shell__copy.copied {
	background: rgba(34, 197, 94, 0.25);
	border-color: rgba(34, 197, 94, 0.45);
	color: #bbf7d0;
}

.code-shell__copy.error {
	background: rgba(248, 113, 113, 0.25);
	border-color: rgba(248, 113, 113, 0.5);
	color: #fecaca;
}

.code-shell__body {
	margin: 0;
	padding: 10px;
	background: #141414;
	color: #e2e8f0;
	font-size: 13.5px;
	line-height: 1.72;
	white-space: pre;
	overflow: auto;
}

.code-shell__body code {
	background: transparent !important;
	font-family: 'Fira Code', 'Source Code Pro', monospace;
}

.code-shell__body::-webkit-scrollbar {
	height: 8px;
	width: 8px;
}

.code-shell__body::-webkit-scrollbar-thumb {
	background: rgba(148, 163, 184, 0.35);
	border-radius: 6px;
}

.code-shell__body::-webkit-scrollbar-track {
	background: transparent;
}

::-webkit-scrollbar {
	width: 5px;
}

::-webkit-scrollbar-track {
	background-color: var(--fsk-900);
}

::-webkit-scrollbar-thumb {
	background-color: var(--fsk-600);
	border-radius: 10px;
}

::-webkit-scrollbar-thumb:hover {
	background-color: var(--fsk-500);
}


textarea {
	max-height: 500px;
	resize: none;
}

.input-box {
	position: relative;
	transition: .3s ease;
}

.input-box.focused {
	border: 1px solid var(--fsk-500);
}

@keyframes gradient {
	0% {
		background-position: 0% 50%;
	}

	50% {
		background-position: 100% 50%;
	}

	100% {
		background-position: 0% 50%;
	}
}

.input-box.focused:after {
	opacity: 0.4;
}

.data-shell {
	position: relative;
	margin: 12px 0;
	border-radius: 18px;
	border: 1px solid rgba(148, 163, 184, 0.18);
	background: linear-gradient(135deg, rgba(30, 41, 59, 0.95), rgba(17, 24, 39, 0.85));
	box-shadow: 0 14px 28px rgba(15, 23, 42, 0.35);
	overflow: hidden;
	backdrop-filter: blur(16px);
}

.data-shell__header {
	display: flex;
	align-items: center;
	justify-content: space-between;
	padding: 12px 16px;
	background: rgba(59, 130, 246, 0.12);
	border-bottom: 1px solid rgba(148, 163, 184, 0.15);
}

.data-shell__label {
	font-size: 12px;
	font-weight: 700;
	letter-spacing: 0.18em;
	text-transform: uppercase;
	color: #e2e8f0;
	display: flex;
	align-items: center;
	gap: 6px;
}

.data-shell__label::before {
	content: '';
	width: 7px;
	height: 7px;
	border-radius: 999px;
	background: linear-gradient(135deg, #facc15, #22d3ee);
	box-shadow: 0 0 8px rgba(34, 211, 238, 0.65);
}

.data-shell__copy {
	appearance: none;
	border: 1px solid rgba(148, 163, 184, 0.25);
	background: rgba(30, 41, 59, 0.4);
	color: #e2e8f0;
	border-radius: 999px;
	padding: 6px 14px;
	font-size: 12px;
	font-weight: 600;
	letter-spacing: 0.05em;
	display: inline-flex;
	align-items: center;
	gap: 6px;
	cursor: pointer;
	transition: all 0.2s ease;
}

.data-shell__copy:hover {
	background: rgba(226, 232, 240, 0.12);
	border-color: rgba(226, 232, 240, 0.35);
	color: #f8fafc;
}

.data-shell__copy.copied {
	background: rgba(34, 197, 94, 0.2);
	border-color: rgba(34, 197, 94, 0.4);
	color: #d1fae5;
}

.data-shell__copy.error {
	background: rgba(248, 113, 113, 0.2);
	border-color: rgba(248, 113, 113, 0.45);
	color: #fecaca;
}

.data-shell__body {
	padding: 16px 18px;
	color: #f8fafc;
	font-size: 14px;
	line-height: 1.65;
	white-space: pre-wrap;
	word-break: break-word;
	background: transparent;
}

.data-shell__body p {
	margin: 0 0 0.5rem 0;
}

.data-shell__body p:last-child {
	margin-bottom: 0;
}


.toolbar-left,
.toolbar-right {
	display: flex;
	align-items: center;
	gap: 10px;
}

.toolbar-btn {
	background: rgba(59, 130, 246, 0.08);
	color: var(--fsk-50);
	border: 1px solid rgba(59, 130, 246, 0.22);
	border-radius: 999px;
	padding: 8px 14px;
	font-size: 13px;
	font-weight: 600;
	letter-spacing: 0.03em;
	cursor: pointer;
	transition: all 0.2s ease;
}

.toolbar-btn:hover {
	background: rgba(59, 130, 246, 0.18);
	border-color: rgba(59, 130, 246, 0.35);
}

.toolbar-btn.hidden {
	display: none;
}

.theme-toggle {
	min-width: 90px;
	text-align: center;
}

.reasoning-selector {
	position: relative;
	display: flex;
	align-items: center;
	height: 38px;
}

.reasoning-toggle {
	background: rgba(148, 163, 184, 0.12);
	border: 1px solid rgba(148, 163, 184, 0.3);
	color: var(--fsk-50);
	border-radius: 10px;
	padding: 6px 12px;
	font-size: 14px;
	font-weight: 600;
	letter-spacing: 0.02em;
	cursor: pointer;
	min-width: 80px;
	text-align: center;
}


.reasoning-menu.hidden {
	display: none;
}

.reasoning-menu button {
	background: transparent;
	border: none;
	color: #e2e8f0;
	padding: 10px 16px;
	font-size: 13px;
	cursor: pointer;
	text-align: left;
	transition: background 0.2s ease;
}



.assistant-content {
	display: flex;
	flex-direction: column;
	gap: 12px;
	font-family: inherit;
	word-break: break-word;
	width: 100%;
	color: inherit;
}

.assistant-actions {
	display: flex;
	flex-wrap: wrap;
	gap: 20px;
	align-items: center;
}

.assistant-action {
	color: var(--fsk-300);
	font-size: 12px;
	font-weight: 500;
	cursor: pointer;
	transition: all 0.2s ease;
	background: transparent;
	border: none;
	padding: 0px;
}

.assistant-action.is-secondary {
	background: rgba(148, 163, 184, 0.08);
}

.assistant-action.active {color: var(--fsk-green);}

.assistant-action.dislike.active {color: var(--fsk-red);}

.chat-toolbar {
	display: flex;
	align-items: center;
	justify-content: flex-end;
	gap: 10px;
	position: fixed;
	right: 0;
	padding: 20px;
	top: 0;
	z-index: 5;
}

.toolbar-left,
.toolbar-right {
	display: flex;
	align-items: center;
	gap: 10px;
}

.toolbar-btn {
	display: inline-flex;
	align-items: center;
	gap: 8px;
	background: var(--fsk-800);
	color: var(--fsk-50);
	border: 1px solid var(--fsk-700);
	border-radius: 999px;
	padding: 8px 14px;
	font-size: 13px;
	font-weight: 600;
	letter-spacing: 0.03em;
	cursor: pointer;
	transition: all 0.2s ease;
}

.toolbar-btn i {
	font-size: 16px;
	line-height: 1;
}

.toolbar-btn span {
	display: inline-flex;
	align-items: center;
}

.toolbar-btn:hover {
	background: var(--fsk-600);
	border-color: var(--fsk-500);
}

.toolbar-btn.hidden {
	display: none;
}

.theme-toggle {
	min-width: 44px;
	justify-content: center;
	padding: 8px 10px;
}

.assistant-action i {
	font-size: 15px;
	line-height: 1;
}

.assistant-timestamp {
	font-size: 12px;
	color: rgba(226, 232, 240, 0.7);
}

.reasoning-selector {
	position: relative;
	white-space: nowrap;
}

.reasoning-toggle {
	background: rgba(148, 163, 184, 0.12);
	border: 1px solid rgba(148, 163, 184, 0.3);
	color: var(--fsk-50);
	border-radius: 10px;
	padding: 6px 10px;
	font-size: 12px;
	font-weight: 600;
	letter-spacing: 0.02em;
	cursor: pointer;
	min-width: 72px;
	text-align: center;
}

.reasoning-menu {
	position: absolute;
	right: 0;
	bottom: calc(100% + 20px);
	display: flex;
	flex-direction: column;
	background: var(--fsk-900);
	border: 1px solid var(--fsk-700);
	border-radius: 12px;
	overflow: hidden;
	z-index: 12;
	min-width: 190px;
}

.reasoning-menu.hidden {
	display: none;
}

.reasoning-menu button {
	background: transparent;
	border: none;
	color: var(--fsk-50);
	padding: 10px 16px;
	cursor: pointer;
	text-align: left;
	transition: background 0.2s ease;
	display: flex;
	flex-direction: column;
	gap: 4px;
}

.reasoning-menu button:hover {
	background: var(--fsk-800);
}

.reasoning-menu button.active {
	background: var(--fsk-700);
	color: var(--fsk-50);
}

.reasoning-name {
	font-size: 13px;
	font-weight: 600;
}

.reasoning-desc {
	font-size: 11px;
	color: var(--fsk-50);
	letter-spacing: 0.01em;
}

.code-shell__body {
	white-space: pre;
}

.assistant-actions {position: relative;display: flex;gap: 15px;align-items: center;margin-top: 10px;}
  .assistant-action { position: relative; }
  .assistant-action[data-tooltip]:hover::after,
  .assistant-action[data-tooltip]:focus-visible::after {
    content: attr(data-tooltip);
    position: absolute;
    bottom: calc(100% + 8px);
    left: 50%;
    transform: translateX(-50%);
    padding: 6px 8px;
    font-size: 12px;
    line-height: 1;
    border-radius: 6px;
    background: rgba(0,0,0,.85);
    color: #fff;
    white-space: nowrap;
    pointer-events: none;
    z-index: 20;
  }
  .assistant-action[data-tooltip]:hover::before,
  .assistant-action[data-tooltip]:focus-visible::before {
    content: '';
    position: absolute;
    bottom: 100%;
    left: 50%; transform: translateX(-50%);
    border: 6px solid transparent;
    border-top-color: rgba(0,0,0,.85);
    margin-bottom: 2px;
    z-index: 19;
  }


.assistant-content { white-space: pre-line; }
.code-shell__body { white-space: pre; }
.data-shell__body { white-space: pre-line; }


.policy-inline { display:none; gap:12px; font-size:12px; margin-top:6px; }
.chat-message-input.active .policy-inline {display: none;}
.policy-inline a {text-decoration:none;color: var(--fsk-300);font-size: 14px;}
.policy-inline a:hover { opacity:1; text-decoration:underline; }

.consent-banner {
	position: fixed;
	left: 12px;
	right: 12px;
	bottom: 12px;
	background: var(--fsk-800);
	color: var(--fsk-100);
	border: 1px solid var(--fsk-700);
	border-radius: 10px;
	padding: 12px 14px;
	z-index: 9999;
	display: none;
	align-items: center;
	justify-content: space-between;
	gap: 12px;
}

.consent-banner a{
	color: var(--fsk-blue);
}
.consent-banner p { margin: 0; font-size: 13px; line-height: 1.4; }
.consent-actions { display:flex; gap: 8px; }
.consent-actions button {
	padding: 8px 12px;
	border-radius: 10px;
	border: 0;
	cursor: pointer;
}
.btn-accept {background:#10b981;color: var(--fsk-50);}
.btn-details {background: var(--fsk-700);padding: 10px 20px;border-radius: 10px;border: 1px solid var(--fsk-600);color: var(--fsk-50) !important;}