/* common stuff */
body {
	font-family: sans-serif;
	margin: 1ex 1ex 0 1ex;
}

a {
	text-decoration: none;
}

a:link {
	color: #2030A2;
}

a:visited, a:active, a:hover {
	color: #202062;
}

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

img, tt, form, pre {
	border: 0;
}

del {
	text-decoration: line-through;
}

caption {
	caption-side:top;
	margin: 1ex 0;
	text-align: left;
}

thead {
	color: white;
	background-color: #616ca7;
}

tbody tr:nth-child(EVEN) { /* alternate color for odd rows */
	background-color: #e5e5e5;
}

input, button {
	border: 1px solid #bbbbff;
	border-radius: 0.75ex;
	-moz-border-radius: 0.75ex;
	background-color: #a3b8cb;
}

label {
	font-weight: bold;
}

.pre { /* the diff content */
	white-space: pre-wrap;
	font-family: monospace;
	margin: 0;
}

#page { }

.error { /* error messages */
	color: #a52a2a;
}

/* ############### start of header ############## */
#whole_header {
	display: none;
}

#pagetitle { /* short verbal summary/description of the shown content */
}

/* required for help page, only */
#sbar { /* full search navbar */
	border-top: 1px solid #ffc726;
	background-color: #FFFFE5;
	margin: 0;
	clear: both;
}

/* *** full search navbar *** */
#qtbl, #ptbl {
	display: inline-block;
	vertical-align: top;
} 

#qtbl tr {
	background: none; /* remove alternating colors */
}

#ptbl > p {
	text-align: center;
	white-space: nowrap;
	margin: 0.5ex 1ex;
}

#qtbl td:first-child {
    width: 10ex;
    text-align: right;
}

#qtbl td:nth-child(2) {
	width: 45ex;
}

#qtbl input.q {
	width: 100%;
}

#ptbl {
	margin-left: 2em;
}

#ptbl button {
	font-size: small;
}	

#ptbl button:first-of-type {
	margin-left: 1em;
}

#ptbl select {
	width: 100%;
}

#ptbl option {
	padding: 0 1ex;
}

#sbox > p:last-of-type {
	white-space: nowrap;
	/* 11ex = width(#qtbl td:first-child) + margin-left(body) */
	margin: 1ex 0 0.5ex 11ex;
}

#sbox > p:last-of-type > :nth-child(n+2) {
	margin-left: 1ex;
}

input.q { /* text input fields */
	background-color: #ffffff;
	border: 1px solid #bbbbff;
}

input.submit { /* start search button */
	font-weight: bold;
}
/* ############### end of header ############## */


/* ############### start of content ############## */
#content {
}


/* *** help page *** */
#help dfn { /* definitions */
	text-decoration: underline;
}

#help .fields, #help .example {
	margin-left: 3em;
}

#help dt {
	font-weight: bold;
}


/* *** more page ***/
#more {
	line-height: 1.25em;
}

#more b { /* highlight matches */ 
	background-color: #e5e5e5;
}


/* *** history page *** */
table#revisions {
	/* width: 100%; */ /* table with the history info for a file */
	/* border-collapse: collapse; */ /* looks better with a small divider */
}

#revisions a.h	{ /* modified file list content */
	font-size: small;
	margin-left: 2em;
}

#revisions .filelist { /* "Show modified files" */
	display: inline;
}

#revisions .filelist-hidden { /* "Hide modified files" */
	display: none;
}

#revisions tbody td:first-child {
	/* rev number - git/mercurial revs numbers look bad with prop. fonts */
	font-family: monospace;
	text-align: right;
}

#revisions tbody td:nth-child(2), #revisions tbody td:nth-child(3) {
	/* Compare and Date column */
	text-align: center;
}

#revisions tbody td:nth-child(4) { /* author column */
	padding: 0 1ex;
	text-align: center;
}

.rssbadge { /* RSS/XML Feed on history page */
	text-align: right;
	margin: 1ex 0;
}


/* *** diff page *** */
#diffbar { /* diff navbar: contains the tabs to select diff format */
	display: none;
}

#difftable .d {
	/* "Deleted" heading + highlight of deleted text in diff lines */
	background-color: #ffcc40;
}

#difftable .a {
	/* "Added" heading + highlight of added text in diff lines */
	background-color: #8bd98b;
}

#difftable {
	font-size: small;
}

#difftable table { /* left side == prev. rev; right side "current" rev */
	table-layout: fixed;
	border-collapse: collapse;
}

#difftable table th { /* usually both rev. have changes: eq. space for both */
	padding-top: 1ex;
	width: 50%;
}

#difftable th:last-child, #difftable td:last-child {
	border-left: 1px solid black;
}

#difftable .plain td {
	padding: 2px;
}

#difftable .image td {
	padding: 5px;
}

#difftable .k { /* border between the context and real diff lines */
	border-bottom: 1px dashed #ccc;
}


/* *** list aka xref stuff *** */

/* directory listing */
table#dirlist { /* the "Name" column */
	font-family: monospace;
	border-style: none;
	border-collapse: collapse;
}

#dirlist .r, #dirlist .p {
	padding: 0;
	margin: 0 0 0 1em;
}

#dirlist td:nth-child(n+2) { /* all but the first column */
	padding-right: 1em;
}

#dirlist tbody td:nth-child(4) {
	text-align: right; /* CSS3 may allow " " (single space char) */
}


