.body {
	position: absolute;
	width: 100%;
	height: calc(100% - 20px);
	margin: 0;
	padding: 0;
	font-size: 0;
}

.disable-select {
	-webkit-user-select: none;
	-moz-user-select: none;
	-ms-user-select: none;
	user-select: none;
}

.file-size-remaining {
	float: right;
	font-style: italic;
	color: #AAAAAA;
	border-bottom: 2px dashed #AAAAAA;
	margin-right: 5px;
}

.menu-item {
	padding: 5px 10px;
	cursor: pointer;
	text-decoration: underline;
	color: #FFFFFF;
}

.menu-item:hover {
	background-color: #1212AA;
}

.submenu {
	position: absolute;
	font-size: 16px;
	min-width: 150px;
	background-color: #141414;
	padding: 0px;
	margin: 0;
	border: 2px solid white;
}

.submenu .submenu-item  {
	cursor: pointer;
	padding: 5px 10px;
	color: white;
}

.subitem-title {
	padding-right: 10px;
}

.shortcut {
	float: right;
}

.submenu .submenu-item:hover {
	background-color: #1212AA;
	color: #FFFFFF;
}

.files {
	display: inline-block;
	width: 375px;
	min-width: 300px;
	background-color: #202020;
	height: 100%;
	font-size: 16px;
	padding: 0;
}

.file-viewer {
	display: block;
	width: 100%;
	height: calc(100% - 55px);
	overflow-y: auto;
	overflow-x: hidden;
}

.file-viewer ul, .dragFile ul {
	padding-left: 0;
	margin: 0;
}

.file-viewer li {
	border-top: 1px solid rgba(0, 0, 0, 0);
	border-bottom: 1px solid rgba(0, 0, 0, 0);
}

.viewer-focused li.last-selected-file {
	border-top: 1px solid rgba(255, 255, 255);
	border-bottom: 1px solid rgba(255, 255, 255);
}

.file-viewer li, .dragFile li {
	list-style-type: none;
	cursor: default;
	white-space: nowrap;
}

.file-viewer li.selected-file, .dragFile li.selected-file {
	background-color: #1212AA;
}

.file-viewer li.last-selected-file, .dragFile li.last-selected-file {
	background-color: #2424AA;
}

.file-viewer li.inactive-file, .dragFile li.inactive-file {
	color: #684040;
}

.file-viewer li.someactive-file, .dragFile li.someactive-file {
	color: #888888;
}

.file-viewer li.active-file, .dragFile li.active-file {
	color: #FFFFFF;
}

.file-viewer li.drag-over-folder, .file-viewer ul.drag-over-folder li {
	background-color: #242466;
}

.file-viewer li > div {
	display: flex;
	justify-content: space-between;
}

.file-viewer li div.file-title {
	display: inline-block;
}

.file-viewer .file-size {
	float: right;
	margin-left: 10px;
	margin-right: 5px;
}

.resize {
	display: inline-block;
	width: 6px;
	cursor: e-resize;
	height: 100%;
	vertical-align: top;
}

.resize div {
	background-color: #AAAAAA;
	width: 4px;
	margin-left: 1px;
	height: 100%;
}

.main-editor-tabs {
	width: 100%;
	min-height: 30px;
	margin: 0;
	padding: 0;
	background-color: #393939;
}

.main-editor-tabs div {
	display: inline-flex;
	justify-content: space-between;
	padding: 0 0 0 10px;
	width: 240px;
	font-size: 16px;
	margin: 0 1px 0 0;
	cursor: pointer;
	line-height: 28px;
	height: 30px;
	white-space: nowrap;
}

.main-editor-tabs span {
	color: #fefefe
}

.main-editor-tabs input[type="button"] {
	padding: 0;
	margin-top: 0;
	font-size: 16px;
	text-shadow: none;
	border: none;
	background-color: rgb(85, 85, 85);
}

.main-editor-tabs input[type="button"]:hover {
	background-color: #acacac;
}

.main-editor-tabs .close-button {
	height: 30px;
}

.main-editor-tabs input[type="button"].btn-retro {
	margin-top: 0;
}

.main-editor-tabs div.selected-tab {
	background-color: #202020;
}

.popup-overlay {
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	background-color: #2424AA55;
}

