*:focus {
	outline: 0;
	box-shadow: none !important;
}

body {
	font-size: .9rem;
	line-height: 1.6;
  font-family: -apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,"Helvetica Neue",Arial,"Noto Sans","Liberation Sans",sans-serif,"Apple Color Emoji","Segoe UI Emoji","Segoe UI Symbol","Noto Color Emoji";
}

/* ---------------- */
/* ----- TEXT ----- */
/* ---------------- */

h1, .h1 {
	font-size: 2rem;
	font-family: 'Nunito', sans-serif;
	display: block;
	margin-bottom: 1.5rem;
}

h2, .h2 {
	font-size: 1.6rem;
	font-family: 'Nunito', sans-serif;
	display: block;
	margin-bottom: 1.5rem;
}

h3, .h3 {
	font-size: 1.3rem;
	font-family: 'Nunito', sans-serif;
	display: block;
	margin-bottom: 1.5rem;
}

h4, .h4 {
	font-size: 1.1rem;
	font-family: 'Nunito', sans-serif;
	display: block;
	margin-bottom: 1.5rem;
}

h5, .h5 {
	font-size: .9rem;
	font-family: 'Nunito', sans-serif;
	display: block;
	margin-bottom: 1.5rem;
}

p {
	margin-bottom: 1.5rem;
}

/* ------------------ */
/* ----- COLORS ----- */
/* ------------------ */

.bg-primary { background-color: #3c1053 !important; color: #fff; }
.text-primary { color: #3c1053 !important; }
a.text-primary:hover { color: #1c0826 !important; }
.border-primary { border-color: #3c1053 !important; }

.bg-success, a.bg-success { color: #fff; }
a.tile.bg-success { color: #fff; }

/* ------------------- */
/* ----- BUTTONS ----- */
/* ------------------- */

.btn {
	border: 0 none;
	text-transform: uppercase;
	font-weight: bold;
	font-size: .9rem;
	padding: .75rem 1.25rem;
}

.btn-sm {
	font-size: .7rem;
	padding: .25rem 1rem;
}

.btn-primary { background-color: #3c1053 !important; color: #fff; }
.btn-primary:hover { background-color: #3c1053; color: #fff; }

.btn-delete {
	position: absolute;
	top: 0;
	right: 0;
}

/* ------------------ */
/* ----- INPUTS ----- */
/* ------------------ */

.form-control {
	box-shadow: none;
}

.form-control:focus {
	border-color: rgba(60, 16, 83, 0.75);
}

.select2-container {
	width: 100%!important;
}

.select2-selection--single {
	height: 37px!important;
	border: 1px solid #ced4da!important;
}

.select2-selection__rendered {
	line-height: 35px!important;
	padding-left: 15px!important;
}

.select2-selection__arrow {
	height: 35px!important;
}

.select2-dropdown {
	border: 1px solid #ced4da!important;
}

/* ------------------ */
/* ----- TABLES ----- */
/* ------------------ */

.table {
	border: 1px solid rgba(0,0,0,.125);
	border-radius: 5px;
}

.table td, .table th {
	border: 0 none;
}

.table thead th {
	border-bottom-width: 1px;
}

.table tr.danger {
	background: rgba(227, 52, 47, 0.1)!important;
}

.table tr.success {
	background: rgba(56, 193, 114, 0.1)!important;
}

/* -------------------- */
/* ----- LAZYLOAD ----- */
/* -------------------- */

img.lazyload {
    opacity: 0;
    -webkit-transition: opacity .3s ease;
    transition: opacity .3s ease;
}

.screen-size img.lazyload {
    -webkit-transition: opacity 1s ease;
    transition: opacity 1s ease;
}

/* ------------------- */
/* ----- CLASSES ----- */
/* ------------------- */

.pointer { cursor: pointer; }

.pagination a.page-link {
	color: #212529;
}

.pagination .pagination-item-prev { margin-right: auto; }
.pagination .pagination-item-next { margin-left: auto; }

.pagination .pagination-item-prev a,
.pagination .pagination-item-prev a:hover,
.pagination .pagination-item-next a,
.pagination .pagination-item-next a:hover,
.pagination span.page-link,
.pagination span.page-link:hover {
	background-color: #212529;
	border-color: #212529;
	color: #fff;
	box-shadow: none;
}

.list-group-flush {
	border: 1px solid rgba(0,0,0,.125);
	border-radius: 5px;
}

/* ---------------- */
/* ----- MENU ----- */
/* ---------------- */

nav#nav-main {
	padding: 0;
	margin-bottom: 1rem;
	-webkit-box-shadow: 0px 0px 5px 0px rgba(0,0,0,0.05);
	-moz-box-shadow: 0px 0px 5px 0px rgba(0,0,0,0.05);
	box-shadow: 0px 0px 5px 0px rgba(0,0,0,0.05);
}

nav#nav-main .navbar-brand,
nav#nav-main .navbar-nav .nav-item-dashboard .nav-link {
	background-color: #3c1053;
	color: #fff;
	padding: 1rem;
	/*margin-bottom: -1rem;*/
	text-transform: uppercase;
	font-weight: 700;
	font-size: 1.2rem;
}

nav#nav-main .navbar-brand .logo,
nav#nav-main .navbar-nav .nav-item-dashboard .nav-link .logo {
	margin-top: -7px;
}

nav#nav-main .navbar-nav .nav-item-logout .nav-link {
	color: #dc3545;
}

nav#nav-main .navbar-nav .nav-item .nav-link {
	/*padding: 1.25rem;*/
	padding: .75rem 1.25rem;
	font-size: .9rem;
	font-family: 'Nunito', sans-serif;
	text-align: center;
	text-transform: lowercase;
	-webkit-transition: color .3s ease;
	transition: color .3s ease;
}

nav#nav-main .navbar-nav .nav-item.nav-item-dashboard .nav-link {
	padding: 1.25rem;
}

nav#nav-main .navbar-nav .nav-item.active .nav-link {
	color: #3c1053;
}

nav#nav-main .navbar-nav .nav-item.dropdown .dropdown-menu {
	margin: 0;
	border: 0 none;
	border-radius: 0;
}

