
/* 
	Experimental layout improvements for external pages 
	To see this add the class ext to the form element in DocumentEditorPage
*/

.ext * {
	font-family: 'Roboto', sans-serif;
}

body.ext {
	background:#23099f;
	color:#333;
}

.ext p {
	font-size: 11pt;
}

.ext .page-width {
	width:1200px;
	margin:0 auto;
	text-align:left;
}

.ext .maincontent .page-width > h1 {
	padding-top:15px;
}

.ext .maincontent h1 {
	font-size:20pt;
	margin-bottom:10px;
}

.ext .banner {
	position:fixed;
	top:0;
	left:0;
	right:0;
	height:122px;
	z-index:10;
	color:#333;
	border-bottom:0;
	box-shadow:0 2px 5px rgba(0,0,0,0.2);
}

.ext .banner .page-width {
	position:relative;
}

.ext .banner-logo {
	display:block;
	float:left;
}

.ext .logo {
	margin-left:0;
}

.ext .logo img {
}

.ext .banner-title {
	position:relative;
	margin:8px 0 0 15px;
	padding:0px 0 0px 15px;
	float:left;
	border-left:1px solid #ccc;
}

.ext .banner-title h1 {
	display:block;
	color:#23099f;
	font-size:2.9rem;
	padding:0;
	margin:0;
}

.ext .banner-title h2 {
	display:block;
	color:#0079ac;
	font-size:1.8rem;
	padding:0;
	margin:0;
}

.ext .testservername {
	display:inline-block;
	position:absolute;
	top:5px;
	left:270px;
	width:200px;	
	color:#c92;
	border-radius:5px;
	font-weight:bold;
	text-align:left;
	padding:5px;	
}

.ext .banner-breadcrumbs {
	clear:both;
	position:relative;
	top:10px;
	background:#0079ac;	
}

.ext .breadcrumbs {
	list-style-type: none;
	color:white;
	margin:0;
	padding:4px 10px;
	font-size:16px;	
}

.ext .breadcrumbs li {
	display:inline-block;
	color:white;
	font-style:italic;
}

.ext .breadcrumbs li a:hover {
	color:#ddd !important;
}

.ext .breadcrumbs img {
	vertical-align:top;
	height:16px;
	margin-top:1px;
	margin-left:2px;
}

.ext .breadcrumbs em {
	font-style:italic;
	color:white;
}

.ext .clearfix::after {
	content:"";
	clear:both;
	display:table;
}

.ext .banner-systemmessage {
	margin-top:10px;
	padding:4px 10px;
	clear:both;
	background:#ec0;
	color:#640;
	font-size:16px;
	font-style:italic;	
}

.ext .banner-systemmessage img {
	height:16px;
	margin:0px 5px;
	vertical-align:top;	
}

.ext .banner-ui {
	position:absolute;
	top:5px;
	right:0;
	padding:5px;
}

.ext .langdiv {
	margin-bottom:4px;
}

.ext .banner-button {
	display:inline-block;
	padding:5px 5px;
	color:white;
	background:#0079ac;
	text-align:center;
	width:72px;
	border-radius:4px;
}

.ext .banner-search {
	height:32px;
	clear:both;
}

.ext .banner-search input {
	float:left;
	border-radius:0;
	background:transparent;
	border:1px solid white;
	padding:6px;
	color:white;
	height:30px;
	box-sizing:border-box;
}

.ext .banner-search input:focus {
	outline:none !important;
	border-color:white !important;
	box-shadow:none !important;
	background:rgba(255,255,255,0.1);
}

.ext .banner-search input:first-child {
	border-right:0;
	margin-bottom:8px;
}

.ext .banner-search input[type=submit] {
	background: url(../images/search-white.png);
	background-repeat:no-repeat;
	background-size:20px 20px;
	background-position: 5px 4px;
	border-left:0;
	width:30px;
	cursor:pointer;
}

.ext .banner-search input[type=submit]:hover,
.ext .banner-button:hover {
	background:#00668E;
}

