#theme-toggle {
	border: 0;
	background: transparent;
	cursor: pointer;
}

use.svg-image {
	fill: var(--bs-body-color);
}

body {
	--ts-black: #000;
	--ts-white: #fff;
	--ts-gray: #4b4f53;
	--ts-gray-light: #d3d3d3;
	--ts-gray-dark: #696969;
	--ts-red: #c5021cf4;
	--ts-green: #66c09d;
	--ts-blue: #3c78d0;
	--ts-yellow: #ffde16;
	--ts-orange: #ffa500;
	--ts-violet: #9f7ec6;
	--ts-pink: #ff69b4;
	--ts-brown: #a52a2a;
	--ts-cyan: #a5eded;
	--ts-magenta: #ff00ff;
	--ts-light-highlight: #e1f1ff;
	--ts-highlight-color: #007bff;

	--ts-main-green-bg: #83d8c0;
	--ts-green-bg: #d0f5e8;
	--ts-even-green-bg: #d0f5e8;
	--ts-green-light-bg: #d0f5e8;
	--ts-main-red-bg: #ff6b6b;
	--ts-red-bg: #f1c8ca;
	--ts-even-red-bg: #ffb3b8;
	--ts-red-light-bg: #ffc0c4;
	--ts-main-yellow-bg: #fff17e;
	--ts-yellow-bg: #fff291;
	--ts-even-yellow-bg: #fff291;
	--ts-yellow-light-bg: #ffee6b;
	--ts-blue-bg: #a8d1f3;
	--ts-even-blue-bg: #d8ecf9;
	--ts-blue-light-bg: #d8ecf9;
	--ts-violet-bg: #d8c6f0;
	--ts-even-violet-bg: #e0d0f5;
	--ts-violet-light-bg: #e8d8f9;
	--ts-gray-bg: #f0f0f0;
	--ts-even-gray-bg: #f5f5f5;
	--ts-gray-light-bg: #f8f8f8;
	--ts-border-radius: 0.75rem;
	--ts-border-radius-lg: 1.5rem;
	--ts-border-radius-sm: 0.25rem;
	--ts-light-shadow:
		inset 0 1px 2px #ffffff80, 0 1px 2px #00000020, 0 2px 3px #00000020;
	--ts-base-shadow:
		inset 0 1px 2px #ffffffff, 0 1px 2px #00000020, 0 2px 4px #3a6aa528;
	--ts-elevated-shadow:
		inset 0 1px 2px #ffffff30, 0 2px 4px #00000030, 0 2px 4px #00000030,
		0 4px 8px #00000030;
	--ts-inverse-shadow:
		0 1px 2px #ffffff30, inset 0 1px 2px #00000030,
		inset 0 2px 4px #00000030;
	--ts-fix-menu-width: 320px;
	--ts-fix-menu-gap: 12px;
}

[data-bs-theme="dark"] body {
	color-scheme: dark;
	--bs-body-bg: #1d2030;
	--ts-gray: #c0cad7;
	--ts-blue: #12448f;
	--ts-gray-light: #4b4f53;
	--ts-light-highlight: #4e4e4e;
	--ts-highlight-color: #007bff;
	--ts-main-green-bg: #144d37;
	--ts-green-bg: #103e2c;
	--ts-even-green-bg: #5b745c;
	--ts-green-light-bg: #568458;
	--ts-main-red-bg: #755053;
	--ts-red-bg: #522020;
	--ts-even-red-bg: #76464a;
	--ts-red-light-bg: #84565d;
	--ts-main-yellow-bg: #b29832;
	--ts-yellow-bg: #a19333;
	--ts-even-yellow-bg: #b59f44;
	--ts-yellow-light-bg: #b4a052;
	--ts-blue-bg: #15396d;
	--ts-even-blue-bg: #1a2b4c;
	--ts-blue-light-bg: #1f3a5c;
	--ts-violet-bg: #3a2b4c;
	--ts-even-violet-bg: #4c3a5c;
	--ts-violet-light-bg: #5c4c7a;
	--ts-gray-bg: #1a1a1a;
	--ts-even-gray-bg: #242424;
	--ts-gray-light-bg: #2a2a2a;
	--ts-light-shadow:
		inset 0 1px 2px #ffffff30, 0 1px 2px #00000030, 0 2px 4px #00000030;
	--ts-base-shadow:
		inset 0 1px 2px #ffffff30, 0 1px 2px #00000030, 0 2px 4px #00000030;
	--ts-elevated-shadow:
		inset 0 1px 2px #ffffff30, 0 2px 4px #00000030, 0 2px 4px #00000030,
		0 4px 8px #00000030;
}

