/* ============================================
 Projekt:      SATELLITE

 Datei:        06_CSX_FORMS.CSS

 Datum:        10.12.2015
 Version:      2.0
 Optimiert:    ab IE 9, FF, Chrome, Opera
 ================================================ */

/* ============================================
         LEERE TAGS
================================================ */
p:empty {
    height: 0;
    margin: 0 !important;
    padding: 0 !important;
}

/* ============================================
          EINZELNE PFLICHTFELDMARKIERUNGEN
================================================ */
.label-mandatory {
    font-family: Verdana;
    font-size: 17px;
    font-weight: normal;
    line-height: 10px;
}

/* ==================================================
          AUSRICHTUNGEN BUTTONS UND EINGABEELEMENTE
===================================================== */
button,
input,
select,
textarea {
    font-weight: normal;
    line-height: 20px;
    margin: 0;
    vertical-align: middle;
}

button,
input {
    *overflow: visible;
    line-height: normal;
}

button::-moz-focus-inner,
input::-moz-focus-inner {
    border: 0;
    padding: 0;
}

button,
input[type="button"],
input[type="reset"],
input[type="submit"] {
    cursor: pointer;
    -webkit-appearance: button;
}

label,
select,
button,
input[type="button"],
input[type="reset"],
input[type="submit"],
input[type="radio"],
input[type="checkbox"] {
    cursor: pointer;
}

textarea {
    float: left;
    min-height: 300px !important;
    margin-right: 5px !important;
    max-width: 1300px !important;
    overflow: auto;
    vertical-align: top;
}

select {
    float: left;
}

/* Textarea im Wicket Wizard nicht vergroessern */
.openBoxcontent .tableCell textarea {
    resize: none;
}

/* Span(pseudo Label) bei Text zwischen Eingabefeldern */
label.label-text,
.label-text,
.label-text + input[type="text"] + .label-text,
input[type="text"] + .label-text,
input[type="text"] + .label-text + .label-text,
.label-text-controls /* Span, wenn Abschluss nach type=text und class="controls" (Readonly)*/
{
    display: block;
    line-height: 20px;
    padding: 5px 5px 0 5px !important;
}

/* label im tbody Bsp. Projektraum - Fristen */
tbody td label {
    display: inline-block;
}

/* Formatierung bei Telefon und Fax  Adressbloecke */
.label-phone-fax-number {
    display: block;
    padding: 5px 0 0 0 !important;
    line-height: 20px !important;
    width: 35px;
}

/* FF Hack BG Yellow */
input:autofill {
    background: #fff;
}

/* Standard  immer float:left */
input[type="text"],
input[type="email"],
input[type="url"] {
    float: left;
}

/* Eingabefelder in der Tabelle */
table input[type="text"] {
    margin-bottom: 0 !important;
}

/* Span, bei Text zwischen Eingabefeldern (Readonly)*/
.label-text {
    padding-top: 0px !important;
}

/* Span bei Text zwischen Eingabefeldern (leer) */
input[type="text"] + .label-text:empty {
    padding: 0 !important;
}

/* Projektraum - Berichtigung - Eingabefelder in der Tabelle "urspruenglichen Bekanntmachung zu berichtigender Text" */
table.projektRoomCorrectionTable tbody tr td {
    padding-top: 5px;
}

table.projektRoomCorrectionTable td input.inputTextMedium {
    min-width: 150px;
    width: 90%;
}

table.projektRoomCorrectionTable td textarea {
    min-width: 150px;
    width: 90%;
}

/* Kalendericon */
table.projektRoomCorrectionTable td input.calendarDateInput {
    width: 70px !important;
}

/* ==================================================
         FORMELEMENTS
===================================================== */
label {
    display: flex;
    font-weight: normal;
    line-height: 20px;
    margin-bottom: 5px;
    align-items: center;
}

.description {
    margin-bottom: 15px;
}

/* span 'label' innerhalb vom label bei checkboxen und radiobuttons - fuer spaeteres styling */
.label-inside-label {
    padding: 0;
}

/* span 'label' innerhalb vom label bei checkboxen und radiobuttons - steht in <li> Bsp. Modul Berichte*/
li .label-inside-label {
    position: relative;
    top: 2px;
}

select,
textarea,
input[type="text"],
input[type="password"],
input[type="email"],
input[type="url"] {
    color: #000;
    display: inline-block;
    height: 20px;
    padding: 4px 6px !important;
    line-height: 20px;
    margin-bottom: 10px !important;
    vertical-align: middle;
}

/* Invalid HTML5 Felder nach blur nicht markieren */
input:invalid, input:-moz-ui-invalid {
    border: 0;
    outline: none;
    box-shadow: none;
    -moz-box-shadow: none;
    -webkit-box-shadow: none;
}

