﻿body, th, td, table { font-family: Arial, Helvetica, sans-serif; }

/* used to separate pages from each other */
@media print {
.screen-page-spacer { display:none; }
.reporttoc a:visited { color: Blue; }
.reporttoc a:link { color: Blue; }
.reporttoc a:active { color: Blue; }
}
	
@media screen {
	body { background-color:#555; }
	.screen-page {
	background-position: center;
	width: 96%;
	background-color: #fff;
	border: solid 1px #000;
	margin-left: auto;
	margin-right: auto;
	padding: 10px;
	background-image: url('../Images/Sample Image.png');
	background-repeat: no-repeat;
}
	.screen-page-spacer { text-align:right; font:"Courier New", Courier, monospace; margin-top: 10px; margin-bottom:10px; }
	.screen-page-spacer  span { background-color: White;  }
	.screen-page-spacer  a { margin-left:10px; margin-right:10px; text-decoration: none; color: Black; }
	.screen-page-spacer  a:hover { color: red; }
}

.page-break  { margin: 1px; padding: 1px; }


@page {
	size: US-Letter;
	margin: 40pt 25pt 40pt 25pt;
	padding: 5pt 5pt;
	@bottom { content: flow(pdffooter); }
	@top { content: flow(pdfheader); }
}

.page-num { content: counter(page); }
.pages-num { content: counter(pages); }

.pdf-header { flow: static(pdfheader);}
.pdf-footer { flow: static(pdffooter);}



.reporttoc a::after {
  content: leader('.') target-counter(attr(href), page);
  font-style: normal;
}

.reporttoc ul, .reporttoc li {
  list-style: none;
  margin: 0;
  padding-bottom: 12px;
}

.reporttoc a { prince-bookmark-target: attr(href); prince-bookmark-level: 1; }

h1 { prince-bookmark-level: none }
h2 { prince-bookmark-level: none }
h3 { prince-bookmark-level: none }
h4 { prince-bookmark-level: none }
h5 { prince-bookmark-level: none }
h6 { prince-bookmark-level: none }


thead { display:table-header-group }
tfoot { display:table-footer-group }

.form .pic-table { page-break-before: avoid; }
.comments-holder .pic-table { page-break-before: avoid; }
.pic-table div { page-break-after: avoid; }
.pic-table { margin-left:auto; margin-right:auto; }
.pic-table-centered{ width: 100%; }
.pic-box { text-align: center; vertical-align:top; }
.pic-wrap {  }

/* mostly used on cover pages */
.cover-table-outer { width:100%;  }
.cover-table { width:100%; border: thin solid black; padding: 0.1cm; }
.cover-table-padded { padding: 0.2cm; }
.cover-table-pic { position:absolute; right:5% }
.cover-col-vert { vertical-align: text-top; text-align: center; background-color: #ecf2e3; }
.reverse-header { background-color: #ecf2e3; color: white; padding: 0.05cm; font-size: 12pt; }

.cover-tex { text-align: center; font-size: 10pt; }
.cover-tex-large { text-align: center; font-size: 12pt; }

/* used for invoice */
.invoice-table {  width: 100%; }
.invoice-col-r { width: 50%; text-align: right; }
.invoice-form {  width: 100%;  }
.invoice-form-col { width: 50%; vertical-align: top; border: thin solid black; padding-left:0.05cm; padding-right:0.05cm }

/* used for headers */
.header-number { margin-left: 3px; }
.header-image { float:right; margin-bottom: 10pt;}

/* used for the general styles and materials section on the info page*/
.gen-intro { font-size: 10pt !important;}
.sm-gen-header { color: black; font-size: 9pt; font-weight : bold; }
.sm-gen-answer { color: black; font-size: 9pt;	 }
.sm-value{ font-family: "Courier New", Courier, monospace; font-weight: bold; color:#F00; }

/* used for text at begining of report and sections */
.introtext { font-size: 8pt !important; }
.footertext { font-size: 8pt !important; border-top: thin solid black; margin-bottom: 6px; }

/* top level elements */
.section-header { color: #006400; font-size: 12pt; border-style: outset; background-color: #ecf2e3; margin-bottom: 7pt; font-weight : bold; page-break-after: avoid; padding:3px;}
.frame { width: 100%;   }

/* invoice table */
.pricelist-form {  width: 100%; margin: 0; }
.pricelist-form-header { font-weight: bold; }
.pricelist-form-amt-header { font-weight: bold; text-align:right; }
.pricelist-form-selection { border-color: black; border-width: 2px; border-style: solid; padding: 0; width: 6; height: 6 }
.pricelist-form-name {  }
.pricelist-form-amount { text-align : right; width: 70}

/* invoice text */
.pricelist-header { color: #006400; font-size: 10pt;}
.pricelist-selection { color: black; font-size: 10pt;}
.pricelist-name { color: black; font-size: 10pt;}
.pricelist-amount { color: black; font-size: 10pt;}

/* summary table */
.summary-form { width: 100%;}
.summary-form-number { vertical-align: top;  white-space:nowrap; }
.summary-form-question { vertical-align: top; }
.summary-form-answer { vertical-align: top; }
.summary-form-estimate { vertical-align: top; text-align:right;  }
.summary-form-comments { vertical-align: top; }

/* summary text */
.summary-block { width: 100%; margin-left: auto; margin-right: auto; text-align:center; }
.summary-intro { font-size: 10pt !important; }
.summary-footer { font-size: 10pt !important; border-top: thin solid black;  }
.summary-header { width: 100%; color: #006400; font-size: 12pt; border-style: outset; background-color: #ecf2e3; margin: 0; font-weight : bold; page-break-after: avoid;  }
.summary-header-image { float:right; }
.summary-question-number { color: black; font-size: 10pt; font-weight: bold; vertical-align: top; }
.summary-answer { color: black; font-size: 10pt; font-weight: bold;}
.summary-question { color: black; font-size: 10pt; font-weight: bold;}
.summary-comments { color: black; font-size: 10pt;}
.summary-estimates { color: black; font-size: 10pt;}
.summaryIcon { margin-right: 4px; }
.summary-title-consolidated { margin-top: 10px; margin-bottom: 10px; font-size: 12pt; font-weight: bold;}

/* spreadsheets */
.ss-table { border: thin solid; border-color:black; border-collapse: collapse; }
.ss-tr {  }
.ss-tr:hover { background-color:#ecf2e3; }
.ss-td { border-color:black; }
.ss-th { border-color:black; color: #006400; background-color:#ecf2e3; text-align:center; }
/* used for the comments response to a question */
.comments-picture { border: thin solid; margin-right:0.1cm }
.comments-number { font-size: 10pt; font-weight: bold; }
.comments-header { font-size: 10pt; font-weight: bold; }
.comments { font-size: 10pt !important; }

/* used for the styles and materials section */
.sm-table { table-layout: auto; width: 100%; }
.sm-title { font-size: 10pt; font-weight : bold; text-align: center;}
.sm-header { color: #006400; font-size: 9pt; font-weight : bold; }
.sm-answer { font-size: 9pt; }
.sm-col {  }
.sm-whole { margin-bottom: 5px; }


/* table of questions */
.form {  }
.form-question-number { vertical-align: top }
.form-question {vertical-align: top }
.form-header {vertical-align: top  }
.form-footer { vertical-align: top }
.form-answer { vertical-align: top	 }
.form-discovery { vertical-align: top }
.form-key { vertical-align: top }
.form tr:hover  {    background-color:#ecf2e3;}

/* questions and answers text */
.question-number {  font-size: 10pt; font-weight : bold;}
.question { font-size: 10pt; font-weight: bold; }
.abbrev { font-size: 9pt; font-weight: bold;}
.answer { font-size: 10pt; }
.discovery { font-size: 9pt; }
