/* SYSTEM WIDE CSS */
@font-face {
    font-family: FancyTitle;
    src: url(fonts/blowbrush.ttf);
}

@font-face {
    font-family: PlainTitle;
    src: url(fonts/Kavivanar-Regular.ttf);
}

@font-face {
    font-family: PlainText;
    src: url(fonts/OpenSans-Regular.ttf);
}

@font-face {
    font-family: MonoText;
    src: url(fonts/FiraMono-Regular.ttf);
}

:root {
    --light-pink:#DCA3A5;
    --medium-pink:#C25B6C;
    --dark-pink:#88273B;
    --light-purple:#CECAD4;
    --medium-purple:#6A5B6B;
    --blue-accent:#2B4F5D;
    --title:#F7F1E3;
    --button-bc: #CECAD4;
    --button-fc: #88273B;
    --content-bc: #F7F1E3;
    --text-color: #3B3B3B;
}

html {
  	box-sizing: border-box;
  	overflow-y: scroll;
  	background: url(images/bg-blue.jpg);
  	background-repeat: no-repeat;
	background-attachment: fixed;
	background-size: 100% 100%;
  	padding: 15px 0px 15px 0px;
}

*, *:before, *:after {
  box-sizing: inherit;
}

html, body {
    margin: 0;
}

h1, h2, h3, h4, h5
{
	font-family: FancyTitle;
	text-transform: uppercase;
}

h1 {
	letter-spacing: 5px;
	font-size: 40px;
	margin-bottom: 0px;
	color: var(--title);
	display: inline-block;
}

h2 {
	letter-spacing: 5px;
	font-size: 30px;
	margin-top: 5px;
	color: var(--title);
}

h3 {
	letter-spacing: 5px;
	font-size: 26px;
	line-height: 20px;
	margin-top: 5px;
	margin-bottom: -10px;
	color: var(--blue-accent);
}

h4 {
	letter-spacing: 5px;
	font-size: 24px;
	line-height: 18px;
	margin-top: 5px;
	margin-bottom: 10px;
	color: var(--dark-pink);
}

h5 {
	letter-spacing: 5px;
	font-size: 20px;
	line-height: 14px;
	margin-top: 5px;
	margin-bottom: 5px;
	color: var(--blue-accent);
}

a {
	color: var(--dark-pink);
	font-weight: bold;
	text-decoration: none;
}

label {
	font-weight: bold;
    color: var(--dark-pink);
}

input, textarea {
	border:3px solid var(--light-pink);
	border-radius: 10px;
	font-size: 18px;
	height: 40px;
	outline: 0;
	padding-left: 5px;
}

.ui-autocomplete {
	max-width: 50%;
	font-size: 18px;
	font-family: PlainText;
	margin-left: 0px;
	padding: 0px;
	background-color: #ffffff;
	border:1px solid var(--light-pink);
}

.ui-autocomplete li {
	list-style-type: none;
	padding: 10px 0px 10px 10px;
}

.ui-helper-hidden-accessible { position: absolute; left:-999em; }

input[type=checkbox] {
	height: 15px;
}

input[type=number] {
	width: 75px;
}

input[class="sub"] {
    display: inline-block;
}

.roller-fields label {
	border: 3px solid var(--light-pink); 
	background-color: var(--light-purple); 
	font-weight: bold;
	padding: 5px; 
	border-radius: 3px; 
	margin-bottom: 5px;
	display: inline-block;
	min-width: 100px;
	text-align: center;
}

/* Labels for checked inputs */
.roller-fields input:checked + label {
  background-color: var(--light-pink); ;
}

/* Checkbox element, when checked */
.roller-fields input[type="checkbox"] {
  display: none;
}

.roller-fields input[type="radio"] {
  display: none;
}

.roller-fields fieldset {
	border: none;
	margin: 0px 0px 0px 0px;
	padding: 0px;
	display: inline-block;
}

.roller-fields legend {
	color: var(--dark-pink);
	padding-bottom: 5px;
}

