@font-face {
	font-family: 'M PLUS 1 Code';
	src: url('../fonts/MPLUS1Code/MPLUS1Code-Regular.ttf') format('truetype');
	font-weight: 400;
	font-style: normal;
}

/* Montserrat Regular */
@font-face {
	font-family: 'Montserrat';
	src: url('../fonts/Montserrat/Montserrat-Medium.ttf') format('truetype');
	font-weight: 500;
	font-style: normal;
}

/* Montserrat Bold */
@font-face {
	font-family: 'Montserrat';
	src: url('../fonts/Montserrat/Montserrat-Bold.ttf') format('truetype');
	font-weight: 700;
	font-style: normal;
}

:root {
	--glass-1: 5, 5, 6;
	--glass-2: 10, 10, 12;
	--glass-3: 14, 14, 17;
	--glass-4: 19, 19, 23;
	--glass-5: 24, 24, 28;
	--glass-6: 28, 28, 34;
	--glass-7: 33, 33, 39;
	--glass-8: 37, 37, 45;
	--glass-9: 42, 42, 51;
	--glass-10: 47, 47, 56;
	--glass-11: 51, 51, 62;
	--glass-12: 56, 56, 67;
	--glass-13: 61, 61, 73;
	--glass-14: 65, 65, 78;
	--glass-15: 70, 70, 84;
	--glass-16: 75, 75, 89;
	--glass-17: 79, 79, 95;
	--glass-18: 84, 84, 101;
	--glass-19: 88, 88, 106;
	--glass-20: 93, 93, 112;
	--glass-21: 98, 98, 117;
	--glass-22: 102, 102, 123;
	--glass-23: 107, 107, 128;
	--glass-24: 112, 112, 134;
	--glass-25: 116, 116, 139;
	--glass-26: 122, 122, 144;
	--glass-27: 127, 127, 149;
	--glass-28: 133, 133, 153;
	--glass-29: 139, 139, 158;
	--glass-30: 144, 144, 163;
	--glass-31: 150, 150, 167;
	--glass-32: 155, 155, 172;
	--glass-33: 161, 161, 177;
	--glass-34: 166, 166, 181;
	--glass-35: 172, 172, 186;
	--glass-36: 178, 178, 190;
	--glass-37: 183, 183, 195;
	--glass-38: 189, 189, 200;
	--glass-39: 194, 194, 204;
	--glass-40: 200, 200, 209;
	--glass-41: 205, 205, 214;
	--glass-42: 211, 211, 218;
	--glass-43: 216, 216, 223;
	--glass-44: 222, 222, 228;
	--glass-45: 228, 228, 232;
	--glass-46: 233, 233, 237;
	--glass-47: 239, 239, 241;
	--glass-48: 244, 244, 246;
	--glass-49: 250, 250, 251;
	--glass-50: 255, 255, 255;

	--glass-border-1: rgba(255, 255, 255, 0.06);
	--glass-border-2: rgba(255, 255, 255, 0.08);
	--glass-border-3: rgba(255, 255, 255, 0.12);
	--glass-border-4: rgba(255, 255, 255, 0.16);

	--color-error: #dc205a;

	--glass-alpha: 0.84;

	--glass-box-shadow-1: rgba(5, 5, 6, .24);
	--glass-box-shadow-2: rgba(5, 5, 6, .36);

	--glass-blur: 16px;

	--bookmark-radius: 24px;

	--glass-top-dark: var(--glass-1);
	--glass-top-light: var(--glass-45);
}

* {
	box-sizing: border-box;
}
html, body {
	overflow: auto;
}
body {
	background: rgb(var(--glass-1));
	font-family: 'Montserrat', sans-serif;
	font-weight: 500;
	font-size: 14px;
	line-height: 22px;
	color: rgb(var(--glass-48));
	padding: 0;
	margin: 0;
	-webkit-font-smoothing: antialiased;
	-moz-osx-font-smoothing: grayscale;
	text-rendering: optimizeLegibility;
	overflow: hidden;
}
a {
	color: rgb(var(--glass-48));
	text-decoration: none;
}
a:hover {
	color: rgb(var(--glass-36));
}



.lc-card {
	background: rgb(var(--glass-3));
	width: 100%;
	max-width: 460px;
	border-radius: 24px;
	padding: 24px;
	border: solid 1px var(--glass-border-1);
	box-shadow: 0px 2px 4px 0px var(--glass-box-shadow-1);
}
.lc-card .lc-title {
	font-size: 24px;
	line-height: 1.5em;
	padding: 0 16px;
	margin-bottom: 16px;
}


