	*, *::before, *::after {
	    -webkit-appearance: none;
	    -webkit-box-sizing: border-box;
	    -webkit-text-size-adjust: none;
	    -moz-box-sizing: border-box;
	    -moz-appearance: none;
	    appearance: none;
	    box-sizing: border-box;
	    outline: none;
	    text-size-adjust: none;
	    font-family: "Ubuntu", "Helvetica", "Arial", sans-serif; 
	}

	*::-webkit-scrollbar-thumb {
		background-color: #6F6F6F;
		border-radius: 4px;
		border: 2px solid #FFFFFF;
	}
	*::-webkit-scrollbar-track {
		background: #FFFFFF;
	}
	
	*::-webkit-scrollbar {
		width: 8px;
	}

	html {
		font-size: 14px;
	    font-weight: normal;
	    line-height: 1.5;
	}
	body {				
		background-color: #FFFFFF;
	    margin: 0;
	    padding: 0;
	}

	div.c-inferior {
		display: flex;
	}

	div.c-inferior-conteudo {
		display: flex;
		flex: 1 1 0%;
		overflow: auto;
		white-space: nowrap;
	}

/* Menu lateral */
	div.menu-lateral {
		background-color: #FFFFFF;
		border-right: 1px solid #DADCE0;
		display: flex;
		height: calc(100vh - 61px);
		margin-left: -267px;
		transition: margin-left 0.3s;
		width: 267px;
	}

	@media screen and (max-width: 768px) {
		div.menu-lateral {
			height: calc(100vh - 122px);
		}
	}

	div.menu-lateral-visivel {
		margin-left: 0;
	}

/* Busca */
	/* div.busca {
		background-color: #FFFFFF;
		border-right: 1px solid #DADCE0;
		display: flex;
		height: calc(100vh - 61px);
		margin-left: -267px;
		transition: margin-left 0.3s;
		width: 267px;
	}

	div.busca-visivel {
		margin-left: 0;
	} */

/* Carregando pagina */

	@keyframes carregando {
		0% {
			animation-timing-function: cubic-bezier(0.5856,0.0703,0.4143,0.9297);
	   		transform: rotate(0);
	   	}
	   	100% {
	   		transform: rotate(360deg);
	   	}
	}

	div#carregamento {
		display: none;
		font-size: 36px;
		height: 100vh;
		left: 0;
		position: fixed;
		top: 0;
		width: 100vw;
		z-index: 7;
	}

	div#carregamento {
		background: rgba(0, 0, 0, 0.2);
	}

	@media screen and (max-width: 768px) {
		div#carregamento {
			font-size: 24px;
		}
	}

	div#carregamento-icone {
		animation: carregando 1s infinite linear;		
		border-radius: 50%;
	    color: #2196F3;
	    display: block;
	    left: 50%;
	    height: 1em;
	    margin: -0.8em 0 0 -0.8em;
	    padding: 0.8em;
	    position: relative;
	    top: 50%;
	    width: 1em;
	}

	div#carregamento-icone {
		background-color: #FFFFFF;
	}

	@media screen and (max-width: 768px) {
		div#carregamento-icone {
			top: 45px;
		}
	}

	div#carregamento-icone::after {
		backface-visibility: hidden;
		border: .5em solid currentColor;
    	border-left-color: transparent;
		border-radius: 50%;
		content: " ";
	    display: block;
	    height: 2em;	    
	    transform-origin: -1em -1em;
	    transform: translateZ(0) scale(0.5);
	    width: 2em;    
	}

