textarea {
   font-family: inherit;
   font-size: inherit;
}

td, th, p, div, li, input, label, textarea {
	font-family: Verdana, Arial, Helvetica, sans-serif;
	font-size: 12pt;
	font-weight: normal;
	color: #3F4652;
}

.headline {
	font-weight: bold;
	color: #2F3192;
}

.stornoheadline {
	font-family: Verdana, Arial, Helvetica, sans-serif;
	font-size: 18px;
	line-height: 1.6;
	font-weight: normal;
	color: #3F4652;
	text-decoration: none;
	text-align: center;
}

/* Meldungsfenster in Fenstermitte */
#meldung {
	font-size: 24pt;
	color: #ffffff;
	opacity: 0.95;
	background-color: #2F3192;
	position: absolute;
	z-index: 100;
	left: 0;
	width: 100%;
	top: 0;
	height: 100%;
	padding: 100px;
	display: none;
}

a { text-decoration: none; }
a:link, a:visited { color: inherit; }
a:hover, a:active { color: inherit; cursor: pointer; }

.transparent_button {
	color: inherit;
	font-family: inherit;
	line-height: inherit;
	font-size: inherit;
	font-weight: inherit;
	border: none;
	background-color: transparent;
	cursor: pointer;
	width: 100%;
}

.transparent_button_normal_width {
	color: inherit;
	font-family: inherit;
	line-height: inherit;
	font-size: inherit;
	font-weight: inherit;
	border: none;
	background-color: transparent;
	cursor: pointer;
}

TABLE { border-collapse: collapse; }
fieldset { border: 0; margin: 0; padding: 2px; }

body {
	color: #3F4652;
	background-color: transparent;
	margin: 0;
}

#container { }

#inputcontrolscontainer { }

.inputBox {
	width: 98%;
	font-size: 12pt;
	line-height: 12px;
	border: 1px solid #C9D3DF;
	margin: 0;
	background-color: #ffffff;
	color: #3F4652;
}

.inputBox:focus,
.standardselect:focus,
textarea:focus {
	outline: none;
	border: 1px solid #5A9BD5;
	box-shadow: 0 0 0 2px rgba(90, 155, 213, 0.20);
}

#tbNotiz { height: 60px; }

.standardselect {
	font-size: 12pt;
	border: 1px solid #C9D3DF;
	background-color: #ffffff;
	color: #3F4652;
}

#progress_bar_table { width: 100%; }

.progress_bar {
	background-color: #E9EEF5;
}

.progress_bar td,
.progress_bar th {
	padding: 5px;
}

.progress_bar_2nd_row td {
	vertical-align: text-top;
}

.selecteditem {
	background-color: #2F3192;
	color: #ffffff;
	font-weight: bold;
}

#progress_bar th:hover {
	background: #5A9BD5;
	color: #ffffff;
}

.resource_list {
	list-style: none;
	margin: 0;
	padding: 0;
}

.resource_list li {
	border: 0;
	margin: 0 10px 3px 0;
	padding: 5px;
	text-align: left;
	cursor: pointer;
}

.resource_list_item {
	background-color: #E9EEF5;
	color: #2F3192;
}

.resource_list_item:hover {
	background: #5A9BD5;
	color: #ffffff;
}

.resource_list_selecteditem {
	background-color: #2F3192;
	color: #ffffff;
	font-weight: bold;
}

.resource_list_emptyitem {
	background-color: #FFFFFF;
}

.resource_list_headeritem {
	width: 100%;
	background-color: #FFFFFF;
	padding: 3px;
	font-weight: bold;
	text-align: left;
	color: #2F3192;
}

.resource_list_picture_item {
	background-color: #EEF4FA;
	margin-right: 10px;
	padding: 10px;
	text-align: center;
	cursor: pointer;
	border: 1px solid #D7E2EF;
}

.resource_list_selected_picture_item {
	background-color: #2F3192;
	color: #FFFFFF;
	margin-right: 10px;
	padding: 10px;
	text-align: center;
	cursor: pointer;
}

.resource_list img {
	height: 150px;
}

#singleresourceheader { }

.termintable {
	background-color: #FFFFFF;
	width: 100%;
}

.termintable td {
	width: 40px;
	height: 30px;
	border: 1px solid #D9E1EA;
	text-align: center;
}

.termintable th {
	height: 15px;
	line-height: 15px;
	border: 0;
	background-color: #2F3192;
	color: #FFFFFF;
	font-weight: bold;
	text-align: center;
}

