/* Welcome to Compass.
 * In this file you should write your main styles. (or centralize your imports)
 * Import this file using the following HTML or equivalent:
 * <link href="/stylesheets/screen.css" media="screen, projection" rel="stylesheet" type="text/css" /> */
/* line 5, ../../../../../../var/lib/gems/2.3.0/gems/compass-core-1.0.3/stylesheets/compass/reset/_utilities.scss */
html,
body,
div,
span,
applet,
object,
iframe,
h1,
h2,
h3,
h4,
h5,
h6,
p,
blockquote,
pre,
a,
abbr,
acronym,
address,
big,
cite,
code,
del,
dfn,
em,
img,
ins,
kbd,
q,
s,
samp,
small,
strike,
strong,
sub,
sup,
tt,
var,
b,
u,
i,
center,
dl,
dt,
dd,
ol,
ul,
li,
fieldset,
form,
label,
legend,
table,
caption,
tbody,
tfoot,
thead,
tr,
th,
td,
article,
aside,
canvas,
details,
embed,
figure,
figcaption,
footer,
header,
hgroup,
menu,
nav,
output,
ruby,
section,
summary,
time,
mark,
audio,
video {
	margin: 0;
	padding: 0;
	border: 0;
	font: inherit;
	font-size: 100%;
	vertical-align: baseline;
}

/* line 22, ../../../../../../var/lib/gems/2.3.0/gems/compass-core-1.0.3/stylesheets/compass/reset/_utilities.scss */
html {
	line-height: 1;
}

/* line 24, ../../../../../../var/lib/gems/2.3.0/gems/compass-core-1.0.3/stylesheets/compass/reset/_utilities.scss */
ol,
ul {
	list-style: none;
}

/* line 26, ../../../../../../var/lib/gems/2.3.0/gems/compass-core-1.0.3/stylesheets/compass/reset/_utilities.scss */
table {
	border-collapse: collapse;
	border-spacing: 0;
}

/* line 28, ../../../../../../var/lib/gems/2.3.0/gems/compass-core-1.0.3/stylesheets/compass/reset/_utilities.scss */
caption,
th,
td {
	text-align: left;
	font-weight: normal;
	vertical-align: middle;
}

/* line 30, ../../../../../../var/lib/gems/2.3.0/gems/compass-core-1.0.3/stylesheets/compass/reset/_utilities.scss */
q,
blockquote {
	quotes: none;
}
/* line 103, ../../../../../../var/lib/gems/2.3.0/gems/compass-core-1.0.3/stylesheets/compass/reset/_utilities.scss */
q:before,
q:after,
blockquote:before,
blockquote:after {
	content: '';
	content: none;
}

/* line 32, ../../../../../../var/lib/gems/2.3.0/gems/compass-core-1.0.3/stylesheets/compass/reset/_utilities.scss */
a img {
	border: none;
}

/* line 116, ../../../../../../var/lib/gems/2.3.0/gems/compass-core-1.0.3/stylesheets/compass/reset/_utilities.scss */
article,
aside,
details,
figcaption,
figure,
footer,
header,
hgroup,
main,
menu,
nav,
section,
summary {
	display: block;
}

/*
@import "blueprint";
@import "blueprint/liquid";
@import "blueprint/fancy-type";
@import "compass/utilities";
@import "compass/utilities/tables/scaffolding";
@import "compass/utilities/lists";
@import "compass/utilities/general/float";
@import "compass/css3";
@import "compass/layout";
*/
/* line 117, ../scss/screen.scss */
html,
body {
	height: 100%;
	-webkit-text-size-adjust: 100%;
	text-size-adjust: 100%;
}

/* line 122, ../scss/screen.scss */
body {
	font-family: Tahoma, Arial, Helvetica, sans-serif;
	font-size: 12px;
	line-height: 1.5em;
	background: #00355f;
	color: #333;
	padding-right: 10px;
}

/* line 131, ../scss/screen.scss */
a {
	color: #004477;
	text-decoration: none;
}
/* line 134, ../scss/screen.scss */
a:hover {
	text-decoration: underline;
}
/* line 137, ../scss/screen.scss */
a.button:hover {
	text-decoration: none;
}
/* line 140, ../scss/screen.scss */
a.ajax {
	text-decoration: none;
	border-bottom: 1px dashed #004477;
}

/* line 146, ../scss/screen.scss */
.add_info {
	color: #aaa;
	font-style: italic;
}

/* line 151, ../scss/screen.scss */
.text-align-right {
	text-align: right;
	white-space: nowrap;
}

/* line 156, ../scss/screen.scss */
.text-align-center {
	text-align: center;
	white-space: nowrap;
}

/* line 161, ../scss/screen.scss */
#container {
	height: 100%;
	width: 100%;
}
/* line 164, ../scss/screen.scss */
#container td {
	vertical-align: top;
}
/* line 167, ../scss/screen.scss */
#container #header {
	color: white;
	height: 92px;
	margin-top: 15px;
}

#container #header .sity_info {
	display: flex;
	justify-content: right;
	align-items: center;
	float: right;
	font-family: Tahoma;
	line-height: 35px;
	color: #bfd2e3;
	letter-spacing: 0.01em;
	font-size: 14px;
	margin-right: 15px;
}

#container #header .sity_info .city-title {
	display: inline-block;
}

#container #header .phone-number {
	font-family: Tahoma;
	font-size: 14px;
	font-weight: bold;
	color: #bfd2e3;
}

#container #header .phone-number {
	font-family: Tahoma;
	font-size: 14px;
	font-weight: bold;
	color: #bfd2e3;
}

#container #header .phone_logo {
	height: 24px;
	width: 24px;
	margin: 0;
	background: url('../img/phone_logo.svg') no-repeat;
}

#container #header .pre_login {
	display: flex;
	justify-content: right;
	align-items: flex-end;
	margin-top: 42px;
	margin-right: 10px;
	position: initial;
	word-wrap: normal;
}

#container #header .pre_login a {
	font-family: Tahoma;
	color: #bfd2e3;
	font-size: 12px;
	margin-right: 4px;
}

#container #header .pre_login .button {
	color: #00355f;
	margin: 22px 0 0 0;
}

#container #header .header_user_area {
	display: flex;
	justify-content: flex-end;
	align-items: center;
	margin-top: 35px;
	margin-right: 15px;
	font-family: Tahoma;
	color: #ffffff;
	font-size: 14px;
}

#container #header .after_login {
	display: flex;
	flex-direction: column;
	align-items: flex-end;
}

#container #header .after_login .client_name {
	max-width: 600px;
	white-space: nowrap;
	overflow: hidden;
	text-overflow: ellipsis;
	cursor: pointer;
}

#container #header .notifications_bell {
	position: relative;
	height: 24px;
	width: 24px;
	margin-right: 10px;
	background: url('/media/frontend/img/bell.svg') no-repeat center center;
	cursor: pointer;
}

#container #header .notifications_bell .unread_count {
	display: none;
	position: absolute;
	top: -5px;
	right: -5px;
	width: 16px;
	height: 16px;
	border-radius: 50%;
	background-color: red;
	color: white;
	font-size: 10px;
	font-weight: bold;
	line-height: 16px;
	text-align: center;
}

#container #header .after_login .exit_button {
	font-family: Tahoma;
	font-size: 10px;
	margin-left: 10px;
	color: #bfd2e3;
}

#side_login_form {
	display: none;
}

#side_info_client_form {
	-moz-border-radius: 5px;
	-webkit-border-radius: 5px;
	border-radius: 5px;
	background-color: #eee;
	padding: 8px;
	margin: 10px 0;
	color: #00355f;
}
#side_info_client_form .h2 {
	font-family: Tahoma, Arial;
	font-size: 16px;
	color: #46b163;
}

#side_login_form .overlay {
	position: absolute;
	top: 80px;
	right: 20px;
	border-radius: 5px;
	background-color: #eee;
	padding: 8px;
	margin: 10px 0;
	z-index: 9999;
}

/* line 83, ../scss/screen.scss */
#container #header .menu a {
	color: white;
	border-color: rgb(255, 255, 255);
}
/* line 170, ../scss/screen.scss */
#container #header #logo {
	float: left;
	width: 218px;
	height: 80px;
	overflow: hidden;
}
/* line 175, ../scss/screen.scss */
#container #header #logo .logo {
	height: 63px;
	width: 218px;
	margin: 12px 0 0 10px;
	background: url('../img/logo.svg') no-repeat;
}
/* line 181, ../scss/screen.scss */
#container #header #logo .logo_kazan {
	height: 55px;
	width: 200px;
	margin: 5px 0 0 15px;
	background: url('../img/logo_detal7.png') no-repeat;
}
/* line 187, ../scss/screen.scss */
#container #header #logo .info {
	margin: 0 0 0 15px;
	line-height: 14px;
	color: #ddd;
	letter-spacing: 0.01em;
	font-size: 13px;
}
/* line 193, ../scss/screen.scss */
#container #header #logo .info .tel {
	font-size: 14px;
	font-weight: bold;
	color: #fff;
}
/* line 200, ../scss/screen.scss */
#container #header a:hover #logo div {
	text-decoration: none;
	border-color: white;
}
/* line 204, ../scss/screen.scss */
#container #header .product_groups {
	float: left;
	width: 35%;
	min-height: 70px;
	padding: 4px 0;
	font-size: 11px;
	line-height: 1.3em;
}

#container .product_groups {
	display: flex;
	flex-direction: column;
	justify-content: center;
	align-items: center;
	width: 5%;
	min-height: 70px;
	padding: 54px 10px;
	font-size: 11px;
	line-height: 1.3em;
}

#container .main_text {
	font-family: Tahoma;
	text-align: center;
	font-size: 35px;
	line-height: 1.3em;
}

#container .under_main_text {
	margin-top: 60px;
	font-family: Tahoma;
	text-align: center;
	font-size: 22px;
	line-height: 1.3em;
}

#container .footer_main_text {
	margin-top: 30px;
	font-family: Tahoma;
	text-align: center;
	font-size: 15px;
	color: #0cc456;
	line-height: 1.3em;
}

#container #main .main_img {
	margin-top: 20px;
	height: 491px;
	/* width: 719px; */
	max-width: 100%;
	background: url('../img/main.svg') no-repeat;
}
/* line 210, ../scss/screen.scss */
#container #header .product_groups a {
	color: #bddcf6;
}
/* line 213, ../scss/screen.scss */
#container #header .product_groups .main {
	font-size: 12px;
	line-height: 1.5em;
}
/* line 216, ../scss/screen.scss */
#container #header .product_groups .main a {
	color: #ffffff;
}
/* line 221, ../scss/screen.scss */
#container #header .menu {
	width: max-content;
	max-width: 900px;
	margin: 7px 55px 0 40%;
	padding: 0;
	border: 0;
	/* overflow: hidden; */
	height: 15px;
}

@media screen and (max-width: 1920px) {
	#container #header .after_login .client_name {
		max-width: 20vw;
	}
}

@media screen and (max-width: 1620px) {
	#container #header .menu {
		margin: 7px 0 0 20%;
	}

	#container #header .after_login .client_name {
		max-width: 17vw;
		font-size: 0.9vw;
	}
}

@media screen and (max-width: 1440px) {
	#container #header .menu {
		margin: 7px 0 0 10%;
	}

	#container #header .after_login .client_name {
		max-width: 13vw;
		font-size: 0.9vw;
	}
}
/* line 62, ../../../../../../var/lib/gems/2.3.0/gems/compass-core-1.0.3/stylesheets/compass/typography/lists/_horizontal-list.scss */
#container #header .menu li {
	list-style-image: none;
	list-style-type: none;
	margin-left: 0;
	white-space: nowrap;
	float: left;
	padding-left: 10px;
	padding-right: 10px;
}
/* line 49, ../../../../../../var/lib/gems/2.3.0/gems/compass-core-1.0.3/stylesheets/compass/typography/lists/_horizontal-list.scss */
#container #header .menu li:first-child {
	padding-left: 0;
}
/* line 50, ../../../../../../var/lib/gems/2.3.0/gems/compass-core-1.0.3/stylesheets/compass/typography/lists/_horizontal-list.scss */
#container #header .menu li:last-child {
	padding-right: 0;
}
/* line 52, ../../../../../../var/lib/gems/2.3.0/gems/compass-core-1.0.3/stylesheets/compass/typography/lists/_horizontal-list.scss */
#container #header .menu li.last {
	padding-right: 0;
}
/* line 103, ../scss/screen.scss */
#container #header .menu li {
	border-left: 1px solid #bddcf6;
}
/* line 106, ../scss/screen.scss */
#container #header .menu li:first-child,
#container #header .menu li.first {
	border: none;
}
/* line 227, ../scss/screen.scss */
#container #header .search {
	-webkit-appearance: none;
	width: 110%;
	height: 35px;
	position: relative;
	display: flex;
	justify-content: center;
	align-items: center;
	flex-wrap: nowrap;
	margin: 20px;
	line-height: 35px;
	margin-left: 40px;
}

#container #header .search #search-input:focus::placeholder,
#container #header .search input[name='query']:focus::placeholder {
	color: #6f7a83;
	opacity: 1;
}

#container #header .search input[name='query'] {
	-webkit-appearance: none;
	/*margin-right: -4px;*/
	border-top-left-radius: 3px;
	border-bottom-left-radius: 3px;
	border: none;
	width: 641px;
	height: 35px;
	background-color: #ffffff;
	color: #333;
	padding: 0;
	position: relative;
	display: inline-block;
	padding-left: 8px;
	outline: none;
}

#container #header .search input[type='submit'] {
	-webkit-appearance: none;
	font-family: Tahoma;
	font-size: 14px;
	font-weight: bold;
	width: 116px;
	height: 35px;
	background-color: #46b163;
	border: none;
	position: absolute;
	transform: translate(279%, -48%);
	border-top-right-radius: 3px;
	border-bottom-right-radius: 3px;
	color: #ffffff;
	cursor: pointer;
}

.search input[type='submit']:active {
	transform: translateY(1px);
}

#container #header .search input#searchCatalog {
	-webkit-appearance: none;
	margin: 0 0 0 150px;
	font-family: Tahoma;
	font-size: 14px;
	width: 116px;
	font-weight: bold;
	height: 35px;
	background-color: #00355f;
	border: 2px solid #46b163;
	border-radius: 3px;
	padding: 2px;
	color: #ffffff;
	cursor: pointer;
	position: absolute;
	transform: translate(279%, -50%);
}

/* line 231, ../scss/screen.scss */
#container #header .basket_data {
	font-family: Tahoma;
	margin-right: 20px;
	margin-top: 7px;
	color: #ffffff;
	position: absolute;
	right: 0;
	/* word-wrap: normal; */
}
@media screen and (max-width: 1130px) {
	#container #header .basket_data {
		position: initial;
	}
}

#container #header .ajax {
	border: none;
	color: #ffffff;
	padding: 2px;
}

#container #header .ajax_button {
	border: none;
	color: #ffffff;
	background-color: #46b163;
	padding: 2px;
}

/* line 238, ../scss/screen.scss */
#container #central #sidebar_placeholder {
	width: 10px;
}

/* line 241, ../scss/screen.scss */
#container #central #sidebar {
	width: 1%;
	padding: 10px 8px;
	color: white;
}
/* line 83, ../scss/screen.scss */
#container #central #sidebar a {
	color: white;
	border-color: white;
}
/* line 245, ../scss/screen.scss */
#container #central #sidebar .menu {
	width: 140px;
}
/* line 248, ../scss/screen.scss */
#container #central #sidebar .menu li a {
	padding: 7.5px 8px;
	line-height: 20px;
	font-size: 12px;
	font-weight: bold;
	display: block;
}
/* line 255, ../scss/screen.scss */
#container #central #sidebar .menu li a:hover {
	background-color: #003964;
	text-decoration: none;
}
/* line 260, ../scss/screen.scss */
#container #central #sidebar .menu li .submenu {
	margin: 10px 0 10px 10px;
}
/* line 262, ../scss/screen.scss */
#container #central #sidebar .menu li .submenu a {
	font-size: 11px;
	font-weight: normal;
	color: #bddcf6;
	border: none;
	line-height: 18px;
}
/* line 270, ../scss/screen.scss */
#container #central #sidebar .menu li.current a {
	background: #bfd2e3;
	color: #012e50;
}
/* line 274, ../scss/screen.scss */
#container #central #sidebar .menu li.current .submenu a {
	background: none;
	color: #bddcf6;
}
/* line 280, ../scss/screen.scss */
#container #central #sidebar .side_login {
	-moz-border-radius: 5px;
	-webkit-border-radius: 5px;
	border-radius: 5px;
	background-color: #eee;
	padding: 8px;
	margin: 10px 0;
	color: #f43804;
	display: none;
}
/* line 91, ../scss/screen.scss */
#container #central #sidebar .side_login a {
	color: #004477;
}
/* line 286, ../scss/screen.scss */
#container #central #sidebar .side_login h2,
#container #central #sidebar .side_login .h2 {
	font-size: 16px;
	color: #000;
}
/* line 292, ../scss/screen.scss */
#container #central #sidebar .side_login .login_form input {
	width: 100%;
	height: 20px;
	border: 1px solid #ccc;
	color: #333333;
}
/* line 298, ../scss/screen.scss */
#container #central #sidebar .side_login .login_form .button {
	width: auto;
}
/* line 304, ../scss/screen.scss */
#container #central #content {
	background-color: #fff;
	padding: 10px;
	-moz-border-radius: 8px;
	-webkit-border-radius: 8px;
	border-radius: 8px;
	height: auto;
}
/* line 308, ../scss/screen.scss */
#container #central #content .news_block {
	width: 30%;
	float: right;
	border-left: 1px solid #ccc;
	padding: 10px;
	margin-left: 10px;
}
/* line 314, ../scss/screen.scss */
#container #central #content .news_block h2,
#container #central #content .news_block .h2 {
	margin-top: 0;
}
/* line 319, ../scss/screen.scss */
#container #central #content .balance_info {
	width: 200px;
	float: right;
	padding: 2px 10px;
	/*border: 1px solid #7F9DB9;*/
	background-color: #f0f0f0;
}
/* line 326, ../scss/screen.scss */
#container #central #content .product_groups {
	width: 65%;
	float: left;
	margin-bottom: 16px;
}
/* line 329, ../scss/screen.scss */
#container #central #content .product_groups .main {
	font-size: 16px;
	margin-bottom: 8px;
}
/* line 333, ../scss/screen.scss */
#container #central #content .product_groups .other {
	font-size: 14px;
}
/* line 338, ../scss/screen.scss */
#container #central #content .page_content {
	clear: left;
}
/* line 342, ../scss/screen.scss */
#container #central #content .news_list h3 {
	font-size: 16px;
	margin-bottom: 4px;
}
/* line 346, ../scss/screen.scss */
#container #central #content .news_list img {
	float: left;
	margin-right: 8px;
}
/* line 350, ../scss/screen.scss */
#container #central #content .news_list p {
	margin: 0;
}
/* line 353, ../scss/screen.scss */
#container #central #content .news_list li {
	overflow: hidden;
	clear: both;
	margin: 0 0 4px 0;
	padding-bottom: 40px;
	border-bottom: 1px solid #eee;
}
/* line 362, ../scss/screen.scss */
#container #central #content .pages_list h3 {
	font-size: 16px;
	margin-bottom: 4px;
}
/* line 366, ../scss/screen.scss */
#container #central #content .pages_list img {
	float: left;
	margin-right: 8px;
}
/* line 370, ../scss/screen.scss */
#container #central #content .pages_list li {
	overflow: hidden;
	clear: both;
	margin-bottom: 4px;
	padding-bottom: 4px;
	border-bottom: 1px solid #eee;
}
/* line 378, ../scss/screen.scss */
#container #central #content .site_map {
	margin-left: 30px;
}
/* line 380, ../scss/screen.scss */
#container #central #content .site_map a {
	font-size: 14px;
	font-weight: bold;
}
/* line 384, ../scss/screen.scss */
#container #central #content .site_map li ul {
	margin-bottom: 6px;
}
/* line 387, ../scss/screen.scss */
#container #central #content .site_map li ul li {
	list-style: disc;
}
/* line 390, ../scss/screen.scss */
#container #central #content .site_map li ul a {
	font-size: 12px;
	font-weight: normal;
}
/* line 397, ../scss/screen.scss */
#container #footer {
	color: white;
	height: 10px;
	padding: 20px 0 50px 10px;
}
/* line 83, ../scss/screen.scss */
#container #footer a {
	color: white;
	border-color: white;
}
/* line 401, ../scss/screen.scss */
#container #footer .menu {
	float: left;
	width: 65%;
	margin: 0;
	padding: 0;
	border: 0;
	overflow: hidden;
}
/* line 62, ../../../../../../var/lib/gems/2.3.0/gems/compass-core-1.0.3/stylesheets/compass/typography/lists/_horizontal-list.scss */
#container #footer .menu li {
	list-style-image: none;
	list-style-type: none;
	margin-left: 0;
	white-space: nowrap;
	float: left;
	padding-left: 10px;
	padding-right: 10px;
}
/* line 49, ../../../../../../var/lib/gems/2.3.0/gems/compass-core-1.0.3/stylesheets/compass/typography/lists/_horizontal-list.scss */
#container #footer .menu li:first-child {
	padding-left: 0;
}
/* line 50, ../../../../../../var/lib/gems/2.3.0/gems/compass-core-1.0.3/stylesheets/compass/typography/lists/_horizontal-list.scss */
#container #footer .menu li:last-child {
	padding-right: 0;
}
/* line 52, ../../../../../../var/lib/gems/2.3.0/gems/compass-core-1.0.3/stylesheets/compass/typography/lists/_horizontal-list.scss */
#container #footer .menu li.last {
	padding-right: 0;
}
/* line 103, ../scss/screen.scss */
#container #footer .menu li {
	border-left: 1px solid #bddcf6;
}
/* line 106, ../scss/screen.scss */
#container #footer .menu li:first-child,
#container #footer .menu li.first {
	border: none;
}
/* line 405, ../scss/screen.scss */
#container #footer .copyrights {
	clear: both;
	float: left;
	width: auto;
	text-align: left;
	padding-top: 10px;
}

#messengers_container {
	position: fixed;
	bottom: 16px;
	right: 16px;
	z-index: 9999;

	display: flex;
	flex-direction: column;
	align-items: flex-end;
}

#max_link,
#telegram_link {
	position: relative;
}

#telegram_link {
	margin-bottom: 3px;
}

.max_logo {
	height: 45px;
	width: 45px;
	background: url('/media/frontend/img/max.svg') no-repeat;
	background-size: cover;
}

.telegram_logo {
	height: 46px;
	width: 46px;
	background: url('/media/frontend/img/telegram.svg') no-repeat;
	background-size: cover;
}

.logo_32 {
	height: 32px;
	width: 32px;
}

.car_parts_max_logo {
	background: url('/media/frontend/img/max_settings.svg') no-repeat;
}

.question_max_logo {
	background: url('/media/frontend/img/max_question.svg') no-repeat;
}

.car_parts_telegram_logo {
	background: url('/media/frontend/img/telegram_settings.svg') no-repeat;
}

.question_telegram_logo {
	background: url('/media/frontend/img/telegram_question.svg') no-repeat;
}

.max_logo .dropdown-menu,
.telegram_logo .dropdown-menu {
	position: absolute;
	right: 48px;

	display: flex;
	flex-direction: row-reverse;
	align-items: center;

	height: 48px;
}

.max_logo .dropdown-menu > span,
.telegram_logo .dropdown-menu > span {
	display: flex;
	margin-right: 8px;
}

/* line 413, ../scss/screen.scss */
.per_page {
	float: right;
	margin: 20px 0;
}

/* line 418, ../scss/screen.scss */
.paginator {
	margin: 20px 0;
}
/* line 421, ../scss/screen.scss */
.paginator a,
.paginator span {
	padding: 3px 7px 2px 7px;
	margin: 2px 2px;
	text-decoration: none;
	font-size: 14px;
	background-color: #fff;
}
/* line 429, ../scss/screen.scss */
.paginator a {
	border: 1px solid #ccc;
	color: #004477;
}
/* line 432, ../scss/screen.scss */
.paginator a:hover,
.paginator a:active {
	border: 1px solid #7f9db9;
	background-color: #d8e4f0;
}
/* line 437, ../scss/screen.scss */
.paginator a.prev,
.paginator a.next {
	border: none;
}
/* line 440, ../scss/screen.scss */
.paginator a.prev:hover,
.paginator a.next:hover {
	background: none;
	text-decoration: underline;
}
/* line 447, ../scss/screen.scss */
.paginator span.current {
	border-color: #004477;
	background-color: #004477;
	color: #fff;
	font-weight: bold;
}
/* line 453, ../scss/screen.scss */
.paginator span.separator {
	border: none;
	color: #333;
}
/* line 457, ../scss/screen.scss */
.paginator span.prev,
.paginator span.next {
	border: none;
	color: #ccc;
}

/* line 467, ../scss/screen.scss */
#errorMsg {
	background: #ffdfdf;
	border: 1px solid #f3afb5;
}

/* line 472, ../scss/screen.scss */
.uniForm {
	width: 500px;
}
/* line 474, ../scss/screen.scss */
.uniForm legend {
	color: #343434;
	font-weight: bold;
	background: none repeat scroll 0 0 #efefef;
	padding: 0.5em 1em;
	margin: 1em 0;
	width: 100%;
}
/* line 482, ../scss/screen.scss */
.uniForm .ctrlHolder {
	padding: 0.5em 1em;
	border-bottom: 1px solid #efefef;
	overflow: hidden;
}
/* line 486, ../scss/screen.scss */
.uniForm .ctrlHolder.focused {
	background: #fffcdf;
}
/* line 489, ../scss/screen.scss */
.uniForm .ctrlHolder.error,
.uniForm .ctrlHolder.focused.error {
	background: #ffdfdf;
	border: 1px solid #f3afb5;
}
/* line 494, ../scss/screen.scss */
.uniForm .ctrlHolder .errorField {
	color: #af4c4c;
}
/* line 497, ../scss/screen.scss */
.uniForm .ctrlHolder .formHint,
.uniForm .ctrlHolder.focused.error .formHint {
	display: none;
}
/* line 501, ../scss/screen.scss */
.uniForm .ctrlHolder.focused .formHint {
	display: block;
	font-size: smaller;
	color: #666;
}
/* line 506, ../scss/screen.scss */
.uniForm .ctrlHolder.valid .errorField {
	display: none;
}
/* line 509, ../scss/screen.scss */
.uniForm .ctrlHolder label {
	width: 165px;
	float: left;
}
/* line 512, ../scss/screen.scss */
.uniForm .ctrlHolder label em {
	color: red;
}
/* line 517, ../scss/screen.scss */
.uniForm .ctrlHolder .field label {
	width: 200px;
}
/* line 520, ../scss/screen.scss */
.uniForm .ctrlHolder .textInput,
.uniForm .ctrlHolder textarea {
	padding: 2px 2px;
	border: 1px solid #aaa;
	background: #fff;
	width: 300px;
}
/* line 526, ../scss/screen.scss */
.uniForm .ctrlHolder .textInput:focus,
.uniForm .ctrlHolder textarea:focus {
	outline: none;
}
/* line 530, ../scss/screen.scss */
.uniForm .ctrlHolder .field {
	width: 610px;
}

#registration-privacy_policy .ctrlHolder {
	width: 430px;
	float: left;
}

#registration-privacy_policy .field {
	width: 20px;
	float: left;
	margin: 0 5px 0 0;
}

#registration-privacy_policy label[for='id_privacy_policy'] {
	width: 500px;
	float: left;

	font-size: 15px;
	color: #7f7f8e;
}

.registration-privacy_policy {
	margin-left: 10px;
	width: 400px;
	text-align: justify;
	font-family: 'Calibri light', Tahoma;
	font-size: 14px;
	color: #8e8e90;
}

/* line 533, ../scss/screen.scss */
.uniForm .ctrlHolder .field li input {
	position: relative;
	top: 2px;
	margin: 0;
}

.uniForm .ctrlHolder .field ul.radioselect {
	list-style: none;
	padding: 0;
	margin: 0;
	display: flex; /* Добавлено для горизонтального отображения */
}

.uniForm .ctrlHolder .field ul.radioselect li {
	margin-right: 0;
	padding: 0; /* Удаляем внутренние отступы */
}

.uniForm .ctrlHolder label[for='id_person_type'] {
	display: inline-block;
	margin-right: 0px;
	vertical-align: top;
}

/* line 542, ../scss/screen.scss */
.errorField {
	color: #af4c4c;
}

/* line 547, ../scss/screen.scss */
#content h1,
#content .h1 {
	font-size: 24px;
	margin: 0.5em 0 0.5em 0;
}
/* line 552, ../scss/screen.scss */
#content h2,
#content .h2 {
	font-size: 18px;
	border-bottom: 1px solid #efefef;
	margin: 1.5em 0 0.8em 0;
}
/* line 558, ../scss/screen.scss */
#content strong {
	font-weight: bold;
}

/* line 564, ../scss/screen.scss */
.page_content p {
	margin-bottom: 8px;
}
/* line 567, ../scss/screen.scss */
.page_content ul {
	margin: 8px 0;
}
/* line 569, ../scss/screen.scss */
.page_content ul li {
	list-style: disc;
	margin-left: 3em;
}

/* line 576, ../scss/screen.scss */
dl {
	overflow: hidden;
}
/* line 578, ../scss/screen.scss */
dl dt,
dl dd {
	display: block;
	float: left;
	margin-bottom: 4px;
}
/* line 584, ../scss/screen.scss */
dl dt {
	clear: both;
	width: 150px;
}

