@import url("https://fonts.googleapis.com/css2?family=Poppins:wght@200;300;400;500;600;700&display=swap");

:root {
    --body-font: "Poppins", sans-serif;
}
* {
    box-sizing: border-box;  
}

html {
    height: 98%;
}

body {
    height: 100%;
    padding: 2.5rem;
    background-color: rgb(168, 180, 206);
    font-family: var(--body-font);
}

a{
    color: rgb(11, 21, 41);
    text-decoration: none;
}
h1{
    margin: 0;
    padding: 0;
    font-size: 22px;
}
header,
footer {
    height: 100%;
    display: flex;
    justify-content: center;
    text-align: center;
    background-color: rgb(255, 255, 255);
    color: #0065b2;
    border-radius: 10px;
    -webkit-box-shadow: 2px 2px 8px 1px rgba(24, 28, 51, 1);
    -moz-box-shadow: 2px 2px 8px 1px rgba(24, 28, 51, 1);
    box-shadow: 2px 2px 8px 1px rgba(24, 28, 51, 1);
}

.menu-horizontal {
    height: 100%;
    background-color: rgb(255, 255, 255);
    color: #0065b2;
    border-radius: 10px;
    -webkit-box-shadow: 2px 2px 8px 1px rgba(24, 28, 51, 1);
    -moz-box-shadow: 2px 2px 8px 1px rgba(24, 28, 51, 1);
    box-shadow: 2px 2px 8px 1px rgba(24, 28, 51, 1);
}

.menu-horizontal a {
    background-color: transparent;
}

.menu-horiz-item a:hover {
    border-bottom: 2px solid #8dc5d4;
}
main {
    display: grid;
    grid-template-columns: 200px auto;
    overflow-y: auto;
    height: 100%;
    background-color: rgb(255, 255, 255);
    color: #0065b2;
    border-radius: 10px;
    -webkit-box-shadow: 2px 2px 8px 1px rgba(24, 28, 51, 1);
    -moz-box-shadow: 2px 2px 8px 1px rgba(24, 28, 51, 1);
    box-shadow: 2px 2px 8px 1px rgba(24, 28, 51, 1);
}



.container {
    display: grid;
    grid-template-rows: min-content min-content 1fr min-content;
    gap: 1rem;
    height: 100%;
}



/* LOGO MENU */

.menu-logo {
    display: grid;
    grid-template-columns: 25% 1fr auto;
    width: 100%;
    gap: 0em;
}

.menu-logo-izq {
    position: relative;
    top: 6px;
    left: 3px;
}

.menu-logo-izq button {
    width: 30px;
    height: 40px;
    background-color: rgb(231, 246, 255);
    border: none;
    cursor: pointer;
    border: 2px solid #8dc5d4;
    border-radius: 10px;
}

.menu-logo-izq button:hover {
    background-color: rgb(187, 229, 255);
}

.menu-logo-item h1 {
    margin: 5px;
    padding: 5px;
}

.menu-logo-item {
    /*background-color: aqua;*/
    border-radius: 10px;
    align-self: auto;
    margin: 5px;
}

.menu-logo-item a {
    margin: 8px;

    text-decoration: none;
    border-radius: 5px;
    background-color: rgb(231, 246, 255);

}

.menu-logo-item span {
    font-size: 15px;
}

.a-salir {
    padding: 10px 10px 10px 0px;
}

.a-opc {
    padding: 10px 10px 10px 10px;
}

.a-moon {
    padding: 10px 10px 10px 10px;
}

.menu-logo-item a:hover {
    background-color: rgb(131, 173, 199);
}

.a-lines {
    padding: 5px;

    display: none;
}

.logout {
    position: relative;
    top: 9px;
    left: 5px;
}

.opciones {
    position: relative;
    top: 4px;
    left: 1px;
}

.moon {
    position: relative;
    top: 4px;
    left: 0px;
}

.lines {
    position: relative;
    top: 0px;
    left: 0px;
}