@media (max-width: 767.98px) {
	body {
		--ts-fix-menu-width: 0px;
		--ts-fix-menu-gap: 0px;
	}
}

:where(html) {
	--ease-1: cubic-bezier(0.25, 0, 0.5, 1);
	--ease-2: cubic-bezier(0.25, 0, 0.4, 1);
	--ease-3: cubic-bezier(0.25, 0, 0.3, 1);
	--ease-4: cubic-bezier(0.25, 0, 0.2, 1);
	--ease-5: cubic-bezier(0.25, 0, 0.1, 1);
	--ease-in-1: cubic-bezier(0.25, 0, 1, 1);
	--ease-in-2: cubic-bezier(0.5, 0, 1, 1);
	--ease-in-3: cubic-bezier(0.7, 0, 1, 1);
	--ease-in-4: cubic-bezier(0.9, 0, 1, 1);
	--ease-in-5: cubic-bezier(1, 0, 1, 1);
	--ease-out-1: cubic-bezier(0, 0, 0.75, 1);
	--ease-out-2: cubic-bezier(0, 0, 0.5, 1);
	--ease-out-3: cubic-bezier(0, 0, 0.3, 1);
	--ease-out-4: cubic-bezier(0, 0, 0.1, 1);
	--ease-out-5: cubic-bezier(0, 0, 0, 1);
	--ease-in-out-1: cubic-bezier(0.1, 0, 0.9, 1);
	--ease-in-out-2: cubic-bezier(0.3, 0, 0.7, 1);
	--ease-in-out-3: cubic-bezier(0.5, 0, 0.5, 1);
	--ease-in-out-4: cubic-bezier(0.7, 0, 0.3, 1);
	--ease-in-out-5: cubic-bezier(0.9, 0, 0.1, 1);
	--ease-elastic-out-1: +cubic-bezier(0.5, 0.75, 0.75, 1.25);
	--ease-elastic-out-2: cubic-bezier(0.5, 1, 0.75, 1.25);
	--ease-elastic-out-3: cubic-bezier(0.5, 1.25, 0.75, 1.25);
	--ease-elastic-out-4: cubic-bezier(0.5, 1.5, 0.75, 1.25);
	--ease-elastic-out-5: cubic-bezier(0.5, 1.75, 0.75, 1.25);
	--ease-elastic-in-1: cubic-bezier(0.5, -0.25, 0.75, 1);
	--ease-elastic-in-2: cubic-bezier(0.5, -0.5, 0.75, 1);
	--ease-elastic-in-3: cubic-bezier(0.5, -0.75, 0.75, 1);
	--ease-elastic-in-4: cubic-bezier(0.5, -1, 0.75, 1);
	--ease-elastic-in-5: cubic-bezier(0.5, -1.25, 0.75, 1);
	--ease-elastic-in-out-1: cubic-bezier(0.5, -0.1, 0.1, 1.5);
	--ease-elastic-in-out-2: cubic-bezier(0.5, -0.3, 0.1, 1.5);
	--ease-elastic-in-out-3: cubic-bezier(0.5, -0.5, 0.1, 1.5);
	--ease-elastic-in-out-4: cubic-bezier(0.5, -0.7, 0.1, 1.5);
	--ease-elastic-in-out-5: cubic-bezier(0.5, -0.9, 0.1, 1.5);
	--ease-step-1: steps(2);
	--ease-step-2: steps(3);
	--ease-step-3: steps(4);
	--ease-step-4: steps(7);
	--ease-step-5: steps(10);
	--ease-elastic-1: var(--ease-elastic-out-1);
	--ease-elastic-2: var(--ease-elastic-out-2);
	--ease-elastic-3: var(--ease-elastic-out-3);
	--ease-elastic-4: var(--ease-elastic-out-4);
	--ease-elastic-5: var(--ease-elastic-out-5);
	--ease-squish-1: var(--ease-elastic-in-out-1);
	--ease-squish-2: var(--ease-elastic-in-out-2);
	--ease-squish-3: var(--ease-elastic-in-out-3);
	--ease-squish-4: var(--ease-elastic-in-out-4);
	--ease-squish-5: var(--ease-elastic-in-out-5);
	--ease-spring-1: linear(
		0,
		0.006,
		0.025 2.8%,
		0.101 6.1%,
		0.539 18.9%,
		0.721 25.3%,
		0.849 31.5%,
		0.937 38.1%,
		0.968 41.8%,
		0.991 45.7%,
		1.006 50.1%,
		1.015 55%,
		1.017 63.9%,
		1.001
	);
	--ease-spring-2: linear(
		0,
		0.007,
		0.029 2.2%,
		0.118 4.7%,
		0.625 14.4%,
		0.826 19%,
		0.902,
		0.962,
		1.008 26.1%,
		1.041 28.7%,
		1.064 32.1%,
		1.07 36%,
		1.061 40.5%,
		1.015 53.4%,
		0.999 61.6%,
		0.995 71.2%,
		1
	);
	--ease-spring-3: linear(
		0,
		0.009,
		0.035 2.1%,
		0.141 4.4%,
		0.723 12.9%,
		0.938 16.7%,
		1.017,
		1.077,
		1.121,
		1.149 24.3%,
		1.159,
		1.163,
		1.161,
		1.154 29.9%,
		1.129 32.8%,
		1.051 39.6%,
		1.017 43.1%,
		0.991,
		0.977 51%,
		0.974 53.8%,
		0.975 57.1%,
		0.997 69.8%,
		1.003 76.9%,
		1
	);
	--ease-spring-4: linear(
		0,
		0.009,
		0.037 1.7%,
		0.153 3.6%,
		0.776 10.3%,
		1.001,
		1.142 16%,
		1.185,
		1.209 19%,
		1.215 19.9% 20.8%,
		1.199,
		1.165 25%,
		1.056 30.3%,
		1.008 33%,
		0.973,
		0.955 39.2%,
		0.953 41.1%,
		0.957 43.3%,
		0.998 53.3%,
		1.009 59.1% 63.7%,
		0.998 78.9%,
		1
	);
	--ease-spring-5: linear(
		0,
		0.01,
		0.04 1.6%,
		0.161 3.3%,
		0.816 9.4%,
		1.046,
		1.189 14.4%,
		1.231,
		1.254 17%,
		1.259,
		1.257 18.6%,
		1.236,
		1.194 22.3%,
		1.057 27%,
		0.999 29.4%,
		0.955 32.1%,
		0.942,
		0.935 34.9%,
		0.933,
		0.939 38.4%,
		1 47.3%,
		1.011,
		1.017 52.6%,
		1.016 56.4%,
		1 65.2%,
		0.996 70.2%,
		1.001 87.2%,
		1
	);
	--ease-bounce-1: linear(
		0,
		0.004,
		0.016,
		0.035,
		0.063,
		0.098,
		0.141,
		0.191,
		0.25,
		0.316,
		0.391 36.8%,
		0.563,
		0.766,
		1 58.8%,
		0.946,
		0.908 69.1%,
		0.895,
		0.885,
		0.879,
		0.878,
		0.879,
		0.885,
		0.895,
		0.908 89.7%,
		0.946,
		1
	);
	--ease-bounce-2: linear(
		0,
		0.004,
		0.016,
		0.035,
		0.063,
		0.098,
		0.141 15.1%,
		0.25,
		0.391,
		0.562,
		0.765,
		1,
		0.892 45.2%,
		0.849,
		0.815,
		0.788,
		0.769,
		0.757,
		0.753,
		0.757,
		0.769,
		0.788,
		0.815,
		0.85,
		0.892 75.2%,
		1 80.2%,
		0.973,
		0.954,
		0.943,
		0.939,
		0.943,
		0.954,
		0.973,
		1
	);
	--ease-bounce-3: linear(
		0,
		0.004,
		0.016,
		0.035,
		0.062,
		0.098,
		0.141 11.4%,
		0.25,
		0.39,
		0.562,
		0.764,
		1 30.3%,
		0.847 34.8%,
		0.787,
		0.737,
		0.699,
		0.672,
		0.655,
		0.65,
		0.656,
		0.672,
		0.699,
		0.738,
		0.787,
		0.847 61.7%,
		1 66.2%,
		0.946,
		0.908,
		0.885 74.2%,
		0.879,
		0.878,
		0.879,
		0.885 79.5%,
		0.908,
		0.946,
		1 87.4%,
		0.981,
		0.968,
		0.96,
		0.957,
		0.96,
		0.968,
		0.981,
		1
	);
	--ease-bounce-4: linear(
		0,
		0.004,
		0.016 3%,
		0.062,
		0.141,
		0.25,
		0.391,
		0.562 18.2%,
		1 24.3%,
		0.81,
		0.676 32.3%,
		0.629,
		0.595,
		0.575,
		0.568,
		0.575,
		0.595,
		0.629,
		0.676 48.2%,
		0.811,
		1 56.2%,
		0.918,
		0.86,
		0.825,
		0.814,
		0.825,
		0.86,
		0.918,
		1 77.2%,
		0.94 80.6%,
		0.925,
		0.92,
		0.925,
		0.94 87.5%,
		1 90.9%,
		0.974,
		0.965,
		0.974,
		1
	);
	--ease-bounce-5: linear(
		0,
		0.004,
		0.016 2.5%,
		0.063,
		0.141,
		0.25 10.1%,
		0.562,
		1 20.2%,
		0.783,
		0.627,
		0.534 30.9%,
		0.511,
		0.503,
		0.511,
		0.534 38%,
		0.627,
		0.782,
		1 48.7%,
		0.892,
		0.815,
		0.769 56.3%,
		0.757,
		0.753,
		0.757,
		0.769 61.3%,
		0.815,
		0.892,
		1 68.8%,
		0.908 72.4%,
		0.885,
		0.878,
		0.885,
		0.908 79.4%,
		1 83%,
		0.954 85.5%,
		0.943,
		0.939,
		0.943,
		0.954 90.5%,
		1 93%,
		0.977,
		0.97,
		0.977,
		1
	);
}

