/**
 * Estilos globales de la aplicación
 * @author Aris Mota <aris@parafina.es>
 * @version 2.10.12
 */

:root {
    --verde: #C8F446;
    --blanco: #ffffff;
    --gris: #CCCCCC;
    --gris-separador: #B7B7B7;
    --itemactivo: #ffffff;
    --bs-heading-color: #043D4F;
}

/* Tipografías: eventos/{tenant}/fonts/stylesheet.css (cargado en index.php) */

#version-desktop {
    font-family: 'Cupra', sans-serif;
    height: 100vh;
    width: 100vw;
    display: flex;
    flex-direction: column;
    margin: auto;
    justify-content: center;
    align-items: center;
}

#desk-cta {
    font-weight: bold;
    font-size: 30px;
    margin-top: .2em;
}

#desk-logo {
    margin-bottom: 4em;
}

#desk-logos-footer {
    margin-top: 4em;
}

#desk-instr {
    font-size: 22px;
    font-weight: 200;
}


@media screen and (max-width: 550px) {
    #version-desktop {
        display: none !important;
    }

    #version-moviles {
        display: block !important;
    }

    /* Footer al pie de la vista si el contenido es corto; al final del scroll si es largo */
    body.body-with-footer {
        height: auto !important;
        min-height: 100svh;
        overflow-x: hidden !important;
        overflow-y: auto !important;
    }

    body.body-with-footer #version-moviles {
        display: flex !important;
        flex-direction: column;
        min-height: 100svh;
        box-sizing: border-box;
    }

    body.body-with-footer .app-layout-main {
        flex: 1 0 auto;
        display: flex;
        flex-direction: column;
        min-height: 100svh;
        box-sizing: border-box;
    }

    body.body-with-footer .app-layout-main > #vista {
        flex: 1 0 auto;
        padding-bottom: calc(6rem + env(safe-area-inset-bottom, 0px));
    }

    body.body-with-footer .app-layout-main > .app-footer {
        flex: 0 0 auto;
        margin-top: auto;
        overflow: visible;
    }
}

html,
body {
    overflow-x: hidden !important;
    width: 100%;
    height: 100%;
    margin-left: auto;
    margin-right: auto;
}

.btn-primary {
    background-color: var(--tipografias) !important;
    border-color: var(--tipografias) !important;
    font-weight: bold;
    border-radius: 0;
    padding: 20px;
    font-size: 1.2em;
}

header #logo {
    position: absolute;
    max-width: 260px;
    max-height: 45px;
    margin-top: -1em;
}

header {
    margin-bottom: 2em;
    padding-bottom: 1em;
    padding-top: 1em;
}

h1 {
    text-transform: uppercase;
    font-size: 1.8em;
    font-weight: 300;
}

.navbar {
    background-color: var(--bg-main-color);
}

#ver-agenda {
    position: absolute;
    bottom: 5vh;
    width: 90%;
}

#body-agenda {
    margin-left: -1em;
    padding-left: 1em;
    margin-right: -1em;
    padding-right: 1em;
    margin-top: 2em;
    background-color: var(--separador-text);
}

#body-agenda .bloque-agenda {
    padding-bottom: 1em;
    position: relative;
}

#body-agenda .bloque-agenda .hora-agenda {
    margin-left: -1em;
    padding-left: 1em;
    margin-right: -1em;
    padding-right: 1em;
    font-weight: bold;
    font-size: 1em;
}

#body-agenda .bloque-agenda .titulo-agenda {
    text-transform: uppercase;
    font-size: .9em;
    margin: 1em 3em .3em 0;
    display: inline-block;
}

#body-agenda .bloque-agenda .lugar-agenda {
    font-size: .8em;
}

#body-agenda .bloque-agenda .lugar-agenda table {
    margin-right: 4em !important;

}

#body-agenda .bloque-agenda .lugar-agenda td {
    vertical-align: top;
}

#body-agenda .bloque-agenda .lugar-agenda td.infolocation {
    vertical-align: bottom;
}

#body-agenda .bloque-agenda .icon-agenda {
    position: absolute;
    right: 1em;
    top: 3.1em;
}

#control-agenda .control-dia {
    background: none !important;
    border: 2px solid var(--itemactivo);
    background-color: var(--tipografias-inactivo);
    color: #fff;
    text-align: center;
    padding: 1em 0;
    border-radius: 0;
}

#control-agenda .control-activo {
    background-color: var(--itemactivo) !important;
    color:var(--bg-main-color) !important;
}

#control-agenda .control-activo .h3,  #control-agenda .control-activo .h2 {
    color:var(--bg-main-color) !important;
}

#control-agenda .control-dia .h2 {
    font-weight: 800;
    margin-bottom: -.1em;
}

#control-agenda .control-dia .h3 {
    font-weight: 300;
}

/* Comportamiento del menu */
.navbar-toggler {
    border: 0 !important;
}

#navbarSupportedContent {
    margin-top: 1em;
    position: absolute;
    background: var(--bg-main-color);
    width: 105vw;
    left: 0;
    top: 3em;
    height: 100vh;
    z-index: 999;
    margin-left: -0.8em;
    padding-left: 1.5em;
    margin-right: -1em;
    padding-right: 1.5em;
}


.navbar-toggler::after {
    content: " ";
    display: block;
    position: absolute;
    background-color: var(--tipografias);
    height: 1px;
    width: 100%;
    left: 0;
    margin-top: 1em;
}

.navbar-toggler::before {
    content: " ";
    display: block;
    background-color: var(--tipografias);
    height: 4.5em;
    width: 1px;
    position: absolute;
    margin-left: -1em;
    margin-top: -2em;
}

#navbarSupportedContent .nav-link {
    text-transform: uppercase;
    padding: 1.2em 0;
    border-bottom: 1px solid var(--tipografias);
    padding-left: 1em;
}

#navbarSupportedContent .nav-link.active {
    font-weight: 400;
}

.navbar {
    background-color: var(--bg-main-color);
    height: 4em;
}

#vista {
    margin-top: 4em;
}

#vista-content {
    margin-left: -0.8em;
    padding-left: 1.5em;
    margin-right: -1em;
    padding-right: 1.5em;
    margin-bottom: 0;
    padding-bottom: .1em;
}

#vista-content figure {
    margin-left: -1.5em;
    margin-right: -1.5em;
    background-color: var(--gris-separador);
}

#vista-content h2 {
    background-color: var(--itemactivo);
    color: var(--bg-main-color);
    font-size: 1em;
    text-transform: uppercase;
    font-weight: bold;
    padding: .55em 1.5em;
    margin: 2em -1.5em 1em;
}

footer:not(.app-footer) .container-fluid {
    border-top: 1px solid var(--tipografias);
    padding-top: 1em;
    width: 95vw;
}

#vista-content h1 {
    font-size: 25px;
}

#vista-content a {
    color: var(--tipografias);
    text-decoration: underline;
}

#vista-content p {
    margin-bottom: 1.5em;
}

#vista-content strong {
    font-weight: bold
}


/* Hack */
.body-inicio {
    overflow: hidden;
}

.body-inicio #vista {
    padding-left: 0 !important;
    padding-right: 0 !important;
    margin-top: 0 !important;
}


.navbar-toggler.collapsed .navbar-toggler-icon {
    background-image: var(--bs-navbar-toggler-icon-bg);
    opacity: 1;
    transform: rotate(180deg);
}

.navbar-toggler .navbar-toggler-icon {
    background-image: var(--icono-cerrar);
    opacity: .5;
    transition: all ease 500ms;
}

.text-muted {
    color: #ffffff !important;
    opacity: .5;
}