*{
    font-family:  'Open Sans', sans-serif;
    font-size: 14px;    
}

body{
    text-align: center;
    background: #fff;
    color: #000;
    padding: 0px;
    margin: 0px;
}

body a{
    color: #009;
}


.barra_superior{
    display: inline-block;
    width: 100%;
    color: #000;
    background-color: #fff;
    text-align: left;
    
}

.cajita_izquierda{
    float:left;
    display: inline-block;
    padding-left: 5px;
    padding-right: 5px;
    padding-top: 5px;
    
}

.cajita_centro{
    position: relative;
    display: inline-block;
    left: 10px;
    top: 20px;
}

.cajita_derecha{
    /*float:right;*/
    right: 5px;
    display: inline-block;
    vertical-align: top;
    padding-right: 0px;
    padding-left: 0px;
    position: absolute;
}


.cajon_formulario{
    text-align: center;    
    display: inline-block;
    align-items: center;
    padding: 20px;
    background-color: #cccccc;
    width: 450px;
    color: #000;
    
}

.cajon_formulario select, input, label, button{
    max-width: 100%;
}

.pantallausuario{
    text-align: center;
}

.panel{
    /*width: 100%;*/
    width: calc(100% - 220px);
    vertical-align: top;
    float: right;
}
.cajon_panel{
    text-align: center;    
    display: inline-table;
    align-items: center;
    padding: 5px;
    margin: 4px;
    background-color: #cccccc;
    width: 20%;
    height: 300px;
    color: #000;
    top: 0px;
    position: relative;
}

/*label{
    float: left;
    width: 40%;
    text-align: right;
}


input[type=text],[type=password]{
    float:right;
    width: 55%;
}
input[type=submit], [type=reset], [type=button]{
    display: inline-table;
}*/

form{
    padding: 10px;
    
    position: relative;
    align-content: center;
}

/*div {
  margin: .4em 0;
  padding-bottom: 6px;
  padding-top: 2px;
}*/

div label {
  /*width: 40%;*/
  /*float: left;*/
}

table{    
    display: inline;
    align-items: center;
    width: 100%;
    text-align: left;
    color: #000;
    
}

table a{
    color: #009;
}

table td{
    padding: 5px;
}

table tr:nth-child(even) {
    background-color: #cccccc;
}
table tr:nth-child(odd) {
    background-color: #bbb;
}
table tr:nth-child(1) {
    background-color: #B4A689;
}

h1{
    font-size: 34px;
    margin: 6px;
    padding: 5px;
}

h2{
    font-size: 24px;
    margin: 4px;
}

h3{
    font-size: 20px;
    margin: 2px;
}

#tabla{
    width: 100%;
    text-align: center;
}

#titulo{
    text-align: center;
}

.factura{
    display: inline-block;
    width: 100%;
    page-break-inside: avoid;
}

.factura_cliente{
    position: relative;
    display: inline-block;
    width: 45%;
    text-align: left;
}
.factura_obra{
    position: relative;
    display: inline-block;
    width: 45%;
    text-align: left;
}
.factura_cuerpo{
    position: relative;
    display: inline-block;
    width: 90%;
    text-align: justify;
}

.factura p{
    line-height: 14px;
    font-size: 14px;
    /*padding: 0px;*/
    margin: 6px;
}

.factura_cuerpo p{
    line-height: 14px;
    font-size: 12px;
    margin: 2px;
}

@media print{
    /*No hace nada
    @page{
        @top-left-corner{content: "top-left-corner";};
        @top-left{content: "top-left";};
    }*/ 
    .factura{
        page-break-inside: avoid;
        display: inline;
        
    }
    .factura_cuerpo{
        page-break-inside: avoid;
        display: inline;
    }
    #usuario{
        display: none;
    }
    .factura a{
        display: none;
    }
    .factura_filtros{
        display: none;
    }
    #menu{
        display: none;
    }
    .panel{
        float: none;
        page-break-inside: avoid;
        display: inline;
    }
}

#menu {
    float: left;
    font-family:  'Open Sans', sans-serif;
    font-weight: 300; 
    font-style: normal; 
    font-size: 14px;

    text-align: center;
    max-width: 210px;
    height: auto;
    margin: 0px auto;
    padding: 0px;
    vertical-align: central;
}
#menu * {
    transition: all 0.35 ease-in-out; 
}

#menu ul {
    list-style-type: none;
    padding: 0px;
    padding-top: 0px;
    padding-bottom: 0px;
    margin-bottom: 10px;
    border-top: solid 1px #000;
    border-bottom: solid 1px #000;
    background-color: #B4A689;
}

#menu li {
    border-top: solid 1px #000;
}

/*#menu ul li.nivel1 {
    float: left;
    display: inline-block;
    margin-right: 0px;
}*/

#menu ul li a {
    display: block;
    text-decoration: none;
    color: #000;
    background-color: #ccc;
    padding: 6px;
    position: relative;
}

#menu ul li:hover {
    position: relative;
}

#menu ul li a:hover, .menu ul li:hover a.nivel1{
    background-color: #B4A689;
    color: #000;
    position: relative;
}

#menu ul li a:target, .menu ul li:target a.nivel1{
    background-color: #B4A689;
    color: #fff;
}

/*#menu ul li a.nivel1 {
    display: block!important;
    position: relative;
}*/

#menu ul li ul {
    display: block;
    position: relative;
    
}
#menu ul li a:hover ul, .menu ul li:hover ul {
    display: block;
    position: absolute;
    /*left: 0px;*/
}
#menu ul li ul li a {
    border-top-color: #000;
    display: block;
    position: relative;
}

#menu ul li ul li a:hover {
    border-top-color: #000;
    position: relative;
}


@media only screen and (max-width : 800px) {
    .barra_superior{
        text-align: center;
    }
    .cajita_centro{
        display: none
    }
    .cajita_izquierda{
        width: 100%;
        padding-top: 0px;
    }
    .cajita_derecha{
        width: 100%;
        padding-top: 85px;
    }
    .cajon_formulario{
        width: 95%;
        padding: 5px;
        margin: 0px;
    }
    .cajon_panel{
        width: 95%;
        padding: 5px;
        margin: 5px;
        height: auto;
    }
    #menu{
        padding-top: 10px;
        float: none;
    }
    #menu{
        width: auto;
        max-width: none;
    }
    .panel{
        width: 100%;
        float: none;
    }
}