.sun-and-moon > :is(.moon, .sun, .sun-beams) {
	transform-origin: center;
}

.sun-and-moon > :is(.moon, .sun) {
	fill: var(--bs-body-color);
}

.theme-toggle:is(:hover, :focus-visible) > .sun-and-moon > :is(.moon, .sun) {
	fill: var(--bs-secondary-color);
}

.sun-and-moon > .sun-beams {
	stroke: var(--bs-secondary-color);
	stroke-width: 2px;
}

.theme-toggle:is(:hover, :focus-visible) .sun-and-moon > .sun-beams {
	stroke: var(--bs-secondary-color);
}

[data-bs-theme="dark"] .sun-and-moon > .sun {
	transform: scale(1.75);
}

[data-bs-theme="dark"] .sun-and-moon > .sun-beams {
	opacity: 0;
}

[data-bs-theme="dark"] .sun-and-moon > .moon > circle {
	transform: translateX(-7px);
}

@supports (cx: 1) {
	[data-bs-theme="dark"] .sun-and-moon > .moon > circle {
		cx: 17;
		transform: translateX(0);
	}
}

@media (prefers-reduced-motion: no-preference) {
	.sun-and-moon > .sun {
		transition: transform 0.5s var(--ease-elastic-3);
	}

	.sun-and-moon > .sun-beams {
		transition:
			transform 0.5s var(--ease-elastic-4),
			opacity 0.5s var(--ease-3);
	}

	.sun-and-moon .moon > circle {
		transition: transform 0.25s var(--ease-out-5);
	}

	@supports (cx: 1) {
		.sun-and-moon .moon > circle {
			transition: cx 0.25s var(--ease-out-5);
		}
	}

	[data-bs-theme="dark"] .sun-and-moon > .sun {
		transition-timing-function: var(--ease-3);
		transition-duration: 0.25s;
		transform: scale(1.75);
	}

	[data-bs-theme="dark"] .sun-and-moon > .sun-beams {
		transition-duration: 0.15s;
		transform: rotateZ(-25deg);
	}

	[data-bs-theme="dark"] .sun-and-moon > .moon > circle {
		transition-duration: 0.5s;
		transition-delay: 0.25s;
	}
}

