

/* vietnamese */
@font-face {
	font-family: 'Cabin';
	font-style: normal;
	font-weight: 400;
	font-display: swap;
	src: local('Cabin'), local('Cabin-Regular'), url(../fonts/Cabin-viet.woff2) format('woff2');
	unicode-range: U+0102-0103, U+0110-0111, U+1EA0-1EF9, U+20AB;
}
/* latin-ext */
@font-face {
	font-family: 'Cabin';
	font-style: normal;
	font-weight: 400;
	font-display: swap;
	src: local('Cabin'), local('Cabin-Regular'), url(../fonts/Cabin-latin-ext.woff2) format('woff2');
	unicode-range: U+0100-024F, U+0259, U+1E00-1EFF, U+2020, U+20A0-20AB, U+20AD-20CF, U+2113, U+2C60-2C7F, U+A720-A7FF;
}
/* latin */
@font-face {
	font-family: 'Cabin';
	font-style: normal;
	font-weight: 400;
	font-display: swap;
	src: local('Cabin'), local('Cabin-Regular'), url(../fonts/Cabin-latin.woff2) format('woff2');
	unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+2000-206F, U+2074, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
}

html {
	overflow-x: hidden;
}

body {
	font-family: 'Cabin', sans-serif;
	font-weight: bold;
	text-transform: uppercase;
	color: white;
	background-color: #2C3E50;
	padding: 0.5em;
}

.red {
	background-color: #E74C3C;
}

.yellow {
	background-color: #F1C40F;
}

.green {
	background-color: #2ECC71;
}

.blue {
	background-color: #3498DB;
}

.purple {
	background-color: #9B59B6;
}

.orange {
	background-color: #E67E22;
}

.red-dark {
	background-color: #9C3328;
}

.yellow-dark {
	background-color: #BF9C0C;
}

.green-dark {
	background-color: #239955;
}

.blue-dark {
	background-color: #2875A8;
}

.purple-dark, #mediaplayerControls {
	background-color: #6F4082;
}

.orange-dark {
	background-color: #995417;
}

.night-blue {
	background-color: #3A5169;
}

.grey {
	background-color: #95a5a6;
}

.grey-dark {
	background-color: #7f8c8d;
}

.block {
	margin: 0.5em;
	padding: 0.5em;
	cursor: pointer;
	position: relative;
}

.header {
	background-color: #3A5169;
	margin: -0.5em -0.5em 0.5em -1.3em;
	width: 100vw;
	height: 2.5em;
}

#back, #save {
	float: left;
	width: 2.5em;
	height: 2.5em;
	line-height: 2.5em;
	vertical-align: middle;
	text-align: center;
	cursor: pointer;
}

#save {
	position: absolute;
	top: 0;
	right: 0;
}

#saveImg {
	width: 1.3em;
	display: block;
	margin: 0.6em;
}

.header-content {
	padding-left: 2.5em;
	line-height: 2.5em;
	vertical-align: middle;
}

.header-error {
	background-color: #9C3328;
}

.modal {
	color: black;
}

#name {
	margin: 0.5em 0;
}

select {
	background-color: #3A5169;
	color: white;
	border: none;
	height: 2em;
	vertical-align: center;
	padding: 0 0.5em;
	margin-bottom: 0.5em;
}

input, button, .input-button {
	background-color: #3A5169;
	border: none;
	color: white;
	padding: 0.5em;
	width: 15em;
	display: block;
}

.button {
	cursor: pointer;
}

.cal-cell {
	position: relative;
	width: 3em;
	height: 3em;
	text-align: center;
	line-height: 3em;
	vertical-align: middle;
	cursor: pointer;
	padding: 0;
}

.cal-cont {
	display: table-cell;
	position: absolute;
	top: 0;
	width:100%;
	height: 100%;
	text-align: center;
	line-height: 3em;
	vertical-align: middle;
}

.cel-selected {
	background-color: #3A5169;
}

.dot {
	display: inline-block;
	float: left;
	top: 0.25em;
	width: 0.25em;
	height: 0.25em;
	margin-top: 0.25em;
	margin-left: 0.25em;
}

.dot-red {
	background-color: #e74c3c;
}

.dot-blue {
	background-color: #3498db;
}

.dot-green {
	background-color: #2ecc71;
}

.dot-yellow {
	background-color: #f39c12;
}

#input-block {
	display: none;
}

.input-button {
	margin: 0 0.25em 0.5em 0.25em;
	text-align: center;
	cursor: pointer;
}

.input-button-selected {
	background-color: #56789C;
}

#cyclesTable {
	max-width: 100%;
}

#cyclesTable > td, th {
	padding: 0.25em;
}

#cyclesTable > thead {
	border-bottom: 1px solid white
}