/* Calendário padrão */
	div.calendario-container {
		background-color: #FFFFFF;
		font-size: 1rem;
		padding: 20px;
		width: 266px;
		z-index: 4;
	}

	div.calendario-container .calendario-linha {
		display: block;
		margin: 5px 0;
		white-space: nowrap;
	}

	div.calendario-container .calendario-linha * {
		display: inline-block;
	}

	div.calendario-container .calendario-linha .calendario-titulo {
		font-weight: 600;
		height: 32px;
		line-height: 32px;
	}

	div.calendario-container .calendario-linha .calendario-mes,
	div.calendario-container .calendario-linha .calendario-ano {
		color: #000000;
		cursor: pointer;
	}

	div.calendario-container .calendario-linha .calendario-mes:hover,
	div.calendario-container .calendario-linha .calendario-ano:hover {
		color: #E91E63;
	}

	div.calendario-container .calendario-linha .calendario-anterior,
	div.calendario-container .calendario-linha .calendario-proximo {
		border-radius: 50%;
		cursor: pointer;
		float: right;
		height: 32px;
		margin-left: 10px;
		text-align: center;
		width: 32px;
	}

	div.calendario-container .calendario-linha a.calendario-anterior svg,
	div.calendario-container .calendario-linha a.calendario-proximo svg {
		fill: #999999;
		height: auto;
		margin-top: 7px;
		width: 16px;		
	}

	div.calendario-container .calendario-linha a.calendario-anterior:hover svg,
	div.calendario-container .calendario-linha a.calendario-proximo:hover svg {
		fill: #000000;
	}

	div.calendario-container .calendario-linha .calendario-meses {
		color: #999999;
		height: 56px;
		line-height: 56px;
		text-align: center;
		width: 56px;
	}

	div.calendario-container .calendario-linha .calendario-meses a {
		border: 1px solid transparent;
		border-radius: 50%;
		color: #000000;
		cursor: pointer;
		height: 54px;
		line-height: 48px;
		padding: 2px;
		width: 54px;
	}

	div.calendario-container .calendario-linha .calendario-meses a.selecionado {
		background-color: #D2E3FC;
		color: #185ABC;
	}

	div.calendario-container .calendario-linha .calendario-meses a:hover {
		background-color: #EEEEEE;
	}

	div.calendario-container .calendario-linha .calendario-meses a.atual {
		background-color: #E91E63;
		color: #FFFFFF;
	}

	div.calendario-container .calendario-linha .calendario-diadasemana {
		color: #999999;
		height: 32px;
		line-height: 32px;
		text-align: center;
		width: 32px;
	}

	div.calendario-container .calendario-linha .calendario-dia {
		line-height: 32px;
		text-align: center;
		width: 32px;
	}

	div.calendario-container .calendario-linha .calendario-dia a {
		border: 1px solid transparent;
		border-radius: 50%;
		color: #000000;
		cursor: pointer;
		height: 30px;
		line-height: 24px;
		padding: 2px;
		width: 30px;
	}

	div.calendario-container .calendario-linha .calendario-dia a:hover {
		background-color: #EEEEEE;
	}

	div.calendario-container .calendario-linha .calendario-dia a.hoje {
		background-color: #E91E63;
		color: #FFFFFF;
	}

	div.calendario-container .calendario-linha .calendario-dia a.selecionada {
		border-color: #E91E63;
	}

	div.calendario-container .calendario-linha .calendario-vazio {
		line-height: 32px;
		text-align: center;
		width: 32px;
	}

	div.calendario-container .calendario-linha .calendario-vazio::before {
		content: " ";
		border: 1px solid transparent;
		border-radius: 50%;
		color: #000000;
		cursor: pointer;
		height: 30px;
		line-height: 24px;
		padding: 2px;
		width: 30px;
	}

	div.calendario-container .calendario-rodape {
		display: flex;
		justify-content: flex-end;
		width: 100%;
	}

	div.calendario-container .calendario-rodape a.calendario-hoje {
		color: #E3165B;
		cursor: pointer;
		float: right;
		font-weight: bold;
		line-height: 30px;
		padding: 0 10px;
	}

	div.calendario-container .calendario-rodape a.calendario-hoje:hover {
		background-color: #E3165B;
		color: #FFFFFF;
	}

