/* Add here all your css styles (customizations) */


/* Phil experimantal 28 Dec 15  
 * background-image: url('normal.png');
* background-image: url('pressed.png');
* */

.vertical-center {
	min-height: 90%;  /* Fallback for browsers do NOT support vh unit */
	min-height: 90vh; /* These two lines are counted as one :-)       */
	display: flex;
    align-items: center;
}

.top-buffer {
	margin-top:20px;
}

.roadsign {
	height: 68px;
	width:250px;
	background-image: url("img/house_Roadsign.png");
	background-color: #fff;
	border: none;
	font-family: Helvetica, Georgia, Serif;
	color: #bbb;
}

.StreetName {
	padding-top: 11px;
	font-size: 24px;
	// padding-bottom: 17px;
    margin-bottom: -25px;
	text-align: center;
    border: none;
    background-color: transparent;
    color: #bbb;
}

.appliance {
    position: absolute;
    width: 40px;
	/* cursor:url("img/off.png"), auto; */
	 cursor: pointer;
}

.ranking {
	font-size: 20px;
}

tr.line {
	border-bottom:1pt solid black;
}
.centerCell {
	text-align: center;
}

.messageText {
	position: absolute;
    top: 37px;
    left: 190px;
	width: 250px;
	color: #fff;
	font-size: 130%;
	text-align:center;
}

.message {
	cursor:pointer;
	opacity: 0.9;
}

.message-commit {
	position: absolute;
    left: 43px;
    top: 75px;
	}


.text-dno {
	position: absolute;
	bottom: 50%;
	left: 40%;
	right: 10%;
	width: 54%;
	text-align: center;
	color: #0cc;
}

#ApplianceMinutes {
	display: inline;
}

#ApplianceSwitch {
	height: 60px;
	position: absolute;
	left: -60px;
}

#ApplianceIcon {
	height: 150px;
}

#ApplianceRange {
	cursor:pointer;
	width: 200px;
  translate: 0px -33px;
}

#powerBox {
	text-align:top; 
	width:0px;
	height:40px;
	border:1px solid #0c0; 
	background-color: #0c0;
}

.house {
  background: #666666;
}

.housebutton {
  width: 200px;
}

.houseChoice {
  background-color: white;
  width: 100%;
}

.houseicon {
  width: 100px;
}

.houseRooms {
  position: relative;
  width: 468px;
  height: 391px;
}


.bars {
 	vertical-align: bottom;
}

.powerbar {
    display: inline-block;
    width: 20px;
    background-color: #444;
    vertical-align: bottom;
    transition: "all 8s";
}

.feeder {
    width: 50px;
}

.dno {
    width: 200px;
}
.center {
	display: block;
	margin-left: auto;
	margin-right: auto;
}


.tryAgainBtn {
	position: absolute;
    width: 100%;
    height: 25%;
    left: 0%;
    top: 75%;
    //background-color: #3f3;
    color: white;
}

.tryAgainText {
    position: absolute;
    top: 20px;
    left: 130px;
    right: 30px;
    text-align: center;
	cursor: pointer;
}

.small {
	font-size: 50%;
}

#transformerBar {
    transition: all 10s;
}

#transformerBar:hover {
    width: 300px;
}

.green {
    background-color: #0f0;
}

.red {
    background-color: #f00;
}

.faint {
    background-color: rgba(200,100,100,0.1);
}

.dim {
    opacity: 0.3;
}







.meterbutton.over {
  background: #ccffcc;
}
.meterbutton.active {
  /* color: #ddd; */
  /*background: #339933;*/
  background: #99CC99;
}

