* {
	box-sizing: border-box;
}

html,body {
	height: 100%;
}
  
body {
	background-color: #ffffff;
	padding: 0px;
	margin: 0px;
}

blockquote {
	font-style: oblique;
}

.grid-container > div.content a { color:  rgba(57, 78, 96, 0.8); }

.grid-container > div.content a:hover { color: rgba(57, 78, 96, 0.9); }

.grid-container > div.content div.row {
	margin: 5px;
	width: 100%;
}

.grid-container > div.content div.row:after,
.grid-container > div.content div.row:before {
	display:table;
	content: " ";
}

.grid-container > div.content tr:nth-child(10n+1) td {
	padding-bottom: 20px;
}

.grid-container > div.content div.col1 {
	width: 100%;
}

.grid-container > div.content div.col2 {
	width: 48%;
	float: left;
	height: 100%;
}

.grid-container > div.content fieldset {
	/* max-width: 800px; */
	background-color: rgba(57, 78, 96, 0.05);
	border: 0px;
	border-radius: 5px;
	margin: 0px;
	padding: 20px;
	box-shadow: 0 3px 5px rgba(0,0,0,0.3), 0 3px 5px rgba(0,0,0,0.6);
}

.grid-container > div.content datalist,
.grid-container > div.content input[type=text],
.grid-container > div.content input[type=email],
.grid-container > div.content input[type=password],
.grid-container > div.content select,
.grid-container > div.content textarea{
	width: 100%;
	padding: 6px;
	border: 1px solid #ccc;
	border-radius: 4px;
	box-sizing: border-box;
	resize: vertical;
	font: normal 1rem Arial, Helvetica, sans-serif;
}

.grid-container > div.content input[type=number] {
	padding: 6px;
	border: 1px solid #ccc;
	border-radius: 4px;
	box-sizing: border-box;
	resize: vertical;
	font: normal 1rem Arial, Helvetica, sans-serif;
}

.grid-container > div.content input[type=submit] {
	background-color:  rgba(57, 78, 96, 0.8);
	box-shadow: 0 3px 5px rgba(0,0,0,0.3), 0 3px 5px rgba(0,0,0,0.6);
	color: white;
	padding: 8px 20px;
	border: none;
	border-radius: 4px;
	cursor: pointer;
	float: right;
	margin-top: 6px;
	font-size: 1rem;
}

.grid-container > div.content input[type=submit]:disabled {
	color: #CCC;
	cursor: not-allowed;
}
.grid-container > div.content label {
	padding: 12px 12px 12px 0;
	display: inline-block;
	font: normal 1rem Arial, Helvetica, sans-serif;
}
  
.row::after {
	content: "";
	clear: both;
	display: table;
}

.grid-container > div.content .text-left {
	text-align: left;
}

.grid-container > div.content .text-center {
	text-align: center;
}

/* Style the header */
.grid-container > div.header {
	grid-area: header;
	background-color:  rgba(57, 78, 96, 0.9);
	padding: 5px;
	box-shadow: 0 2px 5px rgba(0,0,0,0.4), 0 2px 5px rgba(0,0,0,0.8);
	color: #FFF;
	height: 120px;
	width: 100%;
	display: table;
	overflow: hidden;
}

  /* The grid container */
.grid-container > div.menu, div.content {
	font: normal 1rem Arial, Helvetica, sans-serif;
	padding: 10px;
}
  
  /* Style the left column */
.grid-container > div.menu {
	grid-area: menu;
}

 
  /* Style the middle column */
.grid-container > div.content {
	grid-area: content;
	max-width: 1200px;
	color: rgba(57, 78, 96, 1);
}
  
  /* Style the footer */
.grid-container > div.footer {
	grid-area: footer;
	background-color:  rgba(57, 78, 96, 0.9);
	color: #FFF;
	text-align: center;
	font: normal 1rem Arial, Helvetica, sans-serif;
	padding: 15px;
	box-shadow: 0 -2px 5px rgba(0,0,0,0.3), 0 -2px 5px rgba(0,0,0,0.6);
	height: 80px;
	position: sticky;
	top: 100vh;
}