@media screen and (max-width: 800px) {

    body {
        height: 100%;
        padding: 1rem;
        background-color: rgb(168, 180, 206);
    }

    .menu-logo {
        grid-template-columns: 8% 1fr auto !important;
        width: 100%;
        gap: 0em;
    }

    .menu-logo-item span {
        display: none;
    }

    .solo-main {
        display: grid;
        grid-template-columns: 1fr;
    }

    .ocultar {
        display: none;
    }

    .a-lines {
        display: block;
    }
}

/************************************************************/

/* MENU HORIZONTAL */

.menu-horizontal {
    display: flex;
    gap: 1em;
    overflow-x: auto;
    white-space: nowrap;
    justify-content: space-between;

    margin: 0px;
    padding: 10px;
}

.cont-menu-horiz {
    display: flex;
    gap: 1em;
    overflow-x: auto;
    white-space: nowrap;

    margin: 0px;
    padding: 10px;
}

.flechas button{
    height: 100%;
    width: 20px;
    padding: 2px;
    
    border-radius: 5px;
    background-color: transparent;
    cursor: pointer;
    border: none;
}

.flechas button:hover{
    background-color: #b7e4f0;
    border: 1px solid #8dc5d4;
}
/****************************************************/



/* aside */

aside {
    overflow-y: auto;
}

/* NAVEGADOR LATERAL */

.nav-lateral {
    background-color: rgb(226, 236, 243);
}
.nav-lateral ul{
    border: 2px solid #8dc5d4;
    border-radius: 5px;
}
.nav-item {
    /*margin-bottom: 30px;*/
    cursor: pointer;
    background-color: rgb(226, 236, 243);
    border-bottom: 1px solid #8dc5d4;
}
.nav-item a{ 
    color: black;
    text-decoration: none;
}

.nav-item:hover{
    background-color: rgb(159, 209, 241);
}
.nav-lateral {    
    padding: 10px;
}
.nav-lateral ul {
    padding: 0;
    margin: 0;
    text-decoration: none;
    list-style:none;
}

.nav-lateral ul ul {    
    margin-left: 10px;
    margin-bottom: 10px;    
    
    padding: 10px;
    border-radius: 5px;
    width: 80%;
    font-size: 10px;

    
}

.item-nombre {
    /*background-color: rgb(172, 213, 240);*/
    padding: 10px;
    border-radius: 5px;
}
.item-nombre a{
    text-decoration: none;
}

.nav-arrow {
    margin-left: 5px; 
    margin-bottom: 5px;      
    width: 15px;
    background-color: rgb(172, 213, 240);
    border-radius: 50%;
}



/*ocultar submmnu*/

.ocultar-subnivel {
    display: none;
}


/* BUSQUEDA */

.busqueda {
    display: flex;
}
.busqueda button {
    font-size: 10px;
    background-color: #dbf8ff;
    border: 1px solid #545e61;  
    cursor: pointer;
}

.busqueda button:hover {
    background-color: #c4f0fc;
}
.busqueda input {
    width: 124px;
}

.nav-arrow-b {
    margin-left: 0px;        
    background-color: rgb(187, 217, 241);
    width: 20px;  
}
.form-busq-av {
    margin-left: 10px;
    display: grid;
    font-size: 10px;
}

.form-busq-av input {
    width: 10px;
}

.busqueda-avanzada {
    background-color: #e7eff2;
    border-bottom: 1px solid #9bb2bd;
    padding-bottom: 5px;
}
/*
.nav-item {
    background-color:  rgb(231, 246, 255);
    margin-bottom: 10px;
    padding: 10px;
    cursor: pointer;
    border-radius: 5px;
}

.nav-item:hover {
    background-color:  rgb(187, 229, 255);
}


.nav-item a{
    background-color:  rgb(165, 209, 237);
    padding: 0px 5px;
    width: 100%;
}

.nav-item a:hover{
    background-color:  rgb(142, 179, 202);
}
*/
/***********************************************/
/* LIGHT MODE */

body.light-mode {
    background-color: rgb(35, 37, 43);
}

body.light-mode footer,
body.light-mode header,
body.light-mode main,
body.light-mode .menu-horizontal {
    background-color: rgb(62, 65, 77);
    color: white;
    -webkit-box-shadow: 2px 2px 8px 1px rgba(224, 229, 255, 0.36);
    -moz-box-shadow: 2px 2px 8px 1px rgba(224, 229, 255, 0.36);
    box-shadow: 2px 2px 2px 1px rgba(224, 229, 255, 0.36);
}