/* Placeholder Styling */
input::-webkit-input-placeholder {
    color: #8a8a8a !important;
}

input:-moz-placeholder { /* Firefox 18- */
    color: #8a8a8a !important;
}

input::-moz-placeholder { /* Firefox 19+ */
    color: #8a8a8a !important;
}

input:-ms-input-placeholder {
    color: #8a8a8a !important;
}

input[type="file"],
input[type="image"],
input[type="submit"],
input[type="reset"],
input[type="button"],
input[type="radio"],
input[type="checkbox"] {
    width: auto;
}

select,
input[type="file"] {
    height: 31px;
    line-height: 30px;
}

select[multiple],
select[size] {
    min-height: 150px !important;
}

.radio,
.checkbox {
    min-height: 20px;
    padding-left: 20px !important;
}

.radio input[type="radio"],
.checkbox input[type="checkbox"] {
    float: left;
    margin-left: -20px !important;
    margin-top: 2px !important;
    min-height: 15px;
    line-height: normal;
}

/* Inline Radio oder Checkboxen */
input[type="radio"].radio-inline + span.label-inside-label,
input[type="checkbox"].checkbox-inline + span.label-inside-label {
    margin-right: 10px !important;
}

.controls > .radio:first-child,
.controls > .checkbox:first-child,
.controls > .radio.inline-block-element,
.controls > .checkbox.inline-block-element {
    margin-bottom: 0 !important;
    margin-top: 0 !important;
    padding-top: 5px !important;
}

/* Anpassung groesse input[type=text] */
.input-mini {
    min-width: 60px;
    width: 60px !important;
}

.input-small {
    min-width: 90px;
    width: 90px !important;
}

.select-small {
    min-width: 80px;
    width: 80px !important;
}

.input-medium {
    min-width: 150px;
    width: 150px !important;
}

.select-medium {
    min-width: 180px;
    width: 180px !important;
}

.input-default {
    min-width: 250px;
    width: 250px !important;
}

.select-default {
    min-width: 263px;
    width: 263px !important;
}

.textarea-default {
    min-width: 460px;
}

.element-big {
    min-width: 550px;
}

.textarea-small {
    min-height: 150px !important;
    width: 450px;
}

.textarea-thin {
    min-height: 70px !important;
    width: 275px;
}

.textarea-medium {
    min-height: 150px !important;
    min-width: 300px;
}

.input-xlarge {
    min-width: 350px;
    width: 350px !important;
}

.input-xxlarge {
    min-width: 460px;
    width: 460px !important;
}

.select-xxlarge {
    min-width: 444px;
    width: 444px !important;
}

.select-xxlarge-scrollable-box {
    max-width: 700px !important;
    height: 150px;
    overflow:scroll;
    display: inline-block;
    border: 1px solid #ccc;
    margin-bottom: 10px !important;
}

select[multiple].select-xxlarge-scrollable {
    min-height: 0px !important;
    width: auto !important;
    min-width: 444px;
    border: none !important;
    height: auto !important;
    margin-bottom: 0px !important;
    -ms-overflow-style: none;  /* Hide scrollbar for IE and Edge */
    scrollbar-width: none;  /* Hide scrollbar for Firefox */
}

/* Hide scrollbar for Chrome, Safari and Opera */
.select-xxlarge-scrollable::-webkit-scrollbar {
    display: none;
}


.input-phone-fax-number {
    min-width: 215px;
    width: 215px !important;
}

/* ======================================================
      DISABLED
========================================================= */

.csx-tab li:not(.active-tab) a[disabled], /* neue TAB Komponente genommen aus #dashboard */
.actionUpGhostIcon, /*  UP-DOWN-Icons ausgewaehlte Zuschlagskriterien  */
.actionDownGhostIcon, /*  UP-DOWN-Icons ausgewaehlte Zuschlagskriterien  */
a.disableEnclapsedIcon,
.btn[disabled],
input[disabled],
select[disabled],
textarea[disabled],
input[readonly],
select[readonly],
textarea[readonly],
.searchButtonsBox input[type="submit"][disabled],
.searchButtonsBox input[type="button"][disabled] {
    background: #ddd !important;
    border: 1px solid #dadada !important;
    cursor: not-allowed !important;
}

input[type="radio"][disabled],
input[type="checkbox"][disabled],
input[type="radio"][readonly],
input[type="checkbox"][readonly] {
    background: none !important;
    border: none;
    opacity: 0.7;
}