.lc-form {
	display: flex;
	flex-direction: column;
	gap: 12px;
}
.lc-input {
	position: relative;
}
.lc-input .lc-label {
	position: absolute;
	top: 16px;
	right: 16px;
	left: 16px;
	font-weight: 500;
	color: rgb(var(--glass-36));
	white-space: nowrap;
	overflow: hidden;
	text-overflow: ellipsis;
	z-index: 3;
	pointer-events: none;
	transition: all 180ms ease;
}
.lc-input.lc-action .lc-label {
	color: rgb(var(--glass-36));
}
.lc-input input[type="text"],
.lc-input input[type="password"],
.lc-input textarea {
	position: relative;
	display: block;
	font-family: 'Montserrat', sans-serif;
	font-weight: 700;
	font-size: 16px;
	line-height: 1.5em;
	color: rgb(var(--glass-36));
	background: rgb(var(--glass-3));
	width: 100%;
	padding: 37px 15px 15px;
	border: solid 1px var(--glass-border-2);
	box-sizing: border-box;
	transition: all 180ms ease;
	-webkit-transition: all 180ms ease;
	border-radius: 16px;
	outline: none;
	resize: none;
	-webkit-appearance: none;
	box-shadow: 0 0 0 0 var(--glass-border-1);
	z-index: 2;
}
.lc-input input[type="text"]:focus,
.lc-input input[type="password"]:focus,
.lc-input textarea:focus {
	background: rgb(var(--glass-5));
	color: rgb(var(--glass-36));
	border-color: rgba(0, 0, 0, 0);
	-webkit-box-shadow: 0 0 0 3px rgb(var(--glass-48));
	box-shadow: 0 0 0 3px rgb(var(--glass-48));
}


.lc-input::before {
	content: '';
	background: var(--color-error);
	position: absolute;
	right: 16px;
	top: 46px;
	width: 8px;
	height: 8px;
	border-radius: 4px;
	z-index: 10;
	opacity: 0;
	pointer-events: none;
	transition: opacity 180ms ease;
	-webkit-transition: opacity 180ms ease;
}
.lc-input.lc-error input[type="text"]:focus,
.lc-input.lc-error input[type="password"]:focus,
.lc-input.lc-error textarea:focus {
	-webkit-box-shadow: 0 0 0 3px var(--color-error);
	box-shadow: 0 0 0 3px var(--color-error);
}
.lc-input.lc-error::before {
	opacity: 1;
}


.lc-global-error {
	background: var(--color-error);
	padding: 16px;
	border-radius: 16px;
	margin-bottom: 12px;
}





















.lc-btn {
	border: 0;
	margin: 0;
	box-shadow: none;
	appearance: none;
	-webkit-appearance: none;
	font: inherit;
	text-align: inherit;
	position: relative;
	display: block;
	padding: 16px 32px;
	font-weight: 700;
	font-size: 16px;
	line-height: 1.5em;
	border-radius: 16px;
	-webkit-border-radius: 16px;
	cursor: pointer;
	opacity: 1;
	transition: all 0.16s ease-in;
	-webkit-transition: all 0.16s ease-in;
}
.lc-btn:hover {
	color: rgb(var(--glass-36));
}
.lc-btn.lc-btn-primary {
	background: rgb(var(--glass-48));
	color: rgb(var(--glass-1));
}
.lc-btn.lc-btn-primary:hover {
	background: rgb(var(--glass-42));
}
.lc-btn.is-loading,
.lc-btn.is-loading:hover {
	background: rgb(var(--glass-42))!important;
}




.lc-actions {
	display: flex;
	justify-content: space-between;
	align-items: center;
	margin-top: 12px;
}

.lc-actions .lc-btn {
	display: inline-block; /* важно — не block */
}




























.lc-binary-orbit {
	--size: 36px;		 /* диаметр контейнера */
	--cycle: 2s;			/* длительность одного "дыхательного" цикла */
	--revs: 3;				/* оборотов за цикл (поставьте 8 для быстрее) */
	--rot: calc(var(--cycle) / var(--revs)); /* период одного оборота */
	--r-min: 4px;		/* ближний радиус орбиты (в момент "схождения") */
	--r-max: 12px;		/* дальний радиус орбиты (в момент "расхождения") */
	--dot: 6px;	 /* максимальный диаметр точки */

	color: rgb(var(--glass-48));
	position: relative;
	width: var(--size);
	height: var(--size);
	display: inline-block;
	opacity: 0;
	transition: opacity 0.3s ease;
	pointer-events: none;
}
.lc-binary-orbit.reverse {
	color: rgb(var(--glass-1));
}
.lc-binary-orbit.is-active { opacity: 1; pointer-events: auto; }
.lc-binary-orbit[hidden] { display: none !important; }

.lc-binary-orbit .dot {
	position: absolute;
	left: 50%;
	top: 50%;
	width: 0;
	height: 0;
	transform: translate(-50%, -50%) rotate(var(--offset));
	will-change: transform;
}
.lc-binary-orbit .dot .spin {
	display: block;
	width: 0;
	height: 0;
	animation: spin var(--rot) linear infinite;
	will-change: transform;
}
.lc-binary-orbit .dot .spin span {
	position: absolute;
	left: 0;
	top: 0;
	width: var(--dot);
	height: var(--dot);
	margin-left: calc(var(--dot)/-2);
	margin-top: calc(var(--dot)/-2);
	border-radius: 50%;
	background: currentColor;
	transform: translateX(var(--r-max)) scale(0.6);
	animation: radial var(--cycle) ease-in-out infinite;
	will-change: transform;
}