.popup {
	position: absolute;
	font-size: 16px;
	top: calc(50% - 100px);
	left: 50%;
	transform: translate(-50%, -50%);
	background-color: #393939;
	line-height: 30px;
}

.popup input[type="text"],
.popup input[type="number"],
.popup select {
	color: black;
	padding: 5px 10px;
}

.popup input[type="text"]:disabled,
.popup input[type="number"]:disabled {
	cursor: not-allowed;
}

.popup > div {
	padding: 5px 20px;
}

.popup div {
	color: white;
}

.popup span,
.popup label {
	color: white;
}

.popup-title {
	padding-bottom: 15px;
	background-color: #555555;
	display: flex;
	justify-content: space-between;
	color: white;
}

.popup-title .popup-close {
	float: right;
	padding: 0px;
}

.popup-footer {
	padding: 10px;
	float: right;
}

.popup .btn-check.unchecked::after {
	content: "[ ]";
	color: #888888;
}

.popup label {
	cursor: pointer;
}

.button {
	background-color: #555555;
	border: none;
	color: #FFFFFF;
	padding: 5px 8px;
	text-align: center;
	text-decoration: none;
	display: inline-block;
	border-radius: 5px;
	margin-left: 5px;
	width: 58px;
}

.button-wide {
	width: 180px;
}

.button:hover {
	background-color: #AAAAAA;
}

.button:disabled {
	background-color: #393939;
}

.close-button {
	font-size: 20px;
	color: #FF1212;
	background-color: #00000000;
	border: none;
	width: 28px;
	height: 28px;
	padding: 0;
	cursor: pointer;
	transition-duration: 0.5s;
	margin-left: 5px;
}

.close-button:hover {
	background-color: #000000;
}

.new-file-popup p, .project-settings-popup p {
	padding: 5px;
	margin: 0;
}

.new-file-popup span {
	display: inline-block;
	width: 120px;
}

.project-settings-popup span {
	display: inline-block;
	width: 165px;
}

#new-file-extension {
	width: auto;
}

#new-file-name {
	width: 330px;
}

.new-file-popup select {
	width: 385px;
}

select, input, button {
	font-family: "IBM Plex Mono", monospace;
	font-size: 16px;
}

.new-file-popup input {
	width: 330px;
}

#new-file-message {
	background-color: #202020;
}

.msg-error {
	color: #FF1212;
}

.msg-success {
	color: #00AA00;
}

#dragOverPopup {
	font-size: 16px;
	position: absolute;
	left: 0;
	top: 0;
	width: 100%;
	height: 100%;
	background-color: #2424AA88;
	display: none;
}

#dragOverPopup div {
	width: 94%;
	height: 94%;
	border: 4px dashed #AAAAAA;
	position: absolute;
	left: 2.5%;
	top: 2.5%;
}

#dragOverPopup h1 {
	text-align: center;
	color: #AAAAAA;
	margin-top: calc(50% - 64px);
	font-size: 64px;
	line-height: 64px;
}

.main-audio-viewer {
	padding: 15px;
}

.btn-check {
	background: none;
	border: none;
	cursor: pointer;
	margin-right: 5px;
	padding: 0;
	font-weight: normal;
	text-shadow: none;
}

.btn-check::after {
	/*content: "[●]";*/
	content: "[.]";
	color: #888888;
}

.btn-check.checked::after {
	/*content: "[✓]";*/
	content: "[X]";
	color: #88FF88;
}

.btn-check.unchecked::after {
	content: "[ ]";
	color: #684040;
}

body .dragFile {
	background-color: #353535;
	position: absolute;
	cursor: move;
	overflow: hidden;
	z-index: 999;
	/*width: 50px;
	height: 50px;*/
	text-align: center;
	padding: 5px;
	border: 3px dashed #888888;
}

#contextMenu {
	position: absolute;
	color: white;
	background-color: #343434;
	cursor: default;
	font-size: 16px;
}

#contextMenu ul {
	padding: 5px 0;
	margin: 0;
}

#contextMenu li {
	list-style: none;
}

#contextMenu li input[type='button'] {
	cursor: pointer;
	width: 100%;
	background: none;
	color: white;
	padding: 4px 35px;
	border: none;
	text-align: left;
	font-weight: normal;
	font-size: 16px;
}

#contextMenu li input[type='button']:hover {
	background-color: #2424AA;
}

#contextMenu li input[type='button']:disabled {
	opacity: 0.25;
}