.csx-tab li:not(.active-tab) a[disabled], /* neue TAB Komponente genommen aus #dashboard */
.actionUpGhostIcon, /*  UP-DOWN-Icons ausgewaehlte Zuschlagskriterien  */
.actionDownGhostIcon, /*  UP-DOWN-Icons ausgewaehlte Zuschlagskriterien  */
a.disableEnclapsedIcon,
.btn[disabled],
input[disabled],
select[disabled],
textarea[disabled],
input[readonly],
select[readonly],
textarea[readonly],
.notLinkedChar,
.separatorChar,
#subNav li.disabled,
#subNav li li.disabled,
#subNav li li li.disabled,
td a[disabled],
#subnav a.disabled {
    color: #6a6a6a !important;
    cursor: not-allowed !important;
}

/* Eingabefelder hover */
select:hover,
textarea:hover,
input[type="text"]:hover,
input[type="password"]:hover {
    background-color: #fff;
}

.control-group {
    clear: left;
    margin-bottom: 5px !important;
    *zoom: 1;
}

.control-group:before,
.control-group:after {
    content: "";
    display: table;
    line-height: 0;
}

.control-group:after {
    clear: both;
}

/* Main label */
.control-label,
.control-label-width-auto,
.control-label-width-250,
.control-label-width-300 {
    float: left;
    padding-top: 5px !important;
    padding-right: 10px;
    text-align: left;
    width: 210px;
}

.control-label-width-auto {
    min-width: 50px;
    width: auto;
}

.control-label-width-auto + .controls {
    margin: 0
}

.controls {
    margin: 0 0 0 230px; /* entspricht der Breite des .control-label + padding-right + 10 */
}

.control-label-width-250 {
    width: 250px;
}

.control-label-width-250 + .controls {
    margin: 0 0 0 260px;
}

.control-label-width-300 {
    width: 300px;
}

.control-label-width-300 + .controls {
    margin: 0 0 0 310px;
}

.label-multiline {
    padding-top: 0;
}

.control-label.max-width-400 {
    max-width: 400px;
    width: auto;
}

.control-label.max-width-500 {
    max-width: 500px;
    width: auto;
}

/* ======================================================
      LABEL/INPUTS UNTEREINANDE
========================================================= */
/* Label inputs untereinander */
.formelements-below label {
    display: inline-block;
    margin-bottom: 10px !important;
    width: auto;
}

.formelements-below .controls {
    clear: left;
    margin-left: 0;
}

/* Innerhalb von Tabellen label und input[type=text] */
table label.control-label,
table label.control-label-width-auto,
table label.control-label-width-250,
table label.control-label-width-300 {
    display: block;
    float: left;
    margin-top: 5px !important;
    width: auto !important;
}

table .controls {
    float: left;
    margin: 5px 0 0 0;
}

/* Neue VgV 2016 Zusatz */
div.label-width-300-container {
    margin-bottom: 20px;
}

div.label-width-300-container label {
    width: 300px;
}

div.label-width-300-container input[type="text"] {
    position: relative;
    top: 8px;
}

table td.addressCell label.control-label {
    width: 210px !important;
}

/* ==================================================
         READONLY AUSGABE
===================================================== */
/* Readonly control-group wenn alle Werte als Read-Only ausgegeben werden sollen Abstand der Zeilen verringern */
.control-group.control-group-read-only,
.control-group.control-group-read-only label,
.control-group.control-group-read-only .controls .read-only,
ul.read-only {
    padding-bottom: 0 !important;
    padding-top: 0 !important;
    margin-bottom: 2px !important;
    margin-top: 0 !important;
    border: 1px solid red;
}

/* Readonly Liste allgemein */
ul.read-only {
    margin: 0;
    padding: 8px 0 0 0;
}

ul.read-only li {
    font-weight: bold;
}

/* Textfelder und Textarea */
.controls span.read-only,
.float-left span.read-only,
.controls-float-none span.read-only,
.controls-float-none .controls span.read-only,
.controls a.read-only {
    display: block;
    font-weight: bold;
    line-height: 20px;
    margin: 0;
    padding: 5px 0 0 0;
}

.controls a.read-only {
    display: inline-block;
}

.controls-float-none span.read-only,
.float-left span.read-only {
    padding: 0;
}

/* Textarea -> Ausgabe in font: normal */
.read-only-textarea {
    font-weight: normal !important;
}

.read-only-textarea.margin-left-20 {
    margin-left: 0 !important;
}

/* Textarea + zugehoeriges label-> Ausgabe in font: normal */
.read-only-textarea-label {
    font-style: italic;
}

/* Read-Only radio/checkbox (checked) + Ausgabewert (TextField.html) */
.read-only-radio-checkbox-output {
    float: left;
}

.read-only-radio-checkbox-output p {
    margin: 1px 0 0 10px;
    font-weight: bold;
}

