/**
 * Стили с страницы оформления заказа: выборка из шаблона laboratorycoffee
 * для блока корзины (bx-soa-item-table) и оформления как в sale.order.ajax.
 *
 * Источники:
 * - /local/templates/laboratorycoffee/components/bitrix/sale.order.ajax/template1/style.css
 * - /local/templates/laboratorycoffee/css/style.css (правила #bx-soa-order-form / #bx-soa-basket
 *   перенесены на область .zakaz-bx-soa-order-form-order и .zakaz-basket-edit-wrap)
 */

/* ========== sale.order.ajax/template1/style.css — таблица позиций ========== */

.order-form-main__account{
	margin-top: 1rem;
}

.order-form-item__label{
	border: 0.1rem solid #a3a3a3;
}

.bx-soa-table-fade {
	position: relative;
}
.bx-soa-table-fade:before {
	left: 0;
	background: -webkit-linear-gradient(left, rgba(255, 255, 255, 1) 0%, rgba(255, 255, 255, 0) 100%);
	background: -moz-linear-gradient(left, rgba(255, 255, 255, 1) 0%, rgba(255, 255, 255, 0) 100%);
	background: linear-gradient(left, rgba(255, 255, 255, 1) 0%, rgba(255, 255, 255, 0) 100%);
	filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#ffffff', endColorstr='#00ffffff', GradientType=1);
}
.bx-soa-table-fade:after {
	right: 0;
	background: -webkit-linear-gradient(left, rgba(255, 255, 255, 0) 0%, rgba(255, 255, 255, 1) 100%);
	background: -moz-linear-gradient(left, rgba(255, 255, 255, 0) 0%, rgba(255, 255, 255, 1) 100%);
	background: linear-gradient(left, rgba(255, 255, 255, 0) 0%, rgba(255, 255, 255, 1) 100%);
	filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#00ffffff', endColorstr='#ffffff', GradientType=1);
}
.bx-soa-table-fade:before,
.bx-soa-table-fade:after {
	content: "";
	width: 0;
	position: absolute;
	bottom: 10px;
	top: 0;
	height: 100%;
	display: block;
	-webkit-transition: width 300ms ease;
	-moz-transition: width 300ms ease;
	-ms-transition: width 300ms ease;
	-o-transition: width 300ms ease;
	transition: width 300ms ease;
}
.bx-soa-table-fade-left:before,
.bx-soa-table-fade-right:after {
	width: 15px;
}
.bx-soa-item-table {
	margin-bottom: 10px;
	min-width: 100%;
	display: table;
}
.bx-soa-item-tr {
	display: table-row;
}
.bx-soa-item-td {
	display: table-cell;
	vertical-align: top;
	padding-top: 10px;
	-webkit-transition: all 0.2s ease;
	-moz-transition: all 0.2s ease;
	-o-transition: all 0.2s ease;
	transition: all 0.2s ease;
	border-top: 1px dotted #e5e5e5;
}
@media (min-width: 769px) {
	.bx-soa-item-td {
		padding-left: 7px;
		padding-right: 7px;
		padding-bottom: 10px;
	}
}
.pay_message{
	margin: 10px 0;
	font-size: 1.6rem;
}
.bx-soa-item-table .bx-soa-item-tr:first-child .bx-soa-item-td {
	border-top: none;
}
.bx-soa-item-img-block {
	float: left;
	padding-right: 15px;
}
.bx-step-completed .bx-soa-item-img-block {
	width: 48px;
	padding-bottom: 10px;
	padding-right: 10px;
}
.bx-soa-item-imgcontainer {
	border-radius: 4px;
	border: 1px solid #c0cfd9;
	padding-top: 100%;
	background-position: center;
	background-repeat: no-repeat;
	background-size: contain;
}
.bx-soa-item-title {
	font-weight: var(--ui-font-weight-bold, 600);
	padding-bottom: 5px;
}
.bx-soa-item-td-title {
	line-height: 20px;
	color: #7c7c7c;
	padding-bottom: 3px;
	font-size: 12px;
}
.bx-soa-item-td-text {
	line-height: 25px;
	vertical-align: middle;
}
.bx-soa-item-properties .bx-soa-item-td-title,
.bx-soa-item-properties .bx-soa-item-td-text {
	text-align: center;
}
.bx-soa-item-properties.bx-text-right .bx-soa-item-td-title,
.bx-soa-item-properties.bx-text-right .bx-soa-item-td-text {
	text-align: right;
}
.bx-soa-item-td-text input[type="number"] {
	height: 25px;
	line-height: 20px;
}
.bx-soa-item-td-text .bx-price {
	white-space: nowrap;
}
.bx-price-old {
	white-space: nowrap;
	text-decoration: line-through;
	color: #b8b8b8;
	font-size: 13px;
}
.bx-soa-item-td-control {
	padding-bottom: 5px;
	font-size: 11px;
}
@media (max-width: 991px) {
	.bx-soa-item-table,
	.bx-soa-item-table > tbody,
	.bx-soa-item-tr,
	.bx-soa-item-td {
		display: block;
	}
	.bx-soa-item-tr.bx-soa-item-info-container,
	.bx-soa-item-tr .bx-soa-item-td {
		border: none;
	}
	.bx-soa-item-tr {
		border-top: 1px dotted #e5e5e5;
		padding-bottom: 15px;
		padding-top: 10px;
		overflow: hidden;
	}
	.bx-soa-item-tr.bx-soa-item-tr-first {
		border: none;
	}
	.bx-soa-item-block {
		overflow: hidden;
	}
	.bx-soa-item-properties.bx-text-right .bx-soa-item-td-title,
	.bx-soa-item-properties.bx-text-right .bx-soa-item-td-text {
		text-align: center;
	}
}
@media (min-width: 581px) and (max-width: 991px) {
	.bx-soa-item-properties {
		float: left;
		padding-bottom: 10px;
	}
	.bx-soa-item-td-title,
	.bx-soa-item-nth-4p1,
	.bx-soa-item-tr {
		clear: both;
	}
}
@media (max-width: 580px) {
	.bx-soa-item-td {
		line-height: 17px;
	}
	.bx-soa-item-img-block {
		float: none;
		max-width: 180px;
		margin: 0 auto;
		padding-right: 0;
	}
	.bx-soa-section.bx-step-completed .bx-soa-item-img-block {
		float: left;
	}
	.bx-soa-item-content {
		padding-top: 15px;
	}
	.bx-soa-section.bx-step-completed .bx-soa-item-content {
		padding-top: 0;
	}
	.bx-scu-container {
		padding-top: 10px;
	}
	.bx-soa-item-td-title,
	.bx-soa-item-td-text {
		line-height: 20px;
		display: inline-block !important;
		padding: 2px 5px;
		text-align: left;
		vertical-align: middle;
		font-size: 13px;
	}
	.bx-soa-item-td-title:after {
		content: ":";
	}
	.bx-soa-item-properties {
		padding: 0;
	}
}
@media (min-width: 580px) {
	.bx-soa-item-img-block {
		width: 85px;
		margin: 0;
	}
}

