@import url('https://fonts.googleapis.com/css2?family=Montserrat&display=swap');

/*! normalize.css v8.0.1 | MIT License | github.com/necolas/normalize.css */
html{line-height:1.15;-webkit-text-size-adjust:100%}body{margin:0}main{display:block}h1{font-size:2em;margin:.67em 0}hr{box-sizing:content-box;height:0;overflow:visible}pre{font-family:monospace,monospace;font-size:1em}a{background-color:transparent}abbr[title]{border-bottom:none;text-decoration:underline;text-decoration:underline dotted}b,strong{font-weight:bolder}code,kbd,samp{font-family:monospace,monospace;font-size:1em}small{font-size:80%}sub,sup{font-size:75%;line-height:0;position:relative;vertical-align:baseline}sub{bottom:-.25em}sup{top:-.5em}img{border-style:none}button,input,optgroup,select,textarea{font-family:inherit;font-size:100%;line-height:1.15;margin:0}button,input{overflow:visible}button,select{text-transform:none}[type=button],[type=reset],[type=submit],button{-webkit-appearance:button}[type=button]::-moz-focus-inner,[type=reset]::-moz-focus-inner,[type=submit]::-moz-focus-inner,button::-moz-focus-inner{border-style:none;padding:0}[type=button]:-moz-focusring,[type=reset]:-moz-focusring,[type=submit]:-moz-focusring,button:-moz-focusring{outline:1px dotted ButtonText}fieldset{padding:.35em .75em .625em}legend{box-sizing:border-box;color:inherit;display:table;max-width:100%;padding:0;white-space:normal}progress{vertical-align:baseline}textarea{overflow:auto}[type=checkbox],[type=radio]{box-sizing:border-box;padding:0}[type=number]::-webkit-inner-spin-button,[type=number]::-webkit-outer-spin-button{height:auto}[type=search]{-webkit-appearance:textfield;outline-offset:-2px}[type=search]::-webkit-search-decoration{-webkit-appearance:none}::-webkit-file-upload-button{-webkit-appearance:button;font:inherit}details{display:block}summary{display:list-item}template{display:none}[hidden]{display:none}

/* ====================
	* CONFIGURACION *
==================== */

*,
*::after,
*::before{
    box-sizing: border-box;

}

/* ====================
	* VARIABLES *
==================== */

:root{
    --fuente: 'Montserrat', sans-serif;
    --fondo: #f3f1f1;
    --ancho-contenedor: 1200px;
    --azul-oscuro: #0c172c;
    --azul-claro: #0b4d79;
    --verde-oscuro: #0b2627;
    --verde-claro: #0b5457;
    --rojo-oscuro: #480d0d;
    --rojo-claro: #d13939;
    --rojo-opaco: #a02727;
}

/* ====================
	* ESTILOS GENERALES *
==================== */

body{
    background: var(--fondo);
    font-family: var(--fuente);
    font-size: 18px;
}


img{
    vertical-align: top;
    width: 100%;
}

/* ====================
	* CONTENEDORES *
==================== */

.contenedor{
    max-width: 90%;
    width: var(--ancho-contenedor);
    margin: 20px auto;
    overflow: hidden;
    /* padding: 10px; */
}

.contenedor-ancho{
    width: 100%;
    padding: 0 40px;
    margin: 20px auto;
}

/* ====================
	* CUADRICULA *
==================== */

.cuadricula{
    display: grid;
    gap: 10px;
    margin-bottom: 20px;
}

/*! CUADRICULA TAMAÑO COMPUTADORA Y TV */
.columnas-1 { grid-template-columns: repeat(1, 1fr); }
.columnas-2 { grid-template-columns: repeat(2, 1fr); }
.columnas-3 { grid-template-columns: repeat(3, 1fr); }
.columnas-4 { grid-template-columns: repeat(4, 1fr); }
.columnas-5 { grid-template-columns: repeat(5, 1fr); }
.columnas-6 { grid-template-columns: repeat(6, 1fr); }
.columnas-7 { grid-template-columns: repeat(7, 1fr); }
.columnas-8 { grid-template-columns: repeat(8, 1fr); }
.columnas-9 { grid-template-columns: repeat(9, 1fr); }
.columnas-10 { grid-template-columns: repeat(10, 1fr); }
.columnas-11 { grid-template-columns: repeat(11, 1fr); }
.columnas-12 { grid-template-columns: repeat(12, 1fr); }