.btn {
	margin: 2px;
	min-width: 124px;
	position: relative;

	& > .quantity {
		width: 22px;
		height: 22px;
		line-height: 22px;
		right: -5px;
		top: 12px;
	}
}

.btn:not(
	.btn-info,
	.btn-warning,
	.btn-success,
	.btn-danger,
	.btn.btn-secondary,
	.btn-info,
	.btn-dark,
	.btn-light
) {
	background-color: var(--highlight-color);
	border-color: var(--highlight-color);
	color: #fff;
}

.btn:not(
		.btn-info,
		.btn-warning,
		.btn-success,
		.btn-danger,
		.btn.btn-secondary,
		.btn-info,
		.btn-dark,
		.btn-light
	):hover,
.btn:not(
		.btn-info,
		.btn-warning,
		.btn-success,
		.btn-danger,
		.btn.btn-secondary,
		.btn-info,
		.btn-dark,
		.btn-light
	):focus,
.btn:not(
		.btn-info,
		.btn-warning,
		.btn-success,
		.btn-danger,
		.btn.btn-secondary,
		.btn-info,
		.btn-dark,
		.btn-light
	):active {
	background-color: var(--highlight-second-color);
	border-color: var(--highlight-second-color);
	transition: 0.5s ease;
}

.btn.white,
.btn.btn-secondary {
	background-color: var(--ts-gray-light-bg);
	border: 1px solid var(--ts-gray-light-bg);
	color: var(--ts-gray);
}