/* line 591, ../scss/screen.scss */
.window.button,
.button,
button {
	-webkit-appearance: none;
	background-color: #f5f5f5;
	border-color: #eeeeee #dedede #dedede #eeeeee;
	color: #565656;
	display: inline-block;
	vertical-align: middle;
	vertical-align: auto;
	display: inline;
	margin: 0.7em 0.5em 0.7em 0;
	border-width: 1px;
	border-style: solid;
	font-family: 'Lucida Grande', Tahoma, Arial, Verdana, sans-serif;
	font-size: 100%;
	line-height: 130%;
	font-weight: bold;
	text-decoration: none;
	cursor: pointer;
	padding: 5px 10px 5px 7px;
	-moz-border-radius: 5px;
	-webkit-border-radius: 5px;
	border-radius: 5px;
	text-shadow:
		#fff,
		-1px,
		-1px,
		0;
	padding: 5px 10px;
	font-size: 14px;
}
/* line 47, ../../../../../../var/lib/gems/2.3.0/gems/compass-blueprint-1.0.0/framework/blueprint/stylesheets/blueprint/_buttons.scss */
.button:active,
button:active {
	background-color: #6299c5;
	border-color: #72a9d5 #6299c5 #6299c5 #72a9d5;
	color: white;
}
/* line 62, ../../../../../../var/lib/gems/2.3.0/gems/compass-blueprint-1.0.0/framework/blueprint/stylesheets/blueprint/_buttons.scss */
.button:hover,
button:hover {
	background-color: #dff4ff;
	border-color: #d2f1ff #c2e1ef #c2e1ef #d2f1ff;
	color: #336699;
}
/* line 75, ../../../../../../var/lib/gems/2.3.0/gems/compass-blueprint-1.0.0/framework/blueprint/stylesheets/blueprint/_buttons.scss */
.button img,
button img {
	margin: 0 3px -3px 0 !important;
	padding: 0;
	border: none;
	width: 16px;
	height: 16px;
	float: none;
}

/* line 606, ../scss/screen.scss */
button.disabled {
	background-color: #dddddd;
	border-color: #eeeeee #dedede #dedede #eeeeee;
	color: #e80b0b;
}

button.disabled,
button.disabled:hover {
	background-color: #acacac;
	border-color: #eeeeee #dedede #dedede #eeeeee;
	color: rgb(255 255 255);
}
.window .buttons-container {
	display: flex;
	justify-content: center;
}
.disabled-btn {
	background-color: #dddddd;
	border-color: #eeeeee #dedede #dedede #eeeeee;
	color: #a1a1a1;
}
.disabled-btn:hover {
	background-color: #dddddd;
	border-color: #eeeeee #dedede #dedede #eeeeee;
	color: #a1a1a1;
}
.hidden {
	visibility: hidden;
	position: absolute;
	z-index: -1;
}

/* line 612, ../scss/screen.scss */
.products_search {
	overflow: hidden;
	/* height: 86px; */
}

/* line 614, ../scss/screen.scss */
.products_search .select,
.products_search .textinput {
	height: 22px;
	line-height: 22px;
	font-size: 14px;
	border: 1px solid #ccc;
	padding: 0 4px;
	margin-right: 5px;
	color: #333;
}
/* line 624, ../scss/screen.scss */
.products_search select {
	height: 24px;
}
/* line 627, ../scss/screen.scss */
.products_search h1 {
	float: left;
}
/* line 630, ../scss/screen.scss */
.products_search .search {
	float: left;
	clear: left;
	margin-bottom: 10px;
}
/* line 634, ../scss/screen.scss */
.products_search .search #id_query {
	width: 410px;
	height: 28px;
	line-height: 28px;
	font-size: 16px;
	border: 1px solid #ccc;
	padding: 0 4px;
	float: left;
	margin: 0 5px 5px 0;
	color: #333;
}
/* line 645, ../scss/screen.scss */
.products_search .search .button {
	margin: 0;
	margin: 0 5px 5px 0;
}
/* line 650, ../scss/screen.scss */
.products_search .results_count {
	float: left;
	clear: left;
}
/* line 654, ../scss/screen.scss */
.products_search .col_right {
	width: 420px;
	float: right;
	/* height: 86px; */
}

/* line 657, ../scss/screen.scss */
.products_search .col_right .toggler {
	float: right;
	border-bottom: 1px dashed #004477;
	line-height: 1em;
	margin-bottom: 5px;
}
/* line 663, ../scss/screen.scss */
.products_search .col_right .filters {
	overflow: hidden;
	visibility: hidden;
	clear: both;
	padding: 5px 10px;
	background: #ffffee;
	border: 1px solid #ccc;
	position: absolute;
	right: 20px;
	top: 122px;
	width: 400px;
	font-family: Tahoma;
}
/* line 671, ../scss/screen.scss */
.products_search .col_right .filters .filter {
	margin: 0 5px 5px 0;
	float: left;
}
/* line 675, ../scss/screen.scss */
.products_search .col_right .filters .button {
	float: right;
	margin: 0;
}
/* line 680, ../scss/screen.scss */
.products_search .col_right .client_info {
	/*width: 240px;*/
	float: right;
	clear: right;
	padding: 3px 10px;
	margin-top: 5px;
	background: #f0f0f0;
	/*@include border-radius(3px);*/
}
/* line 690, ../scss/screen.scss */
.products_search #id_producer {
	width: 150px;
}
/* line 693, ../scss/screen.scss */
.products_search #id_delivery_from {
	width: 50px;
}
/* line 696, ../scss/screen.scss */
.products_search #id_delivery_to {
	width: 50px;
}

/* line 701, ../scss/screen.scss */
.ac_loading {
	background: white url('indicator.gif') right center no-repeat;
}

/* line 705, ../scss/screen.scss */
.ac_results {
	padding: 0px;
	border: 1px solid black;
	background-color: white;
	overflow: hidden;
	z-index: 99999;
}
/* line 711, ../scss/screen.scss */
.ac_results ul {
	width: 100%;
	list-style-position: outside;
	list-style: none;
	padding: 0;
	margin: 0;
}
/* line 717, ../scss/screen.scss */
.ac_results ul li {
	margin: 0px;
	padding: 2px 5px;
	cursor: default;
	display: block;
	/*
	        if width will be 100% horizontal scrollbar will apear
	        when scroll mode will be used
	        */
	/*width: 100%;*/
	font: menu;
	font-size: 12px;
	/*
	        it is very important, if line-height not setted or setted
	        in relative units scroll will be broken in firefox
	        */
	line-height: 16px;
	overflow: hidden;
}
/* line 735, ../scss/screen.scss */
.ac_results ul li.ac_even {
	background-color: #fff;
}
/* line 738, ../scss/screen.scss */
.ac_results ul li.ac_odd {
	background-color: #eee;
}
/* line 741, ../scss/screen.scss */
.ac_results ul li.ac_over {
	background-color: #0a246a;
	color: white;
}
/* line 745, ../scss/screen.scss */
.ac_results ul li strong {
	font-weight: bold;
}

/* line 752, ../scss/screen.scss */
.base_table {
	border-collapse: collapse;
}
/* line 754, ../scss/screen.scss */
.base_table tr.sep {
	border-top: 2px solid #666;
}
/* line 757, ../scss/screen.scss */
.base_table th {
	text-align: center;
	font-weight: bold;
	background: #eee;
}
/* line 762, ../scss/screen.scss */
.base_table td,
.base_table th {
	padding: 2px 4px;
	border: 1px solid #ccc;
}

/* line 770, ../scss/screen.scss */
.small_table td,
.small_table th {
	font-size: 11px;
	font-family: Tahoma, Arial, sans;
}
div.products_group_title {
	font-weight: bold;
	font-size: 14px;
	margin: 2px 0 5px;
}
div.no_original_message {
	font-weight: bold;
	font-size: 15px;
	margin-top: 10px;
	margin-bottom: 10px;
}
/* line 777, ../scss/screen.scss */
table.products_table {
	width: 100%;
	border-collapse: separate;
	border-spacing: 1px;
	border: 1px solid #7f9db9;
	background: #ffffff;
}
.products_table.main_products {
	margin: 5px 0 10px 0;
}
.products_table {
	margin-bottom: 10px;
}
.products_table.expand .hidden {
	display: table-row;
	visibility: visible;
	position: inherit;
}
/* line 786, ../scss/screen.scss */
table.products_table th {
	padding: 4px 4px;
	height: 30px;
	vertical-align: center;
	text-align: center;
	font-weight: bold;
	background: #d8e4f0;
}
/* line 794, ../scss/screen.scss */
table.products_table td {
	padding: 2px 4px;
	color: #222;
}
/* line 797, ../scss/screen.scss */
table.products_table td input.count {
	height: 15px;
	border: 1px solid #888;
	font-size: 12px;
	line-heihgt: 15px;
	padding: 0 2px;
	width: 30px;
	font-weight: bold;
	text-align: center;
}
/* line 807, ../scss/screen.scss */
table.products_table td.price {
	text-align: right;
	font-weight: bold;
	white-space: nowrap;
}
table.products_table td.return {
	text-align: center;
}
/* line 811, ../scss/screen.scss */
table.products_table td.delivery {
	display: flex;
	justify-content: center;
	text-align: left;
	font-weight: bold;
}

table.products_table div.delivery {
	display: flex;
	justify-content: center;
	text-align: center;
	font-weight: bold;
}

table.products_table td.delivery .delivery-block {
	width: 107px;
	height: 21px;
}
table.products_table td.delivery .delivery-block-search {
	width: 130px;
}
/* line 816, ../scss/screen.scss */
table.products_table tr {
	background: #f4f4f4;
}
/* line 819, ../scss/screen.scss */
table.products_table tr.odd {
	background: #e0e0e0;
}
/* line 822, ../scss/screen.scss */
table.products_table tr.order {
	background: #e0e0e0;
}
/* line 825, ../scss/screen.scss */
table.products_table tr:hover {
	background: #d8e4f0;
}

/* line 846, ../scss/screen.scss */
a.product_photo {
	width: 16px;
	height: 16px;
	float: right;
	margin: 2px;
	background: url('../../icons/camera.png');
}

/* line 851, ../scss/screen.scss */
a.product_catalog {
	width: 16px;
	height: 16px;
	float: right;
	margin: 2px;
	background: url('../../icons/table_gear.png');
}

/* line 856, ../scss/screen.scss */
a.cross {
	width: 16px;
	height: 16px;
	float: right;
	margin: 2px;
	background: url('../../icons/arrow_switch.png');
}

/* line 861, ../scss/screen.scss */
a.basket_add {
	flex-shrink: 0;
	width: 16px;
	height: 16px;
	margin: 2px;
	background: url('../../icons/basket_add.png');
	margin-left: 5px;
}

/* line 867, ../scss/screen.scss */
a.basket_delete {
	width: 16px;
	height: 16px;
	float: right;
	margin: 2px;
	background: url('../../icons/basket_delete.png');
}

/* line 872, ../scss/screen.scss */
a.basket_confirm {
	width: 16px;
	height: 16px;
	float: right;
	margin: 2px;
	background: url('../../icons/accept.png');
}

/* line 877, ../scss/screen.scss */
a.basket_decline {
	width: 16px;
	height: 16px;
	float: right;
	margin: 2px;
	background: url('../../icons/delete.png');
}

a.coins_add {
	width: 16px;
	height: 16px;
	float: right;
	margin: 2px;
	background: url('../../icons/coins_add.png');
}

a.coins_delete {
	width: 16px;
	height: 16px;
	float: right;
	margin: 2px;
	background: url('../../icons/coins_delete.png');
}

/* line 882, ../scss/screen.scss */
a.supplier_statistics {
	width: 16px;
	height: 16px;
	float: right;
	margin: 2px;
	background: url('../../icons/chart_curve.png');
}

/* line 887, ../scss/screen.scss */
a.edit {
	width: 16px;
	height: 16px;
	margin: 2px;
	background: url('../../icons/pencil.png');
	display: inline-block;
	margin: -2px 0 -2px 2px;
	opacity: 0.6;
}

/* line 894, ../scss/screen.scss */
a.edit:hover {
	opacity: 1;
}

/* line 898, ../scss/screen.scss */
a.comment_add {
	background: url('../../icons/comment_add.png');
}

/* line 902, ../scss/screen.scss */
a.comment_edit {
	background: url('../../icons/comment_edit.png');
}

a.header_profile_balance {
	z-index: 11;
}

/* line 906, ../scss/screen.scss */
td.nowrap {
	white-space: nowrap;
}

/* line 910, ../scss/screen.scss */
td.basket_add {
	width: 60px;
}
/* line 912, ../scss/screen.scss */
td.basket_add div {
	display: flex;
	align-items: center;
}
/* line 915, ../scss/screen.scss */
td.basket_add div p.added-count,
.offer-buy-block p.added-count {
	background-color: #0fad38;
	color: white;
	border-radius: 5px;
	padding: 0px 3px;
	min-width: 15px;
	margin-left: 3px;
	line-height: 15px;
	text-align: center;
}

/* line 928, ../scss/screen.scss */
tr.basket_deleted td {
	background-color: #ff9999;
	text-decoration: line-through;
}

/* line 933, ../scss/screen.scss */
tr.basket_changed td {
	background-color: #ffff99;
}

/* line 937, ../scss/screen.scss */
.basket_old_value {
	color: #666;
	text-decoration: line-through;
}

/* line 942, ../scss/screen.scss */
.basket_new_value {
	font-weight: bold;
}

/* line 946, ../scss/screen.scss */
p.warning {
	background: #ffff99 url('../../icons/error.png') 10px center no-repeat;
	border: 1px solid #dd4;
	padding: 6px 6px 6px 34px;
	line-height: 16px;
	margin-bottom: 8px;
}

/* line 954, ../scss/screen.scss */
.window {
	display: none;
	position: fixed;
	top: 5%;
	left: 50%;
	margin-left: -300px;
	width: 750px;
	max-height: 80%;
	overflow-x: auto;
	background-color: #d8dfea;
	border: 5px solid #00355f;
	-moz-border-radius: 20px;
	-webkit-border-radius: 20px;
	border-radius: 20px;
	padding: 12px;
}
/* line 968, ../scss/screen.scss */
.window .close-button {
	float: right;
	color: #880000;
	font-size: 18px;
}
.window .close-button:hover {
	color: #f00;
	transition: color 0.3s;
	transition: font-size 0.3s;
	/*font-size: 20px;*/
	text-decoration: none;
}

.window .window-content {
	color: #333;
}

/* line 954, ../scss/screen.scss */
.window .window-content dl.window_table {
	color: #00355f;
	background-color: #eee;
	margin-left: auto;
	margin-right: auto;
	/* border: 1px solid black; */
	-moz-border-radius: 10px;
	-webkit-border-radius: 10px;
	padding: 5px;
}
#create_order_agree_modal.window {
	top: 20%;
	width: max-content;
}
#create_order_agree_modal.window .window-content {
	padding-right: 25px;
	padding-left: 20px;
}
#create_order_agree_modal.window h1:first-child {
	white-space: nowrap;
	margin: 0;
	padding: 0;
	text-align: center;
}

dl.window_table dt,
dl.window_table dd {
	flex-basis: 45%;
	padding: 10px;
}

dl.window_table dt:nth-child(odd),
dl.window_table dd:nth-child(odd) {
	font-size: 14px;
	background-color: #d8dfea;
}

/* line 973, ../scss/screen.scss */
.window .window-content h1,
.window .window-content .h1 {
	text-align: center;
	color: #00355f;
	font-size: 18px;
	margin-bottom: 10px;
}
/* line 978, ../scss/screen.scss */
.window .window-content strong {
	font-weight: bold;
}

/* line 984, ../scss/screen.scss */
#container #header .close-button {
	color: #880000;
}

/* line 988, ../scss/screen.scss */
#message_window {
	top: 50%;
	transform: translate(0, -50%);
	border-width: 2px;
	border-radius: 5px;
}

.message_window {
	top: 50%;
	transform: translate(0, -50%);
	border-width: 2px;
	border-radius: 5px;
}

/* line 995, ../scss/screen.scss */
.message_window__container {
	display: flex;
	justify-content: center;
	align-items: center;
	flex-direction: column;
}

/* line 1000, ../scss/screen.scss */
#message_window .button {
	color: black;
	font-weight: normal;
	border: 1px solid black;
}

/* line 1007, ../scss/screen.scss */
.message_content {
	display: flex;
	justify-content: center;
	align-items: center;
	flex-direction: column;
}
/* line 1008, ../scss/screen.scss */
.message_content h1 {
	font-size: 18px;
	font-weight: bold;
}

.message_content strong {
	font-weight: bold;
}

/* line 1012, ../scss/screen.scss */
.message_content img {
	object-fit: contain;
	max-width: 450px;
	max-height: 150px;
	margin-bottom: 10px;
}
/* line 1018, ../scss/screen.scss */
.message_content p {
	font-size: 16px;
	margin-bottom: 10px;
}
/* line 1022, ../scss/screen.scss */
.message_content .text {
	text-indent: 25px;
	text-align: justify;
}

/* line 1007, ../scss/screen.scss */
.message_content {
	display: flex;
	justify-content: center;
	align-items: center;
	flex-direction: column;
}
/* line 1008, ../scss/screen.scss */
.message_content h1 {
	font-size: 18px;
	font-weight: bold;
}
/* line 1012, ../scss/screen.scss */
.message_content img {
	object-fit: contain;
	max-width: 450px;
	max-height: 150px;
	margin-bottom: 10px;
}
/* line 1018, ../scss/screen.scss */
.message_content p {
	font-size: 16px;
	margin-bottom: 10px;
}
/* line 1022, ../scss/screen.scss */
.message_content .text {
	text-indent: 25px;
	text-align: justify;
}

/* line 1006, ../scss/screen.scss */
#orders_table tr {
	/*    background-color: #ffffff;
  &.hover { background-color: darken(#ffffff, 15%) }*/
}

/* line 1011, ../scss/screen.scss */
#orders_table tr.hover_delivery {
	background-color: #99ff99;
}
/* line 1013, ../scss/screen.scss */
#orders_table tr.hover_delivery.delivery_order {
	background-color: #4dff4d;
}

/* line 1019, ../scss/screen.scss */
#orders_table tr.cancelled,
#orders_table tr.cancel-requested {
	color: #888;
}
/* line 1022, ../scss/screen.scss */
#orders_table tr.cancelled td,
#orders_table tr.cancel-requested td {
	color: #aaa;
}
/* line 1024, ../scss/screen.scss */
#orders_table tr.cancelled td a,
#orders_table tr.cancel-requested td a {
	color: #aaa;
}
/* line 1029, ../scss/screen.scss */
#orders_table tr.cancelled {
	text-decoration: line-through;
}

/* line 1034, ../scss/screen.scss */
#orders_table tr.error {
	background-color: #ff9999;
}

/* line 1038, ../scss/screen.scss */
a.cancel_delivery {
	display: inline-block;
	width: 16px;
	height: 16px;
	margin: 0 2px;
	background: url('../../icons/delete.png');
}

/* line 1046, ../scss/screen.scss */
.position_will_delivery {
	display: inline-block;
	width: 16px;
	height: 16px;
	margin: 0 2px;
	background: url('../../icons/lorry_go.png');
}

/* line 1054, ../scss/screen.scss */
#address-field_autocomplete {
	width: 310px;
}

/* line 1058, ../scss/screen.scss */
#id_comment {
	width: 310px;
}

/* line 1062, ../scss/screen.scss */
.overlay {
	background-color: #000;
}

/* line 1088, ../scss/screen.scss */
.express_info {
	display: none;
	margin-top: 10px;
}
/* line 1091, ../scss/screen.scss */
.express_info.show {
	display: block;
}
/* line 1094, ../scss/screen.scss */
.express_info .error {
	color: red;
}

/* line 1099, ../scss/screen.scss */
.express-disabled {
	color: grey;
}

/* line 1103, ../scss/screen.scss */
.btn-link {
	color: #004477;
	background: transparent;
	border: 0;
}
/* line 1107, ../scss/screen.scss */
.btn-link:hover {
	text-decoration: underline;
}

/* line 1112, ../scss/screen.scss */
.float-right {
	float: right;
}

/* line 1116, ../scss/screen.scss */
#default_address {
	padding: 5px;
}

/* line 1121, ../scss/screen.scss */
.delivery-addresses .address {
	margin: 10px 0;
	display: flex;
	align-items: center;
}
/* line 1125, ../scss/screen.scss */
.delivery-addresses .address .delete {
	display: inline-block;
	width: 20px;
	height: 20px;
	margin-left: 5px;
	background: url('../../icons/delete.png');
	background-size: 20px;
}

.invisible {
	display: none;
}

.clearfix {
	clear: both;
}

div.form {
	.label label {
		font-weight: bolder;
	}
	.form_item {
		margin-bottom: 0.5em;
		.help {
			font-size: smaller;
			color: #666;
		}
	}
	.error {
		background-color: error-bg-color;
		margin-bottom: 0.3em;
		display: inline-block;
		padding: 0 0.5em;
	}
	span.required {
		color: red;
	}
}

/* line 1134, ../scss/screen.scss */
.delivery-addresses .address input {
	padding: 5px;
}
/* line 1138, ../scss/screen.scss */
.delivery-addresses .add_address {
	border-radius: 50px;
	width: 20px;
	height: 20px;
	background: url('../../icons/add.png') 20px 20px #ddd;
}
/* line 1143, ../scss/screen.scss */
.delivery-addresses .add_address:before {
	content: '';
}

.delivery-info {
	margin: 10px 0 5px 15px;
}
/* line 1150, ../scss/screen.scss */
.delivery-info label[for='delivery_addresses'] {
	margin-left: 15px;
}

/* line 1155, ../scss/screen.scss */
.delivery-date {
	font-weight: normal;
	cursor: pointer;
	position: relative;
	font-size: 11px;
	margin: 0 5px 0 0;
}

/* line 1163, ../scss/screen.scss */
.delivery .delivery-date {
	margin: 0 0 0 5px;
}

/* line 1170, ../scss/screen.scss */
.sup-time {
	color: limegreen;
	font-size: 9px;
	vertical-align: super;
}

/* line 1176, ../scss/screen.scss */
.tooltip {
	background: #efe4b0;
	font-weight: bold;
	padding: 5px 10px;
	font-size: 12px;
	border-radius: 4px;
	display: none;
}

/* line 1185, ../scss/screen.scss */
.tooltip[data-show] {
	display: block;
}

/* line 1190, ../scss/screen.scss */
.arrow,
.arrow::before {
	position: absolute;
	width: 8px;
	height: 8px;
	background: inherit;
}

/* line 1198, ../scss/screen.scss */
.arrow {
	visibility: hidden;
}

/* line 1202, ../scss/screen.scss */
.arrow::before {
	visibility: visible;
	content: '';
	transform: rotate(45deg);
}

/* line 1208, ../scss/screen.scss */
.tooltip[data-popper-placement^='top'] > .arrow {
	bottom: -4px;
}

/* line 1212, ../scss/screen.scss */
.tooltip[data-popper-placement^='bottom'] > .arrow {
	top: -4px;
}

/* line 1216, ../scss/screen.scss */
.tooltip[data-popper-placement^='left'] > .arrow {
	right: -4px;
}

/* line 1220, ../scss/screen.scss */
.tooltip[data-popper-placement^='right'] > .arrow {
	left: -4px;
}

.select2-container {
	width: 167px;
}

.select2-results__option {
	padding-right: 20px;
	vertical-align: middle;
}
.select2-results__option:before {
	content: '';
	display: inline-block;
	position: relative;
	height: 20px;
	width: 20px;
	border: 2px solid #e9e9e9;
	border-radius: 4px;
	background-color: #fff;
	margin-right: 20px;
	vertical-align: middle;
}
.select2-results__option[aria-selected='true']:before {
	font-family: fontAwesome;
	content: '\f00c';
	color: #fff;
	background-color: blue;
	border: 0;
	display: inline-block;
	padding-left: 7px;
}
.select2-container--default .select2-results__option[aria-selected='true'] {
	background-color: #fff;
}
.select2-container--default
	.select2-results__option--highlighted[aria-selected] {
	background-color: #eaeaeb;
	color: #272727;
}
.select2-container--default .select2-selection--multiple {
	margin-bottom: 10px;
	max-height: 32px;
}
.select2-container--default.select2-container--open.select2-container--below
	.select2-selection--multiple {
	border-radius: 4px;
}
.select2-container--default.select2-container--focus
	.select2-selection--multiple {
	border-color: #f77750;
	border-width: 2px;
}
.select2-container--default .select2-selection--multiple {
	border-width: 2px;
}
.select2-container--open .select2-dropdown--below {
	border-radius: 6px;
	box-shadow: 0 0 10px rgba(0, 0, 0, 0.5);
}
.select2-container--default
	.select2-selection--multiple
	.select2-selection__choice {
	border: initial !important;
	background-color: initial !important;
	padding: initial !important;
}
.select2-container--default
	.select2-selection--multiple
	.select2-selection__choice:not(:last-child)::after {
	content: ' ,';
}
.select2-container .select2-selection--multiple .select2-selection__rendered {
	display: flex !important;
}
.select2-container--default
	.select2-selection--multiple
	.select2-selection__choice__remove {
	visibility: hidden !important;
}
.select2-container--default .select2-search--inline .select2-search__field {
	visibility: hidden !important;
}
.position_bot_left {
	left: 300px;
	bottom: 30px;
	position: relative;
	width: fit-content;
}
.period_group {
	display: flex;
}
.period_left {
	display: grid;
}
.period_right {
}
.period {
	display: flex !important;
	margin-top: 10px;
}
.period_label {
	width: 120px;
}

.balance-btn {
	margin-top: 3px;
	margin-left: 5px;
}

button.filter {
	background-color: #dddddd;
	border-color: #eeeeee #dedede #dedede #eeeeee;
	color: #999;
	margin: 0 !important;
	padding: 0;
	border: none;
	width: 16px;
	height: 16px;
}

.filter-btn {
	background-repeat: no-repeat;
	background-position: center;
	height: 20px;
	width: 20px;
	background-color: #d8e4f0;
}

.apply_filter-btn {
	background-image: url(../../icons/tick.png);
}

.decline_filter-btn {
	background-image: url(../../icons/cross.png);
}

.field_header {
	display: inline-flex;
}

.input-header {
	background-color: white;
	border: 2px solid #aaa;
	border-radius: 4px;
	height: 21px;
	margin: 0 5px;
}

.label-header {
	padding: 4px 0;
}

.general_modal__window {
	position: fixed;
	top: 0;
	right: 0;
	bottom: 0;
	left: 0;
	background: rgba(0, 0, 0, 0.7);
	z-index: 99;
	-webkit-transition: opacity 400ms ease-in;
	-moz-transition: opacity 400ms ease-in;
	transition: opacity 400ms ease-in;
	display: none;
	pointer-events: none;
}

.return_modal__window {
}

.modal_active {
	display: block;
}

.modal_active_z {
	display: block;
	z-index: 999;
}

.general_modal__window:target {
	pointer-events: auto;
}

.general_modal__window > div {
	display: grid;
	position: relative;
	margin: 10% auto;
	max-height: 80%;
	padding: 3px;
	border-radius: 5px;
	background: #f2f2f2;
	box-shadow: 0px 0px 20px 2px;
}

.return_form {
	width: 800px;
}

#return_modal.general_modal__window {
	box-sizing: border-box;
	overflow-y: auto;
}

#return_modal.general_modal__window > .return_form {
	box-sizing: border-box;
	max-height: none;
	max-width: calc(100vw - 32px);
}

.return_form__title {
	display: flex;
	justify-content: space-between;
	align-items: center;
	padding: 4px 4px;
	height: 20px;
	text-align: left;
	font-weight: bold;
	font-size: 14px;
	background: #d8e4f0;
}

.return_form__button {
	font-weight: bold;
	font-size: 14px;
	background-color: #004477;
	color: #fff;
}

.return_form__button:active {
	background-color: #6299c5;
	border-color: #72a9d5 #6299c5 #6299c5 #72a9d5;
	color: white;
}

.return_form__button:hover {
	background-color: #004477b8;
	border-color: #d2f1ff #c2e1ef #c2e1ef #d2f1ff;
	color: #fff;
}

.general_modal_form-body {
	background: #ffffff;
	display: grid;
	font-size: 12px;
}

.return_form-body {
	grid-template-columns: 4fr 3fr;
}

.return_form-body-left {
	display: grid;
	font-size: 12px;
	margin: 10px;
}

.return_form-body-left-item {
	margin: 0px 0 10px 0px;
}

.return_form-body-left-item__label {
	font-size: 14px;
	margin-bottom: 5px;
}

.return_form-body-left-item__input {
	font-size: 14px;
	background-color: #d8d8d8;
	margin-top: 5px;
	border: 1px solid;
}

.return_form-body-left-item__count {
	width: 65px;
	text-align-last: center;
	text-decoration: underline;
}

.return_form-body-left-item__reason {
	width: 100%;
}

.return_form-body-left-item__info {
	width: 100%;
	height: 100px;
	text-align: left;
	resize: none;
}

.return_form-body-right {
	display: grid;
	font-size: 12px;
	margin: 10px;
}

.return_form-body-right-first {
	background-color: #fff7cd;
	margin: 0px 0 10px 0px;
}

.return_form-body-right-first-header {
	font-size: 18px;
	margin: 10px;
}

.return_form-body-right-second {
	/* border: 1px solid #aaa; */
	background-color: #fff2cc;
	height: 80px;
}

.return_form-body-right__files {
	width: calc(100% - 6px);
	height: calc(80px - 6px);
	text-align: left;
	resize: none;
}

