/* --- energy table --- */

.energy_col_1 { display: table-cell; }
.energy_col_2 { display: table-cell; }
.energy_col_3 { display: table-cell; }
.energy_col_4 { display: table-cell; }
.energy_col_5 { display: table-cell; }
.energy_col_6 { display: table-cell; }
.energy_col_7 { display: table-cell; }
.energy_col_8 { display: table-cell; }
.energy_col_9 { display: table-cell; }
.energy_col_10 { display: table-cell; }

/* --- settings table --- */

.settings_dialog { width: 70%; }
.settings_col_1 { display: table-cell; }
.settings_col_2 { display: table-cell; }
.settings_col_3 { display: table-cell; cursor: pointer; }
.settings_col_4 { display: table-cell; }
.settings_col_5 { display: table-cell; }
.settings_col_6 { display: table-cell; }
.settings_col_7 { display: table-cell; cursor: pointer; }
.settings_row:hover { background-color: #3bafda !important; color: #fff !important; }

@media (max-width:991px) {		/* less space, hide info */
	.settings_col_5 { display: none; }
}

@media (max-width: 748px) {
	.settings_col_4 { display: none; }
}
@media (max-width: 575px) {
	.settings_dialog { width: 97%; }
}

/* --- additional buttons --- */

.btn-spotify {
	background-color: #1db954;
	border-color: #1db954;
	color: #fff;
}
.btn-spotify:hover,
.btn-spotify:focus,
.btn-spotify:active,
.btn-spotify.active {
	background-color: #1aa34a;
	border-color: #168d40;
	color: #fff;
}
.btn-spotify.disabled:hover,
.btn-spotify.disabled:focus,
.btn-spotify.disabled:active,
.btn-spotify.disabled.active,
.btn-spotify[disabled]:hover,
.btn-spotify[disabled]:focus,
.btn-spotify[disabled]:active,
.btn-spotify[disabled].active,
fieldset[disabled] .btn-spotify:hover,
fieldset[disabled] .btn-spotify:focus,
fieldset[disabled] .btn-spotify:active,
fieldset[disabled] .btn-spotify.active {
	background-color: #1db954;
	border-color: #1db954;
	color: #fff;
}



.btn-outline-spotify {
	background-color: #36404a;
	border-color: #1db954;
	color: #1db954;
}
.btn-outline-spotify:hover,
.btn-outline-spotify:focus,
.btn-outline-spotify:active,
.btn-outline-spotify.active {
	background-color: #1aa34a;
	border-color: #168d40;
	color: #fff;
}
.btn-outline-spotify.disabled:hover,
.btn-outline-spotify.disabled:focus,
.btn-outline-spotify.disabled:active,
.btn-outline-spotify.disabled.active,
.btn-outline-spotify[disabled]:hover,
.btn-outline-spotify[disabled]:focus,
.btn-outline-spotify[disabled]:active,
.btn-outline-spotify[disabled].active,
fieldset[disabled] .btn-outline-spotify:hover,
fieldset[disabled] .btn-outline-spotify:focus,
fieldset[disabled] .btn-outline-spotify:active,
fieldset[disabled] .btn-outline-spotify.active {
	background-color: #36404a;
	border-color: #1db954;
	color: #1db954;
}






/* --- Google Maps custom marker --- */

.customMarker {
    position:absolute;
    cursor:pointer;
    background:#424242;
    width:80px;
    height:80px;
    /* -width/2 */
    margin-left:-50px;
    /* -height + arrow */
    margin-top:-110px;
    border-radius:50%;
    padding:0px;
}
.customMarker:after {
    content:"";
    position: absolute;
    bottom: -10px;
    left: 30px;
    border-width: 10px 10px 0;
    border-style: solid;
    border-color: #424242 transparent;
    display: block;
    width: 0;
}
.customMarker img {
    width:70px;
    height:70px;
    margin:5px;
    border-radius:50%;
}

.life360_member_timestamp {
	padding-top: 5px; padding-right: 7px; display: inline-block; float: right;
}
.life360_member_since {
	padding-top: 5px; padding-right: 7px; display: inline-block; float: right;
}
@media (max-width: 490px) { /* less space, hide info */
	.life360_member_since  { 
		display: none !important;
	}
}

/* --- bootstrap dropdown button menu scrollable --- */

.scrollable-menu {
    height: auto;
    max-height: 320px;
    overflow-x: hidden;
}

/* --- */

.slrdb_activity_wrapper, .sbrdb_activity_wrapper, .stbfd_activity_wrapper, .nrr_activity_wrapper, .nrr_schedule_wrapper, .sld_onoff_wrapper, .sobfd_onoff_wrapper {
	display: flex; 
	flex-wrap: wrap; 
	align-items: center; 
	justify-content: center;
}
.stbfd_activity_wrapper {
	margin-top: 10px;
}
.sld_onoff_wrapper, .sobfd_onoff_wrapper {
	margin-top: 30px;
}
/* --- Weather Forecast - show less icons with fewer space --- */
.wf-day {
    padding-left: 10px;
    padding-right: 10px;
    text-align: center!important;
    flex: 0 0 33.333333%;
    -ms-flex: 0 0 33.333333%; /* IE 10 */
    -webkit-flex: 0 0 33.333333%; /* Safari 6.1+ */
    max-width: 33%;
}

.wf-day-4, .wf-day-5, .wf-day-6 {
	display:none; 
}

/* Desktop*/
@media screen and (min-width: 842px) { /* more space, show 4 */
  .wf-day  { 
    flex: 0 0 25%;
    -ms-flex: 0 0 25%; /* IE 10 */
    -webkit-flex: 0 0 25%; /* Safari 6.1+ */
  	max-width: 25%; 
  }
  .wf-day-4  { display: block; }
}
@media screen and (min-width: 917px) { /* even more space, show 5 */
  .wf-day  { 
    flex: 0 0 20%;
    -ms-flex: 0 0 20%; /* IE 10 */
    -webkit-flex: 0 0 20%; /* Safari 6.1+ */
  	max-width: 20%; 
  }
  .wf-day-5  { display: block; }
}
@media screen and (min-width: 992px) { /* full space, show 6 */
  .wf-day  { 
    flex: 0 0 16.666667%;
    -ms-flex: 0 0 16.666667%; /* IE 10 */
    -webkit-flex: 0 0 16.666667%; /* Safari 6.1+ */
  	max-width: 16%; 
  }
  .wf-day-6  { display: block; }
}


/* --- Evohome - only show the up/ down buttons when enought space --- */
.eh-logo {
	width: 50%; position: absolute; top: 5px;
}
.eh-logo img, .lh-logo img {
	width: 150px;
}
.eh-card-box {
	position: relative; padding-bottom: 5px;
}
.eh-temp-box {
	width: 50px; position: absolute; top: 23px; right:105px; margin: 0px; padding: 0px;
}
.eh-temp {
	top: 0px; margin-top: 0px; margin-bottom: 0px; padding: 0px;
}
.eh-temp-val {
	margin-top: 0px; margin-bottom: 0px; padding: 0px;
}
.eh-heat-box {
	width: 90px; position: absolute; top: 10px; right:10px;
}
.eh-heat {
	top: 0px; margin-top: 0px; margin-bottom: 0px;
}
.eh-heat-val {
	margin-top: 0px; margin-bottom: 0px;
}
.eh-updown {
	position: absolute; 
	top: 60px; 
	right: 40px; 
	width: 60px;
	display:none; 
}
@media screen and (min-width: 470px) { /* more space, show 4 */
  .eh-updown  { display: block; }
}

.bstd-card-box {
	position: relative; padding-bottom: 0px;
}
.bstd-top {
	height: 50px;
}
.bstd-logo-device {
	position: absolute; top: 40px !important; left: 67px !important;
	width: 50%;
}
.bstd-logo-device img {
	width: 50px;
	height: 37px;
}
.bstd-logo-brand {
	position: absolute; top: 10px !important; left: 67px !important;
	width: 50%;
}
.bstd-logo-brand img {
	width: 149px; /* 252px  */
	height: 19px;	/* 32px  */
}
@media screen and (min-width: 500px) { /* less space, make smaller buttons */
	.bstd-logo-device {
		top: 10px !important;
	}
	.bstd-logo-brand {
		left: 120px !important;
	}
}

.bstd-activity-box {
	width: 140px; position: absolute; top: 10px; right:10px;
}
.bstd-activity-box h3 {
	text-align: right;
}
.bstd-activity-box h6 {
	text-align: right;
}
.bstd_activity_wrapper {
	display: flex; 
	flex-wrap: wrap; 
	align-items: center; 
	justify-content: center;
	padding-top: 20px;
	padding-bottom: 30px;
}
.bstd-refresh-box {
	width: 50px; position: absolute; top: 10px; left: 5px; margin: 0px; padding: 0px;
}
.bstd-notification {
	width: 50px; position: absolute; top: 57px; left: 5px; margin: 0px; padding: 0px;
}

/* --- */

.nr-card-box {
	position: relative; padding-bottom: 0px;
}
.nr-top {
	height: 50px;
}
.nr-logo-device {
	position: absolute; top: 10px !important; left: 65px !important;
	width: 50%;
}
.nr-logo-device img {
	width: 50px;
	height: 37px;
}
.nr-logo-brand {
	position: absolute; top: 10px !important; left: 120px !important;
	width: 50%;
}
.nr-logo-brand img {
	width: 70px; /* 141px; */
	height: 19px;	/* 37px; */
}
.nr-show-schedule {
	width: 50px; position: absolute; top: 10px; left: 200px; margin: 0px; padding: 0px;
}
.nr-firmware-update {
	width: 50px; position: absolute; top: 10px; left: 240px; margin: 0px; padding: 0px;
}
.nrr_activity_wrapper {
	padding-bottom: 20px;
}
.nr-activity-box {
	width: 240px; position: absolute; top: 10px; right:10px; text-align: right;
}
.nr-activity-box h3 {
	text-align: right;
}
.nr-activity-box h6 {
	text-align: right;
}
.nr-refresh-box {
	width: 50px; position: absolute; top: 10px; left: 5px; margin: 0px; padding: 0px;
}


.lh-card-box {
	position: relative; padding-bottom: 0px;
}
.lh-top {
	height: 50px;
}
.lh-logo {
	position: absolute; top: 10px !important; left: 65px !important;
}
.lh-logo img { /* 370x111 */
	height: 38px;
	width: 125px;
}

@media screen and (max-width: 440px) { /* less space, make smaller buttons */
	.slrdb_movie, .slrdb_entertain, .slrdb_kook, .slrdb_dinner, .slrdb_bright {
		padding:.25rem .5rem;
		font-size:.875rem;
		line-height:1.5;
		border-radius:.2rem;
	}
}
/* ---- The Harmony module ------------------------------ */
/* When smaller than 465 use smaller buttons */
/* Buttons are .w-xs { min-width: 80px; } .w-sm { min-width: 95px; } .w-md { min-width: 110px; } .w-lg { min-width: 140px; } */

/* use lg buttons until 1412, then use md */
/* smaller than 1025 use small buttons */
.lh-activity-box {
	width: 140px; position: absolute; top: 10px; right:10px;
}
.lh-activity-box h3 {
	text-align: right;
}
.lh-activity-box h6 {
	text-align: right;
}
.slhd_activity_wrapper {
	display: flex; 
	flex-wrap: wrap; 
	align-items: center; 
	justify-content: center;
	padding-bottom: 20px;
}
.slhd_videocontrol_wrapper {
	display: flex; 
	flex-wrap: wrap; 
	align-items: center; 
	justify-content: center;
	padding-bottom: 10px;
}
.slhd_colorbutton_wrapper {
	display: flex; 
	flex-wrap: wrap; 
	align-items: center; 
	justify-content: center;
	padding-bottom: 10px;
	
}
button.slhd_activity {
	margin: 3px;

}
.lh-refresh-box {
	width: 50px; position: absolute; top: 10px; left: 5px; margin: 0px; padding: 0px;
}
/* No greater than 900px, no less than 400px */
@media (max-width:1412px) and (min-width:1122px) {
	button.slhd_activity {
		min-width: 110px;
	}
}
/* No greater than 900px, no less than 400px */
@media (max-width:1122px) and (min-width:1008px) {
	button.slhd_activity {
		min-width: 95px;
	}
}
/* No greater than 900px, no less than 400px */
@media (max-width:1008px) and (min-width:992px) {
	button.slhd_activity {
		min-width: 85px;
	}
}
/* No greater than 900px, no less than 400px */
@media (max-width:676px) and (min-width:552px) {
	button.slhd_activity {
		min-width: 110px;
	}
}
/* No greater than 900px, no less than 400px */
@media (max-width:552px) and (min-width:498px) {
	button.slhd_activity {
		min-width: 95px;
	}
}
/* No greater than 900px, no less than 400px */
@media (max-width:498px) and (min-width:434px) {
	button.slhd_activity {
		min-width: 80px;
	}
}
/* No greater than 900px, no less than 400px */
@media (max-width:434px) {
	button.slhd_activity {
		width: 70px;
		min-width: 70px;
	}
}
button.slhd_tvpreset {
		min-width: 140px;
		margin: 3px;
}
@media (max-width:1716px) and (min-width:1442px) {
	button.slhd_tvpreset {
		min-width: 120px;
	}
}
@media (max-width:1716px) and (min-width:1442px) {
	button.slhd_tvpreset {
		min-width: 120px;
	}
}
@media (max-width:1442px) and (min-width:1068px) {
	button.slhd_tvpreset {
		min-width: 100px;
	}
}
@media (max-width:1068px) and (min-width:991px) {
	button.slhd_tvpreset {
		min-width: 90px;
	}
}
@media (max-width:991px) and (min-width:690px) {
	button.slhd_tvpreset {
		min-width: 145px;
	}
}
@media (max-width:690px) and (min-width:590px) {
	button.slhd_tvpreset {
		min-width: 120px;
	}
}
@media (max-width:590px) and (min-width:512px) {
	button.slhd_tvpreset {
		min-width: 100px;
	}
}
@media (max-width:512px) and (min-width:470px) {
	button.slhd_tvpreset {
		min-width: 90px;
	}
}
@media (max-width:470px) {
	button.slhd_tvpreset {
		min-width: 72px;
	}
}
div.slhd_preset_wrapper {
	display: flex; 
	flex-wrap: wrap; 
	align-items: center; 
	justify-content: center;
	margin-bottom: 10px;
	margin-top: 10px;	
}
button.slhd_radiopreset {
		min-width: 140px;
		margin: 3px;
		margin-left: 30px;
		margin-right: 30px;
}
@media (max-width:1854px) and (min-width:1684px) {
	button.slhd_radiopreset {
		margin-left: 20px;
		margin-right: 20px;
	}
}
@media (max-width:1684px) and (min-width:1518px) {
	button.slhd_radiopreset {
		margin-left: 10px;
		margin-right: 10px;
	}
}
@media (max-width:1518px) and (min-width:1400px) {
	button.slhd_radiopreset {
		margin-left: 3px;
		margin-right: 3px;
	}
}
@media (max-width:1400px) and (min-width:1236px) {
	button.slhd_radiopreset {
		min-width: 120px;
		margin-left: 3px;
		margin-right: 3px;
	}
}
@media (max-width:1236px) and (min-width:1070px) {
	button.slhd_radiopreset {
		min-width: 100px;
		margin-left: 3px;
		margin-right: 3px;
	}
}
@media (max-width:1070px) and (min-width:991px) {
	button.slhd_radiopreset {
		min-width: 90px;
		margin-left: 3px;
		margin-right: 3px;
	}
}
@media (max-width:991px) and (min-width:920px) {
	button.slhd_radiopreset {
		min-width: 100px;
		margin-left: 15px;
		margin-right: 15px;
	}
}
@media (max-width:920px) and (min-width:858px) {
	button.slhd_radiopreset {
		min-width: 100px;
		margin-left: 10px;
		margin-right: 10px;
	}
}
@media (max-width:858px) and (min-width:732px) {
	button.slhd_radiopreset {
		min-width: 100px;
		margin-left: 3px;
		margin-right: 3px;
	}
}
@media (max-width:732px) and (min-width:476px) {
	button.slhd_radiopreset {
		min-width: 125px;
		margin-left: 3px;
		margin-right: 3px;
	}
}

@media (max-width:476px) {
	button.slhd_radiopreset {
		min-width: 80px;
		margin-left: 3px;
		margin-right: 3px;
	}
}
@media (max-width:486px) {
	button.slhd_playpause {
		margin-left: 1px;
		margin-right: 1px;
	}
}
@media (max-width:430px) {
	button.slhd_playpause i {
		margin-left: 1px;
		margin-right: 1px;
	}
}
button.slhd_color {
	min-width: 50px;
	min-height: 25px;
	padding-left: 10px;
	margin-right: 10px;
}

/* --- on off toggle switch --- https://proto.io/freebies/onoff/ --- */
.onoffswitch {
    position: relative; width: 90px; height: 30px;
    -webkit-user-select:none; -moz-user-select:none; -ms-user-select: none;
}
.onoffswitch-checkbox {
    display: none;
}
.onoffswitch-label {
    display: block; overflow: hidden; cursor: pointer;
    border: 1px solid #f8f9fa; border-radius: 20px;
}
.onoffswitch-inner {
    display: block; width: 200%; margin-left: -100%;
    transition: margin 0.3s ease-in 0s;
}
.onoffswitch-inner:before, .onoffswitch-inner:after {
    display: block; float: left; width: 50%; height: 30px; padding: 0; line-height: 30px;
    font-size: 14px; color: white; font-family: Trebuchet, Arial, sans-serif; font-weight: bold;
    box-sizing: border-box;
}
.onoffswitch-inner:before {
    content: "ON";
    padding-left: 10px;
    background-color: #00B19D; color: #FFFFFF;
}
.onoffswitch-inner:after {
    content: "OFF";
    padding-right: 10px;
    background-color: #36404A; color: #98A6AD;
    text-align: right;
}
.onoffswitch-switch {
    display: block; width: 18px; margin: 6px;
    background: #98A6AD;
    position: absolute; top: 0; bottom: 0;
    right: 56px;
    border: 2px solid #f8f9fa; border-radius: 20px;
    transition: all 0.3s ease-in 0s; 
}
.onoffswitch-checkbox:checked + .onoffswitch-label .onoffswitch-inner {
    margin-left: 0;
}
.onoffswitch-checkbox:checked + .onoffswitch-label .onoffswitch-switch {
    right: 0px; 
}

/* --- Flot tooltip background color -- */
#flotTip {
	background: #36404A !important;
	z-index: 1151 !important;
}

.tooltip {
	z-index: 1151 !important;
}