/*
 * @license
 * Copyright (c) 2014 The Polymer Project Authors. All rights reserved.
 * This code may only be used under the BSD style license found at http://polymer.github.io/LICENSE.txt
 * The complete set of authors may be found at http://polymer.github.io/AUTHORS.txt
 * The complete set of contributors may be found at http://polymer.github.io/CONTRIBUTORS.txt
 * Code distributed by Google as part of the polymer project is also
 * subject to an additional IP rights grant found at http://polymer.github.io/PATENTS.txt
 */

:host {
  position: relative;
  display: inline-block;
  background-color: #fff;
  -moz-user-select: none;
  -ms-user-select: none;
  -webkit-user-select: none;
  user-select: none;
  cursor: pointer;
  padding: 0.75em 0;
}

#control {
  box-sizing: border-box;
  max-height: 2em;
  color: #757575;
  border-bottom: 1px solid #757575;
}

#control[selected] {
  color: #000;
}

#control > div {
  padding: 0.5em 0 0.25em;
  overflow: hidden;
  /* FIXME not working for some reason */
  white-space: nowrap;
  text-overflow: ellipsis;
}

core-icon {
  margin: 0.3em 0 0.2em 0.25em;
}