@keyframes spin { to { transform: rotate(360deg); } }
@keyframes radial {
	0%,100% { transform: translateX(var(--r-max)) scale(0.6); }
	50%		 { transform: translateX(var(--r-min)) scale(1.0); }
}

.lc-btn--loadingable {
  position: relative;
}

/* Лоадер строго по центру кнопки */
.lc-btn__loader {
  position: absolute;
  left: 50%;
  top: 50%;
  transform: translate(-50%, -50%);
  opacity: 0;                 /* старт как у тебя */
  pointer-events: none;
}

/* Когда грузим: текст прячем, но место оставляем (чтобы ширина не прыгала) */
.lc-btn.is-loading .lc-btn__label {
  visibility: hidden;          /* не display:none */
}

/* Лоадер показываем */
.lc-btn.is-loading .lc-btn__loader {
  opacity: 1;
}

/* По желанию: курсор/ощущение disabled (цвет не меняем) */
.lc-btn.is-loading,
.lc-btn:disabled {
  cursor: default;
}






.lc-error-notice {
	position: fixed;
	right: 16px;
	bottom: 16px;
	pointer-events: none;
	transform: translateY(12px);
	transition: all .12s ease-in;
	opacity: 0;
	z-index: 999999;

	.lc-message {
		width: 360px;
		background: rgb(var(--glass-48));
		color: rgb(var(--glass-1));
		padding: 24px;
		border-radius: 16px;

		.lc-close {
			position: absolute;
			display: flex;
			flex-direction: row;
			flex-wrap: nowrap;
			justify-content: center;
			align-items: center;
			top: 19px;
			right: 19px;
			width: 32px;
			height: 32px;
			cursor: pointer;

			svg {
				stroke: rgb(var(--glass-1));
			}
		}
		.lc-title {
			font-weight: 700;
			margin: 0 0 12px;
		}
		.lc-text {
			word-wrap: break-word;
		}
	}
}
.lc-error-notice.lc-action {
	pointer-events: auto;
	transform: translateY(0);
	animation: animated-appear-up .28s cubic-bezier(0.34, 1.7, 0.64, 1);
	opacity: 1;
}










.lc-gradient-text {
  color: #fff;
}


@keyframes animated-appear-up {
	0% {
		opacity: 0;
		transform: translateY(12px);
	}
	100% {
		opacity: 1;
		transform: translateY(0%);
	}
}
 
@-webkit-keyframes animated-appear-up {
	0% {
		opacity: 0;
		transform: translateY(12px);
	}
	100% {
		opacity: 1;
		transform: translateY(0%);
	}
}


body.lc-white-theme {
	--glass-1: 228, 228, 232;
	--glass-2: 233, 233, 237;
	--glass-3: 239, 239, 241;
	--glass-4: 244, 244, 246;
	--glass-5: 250, 250, 251;
	--glass-6: 255, 255, 255;
	--glass-7: 222, 222, 228;
	--glass-8: 216, 216, 223;
	--glass-9: 211, 211, 218;
	--glass-10: 205, 205, 214;
	--glass-11: 200, 200, 209;
	--glass-12: 194, 194, 204;
	--glass-13: 189, 189, 200;
	--glass-14: 183, 183, 195;
	--glass-15: 178, 178, 190;
	--glass-16: 172, 172, 186;
	--glass-17: 166, 166, 181;
	--glass-18: 161, 161, 177;
	--glass-19: 155, 155, 172;
	--glass-20: 150, 150, 167;
	--glass-21: 144, 144, 163;
	--glass-22: 139, 139, 158;
	--glass-23: 133, 133, 153;
	--glass-24: 127, 127, 149;
	--glass-25: 122, 122, 144;
	--glass-26: 116, 116, 139;
	--glass-27: 112, 112, 134;
	--glass-28: 107, 107, 128;
	--glass-29: 102, 102, 123;
	--glass-30: 98, 98, 117;
	--glass-31: 93, 93, 112;
	--glass-32: 88, 88, 106;
	--glass-33: 84, 84, 101;
	--glass-34: 79, 79, 95;
	--glass-35: 75, 75, 89;
	--glass-36: 70, 70, 84;
	--glass-37: 65, 65, 78;
	--glass-38: 61, 61, 73;
	--glass-39: 56, 56, 67;
	--glass-40: 51, 51, 62;
	--glass-41: 47, 47, 56;
	--glass-42: 42, 42, 51;
	--glass-43: 37, 37, 45;
	--glass-44: 33, 33, 39;
	--glass-45: 28, 28, 34;
	--glass-46: 24, 24, 28;
	--glass-47: 19, 19, 23;
	--glass-48: 14, 14, 17;
	--glass-49: 10, 10, 12;
	--glass-50: 5, 5, 6;

	--glass-border-1: rgba(255, 255, 255, 0.6);
	--glass-border-2: rgba(255, 255, 255, 0.8);

	--glass-box-shadow-1: rgba(5, 5, 6, .04);
	--glass-box-shadow-2: rgba(5, 5, 6, .08);
}