html, body {
	margin: 0px;
	padding: 0px;
}

body {
	font-family: 'Open Sans', Tahoma;
	background: #eee;
}

a, button {
	outline: none;
}

header {
	background: #2980b9;
	padding: 6px 14px 6px 18px;
	color: #ecf0f1;
	font-weight: bold;
	border: 0px solid #dedede;
	border-bottom-width: 2px;
}

header .site_title {
	font-size: 21px;
	padding-top: 6px;
	padding-bottom: 6px;
}

header span.site_subtitle {
	font-weight: normal;
	padding-left: 10px;
	font-size: 0.9em;
}

header a:link, header a:visited, header a:active {
	color: #ecf0f1;
	text-decoration: none;
	transition: all 0.1s ease;
}

header a:hover {
	color: #fff;
	text-decoration: none;
	transition: all 0.1s ease;
}

header a.nav:link, header a.nav:visited {
	display: block;
	padding: 6px;
	padding-left: 12px;
	padding-right: 12px;
	border-radius: 3px;
	border: 0px solid transparent;
	border-bottom-width: 2px;
	transition: all 0.1s ease;
}

header a.nav:active {
	border-bottom-width: 0px;
	margin-top: 2px;
	transition: all 0.1s ease;
}

header a.nav:hover, header a.nav.active {
	background: #3498db;
	border-bottom-color: #206592;
	transition: all 0.1s ease;
}

footer {
	display: none;
	border-top: 1px solid #e6e6e6;
	margin-top: 20px;
	padding: 18px 16px 18px 16px;
	text-align: center;
	font-size: 0.9em;
	color: #adadad;
}

h2, h3 {
	margin-top: 0px;
}

h3 {
	margin-bottom: 12px;
}

p.last {
	margin-bottom: 2px;
}

#mobile_opt_btn_menu {
	display: none;
}

#timeframe_changer,
#main {
	color: #888;
}

#main {
	padding: 20px;
	padding-top: 25px;
	padding-bottom: 45px;
	z-index: 990;
	position: relative;
}

#main.faded {
	opacity: 0.5;
	transition: all 0.2s ease;
}

#main_shade {
	display: none;
	position: absolute;
	width: 100%;
	height: 100%;
	opacity: 0.7;
	background: #000;
	z-index: 995;
}

#announce_box_container {
	position: fixed;
	width: 50%;
	left: 50%;
	z-index: 996;
}

#announce_box {
	position: absolute;
	text-align: center;
	width: 100%;
	margin-left: -50%;
	top: -70px;
	background: #3cd37b;
	border-radius: 5px;
	border: 2px solid #2ab764;
	border-bottom-width: 3px;
	padding: 15px;
	color: #fff;
	box-sizing: border-box;
	z-index: 996;
	transition: all 0.2s ease;
	cursor: pointer;
}

#announce_box:hover {
	opacity: 0.8;
	transition: all 0.2s ease;
}

#diabox_container {
	display: none;
	position: fixed;
	top: 120px;
	width: 50%;
	left: 50%;
	z-index: 997;
}

#diabox {
	position: absolute;
	background: rgba(110, 110, 110, 0.4);
	border-radius: 10px;
	width: 100%;
	margin-left: -50%;
	z-index: 997;
}

#diabox .content {
	background: #fff;
	border-radius: 2px;
	margin: 15px;
	padding: 15px;
	padding-top: 25px;
	padding-bottom: 30px;
	color: #4d4d4d;
	box-sizing: border-box;
}

#diabox .prompt {
	padding-bottom: 15px;
	text-align: center;
	color: #777;
}

#diabox .buttons div:first-child {
	float: left;
	width: 45%;
	margin-left: 4%;
	box-sizing: border-box;
}

#diabox .buttons div:last-child {
	float: right;
	width: 45%;
	margin-right: 4%;
	box-sizing: border-box;
}

#timeframe_changer {
	display: none;
	width: 100%;
	background: #fff;
	border-bottom: 1px solid #e4e4e4;
}

#timeframe_changer .inner {
	padding: 20px;
	text-align: center;
}

.message_box, .message_box_removable {
	display: block;
	padding: 2em 1.5em;
	border: thin solid #e4e4e4;
	background: #f6f6f6;
	border-bottom-width: 3px;
	border-radius: 1em;
	color: #777;
	width: 65%;
	margin-left: auto;
	margin-right: auto;
}

