/******************************************************************************/
/* COMMON
/******************************************************************************/
body {
	font-family: 'Nunito', Helvetica, Arial, sans-serif;
	/* background: url(img/background.jpg) center / cover no-repeat fixed white; */
	background: url(img/bg-sky.jpg) center / cover no-repeat fixed white;
}
.container {
    background-color: white;
}
.overlay{
	position: fixed;
	display: none;
	z-index: 5;
	left: 0;
	top: 0;
	background-color: #333;
	color: #fff;
	width: 100%;
	height: 100%;
}

/* <div id="confetti"></div> */
#confetti {
	ba/ckground: #000;
	height: 100%;
	left: 0px;
	position: fixed;
	top: 0px;
	width: 100%;
	z-index: -1;
}

/******************************************************************************/
/* HEADER
/******************************************************************************/
header {
	po/sition: relative;
	display: flex;
	ju/stify-content: space-between;
}
header a {
	color: var(--black);
	text-decoration: none;
}
header .logo {
	width: 15%;
}
header .top {
	width: 70%;
}
header .user {
	width: 15%;
}

/* logo */
header .logo img {
	float: left;
	max-width: 100%;
	max-height: 100%;
}

/* title & nav */
header .top {
	text-align: center;
}
header .top .menu li a {
	transition: color 0.3s ease;
}
header .top .site-title {
	font: normal 2em SofadiOne;
}
header .top .site-subtitle {
	font: normal 1.2em SofadiOne;
}

/*************************************/
/* EDITOR
/*************************************/

/* main pre { */
	/* display: block; */
	/* width: 100%; */
	/* padding: 5px 3px; */
	/* font: 0.9em Monaco, "Andale Mono", "Courier New", Courier, monospace; */
	/* line-height: 1.3em; */
	/* color: #2E8B57; */
	/* background-color: white; */
	/* border: 1px solid #eee; */
/* } */

/*************************************/
/* NAVIGATION
/*************************************/
nav ul li:hover {
	color: black;
}
nav ul li a {
	position: relative;
	display: block;
	padding: 10px 0;
	margin: 0 10px;
	font: normal 1.1rem 'Fjalla One', sans-serif;
	le/tter-spacing: 1px;
	line-height: 1.2;
	text-decoration: none;
	text-transform: uppercase;
	transition: color 0.1s, background-color 0.1s, padding 0.2s ease-in;
	color: #000;
}
nav ul li a:hover,
nav ul li a:focus,
nav ul li a:active {
	color: #999;
	text-decoration: none;
}
nav ul li a:active::before {
	background-color: #000;
}
nav ul li a.active {
	color: #999;
}

/* horizontal nav */
.nav,
.horiznav {
	display: flex;
	justify-content: center;
}
.horiznav ul {
	margin: 0 auto;
}
.horiznav ul li {
	float: left;
	list-style: none;
	transition: all 0.5s ease;
}
.horiznav ul li a::before,
.horiznav ul li a.active::before {
	content: '';
	display: block;
	position: absolute;
	bottom: 3px;
	left: 0;
	height: 3px;
	width: 100%;
	background-color: #000;
	transform-origin: right top;
	transform: scale(0, 1);
	transition: color 0.1s,transform 0.2s ease-out;
}
.horiznav ul li a:hover::before,
.horiznav ul li a:focus::before,
.horiznav ul li a.active::before {
	transform-origin: left top;
	transform: scale(1, 1);
}

/* horizontal nav with sub-menus */
.horiznav li ul {
	display: none;
	position: absolute;
	top: 40px;
	left: 0;
	background: white;
	z-index: 10;
}
.horiznav .topmenu ul {
	display: none;
	position: absolute;
}
.horiznav ul li.topmenu {
	position: relative;
}

.horiznav li:hover > ul {
	display: block;
}
.horiznav ul.submenu {
	top: 100%;
	left: 0;
	padding-top: .5em;
	padding-bottom: .5em;	
	border: 1px solid #ccc;
}
.horiznav ul.submenu .submenu {
	top: -.5em;
	left: 100%;
	font-size: 1em
}
.horiznav ul.submenu li {
	padding: .2em .5em;
	fo/nt-size: .9rem;
}
.horiznav li.divider {
	margin: .5rem auto .3rem;
	padding: 0;
	border-top: 1px solid #343434;
	cursor: default;
}
.horiznav li.divider:hover {
	background-color: transparent;
}

/******************************************************************************/
/* MAIN
/******************************************************************************/
main {
	line-height: 1.4;
}
main h1 {
	font-size: 1.75rem;
}
main h2 {
	font-size: 1.5rem;
}
main h3 {
	font-size: 1.2rem;
}

