body {
	font-family: Arial, sans-serif;
	background-color: #f4f4f9;
	margin: 0;
	padding: 0;
	color: #333;
}

header {
	background-color: #333;
	color: white;
	text-align: center;
	padding: 20px;
}

main {
	max-width: 600px;
	margin: 20px auto;
	padding: 20px;
	background-color: white;
	border-radius: 8px;
	box-shadow: 0 4px 8px rgba(0, 0, 0, 0.1);
}

form {
	display: flex;
	flex-direction: column;
}

label {
	margin-bottom: 8px;
	font-weight: bold;
}

input, textarea {
	padding: 10px;
	margin-bottom: 20px;
	border: 1px solid #ddd;
	border-radius: 4px;
	font-size: 16px;
}

button {
	padding: 10px;
	background-color: #333;
	color: white;
	border: none;
	border-radius: 4px;
	cursor: pointer;
	font-size: 16px;
}

button:hover {
	background-color: #555;
}

footer {
	text-align: center;
	padding: 10px;
	background-color: #333;
	color: white;
	position: fixed;
	width: 100%;
	bottom: 0;
}

.chord {
	font-family: 'gfont' !important;
	font-size: 28pt;
	display: inline-block;
	position: relative;
	background-color: white;
	color: black;
	margin: 12px;
	font-weight: normal;
	text-indent: 0px;
	padding: 7px;
	width: fit-content;
	align-self: center;
	user-select: text;
	-webkit-user-select: text; /* For Safari */
	-moz-user-select: text; /* For Firefox */
	-ms-user-select: text; /* For IE/Edge */
	text-align: left;
	white-space-collapse: preserve;
}

div.chord::first-line {
	
}

div.chord span {
	max-width: 100%;
	text-indent: -4px;
	padding: revert;
	align-content: start;
}

.chordholder {
	font-size: 20pt;
	display: inline-block;
	margin: 12px;
	font-weight: normal;
	text-indent: 0px;
	padding: 7px;
	align-self: center;
}

div.chordholder span {
	
}

div.chordholder div.ch {
	display: inline-block;
}

div.maindiv h3 {
	margin: 20px;
	background: linear-gradient(to bottom, rgba(246, 240, 241, 1) 0%,
		rgb(0, 60, 111) 100%);
	padding: 10px 50px;
	text-shadow: #000000 0px 0px 6px, #0000ff 1px 2px 3px, #000000 2px 2px
		2px, #58A -5px -1px 3px, #1831b1 -5px -2px 3px;
	border-radius: 13px;
	width: max-content;
	white-space: nowrap;
	align-self: center;
}

div.maindiv h3 span {
	text-indent: 0px;
}

div.ch.ui-selected {
	background-color: blue;
}

.ui-selectable-helper {
	display: none;
}

.displaybox {
	font-family: 'gfont' !important;
	font-size: 28pt;
	justify-self: center;
	width: fit-content;
	background: #ccdcef url(images/ui-bg_glass_75_e6e6e6_1x400.png) 50% 50%
		repeat-x;
	padding: 10px;
	border-radius: 25px;
	margin: 0px 5px 0px 5px;
}

div.cbuilder button {
	background: linear-gradient(to bottom, rgba(246, 240, 241, 1) 0%,
		rgb(0, 123, 227) 100%);
	padding: 0px 5px 10px 5px;
	text-shadow: #000000 0px 0px 6px, #3d3dcb 1px 2px 3px, #000000 2px 2px
		2px, #58A -5px -1px 3px, #1831b1 -3px 4px 3px;
	border-radius: 9px;
	color: white;
	margin: 0px 3px;
	align-self: center;
	/* justify-content: center; */
	align-content: center;
	display: block;
	font-size: 1em;
	font-family: gfont;
	font-size: 28pt;
	vertical-align: middle;
	text-align: center;
}

span.cbuilder {
	color: white;
}

div.rootnotes {
	display: inline-flex;
	align-content: center;
	justify-content: flex-start;
	align-items: center;
	flex-direction: row;
	flex-wrap: nowrap;
	padding: 5px;
}

div.cbuilder {
	display: flex;
	align-content: center;
	justify-content: center;
	align-items: stretch;
	flex-direction: column;
	width: fit-content;
	margin: auto;
}

.cbuilder span {
	color: white;
	padding: 3px 3px 3px 3px;
	display: block;
	font-weight: normal;
	margin: 7px;
	text-align: start;
	text-indent: 10px;
	font-size: 20pt;
	flex-grow: 0.2;
}

div.cbuilder button.selected {
	background: linear-gradient(to bottom, rgb(211 214 223) 0%,
		rgb(68, 223, 188) 86%);
	text-shadow: #000000 -1px -1px 2px, #b5b5f5 2px 4px 6px, #000000 3px 3px
		1px, #000000 3px 0px 4px, #000000 -3px 1px 5px, #6ea1c3 -5px -1px 3px,
		#b2bae3 -3px 3px 0px;
}

li.fretmark {
	background: #c6c6c6 url(images/ui-bg_glass_75_e6e6e6_1x400.png) 50% 50%
		repeat-x;
}

.guidebox td.marker {
	background-color: #8d93a7;
	border: 0px solid;
	color: floralwhite;
	text-shadow: #4e4e7b -2px 0px 4px, #000000 1px 1px 1px, #6d7479 -5px
		-1px 3px, #9ea3b9 -3px 3px 0px;
}

div.cbuilder button.chordtype {
	font-size: 18pt;
	padding: 2px 9px;
	font-family: 'Proxima Nova', sans-serif;
	margin: 0px 5px;
}