.message_box .expandable,
.message_box_removable .expandable {
	width: 70%;
	margin-left: auto;
	margin-right: auto;
}

#txn_listing {
	position: relative;
}

.monthstamp_bar {
	position: absolute;
	height: 2px;
	margin-top: 15px;
	left: 2px;
	right: 2px;
	background: #e4e4e4;
	z-index: 900;
}

.monthstamp_title {
	position: relative;
	float: left;
	font-size: 0.9em;
	padding-left: 5px;
	padding-right: 8px;
	padding-top: 6px;
	padding-bottom: 6px;
	font-weight: bold;
	background: #eee;
	z-index: 901;  /* positions this in front of .monthstamp_bar */
}

.monthstamp_title span {
	opacity: 0.5;
}

.box_big, .box_med {
	display: block;
	border: thin solid #e4e4e4;
	background: #f6f6f6;
	border-bottom-width: 2px;
	border-radius: 0.25em;
	color: #777;
	transition: all 0.1s ease;
}

.box_big {
	padding: 1em 0.75em;
	margin: 0.25em 0 0.25em 0;
}

.box_med {
	padding: 0.65em 0.65em;
	margin: 0.17em 0 0.17em 0;
}

.positive {
	color: #27ae60;
}

.negative {
	color: #e74c3c;
}

.box_big:hover,
.box_med:hover {
	background: #fff;
	color: #444;
}

.box_big .name, .box_big .total {
	font-size: 30px;
}

.box_med .name, .box_med .total {
	font-size: 19px;
}

.box_med .details {
	display: none;
	margin-top: 5px;
	font-size: 15px;
}

.box_med .details {
	padding: 4px 6px 0px 6px;
}

.box_med .details td:first-child {
	font-weight: bold;
	width: 110px;
}

.box_med .details td {
	padding-right: 10px;
	padding-bottom: 5px;
	vertical-align: top;
}

.box_big .total,
.box_med .total {
	opacity: 0.8;
	transition: all 0.1s ease;
}

.box_med.total_box,
.box_med.total_box_nopad {
	opacity: 1.0 !important;
	font-weight: bold;
	font-size: 1.3em;
	background: #fff;
	color: #444;
	border-color: #DBDBDB;
}

.box_med.total_box {
	margin-bottom: 8px;
}

.box_big:hover .total,
.box_med:hover .total {
	opacity: 1.0;
	transition: all 0.1s ease;
}

.source_info {
	margin-bottom: 20px;
}

.source_title {
	font-size: 30px;
	float: left;
}

.source_options {
	font-size: 25px;
	float: right;
	padding-top: 4px;
	padding-right: 1px;
}

.source_options a {
	float: left;
	margin-left: 2px;
	opacity: 0.6;
	transition: all 0.1s ease;	
}

.source_options a:hover,
.txn_options a:hover {
	opacity: 1.0;
	transition: all 0.1s ease;
}

.source_options .fa-stack {
	font-size: 14px;
}

.source_subtitle {
	margin-top: 5px;
}

.txn_options {
	float: right;
	font-size: 12px;
	margin-right: -6px;
}

.txn_options a {
	float: left;
	margin-left: 1px;
	opacity: 0.6;
	transition: all 0.1s ease;	
}

.load_more_bar {
	text-align: center;
	background: #e4e4e4;
	color: #737373;
	border-radius: 4px;
	cursor: pointer;
	border: 1px solid #e4e4e4;
	padding: 10px;
	margin-top: 15px;
	margin-bottom: 12px;
	font-size: 1em;
	transition: all 0.1s ease;
}

.load_more_bar:hover {
	border: 1px solid #d6d6d6;
	transition: all 0.1s ease;
}

.cb {
	clear: both;
	height: 0px;
}

a:link, a:visited, a:active,
.fl {
	color: #4A89AE;
	text-decoration: none;
	cursor: pointer;
}

a:hover,
.fl:hover {
	color: #5DBDF5;
	text-decoration: underline;
}

a.incognito:link, a.incognito:active, a.incognito:visited, a.incognito:focus, a.incognito:hover,
a.incognito_und:link, a.incognito_und:visited, a.incognito:focus {
	color: inherit;
	text-decoration: none;
}

