@mixin base-select($primaryStyleName : v-select) {

$select-button-width : 1em;
$select-button-negative-width : -1em;

.#{$primaryStyleName} {
	text-align: left;
}
.#{$primaryStyleName}-optiongroup .#{$primaryStyleName}-option {
	display: block;
	white-space: nowrap;
}
.#{$primaryStyleName}-optiongroup .v-icon {
	vertical-align: middle;
	white-space: nowrap;
	margin: 0 2px;	
}
.v-ie & .#{$primaryStyleName}-optiongroup .#{$primaryStyleName}-option {
	zoom: 1;
}
.#{$primaryStyleName}-select {
	display: block;
}
.#{$primaryStyleName}-twincol {
	white-space: nowrap;
}
.#{$primaryStyleName}-twincol-options {
	float: left;
}
.#{$primaryStyleName}-twincol-caption-left {
	float: left;
	overflow: hidden;
	text-overflow: ellipsis;
}
.#{$primaryStyleName}-twincol-selections {
	font-weight: bold;
}
.#{$primaryStyleName}-twincol-caption-right {
	float: right;
	overflow: hidden;
	text-overflow: ellipsis;
}
.#{$primaryStyleName}-twincol-buttons {
	float: left;
	text-align: center;
}
.#{$primaryStyleName}-twincol-buttons .#{$primaryStyleName}-twincol-deco {
	clear: both;
}
.#{$primaryStyleName}-twincol .v-textfield {
	display: block;
	float: left;
	clear: left;
}
.#{$primaryStyleName}-twincol .v-button {
	float: left;
}
.#{$primaryStyleName}-twincol-buttons .v-button {
	float: none;
}
.v-filterselect {
	white-space: nowrap;
	text-align: left;
	display: inline-block;
	padding-right: $select-button-width; /* Space for the button */
}
.v-filterselect .v-icon {
	float: left;
}
&.v-app .v-filterselect-input,
.v-window .v-filterselect-input,
.v-popupview-popup .v-filterselect-input {
	margin: 0;
	float: left;
	-webkit-border-radius: 0px;
	-webkit-box-sizing: border-box;
	-moz-box-sizing: border-box;
	box-sizing: border-box;
}
.v-filterselect-prompt .v-filterselect-input {
	color: #999;
	font-style: italic;
}
.v-filterselect-button {
	display: inline-block;
	cursor: pointer;
	width: $select-button-width;
	margin-right: $select-button-negative-width;
	height: 1em;
	background: transparent url(../common/img/sprites.png) no-repeat -5px -8px;
}
.v-filterselect.v-readonly .v-filterselect-button {
	display: none;
}
.v-filterselect.v-readonly,
.v-filterselect.v-readonly .v-filterselect-input {
	background: transparent;
}
.v-filterselect-suggestpopup {
	background: #fff;
	border: 1px solid #eee;
}
.v-filterselect-suggestmenu table {
	border-collapse: collapse;
	border: none;
	vertical-align:top;
}
.v-filterselect-suggestmenu .gwt-MenuItem {
	white-space: nowrap;
}
.v-filterselect-suggestmenu .gwt-MenuItem .v-icon {
	margin-right: 3px;
	vertical-align: middle;
}
.v-filterselect-suggestmenu .gwt-MenuItem span {
	vertical-align: middle;
}
.v-filterselect-suggestmenu .gwt-MenuItem-selected {
	background: #333;
	color: #fff;
}
.v-filterselect-nextpage,
.v-filterselect-nextpage-off,
.v-filterselect-prevpage-off,
.v-filterselect-prevpage {
	width: 100%;
	background: #aaa;
	text-align: center;
	overflow: hidden;
	cursor: pointer;
}
.v-filterselect-nextpage-off,
.v-filterselect-prevpage-off {
	color: #666;
	opacity: .5;
	filter: alpha(opacity=50);
	cursor: default;
}
.v-filterselect-nextpage-off span,
.v-filterselect-prevpage-off span {
	cursor: default;
}
.v-filterselect-status {
	white-space: nowrap;
	text-align: center;
}

.v-filterselect-no-input .v-filterselect-input {
	cursor: default;
}

/* Error styles (disabled by default)

.v-filterselect-error .v-filterselect-input,
.#{$primaryStyleName}-error .#{$primaryStyleName}-option,
.#{$primaryStyleName}-error .#{$primaryStyleName}-select,
.#{$primaryStyleName}-error .#{$primaryStyleName}-twincol-selections,
.#{$primaryStyleName}-error .#{$primaryStyleName}-twincol-options {
	background: #ffaaaa;
}
*/

/*  Required field styles (disabled by default)
   
.v-filterselect-error .v-filterselect-input,
.#{$primaryStyleName}-required .#{$primaryStyleName}-option,
.#{$primaryStyleName}-required .#{$primaryStyleName}-select,
.#{$primaryStyleName}-required .#{$primaryStyleName}-twincol-selections,
.#{$primaryStyleName}-required .#{$primaryStyleName}-twincol-options {
	background: #ffaaaa;
}
*/

}