body.light-mode a {
    background-color: transparent;
    color: white;
    
}

body.light-mode .menu-horizontal a {
    background-color: transparent;
}
body.light-mode .nav-lateral,
body.light-mode .nav-item {
    background-color: rgb(99, 103, 122);
    color: white;
} 

body.light-mode .nav-item:hover{
    background-color: rgb(152, 162, 197);    
}

body.light-mode .nav-arrow-b{
    background-color: aliceblue;
}
body.light-mode .busqueda input{
    background-color: rgb(59, 68, 76);
    color: white;
    border: 1px solid #545e61;
}
body.light-mode .busqueda button {
    background-color: rgb(79, 93, 104);
    color: white;
    border: 1px solid #707a7d;  
}
body.light-mode .busqueda button:hover {
    background-color: rgb(21, 27, 31);

}

body.light-mode .flechas button{
    background-color: transparent;
    border:none;
}

body.light-mode .flechas button:hover{
    background-color: rgb(104, 125, 146);    
}
/***************************************************

/* SCROLL */

:root {
    /* scrollbar */
    --scr-bar-hand: hsl(210, 48%, 72%);
    /* color barra */
    --scr-bar-hand-2: hsl(204, 30%, 43%);
    /* color barra hover */
    --scr-bar-backg: transparent;
    /* color fondo */

    --scr-bar-mar-bot: 5px;
    /* margen bottom scroll */
}

/* width */
::-webkit-scrollbar {
    height: 5px;
    width: 5px;
}

/* Track */
::-webkit-scrollbar-track {
    /*background: #737373;*/
    background: var(--scr-bar-backg);

}

/* Handle */
::-webkit-scrollbar-thumb {
    background: var(--scr-bar-hand);
    border-radius: 10px;
    margin-top: var(--scr-bar-mar-bot);
}

/* Handle on hover */
::-webkit-scrollbar-thumb:hover {
    background: var(--scr-bar-hand-2);
}


.div-sticky {    
    position: sticky;
    top: 0;   
  }

/******************************/
/* cuerpo */

/* CONTENIDO PRINCIPAL */

.content-main {
    overflow-y: auto;    
}

.cabecera-main {    
    padding: 10px;
    background-color: #cfe2e9;
    border-bottom: 1px solid rgb(131, 149, 173);
}

.cabecera-main h2 {
    padding: 0;
    margin: 0 5px;
}

.hr-clase {

}

.contenido-main {
    padding: 10px;
    display: flex;
    flex-wrap: wrap;
}

.cliente-datos-1 {
    min-width: 250px;
    background-color: #cddbe5;
    border-radius: 5px;
    padding: 15px;
    margin: 5px;
}

.clientes-datos-titulo {
    background-color: #adc6cf;
    border: 1px solid rgb(131, 149, 173);
    border-radius: 5px;
    text-align: center;
    margin-bottom: 10px;
}
.clientes-datos-titulo h2{
    padding: 0;
    margin: 0;
    font-size: 15px;
}

.clientes-d {
    font-weight: 700;
    letter-spacing: 0.5px;
}

.clientes-d span {
    font-weight: 500;
}
.clientes-a {    
    width: 100%;
    text-align: center;
    margin-top: 10px;
}
.clientes-a a {      
      background-color: #adc6cf;
      border: 1px solid rgb(131, 149, 173);
      border-radius: 5px;          
      font-size: 10px;      
      padding:3px 20px;
}
.clientes-datos-opcion {
   
    
}

.contacto-item {
    display: flex;
    align-items: center;

    background-color: #c3e0ea;
    margin: 5px;
    border: 1px solid rgb(131, 149, 173);
    border-radius: 5px;    
    padding: 5px 18px;
}
.contacto-item-opc {
    margin-left:10px;
    padding-left:10px;
    font-size: 10px;
    border-left: 1px solid #98adb3;
}
.contacto-item-opc .pencil {    
    
            
}
.cliente-acciones-1 {

}