a.incognito_und:active, a.incognito_und:hover {
	text-decoration: underline;
}

a.wicon:link, a.wicon:visited, a.wicon:active, a.wicon:hover {
	text-decoration: none;
}

a.wicon:hover span {
	text-decoration: underline;
}

span.txn_badge {
	text-decoration: none;
	position: absolute;
	bottom: 0;
	border-radius: 5px;
	padding-top: 3px;
	padding-bottom: 3px;
	padding-left: 8px;
	padding-right: 7px;
	margin-top: 2px;
	margin-left: 10px;
	white-space: nowrap;
	background: #dedede;
	color: #737373;
}

a.tag:link, a.tag:visited {
	text-decoration: none;
	position: absolute;
	bottom: 0;
	border-top-left-radius: 1px;
	border-bottom-left-radius: 1px;
	white-space: nowrap;
}

.tag_list_item > .name > a.tag:link {
	bottom: auto !important;
	top: 0;
}

a.tag:link, a.tag:visited {
	border-top-right-radius: 5px;
	border-bottom-right-radius: 5px;
	padding-top: 3px;
	padding-bottom: 3px;
	padding-left: 8px;
	padding-right: 7px;
	margin-top: 2px;
	margin-left: 20px;
}

a.tag.large:link, a.tag.large:visited {
	border-top-right-radius: 10px;
	border-bottom-right-radius: 10px;
	padding-top: 6px;
	padding-bottom: 6px;
	padding-left: 16px;
	padding-right: 14px;
	font-size: 18px;
	margin-top: 0;
	margin-left: 10px;
	opacity: 0.9;
}

a.tag:hover, a.tag:active {
	text-decoration: none;
}

a.tag:before {
	content: "";
	position: absolute;
	top: 0;
	width: 0;
	height: 0;
	border-color: transparent;
	border-style: solid;
	transition: all 0.1s ease;
}

a.tag:before {
	left: -12px;
	border-width: 12px 12px 12px 0;
}

a.tag.large:before {
	left: -18px;
	border-width: 17px 18px 18px 0;
}

a.tag:after {
	content: "";
	position: absolute;
	background: #eee;
	float: left;
}

a.tag:after {
	top: 10px;
	left: -2px;
	width: 4px;
	height: 4px;
	-moz-border-radius: 2px;
	-webkit-border-radius: 2px;
	border-radius: 2px;
}

a.tag.large:after {
	top: 15px;
	left: -3px;
	width: 6px;
	height: 6px;
	-moz-border-radius: 3px;
	-webkit-border-radius: 3px;
	border-radius: 3px;
}

a.tag:hover:before {
	border-color: transparent;
	transition: all 0.1s ease;
}

.tag_half_text {
	margin-left: 37px;
}

/* Tag color schemes */
/** blue **/
.tag_color_blue {
	color: #2980b9;
}

a.tag.blue:link, a.tag.blue:visited {
	background: #C1E1F7;
	color: #2980b9;
}

a.tag.blue:hover, a.tag.blue:active {
	background: #A7CFEB;
}

a.tag.blue:before {
	border-right-color: #C1E1F7;
}

a.tag.blue:hover:before {
	border-right-color: #A7CFEB;
}

/** red **/
.tag_color_red {
	color: #b82828;
}

a.tag.red:link, a.tag.red:visited {
	background: #f7c0c0;
	color: #b82828;
}

a.tag.red:hover, a.tag.red:active {
	background: #eba8a8;
}

a.tag.red:before {
	border-right-color: #f7c0c0;
}

a.tag.red:hover:before {
	border-right-color: #eba8a8;
}

/** green **/
.tag_color_green {
	color: #2d6c2d;
}

a.tag.green:link, a.tag.green:visited {
	background: #bcdba3;
	color: #2d6c2d;
}

a.tag.green:hover, a.tag.green:active {
	background: #95c66c;
}

a.tag.green:before {
	border-right-color: #bcdba3;
}

a.tag.green:hover:before {
	border-right-color: #95c66c;
}

/** bronze **/
.tag_color_bronze {
	color: #a77325;
}

a.tag.bronze:link, a.tag.bronze:visited {
	background: #f4d8ae;
	color: #a77325;
}

