:root {
	--hystmodal-speed: .3s;
	--hystmodal-zindex: 97
}

.hystmodal {
	position: fixed;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	overflow: hidden;
	overflow-y: auto;
	-webkit-overflow-scrolling: touch;
	pointer-events: none;
	display: grid;
	grid-template-columns: 100%;
	grid-template-rows: 0px min-content 0px;
	justify-content: center;
	align-content: space-between;
	visibility: hidden;
	scrollbar-width: none;
	-ms-overflow-style: none;
	cursor: pointer;
	padding: 20px;
}

.hystmodal::-webkit-scrollbar {
	display: none
}

.hystmodal:before {
	position: fixed;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	content: "";
	display: block;
	background-color: #000;
	opacity: 0;
	pointer-events: none
}

.hystmodal--animated:before {
	transition: opacity var(--hystmodal-speed) ease
}

.hystmodal--active:before {
	opacity: .6
}

.hystmodal--moved,
.hystmodal--active {
	opacity: 1;
	pointer-events: none;
	visibility: visible
}

.hystmodal--active {
	pointer-events: auto
}

.hystmodal__wrap {
	display: block;
	min-width: 0;
	grid-row: 2 / 3
}

.hystmodal__window {
	min-width: 0;
	grid-row: 2 / 3;
	position: relative;
	z-index: 10;
	box-sizing: border-box;
	flex-shrink: 0;
	flex-grow: 0;
	background: #fff;
	width: 600px;
	max-width: 100%;
	overflow: visible;
	transform: scale(.95);
	opacity: 0;
	margin: 50px auto;
	cursor: default;
	border-radius: 8px;
}

.hystmodal__window--loading {
	min-height: 400px;
	background-image: url("data:image/svg+xml,%0A%3Csvg width='105' height='105' viewBox='0 0 105 105' xmlns='http://www.w3.org/2000/svg' fill='%23aaa'%3E%3Ccircle cx='12.5' cy='12.5' r='12.5'%3E%3Canimate attributeName='fill-opacity' begin='0s' dur='1s' values='1;.2;1' calcMode='linear' repeatCount='indefinite' /%3E%3C/circle%3E%3Ccircle cx='12.5' cy='52.5' r='12.5' fill-opacity='.5'%3E%3Canimate attributeName='fill-opacity' begin='100ms' dur='1s' values='1;.2;1' calcMode='linear' repeatCount='indefinite' /%3E%3C/circle%3E%3Ccircle cx='52.5' cy='12.5' r='12.5'%3E%3Canimate attributeName='fill-opacity' begin='300ms' dur='1s' values='1;.2;1' calcMode='linear' repeatCount='indefinite' /%3E%3C/circle%3E%3Ccircle cx='52.5' cy='52.5' r='12.5'%3E%3Canimate attributeName='fill-opacity' begin='600ms' dur='1s' values='1;.2;1' calcMode='linear' repeatCount='indefinite' /%3E%3C/circle%3E%3Ccircle cx='92.5' cy='12.5' r='12.5'%3E%3Canimate attributeName='fill-opacity' begin='800ms' dur='1s' values='1;.2;1' calcMode='linear' repeatCount='indefinite' /%3E%3C/circle%3E%3Ccircle cx='92.5' cy='52.5' r='12.5'%3E%3Canimate attributeName='fill-opacity' begin='400ms' dur='1s' values='1;.2;1' calcMode='linear' repeatCount='indefinite' /%3E%3C/circle%3E%3Ccircle cx='12.5' cy='92.5' r='12.5'%3E%3Canimate attributeName='fill-opacity' begin='700ms' dur='1s' values='1;.2;1' calcMode='linear' repeatCount='indefinite' /%3E%3C/circle%3E%3Ccircle cx='52.5' cy='92.5' r='12.5'%3E%3Canimate attributeName='fill-opacity' begin='500ms' dur='1s' values='1;.2;1' calcMode='linear' repeatCount='indefinite' /%3E%3C/circle%3E%3Ccircle cx='92.5' cy='92.5' r='12.5'%3E%3Canimate attributeName='fill-opacity' begin='200ms' dur='1s' values='1;.2;1' calcMode='linear' repeatCount='indefinite' /%3E%3C/circle%3E%3C/svg%3E%0A");
	background-position: 50%;
	background-repeat: no-repeat;
	background-size: 48px
}

.hystmodal--animated .hystmodal__window {
	transition: transform var(--hystmodal-speed) ease 0s, opacity var(--hystmodal-speed) ease 0s
}

.hystmodal--active .hystmodal__window {
	transform: none;
	opacity: 1
}

.hystmodal__close {
	position: absolute;
	z-index: 10;
	top: 15px;
	right: 15px;
	display: block;
	width: 25px;
	height: 25px;
	background-color: transparent;
	background-position: center center;
	background-repeat: no-repeat;
	background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath fill='%23fff' stroke='%23000' stroke-linecap='square' stroke-miterlimit='50' stroke-width='2' d='M22 2L2 22'/%3E%3Cpath fill='none' stroke='%23000' stroke-linecap='square' stroke-miterlimit='50' stroke-width='2' d='M2 2l20 20'/%3E%3C/svg%3E");
	background-size: 100% 100%;
	border: none;
	font-size: 0;
	cursor: pointer;
	outline: none
}

.hystmodal__close--wh {
	background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath fill='%23fff' stroke='%23fff' stroke-linecap='square' stroke-miterlimit='50' stroke-width='2' d='M22 2L2 22'/%3E%3Cpath fill='none' stroke='%23fff' stroke-linecap='square' stroke-miterlimit='50' stroke-width='2' d='M2 2l20 20'/%3E%3C/svg%3E")
}

.hystmodal__close:hover {
	opacity: .95
}

.hystmodal__close:focus {
	outline: 2px dotted rgba(0, 0, 0, .7);
	outline-offset: 2px
}

.hystmodal__close--wh:focus {
	outline: 2px dotted rgba(255, 255, 255, .7)
}

@media all and (max-width:767px) {
	.hystmodal__close {
		top: 10px;
		right: 10px;
		width: 24px;
		height: 24px
	}

	.hystmodal__window {
		margin-top: 0;
		margin-bottom: 0
	}
}