.grid-container > div.footer a {
	color: #ffffff;
}

.grid-container > div.header > div.title {
	text-shadow: -2px -2px 0 #3A3A3A, 2px -2px 0 #3A3A3A, -2px 2px 0 #3A3A3A, 2px 2px 0 #3A3A3A;
	font: normal small-caps bold 2rem "Lucida Sans", sans-serif;
	padding: 5px;
	height: 100%;
	width: 50%;
	display: table-cell;
	vertical-align: middle;
}

.grid-container > div.header > div.subtitle {
	text-align: right;
	text-shadow: -1px -1px 0 #3A3A3A, 1px -1px 0 #3A3A3A, -1px 1px 0 #3A3A3A, 1px 1px 0 #3A3A3A;
	font: normal bold 1.1rem/1.5rem "Lucida Sans", sans-serif;
	padding: 5px;
	height: 100%;
	width: 50%;
	display: table-cell;
	vertical-align: middle;
	overflow: hidden;
}

.grid-container > div.menu input,
.grid-container > div.menu > label {
	display: none;
}

.grid-container > div.menu > ul.dropdown,
.grid-container > div.menu > ul.nav {
	transition:max-height 0.5s ease-out;
}

.grid-container > div.menu #toggle-nav:checked ~ ul.nav,
.grid-container > div.menu #dropdown-check:checked ~ ul.dropdown {
	display: block;
	transition: max-height 0.5s ease-in;
}

.grid-container > div.menu input:checked ~ label:after {
	border-top:0 solid rgba(57, 78, 96, 0.9);
	border-bottom:4px solid rgba(57, 78, 96, 0.9);
	transition:border-top, border-bottom;
}

.grid-container > div.menu input:checked ~ label:hover:after {
	border-top:0 solid rgba(255,255,255,1);
	border-bottom:4px solid rgba(255,255,255,1);
}

.grid-container > div.menu > ul {
	background-color:  #ffffff;
	list-style: none;
	margin: 0px;
	padding: 0;
	width: 100%;
}

.grid-container > div.menu > ul > li,
.grid-container > div.menu > ul > label {
	color: #ffffff;
	box-shadow: 0 3px 5px rgba(0,0,0,0.3), 0 3px 5px rgba(0,0,0,0.6);
	padding: 0px;
	border: none;
	border-radius: 4px;
	display: block;
	width: 100%;
	margin-bottom: 7px;
	background-color: rgba(57, 78, 96, 0.9);
	float: left;
	position: relative;
	cursor: pointer;
}

.grid-container > div.menu > ul > label,
.grid-container > div.menu > ul > li > a {
	padding: 8px;
}

.grid-container > div.menu > ul > label:after{
	content:"";
	position:absolute;
	display:block;
	top:50%;
	right:10px;
	width:0;
	height:0;
	border-top:4px solid rgba(57, 78, 96, 0.9);
	border-bottom:0 solid rgba(57, 78, 96, 0.9);
	border-left:4px solid transparent;
	border-right:4px solid transparent;
	transition:border-bottom, border-top;
}

.grid-container > div.menu > ul > label:hover:after {
	border-top:4px solid rgba(255,255,255,1);
	border-bottom:0 solid rgba(255,255,255,1);
}

.grid-container > div.menu > ul > li:hover,
.grid-container > div.menu > ul > label:hover,
.grid-container > div.menu > ul > li:focus-within,
.grid-container > div.menu > ul > ul > li:hover {
	background-color: rgba(57, 78, 96, 0.8);
	cursor: pointer;
	color: #ffffff;
}

.grid-container > div.menu > ul > li:focus-within > a {
	outline: none;
}

.grid-container > div.menu a {
	color: #ffffff;
	text-decoration: none;
	text-align: left;
	display: block;
}

.grid-container > div.menu > ul > label {
	background-color: #ffffff;
	color: rgba(57, 78, 96, 0.9);
}