a.tag.bronze:hover, a.tag.bronze:active {
	background: #e7c797;
}

a.tag.bronze:before {
	border-right-color: #f4d8ae;
}

a.tag.bronze:hover:before {
	border-right-color: #e7c797;
}

/** orange **/
.tag_color_orange {
	color: #cc6300;
}

a.tag.orange:link, a.tag.orange:visited {
	background: #ffd0a3;
	color: #cc6300;
}

a.tag.orange:hover, a.tag.orange:active {
	background: #ffbd80;
}

a.tag.orange:before {
	border-right-color: #ffd0a3;
}

a.tag.orange:hover:before {
	border-right-color: #ffbd80;
}

/** purple **/
.tag_color_purple {
	color: #ae28b8;
}

a.tag.purple:link, a.tag.purple:visited {
	background: #f3c0f7;
	color: #ae28b8;
}

a.tag.purple:hover, a.tag.purple:active {
	background: #e7a8eb;
}

a.tag.purple:before {
	border-right-color: #f3c0f7;
}

a.tag.purple:hover:before {
	border-right-color: #e7a8eb;
}

/** gray **/
.tag_color_gray {
	color: #737373;
}

a.tag.gray:link, a.tag.gray:visited {
	background: #dedede;
	color: #737373;
}

a.tag.gray:hover, a.tag.gray:active {
	background: #c7c7c7;
}

a.tag.gray:before {
	border-right-color: #dedede;
}

a.tag.gray:hover:before {
	border-right-color: #c7c7c7;
}


.form_label {
	padding-top: 10px;
}

#date_selector {
	float: left;
}

#today_btn {
	float: left;
	margin-left: 8px;
}

.link_btn {
	padding-top: 4px;
	padding-bottom: 7px;
	padding-left: 3px;
}

.btn,
.btn-small {
	border: 0px;
	cursor: pointer;
	margin: 0px;
	color: #ecf0f1;
	outline: none;
	font-family: 'Open Sans', Tahoma;
	text-align: center;
	transition: all 0.1s ease;
	border: 0px solid;
	-webkit-user-select: none;
	-khtml-user-select: none;
	-moz-user-select: none;
	-o-user-select: none;
	user-select: none;
}

.btn:hover,
.btn-small:hover {
	transition: all 0.1s ease;
}

.btn {
	border-radius: 15px;
	padding: 12px;
	padding-left: 20px;
	padding-right: 20px;
	font-size: 17px;
	border-bottom-width: 2px;
}

.btn:active {
	border-bottom-width: 0px;
	margin-top: 2px;
}

.btn-small {
	border-radius: 10px;
	padding: 8px;
	padding-left: 14px;
	padding-right: 14px;
	font-size: 15px;
	border-bottom-width: 1px;
}

.btn-small:active {
	border-bottom-width: 0px;
	margin-top: 1px;
}

.btn-small-form-height {
	height: 23px;
	padding-top: 10px;
}

.btn-disabled {
	background: #bdc3c7 !important;
	cursor: default !important;
	color: #fff !important;
	border-bottom-color: #949da4 !important;
	transition: all 0.1s ease;
}

.btn-primary {
	background: #2980b9;
	border-bottom-color: #1d5c86;
}

.btn-primary:hover {
	background: #3498db;
}

.btn-cancel {
	background: #c0392b;
	border-bottom-color: #912c21;
}

.btn-cancel:hover {
	background: #e74c3c;
}

.btn-confirm {
	background: #27ae60;
	border-bottom-color: #1f894b;
}

.btn-confirm:hover {
	background: #2ecc71;
}

.drpdwn {
	background: #fff;
	cursor: pointer;
	padding: 5px 10px;
	border: 2px solid #DEDEDE;
	border-radius: 5px;
	display: inline-block;
	font-family: 'Open Sans', Tahoma;
	transition: all 0.1s ease;
}

.txtbox {
	padding: 8px;
	height: 44px; /* for compatibility with WebKit on macOS */
	border: 1px solid #DEDEDE;
	border-radius: 5px;
	outline: none;
	font-size: 17px;
	font-family: 'Open Sans', Tahoma;
	resize: none;
	background: #fff;
	transition: all 0.1s ease;
	color: #4d4d4d;
}

.drpdwn:hover,
.txtbox:hover {
	border-color: #ccc;
	transition: all 0.1s ease;
}