.confirm_modal__window {
}

.confirm_modal__window:target {
	pointer-events: auto;
}

.confirm_modal__window > div {
	display: grid;
	position: relative;
	margin: 10% auto;
	max-height: 80%;
	padding: 3px;
	border-radius: 5px;
	background: #f2f2f2;
	box-shadow: 0px 0px 20px 2px;
}

.confirm_form {
	width: 800px;
}

.confirm_modal-body {
	min-height: 200px;
	font-size: 16px;
	justify-content: space-around;
	align-content: center;
	margin-inline: 20px;
}

.field_holder {
	display: grid;
	grid-template-columns: 1fr 2fr;
	padding: 5px;
}

.field_holder__label {
}

.field_holder__textInput {
	font-weight: bolder;
}

.buttons {
	display: flex;
	justify-content: space-between;
}

.confirm_form__buttons {
	display: flex;
	justify-content: center;
}

.content-button {
	margin: 0;
	width: 150px;
	height: 30px;
	border-color: #565656;
}

.form-button {
	background-color: #004477;
	color: #fff;
	width: 150px;
	height: 30px;
	margin: 0 10px;
}

.form-button:hover {
	background-color: #004477b8;
	border-color: #d2f1ff #c2e1ef #c2e1ef #d2f1ff;
	color: #fff;
}

.wrapper-dropdown-4 {
	position: relative;
	width: 270px;
	height: 0;
	margin: 0 auto;
	padding: 0px 2px;
	background: #fff;
	border-radius: 4px;
	cursor: pointer;
	outline: none;
	-webkit-appearance: none;
	-moz-appearance: none;
	appearance: none;
}

wrapper-dropdown-4::-ms-expand {
	display: none;
}

.dd_trigger {
	width: 250px;
	background-image: url(../../icons/arrow_select__.png);
	background-repeat: no-repeat;
	padding-right: 20px;
	background-position-x: 253px;
	background-position-y: 4px;
}

.dd_trigger.input-header::after {
	content: '';
	width: 0;
	height: 0;
	position: absolute;
	right: 10px;
	top: 50%;
	margin-top: -3px;
	border-width: 6px 6px 0 6px;
	border-style: solid;
	border-color: #004477b8 transparent;
}

.wrapper-dropdown-4:after {
	width: 0;
	height: 0;
	position: absolute;
	right: 10px;
	top: 50%;
	margin-top: -3px;
	border-width: 6px 6px 0 6px;
	border-style: solid;
	border-color: #004477b8 transparent;
}

.wrapper-dropdown-4 .dropdown {
	position: absolute;
	top: 100%;
	margin-top: 1px;
	left: -1px;
	right: -1px;
	background: white;
	border: 2px solid silver;
	border-top: none;
	list-style: none;
	transition: all 0.3s ease-out;
	opacity: 0;
	pointer-events: none;
	list-style-type: none;
	max-height: 200px;
	overflow-y: scroll;
}

.wrapper-dropdown-4 .dropdown li {
	position: relative;
}

.wrapper-dropdown-4 .dropdown li label {
	display: block;
	padding: 10px 10px 10px 30px;
	border-bottom: 1px dotted #1ccfcf;
	transition: all 0.3s ease-out;
	font-weight: normal !important;
	text-align: left !important;
}

.wrapper-dropdown-4 .dropdown li:last-of-type label {
	border: none;
}

.wrapper-dropdown-4 .dropdown li input {
	position: absolute;
	display: block;
	right: 10px;
	top: 50%;
	margin-top: -8px;
}

.wrapper-dropdown-4 .dropdown li:hover label {
	background: #f0f0f0;
}

.wrapper-dropdown-4 .dropdown li input:checked ~ label {
	font: normal !important;
	text-align: left !important;
}

.wrapper-dropdown-4.active {
}

.wrapper-dropdown-4.active .dropdown {
	opacity: 1;
	pointer-events: auto;
}

a.position_return {
	background: url('../../icons/page_white_go.png');
	opacity: 1;
}

a.position_chat {
	background: url('../../icons/comments.png');
	opacity: 1;
}

a.position_chat_new {
	background: url('../../icons/comments_add.png');
	opacity: 1;
}

a.new_comments {
	color: red;
	opacity: 1;
	display: inline-block;
	margin: -2px 0 -2px 2px;
}
a.position_can_be_returned,
a.position_can_be_returned_with_conditions,
a.position_can_not_be_returned {
	margin: 2px 2px -2px 2px;
}

a.position_can_be_returned {
	background: url('../../icons/return_arrow_blue.png');
	opacity: 1;
}

a.position_can_be_returned_with_conditions {
	background: url('../../icons/return_arrow_blue.png');
	opacity: 1;
	filter: brightness(2);
}

a.position_can_not_be_returned {
	background: url('../../icons/return_arrow_grey.png');
	opacity: 1;
}

a.view_files {
	width: 30px;
	height: 30px;
	margin: 2px;
	background: url('../../icons/page_white_camera.png');
	background-repeat: no-repeat;
	background-size: cover;
	margin: -2px 0 -2px 2px;
}

a.has_files {
	opacity: 1;
}

a.has_not_files {
	opacity: 0.5;
}

.return_error_general {
	border: 2px solid red;
}

.return_error_check {
	color: red;
}

.return_error_label {
	color: red;
	display: none;
	font-size: 14px;
}

.return_error_active {
	display: block;
}

div.message__text {
	display: grid;
	grid-template-columns: 90% 10%;
	justify-content: space-between;
	padding: 2px;
	margin: 2px;
	border: solid 1.5px #004477b8;
	border-radius: 5px;
}

.chat_form {
	display: grid;
	grid-template-rows: 90% 10%;
}

.chat_container {
	white-space: pre-line;
	overflow-y: scroll;
	height: 350px;
}

.chat_message {
}

.return_chat__message {
	padding: 10px 10px;
	height: 55px;
	vertical-align: center;
	text-align: left;
	font-size: 14px;
	background: #d8e4f0;
	width: calc(100% - 40px);
	margin: 10px;
}

.chat_buttons {
	display: grid;
	grid-template-columns: 4fr 3fr;
	margin-left: 5px;
	gap: 10px;
}

label.chat_message {
	display: inline;
}

div.chat_day,
div.message__author {
	text-align: center;
}

.message__author {
	color: #004477;
	font-weight: 800;
}

.chat_inner_message {
	display: grid;
	grid-template-columns: 80% 20%;
}

.chat_outer_message {
	display: grid;
	grid-template-columns: 20% 80%;
}

.label_chat_message_time {
	font-size: 10px;
}

.hidden {
	display: none;
}

div.files {
	display: grid;
	margin: 10px;
	align-content: end;
}

.img_preview {
	height: 100px;
	padding: 10px;
}

.files_container {
	height: 350px;
	overflow-y: scroll;
}

.files_preview {
	display: flex;
	justify-content: center;
}

.font-smaller {
	font-size: smaller !important;
}

.bg-danger {
	display: inline-block;
	padding: 0.25em 0.45em;
	font-size: 0.5em;
	font-weight: 700;
	line-height: 1;
	color: #fff;
	text-align: center;
	white-space: nowrap;
	vertical-align: baseline;
	border-radius: 50rem !important;
	background-color: #dc3545 !important;
	box-sizing: border-box;
	-webkit-text-size-adjust: 100%;
	-webkit-tap-highlight-color: transparent;
	position: relative;
	top: -15px;
}

a.act_download {
	background: url('../../icons/page_white_put.png');
	opacity: 1;
}

.fileList > div > label > span:last-child {
	color: red;
	display: inline-block;
	margin-left: 7px;
	cursor: pointer;
}

.fileList input[type='file'] {
	display: none;
}

.fileList > div:last-child > label {
	display: block;
	width: 145px;
	padding: 2px 0 0 0;
	font-size: 14px;
	height: 23px;
	text-align: center;
	border: 1px solid #0000003b;
	border-radius: 5px;
	font-weight: bold;
	cursor: pointer;
	margin-bottom: 5px;
}

.fileList > div:last-child > label:hover {
	background-color: #dff4ff;
	border-color: #0000003b;
	color: #336699;
}

.fileList > div:last-child > label:after {
	content: 'Выбрать файлы';
	vertical-align: middle;
}
#delivery-schedule-container {
	padding-left: 10px;
}
#delivery-schedule-container h4 {
	color: red;
}
.calendar .ui-state-workday a {
	background: #64e677 !important;
}
.calendar .ui-state-holiday a {
	background: #ff4d4f !important;
	color: white;
}
.calendar .ui-datepicker-today a {
	font-weight: bold;
}
.delivery-weekdays-modal {
	display: none;
	align-items: center;
	justify-content: center;
	transition: 1000ms linear;
	position: absolute;
	left: 50%;
	top: 50%;
	transform: translate(-50%, -50%);
}
.delivery-weekdays-modal-cnt {
	width: 353px;
	height: 300px;
	background-color: #d8dfea;
	padding: 10px 25px;
	border: 1px solid black;
	border-radius: 2px;
}
.delivery-weekdays-modal .title-modal {
	font-size: 16px;
	text-align: center;
	padding-left: 15px;
	margin-bottom: 15px;
}
.delivery-weekdays-modal .title-bottom {
	font-size: 12px;
	color: red;
	margin-top: 10px;
}
.delivery-weekdays-modal .close-button {
	float: right;
	position: relative;
	top: -5px;
	right: -20px;
	width: 15px;
	height: 15px;
	cursor: pointer;
	background-image: url(/media/extern/extjs/resources/images/default/panel/tool-sprites.gif);
}
.delivery-weekdays-modal .close-button:hover {
	text-decoration: none;
}
#client-weekends-modal .help-workday {
	position: relative;
	top: -46px;
	left: 2px;
}
#client-weekends-modal .help-holiday {
	position: relative;
	left: 2px;
}
#delivery-schedule-weekend-form .help-holiday,
#delivery-schedule-weekend-form .help-workday {
	position: relative;
	top: 4px;
	left: 108px;
}
#client-weekends-modal .help-cnt {
	position: absolute;
	height: 0;
	display: grid;
	grid-template-columns: 140px;
	justify-items: baseline;
	left: 150px;
	top: 208px;
}
.help-cnt {
	position: absolute;
	height: 0;
}
.delivery-weekdays-modal .help-holiday {
	top: -57px;
	left: 2px;
}
.delivery-weekdays-modal .button {
	position: relative;
	left: 120px;
	background-image: url(/media/icons/accept.png) !important;
	background-position: 5px center;
	background-repeat: no-repeat;
	padding-left: 25px;
	border: 1px solid #808080ba;
	background-color: #ededed;
	font-weight: normal;
}
.delivery-weekdays-form > label {
	display: block;
}
.calendar {
	margin: 0 0 15px 0;
}
.delivery-weekdays-form input[type='checkbox'] {
	-webkit-appearance: initial;
	appearance: initial;
	background-image: url('/media/icons/tick.png');
	width: 15px;
	height: 15px;
	margin: 0;
	top: 2px;
	position: relative;
}
.delivery-weekdays-form input[type='checkbox']:checked {
	background-image: url('/media/icons/cross.png');
}
.delivery-weekdays-form label,
.delivery-weekdays-form input {
	cursor: pointer;
}
.delivery-weekdays-form label {
	display: block;
	height: 100%;
	width: 100%;
}
.delivery-weekdays-form table td {
	border: 1px solid black;
	border-collapse: collapse;
	padding: 2px 5px;
}
.delivery-weekdays-form table {
	width: 100px;
	background-color: white;
}
.checkedHighlight td {
	background-color: #a1a1a1;
	color: white;
}
#delivery-calendar-form h4,
.delivery-weekdays-form h4 {
	color: red;
	font-size: 14px;
}
.help-workday,
.help-holiday {
	display: inline-block;
	margin: 0 2px 0 5px;
}
.example-days {
	display: inline-block;
	padding: 2px 5px;
	border: 1px solid #c5c5c5;
}
.delivery-weekdays-form .help-workday,
.delivery-weekdays-form .help-holiday {
	margin-top: 10px;
}
.delivery-weekdays-form .example-days {
	background-repeat: no-repeat;
	background-color: unset;
	background-position: center;
	width: 22px;
	height: 22px;
	padding: 0;
	border: 1px solid black;
}
.delivery-weekdays-form .example-days.workday {
	background-image: url('/media/icons/tick.png');
	background-color: white;
}
.delivery-weekdays-form .example-days.holiday {
	background-color: #a1a1a1;
	background-image: url('/media/icons/cross.png');
}
#delivery-calendar-form .example-days.workday,
#client-calendar-modal .example-days.workday {
	background: #66e57b;
}
#delivery-calendar-form .example-days.holiday,
#client-calendar-modal .example-days.holiday {
	background: #fe5355;
	color: white;
}
.delivery-weekdays-form h4 {
	margin-bottom: 10px;
}

#calendar-modal .delivery-weekdays-modal-cnt {
	width: 480px;
	height: 345px;
}
#calendar-modal .help-workday,
#calendar-modal .help-holiday {
	top: unset;
	left: unset;
}
#calendar-modal h4 {
	color: red;
}
#calendar-modal .button {
	float: right;
	left: unset;
	top: -3px;
	margin: 0 0 0 10px;
}
#calendar-modal .client-calendar-form-save-btn {
	margin-left: 0;
}
#client-calendar-modal .client-calendar-form-save-btn {
	background-image: url(/media/icons/accept.png) !important;
}
#client-calendar-modal .client-calendar-form-cancel-btn {
	background-image: url(/media/icons/cancel.png) !important;
}
#client-calendar-modal .ui-datepicker {
	width: 474px !important;
}
#client-calendar-modal .help-workday {
	margin-left: 0;
}

#have_offers_without_max_days_modal_bg {
	align-items: center;
	justify-content: center;
	width: 100%;
	height: 100vh;
	background-color: #00000091;
	position: absolute;
	top: 0;
	left: 0;
	z-index: 1000;
}
#have_offers_without_max_days_modal {
	width: 274px;
	height: 85px;
	background-color: white;
	padding: 10px 15px;
	border: 2px solid #bfd2e3;
	border-radius: 2px;
	text-align: center;
	position: absolute;
	left: 50%;
	top: 50%;
	transform: translate(-50%, -50%);
	z-index: 1001;
}
#have_offers_without_max_days_modal .modal_text {
	font-size: 14px;
	text-align: center;
	margin: 20px 0;
	font-weight: bold;
}
#have_offers_without_max_days_modal .close-button {
	float: right;
	position: relative;
	top: -5px;
	right: -10px;
	width: 20px;
	height: 20px;
	cursor: pointer;
	font-size: 20px;
	font-weight: bold;
}
#have_offers_without_max_days_modal .close-button:hover {
	text-decoration: none;
}
#have_offers_without_max_days_modal .modal_btn {
	border: 1px solid #00355f;
}

#register-delivery-weekdays-form {
	margin-bottom: 10px;
	padding-left: 10px;
}

#register-delivery-weekdays-form .help-cnt {
	position: relative;
	left: 125px;
	top: -35px;
}

.delivery-calendar-modal {
	display: none;
	align-items: center;
	justify-content: center;
	transition: 1000ms linear;
	position: absolute;
	left: 50%;
	top: 50%;
	transform: translate(-50%, -50%);
}
.delivery-calendar-modal-cnt {
	width: 653px;
	height: 500px;
	background-color: #d8dfea;
	padding: 10px 25px;
	border: 1px solid black;
	border-radius: 2px;
}
.delivery-calendar-modal .title-modal {
	font-size: 16px;
	text-align: center;
	padding-left: 15px;
	margin-bottom: 15px;
}
.delivery-calendar-modal .title-bottom {
	font-size: 12px;
	color: red;
	margin-top: 10px;
}
.delivery-calendar-modal .close-button {
	float: right;
	position: relative;
	top: -5px;
	right: -20px;
	width: 15px;
	height: 15px;
	cursor: pointer;
	background-image: url(/media/extern/extjs/resources/images/default/panel/tool-sprites.gif);
}
.delivery-calendar-modal .close-button:hover {
	text-decoration: none;
}
.delivery-calendar-modal .help-holiday,
.delivery-weekdays-modal .help-workday {
	position: relative;
	top: -34px;
	left: 120px;
}
.delivery-calendar-modal .help-holiday {
	top: -57px;
	left: 3px;
}
.delivery-calendar-modal .button {
	position: relative;
	left: 120px;
	background-position: 5px center;
	background-repeat: no-repeat;
	padding-left: 25px;
	border: 1px solid #808080ba;
	background-color: #ededed;
	font-weight: normal;
}

.extra_tooltip {
	opacity: 0;
	display: inline;
	position: relative;
	width: auto;
	border: 1px solid black;
	padding: 2px;
	border-radius: 2px;
	background-color: white;
	transition: 300ms;
	color: black;
	font-size: 12px;
}

#send_request_tooltip {
	opacity: 0;
	display: inline;
	position: absolute;
	left: 155px;
	border: 1px solid black;
	padding: 3px;
	border-radius: 2px;
	background-color: white;
	transition: 300ms;
	color: black;
	font-weight: normal;
}

.filelist-label {
	font-size: 14px;
}
#filesCnt {
	max-height: 400px;
	overflow: auto;
}
#search-bar {
	position: absolute;
	top: calc(50% - 17px);
	left: calc(50% - 325px);
	height: 35px;
}

#search-bar a {
	color: black;
	display: block;
}

#search-results {
	display: none;
	outline: var(--searchbar-border-width) solid var(--searchbar-border-color);
	width: 648px;
	height: auto;
	background-color: #ffffff;
	border-top-left-radius: 0;
	border-bottom-right-radius: 3px;
	border-bottom-left-radius: 3px;
	position: relative;
	top: 1px;
}

#search-results-header {
	display: none;
	grid-template-columns: 25% 25% 50%;
	justify-items: start;
	background: rgb(191, 210, 227);
	color: #ffffff;
	font-weight: bold;
	font-size: 10pt;
	line-height: 17px;
}

#search-results-header > div {
	padding-left: 6px;
	position: relative;
	bottom: 1px;
}

#search-results .search-item {
	display: grid;
	grid-template-columns: 25% 25% 50%;
	background-color: #ffffff;
	color: var(--searchbar-result-text-color);
	line-height: 18px;
	border-top: var(--searchbar-inner-border-width) solid
		var(--searchbar-inner-border-color);
}

#search-info-limit {
	font-size: 10px;
	color: var(--searchbar-result-text-color);
	border-top: var(--searchbar-inner-border-width) solid
		var(--searchbar-inner-border-color);
	line-height: 12px;
	padding: 5px 0 5px 8px;
	display: none;
}

.search-item div {
	padding-left: 6px;
	border-right: var(--searchbar-inner-border-width) solid
		var(--searchbar-inner-border-color);
}

.search-item .search-item-name {
	border: none;
}

#search-results:hover {
	display: block;
}

#search-input:focus + #search-results {
	display: block;
	z-index: 1000;
}

#search_interfaces {
	position: absolute;
	top: 28px;
}

#switch_search_intf {
	color: white;
	background-color: transparent;
	text-decoration: underline;
	border: none;
	font-family: Tahoma, Arial, Helvetica, sans-serif;
	-moz-appearance: none;
	-webkit-appearance: none;
	cursor: pointer;
}

#switch_search_intf option {
	color: black;
}

#switch_search_intf:focus {
	outline: none;
}

#switch_search_intf select::-ms-expand {
	display: none;
}

.responsibility-chart {
	width: 16px;
	height: 16px;
	border-radius: 50%;
	transform: rotate(90deg);
	margin: 1px 0 0 3px;
}
.return-img {
	margin: -1px 0 0 5px;
	width: 20px;
	height: 20px;
}

:root {
	--searchbar-border-color: rgb(0, 53, 95);
	--searchbar-inner-border-color: #e0e0e0;
	--searchbar-border-width: 2px;
	--searchbar-inner-border-width: 1px;
	--searchbar-result-text-color: black;
}
.file-item {
	display: flex;
	flex-direction: column;
	margin-top: 5px;
	position: relative;
}

.file-name-container {
	display: flex;
	align-items: center;
	gap: 8px;
}

.file-name {
	font-size: 14px;
}

.remove-button {
	cursor: pointer;
	font-size: 8px;
	color: #ff0000;
}

.progress-bar {
	width: 0;
	height: 20px;
	background-color: green;
	transition: width 0.3s;
	margin-top: 5px;
	position: relative;
	text-align: center;
	color: white;
	overflow: hidden;
}

.progress-bar.error {
	background-color: red;
}

.status-text {
	font-size: 12px;
	color: #ffffff;
	position: absolute;
	left: 50%;
	top: 0;
	transform: translate(-50%, 0);
}
.photo-container {
	display: flex;
	flex-direction: column;
	align-items: center;
}

.table-filter {
	margin: 5px 5px 5px 0;
	border-collapse: separate;
	border-spacing: 1px;
	border: 1px solid #7f9db9;
	padding: 5px;
	box-sizing: border-box;
}
.filters-row .table-filter {
	margin: 15px 5px 5px 0;
}
.col-left {
	float: left;
	width: 10%;
	box-sizing: border-box;
}
.table-container {
	width: 90%;
	display: inline-block;
	max-width: 100%;
	overflow-x: auto;
	overflow-y: hidden;
	-webkit-overflow-scrolling: touch;
	box-sizing: border-box;
}
.table-container.full-width {
	width: 100%;
}
@media screen and (max-width: 1024px) {
	.col-left {
		float: none;
		width: 100%;
		margin-bottom: 8px;
	}

	.table-container {
		width: 100%;
		display: block;
	}
}
.table-filter.producers {
	max-height: 497px;
	overflow: auto;
}
.producers_filter_title,
#term_filter_title {
	font-size: 14px;
	color: #00355f;
	font-weight: bold;
	text-align: center;
	padding-bottom: 10px;
}
.filters-row .producer_filter_row {
	display: inline;
	align-self: center;
	justify-self: left;
}
.producer_filters_name_label {
	white-space: nowrap;
	overflow: hidden !important;
	text-overflow: ellipsis;
}
/*.filters-row {*/
/*  display: grid;*/
/*  grid-template-columns: 225px auto;*/
/*}*/
.filters-row .table-filter {
	margin: 15px 0px 5px;
}
.filters-row .table-filter.producers {
	padding-left: 10px;
	border: none;
	margin-left: 100px;
}
/*.filters-row .table-filter.term {*/
/*  margin-right: 15px;*/
/*  max-height: 135px;*/
/*  height: fit-content;*/
/*}*/
/* .filters-row .table-filter.term #show_arrow_cnt {
  display: none;
} */
/* .filters-row .table-filter.term #term_filter_cnt {
  height: auto;
} */
.producer_filters_label {
	color: #00355f;
	font-weight: bold;
	cursor: pointer;
}
.producer_filters_label input {
	margin-left: 0;
	margin: auto 0;
	float: left;
}
.producer_filters_from_price_label {
	font-size: 10px;
	color: grey;
	white-space: nowrap;
}
#active_producers_filters {
	/* margin-bottom: 10px; */
}
.active_producer_filters_label {
	/* border: 1px solid #00355f; */
	margin-right: 3px;
	margin-top: 3px;
	padding: 1px 5px;
	color: #00355f;
	background-color: #d8e4f0;
	font-size: 11px;
	font-weight: bold;
	width: auto;
	display: inline-block;
	border-radius: 2px;
}
.active_producer_filters_label span {
	padding-left: 3px;
	cursor: pointer;
}
#all_producers_filters_btn {
	cursor: pointer;
	display: flex;
	align-items: center;
	justify-content: left;
}
.plus_in_circle_icon {
	background-image: url('../../icons/white_blue_plus_circle.png');
	background-size: cover;
	width: 16px;
	min-width: 16px;
	height: 16px;
	margin-right: 4px;
}
#producers_filters_btn_title {
	display: inline-block;
	color: #00355f;
	text-decoration-line: underline;
	font-size: 13px;
}
#show_all_active_prod_filters_btn,
#term_filter_apply,
#term_filter_reset {
	display: inline-block;
	color: #00355f;
	text-decoration-line: underline;
	font-size: 13px;
	cursor: pointer;
}
#producer_filters_container {
	margin: 5px 0 2px;
}
.filters-row #producer_filters_container {
	width: 100%;
	display: grid;
	grid-template-columns: repeat(6, 15%);
	grid-auto-rows: 30px;
}
#clear_all_producer_filters_btn {
	color: white;
	background-color: #c0c0c0;
	cursor: pointer;
}
.filters-row .producer_filters_label_text {
	display: inline;
	width: auto;
	padding-left: 0px;
}
.producer_filters_label_text {
	width: auto;
	padding-left: 20px;
}

@media screen and (max-width: 1366px) {
	.filters-row .table-filter.producers {
		margin-left: 0;
		padding-left: 0;
	}

	.filters-row #producer_filters_container {
		grid-template-columns: repeat(6, 15%);
		grid-auto-rows: minmax(40px, auto);
		column-gap: 0;
		row-gap: 4px;
		align-items: start;
	}

	.filters-row .producer_filter_row {
		display: block;
		min-width: 0;
	}

	.filters-row .producer_filters_label {
		display: block;
	}

	.filters-row .producer_filters_label_text {
		display: flex;
		flex-direction: column;
		align-items: flex-start;
		min-width: 0;
		padding-left: 0;
		line-height: 1.2;
	}

	.filters-row .producer_filters_name_label {
		display: block;
		white-space: normal;
		overflow: visible !important;
		text-overflow: clip;
		line-height: 1.2;
	}

	.filters-row .producer_filters_from_price_label {
		display: block;
		margin-top: 2px;
		line-height: 1.2;
	}
}

@media screen and (max-width: 768px) {
	.filters-row #producer_filters_container {
		grid-template-columns: repeat(2, minmax(140px, 1fr));
		column-gap: 8px;
	}
}
#producer_filters_term_input {
	width: 35px;
}
.arrow_cnt {
	padding-right: 2px;
	float: right;
	cursor: pointer;
}
.show_all_offers_btn .arrow_cnt {
	position: relative;
	top: -2px;
}
.arrow_icon {
	border: solid rgb(0, 53, 95);
	border-width: 0 1px 1px 0;
	display: inline-block;
	padding: 5px;
	transition: all 150ms;
}
.show_all_offers_btn .arrow_icon {
	padding: 3px;
}
.arrow_icon.up {
	transform: rotate(-135deg);
	-webkit-transform: rotate(-135deg);
	margin-top: 8px;
}
.arrow_icon.down {
	transform: rotate(45deg);
	-webkit-transform: rotate(45deg);
}
#producer_filters_slider_term_input {
	width: 99%;
}
.term_slider_text {
	display: flex;
	justify-content: space-between;
}
#term_input {
	padding-bottom: 5px;
	align-items: center;
	justify-content: space-around;
	display: flex;
}
#term_filter_cnt {
	height: 0;
	overflow: hidden;
}

.red-placeholder::-webkit-input-placeholder {
	color: red;
}

.red {
	color: red;
	cursor: pointer;
}

.show_all_offers_btn_cnt {
	position: relative;
	height: 0;
	width: 0;
}

.show_all_offers_btn {
	height: 19px;
	width: 175px;
	text-align: center;
	top: -11px;
	position: relative;
	padding: 3px 5px 0;
	border-radius: 0 0 3px 3px;
	cursor: pointer;
	transition: 300ms;
	color: #31668e;
	float: right;
	/* font-weight: bold; */
}

#fixed-header {
	position: sticky !important;
	background-color: #00355f;
	top: 0;
	left: 0;
	width: 100%;
	z-index: 100;
}

.related-products {
	margin-top: 20px;
}

.related-products-list {
	display: flex;
	gap: 15px;
	list-style: none;
	padding: 0;
}

.related-product-item {
	width: 250px;
	height: 430px;
	border: 1px solid #ddd;
	border-radius: 8px;
	display: flex;
	flex-direction: column;
	position: relative;
	padding: 10px;
	box-sizing: border-box;
	flex-shrink: 0;
	flex-grow: 0;
}

.related-product-offer-block {
	background: #fff;
	box-sizing: border-box;
	display: flex;
	flex-direction: column;
	align-items: stretch;
	justify-content: flex-start;
	width: 100%;
	margin-top: auto;
}

.related-product-image {
	width: 200px;
	height: 200px;
	object-fit: cover;
	border-radius: 8px;
	cursor: pointer;
	margin: 0 auto;
	display: block;
	flex-shrink: 0;
}

.related-product-no-photo-wrapper {
	width: 200px;
	height: 200px;
	margin: 0 auto;
	display: flex;
	flex-direction: column;
	align-items: center;
	justify-content: center;
}

.related-product-no-photo-wrapper .no-photo-img {
	width: 140px;
	height: 140px;
	background-size: contain;
}

.related-product-link {
	text-decoration: none;
	color: black;
	flex-grow: 0;
	flex-shrink: 0;
}

.related-product-name {
	display: block;
	font-size: 14px;
	word-wrap: break-word;
	line-height: 1.4;
	flex-grow: 0;
	flex-shrink: 0;
	text-align: left;

	/* Обрезание до 3 строк */
	display: -webkit-box;
	-webkit-line-clamp: 3;
	-webkit-box-orient: vertical;
	overflow: hidden;
	text-overflow: ellipsis;
	max-height: calc(1.4em * 3);
}

.related-product-info {
	display: flex;
	justify-content: space-between;
	align-items: center;
	width: 100%;
	padding: 4px 0;
	font-size: 12px;
	gap: 10px;
}

.product-producer,
.product-code {
	display: flex;
	align-items: center;
	min-width: 0;
}

.product-producer {
	flex: 1;
	overflow: hidden;
}

.product-code {
	flex-shrink: 0;
}