/* Caixa de inserção de eventos, lembretes ou tarefas */

	div#janela {
		align-items: center;
		background-color: rgba(0, 0, 0, 0.2);
		display: none;
		justify-content: center;
		height: 100vh;
		left: 0;
		padding: 20px;
		position: fixed;
		top: 0;
		width: 100vw;
		z-index: 5;
	}

	@media screen and (max-width: 768px) {
		div#janela {
			align-items: flex-start;
		}
	}

	div.janela-visivel {
		display: flex !important;
	}

	div.janela-inserir-container {
		background-color: #FFFFFF;
		border: 1px solid rgba(0,0,0,.25);
	    border-radius: .4rem;
	    box-shadow: 0 0.4rem 0.6rem rgb(0 0 0 / 25%);
		overflow: hidden;
		max-width: 500px;
	    min-height: 50vh;
	    position: relative;
	    width: 100%;
	}

	div.janela-inserir-barra {
	    align-items: center;
	    background-color: #F2F2F2;
	    border-bottom: .1rem solid #cdcdcd;
	    border-bottom-color: rgba(0,0,0,.25);
	    border-radius: .4rem .4rem 0 0;
	    box-shadow: 0 0.1rem 0rem rgb(255 255 255 / 50%) inset, 0 -0.1rem 0rem rgb(255 255 255 / 40%) inset;
	    display: flex;
	    justify-content: space-between; 
	    margin: 0;
	    text-align: left;
	}

	div.janela-inserir-barra-titulo {
		align-items: center;
		display: flex;
		font-size: 1.1rem;
		font-weight: bold;
		height: 50px;
		justify-content: left;
		padding: 0 0 0 15px;
	}

	a.janela-inserir-barra-botaofechar {
		align-items: center;
		border-radius: 50%;
		cursor: pointer;
		display: flex;
    	justify-content: center;
		height: 40px;
		margin-right: 5px;
		width: 40px;
	}

	a.janela-inserir-barra-botaofechar:hover {
		background-color: #DDDDDD;
	}

	a.janela-inserir-barra-botaofechar svg {
		height: 20px;
		width: 20px;
	}

	div.janela-inserir-conteudo {
		padding: 15px;
	}

	div.janela-inserir-linha {
		align-items: flex-start;
		display: flex;
		width: 100%;
	}

	div.janela-inserir-linha + div.janela-inserir-linha {
		margin-top: 15px;
	}

	div.janela-inserir-icone {
		align-items: center;
	    display: flex;
	    height: 40px;
	    justify-content: flex-start;
		width: 40px;
	}

	div.janela-inserir-icone svg {
		height: 20px;
		width: 20px;
	}

	div.janela-inserir-input {
		align-items: center;
		align-self: center;
		display: flex;
		width: 100%;
	}

	div.janela-inserir-input-flexcolumn {
		align-items: flex-start;
		flex-direction: column;
	}

	div.janela-inserir-input input[type="text"],
	div.janela-inserir-input input[type="date"],
	div.janela-inserir-input input[type="time"],
	div.janela-inserir-input select,
	div.janela-inserir-input textarea {
		background-color: #F1F3F4;
		border: none;
		border-bottom: 2px solid transparent;
		border-radius: 0px;
		color: #3C4043;
		font-size: 1.08rem;
		height: 40px;
		line-height: 40px;
		padding: 0 8px;
	}

	div.janela-inserir-input input[type="date"] + input[type="time"] {
		margin-left: 10px;
	}

	div.janela-inserir-input input[type="checkbox"] {
		background: linear-gradient(to left, #FFFFFF 0%, #FFFFFF 50%, #CCCCCC 51%, #CCCCCC 100%);
		border: 1px solid #CCCCCC;
		border-radius: 0;
		height: 20px;
		margin: 0 10px 0 0;
		width: 40px
	}

	div.janela-inserir-input input[type="checkbox"]:checked {
		background: linear-gradient(to right, #FFFFFF 0%, #FFFFFF 50%, #3483FA 51%, #3483FA 100%);
	}

	div.janela-inserir-input input[type="text"] {
		width: 100%;
	}

	div.janela-inserir-input input[type="text"]::-webkit-calendar-picker-indicator {
		opacity: 0;
		}

	div.janela-inserir-input textarea {
		height: 100px;
		line-height: 2rem;
		margin-bottom: 45px;
		max-height: 300px;
		min-height: 100px;
		resize: vertical;
		width: 100%;
	}

	div.janela-inserir-input input[type="text"]:focus,
	div.janela-inserir-input input[type="date"]:focus,
	div.janela-inserir-input input[type="time"]:focus,
	div.janela-inserir-input select:focus,
	div.janela-inserir-input textarea:focus {
		border-bottom: 2px solid #4285f4;
	}

	div.janela-inserir-botoes {
		bottom: 0;
		display: flex;
	    justify-content: flex-end;
		position: absolute;
		padding: 15px;
		width: 100%;
	}

	a.janela-inserir-btadicionar {
		background-color: #3483FA;
	    border-radius: 4px;
	    color: #FFFFFF;
	    cursor: pointer;
	    display: inline-block;
	    padding: 7px 14px;
	    text-decoration: none;
	    transition: all 0.2s;
	}

	a.janela-inserir-btadicionar:focus,
	a.janela-inserir-btadicionar:hover {
		background-color: #2968C8;
	    box-shadow: 0 0 0 0.1875em rgb(30 109 255 / 30%);
	    transition: all 0.2s;
	}

/* Caixa de visualização de eventos, lembretes ou tarefas */

	div.janela-visualizar-container {
		background-color: #FFFFFF;
		border: 1px solid rgba(0,0,0,.25);
	    border-radius: .4rem;
	    box-shadow: 0 0.4rem 0.6rem rgb(0 0 0 / 25%);
		overflow: hidden;
		max-width: 500px;
	    position: relative;
	    width: 100%;
	}

	div.janela-visualizar-barra {
	    align-items: center;
	    border-radius: .4rem .4rem 0 0;
	    box-shadow: 0 0.1rem 0rem rgb(255 255 255 / 50%) inset, 0 -0.1rem 0rem rgb(255 255 255 / 40%) inset;
	    display: flex;
	    height: 50px;
	    justify-content: flex-end;
	    margin: 0;
	    text-align: left;
	}

	a.janela-visualizar-barra-botaoeditar,
	a.janela-visualizar-barra-botaoexcluir,
	a.janela-visualizar-barra-botaofechar {
		align-items: center;
		border-radius: 50%;		
		cursor: pointer;
		display: flex;
    	justify-content: center;
		height: 40px;
		width: 40px;
	}

	a.janela-visualizar-barra-botaoeditar {
		color: #5F6368;
	}

	a.janela-visualizar-barra-botaoexcluir {
		color: #5F6368;
		margin-right: 10px;
	}

	a.janela-visualizar-barra-botaofechar {
		color: #000000;
		margin-right: 5px;
	}

	a.janela-visualizar-barra-botaoeditar:hover,
	a.janela-visualizar-barra-botaoexcluir:hover,
	a.janela-visualizar-barra-botaofechar:hover {
		background-color: #DDDDDD;
	}

	a.janela-visualizar-barra-botaoeditar svg {
		fill: currentColor;
		height: 18px;
		width: 18px;
	}

	a.janela-visualizar-barra-botaoexcluir svg,
	a.janela-visualizar-barra-botaofechar svg {
		fill: currentColor;
		height: 20px;
		width: 20px;
	}

	div.janela-visualizar-conteudo {
		padding: 15px;
	}

	div.janela-visualizar-linha {
		align-items: flex-start;
		display: flex;
		font-size: 1rem;
		width: 100%;
	}

	div.janela-visualizar-linha:first-of-type {
		font-size: 2rem;
		margin-bottom: 15px;
	}

	div.janela-visualizar-icone {
		align-items: center;
	    display: flex;
	    height: 25px;
	    justify-content: flex-start;
		width: 40px;
	}

	div.janela-visualizar-icone svg {
		height: 12px;
		width: 12px;
	}

	div.janela-visualizar-icone-pessoal svg {
		fill: #3F51B5;
	}

	div.janela-visualizar-icone-compartilhado svg {
		fill: #0B8043;
	}

	div.janela-visualizar-legenda {
		align-items: center;
		display: flex;
		line-height: 25px;
		min-height: 25px;
		width: 100%;
	}

	div.janela-visualizar-botoes {
		border-top: 1px solid #DADCE0;
		display: flex;
	    justify-content: flex-end;
		padding: 10px;
		width: 100%;
	}

	div.janela-visualizar-botoes-espacados {
		justify-content: space-between;
	}

	a.janela-visualizar-btmarcarconcluido {
	    border-radius: 4px;
	    color: #5F6368;
	    cursor: pointer;
	    display: inline-block;
	    padding: 7px 14px;
	    text-decoration: none;
	    transition: all 0.2s;
	}

	a.janela-visualizar-btmarcarconcluido:focus,
	a.janela-visualizar-btmarcarconcluido:hover {
		background-color: #DDDDDD;
	    transition: all 0.2s;
	}

/* Página exbir eventos por dia */

	div#c-recebe {
		width: 100%;
	}

	div.cldia-container {
		display: flex;
	    flex-direction: column;
		padding: 20px;
    	width: 100%;
    }

	div.cldia-dia-container {
		display: flex;
		flex-direction: column;
		margin-bottom: 10px;
	}

	div.cldia-dia-semana {
		color: #70757A;
		display: flex;
		font-size: 0.8rem;
		justify-content: center;
		width: 50px;
	}

	div.cldia-dia-semana.atual {
		color: #1A73E8;
	}

	div.cldia-dia-mes {
		align-items: center;
		background-color: #FFFFFF;
		border-radius: 50%;
		color: #70757A;
		display: flex;
		font-size: 1.9rem;
		height: 50px;
		justify-content: center;
		width: 50px;
	}

	div.cldia-dia-mes.atual {
		background-color: #1A73E8;
		color: #FFFFFF;
	}

    div.cldia-diainteiro {
		display: flex;
		height: 50px;
    }

    a.cldia-lembrete-diainteiro {
    	align-items: center;
	    background-color: #3F51B5;
		border: 1px solid #FFFFFF;
	    border-radius: 4px;
	    color: #FFFFFF;
	    cursor: pointer;
	    display: flex;
	    font-size: 0.8rem;
		height: 40px;
	    line-height: 0.8rem;
		overflow: hidden;
	    padding: 5px 10px;
		white-space: nowrap;
		width: auto;
    }

    div.cldia-lista-horarios {
    	display: flex;
    }

    div.cldia-coluna-esq {
    	display: flex;
    	flex: 0 0 auto;
    	flex-direction: column;
    	margin-right: -10px;
    }

    div.cldia-coluna-dir {
    	display: flex;
    	flex: 1 1 auto;
    	flex-direction: column;
		overflow: hidden;
    }

    div.cldia-horarios {
    	border-right: 1px solid #DADCE0;
    	display: flex;
    	height: 50px;
    	width: 50px;
    }

    div.cldia-hora {
    	font-size: 0.8rem;
    	margin-top: -8px; 
    }

    div.cldia-horarios:first-of-type div.cldia-hora {
    	display: none;
    }

    div.cldia-linhas {
    	align-items: center;
    	border-bottom: 1px solid #DADCE0;
    	display: flex;
    	height: 50px;
    	padding-left: 20px;
		position: relative;
    }

    div.cldia-linhas:last-of-type {
    	border-bottom: none;
    }

    a.cldia-lembrete {
    	align-items: flex-start;
	    background-color: #3F51B5;
		border: 1px solid #FFFFFF;
	    border-radius: 4px;
	    color: #FFFFFF;
	    cursor: pointer;
	    display: flex;
		flex-wrap: wrap;
	    font-size: 0.8rem;
	    height: 40px;
	    line-height: 0.8rem;
		overflow: hidden;
	    padding: 5px 10px;
		white-space: nowrap;
		width: auto;
    }

	a.cldia-lembrete::after {
		content: attr(data-horario);
		display: flex;
		flex: 1 1 100%;
	}

    a.cldia-lembrete-concluido {
		text-decoration: line-through;
	}
	a.cldia-lembrete-compartilhado {
		background-color: #0B8043;
	}
	a.cldia-lembrete-naoconcluido {
		background-color: #FF0000;
	}

	a.cldia-preenche {
		display: flex;
		flex: 1 1 0%;
		height: 40px;
		width: 100%;
	}

/* Caixa de diálogo - Exibe mensagem e botão OK */

	div#caixadialogo-ok {
		background: rgba(0, 0, 0, 0.5);
		display: none;
		font-size: 1rem;
		height: 100%;
		left: 0;
		position: fixed;
		top: 0;
		width: 100%;
		z-index: 6;
	}

	div#caixadialogo-ok div.caixadialogo-ok-container {
		background-color: #FFFFFF;
		border-radius: 10px;
		box-shadow: 0px 0px 2px 0px rgba(102,102,102,0.9);
		height: auto;
		left: 50%;
		margin-left: -125px;
		margin-top: -50px;
		position: fixed;
		top: 50%;
		width: 250px;
	}

	div#caixadialogo-ok div.caixadialogo-ok-container div#caixadialogo-ok-mensagem {
		display: block;		
		line-height: 1.1rem;
		overflow: hidden;
		padding: 30px 20px;	
		text-align: center;			
		white-space: normal;
		width: 100%;
	}

	div#caixadialogo-ok div.caixadialogo-ok-container button#caixadialogo-ok-botao,
	div#caixadialogo-ok div.caixadialogo-ok-container button#caixadialogo-ok-cancelar {
		background-color: #FFFFFF;
		border: 0;
	    border-top: 1px solid #DDDDDD;
	    border-top-left-radius: 0;
	    border-top-right-radius: 0;
	    border-bottom-left-radius: 10px;
	    border-bottom-right-radius: 10px;
		color: #000000;
		cursor: pointer;
		display: block;
		font-size: 1em;
		line-height: 40px;	
		outline: none;		
		text-align: center;
		width: 100%;
	}

	div#caixadialogo-ok div.caixadialogo-ok-container button#caixadialogo-ok-cancelar {
		display: none;
	}

	div#caixadialogo-ok div.caixadialogo-ok-container button#caixadialogo-ok-botao:hover,
	div#caixadialogo-ok div.caixadialogo-ok-container button#caixadialogo-ok-botao:focus,
	div#caixadialogo-ok div.caixadialogo-ok-container button#caixadialogo-ok-cancelar:hover,
	div#caixadialogo-ok div.caixadialogo-ok-container button#caixadialogo-ok-cancelar:focus {
		color: #3483FA;
	}

