/*************************************************************************
/*************************************************************************
*
*        CUSTOM STYLE OVERRIDE
*
*************************************************************************/

html { font-size: 87.5%; }

html body { /* avoid using !important by using a more specific selector */
    font-size: inherit;
    line-height: 1.6;
    color: #454545;
    cursor: default;
}

body > form {
    width: 80%;
    width: calc(100% - 50px);
    min-width: 1024px;
    max-width: 1280px;
    margin: 0 auto;
}

/* QuestManager styling */
body > .page {
    max-width: 960px;
    margin: 10px auto 20px;
    padding: 20px 25px 20px 60px;
    background-color: white;
    box-shadow: 0 5px 15px rgba(0,0,0,0.2);
}

#CCconteneur { min-width: 0; }

table input[type=radio],
table input[type=checkbox] {
    width: 20px;
    height: 20px;
    vertical-align: middle;
    cursor: pointer;
}
table input[type=radio] { border-radius: 10px; }
table input[type=radio]:focus,
table input[type=checkbox]:focus {
    outline: 0;
    box-shadow: 0 0 0 3px #66AFE9;
}
table input + label {
    padding-left: 10px;
    cursor: pointer;
}

.intro-img {
	height: auto;
	width: 100%;
	box-shadow: 0px 0px 10px 5px rgba(0, 0, 0, 0.2);
}

img { vertical-align: baseline; }

img[src$="info.png"],
img[src$="error.png"],
img[src$="warning.png"] {
    vertical-align: middle;
    margin-top: -3px;
}

/* hide some undesired items */
#divNavUp br,
#divNavDown br,
#CCcontent > br.clearBoth,
#CCcontent + br.clearBoth,
#CCspalteNavigation br,
/*.parentBreadcrumb,*/
/*.spalteKontext,*/
.webServiceBereichDiv,
.displayNoPrint,
.spalteKontext ~ br { display: none; }

/*Taille minimun des textarea à l'impression*/
.PrintDiv { min-height:50px; }
/* Elements invisibles */
.hidden,
.invisible,
select.invisible + .ui-combobox { display: none; color: transparent; background: transparent; border: none; }



/**************************************
    logout
/*************************************/

#CCcontent { position: relative; }
div.spalteKontext {
    position: absolute;
    top: 2px; right: 12px;
    display: block;
    float: none;
    width: auto; height: auto;
    margin: 0; padding: 0;
    background: transparent;
}
div.spalteKontext a {
    display: block;
    padding: 2px 10px;
    font-weight: normal;
    background: #eee;
    border: 1px solid #ccc;
    border-radius: 4px;
    box-shadow: 0 -13px rgba(0,0,0,0.05) inset;
    text-shadow: 0 1px white;
}
div.spalteKontext a:hover,
div.spalteKontext a:focus { box-shadow: none; }



/**************************************
    navigation
/*************************************/

#divNavUp .nav-buttons { display: inline-block; margin: 0; }
#divHeader { position: relative; z-index: 10; }

#CCspalteNavigation {
    top: 143px; /* header height */
    padding-top: 20px;
    padding-left: 15px;
    box-sizing: border-box;
}

#navPageList_DataListPg { border-top: 1px solid #ccc !important; }

td.navLevel1div,
td.navLevel1divActive { display: table-cell; } /* correct issue causing unwanted borders to appear on the nav items */

.navLevel1div,
.navLevel1divActive { padding: 0; border-top: 1px solid #ccc; }
.navLevel1divActive { background: transparent; }

.navLevel1div table,
.navLevel1divActive table { width: 100%; }
.navLevel1div td,
.navLevel1divActive td { padding: 0; }
.navLevel1div td:first-child,
.navLevel1divActive td:first-child { width: 20px; }
.navLevel1div a,
.navLevel1divActive a {
    position: relative;
    z-index: 5;
    display: block;
    /* make nav link zone cover the whole row rather than just the word... */
    margin: -1px -5px -1px -41px;
    padding: 10px 10px 10px 41px;
}
.navLevel1divActive a {
    padding-left: 35px;
    border-left: 5px solid #dc0018;
}
.navLevel1div a.navLevel1,
.navLevel1divActive a.navLevel1Active,
.navLevel1div a.navLevel1:hover,
.navLevel1divActive a.navLevel1Active:hover,
.navLevel1div a.navLevel1:focus,
.navLevel1divActive a.navLevel1Active:focus { background: transparent; }

/* small list bold letters */
#CCspalteNavigation i {
    display: inline-block;
    min-width: 1.2em;
	line-height: 1.2em;
	font-style: normal;
	font-weight: bold;
    text-align: center;
	color: white;
	background: #454545;
	border-radius: 2px;
}



/**************************************
    header
/*************************************/

#bundLogo { margin-top: 10px; }
#bundLogo h1 { margin: -3px 0 0; font-size: 1rem; }
#bundLogo img { width: 239px; margin-right: 25px; padding-right: 25px; } /* correct logo quality issue... */