.producer-name,
.code-value {
	font-weight: bold;
	white-space: nowrap;
	overflow: hidden;
	text-overflow: ellipsis;
	/* Примерная ширина для 6 символов */
	max-width: 70px;
	display: inline-block;
	vertical-align: bottom;
}

.related-product-info-label {
	color: grey;
	margin-right: 4px;
	flex-shrink: 0;
}

.price.price-copy {
	position: relative;
	text-align: right;
	padding-left: 28px;
}

.dealer-icon {
	position: absolute;
	top: 50%;
	transform: translateY(-50%);
	left: 0;
	width: 27px;
	height: 22px;
	z-index: 1;
}
.overdue-debt {
	color: red;
}
#transaction_table td {
	text-align: center;
	vertical-align: middle;
}
.transaction_status {
	cursor: pointer;
}
.payday_not_due {
	width: 16px;
	height: 16px;
	background: url('../../icons/accept_gray.svg');
	margin: auto;
}
.paid {
	width: 16px;
	height: 16px;
	background: url('../../icons/accept.png');
	margin: auto;
}
.unpaid {
	width: 16px;
	height: 16px;
	background: url('../../icons/delete.png');
	margin: auto;
}
.received_payment {
	width: 16px;
	height: 16px;
	background: url('../../icons/coins_add.png');
	margin: auto;
}
.correct_balance {
	width: 16px;
	height: 16px;
	background: url('../../icons/book_edit.png');
	margin: auto;
}
.refund {
	width: 16px;
	height: 16px;
	background: url('../../icons/box_arrows_black.png');
	margin: auto;
}
#transaction_table td:nth-child(2),
#transaction_table th:nth-child(2),
#transaction_table td:nth-child(10),
#transaction_table th:nth-child(10) {
	text-align: left;
}

#transaction_table td.price-copy,
#transaction_table td:nth-child(5),
#transaction_table td:nth-child(6),
#transaction_table td:nth-child(7),
#transaction_table th:nth-child(5),
#transaction_table th:nth-child(6),
#transaction_table th:nth-child(7) {
	text-align: right;
}
#transaction_table th:nth-child(2),
#transaction_table td:nth-child(2),
#transaction_table th:nth-child(10),
#transaction_table td:nth-child(10) {
	width: 200px;
	min-width: 200px;
	max-width: 200px;
}
#transaction_table {
	border-collapse: collapse;
	margin-top: 0 !important;
}

.transaction-table-scroll {
	width: 1px;
	min-width: 100%;
	max-width: 100%;
	overflow-x: auto;
	-webkit-overflow-scrolling: touch;
	padding-bottom: 4px;
}

.transaction-table-scroll #transaction_table {
	width: max-content;
	min-width: 100%;
}

.sticky-balance-wrapper {
	background-color: white !important;
	margin: 0 !important;
}
.sticky-header-block {
	position: static;
	top: auto;
	background-color: white !important;
	padding: 2px 0 8px;
}
.sticky-header-block::before {
	content: none;
}
.sticky-header-block > h2 {
	margin: 0;
	padding: 0 0 6px;
	border-bottom: 1px solid #e3e8ee;
}
.pagination-top {
	background-color: white;
	margin: 8px 0 0 !important;
	padding-bottom: 6px;
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	gap: 8px 12px;
}

.pagination-top .paginator {
	margin: 0;
	order: 1;
	flex: 1 1 auto;
}

.pagination-top .per_page {
	float: none;
	order: 2;
	margin: 0 0 0 auto;
	white-space: nowrap;
}

.pagination-top .per_page select {
	margin: 0;
}
.transaction-table-scroll {
	margin-top: 2px;
}
#transaction_table tr:first-child {
	position: static;
	top: auto;
	background-color: white !important;
	margin: 0;
}
#client_form {
	display: flex !important;
	align-items: center !important;
	gap: 15px !important;
}
#client_form label {
	margin-bottom: 0 !important;
}
#client_form .select2-container {
	width: 300px !important;
}
#client_form .select2-selection--multiple .select2-selection__choice,
#client_form .select2-search--inline {
	display: none !important;
}
#client_form .select2-selection--multiple .select2-selection__rendered {
	overflow: hidden !important;
	white-space: nowrap !important;
	text-overflow: ellipsis !important;

	padding-left: 8px !important;
	padding-top: 4px !important;
	padding-bottom: 4px !important;

	display: block !important;
}

#container > tbody > tr#central:has(#transaction_table) > td#content {
	min-width: 0;
}

@media screen and (max-width: 1200px) {
	#container #central #content .position_bot_left {
		left: 0;
		bottom: 0;
		width: 100%;
		max-width: 100%;
		margin-top: 8px;
	}

	#client_form {
		flex-wrap: wrap;
		align-items: flex-start !important;
		row-gap: 8px !important;
		column-gap: 10px !important;
	}

	#client_form label {
		min-width: 54px;
		padding-top: 6px;
	}

	#client_form .select2-container {
		width: min(100%, 420px) !important;
		min-width: 220px;
		flex: 1 1 280px;
	}

	#client_form .balance-btn {
		margin-left: 0;
	}

	#container #central #content .period_group {
		flex-wrap: wrap;
		gap: 8px 12px;
	}

	#container #central #content .period_right {
		margin-top: 10px;
	}

	.transaction-table-scroll #transaction_table {
		width: max-content;
		min-width: 980px;
		table-layout: auto;
	}
}

@media screen and (max-width: 990px) {
	.pagination-top {
		margin-top: 6px !important;
		padding-bottom: 4px;
	}

	.pagination-top .paginator {
		order: 1;
		width: 100%;
		display: flex;
		flex-wrap: wrap;
		align-items: center;
		gap: 2px 0;
	}

	.pagination-top .paginator a,
	.pagination-top .paginator span {
		font-size: 13px;
		padding: 2px 6px 1px 6px;
		margin: 1px 2px;
	}

	.pagination-top .per_page {
		order: 2;
		width: 100%;
		display: flex;
		justify-content: flex-end;
		align-items: center;
		gap: 6px;
		margin-left: 0;
		font-size: 12px;
	}
}

@media screen and (max-width: 680px) {
	.pagination-top .per_page {
		justify-content: flex-start;
	}

	.transaction-table-scroll #transaction_table {
		min-width: 860px;
	}
}

.form-grid {
	display: grid;
	grid-template-columns: auto 1fr;
	gap: 1rem;
	align-items: start;
	max-width: 100%;
}

.form-group {
	display: contents;
}

.form-group label {
	text-align: left;
	padding-right: 1rem;
	font-weight: 500;
	white-space: nowrap;
	padding-top: 0.5rem;
}

.form-group .field-error {
	color: #e74c3c;
	font-size: 12px;
	margin-top: 5px;
	display: block;
}

.form-group input:not([type="radio"]):not([type="checkbox"]),
.form-group select,
.form-group textarea {
	width: 100%;
	box-sizing: border-box;
}

.form-group textarea {
	max-width: 40ch;
	resize: vertical;
}

.file-hint {
	grid-column: 2;
	margin-bottom: 0.5rem;
	margin-top: 0.5rem;
	font-size: 12px;
	color: #666;
}

#supplier_modal button#sendForm {
	grid-column: 2;
	justify-self: start;
	background-color: #46b163;
	color: white;
	padding: 10px 20px;
}

#supplier_modal .success-message {
  display: none;
  text-align: center;
  padding: 40px 20px;
  font-size: 20px;
}
#id_is_buyer {
  display: flex;
  gap: 15px;
  list-style: none;
  padding: 0;
}

#id_is_buyer li {
  display: inline-block;
  margin-left: 0;
}

#price_list_label {
  padding-top: 1rem;
}

@media (max-width: 48rem) {
	#supplier_modal .form-grid {
		grid-template-columns: 1fr;
		gap: 0.5rem;
	}

	#supplier_modal .form-group label {
		white-space: normal;
		margin-bottom: 0.25rem;
	}

	#supplier_modal .file-hint,
	#supplier_modal button#sendForm {
		grid-column: 1;
	}
}

#product_photo_modal,
#supplier_modal {
	display: none;
	position: fixed;
	left: 50%;
	top: 45%;
	transform: translate(-50%, -50%);
	z-index: 4001;
}

.photo-modal-jqm {
	position: relative;
	background: #fff;
	border-radius: 14px;
	min-width: 320px;
	min-height: 180px;
	max-width: 520px;
	max-height: 600px;
	padding: 36px 44px 28px 44px;
	box-shadow: 0 0 32px #0005;
	display: flex;
	flex-direction: column;
	align-items: center;
	justify-content: center;
}
.supplier_request_modal {
	position: relative;
	background: #fff;
	border-radius: 14px;
	min-width: 320px;
	min-height: 180px;
	padding: 12px;
	box-shadow: 0 0 32px #0005;
	display: flex;
	flex-direction: column;
	align-items: center;
	justify-content: center;
}

#product_photo_modal:before,
#supplier_modal:before {
	content: '';
	display: inline-block;
	vertical-align: middle;
}

.photo-modal-close,
.supplier_modal_close {
	position: absolute;
	top: 12px;
	right: 18px;
	font-size: 30px;
	color: #888;
	background: none;
	border: none;
	cursor: pointer;
	text-decoration: none;
	z-index: 1001;
	line-height: 1;
	padding: 0;
}
.photo-modal-close:hover {
	color: #333;
}

.photo-modal-arrows {
	width: 100%;
	display: flex;
	justify-content: space-between;
	position: absolute;
	top: 50%;
	left: 0;
	transform: translateY(-50%);
	pointer-events: none;
}

.photo-modal-arrow {
	width: 44px;
	height: 44px;
	opacity: 0.85;
	background-size: 44px 44px;
	background-repeat: no-repeat;
	background-position: center;
	display: none;
	position: absolute;
	top: 50%;
	margin-top: -22px;
	z-index: 1002;
	pointer-events: all;
	cursor: pointer;
}

.photo-modal-arrow.left {
	left: -60px;
	background-image: url('/media/frontend/img/left_arrow_gallery.svg');
}

.photo-modal-arrow.right {
	right: -60px;
	background-image: url('/media/frontend/img/right_arrow_gallery.svg');
}

.photo-modal-arrow.active {
	display: block;
}

.photo-container-card-product {
	display: flex;
	flex-direction: column;
	align-items: center;
	margin-bottom: 16px;
}

.thumb-photo {
	width: 72px;
	height: 72px;
	object-fit: cover;
	border-radius: 4px;
	box-shadow: 0 1px 5px #0002;
	cursor: pointer;
	opacity: 0.85;
	border: 2px solid transparent;
	transition:
		border 0.2s,
		opacity 0.2s;
}

.thumb-photo:hover {
	opacity: 1;
	border: 2px solid #8bc34a;
}

.gallery-overlay {
	background: rgba(0, 0, 0, 0.6);
	position: fixed;
	left: 0;
	top: 0;
	width: 100vw;
	height: 100vh;
	z-index: 4000;
	opacity: 1;
}

.photo-modal-content img {
	max-width: 480px;
	max-height: 430px;
	width: auto;
	height: auto;
	display: block;
	margin: 0 auto;
}

.space-20 {
	margin-bottom: 20px;
}

.product-card-layout {
	display: flex;
	flex-direction: row;
	gap: 32px;
	margin-top: 24px;
}

.product-main-columns {
	display: flex;
	flex-direction: row;
	gap: 32px;
	width: 840px;
	min-width: 560px;
	max-width: 840px;
}

.product-photo-block {
	display: flex;
	flex-direction: column;
	align-items: flex-start;
	min-width: 340px;
	max-width: 420px;
	width: 100%;
}

.main-photo-wrapper {
	width: 430px;
	height: 320px;
	background: #fafafa;
	border: 1px solid #ddd;
	border-radius: 8px;
	display: flex;
	align-items: center;
	justify-content: center;
	margin-bottom: 12px;
	cursor: pointer;
	transition: box-shadow 0.2s;
	position: relative;
}

.main-photo {
	max-width: 96%;
	max-height: 90%;
	object-fit: contain;
	display: block;
	pointer-events: none;
}

.main-photo-wrapper:hover {
	box-shadow: 0 4px 20px #0004;
}

.main-photo:hover {
	box-shadow: 0 4px 20px #0004;
}

.thumb-list {
	display: flex;
	flex-direction: row;
	gap: 8px;
	justify-content: flex-start;
	width: 100%;
	margin-left: 0;
}

.no-photo {
	width: 430px;
	min-height: 320px;
	display: flex;
	flex-direction: column;
	align-items: center;
	justify-content: center;
	background: #fafafa;
	border-radius: 8px;
	border: 1px solid #ddd;
	box-sizing: border-box;
	position: relative;
	padding: 0 0 30px 0;
}

.no-photo-img {
	width: 180px;
	height: 180px;
	background: url('/media/frontend/img/product_default.svg') no-repeat center
		center;
	background-size: contain;
	display: block;
}

.photo-stub-label {
	color: #888;
	font-size: 14px;
	text-align: center;
}

.product-info-block {
	flex: 1 1 340px;
	min-width: 220px;
	max-width: 420px;
	padding: 0 0 10px 0;
	display: flex;
	flex-direction: column;
	gap: 10px;
}

.product-info-main {
	font-size: 14px;
	line-height: 1.4;
}

.product-info-main > div {
	margin-bottom: 4px;
}
.product-info-main > div:last-child {
	margin-bottom: 0;
}

.product-info-label {
	color: grey;
}

.product-info-value {
	font-weight: bold;
}

.product-info-block > hr {
	margin: 0 0 0 0;
	border: none;
	border-top: 1px solid #ccc;
}

.product-tabs-block {
	width: 840px;
	margin-top: 16px;
	margin-left: 0;
}

.product-tabs {
	display: flex;
	gap: 24px;
	margin-bottom: 24px;
}

.product-tab {
	background: none;
	border: none;
	font-size: 20px;
	font-weight: normal;
	color: #333;
	padding: 0 22px 8px 22px;
	margin: 0;
	border-bottom: 2px solid transparent;
	cursor: pointer;
	transition:
		color 0.2s,
		border-color 0.2s;
	border-radius: 8px 8px 0 0;
	position: relative;
}

.product-tab.active {
	color: #1646a0;
	border-color: #1646a0;
	font-weight: bold;
	background: #f7f8fa;
}

.product-tabs-content {
	margin-top: 12px;
}

.product-tab-pane {
	display: none;
}
.product-tab-pane.active {
	display: block;
}

.product-table {
	margin-bottom: 28px;
}

.product-table--2col {
	display: flex;
	flex-direction: row;
	gap: 32px;
}

.product-table-col {
	flex: 1 1 0;
	display: flex;
	flex-direction: column;
	gap: 6px;
}

.product-table-row {
	display: flex;
	align-items: center;
	font-size: 14px;
	margin-bottom: 0;
}

.product-table-label {
	min-width: 120px;
	color: grey;
	white-space: nowrap;
}

.product-table-value {
	min-width: 120px;
	color: #222;
	text-align: right;
	white-space: nowrap;
}

.product-table-dots {
	flex: 1;
	border-bottom: 1px dotted #bdbdbd;
	height: 1em;
	margin: 0 12px;
	position: relative;
	top: -2px;
	z-index: 0;
}

.product-table-gap {
	height: 18px;
}

.product-description {
	color: #444;
	font-size: 14px;
	line-height: 1.6;
	text-align: left;
}

.product-offer-block {
	padding: 18px;
	border: 1.5px solid #2770ca;
	border-radius: 6px;
	background: #fff;
	box-sizing: border-box;
	display: flex;
	flex-direction: column;
	align-items: flex-start;
	justify-content: flex-start;
	width: auto;
	height: auto;
	align-self: flex-start;
}

.offer-placeholder {
	width: 100%;
	height: 100%;
}

.offer-variant {
	display: flex;
}

.offer-label {
	font-size: 11px;
	color: #888;
	margin-right: 16px;
	min-width: 95px;
}

.offer-price {
	font-size: 20px;
	color: #242424;
	margin-right: 16px;
	min-width: 50px;
	font-weight: bold;
	white-space: nowrap;
}

.offer-info {
	width: max-content;
	flex-shrink: 0;
	min-width: 0;
}

.offer-buy {
	margin-left: 20px;
	display: flex;
	align-items: center;
}

.offer-buy-block {
	flex: 0 0 60px;
	display: flex;
	flex-direction: row;
	align-items: center;
	justify-content: flex-end;
	flex-shrink: 0;
}

.offer-buy-block .offer-count {
	width: 38px;
	height: 28px;
	font-size: 16px;
	text-align: center;
	border: 1px solid #bbb;
	border-radius: 4px;
	margin-right: 2px;
	background: #fafbfc;
}

.offer-buy-block .basket_add.offer-basket-btn {
}

.offer-buy-block .offer-added-count {
	color: #276f43;
	font-size: 13px;
	margin-left: 8px;
}

/* Header/main page responsive fixes (search + content width) */
#fixed-header td#header:first-child {
	width: 240px;
	min-width: 240px;
}

#container #header #logo {
	float: none;
	width: 238px;
	min-width: 238px;
	height: 83px;
	overflow: visible;
}

#container #header {
	height: auto;
	margin-top: 8px;
}

#container #header .menu {
	width: auto;
	max-width: 100%;
	margin: 7px 115px 0 0;
	height: auto;
	display: flex;
	justify-content: flex-end;
	flex-wrap: wrap;
	row-gap: 4px;
}

#container #header .menu li {
	float: none;
}

#container #header .search {
	-webkit-appearance: none;
	width: auto;
	max-width: 100%;
	min-width: 0;
	height: auto;
	position: relative;
	display: flex;
	align-items: flex-start;
	justify-content: flex-start;
	flex-wrap: nowrap;
	gap: 10px;
	margin: 14px 12px 0 22px;
	line-height: normal;
}

#container #header .search .search-main-form,
#container #header .search .search-catalog-form {
	margin: 0;
}

#container #header .search .search-main-form {
	flex: 1 1 auto;
	min-width: 0;
	display: flex;
	align-items: stretch;
	flex-direction: column;
	gap: 4px;
}

#container #header .search .search-catalog-form {
	flex: 0 0 auto;
}

#container #header .search input[name='query'] {
	width: 100%;
	min-width: 200px;
	max-width: none;
	box-sizing: border-box;
}

#container #header .search .search-main-form input[type='submit'] {
	-webkit-appearance: none;
	position: static;
	transform: none;
	width: 104px;
	flex: 0 0 104px;
	border-top-right-radius: 3px;
	border-bottom-right-radius: 3px;
}

#container #header .search input#searchCatalog {
	-webkit-appearance: none;
	margin: 0;
	position: static;
	transform: none;
	width: 104px;
	min-width: 94px;
	padding: 0 10px;
}

#search-bar {
	position: relative;
	top: auto;
	left: auto;
	height: auto;
	flex: 1 1 auto;
	min-width: 0;
}

#search-results {
	width: 100%;
	max-width: none;
	position: absolute;
	left: 0;
	top: calc(100% + 1px);
}

#search_interfaces {
	position: static;
	margin: 0 0 0 2px;
	line-height: 1;
	align-self: flex-start;
}

#container #header .basket_data {
	position: static;
	margin: 8px 15px 0 0;
	text-align: right;
}

#container #central #content {
	width: 100%;
	min-width: 0;
	box-sizing: border-box;
	height: auto;
	min-height: 0;
	padding-bottom: clamp(12px, 2vw, 24px);
}

#container #main {
	width: 100%;
	/* max-width: 719px; */
	margin-left: auto;
	margin-right: auto;
}

#container #main .main_img {
	width: 100%;
	max-width: none;
	aspect-ratio: 723.6 / 498;
	height: auto;
	margin-top: 18px;
	background-size: contain;
	background-repeat: no-repeat;
	background-position: center top;
}

@media screen and (max-width: 1366px) {
	#fixed-header td#header:first-child {
		width: 206px;
		min-width: 206px;
	}

	#fixed-header td.header-right {
		width: 300px;
		min-width: 300px;
	}

	#container #header #logo {
		width: 204px;
		min-width: 204px;
		height: 73px;
	}

	#container #header #logo .logo {
		width: 188px;
		height: 57px;
		margin: 8px 0 0 8px;
		background-size: 188px auto;
	}

	#container #header #logo .logo_kazan {
		width: 172px;
		height: 47px;
		margin: 7px 0 0 8px;
		background-size: 172px auto;
	}

	#container #header .menu {
		margin-right: 110px;
	}

	#container #header .search {
		margin-left: 14px;
		gap: 8px;
	}

	#container #header .search input#searchCatalog,
	#container #header .search .search-main-form input[type='submit'] {
		width: 96px;
		flex-basis: 96px;
	}

	#container #header .search input[name='query'] {
		min-width: 160px;
	}

	#container #header .sity_info {
		margin-top: 6px;
		margin-right: 10px;
		line-height: 1.25;
		font-size: 13px;
		gap: 4px;
	}

	#container #header .sity_info .city-title {
		font-size: 13px;
		line-height: 1.25;
	}

	#container #header .phone-number {
		font-size: 13px;
	}

	#container #header .phone_logo {
		width: 20px;
		height: 20px;
		background-size: contain;
	}

	#container #header .pre_login {
		margin-right: 8px;
	}

	#container #header .pre_login a {
		max-width: 150px;
		margin-right: 0;
		line-height: 1.15;
		text-align: right;
	}

	#container #central #content .product_groups {
		width: 100%;
		float: none;
		box-sizing: border-box;
	}

	#container #central #content .news_block {
		width: 100%;
		float: none;
		margin: 10px 0 0 0;
		border-left: none;
		border-top: 1px solid #ccc;
		box-sizing: border-box;
	}
}

@media screen and (max-width: 1024px) {
	#fixed-header td#header:first-child {
		width: 186px;
		min-width: 186px;
	}

	#fixed-header td.header-right {
		width: 248px;
		min-width: 248px;
	}

	#container #header #logo {
		width: 184px;
		min-width: 184px;
		height: 67px;
	}

	#container #header #logo .logo {
		width: 168px;
		height: 51px;
		margin: 8px 0 0 8px;
		background-size: 168px auto;
	}

	#container #header #logo .logo_kazan {
		width: 156px;
		height: 43px;
		margin: 8px 0 0 8px;
		background-size: 156px auto;
	}

	#container #header .menu {
		font-size: 11px;
	}

	#container #header .menu li {
		padding-left: 6px;
		padding-right: 6px;
	}

	#container #header .search {
		margin-left: 10px;
		margin-right: 8px;
	}

	#container #header .search input#searchCatalog,
	#container #header .search .search-main-form input[type='submit'] {
		width: 88px;
		min-width: 88px;
		flex-basis: 88px;
		font-size: 13px;
	}

	#container #header .basket_data {
		margin-right: 8px;
		font-size: 12px;
	}

	#container #header .sity_info {
		font-size: 12px;
		margin-right: 8px;
	}

	#container #header .sity_info .city-title {
		font-size: 12px;
	}

	#container #header .phone-number {
		font-size: 12px;
	}

	#container #header .phone_logo {
		width: 18px;
		height: 18px;
	}

	#container #header .pre_login a {
		max-width: 126px;
		font-size: 10px;
	}

	#container #central #content .product_groups {
		width: 100%;
		float: none;
	}

	#container #main {
		max-width: 550px;
	}
}

@media screen and (min-width: 720px) and (max-width: 1023px) {
	#container #header .menu {
		margin: 7px 0 0;
		justify-content: center;
	}
}

/* Footer height normalization across viewports */
#container {
	height: calc(100dvh - 10px);
	min-height: calc(100dvh - 10px);
}

#container > tbody {
	height: 100%;
}

#container > tbody > tr#central {
	height: 100%;
}

#container > tbody > tr#central > td {
	height: 100%;
}

#container #central #sidebar,
#container #central #content {
	min-height: 100%;
}

#container #footer {
	height: 1px;
	min-height: 0;
	padding: 8px 0 8px 10px;
	box-sizing: border-box;
}

@media screen and (min-width: 769px) and (max-width: 1184px) {
	#container #footer .menu {
		width: 100%;
		float: none;
		display: flex;
		flex-wrap: nowrap;
		overflow-x: auto;
		overflow-y: hidden;
		white-space: nowrap;
		-webkit-overflow-scrolling: touch;
	}

	#container #footer .menu li {
		float: none;
		flex: 0 0 auto;
		padding-left: 6px;
		padding-right: 6px;
		font-size: 11px;
	}
}

@media screen and (max-width: 768px) {
	#container:has(#content > .page_content) {
		height: auto !important;
		min-height: 0 !important;
	}

	#container:has(#content > .page_content) > tbody,
	#container:has(#content > .page_content) > tbody > tr#central,
	#container:has(#content > .page_content) > tbody > tr#central > td {
		height: auto !important;
	}

	#container:has(#content > .page_content) #central #sidebar,
	#container:has(#content > .page_content) #central #content,
	#container:has(#content > .page_content) #footer {
		min-height: 0 !important;
		height: auto !important;
	}

	#container #footer {
		padding: 7px 0 7px 8px;
	}

	#container #footer .menu {
		width: 100%;
		float: none;
		display: flex;
		flex-wrap: nowrap;
		row-gap: 0;
		overflow-x: auto;
		overflow-y: hidden;
		white-space: nowrap;
		-webkit-overflow-scrolling: touch;
	}

	#container #footer .menu li {
		float: none;
		flex: 0 0 auto;
		padding-left: 5px;
		padding-right: 5px;
		font-size: 10px;
	}

	#container #footer .copyrights {
		width: 100%;
		float: none;
		clear: both;
		padding-top: 6px;
		text-align: left;
		font-size: 10px;
	}
}

@media screen and (max-width: 520px) {
	#container #footer .menu {
		flex-wrap: nowrap;
		overflow-x: auto;
		overflow-y: hidden;
		white-space: nowrap;
		-webkit-overflow-scrolling: touch;
	}

	#container #footer .menu li {
		flex: 0 0 auto;
		padding-left: 6px;
		padding-right: 6px;
	}
}

@media screen and (max-width: 602px) {
	#container #fixed-header,
	#container #fixed-header > tr,
	#container #fixed-header td#header {
		background-color: #00355f;
	}
}

@media screen and (max-width: 719px) {
	#container input[type='text'],
	#container input[type='search'],
	#container input[type='email'],
	#container input[type='tel'],
	#container input[type='number'],
	#container input[type='password'],
	#container textarea,
	#container select:not(#switch_search_intf) {
		font-size: 16px !important;
	}

	#switch_search_intf {
		font-size: 11px !important;
		line-height: 1;
	}
}

/* Search results need extra room above fixed messenger buttons. */
#container:has(.products_search) #footer {
	padding-bottom: 104px;
}

@media screen and (max-width: 768px) {
	#container:has(.products_search) #footer {
		padding-bottom: 112px;
	}
}

/* Orders page needs the same bottom gap above fixed messenger buttons. */
#container:has(#form_orders_index) #footer {
	padding-bottom: 104px;
}

@media screen and (max-width: 768px) {
	#container:has(#form_orders_index) #footer {
		padding-bottom: 112px;
	}
}

/* Orders page overflow and filter width fixes on narrow screens */
#form_orders_index {
	width: 100%;
	min-width: 0;
}

#container > tbody > tr#central:has(#form_orders_index) > td#sidebar,
#container > tbody > tr#central:has(#form_orders_index) > td#content {
	min-height: clamp(520px, calc(100dvh - 230px), 980px);
}

#container > tbody > tr#central:has(#form_orders_index) > td#content {
	min-width: 0;
}

#form_orders_index .orders-table-scroll {
	width: 1px;
	min-width: 100%;
	max-width: 100%;
	overflow-x: auto;
	overflow-y: hidden;
	-webkit-overflow-scrolling: touch;
	padding-bottom: 4px;
}

#form_orders_index #orders_table {
	width: max-content;
	min-width: 100%;
}

#form_orders_index .input-header {
	box-sizing: border-box;
	max-width: 100%;
}

#form_orders_index .wrapper-dropdown-4 {
	width: min(270px, 100%);
	max-width: 100%;
}

#form_orders_index .dd_trigger {
	width: 100%;
	max-width: 100%;
	box-sizing: border-box;
	background-position-x: calc(100% - 6px);
}

@media screen and (max-width: 1366px) {
	#container.basket-page-layout .products_table th,
	#container.basket-page-layout .products_table td,
	#container.basket-page-layout .products_table td input.count {
		font-size: 11px;
	}
}