/* ========== Область /zakaz/ (раньше #bx-soa-order-form / #bx-soa-basket) ========== */

.pickup-form__main .pickup-form__list .pickup-list--item{
	width: 100%;
	min-height: fit-content;
    gap: 3rem;
}

.order__basket-soa {
	margin-bottom: 28px;
}

.order__basket-soa .bx-soa-item-img-block {
	width: 90px;
	min-width: 90px;
	max-width: 90px;
	box-sizing: border-box;
}

.order__basket-soa .bx-soa-item-imgcontainer {
	width: 100%;
	box-sizing: border-box;
}

.zakaz-bx-soa-order-form-order .bx-soa-item-td-text {
	font-size: 16px;
	color: #000;
	transform: none;
	margin-top: 0;
}

.zakaz-bx-soa-order-form-order .bx-soa-item-table .bx-soa-item-tr .bx-soa-item-td:first-child {
	padding-left: 0;
}

.zakaz-bx-soa-order-form-order .bx-soa-item-title a {
	color: inherit;
	text-decoration: none !important;
}

.zakaz-bx-soa-order-form-order .bx-soa-item-title a:hover {
	text-decoration: underline;
}

.zakaz-bx-soa-order-form-order .bx-soa-item-imgcontainer {
	border: none;
}

.zakaz-basket-edit-wrap {
	text-align: right;
}