.ext .maincontent {
	padding-top:120px;
	padding-bottom:0;
	background:#e8e8e8;
}

.ext .maincontent .page-width {
	box-sizing:border-box;
	background:white;
	padding:20px;
	min-height:73vh;
	box-shadow:0 -5px 10px rgba(0,0,0,0.5);
}

.ext .footer {
	color:white;
	padding-top:10px;
	border-top:5px solid #0079ac;
}

.ext .footer p {
	font-size:1.2rem;
	text-align:left;
}

.ext .footer a {
	color:white;
}

.ext .footer a:hover {
	text-decoration:underline;
}

.ext .footer img {
	padding:15px 20px;
	float:left;
	height:85px;
}

.ext .footer .footer-block {
	padding:20px;
	float:left;
}

.ext .project-info {
	text-align:center;
	font-size:1.4em;
	margin-bottom:10px;
}

.ext .project-info a {
	font-size:1.2em;
}

.ext .buttonrow {
	padding-top:15px;
    margin-left: -20px;
    margin-right: -20px;
}


.ext .tabpanel .tab-row {
	float:none;
	/*
	display:block;
	*/
	display:table;
	margin:0 -20px 0 -20px;
	padding:0 20px;
	width:100%;
}

.ext .tabpanelint .tab-row ul,
.ext .tabpanel .tab-row ul {
	display: table-row;
	width:100%;
	/*display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	*/
	padding:0 !important;
}

.ext .tabpanel .tab-row li {
	/*
	-ms-flex-preferred-size: 100%;
	flex-basis: 100%;
	*/
	display: table-cell;
	float:none;
    display: table-cell;
    width: 1%;
    background:#f7f7f8 !important;
	border-top-left-radius:6px;
	border-top-right-radius:6px;
	padding: 0;
	color: white;
	font-weight: bold;
	font-size: 1em;
	text-align: center;
	border-top:1px solid #ddd;
	border-left:1px solid #ddd;
	border-right:1px solid #ddd;
	border-bottom:1px solid #888;
	box-sizing: border-box;
}

.ext .tabpanel .tab-row li.selected {
	background:white !important;	
	z-index:2;
	border-top:1px solid #888;
	border-left:1px solid #888;
	border-right:1px solid #888;
	border-bottom:1px solid white;
}

.ext .tabpanel .tab-row li.selected input {
	background:none;
	border:none;
	font-weight:bold !important;
}

.ext .tabpanel .tab-row li input.flarge {
	font-size: 13pt;
}

.ext .tabpanel .tab-row li input.fnormal {
	font-size: 12pt;
}

.ext .tabpanel .tab-row li input.fsmall {
	font-size: 11pt;
	padding: 6px 10px 6px 10px	
}

.ext .tabpanel .tab-row li a,
.ext .tabpanel .tab-row li input {
	display:block;
	font-weight:normal !important;
	background:none;
	width:100%;
	height:100%;
	text-align: center;
	font-size:12pt;
	padding: 6px 15px 6px 15px;
	margin:0;
	color:#333;
}

.ext .tabpanel .tab-row li:hover {
	background-color:#f0f0f0 !important;
}
.ext .tabpanel .tab-row li.selected:hover {
	background-color:#f8f8f8 !important;
}

.ext .tabpanel .tab-row li:hover input {
	background-image:none;
}

.ext div.tab-panel {
	padding:10px 0px;
}

.ext div.tabpanel {
	padding-top:10px;
}

.ext .fieldhelp,
.ext .fielddesc {
	color:#333;
	background-color:#F5F4E7;
    border: 1px solid #DBDAD0;
	margin-bottom:10px;
}

.ext h4 .fielddesc {
	font-size:1.3em !important;
	background-image:none;
	color: #0079AC;
    background-color: #E4F2F8;
    border: 1px solid #CCD8DD;
}

.ext textarea {
	border-radius:3px;
	resize: vertical;
}

.ext .budget input.number,
.ext .budget input.financial_amount,
.ext .balance input.number {
	padding:2px 6px !important;
}