/* Read-Only YesNo-Komponente */
.float-left .read-only-yes-no,
.float-left .read-only-text-only {
    margin-bottom: -8px !important;
    margin-top: 5px !important;
}

/* READONLY DARSTELLUNGEN */
/* Normaler Text im Span */
.renderedTextBold {
    font-weight: bold;
}

/* Boxdarstellung */
.readOnlyTextBoxNormal {
    display: inline-block;
    font-weight: bold;
}

.readOnlyTextNormal {
    font-weight: normal;
}

/* Checkbox radio, checkbox rechts - label links */
.checkbox-right {
    position: relative;
    top: 8px;
}

/* Wenn Label mehrzeilig ist, dann passe Ausgabe Value an */
.controls span.read-only-multiline {
    padding-top: 5px;
}

/* Kennzeichnung bei UL checked / unchecked (bsp. Art der akzeptierten Angebote) */
ul.checked-list,
ul.unchecked-list {
    margin: 0 !important;
}

ul.checked-list li,
ul.unchecked-list li {
    margin-top: 8px;
    padding-left: 20px;
}

/* Kennzeichnung bei Checkboxen und Radiobuttons, wenn checked=true */
.checked-element, .unchecked-element {
    border: none;
    content: ' ';
    display: inline-block;
    height: 13px;
    margin: 0 0 0 -18px;
    text-align: center;
    vertical-align: middle;
    width: 13px;
}

/* Wenn der span.checked-element (DOM) direkt nach label und in einer <ul> steht Bsp. Modul: Berichte */
ul label > span.checked-element {
    margin-left: 0px;
}

/* Wenn checked, unchecked ohne label steht Bsp. baseDataV2.jsp */
.checked-unchecked-standalone input[type="checkbox"],
.checked-unchecked-standalone .checked-element,
.checked-unchecked-standalone .unchecked-element,
label + input[type="checkbox"] {
    margin-left: 0px;
    margin-top: 8px;
}

/* In der Tabelle */
td span.checked-element {
    margin: 0;
}

.sub-headline-container {
    clear: left;
}

/* Uebersichtsseite P-Raum Unternehmen */
.reset-sub-headline-container .sub-headline-container {
    clear: none;
}

h3.sub-headline,
h3.sub-headline-not-bold,
h4.sub-headline,
h4.sub-headline-not-bold {
    font-weight: bold;
    margin: 15px 0 !important;
}

h3.sub-headline-not-bold,
h4.sub-headline-not-bold {
    font-weight: normal;
}

/* Nur wenn ein <input> enthalten ist dann auf inline-block umschalten. So kann sichergestellt werden, dass die <input> Komponenten bündig angezeit werden. */
.radio.inline-block-element,
label.checkbox.inline-block-element:has(input[type="checkbox"]) {
    display: inline-block;
}


/* Element als Tabelle */
.table-element {
    display: table;
    vertical-align: middle;
    width: 100%;
}

/* Div als Tabelle und TD */
.tableContainer {
    display: table;
    table-layout: fixed;
    width: 100%;
}

.tableCell {
    display: table-cell;
    vertical-align: top;
}

.tableRow {
    display: table-row;
}

.vertical-bottom {
    vertical-align: bottom;
}

.vertical-top {
    vertical-align: top;
}

.vertical-middle {
    vertical-align: middle;
}

/* controls clear:left */
.controls-float-none {
    clear: left;
    margin: 0;
}

.controls-float-none:before {
    clear: both;
    content: " ";
    display: block;
    font-size: 0;
    height: 0;
    visibility: hidden;
}

/* Hoehenangaben */
.height-20 {
    height: 20px;
}

.min-height-80 {
    min-height: 80px;
}

.small-font {
    font-size: 11px;
}

/* Margin Abstaende */
.no-margin {
    margin: 0 !important;
}

/* bottom */
.margin-bottom-5 {
    margin-bottom: 5px !important;
}

.margin-bottom-10 {
    margin-bottom: 10px !important;
}

.margin-bottom-15 {
    margin-bottom: 15px !important;
}

.margin-bottom-20 {
    margin-bottom: 20px !important;
}

.margin-bottom-30 {
    margin-bottom: 30px !important;
}

/* left */
.margin-left-5 {
    margin-left: 5px !important;
}

.margin-left-10 {
    margin-left: 10px !important;
}

.margin-left-15 {
    margin-left: 15px !important;
}

.margin-left-20 {
    margin-left: 20px !important;
}

.margin-left-30 {
    margin-left: 30px !important;
}

.margin-left-40 {
    margin-left: 40px !important;
}

/* right */
.margin-right-5 {
    margin-right: 5px !important;
}

.margin-right-10 {
    margin-right: 10px !important;
}

.margin-right-15 {
    margin-right: 15px !important;
}