@media screen and (min-width: 1367px) and (max-width: 1920px) {
	body:has(#container #form_orders_index) {
		overflow-x: hidden;
	}

	#container:has(#form_orders_index) {
		width: calc(100vw - 10px);
		max-width: calc(100vw - 10px);
		table-layout: fixed;
	}

	#container:has(#form_orders_index) col.sidebar-col {
		width: 132px;
	}

	#container:has(#form_orders_index) col.header-left-extra-col {
		width: 0;
	}

	#container:has(#form_orders_index) col.header-right-col {
		width: 220px;
	}

	#container:has(#form_orders_index) #fixed-header td#header:first-child {
		width: 190px;
		min-width: 190px;
	}

	#container:has(#form_orders_index) #header #logo {
		width: 184px;
		min-width: 184px;
	}

	#container:has(#form_orders_index) #header #logo .logo {
		width: 178px;
		height: 54px;
		margin-left: 6px;
		background-size: 178px auto;
	}

	#container:has(#form_orders_index) #central #sidebar {
		width: 132px;
		min-width: 132px;
		max-width: 132px;
		padding-left: 5px;
		padding-right: 5px;
		box-sizing: border-box;
	}

	#container:has(#form_orders_index) #central #sidebar .menu {
		width: 122px;
	}

	#container:has(#form_orders_index) #central #sidebar .menu li a {
		padding-left: 6px;
		padding-right: 6px;
	}

	#container:has(#form_orders_index) #central #content {
		width: auto !important;
		min-width: 0;
		max-width: none;
		padding: 8px;
	}

	#form_orders_index .orders-table-scroll {
		width: 100% !important;
		min-width: 0;
		max-width: 100%;
		position: relative;
		overflow: visible;
	}

	#form_orders_index #orders_table {
		width: 100% !important;
		min-width: 0 !important;
		table-layout: fixed !important;
	}

	#form_orders_index #orders_table th,
	#form_orders_index #orders_table td {
		padding-left: 3px;
		padding-right: 3px;
		font-size: 11px;
		line-height: 1.25;
	}

	#form_orders_index #orders_table th {
		overflow: visible;
		vertical-align: middle;
	}

	#form_orders_index #orders_table td {
		overflow: hidden;
		text-overflow: ellipsis;
		vertical-align: middle;
	}

	#form_orders_index #orders_table th:nth-child(1),
	#form_orders_index #orders_table td:nth-child(1) {
		width: 82px;
	}

	#form_orders_index #orders_table th:nth-child(2),
	#form_orders_index #orders_table td:nth-child(2),
	#form_orders_index #orders_table td[data-type='product__code'] {
		width: 150px;
	}

	#form_orders_index #orders_table th:nth-child(3),
	#form_orders_index #orders_table td:nth-child(3),
	#form_orders_index #orders_table td[data-type='product__name'] {
		width: auto;
		white-space: normal;
		overflow-wrap: anywhere;
		text-overflow: clip;
	}

	#form_orders_index #orders_table th:nth-child(4),
	#form_orders_index #orders_table td:nth-child(4),
	#form_orders_index #orders_table td[data-type='producer'] {
		width: 140px;
	}

	#form_orders_index #orders_table th:nth-child(5),
	#form_orders_index #orders_table td:nth-child(5),
	#form_orders_index #orders_table td[data-type='ed_izm'] {
		width: 56px;
	}

	#form_orders_index #orders_table th:nth-child(6),
	#form_orders_index #orders_table td:nth-child(6),
	#form_orders_index #orders_table td[data-type='price'] {
		width: 80px;
	}

	#form_orders_index #orders_table th:nth-child(7),
	#form_orders_index #orders_table td:nth-child(7),
	#form_orders_index #orders_table td[data-type='count'] {
		width: 42px;
	}

	#form_orders_index #orders_table th:nth-child(8),
	#form_orders_index #orders_table td:nth-child(8),
	#form_orders_index #orders_table td[data-type='sum'] {
		width: 92px;
	}

	#form_orders_index #orders_table th:nth-child(9),
	#form_orders_index #orders_table td:nth-child(9),
	#form_orders_index #orders_table td[data-type='state'] {
		width: 156px;
		white-space: normal;
		overflow-wrap: anywhere;
		text-overflow: clip;
	}

	#form_orders_index #orders_table th:nth-child(10),
	#form_orders_index #orders_table td:nth-child(10),
	#form_orders_index #orders_table td.return {
		width: 64px;
	}

	#form_orders_index #orders_table th:nth-child(11),
	#form_orders_index #orders_table td:nth-child(11) {
		width: 110px;
	}

	#form_orders_index #orders_table th:nth-child(12),
	#form_orders_index #orders_table td:nth-child(12) {
		width: 28px;
		text-align: center;
	}

	#form_orders_index #orders_table th:last-child,
	#form_orders_index #orders_table td:last-child {
		text-align: center;
		vertical-align: middle;
	}

	#form_orders_index #orders_table th:last-child input[type='checkbox'],
	#form_orders_index #orders_table td:last-child input[type='checkbox'] {
		display: block;
		margin: 0 auto;
	}

	#form_orders_index #orders_table th > div {
		box-sizing: border-box;
		max-width: 100%;
	}

	#form_orders_index #orders_table .field_header {
		display: grid;
		grid-template-columns: 16px minmax(0, 1fr);
		align-items: center;
		column-gap: 2px;
		width: 100%;
		margin-top: 1px;
	}

	#form_orders_index #orders_table .label-header {
		padding: 0;
		line-height: 1;
		font-size: 10px;
	}

	#form_orders_index #orders_table .input-header,
	#form_orders_index #orders_table input[type='text'],
	#form_orders_index #orders_table input[type='date'],
	#form_orders_index #orders_table select {
		width: calc(100% - 8px);
		min-width: 0;
		height: 20px;
		margin-left: 4px;
		margin-right: 4px;
		font-size: 11px;
		box-sizing: border-box;
	}

	#form_orders_index #orders_table input[type='date'] {
		width: 100%;
		margin-left: 0;
		margin-right: 0;
		padding-left: 1px;
		padding-right: 1px;
		font-size: 10px;
	}

	#form_orders_index .wrapper-dropdown-4 {
		width: 100%;
		max-width: 100%;
		z-index: 20;
	}

	#form_orders_index .dd_trigger {
		width: calc(100% - 8px);
		min-width: 0;
		padding-right: 18px;
		background-position-x: calc(100% - 8px);
	}

	#form_orders_index .wrapper-dropdown-4.active {
		z-index: 100;
	}

	#form_orders_index .wrapper-dropdown-4 .dropdown {
		left: 4px;
		right: 4px;
		min-width: 190px;
		max-height: 260px;
		z-index: 100;
		overflow-y: auto;
	}

	#form_orders_index .wrapper-dropdown-4 .dropdown li label {
		padding: 6px 26px 6px 8px;
		line-height: 1.2;
	}

	#form_orders_index .wrapper-dropdown-4 .dropdown li input {
		right: 7px;
	}
}

@media screen and (max-width: 1024px) {
	#form_orders_index #orders_table {
		min-width: 980px !important;
		width: max-content !important;
		table-layout: auto;
	}

	#form_orders_index .orders-table-scroll {
		position: relative;
	}

	#form_orders_index #orders_table > tbody > tr:first-child > th:first-child {
		position: sticky;
		left: 0;
		z-index: 5;
		background-color: #bfd2e3;
		box-shadow: 1px 0 0 #9fb7cc;
	}

	#form_orders_index
		#orders_table
		> tbody
		> tr
		> td:first-child:not([colspan]) {
		position: sticky;
		left: 0;
		z-index: 4;
		background-color: #f2f5f8;
		box-shadow: 1px 0 0 #d2dbe3;
	}

	#form_orders_index #orders_table th,
	#form_orders_index #orders_table td {
		font-size: 10px;
		padding: 2px 4px;
		white-space: nowrap;
		overflow: visible;
		text-overflow: clip;
	}

	#form_orders_index #orders_table .field_header {
		display: inline-flex;
	}

	#form_orders_index #orders_table th > div {
		display: block;
	}

	#form_orders_index #orders_table .label-header {
		display: block;
		padding: 0 0 3px 0;
		line-height: 1;
	}

	#form_orders_index #orders_table .input-header,
	#form_orders_index #orders_table input[type='text'],
	#form_orders_index #orders_table input[type='date'],
	#form_orders_index #orders_table select {
		width: auto;
		min-width: 92px;
		max-width: none;
		height: 18px;
		margin: 0;
		font-size: 10px;
		box-sizing: border-box;
	}

	#form_orders_index .wrapper-dropdown-4 {
		width: 220px;
		max-width: none;
	}

	#form_orders_index .dd_trigger {
		width: 100%;
		min-width: 220px;
		background-position-x: calc(100% - 6px);
		padding-right: 14px;
	}
}

@media screen and (max-width: 768px) {
	#container > tbody > tr#central:has(#form_orders_index) > td#sidebar,
	#container > tbody > tr#central:has(#form_orders_index) > td#content {
		min-height: calc(100dvh - 210px);
	}

	#form_orders_index #orders_table {
		min-width: 820px !important;
	}

	#form_orders_index #orders_table th,
	#form_orders_index #orders_table td {
		font-size: 9px;
		padding: 1px 2px;
	}

	#form_orders_index #orders_table td[data-type='product__name'],
	#form_orders_index #orders_table td[data-type='state'] {
		white-space: normal;
		overflow-wrap: anywhere;
		line-height: 1.2;
	}

	#form_orders_index #orders_table td[data-type='product__name'] {
		min-width: 170px;
		max-width: 220px;
	}

	#form_orders_index #orders_table td[data-type='state'] {
		min-width: 150px;
		max-width: 210px;
	}

	#form_orders_index #orders_table .input-header,
	#form_orders_index #orders_table input[type='text'],
	#form_orders_index #orders_table input[type='date'],
	#form_orders_index #orders_table select {
		font-size: 9px;
		height: 17px;
		min-width: 76px;
	}

	#form_orders_index .wrapper-dropdown-4 {
		width: 172px;
	}

	#form_orders_index .dd_trigger {
		min-width: 172px;
	}
}

@media screen and (max-width: 640px) {
	#form_orders_index #orders_table {
		min-width: 700px !important;
	}

	#form_orders_index #orders_table td[data-type='product__name'] {
		min-width: 150px;
		max-width: 190px;
	}

	#form_orders_index #orders_table td[data-type='state'] {
		min-width: 130px;
		max-width: 170px;
	}
}

@media screen and (max-width: 719px) {
	#fixed-header td#header:first-child {
		width: 126px;
		min-width: 126px;
	}

	#container #header #logo {
		width: 124px;
		min-width: 124px;
		height: 46px;
	}

	#container #header #logo .logo {
		width: 112px;
		height: 34px;
		margin: 6px 0 0 6px;
		background-size: 112px auto;
	}

	#container #header #logo .logo_kazan {
		width: 102px;
		height: 29px;
		margin: 6px 0 0 6px;
		background-size: 102px auto;
	}

	body {
		padding-right: 0;
	}

	#container #header .menu {
		margin: 6px 2px 0 0;
		font-size: 10px;
		row-gap: 2px;
	}

	#container #header .menu li {
		padding-left: 4px;
		padding-right: 4px;
	}

	#container #header .search {
		margin: 6px 4px 0 6px;
		gap: 4px;
	}

	#container #header .search input[name='query'] {
		min-width: 90px;
		font-size: 11px;
	}

	#container #header .search input#searchCatalog,
	#container #header .search .search-main-form input[type='submit'] {
		width: 70px;
		min-width: 70px;
		flex-basis: 70px;
		font-size: 11px;
		padding-left: 6px;
		padding-right: 6px;
	}

	#container #header .sity_info {
		margin-right: 4px;
		gap: 2px;
		font-size: 11px;
	}

	#container #header .sity_info .city-title {
		display: none;
	}

	#container #header .phone_logo {
		width: 14px;
		height: 14px;
	}

	#container #header .phone-number {
		font-size: 11px;
	}

	#container #header .basket_data {
		margin-right: 4px;
		font-size: 10px;
	}

	#container #central #sidebar_placeholder {
		width: 4px;
	}

	#container #central #sidebar {
		width: 112px;
		padding: 6px 4px;
		box-sizing: border-box;
	}

	#container #central #sidebar .menu {
		width: 103px;
	}

	#container #central #sidebar .menu li a {
		padding: 5px 5px;
		line-height: 17px;
		font-size: 10px;
	}

	#container #central #sidebar .menu li .submenu {
		margin: 6px 0 6px 7px;
	}

	#container #central #sidebar .menu li .submenu a {
		font-size: 9px;
		line-height: 14px;
	}
}

@media screen and (max-width: 420px) {
	#fixed-header td#header:first-child {
		width: 100px;
		min-width: 100px;
	}

	#container #header #logo {
		width: 90px;
		min-width: 90px;
	}

	#container #header #logo .logo {
		width: 90px;
		height: 27px;
		margin: 17px 0 0 0;
		background-size: 90px auto;
	}

	#container #header #logo .logo_kazan {
		width: 82px;
		height: 24px;
		margin: 16px 0 0 0;
		background-size: 82px auto;
	}

	#container > tbody > tr#central:has(#form_orders_index) > td#sidebar,
	#container > tbody > tr#central:has(#form_orders_index) > td#content {
		min-height: calc(100dvh - 180px);
	}

	body {
		padding-right: 0;
	}

	#container #header .menu {
		margin-right: 4px;
		font-size: 10px;
	}

	#container #header .search {
		margin-left: 4px;
		margin-right: 4px;
		gap: 4px;
	}

	#container #header .search input[name='query'] {
		min-width: 110px;
	}

	#container #header .search input#searchCatalog,
	#container #header .search .search-main-form input[type='submit'] {
		width: 72px;
		min-width: 72px;
		flex-basis: 72px;
		font-size: 11px;
		padding-left: 6px;
		padding-right: 6px;
	}

	#container #header .sity_info {
		margin-right: 4px;
		font-size: 11px;
	}

	#container #header .sity_info .city-title {
		display: none;
	}

	#container #header .phone-number {
		font-size: 11px;
	}

	#container #header .basket_data {
		margin-right: 4px;
		font-size: 11px;
	}

	#container #central #sidebar_placeholder {
		width: 3px;
	}

	#container #central #sidebar {
		width: 90px;
		padding: 4px 2px;
		box-sizing: border-box;
	}

	#container #central #sidebar .menu {
		width: 84px;
	}

	#container #central #sidebar .menu li a {
		padding: 4px 4px;
		line-height: 14px;
		font-size: 9px;
	}

	#container #central #sidebar .menu li .submenu {
		margin: 5px 0 5px 5px;
	}

	#container #central #sidebar .menu li .submenu a {
		font-size: 8px;
		line-height: 12px;
	}
}

/* Basket page responsive fixes */
#container.basket-page-layout #central #sidebar,
#container.basket-page-layout #central #content {
	min-height: 0;
}

#container.basket-page-layout > tbody > tr#central > td#content {
	min-width: 0;
}

#container.basket-page-layout .basket-table-scroll {
	width: 1px;
	min-width: 100%;
	max-width: 100%;
	overflow-x: auto;
	overflow-y: hidden;
	-webkit-overflow-scrolling: touch;
	padding-bottom: 4px;
}

#container.basket-page-layout .basket-table-scroll .products_table {
	width: max-content;
	min-width: 100%;
}

#container.basket-page-layout #footer {
	height: auto;
	min-height: 0;
}

@media screen and (min-width: 1367px) and (max-width: 1920px) {
	#container.basket-page-layout #fixed-header td#header:first-child {
		width: 190px;
		min-width: 190px;
	}

	#container.basket-page-layout #header #logo {
		width: 184px;
		min-width: 184px;
	}

	#container.basket-page-layout #header #logo .logo {
		width: 178px;
		height: 54px;
		margin-left: 6px;
		background-size: 178px auto;
	}

	#container.basket-page-layout #central #sidebar {
		width: 132px;
		padding-left: 5px;
		padding-right: 5px;
		box-sizing: border-box;
	}

	#container.basket-page-layout #central #sidebar .menu {
		width: 122px;
	}

	#container.basket-page-layout #central #sidebar .menu li a {
		padding-left: 6px;
		padding-right: 6px;
	}

	#container.basket-page-layout #central #content {
		padding: 8px;
	}

	#container.basket-page-layout .basket-table-scroll {
		width: 100%;
	}

	#container.basket-page-layout .basket-table-scroll .products_table {
		width: 100%;
		min-width: 0;
		table-layout: fixed;
	}

	#container.basket-page-layout .products_table th,
	#container.basket-page-layout .products_table td {
		padding-left: 3px;
		padding-right: 3px;
		font-size: 12px;
		line-height: 1.25;
	}

	#container.basket-page-layout .products_table th:nth-child(1),
	#container.basket-page-layout .products_table td:nth-child(1) {
		width: 26px;
	}

	#container.basket-page-layout .products_table th:nth-child(2),
	#container.basket-page-layout .products_table td:nth-child(2) {
		width: 98px;
	}

	#container.basket-page-layout .products_table th:nth-child(3),
	#container.basket-page-layout .products_table td:nth-child(3) {
		width: 142px;
	}

	#container.basket-page-layout .products_table th:nth-child(4),
	#container.basket-page-layout .products_table td:nth-child(4) {
		width: auto;
		overflow-wrap: anywhere;
	}

	#container.basket-page-layout .products_table th:nth-child(5),
	#container.basket-page-layout .products_table td:nth-child(5),
	#container.basket-page-layout .products_table th:nth-child(6),
	#container.basket-page-layout .products_table td:nth-child(6) {
		width: 50px;
	}

	#container.basket-page-layout .products_table th:nth-child(7),
	#container.basket-page-layout .products_table td:nth-child(7),
	#container.basket-page-layout .products_table th:nth-child(8),
	#container.basket-page-layout .products_table td:nth-child(8) {
		width: 90px;
	}

	#container.basket-page-layout .products_table th:nth-child(9),
	#container.basket-page-layout .products_table td:nth-child(9) {
		width: 110px;
	}

	#container.basket-page-layout .products_table th:nth-child(10),
	#container.basket-page-layout .products_table td:nth-child(10) {
		width: 56px;
	}

	#container.basket-page-layout .products_table th:nth-child(11),
	#container.basket-page-layout .products_table td:nth-child(11) {
		width: 92px;
	}

	#container.basket-page-layout .products_table th:nth-child(12),
	#container.basket-page-layout .products_table td:nth-child(12) {
		width: 58px;
	}

	#container.basket-page-layout .products_table th:nth-child(13),
	#container.basket-page-layout .products_table td:nth-child(13) {
		width: 34px;
	}
}

@media screen and (max-width: 1000px) {
	#container.basket-page-layout #fixed-header td#header:first-child {
		width: 128px;
		min-width: 128px;
	}

	#container.basket-page-layout #header #logo {
		width: 118px;
		min-width: 118px;
	}

	#container.basket-page-layout #header #logo .logo {
		width: 118px;
		height: 36px;
		margin: 14px 0 0 0;
		background-size: 118px auto;
	}

	#container.basket-page-layout #header #logo .logo_kazan {
		width: 108px;
		height: 30px;
		margin: 12px 0 0 0;
		background-size: 108px auto;
	}

	#container.basket-page-layout {
		height: auto !important;
		min-height: calc(100vh - 10px) !important;
		min-height: calc(100dvh - 10px) !important;
	}

	#container.basket-page-layout > tbody,
	#container.basket-page-layout > tbody > tr#central,
	#container.basket-page-layout > tbody > tr#central > td {
		height: 100%;
		min-height: 0;
	}

	#container.basket-page-layout #central #sidebar,
	#container.basket-page-layout #central #content {
		min-height: 100%;
	}

	#container.basket-page-layout #central #content {
		padding: 8px;
	}

	#container.basket-page-layout #footer {
		padding: 7px 0 7px 8px;
	}

	#container.basket-page-layout #central #sidebar_placeholder {
		width: 6px;
	}

	#container.basket-page-layout #central #sidebar {
		width: 128px;
		padding: 8px 5px;
		box-sizing: border-box;
	}

	#container.basket-page-layout #central #sidebar .menu {
		width: 118px;
	}

	#container.basket-page-layout #central #sidebar .menu li a {
		font-size: 11px;
		line-height: 17px;
		padding: 6px 6px;
	}

	#container.basket-page-layout #central #sidebar .menu li .submenu {
		margin: 7px 0 7px 8px;
	}

	#container.basket-page-layout #central #sidebar .menu li .submenu a {
		font-size: 10px;
		line-height: 15px;
	}
}

@media screen and (max-width: 600px) {
	#container.basket-page-layout #fixed-header td#header:first-child {
		width: 110px;
		min-width: 110px;
	}

	#container.basket-page-layout #header #logo {
		width: 102px;
		min-width: 102px;
	}

	#container.basket-page-layout #header #logo .logo {
		width: 102px;
		height: 31px;
		margin: 16px 0 0 0;
		background-size: 102px auto;
	}

	#container.basket-page-layout #header #logo .logo_kazan {
		width: 95px;
		height: 27px;
		margin: 14px 0 0 0;
		background-size: 95px auto;
	}

	#container.basket-page-layout #central #content {
		padding: 6px;
	}

	#container.basket-page-layout #footer {
		padding: 6px 0 6px 6px;
	}

	#container.basket-page-layout #central #sidebar_placeholder {
		width: 4px;
	}

	#container.basket-page-layout #central #sidebar {
		width: 110px;
		padding: 6px 3px;
		box-sizing: border-box;
	}

	#container.basket-page-layout #central #sidebar .menu {
		width: 104px;
	}

	#container.basket-page-layout #central #sidebar .menu li a {
		font-size: 10px;
		line-height: 16px;
		padding: 5px 5px;
	}
}

@media screen and (max-width: 492px) {
	#container.basket-page-layout #footer {
		padding: 5px 0 5px 5px;
	}

	#container.basket-page-layout #footer .menu {
		float: none;
		width: 100%;
		display: flex;
		flex-wrap: nowrap;
		overflow-x: auto;
		overflow-y: hidden;
		white-space: nowrap;
		-webkit-overflow-scrolling: touch;
	}

	#container.basket-page-layout #footer .menu li {
		float: none;
		padding-left: 6px;
		padding-right: 6px;
		font-size: 10px;
	}

	#container.basket-page-layout #footer .copyrights {
		float: none;
		width: 100%;
		text-align: left;
		margin-top: 2px;
		font-size: 10px;
	}
}

/* Header basket modal responsive fix */
#basket_items.window {
	top: 8%;
	left: 50%;
	margin-left: 0;
	transform: translateX(-50%);
	width: min(750px, calc(100vw - 24px));
	max-width: calc(100vw - 24px);
	max-height: 82vh;
	padding: 12px 14px;
	box-sizing: border-box;
	overflow: hidden;
}

#basket_items.window .window-content {
	display: flex;
	flex-direction: column;
	gap: 8px;
	height: 100%;
	max-height: calc(82vh - 24px);
}

#basket_items.window .basket-items-header {
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 10px;
	flex: 0 0 auto;
}

#basket_items.window .basket-items-header .h1 {
	margin: 0;
	font-size: 18px;
	line-height: 1.1;
}

#basket_items.window .basket-items-header .close-button {
	float: none;
	color: #880000;
	line-height: 1;
	white-space: nowrap;
	text-decoration: none;
	flex: 0 0 auto;
}

#basket_items.window .basket-items-header .close-button:hover {
	color: #f00;
}

#basket_items.window .basket-items-list {
	display: flex;
	flex-direction: column;
	gap: 6px;
	overflow-y: auto;
	overflow-x: hidden;
	min-height: 0;
	padding-right: 4px;
}

#basket_items.window .basket-item {
	display: block;
	border-top: 1px solid #b8c5d8;
	padding-top: 6px;
}

#basket_items.window .basket-item:first-child {
	border-top: none;
	padding-top: 0;
}

#basket_items.window .basket-item-main {
	min-width: 0;
}

#basket_items.window .basket-item-name {
	display: block;
	line-height: 1.25;
	overflow-wrap: anywhere;
}

#basket_items.window .basket-item-meta {
	margin-top: 2px;
	line-height: 1.2;
}

@media screen and (max-width: 1000px) {
	#basket_items.window {
		top: 6%;
		width: calc(100vw - 16px);
		max-width: calc(100vw - 16px);
		max-height: 86vh;
		border-width: 3px;
		border-radius: 14px;
		padding: 10px;
	}

	#basket_items.window .window-content {
		max-height: calc(86vh - 20px);
	}

	#basket_items.window .basket-items-header .close-button {
		font-size: 16px;
	}

	#basket_items.window .basket-items-header .h1 {
		font-size: 16px;
	}
}

@media screen and (max-width: 640px) {
	#basket_items.window {
		top: 4%;
		max-height: 90vh;
	}

	#basket_items.window .window-content {
		max-height: calc(90vh - 20px);
	}

	#basket_items.window .basket-items-header {
		align-items: flex-start;
	}
}

@media screen and (max-width: 1000px) {
	#container #header {
		padding-bottom: 4px;
	}

	#container #header .pre_login {
		margin-top: 28px;
		margin-right: 8px;
		align-items: center;
		justify-content: flex-end;
		flex-wrap: wrap;
		gap: 6px 8px;
	}

	#container #header .pre_login a {
		margin-right: 0;
		max-width: 250px;
		line-height: 1.15;
		text-align: right;
		font-size: 11px;
	}

	#container #header .pre_login .button {
		margin: 0;
		flex: 0 0 auto;
		white-space: nowrap;
	}

	#container #header .header_user_area {
		margin-top: 20px;
		margin-right: 8px;
		align-items: flex-start;
		font-size: 12px;
	}

	#container #header .notifications_bell {
		width: 20px;
		height: 20px;
		margin-right: 6px;
		background-size: 20px 20px;
	}

	#container #header .notifications_bell .unread_count {
		width: 14px;
		height: 14px;
		top: -4px;
		right: -4px;
		font-size: 9px;
		line-height: 14px;
	}

	#container #header .after_login .client_name {
		max-width: 180px;
		font-size: 12px;
		line-height: 1.15;
	}

	#container #header .after_login .exit_button {
		margin-left: 0;
		font-size: 10px;
		line-height: 1.15;
	}

	#container #header .basket_data {
		float: none;
		clear: both;
		width: auto;
		margin: 10px 8px 0 0;
		padding-top: 4px;
		padding-left: 12px;
		text-align: right;
		line-height: 1.2;
	}

	#container #header .basket_data .basket {
		display: inline-block;
		margin-bottom: 3px;
	}
}

@media screen and (max-width: 768px) {
	#container #header .pre_login {
		margin-top: 22px;
		gap: 4px 6px;
	}

	#container #header .pre_login a {
		max-width: 210px;
		font-size: 10px;
	}
}

@media screen and (min-width: 720px) and (max-width: 768px) {
	#container #header .pre_login {
		float: right;
		clear: right;
		margin-top: 28px;
		margin-right: 8px;
		justify-content: flex-end;
		align-items: center;
		gap: 6px 8px;
		text-align: right;
	}

	#container #header .pre_login a {
		margin-right: 0;
		text-align: right;
	}
}

@media screen and (max-width: 500px) {
	#container #header .sity_info {
		margin-right: 2px;
		gap: 1px;
		line-height: 1.05;
	}

	#container #header .phone_logo {
		width: 12px;
		height: 12px;
		background-size: contain;
	}

	#container #header .phone-number {
		font-size: 10px;
		white-space: nowrap;
	}

	#container #header .pre_login {
		margin-top: 16px;
		gap: 3px 5px;
	}

	#container #header .pre_login a {
		max-width: 165px;
		font-size: 9px;
		line-height: 1.05;
	}

	#container #header .pre_login .button,
	#container #header #toggleButton {
		font-size: 11px;
		line-height: 1.1;
		padding: 3px 7px;
		border-radius: 4px;
	}
}

@media screen and (max-width: 455px) {
	#container #header {
		min-height: 96px;
	}

	#fixed-header td#header:first-child {
		width: 96px;
		min-width: 96px;
		vertical-align: top;
	}

	#fixed-header td#header:last-child {
		width: 112px;
		min-width: 112px;
		vertical-align: top;
	}

	#container #header #logo {
		width: 92px;
		min-width: 92px;
		height: 34px;
	}

	#container #header #logo .logo {
		width: 84px;
		height: 26px;
		margin: 4px 0 0 4px;
		background-size: 84px auto;
	}

	#container #header #logo .logo_kazan {
		width: 84px;
		height: 23px;
		margin: 6px 0 0 4px;
		background-size: 84px auto;
	}

	#container #header .sity_info {
		float: none;
		margin: 6px 2px 0 0;
		justify-content: flex-end;
		align-items: center;
		gap: 2px;
		line-height: 1.05;
	}

	#container #header .phone_logo {
		width: 10px;
		height: 10px;
		margin: 0;
		background-size: contain;
	}

	#container #header .phone-number {
		display: inline-flex;
		align-items: center;
		font-size: 9px;
		line-height: 1;
		white-space: nowrap;
	}

	#container #header .pre_login {
		margin-top: 6px;
		margin-right: 2px;
		justify-content: flex-start;
		align-items: flex-end;
		flex-direction: column;
		gap: 3px;
		flex-wrap: nowrap;
	}

	#container #header .pre_login a {
		max-width: 108px;
		font-size: 8px;
		line-height: 1.05;
		text-align: right;
	}

	#container #header .pre_login .button,
	#container #header #toggleButton {
		font-size: 10px;
		line-height: 1;
		padding: 2px 6px;
		min-height: 24px;
	}
}

/* Top search final override (design match) */
#container #header .search {
	-webkit-appearance: none;
	display: flex;
	align-items: flex-start;
	justify-content: flex-start;
	flex-wrap: nowrap;
	gap: 4px;
	margin: 10px 0 0 0;
	width: 100%;
	max-width: 100%;
	min-width: 0;
}

#container #header .basket_data .basket {
	white-space: nowrap;
}

#container #header .basket_data .ajax_button {
	display: inline-block;
	margin-left: 8px;
	white-space: nowrap;
	line-height: 1.2;
	padding: 2px 6px;
}

#container #header .search .search-catalog-form,
#container #header .search .search-main-form {
	margin: 0;
}

#container #header .search .search-catalog-form {
	flex: 0 0 auto;
}

#container #header .search .search-main-form {
	flex: 1 1 auto;
	width: auto;
	max-width: 100%;
	min-width: 0;
	display: block;
}

#container #header .search input#searchCatalog {
	-webkit-appearance: none;
	appearance: none;
	position: static;
	transform: none;
	margin: 0;
	width: auto;
	min-width: 96px;
	height: 38px;
	padding: 0 18px;
	box-sizing: border-box;
	border: none;
	border-radius: 19px;
	background-color: #45b863;
	color: #ffffff;
	font-size: 14px;
	font-weight: 400;
	line-height: 38px;
	cursor: pointer;
}

