

#preloadedImages{ display:inline; width:0; height:0;
    background-image:url(../img/share.svg);
    background-image:url(../img/eye-fill-hover.svg);
    background-image:url(../img/eye-close-hover.svg);
    background-image:url(../img/left.svg);
}

* { box-sizing:border-box; }

body { font:14px/1.2 'Onest', sans-serif; height:100%; background:var(--bg-dark); color:var(--bg-dark); min-width:320px; }

a { cursor:pointer; transition:.1s; }

h1 { font-size:24px; text-align:center; }

label { cursor:pointer; }

nav { display:flex; justify-content:center; margin:20px 0; padding:20px; border-radius:25px; background:var(--bg); }
	nav a { display:flex; justify-content:center; align-items:center; width:30px; height:30px; border-radius:50%; border:1px solid var(--bg-gray); }
	nav a.active { background:var(--bg-gray); cursor:text; }
	nav a + a { margin-left:10px; }

.btn { display:inline-flex; justify-content:center; align-items:center; height:56px; padding:0 20px; font-size:18px; border-radius:16px; color:#fff; background:var(--btn-bg); }
	.btn:hover { background:var(--btn-hover); }
	.btn:active { background:var(--btn-press); }
	
.btn.light { color:var(--bg-dark); background:#ECECF5; }

.btn.light:hover, .param.amount a:hover, .param.date label:hover input + i, .param.date .icon-calendar:hover,
	.param.time label:hover input + span strong, .param.services label:hover i,
	.param.calendar label:hover input + i, .coach_item > input:hover + .coach_content .row.v1, .coach_item > input:hover + .coach_content .row.v1 *,
	.coach_amount_users_content label:hover i, .coach_ON .coach_time_content label:hover input + i, .payment_data_content .label label:hover input + i,
	.param.age label:hover input + span i, .param.levels_group label:hover input + i, .param.tickets label:hover input + span span.v1,
	.content.v3 .coach_time_content label:hover input + i, .service_amount a:hover
		{ color:#fff; background:#77777C; }

.btn.light:active { color:#fff; background:var(--bg-dark); }

.close_link { display:flex; justify-content:center; align-items:center; position:absolute; top:14px; right:14px; width:40px; height:40px; border-radius:50%; 
	background:var(--bg-item) url(../img/close.svg) no-repeat center center; z-index:1; }

	.close_link:hover { background-color:var(--bg-gray); }

.container { width:840px; margin:auto; padding:50px 15px 0; max-width:100%; min-height:100%; }

.content { position:relative; width:100%; max-height:100%; opacity:0; transition: opacity .3s; }
.visible .content { opacity:1; }
.content.v1 { display:flex; flex-direction:column; justify-content:center; align-items:center;  }

.content.v1 .btn_block { width:400px; max-width:100%; padding:24px 0 0;}
.content.v1 .btn { width:100%; text-align:center; }
.content.v1 label + label .btn { margin-top:8px; }


.message { display:flex; justify-content:center; align-items:center; width:100%; height:100%; min-height:56px; border:1px solid var(--btn-bg); border-radius:16px; background:#fff; z-index:1; }
.result_coach .message { height:calc(100% - 20px); margin:10px 0; }


.modal_item { display:none; flex-wrap:wrap; position:relative; height:638px; width:100%; max-width:100%; padding:24px 24px 32px; margin:auto; border-radius:32px; background:var(--bg); overflow:hidden; }
.modal_item.active { display:flex; }

.no { color:var(--btn-bg); }

.radio input { display:none; }
.radio input:checked + i, .param.time input:checked + span, .param.time input:checked + span *, 
.coach_item input:checked + .coach_content .row.v1, .coach_item input:checked + .coach_content .row.v1 *,
.coach_ON .coach_time_content input:checked  + i, .coach_amount_users_content input:checked + span, .coach_amount_users_content input:checked + span i,
.payment_data_content .label input:checked + i, .param.age input:checked + span, .param.age input:checked + span *,
.param.levels_group input:checked + i, .param.tickets input:checked + span, .param.tickets input:checked + span *, 
.param.services input:checked + span, .param.services input:checked + span *
	{ background:var(--btn-checked) !important; color:#fff !important; cursor:text; }
	
	/* 
		error_info 
	*/
.error_info { display:flex; position:absolute; left:0; bottom:-13px; width:100%; color:var(--btn-bg) !important; cursor:pointer; }
.coach_amount_users_content .error_info { bottom:-21px; }

label .error_info, .agreement .error_info { display:flex; align-items:center; justify-content:center; text-align:center; position:absolute; top:0; right:0; bottom:0; left:0; padding:0 16px; border:1px solid; border-radius:16px; background: var(--bg-lgray); }
.agreement .error_info { top:8px; height:60px; }

.coach.error h2 { margin: 0 0 24px; }
.time.error h2 { margin: 0 0 10px; }

.coach.error .error_info, .time.error .error_info { top:20px; bottom:auto; }

.modal_item[data-step="2"]:not(.coach_ON) .coach_time_content .error_info { position:relative; margin:10px 0 30px; }
.modal_item[data-step="2"].coach_ON .coach_time_content.error { padding-top:20px; }

.content.v2 .coach_time_content.error .error_info { top:0; bottom:auto; }

.content.v3 .coach_time_content.error .error_info { top:10px; bottom:auto; }
.content.v3 .coach_item > input + .coach_content + .coach_time_content.error { padding-top:30px; }

.param.tickets.error { padding-bottom:8px; margin-bottom:28px; }


.error_mark { display:none; align-items:center; position:absolute; bottom:105px; right:0; height:50px; max-width:50px; padding:0 13px; border-radius:16px; color:#fff; cursor:default; transition:max-width .5s; background:var(--btn-bg); overflow:hidden; }
	.error_mark .v1 { padding:0 10px; font-size:20px; }
	.error_mark span { display:inline-flex; white-space:nowrap; }
	.error_mark span + span { margin:0 10px 0 12px; }
.error_mark:hover { max-width:300px; }
aside.error .error_mark { display:flex; }

.hide { display:none !important; }

	/* 
		1. Аренда кортов 
	*/
.content.v2, .content.v3 { display:flex; justify-content:space-between; }
.content.v2 .col, .content.v3 .col { position:relative; width:420px; max-height:100%;padding:0 25px 0 0; overflow:auto; }

	
.param { margin:22px 0 0; display:flex; flex-wrap:wrap; position:relative; }
	.param h2 { padding:0 0 16px; }
	
.param.amount { justify-content:space-between; }
	.param.amount .label, .param.date .label, .param.services .label, .param.age .label { display:flex; flex-wrap:wrap; }
	.param.amount .label { justify-content:flex-end; width:166px; }
	.param.amount input, .service_amount input { width:72px; height:44px; margin:0 0 0 2px; font-size:14px; text-align:center; border:0; background:var(--bg-lgray); }
	.param.amount a, .service_amount a { display:flex; justify-content:center; align-items:center; width:44px; height:44px; margin:0 0 0 2px; font-size:17px; background:var(--bg-lgray); }
		.param.amount a.no { color:var(--btn-bg) !important; }
	.param.amount .down, .service_amount .down { border-radius:16px 0 0 16px; }
	.param.amount .up, .service_amount .up  { border-radius:0 16px 16px 0; }
	.param.amount small { display:block; width:100%; margin:8px 0 0; text-align:center; color:#B1B3B9; }

.service_amount	{ display:none; margin:8px 0 0; }
.service_amount a { height:32px; width:35px; }
.service_amount .down { text-indent:4px; }
.service_amount .up { text-indent:-4px; }
.service_amount input { height:32px; width:50px; }
.service_amount + small { display:flex; justify-content:center; margin:8px 0 0; color:#B1B3B9; }
.checked + .service_amount { display:flex; }
.checked + .service_amount + small { display:none; }

.param.date { position:relative; }
	.param.date .label { display:flex; flex-wrap:wrap; min-width:calc(100% + 8px); min-height:160px; }
		.param.date .label > div, .param.calendar .label > div { position:relative; }
		.param.date .label > div { width:20%; padding:0 8px 8px 0; }
	.param.date input + i, .param.date .icon-calendar, .param.calendar input + i, .param.date .label .off span:not(.tomorrow), .param.date .label .off2 span:not(.tomorrow) 
		{ display:flex; flex-direction:column; justify-content:center; align-items:center; height:72px; border-radius:16px; background:var(--bg-lgray); }
	.param.date .label .off span:not(.tomorrow), .param.date .label .off2 span:not(.tomorrow) { flex-direction:row; } 
	
		.param.date input + i span { color:#80808C; }
			.param.date input + i:hover span { color:#fff; }
	.param.date .off input + i, .param.calendar .off input + i, .param.date .label .off span:not(.tomorrow), 
		.param.date .off2 input + i, .param.calendar .off2 input + i, .param.date .label .off2 span:not(.tomorrow) 
			{ background:url(../img/bg.png); }

		.param.date .off:before, .param.calendar .off:before, 
			.param.date .off2:before, .param.calendar .off2:before 
				{ content:''; position:absolute; top:-1px; right:-1px; bottom:-1px; left:-1px; cursor:text; z-index:1; }
				
	.param.date .warm input + i, .param.calendar .warm input + i { background:#FFEAEB; }
	.param.date .hot input + i, .param.calendar .hot input + i { background:#FFCDCE; }
	.param.date .icon-calendar { position:absolute; right:0; bottom:8px; width:calc(20% - 8px); margin:0; font-size:24px; }

.param.calendar { display:none; flex-direction:column; position:relative; min-height:580px; margin:-17px 0 0; background:var(--bg); z-index:1; }
	.param.calendar h2 { padding:24px 0 15px; }
	.param.calendar .label { display:flex; flex-wrap:wrap; min-width:calc(100% + 11px); }
		.param.calendar .label > div { width:14%; padding:0 4px 4px 0; }
	.param.calendar input + i { height:54px; }
	.param.calendar .month_link { display:flex; justify-content:flex-end; position:relative; margin:24px 5px 0 0; }
	.param.calendar .month_link .return_link { width:20px; height:auto; margin:0; background:transparent !important; }
	.param.calendar .month_link span + .return_link { transform:rotate(180deg); }
	.param.calendar .month_link span { padding:0 8px; }

.calendarON .param { display:none; }
.calendarON .param.calendar { display:flex; }
	
.param.services h2 { width:100%; }
	.param.services .label { min-width:calc(100% + 8px); min-height:160px; }
	.param.age label { width:calc(50% - 4px); }
	.param.age .label { justify-content:space-between;  width:100%; min-height:116px; }
	.param.services .label > div /* .param.services label */ { width:calc(33.3% - 8px); margin:0 8px 8px 0; }
	.param.services .label  input + span, .param.services .label i, .param.age input + span { display:flex; flex-direction:column; justify-content:center; align-items:center; }
	.param.services .label input + span { justify-content:space-between; height:108px; padding:0 0 10px; border-radius:16px; background:var(--bg-gray); }
	.param.services .label i { width:100%; height:72px; background:var(--bg-lgray); border-radius:16px; }
	.param.services .label i + span { color:#fff; }
	
	.param.age input + span { height:108px; width:100%; border-radius:16px; background:var(--bg-lgray); }
		.param.services .label i:before, .param.age input + span i:before { font-size:24px; }
		/* .param.services input + i > span { display:flex; margin:15px 0 0; } */

.param.time .label { display:flex; flex-direction:column; min-width:calc(100% + 8px); min-height:100px; }
	.param.time .row { display:flex; flex-wrap:wrap; position:relative; width:100%; padding:12px 0 0; }
		.param.time .row + .row { margin-top:5px; }
		.param.time .row:before { content:''; display:block; position:absolute; top:0; left:0; right:8px; height:2px; border-top:2px dashed var(--bg-lgray); }
	.param.time label { width:20%; padding:0 8px 8px 0; }
	.param.time input + span { display:flex; flex-direction:column; justify-content:flex-start; align-items:center; /* width:72px; */ height:80px; font-size:16px; border-radius:16px; background:var(--bg-gray); }
	.param.time input + span strong { display:flex; justify-content:center; align-items:center; width:100%; height:44px; margin:0 0 8px; letter-spacing:1px; border-radius:16px; background:var(--bg-lgray); }
	.param.time input + span span { font-size:15px; color:#fff; }

.param.time.priceOFF .label { min-height:230px; }
.param.time.priceOFF input + span { height:44px; }	
.param.time.priceOFF input + span strong { margin:0; }
.param.time.priceOFF input + span span { display:none; }

.content.v3 .param.time .label { min-height:205px; }


.param.coach h2, .coach_items, .coach_item { width:100%; position:relative; }
.coach_item + .coach_item { margin-top:16px; }
.coach_item > input { width:100%; height:72px; position:absolute; margin:0; z-index:1; cursor:pointer; opacity:0; }
.coach_content { display:flex; flex-wrap:wrap; position:relative; }
	.coach_content figure { width:72px; height:72px; border-radius:16px; overflow:hidden; }
		.coach_content figure img { width:100%; height:100%; object-fit:cover; }
	.coach_content .row { width:100%; }
	.coach_content .row.v1 { display:flex; align-items:center; border-radius:16px; background:var(--bg-lgray); }
	.coach_content .row.v1 .txt { padding:0 16px 0 12px; }
	.coach_content h3 { margin:0 0 8px; }
	.coach_content .comment_link { display:flex; position:absolute; right:16px; padding:0 22px 0 0; margin:-17px 0 0; color:#80808C; text-decoration:none; z-index:2; }
		.coach_content .comment_link:after { content:url(../img/share-light.svg); position:absolute; right:0; }
	.coach_content .comment_link:hover { color:#0B0E18; }
	.coach_content .comment_link:hover:after { content:url(../img/share.svg); }
	
.coach_item input:checked + .coach_content .row.v1 .comment_link:hover { color:#fff; }
.coach_item input:checked + .coach_content .row.v1 .comment_link:hover:after, .coach_item > input:hover + .coach_content .row.v1 .comment_link:after,
.coach_item input:checked + .coach_content .row.v1 .comment_link:after
	{ content:url(../img/share-white.svg); }

.coach_content .row.v2 { display:none; }
.coach_item input:checked + .coach_content .row.v1 + .v2 { display:flex; }


.param.coach .return_link, .coach_content + h2, .coach_amount_users_content + h2 { display:none; }
.coach_amount_users_content { display:flex; flex-wrap:wrap; position:relative; min-width:calc(100% + 8px); padding:8px 0 0; }
	.content.v2 .coach_amount_users_content { display:none; }
	.coach_amount_users_content label { display:flex; position:relative; width:25%; padding:8px 8px 0 0; }
	.coach_amount_users_content input + span { display:flex; flex-direction:column; justify-content:flex-start; align-items:center; width:100%; height:108px; border-radius:16px; color:#fff; background: var(--bg-gray); }
		.coach_amount_users_content i { display:flex; flex-direction:column; justify-content:center; align-items:center; width:100%; height:72px; margin:0 0 8px; border-radius:16px; color:var(--btn-checked); background:var(--bg-lgray); }
		.coach_amount_users_content i:before { font-size:24px; margin:0 0 4px; }
			.coach_amount_users_content span span { display:block; }


.content.v2 .coach_item input:checked + .coach_content + h2 + .coach_amount_users_content { display:flex; }	

	/* 
		окно тренеров 
	*/
.coach_ON .col > .return_link, .coach_ON .param:not( .coach )  { display:none; }
.coach_ON .param.coach .return_link { display:flex; margin:-22px 0 24px; }
.coach_ON .coach_item input:checked + .coach_content + h2 { display:flex; padding:24px 0 0; }
.coach_ON .coach_item input:checked + .coach_content + h2 + .coach_amount_users_content + h2 { display:flex; padding:24px 0 8px; }

.coach_ON .coach_time_content, .content.v3 .coach_time_content 
	{ display:flex; flex-wrap:wrap; position:relative; width:calc(100% + 8px); }

	.coach_ON .coach_time_content label, .content.v3 .coach_time_content label 
		{ position:relative; width:20%; padding:8px 8px 0 0; }

	.coach_ON .coach_time_content input + i, .content.v3 .coach_time_content input + i, .content.v3 .param.time input + i 
		{ display:flex; justify-content:center; align-items:center; width:100%; height:44px; border-radius:16px; background:var(--bg-lgray); }
		
	.coach_ON .coach_time_content label:last-child, .content.v3 .coach_time_content label:last-child { margin-bottom:24px; }

.modal_item[data-step="2"]:not(.coach_ON) .coach_time_content label { display:none; }

.content.v3 .coach_item.focus > input + .coach_content + .coach_time_content { padding-top:8px; }

	/* 
		блок ввода данных пользователя 
	*/
.personal_data, .personal_ON .param { display:none; }
.personal_ON .personal_data .return_link { margin:-17px 0 24px; background:var(--bg); }
.personal_ON .personal_data { display:flex; flex-direction:column; }
.personal_data h2, .payment_data h2 { padding:0 0 8px; }
.personal_data_content label, .payment_data_content label { display:flex; position:relative; margin:8px 0 0; }

label .title { display:flex; position:absolute; top:21px; left:15px; right:15px; padding:0 0 8px 1px; color:#B1B3B9; background:var(--bg-lgray); }
label.focus .title { top:1px; }

input[type="text"],
input[type="email"] { width:100%; height:60px; padding:14px 16px 0 16px; font:14px/1 'Onest', sans-serif; border:1px solid var(--bg-lgray); border-radius:16px; background:var(--bg-lgray); }
input[type="text"]:focus,
input[type="email"]:focus { border-color:var(--bg-gray); outline:0; }

.infoMask, .errorMask { display:none !important; }


.checkbox input { display:none; }
.checkbox input + i { display:flex; justify-content:center; align-items:center; width:32px; height:32px; border-radius:11px; border:2px solid #80808C; }
.checkbox input:checked + i:before { content:''; display:flex; width:15px; height:15px; background:url(../img/check.svg)no-repeat center center; background-size:contain; }

.agreement { display:flex; align-items:center; position:relative; padding:16px 0 0; }
.agreement .checkbox { margin:0 16px 0 0; }

	/* 
		блок ввода данных платежа 
	*/
.payment_data, .payment_ON .param { display:none; }
.payment_ON .payment_data .return_link { margin:-17px 0 24px; background:var(--bg); }
.payment_ON .payment_data { display:flex; flex-direction:column; }
.payment_data_content .label { display:flex; justify-content:space-between; margin:0 0 24px; }
		.payment_data_content .label label { width:calc(50% - 4px); }
		.payment_data_content .label input + i { display:flex; flex-direction:column; justify-content:center; align-items:center; height:108px; width:100%; border-radius:16px; background:var(--bg-lgray); }
		.payment_data_content .label input[value="card"] + i:before { content:url(../img/bank_card.png); margin:10px 0 25px; }
		.payment_data_content .label input[value="sbp"] + i:before { content:url(../img/bank_sbp.png); margin:10px 0 25px; }
	.payment_data_content .labels { display:flex; justify-content:space-between; }
		.payment_data_content .labels label { width:calc(50% - 4px); }
	.payment_data_content .checkbox { display:flex; align-items:center; margin:24px 0 0; }
		.payment_data_content .checkbox span { padding:0 0 0 16px; }

.price_info_manager { display:flex; position:absolute; right:4px; padding:0 24px 0 0; color:#80808C; }
	.price_info_manager:after { content:url(../img/eye-fill.svg); position:absolute; right:0; top:1px; }
	.price_info_manager:hover { color:var(--btn-checked); }
	.price_info_manager:hover:after { content:url(../img/eye-fill-hover.svg); }
.priceOFF .price_info_manager:after { content:url(../img/eye-close.svg); }
	.priceOFF .price_info_manager:hover:after { content:url(../img/eye-close-hover.svg); }
	
.return_link { display:flex; position:relative; padding:0 0 0 16px; color:#77777C; }
	.return_link:before { content:url(../img/left-light.svg); position:absolute; left:0; }
.return_link:hover { color:var(--bg-dark); }
	.return_link:hover:before { content:url(../img/left.svg); }


	/* 
		форма индивидуальных тренеровок 
	*/
.content.v3 .param.amount_users h2 { padding:0; }


	/* 
		форма групповых тренеровок 
	*/
.param.age h2 { width:100%; }
.param.age .label { min-height:108px; }
.param.age input + span { justify-content:flex-start; background:var(--bg-gray); }
	.param.age input + span i { display:flex; flex-direction:column; justify-content:center; align-items:center; width:100%; height:72px; border-radius:16px; background:var(--bg-lgray); }
		.param.age input + span i:before { margin:4px 0 0; }
	.param.age input + span span { display:inline-flex; margin:10px 0 0; color:#fff; }

.param.age.error { padding-bottom:8px; margin-bottom:24px; }

.param.levels_group { margin-top:8px; }
	.param.levels_group .label, .param.tickets .label { display:flex; flex-wrap:wrap; min-height:152px; min-width:calc(100% + 8px); }
	.param.levels_group .label { min-height:80px; }
	.param.levels_group label { width:20%; padding:8px 8px 0 0; }
		.param.levels_group input + i, .param.tickets input + span { display:flex; flex-direction:column; justify-content:center; align-items:center; text-align:center; width:100%; height:72px; border-radius:16px; background:var(--bg-lgray); }
		.param.levels_group input + i { padding:10px; }	
			.param.levels_group input + i span { display:inline-flex; color:#80808C; margin:4px 0 0; }
			.param.levels_group label:hover input + i span { color:#fff; }
			.param.levels_group input:checked + i span { color:#80808C !important; }
	.param.levels_group label.all { width:auto; flex-grow:1; }
	
.param.tickets .label{ min-height:108px; min-width:calc(100% + 13px); }
	.param.tickets label { width:33%; padding:8px 8px 0 0; }
	.param.tickets input + span { justify-content:flex-start; height:108px; background:var(--bg-gray); }
	.param.tickets input + span i { display:inline-flex; align-items:center; margin:0 0 4px; }
		.param.tickets input + span i:before { font-size:24px; margin:0 4px 0 0; }
	.param.tickets span.v1 { display:flex; flex-direction:column; justify-content:center; align-items:center; text-align:center; width:100%; height:72px; border-radius:16px; background:var(--bg-lgray); }
	.param.tickets span.v2 { display:inline-flex; margin:9px 0 0; color:#fff; }
	

	
	/* 
		aside 
	*/
	
aside { display:flex; flex-direction:column; width:calc(100% - 402px); margin:-24px -24px -32px; padding:24px; background:rgba(0,0,0,.06)/* var(--bg-item) */; }
aside .result_day, aside .result_time { font-size:36px; padding:0 0 8px; }
	aside .result_time span { white-space:nowrap; }
	aside .result_day span { font-size:18px; color:#80808C; }
aside .result_court { display:flex; align-items:center; margin:16px 0 0; }
	aside .result_court h2 { font-size:18px; padding:0 0 5px; }
	aside .result_court i { display:flex; justify-content:center; align-items:center; flex-shrink:0; width:72px; height:72px; border-radius:16px; background:var(--bg); }
		aside .result_court i:before { font-size:24px; }
	aside .result_court .txt { padding-left:16px; font-size:18px; } 
		aside .result_court_content > span { display:block; font-size:14px; color:#80808C; } 
	aside .result_court .separator { display:inline-flex; padding:0 5px; }
		
aside .coach_content { margin:24px 0 0; }
	aside .coach_content .row.v1 { background:transparent; }
.modal_item[data-step="2"]:not(.coach_ON) aside .coach_content { cursor:pointer; }
.modal_item:not(.coach_ON) aside .coach_content:hover .row.v1 { background:var(--bg); }
.coach_ON aside .coach_content { cursor:text; }
		
aside .result_services { display:flex; flex-wrap:wrap; align-items:center; }
	aside .result_services i { display:flex; justify-content:center; align-items:center; width:44px; height:44px; margin:8px 8px 0 0; font-size:24px; border-radius:16px; background:var(--bg);  }
		
aside .result_coach { flex-grow:1; position:relative; }
aside .coach_link { display:flex; justify-content:center; align-items:center; height:56px; margin-top:24px; color:var(--btn-checked); text-decoration:none; border:2px dashed #D5D8DF; border-radius:16px; }
	aside .coach_link:hover { border-style:solid; background:var(--bg); }

aside .coach_link.off { opacity:.5; }
aside .coach_link.off + span { position:absolute; display:flex; width:100%; height:58px; margin:-57px 0 0; cursor:text; }

aside .dell_coach { display:flex; justify-content:center; align-items:center; position:absolute; right:0; top:-10px; width:25px; height:25px; font-size:20px; border:1px solid var(--btn-bg); border-radius:3px; color:var(--btn-bg); background:#f0f0f0; }
	aside .dell_coach:hover { background:var(--btn-bg); color:#fff; }
	
[data-step="4"] aside .dell_coach { display:none; }

aside .price_block { border-radius:16px; background:var(--bg); }

aside dl { padding:16px; }
	aside dl > div { display:flex; }
	aside dl > div + div { margin-top:8px; }
aside dt { flex-grow:1; color:#80808C; }
aside dd { margin-right:2px; }

aside .price_end { margin-top:16px; }
	aside .price_end dd { font-size:18px; }

aside .btn.submit { width:100%; border:0; cursor:pointer; }

aside .bottom { display:flex; justify-content:space-between; align-items:center; position:relative; margin:16px 0 0; }
	aside .bottom .line { display:flex; position:absolute; top:13px; width:calc(50% - 50px); height:2px; border-top:2px dashed var(--bg-gray); }
	aside .bottom .line.v1 { left:35px; }
	aside .bottom .line.v2 { right:35px; }
	aside .bottom .line.active { border-color:var(--btn-checked); }
	aside .bottom i { font-size:24px; }	
	aside .bottom .icon-user { color:var(--bg-gray); }
	aside .bottom .active + .icon-user { color:var(--btn-checked); }
	aside .bottom .icon-card:before { content:url(../img/card-gray.svg); }
	aside .bottom .active + .icon-card:before { content:url(../img/card.svg); }

	/* 
		окна платежей	 
	*/
.modal_item.payment { flex-direction:column; width:450px; height:auto; padding:24px; margin:0 auto 200px; text-align:center; }
	.payment h2{ font-size:24px; }
	.payment p { margin:4px 0 0; color:#80808C; }
	.payment .center { display:flex; justify-content:center; align-items:center; width:176px; height:176px; margin:auto; }
	.payment .btn_block { display:flex; flex-direction:column; justify-content:space-between; align-items:center; min-height:116px; border-radius:16px; color:#fff; background:#10131D;}
		.payment .btn_block div { padding:12px 16px 10px; }
		.payment .btn_block .btn { width:100%; }
	.payment .btn_block + .btn { margin-top:4px; }
	
#order_data_result { display:none; }
	
.animate-spin {
  -webkit-animation: spin_form 2s infinite linear;
  animation: spin_form 2s infinite linear;
  display: inline-block;
}

@-webkit-keyframes spin_form {
  0%   { -webkit-transform: rotate(0deg);   }
  100% { -webkit-transform: rotate(359deg); }
}

@keyframes spin_form {
  0%   { transform: rotate(0deg);   }
  100% { transform: rotate(359deg); }
}