.btn.white:hover,
.btn.btn-secondary:hover {
	background-color: var(--ts-gray-bg);
	color: var(--bs-body);
	transition: 0.5s ease;
}

.btn.yellow {
	background-color: #ffde16;
	border: 2px solid #ffde16;
	color: #000;
	font-weight: 600;
}

.btn.yellow:hover {
	background-color: #000;
	color: #fff;
	border: 2px solid #000;
	transition: 0.5s ease;
}

.btn.white:hover {
	background-color: #000;
	color: #fff;
	border: 2px solid #000;
	transition: 0.5s ease;
}

.btn.gray {
	background-color: #bbc2ca;
	border: 2px solid #bbc2ca;
	color: #fff;
}
.btn.gray:hover {
	background-color: #d9dee4;
	color: #fff;
	border: 2px solid #d9dee4;
	transition: 0.5s ease;
}

.btn.btn_half {
	width: 47%;
	overflow: hidden;
	text-overflow: ellipsis;
	white-space: nowrap;
}
.btn.btn_quarter {
	width: 23%;
	overflow: hidden;
	text-overflow: ellipsis;
	white-space: nowrap;
}

.btn.btn_full {
	width: 100%;
	overflow: hidden;
	text-overflow: ellipsis;
	white-space: nowrap;
}