.espacio-1 { grid-column: span 1; }
.espacio-2 { grid-column: span 2; }
.espacio-3 { grid-column: span 3; }
.espacio-4 { grid-column: span 4; }
.espacio-5 { grid-column: span 5; }
.espacio-6 { grid-column: span 6; }
.espacio-7 { grid-column: span 7; }
.espacio-8 { grid-column: span 8; }
.espacio-9 { grid-column: span 9; }
.espacio-10 { grid-column: span 10; }
.espacio-11 { grid-column: span 11; }
.espacio-12 { grid-column: span 12; }


/*! CUADRICULA TAMAÑO TABLETS Y MONITORES CHICOS */
@media screen and (max-width: 992px) {
.columnas-med-1 { grid-template-columns: repeat(1, 1fr); }
.columnas-med-2 { grid-template-columns: repeat(2, 1fr); }
.columnas-med-3 { grid-template-columns: repeat(3, 1fr); }
.columnas-med-4 { grid-template-columns: repeat(4, 1fr); }
.columnas-med-5 { grid-template-columns: repeat(5, 1fr); }
.columnas-med-6 { grid-template-columns: repeat(6, 1fr); }
.columnas-med-7 { grid-template-columns: repeat(7, 1fr); }
.columnas-med-8 { grid-template-columns: repeat(8, 1fr); }
.columnas-med-9 { grid-template-columns: repeat(9, 1fr); }
.columnas-med-10 { grid-template-columns: repeat(10, 1fr); }
.columnas-med-11 { grid-template-columns: repeat(11, 1fr); }
.columnas-med-12 { grid-template-columns: repeat(12, 1fr); }


.espacio-medio-1 { grid-column: span 1; }
.espacio-medio-2 { grid-column: span 2; }
.espacio-medio-3 { grid-column: span 3; }
.espacio-medio-4 { grid-column: span 4; }
.espacio-medio-5 { grid-column: span 5; }
.espacio-medio-6 { grid-column: span 6; }
.espacio-medio-7 { grid-column: span 7; }
.espacio-medio-8 { grid-column: span 8; }
.espacio-medio-9 { grid-column: span 9; }
.espacio-medio-10 { grid-column: span 10; }
.espacio-medio-11 { grid-column: span 11; }
.espacio-medio-12 { grid-column: span 12; }

}

@media screen and (max-width: 767px) {
    .tabla-ajustable thead{
        display: none;
    }

    .tabla-ajustable, .tabla-ajustable tbody, .tabla-ajustable td, .tabla-ajustable tr{
        display: block;
    }

    .tabla-ajustable tr{
        margin-bottom: 15px;
    }

    .tabla-ajustable td{
        text-align: right !important;
        padding-left: 50%;
        position: relative;
        font-size: 11px !important;
    }

    .tabla-ajustable td::before{
        content: attr(titulo);
        position: absolute;
        left: 0;
        width: 50%;
        padding-left: 3px;
        font-size: 11px;
        text-align: left;
    }
}