.ext select,
.ext .textsmall,
.ext .textsmallpluss,
.ext .textmedium,
.ext .textmediumpluss,
.ext .textlarge,
.ext .textline,
.ext .textdate,
.ext .textyear,
.ext input.number,
.ext textarea.mediumpluss,
.ext table.budget input[type="text"],
.ext table.border input[type="text"] {
	border-radius:3px;
	border:1px solid #aaa;
	padding:4px 6px;
	box-sizing:border-box;
}

.ext select[disabled], 
.ext input[disabled], 
.ext textarea[disabled] {
	border-radius:3px;
	border:1px solid #aaa;
	padding:4px 6px;
	background:#ddd;
	color:#aaa;
}

.ext input[disabled]:hover {
	background:#ddd;
	color:#aaa;
	border:1px solid #aaa;
}

.ext select:focus,
.ext input[type="text"]:focus,
.ext textarea:focus {
    border-color: #66afe9;
    outline: 0;
    -webkit-box-shadow: inset 0 1px 1px rgba(0,0,0,.075), 0 0 8px rgba(102,175,233,.6);
    box-shadow: inset 0 1px 1px rgba(0,0,0,.075), 0 0 8px rgba(102,175,233,.6);
}

.ext .textdate {
	width:8em;
}

.ext .number {
	width:8em;
}

.ext textarea.multitextline {
	box-sizing:border-box;
	width:100%;
	font-size:1em;
}

.ext label + .fielddesc,
.ext label + textarea {
	margin-top:5px;
}

.ext span.label span,
.ext label span {
}

.ext .reqred,
.ext .req {
	margin-left:3px;
	font-size:14pt;
	height:12px;
	vertical-align:top;
	margin-top:-2px;	
	display:inline-block;
}

.ext .reqred {
	color:#a00;
}

.ext div.fieldhelp, 
.ext div.fielddesc {
	font-size:10pt;
	position:relative;
	padding:8px;
}



.ext div.fielddesc a {
	font-size:10pt;
}

.ext fieldset label {
	font-size:11pt;
	margin-bottom:6px;
}

.ext fieldset .fieldwrapper {
	background:none;
	border-bottom:1px dotted #ccc;
}

.ext fieldset .fieldwrapper:last-child {
	border-bottom:none;
	margin-bottom:0;
}

.ext .rightlabels .fieldwrapper > label {
	text-align:right;
}

.ext .shortrightlabels .fieldwrapper > label {
	text-align:right;
	width:15em;
}

.ext h4 div.fielddesc {
	font-size:12pt;
	margin-top:10px;
}

.ext label.multitextlinelabel {
	font-size:11pt;	
}

.ext a {
}

.ext .feedbackPanel {
	clear:both;
	font-size:11pt;
	margin-bottom:10px;
	padding:5px 10px;
}

.ext .feedbackPanel span.feedbackPanelERROR {
	background-image:none;
	padding-left:0;
}

.ext .feedbackPanel li.feedbackPanelERROR {
	position:relative;
}

.ext .feedbackPanel span.feedbackPanelERROR::before {
	position:absolute;
	left:5px;
	top:2px;
	content: "!";
	font-family: serif;
	font-size:11pt;
	font-weight: bold;
	font-style: normal;
	background:#b44;
	padding:0px 7px;
	color:white;
	border-radius:50%;
}

.ext .feedbackPanelERROR {
	color:#b44;
	padding:3px;	
}

.ext .feedbackPanel li.feedbackPanelERROR {
	padding-left:28px;
}

/*
.ext div.fielddesc:after {
	position:absolute;
	right:10px;
	bottom:5px;
	content: "i";
	font-family:serif;
	font-size:30px;
	font-weight: bold;
	font-style: normal;
	opacity:0.1;
	border:1px solid black;
	padding:3px 8px;
	border-radius:30px;
}
*/

.ext h4,
.ext .fielddesc {
	margin-right:0px;		
}

.ext .fielddesc ul li {
    margin-left: 20px;
}

.ext h4 div.fielddesc:after {
	content: "";
}