.margin-right-20 {
    margin-right: 20px !important;
}

.margin-right-30 {
    margin-right: 30px !important;
}

/* top */
.margin-top-0 {
    margin-top: 0 !important;
}

.margin-top-5 {
    margin-top: 5px !important;
}

.margin-top-10 {
    margin-top: 10px !important;
}

.margin-top-15 {
    margin-top: 15px !important;
}

.margin-top-20 {
    margin-top: 20px !important;
}

.margin-top-30 {
    margin-top: 30px !important;
}

/* padding left */
.padding-left-0 {
    padding-left: 0 !important;
}

.padding-left-5 {
    padding-left: 5px !important;
}

.padding-left-10 {
    padding-left: 10px !important;
}

.padding-left-15 {
    padding-left: 15px !important;
}

.padding-left-20 {
    padding-left: 20px !important;
}

.padding-right-5 {
    padding-right: 5px !important;
}

.padding-right-10 {
    padding-right: 10px !important;
}

.padding-right-15 {
    padding-right: 15px !important;
}

.padding-right-20 {
    padding-right: 20px !important;
}

.padding-top-5 {
    padding-top: 5px !important;
}

.padding-top-10 {
    padding-top: 10px !important;
}

.padding-top-15 {
    padding-top: 15px !important;
}

.padding-top-20 {
    padding-top: 20px !important;
}

.padding-5 {
    padding: 5px !important;
}

.padding-10 {
    padding: 10px !important;
}

.padding-15 {
    padding: 15px !important;
}

.padding-20 {
    padding: 20px !important;
}

.position-top-0 {
    top: 0 !important;
}

/* ==================================================
         ADRESSUEBERNAHME / VERFAHRENSANGABEN
===================================================== */
.address_box {
    background-color: #fff;
    box-shadow: 3px 5px 5px 0 rgba(0, 0, 0, 0.5);
    display: none;
    margin-left: 230px; /* Entspricht margin-left von .controls */
    min-width: 264px !important;
    position: absolute;
}

.address_box a {
    background-color: #fff;
    border-top: none;
    border: 1px solid;
    color: #000;
    display: inline-block;
    font-weight: bold;
    min-height: 30px;
    padding: 5px 5px !important;
    text-decoration: none;
    text-overflow: ellipsis;
}

.address_box a:hover {
    color: #000;
}

.address_box a span.address-value {
    display: inline-block;
    font-weight: normal;
    margin-top: 3px;
    max-width: 400px;
    overflow: hidden;
    text-overflow: ellipsis
}

/* ==================================================
         ABSCHLUSS DIV BEIM FORMULAR
===================================================== */
.form-actions {
    padding: 20px;
    margin-top: 20px !important;
    margin-bottom: 20px;
    *zoom: 1;
}

.form-actions,
.form-top {
    border-top: 2px solid #ddd;
}

/* Start DIV beim Formular */
.form-top {
    border-top: none;
    border-bottom: 2px solid #ddd;
}

.form-actions:before,
.form-actions:after {
    display: table;
    line-height: 0;
}

.form-actions:after {
    clear: both;
}

/* ==================================================
         INNERHALB EINES FORMS FORMULAR
===================================================== */
.form-actions-small {
    border-top: 2px solid #bbb;
    display: inline-block;
    margin: 10px 0;
    padding: 10px 15px 0 0;
}

/* ==================================================
         BUTTONS
===================================================== */
.btn,
.btn-link,
.btn[disabled],
input[type="submit"],
input[type="submit"][disabled],
input[type="button"],
input[type="button"][disabled],
p.closeWindowButton a /* Schliessen Button Projektraum Unternehmen */
{
    cursor: pointer;
    display: inline-block;
    height: 31px;
    margin-bottom: 0 !important;
    margin-top: 0 !important;
    min-width: 80px;
    padding: 0 12px !important;
    text-align: center;
    vertical-align: middle;
}

.btn-link {
    height: 29px;
    line-height: 29px !important;
}

a.participateLink {
    cursor: pointer;
    display: inline-block;
    height: 31px;
    margin-bottom: 0 !important;
    margin-top: 0 !important;
    min-width: 80px;
    padding: 0;
    text-align: center;
    vertical-align: middle;
}

/* <span> als Button */
span.btn {
    height: 29px;
}

.btn.btn-small {
    min-width: 20px;
}

/* Buttons mit <span> +Bg image 16x16 */
.btn-link.btn-with-image-16 {
    padding: 0 !important;
    min-width: 25px !important;
    width: 25px !important;
    height: 29px;
}

.btn-link.btn-with-image-16 span {
    position: relative;
    top: 6px;
}