.zakaz-bx-soa-order-form-order .edit_basket {
	font-weight: 100;
	opacity: 0.8;
	font-size: 14px;
	border-radius: 7px;
	line-height: 19px;
	padding: 5px 10px;
	width: fit-content;
	box-shadow: none;
	background: #f5f5f7;
	text-decoration: none !important;
	transition: all ease 0.3s;
	display: inline-block;
}

.zakaz-bx-soa-order-form-order .edit_basket:hover {
	opacity: 1;
}

.bx-soa-item-block{
	display: flex;
    align-items: center;
}

body .bx-soa-item-td{
	width: 75%;
	vertical-align: middle;
	border: none;
}

body .price_text_product{
	min-width: 100px;
}

body .delivery-form__inner,
body .transport-form__inner{
	padding: 0;
	box-shadow: none;
	border: none;
}

.order-form__switcher-btn{
	font-size: 1.45rem;
	padding: 0.9rem 1.3rem;
}

/* Одностраничное оформление на /zakaz/ (без шагов) */
.order--individual .order-form--second,
.order--individual .order-form--third {
	display: block;
	opacity: 1;
}

.pay-item__info{
	width: 100%;
}

.order-form-item__label.label-file{
	width: 44rem;
}

.transport-form__item{
	width: 21rem;
	height: 15rem;
}



.pay-item__text{
	width: 100%;
    text-align: left;
	margin-top: 30px;
}

.pay-item__img{
	position: absolute;
    right: 10px;
    top: 10px;
	width: 3.5rem;
    height: 3.5rem;
}

.pay-item{
	position: relative;
	padding: 2rem;
	height: fit-content;
    min-height: auto;
	max-width: 28.5rem;
}

.order-form__item-pay{
	justify-content: flex-start;
	gap: 15px;
}

.order-form--first,
.order-form--second{
	margin-bottom: 28px;
}

body .order__basket-soa .bx-soa-item-img-block{
	width: 120px;
    min-width: 120px;
    max-width: 120px;
}

body .wrapper_title{
	display: flex;
	justify-content: space-between;
	align-items: center;
	margin-bottom: 10px;
}

.order__basket-soa {
	margin-bottom: 28px;
}

.order__basket-soa .bx-soa-item-img-block {
	width: 90px;
	min-width: 90px;
	max-width: 90px;
	box-sizing: border-box;
}

.order__basket-soa .bx-soa-item-imgcontainer {
	width: 100%;
	box-sizing: border-box;
}

.zakaz-bx-soa-order-form-order .bx-soa-item-td-text {
	transform: none;
	margin-top: 0;
}

.zakaz-bx-soa-order-form-order .edit_basket {
	opacity: 0.8;
	font-size: 14px;
	border-radius: 7px;
	line-height: 19px;
	padding: 5px 10px;
	width: fit-content;
	box-shadow: none;
	color: #000;
	background: #f5f5f7;
	text-decoration: none !important;
	transition: all ease 0.3s;
	display: inline-block;
	font-size: 2rem;
    font-weight: 500;
	font-family: "Euclid Circular A";
}

.order__wrapper-form{
	max-width: 100rem;
}

.product_purchase{
	width: 77.5rem;
}

.order-form-item{
	max-width: 44rem;
}

.order__wrapper-form .order-form__title{
	margin: 0;
	text-transform: uppercase;
}

.zakaz-bx-soa-order-form-order .edit_basket:hover {
	opacity: 1;
}

body .order__basket-soa .bx-soa-item-img-block a{
	border: 0.1rem solid #f4f6f8;
	border-radius: 1.5rem;
	padding: 10px;
	display: block;
}

body .bx-soa-item-imgcontainer{
	border: none;
}

body .bx-soa-item-title,
.bx-soa-item-properties.bx-text-right .bx-soa-item-td-title, .bx-soa-item-properties.bx-text-right .bx-soa-item-td-text{
	color: #3b3c40;
    font-size: 2rem;
    font-weight: 500;
	font-family: "Euclid Circular A";
}