.ext .buttonrow input {
	font-size:12pt !important;
}

.ext input[type="submit"] {
	font-size:10pt;
	padding:6px 12px;
	margin-bottom:5px;
}

.ext .wfNotStarted {
	text-align: center;
	background-color: #f06060;
	color: black;
}

.ext .wfStarted {
	text-align: center;
 	background-color: #f0f070;
	color: black;
}
 
.ext .wfStarted2 {
	text-align: center;
 	background-color: #FFFFD0;
	color: black;
}
 
.ext .wfCompleted {
	text-align: center;
 	background-color: #80e080;
	color: black;
}


.ext table input[type="submit"]:first-child {
	margin-bottom:1px;
}

.ext table input[type="submit"]:last-child {
	margin-bottom:0px;
}

.ext table.border td, 
.ext table.border th, 
.ext table.balance td, 
.ext table.balance th, 
.ext table.budget td, 
.ext table.budget th {
	font-size:10pt;
	vertical-align:middle;
}

.ext table.balance td,
.ext table.border td,
.ext table.budget td {
	padding:3px 11px 2px 11px;
	height:22px;
}

.ext table.balance td input[type=text],
.ext table.border td input[type=text],
.ext table.budget td input[type=text] {
	margin-right:-7px;
}

.ext table.menuheader th,
.ext table.balance th, 
.ext table.border th,
.ext table.budget th {
	background-color:#0079ac;
	color:white;
	padding:4px 6px;
	text-align:right;
}

.ext table.menuheader thead th,
.ext table.balance thead th, 
.ext table.border thead th,
.ext table.budget thead th {
	text-align:center;
}

.ext table.balance td.sum, 
.ext table.budget td.sum, 
.ext table.budget td.totalsum, 
.ext table.budget td.sumvalidationerror {
	background-color: #eee;
}

.ext table.balance td, 
.ext table.balance th, 
.ext table.border td, 
.ext table.border th, 
.ext table.budget td, 
.ext table.budget th {
    border: 1px solid #0079ac;
}

.ext table.balance th, 
.ext table.border th, 
.ext table.budget th {
    border: 1px solid #0079ac;
	font-size:1.1em;
}

.ext table.menuheader {
	margin-top:20px;
	border:0;
}

.ext table.menuheader th {
	font-size:14pt;
	background-image:none;
	border:0;
	border-top-left-radius:4px;
	border-top-right-radius:4px;
}

.ext table.menuheader td {
	color:#333;
	background-color: #F5F4E7;
    border: 1px solid #DBDAD0;
    border-top:0;
	padding:10px;
	font-size:11pt;
	border-bottom-left-radius:4px;
	border-bottom-right-radius:4px;
}

.ext table.border tfoot tr:last-child td:last-child,
.ext table.budget tfoot tr:last-child td:last-child {
}

.ext table.border tfoot tr:last-child td:first-child,
.ext table.budget tfoot tr:last-child td:first-child {
}

.ext table.balance, 
.ext table.border, 
.ext table.budget {
	border-collapse:collapse;
    margin:0 0 15px 0;
}

.ext table.balance th a, 
.ext table.border th a, 
.ext table.budget th a {
	color:white;
}

.ext table.balance th a:hover, 
.ext table.border th a:hover, 
.ext table.budget th a:hover {
	color:#ddd;
}

.ext th.wicket_orderUp a {
	background:url(../images/sort-order-up-white.png) no-repeat right center;
}

.ext th.wicket_orderUp a:hover {
	background:url(../images/sort-order-up-hover-grey.png) no-repeat right center;
}

.ext th.wicket_orderDown a {
    background:url(../images/sort-order-down-white.png) no-repeat right center;
}

.ext th.wicket_orderDown a:hover {
    background:url(../images/sort-order-down-hover-grey.png) no-repeat right center;
}

.ext .border.mobility {
	width:100%;	
}

.ext .border.mobility td {
	text-align: center;
	padding: 3px 3px 3px 3px;
}