/* Tags */
	div.tagscontainer {
		display: flex;
		flex-wrap: wrap;
		font-size: 0.9rem;
		justify-content: flex-start;
		padding-top: 10px;
	}

	div.tagscontainer div.tags {
		align-items: center;
	    display: flex;
	    margin-right: 0.75rem;
	    margin-bottom: 0.75rem;
	    max-width: 100%;
	}

	div.tagscontainer div.tagtexto {
		align-items: center;
	    background-color: #3273DC;
	    border-bottom-left-radius: 4px;
	    border-top-left-radius: 4px;
	    color: #FFFFFF;
	    display: inline-flex;
	    height: 2rem;
	    justify-content: left;
	    line-height: 1.5;
	    overflow: hidden;
	    padding-left: 0.75rem;
	    padding-right: 0.75rem;
	    white-space: nowrap;
	}
	div.tagscontainer a.tagdelete {
		align-items: center;
	    background-color: #f5f5f5;
	    border-bottom-right-radius: 4px;
	    border-top-right-radius: 4px;
	    color: #4a4a4a;
	    cursor: pointer;
	    display: inline-table;
	    height: 2rem;
	    justify-content: center;
	    line-height: 1.5;	    
	    padding: 0;
	    position: relative;
	    width: 2rem;
	    white-space: nowrap;
	}
	div.tagscontainer a.tagdelete::before,
	div.tagscontainer a.tagdelete::after {
		background-color: currentColor;
	    content: "";
	    display: block;
	    left: 50%;
	    position: absolute;
	    top: 50%;
	    transform: translateX(-50%) translateY(-50%) rotate(45deg);
	    transform-origin: center center;
	}
	div.tagscontainer a.tagdelete::before {
		height: 1px;
    	width: 50%;
	}
	div.tagscontainer a.tagdelete::after {
		height: 50%;
   		width: 1px;
	}