.grid-container > div.menu > ul > ul {
	list-style: none;
	padding: 0px;
	margin: 0px;
	width: 100%;
	display: none;
	background-color: transparent;
	left: 0;
}

.grid-container > div.menu > ul > ul > li {
	/* color: #ffffff; */
	box-shadow: 0 3px 5px rgba(0,0,0,0.3), 0 3px 5px rgba(0,0,0,0.6);
	padding: 0px;
	border: none;
	border-radius: 4px;
	display: block;
	width: 100%;
	margin-bottom: 7px;
	background-color: rgba(57, 78, 96, 0.9);
	float: left;
	position: relative;
	cursor: pointer;
}

.grid-container > div.menu > ul > ul > li > a {
	padding: 8px 8px 8px 20px;
}

.fa-caret-down {
	float: right;
	padding-right: 8px;
	color:  #ffffff;
}

.fa-trash {
	font-size: 1.1rem;
	color: rgba(57, 78, 96, 0.9);
}

.fa-edit {
	font-size: 1.1rem;
	color: rgba(57, 78, 96, 0.9);
}

.fa-bars {
	font-size: 1.1rem;
	color: white;
	box-shadow: 0 3px 5px rgba(0,0,0,0.3), 0 3px 5px rgba(0,0,0,0.6);
	padding: 8px 8px 8px 20px;
	border: none;
	border-radius: 4px;
	width: 100%;
	margin-bottom: 7px;
	background-color: rgba(57, 78, 96, 0.9);
	float: left;
	position: relative;
	cursor: pointer;
}

.fa-up-right-from-square {
	font-size: 0.5rem;
	margin: 0;
	padding: 0;
}

button.fa {
	border: 0px;
	background-color: #ffffff;
}

.grid-container > div.content div.book {
	margin: 10px;
	height: 400px;
	width: 240px;
	float: left;
	padding: 15px;
	position: relative;
	text-decoration: none;
	box-shadow: 0 3px 5px rgba(0,0,0,0.3), 0 3px 5px rgba(0,0,0,0.6);
	border: none;
	display: block;
}

.grid-container > div.content div.book-title {
	position: relative;
	height: 280px;
	margin: 5px;
	left: 0;
}

.grid-container > div.content div.book-price {
	height: 25px;
	left: 0;
}

.grid-container > div.content div.book-stock {
	height: 25px;
}

.grid-container > div.content div.book-action {
	position: relative;
	height: 50px;
}

/* .grid-container > div.content div.book, */
.grid-container > div.content span.soldout {
	color: darkred;
}

.grid-container > div.content div.book-info {
	height: 25px;
	width: 100px;
	position: relative;
	float: left;
}

.grid-container > div.content a.book {
	background-color: #60829f;
	height: 100%;
	display: block;
}

.books tr:nth-child(odd) {
	background: #ffffff;
}

.books tr:nth-child(even) {
	background: #dddfdd;
}
  
@media (max-width: 1024px) {
	.grid-container {
		grid-template-areas:
			'header'
			'menu'
			'content'
			'footer';
		grid-template-columns: auto;
		grid-template-rows: 120px auto auto 100px;
	}

	.grid-container > div.menu > label {
		display: block;
	}

	.grid-container > div.menu > ul.nav {
		display: none;
	}
}

/*
@media (min-width: 600px) {
	.grid-container {
		grid-template-areas: 
			'header'
			'menu'
			'content'
			'footer';
*/
		/* grid-template-columns: auto; */
/*
		grid-template-rows: 120px auto auto 100px;
	}

}
*/

@media (min-width: 1025px) {
	.grid-container {
		display: grid;
		grid-template-areas: 
		  'header header' 
		  'menu content' 
		  'footer footer';
		grid-template-columns: 250px 5fr;
		grid-template-rows: 120px 1fr auto;
		align-content: flex-start;
		gap: 5px;
		padding: 0px;
		margin: 0px;
		height: 100%;
	} 
}