.ext .border.mobility td input,
.ext .border.mobility td select {
	margin:0 !important;
	padding:4px 2px;
	font-size:12px;
}

.ext td.action-cell {
	text-align:center;
	white-space:nowrap;
}
.ext td.index-cell {
	text-align:right;
}
.ext table.border th.status-cell,
.ext table.border td.status-cell {
	width:20px;
	padding: 3px 6px 2px 6px;
	text-align:center;
}

.ext table.budget tr td.disabled,
.ext table.border tr.disabled td {
	color:#c44;
	text-decoration:line-through;
}
.ext table.border tr.disabled td.status-cell,
.ext table.border tr.disabled td.action-cell {
	text-decoration:none;
}

.ext .button, .smallbutton, .smallbutton:focus {
	background-image:none;
    color: #fff;
    background-color:#0079ac;
    border:0;
}

.ext .button:hover, .smallbutton:hover {
	background-image:none;
	color: #fff;
    background-color: #00668E;
}

.ext legend {
	font-size:1.3em;
	padding: 1px 5px 8px 5px;
}

.basesection {
	margin-top:5px !important;
}

.basesection legend {
}

.ext span.radio {
	padding-left: 25px;
	clear:both;
	width:50%;
}

.ext span.radio input {
	margin-bottom:4px;
}

.ext span.radio label {
	margin-top:0;
	font-size:10pt;
}

.ext fieldset.basesection span.radio label, 
.ext fieldset.basesection span.radiolong label, 
.ext fieldset.basesection span.checkboxlong label 
{
	display:inline-block;
	margin-bottom:2px;
}

.ext .radiolist,	
.ext .checkboxlist {
	clear:both;
	padding:5px 0 2px 30px;
}

.ext .shortrightlabels .radiolist,
.ext .rightlabels .radiolist {
	clear:none;
	float:left;
	padding:0 0 0 5px;
}

.ext .radio,
.ext .checkbox {
	margin-bottom:8px;
}

.ext .radiolist .radio:last-child {
	margin-bottom:0;	
}

.ext .radio input,
.ext .checkbox input {
	position:relative;
	top:0px;
	float:none;
	width:16px;
	height:16px;
}

.ext .radiolist .radio input,
.ext .checkboxlist .checkbox input {
	position:relative;
	top:0px;
	float:left;
	width:16px;
	height:16px;
}

.ext .radio input + label,
.ext .checkbox input + label {
	cursor:pointer;
}

.ext .radio label,
.ext .checkbox label {
	width:auto;
	font-size:11pt;
	font-weight:normal;
	margin-left:5px;
	margin-right:10px;
	float:none;
	clear:none;
}

.ext .radiolist .radio label,
.ext .checkboxlist .checkbox label {
	width:auto;
	font-size:11pt;
	font-weight:normal;
	margin-left:25px;
	float:none;
	clear:none;
}

.ext .checkbox input.readonly {
	opacity:0.5;
}
.ext .checkbox input.readonly:hover {
	opacity:1;
}
.ext .checkbox input.readonly + label {
	color:#0079ac;
	font-style:italic;
}

.ext .readonly .radio input {
	opacity:0.5;
}
.ext .readonly .radio input:hover {
	opacity:1.0;
}
.ext .readonly .radio input + label {
	color:#0079ac;
	font-style:italic;
}


.ext .radio input[disabled="disabled"],
.ext .checkbox input[disabled="disabled"] {
	cursor:default;
}
.ext .radio input[disabled="disabled"] + label,
.ext .checkbox input[disabled="disabled"] + label {
	opacity:0.7;
	font-style:italic;
	cursor:default;
}

.ext input.textmediumpluss,
.ext .mediumpluss {
}

textarea.medium {
	width:29em;
}

.ext .warning {
	box-sizing:border-box;
	padding: 8px;
    margin-bottom: 10px;
    border: 1px solid #f5c6cb;
    border-radius: 4px;	
    color:#721c24;
    background-color:#f8d7da;
}

.ext .formfooter p {
	color:#666;
	text-align:center;
}

.ext .attachments {
	margin-left:10px;
}