.meterbutton.modified {
  color: #339933;
}
.form-control.other {
	position: 		absolute;
	margin-left:	5%;
	width: 			70%;
	transform: 		translateY(-150%);
}
.meterbutton.plus {
	border:			0px;
	position: 		absolute;
	color:			#993333;
	background: 	transparent;
	width: 			25%;
	height: 		25%;
	left: 			65%;
	top: 			65%;
	margin-top:		5%; 
	padding-bottom:	20%;
	transform: 		translateY(-100%);
}
.meterbutton.minus {
	border:			0px;
	position: 		absolute;
	color:			#993333;
	background: 	transparent;
	width: 			25%;
	height: 		25%;
	left: 			10%;
	top: 			65%;
	margin-top:		5%; 
	padding-bottom:	20%;
	transform: 		translateY(-100%);
}
.meterbutton.back {
	background: 	#993333;
	padding-top:	10%;
	padding-bottom:	10%;
	padding-left:	200%;
}
.meterbutton.no {
	background:		transparent;
	height:			70%;
	width:			70%;
	border:			0px;
	padding-top:	2%;
}
.meterbutton.yes {
	background:		transparent;
	height:			70%;
	width:			70%;
	border:			0px;
	padding-top:	2%;
}
.meterbutton.next {
	background:		transparent;
	width:			50%;
	height:			50%;
	border:			0px;
	padding-top:	2%;
	padding-right:	10%;
	padding-left:	10%;
}
.meterbutton.finish {
	background:		transparent;
	width:			70%;
	height:			70%;
	border:			0px;
	padding-top:	2%;
	display:		block;
	margin-left: 	auto;
	margin-right: 	auto;
}

.meterbutton.passive {
  background: #555555;
}
.meterbutton.caption {
  font-size: 100%;
  background: transparent;
  margin-left: auto;
  margin-right: auto;
  width: 95%;
  text-align: center;
  position: relative;
  transform: translateY(-130%);
}


xxhtml { 
background: url(../img/meter_logo_trans.png) no-repeat left top fixed; 
-webkit-background-size: cover;
-moz-background-size: cover;
-o-background-size: cover;
background-size: 80% ;
}



.carousel-caption {
  background: #555555;
  position: relative;
  left: 0px;
  right: 0px;
  bottom: 0px;
  z-index: 10;
  padding-top: 0px;
  padding-bottom: 0px;
  color: #ffffff;
  text-align: left;
  text-shadow: 0 1px 2px rgba(0, 0, 0, 0.6);
}

