/* body { background-color: #f0f0f0; } */

main > .container { padding: 30px 15px 0; }

/* aumento el tamaño de la tipografía de algunos elementos */
.letr-tam-list, .form-control, label, input,
.form-text, caption, dd, .card-header,
.card-body, .col-form-label {
    font-size: 1.04rem;
}
.letr-tam-parrf, p { font-size: 1.16rem; }
li { font-size: 1.15rem; }
.letr-tam-tabla, td, th { font-size: 1.1rem; }
.alert, .alert > p { font-size: large; }
.nav-item > .nav-link,
.list-group > a, .list-group > a > p,
.list-group > a > div > p {
    font-size: 1.04rem;
}

/* separo las listas anidadas */
ul > ul {
    margin-top: 1rem;
    margin-bottom: 1rem;
}

/* .footer { background-color: #0e437c; } */

.footer > .container {
    padding-right: 15px;
    padding-left: 15px;
}

.linea-cabeza { border: 1px solid #343a40; }

.titulo-seccion { color:brown; border-bottom: 1px solid brown; }

.activo {font-weight: bold; text-decoration: underline; }

/* separadores de secciones, sobre todo para la portada administrativa */
.separador-secc-1 {
    background-color: darkviolet;
    color: white;
    padding: 10px;
    border-radius: 10px;
    font-size: 25px;
    font-style: italic;
}

.separador-secc-2 { border-bottom: 1px solid black; }

.separador-secc-3 { color: darkslateblue; border-bottom: 1px solid darkslateblue; }

/* intento que los campos requeridos de un formulario muestren el asterisco */
.form-group.required label:after {
	color: white;
	content: ' *';
	display: inline;
}

label.required:after {
	color: white;
	content: ' *';
}

legend.required:after {
	color: white;
	content: ' *';
}

/* para que los enlaces de la navegación lateral estén correctamente espaciados */
.card-body > .table { margin-bottom: 0px; }

/*los enlaces de apertura de las secciones de los menúes laterales*/
.card-header > a {
    font-size: large;
    font-weight: bold;
    text-decoration: underline;
    font-style: italic;
}

/* intento que los círculos de los selectores de las líneas de los apuntes se vean correctamente */
input.selector-apunte {
    display:  block;
    height:  30px;
    /*vertical-align:  middle;*/
    margin-left:  auto;
    margin-right:  auto;
    width: 18px;
}

/*párrafos de alerta para errores en las validaciones y otros usos*/
.error-validacion { color: red; font-weight: bold; background-color:floralwhite; padding: 10px; margin-top: 10px; }

/* formatos para el diario contable */
.cabecera-diario{ color: white; background-color: darkviolet; }
th.cabecera-diario a { color:white; text-decoration: underline; }

/* establezco un estilo más personalizado para las leyendas de los 'fieldset'*/
.legend-habitual { font-size: inherit; }

/* alerta de galletitas */
.contenedor-gallet p {
    margin: 24px 0;
    line-height: 2;
}

.contenedor-gallet {
    position: fixed;
    bottom: -100%;
    left: 0;
    right: 0;
    background: #2f3640;
    color: #f5f6fa;
    padding: 0 32px;
    box-shadow: 0 -2px 16px rgba(47, 54, 64, 0.39);
    opacity: 0.85;
    transition: 400ms;
}

.contenedor-gallet.activada { bottom: 0; }

.contenedor-gallet a { color: #f5f6fa; }

/* acordeón */

.accordion {
    width: 100%;
    /* max-width: 1000px;
    margin: 2rem auto; */
}

.accordion-item {
    background-color: #fff;
    color: #111;
    /*margin: 1rem 0;
    border-radius: 0.5rem;
    /*box-shadow: 0 2px 5px 0 rgba(0,0,0,0.25);*/

    /* inserto yo */
    /* border: 1px solid darkgray; */
}

.accordion-item-header {
    padding: 0.5rem 3rem 0.5rem 1rem;
    min-height: 3.5rem;
    line-height: 1.25rem;
    font-weight: bold;
    display: flex;
    align-items: center;
    position: relative;
    cursor: pointer;
    font-size: 1.18rem;
}

.accordion-item-header::after {
    content: '+';
    font-size: 2rem;
    position: absolute;
    right: 1rem;
}

.accordion-item-header.active::after {
    content: '-';
}

.accordion-item-body {
    max-height: 0;
    overflow: hidden;
    transition: max-height 0.4s ease-out;
}

.accordion-item-body-content {
    padding: 1rem;
    line-height: 1.5rem;
    border-top: 1px solid;
    border-image: linear-gradient(to right, transparent, #34495e, transparent) 1;
}

/* necesaria en los elementos que se colapsan */
.colapsable {
    max-height: 0;
    overflow: hidden;
    transition: max-height 0.2s ease-out;
}

/* colores de texto */
.text-az-osc-1 {
    color: #080851;
}

/* línea separadora de secciones */
.lin-sep { border: 1px solid darkgray; }

/* cajas para mensajes destacados */
.div-destac {
    /*border-top: 1px solid lightgrey;
    border-right: 1px solid lightgrey;
    border-bottom: 1px solid lightgrey;*/
    padding: 0.5rem 0.5rem 0.5rem 1.5rem;
    font-size: inherit;
}
.div-destac > p { margin-bottom: 0; }
.div-destac-prim   { border-left: 0.2rem solid #0d6efd; }
.div-destac-sec    { border-left: 0.2rem solid #6c757d; }
.div-destac-exito  { border-left: 0.2rem solid #198754; }
.div-destac-pelig  { border-left: 0.2rem solid #dc3545; }
.div-destac-advert { border-left: 0.2rem solid #ffc107; }
.div-destac-info   { border-left: 0.2rem solid #0dcaf0; }
.div-destac-osc    { border-left: 0.2rem solid #212529; }

/* clases relacionadas con el calendario; quizá pudiese situarlas en una hoja separada */

.calendario {
    text-align: right;
    font-weight: bold;
    margin-left: auto;
    margin-right: auto;
  }

  /*table > tbody > tr > td {
    text-align: right;
  }*/

  @media screen and (max-width: 576px) {
    .calendario > tr > td {
      padding-left: 1.5rem;
    }
  }

  .dia-destc {
    color: white;
    background-color: darkred !important;
  }

  .dia-fest {
    color: red;
  }

  .fondo-azulado {
    background-color: #e9eef4;
  }

  /* intento que ciertos enlaces no cambien de color al ser pulsados */
  .list-group-item-action:active { background-color: transparent; }