nav#nav-main .navbar-nav .nav-item.dropdown .dropdown-menu .dropdown-item {
	background-color: transparent !important;
	color: #212529 !important;
	-webkit-transition: background-color .3s ease;
	transition: background-color .3s ease;
	font-size: .9rem;
	font-family: 'Nunito', sans-serif;
	text-align: center;
	text-transform: lowercase;
}

nav#nav-main .navbar-nav .nav-item.dropdown .dropdown-menu .dropdown-item:hover {
	background-color: #f6f6f6 !important;
}

.navbar-toggler {
  background: none;
  border: none;
  margin-right: 1rem;
}

.navbar-toggler:active,
.navbar-toggler:focus {
  outline: 0;
}

.navbar-toggler .icon-bar {
  display: block;
  width: 22px;
  height: 2px;
  border-radius: 1px;
  margin: 4px 0 4px 0;
  transition: all 0.2s;
}

.navbar-toggler .icon-bar {
  background: #000;
}

.navbar-toggler .icon-bar:nth-of-type(1) {
  transform: rotate(45deg);
  transform-origin: 10% 10%;
}

.navbar-toggler .icon-bar:nth-of-type(2) {
  opacity: 0;
  filter: alpha(opacity=0);
}

.navbar-toggler .icon-bar:nth-of-type(3) {
  transform: rotate(-45deg);
  transform-origin: 10% 90%;
}

.navbar-toggler.collapsed .icon-bar:nth-of-type(1) {
  transform: rotate(0);
}

.navbar-toggler.collapsed .icon-bar:nth-of-type(2) {
  opacity: 1;
  filter: alpha(opacity=100);
}

.navbar-toggler.collapsed .icon-bar:nth-of-type(3) {
  transform: rotate(0);
}

/* STEPS */
nav#nav-main .navbar-nav .nav-item.nav-item-step .nav-link {
	padding: .8rem 1.25rem;
	font-size: .9rem;
	font-family: 'Nunito', sans-serif;
	color: #3c1053;
	text-align: center;
}

nav#nav-main .navbar-nav .nav-item .nav-link > i {
	display: block;
}

nav#nav-main .navbar-nav .nav-item.nav-item-step.completed .nav-link {
	color: #28a745;
}

nav#nav-main .navbar-nav .nav-item.nav-item-step.locked .nav-link {
	color: #ccc;
}

nav#nav-main .navbar-nav .nav-item.nav-item-step.locked .nav-link:hover {
	cursor: not-allowed;
}

/* PROGRESS */
nav#nav-main .progress {
	position: absolute;
	bottom: -2px;
	width: 100%;
	height: 2px;
	border-radius: 0;
	margin: 0;
}

.progress .progress-bar {
	margin: 0 .5px;
	font-weight: 700;
}

/* ---------------------- */
/* ----- LOGIN PAGE ----- */
/* ---------------------- */

.form-signin-wrapper {
	display: flex;
	min-height: 100vh;
}

form.form-signin {
	width: 100%;
	max-width: 600px;
	margin: auto;
}

.signin-page-content {
	position: relative;
	min-height: 100vh;
	display: flex;
}

.signin-page-content .signin-page-img-wrapper {
	position: absolute;
	top: 100%;
	height: 100%;
	top: 0;
	left: 0;
}

.signin-page-content .signin-page-img-wrapper .signin-page-img {
	object-fit: cover;
	height: 100%;
	width: 100%;
	opacity: .15 !important;
}

.signin-page-content .signin-page-inner-content {
	position: relative;
	z-index: 1;
	color: #fff;
	max-width: 600px;
	margin: auto;
}

/* --------------------- */
/* ----- DASHBOARD ----- */
/* --------------------- */

#dashboard-sidebar {
	background-color: #fff;
}