.roller-fields fieldset label {
	margin-left: 0px;
	margin-right: -7px;
}

.roller-fields fieldset label:last-of-type {
	margin-right: 0px;
}

.button-panel {
	display: grid; 
	width: 100%; 
	grid-gap: 10px;
	grid-template-columns: 1fr 1fr 1fr;
	margin-bottom: 25px;
}

.button-panel-menu {
	display: grid; 
	width: 100%; 
	grid-template-columns: 1fr 1fr 1fr;
	margin-bottom: 25px;
}

.button {
	border: 3px solid var(--light-pink);
    border-radius: 10px 0px 10px 0px;
    font-size: 20px;
    font-weight: bold;
    padding: 10px;
    outline: none;
    text-align: center;
    text-transform: uppercase;
    font-family: PlainTitle;
    letter-spacing: 1.5px;
    display: inline-block;
    cursor: pointer;
    color: var(--button-fc);
    background: url(images/leaves.png);
    background-color: var(--button-bc);
}

.button:hover {
	color: var(--button-bc);
    background: url(images/leaves.png);
	background-color: var(--button-fc);
}

.button-mono {
	border: 3px solid var(--light-pink);
    border-radius: 10px 0px 10px 0px;
    font-size: 20px;
    font-weight: bold;
    padding: 5px;
    margin-left: 3px;
    outline: none;
    text-align: center;
    text-transform: uppercase;
    font-family: MonoText;
    letter-spacing: 1.5px;
    display: inline-block;
    cursor: pointer;
    color: var(--button-fc);
    background: url(images/leaves.png);
    background-color: var(--button-bc);
}

.button-mono:hover {
	color: var(--button-bc);
    background: url(images/leaves.png);
	background-color: var(--button-fc);
}

.button-small {
	border: 3px solid var(--light-pink);
    border-radius: 10px 0px 10px 0px;
    font-size: 20px;
    font-weight: bold;
    padding: 5px;
    outline: none;
    text-align: center;
    text-transform: uppercase;
    font-family: PlainTitle;
    letter-spacing: 1.5px;
    display: inline-block;
    cursor: pointer;
    color: var(--button-fc);
    background: url(images/leaves.png);
    background-color: var(--button-bc);
}

.button-small:hover {
	color: var(--button-bc);
    background: url(images/leaves.png);
	background-color: var(--button-fc);
}

.button-xsmall {
	border: 3px solid var(--light-pink);
    border-radius: 10px 10px 10px 10px;
    font-size: 14px;
    font-weight: bold;
    padding: 5px;
    outline: none;
    text-align: center;
    text-transform: uppercase;
    font-family: PlainTitle;
    letter-spacing: 1.5px;
    display: inline-block;
    cursor: pointer;
    color: var(--button-fc);
    background: url(images/leaves.png);
    background-color: var(--button-bc);
}

.button-xsmall:hover {
	color: var(--button-bc);
    background: url(images/leaves.png);
	background-color: var(--button-fc);
}

.button-top {
	display: none; 
	position: fixed; 
	bottom: 20px; 
	right: 30px; 
	z-index: 99; 
	border: 3px solid var(--light-pink);
    border-radius: 5px;
    font-size: 16px;
    font-weight: bold;
    padding: 5px;
    outline: none;
    text-align: center;
    text-transform: uppercase;
    font-family: PlainTitle;
    letter-spacing: 1.5px;
    display: inline-block;
    cursor: pointer;
    color: var(--button-fc);
    background: url(images/leaves.png);
    background-color: var(--button-bc);
}

.button-top:hover {
	color: var(--button-bc);
    background: url(images/leaves.png);
	background-color: var(--button-fc);
}

.button-cart {
	border: 2px solid var(--light-pink);
    border-radius: 3px;
    font-size: 9px;
    padding: 3px 2px 3px 3px;
    position: relative;
    bottom: 2px;
    text-align: center;
    outline: none;
    text-transform: uppercase;
    font-family: MonoText;
    letter-spacing: 1.5px;
    display: inline-block;
    cursor: pointer;
    color: var(--button-fc);
    background: url(images/leaves.png);
    background-color: var(--button-bc);
}

