html, body {
	padding: 0px;
	margin: 0px;
}

html, body {
	height: 100%;
}

* {
	-webkit-tap-highlight-color: rgba(0, 0, 0, 0);
}

:root {
	--page-background-color: #EFEEF3;
	--page-shape-color: linear-gradient(180deg, rgba(239, 238, 243, 0) 0%, #EFEEF3 100%);
	--languages-buttons-background-color: white;
	--languages-button-text-color: #000000;
	--tariff-block-background-color: #FFFFFF;
	--tariff-list-tariff-name: #000000;
	--tariff-list-tariff-price: #000000;
	--tariff-list-tariff-payment-plan: #00000099;

	--created-in-paidsub-color: #636366;

	/* 18 YEARS ACCEPT FORM*/
	--years-form-background-color: #EFEFF3;
	--years-form-accept-caption: #000000;
	--years-form-accept-substring: #636366;
	--years-18-years-button-color: #FFFFFF;
	--years-18-accept-button-text-color: #007AFE;
	--years-18-decline-button-text-color: #FF3B30;

	/* PAYMENT METHODS */
	--payment-methods-background-color: #EFEFF3;
	--payment-methods-element-color: #FFFFFF;
	--payment-methods-text-color: #000000;
	--payment-method-block: white;
	--close-payment-methods-crest-color: #a19e9e;
	--close-elipsis-color: #E3E3E8;
	--global-bank-cards-text-color: white;
	--global-bank-cards-back-color: black;

	/* TARIFF VIEW PAGE */
	--blocks-background-color: #FFFFFF;
	--about-the-tariff-text-color: #000000;
	--tariff-description-text-color: #000000CC;
	--tariff-description-text-shape: linear-gradient(180deg, rgba(255, 255, 255, 0) 29.03%, #FFFFFF 100%);

	--visa-color: #007AFE;

	--resources-access: #000000;
	--resource-name-color: #000000;
	--terms-text-color: #00000099;
	
	--notification-background-color: #00000099;
	--notification-background-blur: blur(8px);
}

body {
	/*background: linear-gradient(104.65deg, #A966FF 6.46%, #109BFF 100%), #FFFFFF;*/
	background: var(--page-background-color);
}

.backgr_gradient {
	z-index: -1;
	position:absolute;
	width: 100%;
	height: 322px;

	background: linear-gradient(104.65deg, #A966FF 6.46%, #109BFF 100%), #FFFFFF;
	opacity: 0.8;
}

.backgr_gradient[tariff_menu="1"] {
	background: linear-gradient(242.25deg, #A966FF 11.62%, #109BFF 86.83%);

}

.shape {
	z-index: -1;

	position: absolute;
	top: 197px;
	width: 100%;
	height: 125px;

	background: var(--page-shape-color);
}


.main_page_block {
	display: flex;
	flex-direction: column;
	justify-content: space-between;
	height: 100%;
}

.inactive_main_page_block {
	display: none;
}

.up_block {
	display: flex;
	flex-direction: column;
	justify-content: end;

}

.lang_button_block {
	z-index: 10;
	position: absolute;
	display: flex;
	flex-direction: column;
	justify-content: start;
	align-items: flex-end;
	width: 100%;

	gap: 10px;
}

.lang_button {
	z-index: 10;
	display: flex;
	flex-direction: row;
	justify-content: center;
	align-items: center;
	padding: 4px 11px;
	gap: 10px;


	background: rgba(255, 255, 255, 0.2);
	border-radius: 36px;

	margin-top: 20px;
	margin-right: 20px;


	font-family: 'Roboto';
	font-style: normal;
	font-weight: 500;
	font-size: 16px;
	line-height: 19px;
	/* identical to box height */
	text-align: center;

	color: #FFFFFF;
	cursor: pointer;
	width: 27px;
}


.languages_buttons_container {
	z-index: 3;
	background-color: var(--languages-buttons-background-color);

	padding-left: 10px;
	padding-right: 10px;
	padding-bottom: 13px;
	padding-top: 10px;
	border-radius: 12px;

	display: flex;
	flex-direction: column;
	
	filter: drop-shadow(0px 4px 7.7px rgba(0, 0, 0, 0.25));
	margin-right: 10px;
	width: auto;
}

.languages_buttons_container>.switch_language_button {
	font-family: 'Roboto';
	font-style: normal;
	font-weight: 600;
	font-size: 16px;
	line-height: 19px;
	/* identical to box height */
	display: flex;
	align-items: center;

	

	color: var(--languages-button-text-color);
	cursor: pointer;

	margin: 5px;
}

.switch_lang_line {
	margin-top: 4px;
	margin-bottom: 4px;
}

.logo_block {
	display: flex;
	justify-content: center;

	margin-top: 25px;
	z-index: 2;
}

.logo_block > * {
	width: 96px;
	height: 96px;

	box-shadow: 0px 0px 19.6px rgba(255, 255, 255, 0.25);

	border-radius: 100%;
}

.select_tariff_plan_block {
	margin-top: 20px;

	display: flex;
	flex-direction: row;
	justify-content: center;
}

.select_tariff_plan_inner_text {
	display: flex;
	flex-direction: column;
	justify-content: center;
	gap: 1px;


	font-family: 'Roboto';
	font-style: normal;
	font-weight: 500;
	font-size: 24px;
	line-height: 28px;
	text-align: center;

	color: #FFFFFF;
}

.tariffs_button_block {
	display: flex;
	flex-direction: column;
	margin-top: 15px;
	gap: 10px;
}

.mark_accept {
	background-color: #007AFE;
	border-radius: 100%;
	width: 25px;
	height: 25px;
	display: flex;
	justify-content: center;
	align-items: center;
	margin-right: 13px;
}

.mark_accept_inactive {
	display: none;
}

/*=============================*/
/* ======== ТАРИФЫ ============*/
/*=============================*/

.tariff {
	justify-content: center;

	display: flex;
	flex-direction: column;
	gap: 10px;

	background: var(--tariff-block-background-color);
	border-radius: 20px;
	margin-left: auto;
	margin-right: auto;

	width: calc(100% - 16px);
	padding-bottom: 20px;
}

.tariff_name {
	font-family: 'Roboto';
	font-style: normal;
	font-weight: 600;
	font-size: 18px;
	line-height: 21px;
	/* identical to box height */
	display: flex;
	justify-content: space-between;
	align-items: center;
	color: var(--tariff-list-tariff-name);

	cursor: pointer;
	margin-top: 20px;
	margin-left: 20px;
}

.tariff_payment_info {
	display: flex;
	flex-direction: column;
	gap: 10px;
}

.tariff_payment_info>.tariff_pay_plan {
	font-family: 'Roboto';
	font-style: normal;
	font-weight: 400;
	font-size: 14px;
	line-height: 140%;

	color: var(--tariff-list-tariff-payment-plan);

	flex: none;
	order: 1;
	flex-grow: 0;

	margin-left: 20px;
}

.tariff_price {
	font-family: 'Roboto';
	font-style: normal;
	font-weight: 600;
	font-size: 18px;
	line-height: 21px;
	/* identical to box height */
	display: flex;
	align-items: center;

	color: var(--tariff-list-tariff-price);
	margin-left: 20px;
}


.view_tariff_button {
	/* Group 30 */
	width: 100%;
	height: 45px;

	background: #007AFE;
	border-radius: 10px;
	display: flex;
	flex-direction: column;
	cursor: pointer;
}

.view_tariff_button>.btn_text {
	font-family: 'Roboto';
	font-style: normal;
	font-weight: 600;
	font-size: 14px;
	line-height: 16px;
	align-items: center;
	text-align: center;

	color: #FFFFFF;
	line-height: normal;

	margin-left: auto;
	margin-right: auto;
	margin-top: auto;
	margin-bottom: auto;
}




/*
 * БЛОК С ИНФОРМАЦИЕЙ ОБ ОПЛАТЕ
 */

 .payment_info {
	background: linear-gradient(104.65deg, #A966FF 6.46%, #109BFF 100%), #FFFFFF;
	border-radius: 20px;

	display: flex;
	flex-direction: column;
	gap: 15px;

	padding-top: 20px;
	padding-bottom: 18px;
	
	width: calc(100% - 16px);
}

.payment_info>.payment_first_row {
	display: flex;
	flex-direction: row;
	justify-content: space-between;

	gap: 10px;

	font-family: 'Roboto';
	font-style: normal;
	font-weight: 500;
	font-size: 14px;
	line-height: 140%;

	color: #FFFFFF;
	margin-left: 20px;
}

.payment_first_row > .help_btn {
	margin-right: 13px;
	z-index: 2;
}

.payment_first_row > .row_el_container {
	display: flex;
	flex-direction: row;

	gap: 15px;

	font-family: 'Roboto';
	font-style: normal;
	font-weight: 500;
	font-size: 14px;
	line-height: 140%;

	color: #FFFFFF;
}

.price_str {
	font-family: 'Roboto';
	font-style: normal;
	font-weight: 700;
	font-size: 18px;
	line-height: 21px;

	display: flex;
	align-items: center;

	color: #FFFFFF;
}

.wallet_logo {
	background-color: #FFFFFF;
	padding: 11px;
	border-radius: 20px;

	display: flex;
	align-items: center;
	max-height: 19px;
}

.period_str {
	min-width: 170px;
}

.additional_payment_info {
	font-family: 'Roboto';
	font-style: normal;
	font-weight: 400;
	font-size: 14px;
	line-height: 140%;

	color: #FFFFFF;
	margin-left: 20px;
}



/*
 * БЛОК С ВСПЛЫВАЮЩЕЙ ИНФОРМАЦИЕЙ О РЕКУРРЕНТАХ
 */
 .recurrent_info_block {
	/*position: absolute;*/

	margin-left: auto;
	margin-top: -110px;

	right: 0;
	top: 0;

	width: 286px;
	padding: 16px;
	display: flex;
	flex-direction: column;
	justify-content: flex-end;
	align-items: center;
	gap: 2px;

	color: #000;
	font-family: Roboto;
	font-size: 12px;
	font-style: normal;
	font-weight: 400;
	line-height: normal;
	background-color: white;
	border-radius: 20px;

	z-index: 1;
	box-shadow: 0px 4px 44px 0px rgba(0, 0, 0, 0.15);
}

.recurrent_info_block > div {
	width: 90%;
	float: left;
	z-index: 998;
}



/** ========= FOOTER ========= **/

.footer {
	font-family: 'Roboto';
	font-style: normal;
	font-weight: 400;
	font-size: 11px;
	line-height: 13px;
	/* identical to box height */
	text-align: center;

	color: var(--created-in-paidsub-color);

	margin-top: 20px;
	padding-bottom: 20px;
}










.show_tariff_info_wrapper {
	display: none;
	position: fixed;
	height: 100%;
	width: 100%;
	background: #0000004D;
	z-index: 11;

	top: 0px;
}


/*
 * ==================================================
 * ======== СТРАНИЦА ВЫБОРА МЕТОДА ОПЛАТЫ ===========
 * ==================================================
 */

 .select_payment_method_window {
	position: fixed;
	bottom: 0%;

	/*height: 40%;*/
	/*opacity: 1;*/

	height: 0%;
	opacity: 0;

	background: var(--payment-methods-background-color);

	padding-top: 15px;
	padding-left: 20px;
	padding-right: 20px;

	border-radius: 20px 20px 0px 0px;

	gap: 10px;
	box-sizing:border-box;
	width: 100%;

	display: flex;
	flex-direction: column;
	justify-content: space-between;
	/*max-height: 400px;*/
}

.select_payment_method_window > .containn {
	display: flex;
	flex-direction: column;
	background: var(--payment-methods-background-color);

	gap: 20px;
}

.select_payment_method_window > .containn > .select_payment_method_first_row {
	width: 100%;
	display: flex;
	flex-direction: row;
	justify-content: space-between;
	align-items: center;
}

.select_payment_method_window > .containn > .select_payment_method_first_row > .payment_methon_name {
	font-family: 'Roboto';
	font-style: normal;
	font-weight: 500;
	font-size: 22px;
	line-height: 26px;
	/* identical to box height */

	color: var(--payment-methods-text-color);
}

.close_select_payment_method_button {
	background: var(--close-elipsis-color);
	border-radius: 100%;

	cursor: pointer;
	height: 30px;
}

.payment_methods_block {
	background: var(--payment-methods-background-color);
	display: flex;
	justify-content: space-between;
	flex-direction: column;
	gap: 10px;
	width: 100%;
}

.payment_method_element {
	display: flex;
	flex-direction: row;
	gap: 10px;

	border: 2.5px solid var(--payment-methods-element-color);
	border-radius: 20px;

	padding: 0px;
	background: var(--payment-methods-element-color);

	align-items: center;
	justify-content: space-around;
}

.method_info_block {
	display: flex;
	flex-direction: row;
	gap: 10px;
	width: 100%;

	border: 2.5px solid var(--payment-methods-element-color);
	border-radius: 20px;

	padding: 5px;
	padding-top: 10px;
	padding-bottom: 10px;
	background: var(--payment-methods-element-color);

	align-items: center;
}

.selected_payment_method_element {
	border: 2.5px solid #007AFF;
}

.selected_payment_method_element > .selected_method_mark {
	display: block;
}

.payment_method_logo {
	margin-left: 10px;
	display: flex;
	align-items: center;
	justify-content: center;
	border-radius: 100%;
	background: linear-gradient(104.65deg, #A966FF 6.46%, #109BFF 100%), #007AFF;

	padding: 20px;
	width: 18px;
	height: 18px;


	padding-right: 16px;
	padding-bottom: 16px;
	padding-left: 16px;
	padding-top: 16px;
}

.payment_method_logo > div {
	line-height: 100%;
	font-family: 'Roboto';
	font-style: normal;
	font-weight: 500;
	font-size: 26.5559px;
	line-height: 31px;
	display: flex;
	align-items: center;
	text-align: center;
	
	color: #FFFFFF;
}

.payment_method_info {
	margin-top: auto;
	margin-bottom: auto;
	display: flex;
	flex-direction: column;
	gap: 5px;
}

.method_type {
	font-family: 'Roboto';
	font-style: normal;
	font-weight: 700;
	font-size: 16px;
	line-height: 19px;
	display: flex;
	align-items: center;

	color: var(--payment-methods-text-color);
}



.additional_method_info {
	font-family: 'Roboto';
	font-style: normal;
	font-weight: 400;
	font-size: 14px;
	line-height: 16px;
	display: flex;
	align-items: center;

	color: var(--payment-methods-text-color);


	display: flex;
	flex-direction: row;
	gap: 5px;
}

.selected_method_mark {
	display: none;
	margin-right: 10px;
}

.continue_payment_row {
	cursor: pointer;
}

.continue_payment_button {
	display: flex;
	flex-direction: row;
	justify-content: center;
	align-items: center;

	background: #007AFF;
	border-radius: 12px;
}

.continue_payment_button {
	/* Body/Semibold */
	font-family: 'SF Pro';
	font-style: normal;
	font-weight: 590;
	font-size: 17px;
	line-height: 22px;
	/* identical to box height, or 129% */
	text-align: center;
	letter-spacing: -0.43px;
	
	color: #FFFFFF;

	padding-top: 10px;
	padding-bottom: 10px;

	margin-bottom: 20px;
}








/* ======== ПОДТВ 18 ЛЕТ ========== */
.accept_18_years_window {
	z-index: 30;
	position: fixed;
	bottom: 0%;

	height: 0%;
	opacity: 0;

	/*height: 0%;
	opacity: 0;*/

	background: var(--years-form-background-color);

	border-radius: 20px 20px 0px 0px;

	gap: 10px;
	box-sizing:border-box;
	width: 100%;

	display: flex;
	flex-direction: column;
	justify-content: space-between;
	align-items: center;
	text-align: center;

	max-height: 318px;
}

.accept_18_years_text_block {
	display: flex;
	flex-direction: column;
	gap: 10px;
}

.accept_18_years_caption {
	margin-top: 35px;
	font-family: Roboto;
	font-size: 24px;
	font-weight: 600;
	line-height: 28.13px;
	text-align: center;
	color: var(--years-form-accept-caption);
}

.accept_18_years_description {
	font-family: Roboto;
	font-size: 13px;
	font-weight: 400;
	line-height: 18px;
	text-align: center;
	color: var(--years-form-accept-substring);
	width: 314px;
}

.accept_18_years_buttons_block {
	display: flex;
	flex-direction: column;
	justify-content: center;
	align-items: center;
	gap: 16px;
	width: 100%;
	margin-top: 32px;
	margin-bottom: 22px;
}

.accept_18_button {
	display: flex;
	flex-direction: row;
	justify-content: center;
	align-items: flex-start;
	padding: 12px 0px;
	gap: 15px;

	background: var(--years-18-years-button-color);;
	border-radius: 10px;

	width: 90%;
	cursor: pointer;
}

.accept_18_inner_text {
	color: var(--years-18-accept-button-text-color);
}

.decline_18_inner_text {
	color: var(--years-18-decline-button-text-color);
}

.accept_18_year {
	font-family: Roboto;
	font-size: 16px;
	font-weight: 400;
	line-height: 18.75px;
	text-align: center;
	color: #007AFE;
}

.decline_18_year {
	font-family: Roboto;
	font-size: 16px;
	font-weight: 400;
	line-height: 18.75px;
	text-align: center;
	color: #FF3B30;
}


.notifications_container {
	display: flex;
	flex-direction: column;
	justify-content: flex-end;
	align-items: center;
	position: fixed;
	height: auto;
	width: 100%;
	z-index: 2;

	bottom: 0px;
}

.notification {
	display: flex;
	flex-direction: row;
	align-items: center;

	margin-bottom: 20px;

	background: var(--notification-background-color);
	backdrop-filter: var(--notification-background-blur);
	border-radius: 10px;

	gap: 10px;
	padding-top: 10px;
	padding-bottom: 10px;

	width: calc(100% - 16px);
}

.notification_logo {
	margin-top: auto;
	margin-bottom: auto;
	margin-left: 16px;
}

.notification > .notification_text {
	margin-top: 9px;
	margin-bottom: 9px;
	font-family: 'Roboto';
	font-style: normal;
	font-weight: 400;
	font-size: 14px;
	line-height: 130%;
	letter-spacing: -0.5px;

	color: #FFFFFF;
	width: 80%;
	word-break: normal;
}