* {
	box-sizing: border-box;
	padding: 0;
	margin: 0;
	touch-action: manipulation;
}

html {-webkit-text-size-adjust: 100%}

body {
	/*font: normal 13px verdana, sans-serif;*/
	font: normal 15px /*-apple-system, BlinkMacSystemFont, Roboto,*/ helvetica, arial, sans-serif;
	margin: 0;
	margin-bottom: 30px;
}

#test {position:fixed;font-size:100px;opacity:0.3;top:110px;left:50%;width:300px;margin-left:-150px;z-index:-1; text-align:center;color:#c00}
	
header,
main {
	width: 100%;
	max-width: 600px;
	margin: 0 auto;
}


header img {width: 100%}


main {padding: 0 }
form {padding: 0 5px}

main h1 {
	text-align: center;
	margin-top: 30px;
	margin-bottom: 5px;
	color: #666;
	font-size: 24px;
	font-weight: normal;
}


table {font: inherit; border-collapse: collapse; width: 100%; max-width: 100%}
table.services tr {cursor: pointer}
table tr:hover td {background-color: #f9f9f9}
th,
td {padding: 0 5px; vertical-align: top; white-space: nowrap}
th {
	text-align: left;
	font-weight: normal;
	color: #777;
	width: 10px;
	border-bottom: 1px solid #eee;
}
thead th {
	padding-top: 30px;
	padding-bottom: 10px;
}
td {
	border-bottom: 1px solid #eee;
	line-height: 30px;
	vertical-align: top;
	padding-right: 5px;
	transition: background-color 100ms;
}
th.link a {
	padding: 0;
	color: inherit;
	font-size: inherit;
}
th.link a:after {
	content: "▶";
	font-size: 70%;
	color: #ccc;
	margin-left: 3px;
}

table.services thead th {font-size: 20px; text-align: center}
td span {color: #999; font-size: 70%; text-transform: uppercase}
p.old, p.new {text-align: right; margin-top: 5px}
tr.old td {color: #999}
tr.deputy td {color: #45b}
a.list-type {float: left}
a {font-size: 12px; padding: 3px; color: #ccc; text-decoration: none; transition: color 300ms}
a:hover {color: #666}

h1.main {display: none}
.overview {
	margin-bottom: 16px;
	white-space: nowrap;
	line-height: 16px;
	padding: 0;
	font-size: 12px;
}
.overview td {line-height: inherit}
.overview tbody tr:hover td {background-color: transparent}
.overview thead th {
	font-weight: bold;
	background: #eee;
	padding: 1px 3px;
	color: #222;
	border: 0;
	cursor: pointer;
	min-width: 75px;
}
.overview thead .deputy th {background: #def}
.overview thead .sunday th {color: #b00}
.overview thead span {color: #777}
.overview thead th:last-child {width: auto}
.overview tbody th {font-size: 10px; width: 75px; padding: 0 3px}
.overview tbody td {padding: 0 3px}

label b {
	display: inline-block;
	position: relative;
	font-weight: normal;
	background-color: #ddd;
	padding: 2px 4px;
	border-radius: 3px;
	margin: 1px 5px 1px 0;
	white-space: nowrap;
}
label b:last-child {margin-left: 0}

label b:hover del {opacity: 1}
label b h1 {
	font: inherit;
	margin: 0;
	display: inline-block;
}


label,
button,
header,
input:not([type=password]) {
	-webkit-user-select: none;
	-moz-user-select: none;
	-ms-user-select: none;
	user-select: none;
}

label {width: 100%; display: block}
label span {display: inline-block; width: 100px}
input, select, textarea, label div {
	font: inherit;
	border: 1px solid #ddd;
	border-radius: 5px;
	padding: 5px;
	margin: 0;
	margin-top: 5px;
	-webkit-appearance: none;
}
input, select {height: 30px; width: calc(100% - 100px)}
label div {
	min-height: 30px;
	width: calc(100% - 100px);
	padding: 3px;
	display: inline-block;
}
textarea {
	height: 75px;
	min-height: 50px;
	width: 100%;
	min-width: 100%;
	max-width: 100%;
}
input[name=name] {width: calc(100% - 130px)}
#select-song {width: calc(100% - 130px)}
#login {margin-top: 90px}
#login p {text-align: center}
#login input {width: 200px}

#quick,
#add-song {width: 25px; margin-left: 5px; padding-left: 6px}

button {
	font: inherit;
	border: 1px solid #999;
	padding: 7px 15px;
	border-radius: 6px;
	cursor: pointer;
	margin: 5px;
}
button:hover {background-color: #ddd}

#save,
#cancel {float: right}


@media (prefers-color-scheme: dark) {
	section h1 {color: #ddd}
	section h2 {color: #aaa}
	section p {color: #bbb}
	body {background: #333; color: #ccc; border-color: #666}
	section div {background: #555}
	section div p {color: #eee}
	table td,
	table tr:first-child td,
	table thead th,
	.overview tbody th {border-color: #444}
	.overview thead .deputy th {background: #444; color: #ddd}
	table tr:hover td {background-color: #373737}
	table.overview thead th {background: #222; color: #bbb;}
	input, select, textarea, label div {background-color: #222; border-color: #444; color: #eee}
	button {background-color: #222; color: #666; border-color: #444}
	button:hover {background-color: #000; color: #999}
	a {color: #666}
	a:hover {color: #aaa}
}

@media only screen and (min-width: 601px) {
	label b del {
		position: absolute;
		top: -3px;
		right: -3px;
		display: block;
		width: 10px;
		height: 10px;
		font-size: 8px;
		line-height: 1;
		text-align: center;
		text-decoration: none;
		opacity: 0;
		transition: opacity 200ms;
	}
}

@media only screen and (max-width: 600px) {
	body {margin-top: 90px}
	header {
		position: fixed;
		top: 0;
		overflow: hidden;
		max-height: 75px;
	}
	label b del {
		display: inline;
		font-size: 12px;
		line-height: 12px;
		padding-left: 3px;
		text-decoration: none;
		opacity: 0.6;
	}
	a {font-size: 16px; padding: 5px; color: #999}
	.overview {font-size: 14px; line-height: 25px}
	.overview tbody th {font-size: 13px}
	
}

@media print {
	header {display: none}
	h1.main {display: block; margin: 0}
}