.termintable a {
	font-weight: bold;
	color: #FFFFFF;
}

.th1 { }
.th2 { }
.month_step_button { }

.sc {
	background-color: #E8EDF2;
	color: #9AA5B1;
}

.availableday {
	background-color: #5A9BD5;
	color: #FFFFFF;
	cursor: pointer;
	font-weight: bold;
}

.availableday:hover {
	background-color: #2F3192;
}

.availabletime {
	background-color: #2F3192;
	color: #FFFFFF;
	font-weight: bold;
	padding: 6px 10px;
	margin-bottom: 6px;
	white-space: nowrap;
	display: inline-block;
	border-radius: 4px;
}

.availabletime:hover {
	background-color: #5A9BD5;
}

#selectedday {
	outline: 3px solid #5A9BD5;
	font-weight: bold;
	background-color: #EEF4FA;
	color: #2F3192;
}

.footer {
	color: #8A93A3;
	font-size: 6pt;
}

/* -------------------- */
/* Storno-Seite Styling */
/* -------------------- */

body.storno-page {
	background: #EEF4FA;
	margin: 0;
	padding: 40px 20px;
}

.storno-wrapper {
	max-width: 760px;
	margin: 0 auto;
}

.storno-card {
	background: #ffffff;
	border: 1px solid #D7E2EF;
	border-radius: 14px;
	box-shadow: 0 10px 30px rgba(47, 49, 146, 0.08);
	padding: 34px 28px;
}

.storno-logo {
	text-align: center;
	margin-bottom: 22px;
}

.storno-logo img {
	max-width: 360px;
	width: 100%;
	height: auto;
}

.storno-title {
	text-align: center;
	font-size: 28px;
	font-weight: bold;
	color: #2F3192;
	margin: 0 0 14px 0;
}

.storno-subtitle {
	text-align: center;
	font-size: 16px;
	color: #5A6472;
	margin: 0 0 24px 0;
}

.storno-message {
	text-align: center;
	font-size: 18px;
	line-height: 1.7;
	color: #3F4652;
	margin: 0;
}

.storno-message strong {
	color: #2F3192;
}

.storno-appointment {
	margin: 18px auto 24px auto;
	padding: 14px 18px;
	max-width: 420px;
	background: #EEF4FA;
	border: 1px solid #D7E2EF;
	border-radius: 8px;
	text-align: center;
	font-size: 18px;
	font-weight: bold;
	color: #2F3192;
}

.storno-actions {
	text-align: center;
	margin-top: 24px;
}

.storno-button,
.stornoheadline input[type="submit"] {
	display: inline-block;
	background: #2F3192;
	color: #FFFFFF;
	border: 0;
	border-radius: 8px;
	padding: 14px 28px;
	font-size: 16px;
	font-weight: bold;
	cursor: pointer;
	transition: background-color 0.2s ease-in-out, transform 0.1s ease-in-out;
	-webkit-appearance: none;
	appearance: none;
}

.storno-button:hover,
.stornoheadline input[type="submit"]:hover {
	background: #5A9BD5;
	transform: translateY(-1px);
}

.storno-note {
	margin-top: 24px;
	text-align: center;
	font-size: 14px;
	line-height: 1.6;
	color: #6B7480;
}

.storno-box-ok,
.storno-box-error,
.storno-box-info {
	margin: 0 auto;
	max-width: 560px;
	padding: 18px 20px;
	border-radius: 10px;
	text-align: center;
	line-height: 1.7;
	font-size: 17px;
}

.storno-box-ok {
	background: #EEF7F1;
	border: 1px solid #B8D9C0;
	color: #245B35;
}

.storno-box-error {
	background: #FFF1F1;
	border: 1px solid #E6B8B8;
	color: #8E2E2E;
}

.storno-box-info {
	background: #EEF4FA;
	border: 1px solid #D7E2EF;
	color: #3F4652;
}

.storno-host {
	font-size: 14px;
	color: #7B8492;
	margin-bottom: 18px;
	text-align: center;
	word-break: break-word;
}

.storno-divider {
	height: 1px;
	background: #E4EAF2;
	margin: 24px 0;
	border: 0;
}

@media (max-width: 640px) {
	body.storno-page {
		padding: 20px 12px;
	}

	.storno-card {
		padding: 24px 18px;
	}

	.storno-title {
		font-size: 24px;
	}

	.storno-subtitle,
	.storno-message,
	.storno-appointment,
	.storno-box-ok,
	.storno-box-error,
	.storno-box-info {
		font-size: 16px;
	}
}