
/* - INI:VENTANAS - */
.se_dialog { display:flex; align-items:center; justify-content:center; position:fixed; height:100vh; top:0; left:0; right:0; bottom:0; z-index:10000; background-color:rgba(0, 0, 0, 0.7); padding:20px; }
.se_dialog_win { padding:15px; background-color:#FFF; border:1px solid #000; }
.win_main { display:flex; flex-direction:column; position:relative; overflow:hidden; margin:0 auto; max-height:calc(100vh - 20px); min-width:300px; max-width:calc(100vw - 20px); text-align:left; border:3px solid #000; border-radius:4px; }
.win_header { display:flex; flex-direction:row; align-items:center; align-content:space-between; padding:10px; font-weight:bold; -ms-user-select:none; -moz-user-select:none; -webkit-user-select:none; background-color:var(--color-main-01-norm-n); color:var(--color-main-01-cont-n); }
.win_header.draggable { cursor:move; }
.win_header .title { display:block; font-size:1.8rem; flex:1; }
.win_header .close { display:inline-flex; align-items:center; justify-content:center; font-size:1.6rem; height:20px; width:20px; border-radius:3px; cursor:pointer; }
.win_header .close:hover { background-color:var(--color-main-01-norm-h); }
.win_content { flex:1; display:block; padding:10px; overflow-y:auto; box-sizing:border-box; width:100%; height:auto; min-height:100px; max-height:calc(100vh - 120px); background-color:var(--color-main-00-norm-n); color:var(--color-main-00-comp-n); }
.win_main.float { position:fixed; }
.win_main.fullScreen { height:100%; width:100%; }
.win_main.fullScreen .win_content { height:calc(100% - 35px); }
@media only screen and (max-width:480px) {
	.se_dialog .bkg { padding:15px; }
}

dialog {
	margin:auto;

	&.asWindow {
		display: flex;
		flex-direction: column;
		min-height: 10vh;
		min-width: 20vw;
		max-height: 96vh;
		max-width: 96vw;
		padding: 0;
		border-radius: 10px;
	}

	&.asWindow.fullScreen {
		height: 96vh;
		width: 96vw;
	}

	&.asWindow > .wHead {
		display: flex;
		flex-direction: row;
		align-items: center;
		align-content: space-between;
		padding: 10px;
		font-weight: bold;
		-ms-user-select: none;
		-moz-user-select: none;
		-webkit-user-select: none;
		background-color: var(--color-main-01-norm-n);
		color: var(--color-main-01-cont-n);
	}

	&.asWindow > .wHead > .title {
		display: block;
		font-size: 1.8rem;
		flex: 1;
	}

	&.asWindow > .wHead > .close {
		display: inline-flex;
		align-items: center;
		justify-content: center;
		font-size: 1.6rem;
		height: 20px;
		width: 20px;
		border-radius: 3px;
		cursor: pointer;
		box-shadow: 1px 2px 5px 0 rgba(0, 0, 0, 0.30);
	}

	&.asWindow > .wHead > .close:hover {
		background-color: var(--color-main-01-norm-h);
	}

	&.asWindow > .wBody {
		flex: 1;
		max-height: 90vh;
		overflow-y: auto;
		margin: 1em;
	}

	&.asWindow > .wFoot {
		margin: 0 1em 1em;
	}

	&.asWindow > .wFoot:empty {
		display: none;
	}

	/* & */

	& {
		background-color: var(--color-main-00-norm-n);
		border: 2px solid var(--color-main-03-norm-n);
		color: var(--color-main-00-comp-n);
		padding: 20px;
		z-index: 1000;
	}

	&.fullScreen {
		width: calc(100vw - 100px);
		height: calc(100vh - 100px);
		overflow-y: auto;
	}

	&.window {
		border: 0;
		padding: 0;
	}

	&.noModal {
		z-index: 1;
		position: fixed;
		top: 50%;
		left: 50%;
		transform: translate(-50%, -50%);
	}

	&:not([open]) {
		display: none;
	}

	&::backdrop {
		background: rgba(0, 0, 0, 0.25);
	}
}