/* Поле адреса пункта над картой (самовывоз / ТК из магазина) */
.pickup-form__selected-address {
	margin-bottom: 16px;
}
.pickup-form__selected-address-label {
	display: block;
	margin-bottom: 8px;
	font-size: 14px;
	line-height: 1.3;
	color: #333;
}
.pickup-form__selected-address-input {
	width: 100%;
	box-sizing: border-box;
	padding: 12px 16px;
	font-size: 14px;
	line-height: 1.4;
	border: 1px solid #e5e5e5;
	border-radius: 8px;
	background: #f9f9f9;
	color: #333;
}
.pickup-form__selected-address-input::placeholder {
	color: #999;
}
.order-map-modal__footer .order-map-modal__select-btn {
	margin-top: 12px;
	width: 100%;
}

.order-map-modal--item__call-item strong{
	white-space: nowrap;
}

body .order-map-modal__select-btn {
	justify-content: center;
	align-items: center;
}

.order-form--second .order-form__delivery-city-wrap {
	margin-top: 20px;
	max-width: 100%;
}
.order-form--second .order-form__delivery-city-wrap .order-form-item {
	margin-bottom: 0;
}

/* Тумблер «Заказ на организацию» (как laboratorycoffee) */
.order-form-main__organization {
	margin-bottom: 20px;
}
.order-form-org-toggle {
	display: flex;
	align-items: center;
	cursor: pointer;
}
.order-form-org-toggle p {
	margin: 0 0 0 12px;
	font-size: 16px;
	line-height: 1.3;
	color: #333;
}
.order-form-org-props {
	display: none;
	flex-wrap: wrap;
	gap: 2rem;
	width: 100%;
	margin-top: 0;
}
.order-form-org-props.is-visible {
	display: flex;
}

.order-form-main__organization{
	margin-top: 25px;
}

body .order_purchase .product_purchase-box{
	margin-top: 0;
	position: sticky;
    top: 24rem;
	padding-top: 3rem;
}

body .order-form-org-props{
	margin-bottom: 20px;
}

body .order-form-item-comment{
	max-width: 100%;
}

.product_purchase-box--promocode{
	display: none;
}

.order_purchase .product_purchase-box--item.item-result{
	margin-top: 0;
}

.order_purchase .product_purchase-box--coast--value.value-result{
	font-size: 3.2rem;
}

.order_purchase .product_purchase-box--coast--name.name-result{
	font-size: 3.2rem;
    text-transform: uppercase;
    color: #3b3c40;
    font-weight: 600;
}

.order_purchase .product_purchase-box--item{
	position: relative;
}

.order_purchase .product_purchase-box--coast--name{
	color: #3b3c40;
	background: #fff;
    z-index: 1;
	padding-right: 5px;
}

.order_purchase .product_purchase-box--coast--value{
	background: #fff;
    z-index: 1;
	padding-left: 5px;
}

.order_purchase .product_purchase-box--main .product_purchase-box--item::after{
	width: 100%;
    height: 1px;
    content: "";
    position: absolute;
    bottom: 3px;
    border-width: 1px;
    border-style: dotted;
    border-color: rgb(189 189 189);
    border-image: initial;
}

.zakaz-bx-soa-order-form-order .bx-soa-item-properties.bx-text-right .bx-soa-item-td-title{
	display: none;
}


/* Напоминание о контактных данных (как laboratorycoffee) */
.order_purchase .product_purchase-box__contact-reminder {
	display: none;
	margin-bottom: 2rem;
}
.order_purchase .product_purchase-box__contact-reminder.is-visible {
	display: block;
}
.order_purchase .product_purchase-box__contact-reminder[hidden] {
	display: none !important;
}
.order_purchase .bx-soa-contact-reminder-text {
	color: #3b3c40;
	font-size: 1.6rem;
	font-weight: 500;
	line-height: 1.4;
	margin: 0 0 0.8rem;
}
.order_purchase .bx-soa-contact-reminder-link {
	color: #e50e78;
	text-decoration: underline;
	cursor: pointer;
}
.order_purchase .bx-soa-contact-reminder-link:hover {
	color: #c40c66;
	text-decoration: underline;
}
@media (max-width: 48em) {
	.order_purchase .bx-soa-contact-reminder-text {
		font-size: 2.4rem;
	}
}