@media all and (transform-3d), (-webkit-transform-3d) {
  .carousel-inner > .item {
    -webkit-transition: -webkit-transform 0.6s ease-in-out;
    -moz-transition: -moz-transform 0.6s ease-in-out;
    -o-transition: -o-transform 0.6s ease-in-out;
    transition: transform 0.6s ease-in-out;
    -webkit-backface-visibility: hidden;
    -moz-backface-visibility: hidden;
    backface-visibility: hidden;
    -webkit-perspective: 1000px;
    -moz-perspective: 1000px;
    perspective: 1000px;
  }
  .carousel-inner > .item.next,
  .carousel-inner > .item.active.right {
    -webkit-transform: translate3d(100%, 0, 0);
    transform: translate3d(100%, 0, 0);
    left: 0;
  }
  .carousel-inner > .item.prev,
  .carousel-inner > .item.active.left {
    -webkit-transform: translate3d(-100%, 0, 0);
    transform: translate3d(-100%, 0, 0);
    left: 0;
  }
  .carousel-inner > .item.next.left,
  .carousel-inner > .item.prev.right,
  .carousel-inner > .item.active {
    -webkit-transform: translate3d(0, 0, 0);
    transform: translate3d(0, 0, 0);
    left: 0;
  }
}
.carousel-inner > .active,
.carousel-inner > .next,
.carousel-inner > .prev {
  display: block;
}
.carousel-inner > .active {
  left: 0;
}
.carousel-inner > .next,
.carousel-inner > .prev {
  position: absolute;
  top: 0;
  width: 100%;
}
.carousel-inner > .next {
  left: 100%;
}
.carousel-inner > .prev {
  left: -100%;
}
.carousel-inner > .next.left,
.carousel-inner > .prev.right {
  left: 0;
}
.carousel-inner > .active.left {
  left: -100%;
}
.carousel-inner > .active.right {
  left: 100%;
}
.carousel-control {
  position: absolute;
  top: 0;
  left: 0;
  bottom: 0;
  width: 0%;
  opacity: 0;
  filter: alpha(opacity=0);
  font-size: 0px;
  color: #ffffff;
  text-align: center;
  text-shadow: 0 1px 2px rgba(0, 0, 0, 0.6);
}
.carousel-control.left {
  background-image: -webkit-linear-gradient(left, rgba(0, 0, 0, 0.5) 0%, rgba(0, 0, 0, 0.0001) 100%);
  background-image: -o-linear-gradient(left, rgba(0, 0, 0, 0.5) 0%, rgba(0, 0, 0, 0.0001) 100%);
  background-image: linear-gradient(to right, rgba(0, 0, 0, 0.5) 0%, rgba(0, 0, 0, 0.0001) 100%);
  background-repeat: repeat-x;
  filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#80000000', endColorstr='#00000000', GradientType=1);
}
.carousel-control.right {
  left: auto;
  right: 0;
  background-image: -webkit-linear-gradient(left, rgba(0, 0, 0, 0.0001) 0%, rgba(0, 0, 0, 0.5) 100%);
  background-image: -o-linear-gradient(left, rgba(0, 0, 0, 0.0001) 0%, rgba(0, 0, 0, 0.5) 100%);
  background-image: linear-gradient(to right, rgba(0, 0, 0, 0.0001) 0%, rgba(0, 0, 0, 0.5) 100%);
 background-repeat: repeat-x;
  filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#00000000', endColorstr='#80000000', GradientType=1);
}
.carousel-control:hover,
.carousel-control:focus {
  outline: 0;
  color: #00cc00;
  text-decoration: none;
  opacity: 0.9;
  filter: alpha(opacity=90);
}
.carousel-control .icon-prev,
.carousel-control .icon-next,
.carousel-control .glyphicon-chevron-left,
.carousel-control .glyphicon-chevron-right {
  position: absolute;
  top: 50%;
  margin-top: -10px;
  z-index: 5;
  display: inline-block;
}
.carousel-control .icon-prev,
.carousel-control .glyphicon-chevron-left {
  left: 50%;
  margin-left: -10px;
}
.carousel-control .icon-next,
.carousel-control .glyphicon-chevron-right {
  right: 50%;
  margin-right: -10px;
}
.carousel-control .icon-prev,
.carousel-control .icon-next {
  width: 20px;
  height: 20px;
  line-height: 1;
  font-family: serif;
}
.carousel-control .icon-prev:before {
  content: '\\2039';
}
.carousel-control .icon-next:before {
  content: '\\203a';
}
.carousel-indicators {
  position: relative;
  top: 10px;
  bottom: 10px;
  left: 50%;
  z-index: 15;
  width: 60%;
  margin-left: -30%;
  padding-left: 0;
  list-style: none;
  text-align: center;
}
.carousel-indicators li {
  display: inline-block;
  width: 10px;
  height: 10px;
  margin: 1px;
  text-indent: -999px;
  border: 1px solid #cccccc;
  border-radius: 10px;
  cursor: pointer;
  background-color: #000 \\9;
  background-color: rgba(0, 0, 0, 0);
}


.carousel-indicators .active {
  margin: 0;
  width: 12px;
  height: 12px;
  background-color: #00cc00;
}


.carousel-caption .btn {
  text-shadow: none;
}
@media screen and (min-width: 768px) {
  .carousel-control .glyphicon-chevron-left,
  .carousel-control .glyphicon-chevron-right,
  .carousel-control .icon-prev,
  .carousel-control .icon-next {
    width: 30px;
    height: 30px;
    margin-top: -15px;
    font-size: 30px;
  }
  .carousel-control .glyphicon-chevron-left,
  .carousel-control .icon-prev {
    margin-left: -15px;
  }
  .carousel-control .glyphicon-chevron-right,
  .carousel-control .icon-next {
    margin-right: -15px;
  }
  .carousel-caption {
    left: 0%;
    right: 20%;
    padding-top: 10px;
    padding-left: 20px;
    padding-bottom: 30px;
  }
  .carousel-indicators {
    bottom: 20px;
  }
}