#webHeaderLinks a,
#webHeaderLinks a:link,
#webHeaderLinks a:visited { padding-top: .5em; padding-bottom: .5em; }

div.parentBreadcrumb { width: auto; float: none; }
div.breadcrumb {
    height: auto;
    margin: 0 -15px 15px;
    padding: 5px 15px;
    font-weight: normal;
    color: inherit;
	background: #f2f2f2;
}



/**************************************
    navigation buttons
/*************************************/

.breadcrumbs { min-height: 18px; }
#divNavUp { text-align: center; }
#divNavUp .nav-controls { text-align: left; }

.nav-btn, .toolbar a { font-size: 1rem; }
#navUp_fileUploadLabel {
	position: absolute;
	right: 100%;
	margin-right: 90px;
	white-space: nowrap;
	border-radius: 4px;
}
#navUp_fileUploadLabel:before {
	float: none;
	display: inline-block;
	vertical-align: text-top;
}




/**************************************
    tooltip
/*************************************/

body .ui-tooltip {
    padding: .25em .75em;
    color: #454545;
    border: 1px solid #ccc;
    border-radius: 4px;
    box-shadow: 0 0 0 1px rgba(255,255,255,0.5), 0 0 15px rgba(0,0,0,0.2);
}



/**************************************
    content
/*************************************/

#CCcontent { min-height: 640px; margin-top: 20px; }
#divNavUp,
#WrapperTable,
#CCcontent { margin-bottom: 20px; }
#CCspalteContent { overflow: hidden; margin: 0; padding: 0 25px 0 280px; }





/**************************************
    error images
/*************************************/

img.error-marker,
img.warning-marker {
    width: 15px; height: 15px;
    margin: 0 0 0 5px;
    vertical-align: middle;
    pointer-events: none;
}

label img.error-marker,
label img.warning-marker {
    position: relative;
    z-index: 5;
    margin: -3px 0 0 3px;
}