#search-bar {
	position: relative;
	top: auto;
	left: auto;
	flex: 1 1 auto;
	min-width: 0;
	height: 38px;
	display: flex;
	align-items: center;
	gap: 0;
	box-sizing: border-box;
	padding: 1px 1px 1px 2px;
	border-radius: 21px;
	background-color: #45b863;
	overflow: visible;
}

#container #header .search input#search-input,
#container #header .search input[name='query'] {
	-webkit-appearance: none;
	appearance: none;
	width: 100%;
	min-width: 0;
	max-width: none;
	height: 34px;
	margin: 0;
	border: none;
	outline: none;
	border-radius: 20px;
	box-sizing: border-box;
	padding: 0 10px;
	color: #333333;
	background-color: #f9f9f9;
}

#container #header .search .search-main-form input.search-submit {
	-webkit-appearance: none;
	appearance: none;
	position: static;
	transform: none;
	width: 34px;
	min-width: 34px;
	height: 34px;
	flex: 0 0 34px;
	margin-left: 0;
	padding: 0;
	border: none;
	border-radius: 0 20px 20px 0;
	background: #45b863 url('/media/icons/search.svg') center center no-repeat;
	background-size: 14px 14px;
	color: transparent;
	font-size: 0;
	line-height: 0;
	cursor: pointer;
	box-sizing: border-box;
}

#search-input::placeholder {
	color: #8d97a0;
	opacity: 1;
}

#search-results {
	display: none;
	position: absolute;
	left: 0;
	top: calc(100% + 1px);
	width: 100%;
	max-width: none;
	height: auto;
	z-index: 1000;
	background-color: #ffffff;
	border-radius: 0 0 3px 3px;
}

#search-input:focus + .search-submit + #search-results,
#search-results:hover {
	display: block;
}

#container #header .search .search-main-form:has(#search-results:hover)
	#search_interfaces {
	display: none;
}

/* Keep legacy uniForm rows inside the white content panel. */
#container #central #content .uniForm {
	width: min(500px, 100%);
	max-width: 100%;
	box-sizing: border-box;
}

#container #central #content .uniForm .ctrlHolder {
	width: 100%;
	box-sizing: border-box;
}

#container #central #content .uniForm .ctrlHolder .field {
	width: calc(100% - 165px);
	max-width: 100%;
	box-sizing: border-box;
}

#container #central #content .uniForm .ctrlHolder .textInput,
#container #central #content .uniForm .ctrlHolder textarea {
	width: 100%;
	max-width: 100%;
	box-sizing: border-box;
}

@media screen and (max-width: 520px) {
	#container #central #content .uniForm .ctrlHolder label,
	#container #central #content .uniForm .ctrlHolder .field {
		float: none;
		width: 100%;
	}

	#container #central #content .uniForm .ctrlHolder label {
		display: block;
		margin-bottom: 4px;
	}
}

@media screen and (max-width: 719px) {
	#container #central #content .uniForm {
		width: 100%;
		max-width: 100%;
	}

	#container #central #content .uniForm .ctrlHolder {
		padding-left: clamp(8px, 2.5vw, 14px);
		padding-right: clamp(8px, 2.5vw, 14px);
	}

	#container #central #content .uniForm .ctrlHolder label,
	#container #central #content .uniForm .ctrlHolder .field {
		float: none;
		width: 100%;
	}

	#container #central #content .uniForm .ctrlHolder label {
		display: block;
		margin-bottom: 4px;
	}

	#container #central #content .uniForm input,
	#container #central #content .uniForm textarea,
	#container #central #content .uniForm select {
		font-size: 16px !important;
	}
}

/* Keep the header logo link clickable above responsive header layers. */
#container #header #logo {
	position: relative;
	z-index: 80;
}

#container #header #logo a {
	display: block;
	width: 100%;
	height: 100%;
}

#search_interfaces {
	position: static;
	margin: 4px 0 4px 2px;
	line-height: 1;
	z-index: 1002;
}

#switch_search_intf {
	color: #ffffff;
	background-color: transparent;
	text-decoration: underline;
	border: none;
	cursor: pointer;
	font-size: 10px;
	line-height: 1;
	-webkit-appearance: auto;
	-moz-appearance: auto;
	appearance: auto;
	position: relative;
	z-index: 1002;
	max-width: 100%;
}

@media screen and (max-width: 980px) {
	#container #header .search .search-main-form {
		flex: 1 1 auto;
		width: auto;
	}
}

@media screen and (max-width: 768px) {
	#container #header .search input#searchCatalog {
		min-width: 82px;
		padding: 0 12px;
	}
}

@media screen and (max-width: 768px) {
	#container #header .search input#searchCatalog {
		min-width: 82px;
		padding: 0 12px;
	}
}

@media screen and (max-width: 719px) {
	#container #header .search {
		margin: 6px 4px 0 6px;
	}

	#container #header .search input#searchCatalog {
		width: auto;
		min-width: 78px;
		flex-basis: auto;
		height: 32px;
		line-height: 32px;
		padding: 0 10px;
		font-size: 12px;
	}

	#search-bar {
		height: 32px;
	}

	#container #header .search input#search-input,
	#container #header .search input[name='query'] {
		height: 28px;
		font-size: 12px;
		padding: 0 14px;
	}

	#container #header .search .search-main-form input.search-submit {
		width: 30px;
		min-width: 30px;
		height: 28px;
		flex-basis: 30px;
		margin-left: 0;
		border-radius: 0 16px 16px 0;
		background-size: 13px 13px;
	}
}

@media screen and (max-width: 455px) {
	#container #header .header_user_area {
		margin-top: 8px;
		margin-right: 2px;
		align-items: flex-start;
		font-size: 10px;
	}

	#container #header .after_login .client_name {
		max-width: 112px;
		font-size: 10px;
		line-height: 1.1;
	}

	#container #header .after_login .exit_button {
		font-size: 8px;
		line-height: 1.1;
	}

	#container #header .notifications_bell {
		width: 16px;
		height: 16px;
		margin-right: 4px;
		background-size: 16px 16px;
	}

	#container #header .notifications_bell .unread_count {
		width: 12px;
		height: 12px;
		top: -3px;
		right: -3px;
		font-size: 8px;
		line-height: 12px;
	}

	#container #header .basket_data {
		margin: 6px 2px 0 0;
		padding-top: 2px;
		padding-left: 8px;
		line-height: 1.15;
	}

	#container #header .basket_data .ajax_button {
		margin-left: 0;
		padding: 1px 5px;
		font-size: 10px;
	}

	#container #header .search {
		margin: 4px 2px 0 4px;
		gap: 3px;
	}

	#container #header .search input#searchCatalog {
		min-width: 60px;
		height: 30px;
		line-height: 30px;
		padding: 0 8px;
		font-size: 10px;
	}

	#search-bar {
		height: 30px;
	}

	#container #header .search input#search-input,
	#container #header .search input[name='query'] {
		min-width: 0;
		height: 26px;
		font-size: 10px;
		padding: 0 10px;
	}

	#container #header .search .search-main-form input.search-submit {
		width: 28px;
		min-width: 28px;
		height: 26px;
		flex-basis: 28px;
		background-size: 12px 12px;
	}
}

@media screen and (min-width: 900px) and (max-width: 1366px) {
	#fixed-header td.header-right {
		width: 190px;
		min-width: 190px;
	}

	#container #header .sity_info {
		margin-right: 6px;
		gap: 3px;
		line-height: 1.15;
	}

	#container #header .phone_logo {
		width: 18px;
		height: 18px;
		background-size: contain;
	}

	#container #header .phone-number {
		font-size: 12px;
	}

	#container #header .pre_login {
		margin-top: 34px;
		margin-right: 6px;
		justify-content: flex-end;
		align-items: center;
		flex-wrap: nowrap;
		gap: 8px;
	}

	#container #header .pre_login a {
		max-width: none;
		margin-right: 0;
		white-space: nowrap;
		text-align: right;
		font-size: 9px;
		line-height: 1.1;
	}

	#container #header .pre_login .button,
	#container #header #toggleButton {
		margin: 0;
		white-space: nowrap;
	}

	#container #header .search {
		gap: 3px;
	}

	#container #header .search input#searchCatalog {
		min-width: 84px;
		padding: 0 12px;
	}
}

/* Final header centering override. Keep this last so old overrides cannot shift the center block. */
@media screen and (min-width: 861px) {
	#container #fixed-header {
		position: relative;
	}

	#container #header {
		height: auto;
		min-height: 98px;
		overflow: visible;
	}

	#container #header.header-main {
		position: static;
	}

	#container #header .header-center {
		position: absolute;
		top: 0;
		left: 50%;
		transform: translateX(-50%);
		width: 41%;
		margin: 0;
		padding: 0;
		display: flex;
		flex-direction: column;
		align-items: stretch;
		gap: 4px;
		z-index: 2;
	}

	#container #header .menu {
		width: 100%;
		margin: 7px 0 0;
		justify-content: center;
	}

	#container #header .search {
		width: 100%;
		margin: 10px 0 0;
		gap: 4px;
	}
}

@media screen and (min-width: 861px) and (max-width: 1366px) {
	#container #header .header-center {
		position: static;
		left: auto;
		transform: none;
		width: auto;
		padding-top: 8px;
	}

	#container #header .menu {
		height: auto;
		flex-wrap: wrap;
	}

	#container #header .search {
		width: 100%;
		margin-top: 8px;
	}
}

/* Table header row needs room for the wrapped top menu and search interface selector. */
@media screen and (min-width: 861px) and (max-width: 1366px) {
	#container #fixed-header,
	#container #fixed-header > tr,
	#container #fixed-header td#header {
		height: auto;
		min-height: 98px;
	}
}

/* Keep the main SVG block at the original production scale on wide screens. */
@media screen and (min-width: 1367px) {
	#container #header .basket_data {
		display: flex;
		align-items: center;
		justify-content: flex-end;
		gap: 8px;
		width: 100%;
		margin-top: 6px;
		white-space: nowrap;
	}

	#container #header .basket_data .basket {
		display: inline-flex;
		max-width: none;
		margin: 0;
		white-space: nowrap;
	}

	#container #header .basket_data .ajax_button {
		display: inline-flex;
		flex: 0 0 auto;
		margin: 0;
		white-space: nowrap;
	}

	#container #main {
		max-width: 719px;
	}

	#container #main .main_img {
		width: 100%;
		max-width: 719px;
		margin-left: auto;
		margin-right: auto;
	}
}

/* Main page hero text must shrink on phones so the SVG block still fits vertically. */
@media screen and (max-width: 768px) {
	#container .main_text {
		font-size: 24px;
		line-height: 1.2;
	}

	#container .under_main_text {
		margin-top: 28px;
		font-size: 16px;
		line-height: 1.2;
	}

	#container .footer_main_text {
		margin-top: 18px;
		font-size: 12px;
		line-height: 1.25;
	}
}

@media screen and (max-width: 455px) {
	#container .main_text {
		font-size: 18px;
		line-height: 1.18;
	}

	#container .under_main_text {
		margin-top: 18px;
		font-size: 14px;
	}

	#container .footer_main_text {
		font-size: 10px;
	}
}

/* Homepage mobile layout: avoid page-level horizontal scroll without crushing content. */
@media screen and (max-width: 719px) {
	body:has(#container #content > .product_groups) {
		padding-left: 0;
		padding-right: 0;
		overflow-x: hidden;
	}

	#container:has(#content > .product_groups) {
		--home-sidebar-width: 125px;
		--home-content-gap: clamp(4px, 1.4vw, 10px);
		width: 100vw;
		max-width: 100vw;
		table-layout: fixed;
	}

	#container:has(#content > .product_groups) col.sidebar-col {
		width: var(--home-sidebar-width);
	}

	#container:has(#content > .product_groups) col.header-left-extra-col {
		width: 0;
	}

	#container:has(#content > .product_groups) #fixed-header {
		position: relative;
		z-index: 20;
	}

	#container:has(#content > .product_groups) #fixed-header,
	#container:has(#content > .product_groups) #fixed-header > tr,
	#container:has(#content > .product_groups) #fixed-header td#header {
		height: 121px;
		min-height: 121px;
	}

	#container:has(#content > .product_groups) #header.header-main {
		position: static;
	}

	#container:has(#content > .product_groups) #header .header-center {
		position: absolute;
		top: 4px;
		left: 50%;
		transform: translateX(-50%);
		width: min(560px, calc(100vw - 460px));
		margin: 0;
		padding-top: 0;
		display: flex;
		flex-direction: column;
		align-items: stretch;
		gap: 4px;
		z-index: 30;
	}

	#container:has(#content > .product_groups) #top_basket .basket_data {
		position: absolute;
		top: 62px;
		right: 8px;
		width: 148px;
		margin: 0;
		font-size: 10px;
		line-height: 12px;
		text-align: right;
		white-space: normal;
		overflow-wrap: break-word;
		box-sizing: border-box;
		z-index: 22;
	}

	#container:has(#content > .product_groups) #top_basket .basket_data .basket {
		display: block;
		max-width: 100%;
		white-space: normal;
		overflow-wrap: anywhere;
		word-break: normal;
	}

	#container:has(#content > .product_groups)
		#top_basket
		.basket_data
		.ajax_button {
		display: inline-block;
		margin-top: 2px;
	}

	#container:has(#content > .product_groups) #header .menu {
		width: 100%;
		margin: 0;
		justify-content: center;
		flex-wrap: nowrap;
		white-space: nowrap;
		font-size: 11px;
	}

	#container:has(#content > .product_groups) #header .search {
		position: absolute;
		top: 64px;
		left: 0;
		width: 100%;
		margin-top: 0;
	}

	#container:has(#content > .product_groups) #header .search .search-main-form {
		position: relative;
	}

	#container:has(#content > .product_groups) #search_interfaces {
		display: block;
		width: auto;
		min-height: 16px;
		margin: 0;
		position: absolute;
		top: calc(100% + 2px);
		left: 0;
		z-index: 31;
		line-height: 1.1;
	}

	#container:has(#content > .product_groups) #switch_search_intf {
		display: block;
		width: auto;
		max-width: 170px;
		height: 18px;
		color: #fff;
		-webkit-text-fill-color: #fff;
		background-color: transparent;
		border: none;
		border-radius: 0;
		opacity: 1;
		visibility: visible;
		font-size: 11px !important;
		line-height: 18px;
		padding: 0;
		text-align: left;
		text-decoration: underline;
		appearance: auto;
		-webkit-appearance: menulist;
	}

	#container:has(#content > .product_groups) #header .menu li {
		flex: 0 0 auto;
	}

	#container:has(#content > .product_groups) > tbody,
	#container:has(#content > .product_groups) > tbody > tr#central {
		width: auto;
	}

	#container:has(#content > .product_groups) > tbody > tr#central {
		display: table-row;
	}

	#container:has(#content > .product_groups) #central #sidebar {
		display: table-cell;
		float: none;
		width: var(--home-sidebar-width);
		min-width: var(--home-sidebar-width);
		max-width: var(--home-sidebar-width);
		padding: 6px 4px;
		box-sizing: border-box;
	}

	#container:has(#content > .product_groups) #central #sidebar .menu {
		width: 100%;
	}

	#container:has(#content > .product_groups) #central #sidebar .menu li a {
		padding: 5px 6px;
		line-height: 16px;
		font-size: clamp(10px, 1.6vw, 12px);
		white-space: normal;
	}

	#container:has(#content > .product_groups)
		#central
		#sidebar
		.menu
		li
		.submenu {
		margin: 6px 0 6px 5px;
	}

	#container:has(#content > .product_groups)
		#central
		#sidebar
		.menu
		li
		.submenu
		a {
		font-size: clamp(8px, 1.45vw, 11px);
		line-height: 13px;
	}

	#container:has(#content > .product_groups) #side_info_client_form {
		padding: 7px;
		box-sizing: border-box;
		overflow-wrap: break-word;
		font-size: clamp(10px, 1.75vw, 12px);
		line-height: 1.25;
	}

	#container:has(#content > .product_groups) #side_info_client_form .h2 {
		font-size: clamp(13px, 2vw, 16px);
		line-height: 1.2;
	}

	#container:has(#content > .product_groups) #central #content {
		display: table-cell !important;
		width: auto !important;
		min-width: 0;
		max-width: none;
		margin-left: 0;
		padding: clamp(8px, 1.8vw, 10px);
		box-sizing: border-box;
		overflow-x: hidden;
		-webkit-background-clip: border-box;
		background-clip: border-box;
	}

	#container:has(#content > .product_groups) #content > .product_groups {
		display: flex;
		flex-direction: column;
		align-items: center;
		width: 100%;
		max-width: 100%;
		min-height: 0;
		padding: clamp(24px, 6vw, 54px) clamp(8px, 3vw, 18px);
		box-sizing: border-box;
	}

	#container:has(#content > .product_groups) .main_text {
		max-width: 100%;
		font-size: clamp(18px, 4vw, 30px);
		line-height: 1.25;
		text-align: center;
	}

	#container:has(#content > .product_groups) .under_main_text {
		max-width: 100%;
		margin-top: clamp(18px, 5vw, 44px);
		font-size: clamp(14px, 2.8vw, 20px);
		line-height: 1.25;
		text-align: center;
	}

	#container:has(#content > .product_groups) #main {
		width: 100%;
		max-width: 719px;
	}

	#container:has(#content > .product_groups) #main .main_img {
		width: 100%;
		max-width: 100%;
		aspect-ratio: 723.6 / 498;
		height: auto;
		min-height: 0;
		margin-top: clamp(10px, 2.5vw, 18px);
		background-size: contain;
		background-repeat: no-repeat;
		background-position: center top;
	}

	#container:has(#content > .product_groups) .footer_main_text {
		max-width: 100%;
		margin-top: clamp(14px, 4vw, 26px);
		font-size: clamp(10px, 2vw, 13px);
		line-height: 1.3;
		text-align: center;
		overflow-wrap: break-word;
	}

	#container:has(#content > .product_groups) #content > .news_block {
		width: 100%;
		float: none;
		margin: 0;
		padding: 0;
		border-left: none;
	}

	#container:has(#content > .product_groups) #content .news_list li {
		overflow: visible;
		padding: 12px 0;
		margin: 0;
	}

	#container:has(#content > .product_groups) #content .news_list h3 {
		font-size: clamp(15px, 2.5vw, 18px);
		line-height: 1.25;
	}

	#container:has(#content > .product_groups) #content .news_list p {
		line-height: 1.35;
		overflow-wrap: break-word;
	}

	#container:has(#content > .product_groups) #content .news_list img {
		max-width: min(96px, 32%);
		height: auto;
	}

	#container input[type='text'],
	#container input[type='search'],
	#container input[type='email'],
	#container input[type='tel'],
	#container input[type='url'],
	#container input[type='number'],
	#container input[type='password'],
	#container input[type='date'],
	#container input[type='datetime-local'],
	#container input[type='time'],
	#container input[type='month'],
	#container textarea,
	#container select {
		font-size: 16px !important;
	}
}

@media screen and (min-width: 1367px) and (max-width: 1676px) {
	#container:has(#content > .product_groups) #header .header-center {
		width: min(720px, calc(100vw - 500px));
	}

	#container:has(#content > .product_groups) #header .menu {
		flex-wrap: nowrap;
		white-space: nowrap;
		font-size: 11px;
		line-height: 16px;
	}

	#container:has(#content > .product_groups) #header .menu li {
		flex: 0 0 auto;
		padding-left: 6px;
		padding-right: 6px;
	}

	#container:has(#content > .product_groups) #header .menu a {
		white-space: nowrap;
	}
}

@media screen and (max-width: 656px) {
	#container:has(#content > .product_groups) #fixed-header,
	#container:has(#content > .product_groups) #fixed-header > tr,
	#container:has(#content > .product_groups) #fixed-header td#header {
		height: 125px;
		min-height: 125px;
	}

	#container:has(#content > .product_groups) #header .header-center {
		left: calc(var(--home-sidebar-width) + 6px);
		width: min(320px, calc(100vw - var(--home-sidebar-width) - 142px));
		padding-top: 0;
	}

	#container:has(#content > .product_groups) #top_basket .basket_data {
		top: 75px;
		right: 8px;
		width: 108px;
		font-size: 9px;
		line-height: 11px;
	}

	#container:has(#content > .product_groups) #header .menu {
		justify-content: flex-start;
		font-size: 9px;
		line-height: 12px;
	}

	#container:has(#content > .product_groups) #header .menu li {
		padding-left: 4px;
		padding-right: 4px;
	}

	#container:has(#content > .product_groups) #header .search {
		gap: 3px;
		top: 64px;
		margin-top: 0;
	}

	#container:has(#content > .product_groups)
		#header
		.search
		input#searchCatalog {
		min-width: 78px;
		height: 32px;
		padding: 0 12px;
		font-size: 12px;
		line-height: 32px;
	}

	#container:has(#content > .product_groups) #search-bar {
		height: 32px;
	}

	#container:has(#content > .product_groups) #search-input {
		height: 28px;
		padding: 0 9px;
	}

	#container:has(#content > .product_groups)
		#header
		.search
		.search-main-form
		.search-submit {
		width: 31px;
		height: 28px;
		flex-basis: 31px;
	}
}

@media screen and (max-width: 634px) {
	#container:has(#content > .product_groups) #header .header-center {
		width: min(292px, calc(100vw - var(--home-sidebar-width) - 158px));
	}

	#container:has(#content > .product_groups) #header .menu {
		height: 36px;
		align-items: flex-start;
		align-content: flex-start;
		justify-content: flex-start;
		flex-wrap: wrap;
		overflow: hidden;
		white-space: normal;
		line-height: 10px;
	}

	#container:has(#content > .product_groups) #header .menu li {
		padding-left: 3px;
		padding-right: 3px;
	}
}

@media screen and (max-width: 480px) {
	#container:has(#content > .product_groups) {
		--home-sidebar-width: 112px;
	}

	#container:has(#content > .product_groups) #fixed-header,
	#container:has(#content > .product_groups) #fixed-header > tr,
	#container:has(#content > .product_groups) #fixed-header td#header {
		height: 136px;
		min-height: 136px;
	}

	#container:has(#content > .product_groups) #header #logo {
		width: 100%;
		min-width: 0;
		overflow: visible;
	}

	#container:has(#content > .product_groups) #header #logo .logo {
		width: 104px;
		height: 34px;
		margin: 6px 0 0 4px;
		background-size: 104px auto;
	}

	#container:has(#content > .product_groups) #header .header-center {
		top: 4px;
		left: calc(var(--home-sidebar-width) + 5px);
		width: 202px;
		padding-top: 0;
	}

	#container:has(#content > .product_groups) #header .search {
		top: 80px;
	}

	#container:has(#content > .product_groups) #header .header_user_area {
		position: relative;
		z-index: 35;
		margin-top: 20px;
		margin-right: 4px;
		display: flex;
		align-items: flex-start;
	}

	#container:has(#content > .product_groups) #header .notifications_bell {
		display: block;
		flex: 0 0 18px;
		width: 18px;
		height: 18px;
		min-width: 18px;
		margin-right: 4px;
		background-size: 18px 18px;
		opacity: 1;
		visibility: visible;
	}

	#container:has(#content > .product_groups) #top_basket .basket_data {
		top: 74px;
		right: 6px;
		width: 96px;
		font-size: 9px;
		line-height: 11px;
	}

	#container:has(#content > .product_groups) #header .menu {
		font-size: 8px;
		line-height: 11px;
	}

	#container:has(#content > .product_groups) #header .menu li {
		padding-left: 2px;
		padding-right: 2px;
	}

	#container:has(#content > .product_groups)
		#header
		.search
		input#searchCatalog {
		min-width: 68px;
		height: 30px;
		padding: 0 9px;
		font-size: 11px;
		line-height: 30px;
	}

	#container:has(#content > .product_groups) #search-bar {
		height: 30px;
	}

	#container:has(#content > .product_groups) #search-input {
		height: 26px;
		padding: 0 7px;
	}

	#container:has(#content > .product_groups)
		#header
		.search
		.search-main-form
		.search-submit {
		width: 29px;
		height: 26px;
		flex-basis: 29px;
	}

	#container:has(#content > .product_groups) #central #content {
		padding: 7px;
	}

	#container:has(#content > .product_groups) #content > .product_groups {
		padding: 22px 7px;
	}
}

@media screen and (max-width: 468px) {
	#container:has(#content > .product_groups) {
		--home-sidebar-width: 100px;
	}

	#container:has(#content > .product_groups) #header #logo .logo {
		width: 96px;
		background-size: 96px auto;
	}

	#container:has(#content > .product_groups) #header .header-center {
		left: calc(var(--home-sidebar-width) + 4px);
	}

	#container:has(#content > .product_groups) #central #sidebar {
		padding-left: 3px;
		padding-right: 3px;
	}

	#container:has(#content > .product_groups) #central #sidebar .menu li a {
		padding-left: 4px;
		padding-right: 4px;
	}

	#container:has(#content > .product_groups) #side_info_client_form {
		padding: 6px;
	}
}

@media screen and (max-width: 410px) {
	#container:has(#content > .product_groups) {
		--home-sidebar-width: 75px;
	}

	#container:has(#content > .product_groups) #header #logo .logo {
		width: 70px;
		margin-left: 3px;
		background-size: 70px auto;
	}

	#container:has(#content > .product_groups) #central #sidebar {
		padding-left: 2px;
		padding-right: 2px;
	}

	#container:has(#content > .product_groups) #central #sidebar .menu li a {
		padding-left: 3px;
		padding-right: 3px;
	}
}

/* Guest homepage: keep the mobile header compact like inner pages, without focus zoom. */
@media screen and (max-width: 719px) {
	#container:has(#content > .product_groups):has(#header .pre_login) #fixed-header,
	#container:has(#content > .product_groups):has(#header .pre_login) #fixed-header > tr,
	#container:has(#content > .product_groups):has(#header .pre_login) #fixed-header td#header {
		height: 98px;
		min-height: 98px;
	}

	#container:has(#content > .product_groups):has(#header .pre_login) #header .header-center {
		position: absolute;
		top: 0;
		left: 50%;
		transform: translateX(-50%);
		width: 47%;
		margin: 0;
		padding-top: 0;
		gap: 2px;
		overflow: visible;
	}

	#container:has(#content > .product_groups):has(#header .pre_login) #header .menu {
		margin-top: 6px;
		line-height: 1.1;
		row-gap: 2px;
	}

	#container:has(#content > .product_groups):has(#header .pre_login) #header .search {
		position: static;
		width: 100%;
		margin: 5px 0 0;
		gap: 4px;
	}

	#container:has(#content > .product_groups):has(#header .pre_login)
		#fixed-header
		td#header.header-right {
		position: relative;
		vertical-align: top;
	}

	#container:has(#content > .product_groups):has(#header .pre_login) #header .sity_info {
		position: absolute;
		top: 6px;
		right: 4px;
		margin: 0;
	}

	#container:has(#content > .product_groups):has(#header .pre_login) #header .pre_login {
		position: absolute;
		right: 4px;
		bottom: 8px;
		float: none;
		clear: none;
		flex-direction: column;
		align-items: flex-end;
		justify-content: flex-end;
		flex-wrap: nowrap;
		gap: 3px;
		margin: 0;
		text-align: right;
	}

	#container:has(#content > .product_groups):has(#header .pre_login) #header .pre_login a {
		max-width: 118px;
		margin-right: 0;
		font-size: 9px;
		line-height: 1.05;
		text-align: right;
	}

	#container:has(#content > .product_groups):has(#header .pre_login)
		#header
		.pre_login
		.button,
	#container:has(#content > .product_groups):has(#header .pre_login) #header #toggleButton {
		margin: 0;
		font-size: 11px;
		line-height: 1;
		padding: 3px 8px;
		min-height: 24px;
		white-space: nowrap;
	}

	#container:has(#content > .product_groups):has(#header .pre_login)
		#header
		.search
		input#searchCatalog {
		min-width: 74px;
		height: 30px;
		line-height: 30px;
		padding: 0 9px;
	}

	#container:has(#content > .product_groups):has(#header .pre_login) #header #search-bar {
		height: 30px;
	}

	#container:has(#content > .product_groups):has(#header .pre_login)
		#header
		.search
		input#search-input,
	#container:has(#content > .product_groups):has(#header .pre_login)
		#header
		.search
		input[name='query'] {
		height: 26px;
		padding: 0 8px;
	}

	#container:has(#content > .product_groups):has(#header .pre_login)
		#header
		.search
		.search-main-form
		input.search-submit {
		width: 28px;
		min-width: 28px;
		height: 26px;
		flex-basis: 28px;
	}

	#container:has(#content > .product_groups):has(#header .pre_login) #header #search_interfaces {
		position: static;
		min-height: 0;
		margin: 0 0 0 1px;
		line-height: 1;
	}

	#container:has(#content > .product_groups):has(#header .pre_login) #header #switch_search_intf {
		font-size: 11px !important;
		line-height: 1;
	}

	#container:has(#content > .product_groups):has(#header .pre_login) #header #search-input,
	#side_login_form input,
	#side_login_form textarea,
	#side_login_form select {
		font-size: 16px !important;
	}
}

@media screen and (max-width: 410px) {
	#container:has(#content > .product_groups):has(#header .pre_login) #header .header-center {
		width: 49%;
	}

	#container:has(#content > .product_groups):has(#header .pre_login) #header .search {
		gap: 3px;
	}

	#container:has(#content > .product_groups):has(#header .pre_login)
		#header
		.search
		input#searchCatalog {
		min-width: 70px;
		padding: 0 8px;
	}

	#container:has(#content > .product_groups):has(#header .pre_login) #header #switch_search_intf {
		font-size: 10px !important;
	}
}

