@font-face {
	font-family: 'QORE'; 
	src: url(/assets/fonts/Qore.otf); 
}
.font-qore {
	margin-left: 10px;
	font-family: QORE;
}
.font-qore > .first {
	color: #ff0000;
}
.font-qore > .second {
	color: #ffffff;
}
.text-nowrap {
	white-space:nowrap;
}
.text-red {
	color: #ff0000;
}
.text-uppercase {
	text-transform: uppercase;
}
.text-right li div+div{
	text-align: right;
}
.text-wieght {
	font-weight: 600;
}
.table-div {
	width: 100%;
	margin-bottom: 1rem;
}
.table-div div {
	border-bottom: 2px solid #2a2a2a;
}
.table-div .cart-list-item:hover {
	background-color: #ff0000;
	color: #000000;
	/*font-weight: 600;
	font-size: 11px;*/
}
.table-div .bg-checked {
	background-color: #c93f36;
	color: #000000;
	/*font-weight: 600;
	font-size: 11px;*/
}
.table-div .cart-list-item input[type=checkbox] {
	display: none;
}
.table-div div a {
	padding: 16px 25px 17px;
	white-space:nowrap;
}
.footer-link a {
	padding: 0 15px;
}
.width-80 {
	width: 80px;
}
.fs-12 {
	font-size: 12px;
}
.pointer {
	cursor: pointer;
}
.cart-list-height {
	height: 450px;
}
.cart-select-heigth {
	min-height: 230px;
}
.mh-300 {
	max-height: 300px;
}
.u-coin-list-item input[type=radio] {
	-webkit-appearance: none;
 	appearance: none;
}
.checked {
	background-color: #c93f36;
}
@media screen and (max-width: 992px) {
	.mpl-hexagon-rating-none {
		display: none;
	}	
}