.button-cart:hover {
	color: var(--button-bc);
    background: url(images/leaves.png);
	background-color: var(--button-fc);
}

.button-block
{
	width: 100%;
}

.columns
{
	display: grid;
	grid-template-columns: auto 1fr;
	grid-gap: 10px;
}

.columns-2
{
	display: grid;
	grid-template-columns: auto 1fr auto 1fr;
	grid-gap: 10px;
}

.columns-3
{
	display: grid;
	grid-template-columns: auto 1fr auto 1fr auto 1fr;
	grid-gap: 10px;
}

.columns-4
{
	display: grid;
	grid-template-columns: auto 1fr auto 1fr auto 1fr auto 1fr;
	grid-gap: 10px;
}

.list {
	border: 0px;
	text-align: left;
	min-width: 300px;
	margin: auto;
	border-spacing: 0px;
	margin-top: 5px;
	width: 100%;
}

.list th {
	background-color: var(--light-pink);
	border: 1px var(--dark-pink) solid;
	color: var(--content-bc);
	padding: 2px;
	height: 20px;
}

.list td {
	border: 1px var(--light-pink) solid;
	padding: 2px;
	margin: 0px;
}

.list tfoot {
	background-color: var(--light-pink);
	border: 1px var(--dark-pink) solid;
	color: var(--content-bc);
	padding: 2px;
	font-style: italic;
	font-size: 10px;
}

.list-tr {
	border: 0px;
	text-align: left;
	min-width: 300px;
	margin: auto;
	border-spacing: 0px;
	margin-top: 5px;
	width: 100%;
}

.list-tr th {
	background-color: var(--light-pink);
	border: 1px var(--dark-pink) solid;
	color: var(--content-bc);
	padding: 2px;
	height: 20px;
}

.list-tr td {
	border: 1px var(--light-pink) solid;
	text-align: center;
	padding: 2px;
	margin: 0px;
}

.list-nl {
	border: 0px;
	text-align: left;
	min-width: 300px;
	margin: auto;
	border-spacing: 0px;
	margin-top: 5px;
	width: 100%;
}

.list-nl th {
	background-color: var(--light-pink);
	color: var(--content-bc);
	padding: 2px;
	height: 20px;
}

.list-nl td {
	padding: 2px;
	margin: 0px;
}

.list-min {
	border: 0px;
	text-align: left;
	min-width: 300px;
	margin: auto;
	border-spacing: 0px;
	margin-top: 5px;
	width: 100%;
}

.list-min tr:nth-child(even) {
	background: var(--light-pink);
}
.list-min tr:nth-child(odd) {
	background: var(--light-purple);
}

.list-min th {
	background-color: var(--medium-pink);
	border-bottom: 1px var(--dark-pink) solid;
	border-top: 1px var(--dark-pink) solid;
	color: var(--content-bc);
	font-weight: bold;
	text-align: center;
	padding: 2px 2px 2px 4px;
	height: 20px;
}

.list-min th:first-of-type {
	border-left: 1px var(--dark-pink) solid;
}

.list-min th:last-of-type {
	border-right: 1px var(--dark-pink) solid;
}

.list-min td {
	border-bottom: 1px var(--dark-pink) solid;
	text-align: center;
	padding: 2px 2px 2px 4px;
	margin: 0px;
}

/* MAIN CSS */ 

.wrapper {
	margin: 0px 8% 0px 8%;
	border-radius: 15px;
	display: grid;
	grid-template-columns: auto 1fr;
	grid-template-rows: min-content 60px 1fr auto;
	grid-template-rows: -webkit-min-content 60px 1fr auto; 
	grid-template-areas: 
	"navigation header"
	"navigation account"
	"navigation content"
	"navigation footer";
}

/* NAVIGATION CSS*/
.navigation {
	grid-area: navigation;
	height: 100%;
}