/*! CUADRICULA TAMAÑO CELULARES */
@media screen and (max-width: 576px) {
    .columnas-peq-1 { grid-template-columns: repeat(1, 1fr); }
    .columnas-peq-2 { grid-template-columns: repeat(2, 1fr); }
    .columnas-peq-3 { grid-template-columns: repeat(3, 1fr); }
    .columnas-peq-4 { grid-template-columns: repeat(4, 1fr); }
    .columnas-peq-5 { grid-template-columns: repeat(5, 1fr); }
    .columnas-peq-6 { grid-template-columns: repeat(6, 1fr); }
    .columnas-peq-7 { grid-template-columns: repeat(7, 1fr); }
    .columnas-peq-8 { grid-template-columns: repeat(8, 1fr); }
    .columnas-peq-9 { grid-template-columns: repeat(9, 1fr); }
    .columnas-peq-10 { grid-template-columns: repeat(10, 1fr); }
    .columnas-peq-11 { grid-template-columns: repeat(11, 1fr); }
    .columnas-peq-12 { grid-template-columns: repeat(12, 1fr); }


    .espacio-peq-1 { grid-column: span 1; }
    .espacio-peq-2 { grid-column: span 2; }
    .espacio-peq-3 { grid-column: span 3; }
    .espacio-peq-4 { grid-column: span 4; }
    .espacio-peq-5 { grid-column: span 5; }
    .espacio-peq-6 { grid-column: span 6; }
    .espacio-peq-7 { grid-column: span 7; }
    .espacio-peq-8 { grid-column: span 8; }
    .espacio-peq-9 { grid-column: span 9; }
    .espacio-peq-10 { grid-column: span 10; }
    .espacio-peq-11 { grid-column: span 11; }
    .espacio-peq-12 { grid-column: span 12; }

    .boton{ width: 100%; transition: .3s ease all; }

    }

/* ====================
	* COMPONENTES *
==================== */
.card{
    padding: 7px;
    border-radius: 5px;
    /* box-shadow: 0px 0px 30px rgba(221, 221, 221, 0.3); */
    transition: .3s ease all;
}

.navegador{
    display: flex;
    flex-wrap: wrap;
    transition: .3s ease all;
}

.navegador a{
    color: #ffff;
    text-decoration: none;
    display: flex;
    align-items: center;
    text-align: center;
    padding: 15px 25px;
    transition: .3s ease all;
    font-size: 18px;
}

.navegador a.activo,
.navegador a:hover{
    background: var(--azul-oscuro);
}

.navegador .contenedor{
    display: flex;
    flex: wrap;
    margin: 0px auto;
}

.tabla-ajustable{
    width: 100%;
    border-collapse: collapse;
    transition: .3s ease all;
}

.tabla-ajustable th, .tabla-ajustable td{
    padding: 4px 7px;
    border: solid 1px #ddd;
    text-align: center;
    font-size: 13px;
    transition: .3s ease all;

}

.tabla-ajustable tbody tr:nth-child(even){
    background: #f3f2f2;
    transition: .3s ease all;

}

/* ====================
	* TEXTO *
==================== */
h1, h2, h3, h4, h5, h6{
    margin-top: 0;
    transition: .3s ease all;
}

.texto-justificado{ text-align: justify; }
.texto-izquierda{ text-align: left; }
.texto-derecha{ text-align: right; }
.texto-centrado{ text-align: center;}

.fuente-10{font-size: 10px;}
.fuente-12{font-size: 13px;}
.fuente-15{font-size: 15px;}
.fuente-18{font-size: 18px;}
.fuente-20{font-size: 20px;}
/* ====================
	* MARGENES *
==================== */
.no-margin { margin: 0px ;}
.no-margin-top {margin-top:  0px;}
.no-margin-buttom {margin-bottom: 0px;}
.no-margin-left {margin-left: 0px;}
.no-margin-right {margin-right: 0px;}

/*! TOP */
.margin-top-1{ margin-top: 5px; }
.margin-top-2{ margin-top: 10px; }
.margin-top-3{ margin-top: 15px; }
.margin-top-4{ margin-top: 20px; }
.margin-top-5{ margin-top: 25px; }

/*! BOTTOM */
.margin-bottom-1{ margin-bottom: 5px; }
.margin-bottom-2{ margin-bottom: 10px; }
.margin-bottom-3{ margin-bottom: 15px; }
.margin-bottom-4{ margin-bottom: 20px; }
.margin-bottom-5{ margin-bottom: 25px; }