/* file display */
#src {
}

#src pre {
	margin: 0;
	font-size: small;
}

#src .l-hide, #src .hl-hide, .blame-hidden { /* hidden line number/annotation block */
	display: none
}

#src .l, #src .hl, .blame .r, .blame .a,
#results .l, #more .l,
#difftable i, del.d { /* line number/annotation block */
	display: inline-block;
	width: 6ex;
	text-align: right;
	padding: 0 1ex;
	margin-right: .5ex;
	background-color: #dddddd;
	border-right: 1px solid #ddd;
	color: #666;
}

#src .hl { /* highlighted line number */
	color: #000;
}

.blame .r { /* revision number "column" (annotation) */
	text-align: right;
}

.blame .a { /* author name "column" (annotation) */
	text-align: center;
}

/* source code highlighting - see org/opengrok/analysis/$lang/*Xref.lex */
#src .n		{ /* numbers/label */	color: #a52a2a; } 
#src .s		{ /* strings */			color: green; } 
#src .c		{ /* comment */			color: #666; }
#src .b		{ /* heading/title/bold */	color: #000; font-weight: bold; }
#src .k		{ /* block display */ 	color: #000; font-family: monospace; }
#src a.d	{ /* symbol definition */	color: #909; font-weight: bold; }

a.xm	{ /* macro */			color: #c66; font-weight: bold; }
a.xa	{ /* argument */		color: #60c; font-weight: bold; }
a.xl	{ /* local */			color: #963; font-weight: bold; }
a.xv	{ /* variable */		color: #c30; font-weight: bold; }
a.xc	{ /* class */			color: #909; font-weight: bold; font-style: italic; }
a.xp	{ /* package */			color: #909; font-weight: bold; font-style: italic; }
a.xi	{ /* interface */		color: #909; font-weight: bold; font-style: italic; }
a.xn	{ /* namespace */		color: #909; font-weight: bold; font-style: italic; }
a.xe	{ /* enum */			color: #909; font-weight: bold; font-style: italic; }
a.xer	{ /* enumerator */		color: #909; font-weight: bold; font-style: italic; }
a.xs	{ /* struct */			color: #909; font-weight: bold; font-style: italic; }
a.xt	{ /* typedef */			color: #909; font-weight: bold; font-style: italic; }
a.xts	{ /* typedefs */		color: #909; font-weight: bold; font-style: italic; }
a.xu	{ /* union */			color: #909; font-weight: bold; font-style: italic; }
a.xfld	{ /* field */			color: #090; font-weight: bold; }
a.xmb	{ /* member */			color: #090; font-weight: bold; }
a.xf	{ /* function */		color: #00f; font-weight: bold; }
a.xmt	{ /* method */			color: #00f; font-weight: bold; }
a.xsr	{ /* subroutine */		color: #00f; font-weight: bold; }

#man table, #man td  { /* #man == troff src */
	background-color: #e5e5e5;
	border: 1px;
	padding: 2px;
}

#man p { /* a troff paragraph */
	margin-top: 0.5em;
	margin-bottom: 0;
}

#man div.b { /* man section headings etc. */
	margin-top: 2em;
}

#man div.rs { /* a right-shifted block */
	margin-left: 3em;
	margin-bottom: 1em;
}

/* "Navigate" Popup */
.sym_list_style_hide, .sym_list_style {
	display: none;
}

/* search result page */
#results {
}

#results p { /* pagetitle and slider */
	padding: 0.1em;
}

#results .dir { /* directory row above matched files */
	background-color: #cccccc;
}

#results .dir td { /* directory link */
	padding-left: 1em;
}

#results td.q { /* 1st column: H A D */
	white-space: nowrap;
	font-size: xx-small;
	padding: 3px;
	width: 3em;
}

#results td.f { /* 2nd column: filename */
	width: 3em;
	padding: 3px 0.5em 3px 2em;
}

#results .con { /* 3rd column: line number + matched line contents */
	font-size: small;
}

#results .con .all {
    margin-left: 6ex; /* width(#src .l) + 1ex */ 
}

#results .s, #more .s { /* matched line contents */
	color: #000;
}

#results i { /* match type description (method, interface etc.) */ 
	color: green;
	font-weight: bold;
	padding-left: 1ex;
}

#results .sel { /* slider item for the shown search result page */
	background-color: #e5e5e5;
	border: 1px #998 solid;
	padding: .5em;
	margin: 1px;
}

#results .more { /* slider item for the n-th search result page */
	border: 1px #bba solid;
	padding: .3em;
	margin: 1px;
}

/* ############### start of footer ############## */
#footer {
	color: #777777;
	font-size: small;
	margin: 1ex 0;
	border-top: 1px solid #bba;
}

#footer p { /* footer text */
	padding: 0;
	margin: 0.2em;
	text-align: center;
}

#fti { /* servedby.png */
	display: inline-block;
	width: 208px;
	height: 45px;
	vertical-align: middle;
	background-image: url(./img/combined.png);
	background-repeat: no-repeat;
	background-position: -171px 0;
}
#rssi { /* rss.png */
	display: inline-block;
	width: 80px;
	height: 15px;
	vertical-align: middle;
	background-image: url(./img/combined.png);
	background-repeat: no-repeat;
	background-position: -459px 0;
}
/* ############### end of footer ############## */
