:root {
	--color--global: #333;
	--color--link: #333;
	--color--link-hover: #000;
	--color--error: #dd0000;
	--color--red-wine: rgba(100, 6, 42, 1);
	--color--red-wine-50: rgba(100, 6, 42, 0.5);
	--color--green-wine: rgba(0, 85, 0, 1);
	--color--gray-light: #e3e3e3;
	--color--gray-middle: #666;
	--font--size-standard: 14px;
}
#loader-wrapper {
    position: fixed;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background-color: rgba(255, 255, 255, 0.8);
	 display: none;
    flex-direction: column;
    justify-content: center;
    align-items: center;
    z-index: 1000;
}
#loader {
    border: 16px solid #f3f3f3;
    border-radius: 50%;
    border-top: 16px solid #3498db;
    width: 120px;
    height: 120px;
    animation: spin 2s linear infinite;
}
@keyframes spin {
    0% { transform: rotate(0deg); }
    100% { transform: rotate(360deg); }
}
tr.hint-explanations:hover {
	background-color: #f4f4f4;
}
td.hint-explanations {
	padding: 1px 0;
	line-height: 14px;
}
@media all and (max-width: 700px) {
	td.hint-explanations {
		padding: 3px 0;
		line-height: 14px;
	}
}
.xtra-hint {
	position: absolute;
	color: #fff;
	background-color: #005500;
	font-weight: bold;
	padding: 0 10px 10px 5px;
	font-size: 13px;
	z-index: 1;
}
.xtra-hint-header {
	font-size: 28px;
	color: #dd0000;
}
a.a-xtra-hint,
a.a-xtra-hint:visited {
	color: #fff;
}
a.a-xtra-hint:hover {
	color: #fff;
}
.show-on-touch-screen {
	display: none;
}
.to-top {
	display: none;
}
body.show_top .to-top {
	display: block;
	position: fixed;
	bottom: 30px;
	right: calc(50% - 500px - 55px);
	z-index: 1;
}
@media all and (max-width: 1120px) {
	body.show_top .to-top {
		right: 10px;
	}
}
body.show_top .to-top a,
body.show_top .to-top a:visited {
	text-decoration: none;
	font-size: 64px;
	color: #999;
}
body.show_top .to-top a:hover {
	text-decoration: none;
	color: var(--color--red-wine-50);
}
.content-wrapper {
	position: relative;
}
a, a:visited {
	color: var(--color--link);
}
a:hover {
	color: var(--color--link-hover);
	text-decoration: none;
}
label {
	display: block;
}
.standard {
	color: var(--color--global);
	font-size: var(--font--size-standard);
	font-weight: normal;
}
.hide-infos {
	margin: 0;
	padding: 4px 2px 4px 0;
	line-height: 13px;
}
.hide-infos,
.hide-infos a,
.hide-infos a:visited {
	font-size: 13px;
	color: #999;
	font-weight: normal;
}
.hide-infos a:hover {
	color: #000;
}
.tooltip {
	color: #fff;
	font-size: 14px;
}
.reload {
	position: absolute;
	left: 8px;
	top: -23px;
}
.reload .hint {
	display: inline-block;
	position: absolute;
	left: 22px;
	top: 5px;
	white-space: nowrap;
	font-size: 13px;
	color: #999;
}
.reload a,
.reload a:visited {
	text-decoration: none;
	font-size: 22px;
	color: var(--color--red-wine-50);
}
.reload a:hover .hint {
	text-decoration: none;
	color: #000;
}
.import-back {
	position: absolute;
	left: 8px;
	top: -23px;
}
.import-back .hint {
	display: inline-block;
	position: absolute;
	left: 35px;
	top: 5px;
	white-space: nowrap;
	font-size: 13px;
	color: #999;
}
.import-back a,
.import-back a:visited {
	text-decoration: none;
	font-size: 22px;
	color: var(--color--red-wine-50);
}
.import-back a:hover .hint {
	text-decoration: none;
	color: #000;
}
label[for=csvFile]:hover,
input#csvFile:hover,
.wrapper-csvFile:hover {
	background-color: var(--color--gray-light);
	cursor: pointer !important;
}
a.del,
a.del:visited {
	color: red;
}
a.delete,
span.delete {
	text-decoration: none;
	font-size: 18px;
	color: #999;
	position: absolute;
	right: 0;
}
a.delete {
	color: red !important;
}
a.delete,
.tooltip {
	white-space: nowrap !important;
}
.delete-hint {
	color: red !important;
	font-size: 18px;
	font-weight: normal;
}
a.etikett,
a.etikett:visited {
	text-decoration: none;
	color: #000;
	font-size: 16px;
	top: 0px;
	position: relative;
	margin-right: 18px;
}
.add-new {
	text-decoration: none;
	color: #000 !important;
	font-weight: bold;
	font-size: 24px;
	line-height: var(--font--size-standard);
	top: 4px;
	position: relative;
	margin-right: 5px;
}
.standard .add-new {
	margin-right: 0;
}
.show {
	text-decoration: none;
	color: #000 !important;
	font-weight: bold;
	margin: 0 5px;
}
.edit-hint {
	color: #000 !important;
	font-size: var(--font--size-standard);
	font-weight: bold;
	position: absolute;
	top: -3px;
	left: 0;
}
.edit--hint.sub {
	white-space: nowrap;
}
.show-hint {
	color: #000 !important;
	font-size: var(--font--size-standard);
	font-weight: bold;
	position: absolute;
	top: -3px;
	left: 0;
}
.add-new-hint {
	color: #000 !important;
	font-size: 20px;
	font-weight: bold;
}
.etikett-hint {
	color: #000 !important;
	font-size: 16px;
	font-weight: bold;
}
.list-table {
	display: table;
	width: 100%;
	border-collapse: collapse;
	position: relative;
}
@media (pointer: coarse) {
	.list-table {
		width: unset;
	}
}
.list-tr:hover {
	background-color: #dfdfdf !important;
}
.list-tr,
.list-tr.act {
	display: table-row;
	position: relative;
}
.list-td,
.list-td.name {
	display: table-cell;
	padding: 2px 0 2px 0;
}
.list-td.no-wrap {
	white-space: nowrap;
}
.list-td.name {
	font-weight: bold;
	vertical-align: top;
	padding-right: 5px;
}
.list-td.full-width {
	width: 100%;
}
.list-td.edit {
	padding: 10px 0;
}
.list-td.edit.name {
	padding-left: 5px;
	padding-right: 5px;
}
.list-tr.act {
	background-color: #ddf4dd !important;
}
.list-tr.de,
.list-td.no-wrap.de {
	background-color: #f4f4f4;
}
.list-tr.de .list-td-product {
	font-weight: bold;
}
.list-tr.other,
.list-td.no-wrap.other {
	background-color: #fefefd;
	color: #666;
}
.list-tr.other a,
.list-tr.other a:visited {
	color: #666;
}
.list-tr.other a:hover {
	color: #000;
}
.list-tr.other .list-td-product:before {
	content: '⇨ ';
	color: #ccc;
}
.list-table {
	border-bottom: 1px solid var(--color--gray-light);
}
.list-tr {
	border-top: 1px solid var(--color--gray-light);
}
.list-table.noborder {
	border: none;
}
.list-tr.noborder {
	border: none;
}
.list-td-id {
	display: table-cell;
	padding: 2px 0 2px 5px;
	line-height: 29px;
	width: 7%;
}
.list-td-lang {
	display: table-cell;
	padding: 2px 5px 2px 5px;
	width: 9%;
}
.list-td-product {
	display: table-cell;
	padding: 2px 5px 2px 0;
	width: 74%;
}
.list-td.no-wrap {
	width: 10%;
}
.header-sub {
	font-size: 18px;
	font-weight: bold;
	color: var(--color--red-wine);
	margin-top: 20px;
}
.header-sub.first {
	margin-top: 0;
}
input {
	width: 100%;
}
input#addtag,
input#addtag_aendern {
	width: unset;
}
input.submit {
	display: inline-block;
	width: unset;
	margin: 10px 0;
	padding: 5px 10px;
	color: var(--color--red-wine);
	cursor: pointer;
	white-space: normal;
}
.dummy-button {
	display: inline-block;
	width: unset;
	margin: 10px 0;
	padding: 5px 10px;
	color: var(--color--red-wine);
	border: 1px solid #8f8f9d;
	cursor: pointer;
	white-space: normal;
	border-radius: 5px;
	background-color: #e9e9ed;
}
input.deactivated {
	width: 100%;
	pointer-events: none;
	color: var(--color--red-wine);
}
select.change-deactivated,
input.change-deactivated {
	pointer-events: none;
	opacity: 0.5;
}
.wrapper-not-allowed {
	cursor: not-allowed;
}
textarea {
	width: 100%;
	height: 52px;
}
.success-output {
	display: inline-block;
	color: var(--color--green-wine) !important;
	position: absolute;
	top: -140px;
	left: 0;
	background-color: #fff;
	padding: 10px;
	border: 1px solid var(--color--green-wine);
	width: 100%;
	min-width: 320px;
	height: 120px;
	overflow: unset;
}
.error-output {
	display: inline-block;
	color: var(--color--error);
	position: absolute;
	top: -140px;
	left: 0;
	background-color: #fff;
	padding: 10px;
	border: 1px solid var(--color--error);
	width: 100%;
	min-width: 320px;
	height: 120px;
	overflow: unset;
}
@media all and (max-width: 500px) {
	.edit--hint.sub {
		margin-left: 12px;
	}
	.header-sub {
		margin-bottom: 20px;
	}
	.list-table {
		display: block;
		width: 100%;
	}
	.list-td {
		display: block;
		width: 100%;
	}
	.list-td-id {
		display: inline-block;
		padding: 2px 0 2px 5px;
		width: unset;
	}
	.list-td-id:after {
		content: ', ';
	}
	.list-td-lang {
		display: inline-block;
		padding: 2px 5px 2px 5px;
		width: unset;
	}
	.list-tr,
	.list-tr.act {
		width: 100%;
		display: inline-block;
		position: relative;
	}
	.list-td-product {
		display: block;
		width: 100%;
		padding: 2px 5px 2px 5px;
		width: unset;
	}
	.delete {
		position: absolute !important;
		top: 0px !important;
		right: 5px !important;
	}
	.etikett {
		position: absolute !important;
		top: 0px !important;
		right: 12px;
	}
	.add-new {
		position: absolute;
		right: 52px;
	}
	.show {
		position: absolute;
		top: 0;
		right: 82px;
	}
	.standard .add-new {
		position: relative;
		top: 4px;
		right: unset;
	}
	textarea {
		height: 80px;
	}
}
#base_wine_id + span,
#lang + span,
#name_wine + span,
#bottler + span,
#quality + span,
#apn + span,
#vol + span,
#liter + span,
#ingredients + span,
#div100ml_calorific + span,
#div100ml_carbohydrates + span,
#div100ml_sugar + span,
#div100ml_additionals + span,
#base_wine_id_aendern + span,
#lang_aendern + span,
#name_wine_aendern + span,
#bottler_aendern + span,
#quality_aendern + span,
#apn_aendern + span,
#vol_aendern + span,
#liter_aendern + span,
#ingredients_aendern + span,
#div100ml_calorific_aendern + span,
#div100ml_carbohydrates_aendern + span,
#div100ml_sugar_aendern + span,
#div100ml_additionals_aendern + span{
	color: var(--color--gray-middle);
	font-size: 13px;
	margin-top: 5px;
	display: block;
}
#base_wine_id:focus + span,
#lang:focus + span,
#name_wine:focus + span,
#bottler:focus + span,
#quality:focus + span,
#apn:focus + span,
#vol:focus + span,
#liter:focus + span,
#ingredients:focus + span,
#div100ml_calorific:focus + span,
#div100ml_carbohydrates:focus + span,
#div100ml_sugar:focus + span,
#div100ml_additionals:focus + span,
#base_wine_id_aendern:focus + span,
#lang_aendern:focus + span,
#name_wine_aendern:focus + span,
#bottler_aendern:focus + span,
#quality_aendern:focus + span,
#apn_aendern:focus + span,
#vol_aendern:focus + span,
#liter_aendern:focus + span,
#ingredients_aendern:focus + span,
#div100ml_calorific_aendern:focus + span,
#div100ml_carbohydrates_aendern:focus + span,
#div100ml_sugar_aendern:focus + span,
#div100ml_additionals_aendern:focus + span{
	color: var(--color--red-wine);
}
.produktliste {
	margin: 0 0 0 1px;
}
.produktliste a {
	margin-left: 2px;
}
.produktliste .icon {
	
}
.backup .icon {
	
}
body {
	font-family: Arial, Helvetica, sans-serif;
	font-size: 14px;
	margin: 0;
	padding: 0;
	background-color: #F7F5E9;
	color: #333;
}
input, textarea {
	font-family: Arial, Helvetica, sans-serif;
	font-size: 14px;
}
* {
	box-sizing: border-box;
}
.header {
	background: #005500 url("logo.png") no-repeat center top;
	margin: 0;
	padding: 0;
	height: 120px;
}
.content-wrapper {
	max-width: 1000px;
	margin: 0 auto;
	padding: 10px;
	margin-top: 20px;
	margin-bottom: 20px;
	background-color: rgba(255, 255, 255, 0.9);
}
.footer {
	max-width: 1000px;
	margin: 0 auto;
	padding: 0 10px;
	margin-bottom: 20px;
	text-align: center;
}
.footer a,
.footer a:visited {
	color: #333;
}
.footer a:hover {
	text-decoration: none;
}

