/*css
//==>>>==>>>==>>>==>>>==>>>==>>>==>>>==>>>==>>>==>>>==>>>==>>>==>>>
//
//
//==<<<==<<<==<<<==<<<==<<<==<<<==<<<==<<<==<<<==<<<==<<<==<<<==<<<
*/
/* overlay */
.dlg-overlay{
	position:fixed;
	top:0;
	left:0;
	bottom:0;
	right:0;
	display:flex;
	justify-content:center;
	align-items:center;
	background:rgba(0,0,0,0.1);
	z-index:100;
}
/* box-sizing */
.dlg,
.dlg *,
.dlg *::before,
.dlg *::after{
	box-sizing:border-box;
}
.dlg{
	position:relative;
	top:-30px;
	opacity:0;
	transition:top 0.6s,opacity 0.6s;
	display:flex;
	flex-direction:column;
	max-width:100vw;
	max-height:100vh;
	font-size:16px;
	line-height:1.4;
	background-color:#fff;
	background-clip:padding-box;
	border:10px solid rgba(0,0,0,0.2);
	border-radius:5px;
	box-shadow:0 6px 12px rgb(0 0 0/18%);
	overflow:hidden;
}
.dlg:focus{
	outline:none;
}
@media (max-width:380px){
	.dlg{
		border-left-width:0;
		border-right-width:0;
		border-radius:0;
	}
}
.dlg.dlg-on{
	top:0;
	opacity:1;
}
.dlg-heading{
	display:flex;
	justify-content:space-between;
	align-items:center;
	color:#fff;
	background-color:#337ab7;
}
.dlg-title{
	padding:10px;
}
.dlg-btn-close{
	margin:5px;
	width:35px;
	height:35px;
	display:flex;
	justify-content:center;
	align-items:center;
	font-family:"sans-serif";
	color:#fff;
	border-radius:50%;
	cursor:pointer;
	transition:background 0.3s;
}
.dlg-btn-close::before{
	content:"╳";
	position:relative;
	top:1px;
	font-size:80%;
}
.dlg-btn-close:hover{
	background:rgba(255,255,255,0.3);
}
.dlg-btn-close:focus{
	outline:3px dotted rgba(255,255,255,0.6);
}
.dlg-body{
	padding:10px;
	overflow-y:auto;
	/* prevent scroll chaining */
	overscroll-behavior:contain;
}
.dlg-footer{
	padding:0 10px;
	display:flex;
	justify-content:flex-end;
	align-items:center;
	padding-top:1px;
	gap:3px;
	height:50px;
	background-color:#ddd;
}
.dlg-footer .btn{
	min-width:100px;
}
