/* things we always want */
body {
  font-family: 'Helvetica Neue', 'Nimbus Sans L', Arial, sans-serif;
}
/* allow hw-accelerated scrolling on platforms that support it */
body.webkitOverflowScrolling {
  -webkit-overflow-scrolling: touch;
}
/* for apps */
.enyo-document-fit {
  margin: 0;
  height: 100%;
  /* note: giving html overflow: auto is odd and was only ever done to avoid duplication
		however, android 4.04 sometimes does not hide nodes when their display is set to none
		if document is overflow auto.
	*/
  position: relative;
}
.enyo-body-fit {
  margin: 0;
  height: 100%;
  /* helps prevent ios page scroll */
  overflow: auto;
  position: relative;
}
.enyo-no-touch-action {
  -ms-touch-action: none;
}
.enyo-untouchable {
  pointer-events: none;
}
.enyo-untouchable > * {
  pointer-events: auto;
}
/* user selection */
.enyo-unselectable {
  cursor: default;
  -ms-user-select: none;
  -webkit-user-select: none;
  -moz-user-select: -moz-none;
  user-select: none;
}
.enyo-selectable {
  cursor: auto;
  -ms-user-select: element;
  -webkit-user-select: text;
  -moz-user-select: text;
  user-select: text;
}
.enyo-selectable::selection,
.enyo-selectable ::selection {
  background: #3297FD;
  color: #FFF;
}
/* layout */
body .enyo-fit {
  position: absolute;
  left: 0;
  top: 0;
  right: 0;
  bottom: 0;
}
.enyo-clip {
  overflow: hidden;
}
.enyo-border-box {
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  box-sizing: border-box;
}
/* compositing */
.enyo-composite {
  -webkit-transform: translateZ(0);
  -moz-transform: translateZ(0);
  -ms-transform: translateZ(0);
  -o-transform: translateZ(0);
  transform: translateZ(0);
}
.enyo-inline {
  display: inline-block;
}
.enyo-positioned {
  position: relative;
}
.enyo-fill {
  position: relative;
  width: 100%;
  height: 100%;
}

/* Accessibility */
*[tabindex] {
  /* remove outline in case dom has tabindex attribute */
  outline: none;
  /* remove tap highlight in case dom has tabindex attribute */
  -webkit-tap-highlight-color: rgba(0, 0, 0, 0);
}

/* Fullscreen */
:-webkit-full-screen {
  width: 100% !important;
  height: 100% !important;
}
:-moz-full-screen {
  width: 100% !important;
  height: 100% !important;
}
:-ms-fullscreen {
  width: 100% !important;
  height: 100% !important;
}
:-o-full-screen {
  width: 100% !important;
  height: 100% !important;
}
:fullscreen {
  width: 100% !important;
  height: 100% !important;
}
/* Fallback Fullscreen */
body .enyo-fullscreen {
  position: absolute !important;
  left: 0 !important;
  top: 0 !important;
  right: 0 !important;
  bottom: 0 !important;
  width: 100% !important;
  height: 100% !important;
  box-sizing: border-box !important;
}
.enyo-fit:-webkit-full-screen-ancestor,
.enyo-fill:-webkit-full-screen-ancestor {
  padding: 0 !important;
  margin: 0 !important;
}
.enyo-fit:-moz-full-screen-ancestor,
.enyo-fill:-moz-full-screen-ancestor {
  padding: 0 !important;
  margin: 0 !important;
}
.enyo-fit:-ms-fullscreen-ancestor,
.enyo-fill:-ms-fullscreen-ancestor {
  padding: 0 !important;
  margin: 0 !important;
}
.enyo-fit:-o-full-screen-ancestor,
.enyo-fill:-o-full-screen-ancestor {
  padding: 0 !important;
  margin: 0 !important;
}
.enyo-fit:fullscreen-ancestor,
.enyo-fill:fullscreen-ancestor {
  padding: 0 !important;
  margin: 0 !important;
}

.enyo-image {
  background-position: center;
  background-repeat: no-repeat;
  background-size: cover;
}
.enyo-image.sized {
  display: inline-block;
}
.enyo-image.contain {
  background-size: contain;
}
.enyo-image.cover {
  background-size: cover;
}

.enyo-scrim {
  z-index: 1;
  /*
		note: by using pointer-events we allow tapping on scrim
		while it is fading out; however, this requires any showing classes
		to set pointer events to auto or scrim will not function as expected.
	*/
  pointer-events: none;
}
.enyo-scrim.enyo-scrim-translucent {
  pointer-events: auto;
  background-color: #000000;
  opacity: 0.65;
  filter: alpha(opacity=65);
}
.enyo-scrim.enyo-scrim-transparent {
  pointer-events: auto;
  background: transparent;
}

.enyo-popup {
  position: absolute;
  z-index: 10;
}

.enyo-tool-decorator {
  display: inline-block;
}
.enyo-tool-decorator > * {
  display: inline-block;
  vertical-align: middle;
}

/* reset */
button {
  font-size: inherit;
  font-family: inherit;
}
button::-moz-focus-inner {
  border: 0;
  padding: 0;
}