.has-error,
.has-warning { position: relative; }
.has-error { color: #633; background: #fee; }
.has-warning .has-error,
.has-warning { color: #630; background: #fffab2; }
.has-error.has-warning {
    background-image: linear-gradient(135deg, #fffab2 16.67%, #ffeeee 16.67%, #ffeeee 50%, #fffab2 50%, #fffab2 66.67%, #ffeeee 66.67%, #ffeeee 100%);
    background-size: 42.43px 42.43px;
}
span.has-error {
    display: inline-flex;
    align-items: center;
    justify-content: flex-start;
    flex-wrap: nowrap;
    width: 100%;
    margin-right: -20px;
    background-color: transparent;
}

p.msg-error,
p.msg-warning {
    margin: 5px 0 10px;
    font-size: .85em;
    line-height: 1.2;
    text-align: justify;
}
p.msg-error:last-child,
p.msg-warning:last-child { margin-bottom: 0; }

.lbl-warning {
    flex-shrink: 0;
    position: relative;
    display: inline-block;
    width: 43px; height: 20px;
    margin: 0 0 0 5px; padding: 0;
    vertical-align: middle;
    background: #ddd;
    border: 1px solid #999;
    border-radius: 4px;
    box-shadow: 0 -10px 0 rgba(0,0,0,0.1) inset;
    cursor: pointer;
    transition: all 150ms linear;
}
.lbl-warning:before {
    content: " ";
    position: absolute;
    left: -1px; top: -1px;
    width: 22px; height: 20px;
    background: #ddd;
    border: 1px solid #999;
    border-top-left-radius: 4px;
    border-bottom-left-radius: 4px;
    box-shadow: 0 -10px 0 rgba(0,0,0,0.1) inset;
    transition: all 150ms ease-in-out;
}
.lbl-warning:after {
    content: " ";
    position: absolute;
    top: 2px;
    right: 2px;
    width: 16px;
    height: 16px;
    background: transparent url("../MetaImages/bullet_red.png") no-repeat;
}
.lbl-warning.checked {
    background-color: white;
    box-shadow: 0 3px 3px rgba(0,0,0,0.1) inset;
}
.lbl-warning.checked img {
    opacity: 0.8;
    filter: grayscale(100%);
}
.lbl-warning.checked:before {
    width: 0;
    background-color: transparent;
    border-color: transparent;
}
.lbl-warning.checked:after {
    background-image: url("../MetaImages/bullet_green.png");
}
.lbl-warning .warning {
    position: absolute;
    left: 3px; top: 2px;
    margin: 0;
}


/**************************************
    input styling override
    CD-BUND inspired
/*************************************/

input,
select,
textarea,
.ui-combobox,
.select2-container { margin: 0; vertical-align: middle; }

select,
textarea,
.Input,
.InputInt,
.Input.ui-widget { padding: .4em .3076em; font-size: 14px; }
select,
textarea,
.Input,
.InputInt {
	display: inline-block;
    line-height: 1.2;
    color: #555;
    border: 1px solid #757575;
    box-sizing: border-box;
    border-radius: 4px;
}
span.Input { min-height: 29px; }
select { max-width: 250px; max-height: 29px; } /* avoid height flickering when loading page */
textarea { display: block; }
.Input:focus,
.InputInt:focus {
	position: relative; z-index: 1;
    outline: none;
    border-color: #66afe9;
    box-shadow: 0 1px 1px rgba(0,0,0,0.075) inset,
        0 0 8px rgba(102,175,233,0.6);
}
.InputInt,
.InputIntReadonly { text-align: right; }
.inputInfo {}
.textarea-large {}
.Input.readOnlyField,
.InputInt.readOnlyField,
.InputIntReadonly,
.Input[readonly],
input[readonly],
input[disabled]
span.Input {
    color: #757575;
    background-color: #f5f5f5;
    cursor: default;
	min-width: 50px;
	pointer-events: none; 
}
input[disabled] { opacity: 0.75; }

.Input.readOnlyField:focus,
.InputInt.readOnlyField:focus,
.InputIntReadonly:focus,
.Input[readonly]:focus {
    border-color: #757575;
    box-shadow: none;
}
textarea.Input {
	width: 100%;
	height: 200px;
	min-width: 100%;
	max-width: 100%;
}
.input-large { width: 100%; }

input[type=checkbox],
input[type=radio] {
	vertical-align: baseline;
}

.ui-combobox { margin-right: 0; padding-right: 1.8em; box-sizing: border-box; }
.ui-combobox-input { border-top-right-radius: 0; border-bottom-right-radius: 0; }
.ui-combobox-button { border-color: #757575; }
/* set max combobox height */
.ui-combobox-menu ul.ui-autocomplete { max-width: 500px; max-height: 20em; }
.ui-combobox-menu .ui-menu-item { display: block; width: auto; padding: 0.35em; }
.ui-combobox-menu .ui-menu-item a { line-height: 1.2; }
.ui-combobox-menu .ui-menu-item:nth-child(even) { background: rgba(0,0,0,0.075); }



/**************************************
    titles and text
/*************************************/

h1, h2, h3, h4,
.surveyName,
.title-cell {
    margin: 0;
    padding: 11px 0;
    font-weight: 400;
    line-height: 23px;
    color: black;
}
h1,
.title-1{
    font-size: 2.5rem;
    font-weight: 100;
}
h2,
.surveyName,
.title-2 {
    font-size: 1.7rem;
}
h3,
.title-3 {
    font-size: 1.2rem;
}
h4,
.title-4 {
    font-size: 1.1rem;
}
h1 small,
h2 small,
h3 small,
h4 small,
.title-cell small {
	display: block;
	font-style: italic;
	color: #757575;
}

.title-cell em {
    margin: -.1em 5px 0 0;
    padding: .1em .2em;
    font-size: 0.8em;
    color: white;
    background: #069;
    font-style: normal;
    font-weight: 100;
    min-width: 1.1em;
    text-align: center;
    border-radius: 4px;
}

.title-table { position: relative; margin: 11px 0; }

.title-table .title-cell { padding-top: 0; padding-bottom: 0; }

.title-table .title-cell em {
    position: absolute;
    right: 100%;
	top: 0;
}

/* Tables */
/*
.table_level_1 { background-color: #3B92C5; }
.table_level_2 { background-color: #84C6ED; }
.table_level_3 { background-color: #B2DEF8; }
*/
.table_level_3,
.table_level_3.table-type-1 tr:hover,
.table_level_3.table-type-2 tr:hover { background-color: #e3e6e9; }

.title-with-data {}

.surveyName { display: block; }

.details { font-size: 0.8em; font-style: italic; }

.columns {
    column-count: 2;
    column-gap: 20px;
    margin-bottom: 1.6em;
}

p { margin: 0 0 20px; }

.strong { font-weight: bold; }
.emphasized { font-style: italic; }
.small { font-size: 0.8em; }
.big { font-size: 1.1em; }
.warning { font-weight: bold; color: #a30; }
.warning-text { font-size: 1.2em; font-weight: bold }

.message {
    padding: 4px 6px;
    background: #eee;
}
.message-error {
    position: relative;
    margin: 0; padding: 8px 12px;
    color: #a94442;
    background: #f2dede;
    border: 1px dotted #a94442;
    border-radius: 4px;
}
.message-warning {
    position: relative;
    margin: 0; padding: 8px 12px;
    color: #8a6d3b;
    background: #fcf8e3;
    border: 1px dotted #8a6d3b;
    border-radius: 4px;
}
.message.important {
    position: relative;
    margin: 0; padding: 8px 12px;
    color: #006699;
    background: #D8E8EF;
    border: 1px dotted #006699;
    border-radius: 4px;
}
.has-message .message.important { margin: -13px -10px; }
.special-01 .message.important { width: calc(222.222% + 20px); text-align: left; }


.message.important.with-arrow { margin: 15px 0; }
.message.important.no-margin-top { margin-top: 0 !important; }
.message.important.with-arrow:before,
.message.important.with-arrow:after {
    content: "\00A0";
    position: absolute;
    left: 50%; top: 100%;
    width: 0; height: 0;
}
.message.important.with-arrow.with-arrow-top:before,
.message.important.with-arrow.with-arrow-top:after {
    top: auto;
    bottom: 100%;
}
.message.important.with-arrow:before {
    margin-left: -9px;
    border-top: 13px solid #006699;
    border-left: 9px solid transparent;
    border-right: 9px solid transparent;
    
}
.message.important.with-arrow:after {
    margin-left: -8px;
    border-top: 12px solid #D8E8EF;
    border-left: 8px solid transparent;
    border-right: 8px solid transparent;
}
.message.important.with-arrow.with-arrow-top:before {
    border-top: none;
    border-bottom: 13px solid #006699;
    
}
.message.important.with-arrow.with-arrow-top:after {
    border-top: none;
    border-bottom: 12px solid #D8E8EF;
}
.message.important.with-arrow-left:before,
.message.important.with-arrow-left:after {
    content: "\00A0";
    position: absolute;
    right: 100%; top: 50%;
    width: 0; height: 0;
}
.message.important.with-arrow-left:before {
    margin-top: -9px;
    border-right: 13px solid #006699;
    border-top: 9px solid transparent;
    border-bottom: 9px solid transparent;   
}
.message.important.with-arrow-left:after {
    margin-top: -8px;
    border-right: 12px solid #D8E8EF;
    border-top: 8px solid transparent;
    border-bottom: 8px solid transparent;
}

.label-cell { line-height: 1; }

.text-left { text-align: left !important; }

/**************************************
    pseudo col system... o_o
/*************************************/

.two-col-l,
.two-col-r { float: left; max-width: 50%; }
.two-col-r:after {
	content: "\0020"; /* space character */
	display: table;
	clear: both;
}
.two-col-l > tbody > tr > td { padding-right: 10px; }
.two-col-r > tbody > tr > td { padding-left: 10px; }
.clear-l { clear: left; }
.clear-r { clear: right; }


/**************************************
    tables everywhere... T_T
/*************************************/

.table-input,
.table-radio,
.table-radio-h,
.table-checkbox,
.table-repeat { margin-bottom: 20px; }

.table-input .table-radio,
.table-input .table-radio-h { margin-bottom: 0; }
.table-input.full-width .Input,
.table-input.full-width .ui-combobox { width: 100%; }
.table-input.full-width .ui-combobox .Input { width: 100%; }
.table-input.full-width.with-suffix input,
.table-input.full-width.with-suffix .Input,
.table-input.full-width input.with-suffix,
.table-input.full-width .Input.with-suffix { width: 70%; }

.table-input hr {
    margin: 0 -10px;
    padding: 0;
    border: 0;
    border-top: 1px solid #ccc;
}

.Input.narrow,
.table-input.full-width .Input.narrow { width: 33%; }
.Input.narrow-ish,
.table-input.full-width .Input.narrow-ish { width: 66%; }
.table-input.full-width select.narrow-ish + .ui-combobox { width: 66%; }
.table-input.full-width select.narrow-ish + .ui-combobox .narrow-ish { width: 100%; }
.Input.narrow-fixed,
.table-input.full-width .Input.narrow-fixed { width: 77px; }
.Input.narrow-fixed.extra,
.table-input.full-width .Input.narrow-fixed.extra { width: 105px; }
.ui-combobox.half,
.table-input.full-width .ui-combobox.half { width: 50%; }

.table-input > tbody > tr > td,
.table-radio > tbody > tr > td,
.table-radio-h > tbody > tr > td,
.table-checkbox > tbody > tr > td { padding-top: 5px; padding-bottom: 5px; }
.table-input > tbody > tr > td + td,
.table-radio > tbody > tr > td + td,
.table-checkbox > tbody > tr > td + td { padding-left: 10px; }
.table-radio-h > tbody > tr > td + td { padding-left: 20px; }

.table-radio input { float: left; }
.table-radio input + label { display: block; padding-left: 30px; }
.table-checkbox td:first-child { width: 1px; }

.table-radio-h { display: inline-table; vertical-align: middle; }

.table-half { max-width: 50%; }
.table-3-4 { max-width: 75%; }
.table-auto { width: auto !important; max-width: 100%; }

.table-spaced > tbody > tr > td { padding-left: 10px; padding-right: 10px; }
.table-spaced > tbody > tr > td:first-child { padding-left: 0; }
.table-spaced > tbody > tr > td:last-child { padding-right: 0; }

.table-col-2 > tbody > tr > td { width: 50%; }
.table-col-2b > tbody > tr > td:first-child { width: 40%; }
.table-col-2b > tbody > tr > td:first-child + td { width: 60%; }
.table-col-2.table-col-2c > tbody > tr > td:first-child { text-align: right; }
.table-col-3 > tbody > tr > td { width: 33.33%; }
.table-col-4 > tbody > tr > td:first-child,
.table-col-4 > tbody > tr > td:first-child + td + td { width: 22.5%; text-align: right; }
/* .table-col-4 > tbody > tr > td.title-cell { text-align: left;  */
.table-col-4 > tbody > tr > td:first-child + td,
.table-col-4 > tbody > tr > td:first-child + td + td + td { width: 27.5%; }
.table-col-4 .Input.full-width-input { width: calc(284.5% + 40px); }
.table-col-2-4 > tbody > tr > td:first-child { width: 22.5%; text-align: right; }
.table-col-2-4 > tbody > tr > td:first-child + td { width: 77.5%; }
.table-col-3-4 > tbody > tr > td:first-child { width: 50%; text-align: right; }
.table-col-3-4 > tbody > tr > td:first-child + td { width: 22.5%; }
.table-col-3-4 > tbody > tr > td:first-child + td + td { width: 27.5%; }
.table-col-3-4b > tbody > tr > td:first-child { width: 22.5%; }
.table-col-3-4b > tbody > tr > td:first-child + td { width: 27.5%; }
.table-col-3-4b > tbody > tr > td:first-child + td + td { width: 50%; }

.table-info-img { position: relative; }
.table-info-img td:first-child { position: absolute; left: -33px; bottom: 5px; }
.table-info-img td:first-child img { vertical-align: bottom; }

.table-indent > tbody > tr > td:first-child { padding-left: 30px; }
.table-indent > tbody > tr > td.no-padding { padding-left: 0; }

.table-underline,
.table-underline-simple { border-bottom: 1px solid #ccc; }
.table-underline { margin-bottom: 15px; }
.table-underline > tbody > tr:last-child > td { padding-bottom: 15px; }

.page-quest .table-col-2 > tbody > tr > td:first-child { padding-right: 10px; text-align: right; }
.page-quest .table-col-2 > tbody > tr > td:first-child + td { padding-left: 10px; }

.page-quest .table-col-2 table label { padding-left: 5px; }
.page-quest .table-col-2 table td + td { padding-left: 15px; }

.page-quest .table-col-2.table-input td:first-child { vertical-align: top; }

.space-before { margin-top: 30px; }
.space-after { margin-bottom: 30px; }
.pull-before { margin-top: 0; }
.pull-after { margin-bottom: 0; }

.space-no-before { margin-top: 0; }
.space-no-after { margin-bottom: 0; }

td.space-before { margin-top: 0; padding-top: 20px; }
td.space-after { margin-bottom: 0; padding-bottom: 20px; }
td.space-no-before { padding-top: 0; }
td.space-no-after { padding-bottom: 0; }

td.paragraph-ish { padding-bottom: 10px; }

.table-input p.small { margin-bottom: 0; font-style: italic; }

.table-special-1 {
    position: relative;
    background: #eee;
    border-radius: 5px;
    border-collapse: separate;
}
.table-special-1 > tbody > tr > td:first-child { padding-left: 10px; }
.table-special-1:before {
    content: "\00A0";
    position: absolute;
    left: 25%;
    top: -12px;
    margin-left: 14px;
    width: 0; height: 0;
    border-left: 8px solid transparent;
    border-right: 8px solid transparent;
    border-bottom: 12px solid #eee;
}

.table-col-3-4.table-rent td:nth-child(4),
.table-col-3-4.table-rent td:nth-child(5),
.table-col-2b.table-rent td:nth-child(3),
.table-col-2b.table-rent td:nth-child(4) { display: none; }

.table-pull-bottom { margin-bottom: -4em; }

.inner-full-width {
    padding-left: 0 !important;
    padding-right: 0 !important;
}
.inner-full-width > .message.important {
    margin-right: -344.44%;
    text-align: left;
}


/**************************************
    information box
/*************************************/

.info-box {
    overflow: hidden;
	margin: 15px 0;
	background: #f2f2f2;
	border: 1px dotted #666;
    border-collapse: separate;
    border-radius: 15px;
}
.info-box td { padding: 30px; }
.info-box h4 { margin-bottom: 5px; }
.info-box h4:first-child { margin-top: 0; }
.info-box ul { margin-bottom: 20px; }
.info-box li { margin-bottom: 10px; }
.info-box p { position: relative; }
.info-box p .note { position: absolute; right: 100%; margin-right: 5px; }
.info-box p:last-child { margin-bottom: 0; }

div.info-box { margin: 10px -10px; padding: 0 10px 10px; }

/* welcome page */
#form1 #CCcontent { position: relative; }
#form1 div.info-box {
	position: absolute;
    left: 0; top: 90px;
    width: 210px;
    margin: 10px;
}


/**************************************
    special cases
/*************************************/

/*Longueur des listes déroulantes*/
.dropDown500{ width:500px; }
.dropDown100{ width:100px; }
.dropDown50{ width:50px; }

#btnSendData {
	margin: 0 0 20px;
	color: white;
	background: #dc0018;
	border: 1px solid #b00;
}
#btnSendData:hover { background-color: #e03; }

.ui-autocomplete.ui-menu { z-index: 10 !important; }

.table-info > tbody > tr:first-child > td { vertical-align: bottom; }
.table-info > tbody > tr:first-child + tr > td,
.respondent-info > tbody > tr:last-child > td { vertical-align: top; }
.respondent-info > tbody > tr > td:first-child { padding: 2px 10px; }
.respondent-info > tbody > tr > td:last-child { padding-left: 10px; }
.respondent-info td { vertical-align: middle; }

.respondent-info .Input {
    height: 28px;
	margin: -1px 0 0;
    padding: 2px 10px;
    line-height: 20px;
	border-radius : 0;
	border-top-style: dotted;
	border-bottom-style: dotted;
}
.respondent-info tr:first-child .Input {
	border-top-style: solid;
	border-top-left-radius: 4px;
	border-top-right-radius: 4px;
}
.respondent-info tr:last-child .Input {
	border-bottom-style: solid;
	border-bottom-left-radius: 4px;
	border-bottom-right-radius: 4px;
}
.respondent-info.full-width .Input { width: 100%; }

/* hideen if erst */
.is-erst #P2S4T10 td:first-child + td,
.is-erst #P2S4T12 td:first-child + td,
.is-erst #P2S4T17 td:first-child + td { display: none; }
.is-erst #P2S4T10 td:first-child + td + td,
.is-erst #P2S4T12 td:first-child + td + td,
.is-erst #P2S4T17 td:first-child + td + td { width: 50%; }



/**************************************
    input locks
/*************************************/

.edit-lockpad {
    display: inline-block;
    width: 27px; height: 16px;
    margin: 0 -1px 0 0;
    padding: .4em 0;
    font-size: 14px;
    text-align: center;
    vertical-align: bottom;
    background: #eee;
    border: 1px solid #757575;
    border-top-left-radius: 4px;
    border-bottom-left-radius: 4px;
    cursor: pointer;
}
.edit-lockpad:after {
    content: "\00A0";
    display: inline-block;
    width: 16px;
    height: 16px;
    background: transparent url("../../Images/ui-icons_454545_256x240.PNG") -80px -129px no-repeat;
}
.edit-lockpad.locked:after {
    background-position: -64px -113px;
}
.edit-lockpad + input {
    border-top-left-radius: 0;
    border-bottom-left-radius: 0;
}


/********************************************************************

    BUTTON GROUPS WANABE

********************************************************************/

.table-radio-btn { display: inline-table; vertical-align: middle; }
.table-radio-btn input { position: absolute; left: -9999px; /* hidden but focusable */ }
.table-radio-btn label {
    display: block;
    margin: 0 0 0 -1px;
    padding: 6px 12px;
    line-height: 16px;
    vertical-align: baseline;
    text-align: center;
    white-space: nowrap;
    background: #e3e6e9;
    background: linear-gradient(to bottom, #f3f6f9 0%, #e8ebee 50%, #dde0e3 50%, #d3d6d9 100%);
    border: 1px solid #ccc;
    text-shadow: 0 1px 0 #fff;
    cursor: pointer;
}
.table-radio-btn label:hover,
.table-radio-btn label:focus,
.table-radio-btn label:active { box-shadow: 0 0 8px rgba(255,255,255,0.75) inset; }
.table-radio-btn input:focus + label,
.table-radio-btn input:checked + label { position: relative; z-index: 5; }
.table-radio-btn input:focus + label { box-shadow: 0 0 0 2px #66AFE9; }
.table-radio-btn input:checked + label {
    color: white;
    background: #069;
    border-color: #046;
    text-shadow: 0 -1px 0 #000;
}
.table-radio-btn input[disabled] + label { opacity: 0.5; cursor: default; }
.table-radio-btn td:first-child label { border-top-left-radius: 4px; border-bottom-left-radius: 4px; }
.table-radio-btn td:last-child label { border-top-right-radius: 4px; border-bottom-right-radius: 4px; }
.table-radio-btn.full-width { width: 100%; }
.table-radio-btn.half-width { width: 50%; }
.table-radio-btn.third-width { width: 33.33%; }
.table-radio-btn.width-50 td { width: 50px; }
.table-radio-btn.equal-2 td { width: 50%; }
.table-radio-btn.equal-3 td { width: 33.33%; }
.table-radio-btn.equal-4 td { width: 25%; }
.table-radio-btn.equal-5 td { width: 20%; }
.table-radio-btn.equal-6 td { width: 16.66%; }

.table-radio-btn.equal-2 label,
.table-radio-btn.equal-3 label,
.table-radio-btn.equal-4 label,
.table-radio-btn.equal-5 label,
.table-radio-btn.equal-6 label { padding-left: 6px; padding-right: 6px; }

.table-radio-btn.flex,
.table-radio-btn.flex > tbody { display: inline; }
.table-radio-btn.flex > tbody > tr,
.table-radio-btn.flex > tbody > tr > td { display: flex; }
.table-radio-btn.flex.col-full > tbody > tr { width: 100%; margin-right: -505px; }



/**************************************
    quest list pages...
/*************************************/

form[action$="ListPage.aspx"] .dataGrid,
form[action$="ListPage.aspx"] #CCspalteContent > table { float: none; width: 100%; }
form[action$="ListPage.aspx"] .dataGrid td,
form[action$="ListPage.aspx"] #CCspalteContent > table td { vertical-align: middle; }
form[action$="ListPage.aspx"] .dataGrid td:first-child,
form[action$="ListPage.aspx"] #CCspalteContent > table td:first-child { width: 5%; }
form[action$="ListPage.aspx"] .dataGrid td:last-child,
form[action$="ListPage.aspx"] #CCspalteContent > table td:last-child { width: 2.5%; text-align: center; }
form[action$="ListPage.aspx"] a.menuLink {
    display: inline-block;
    margin: 0; padding: 3px 9px;
    text-decoration: none;
    background: #eee;
    border: 1px solid #ccc;
    border-radius: 4px;
    text-shadow: 0 1px 0 white;
    box-shadow: 0 -15px 0 rgba(0,0,0,0.05) inset;
}
form[action$="ListPage.aspx"] a.menuLink:focus,
form[action$="ListPage.aspx"] a.menuLink:hover,
form[action$="ListPage.aspx"] a.menuLink:active {
    color: #069;
    background-color: #eee;
    box-shadow: 0 0 0 rgba(255,255,255,0.5) inset;
}



/**************************************
    login page
/*************************************/

form[action$="loginPage.aspx"] .spalteKontext { display: none; }




/**************************************
    visualisation settings
/*************************************/

/* Select 2 specific */
.select2-container { padding: 0; border: none; }
.select2-container .select2-choice { min-height: 27px; line-height: 27px; }
.select2-container .select2-choice,
.select2-container.select2-drop-above .select2-choice { background: white; }
.select2-container .select2-choice abbr { right: 26px; top: 6px; }
.select2-container .select2-choice .select2-arrow { width: 24px; background: #eee; border-left-color: rgba(0,0,0,0.2); }
.select2-container.select2-dropdown-open .select2-choice .select2-arrow { background: transparent; }
.select2-container .select2-arrow b{ border-left: 3px solid transparent; box-sizing: border-box; }
.select2-container .select2-choice > .select2-chosen { margin-right: 32px; text-align: left; }

.select2-container.cmbTrans .select2-choice,
.select2-container.cmbTrans.select2-drop-above .select2-choice,
.select2-container.cmbTrans .select2-choice .select2-arrow { background: transparent; }

.select2-container-active .select2-choice { position: relative; z-index: 110; }

.select2-drop-mask { z-index: 99; }
.select2-drop { z-index: 100; max-width: 600px; padding-top: 4px; }
.select2-drop.select2-drop-active { margin-top: -2px; border-top: 1px solid #5897fb; }
.select2-drop.select2-drop-active.select2-drop-above { margin-top: 0; padding-top: 0; border-bottom: 1px solid #5897fb; }
.select2-results { max-height: 350px; }
.select2-results li { padding: 5px 0; border-top: 1px dotted #ccc; }

.combo-item { display: block; clear: both; padding-right: 10px; line-height: 22px; }
.combo-item:after { content: "\0020"; display: table; clear: both; }

.combo-item strong,
.combo-item span,
.combo-item i { display: inline-block; line-height: inherit; vertical-align: baseline; }
.combo-item span { white-space: normal; }
.combo-item strong { font-weight: normal; }
.combo-item i { margin-right: 10px; font-style: normal; }
.combo-item .content { display: block; }

.large .combo-item { white-space: normal; }
.large .combo-item strong { display: block; font-weight: bold; }
.large .combo-item img { float: left; margin-right: 10px; }
.large .combo-item .main { display: inline; }

.combo-selection { height: 26px; overflow: hidden; }
.combo-selection img { float: right; margin-top: -1px; }

/*
.freight .combo-item { position: relative; padding-left: 135px; }
.freight .combo-item img { position: absolute; left: 0; top: 0: }
*/

.small .combo-item,
.country .combo-item { position: relative; }
.small .combo-item { padding-left: 30px; }
.country .combo-item { padding-left: 60px; }
.small .combo-item i,
.country .combo-item i {
	position: absolute;
	left: 0; top: 0;
	font-weight: bold;
}

/* landlord select */
.landlord-name,
.landlord-detail,
.landlord-street,
.landlord-city { display: block; }
.landlord-detail { font-size: .9em; }
.landlord-street,
.landlord-city { font-size: .75em; }

#s2id_landlordEntrepriseNameTx a {
    height: auto;
    min-height: 45px;
    padding: .4em .3076em;
    line-height: 1.2;
    white-space: normal;
}

#s2id_landlordEntrepriseNameTx .select2-chosen { white-space: normal; }

.select2-results li { margin-left: 0; margin-right: 5px; border-bottom: 1px solid #ccc; }



/**************************************
    visualisation settings
/*************************************/

/* horrible selector nominee... >_< */
div[aria-describedby=ViewFormular] {
	left: 50% !important;
	top: 5% !important;
	min-width: 960px;
    min-height: 90%;
    margin: 0px 0px 0px -480px;
}

#ViewFormular {
    position: absolute;
	left: 0;
	top: 0;
    height: 100% !important;
	padding: 10px 10px 10px 55px;
    border-top: 44px solid transparent;
    border-bottom: 62px solid transparent;
    box-sizing: border-box;
}

#ViewFormular + .ui-widget-content {
	position: absolute;
    left: 0;
    bottom: 0;
    width: 100%;
    background: transparent;
    box-sizing: border-box;
}

#dialog-message + #ViewFormular { display: none; }

/**************************************
    last page
/*************************************/

#PrintPage .nav-btn-save,
#PrintPage .nav-btn-upload,
#PrintPage .nav-btn-validate,
/* hide dialog message when not in use, avoid FOUC */
#CCspalteContent > #dialog-message,
#CCspalteContent > #dialog-sendData { display: none; }

#dialog-message,
#dialog-sendData { overflow: hidden; height: auto !important; }

#PrintPage .toolbar .nav-btn,
#PrintPage .nav-buttons .nav-btn { border-radius: 4px; }

#btnSendData {
	margin: 0 0 20px;
	color: white;
	background: #069;
	border: 1px solid #058;
}
#btnSendData:hover { background-color: #004b70; }
#btnSendData:active { background-color: #00334d; }


/**************************************
    print settings
/*************************************/

.print-only { display: none; }

/* page breaks */
.page-break { page-break-after: always; }
.block-remarks,
.repeater-item { page-break-inside: avoid; }
.page-container { page-break-before: always; clear: both; }
.page-container:first-child { page-break-before: avoid; }
.block-transport-header { page-break-after: avoid; }

/* final page print */
form > #WrapperTable > tbody > tr > td > div { padding-left: 60px; }
body.print-page { zoom: normal !important; width: 1024px; }
.print-page > form { width: 100%; min-width: 0; max-width: none; }
.print-page .quest-container { padding: 0 10px; }
.page-container:after { content: " "; display: table; clear: both; }

#web_PrintHeader { display: block; padding-left: 30px; }
#web_PrintHeader img { width: 100%; }

div.printBreadcrumb {
    height: auto;
    padding: 5px 10px;
    border-left: 50px solid white;
    border-right: 20px solid white;
    box-sizing: border-box;
}

div.PdfPrint { width: 1024px !important; }
div.PdfPrint .ui-combobox-input { border-top-right-radius: 4px; border-bottom-right-radius: 4px; }
div.PdfPrint .ui-combobox-button { display: none; }
div.PdfPrint .print-only { display: block; }
div.PdfPrint .page-container + .page-container { margin-top: 500px; } /* force page break with silly PDF creator */
div.PdfPrint .page-container:last-child { margin-top: 28cm; } /* force page break with silly PDF creator, for last page */
div.PdfPrint .page-container:first-child:last-child { margin-top: 0; } /* avoid excessive margin with a single page */
div.PdfPrint .page.day > table:first-child { clear:both; }
div.PdfPrint .page.day > table:first-child:before,
div.PdfPrint .page.day > table:first-child:after { content: " "; display: table; clear: both; }

/* direct page print */
@media print {
	html { font-size: 10pt; }
	body { zoom: normal !important; }
	body > form { width: 100%; min-width: 0; max-width: none; }
	#CCconteneur { min-width: 0; }
	#CCspalteNavigation { display: none; }
	#CCspalteContent { padding-left: 60px; }
	#webHeaderLeft { width: 450px; }
	#bundLogo { width: 450px; }
	#webServiceBereichDiv { width: auto; }
	#webHeaderLinks,
	#divNavDown { display: none; }
}

/* 
SBE 2023.04.24
specific to the warning msgs that is cut (BUILD-6991)
*/
#CxOWNERxTYPExNB_0_achPar span.has-error,
#FxRENTxPARKxSUPPLEMENTxNB_0_achPar span.has-error {
	display: block;
}