html,body { height:100%; font-family:Arial, sans-serif; font-size:13px; line-height:15px; }
html { overflow-y:scroll; }
body { margin:0; padding:0; }
img { border:0; }

a { text-decoration:none; color:inherit; }
a:not(.plain):hover { text-decoration:underline; }

.light { color:#b2b2b2; }
td { -ms-word-break: break-all;word-break: break-all;word-break: break-word; }

div.margin { padding:20px; }
div.wrapper { display:none; margin:auto; width:100%; max-width:900px; }
body.init div.wrapper { display:block; }

div.wrapper div.head { display:block; margin-bottom:20px; overflow:hidden; }
body.overlay div.wrapper div.head { display:none; }
body.overlay div.wrapper div.footer { display:none; }
div.wrapper div.head div.logo { float:right; }
div.wrapper div.main { display:block; padding:20px; background-color:#eee; }
body.overlay div.wrapper div.main:before,
body.overlay div.wrapper div.main:after { position:fixed; content:""; top:0; left:0; right:0; height:20px; background-color:#fff; z-index:999999; }
body.overlay div.wrapper div.main:after { top:auto; bottom:0; }

div.wrapper div.footer { text-align:center; margin-top:10px; }
div.wrapper div.footer a { color:#b2b2b2; text-decoration:none; font-size:0.85em; }
div.wrapper div.footer a + a:before { content:"–"; margin-left:10px; margin-right:10px; color:#b2b2b2 !important; }
div.wrapper div.footer a:hover,
div.wrapper div.footer a.selected { color:inherit; }

hr { padding:0; border:0; margin:20px; margin-left:-20px; margin-right:-20px; height:5px; background-color:#fff; }

[data-selected="[]"],
[data-selected="{}"] { display:none !important; }

.secondary { text-align:center; margin-top:10px; font-size:0.85em; }

input, select, textarea { outline:none; }
input:focus, select:focus, textarea:focus, .focus { z-index:1; border-color:#252525 !important; }

textarea::-webkit-input-placeholder,
input::-webkit-input-placeholder { color:#b2b2b2; font-family:inherit; font-style:italic; font-size:0.85em; line-height:15px; }
textarea::-moz-placeholder,
input::-moz-placeholder { color:#b2b2b2; font-family:inherit; font-style:italic; font-size:0.85em; line-height:15px; }
textarea:-ms-input-placeholder,
input:-ms-input-placeholder { color:#b2b2b2; font-family:inherit; font-style:italic; font-size:0.85em; line-height:15px; }
textarea:-moz-placeholder,
input:-moz-placeholder { color:#b2b2b2; font-family:inherit; font-style:italic; font-size:0.85em; line-height:15px; }

fieldset { position:relative; margin:0; padding:0; border:0; }
fieldset > *:first-child { margin-top:0 !important; }
fieldset > *:last-child { margin-bottom:0 !important; }

div.input { position:relative; display:block; margin:0; padding:10px; padding-left:150px; margin-bottom:4px; background-color:#fff; overflow:hidden; }
div.input input[type=text],
div.input input[type=file],
div.input input[type=date],
div.input input[type=password],
div.input textarea,
div.input div.double,
div.input.select select { position:relative; width:100%; min-height:15px; margin:-10px; padding:9px; margin-left:-150px; padding-left:149px; border:1px solid #b2b2b2; font-size:inherit; line-height:inherit; font-family:inherit; background:none; -webkit-appearance: none; -moz-appearance: none; appearance: none; -webkit-border-radius:0; -moz-border-radius:0; border-radius:0; box-shadow: none; float:right; }

div.input.info { border:1px solid #b2b2b2; }
div.input.info div.left,
div.input.info div.right { float:left; width:30%; }
div.input.info div.right { width:70%; }
div.input.info ul,
div.input.info ol { margin:0; padding-left:1.2em; font-size:0.85em; }
div.input.info ul li,
div.input.info ol li { margin:0; padding:0; }

div.input textarea { resize: vertical; }
div.input div.double {  }
div.input div.double > * { width:45% !important; padding:0 !important; margin:0 !important; border:0 !important; float:left; }
div.input div.double > *:nth-child(odd) { padding-right:5% !important; }
div.input div.double > *:nth-child(even) { padding-left:10px !important; }
div.input div.double:after { position:absolute; content:""; width:1px; height:100%; top:0; left:50%; border-left:1px dotted #b2b2b2; margin-left:70px; }
div.input.multi > div.input div.double { padding-right:39px; margin-right:-40px; }
div.input.multi > div.input div.double > *:nth-child(even) { padding-left:25px !important; margin-right:-40px !important; }

div.input.multi,
div.input.multi2,
div.input.more { padding:0; margin:0; background:none; }
div.input.more div.input.more { margin: 0; padding: 10px; padding-left: 150px; margin-bottom: 4px; background-color: #fff; }
div.input.more { display:none; }

div.input.multi > div.input { padding-right:40px; cursor:pointer; }
div.input.multi > div.input + div.input,
div.input.multi2 > div.input + div.input { margin-top:-5px; }
div.input.multi > div.input:after { content:"-"; cursor:pointer; font-size:20px; line-height:1em; text-align:center; position:absolute; z-index:999; top:50%; right:3px; border:5px solid #fff; border-left:8px solid #fff; width:20px; height:20px; margin-top:-15px; background-color:#b2b2b2; color:#fff; }
div.input.multi > div.input:last-child:after { content:"+"; }
div.input.multi > div.input input[type=text],
div.input.multi > div.input input[type=file],
div.input.multi > div.input input[type=date],
div.input.multi > div.input input[type=password],
div.input.multi > div.input textarea,
div.input.multi > div.input.select select { padding-right:39px; margin-right:-40px; }
div.input.multi > div.input.select:before { right:40px; }

div.input.padding + div.input { margin-top:0!important;	}

div.input.select select { z-index:20; width:110%; height:33px; margin:-9px; border:0; padding:9px; padding-right:50px; cursor:pointer; float:none; }
div.input.select:before { position:absolute; z-index:10; bottom:10px; right:10px; content:"▼";  }
div.input.select.error select,
div.input.select.error:before { color:#d20a11; }

div.input.error input[type=text],
div.input.error input[type=file],
div.input.error input[type=date],
div.input.error input[type=password],
div.input.error textarea,
.error { border-color:#d20a11 !important; }

div.input:not(.checkbox) > label,
div.input.checkbox > span { color:#b2b2b2; font-size:0.85em; z-index:1; text-align:right; position:absolute; top:0; bottom:0; left:0; display:flex; align-items:center; justify-content:right; width:120px; padding-left:10px; padding-right:9px; border-right:1px dotted #b2b2b2; }

div.input.focus:not(.checkbox) > label,
div.input.focus.checkbox > span { color:inherit; }

div.input.error:not(.checkbox) > label,
div.input.error.checkbox > span { color:#d20a11; }

div.input.select,
div.input.checkbox { border:1px solid #b2b2b2; padding:9px; padding-left:149px; overflow:hidden; }
div.input.checkbox { padding-bottom:0; }
div.input.checkbox > span { padding-left:9px; }

div.input.select > label { padding-left:9px; }

div.input.checkbox > input[type=checkbox],
div.input.checkbox > input[type=radio] { position:absolute; left:-9999px; }
div.input.checkbox > label { display:block; color:#b2b2b2; position:relative; float:left; padding-right:25px; padding-left:28px; margin-bottom:9px; cursor:pointer; }

div.input.checkbox > input[type=checkbox] + label:before,
div.input.checkbox > input[type=radio] + label:before { content: ''; position: absolute; left:0; top: -2px; width: 10px; height: 10px; border-radius: 0; border: 4px solid #fff; background:#fff; -webkit-box-shadow: 0px 0px 0px 1px rgba(178,178,178,1); -moz-box-shadow: 0px 0px 0px 1px rgba(178,178,178,1); box-shadow: 0px 0px 0px 1px rgba(178,178,178,1); }

div.input.checkbox.error > input[type=checkbox] + label,
div.input.checkbox.error > input[type=radio] + label { color:#d20a11; }
div.input.checkbox.error > input[type=checkbox] + label:before,
div.input.checkbox.error > input[type=radio] + label:before { -webkit-box-shadow: 0px 0px 0px 1px rgba(203,6,15,1); -moz-box-shadow: 0px 0px 0px 1px rgba(203,6,15,1); box-shadow: 0px 0px 0px 1px rgba(203,6,15,1); } 

div.input.checkbox > input[type=checkbox]:checked + label:before,
div.input.checkbox > input[type=radio]:checked + label:before { background-color:#252525 !important; -webkit-box-shadow: 0px 0px 0px 1px rgba(37,37,37,1); -moz-box-shadow: 0px 0px 0px 1px rgba(37,37,37,1); box-shadow: 0px 0px 0px 1px rgba(37,37,37,1); }
div.input.checkbox > input[type=checkbox]:checked + label,
div.input.checkbox > input[type=radio]:checked + label { color:#252525; }

.select > div.input.checkbox { position:absolute; top:0; left:0; width:100%; height:100%; border:0; padding:0; margin:0; background:none; overflow:visible; }
.select > div.input.checkbox label { position:absolute; top:0; left:0; float:none; padding:0; width:100%; height:100%; }
.select > div.input.checkbox > input[type=checkbox] + label:before,
.select > div.input.checkbox > input[type=radio] + label:before { top:50%; left:50%; margin-top:-7px; margin-left:-7px; width:6px; height:6px; }

div.wrapper div.main table tr.show-selected-only { display:none !important; }
div.wrapper div.main table.show-selected tr.show-selected-only { display:table-row !important; }
div.wrapper div.main table tr.hidden { display:none !important; }
div.wrapper div.main table tr.hidden-not-selected,
div.wrapper div.main table.show-selected tr.hidden-not-selected { display:none !important; }
div.wrapper div.main table tr td.select > div.input.checkbox > input[type=checkbox] + label:before,
div.wrapper div.main table tr td.select > div.input.checkbox > input[type=radio] + label:before { z-index:2; }
div.wrapper div.main table tr td.select > div.input.checkbox > input[type=checkbox]:checked + label:after,
div.wrapper div.main table tr td.select > div.input.checkbox > input[type=radio]:checked + label:after { z-index:1; position:absolute; content:""; background-color:rgba(0,0,0,0.12); top:0; right:0; width:1000px; height:100%; }
div.wrapper div.main table tr td.new { text-align:center; color:#b2b2b2; font-size:0.85em; }

div.wrapper div.main table tr > td span.diff del { color:red; }
div.wrapper div.main table tr > td span.diff ins { color:green; text-decoration:none!important; }

/*
div.wrapper div.main table tr:hover td.select > div.input.checkbox > input[type=checkbox]:checked + label:after,
div.wrapper div.main table tr:hover td.select > div.input.checkbox > input[type=radio]:checked + label:after { background:none; }
*/

input[type=submit],
input[type=button],
input[type=reset],
.button { background:none; border:0; margin:0; padding:10px; display:inline-block; cursor:pointer; font-weight:bold; text-transform:uppercase; letter-spacing:1px; background-color:#d20a11; color:#fff; font-size:inherit; line-height:inherit; font-family:inherit; text-decoration:none; -webkit-appearance: none; -moz-appearance: none; appearance: none; -webkit-border-radius:0; -moz-border-radius:0; border-radius:0; box-shadow: none; }

input[type=submit].cancel,
input[type=button].cancel,
input[type=reset].cancel,
.button.cancel { background-color:#b2b2b2; }

input[type=submit]:hover,
input[type=button]:hover,
input[type=reset]:hover,
.button:hover { background-color:#252525; text-decoration:none; }

div.wrapper div.main table { width:100%; background-color:#fff; border:1px solid #b2b2b2; overflow:hidden; }
div.wrapper div.main table tr > * { position:relative; z-index:10; padding:5px; padding-left:10px; padding-right:10px; text-align:left; border-bottom:1px solid #b2b2b2; border-right:1px dotted #b2b2b2; vertical-align:top; word-wrap:break-word; }
div.wrapper div.main table tr > *:first-child { width:118px; }
div.wrapper div.main table tr > *:first-child:not([align]) { text-align:right; }
div.wrapper div.main table tr > *:last-child { border-right:0; z-index:1; }
div.wrapper div.main table tr > th { color:#b2b2b2; font-weight:normal; font-size:0.85em; }
div.wrapper div.main table tr:last-child > * { border-bottom:0; }

div.wrapper div.main table tr { cursor:pointer; }
div.wrapper div.main table tr:first-child { cursor:auto; }

div.wrapper div.main table tr:hover { background-color:#eee; }
div.wrapper div.main table tr:first-child:hover { background:none; }

div.wrapper div.main table tr.highlight td,
div.wrapper div.main table tr.highlight th { background-color:#ddd; }

div.wrapper div.main table tr > td.new { display:table-cell; border-right:0; width:auto; text-align:center; }
div.wrapper div.main table tr > td.new + td,
div.wrapper div.main table tr > td.new + td + td,
div.wrapper div.main table tr > td.new + td + td + td,
div.wrapper div.main table tr > td.new + td + td + td + td,
div.wrapper div.main table tr > td.new + td + td + td + td + td { display:none; }

div.wrapper div.main table [data-name*="titel_vor"]:not(:empty) { padding-right:5px; }
div.wrapper div.main table [data-name*="titel_nach"]:not(:empty) { padding-left:5px; }

.autocomplete-suggestions { background:#fff; overflow: auto; color:#b2b2b2; }
.autocomplete-suggestion { border:1px solid #252525; border-top:0; border-bottom:1px dotted #b2b2b2; padding:5px; padding-left:10px; padding-right:10px; white-space: nowrap; overflow: hidden; }
.autocomplete-suggestion:last-child { border-bottom:1px solid #252525; }
.autocomplete-selected { background: #eee; }
.autocomplete-suggestions strong { font-weight: normal; color: #252525; }
.autocomplete-group { padding: 2px 5px; }
.autocomplete-group strong { display: block; border-bottom: 1px solid #000; }

.result:empty { height:100px; background-image:url(../img/loading.gif); background-repeat:no-repeat; background-position:center center; }

.result [data-count="selected"] { display:none; }
.result.show-selected [data-count] { display:none; }
.result.show-selected [data-count="selected"] { display:inline; }

@media screen and (max-width: 600px) {
	.desktoponly { display:none !important; } 
	div.wrapper div.main table { div.wrapper div.main table-layout:fixed; }
}

@media screen and (max-width: 400px) {
	div.input { padding-left:10px; border:1px solid #b2b2b2; }
	div.input.multi,
	div.input.multi2,
	div.input.more { padding:0; border:0; }
	div.input input[type=text],
	div.input input[type=file],
	div.input input[type=date],
	div.input input[type=password],
	div.input textarea,
	div.input div.double,
	div.input.select select { margin:-10px; padding:9px; border:0; }

	div.input.select,
	div.input.checkbox {
		padding-left:9px;
	}
	
	div.input:not(.checkbox) > label,
	div.input.checkbox > span { position:relative; display:block; text-align:left; top:auto; left:auto; margin-left:-10px; margin-right:-10px; margin-bottom:10px; padding:10px; padding-top:0; border:0; border-bottom:1px dotted #b2b2b2; width:100%; -ms-transform:none; transform:none; }
	
	div.input div.double:after { margin-left:0; }
	
	div.input.multi { border:0; }
	div.input.multi > div.input { padding-right:10px; }
	div.input.multi > div.input:after { top:0; margin-top:3px; }
	
	div.input.multi > div.input.select:before { right:10px; }
	
	div.wrapper div.main table tr { display:block; position:relative; overflow:hidden; border-bottom:1px solid #b2b2b2; }
	div.wrapper div.main table tr:last-child { border:0; }
	div.wrapper div.main table tr > *,
	div.wrapper div.main table tr > *:first-child { display:block; width:auto; text-align:left; border:0; border-top:1px dotted #b2b2b2; font-size:0.85em; }
	div.wrapper div.main table tr:not(.continue) > *:first-child { font-size:1em; margin-right:30px; border:0; } 
	
	div.wrapper div.main table tr > th { display:none; }
	div.wrapper div.main table tr > th:first-child { display:block; }
	
	div.wrapper div.main table tr > .select { display:block; position:absolute; padding:0; margin:0; border:0; right:0; top:0; width:30px; height:26px; }
	div.wrapper div.main table tr td.select > div.input.checkbox > input[type=checkbox]:checked + label:after,
	div.wrapper div.main table tr td.select > div.input.checkbox > input[type=radio]:checked + label:after { top:0; height:1000px; }	 
}

@media print {
	html,body { font-size:10px; line-height:12px; }
	div.wrapper div.footer,
	div.wrapper div.main table tr > td.new,
	div.input.multi > div.input:after,
	div.input.select:before,
	form > div.action { display:none; }
	.head > .logo img { height:35px; }
}