/* Buttons im form-action DIV */
.form-actions .btn,
.form-actions .btn-link {
    margin-right: 20px !important;
}

/* Buttons in tablefilter / Projekte suchen */
.btn-search,
.btn-search[disabled],
.btn-reset,
.btn-reset[disabled] {
    height: 30px !important;
    min-width: 30px !important;
    width: 30px !important;
}

/* Buttons */
.nuts-code,
.nuts-code-country,
.nuts-code-action {
    float: left;
    margin: 0;
    padding: 0;
}

/* Container fuer Buttons allgemein */
.buttonContainer {
    border: 1px solid;
    margin: 15px 0;
    padding: 10px;
}

/* Nutscode */
.nuts-code {
    width: 75px;
}

.nuts-code-country {
    width: 80%;
}

.nuts-code p,
.nuts-code-country p {
    margin-bottom: 10px;
    margin-top: 3px;
}

.nuts-code-action {
    margin: 3px 15px 0 0 !important;
}

/*  Statusmeldungen (Nuts-Code) noch nicht ausgewaehlt */
.status-message {
    display: table-cell;
    height: 20px;
    line-height: 1 !important;
    margin-bottom: 10px !important;
    padding: 5px 0 0 0;
    vertical-align: middle;
}

/* Nutscode - NTUS-Code/CPV/Drittlaender loeschen - neue VA - Auftragsgegenstand 18-04-2016 */
.country-code-container,
.nuts-code-container,
.cpv-code-container,
.select-one-container {
    position: relative;
    width: 510px;
}

/* fuer Delete Icon Muelleimer z.B. Wizard 'Weitere CPV-Codes */
.delete-container-small {
    display: table-cell;
    height: 30px;
    padding: 0 5px;
    vertical-align: middle;
}

.country-code-delete-container,
.nuts-code-delete-container,
.cpv-code-delete-container {
    position: absolute;
    right: -10px;
    top: 6px;
}

/* Legende mit und ohne Pflichtangaben + Anker */
span.legend-label-required,
span.legend-label-required-footnote,
span.footnote {
    display: inline-block;
}

span.legend-label-required {
    padding: 5px 0;
}

/* default <span> in Legend */
span.legend-label-default {
    display: inline-block;
}

span.legend-label-required-footnote,
span.footnote {
    margin: 0 5px;
    position: relative;
    *position: static;
    *top: -50px;
    text-align: center;
    top: -5px;
}

span.legend-label-required-footnote a {
    padding: 0px 3px 2px 3px;
    text-decoration: none;
}

fieldset,
.printContentFieldset {
    background-color: #fff;
    border: 1px solid;
    margin: 15px 0 35px 0 !important;
    padding: 10px 20px;
}

.printContentFieldset:after {
    content: "";
    display: table;
    clear: both;
}

/* benoetigt fuer den Ausdruck bzgl. Firefox Bug */
.printContentFieldset {
    position: relative;
    padding-top: 30px !important;
}

legend {
    display: block;
    max-width: 90%;
    padding: 8px 15px !important;
}

legend.requiredLegend {
    padding-bottom: 3px !important;
    padding-top: 3px !important;
}

/* tableFilter selects und Buttons Bsp. Modul Mitgliederverwaltung*/
.tableFilterRight select,
.tableFilterRight .btn {
    margin: 0 !important;
}

a.linkedChar {
    padding-bottom: 0;
    padding-top: 0;
}

/* Neues Projekt anlegen */
.wizard-step-summery {
    display: inline-block;
}

.wizard-step-subheadline {
    border-bottom: 1px solid #000;
    display: block;
    letter-spacing: 1px;
    line-height: 0.5;
    margin: 30px 0 10px 0;
    position: relative;
    text-align: center;
}

.wizard-step-subheadline span {
    background-color: #fff;
    font-size: 11px;
    left: 20px;
    padding: 3px 20px;
    position: absolute;
    text-align: center;
    text-transform: uppercase;
    top: -6px;
}

/* =====================================================
         PROJEKTRAUM VORLAGEN VERWALTUNG AN TEXTAREA
======================================================== */
.templateChooser {
    display: block;
    float: left;
    margin: 0 0 0 2px !important;
    padding: 0 !important;
    position: relative;
    width: 12px;
}

.templateChooser a {
    cursor: pointer;
    display: block;
    font-size: 0;
    height: 18px;
    width: 16px;
}

.templateChooser table {
    margin: 0;
}

.templateChooser table td {
    padding: 5px;
}

.templateChooser .templateOverview {
    background-color: #fff;
    border: none;
    box-shadow: 3px 5px 5px 0 rgba(0, 0, 0, 0.5);
    display: none;
    left: -306px;
    margin: 0;
    max-height: 270px;
    overflow: auto;
    padding: 0;
    position: absolute;
    top: 18px;
    width: 320px;
    z-index: 90;
}