/* Tel-Links nur in Smartphones anzeigen: */
.footer a[href^="tel"]:link,
.footer a[href^="tel"]:visited, 
.footer a[href^="tel"]:hover {
	text-decoration: none;
	color: #333;
}
.footer a[href^="tel"]:hover {
	cursor: text !important;
	color: #333;
}
.footer-hint {
	color: var(--color--gray-middle);
	margin: 20px 0 0 0;
}
@media (pointer: coarse) {
	.footer a[href^="tel"]:link,
	.footer a[href^="tel"]:visited, 
	.footer a[href^="tel"]:hover {
		text-decoration: underline;
		color: #333;
		pointer-events: unset;
	}
	.footer a[href^="tel"]:hover {
		color: #999;
		cursor: pointer !important;
		text-decoration: none;
	}
	.hide-on-touch-screen {
		display: none;
	}
	.show-on-touch-screen {
		display: block;
	}
}
h1 {
	font-size: 24px;
}
h2 {
	font-size: 20px;
}
h1,
h2 {
	color: #333;
}
.head-sub {
	color: #333;
	font-weight: bold;
}
p {
	font-size: 16px;
}
p.head {
	font-size: 16px;
	font-weight: bold;
	color: var(--color--red-wine);
	margin: 15px 0 20px 0;
}
.liter {
	font-size: 20px;
	font-weight: bold;
	white-space: nowrap;
}
.csv-achtung {
	color: var(--color--red-wine);
	margin: 0 0 10px 0;
}
.csv-achtung span {
	font-weight: bold;
}