@media (max-width: 48em) {
	.order-form-org-props {
		gap: 4rem;
	}
}

@media (max-width: 768px) {
	body .order-form-item__label{
		border: 1px solid #a3a3a3;
		margin-top: 5px;
	}
	.pickup-form__main .pickup-form__list .pickup-list--item{
		height: fit-content;
	}
	.pay_message{
		margin: 10px 0;
		font-size: 3rem;
	}
	.order-form-item {
		max-width: 100%;
	}
	.product_purchase{
		width: 100%;
	}
	.order-form__switcher-btn{
		font-size: 13px;
	}
	.pay-item{
		max-width: 100%;
	}
	.pay-item__img{
		width: 5rem;
		height: 5rem;
	}
	.delivery-options__comment{
		font-size: 2rem;
	}
	.order__inner{
		row-gap: 28px;
	}
	body .order-map-modal__select-btn{
		width: 100%;
	}
	.zakaz-bx-soa-order-form-order .edit_basket{
		font-size: 3rem;
	}
	.pickup-list--item__call.mobile{
		display: none;
	}
	.transport-form__item{
		width: 100%;
		height: 30rem;
	}
	#delivery__city::placeholder{
		font-size: 2.8rem !important;
	}
	.order_purchase .product_purchase-box--coast--name.name-result,
	.order_purchase .product_purchase-box--coast--value.value-result{
		font-size: 6rem;
	}
	.order_purchase .product_purchase-box--item.item-result{
		margin-bottom: 5rem;
	}
	.order-form-item__label.label-file{
		width: 100%;
	}
	.order-form-item__label input[type="file"]+.order-form-item__placeholder{
		font-size: 2.3rem;
	}
	.order-form--second .wrapper_title,
	.order-form--third .wrapper_title{
		margin-bottom: 25px;
	}
	.order-form-main .wrapper_title{
		margin-bottom: 0;
	}
	.zakaz-bx-soa-order-form-order .wrapper_title{
		margin-bottom: 30px;
	}
	body .order__basket-soa .bx-soa-item-img-block {
		width: 160px;
		min-width: 160px;
		max-width: 160px;
	}
	body .order__basket-soa .bx-soa-item-img-block a{
		border: none;
	}
	.zakaz-bx-soa-order-form-order .bx-soa-item-title{
		font-size: 3.5rem;
    font-weight: 600;
    line-height: 1.2;
	}
	.bx-soa-item-properties.bx-text-right .bx-soa-item-td-text,
	.zakaz-bx-soa-order-form-order .bx-soa-item-properties.bx-text-right .bx-soa-item-td-title{
		font-size: 3rem;
	}
	.zakaz-bx-soa-order-form-order .bx-soa-item-properties.bx-text-right .bx-soa-item-td-title{
		font-size: 2.5rem;
		font-weight: 400;
		display: block;
	}
	body .bx-soa-item-td{
		width: 100%;
	}
}

@media (max-width: 580px) {
	.zakaz-bx-soa-order-form-order .bx-soa-item-block {
		display: flex;
		flex-direction: column;
		gap: 10px;
	}
	.zakaz-bx-soa-order-form-order .bx-soa-item-td-text {
		transform: none !important;
		margin-top: 0 !important;
	}
	.zakaz-bx-soa-order-form-order .bx-soa-item-img-block {
		width: 200px;
		max-width: 100%;
		padding-right: 0;
	}
	.zakaz-bx-soa-order-form-order .bx-soa-item-td {
		padding-top: 0;
	}
	.zakaz-bx-soa-order-form-order .bx-soa-item-title,
	.zakaz-bx-soa-order-form-order .bx-soa-section .bx-soa-item-content {
		width: 100%;
	}
	.zakaz-bx-soa-order-form-order
		.bx-soa-item-properties.bx-text-right
		.bx-soa-item-td-title,
	.zakaz-bx-soa-order-form-order
		.bx-soa-item-properties.bx-text-right
		.bx-soa-item-td-text {
		padding-left: 0;
	}
	.zakaz-bx-soa-order-form-order .bx-soa-item-properties {
		display: flex;
		justify-content: space-between;
		margin-top: 10px;
		align-items: center;
	}
}
