nujw-window {
	position: absolute;
	display: flex;
	flex-flow: column;
	background: #f9f9f9;
	filter: drop-shadow(0px 1px 3px #9e9e9e);
	overflow: hidden;
	border-radius: 3px;
	pointer-events: all;
	color: #000;
	
	--NUJWFontFamily: "Segoe UI", "Tahoma", "Calibri", "Arial";
}

nujw-document {
	width: 100%;
	height: 100%;
	overflow: auto;
	display: flex;
	flex-flow: column;
}

nujw-document, nujw-document * {
	font-family: var(--NUJWFontFamily);
	font-size: 14px;
}

nujw-titlebar {
	display: flex;
	justify-content: space-between;
	overflow: hidden;
	user-select: none;
	min-height: 32px;
	height: 32px;
	outline: 1px solid #d2d2d2;
	background: #e9e9e9;
}

nujw-title {
	align-self: center;
	padding-left: 5px;
	flex-grow: 1;
	height: 100%;
	display: flex;
	align-items: center;
	font-family: var(--NUJWFontFamily);
	font-size: 16px;
	text-wrap: none;
}

nujw-controls {
	display: flex;
}

nujw-minimize, nujw-maximize, nujw-close {
	display: flex;
	width: 32px;
	height: 32px;
	background: no-repeat url("../resources/NUJW/controls.png");
	transition: background-color 200ms;
}

nujw-window.darkWindow {
	background-color: #161616;
	filter: drop-shadow(0px 1px 3px #000);
	color: #fff;
}

nujw-window.darkWindow > nujw-titlebar {
	background-color: #363636;
	outline: 1px solid #383838;
}

nujw-window.darkWindow nujw-minimize {
	background-position-x: -192px;
}

nujw-window.darkWindow nujw-maximize {
	background-position-x: -160px;
}

nujw-window.darkWindow nujw-close {
	background-position-x: -128px;
}

nujw-minimize {
	background-position-x: -64px;
}

nujw-maximize {
	background-position-x: -32px;
}

nujw-close {
	background-position-x: 0px;
}

nujw-minimize:hover, nujw-maximize:hover {
	background-color: #d4d4d4;
}

nujw-window.darkWindow nujw-minimize:hover,
nujw-window.darkWindow nujw-maximize:hover {
	background-color: #525252;
}

nujw-window:not([resize]) nujw-maximize {
	cursor: not-allowed;
	background-color: unset;
}

nujw-window:not([resize]) nujw-maximize:hover {
	background-color: unset;
}

nujw-close:hover {
	background-color: red;
	background-position-x: -128px;
}