.templateChooser .title {
    cursor: pointer;
    float: left;
    font-weight: bold;
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
    width: 250px;
}

.templateChooser .buttons {
    float: right;
    width: 36px;
}

.templateChooser .summary {
    cursor: pointer;
    clear: both;
    line-height: 1.2;
}

.templateChooser .buttons a {
    cursor: pointer;
    display: block;
    float: right;
    font-size: 0;
    height: 16px;
    margin-bottom: 5px;
    padding: 0;
    width: 16px;
}

/* Hinweis Icons Auge durchgestrichen - Angaben werden nicht auf dem VMP veroeffentlicht */
.anonymousIcon {
    cursor: help;
    display: inline-block;
    height: 16px;
    margin: 0 5px;
    width: 16px;
}

/* =================================================================================
          PROJEKTRAUM / MEHRFACH ADRESSAUSWAHL EU FORM ANHANG A UND NEUE VERGABE EU
==================================================================================== */
.multiple-address-choose-seperator,
.multiple-choose-seperator {
    background-color: #bbb;
    height: 1px;
    margin: 15px 0 10px 0;
    max-width: 600px;
}

a.multiple-address-delete-link,
a.multiple-address-delete-link:hover {
    background-color: transparent;
    height: 16px;
    position: relative;
    text-decoration: none;
    top: 2px;
    width: 16px;
}

input[type="submit"].submit-button-image-edit,
input[type="submit"].submit-button-image-copy,
input[type="submit"].submit-button-image-delete {
    background-color: transparent !important;
    border: none !important;
    height: 16px !important;
    font-size: 0 !important;
    line-height: 0 !important;
    min-height: 16px !important;
    min-width: 16px !important;
    padding: 0 !important;
    position: relative;
    text-decoration: none !important;
    top: -3px;
}

input[type="submit"].submit-button-image-copy {
    width: 18px !important;
}

input[type="submit"].submit-button-image-edit,
input[type="submit"].submit-button-image-delete {
    width: 16px !important;
}

/* Verwendung im tbody einer Tabelle */
table tbody td input[type="submit"].submit-button-image-edit,
table tbody td input[type="submit"].submit-button-image-copy,
table tbody td input[type="submit"].submit-button-image-delete {
    top: -4px;
}

/* ========================================================================
   TEXTAREA UND EINZEILIGE TEXTFELDER ZAEHLUNG DER ZEICHEN  NEUE VERGABE EU
=========================================================================== */
/* Bei Textarea */
.textareaContainer {
    display: table-cell;
    float: left;
    left: -5px;
    margin: 0 0 10px 0;
    padding: 5px;
    position: relative;
    top: -5px;
}

.textareaContainer .templateChooser {
    float: left;
}

.textareaContainer textarea {
    margin-bottom: 0 !important;
    margin-right: 0 !important;
}

.textareaContainer .countCharTextFieldWrapper {
    clear: left;
    left: 100%;
}

.textareaContainer .countCharTextFieldWrapper .countCharTextField,
.textareaContainer .countCharTextFieldWrapper .countChar {
    top: 0;
}

/* Bei Einzeiligen Textfeldern */
.countCharTextFieldWrapper {
    float: left;
    position: relative;
}

.countCharTextField {
    display: none;
}

.countChar,
.countCharTextField {
    background-color: #656465;
    border-radius: 3px;
    color: #fff;
    cursor: default;
    font-family: Arial;
    font-size: 11px;
    font-weight: bold;
    padding: 3px;
    position: absolute;
    left: -41px;
    text-align: center;
    top: 29px;
    min-width: 35px;
    z-index: 98;
}

/* Wenn verbleibende Zeichen 0 sind */
.countCharTextField.charZero,
.countChar.charZero {
    background-color: #e0292e;
}

.countCharTextField.animated,
.countChar.animated {
    -webkit-animation-name: bounceIn;
    -webkit-animation-duration: 1s;
    -webkit-animation-iteration-count: 1;
    -webkit-animation-timing-function: ease-out;
    -webkit-animation-fill-mode: forwards;

    animation-name: bounceIn;
    animation-duration: 1s;
    animation-iteration-count: 1;
    animation-timing-function: ease-out;
    animation-fill-mode: forwards;
}

.countCharTextField.pulse,
.countChar.pulse {
    -webkit-animation-name: pulse;
    animation-name: pulse;
}

@-webkit-keyframes pulse {
    0% {
        -webkit-transform: scale(1);
    }
    50% {
        -webkit-transform: scale(1.2);
    }
    100% {
        -webkit-transform: scale(1);
    }
}

