:root {
    --coeficiente: 1.5;
}
body {box-sizing:border-box;}
.container {padding: 0 6px;}

#horarios-menu {color: white;position: sticky;display: flex;flex-wrap: wrap;justify-content: space-between;top: 0;z-index: 2;margin: 0 auto 20px;padding: 0;gap: 1px;background-color: #222;}
#horarios-menu .carrera {width: calc(100% / 3 - 1px);background-color: #333;padding: 12px 0;font-size: 11px;text-align: center;}
#horarios-menu .anchor {background-color: #444;padding: 10px 0;text-decoration: unset;color: white;font-size: 10px;text-align: center;transition: 0.1s;}
#horarios-menu .anchor-3 {width: calc(100% / 3 / 3 - 1px);}
#horarios-menu .anchor-2 {width: calc(100% / 3 / 2 - 1px);}
#horarios-menu .anchor:hover {background-color: #333;}
#horarios-menu .anchor:active {background-color: #222;}
#horarios-menu .anchor.active {background-color: #222 !important;}
/*
#horarios-menu div.anchor {display: inline-block;width: calc(100% / 3);font-size: 10px;margin: 0;text-align: center;line-height: 1;border-top: 1px solid #666;cursor: pointer;}
#horarios-menu div.anchor.tav {border-right: 0;}
#horarios-menu div.anchor > div:nth-child(1) {border-right: 1px solid #222;padding: 12px 0;font-size: 11px;border-bottom: 1px solid #333;}
#horarios-menu div.anchor.tav > div:nth-child(1) {border-right: 0;}
#horarios-menu div.anchor.tav > div a[href$="-tn"] {border-right: 0;}
#horarios-menu div.anchor > div a:hover {}
#horarios-menu div.anchor > div a:active {}
#horarios-menu div.anchor > div:nth-child(2) a {display: inline-block;width: 50%;vertical-align: middle;background-color: #444;padding: 15px 0;border-right: 1px solid #333;text-decoration: unset;color: white;}
#horarios-menu div.anchor > div:nth-child(2) a:hover {background-color:#3a3a3a;transition:0.1s;}
#horarios-menu div.anchor > div:nth-child(2) a:active {background-color:#353535;transition:0s;}
#horarios-menu div.anchor > div a[href$="-tn"] {border-right: 1px solid #333;}
#horarios-menu div.anchor.tdg > div a {display: inline-block;width: calc(100% / 3);}
*/
h3 {margin: 0 0 20px;font-weight: bold;position: sticky;top: 61px;background-color: #f0f0f0;padding: 14px 10px;font-size: 14px;line-height: 1;box-shadow: 0px 2px 5px rgba(0,0,0,0.1);z-index: 1;}
h4 {border: 1px solid #ccc;border-bottom: 0;background: #bbb;padding: 1rem;margin: 0;font-weight: bold;font-size: 16px;}
h4 span:before {content:" - ";}
.tabla-dias {width: 100%;position: relative;height: auto;}
.tabla-dias .titulo-dia {width: 20%;display: inline-block;vertical-align: top;top: 0;border: 1px solid #ccc;padding: 0.5rem 0.8rem;font-size: 14px;background-color: #e0e0e0;font-weight: bold;}
.tabla {width: 100%;position: relative;margin: 0 0 1em;background: linear-gradient(-45deg, #ccc 1%, #fafafa 1%, #fafafa 49%, #ccc 49%, #ccc 51%, #fafafa 51%, #fafafa 99%, #ccc 99%);background-size: 10px 10px;}
.tabla .dia {display: inline-block;width: 20%;vertical-align: top;}
.tabla .materia {border: 1px solid #ccc;padding: 1rem 0.7rem 0;background-color: #eee;position: relative;}
.tabla .materia h5 {font-weight: bold;font-size: 14px;margin: 0;-webkit-hyphens: auto;-ms-hyphens: auto;hyphens: auto;/* text-align: justify; */width: 100%;/* letter-spacing: -0.08em; */text-wrap: pretty;}
.tabla .materia.largo-30 {height: calc(30px * var(--coeficiente));padding: 0.2rem 0.7rem;}
.tabla .materia.largo-40 {height: calc(40px * var(--coeficiente));padding: 0.4rem 0.7rem;}
.tabla .materia.largo-30 .hora,
.tabla .materia.largo-40 .hora {margin:0;}
.tabla .materia.largo-30 .hora:after,
.tabla .materia.largo-40 .hora:after {content: " - A"attr(data-aula);font-weight:bold;}
.tabla .materia.largo-30 div.docentes,
.tabla .materia.largo-40 div.docentes {margin: 0.1em 0 0;position:relative;z-index:1;display:inline;background: url();}
.tabla .materia.largo-30 div.docentes span,
.tabla .materia.largo-40 div.docentes span {display:inline;}
.tabla .materia.largo-30 h5,
.tabla .materia.largo-40 h5 {letter-spacing: -0.03em;line-height: 15px;}
.tabla .materia.largo-30 h4,
.tabla .materia.largo-40 h4 {}
.tabla .materia.largo-30 .aula,
.tabla .materia.largo-40 .aula {position:relative;z-index:1;display:inline;/* margin-left: 1em; */background: unset;/* position: absolute; *//* top: calc(0.2rem); *//* transform: translateY(-100%); *//* left: calc(0.4rem + 6em); */display: none;}

.tabla .materia.segundo-dia {}
.tabla .materia.segundo-dia .docentes {display:none;}
.tabla .materia.largo-60 {height: calc(60px * var(--coeficiente));padding-top: 0.5rem;}
.tabla .materia.largo-60 .hora {margin-bottom: 0.1rem;}
.tabla .materia.largo-60 div.docentes {margin-top:0;}
.tabla .materia.largo-80 {height: calc(80px * var(--coeficiente));}
.tabla .materia.largo-90 {height: calc(90px * var(--coeficiente));}
.tabla .materia.largo-120 {height: calc(120px * var(--coeficiente));}
.tabla .materia.largo-150 {height: calc(150px * var(--coeficiente));}
.tabla .materia.largo-160 {height: calc(160px * var(--coeficiente));}
.tabla .materia.largo-180 {height: calc(180px * var(--coeficiente));}
.tabla .materia.largo-200 {height: calc(200px * var(--coeficiente));}
.tabla .materia.largo-240 {height: calc(240px * var(--coeficiente));}
.tabla .materia.margintop-30 {margin-top: calc(30px * var(--coeficiente));border-top-width: 2px;}
.tabla .materia.margintop-40 {margin-top: calc(40px * var(--coeficiente));border-top-width: 2px;}
.tabla .materia.margintop-60 {margin-top: calc(60px * var(--coeficiente));border-top-width: 2px;}
.tabla .materia.margintop-80 {margin-top: calc(80px * var(--coeficiente));border-top-width: 2px;}
.tabla .materia.margintop-120 {margin-top: calc(120px * var(--coeficiente));border-top-width: 2px;}
.tabla .materia.margintop-30::before {content: "";position: absolute;right: 100%;bottom: calc(100% + 2px);border-left: 1px solid #ccc;height: calc(30px * var(--coeficiente));}
.tabla .materia.margintop-40::before {content: "";position: absolute;right: 100%;bottom: calc(100% + 2px);border-left: 1px solid #ccc;height: calc(40px * var(--coeficiente));}
.tabla .materia.margintop-60::before {content: "";position: absolute;right: 100%;bottom: calc(100% + 2px);border-left: 1px solid #ccc;height: calc(60px * var(--coeficiente));}
.tabla .materia.margintop-80::before {content: "";position: absolute;right: 100%;bottom: calc(100% + 2px);border-left: 1px solid #ccc;height: calc(80px * var(--coeficiente));}
.tabla .materia.margintop-120::before {content: "";position: absolute;right: 100%;bottom: calc(100% + 2px);border-left: 1px solid #ccc;height: calc(120px * var(--coeficiente));}
.tabla .materia.margintop-30::after {content: "";position: absolute;left: 100%;bottom: calc(100% + 2px);border-right: 1px solid #ccc;height: calc(30px * var(--coeficiente));}
.tabla .materia.margintop-40::after {content: "";position: absolute;left: 100%;bottom: calc(100% + 2px);border-right: 1px solid #ccc;height: calc(40px * var(--coeficiente));}
.tabla .materia.margintop-60::after {content: "";position: absolute;left: 100%;bottom: calc(100% + 2px);border-right: 1px solid #ccc;height: calc(60px * var(--coeficiente));}
.tabla .materia.margintop-80::after {content: "";position: absolute;left: 100%;bottom: calc(100% + 2px);border-right: 1px solid #ccc;height: calc(80px * var(--coeficiente));}
.tabla .materia.margintop-120::after {content: "";position: absolute;left: 100%;bottom: calc(100% + 2px);border-right: 1px solid #ccc;height: calc(120px * var(--coeficiente));}
.tabla .materia .hora {font-size: 75%;color: #666;margin: 0 0 0.3em;line-height: 1;}
.tabla div.docentes {color: #888;display: block;font-size: 75%;line-height: 1.3;margin: 0.4em 0 0;white-space: pre-line;background-color: #eee;}
.tabla div.docentes .docente {display: block;white-space: nowrap;overflow: hidden;}
.tabla div.docentes .docente {white-space: nowrap;overflow: hidden;text-overflow: ellipsis;}
.tabla div.aula {color: #888;display: block;font-size: 75%;line-height: 1.3;/* margin: 0.4em 0 0; */white-space: pre-line;font-weight: bold;background-color: #eee;}
hr {margin: 0.3em 0;border-top: 1px solid #aaa;width: 500px;margin: 1rem auto 3rem;}
#content .container {padding: 0;}

#up {position: fixed;right: 30px;bottom: 30px;background-color: #eee;padding: 18px;border-radius: 50%;cursor: pointer;box-shadow: 0px 0px 10px rgba(0,0,0,0.3);z-index: 2;}
#up:hover {background-color: #e0e0e0;}
#up:active {background-color: #dddddd;}
#up span {display: block;font-size: 16px;width: 16px;line-height: 1;}


/*
ESTILOS
CUSTOM
*/
.tabla .materia.segundo-dia.tav-tm-34 .docentes {display:block;}



@media screen and (max-width: 768px) {
    :root {
        --coeficiente: 1.4;
    }
    h4 {
        padding: 1rem 0.5rem;
        font-size: 14px;
        /* text-wrap: balance; */
    }
    h4 span {display:block;}
    h4 span:before {content:unset;}
    hr {width: 90%;}
    table tr.deLicencia td:last-child::after {content: "Docente con licencia";display: block;position: relative;top: unset;left: unset;transform: unset;white-space: nowrap;font-weight: bold;color: #563d7c;}
    .tabla .materia {padding: 0.5rem 0.3rem 0 !important;}
    .tabla .materia .hora {font-size: 10px;}
    .tabla .materia h5 {font-size: 11px;letter-spacing: -0.05em;line-height: 1.05;}
    .tabla div.docentes {font-size: 10px;line-height: 1;}
    .tabla div.docentes .docente-nombre {display: none;}
    .tabla div.aula {font-size: 10px;line-height: 1;}
    .tabla-dias .titulo-dia {font-size: 12px;padding: 0.5rem 0.3rem;text-align: center;}
    #up {padding: 16px;}
}

@media screen and (max-width: 768px) and (orientation: landscape) {
    .container {max-width: 100%;}
}

@media print {
    body {background-color:white;}
    :root {
        --coeficiente: 1;
    }

    * {
        -webkit-print-color-adjust: exact !important;   /* Chrome, Safari */
        color-adjust: exact !important;                 /* Firefox */
        print-color-adjust: exact !important;           /* EstÃƒÆ’Ã†â€™Ãƒâ€šÃ‚Â¡ndar futuro */
        line-height: 1.1;
    }
    .tabla .materia .docentes {display: none !important;!i;!;}
    .tabla .materia.largo-30 {height: calc(1cm * var(--coeficiente));padding: 0.2rem 0.4rem;}
    .tabla .materia.largo-30 h5,
    .tabla .materia.largo-40 h5 {letter-spacing: -0.08em;line-height: 1;}
    .tabla .materia.largo-40 {height: calc(1cm / 3 * 4 * var(--coeficiente));padding: 0.6rem 0.4rem;}
    .tabla .materia.largo-60 {height: calc(2cm * var(--coeficiente));}
    .tabla .materia.largo-60 h5 {line-height: 13px;}
    .tabla .materia.largo-80 {height: calc(1cm / 3 * 8 * var(--coeficiente));}
    .tabla .materia.largo-90 {height: calc(3cm * var(--coeficiente));}
    .tabla .materia.largo-120 {height: calc(4cm * var(--coeficiente));}
    .tabla .materia.largo-150 {height: calc(5cm * var(--coeficiente));}
    .tabla .materia.largo-160 {height: calc(1cm / 3 * 16 * var(--coeficiente));}
    .tabla .materia.largo-180 {height: calc(6cm * var(--coeficiente));}
    .tabla .materia.largo-200 {height: calc(1cm / 3 * 20 * var(--coeficiente));}
    .tabla .materia.largo-240 {height: calc(8cm * var(--coeficiente));}
    .tabla .materia.margintop-30 {margin-top: calc(1cm * var(--coeficiente));border-top-width: 2px;}
    .tabla .materia.margintop-40 {margin-top: calc(1cm / 3  * 4 * var(--coeficiente));border-top-width: 2px;}
    .tabla .materia.margintop-60 {margin-top: calc(2cm * var(--coeficiente));border-top-width: 2px;}
    .tabla .materia.margintop-80 {margin-top: calc(1cm / 3 * 8 * var(--coeficiente));border-top-width: 2px;}
    .tabla .materia.margintop-120 {margin-top: calc(4cm * var(--coeficiente));border-top-width: 2px;}
    .tabla .materia.margintop-30::before {height: calc(1cm * var(--coeficiente));}
    .tabla .materia.margintop-40::before {height: calc(1cm / 3 * 4 * var(--coeficiente));}
    .tabla .materia.margintop-60::before {height: calc(2cm * var(--coeficiente));}
    .tabla .materia.margintop-80::before {height: calc(1cm / 3 * 7 * var(--coeficiente));}
    .tabla .materia.margintop-120::before {height: calc(4cm * var(--coeficiente));}
    .tabla .materia.margintop-30::after {height: calc(1cm * var(--coeficiente));}
    .tabla .materia.margintop-40::after {height: calc(1cm / 3 * 4 * var(--coeficiente));}
    .tabla .materia.margintop-60::after {height: calc(2cm * var(--coeficiente));}
    .tabla .materia.margintop-80::after {height: calc(1cm / 3 * 7 * var(--coeficiente));}
    .tabla .materia.margintop-120::after {height: calc(4cm * var(--coeficiente));}
    
    #horarios-menu {display:none;}
    .container {max-width: unset;}
    #up {display: none;}
    .tabla-dias .titulo-dia {padding: 0.2cm 0.2cm;height: auto;text-align: center;font-size: 13px;    }
    .bloque-carrera-turno-ano {
        page-break-inside: avoid;  /* Propiedad tradicional */
        break-inside: avoid;       /* Propiedad moderna */
    }
    /*.tabla {background:unset;}*/
    .tabla .materia {
        padding: 0.3cm 0.15cm 0;
        background-color: #eee;
        position: relative;
    }
    .tabla .materia h5 {
        font-size: 0.35cm;
        position: relative;
        z-index: 1;
    }
    .tabla div.docentes {
        margin: 0.2em 0 0;
        line-height: 1;
    }
    h4 {padding: 0.5rem;}
    @page {
        size: portrait;   /* auto is the initial value */
        margin: 0.5cm;  /* this affects the margin in the printer settings */
    }
}