/*! LEFT */
.margin-left-1{ margin-left: 5px; }
.margin-left-2{ margin-left: 10px; }
.margin-left-3{ margin-left: 15px; }
.margin-left-4{ margin-left: 20px; }
.margin-left-5{ margin-left: 25px; }

/*! RIGHT */
.margin-right-1{ margin-right: 5px; }
.margin-right-2{ margin-right: 10px; }
.margin-right-3{ margin-right: 15px; }
.margin-right-4{ margin-right: 20px; }
.margin-right-5{ margin-right: 25px; }


/* ====================
	* ESTETICOS *
==================== */
.iluminar{ background: rgb(255, 255, 255); }
.oscurecer{ background: var(--azul-claro); color: white; }

.borde-claro-1 { border: solid 1px white; }
.borde-claro-2 { border: solid 2px white; }
.borde-claro-3 { border: solid 3px white; }

.borde-oscuro-1{ border: solid 1px #0c172c; }
.borde-oscuro-2{ border: solid 2px #0c172c; }
.borde-oscuro-3{ border: solid 3px #0c172c; }

.sombra-baja{ box-shadow: 0px 0px 3px rgba(70, 69, 69, 0.439); }
.sombra-media{ box-shadow: 0px 0px 10px rgba(70, 69, 69, 0.439); }

.sombra-alta{ box-shadow: 5px 5px 20px rgba(148, 147, 147, 0.439); }

.negrita{ font-weight: bold; }
.italic {font-style: italic;}
.oblique {font-style: oblique;}



/* ====================
	* FORMULARIOS *
==================== */

form *{
    font-family: var(--fuente);
}

.input{
    padding: 7px 10px;
    border-radius: 5px;
    border: solid 1px rgb(216, 215, 215);
    background: rgb(247, 247, 247);
    transition: .3s ease all;
    width: 100%;
    font-size: 15px;
    margin-bottom: 5px;
}

.input-med{
    padding: 3px 8px;
    font-size: 13px;
}

.input:focus{
    outline: none;
    /* border: solid 1px var(--rojo-claro); */
    /* background: #d0d0d0; */
    box-shadow: 0px 0px 1px 2px #999;
}

.contenedor-input{ width: 100%; }

.label-input{
    float: left;
    font-size: 13px;
    padding: 3px;
}

.input-date{
    padding: 4px 10px;
}


.w-100{ width: 100%; }
.w-90{ width: 90%; }
.w-75{ width: 75%; }
.w-50{ width: 50%;}
.w-45{ width: 45%;}
.w-40{ width: 40%;}
.w-30{ width: 30%;}
.w-35{ width: 35%;}
.w-20{ width: 20%;}
.w-15{ width: 15%;}
.w-10{ width: 10%;}

.boton{
    border: none;
    cursor: pointer;
    display: inline-block;
    padding: 6px 15px;
    border-radius: 4px;
    text-align: center;
    line-height: 22px;
    transition: .3s ease all;
    background: rgb(77, 136, 175);
    color: white;
    font-weight: bold;
}

.boton:hover{
    background: rgb(56, 110, 146);
}

.boton.claro{
    background: rgb(11, 134, 216);
    color: white;
    font-weight: bold;
}

.boton-cancelar{
    background: var(--rojo-claro);
}

.boton-cancelar:hover { background: var(--rojo-opaco);}

.boton.claro:hover{
    background: rgb(11, 105, 169);
    color: white;
}

.neumorfismo{
    box-shadow: -3px -3px 5px rgb(255, 255, 255, 0.9),  3px 3px 5px rgba(70, 70, 70, 0.26); 
}

.neumorfismo-interno {
   box-shadow: inset -3px -3px 5px rgb(255, 255, 255, 0.9), inset 3px 3px 5px rgba(70, 70, 70, 0.26) !important;
}

.neumorfismo-doble {
    box-shadow: -3px -3px 5px rgb(255, 255, 255, 0.9),  3px 3px 5px rgba(70, 70, 70, 0.26), inset -3px -3px 5px rgb(255, 255, 255, 0.9), inset 3px 3px 5px rgba(70, 70, 70, 0.26) !important;
}