.txtbox:focus {
	border-color: #A0C4E8 !important;
}

select {
	color: #aaa !important;
}

select.nonplaceholder {
	color: #4d4d4d !important;
}

select option {
	color: #4d4d4d;
}

select:disabled,
input:disabled,
textarea:disabled {
	opacity: 0.5;
}

.form_box {
	margin-bottom: 10px;
}

.success_msg,
.failure_msg {
	padding: 15px;
	border-radius: 15px;
	color: #fff;
	display: none;
	font-weight: bold;
}

.success_msg {
	background: #2ecc71;
}

.failure_msg {
	background: #e74c3c;
}

.success_msg .icon,
.failure_msg .icon {
	float: left;
	padding-right: 8px;
}

.success_msg .msg,
.failure_msg .msg {
	float: left;
	width: 85%;
}

.unrevealed {
	display: none;
}

#dashboard_left, #sourcepage_left {
	float: left;
	width: 57%;
}

#dashboard_right, #sourcepage_right {
	float: right;
	width: 40%;
}

#mobile_opt_btn {
	display: none;
	float: left;
}

#mobile_opt_btn .inner {
	position: absolute;
	top: 0px;
	right: 0px;
	padding-top: 14px;
	padding-right: 18px;
	padding-left: 18px;
	font-size: 25px;
	line-height: 25px;
	text-align: center;
	cursor: pointer;
	height: 38px;
	transition: all 0.1s ease;
}

#mobile_opt_btn .inner.selected {
	background: #236d9f;
	transition: all 0.1s ease;
}

#mobile_back_btn {
	display: none;
	float: left;
	font-size: 25px;
	line-height: 25px;
	padding: 8px 5px 0px 5px;
	cursor: pointer;
	margin-right: 35px;
}

#mobile_back_btn span {
	font-size: 0.7em;
	text-decoration: none;
	vertical-align: middle;
}

#create_source_btn {
	width: 135px;
}

#create_txn_btn {
	width: 155px;
}

.no_sources_icon {
	font-size: 200px;
	line-height: 200px;
	opacity: 0.7;
	padding: 15px;
}

.mobile_opts {
	display: none;
	margin-top: -27px;
	margin-left: -10px;
	margin-right: -10px;
	margin-bottom: 15px;
}

.tab_btn {
	float: left;
	text-align: center;
	padding-top: 15px;
	padding-bottom: 15px;
	cursor: pointer;
	background: #eee;
	border-bottom: 2px solid #ddd;
	transition: all 0.1s ease;
}

.tab_btn.active, .tab_btn:hover {
	background: #f6f6f6;
	border-bottom: 2px solid #74BAE8;
	transition: all 0.1s ease;
}

#user_opts {
	margin-top: 4px;
}

#user_opts div {
	float: right;
	margin-left: 6px;
}

#no_items_found,
#no_tags_found {
	text-align: center;
	margin-top: 50px;
	width: 80%;
	margin-left: auto;
	margin-right: auto;
	font-weight: bold;
}

#tags_heading {
	margin-top: 5px;
}

#tags_heading i {
	padding-right: 8px;
}

.txtbox.error {
	border-color: #e74c3c;
}

#create_tag_form {
	display: none;
	margin-bottom: 15px;
}

#create_tag_form .tag_txtbox .txtbox {
	width: 100%;
	box-sizing: border-box;
	font-size: 1.3em;
}

#create_tag_form .btn-confirm {
	width: 48%;
	float: right;
	box-sizing: border-box;
}

#create_tag_form .btn-cancel {
	width: 48%;
	float: left;
	box-sizing: border-box;
}

#create_tag_form .tag_txtbox {
	display: block;
	margin-bottom: 8px;
}

#tag_list {
	margin-top: 10px;
}

#tag_list_template {
	display: none;
}

.tag_list_item {
	position: relative;
	margin-bottom: 10px;
	padding: 6px;
	border-radius: 2px;
	transition: all 0.1s ease;
}

.tag_list_item:hover {
	background: #f6f6f6;
	transition: all 0.1s ease;
}

.tag_list_item .name {
	float: left;
}

.tag_list_item .balance {
	float: right;
}

.tag_list_item > .name {
	font-size: 1.2em;
	line-height: 1.2em;
}

