
.calendar * {
  box-sizing: border-box;
  font-family: 'Roboto', sans-serif;
  list-style: none;
  margin: 0;
  outline: none;
  padding: 0;
}

a {
  text-decoration: none;
}

.container {
	align-items: center;
	display: flex;
	height: 100%;
	justify-content: center;
	margin: 0 auto;
	max-width: 600px;
	width: 100%;
}

.calendar {
	background: #fff;
	border-radius: 4px;
	box-shadow: 0 5px 20px rgba(0, 0, 0, .3);
	height: 560px;
  perspective: 1000;
	transition: .9s;
	transform-style: preserve-3d;
	width: 95%;
  margin: 15px auto;
  max-width: 542px;
}

/* Front - Calendar */
.front {
	transform: rotateY(0deg);
}
.calendar h4 {
  color: #222;
}
.current-date {
	/* border-bottom: 1px solid rgba(73, 114, 133, .6); */
	display: block;
	justify-content: space-between;
    position: relative;
	/* padding: 30px 0px; */
}

.current-date h1 {
	/* color: #dfebed; */
	color: #555;
	font-size: 1.4em;
	font-weight: 300;
  text-align: center;
}

.week-days {
	/* color: #dfebed; */
	color: #555;
	display: flex;
	justify-content: space-between;
	font-weight: 600;
	padding: 10px 0px;
}

.days {
	display: flex;
	flex-wrap: wrap;
	justify-content: space-between;
}

.weeks {
	/* color: #fff; */
	color: #222;
	display: flex;
	flex-direction: column;
	padding: 0;
}

.weeks div {
	display: flex;
	font-size: 1.2em;
	font-weight: 300;
	justify-content: space-between;
	margin-bottom: 10px;
	width: 100%;
}

.last-month {
	opacity: .3;
}

.weeks span {
	/* padding: 10px; */
  width: 50px;
  height: 50px;
  padding-top: 10px;
  text-align: center;
}

.weeks span i {
  font-size: 0.6em;
}

.weeks span.active {
	background: #bbb;
	border-radius: 50%;
}

.weeks span.active i {
	color: #fff !important;
}


.weeks span:not(.last-month):hover {
	cursor: pointer;
	font-weight: 600;
}

.event {
	position: relative;
}

.event:after {
	content: '•';
	color: #f78536;
	font-size: 1.4em;
	position: absolute;
	right: -4px;
	top: -4px;
}

/* Back - Event form */

.back {
	height: 100%;
	transform: rotateY(180deg);
}

.back input {
	background: none;
	border: none;
	border-bottom: 1px solid rgba(73, 114, 133, .6);
	color: #dfebed;
	font-size: 1.4em;
	font-weight: 300;
	padding: 30px 40px;
	width: 100%;
}

.info {
	/* color: #dfebed; */
	color: #222;
	display: flex;
	flex-direction: column;
	font-weight: 600;
	font-size: 1.2em;
	padding: 30px 40px;
}

.info div:not(.observations) {
	margin-bottom: 1em;
}

.info span {
	font-weight: 300;
}

.info .date {
	display: flex;
	justify-content: space-between;
}

.info .date p {
	width: 50%;
}

.info .address p {
	width: 100%;
}

.actions {
	bottom: 0;
	border-top: 1px solid rgba(73, 114, 133, .6);
	display: flex;
	justify-content: space-between;
	position: absolute;
	width: 100%;
}

.actions button {
	background: none;
	border: 0;
	color: #222;
	font-weight: 600;
	letter-spacing: 3px;
	margin: 0;
	padding: 30px 0;
	text-transform: uppercase;
	width: 100%;
}

.actions button:hover {
	background: #497285;
	cursor: pointer;
}

.actions button:active {
	background: #5889a0;
	outline: none;
}

/* Flip animation */

.flip {
  transform: rotateY(180deg);
}

.front, .back {
	backface-visibility: hidden;
}
