/* RESET */
app nav {
	/* Remove default materialze shadows on NAV elements */
	box-shadow: none!important;
	/*z-index:1;*/
}

body a {
	/*color: #6CAE5C;*/
	color:#111;
	transition: color 500ms ease;
}

body a:hover {
	/*color: #6CAE5C;*/
	color:#444;
}

.left_menu li {
	
}

.left_menu li a {
	color:#535d66;
	padding:1em;
	display:block;
}

.left_menu li a:hover {
	background-color:#eee;
}

#contenido, #columna {
    margin: 0px !important;
    padding: 0px !important;
    width: auto !important;
    float:initial !important;
	max-width: none !important;
}

nav .sidenav-trigger {
	margin:0px !important;
}

nav .sidenav-trigger::first-letter {
	text-transform: uppercase;
}

nav > #columna {
}

nav ul a:hover {
    background-color: #f0f0f0 !important;
}

#columna .current_page, #columna li:hover {
    width: auto !important;
}

#logo_remove {
    display:inline-block !important;
}

.header_menu {
    float:initial !important;
}

#columna {
	margin-top:2em !important;
    display:block !important;
}

nav * {
	box-sizing: border-box;
}

html, body {
	margin: 0;
	height: 100%;
	min-height: 100%;
}

body {
	margin: 0;
	min-height: 100%;
	display: grid;
	grid-template-rows: auto 1fr auto;
	grid-template-columns: 100%;
	font-weight:200;
}

#cabecera {
    width:100%;
}

header {
	z-index: 1;
	flex: 0 64px;
	display: flex;
	border-bottom: 1px solid #f0f0f0;
}

header .branding, header .page-details, header .settings {
	display: flex;
	align-items: center;
}

header .branding {
	flex: 0 0 256px;
	order: 0;
	justify-content: flex-start;
}

header .branding img {
	max-height: 32px;
	max-width: 175px;
}

header .page-details {
	flex: 1 1 100%;
	order: 1;
	padding: 0 24px;
	overflow: hidden;
}

header .page-details .title {
	overflow: hidden;
	white-space: nowrap;
	text-overflow: ellipsis;
	font-size: 20px;
	line-height: 24px;
}

header .settings {
	flex: 0 0 256px;
	order: 2;
	justify-content: flex-end;
}

header nav {
	box-shadow: none;
	-webkit-box-shadow:none;
}
.menu-button {
	display: flex;
	align-items: center;
	justify-content: center;
	width: 48px;
	height: 48px;
}

.menu-button:hover {
	background: rgba(0, 0, 0, 0.08);
	cursor: pointer;
}

app {
	flex: 1;
	display: flex;
}

app > nav {
	background: #faf9f8 !important;
	flex: 0 0 256px;
	order: 0;
	z-index:1;
}

app > nav .branding, app > nav .title-block {
	height: 64px;
	display: flex;
	align-items: center;
	padding: 0 24px;
}

app > nav .branding img, app > nav .title-block img {
	max-height: 32px;
	max-width: 175px;
}

app > nav ul {
	list-style: none;
	margin: 0;
	padding: 0;
}

app > nav ul li a {
	display: flex;
	align-items: center;
	height: 56px;
	padding: 0 20px;
	text-decoration: none;
	color: black;
}

app > nav ul li a span {
	overflow: hidden;
	white-space: nowrap;
	text-overflow: ellipsis;
}

app > nav ul li a:hover {
	background: rgba(0, 0, 0, 0.08);
	cursor: pointer;
}

app > nav ul li a i {
	margin-right: 20px;
	opacity: 0.5;
}

/* rem, no px: el canal izquierdo (.col + .left_menu a) se expresa en rem y
   escala con la raiz, que en este sitio es de 15px y no de 16. Con 24px fijos
   los dos lados se separaban 1,5px. 1.5rem = las mismas 24px a raiz 16. */
article {
	flex: 1 1 100px;
	order: 1;
	padding: 1.5rem;
}

app aside {
	background: #faf9f8;
	flex: 0 0 256px;
	order: 2;
	overflow: auto;
	border-left: 1px solid #d9d9d9;
	position: absolute;
	right: 0;
	width: 256px;
	display: none;
	transition: all 0.2s ease;
	overflow: auto;
	height:100%;
}

aside.open {
	right: 0;
	box-shadow: 2px 0 8px rgba(0, 0, 0, 0.24);
	display:block;
}

footer {
	border-top: 1px solid #d9d9d9;
	padding:40px 0;
}

.collapse-menu {
    display:none;
}

.collapsible{
-webkit-box-shadow:none !important;
box-shadow:none !important;
}

/*
	992 = el breakpoint de Materialize (hide-on-med-and-down, hamburguesa) y el que
	ya usaba site_main.css para la cabecera. Antes esto cortaba en 1000: entre 993 y
	1000 convivian el menu de escritorio de Materialize y el .collapse-menu de aqui,
	y el canal de la cabecera no coincidia con el del contenido. Ademas min-width:1000
	y max-width:1000 matcheaban LAS DOS en 1000px exacto. 993/992 cierra el hueco.
*/
@media (min-width: 993px) {

    /*
    #cabecera .menu li i {
        display:none;
    }
    */

    #cabecera .menu {
        display:block;
    }

	.menu-toggle.nav {
		display: none;
	}

	.branding {
		padding: 0 24px;
	}

	app > nav .title-block {
		display: none;
    }
    
    .collapse-menu {
        display:none;
    }
}

@media (max-width: 992px) {

    
    #cabecera ul.menu a  {
        margin:0px 0px 0px 8px;
        font-size:0.8em;
    }
	
    .collapse-menu {
        display:block;
    }

	app > nav, aside, .branding img {
		display: none;
	}

	header .branding, header .settings {
		flex: 0 0 64px;
	}

	header .page-details {
		padding: 0 24px;
		justify-content: center;
	}
	article {
		padding: 1rem;
	}

	.card:not(:last-child) {
		margin-bottom: 16px;
	}

	app > nav {
		position: absolute;
		top: 0;
		left: -256px;
		width: 256px;
		height: 100%;
		display: block;
		transition: all 0.2s ease;
		overflow: auto;
	}

	app > nav.open {
		left: 0;
		box-shadow: 2px 0 8px rgba(0, 0, 0, 0.24);
	}
}