/* Valhalla cabinet */
.vh-cabinet-hero {
	position: relative;
	overflow: hidden;
	min-height: 310px;
	display: flex;
	align-items: center;
	border-bottom: 1px solid rgba(86, 190, 239, .22);
	background: #071019;
}
.vh-cabinet-hero__image {
	position: absolute;
	inset: 0;
	background:
		linear-gradient(90deg, rgba(4, 11, 18, .94), rgba(5, 15, 24, .54) 50%, rgba(4, 11, 18, .92)),
		linear-gradient(0deg, #071019 0%, transparent 52%),
		url('/assets/images/dark/bg_cabinet.jpg') center 38% / cover no-repeat;
	filter: saturate(.82) contrast(1.08);
}
.vh-cabinet-hero__content {
	position: relative;
	z-index: 1;
	padding-top: 70px;
	padding-bottom: 55px;
	text-align: center;
}
.vh-cabinet-kicker {
	display: inline-flex;
	align-items: center;
	gap: 11px;
	color: #74cdf5;
	font-size: 11px;
	font-weight: 800;
	letter-spacing: .22em;
}
.vh-cabinet-kicker::before,
.vh-cabinet-kicker::after {
	width: 26px;
	height: 1px;
	content: "";
	background: linear-gradient(90deg, transparent, #5ec9fb);
}
.vh-cabinet-kicker::after { transform: scaleX(-1); }
.vh-cabinet-hero h1 {
	margin: 14px 0 10px;
	color: #f4fbff;
	font-size: clamp(34px, 4.2vw, 58px);
	line-height: 1.08;
	letter-spacing: -.035em;
	text-shadow: 0 4px 28px rgba(0, 0, 0, .7);
}
.vh-cabinet-hero h1 span { color: #79d6ff; }
.vh-cabinet-hero p {
	margin: 0;
	color: #a9bbc7;
	font-size: 16px;
}
.vh-cabinet-nav-wrap {
	position: relative;
	z-index: 2;
	border-bottom: 1px solid rgba(96, 193, 238, .18);
	background: rgba(7, 16, 25, .98);
	box-shadow: 0 15px 42px rgba(0, 0, 0, .28);
}
.vh-cabinet-nav {
	display: flex;
	overflow-x: auto;
	justify-content: center;
	padding-top: 0;
	padding-bottom: 0;
	scrollbar-width: thin;
}
.vh-cabinet-nav a {
	position: relative;
	flex: 0 0 auto;
	padding: 21px 22px 19px;
	color: #9bacb7;
	font-size: 13px;
	font-weight: 800;
	letter-spacing: .055em;
	text-transform: uppercase;
}
.vh-cabinet-nav a::after {
	position: absolute;
	right: 22px;
	bottom: 0;
	left: 22px;
	height: 2px;
	content: "";
	transform: scaleX(0);
	background: linear-gradient(90deg, #39afe7, #8ae1ff);
	box-shadow: 0 0 16px #3cb6ee;
	transition: transform .2s ease;
}
.vh-cabinet-nav a:hover,
.vh-cabinet-nav a.is-active { color: #eefaff; }
.vh-cabinet-nav a:hover::after,
.vh-cabinet-nav a.is-active::after { transform: scaleX(1); }
.vh-cabinet-page {
	min-height: 520px;
	padding: 58px 0 86px;
	background:
		radial-gradient(circle at 50% 0, rgba(35, 139, 190, .09), transparent 38%),
		#050c12;
}
.vh-cabinet-card {
	position: relative;
	overflow: hidden;
	padding: clamp(28px, 4vw, 48px);
	border: 1px solid rgba(96, 188, 229, .22);
	border-radius: 18px;
	background: linear-gradient(145deg, rgba(17, 31, 42, .97), rgba(8, 18, 27, .97));
	box-shadow: 0 28px 70px rgba(0, 0, 0, .34), inset 0 1px 0 rgba(255, 255, 255, .035);
}
.vh-cabinet-card::before {
	position: absolute;
	top: 0;
	right: 10%;
	left: 10%;
	height: 1px;
	content: "";
	background: linear-gradient(90deg, transparent, rgba(117, 218, 255, .75), transparent);
}
.vh-card-heading {
	display: flex;
	align-items: flex-start;
	justify-content: space-between;
	gap: 25px;
	margin-bottom: 28px;
}
.vh-card-heading h2 {
	margin: 9px 0 0;
	color: #f1f8fc;
	font-size: clamp(28px, 3vw, 39px);
	letter-spacing: -.025em;
}
.vh-card-lead {
	max-width: 760px;
	margin: -9px 0 28px;
	color: #9cafba;
}
.vh-status,
.vh-balance-pill,
.vh-region-badge {
	display: inline-flex;
	align-items: center;
	border: 1px solid rgba(104, 196, 238, .24);
	border-radius: 999px;
	color: #8ddcff;
	background: rgba(50, 158, 207, .11);
	font-size: 12px;
	font-weight: 800;
	letter-spacing: .055em;
}
.vh-status,
.vh-balance-pill { padding: 9px 14px; white-space: nowrap; }
.vh-region-badge { padding: 5px 9px; }
.vh-status.is-success { border-color: rgba(71, 205, 161, .3); color: #74e1bd; background: rgba(44, 167, 128, .11); }
.vh-status.is-warning { border-color: rgba(244, 190, 75, .3); color: #f4c66c; background: rgba(194, 136, 28, .11); }
.vh-profile-list {
	border-top: 1px solid rgba(124, 192, 222, .15);
	border-bottom: 1px solid rgba(124, 192, 222, .15);
}
.vh-profile-row {
	display: grid;
	grid-template-columns: minmax(300px, .75fr) minmax(260px, 1.35fr) 110px;
	align-items: center;
	gap: 20px;
	min-height: 60px;
	padding: 12px 0;
	border-bottom: 1px solid rgba(122, 190, 222, .09);
}
.vh-profile-row:last-child { border-bottom: 0; }
.vh-profile-label { color: #8ea3af; }
.vh-profile-row strong { justify-self: start; color: #eef7fb; font-size: 15px; overflow-wrap: anywhere; }
.vh-profile-row > :last-child { justify-self: end; }
.vh-link-button {
	padding: 7px 13px;
	border: 1px solid rgba(100, 205, 250, .3);
	border-radius: 7px;
	color: #78d6ff;
	background: rgba(47, 157, 205, .08);
	font-size: 12px;
	font-weight: 800;
	transition: .2s ease;
}
.vh-link-button:hover { border-color: #70d4ff; color: #e6f8ff; background: rgba(47, 157, 205, .2); }
.vh-text-success { color: #72deb8 !important; }
.vh-text-warning { color: #f4c66c !important; }
.vh-security-info {
	display: grid;
	grid-template-columns: repeat(2, minmax(0, 1fr));
	gap: 16px;
	margin-top: 27px;
}
.vh-info-tile {
	padding: 20px;
	border: 1px solid rgba(103, 191, 231, .17);
	border-radius: 12px;
	background: rgba(4, 12, 19, .48);
}
.vh-info-tile span,
.vh-info-tile small { display: block; color: #8399a5; }
.vh-info-tile strong { display: block; margin: 7px 0 5px; color: #dff5ff; overflow-wrap: anywhere; }
.vh-info-tile small { line-height: 1.45; }
.vh-account-summary {
	display: grid;
	grid-template-columns: repeat(3, minmax(0, 1fr));
	gap: 1px;
	margin-top: 28px;
	overflow: hidden;
	border: 1px solid rgba(97, 192, 234, .2);
	border-radius: 12px;
	background: rgba(80, 171, 215, .17);
}
.vh-account-summary > div { padding: 17px 20px; background: rgba(5, 14, 22, .92); }
.vh-account-summary span,
.vh-account-summary strong { display: block; }
.vh-account-summary span { margin-bottom: 3px; color: #7f95a2; font-size: 11px; text-transform: uppercase; letter-spacing: .1em; }
.vh-account-summary strong { color: #edf9ff; overflow-wrap: anywhere; }
.vh-account-summary small { color: #70d2fb; font-size: .7em; }
.vh-dialog {
	width: min(510px, calc(100% - 32px));
	padding: 0;
	border: 1px solid rgba(105, 204, 248, .3);
	border-radius: 16px;
	color: #e9f5fa;
	background: linear-gradient(145deg, #122431, #08131c);
	box-shadow: 0 35px 100px rgba(0, 0, 0, .65);
}
.vh-dialog::backdrop { background: rgba(1, 7, 11, .82); backdrop-filter: blur(6px); }
.vh-dialog form { position: relative; padding: 34px; }
.vh-dialog h3 { margin: 9px 0 8px; color: #f2fbff; font-size: 28px; }
.vh-dialog p { color: #9cafba; }
.vh-dialog-close {
	position: absolute;
	top: 16px;
	right: 16px;
	width: 35px;
	height: 35px;
	border: 1px solid rgba(116, 199, 238, .2);
	border-radius: 50%;
	color: #acc2ce;
	background: rgba(3, 10, 16, .5);
	font-size: 22px;
}
.vh-dialog label,
.vh-form-stack label,
.vh-inventory-toolbar label {
	display: block;
	margin-top: 17px;
	color: #aebfc8;
	font-size: 13px;
	font-weight: 700;
}
.vh-dialog input,
.vh-form-stack input,
.vh-inventory-toolbar select {
	width: 100%;
	height: 53px;
	margin-top: 7px;
	padding: 0 16px;
	border: 1px solid rgba(111, 193, 231, .22);
	border-radius: 9px;
	outline: none;
	color: #ecf8fd;
	background: #0a1721;
}
.vh-dialog input:focus,
.vh-form-stack input:focus,
.vh-inventory-toolbar select:focus { border-color: #55c5f4; box-shadow: 0 0 0 3px rgba(53, 172, 225, .12); }
.vh-input-password { position: relative; display: block; }
.vh-input-password .vh-password-toggle { top: 50%; right: 11px; transform: translateY(-42%); }
.vh-primary-button,
.vh-secondary-button,
.vh-danger-button {
	display: inline-flex;
	min-height: 48px;
	align-items: center;
	justify-content: center;
	padding: 11px 21px;
	border: 1px solid rgba(131, 215, 252, .46);
	border-radius: 8px;
	font-size: 13px;
	font-weight: 900;
	letter-spacing: .045em;
	transition: transform .2s ease, filter .2s ease, border-color .2s ease;
}
.vh-primary-button { color: #031017; background: linear-gradient(105deg, #83ddff, #28a8e5); box-shadow: 0 12px 28px rgba(34, 162, 219, .17); }
.vh-secondary-button { color: #bfeeff; background: rgba(40, 145, 192, .1); }
.vh-danger-button { border-color: rgba(228, 115, 115, .34); color: #ffb2b2; background: rgba(171, 57, 57, .1); }
.vh-primary-button:not(:disabled):hover,
.vh-secondary-button:not(:disabled):hover,
.vh-danger-button:not(:disabled):hover { transform: translateY(-2px); filter: brightness(1.1); }
.vh-primary-button:disabled,
.vh-secondary-button:disabled { cursor: not-allowed; opacity: .48; }
.vh-dialog .vh-primary-button,
.vh-form-stack .vh-primary-button { width: 100%; margin-top: 21px; }
.vh-form-error,
.vh-notice {
	margin: 12px 0;
	padding: 11px 14px;
	border: 1px solid rgba(239, 109, 120, .28);
	border-radius: 8px;
	color: #ffb0b8;
	background: rgba(142, 39, 48, .12);
	font-size: 13px;
}
.vh-notice--success { border-color: rgba(69, 213, 162, .28); color: #8ce5c6; background: rgba(38, 149, 112, .11); }
.vh-security-grid { display: grid; grid-template-columns: minmax(0, 1fr) minmax(0, 1fr); gap: 25px; align-items: start; }
.vh-form-stack { display: grid; gap: 2px; }
.vh-2fa-intro { display: flex; gap: 16px; align-items: center; margin: 15px 0 25px; color: #a6b8c2; }
.vh-2fa-intro p { margin: 0; }
.vh-2fa-shield { flex: 0 0 54px; height: 54px; display: grid; place-items: center; border: 1px solid rgba(95, 203, 250, .3); border-radius: 14px 14px 20px 20px; color: #77d8ff; background: rgba(56, 167, 216, .09); font-size: 24px; }
.vh-2fa-shield.is-active { border-color: rgba(69, 213, 162, .35); color: #77e2bd; background: rgba(35, 158, 116, .1); }
.vh-qr-code { width: 220px; margin: 20px auto; padding: 14px; border-radius: 12px; background: #fff; }
.vh-qr-code svg { display: block; width: 100%; height: auto; }
.vh-inline-form { margin-top: 12px; }
.vh-recovery-codes { margin: 20px 0; padding: 14px 16px; border: 1px solid rgba(104, 194, 235, .18); border-radius: 9px; background: rgba(3, 11, 17, .45); }
.vh-recovery-codes summary { cursor: pointer; color: #86dcff; font-weight: 800; }
.vh-recovery-codes ul { columns: 2; margin: 15px 0 0; color: #c4d4dc; font-family: monospace; }
.vh-button-row { display: flex; flex-wrap: wrap; gap: 11px; margin-top: 22px; }
.vh-products-grid { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 20px; }
.vh-product-card { position: relative; padding: 27px; border: 1px solid rgba(105, 193, 233, .2); border-radius: 14px; background: linear-gradient(145deg, rgba(16, 36, 49, .72), rgba(4, 13, 20, .72)); }
.vh-product-card h3,
.vh-empty-state h3 { margin: 0 0 8px; color: #effaff; }
.vh-product-card p,
.vh-empty-state p { color: #92a7b2; }
.vh-security-note { margin-top: 23px; padding: 15px 17px; border-left: 2px solid #46b8ec; color: #91a7b3; background: rgba(52, 153, 199, .075); }

/* Valhalla top-up */
.vh-topup-card { padding: clamp(30px, 4vw, 50px); }
.vh-topup-heading { display: grid; grid-template-columns: minmax(0, 1fr) auto; align-items: center; gap: 34px; margin-bottom: 34px; }
.vh-topup-heading h2 { margin: 9px 0 9px; color: #f2f9fd; font-size: clamp(30px, 3.2vw, 42px); letter-spacing: -.03em; }
.vh-topup-heading p { max-width: 680px; margin: 0; color: #93a8b4; line-height: 1.65; }
.vh-wallet-balance { min-width: 190px; padding: 18px 22px; border: 1px solid rgba(102, 202, 246, .25); border-radius: 14px; background: linear-gradient(145deg, rgba(24, 68, 91, .46), rgba(5, 18, 28, .74)); text-align: right; box-shadow: inset 0 1px 0 rgba(255,255,255,.04), 0 15px 35px rgba(0,0,0,.2); }
.vh-wallet-balance span { display: block; margin-bottom: 2px; color: #7f99a7; font-size: 10px; font-weight: 800; letter-spacing: .13em; text-transform: uppercase; }
.vh-wallet-balance strong { color: #f2fbff; font-size: 28px; line-height: 1; }
.vh-wallet-balance small { margin-left: 5px; color: #78d7ff; font-size: 12px; font-weight: 800; }
.vh-payment-grid { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 18px; }
.vh-payment-card { position: relative; overflow: hidden; padding: 27px; border: 1px solid rgba(102, 196, 238, .2); border-radius: 16px; background: linear-gradient(145deg, rgba(13, 35, 49, .88), rgba(4, 14, 22, .9)); box-shadow: inset 0 1px 0 rgba(255,255,255,.025); transition: transform .2s ease, border-color .2s ease, box-shadow .2s ease; }
.vh-payment-card::before { position: absolute; top: -85px; right: -65px; width: 210px; height: 210px; content: ""; border-radius: 50%; background: radial-gradient(circle, rgba(78, 195, 246, .14), transparent 68%); pointer-events: none; }
.vh-payment-card:hover { transform: translateY(-3px); border-color: rgba(112, 211, 252, .36); box-shadow: 0 22px 42px rgba(0,0,0,.24), inset 0 1px 0 rgba(255,255,255,.04); }
.vh-payment-card__head { position: relative; display: flex; align-items: center; justify-content: space-between; margin-bottom: 20px; }
.vh-payment-icon { width: 52px; height: 52px; display: grid; place-items: center; border: 1px solid rgba(111, 209, 251, .32); border-radius: 14px; color: #8ae0ff; background: linear-gradient(145deg, rgba(55, 174, 226, .16), rgba(15, 66, 91, .13)); font-size: 25px; font-weight: 800; box-shadow: 0 0 28px rgba(50, 179, 235, .1); }
.vh-payment-card h3 { position: relative; margin: 0 0 8px; color: #effaff; font-size: 23px; }
.vh-payment-card h3 span { color: #71cdef; font-size: 13px; letter-spacing: .08em; }
.vh-payment-card > p { position: relative; min-height: 52px; margin: 0; color: #91a7b3; line-height: 1.6; }
.vh-payment-features { position: relative; display: flex; flex-wrap: wrap; gap: 7px; margin: 20px 0; padding: 0; list-style: none; }
.vh-payment-features li { padding: 6px 10px; border: 1px solid rgba(105, 195, 235, .16); border-radius: 999px; color: #9fc2d2; background: rgba(47, 144, 187, .07); font-size: 11px; font-weight: 700; }
.vh-payment-provider { position: relative; display: flex; align-items: center; justify-content: space-between; gap: 15px; margin-top: 2px; padding: 14px 0; border-top: 1px solid rgba(104, 190, 229, .12); }
.vh-payment-provider span { color: #748c99; font-size: 12px; }
.vh-payment-provider strong { color: #81d9ff; font-size: 14px; }
.vh-payment-action { position: relative; width: 100%; min-height: 46px; margin-top: 8px; border: 1px solid rgba(105, 197, 239, .17); border-radius: 9px; color: #78909c; background: rgba(42, 128, 168, .07); font-size: 12px; font-weight: 800; letter-spacing: .035em; cursor: not-allowed; }
.vh-payment-action span { display: inline-block; width: 6px; height: 6px; margin-right: 7px; border-radius: 50%; background: #66818f; box-shadow: 0 0 8px rgba(114, 158, 179, .42); vertical-align: 1px; }
.vh-topup-note { display: flex; align-items: center; gap: 15px; margin-top: 20px; padding: 16px 18px; border: 1px solid rgba(101, 193, 235, .14); border-radius: 12px; background: rgba(31, 111, 149, .065); }
.vh-topup-note__icon { flex: 0 0 38px; width: 38px; height: 38px; display: grid; place-items: center; border: 1px solid rgba(104, 201, 245, .22); border-radius: 10px; color: #75d4fb; background: rgba(43, 154, 204, .09); }
.vh-topup-note__icon svg { width: 20px; height: 20px; fill: none; stroke: currentColor; stroke-linecap: round; stroke-linejoin: round; stroke-width: 1.5; }
.vh-topup-note strong, .vh-topup-note span { display: block; }
.vh-topup-note strong { margin-bottom: 2px; color: #cceefa; font-size: 13px; }
.vh-topup-note span { color: #849ca8; font-size: 12px; }
.vh-empty-state { padding: 65px 20px; text-align: center; border: 1px dashed rgba(104, 195, 236, .2); border-radius: 14px; background: rgba(3, 11, 17, .35); }
.vh-empty-state > div { margin-bottom: 12px; color: #79d7ff; font-size: 42px; text-shadow: 0 0 25px rgba(69, 188, 239, .38); }
.vh-empty-state p { max-width: 540px; margin: 0 auto; }
.vh-product-card .vh-region-badge { margin-bottom: 18px; }
.vh-product-meta { display: flex; align-items: center; justify-content: space-between; gap: 15px; margin: 22px 0; color: #9aadb7; }
.vh-product-meta strong { color: #83dbff; }
.vh-product-card .vh-primary-button { width: 100%; }
.vh-inventory-toolbar { max-width: 430px; margin-bottom: 22px; }
.vh-inventory-list { display: grid; gap: 9px; }
.vh-inventory-item { display: grid; grid-template-columns: auto auto 1fr auto; align-items: center; gap: 13px; min-height: 74px; padding: 14px 17px; border: 1px solid rgba(105, 190, 229, .16); border-radius: 11px; cursor: pointer; background: rgba(3, 11, 17, .42); }
.vh-inventory-item:hover { border-color: rgba(105, 206, 250, .35); }
.vh-inventory-item input { position: absolute; opacity: 0; pointer-events: none; }
.vh-inventory-check { width: 20px; height: 20px; border: 1px solid rgba(121, 205, 242, .35); border-radius: 5px; background: #08151e; }
.vh-inventory-item input:checked + .vh-inventory-check { border-color: #6bd5ff; background: linear-gradient(135deg, #7ad9ff, #249fd8); box-shadow: inset 0 0 0 4px #0b1b25; }
.vh-inventory-item strong,
.vh-inventory-item small { display: block; }
.vh-inventory-item strong { color: #eaf7fc; }
.vh-inventory-item small { color: #8197a3; }
.vh-inventory-item b { color: #81dbff; }
.vh-form-hint { margin: 8px 0 0; color: #f0bd66; font-size: 12px; }
@media (max-width: 991.98px) {
	.vh-cabinet-nav { justify-content: flex-start; }
	.vh-security-grid,
	.vh-payment-grid,
	.vh-products-grid { grid-template-columns: 1fr; }
	.vh-topup-heading { grid-template-columns: 1fr; }
	.vh-wallet-balance { min-width: 0; text-align: left; }
}
@media (max-width: 767.98px) {
	.vh-cabinet-hero { min-height: 275px; }
	.vh-cabinet-hero__content { padding-top: 55px; padding-bottom: 40px; }
	.vh-cabinet-hero p { padding: 0 12px; font-size: 14px; }
	.vh-cabinet-nav a { padding: 18px 15px 16px; font-size: 11px; }
	.vh-cabinet-page { padding: 35px 0 60px; }
	.vh-cabinet-card { padding: 25px 19px; border-radius: 13px; }
	.vh-card-heading { flex-direction: column; margin-bottom: 20px; }
	.vh-profile-row { grid-template-columns: 1fr auto; gap: 6px 12px; padding: 15px 4px; }
	.vh-profile-label { grid-column: 1 / -1; font-size: 12px; }
	.vh-profile-row > :last-child { grid-column: 2; grid-row: 2; }
	.vh-security-info,
	.vh-account-summary { grid-template-columns: 1fr; }
	.vh-account-summary > div { padding: 14px 16px; }
	.vh-dialog form { padding: 30px 21px; }
	.vh-recovery-codes ul { columns: 1; }
	.vh-button-row > *,
	.vh-button-row form,
	.vh-button-row button { width: 100%; }
	.vh-topup-card { padding: 26px 19px; }
	.vh-payment-card { padding: 22px 18px; }
	.vh-payment-card > p { min-height: 0; }
	.vh-topup-note { align-items: flex-start; }
}

/* Valhalla loading screen -------------------------------------------------- */
.valhalla-preloader {
	background:
		radial-gradient(circle at 50% 42%, rgba(16, 121, 207, 0.18), transparent 36%),
		linear-gradient(180deg, rgba(5, 9, 15, 0.98), rgba(8, 14, 23, 0.995));
	overflow: hidden;
}
.valhalla-preloader::before,
.valhalla-preloader::after {
	content: "";
	position: absolute;
	pointer-events: none;
}
.valhalla-preloader::before {
	inset: 0;
	background-image:
		linear-gradient(rgba(255, 255, 255, 0.018) 1px, transparent 1px),
		linear-gradient(90deg, rgba(255, 255, 255, 0.014) 1px, transparent 1px);
	background-size: 48px 48px;
	-webkit-mask-image: radial-gradient(circle at center, #000, transparent 72%);
	mask-image: radial-gradient(circle at center, #000, transparent 72%);
}
.valhalla-preloader::after {
	left: 50%;
	top: 50%;
	width: min(780px, 82vw);
	height: min(360px, 48vw);
	border: 1px solid rgba(103, 194, 255, 0.09);
	transform: translate(-50%, -50%) rotate(45deg);
	box-shadow: 0 0 100px rgba(20, 130, 220, 0.08) inset;
}
.valhalla-preloader .mpl-preloader-content {
	position: relative;
	z-index: 2;
	display: flex;
	width: min(1180px, 94vw);
	flex-direction: column;
	align-items: center;
}
.valhalla-preloader .mpl-preloader-title {
	position: relative;
	width: min(980px, 90vw);
	margin: 0 auto;
}
.valhalla-preloader .mpl-preloader-title img {
	position: relative;
	z-index: 2;
	display: block;
	width: 100%;
	height: auto;
	filter: drop-shadow(0 15px 24px rgba(0, 0, 0, 0.56)) drop-shadow(0 0 20px rgba(30, 147, 236, 0.16));
}
.valhalla-preloader-glow {
	position: absolute;
	z-index: 1;
	left: 13%;
	right: 13%;
	top: 38%;
	height: 36%;
	background: rgba(28, 145, 232, 0.16);
	filter: blur(42px);
}
.valhalla-preloader-caption {
	margin-top: 10px;
	color: rgba(191, 226, 250, 0.72);
	font-size: 11px;
	font-weight: 500;
	letter-spacing: 0.42em;
	text-transform: uppercase;
}
.valhalla-preloader .mpl-preloader-progress {
	position: relative;
	left: auto;
	bottom: auto;
	width: min(760px, 78vw);
	max-width: none;
	height: 30px;
	margin-top: 24px;
	background: none;
	transform: none;
}
.valhalla-preloader .mpl-preloader-progress::before {
	content: "";
	position: absolute;
	left: 0;
	right: 0;
	top: 6px;
	height: 18px;
	background:
		repeating-linear-gradient(90deg, rgba(112, 194, 244, 0.18) 0 22px, transparent 22px 29px) 0 0 / 100% 1px no-repeat,
		linear-gradient(90deg, transparent, rgba(152, 216, 255, 0.42) 16%, rgba(152, 216, 255, 0.42) 84%, transparent) 0 0 / 100% 1px no-repeat,
		repeating-linear-gradient(90deg, rgba(112, 194, 244, 0.11) 0 14px, transparent 14px 21px) 0 17px / 100% 1px no-repeat,
		linear-gradient(90deg, transparent, rgba(91, 176, 230, 0.27) 20%, rgba(91, 176, 230, 0.27) 80%, transparent) 0 17px / 100% 1px no-repeat;
	filter: drop-shadow(0 0 7px rgba(36, 147, 224, 0.32));
}
.valhalla-preloader .mpl-preloader-progress::after {
	content: "";
	position: absolute;
	z-index: 2;
	left: -18%;
	top: 5px;
	width: 18%;
	height: 3px;
	background: linear-gradient(90deg, transparent, rgba(184, 230, 255, 0.28), #d9f4ff, transparent);
	filter: blur(0.3px);
	animation: valhalla-track-scan 2.35s linear infinite;
}
.valhalla-progress-rune {
	position: absolute;
	z-index: 5;
	left: 50%;
	top: 7px;
	width: 16px;
	height: 16px;
	border: 1px solid rgba(214, 242, 255, 0.9);
	background: linear-gradient(135deg, #bfeaff, #168ee0 48%, #082c4a 100%);
	box-shadow: 0 0 7px #b9e6ff inset, 0 0 19px rgba(35, 158, 238, 0.95);
	transform: translateX(-50%) rotate(45deg);
	animation: valhalla-rune-pulse 1.45s ease-in-out infinite;
}
.valhalla-progress-rune::before {
	content: "";
	position: absolute;
	inset: 4px;
	border: 1px solid rgba(225, 247, 255, 0.78);
	background: rgba(210, 242, 255, 0.22);
}
.valhalla-progress-rune::after {
	content: "";
	position: absolute;
	left: 50%;
	top: -18px;
	width: 1px;
	height: 50px;
	background: linear-gradient(transparent, rgba(116, 203, 255, 0.38), transparent);
	transform: translateX(-50%) rotate(-45deg);
}
.valhalla-preloader .mpl-preloader-progress > div {
	left: 0;
	top: 5px;
	bottom: auto;
	height: 3px;
	width: 0;
	background: linear-gradient(90deg, transparent, #bfeaff 18%, #45baff 55%, #bfeaff 100%);
	box-shadow: 0 0 5px #77cfff, 0 0 17px rgba(22, 142, 224, 0.78);
	transform: none;
	transition-timing-function: cubic-bezier(0.2, 0.65, 0.25, 1);
}
.valhalla-preloader .mpl-preloader-progress > div::before {
	content: "";
	position: absolute;
	left: 0;
	top: 17px;
	width: 100%;
	height: 2px;
	background: linear-gradient(90deg, transparent, rgba(102, 200, 255, 0.5) 24%, #a6e2ff 100%);
	box-shadow: 0 0 10px rgba(40, 165, 240, 0.58);
}
.valhalla-preloader .mpl-preloader-progress > div::after {
	content: "";
	position: absolute;
	right: -4px;
	top: -2px;
	width: 8px;
	height: 8px;
	border: 1px solid #d7f2ff;
	background: #8bd7ff;
	box-shadow: 0 0 12px #52c1ff;
	transform: rotate(45deg);
	animation: valhalla-spark-pulse 0.9s ease-in-out infinite alternate;
}
@keyframes valhalla-track-scan {
	0% { left: -18%; opacity: 0; }
	12% { opacity: 1; }
	88% { opacity: 1; }
	100% { left: 100%; opacity: 0; }
}
@keyframes valhalla-rune-pulse {
	0%, 100% { box-shadow: 0 0 6px #b9e6ff inset, 0 0 14px rgba(35, 158, 238, 0.72); }
	50% { box-shadow: 0 0 9px #e3f7ff inset, 0 0 28px rgba(58, 183, 255, 1); }
}
@keyframes valhalla-spark-pulse {
	from { filter: brightness(0.9); }
	to { filter: brightness(1.6); }
}
html.valhalla-ready .mpl-preloader,
html.valhalla-ready .mpl-preloader-bg {
	visibility: hidden !important;
	opacity: 0 !important;
	pointer-events: none !important;
}
html.valhalla-ready .mpl-preloader-bg {
	transform: translateY(100%);
	transition: opacity 0.45s ease, visibility 0.45s ease, transform 0.65s cubic-bezier(0.7, 0, 0.2, 1);
}
@media (max-width: 575.98px) {
	.valhalla-preloader .mpl-preloader-title {
		width: min(720px, 94vw);
	}
	.valhalla-preloader-caption {
		font-size: 8px;
		letter-spacing: 0.25em;
	}
	.valhalla-preloader .mpl-preloader-progress {
		width: 84vw;
	}
}
@media (prefers-reduced-motion: reduce) {
	.valhalla-preloader *,
	.valhalla-preloader,
	.mpl-preloader-bg {
		animation: none !important;
		transition-duration: 0.01ms !important;
	}
}

/* Valhalla public pages --------------------------------------------------- */
:root {
	--vh-bg: #06090d;
	--vh-surface: #0b1118;
	--vh-surface-2: #101923;
	--vh-line: rgba(128, 200, 244, 0.14);
	--vh-blue: #42b9ff;
	--vh-blue-soft: #9edfff;
	--vh-text: #f2f7fb;
	--vh-muted: #92a5b4;
}
html {
	scroll-behavior: smooth;
}
body,
.content-wrap {
	background: var(--vh-bg);
}
.content-wrap {
	overflow: hidden;
}
.mpl-navbar-top {
	background: rgba(7, 11, 16, 0.9);
	border-bottom: 1px solid rgba(113, 190, 237, 0.1);
	-webkit-backdrop-filter: blur(18px);
	backdrop-filter: blur(18px);
}
.mpl-navbar-brand img {
	width: 210px;
	max-width: 100%;
	height: auto;
	max-height: 78px;
	object-fit: contain;
	filter: drop-shadow(0 0 0 rgba(46, 177, 255, 0));
	transition: filter 0.3s ease, transform 0.3s ease;
}
.mpl-navbar-brand:hover img {
	filter: drop-shadow(0 0 10px rgba(55, 188, 255, 0.85)) drop-shadow(0 0 24px rgba(22, 112, 224, 0.52));
	transform: translateY(-1px) scale(1.025);
}
.mpl-navbar-top .mpl-nav-link-name {
	letter-spacing: 0.02em;
}
.mpl-navbar .mpl-nav-link-name,
.mpl-navbar .active > .mpl-nav-link > .mpl-nav-link-name,
.mpl-navbar .mpl-nav-link:hover > .mpl-nav-link-name,
.mpl-navbar .mpl-nav-link:focus > .mpl-nav-link-name,
.mpl-navbar .mpl-dropdown:hover > .mpl-nav-link > .mpl-nav-link-name,
.mpl-navbar .mpl-dropdown.focus > .mpl-nav-link > .mpl-nav-link-name,
.mpl-navbar .mpl-dropdown.show > .mpl-nav-link > .mpl-nav-link-name {
	background-image: none !important;
	background-position: initial !important;
	background-size: 0 !important;
}
.mpl-navbar .mpl-nav-link:focus-visible > .mpl-nav-link-name {
	color: var(--vh-blue-soft);
}
.vh-nav-disabled {
	cursor: default;
	opacity: 0.48;
}
.mpl-footer-copyright {
	background: #080c11;
	border-top: 1px solid var(--vh-line);
}
.mpl-footer-copyright .container {
	padding-top: 32px;
	padding-bottom: 32px;
}
.vh-home,
.vh-page {
	color: var(--vh-text);
}
.vh-home *,
.vh-page * {
	box-sizing: border-box;
}
.vh-hero {
	position: relative;
	display: grid;
	min-height: clamp(700px, 92vh, 920px);
	place-items: center;
	isolation: isolate;
	overflow: hidden;
}
.vh-hero-frame,
.vh-hero-shade {
	position: absolute;
	inset: 0;
}
.vh-hero-frame {
	z-index: -4;
	background-position: center;
	background-size: cover;
	opacity: 0;
	transform: scale(1.008);
	animation: vh-hero-crossfade 16s linear infinite;
}
.vh-hero-frame-a {
	background-image: url('/assets/images/bg_theostomb.png');
}
.vh-hero-frame-b {
	background-image: url('/assets/images/bg_merak.jpg');
	animation-delay: 8s;
}
.vh-hero-shade {
	z-index: -3;
	background:
		radial-gradient(circle at 50% 42%, rgba(10, 98, 158, 0.1), transparent 44%),
		linear-gradient(90deg, rgba(4, 8, 13, 0.76), rgba(4, 9, 15, 0.34) 48%, rgba(4, 8, 13, 0.74)),
		linear-gradient(180deg, rgba(4, 7, 11, 0.2), rgba(4, 8, 12, 0.18) 52%, #06090d 100%);
}
.vh-hero::before {
	content: "";
	position: absolute;
	z-index: -2;
	inset: 0;
	background-image: linear-gradient(rgba(255, 255, 255, 0.015) 1px, transparent 1px), linear-gradient(90deg, rgba(255, 255, 255, 0.012) 1px, transparent 1px);
	background-size: 64px 64px;
	-webkit-mask-image: linear-gradient(transparent, #000 38%, transparent);
	mask-image: linear-gradient(transparent, #000 38%, transparent);
}
.vh-hero-content {
	display: flex;
	max-width: 1050px;
	padding-top: 120px;
	padding-bottom: 100px;
	flex-direction: column;
	align-items: center;
	text-align: center;
}
.vh-eyebrow,
.vh-kicker,
.vh-card-label {
	color: var(--vh-blue-soft);
	font-size: 11px;
	font-weight: 700;
	letter-spacing: 0.32em;
	text-transform: uppercase;
}
.vh-hero-logo {
	width: min(820px, 86vw);
	height: auto;
	margin: 8px auto 0;
	filter: drop-shadow(0 24px 35px rgba(0, 0, 0, 0.7)) drop-shadow(0 0 24px rgba(32, 151, 225, 0.18));
}
.vh-hero-lead {
	max-width: 720px;
	margin: 4px auto 0;
	color: #cfdae2;
	font-size: clamp(17px, 1.5vw, 21px);
	line-height: 1.7;
}
.vh-actions {
	display: flex;
	margin-top: 30px;
	flex-wrap: wrap;
	gap: 14px;
}
.vh-button {
	display: inline-flex;
	min-height: 52px;
	padding: 0 30px;
	align-items: center;
	justify-content: center;
	border: 1px solid transparent;
	border-radius: 3px;
	font-size: 13px;
	font-weight: 700;
	letter-spacing: 0.08em;
	text-transform: uppercase;
	transition: 0.25s ease;
}
.vh-button-primary {
	color: #02101a;
	background: linear-gradient(135deg, #bcecff, #44b9ff 58%, #168ad3);
	box-shadow: 0 10px 34px rgba(32, 151, 225, 0.25);
}
.vh-button-primary:hover {
	color: #02101a;
	box-shadow: 0 14px 42px rgba(48, 178, 255, 0.42);
	transform: translateY(-2px);
}
.vh-button-ghost {
	color: var(--vh-text);
	border-color: rgba(173, 222, 250, 0.27);
	background: rgba(8, 17, 25, 0.52);
}
.vh-button-ghost:hover {
	color: var(--vh-blue-soft);
	border-color: rgba(79, 185, 247, 0.65);
	background: rgba(16, 38, 54, 0.68);
}
.vh-hero-tags {
	display: flex;
	margin-top: 34px;
	flex-wrap: wrap;
	justify-content: center;
	gap: 10px 24px;
	color: #92a8b6;
	font-size: 12px;
	letter-spacing: 0.08em;
	text-transform: uppercase;
}
.vh-hero-tags span {
	position: relative;
}
.vh-hero-tags span + span::before {
	content: "◆";
	position: absolute;
	left: -17px;
	color: #319fdf;
	font-size: 7px;
}
.vh-section {
	position: relative;
	padding: clamp(76px, 8vw, 120px) 0;
}
.vh-section-intro {
	background: linear-gradient(180deg, #06090d, #080d13);
}
.vh-section-sieges,
.vh-section-faq {
	background: #080d13;
}
.vh-section-news {
	background: linear-gradient(180deg, #06090d, #090f16);
}
.vh-section-heading {
	display: flex;
	margin-bottom: 44px;
	align-items: end;
	justify-content: space-between;
	gap: 28px;
}
.vh-section-heading-compact {
	margin-bottom: 32px;
}
.vh-section-heading h2,
.vh-community-inner h2,
.vh-panel h2,
.vh-document h2 {
	margin: 9px 0 0;
	color: var(--vh-text);
	font-size: clamp(30px, 4vw, 52px);
	line-height: 1.08;
}
.vh-section-heading > p {
	max-width: 520px;
	margin: 0;
	color: var(--vh-muted);
	font-size: 16px;
	line-height: 1.75;
}
.vh-world-grid {
	display: grid;
	grid-template-columns: minmax(0, 1.8fr) minmax(260px, 1fr);
	grid-template-rows: repeat(2, 245px);
	gap: 18px;
}
.vh-world-card {
	position: relative;
	display: block;
	min-height: 0;
	border: 1px solid var(--vh-line);
	border-radius: 6px;
	overflow: hidden;
}
.vh-world-card-main {
	grid-row: 1 / 3;
}
.vh-world-card::after {
	content: "";
	position: absolute;
	inset: 0;
	background: linear-gradient(180deg, transparent 40%, rgba(3, 8, 12, 0.88));
}
.vh-world-card img {
	width: 100%;
	height: 100%;
	object-fit: cover;
	transition: transform 0.7s ease, filter 0.5s ease;
}
.vh-world-card:hover img {
	filter: saturate(1.12) brightness(1.06);
	transform: scale(1.045);
}
.vh-world-card span {
	position: absolute;
	z-index: 2;
	right: 24px;
	bottom: 22px;
	left: 24px;
	color: #eef7fc;
	font-size: 14px;
	font-weight: 700;
	letter-spacing: 0.13em;
	text-transform: uppercase;
}
.vh-siege-grid {
	display: grid;
	grid-template-columns: repeat(2, minmax(0, 1fr));
	gap: 22px;
}
.vh-siege-card {
	position: relative;
	min-height: 390px;
	border: 1px solid var(--vh-line);
	border-radius: 6px;
	background-position: center;
	background-size: cover;
	overflow: hidden;
}
.vh-siege-card::before {
	content: "";
	position: absolute;
	inset: 0;
	background: linear-gradient(90deg, rgba(4, 8, 12, 0.96), rgba(5, 11, 17, 0.68) 60%, rgba(5, 10, 15, 0.28));
}
.vh-siege-theo {
	background-image: url('/assets/images/bg_theostomb.png');
}
.vh-siege-merak {
	background-image: url('/assets/images/bg_merak.jpg');
}
.vh-siege-content {
	position: relative;
	z-index: 2;
	max-width: 470px;
	padding: 46px;
}
.vh-siege-content h3 {
	margin: 10px 0 30px;
	font-size: clamp(28px, 3vw, 42px);
}
.vh-siege-content dl,
.vh-requirements {
	margin: 0;
}
.vh-siege-content dl > div,
.vh-requirements > div {
	display: flex;
	padding: 13px 0;
	align-items: baseline;
	justify-content: space-between;
	gap: 20px;
	border-bottom: 1px solid rgba(140, 205, 244, 0.12);
}
.vh-siege-content dt,
.vh-requirements dt {
	color: var(--vh-muted);
	font-weight: 400;
}
.vh-siege-content dd,
.vh-requirements dd {
	margin: 0;
	font-weight: 700;
	text-align: right;
}
.vh-requirements-head,
.vh-requirements-compare > div {
	display: grid;
	grid-template-columns: minmax(135px, 0.85fr) minmax(170px, 1fr) minmax(170px, 1fr);
	gap: 18px;
	align-items: start;
}
.vh-requirements-head {
	padding: 0 0 12px;
	color: var(--vh-blue-soft);
	font-size: 10px;
	letter-spacing: 0.12em;
	text-transform: uppercase;
}
.vh-requirements-compare > div {
	padding: 14px 0;
}
.vh-requirements-compare dd {
	font-size: 14px;
	line-height: 1.45;
}
.vh-requirements-note {
	margin: 20px 0 0;
	padding: 14px 16px;
	border-left: 2px solid #39b4ff;
	background: rgba(53, 163, 229, 0.06);
	color: var(--vh-muted);
	font-size: 13px;
	line-height: 1.6;
}
.vh-news-grid {
	display: grid;
	grid-template-columns: repeat(3, minmax(0, 1fr));
	gap: 22px;
}
.vh-news-grid-page {
	grid-template-columns: repeat(2, minmax(0, 1fr));
}
.vh-news-card {
	border: 1px solid var(--vh-line);
	border-radius: 6px;
	background: linear-gradient(145deg, rgba(15, 24, 34, 0.95), rgba(8, 13, 19, 0.98));
	overflow: hidden;
	transition: transform 0.25s ease, border-color 0.25s ease;
}
.vh-news-card:hover {
	border-color: rgba(85, 187, 247, 0.38);
	transform: translateY(-4px);
}
.vh-news-image {
	position: relative;
	display: block;
	aspect-ratio: 16 / 9;
	overflow: hidden;
}
.vh-news-image::after {
	content: "";
	position: absolute;
	inset: 0;
	background: linear-gradient(180deg, rgba(3, 7, 10, 0.02), rgba(3, 7, 10, 0.78));
}
.vh-news-image img {
	width: 100%;
	height: 100%;
	object-fit: cover;
	transition: transform 0.55s ease;
}
.vh-news-card:hover .vh-news-image img {
	transform: scale(1.04);
}
.vh-news-image > span {
	position: absolute;
	z-index: 2;
	bottom: 18px;
	left: 20px;
	padding: 6px 9px;
	color: var(--vh-blue-soft);
	border: 1px solid rgba(98, 188, 241, 0.25);
	border-radius: 2px;
	background: rgba(4, 12, 19, 0.78);
	font-size: 10px;
	font-weight: 700;
	letter-spacing: 0.14em;
	text-transform: uppercase;
}
.vh-news-body {
	padding: 26px;
}
.vh-news-body time {
	color: #708698;
	font-size: 12px;
	letter-spacing: 0.08em;
}
.vh-news-body h2,
.vh-news-body h3 {
	margin: 12px 0 12px;
	font-size: 24px;
	line-height: 1.28;
}
.vh-news-body h2 a,
.vh-news-body h3 a {
	color: var(--vh-text);
}
.vh-news-body p {
	display: -webkit-box;
	margin-bottom: 20px;
	color: var(--vh-muted);
	line-height: 1.65;
	-webkit-box-orient: vertical;
	-webkit-line-clamp: 3;
	overflow: hidden;
}
.vh-text-link,
.vh-back-link {
	color: var(--vh-blue-soft);
	font-size: 12px;
	font-weight: 700;
	letter-spacing: 0.11em;
	text-transform: uppercase;
}
.vh-text-link:hover,
.vh-back-link:hover {
	color: #fff;
}
.vh-text-link span {
	display: inline-block;
	margin-left: 5px;
	transition: transform 0.2s ease;
}
.vh-text-link:hover span {
	transform: translateX(4px);
}
.vh-empty-state {
	grid-column: 1 / -1;
	padding: 60px;
	border: 1px solid var(--vh-line);
	border-radius: 6px;
	background: var(--vh-surface);
	text-align: center;
}
.vh-community-cta {
	padding: 70px 0;
	border-top: 1px solid var(--vh-line);
	background:
		linear-gradient(90deg, rgba(4, 12, 20, 0.98), rgba(7, 24, 37, 0.9), rgba(4, 12, 20, 0.98)),
		repeating-linear-gradient(135deg, transparent 0 58px, rgba(77, 180, 242, 0.035) 58px 59px);
}
.vh-community-inner {
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 40px;
}
.vh-community-inner p {
	max-width: 650px;
	margin: 14px 0 0;
	color: var(--vh-muted);
}
.vh-community-inner .vh-actions {
	margin-top: 0;
	justify-content: flex-end;
}
.vh-page-hero {
	position: relative;
	display: flex;
	min-height: 440px;
	padding: 150px 0 70px;
	align-items: end;
	border-bottom: 1px solid var(--vh-line);
	background-position: center;
	background-size: cover;
	overflow: hidden;
}
.vh-page-hero::before,
.vh-article-hero::before {
	content: "";
	position: absolute;
	inset: 0;
	background: linear-gradient(90deg, rgba(4, 8, 13, 0.94), rgba(4, 9, 14, 0.5) 60%, rgba(4, 8, 13, 0.78)), linear-gradient(180deg, rgba(4, 7, 11, 0.15), #06090d 100%);
}
.vh-page-hero .container,
.vh-article-hero .container {
	position: relative;
	z-index: 2;
}
.vh-page-hero h1,
.vh-article-hero h1 {
	max-width: 900px;
	margin: 12px 0 12px;
	font-size: clamp(42px, 6vw, 78px);
	line-height: 1.03;
}
.vh-page-hero p {
	max-width: 700px;
	margin: 0;
	color: #b7c6d1;
	font-size: 18px;
	line-height: 1.65;
}
.vh-news-hero {
	background-image: url('/assets/images/dark/bg_news.png');
}
.vh-download-hero {
	min-height: 620px;
	background-image: url('/assets/images/dark/bg_download.png');
}
.vh-static-hero {
	background-image: url('/assets/images/dark/bg_characters.png');
}
.vh-download-hero-content {
	padding-right: min(44vw, 620px);
}
.vh-download-status,
.vh-maintenance-card {
	display: flex;
	margin-top: 30px;
	padding: 20px 22px;
	align-items: center;
	gap: 16px;
	border: 1px solid rgba(91, 183, 238, 0.22);
	border-radius: 5px;
	background: rgba(5, 13, 20, 0.72);
}
.vh-download-status strong,
.vh-download-status small {
	display: block;
}
.vh-download-status small {
	margin-top: 3px;
	color: var(--vh-muted);
}
.vh-status-dot {
	display: block;
	width: 11px;
	height: 11px;
	flex: 0 0 auto;
	border-radius: 50%;
	background: #4bc1ff;
	box-shadow: 0 0 18px #2aaff6;
	animation: vh-status-pulse 1.6s ease-in-out infinite;
}
.vh-archive-icon {
	display: grid;
	width: 44px;
	height: 44px;
	flex: 0 0 44px;
	place-items: center;
	color: #bdeaff;
	border: 1px solid rgba(107, 203, 255, 0.38);
	border-radius: 10px;
	background: linear-gradient(145deg, rgba(42, 175, 246, 0.2), rgba(7, 26, 39, 0.82));
	box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.08), 0 7px 20px rgba(0, 121, 190, 0.18);
}
.vh-archive-icon svg {
	width: 27px;
	height: 27px;
	overflow: visible;
	stroke: currentColor;
	stroke-width: 1.45;
	stroke-linecap: round;
	stroke-linejoin: round;
}
.vh-download-grid {
	display: grid;
	grid-template-columns: repeat(2, minmax(0, 1fr));
	gap: 24px;
}
.vh-panel,
.vh-document,
.vh-article-content {
	padding: clamp(28px, 4vw, 52px);
	border: 1px solid var(--vh-line);
	border-radius: 6px;
	background: linear-gradient(145deg, rgba(14, 22, 31, 0.97), rgba(8, 13, 19, 0.98));
}
.vh-panel h2 {
	margin-bottom: 28px;
	font-size: 32px;
}
.vh-resource-list {
	display: grid;
	gap: 10px;
}
.vh-resource-list a {
	display: flex;
	padding: 15px 16px;
	align-items: center;
	justify-content: space-between;
	gap: 16px;
	border: 1px solid rgba(127, 197, 239, 0.12);
	border-radius: 3px;
	background: rgba(255, 255, 255, 0.018);
}
.vh-resource-list a:hover {
	border-color: rgba(73, 179, 242, 0.42);
	background: rgba(38, 137, 198, 0.09);
}
.vh-resource-list span {
	color: var(--vh-text);
	font-weight: 700;
}
.vh-resource-list small {
	color: var(--vh-muted);
	text-align: right;
}
.vh-faq-list {
	display: grid;
	gap: 10px;
}
.vh-faq-list details {
	border: 1px solid var(--vh-line);
	border-radius: 4px;
	background: #0b1118;
}
.vh-faq-list summary {
	position: relative;
	padding: 21px 58px 21px 24px;
	color: var(--vh-text);
	font-weight: 700;
	cursor: pointer;
	list-style: none;
}
.vh-faq-list summary::-webkit-details-marker {
	display: none;
}
.vh-faq-list summary::after {
	content: "+";
	position: absolute;
	top: 50%;
	right: 24px;
	color: var(--vh-blue-soft);
	font-size: 24px;
	font-weight: 300;
	transform: translateY(-50%);
}
.vh-faq-list details[open] summary::after {
	content: "−";
}
.vh-faq-list p {
	margin: 0;
	padding: 0 24px 22px;
	color: var(--vh-muted);
	line-height: 1.7;
}
.vh-article-hero {
	position: relative;
	display: flex;
	min-height: 570px;
	padding: 170px 0 74px;
	align-items: end;
	background-image: var(--vh-article-image);
	background-position: center;
	background-size: cover;
}
.vh-article-hero::before {
	background: linear-gradient(90deg, rgba(4, 8, 13, 0.95), rgba(4, 9, 14, 0.56) 62%, rgba(4, 8, 13, 0.7)), linear-gradient(180deg, rgba(3, 7, 11, 0.15), #06090d 100%);
}
.vh-article-hero .vh-back-link {
	display: inline-block;
	margin-bottom: 38px;
}
.vh-article-hero time {
	color: #9bb0bf;
}
.vh-article-content {
	max-width: 980px;
	margin: 0 auto;
	color: #cfdae1;
	font-size: 17px;
	line-height: 1.85;
}
.vh-article-content img {
	max-width: 100%;
	height: auto;
	border-radius: 4px;
}
.vh-article-content h2,
.vh-article-content h3 {
	margin-top: 1.6em;
	color: var(--vh-text);
}
.vh-document {
	max-width: 980px;
	margin: 0 auto;
	color: #c5d1d9;
	font-size: 16px;
	line-height: 1.8;
}
.vh-document h2 {
	margin-top: 1.3em;
	font-size: 30px;
}
.vh-document h2:first-child {
	margin-top: 0;
}
.vh-document .vh-button {
	margin-top: 26px;
}
.vh-info-grid {
	display: grid;
	margin: 34px 0;
	grid-template-columns: repeat(3, minmax(0, 1fr));
	gap: 14px;
}
.vh-info-grid > div {
	padding: 20px;
	border: 1px solid var(--vh-line);
	background: rgba(255, 255, 255, 0.018);
}
.vh-info-grid strong,
.vh-info-grid span {
	display: block;
}
.vh-info-grid strong {
	color: var(--vh-muted);
	font-size: 11px;
	letter-spacing: 0.12em;
	text-transform: uppercase;
}
.vh-info-grid span {
	margin-top: 7px;
	color: var(--vh-text);
	font-weight: 700;
}
.vh-info-lead {
	color: #e2edf4;
	font-size: 20px;
	line-height: 1.7;
}
.vh-server-facts {
	display: grid;
	margin: 38px 0 52px;
	grid-template-columns: repeat(3, minmax(0, 1fr));
	gap: 14px;
}
.vh-server-facts > div,
.vh-feature-grid > div {
	padding: 24px;
	border: 1px solid var(--vh-line);
	border-radius: 4px;
	background: linear-gradient(145deg, rgba(21, 37, 50, 0.72), rgba(8, 15, 23, 0.86));
}
.vh-server-facts strong {
	display: block;
	color: #80d4ff;
	font-size: 34px;
	line-height: 1;
	text-shadow: 0 0 18px rgba(45, 175, 245, 0.34);
}
.vh-server-facts span {
	display: block;
	margin-top: 9px;
	color: var(--vh-muted);
	font-size: 13px;
}
.vh-feature-grid {
	display: grid;
	margin: 26px 0 38px;
	grid-template-columns: repeat(2, minmax(0, 1fr));
	gap: 14px;
}
.vh-feature-grid strong {
	color: var(--vh-text);
	font-size: 18px;
}
.vh-feature-grid p {
	margin: 10px 0 0;
	color: var(--vh-muted);
	font-size: 14px;
	line-height: 1.65;
}
.vh-server-slogan {
	margin: 0 0 34px;
	padding: 22px 26px;
	border-left: 3px solid #4bc1ff;
	background: rgba(41, 150, 219, 0.07);
	color: #dff4ff;
	font-size: clamp(20px, 2.4vw, 30px);
	font-weight: 700;
	line-height: 1.35;
}
.vh-maintenance-card h2,
.vh-maintenance-card p {
	margin: 0;
}
.vh-maintenance-card h2 {
	font-size: 25px;
}
.vh-pagination .pagination {
	justify-content: center;
}
@keyframes vh-hero-crossfade {
	0%, 44% { opacity: 1; transform: scale(1.008); }
	50%, 94% { opacity: 0; transform: scale(1.025); }
	100% { opacity: 1; transform: scale(1.008); }
}
@keyframes vh-status-pulse {
	0%, 100% { opacity: 0.62; transform: scale(0.86); }
	50% { opacity: 1; transform: scale(1.12); }
}
@media (max-width: 991.98px) {
	.vh-world-grid {
		grid-template-columns: 1fr 1fr;
		grid-template-rows: 420px 220px;
	}
	.vh-world-card-main {
		grid-column: 1 / 3;
		grid-row: auto;
	}
	.vh-siege-grid,
	.vh-download-grid {
		grid-template-columns: 1fr;
	}
	.vh-news-grid {
		grid-template-columns: repeat(2, minmax(0, 1fr));
	}
	.vh-community-inner,
	.vh-section-heading {
		align-items: flex-start;
		flex-direction: column;
	}
	.vh-community-inner .vh-actions {
		justify-content: flex-start;
	}
	.vh-download-hero-content {
		padding-right: 12px;
	}
	.vh-page-hero::before {
		background: linear-gradient(90deg, rgba(4, 8, 13, 0.93), rgba(4, 9, 14, 0.67)), linear-gradient(180deg, rgba(4, 7, 11, 0.1), #06090d 100%);
	}
}
@media (max-width: 767.98px) {
	.mpl-navbar-brand img {
		width: 170px;
	}
	.vh-hero {
		min-height: 720px;
	}
	.vh-hero-content {
		padding-top: 105px;
	}
	.vh-hero-tags span + span::before {
		display: none;
	}
	.vh-world-grid {
		display: grid;
		grid-template-columns: 1fr;
		grid-template-rows: repeat(3, 240px);
	}
	.vh-world-card-main {
		grid-column: auto;
	}
	.vh-siege-content {
		padding: 30px;
	}
	.vh-news-grid,
	.vh-news-grid-page {
		grid-template-columns: 1fr;
	}
	.vh-page-hero,
	.vh-article-hero {
		min-height: 420px;
		padding-top: 130px;
	}
	.vh-info-grid {
		grid-template-columns: 1fr;
	}
	.vh-requirements-head,
	.vh-requirements-compare > div {
		grid-template-columns: 1fr;
	}
	.vh-requirements-head span {
		display: none;
	}
	.vh-requirements-head {
		grid-template-columns: 1fr 1fr;
	}
	.vh-server-facts,
	.vh-feature-grid {
		grid-template-columns: 1fr;
	}
	.footer-link a {
		display: block;
		padding: 5px 0;
	}
}
@media (max-width: 575.98px) {
	.vh-hero-logo {
		width: 96vw;
	}
	.vh-hero-lead {
		font-size: 16px;
	}
	.vh-actions,
	.vh-actions .vh-button {
		width: 100%;
	}
	.vh-section {
		padding: 68px 0;
	}
	.vh-siege-card {
		min-height: 430px;
	}
	.vh-siege-content dl > div,
	.vh-requirements > div,
	.vh-resource-list a {
		align-items: flex-start;
		flex-direction: column;
	}
	.vh-siege-content dd,
	.vh-requirements dd,
	.vh-resource-list small {
		text-align: left;
	}
}
@media (prefers-reduced-motion: reduce) {
	.vh-hero-frame-a {
		opacity: 1;
	}
	.vh-hero-frame,
	.vh-status-dot {
		animation: none !important;
	}
}

/* Icy Valhalla sword cursor with a continuous blue-fire trail. */
@media (pointer: fine) {
	html.vh-ice-cursor-enabled,
	html.vh-ice-cursor-enabled body,
	html.vh-ice-cursor-enabled a,
	html.vh-ice-cursor-enabled button,
	html.vh-ice-cursor-enabled input,
	html.vh-ice-cursor-enabled textarea,
	html.vh-ice-cursor-enabled select,
	html.vh-ice-cursor-enabled summary,
	html.vh-ice-cursor-enabled [role="button"] {
		cursor: url('/assets/images/valhalla-ice-sword-cursor.png') 2 2, auto !important;
	}
}
.mpl-cursor,
.mpl-cursor-outer {
	display: none !important;
}
.vh-cursor-fire {
	position: fixed;
	z-index: 99998;
	top: 0;
	left: 0;
	width: 100vw;
	height: 100vh;
	pointer-events: none;
	contain: strict;
}

/* Official community destinations in desktop and mobile navigation. */
.vh-social-link {
	display: flex !important;
	align-items: center;
	gap: 10px;
}
.vh-social-icon {
	width: 22px;
	height: 22px;
	flex: 0 0 22px;
	fill: #e9f3ff;
	filter: drop-shadow(0 0 0 rgba(66, 174, 255, 0));
	transition: fill 180ms ease, transform 180ms ease, filter 180ms ease;
}
.vh-social-link:hover .vh-social-icon,
.vh-social-link:focus-visible .vh-social-icon {
	transform: translateY(-1px) scale(1.08);
	filter: drop-shadow(0 0 7px rgba(76, 187, 255, 0.72));
}
.vh-social-link-telegram:hover .vh-social-icon,
.vh-social-link-telegram:focus-visible .vh-social-icon {
	fill: #2aabee;
}
.vh-social-link-vk:hover .vh-social-icon,
.vh-social-link-vk:focus-visible .vh-social-icon {
	fill: #2787f5;
}
@media (prefers-reduced-motion: reduce) {
	.vh-cursor-fire {
		display: none !important;
	}
}

/* Unified blue interaction states, including legal links in the footer. */
::selection {
	color: #03111b;
	background: #6bd1ff;
}
.mpl-footer-copyright a,
.footer-link a {
	transition: color 180ms ease, text-shadow 180ms ease;
}
.mpl-footer-copyright a:hover,
.mpl-footer-copyright a:focus-visible,
.mpl-footer-copyright a:active,
.footer-link a:hover,
.footer-link a:focus-visible,
.footer-link a:active {
	color: #63cdff !important;
	text-decoration-color: #63cdff !important;
	text-shadow: 0 0 12px rgba(66, 185, 255, 0.55);
}

/* Mobile layout: compact, readable and touch friendly from 320px upward. */
@media (max-width: 767.98px) {
	html,
	body,
	.content-wrap {
		max-width: 100%;
		overflow-x: hidden;
	}
	.container {
		padding-right: 20px;
		padding-left: 20px;
	}
	.mpl-navbar-top {
		min-height: 88px;
	}
	.mpl-navbar-top > .mpl-navbar-container {
		min-height: 88px;
		padding-right: 20px;
		padding-left: 20px;
		align-items: center;
	}
	.mpl-navbar-top .mpl-navbar-brand {
		margin-right: auto;
	}
	.mpl-navbar-brand img {
		width: 158px;
		max-height: 64px;
	}
	.mpl-navbar-top .mpl-navbar-toggle {
		margin-right: -8px;
		flex: 0 0 45px;
	}
	.mpl-navbar-mobile {
		width: min(88vw, 340px);
		background: #080d13;
	}
	.mpl-navbar-mobile .mpl-navbar-container {
		width: calc(min(88vw, 340px) - 8px);
	}
	.mpl-navbar-mobile .mpl-navbar-head {
		padding: 18px 22px;
		background: #080d13;
	}
	.mpl-navbar-mobile .mpl-navbar-body {
		padding: 4px 24px 28px;
	}
	.mpl-navbar-mobile .mpl-navbar-body .mpl-nav-link {
		min-height: 46px;
		padding: 11px 0;
		align-items: center;
		font-size: 17px;
	}
	.mpl-navbar-mobile .mpl-navbar-toggle:hover > span,
	.mpl-navbar-mobile .mpl-navbar-toggle:focus-visible > span {
		background-color: var(--vh-blue-soft);
	}
	.vh-hero {
		min-height: auto;
		place-items: start center;
	}
	.vh-hero-content {
		min-height: clamp(650px, calc(100svh - 20px), 780px);
		padding-top: 128px;
		padding-bottom: 64px;
		justify-content: center;
	}
	.vh-eyebrow,
	.vh-kicker,
	.vh-card-label {
		font-size: 10px;
		letter-spacing: 0.25em;
	}
	.vh-hero-logo {
		width: min(94vw, 520px);
		margin-top: 10px;
	}
	.vh-hero-lead {
		max-width: 540px;
		margin-top: 10px;
		font-size: 16px;
		line-height: 1.62;
	}
	.vh-actions {
		margin-top: 24px;
		gap: 12px;
	}
	.vh-button {
		min-height: 54px;
		padding: 0 22px;
	}
	.vh-hero-tags {
		width: 100%;
		margin-top: 28px;
		gap: 10px;
		font-size: 11px;
		line-height: 1.45;
	}
	.vh-hero-tags span {
		padding: 7px 10px;
		border: 1px solid rgba(128, 200, 244, 0.12);
		border-radius: 3px;
		background: rgba(5, 14, 22, 0.5);
	}
	.vh-section {
		padding: 58px 0;
	}
	.vh-section-heading {
		margin-bottom: 28px;
		gap: 18px;
	}
	.vh-section-heading h2,
	.vh-community-inner h2,
	.vh-panel h2,
	.vh-document h2 {
		font-size: clamp(29px, 9vw, 40px);
		line-height: 1.12;
	}
	.vh-section-heading > p,
	.vh-community-inner p {
		font-size: 15px;
		line-height: 1.65;
	}
	.vh-world-grid {
		padding: 12px;
		grid-template-rows: repeat(3, 215px);
		gap: 12px;
	}
	.vh-world-card span {
		right: 18px;
		bottom: 17px;
		left: 18px;
		font-size: 12px;
	}
	.vh-siege-grid {
		gap: 16px;
	}
	.vh-siege-card {
		min-height: 390px;
		background-position: center;
	}
	.vh-siege-content {
		max-width: none;
		padding: 30px 24px;
	}
	.vh-siege-content h3 {
		margin-bottom: 22px;
		font-size: clamp(29px, 9vw, 38px);
	}
	.vh-siege-content dl > div {
		padding: 11px 0;
		gap: 12px;
	}
	.vh-news-grid {
		gap: 16px;
	}
	.vh-news-body {
		padding: 22px;
	}
	.vh-news-body h2,
	.vh-news-body h3 {
		font-size: 22px;
	}
	.vh-community-cta {
		padding: 56px 0;
	}
	.vh-community-inner {
		gap: 28px;
	}
	.vh-community-inner .vh-actions {
		width: 100%;
	}
	.vh-page-hero,
	.vh-article-hero,
	.vh-download-hero {
		min-height: 460px;
		padding: 140px 0 58px;
	}
	.vh-page-hero h1,
	.vh-article-hero h1 {
		font-size: clamp(40px, 12vw, 58px);
		line-height: 1.04;
	}
	.vh-page-hero p {
		font-size: 16px;
		line-height: 1.6;
	}
	.vh-download-hero-content {
		padding-right: 20px;
	}
	.vh-download-status,
	.vh-maintenance-card {
		padding: 17px;
		align-items: flex-start;
	}
	.vh-panel,
	.vh-document,
	.vh-article-content {
		padding: 24px 20px;
	}
	.vh-requirements-head {
		display: none;
	}
	.vh-requirements-compare > div {
		display: grid;
		padding: 17px 0;
		grid-template-columns: 1fr;
		gap: 7px;
	}
	.vh-requirements-compare dt {
		margin-bottom: 3px;
		color: var(--vh-blue-soft);
		font-weight: 700;
	}
	.vh-requirements-compare dd {
		position: relative;
		padding-left: 94px;
		text-align: left;
	}
	.vh-requirements-compare dd::before {
		position: absolute;
		top: 0;
		left: 0;
		color: #708698;
		font-size: 10px;
		line-height: 1.2;
		letter-spacing: 0.08em;
		text-transform: uppercase;
	}
	.vh-requirements-compare dd:nth-of-type(1)::before {
		content: "Минимум";
	}
	.vh-requirements-compare dd:nth-of-type(2)::before {
		content: "Советуем";
	}
	.vh-resource-list a {
		min-height: 70px;
		padding: 15px;
	}
	.vh-faq-list summary {
		padding: 18px 48px 18px 18px;
		line-height: 1.45;
	}
	.vh-faq-list summary::after {
		right: 18px;
	}
	.vh-faq-list p {
		padding: 0 18px 20px;
	}
	.vh-info-lead {
		font-size: 17px;
		line-height: 1.65;
	}
	.vh-server-facts {
		margin: 28px 0 34px;
		gap: 10px;
	}
	.vh-server-facts > div,
	.vh-feature-grid > div {
		padding: 20px;
	}
	.vh-feature-grid {
		margin: 20px 0 30px;
		gap: 10px;
	}
	.vh-server-slogan {
		padding: 18px 20px;
	}
	.vh-article-content {
		font-size: 16px;
		line-height: 1.75;
	}
	.mpl-footer-copyright .container {
		padding-top: 26px;
		padding-bottom: calc(26px + env(safe-area-inset-bottom));
	}
	.footer-link {
		margin-bottom: 18px;
	}
	.footer-link a {
		padding: 7px 0;
		white-space: normal;
	}
	.vh-footer-separator {
		display: none;
	}
}

@media (max-width: 399.98px) {
	.container {
		padding-right: 16px;
		padding-left: 16px;
	}
	.mpl-navbar-top > .mpl-navbar-container {
		padding-right: 16px;
		padding-left: 16px;
	}
	.mpl-navbar-brand img {
		width: 146px;
	}
	.vh-hero-content {
		padding-top: 118px;
		padding-bottom: 54px;
	}
	.vh-hero-logo {
		width: 100vw;
	}
	.vh-hero-tags {
		align-items: stretch;
		flex-direction: column;
	}
	.vh-hero-tags span {
		width: 100%;
	}
	.vh-siege-content dl > div {
		align-items: flex-start;
		flex-direction: column;
	}
	.vh-siege-content dd {
		text-align: left;
	}
	.vh-requirements-compare dd {
		padding-top: 18px;
		padding-left: 0;
	}
	.vh-resource-list a {
		align-items: flex-start;
		flex-direction: column;
	}
	.vh-resource-list small {
		text-align: left;
	}
}

/* Authentication */
.vh-auth-page {
	min-height: calc(100vh - 96px);
	background:
		radial-gradient(circle at 50% 20%, rgba(48, 174, 244, .11), transparent 34%),
		linear-gradient(180deg, #070a0d 0%, #050709 100%);
}
.vh-auth-page .mpl-banner-content {
	padding-top: 150px;
	padding-bottom: 90px;
}
.vh-auth-card {
	position: relative;
	overflow: hidden;
	padding: 48px 50px;
	border: 1px solid rgba(105, 204, 255, .18);
	border-radius: 16px;
	background: linear-gradient(145deg, rgba(22, 29, 36, .98), rgba(12, 17, 22, .98));
	box-shadow: 0 30px 80px rgba(0, 0, 0, .48), 0 0 45px rgba(46, 173, 240, .07);
}
.vh-auth-card::before {
	position: absolute;
	top: 0;
	left: 12%;
	width: 76%;
	height: 1px;
	content: "";
	background: linear-gradient(90deg, transparent, rgba(99, 208, 255, .9), transparent);
	box-shadow: 0 0 18px rgba(66, 190, 255, .6);
}
.vh-auth-kicker {
	display: flex;
	align-items: center;
	justify-content: center;
	margin-bottom: 14px;
	color: #86d9ff;
	font-size: 10px;
	font-weight: 700;
	letter-spacing: .24em;
}
.vh-auth-kicker span {
	width: 28px;
	height: 1px;
	margin: 0 10px;
	background: linear-gradient(90deg, transparent, #5fc8fa);
}
.vh-auth-kicker span:last-child {
	transform: rotate(180deg);
}
.vh-auth-title {
	margin-bottom: 8px;
	text-align: center;
	font-family: "Segoe UI", Arial, sans-serif;
	font-size: clamp(34px, 4vw, 44px);
	font-weight: 700;
	line-height: 1.15;
	letter-spacing: -.02em;
}
.vh-auth-subtitle {
	max-width: 440px;
	margin: 0 auto 28px;
	color: #9aaeba;
	text-align: center;
	line-height: 1.65;
}
.vh-auth-card .form-control {
	height: 58px;
	border: 1px solid rgba(126, 189, 220, .12);
	border-radius: 9px;
	background: rgba(255, 255, 255, .055);
	transition: border-color .2s ease, background .2s ease, box-shadow .2s ease;
}
.vh-auth-card .form-control:hover {
	background: rgba(255, 255, 255, .072);
}
.vh-auth-card .form-control:focus {
	border-color: rgba(75, 192, 249, .72);
	background: rgba(27, 54, 68, .38);
	box-shadow: 0 0 0 4px rgba(42, 169, 232, .1), 0 0 24px rgba(40, 167, 234, .08);
}
.vh-auth-card .form-check-input {
	accent-color: #39b9f4;
}
.vh-auth-card .form-check-input:checked {
	border-color: #45c4ff !important;
	background-color: #28acec !important;
	box-shadow: 0 0 0 3px rgba(54, 185, 244, .13), 0 0 16px rgba(54, 185, 244, .18);
}
.vh-auth-card .form-check-input:focus {
	border-color: #68d2ff !important;
	box-shadow: 0 0 0 3px rgba(54, 185, 244, .14) !important;
}
.vh-auth-card a {
	color: #72d1ff;
	transition: color .2s ease, text-shadow .2s ease;
}
.vh-auth-card a:visited {
	color: #72d1ff;
}
.vh-auth-card a:hover {
	color: #b8eaff;
	text-shadow: 0 0 12px rgba(87, 199, 255, .45);
}
.vh-auth-card .form-control.is-invalid,
.vh-auth-card .form-control.is-invalid:focus {
	border-color: rgba(92, 202, 255, .78) !important;
	box-shadow: 0 0 0 4px rgba(42, 169, 232, .1) !important;
}
.vh-auth-card .invalid-feedback,
.vh-auth-card .invalid-feedback strong {
	color: #8edcff !important;
}
.vh-password-field {
	position: relative;
}
.vh-password-field .form-control {
	padding-right: 56px;
}
.vh-password-toggle {
	position: absolute;
	top: 50%;
	right: 13px;
	z-index: 3;
	display: inline-flex;
	align-items: center;
	justify-content: center;
	width: 36px;
	height: 36px;
	padding: 0;
	transform: translateY(-50%);
	border: 0;
	border-radius: 9px;
	color: #7c9faf;
	background: transparent;
	cursor: pointer;
	transition: color .2s ease, background .2s ease, box-shadow .2s ease;
}
.vh-password-toggle svg {
	width: 22px;
	height: 22px;
	fill: none;
	stroke: currentColor;
	stroke-width: 1.6;
}
.vh-password-toggle:hover,
.vh-password-toggle:focus-visible,
.vh-password-toggle[aria-pressed="true"] {
	color: #8bdcff;
	background: rgba(51, 176, 233, .09);
	box-shadow: 0 0 18px rgba(63, 193, 249, .12);
	outline: none;
}
.vh-password-toggle[aria-pressed="true"]::after {
	position: absolute;
	width: 23px;
	height: 1px;
	content: "";
	transform: rotate(-42deg);
	background: currentColor;
	box-shadow: 0 0 5px currentColor;
}
.vh-auth-message {
	margin: 0 0 22px;
	padding: 13px 15px;
	border: 1px solid rgba(84, 201, 255, .26);
	border-radius: 9px;
	color: #b8eaff;
	background: rgba(37, 151, 205, .1);
	text-align: center;
	line-height: 1.5;
}
.vh-auth-secondary,
.vh-auth-secondary:focus {
	height: 54px;
	border: 1px solid rgba(105, 204, 255, .18) !important;
	border-radius: 9px;
	color: #d8e9f1 !important;
	background: rgba(255, 255, 255, .055) !important;
}
.vh-auth-secondary:hover {
	border-color: rgba(105, 204, 255, .42) !important;
	color: #fff !important;
	background: rgba(50, 166, 220, .1) !important;
}
.vh-auth-card-verify {
	text-align: center;
}
.vh-auth-mail-icon {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	width: 62px;
	height: 62px;
	margin-bottom: 18px;
	border: 1px solid rgba(101, 207, 255, .28);
	border-radius: 50%;
	color: #7bd7ff;
	background: radial-gradient(circle, rgba(51, 179, 239, .15), transparent 68%);
	box-shadow: 0 0 32px rgba(54, 185, 244, .12);
}
.vh-auth-mail-icon svg {
	width: 30px;
	height: 30px;
	fill: none;
	stroke: currentColor;
	stroke-linecap: round;
	stroke-linejoin: round;
	stroke-width: 1.4;
}
.vh-auth-card-security { text-align: center; }
.vh-auth-security-icon {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	width: 66px;
	height: 66px;
	margin-bottom: 18px;
	border: 1px solid rgba(101, 207, 255, .3);
	border-radius: 19px 19px 25px 25px;
	color: #7cdaff;
	background: radial-gradient(circle, rgba(51, 179, 239, .16), transparent 70%);
	box-shadow: 0 0 34px rgba(54, 185, 244, .13), inset 0 1px 0 rgba(255,255,255,.04);
}
.vh-auth-security-icon svg { width: 34px; height: 34px; fill: none; stroke: currentColor; stroke-linecap: round; stroke-linejoin: round; stroke-width: 1.45; }
.vh-auth-card-security .invalid-feedback { display: block; margin: 9px 0 0; text-align: left; }
.vh-auth-code { padding-left: 18px !important; text-align: center; font-size: 22px !important; font-weight: 800; letter-spacing: .38em; }
.vh-auth-recovery { margin-top: 24px; padding-top: 20px; border-top: 1px solid rgba(105, 194, 235, .14); }
.vh-auth-recovery summary { color: #78d3fa; cursor: pointer; font-size: 13px; font-weight: 800; list-style-position: inside; }
.vh-auth-recovery form { margin-top: 17px; }
.vh-auth-recovery .vh-auth-secondary { width: 100%; margin-top: 14px; }
.vh-auth-primary,
.vh-auth-primary:focus {
	position: relative;
	overflow: hidden;
	height: 56px;
	border: 1px solid rgba(150, 225, 255, .48) !important;
	border-radius: 9px;
	color: #031018 !important;
	background: linear-gradient(100deg, #8bdeff 0%, #35b8f5 52%, #168fd4 100%) !important;
	box-shadow: 0 12px 30px rgba(32, 166, 231, .2), inset 0 1px 0 rgba(255, 255, 255, .5);
	font-weight: 800;
	letter-spacing: .06em;
	transition: transform .2s ease, filter .2s ease, box-shadow .2s ease !important;
}
.vh-auth-primary::after {
	position: absolute;
	top: -80%;
	left: -30%;
	width: 22%;
	height: 260%;
	content: "";
	transform: rotate(22deg);
	background: rgba(255, 255, 255, .34);
	transition: left .55s ease;
}
.vh-auth-primary:hover {
	transform: translateY(-2px);
	filter: brightness(1.08);
	box-shadow: 0 16px 38px rgba(32, 172, 239, .3), 0 0 28px rgba(63, 193, 249, .15);
}
.vh-auth-primary:hover::after {
	left: 115%;
}
.vh-auth-footer {
	padding-top: 7px;
	color: #a9b4bb;
	text-align: center;
}
.vh-auth-card-register {
	padding-top: 42px;
	padding-bottom: 42px;
}
@media (max-width: 767.98px) {
	.vh-auth-page .mpl-banner-content {
		padding-top: 112px;
		padding-bottom: 54px;
	}
	.vh-auth-card {
		padding: 34px 22px;
		border-radius: 12px;
	}
	.vh-auth-title {
		font-size: 34px;
	}
	.vh-auth-kicker {
		font-size: 9px;
		letter-spacing: .16em;
	}
	.vh-auth-card .form-control,
	.vh-auth-primary {
		height: 54px;
	}
}