.ext .big-buttons {
	margin-left:20px;
}

.ext .big-buttons .pdfdoc,
.ext .big-buttons .xmldoc,
.ext .big-buttons .viewdoc {
	display:inline-block;
	float:left;
	width:320px;
	border:1px solid #aaa;
	border-radius:3px;
	padding:12px 8px 12px 45px;
	font-size:1.4em;
	background-color:#f8f8f8;
	margin-bottom:10px;	
	background-repeat:no-repeat;
	background-size:32px 32px;
	background-position:5px 6px;
}

.ext .big-buttons .pdfdoc {
	background-image:url(../images/pdf.png);
}

.ext .big-buttons .xmldoc {
	background-image:url(../images/xml.png);
}

.ext .big-buttons .viewdoc {
	background-image:url(../images/printer2.png);
}

.ext .big-buttons .pdfdoc img,
.ext .big-buttons .xmldoc img,
.ext .big-buttons .viewdoc img {
	display:none;
}

.ext .big-buttons .pdfdoc:hover,
.ext .big-buttons .xmldoc:hover,
.ext .big-buttons .viewdoc:hover {
	background-color:#f0f0f0;
	color:#444;
}

.ext .widelabel {
	width:100%;
}

.ext .balance input.number,
.ext input.financial_amount {
	width:90px;
	font-size:10pt;
	margin-right:-10px;
}

.ext .readonlytext,
.ext .longlabel {
	font-size:11pt;
}

.ext .readonlytext:empty {
	display:none;
}

.ext .longlabel {
	margin:0px 0px 5px 5px; 
}

.ext .fullwidth label {
	display:block;
	width:100%;
}

.ext .insinfo .namelabel {
	font-size:11pt;
}

.ext .insinfo label {
	font-size:10pt;
	margin-top:0px;
}

.ext table span em img.linkicon {	
	margin:3px;
	opacity:0.4;
}

.ext table a .linkicon {
	padding:3px;
	margin:0;
}

.ext table a .linkicon:hover {
	background:#43bde8;
	border-radius:4px;
}

.ext .helpblock a {
	font-size: 1em;
	padding-left:20px;
	background-image:url(../images/info2.png);
	background-repeat:no-repeat;
	background-size:16px 16px;
	height:16px;
	padding-top:1px;
}

.ext .navigation {
	text-align:center;
	background:#f8f8f8;
}

.ext .navigation .navigator {
	margin-top:3px;
	height:18px;
	font-size:11pt;
}

.ext .navigation .navigator span > span {
}

.ext .navigation .navigator span a {
	text-align:center;
	padding:2px 6px;	
	width:100%;
	height:100%;
	background:#0079ac;
	color:white;
	border-radius:4px;
	border:1px solid #0079ac;
}

.ext .navigation .navigator span  a:hover {
	background:#00668E;
}

.ext .navigation .navigator span > span em {
	padding:2px 6px;	
	background:#eee;
	border:1px solid #eee;
	border-radius:4px;
	color:#888;
}

.ext .navigation .navigator span > span.goto em {
	border:1px solid #aaa;
	font-style:normal;
	color:#333;
}

.ext .menuButtons td {
	box-sizing:border-box;
	padding:5px !important;
}

.ext .menuButtons .menuList {
	padding:0;
}

.ext .menuButtons .menuList li {
	box-sizing:border-box;
	display:block;
	float:left;
	width:49%;
	margin:3px;	
}

.ext .menuButtons .menuList a {
	background-image:url(../images/dot-chevron.png);
	background-repeat:no-repeat;
	background-position:3px 2px;
	display:block;
	padding:9px 8px 8px 30px;
	white-space: nowrap;
	overflow:hidden;
	text-overflow:ellipsis;
	background-color:#0079ac;
	color:white;
	border-radius:4px;
}

.ext .menuButtons .menuList a:hover {
	background-color:#00668E;
	color:white;
}

.regpwbox {
	margin-left:80px;
	border-radius:5px;
	padding:20px 0 20px 100px;
	border-left:1px dotted #aaa;
}