@media (min-width: 768px) {

	#dashboard-sidebar {
		position: fixed;
		width: 300px;
		height: 100vh;
		overflow-y: auto;
	}

	.dashboard-has-sidebar #dashboard-content {
		padding-left: 300px;
	}

}

@media (min-width: 1200px) {

	#dashboard-sidebar {
		width: 400px;
	}

	.dashboard-has-sidebar #dashboard-content {
		padding-left: 400px;
	}

}

/* ---------------- */
/* ----- TABS ----- */
/* ---------------- */

.nav-tabs {
	border-bottom: 0 none;
	margin-bottom: 3rem;
}

.nav-tabs .nav-link,
.nav-tabs .nav-item.show .nav-link,
.nav-tabs .nav-link.active {
	border: 0 none;
	background-color: transparent;
	padding: 0 0 .5rem 0;
	font-family: 'Nunito', sans-serif;
	color: #212529;
	margin-right: 1.5rem;
	font-size: 1rem;
}

.nav-tabs .nav-link.active {
	border-bottom: 2px solid #3c1053;
	color: #3c1053;
}

.tab-content {
	border-bottom: 0 none;
}

.nav-tabs.nav-icon-tabs .nav-link {
	position: relative;
	border: 1px solid rgba(0,0,0, .1);
	width: 50px;
	height: 50px;
	padding: 0;
	border-radius: 5px;
	margin: 0 5px;
}

.nav-tabs.nav-icon-tabs .nav-link.active {
	border-color: #3c1053;
}

.nav-tabs.nav-icon-tabs .nav-link span {
	position: absolute;
	height: 100%;
	width: 100%;
	top: 0;
	left: 0;
}

.nav-tabs.nav-icon-tabs .nav-icon {
	position: absolute;
	object-fit: contain;
	width: 100%;
	height: 100%;
	padding: .5rem;
}

/* ----------------- */
/* ----- TILES ----- */
/* ----------------- */

.tile {
	padding: 1rem;
	background-color: #fff;
	width: 100%;
	display: block;
	border-radius: 5px;
	/*border: 1px solid #ccc;*/
}

a.tile {
	color: #212529;
	-webkit-transition: background-color .3s, border-color .3s ease;
	transition: background-color .3s, border-color .3s ease;
}

a.tile:hover {
	text-decoration: none;
	border-color: #3c1053;
}

button.tile {
	text-align: left;
	border: 0 none;
}

.tile .tile-icon {
	margin-left: auto;
}

.tile.tile-preview-design {
	background-image: url('../img/pattern-tic-tac-toe-opacity.png');
}

.tile.tile-preview-templates {
	background-image: url('../img/pattern-funky-lines-opacity.png');
}

.tile.tile-preview-cms {
	background-image: url('../img/pattern-double-bubble-opacity.png');
}

/* ------------------ */
/* ----- CHARTS ----- */
/* ------------------ */

#chart-project-breakdown {
	width: 100%;
	height: 500px;
}

/* ------------------ */
/* ----- FRAMES ----- */
/* ------------------ */

.frame-container-img-wrapper {
	position: relative;
	width: 1200px;
	margin: 0 auto;
	margin-bottom: 7.5rem;
}

.frame-container-img-wrapper .frame-design-img {
	width: 100%;
}

.frame-container-img-wrapper .screen-size {
	position: absolute;
	background-color: #3c1053;
	top: 0;
	left: 0;
}

.frame-container-img-wrapper.frame-container-with-image .screen-size {
	overflow-y: scroll;
}

.frame-container-img-wrapper .frame-template-iframe {
	position: relative;
	width: 100%;
	height: 100%;
	border: 0 none;
}

/* LAPTOP */
.frame-container-img-wrapper.frame-container-laptop {
	width: 1298px;
}

.frame-container-img-wrapper.frame-container-laptop .screen-size {
	top: 39px;
	left: 50%;
	-webkit-transform: translate(-50%,0);
	transform: translate(-50%,0);
	width: 1000px;
	height: 642px;
}

/* TABlET */
.frame-container-img-wrapper.frame-container-tablet {
	width: 768px;
}

.frame-container-img-wrapper.frame-container-tablet .screen-size {
	top: 85px;
	left: 50%;
	-webkit-transform: translate(-50%,0);
	transform: translate(-50%,0);
 	width: 692px;
	height: 932px;
}

/* MOBILE */
.frame-container-img-wrapper.frame-container-mobile {
	width: 400px;
}

.frame-container-img-wrapper.frame-container-mobile .screen-size {
	top: 93px;
	left: 50%;
	-webkit-transform: translate(-50%,0);
	transform: translate(-50%,0);
 	width: 340px;
	height: 611px;
}

/* TOGGLE DESIGN PAGES */
.toggle-design-pages {
	display: block;
	width: 100%;
	text-align: center;
}

/* FEEDBACK BAR */
#feedback-bar {
	position: fixed;
	width: 100%;
	bottom: 0;
	left: 0;
}