.orders-page-title {
	display: flex;
	flex-wrap: wrap;
	align-items: baseline;
	gap: 3px 7px;
	font-size: 24px;
	line-height: 1.12;
}

.orders-page-title__item,
.orders-page-title__separator {
	display: inline-block;
	white-space: nowrap;
}

.orders-page-title__separator {
	color: #333;
}

.orders-page-title__item.font-smaller {
	font-size: inherit !important;
}

@media screen and (max-width: 859px) {
	#content h1.orders-page-title,
	#container #central #content:has(#form_orders_index) .orders-page-title {
		font-size: 20px;
	}

	#container #central #content:has(#form_orders_index) .orders-page-title__item,
	#container #central #content:has(#form_orders_index) .orders-page-title__separator {
		font-size: inherit;
	}
}

#container #central #content:has(#form_orders_index) .paginator {
	line-height: 2;
	margin: 18px 0 16px;
}

#container #central #content:has(#form_orders_index) .paginator a,
#container #central #content:has(#form_orders_index) .paginator span {
	display: inline-block;
	line-height: 18px;
	margin-top: 3px;
	margin-bottom: 4px;
	vertical-align: middle;
}

#form_orders_index .dd_trigger.input-header {
	background-position: calc(100% - 8px) 50%;
	background-position-x: calc(100% - 8px);
	background-position-y: 50%;
	line-height: 20px;
	padding-top: 0;
	padding-bottom: 0;
}

@media screen and (min-width: 1076px) {
	#form_orders_index .orders-table-scroll {
		margin-top: 20px;
	}
}

@media screen and (max-width: 1024px) {
	#form_orders_index .dd_trigger.input-header {
		background-position: calc(100% - 8px) 50%;
		background-position-x: calc(100% - 8px);
		background-position-y: 50%;
		line-height: 18px;
	}
}

@media screen and (max-width: 768px) {
	#form_orders_index .dd_trigger.input-header {
		line-height: 17px;
	}
}

/* Mobile text scale: prevent iOS input zoom without enlarging decorative header controls. */
@media screen and (max-width: 719px) {
	#container #header .search input#search-input,
	#container #header .search input[name='query'],
	#side_login_form input,
	#side_login_form textarea,
	#side_login_form select {
		font-size: 16px !important;
	}

	#container #header #search_interfaces,
	#container #header #switch_search_intf {
		font-size: 11px !important;
		line-height: 1;
	}
}

@media screen and (max-width: 410px) {
	#container #header #search_interfaces,
	#container #header #switch_search_intf {
		font-size: 10px !important;
	}
}

/* Search results mobile layout: no sidebar reserve and compact header. */
@media screen and (max-width: 719px) {
	body:has(#container #content .products_search) {
		padding-left: 0;
		padding-right: 0;
		overflow-x: hidden;
	}

	#container:has(#content .products_search) {
		width: 100vw;
		max-width: 100vw;
		table-layout: fixed;
	}

	#container:has(#content .products_search) col.sidebar-col {
		width: 0;
	}

	#container:has(#content .products_search) col.header-left-extra-col {
		width: 96px;
	}

	#container:has(#content .products_search) #central #sidebar_placeholder {
		width: 0;
		min-width: 0;
		max-width: 0;
		padding: 0;
		border: 0;
	}

	#container:has(#content .products_search) #central #content {
		width: 100%;
		min-width: 0;
	}

	#container:has(#content .products_search) #fixed-header {
		position: relative;
		z-index: 30;
	}

	#container:has(#content .products_search) #fixed-header,
	#container:has(#content .products_search) #fixed-header > tr,
	#container:has(#content .products_search) #fixed-header td#header {
		height: 166px;
		min-height: 166px;
	}

	#container:has(#content .products_search) #fixed-header td#header:first-child {
		width: 96px;
		min-width: 96px;
	}

	#container:has(#content .products_search) #fixed-header td.header-right {
		width: 158px;
		min-width: 158px;
		position: relative;
		z-index: 10;
	}

	#container:has(#content .products_search) #header #logo {
		width: 92px;
		min-width: 92px;
		height: 34px;
	}

	#container:has(#content .products_search) #header #logo .logo {
		width: 86px;
		height: 26px;
		margin: 5px 0 0 4px;
		background-size: 86px auto;
	}

	#container:has(#content .products_search) #header .header-center {
		position: absolute;
		top: 0;
		left: 8px;
		right: 8px;
		transform: none;
		width: auto;
		margin: 0;
		padding-top: 0;
		gap: 2px;
		overflow: visible;
		z-index: 40;
	}

	#container:has(#content .products_search) #header .menu {
		margin: 6px 0 0;
		font-size: 9px;
		line-height: 1.1;
		row-gap: 2px;
		justify-content: center;
	}

	#container:has(#content .products_search) #header .menu li {
		padding-left: 3px;
		padding-right: 3px;
	}

	#container:has(#content .products_search) #header .search {
		position: static;
		width: 100%;
		margin: 82px 0 0;
		gap: 3px;
	}

	#container:has(#content .products_search) #header .search input#searchCatalog {
		min-width: 72px;
		height: 30px;
		line-height: 30px;
		padding: 0 8px;
		font-size: 11px;
	}

	#container:has(#content .products_search) #header #search-bar {
		height: 30px;
	}

	#container:has(#content .products_search) #header .search input#search-input,
	#container:has(#content .products_search) #header .search input[name='query'] {
		height: 26px;
		padding: 0 8px;
	}

	#container:has(#content .products_search) #header .search .search-main-form input.search-submit {
		width: 28px;
		min-width: 28px;
		height: 26px;
		flex-basis: 28px;
	}

	#container:has(#content .products_search) #header #search_interfaces {
		position: static;
		min-height: 0;
		margin: 0 0 0 1px;
		line-height: 1;
	}

	#container:has(#content .products_search) #header .sity_info {
		position: absolute;
		top: 6px;
		right: 4px;
		margin: 0;
		line-height: 1.05;
	}

	#container:has(#content .products_search) #header .phone-number {
		font-size: 10px;
		line-height: 1;
		white-space: nowrap;
	}

	#container:has(#content .products_search) #header .pre_login {
		position: absolute;
		right: 4px;
		top: 34px;
		bottom: auto;
		float: none;
		clear: none;
		flex-direction: column;
		align-items: flex-end;
		justify-content: flex-end;
		flex-wrap: nowrap;
		gap: 3px;
		margin: 0;
		text-align: right;
	}

	#container:has(#content .products_search) #header .pre_login a {
		max-width: 116px;
		margin-right: 0;
		font-size: 9px;
		line-height: 1.05;
		text-align: right;
	}

	#container:has(#content .products_search) #header .pre_login .button,
	#container:has(#content .products_search) #header #toggleButton {
		margin: 0;
		font-size: 11px;
		line-height: 1;
		padding: 3px 8px;
		min-height: 24px;
		white-space: nowrap;
	}

	#container:has(#content .products_search) #header .basket_data {
		margin: 5px 4px 0 0;
		padding-left: 4px;
		font-size: 10px;
		line-height: 1.12;
		white-space: normal;
	}

	#container:has(#content .products_search) #header .basket_data .basket {
		display: block;
		max-width: 154px;
		margin-bottom: 3px;
		white-space: normal;
	}

	#container:has(#content .products_search) #header .basket_data .ajax_button {
		display: inline-block;
		margin-left: 0;
		padding: 2px 6px;
		font-size: 10px;
		line-height: 1.1;
		white-space: nowrap;
	}
}

@media screen and (max-width: 420px) {
	#container:has(#content .products_search) col.header-left-extra-col {
		width: 88px;
	}

	#container:has(#content .products_search) #fixed-header,
	#container:has(#content .products_search) #fixed-header > tr,
	#container:has(#content .products_search) #fixed-header td#header {
		height: 172px;
		min-height: 172px;
	}

	#container:has(#content .products_search) #fixed-header td#header:first-child {
		width: 88px;
		min-width: 88px;
	}

	#container:has(#content .products_search) #fixed-header td.header-right {
		width: 116px;
		min-width: 116px;
	}

	#container:has(#content .products_search) #header #logo {
		width: 84px;
		min-width: 84px;
	}

	#container:has(#content .products_search) #header #logo .logo {
		width: 82px;
		height: 25px;
		margin: 6px 0 0 3px;
		background-size: 82px auto;
	}

	#container:has(#content .products_search) #header .header-center {
		left: 6px;
		right: 6px;
		width: auto;
	}

	#container:has(#content .products_search) #header .search {
		margin-top: 86px;
	}

	#container:has(#content .products_search) #header .search input#searchCatalog {
		min-width: 64px;
		padding: 0 7px;
	}

	#container:has(#content .products_search) #header .pre_login a {
		max-width: 104px;
		font-size: 8px;
	}
}

/* Guest header right block: keep auth text/button pinned to the right side. */
@media screen and (min-width: 456px) and (max-width: 1366px) {
	#container #fixed-header td.header-right:has(.pre_login) {
		position: relative;
		vertical-align: top;
		width: 190px;
		min-width: 190px;
	}

	#container #header:has(.pre_login) .sity_info {
		position: absolute;
		top: 6px;
		right: 6px;
		float: none;
		margin: 0;
		justify-content: flex-end;
		line-height: 1.05;
	}

	#container #header:has(.pre_login) .phone-number {
		display: inline-flex;
		align-items: center;
		white-space: nowrap;
	}

	#container #header:has(.pre_login) .pre_login {
		position: absolute;
		top: 32px;
		right: 6px;
		float: none;
		clear: none;
		flex-direction: column;
		align-items: flex-end;
		justify-content: flex-start;
		flex-wrap: nowrap;
		gap: 3px;
		margin: 0;
		text-align: right;
	}

	#container #header:has(.pre_login) .pre_login a {
		max-width: 126px;
		margin-right: 0;
		font-size: 9px;
		line-height: 1.05;
		text-align: right;
		white-space: normal;
	}

	#container #header:has(.pre_login) .pre_login .button,
	#container:has(#header .pre_login) #header #toggleButton {
		margin: 0;
		white-space: nowrap;
	}
}

@media screen and (min-width: 900px) and (max-width: 1366px) {
	#container #header:has(.pre_login) .pre_login a {
		max-width: 150px;
	}
}

/* Keep guest search at a measured width and away from the right auth block. */
@media screen and (min-width: 861px) and (max-width: 1366px) {
	#container:has(#header .pre_login) #header .header-center {
		width: min(550px, 46vw);
		max-width: 550px;
		margin-left: auto;
		margin-right: auto;
	}

	#container:has(#header .pre_login) #header .search {
		width: 100%;
		max-width: 550px;
	}
}

/* Keep the top navbar on one row in the narrow desktop range. */
@media screen and (min-width: 1367px) and (max-width: 1677px) {
	#container:has(#header .header-center) #header .header-center {
		width: clamp(650px, 48vw, 760px);
	}

	#container:has(#header .header-center) #header .menu {
		flex-wrap: nowrap;
		white-space: nowrap;
	}

	#container:has(#header .header-center) #header .menu li,
	#container:has(#header .header-center) #header .menu li a,
	#container:has(#header .header-center) #header .menu .header_profile_balance {
		flex: 0 0 auto;
		white-space: nowrap;
	}
}

@media screen and (min-width: 456px) and (max-width: 719px) {
	#container:has(#header .pre_login) #fixed-header,
	#container:has(#header .pre_login) #fixed-header > tr,
	#container:has(#header .pre_login) #fixed-header td#header {
		height: 100px;
		min-height: 100px;
	}

	#container:has(#header .pre_login) #header .header-center {
		position: absolute;
		top: 0;
		left: 104px;
		right: 132px;
		transform: none;
		width: auto;
		min-width: 0;
		margin: 0;
		z-index: 20;
	}

	#container:has(#header .pre_login) #header .search {
		width: 100%;
		max-width: 100%;
		min-width: 0;
		margin-top: 24px;
		gap: 3px;
	}

	#container:has(#header .pre_login) #header .menu {
		justify-content: center;
		transform: translateX(-24px);
	}

	#container:has(#header .pre_login) #header .search .search-main-form {
		min-width: 0;
	}

	#container:has(#header .pre_login) #header .search input[name='query'],
	#container:has(#header .pre_login) #header .search input#search-input {
		min-width: 0;
	}

	#container:has(#header .pre_login) #header .search input#searchCatalog {
		min-width: 66px;
		height: 30px;
		line-height: 30px;
		padding-left: 8px;
		padding-right: 8px;
		font-size: 11px;
	}

	#container:has(#header .pre_login) #header #search-bar {
		height: 30px;
	}

	#container:has(#header .pre_login) #header .search .search-main-form input.search-submit {
		width: 28px;
		min-width: 28px;
		height: 26px;
		flex-basis: 28px;
	}
}

@media screen and (max-width: 455px) {
	#container:has(#header .pre_login) #header .menu {
		justify-content: center;
		transform: translateX(-24px);
	}
}

/* Authorized header right block: keep user controls pinned to the right on tablet widths. */
@media screen and (min-width: 720px) and (max-width: 1000px) {
	#container #fixed-header td.header-right:has(.header_user_area) {
		position: relative;
		vertical-align: top;
	}

	#container #fixed-header td.header-right:has(.header_user_area) .sity_info {
		position: absolute;
		top: 6px;
		right: 8px;
		float: none;
		margin: 0;
		justify-content: flex-end;
		line-height: 1.1;
		white-space: nowrap;
	}

	#container #fixed-header td.header-right:has(.header_user_area) .header_user_area {
		position: absolute;
		top: 34px;
		right: 8px;
		display: flex;
		align-items: flex-start;
		justify-content: flex-end;
		margin: 0;
		z-index: 40;
	}

	#container #fixed-header td.header-right:has(.header_user_area) .notifications_bell {
		display: block;
		flex: 0 0 20px;
		width: 20px;
		height: 20px;
		margin-right: 6px;
		background-size: 20px 20px;
		opacity: 1;
		visibility: visible;
	}

	#container #fixed-header td.header-right:has(.header_user_area) .after_login {
		display: flex;
		flex-direction: column;
		align-items: flex-end;
		min-width: 0;
	}

	#container #fixed-header td.header-right:has(.header_user_area) .after_login .client_name {
		max-width: 158px;
		text-align: right;
		white-space: nowrap;
	}

	#container #fixed-header td.header-right:has(.header_user_area) .after_login .exit_button {
		margin-left: 0;
		text-align: right;
	}

	#container #fixed-header td.header-right:has(.header_user_area) .basket_data {
		position: absolute;
		top: 66px;
		right: 8px;
		float: none;
		clear: none;
		width: auto;
		margin: 0;
		padding: 0;
		text-align: right;
		line-height: 1.15;
		z-index: 35;
	}
}

/* Mobile footer menu: wrap links instead of clipping them behind horizontal scroll. */
@media screen and (max-width: 601px) {
	#container #footer {
		padding-right: 8px;
	}

	#container #footer .menu {
		display: flex;
		flex-wrap: wrap;
		align-items: center;
		gap: 4px 0;
		width: 100%;
		overflow: visible;
		white-space: normal;
	}

	#container #footer .menu li {
		flex: 0 0 auto;
		white-space: nowrap;
		line-height: 14px;
	}

	#container #footer .copyrights {
		padding-top: 6px;
	}
}

@media screen and (max-width: 455px) {
	#container #footer .menu {
		gap: 3px 0;
	}

	#container #footer .menu li {
		padding-left: 4px;
		padding-right: 4px;
		font-size: 10px;
		line-height: 13px;
	}
}

@media screen and (max-width: 455px) {
	#container #central #content:has(#form_orders_index) {
		padding: 8px;
	}

	#container #central #content:has(#form_orders_index) .balance_info {
		width: 166px;
		padding: 4px 6px;
		font-size: 10px;
		line-height: 1.25;
		box-sizing: border-box;
	}

	#container #central #content:has(#form_orders_index) .orders-page-title {
		max-width: calc(100% - 176px);
		margin-top: 0;
		margin-bottom: 12px;
		line-height: 1.15;
		gap: 2px 5px;
	}
}

/* Homepage wide layout: align left column, logo and content start with inner pages. */
@media screen and (min-width: 1367px) and (max-width: 1920px) {
	body:has(#container #content > .product_groups) {
		overflow-x: hidden;
	}

	#container:has(#content > .product_groups) {
		width: calc(100vw - 10px);
		max-width: calc(100vw - 10px);
		table-layout: fixed;
	}

	#container:has(#content > .product_groups) col.sidebar-col {
		width: 132px;
	}

	#container:has(#content > .product_groups) col.header-left-extra-col {
		width: 0;
	}

	#container:has(#content > .product_groups) col.header-right-col {
		width: 220px;
	}

	#container:has(#content > .product_groups) #fixed-header td#header:first-child {
		width: 190px;
		min-width: 190px;
	}

	#container:has(#content > .product_groups) #header #logo {
		width: 184px;
		min-width: 184px;
	}

	#container:has(#content > .product_groups) #header #logo .logo {
		width: 178px;
		height: 54px;
		margin-left: 6px;
		background-size: 178px auto;
	}

	#container:has(#content > .product_groups) #central #sidebar {
		width: 132px;
		min-width: 132px;
		max-width: 132px;
		padding-left: 5px;
		padding-right: 5px;
		box-sizing: border-box;
	}

	#container:has(#content > .product_groups) #central #sidebar .menu {
		width: 122px;
	}

	#container:has(#content > .product_groups) #central #sidebar .menu li a {
		padding-left: 6px;
		padding-right: 6px;
	}

	#container:has(#content > .product_groups) #central #content {
		padding: 8px;
	}
}

/* Wide left-column parity: Home/Basket/Orders should match the Balance page grid. */
@media screen and (min-width: 1367px) {
	#container:has(#content > .product_groups) col.sidebar-col,
	#container.basket-page-layout col.sidebar-col,
	#container:has(#form_orders_index) col.sidebar-col {
		width: 156px;
	}

	#container:has(#content > .product_groups) col.header-left-extra-col,
	#container.basket-page-layout col.header-left-extra-col,
	#container:has(#form_orders_index) col.header-left-extra-col {
		width: 84px;
	}

	#container:has(#content > .product_groups) col.header-right-col,
	#container.basket-page-layout col.header-right-col,
	#container:has(#form_orders_index) col.header-right-col {
		width: 220px;
	}

	#container:has(#content > .product_groups) #fixed-header td#header:first-child,
	#container.basket-page-layout #fixed-header td#header:first-child,
	#container:has(#form_orders_index) #fixed-header td#header:first-child {
		width: 240px;
		min-width: 240px;
	}

	#container:has(#content > .product_groups) #header #logo,
	#container.basket-page-layout #header #logo,
	#container:has(#form_orders_index) #header #logo {
		width: 238px;
		min-width: 238px;
		height: 83px;
	}

	#container:has(#content > .product_groups) #header #logo .logo,
	#container.basket-page-layout #header #logo .logo,
	#container:has(#form_orders_index) #header #logo .logo {
		width: 218px;
		height: 63px;
		margin: 12px 0 0 10px;
		background-size: 218px auto;
	}

	#container:has(#content > .product_groups) #central #sidebar,
	#container.basket-page-layout #central #sidebar,
	#container:has(#form_orders_index) #central #sidebar {
		width: 156px;
		min-width: 156px;
		max-width: 156px;
		padding: 10px 8px;
		box-sizing: border-box;
	}

	#container:has(#content > .product_groups) #central #sidebar .menu,
	#container.basket-page-layout #central #sidebar .menu,
	#container:has(#form_orders_index) #central #sidebar .menu {
		width: 140px;
	}

	#container:has(#content > .product_groups) #central #sidebar .menu li a,
	#container.basket-page-layout #central #sidebar .menu li a,
	#container:has(#form_orders_index) #central #sidebar .menu li a {
		padding: 7.5px 8px;
		line-height: 20px;
		font-size: 12px;
	}
}

/* Global left-column normalization: no logo/sidebar jumps between pages. */
@media screen and (min-width: 720px) and (max-width: 1366px) {
	#container #central #sidebar .menu li a {
		font-size: 11px;
	}
}

@media screen and (min-width: 1367px) {
	#container col.sidebar-col {
		width: 156px;
	}

	#container col.header-left-extra-col {
		width: 84px;
	}

	#container #fixed-header td#header:first-child {
		width: 240px;
		min-width: 240px;
	}

	#container #header #logo {
		width: 238px;
		min-width: 238px;
		height: 83px;
	}

	#container #header #logo .logo {
		width: 218px;
		height: 63px;
		margin: 12px 0 0 10px;
		background-size: 218px auto;
	}

	#container #central #sidebar {
		width: 156px;
		min-width: 156px;
		max-width: 156px;
		padding: 10px 8px;
		box-sizing: border-box;
	}

	#container #central #sidebar .menu {
		width: 140px;
	}

	#container #central #sidebar .menu li a {
		padding: 7.5px 8px;
		line-height: 20px;
		font-size: 12px;
	}
}

/* Search results use a placeholder cell, not the real sidebar. */
@media screen and (min-width: 720px) {
	#container:has(#content .products_search) col.sidebar-col {
		width: 5px;
	}

	#container:has(#content .products_search) #central #sidebar_placeholder {
		width: 5px;
		min-width: 5px;
		max-width: 5px;
		padding: 0;
		border: 0;
	}

	#container:has(#content .products_search) #central #content {
		width: auto;
	}
}

/* Orders table: wrap order/article values and give those columns enough room. */
#form_orders_index .orders-table-scroll {
	overflow-x: auto !important;
	overflow-y: hidden;
	-webkit-overflow-scrolling: touch;
}

#form_orders_index #orders_table {
	width: max(100%, 1180px) !important;
	min-width: 1180px !important;
	table-layout: fixed !important;
}

#form_orders_index #orders_table th:nth-child(1),
#form_orders_index #orders_table td:nth-child(1):not([colspan]) {
	width: 142px;
	min-width: 142px;
	max-width: 142px;
}

#form_orders_index #orders_table td:nth-child(1):not([colspan]),
#form_orders_index #orders_table td:nth-child(1):not([colspan]) a {
	white-space: normal;
	overflow: visible;
	overflow-wrap: anywhere;
	word-break: break-word;
	text-overflow: clip;
	line-height: 1.2;
}

#form_orders_index #orders_table th:nth-child(2),
#form_orders_index #orders_table td:nth-child(2),
#form_orders_index #orders_table td[data-type='product__code'] {
	width: 158px;
	min-width: 158px;
	max-width: 158px;
	white-space: normal;
	overflow: visible;
	overflow-wrap: anywhere;
	word-break: break-word;
	text-overflow: clip;
	line-height: 1.2;
}

#form_orders_index #orders_table th:nth-child(3),
#form_orders_index #orders_table td:nth-child(3),
#form_orders_index #orders_table td[data-type='product__name'] {
	width: 300px;
	min-width: 240px;
	max-width: 320px;
	white-space: normal;
	overflow-wrap: anywhere;
	text-overflow: clip;
}

@media screen and (min-width: 1367px) {
	#form_orders_index #orders_table {
		width: max(100%, 1240px) !important;
		min-width: 1240px !important;
	}

	#form_orders_index #orders_table th:nth-child(1),
	#form_orders_index #orders_table td:nth-child(1):not([colspan]) {
		width: 152px;
		min-width: 152px;
		max-width: 152px;
	}

	#form_orders_index #orders_table th:nth-child(2),
	#form_orders_index #orders_table td:nth-child(2),
	#form_orders_index #orders_table td[data-type='product__code'] {
		width: 168px;
		min-width: 168px;
		max-width: 168px;
	}

	#form_orders_index #orders_table th:nth-child(3),
	#form_orders_index #orders_table td:nth-child(3),
	#form_orders_index #orders_table td[data-type='product__name'] {
		width: 310px;
		max-width: 330px;
	}
}

@media screen and (max-width: 768px) {
	#form_orders_index #orders_table {
		width: max(100%, 1040px) !important;
		min-width: 1040px !important;
	}

	#form_orders_index #orders_table th:nth-child(1),
	#form_orders_index #orders_table td:nth-child(1):not([colspan]) {
		width: 118px;
		min-width: 118px;
		max-width: 118px;
	}

	#form_orders_index #orders_table th:nth-child(2),
	#form_orders_index #orders_table td:nth-child(2),
	#form_orders_index #orders_table td[data-type='product__code'] {
		width: 140px;
		min-width: 140px;
		max-width: 140px;
	}

	#form_orders_index #orders_table th:nth-child(3),
	#form_orders_index #orders_table td:nth-child(3),
	#form_orders_index #orders_table td[data-type='product__name'] {
		width: 220px;
		min-width: 200px;
		max-width: 240px;
	}
}

@media screen and (max-width: 640px) {
	#form_orders_index #orders_table {
		width: max(100%, 1000px) !important;
		min-width: 1000px !important;
	}

	#form_orders_index #orders_table th:nth-child(1),
	#form_orders_index #orders_table td:nth-child(1):not([colspan]) {
		width: 112px;
		min-width: 112px;
		max-width: 112px;
	}

	#form_orders_index #orders_table th:nth-child(2),
	#form_orders_index #orders_table td:nth-child(2),
	#form_orders_index #orders_table td[data-type='product__code'] {
		width: 134px;
		min-width: 134px;
		max-width: 134px;
	}
}

/* Orders table <=1366px: preserve the previous scroll/table behavior. */
@media screen and (max-width: 1366px) {
	#form_orders_index #orders_table {
		width: max-content !important;
		min-width: 100% !important;
		table-layout: auto !important;
	}

	#form_orders_index #orders_table th:nth-child(1),
	#form_orders_index #orders_table td:nth-child(1):not([colspan]),
	#form_orders_index #orders_table th:nth-child(2),
	#form_orders_index #orders_table td:nth-child(2),
	#form_orders_index #orders_table td[data-type='product__code'],
	#form_orders_index #orders_table th:nth-child(3),
	#form_orders_index #orders_table td:nth-child(3),
	#form_orders_index #orders_table td[data-type='product__name'] {
		width: auto;
		min-width: 0;
		max-width: none;
	}

	#form_orders_index #orders_table td:nth-child(1):not([colspan]),
	#form_orders_index #orders_table td:nth-child(1):not([colspan]) a,
	#form_orders_index #orders_table td:nth-child(2),
	#form_orders_index #orders_table td[data-type='product__code'] {
		white-space: nowrap;
		overflow: visible;
		overflow-wrap: normal;
		word-break: normal;
		text-overflow: clip;
		line-height: inherit;
	}
}

@media screen and (max-width: 1024px) {
	#form_orders_index #orders_table {
		width: max-content !important;
		min-width: 980px !important;
		table-layout: auto !important;
	}
}

@media screen and (max-width: 768px) {
	#form_orders_index #orders_table {
		min-width: 820px !important;
	}

	#form_orders_index #orders_table td[data-type='product__name'] {
		min-width: 170px;
		max-width: 220px;
	}
}

@media screen and (max-width: 640px) {
	#form_orders_index #orders_table {
		min-width: 700px !important;
	}

	#form_orders_index #orders_table td[data-type='product__name'] {
		min-width: 150px;
		max-width: 190px;
	}
}

