.dump_r {
	display: inline-block;
	border: 1px solid silver;
	vertical-align: top;
}

.dump_r .file-line {
	font-weight: bold;
	background: #E7E7E7;
	padding: 0 3px;
	margin: 0 0 2px 0;
	border-bottom: 1px solid silver;
}

.dump_r ul {
	list-style: none;
	padding: 0 0 0 15px;
	margin: 0;
}

.dump_r > ul {
	margin-left: 5px;
}

.dump_r ul ul {
	margin-top: 2px;
}

.dump_r li {
	position: relative;
	margin-bottom: 2px;
}

.dump_r table {
	border-collapse:separate;
	border-spacing: 0 2px;
	margin: -2px 0;
}

.dump_r table tr {
	background: #FDFDFD;
}

.dump_r table tr:nth-child(odd) {
	background: #FBFBFB;
}

.dump_r table tr > * {
	padding: 1px 5px;
	white-space: pre;
	vertical-align: top;
}

.dump_r table tr > *:last-child {
	width: 100%;
	border-right: none;
}

.dump_r table tr > * * {
	margin: 0 !important;
	padding: 0 !important;
}

.dump_r table tr > *.lbl .val,
.dump_r table tr > *.lbl .len,
.dump_r table tr > *.lbl .typ i {
	margin-right: 5px !important;
}

.dump_r .excol {
	position: absolute;
	margin: 0 0 0 -15px;
	cursor: pointer;
	-webkit-user-select: none;
	-moz-user-select: none;
	-o-user-select: none;
}
.dump_r .expanded	> .excol:after	{content: "\25BC";}
.dump_r .collapsed	> .excol:after	{content: "\25B6";}
.dump_r .limited	> .excol:after	{color: #BCBCBC;}
.dump_r .collapsed > ul				{display: none;}

.dump_r .lbl						{position: relative; padding: 0 3px;}
.dump_r .lbl > *					{display: inline-block;}


.dump_r li > .lbl					{background-color: #FDFDFD;}
.dump_r li:nth-child(odd) > .lbl	{background-color: #FBFBFB;}

.dump_r .key						{font-weight: bold; text-align: left;}
.dump_r .val						{margin: 0 5px 0 30px; min-width: 5px; vertical-align: top;}
.dump_r .typ,
.dump_r .len						{color: #666666;}
.dump_r .lbl > div:last-child,
.dump_r .lbl > div:last-child > i:last-child	{margin-right: 0 !important;}

.dump_r .len,
.dump_r .typ i						{font-style: normal; margin-right: 5px;}
.dump_r .typ i:first-child			{display: none;}

.dump_r .protected .key,
.dump_r th.protected				{color: #5800B8;}

.dump_r .private .key,
.dump_r th.private					{color: #A32B2B;}

.dump_r .empty			> .lbl .val {}
.dump_r .array			> .lbl .val {background-color: #C0BCFF;}
.dump_r .object			> .lbl .val {background-color: #98FB98;}
.dump_r .function		> .lbl .val {background-color: #FAFF5C;}
.dump_r .boolean		> .lbl .val {background-color: #08F200;}
.dump_r .boolean.empty	> .lbl .val {background-color: #FF8C8C;}
.dump_r .null			> .lbl .val {background-color: #FFD782;}
.dump_r .integer		> .lbl .val {background-color: #EAB2EA;}
.dump_r .float			> .lbl .val {background-color: #EB65EB;}
.dump_r .string			> .lbl .val {background-color: #FFBFBF;}
.dump_r .string.binary	> .lbl .val {background-color: #91FFD4;}
.dump_r .resource		> .lbl .val {background-color: #E2FF8C;}
.dump_r .numeric		> .lbl .val {}
.dump_r .reference		> .lbl .val {background-color: #CEFBF3;}
.dump_r .datetime		> .lbl .val {}

.dump_r .string.leadspc > .lbl .val {
	border-left: 1px solid gray;
}

.dump_r .string.trailspc > .lbl .val {
	border-right: 1px solid gray;
}

.dump_r .stdClass .std,
.dump_r .reference .ref {
	display: none;
}

/* hide length of empty stuff except numeric eg '0' strings */
.dump_r .empty:not(.numeric) > .lbl .len {
	display: none;
}

/* display empty strings as a gray middle dot */
.dump_r .empty.string:not(.numeric) > .lbl .val:after {
	content: "\0387";
	color: #BBBBBB;
}

.dump_r tr > *:nth-child(2) {
	padding-left: 30px;
}

.dump_r table .key {
	padding-right: 0;
	padding-left: 3px;
}

.dump_r th {
	text-align: left;
}

/* hide empty strings completely
.dump_r .empty.string:not(.numeric) > .lbl .val {
	display: none;
}
*/