/* MAIN */
.root {
    background: #181818;
    font-family: Helvetica;
    color : #ffffff;
    font-weight:normal;
    font-size:0.9em;
}

.root > * {
    background: #181818;
}

.content {
  padding : 5px;
}

/* FONTS */

.fontNormal {
  color : #ffffff;
  font-weight:normal;
  font-size:0.8em;
}

/* HEADINGS */

h1, h2 {
    font-weight: bold;
}


h1 {
  color: #fff;
  font-size: 20px;
  text-align: center;
  text-shadow: rgba(0, 0, 0, 0.4) 0px -1px 0;
  margin-left:4px;
  margin-right:4px;
}


h2 {
   font-size: 16px;
   margin-left: 5px;
   margin-top: 10px;
   margin-bottom:10px;
   line-height:20px;
   text-shadow: rgba(255,255,255,.2) 0 1px 1px;
   color: #bdbebd;
   background-color: #212021;
   border-bottom: 1px solid #313431;
}


/* LINKS */

a:hover, a:active { outline: none; }
a, a:active, a:visited { color: #e89c00; }
a:hover { color: #e89c00; }


/* BUTTONS */

.button, .tabButton {
  cursor: pointer;
  font-weight: bold;
  color: black;
  background: -webkit-gradient(linear, left top, left bottom, from(#f4f4f4), to(#c4c4c4));
  border: 1px solid #232323;
  -webkit-border-radius: 4px;
  font: bold 17px Helvetica;
  line-height : 40px;
  text-align: center;
  padding-left: 20px;
  padding-right: 20px;
  margin-top: 15px;
  -webkit-background-clip: padding-box;
}

.button.active {
    background: -webkit-gradient(linear, left top, left bottom, color-stop(0%,#ffdb66), color-stop(50%,#e89c00),color-stop(100%,#fdd824));
}

.toolbar-button {
  cursor: pointer;
  font-weight: bold;
  color: black;
  background: -webkit-gradient(linear, left top, left bottom, from(#f4f4f4), to(#c4c4c4));
  border: 1px solid #232323;
  -webkit-border-radius: 4px;
  font: bold 17px Helvetica;
  height : 50px;
  text-align: center;
  padding-left: 20px;
  padding-right: 20px;
  -webkit-background-clip: padding-box;
  overflow: hidden;
  width: 0; /* this is for equal sizes of the buttons when aded in a toolbar or other container with flex :1*/
  /* unfortunately, this can be used only in the case where the buttons are similar in size, and the text is small
  if we will have a button with 100 characters text and a button with 2 characters text
  the one with 100 characters gets clipped*/
}

.toolbar-button.active {
  background: -webkit-gradient(linear, left top, left bottom, color-stop(0%,#ffdb66), color-stop(50%,#e89c00),color-stop(100%,#fdd824));
}

.toolbar-button img {
  vertical-align: middle;
}

.toolbar-button > div {
  height: 50px;
  overflow: hidden;
}

.toolbar-button .label {
  height: auto;
}

/* LISTS */

.list-itemimage {
   margin-right:7px;
}

.list-itemtext {
 
}

ul {
    font: bold 17px Helvetica;
    padding: 0px;
}

ul li {
    color: #ffffff;
    border-top: 1px solid #6b6d6b;
    list-style-type: none;
    padding: 10px 25px 10px 10px;
}

ul li * {

}

ul li.arrow {
    background: url("../../icon/android/arrow.png") no-repeat right center;
}

ul li.active.arrow, ul li.selected.arrow {
    background: url("../../icon/android/arrow_pressed.png") no-repeat right center, -webkit-gradient(linear, left top, left bottom, color-stop(0%,#ffdb66), color-stop(50%,#e89c00),color-stop(100%,#fdd824));
}

ul li.active, ul li.selected {
    background: -webkit-gradient(linear, left top, left bottom, color-stop(0%,#ffdb66), color-stop(50%,#e89c00),color-stop(100%,#fdd824));
    color: #000;
}

ul li .subtitle {
  font-weight:normal;
  font-size:0.8em;
  color : #949a94;
}

ul li.active .subtitle {
    color: #313429;
}


/* when you have a first LI item on any list */

li:first-child, li:first-child a {
    border-top: 0px;
}


/* FORMS */


input, select { vertical-align:middle; }
input, select, textarea { 
  font-family: Helvetica;
  font-size:.9em;
}

select {
  text-indent: 0;
  background: transparent no-repeat right center;
  -webkit-appearance: textfield;
  margin-left: -6px;
  width: 100%;
  color: #777;
  border: none;
}

ul.form li {
    padding: 10px 10px 10px 10px;
}

ul.form li.error {
    border: 2px solid red;
}

ul.form li.error + li.error {
    border-top: 0;
}

ul.form li * {
    white-space: normal;
    text-overflow: ellipsis;
}

input[type="text"], input[type="password"], textarea {
    color: #222222;
    background: -webkit-gradient(linear, left top, left bottom, from(#e2e0e2), to(#f8f5f8));
    border: 1px solid #242424;
    width: 100%;
    height: 2em;
    outline: none;
    -webkit-appearance: textarea;
    -webkit-border-radius: .4em;
    -webkit-background-clip: padding-box;
}

textarea {
    height: 120px;
    width: 100%;
    resize: none;
}

input[type="checkbox"], input[type="radio"] {
    margin: 0;
    color: rgb(50,79,133);
    padding: 10px 10px;
}

/* TOGGLE BUTTON */

.toggleButton {
    width: 94px;
    height: 27px;
    display: block;
    overflow: hidden;
    position:relative;
    -webkit-border-radius: 5px;
    -webkit-background-clip: padding-box;
}

.toggleButton > div.checked {
    left: 0px;
}

.toggleButton > div {
    margin: 0;
    -webkit-border-radius: 5px;
    background: #fff url(../../icon/android/on_off.png) 0 0 no-repeat;
    height: 27px;
    overflow: hidden;
    width: 149px;
    border: 0;
    background-color: transparent;
    -webkit-transition: left .15s;
    position: absolute;
    top: 0px;
    left: -55px;
    -webkit-background-clip: padding-box;
}


/* SLIDER */

.slider {
  position:relative;
  height: 20px;
  background: -webkit-gradient(linear,left top,left bottom,from(#9EA09D), color-stop(0.85, #5B5D5A), color-stop(0.95, #5F615E), to(#757774)) 0px 0px no-repeat, -webkit-gradient(linear,left top,left bottom,from(#ecd343), color-stop(0.85, #fab907), color-stop(0.95, #f0b705), to(#f8ce2e));
  background: -webkit-linear-gradient(top, #9EA09D, #5B5D5A 85%,#5F615E 95%, #757774) 0px 0px no-repeat, -webkit-linear-gradient(top, #ecd343, #fab907 85%,#f0b705 95%, #f8ce2e) 0px 0px no-repeat;
  -webkit-border-radius: .6em;
  overflow: visible;
  -webkit-background-clip: padding-box;
}

.slider > div {
  position:absolute;
  top: -5px;
  left: 0%;
  background-color:#fff;
  width: 60px;
  height: 30px;
  background: -webkit-gradient(linear, left top, left bottom, from(#f4f4f4), to(#c4c4c4));
  background: -webkit-linear-gradient(top, #f4f4f4, #c4c4c4);
  -webkit-border-radius: .4em;
  -webkit-box-shadow: 0 0 2px 1px #4A4A4A;
  -webkit-background-clip: padding-box;
}

input[type="text"].invalid, input[type="password"].invalid, textarea.invalid {
  border: 1px solid red;
}

.formElementError {
  color: red;
}

/* TABBAR */

.tabBar {
  bottom:1px;
  height:45px;
}

.tabButton {
  height:45px !important;
  text-align: center;
  line-height: 45px;
  margin:0 !important;
  -webkit-box-sizing: border-box;
  width: 0; /* this is for equal sizes od the buttons when aded in a toolbar or other container with flex :1*/
}

.tabButton.active, .tabButton.selected {
  border: 2px solid orange;
}


/* NAVIGATIONBAR */

.navigationbar {
    border-bottom: 1px solid #2d3642;
    padding-left: 10px;
    padding-right: 10px;
    height: 45px;
    background: -webkit-gradient(linear, left top, left bottom, from(#9a9a9a), to(#7c7e7c));
}


.navigationbar-button, .navigationbar-backbutton {
    text-align: center;
    min-width:40px;
    cursor: pointer;
    padding: 0 3px;
    width: auto;
    height: 30px;
    line-height: 30px;
    font-family: inherit;
    font-size: 12px;
    font-weight: bold;
    color: black;
    background: -webkit-gradient(linear, left top, left bottom, from(#f4f4f4), to(#c4c4c4));
    border: 2px solid #232323;
    text-decoration: none;
    -webkit-border-radius: 4px;
    -webkit-background-clip: padding-box;
}

.navigationbar-button.active, .navigationbar-backbutton.active {
    background: -webkit-gradient(linear, left top, left bottom, color-stop(0%,#ffdb66), color-stop(50%,#e89c00),color-stop(100%,#fdd824));
}


/* SCROLLBAR */

.scrollbarV {
  position:absolute;
  z-index:100;
  width:6px;bottom:7px;top:2px;right:1px
}

.scrollbarV > div {
  position:absolute;
  z-index:100;
  width:100%;

  /* The following is probably what you want to customize */
  background:-webkit-gradient(linear, 0 0, 100% 0, from(#b5b6b5), to(#949294));
  border: 1px solid #000;
  -webkit-background-clip:padding-box;
  -webkit-box-sizing:border-box;
  -webkit-border-radius:4px;
}

/* CHECKBOX */

input[type="checkbox"] {
  background-color: #929292;
  -webkit-appearance : none;
  width: 30px;
  height: 30px;
  -webkit-border-radius: .3em;
  background: url(../../icon/android/checkbox-gray.png) 50% 50% no-repeat, -webkit-gradient(linear,left top,left bottom,from(#f1f1f1), color-stop(0.6, #c1c1c1), to(#d0d0d0)) 0px 0px no-repeat;
  background: url(../../icon/android/checkbox-gray.png) 50% 50% no-repeat, -webkit-linear-gradient(top, #f1f1f1, #c1c1c1 90%, #d0d0d0) 0px 0px no-repeat;
}

input[type="checkbox"]:checked {
  background: url(../../icon/android/checkbox-green.png) 50% 50% no-repeat, -webkit-gradient(linear,left top,left bottom,from(#f1f1f1), color-stop(0.6, #c1c1c1), to(#d0d0d0)) 0px 0px no-repeat;
  background: url(../../icon/android/checkbox-green.png) 50% 50% no-repeat, -webkit-linear-gradient(top, #f1f1f1, #c1c1c1 90%, #d0d0d0) 0px 0px no-repeat;
}


/*  TOOLBAR  */
.toolbar-separator {
  width: 4px;
  background-color: red;
}

.toolbar {
  padding: 2px;
  height: 55px;
  background: -webkit-gradient(linear, left top, left bottom, from(#9a9a9a), to(#7c7e7c));
  border-top: 1px solid #2d3642;
}

/*  BLOCKER  */
.blocker {
  position : absolute;
  z-index:100;
  width:100%;
  height:100%;
  left:0;
  top:0;
  background-color: #818181;
  opacity : 0.7;
  color: black;
}


/*  SPINNER  */
.spinnerContainer {
  margin: 0 auto;
  height: 100%;
  text-align: center;
}

.spinner {
  background-image: url(../../icon/android/spinner.png);
  -webkit-animation-name: spinnerRotate;
  -webkit-animation-duration: 1s;
  -webkit-animation-iteration-count: infinite;
  -webkit-animation-timing-function: linear;
  margin: 0 auto;
  vertical-align: middle;
}

@-webkit-keyframes spinnerRotate {
	from {
		-webkit-transform:rotate(0deg);
	}
	to {
		-webkit-transform:rotate(360deg);
	}
}

.popup {
  position: absolute;
  background-color: #424242;
  width: auto;
  padding: 6px;
  border: 2px solid #ffffff;
  -webkit-border-radius: .3em;
  z-index: 99;
  clear: both;
}

.popupAnchorPointer {
  height: 0;
  width: 0;
  float: left;
}

.popupAnchorPointerBottom {
  border-right: 10px solid transparent;
  border-left: 10px solid transparent;
  border-top: 10px solid white;
}

.popupAnchorPointerTop {
  border-right: 10px solid transparent;
  border-left: 10px solid transparent;
  border-bottom: 10px solid white;
}

.popupAnchorPointerLeft {
  border-right: 10px solid white;
  border-top: 10px solid transparent;
  border-bottom: 10px solid transparent;
}

.popupAnchorPointerRight {
  border-left: 10px solid white;
  border-top: 10px solid transparent;
  border-bottom: 10px solid transparent;
}

/*  DIALOG  */
.dialog {
  position: fixed;
  background-color: #424242;
  width: auto;
  padding: 6px;
  border: 2px solid #ffffff;
  -webkit-border-radius: .3em;
  z-index: 99;
  min-width: 200px;
}

.dialogButton {
  width:0;
  margin-top:6px;
  margin-left:1px;
  margin-right:1px;
}

.dialogTitleUnderline {
  font-weight: 800;
  font-size: 16px;
  margin: 0 0 5px 0;
}

.dialogTitleUnderline:after {
  line-height: 1px;
  content: ' ';
  background: -webkit-gradient(linear,left top,right bottom,from(#424242), color-stop(0.3, #ffffff), color-stop(0.7, #ffffff), to(#424242)) 0px 0px no-repeat;
  height: 1px;
  width: 100%;
  display: block;
  margin: 3px 0 0 0;
  padding: 0;
}