/*ComboBox styles*/
.app-form-combobox {
	box-sizing: border-box;
	border: 1px solid #a9a9a9;
	border-radius: 3px;
	display: inline-block;
	background-color: #fff;
	color: inherit;
	min-height: 26px; /* legacy safe-guard, keeps the layout from collapsing to 0 */
}
	.app-form-combobox.disabled {
		background-color: #f9f9f9;
		color: GrayText;
	}

.app-form-combobox > table.cb-layout-table {
	width: 100%;
	height: 0;
}
.app-form-combobox > table.cb-layout-table,
.app-form-combobox > table.cb-layout-table > tbody,
.app-form-combobox > table.cb-layout-table > tbody > tr.cb-layout-row {
	height:100%;
}
.app-form-combobox > table.cb-layout-table > tbody > tr.cb-layout-row > td.cb-layout-cell {
	padding: 0;
	border:none;
	height:100%;
}
.app-form-combobox > table.cb-layout-table,
.app-form-combobox > table.cb-layout-table > tbody,
.app-form-combobox > table.cb-layout-table > tbody > tr.cb-layout-row,
.app-form-combobox > table.cb-layout-table > tbody > tr.cb-layout-row > td.cb-layout-cell {
	border-radius:inherit;
}
.app-form-combobox > table.cb-layout-table > tbody > tr.cb-layout-row > td.cb-input-cell > input {
	box-sizing: border-box;
	border-radius:inherit;
	border-top-right-radius: 0;
	border-bottom-right-radius:0;
	border: none;
	width: 100%;
	height: 100%;
	margin: 0;
	overflow: hidden;
	text-overflow: ellipsis;
	padding: 4px 6px; /* explicit padding */
	background-color: inherit;
	color: inherit;
}

.app-form-combobox > table.cb-layout-table > tbody > tr.cb-layout-row > td.cb-dropdown-cell > button {
	box-sizing: border-box;
	border: none;
	height: 100%;
	width: 100%;
	margin: 0;
	border-radius: inherit;
	border-top-left-radius: 0;
	border-bottom-left-radius: 0;
	cursor:pointer;
	background: transparent;
	padding: 0px 7px;
}
.app-form-combobox .cb-dropdown-cell > button:focus:active {
	outline: none;
}
.app-form-combobox > .cb-droplist {
	box-sizing: border-box;
	position: absolute;
	overflow: auto; /* auto-spill content */
	min-width: 450px; /* todo: width is dependent on client area*/
	min-height: .75em;
	padding-bottom: 0px;
	margin-top: 1px;
	background: #fff;
	border: none;
	
	border-radius: 4px;
	border-top-left-radius: 0;
	border-top-right-radius: 0;

	-webkit-box-shadow: 0 8px 10px 1px rgba(0,0,0,0.14), 0 3px 14px 2px rgba(0,0,0,0.12), 0 5px 5px -3px rgba(0,0,0,0.2);
	   -moz-box-shadow: 0 8px 10px 1px rgba(0,0,0,0.14), 0 3px 14px 2px rgba(0,0,0,0.12), 0 5px 5px -3px rgba(0,0,0,0.2);
			box-shadow: 0 8px 10px 1px rgba(0,0,0,0.14), 0 3px 14px 2px rgba(0,0,0,0.12), 0 5px 5px -3px rgba(0,0,0,0.2);
}
/* focus rect always visible on items, prevent browser heuristics to determine based on interaction method */
.app-form-combobox > .cb-droplist > table.grouping_table > tbody > tr:focus {
	outline-color: #555;
	outline-width: 2px;
	outline-style: solid;
	outline-offset: -2px;
}

/* Sticky header mod for grouptable*/
.app-form-combobox > .cb-droplist > table.grouping_table.sticky-header > thead > tr > th {
	position: -webkit-sticky;
	position: sticky;
	top: 0;
}

.app-form-combobox > .cb-droplist > table.grouping_table > tbody > tr.group_header > td {
	padding-top: 6px;
	border-bottom: none;
}
.app-form-combobox > .cb-droplist > table.grouping_table > tbody > tr > td {
	overflow: hidden;
	text-overflow: ellipsis;
	white-space: normal;
}
.app-form-combobox > .cb-droplist > table.grouping_table > tbody > tr > td.nowrap {
	white-space: nowrap;
}
.app-form-combobox > .cb-droplist > table.grouping_table > tbody > tr > td,
.app-form-combobox > .cb-droplist.need-ellipsis > table.grouping_table > tbody > tr > td {
	max-width: 0;
}
	.app-form-combobox > .cb-droplist.measuring > table.grouping_table > tbody > tr > td {
		overflow: visible;
		max-width: unset;
	}