.regpwbox .button {
	display:block;
	width:150px !important;
	font-size:12pt;
	padding:5px 10px;
	margin-bottom:10px;
	text-align:center;
}

.ext .commenttext {
	display:none;
	width:350px;
}

.ext .commentimage {
	cursor:pointer;
	padding:3px;
	vertical-align:middle;
	border-radius:3px;	
	margin-left:1px !important;
}

.ext .commentimage:hover {
	background:#33add8;
}

.ext .commentimage.readonly {
	opacity:0.8;
}

.ext .commentimage.readonly:hover {
	background:transparent;
	cursor:default;
}

.ext .commenttd {
	position:relative;
}

.ext .commenttd div {	
}

.ext .commenttd div.edit {
	position:absolute;
	top:-2px;
	right:0px;
	border:1px solid #bbb;
	border-radius:3px;
	background:#eee;
	padding:4px 3px;
	box-shadow:0 0 10px rgba(0,0,0,0.3);
	width:380px;
}

.ext .commenttd div.edit .commenttext {
	display:inline-block;
}

.ext .commenttd div.edit .commentimage {
	margin-top: -2px;
}

.ext .commenttd div.hastext .commentimage {
	background:#dd8;
	border:1px solid #bb4;
}

.ext .banner.test::after {
  content: "";
  background: url(../images/cogs.jpg);
  opacity: 0.2;
  top: 0;
  left: 0;
  bottom: 0;
  right: 0;
  position: absolute;
  z-index: -1;   
}

.fileUpload {
	float:left;
}

.fileUpload label {
	text-align:center;
	display:inline-block;
	width:100%;
	cursor:pointer;
	padding:5px 10px;
}

.fileUpload img {
	height:20px;
	color:white;
	margin-right:5px;
	vertical-align:bottom;
}

.fileUpload input[type=submit] {
	display:none;
}

.fileUpload input[type=file] {
	width: 0.1px;
	height: 0.1px;
	opacity: 0;
	overflow: hidden;
	position: absolute;
	z-index: -1;
}

.help-expand {
	margin-bottom:12px;
}
.help-expand .fieldhelp {
	position:relative;
	top:-21px;
	display:none;
	cursor:pointer;
	margin-bottom:0px;
	height:100%;
	opacity:0;
    transition:opacity 400ms 0ms;
}
.help-expand .fieldhelp.show {
	display:block;
	opacity: 1;
    transition:opacity 600ms 0ms;
    margin-bottom:-20px;
}
.help-expand > a {
	font-size:11pt;
	margin-left:9px;
	cursor:pointer;
}
.help-expand .fieldhelp:before,
.help-expand > a:before {
	content:'';
	display:inline-block;
	position:relative;
	top:4px;
	background:url(../images/info2.png);
	background-size:20px 20px;
	background-repeat:no-repeat;
	height:20px;
	width:20px;
	margin-right:4px;
}

span.required {
	margin-left:2px;
}

span.required.error {
	color:#faa;
}

.suggestions thead {
	display: none
}

.suggestions {
	width: 100%;
}

.suggestions tr {
  height: 20px;
  padding: 20px;
  margin-bottom: 10px;
 
}

.flex {
	display: flex;
	flex-direction:row;
	justify-content: space-between;
}

.flex-left {
	flex: 1;
	padding-right: 10px;
}

.flex-right {
	flex: 1;
	padding-left: 10px;
	border-left: 1px dotted #eee;
}

.dl-tile {
    padding:2px 6px;
}

.dl-horizontal dt {
    width:100%;
}

.dl-horizontal dd {
    margin-left:0px;
    width:100%;
    min-height:15px;
    margin-bottom:3px;
}

.dl-tile .tile-buttons {
    text-align:center;
}

.dl-tile.partner-tile::before,
.dl-tile.project-tile::before,
.dl-tile.person-tile::before {
    left:auto;
    right:15px;
}

.d-flex-inline-form {
    display:flex !important;
    flex-direction:row;
    align-items: baseline;
}