div.cbuilder button.scaletype {
	font-size: 18pt;
	padding: 2px 9px;
	font-family: 'Proxima Nova', sans-serif;
	margin: 0px 5px;
}

div.chtypes {
	display: inline-flex;
	align-content: center;
	justify-content: flex-start;
	align-items: center;
	flex-direction: row;
	flex-wrap: nowrap;
	padding: 5px;
}

div.scales {
	display: inline-flex;
	align-content: center;
	justify-content: flex-start;
	align-items: center;
	flex-direction: row;
	flex-wrap: nowrap;
	padding: 5px;
}

div.desc div {
	display: inline-flex;
	padding: 5px;
	color: white;
	font-size: 1em;
}

div.desc span {
	margin: 3px;
	text-align: center;
	font-weight: 700;
}

div.desc span p {
	display: inline-block;
	font-size: smaller;
	text-shadow: #000001 -1px -1px 2px, #b5b5f5 0px 1px 1px, #000000 -3px
		1px 4px, #000000 -3px 1px 2px, #6ea1c3 -2px -1px 6px, #b2bae3 -1px 4px
		5px;
	margin: auto;
}

li.red {
	/*     color: #db3e3e;
    text-shadow: #000 -1px 0px 1px, #000 2px 0px 0px, #000 -1px -1px 0px, #000 1px -1px 0px; */
	color: #b3e0e5;
	text-shadow: #000 -1px 0px 2px, #000 2px 0px 0px, #000 -1px -1px 0px,
		#000 1px -1px 0px, #000 1px 2px 6px;
}

.scale {
	font-family: 'gfont' !important;
	font-size: 28pt;
	display: inline-flex;
	position: relative;
	color: black;
	font-weight: normal;
	text-indent: 0px;
	align-self: center;
	-webkit-user-select: text;
	-moz-user-select: text;
	-ms-user-select: text;
	white-space-collapse: preserve;
	flex-direction: row;
	flex-wrap: nowrap;
	align-content: center;
	justify-content: center;
	align-items: center;
}

.maindiv2 textarea {
	font-family: 'gfont', Console;
	font-size: 22pt;
	text-shadow: 1px 1px 0px #c0c0f3;
	font-kerning: none;
	cursor: cell;
	display: inline-block;
	vertical-align: middle;
	word-break: break-all;
	padding: 3px;
	box-sizing: border-box;
	margin: 5px 10px;
	width: 95%;
	white-space: nowrap;
	overflow-x: scroll;
	overflow-y: hidden;
	position-visibility: no-overflow;
}

.left {
	color: white;
	text-align: right;
	padding: 1em;
	display: block;
	position: relative;
	width: min-content;
}

.padded {
	color: white;
	text-align: right;
	padding: 1em;
	display: block;
	position: relative;
}

.maindiv {
	display: flex;
	width: 90%;
	color: white;
	flex-flow: column;
	font-family: 'lucida grande', tahoma, verdana, arial, sans-serif;
	padding: 2em;
	font-weight: bold;
	text-align: center;
}

.hold {
	display: flex;
	flex-direction: row;
	flex-wrap: nowrap;
	align-content: center;
	justify-content: center;
	align-items: center;
	margin-right: 1em;
}

div.maindiv2 span {
	color: white;
	justify-self: center;
	display: flex;
	flex-wrap: wrap;
	padding: 0.2em;
	text-align: center;
}

div.maindiv2 div.chordholder span {
	color: black;
	display: inline;
	text-align: initial;
	padding: 0px;
}

button.close {
	display: block;
	float: right;
	background-color: lightblue;
	color: black;
	background-image: url(images/cross.png);
	background-repeat: no-repeat;
	background-position: center;
	margin: 6px 6px 0px 0px;
	border: 1px solid;
	position: absolute;
	z-index: 22;
	right: -3px;
	top: -3px;
}

div.scaleouter {
	display: block;
	background-color: white;
	position: relative;
	padding: 0px 5px;
	margin: 5px;
	text-align: start;
}

@media ( width <= 1140px) {
	div.hold {
		flex-direction: column;
	}
	div.left {
		display: flex;
		flex-direction: row;
		padding: 0px 20px;
		margin: 0px 20px;
		width: 80%;
		justify-content: space-evenly;
		align-content: stretch;
		flex-wrap: wrap;
	}
	div.left p {
		white-space: nowrap;
		padding: 2px 20px;
		text-align: left;
		margin: auto;
	}
	div.hold div.left h3 {
		font-size: 1.5em;
		padding: 0px 10px;
	}
	div.padded {
		padding: 0px;
	}
}

@media ( width <= 1000px) {
	.displaybox {
		overflow-x: scroll;
		width: 96%;
		padding-bottom: 20px;
	}
}

@media ( width <= 840px) {
	span#info {
		display: block;
		text-align: center;
		width: 90%;
		margin-bottom: 10px;
	}
}

@media ( width <= 700px) {
	.maindiv {
		height: revert;
		display: flex;
	}
	div.rootnotes {
		flex-wrap: wrap;
	}
	div.chtypes {
		flex-wrap: wrap;
	}
	div.scales {
		flex-wrap: wrap;
	}
}

div.cbuilder span h5 {
	display: contents;
	font-weight: 100;
	font-size: 0.8em;
}

div.maindiv2 span.displayafter {
	color: white;
	justify-self: center;
	display: flex;
	flex-wrap: wrap;
	padding: 0.2em;
	text-align: center;
	margin-top: 10px;
}

div.left p {
	white-space: nowrap;
}