.app-form-combobox > .cb-droplist > table.grouping_table > tbody > tr > td.nowrap_increase200,
.app-form-combobox > .cb-droplist.need-ellipsis > table.grouping_table > tbody > tr > td.nowrap_increase200,
.app-form-combobox > .cb-droplist.measuring > table.grouping_table > tbody > tr > td.nowrap_increase200 {
	white-space: nowrap;
	text-overflow: ellipsis;
	max-width: 200px;
}

.app-form-combobox > .cb-droplist > table.grouping_table,
.app-form-combobox > .cb-droplist.need-ellipsis > table.grouping_table {
	width: 100%;
}
/* GroupTable mod for round border */
.app-form-combobox > .cb-droplist > table.grouping_table > thead > tr > *,
.app-form-combobox > .cb-droplist > table.grouping_table > tbody > tr > *,
.app-form-combobox > .cb-droplist > table.grouping_table > tfoot > tr > * {
	padding: 6px 8px;
}
.app-form-combobox > .cb-droplist > table.grouping_table > tbody > tr.section_header > * {
	font-weight: 500;
	background-color: inherit;
	background-image: none;
}

/* delightful indentation for 'option group' members */
.app-form-combobox > .cb-droplist > table.grouping_table > tbody > tr.section_header ~ tr:not(.section_header) > *:first-child {
	padding-left: 1.25em;
}

/* suppress browser-default clear button in input/search elements */
.app-form-combobox > table.cb-layout-table > tbody > tr.cb-layout-row > td.cb-input-cell > input::-ms-clear,
.app-form-combobox > table.cb-layout-table > tbody > tr.cb-layout-row > td.cb-input-cell > input::-ms-reveal { 
	display: none; 
	width : 0; 
	height: 0; 
}
.app-form-combobox > table.cb-layout-table > tbody > tr.cb-layout-row > td.cb-input-cell > input::-webkit-search-decoration,
.app-form-combobox > table.cb-layout-table > tbody > tr.cb-layout-row > td.cb-input-cell > input::-webkit-search-cancel-button,
.app-form-combobox > table.cb-layout-table > tbody > tr.cb-layout-row > td.cb-input-cell > input::-webkit-search-results-button,
.app-form-combobox > table.cb-layout-table > tbody > tr.cb-layout-row > td.cb-input-cell > input::-webkit-search-results-decoration { 
	display: none;
}

/* clear-btn extension */
.app-form-combobox > table.cb-layout-table > tbody > tr.cb-layout-row > td.cb-input-cell > label.clear-btn {
	display: none;
	width: 0;
	height: 0;
}

.app-form-combobox.nullable.has-value > table.cb-layout-table > tbody > tr.cb-layout-row > td.cb-layout-cell {
	position: relative;
}
.app-form-combobox > .cb-droplist {
	z-index: 999999;
}
/* hide the clear-btn extension unless the input has focus? */
.app-form-combobox.nullable.has-value:not(.disabled):not(.filter) > table.cb-layout-table > tbody > tr.cb-layout-row > td.cb-input-cell > input {
	padding-right: 20px; /* facilitate space for the clear-btn */
}
.app-form-combobox.nullable.has-value:not(.disabled):not(.filter) > table.cb-layout-table > tbody > tr.cb-layout-row > td.cb-input-cell > input + label.clear-btn {
	box-sizing: border-box;
	display: table;
	position: absolute;
	top: 0;
	bottom: 0;
	right: 0;

	width: 20px;
	height: 100%;

	color: GrayText;
	cursor: pointer;
	text-align: center;
	font-size: 25px;
	line-height: 0;
	font-weight: 400;
}
	.app-form-combobox.nullable.has-value > table.cb-layout-table > tbody > tr.cb-layout-row > td.cb-input-cell > label.clear-btn:hover {
		color: unset;
	}
		.app-form-combobox.nullable.has-value > table.cb-layout-table > tbody > tr.cb-layout-row > td.cb-input-cell > label.clear-btn:before {
			content: "\00D7";
			display: table-cell;
			vertical-align: middle;
		}

/* Predefined column formats */
.color-cell {
	padding: 4px;
	vertical-align: middle;
	text-align: center;
}
.color-cell span.status-ball {
    box-sizing: border-box;
    margin: 0;
    padding: 0;
    vertical-align: middle;
    display: inline-block;
    width: 20px;
    height: 20px;
    border: none;
    border-radius: 50%;
}