@keyframes pulse {
    0% {
        transform: scale(1);
    }
    50% {
        transform: scale(1.2);
    }
    100% {
        transform: scale(1);
    }
}

/* ToolTipp verbleibende Zeichen */
.countCharTextField:hover:after {
    background: #656465;
    border-radius: 3px;
    bottom: 130%;
    right: -50%;
    padding: 5px;
    position: absolute;
    white-space: nowrap;
}

.countCharTextField:hover:before {
    border-top: 20px solid #656465;
    border-left: 20px solid transparent;
    border-right: 20px solid transparent;
    bottom: 90%;
    content: "";
    height: 0;
    right: 0;
    position: absolute;
    width: 0;
}

/* Ausblenden der Zeichenzaehlung, wenn Felder readonly oder disabled */
textarea[disabled] + .countCharTextFieldWrapper,
textarea[readonly] + .countCharTextFieldWrapper,
input[type="text"][maxlength][disabled] + .countCharTextFieldWrapper,
input[type="text"][maxlength][readonly] + .countCharTextFieldWrapper {
    display: none !important;
}

/* Tooltipp - deutsch */
.countCharTextField[data-maxlength-language="DE"]:hover:after {
    content: "verbleibende Zeichen von max. " attr(data-maxlength-output);
}

/* Tooltipp - englisch */
.countCharTextField[data-maxlength-language="ENG"]:hover:after {
    content: "remaining characters of max. " attr(data-maxlength-output);
}

/* ==================================================================
         PR-RAUM UNTERNEHMEN ALTE VERFAHRENSANGABEN EU V2 (READONLY)
===================================================================== */
/* Tabellen im Projektraum nach VO-Ende */
table.tenderPreview {
    border-collapse: collapse;
    border: none;
}

table.tenderPreview th {
    font-weight: normal;
    width: 250px;
}

table.tenderPreview th,
table.tenderPreview td {
    border: none !important;
    color: #000 !important;
    background: none !important;
    line-height: 1;
    padding: 0 !important;
    text-align: left !important;
    vertical-align: top !important;
}

table.tenderPreview td {
    font-weight: bold;
    padding-left: 10px !important;
}

table.tenderPreview tr:hover,
table.procedureData tr:hover {
    background-color: transparent !important;
}

/* ========================================================================
   MULTIMANDANTEN-SWITCH (AFTER LOGIN)
=========================================================================== */
.mandator-switchbox {
    width: 480px;
    padding: 0;
    margin: 0;
}

.mandator-switchbox-header {
    padding: 0;
    margin: 0;
}

.mandator-switchbox-body {
    border-bottom: 1px solid;
    display: block;
    margin: 10px 0;
    max-height: 200px;
    min-height: 150px;
    overflow-y: auto;
    padding: 0;
}

a.mandator-switchbox-link,
span.mandator-switchbox-link {
    opacity: 0;
    display: flex;
    align-items: center;
    height: 35px;
    padding: 0;
    margin: 0 3px;
    display: -webkit-box;
    display: -moz-box;
    display: -ms-flexbox;
    display: -webkit-flex;
    display: flex;
    align-items: center;
    justify-content: center;
    text-decoration: none;
    border-bottom: 1px solid;
}

.mandator-switchbox-body .mandator-switchbox-link:first-child {
    border-top: 1px solid;
}

/* Kennzeichung Nutzer gesperrt */
span.mandator-switchbox-link {
    background: #ddd !important;
    cursor: not-allowed !important;
}

span.mandator-switchbox-link .mandator-switchbox-text {
    color: #999999 !important;
}

.mandator-switchbox-text {
    width: calc(100% - 45px);
    padding-left: 5px;
}

.mandator-switchbox-ghost-icon,
.mandator-switchbox-icon {
    display: flex;
    height: 100%;
    width: 40px;
    align-items: center;
    justify-content: center;
}

/* ============================================
        SHOW/HIDE PASSWORD
================================================ */
/* Hide MS Show/Hide Password Button */
::-ms-reveal {
    display: none;
}

/* Wrapper */
.password {
    display: inline-flex;
    position: relative;
}

/* Button */
.password__button {
    align-items: center;
    display: flex;
    height: 22px;
    justify-content: center;
    position: absolute;
    right:6px;
    width: 22px;
    top: 4px;
    z-index: 2;
    opacity: 0.5;
}

.password__button:focus {
    outline:0;
    box-shadow: none;
}

/* Icons */
.password__button.password__button--show {
    background-position: center -4px;
}

.password__button.password__button--hide {
    background-position: center -34px;
}

/* Textf- Passwordfield */
.password .password__input {
    min-width: 221px;
    width: 221px !important;
    padding-right: 35px!important;
}