.navigation-controls {
	padding: 20px;
	width: 100%;
	height: 100%;
	background: url(images/paper.png);
	background-color: var(--light-purple);
	border-radius: 15px 0px 0px 15px;
}

.navigation ul {
	list-style: none;
	border-bottom: 1px var(--medium-purple) solid;
	margin-bottom: 25px;
	padding: 0px;
}

.navigation li {
	font-size: 16px;
	padding: 2px 0px 2px 3px;
	border-top: 1px var(--medium-purple) solid;
}

.navigation li:hover {
	background-color: var(--blue-accent);
}

.navigation a {
	width: 100%;
	font-family: PlainTitle;
	font-weight: bold;
	text-decoration: none;
}

.navigation a:hover {
	color: var(--title);
	font-family: PlainTitle;
	text-decoration: none;
}

.nav-icon
{
	display: none;
	width: 48px;
	height: 48px;
	background: url(images/nav.png);
	background-repeat: no-repeat;
    background-position: center; 
    border: none;
    outline: 0;
}

.nav-icon:hover, .nav-icon:focus
{
	background: url(images/nav-hover.png);
	background-repeat: no-repeat;
    background-position: center;
}


/* HEADER CSS*/
.header {
	grid-area: header;
	text-align: center;
	background: url(images/fabric.png);
	background-color: var(--dark-pink);
	border-radius: 0px 15px 0px 0px;
}

.header a {
	color: var(--title);
	text-decoration: none;
}

.header a:hover {
	color: var(--light-purple);
	text-decoration: none;
}

.header-title
{
	display: inline-block;
	padding: 0px 20px 0px 20px;
}

.fan-left {
	display: inline-block;
}

.fan-right {
	display: inline-block;
}

/* ACCOUNT CSS*/
.account {
	grid-area: account;
	background: url(images/leaves.png);
	background-color: var(--medium-pink);
	padding: 5px;
	display: grid;
	grid-template-columns: auto 1fr auto;
	grid-template-rows: min-content;
	grid-template-rows: -webkit-min-content;
}

.account-button {
    padding-right: 5px;
    padding-top: 10px;
    cursor: pointer;
}

/* Dropdown Content (Hidden by Default) */
.account-dropdown {
    display: none;
    position: absolute;
    background-color: var(--light-pink);
    color: var(--content-bc);
    font-family: PlainTitle;
    min-width: 160px;
    box-shadow: 0px 8px 16px 0px rgba(0,0,0,0.2);
    z-index: 1;
}

.account-dropdown a {
    color: var(--content-bc);
    padding: 12px 16px;
    text-decoration: none;
    display: block;
}

.account-dropdown a:hover { 
	color: var(--blue-accent);
	background-color: var(--light-purple); 
}

.account-dropdown button{
	outline: none;
	border: none;
	font-family: PlainTitle;
    min-width: 160px;
    text-align: left;
    font-size: 16px;
	background-color: transparent;
    color: var(--content-bc);
    padding: 12px 16px;
    text-decoration: none;
    display: block;
}

.account-dropdown button:hover { 
	color: var(--blue-accent);
	background-color: var(--light-purple); 
}

.show { display:block; }

.account-details
{
	text-align: left;
	font-size: 18px;
	font-family: PlainText;
	height: 60px;
	color: var(--title);
}

.account-search-box
{
	display: inline-block;
	padding-top: 5px;
	text-align: right;
}

.account-search-control
{
	margin-right: 0px;
}

/* CONTENT CSS*/
.content {
	font-family: PlainText;
	grid-area: content;
	min-height: 480px;
	padding: 10px;
	background-color: var(--content-bc);
	color: var(--text-color);
}

.denied {
	font-size: 20px;
}

/* FOOTER CSS*/
.footer {
	grid-area: footer;
	font-family: PlainTitle;
	padding: 5px;
	font-size: 10px;
	background: url(images/fabric.png);
	background-color: var(--medium-pink);
	color: var(--title);
	border-radius: 0px 0px 15px 0px;

}