.tag_list_item > .balance {
	font-size: 1.2em;
	line-height: 1.2em;
}

.tag_list_item .details {
	padding: 10px;
	font-size: 1.0em;
	display: none;
}

.tag_list_item .icon {
	padding-right: 8px;
	font-size: 0.9em;
}

.tag_source_list_item {
	padding-bottom: 10px;
}

.tag_source_list_item:last-child {
	padding-bottom: 0px !important;
}

.tag_source_list_item:first-child {
	padding-top: 5px;
}

.tag_new_check {
	padding-left: 7px;
	color: #27ae60;
	display: none;
}

#create_tag_btn i {
	padding-right: 7px;
}

.hide {
	display: inline;
}

.show {
	display: none;
}

.txn_tag_desktop {
	font-size: 0.8em;
	margin-left: 15px;
	opacity: 0.8;
	transition: all 0.1s ease;
}

.txn_tag_desktop.hover {
	opacity: 1.0 !important;
	transition: all 0.1s ease;
}

.txn_tag_mobile,
.txn_options_mobile {
	display: none;
	margin-bottom: 5px;
}

.nobox_middle {
	text-align: center;
	padding-top: 15px;
	padding-bottom: 18px;
}

#no_items_found strong,
#no_tags_found strong, 
.nobox_middle strong {
	color: #3d3d3d;
}

.nobox_middle strong {
	font-weight: normal;
}

.mid_info_bar,
.small_info_bar {
	background: #e4e4e4;
	color: #737373;
	border-radius: 4px;
	cursor: pointer;
	border: 1px solid #e4e4e4;
	transition: all 0.1s ease;
}

.mid_info_bar {
	padding: 6px;
	padding-left: 8px;
	padding-right: 8px;
	margin-top: 12px;
	margin-bottom: 8px;
}

.small_info_bar {
	padding: 6px;
	padding-left: 8px;
	padding-right: 8px;
	margin-top: 15px;
	margin-bottom: 12px;
	font-size: 0.9em;
}

.mid_info_bar:hover,
.small_info_bar:hover {
	border: 1px solid #d6d6d6;
	transition: all 0.1s ease;
}

.hidden_source,
.hidden_tag {
	display: none;
}

.hidden_source div.box_big,
.hidden_tag div.tag_list_item {
	opacity: 0;
}

#back_to_top {
	position: fixed;
	bottom: 10px;
	right: 11px;
	display: none;
	cursor: pointer;
	background: #d4d4d4;
	opacity: 0.7;
	font-size: 20px;
	border-radius: 5px;
	padding: 10px;
	padding-top: 7px;
	padding-bottom: 8px;
	color: #4d4d4d;
	transition: all 0.2s ease;
	z-index: 905;
}

#back_to_top:hover {
	opacity: 0.95;
	transform: translateY(-4px);
	transition: all 0.2s ease;
}

.side_menu_header {
	display: none;
}

.side_menu {
	position: absolute;
	left: 0;
	top: 0;
	width: 250px;
	background: #f5f5f5;
	border-right: 1px solid #e0e0e0;
	border-bottom: 1px solid #e0e0e0;
	border-bottom-right-radius: 4px;
}

.side_menu_opposite {
	margin-left: 258px;
}

.side_menu .menu_item {
	padding: 15px;
	border-bottom: 1px solid #eee;
	cursor: pointer;
	transition: all 0.15s ease;
}

.side_menu .menu_item:hover,
.side_menu .menu_item.active {
	background: #fff;
	color: #4d4d4d;
	transition: all 0.15s ease;
}

.side_menu .menu_item div:nth-child(1) {
	float: left;
	width: 18px;
	text-align: center;
	padding-right: 10px;
}

.side_menu .menu_item div:nth-child(2) {
	float: left;
}

.side_menu .menu_item:last-child {
	border-width: 0;
	border-bottom-right-radius: 4px;
}

/* Analytics page */
#active_page {
	display: none;
}

.an_chart_container {
	text-align: center;
}

.an_chart_container strong {
	line-height: 2.5;
}

.an_graph {
	width: 80%;
	margin-bottom: 20px;
}

.statement_tag_item {
	cursor: pointer;
}

.statement_tag_item .txn_list .txn_list_item:hover {
	background: #f6f6f6;
}