/******************************************************************************/
/* STYLES FOR EDITABLE PAGES
/******************************************************************************/
.editable h1 {
	font-size: clamp(40px, 5vw, 70px);
}
.editable h2 {
	font-size: clamp(24px, 2.5vw, 35px);
}
.editable h3 {
	font-size: clamp(18px, 3vw, 24px);
}
.editable blockquote {
    font: italic 1rem Georgia, serif;
    position: relative;
	margin: 5px;
    padding: 0.5em 2em 0.5em 3em;
	line-height: 1.4;
	border-left: 10px solid #ccc;
	bo/rder-right: 10px solid #ccc;
}
.editable blockquote::before {
	content: '\201C';
	position: absolute;
	font-size: 6em;
	font-family: Georgia, serif;
	line-height: 1;
	top: 0;
	left: 0;
	color: #ccc;
}
.editable blockquote::after {
	content: '\201D'; 
	position: absolute;
	right: 0;
	bottom: -0.5em;
	float: right;
	font-family: Georgia, serif;
	font-size: 6em;
	line-height: 1;
	color: #ccc;
 }
.editable blockquote footer {
    padding: 0 2em 0 0;
    text-align:right;
}
.editable blockquote cite::before {
	content: "\2013";
}

/******************************************************************************/
/* MEMBERS
/******************************************************************************/

/***************************************/
/* Tabs
/***************************************/
.tab-pane {
	padding: 20px 0;
	text-align: center;
}
.tab-pane .inventory-form {
	text-align: left;
}
.nav-tabs .nav-link {
    font: normal 1rem 'Uniform Extra Condensed';
}
/***************************************/
/* Tabs content
/***************************************/
#nav-inventory,
#nav-totd {
    max-width: 50rem;
    margin: 10px auto;
	font-size: 1rem;
}
#nav-totd {
    text-align: justify;
}

/* Clean time */
#nav-cleantime .recovery-keytag, 
#nav-cleantime .recovery-medail {
	display: flex;
	flex-wrap: wrap;
	justify-content: center;
}
#nav-cleantime .recovery-keytag img {
	width: 50px;
	height: 75px;
	padding: 5px;
}
#nav-cleantime .recovery-medail img {
	width: 75px;
	height: 75px;
	padding: 5px;
}

/* Clean birthdays */
#nav-cleandate table tr:hover td {
	
}
#nav-cleandate table th {
	font: 500 1rem 'Uniform Extra Condensed';
}
#nav-cleandate table td {
	border: 1px #ccc solid;
}
#nav-cleandate table td:hover {
	background-color: #ccc;
	cursor: pointer;
}
#calendar .nonday {
	background-color: #eee;
}
#calendar .day {
	position: relative;
	padding: 4px;
	height: 4rem;
	font: normal 0.8rem 'Uniform Extra Condensed';
}
#calendar td.today {
	border: 2px dotted red;
}
#calendar .day span {
	position: absolute;
	top: 3px;
	left: 3px;
	font: 700 0.8rem 'Uniform Extra Condensed';
}

.contribution-icon {
    -webkit-box-flex: 0;
    -webkit-box-align: center;
    -ms-flex-align: center;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    align-items: center;
    background-color: white;
    border-radius: 100%;
    color: red;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex
;
    -ms-flex: 0 0 auto;
    flex: 0 0 auto;
    height: 2rem;
    justify-content: center;
    margin: auto auto .625rem;
    width: 2rem
}
/* Daily inventory */
#nav-inventory h2 {
    margin-top: 20px;
	text-align: center;
}
#nav-inventory .date {
	width: auto;
	text-align: center;
}
#nav-inventory .date img {
	position: absolute;
	top: 0;
	right: 0;
	cursor: pointer;
}
#nav-inventory .date input {
	width: auto;
}
#nav-inventory .inventory-explain {
	margin-top: 20px;
	width: 100%;
	text-align: justify;
}
#nav-inventory .inventory-explain h3 {
	text-align: center;
}

/* Form */
#inventory-form section {
	margin: 2rem 0;
}
#inventory-form section h3 {
	font-size: 1.2rem;
}
#inventory-form section .submit {
	margin: 20px 0;
}
#inventory-form .input-block label {
	position: relative;
	top: 0;
	left: 0;
	display: block;
	margin-top: 1.2rem;
	text-align: left;
	font-size: 1rem;
	color: grey;
}

/* Just for today */
#na-today h1 {
	text-align: center;
	font-size: 1.5rem;
}
#na-today h2 {
	font-size: 1.2rem;
}
#na-today .chapo {
	font-style: italic;
}

/******************************************************************************/
/* PROFILE
/******************************************************************************/
.birthdate img,
.cleandate img {
	position: absolute;
	top: 12px;
	right: 10px;
}

/******************************************************************************/
/* FOOTER
/******************************************************************************/
footer .flag {
	position: relative;
	margin: 0 auto;
}
footer .flag.fr {
	left: auto;
}
footer .flag.en {
	right: auto;
}

.construction {
    padding: 10px;
    text-align: center;
    font: bold 16px Arial;
    background: url(img/construction.png) repeat-x yellow;
    color: white;
}
.construction span {
    padding: 2px;
    background-color: black;
}