/* Orders table >=1367px: fit all columns while preserving readable order/article text. */
@media screen and (min-width: 1367px) {
	#form_orders_index .orders-table-scroll {
		overflow-x: hidden !important;
	}

	#form_orders_index #orders_table {
		width: 100% !important;
		min-width: 0 !important;
		table-layout: fixed !important;
	}

	#form_orders_index #orders_table th,
	#form_orders_index #orders_table td {
		box-sizing: border-box;
	}

	#form_orders_index #orders_table th:nth-child(1),
	#form_orders_index #orders_table td:nth-child(1):not([colspan]) {
		width: 11%;
		min-width: 0;
		max-width: none;
	}

	#form_orders_index #orders_table th:nth-child(2),
	#form_orders_index #orders_table td:nth-child(2),
	#form_orders_index #orders_table td[data-type='product__code'] {
		width: 12%;
		min-width: 0;
		max-width: none;
	}

	#form_orders_index #orders_table th:nth-child(3),
	#form_orders_index #orders_table td:nth-child(3),
	#form_orders_index #orders_table td[data-type='product__name'] {
		width: 22%;
		min-width: 0;
		max-width: none;
	}

	#form_orders_index #orders_table th:nth-child(4),
	#form_orders_index #orders_table td:nth-child(4),
	#form_orders_index #orders_table td[data-type='producer'] {
		width: 9%;
	}

	#form_orders_index #orders_table th:nth-child(5),
	#form_orders_index #orders_table td:nth-child(5),
	#form_orders_index #orders_table td[data-type='ed_izm'] {
		width: 4.5%;
	}

	#form_orders_index #orders_table th:nth-child(6),
	#form_orders_index #orders_table td:nth-child(6),
	#form_orders_index #orders_table td[data-type='price'] {
		width: 6.5%;
	}

	#form_orders_index #orders_table th:nth-child(7),
	#form_orders_index #orders_table td:nth-child(7),
	#form_orders_index #orders_table td[data-type='count'] {
		width: 3.5%;
	}

	#form_orders_index #orders_table th:nth-child(8),
	#form_orders_index #orders_table td:nth-child(8),
	#form_orders_index #orders_table td[data-type='sum'] {
		width: 7.5%;
	}

	#form_orders_index #orders_table th:nth-child(9),
	#form_orders_index #orders_table td:nth-child(9),
	#form_orders_index #orders_table td[data-type='state'] {
		width: 10%;
		min-width: 0;
		max-width: none;
		white-space: normal;
		overflow-wrap: anywhere;
	}

	#form_orders_index #orders_table th:nth-child(10),
	#form_orders_index #orders_table td:nth-child(10),
	#form_orders_index #orders_table td.return {
		width: 5%;
	}

	#form_orders_index #orders_table th:nth-child(11),
	#form_orders_index #orders_table td:nth-child(11) {
		width: 7%;
	}

	#form_orders_index #orders_table th:nth-child(12),
	#form_orders_index #orders_table td:nth-child(12),
	#form_orders_index #orders_table th:last-child,
	#form_orders_index #orders_table td:last-child {
		width: 2%;
	}

	#form_orders_index #orders_table td:nth-child(1):not([colspan]),
	#form_orders_index #orders_table td:nth-child(1):not([colspan]) a,
	#form_orders_index #orders_table td:nth-child(2),
	#form_orders_index #orders_table td[data-type='product__code'],
	#form_orders_index #orders_table td[data-type='product__name'] {
		white-space: normal;
		overflow: visible;
		overflow-wrap: anywhere;
		word-break: break-word;
		text-overflow: clip;
		line-height: 1.2;
	}

	#form_orders_index #orders_table.partner-orders-table th:nth-child(1),
	#form_orders_index #orders_table.partner-orders-table td:nth-child(1):not([colspan]) {
		width: 9%;
	}

	#form_orders_index #orders_table.partner-orders-table th:nth-child(2),
	#form_orders_index #orders_table.partner-orders-table td:nth-child(2),
	#form_orders_index #orders_table.partner-orders-table td[data-type='product__code'] {
		width: 10.5%;
	}

	#form_orders_index #orders_table.partner-orders-table th:nth-child(3),
	#form_orders_index #orders_table.partner-orders-table td:nth-child(3),
	#form_orders_index #orders_table.partner-orders-table td[data-type='product__name'] {
		width: 20%;
	}

	#form_orders_index #orders_table.partner-orders-table th:nth-child(4),
	#form_orders_index #orders_table.partner-orders-table td:nth-child(4),
	#form_orders_index #orders_table.partner-orders-table td[data-type='producer'] {
		width: 7.5%;
	}

	#form_orders_index #orders_table.partner-orders-table th:nth-child(5),
	#form_orders_index #orders_table.partner-orders-table td:nth-child(5),
	#form_orders_index #orders_table.partner-orders-table td[data-type='ed_izm'] {
		width: 4%;
	}

	#form_orders_index #orders_table.partner-orders-table th:nth-child(6),
	#form_orders_index #orders_table.partner-orders-table td:nth-child(6),
	#form_orders_index #orders_table.partner-orders-table td[data-type='price'] {
		width: 6.5%;
	}

	#form_orders_index #orders_table.partner-orders-table th:nth-child(7),
	#form_orders_index #orders_table.partner-orders-table td:nth-child(7) {
		width: 5%;
	}

	#form_orders_index #orders_table.partner-orders-table th:nth-child(8),
	#form_orders_index #orders_table.partner-orders-table td:nth-child(8),
	#form_orders_index #orders_table.partner-orders-table td[data-type='count'] {
		width: 3.5%;
	}

	#form_orders_index #orders_table.partner-orders-table th:nth-child(9),
	#form_orders_index #orders_table.partner-orders-table td:nth-child(9),
	#form_orders_index #orders_table.partner-orders-table td[data-type='sum'] {
		width: 7%;
	}

	#form_orders_index #orders_table.partner-orders-table th:nth-child(10),
	#form_orders_index #orders_table.partner-orders-table td:nth-child(10) {
		width: 7%;
	}

	#form_orders_index #orders_table.partner-orders-table th:nth-child(11),
	#form_orders_index #orders_table.partner-orders-table td:nth-child(11),
	#form_orders_index #orders_table.partner-orders-table td[data-type='state'] {
		width: 9%;
		min-width: 0;
		max-width: none;
		white-space: normal;
		overflow-wrap: anywhere;
	}

	#form_orders_index #orders_table.partner-orders-table th:nth-child(12),
	#form_orders_index #orders_table.partner-orders-table td:nth-child(12),
	#form_orders_index #orders_table.partner-orders-table td.return {
		width: 3.5%;
	}

	#form_orders_index #orders_table.partner-orders-table th:nth-child(13),
	#form_orders_index #orders_table.partner-orders-table td:nth-child(13) {
		width: 3.5%;
	}

	#form_orders_index #orders_table.partner-orders-table th:nth-child(14),
	#form_orders_index #orders_table.partner-orders-table td:nth-child(14),
	#form_orders_index #orders_table.partner-orders-table th:last-child,
	#form_orders_index #orders_table.partner-orders-table td:last-child {
		width: 0.5%;
	}

	#form_orders_index #orders_table.partner-orders-table:has(th:nth-child(15)) th:nth-child(3),
	#form_orders_index #orders_table.partner-orders-table:has(th:nth-child(15)) td:nth-child(3),
	#form_orders_index #orders_table.partner-orders-table:has(th:nth-child(15)) td[data-type='product__name'] {
		width: 20%;
	}

	#form_orders_index #orders_table.partner-orders-table:has(th:nth-child(15)) th:nth-child(10),
	#form_orders_index #orders_table.partner-orders-table:has(th:nth-child(15)) td:nth-child(10),
	#form_orders_index #orders_table.partner-orders-table:has(th:nth-child(15)) th:nth-child(11),
	#form_orders_index #orders_table.partner-orders-table:has(th:nth-child(15)) td:nth-child(11) {
		width: 6%;
	}

	#form_orders_index #orders_table.partner-orders-table:has(th:nth-child(15)) th:nth-child(12),
	#form_orders_index #orders_table.partner-orders-table:has(th:nth-child(15)) td:nth-child(12),
	#form_orders_index #orders_table.partner-orders-table:has(th:nth-child(15)) td[data-type='state'] {
		width: 8%;
	}

	#form_orders_index #orders_table.partner-orders-table:has(th:nth-child(15)) th:nth-child(13),
	#form_orders_index #orders_table.partner-orders-table:has(th:nth-child(15)) td:nth-child(13),
	#form_orders_index #orders_table.partner-orders-table:has(th:nth-child(15)) td.return {
		width: 3.5%;
	}

	#form_orders_index #orders_table.partner-orders-table:has(th:nth-child(15)) th:nth-child(14),
	#form_orders_index #orders_table.partner-orders-table:has(th:nth-child(15)) td:nth-child(14) {
		width: 3%;
	}
}

/* Partner orders have extra sale columns; keep the <=1366 scroll behavior until wide desktop. */
@media screen and (min-width: 1367px) and (max-width: 1919px) {
	#form_orders_index:has(#orders_table.partner-orders-table) .orders-table-scroll {
		overflow-x: auto !important;
		overflow-y: hidden;
	}

	#form_orders_index #orders_table.partner-orders-table {
		width: max-content !important;
		min-width: 100% !important;
		max-width: none !important;
		table-layout: auto !important;
	}

	#form_orders_index #orders_table.partner-orders-table th,
	#form_orders_index #orders_table.partner-orders-table td {
		width: auto !important;
		min-width: 0 !important;
		max-width: none !important;
	}

	#form_orders_index #orders_table.partner-orders-table td:nth-child(1):not([colspan]),
	#form_orders_index #orders_table.partner-orders-table td:nth-child(1):not([colspan]) a,
	#form_orders_index #orders_table.partner-orders-table td:nth-child(2),
	#form_orders_index #orders_table.partner-orders-table td[data-type='product__code'] {
		white-space: nowrap;
		overflow: visible;
		overflow-wrap: normal;
		word-break: normal;
		text-overflow: clip;
		line-height: inherit;
	}
}

/* Partner orders on full desktop: fit all columns and hide table scrollbar. */
@media screen and (min-width: 1920px) {
	#form_orders_index:has(#orders_table.partner-orders-table) .orders-table-scroll {
		overflow-x: hidden !important;
	}

	#form_orders_index #orders_table.partner-orders-table {
		width: 100% !important;
		min-width: 0 !important;
		table-layout: fixed !important;
	}

	#form_orders_index #orders_table.partner-orders-table th,
	#form_orders_index #orders_table.partner-orders-table td {
		min-width: 0 !important;
		max-width: none !important;
		box-sizing: border-box;
	}

	#form_orders_index #orders_table.partner-orders-table th:nth-child(1),
	#form_orders_index #orders_table.partner-orders-table td:nth-child(1):not([colspan]) { width: 7% !important; }

	#form_orders_index #orders_table.partner-orders-table th:nth-child(2),
	#form_orders_index #orders_table.partner-orders-table td:nth-child(2),
	#form_orders_index #orders_table.partner-orders-table td[data-type='product__code'] {
		width: 7% !important;
	}

	#form_orders_index #orders_table.partner-orders-table th:nth-child(3),
	#form_orders_index #orders_table.partner-orders-table td:nth-child(3),
	#form_orders_index #orders_table.partner-orders-table td[data-type='product__name'] {
		width: 20% !important;
		white-space: normal;
		overflow-wrap: anywhere;
	}
	#form_orders_index #orders_table.partner-orders-table th:nth-child(4),
	#form_orders_index #orders_table.partner-orders-table td:nth-child(4),
	#form_orders_index #orders_table.partner-orders-table td[data-type='producer'] { width: 10% !important; }
	#form_orders_index #orders_table.partner-orders-table th:nth-child(5),
	#form_orders_index #orders_table.partner-orders-table td:nth-child(5),
	#form_orders_index #orders_table.partner-orders-table td[data-type='ed_izm'] { width: 4% !important; }
	#form_orders_index #orders_table.partner-orders-table th:nth-child(6),
	#form_orders_index #orders_table.partner-orders-table td:nth-child(6),
	#form_orders_index #orders_table.partner-orders-table td[data-type='price'] { width: 5.5% !important; }
	#form_orders_index #orders_table.partner-orders-table th:nth-child(7),
	#form_orders_index #orders_table.partner-orders-table td:nth-child(7) { width: 6% !important; }
	#form_orders_index #orders_table.partner-orders-table th:nth-child(8),
	#form_orders_index #orders_table.partner-orders-table td:nth-child(8),
	#form_orders_index #orders_table.partner-orders-table td[data-type='count'] { width: 3.5% !important; }
	#form_orders_index #orders_table.partner-orders-table th:nth-child(9),
	#form_orders_index #orders_table.partner-orders-table td:nth-child(9),
	#form_orders_index #orders_table.partner-orders-table td[data-type='sum'] { width: 7% !important; }
	#form_orders_index #orders_table.partner-orders-table th:nth-child(10),
	#form_orders_index #orders_table.partner-orders-table td:nth-child(10) { width: 7% !important; }
	#form_orders_index #orders_table.partner-orders-table th:nth-child(11),
	#form_orders_index #orders_table.partner-orders-table td:nth-child(11),
	#form_orders_index #orders_table.partner-orders-table td[data-type='state'] {
		width: 9% !important;
		white-space: normal;
		overflow-wrap: anywhere;
	}
	#form_orders_index #orders_table.partner-orders-table th:nth-child(12),
	#form_orders_index #orders_table.partner-orders-table td:nth-child(12),
	#form_orders_index #orders_table.partner-orders-table td.return {
		width: 5% !important;
		white-space: normal;
	}
	#form_orders_index #orders_table.partner-orders-table th:nth-child(13),
	#form_orders_index #orders_table.partner-orders-table td:nth-child(13) { width: 8% !important; }
	#form_orders_index #orders_table.partner-orders-table th:nth-child(14),
	#form_orders_index #orders_table.partner-orders-table td:nth-child(14),
	#form_orders_index #orders_table.partner-orders-table th:last-child,
	#form_orders_index #orders_table.partner-orders-table td:last-child { width: 1% !important; }

	#form_orders_index #orders_table.partner-orders-table td:nth-child(1):not([colspan]),
	#form_orders_index #orders_table.partner-orders-table td:nth-child(1):not([colspan]) a,
	#form_orders_index #orders_table.partner-orders-table td:nth-child(2),
	#form_orders_index #orders_table.partner-orders-table td[data-type='product__code'] {
		white-space: nowrap;
		overflow-wrap: normal;
		word-break: normal;
	}
}

/* Sidebar menu typography: main sections are larger than nested links. */
#container #central #sidebar .menu > li > a {
	font-size: 12px !important;
}

#container #central #sidebar .menu li .submenu a {
	font-size: 11px !important;
}

/* Orders subpages table typography by breakpoint. */
@media screen and (max-width: 1366px) {
	#form_orders_index #orders_table,
	#form_orders_index #orders_table th,
	#form_orders_index #orders_table td,
	#form_orders_index #orders_table th a,
	#form_orders_index #orders_table td a {
		font-size: 11px !important;
	}
}

@media screen and (min-width: 1367px) {
	#form_orders_index #orders_table,
	#form_orders_index #orders_table th,
	#form_orders_index #orders_table td,
	#form_orders_index #orders_table th a,
	#form_orders_index #orders_table td a {
		font-size: 12px !important;
	}
}

/* Footer links: keep one row on tablet/desktop, wrap only on narrow mobile. */
@media screen and (min-width: 602px) {
	#container #footer .menu {
		display: flex;
		flex-wrap: nowrap;
		width: auto;
		max-width: 100%;
		float: left;
		overflow: visible;
		white-space: nowrap;
	}

	#container #footer .menu li {
		float: none;
		flex: 0 0 auto;
		white-space: nowrap;
	}
}

/* Hide the search interface selector only when autocomplete content is visible. */
#container #header .search .search-main-form:has(#search-input:focus):has(#search-results .search-item)
	> #search_interfaces,
#container
	#header
	.search
	.search-main-form:has(#search-input:focus):has(
		#search-info-limit[style*='display: block']
	)
	> #search_interfaces {
	opacity: 0;
	pointer-events: none;
}

/* Final homepage mobile header override: match inner-page navbar geometry. */
@media screen and (max-width: 719px) {
	#container:has(#content > .product_groups) #fixed-header,
	#container:has(#content > .product_groups) #fixed-header > tr {
		position: relative !important;
	}

	#container:has(#content > .product_groups) #fixed-header,
	#container:has(#content > .product_groups) #fixed-header > tr,
	#container:has(#content > .product_groups) #fixed-header td#header {
		height: 150px !important;
		min-height: 150px !important;
	}

	#container:has(#content > .product_groups) #header.header-main {
		position: static !important;
	}

	#container:has(#content > .product_groups) #header .header-center {
		position: absolute !important;
		top: 6px !important;
		left: clamp(86px, 20vw, 132px) !important;
		right: clamp(88px, 20vw, 148px) !important;
		width: auto !important;
		min-width: 0 !important;
		transform: none !important;
		margin: 0 !important;
		padding-top: 0 !important;
		z-index: 40;
	}

	#container:has(#content > .product_groups) #header .menu {
		height: 38px !important;
		justify-content: center !important;
		align-items: flex-start !important;
		align-content: flex-start !important;
		flex-wrap: wrap !important;
		overflow: hidden !important;
		white-space: normal !important;
		font-size: 11px !important;
		line-height: 11px !important;
		text-align: center !important;
	}

	#container:has(#content > .product_groups) #header .menu li {
		flex: 0 0 auto !important;
		padding-left: 3px !important;
		padding-right: 3px !important;
	}

	#container:has(#content > .product_groups) #header .search {
		position: absolute !important;
		top: 78px !important;
		left: 0 !important;
		width: 100% !important;
		min-width: 0 !important;
		margin: 0 !important;
		gap: 3px !important;
	}

	#container:has(#content > .product_groups) #header .search .search-catalog-form {
		flex: 0 0 auto !important;
	}

	#container:has(#content > .product_groups) #header .search .search-main-form,
	#container:has(#content > .product_groups) #header #search-bar,
	#container:has(#content > .product_groups) #header #search-input {
		min-width: 0 !important;
	}

	#container:has(#content > .product_groups)
		#header
		.search
		input#searchCatalog {
		min-width: clamp(64px, 13vw, 82px) !important;
		height: 30px !important;
		padding-left: 8px !important;
		padding-right: 8px !important;
		font-size: 11px !important;
		line-height: 30px !important;
	}

	#container:has(#content > .product_groups) #top_basket .basket_data {
		top: 82px !important;
		right: 6px !important;
		width: clamp(88px, 20vw, 148px) !important;
		z-index: 35;
	}
}

@media screen and (min-width: 481px) and (max-width: 719px) {
	#container:has(#content > .product_groups) #fixed-header,
	#container:has(#content > .product_groups) #fixed-header > tr,
	#container:has(#content > .product_groups) #fixed-header td#header {
		height: 190px !important;
		min-height: 190px !important;
	}

	#container:has(#content > .product_groups) #header .header-center {
		top: 46px !important;
		left: clamp(104px, 20vw, 146px) !important;
		right: clamp(98px, 18vw, 132px) !important;
	}

	#container:has(#content > .product_groups) #header .menu {
		height: 72px !important;
		row-gap: 2px !important;
	}

	#container:has(#content > .product_groups) #header .menu li {
		padding-left: 4px !important;
		padding-right: 4px !important;
	}

	#container:has(#content > .product_groups) #header .search {
		top: 82px !important;
	}

	#container:has(#content > .product_groups) #top_basket .basket_data {
		top: 116px !important;
	}
}

@media screen and (max-width: 480px) {
	#container:has(#content > .product_groups) #fixed-header,
	#container:has(#content > .product_groups) #fixed-header > tr,
	#container:has(#content > .product_groups) #fixed-header td#header {
		height: 178px !important;
		min-height: 178px !important;
	}

	#container:has(#content > .product_groups) #header .header-center {
		top: 50px !important;
		left: 8px !important;
		right: 8px !important;
	}

	#container:has(#content > .product_groups) #header .menu {
		height: 38px !important;
		justify-content: center !important;
	}

	#container:has(#content > .product_groups) #header .search {
		top: 46px !important;
	}

	#container:has(#content > .product_groups) #top_basket .basket_data {
		top: 126px !important;
	}
}

@media screen and (max-width: 455px) {
	#container:has(#content > .product_groups) #header .header_user_area {
		position: absolute !important;
		top: 22px !important;
		right: 6px !important;
		margin: 0 !important;
		align-items: flex-start !important;
		z-index: 45;
	}

	#container:has(#content > .product_groups) #header .notifications_bell {
		margin-top: 0 !important;
	}

	#container:has(#content > .product_groups) #header .after_login {
		margin-top: 0 !important;
		text-align: right !important;
	}
}

/* Authorized mobile header parity: keep the 720px navbar geometry below 720px. */
@media screen and (min-width: 481px) and (max-width: 719px) {
	#container:has(#header .header_user_area) #fixed-header,
	#container:has(#header .header_user_area) #fixed-header > tr {
		position: relative !important;
	}

	#container:has(#header .header_user_area) #fixed-header,
	#container:has(#header .header_user_area) #fixed-header > tr,
	#container:has(#header .header_user_area) #fixed-header td#header {
		height: 166px !important;
		min-height: 166px !important;
	}

	#container:has(#header .header_user_area) #fixed-header td#header:first-child {
		width: clamp(128px, 27vw, 190px) !important;
		min-width: clamp(128px, 27vw, 190px) !important;
	}

	#container:has(#header .header_user_area) #fixed-header td.header-right {
		width: clamp(120px, 25vw, 180px) !important;
		min-width: clamp(120px, 25vw, 180px) !important;
		position: relative !important;
	}

	#container:has(#header .header_user_area) #header #logo {
		width: clamp(122px, 26vw, 184px) !important;
		min-width: clamp(122px, 26vw, 184px) !important;
		height: clamp(40px, 8vw, 62px) !important;
	}

	#container:has(#header .header_user_area) #header #logo .logo {
		width: clamp(116px, 25vw, 178px) !important;
		height: clamp(34px, 7.5vw, 54px) !important;
		margin: 6px 0 0 6px !important;
		background-size: clamp(116px, 25vw, 178px) auto !important;
	}

	#container:has(#header .header_user_area) #header.header-main {
		position: static !important;
	}

	#container:has(#header .header_user_area) #header .header-center {
		position: absolute !important;
		top: 6px !important;
		left: clamp(128px, 27vw, 190px) !important;
		right: clamp(120px, 25vw, 180px) !important;
		width: auto !important;
		min-width: 0 !important;
		transform: none !important;
		margin: 0 !important;
		padding-top: 0 !important;
		z-index: 45;
	}

	#container:has(#header .header_user_area) #header .menu {
		height: 56px !important;
		margin: 6px 0 0 !important;
		justify-content: center !important;
		align-items: flex-start !important;
		align-content: flex-start !important;
		flex-wrap: wrap !important;
		overflow: hidden !important;
		white-space: normal !important;
		font-size: 11px !important;
		line-height: 11px !important;
		row-gap: 2px !important;
		text-align: center !important;
	}

	#container:has(#header .header_user_area) #header .menu li {
		flex: 0 0 auto !important;
		padding-left: 4px !important;
		padding-right: 4px !important;
	}

	#container:has(#header .header_user_area) #header .search {
		position: absolute !important;
		top: 88px !important;
		left: 0 !important;
		width: 100% !important;
		min-width: 0 !important;
		margin: 0 !important;
		gap: 3px !important;
	}

	#container:has(#header .header_user_area) #header .search .search-catalog-form {
		flex: 0 0 auto !important;
	}

	#container:has(#header .header_user_area) #header .search .search-main-form,
	#container:has(#header .header_user_area) #header #search-bar,
	#container:has(#header .header_user_area) #header #search-input {
		min-width: 0 !important;
	}

	#container:has(#header .header_user_area) #header .search input#searchCatalog {
		min-width: 82px !important;
		height: 30px !important;
		padding-left: 8px !important;
		padding-right: 8px !important;
		font-size: 11px !important;
		line-height: 30px !important;
	}

	#container:has(#header .header_user_area) #header #search-bar {
		height: 30px !important;
	}

	#container:has(#header .header_user_area) #header .search input#search-input,
	#container:has(#header .header_user_area) #header .search input[name='query'] {
		height: 26px !important;
		padding: 0 8px !important;
	}

	#container:has(#header .header_user_area) #header .search .search-main-form input.search-submit {
		width: 28px !important;
		min-width: 28px !important;
		height: 26px !important;
		flex-basis: 28px !important;
	}

	#container:has(#header .header_user_area) #header #search_interfaces {
		position: static !important;
		min-height: 0 !important;
		margin: 0 0 0 1px !important;
		line-height: 1 !important;
	}

	#container:has(#header .header_user_area) #fixed-header td.header-right .sity_info {
		position: absolute !important;
		top: 6px !important;
		right: 6px !important;
		margin: 0 !important;
		line-height: 1.05 !important;
		white-space: nowrap !important;
	}

	#container:has(#header .header_user_area) #fixed-header td.header-right .header_user_area {
		position: absolute !important;
		top: 34px !important;
		right: 6px !important;
		margin: 0 !important;
		z-index: 50;
	}

	#container:has(#header .header_user_area) #fixed-header td.header-right .basket_data {
		position: absolute !important;
		top: 86px !important;
		right: 6px !important;
		width: clamp(112px, 22vw, 150px) !important;
		margin: 0 !important;
		text-align: right !important;
		font-size: 10px !important;
		line-height: 1.05 !important;
		white-space: normal !important;
		z-index: 35;
	}

	#container:has(#header .header_user_area) #fixed-header td.header-right .basket_data .basket {
		display: block !important;
		max-width: 100% !important;
		margin-bottom: 3px !important;
		white-space: normal !important;
	}

	#container:has(#header .header_user_area) #fixed-header td.header-right .basket_data .ajax_button {
		display: inline-block !important;
		margin-left: 0 !important;
		padding: 2px 6px !important;
		font-size: 10px !important;
		line-height: 1.05 !important;
		white-space: nowrap !important;
	}
}

@media screen and (max-width: 480px) {
	#container:has(#header .header_user_area) #fixed-header,
	#container:has(#header .header_user_area) #fixed-header > tr {
		position: relative !important;
	}

	#container:has(#header .header_user_area) #fixed-header,
	#container:has(#header .header_user_area) #fixed-header > tr,
	#container:has(#header .header_user_area) #fixed-header td#header {
		height: 178px !important;
		min-height: 178px !important;
	}

	#container:has(#header .header_user_area) #fixed-header td#header:first-child {
		width: clamp(88px, 25vw, 128px) !important;
		min-width: clamp(88px, 25vw, 128px) !important;
	}

	#container:has(#header .header_user_area) #fixed-header td.header-right {
		width: clamp(112px, 28vw, 120px) !important;
		min-width: clamp(112px, 28vw, 120px) !important;
		position: relative !important;
	}

	#container:has(#header .header_user_area) #header #logo {
		width: clamp(84px, 25vw, 116px) !important;
		min-width: clamp(84px, 25vw, 116px) !important;
		height: 40px !important;
	}

	#container:has(#header .header_user_area) #header #logo .logo {
		width: clamp(78px, 24vw, 110px) !important;
		height: 34px !important;
		margin: 6px 0 0 4px !important;
		background-size: clamp(78px, 24vw, 110px) auto !important;
	}

	#container:has(#header .header_user_area) #header .header-center {
		position: absolute !important;
		top: 50px !important;
		left: 8px !important;
		right: 8px !important;
		width: auto !important;
		min-width: 0 !important;
		transform: none !important;
		margin: 0 !important;
		z-index: 45;
	}

	#container:has(#header .header_user_area) #header .menu {
		height: 38px !important;
		justify-content: center !important;
	}

	#container:has(#header .header_user_area) #header .menu li {
		border-left: 0 !important;
		line-height: 11px !important;
		padding-left: 0 !important;
		padding-right: 0 !important;
	}

	#container:has(#header .header_user_area) #header .menu li:first-child,
	#container:has(#header .header_user_area) #header .menu li.first {
		border-left: 0 !important;
	}

	#container:has(#header .header_user_area) #header .menu li a,
	#container:has(#header .header_user_area) #header .menu .header_profile_balance {
		display: inline-block !important;
		line-height: 11px !important;
		padding-left: 4px !important;
		padding-right: 4px !important;
	}

	#container:has(#header .header_user_area) #header .menu li:not(:first-child) > a {
		border-left: 1px solid #bddcf6 !important;
	}

	#container:has(#header .header_user_area) #header .menu .header_profile_debt {
		border-left: 0 !important;
		padding-left: 2px !important;
	}

	#container:has(#header .header_user_area) #header .search {
		position: absolute !important;
		top: 46px !important;
		left: 0 !important;
		width: 100% !important;
		min-width: 0 !important;
		margin: 0 !important;
		gap: 3px !important;
	}

	#container:has(#header .header_user_area) #header .search .search-main-form,
	#container:has(#header .header_user_area) #header #search-bar,
	#container:has(#header .header_user_area) #header #search-input {
		min-width: 0 !important;
	}

	#container:has(#header .header_user_area) #header .search input#searchCatalog {
		min-width: 64px !important;
		height: 30px !important;
		padding-left: 7px !important;
		padding-right: 7px !important;
		font-size: 11px !important;
		line-height: 30px !important;
	}

	#container:has(#header .header_user_area) #header #search-bar {
		height: 30px !important;
	}

	#container:has(#header .header_user_area) #header .search input#search-input,
	#container:has(#header .header_user_area) #header .search input[name='query'] {
		height: 26px !important;
		padding: 0 8px !important;
	}

	#container:has(#header .header_user_area) #header .search .search-main-form input.search-submit {
		width: 28px !important;
		min-width: 28px !important;
		height: 26px !important;
		flex-basis: 28px !important;
	}

	#container:has(#header .header_user_area) #header #search_interfaces {
		position: static !important;
		min-height: 0 !important;
		margin: 0 0 0 1px !important;
		line-height: 1 !important;
	}

	#container:has(#header .header_user_area) #fixed-header td.header-right .sity_info {
		position: absolute !important;
		top: 6px !important;
		right: 6px !important;
		margin: 0 !important;
		line-height: 1.05 !important;
		white-space: nowrap !important;
	}

	#container:has(#header .header_user_area) #fixed-header td.header-right .header_user_area {
		position: absolute !important;
		top: 22px !important;
		right: 6px !important;
		margin: 0 !important;
		z-index: 50;
	}

	#container:has(#header .header_user_area) #fixed-header td.header-right .basket_data {
		position: absolute !important;
		top: 122px !important;
		right: 6px !important;
		width: clamp(88px, 26vw, 116px) !important;
		margin: 0 !important;
		text-align: right !important;
		line-height: 1.15 !important;
		z-index: 35;
	}
}

#container.basket-page-layout .products_table .basket-col-delivery-term {
	box-sizing: border-box;
	width: 110px !important;
	min-width: 110px !important;
	max-width: 110px !important;
}

#container.basket-page-layout .products_table .basket-col-product-name {
	min-width: 0;
	white-space: normal;
	overflow-wrap: anywhere;
}

@media screen and (max-width: 480px) {
	#container:has(#header .header_user_area) #fixed-header td.header-right .basket_data {
		max-width: calc(100% - 12px) !important;
		overflow-wrap: anywhere !important;
		word-break: normal !important;
	}

	#container:has(#header .header_user_area) #fixed-header td.header-right .basket_data .basket {
		display: block !important;
		max-width: 100% !important;
		margin-bottom: 3px !important;
		white-space: normal !important;
		overflow-wrap: anywhere !important;
		word-break: normal !important;
	}

	#container:has(#header .header_user_area) #fixed-header td.header-right .basket_data .ajax_button {
		max-width: 100% !important;
	}
}

@media screen and (max-width: 510px) {
	#container #central #content:has(#form_orders_index) .balance_info {
		float: none;
		width: auto;
		max-width: 100%;
		margin: 0 0 8px;
		box-sizing: border-box;
	}

	#container #central #content:has(#form_orders_index) .orders-page-title {
		clear: both;
		max-width: 100%;
	}
}
