@media print {
    #page_footer, #nav1 {
        display: none;
    }
}


*{
	padding: 0px;
	margin: 0px;
}

body {
	display: grid;
	grid-template-columns: auto;
	grid-template-rows: 40px 60px auto 50px;
	grid-template-areas:	"nav1"
							"page_header"
							"main_article"
							"page_footer";

	grid-column-gap: 0px;
	grid-row-gap: 0px;

	margin: 0px;
	height: 99vh;
	/*font-family: "Times New Roman", "Courier New", "Garamond", "Bookman Old Style", "Arial";*/
	font-family: Sans-serif;
	font-size: .95em;
}

#nav1 {
	grid-area: nav1;
	background-color: lightgrey;
/*
	border: 1px solid black;
	min-height: 100%;
	width: 100%;
	margin: auto;
	position: relative;
	height: 40px;
	width: 560px;
	display: block;
	font-family: monospace;
	background-color: red;
*/
	text-align: center;
	text-transform: uppercase;
}

#nav1 nav {

/*
	//min-height: 100%;
	//width: 100%;
	//height: 40px;
	//width: 560px;
	//font-family: monospace;
	//background-color: red;
*/
	margin: auto;
	position: relative;
	display: block;
	text-align: center;
	text-transform: uppercase;
	border: 1px solid green;
}

#nav1  a {
	display: block;
	text-decoration: none;
	color: #112233;
}

#nav1  a:hover{
	background-color: #223433;
	color: #f0f1f5;
}

#nav1  ul {
	list-style: none;
}

#nav1 ul li {
	float: left;
	width: 180px;
	height: 40px;
	line-height: 40px;
	background: lightgrey;
}

#nav1  ul ul li{
	position: relative;
	display: none;
}

#nav1 ul li:hover ul li{
	display: block;
}

#page_header {
    grid-area: page_header;
	display: flex;
	justify-content: center;
	align-items: center;

}

#page_footer {
    grid-area: page_footer;
	border-top: 1px dashed grey;
	display: flex;
	justify-content: center;
	align-items: center;

}


/*
#nav {
	grid-area: nav;
	background-color: #E5E4E2;
	border: 0px solid black;
}
*/

#main_article {
	grid-area: main_article;
	border: 0px solid grey;
	padding: 20px;
}

a {
	text-decoration: none;
}

textarea {
    padding: 4px;
}


/*
#content {
    padding: 20px;
    grid-column: 1;
    grid-row: 3;
}
*/

div.center {
    margin: 0 auto;
    border: 1px solid black;
}

/*
footer {
    grid-column: 1;
    grid-row: 4;
}
*/


/*
.flexbox > div {
    flex: 1 1 auto;
    width: auto;
    text-align: center;
	border: 1px solid black;
}
*/

.flexbox {
	display: flex;
    /*width: auto;*/

/*
    border: 1px solid black;
    text-align: center;
    align-items: center;
*/
}

.flexbox-container {
	display: flex;
  justify-content: space-around;
}

.flexbox-item {
	flex: 1;
	flex-grow: 1;
	flex-shrink: 1;
	flex-basis: auto;
	padding: 5px;

}

.NavJob {
  display: flex;
  text-align: center;
  border-bottom: 1px solid darkgray;
}

.NavJobCell {
  flex: 1;
  padding: .5em;

}

.NavJobCell-target {
    flex: 1;
    padding: .5em;
    background-color: lightgray;
}


fieldset {
    border: grey dashed 1px;
	padding: 1em;
}

.input-number {
		width: 80px;
		text-align: right;
}


dialog {
	margin: auto;
}


table {
	font-size: 9pt;
	border-collapse: collapse;
}

table caption {
	padding: 10px;
	font-style: italic;
}

table th {
	font-weight: normal;
	padding: 8px;
	border: 0px solid black;
}

table tr.title {
				border-bottom: 1px solid black;
				border-top: 1px solid black;
}

table td {
	padding: 4px;
}

table.report {
	margin-left: auto;
    margin-right: auto;
    border-collapse: collapse;
	border: 1px solid grey;
}

/*
table.report tr {
	border: 1px solid grey;
}
*/

table.report td {
    padding-top: 6px;
	padding-bottom: 6px;
	padding-left: 12px;
	padding-right: 12px;
	border: 1px solid grey;
}


tr.col-headings {
	border-bottom: 1px solid black;
}

tr.col-totals {
	border-top: 1px solid black;
	font-style: italic;
}

tr.col-totals1 {
	font-style: italic;
	font-weight: bold;
	background-color: lightgray;
}

/*
tr.col-totals td {
	font-style: italic;
	background-color: lightgrey;
}
*/


table.table1 {
    margin-left: auto;
    margin-right: auto;
    border-collapse: collapse;
}

table.table1 td, table.table1 th {
    border: 1px solid gray;
    padding: 6px;
}

table.table1 tr.gray {
   background: lightgray;
}

table.table1 tbody tr:hover {

	background-color: GreenYellow;
}

table.table1 tfoot tr td {
	border: 0px solid red;
}


table.table2 {
    margin-left: auto;
    margin-right: auto;
    border-collapse: collapse;
}

table.table2 th {
	padding: 6px;
	border: 0px solid black;
	border-top: 1px solid grey;
	border-bottom: 1px solid grey;
	background-color: white;
}


table.table2 td {
    border: 0px solid gray;
    padding: 6px;
}

table.table2 tr.gray {
}


/*
table.table2 tfoot tr td {
	border: 0px solid red;
}
*/

td.number {
    text-align: right;
}

td.percent {
    text-align: right;
}

.col-headings1 {
	font-style: bold;
}


input.input-num1 {
	text-align: right;
}

label input, label select, label textarea {
/*
*/
	display: block;
}

label {
/*
*/
	display: block;
	font-weight: bold;
}

form {
	/*float: block;*/
	/*width: 50%;*/
	margin: auto;
	//border: grey dashed 1px;
	padding: 20px;
}

li form {
	padding: 0px;
}

select[readonly] {
    background: #eee;
    cursor:no-drop;
}

.multiline {
	white-space: pre;
}

/*
ul.form {
	border: grey dashed 1px;
	width: 500px;
	list-style-type: none;
}
*/

/*
ul.form li {
	float: left;

}
*/