/* Design tokens you can tweak */
.slider {
  --track-height: 12px;
  --thumb-size: 28px;

  /* This is the percentage fill (set by JS). Provide a safe default. */
  --p: 0%;
}

/* Base */
.slider {
  -webkit-appearance: none;
  appearance: none;
  width: 100%;
  height: var(--thumb-size);
  background: transparent;
  cursor: pointer;
  accent-color: var(--green); /* nice fallback where supported */
}

/* Track: WebKit/Chromium (Edge, Chrome, Safari) */
.slider::-webkit-slider-runnable-track {
  height: var(--track-height);
  border-radius: 999px;
  background: none;
}

/* Thumb: WebKit/Chromium */
.slider::-webkit-slider-thumb {
  -webkit-appearance: none;
  width: var(--thumb-size);
  height: var(--thumb-size);
  border-radius: 50%;
  background: #ccc;
  border: 3px solid var(--green);
  box-shadow: 0 2px 10px rgba(0,0,0,0.15);
  margin-top: calc((var(--track-height) - var(--thumb-size)) / 2); /* center on track */
  transition: transform 0.1s ease, box-shadow 0.2s ease;
}
.slider:active::-webkit-slider-thumb { transform: scale(1.06); }
.slider:focus { outline: none; }
.slider:focus-visible::-webkit-slider-thumb {
  box-shadow: 0 0 0 6px color-mix(in srgb, var(--green) 25%, transparent);
}

/* Firefox track + progress */
.slider::-moz-range-track {
  height: var(--track-height);
  background: var(--gray);
  border-radius: 999px;
}
.slider::-moz-range-progress {
  height: var(--track-height);
  background: var(--green);
  border-radius: 999px;
}
/* Firefox thumb */
.slider::-moz-range-thumb {
  width: var(--thumb-size);
  height: var(--thumb-size);
  border-radius: 50%;
  background: #ccc;
  border: 3px solid var(--green);
  box-shadow: 0 2px 10px rgba(0,0,0,0.15);
  transition: transform 0.1s ease, box-shadow 0.2s ease;
}
.slider:active::-moz-range-thumb { transform: scale(1.06); }
.slider:focus-visible::-moz-range-thumb {
  box-shadow: 0 0 0 6px color-mix(in srgb, var(--green) 25%, transparent);
}

/* Legacy MS (optional) */
.slider::-ms-track {
  height: var(--track-height);
  background: transparent;
  border-color: transparent;
  color: transparent;
}
.slider::-ms-fill-lower {
  background: var(--green);
  border-radius: 999px;
}
.slider::-ms-fill-upper {
  background: var(--gray);
  border-radius: 999px;
}
.slider::-ms-thumb {
  width: var(--thumb-size);
  height: var(--thumb-size);
  border-radius: 50%;
  background: #ccc;
  border: 3px solid var(--green);
}

/* Disabled state */
.slider:disabled {
  opacity: 0.5;
  cursor: not-allowed;
}

/*
.tryAgain {
	display: none;
	position: absolute;
    width: 80%;
    height: 60%;
    left: 0%;
    top: 50%;
    font-size: 200%;
    padding:20px;
//    background-color: #333;
//     background: rgba(125, 125, 125, .8);
    color: white;
}
*/

.tryAgain {
    display: none;
    position: fixed;
    top: 5%;
    left: 5%;
    width: 400px;
    background: #333b;
    padding: 146px;
    border-radius: 85px;
}

.dno {
  display: block;
  max-width: 100%;
  height: auto;
}

/* Position the bubble relative to the dno image */
.message-commit {
  position: absolute;
    top: 41%;
    left: 36%;
    width: 350px;
    /* min-height: 23rem; */
    box-sizing: border-box;
    background: url(img/house_speech.png) no-repeat center / 100% 100%;
    padding: 119px;
}

/* Hide the decorative <img> version of the speech bubble */
.message-commit .message {
  display: none;
}

.tryAgainText {
  margin: 0;
  color: #222;
  font: 600 16px/1.35 system-ui, -apple-system, Segoe UI, Roboto, Arial, sans-serif;
  overflow-wrap: anywhere;     /* prevent overflow on long words */
}


