/* =====================================
   TIPOGRAFÍA GLOBAL
===================================== */

body{
    margin: 0;
    padding: 0;
    font-family: "myriad-pro", Arial, Helvetica, sans-serif;
    font-weight: 400; /* Regular */
}

html{
    scroll-behavior: smooth;
}

html, body, h1, h2, h3, h4, h5, h6, p, span, a, button {
    font-family: "myriad-pro", Arial, Helvetica, sans-serif;
}

/* =====================================
   RESPALDO LOCAL PARA USO SIN INTERNET
===================================== */

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

.container,
.container-fluid{
    width:100%;
    margin-right:auto;
    margin-left:auto;
    padding-right:12px;
    padding-left:12px;
}

.container{
    max-width:1320px;
}

.row{
    display:flex;
    flex-wrap:wrap;
    margin-right:-12px;
    margin-left:-12px;
}

.row > *{
    width:100%;
    max-width:100%;
    padding-right:12px;
    padding-left:12px;
}

.col-12{ flex:0 0 auto; width:100%; }
.w-100{ width:100% !important; }
.img-fluid{ max-width:100%; height:auto; }
.d-flex{ display:flex !important; }
.flex-wrap{ flex-wrap:wrap !important; }
.align-items-center{ align-items:center !important; }
.justify-content-center{ justify-content:center !important; }
.justify-content-between{ justify-content:space-between !important; }
.text-center{ text-align:center !important; }
.text-end{ text-align:right !important; }
.bg-transparent{ background-color:transparent !important; }
.border{ border:1px solid #dee2e6 !important; }
.border-0{ border:0 !important; }
.p-2{ padding:.5rem !important; }
.py-4{ padding-top:1.5rem !important; padding-bottom:1.5rem !important; }
.m-2{ margin:.5rem !important; }
.mb-0{ margin-bottom:0 !important; }
.mb-3{ margin-bottom:1rem !important; }
.mb-4{ margin-bottom:1.5rem !important; }
.mb-5{ margin-bottom:3rem !important; }
.mt-4{ margin-top:1.5rem !important; }
.mt-5{ margin-top:3rem !important; }
.gap-2{ gap:.5rem !important; }
.gap-3{ gap:1rem !important; }

.navbar{
    position:relative;
    display:flex;
    flex-wrap:wrap;
    align-items:center;
    justify-content:space-between;
    padding:.5rem 0;
}

.navbar-expand-lg{
    flex-wrap:nowrap;
}

.btn{
    display:inline-flex;
    align-items:center;
    justify-content:center;
    gap:.35rem;
    min-height:38px;
    padding:.375rem .75rem;
    font-size:1rem;
    font-weight:600;
    line-height:1.5;
    text-align:center;
    text-decoration:none;
    vertical-align:middle;
    cursor:pointer;
    border:1px solid transparent;
    border-radius:.375rem;
    background-color:transparent;
    transition:color .15s ease-in-out, background-color .15s ease-in-out, border-color .15s ease-in-out;
}

.btn-outline-primary{
    color:#0d6efd;
    border-color:#0d6efd;
    background:#fff;
}

.btn-outline-primary:hover{
    color:#fff;
    background:#0d6efd;
}

.form-select{
    display:block;
    width:100%;
    min-height:38px;
    padding:.375rem 2.25rem .375rem .75rem;
    font-size:1rem;
    font-weight:400;
    line-height:1.5;
    color:#212529;
    background-color:#fff;
    border:1px solid #ced4da;
    border-radius:.375rem;
}

.alert{
    position:relative;
    padding:1rem;
    margin-bottom:1rem;
    border:1px solid transparent;
    border-radius:.375rem;
}

.alert-light{
    color:#636464;
    background-color:#fefefe;
    border-color:#fdfdfe;
}

.alert-warning{
    color:#664d03;
    background-color:#fff3cd;
    border-color:#ffecb5;
}

.alert-success{
    color:#0f5132;
    background-color:#d1e7dd;
    border-color:#badbcc;
}

.alert-danger{
    color:#842029;
    background-color:#f8d7da;
    border-color:#f5c2c7;
}

.table{
    width:100%;
    margin-bottom:1rem;
    color:#212529;
    border-collapse:collapse;
}

.table > :not(caption) > * > *{
    padding:.5rem;
    border-bottom:1px solid #dee2e6;
}

.table-striped > tbody > tr:nth-of-type(odd) > *{
    background-color:rgba(0,0,0,.03);
}

.card{
    position:relative;
    display:flex;
    flex-direction:column;
    min-width:0;
    color:#212529;
    overflow-wrap:break-word;
    background-color:#fff;
    background-clip:border-box;
    border:1px solid rgba(0,0,0,.125);
}

.card-header{
    padding:.5rem 1rem;
    margin-bottom:0;
    border-bottom:1px solid rgba(0,0,0,.125);
}

.card-body{
    flex:1 1 auto;
    padding:1rem;
}

.card-title{
    margin-top:0;
}

.shadow-sm{
    box-shadow:0 .125rem .25rem rgba(0,0,0,.075) !important;
}

.h-100{
    height:100% !important;
}

@media (min-width: 768px){
    .col-md-3{ flex:0 0 auto; width:25%; }
    .col-md-6{ flex:0 0 auto; width:50%; }
    .m-md-5{ margin:3rem !important; }
    .row-cols-md-3 > *{ flex:0 0 auto; width:33.333333%; }
}

@media (min-width: 992px){
    .col-lg-6{ flex:0 0 auto; width:50%; }
    .row-cols-lg-4 > *{ flex:0 0 auto; width:25%; }
}

.row-cols-2 > *{
    flex:0 0 auto;
    width:50%;
}

/* Encabezados en Semibold */
h1, h2, h3, h4, h5, h6{
    font-weight: 600;
}

h2{
    font-size: 47px;
}
h5{
    font-size: 40px;
}

/* =====================================
   NAVBAR
===================================== */

.navbar-personalizado{
    background-color: #004a98;
    color: white;
    font-size: 24px;
    font-weight: 600;
}

.header-home-link{
    color:inherit;
    text-decoration:none;
    cursor:pointer;
}

.header-home-link:hover,
.header-home-link:focus{
    color:inherit;
    text-decoration:none;
}

.header-periodo-wrap{
    display:flex;
    flex-direction:column;
    align-items:center;
    justify-content:center;
    gap:4px;
    line-height:1.05;
}

.header-periodo-title{
    font-size:26px;
    font-weight:700;
    letter-spacing:.01em;
    text-transform:none;
}

.header-periodo-term{
    font-size:34px;
    font-weight:800;
    letter-spacing:.03em;
}

/* Logos del header */
.logo-header{
    height: 100px;
}

@media (max-width: 768px){
    .logo-header{
        height: 60px;
    }

    .header-periodo-title{
        font-size:18px;
    }

    .header-periodo-term{
        font-size:24px;
    }
}

/* =====================================
   BARRAS DECORATIVAS
===================================== */

.barra-amarilla{
    height: 10px;
    background-color: #f9f04b;
}

.barra-gris{
    height: 25px;
    background-color: #706f6f;
}

.barra-azul{
    height: 10px;
    background-color: #00b2e3;
}



/* =====================================
   TÍTULO LICENCIATURAS
===================================== */

.titulo-licenciaturas{
    font-size: 40pt;
    font-weight: 600;
}

/* =====================================
   ICONOS CARRERAS
===================================== */

.icono-carrera{
    width: 80px;
}

.icono-carrera-comun{
    display:inline-flex;
    align-items:center;
    justify-content:center;
    width:80px;
    height:80px;
    border:0;
    border-radius:50%;
    background:#9ea3a8;
    position:relative;
}

.icono-carrera-comun::before{
    content:"";
    width:42px;
    height:42px;
    border:6px solid #fff;
    border-right-color:transparent;
    border-radius:50%;
    transform:none;
}

/* =====================================
   BOTÓN AZUL CENTRAL
===================================== */

.boton-click{
    height: 50px;
    background-color: #004a98;
    color: white;
    width: min(90%, 350px);
    display: flex;
    align-items: center;
    justify-content: center;
    border-radius: 1rem;
    margin-left: auto;
    margin-right: auto;
    font-weight: 600;
}

.hero-link-btn{
    transition: transform .18s ease, filter .18s ease;
}

.hero-link-btn:hover{
    transform: translateY(-2px);
    filter: drop-shadow(0 8px 16px rgba(0,0,0,.18));
}

.optativas-hero-btn{
    width:100%;
    min-height:74px;
    border-radius:28px;
    background:#168fbd !important;
    color:#fff !important;
    text-transform:uppercase;
    letter-spacing:0;
    font-size:clamp(1.05rem, 2vw, 1.62rem);
    font-weight:750;
    box-shadow:0 8px 18px rgba(22,143,189,.18);
}

.optativas-hero-btn span{
    display:block;
    line-height:1.08;
}

#carreras-rapidas.is-collective-hover .hero-link-btn{
    transform: translateY(-2px);
    filter: drop-shadow(0 8px 16px rgba(0,0,0,.18));
}

.back-to-top-btn{
    position:fixed;
    right:22px;
    bottom:22px;
    width:52px;
    height:52px;
    border:0;
    border-radius:999px;
    background:#004a98;
    color:#fff;
    display:flex;
    align-items:center;
    justify-content:center;
    box-shadow:0 10px 24px rgba(0,0,0,.2);
    opacity:0;
    visibility:hidden;
    transform:translateY(10px);
    transition:opacity .18s ease, visibility .18s ease, transform .18s ease, background-color .18s ease;
    z-index:20;
}

.back-to-top-btn svg{
    width:22px;
    height:22px;
}

.back-to-top-btn.is-visible{
    opacity:1;
    visibility:visible;
    transform:translateY(0);
}

.back-to-top-btn:hover{
    background:#0b62c1;
    transform:translateY(-2px);
}

/* =====================================
   MAPA CUADROS
===================================== */

.mapa-cuadro{
    width: 150px;
    height: 50px;
    display: flex;
    align-items: center;
    justify-content: center;
    font-weight: 600;
    border: 1px solid #dee2e6;
    border-radius: 6px;
    background-color: #f8f9fa;
    transition: all .25s ease;
    cursor: pointer;
}

.mapa-cuadro a{
    display: flex;
    align-items: center;
    justify-content: center;
    width: 100%;
    height: 100%;
    text-decoration: none;
    color: #212529;
}

.mapa-cuadro:hover{
    transform: scale(1.05);
    box-shadow: 0 4px 10px rgba(0,0,0,.15);
}

/* =====================================
   TARJETAS
===================================== */

.card{
    border: none;
    border-radius: 0;
    box-shadow: 0 2px 4px rgba(0,0,0,0.1);
    font-size: 14pt;
    font-weight: 600;
}

.card-header-verde{
    background-color: #8db709;
    color: white;
}

/* =====================================
   FOOTER
===================================== */

.footer-personalizado{
    background-color: #004a98;
    color: white;
}

.icono-redes{
    width: 40px;
}

/* =====================================
   COLORES PERSONALIZADOS
===================================== */

.color_amarillo{
    background-color: #f9f04b;
}

.color_gris{
    background-color: #706f6f;
}

.col .color-texto1{
    color: #c4c5c6;
}

/* =====================================
   GENERALES
===================================== */

img{
    background-color: transparent;
}

a{
    text-decoration: none;
    color: #706f6f;
}

.career-block-icon{
    width: 50px;
}

.career-block-icon-comun{
    display:inline-flex;
    align-items:center;
    justify-content:center;
    width:50px;
    height:50px;
    border:0;
    border-radius:50%;
    background:#9ea3a8;
    position:relative;
    flex:0 0 auto;
}

.career-block-icon-comun::before{
    content:"";
    width:26px;
    height:26px;
    border:4px solid #fff;
    border-right-color:transparent;
    border-radius:50%;
    transform:none;
}

.plan-card{
    border-radius: 10px;
    overflow: hidden;
}

.plan-card-header{
    font-size: 24pt;
}

.plan-card-body{
    background-color: #d8d8d8;
}

.semester-grid{
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 10px;
}

.semester-btn{
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-height: 52px;
    padding: 10px 12px;
    border-radius: 10px;
    border: 1px solid #d0d7de;
    background: #ffffff;
    color: #1f2937;
    font-weight: 600;
    transition: transform .18s ease, box-shadow .18s ease, background-color .18s ease;
}

.semester-btn:hover{
    transform: translateY(-1px);
    box-shadow: 0 4px 10px rgba(0,0,0,.12);
    color: #1f2937;
}

.semester-btn.is-disabled{
    background: #eceff3;
    color: #9aa4b2;
    border-color: #d8dee6;
    cursor: not-allowed;
    pointer-events: auto;
}

.semester-btn.is-disabled:hover{
    transform: none;
    box-shadow: none;
    color: #9aa4b2;
}

.semester-btn.is-pending{
    background: #ffffff;
    color: #1f2937;
    cursor: pointer;
    pointer-events: auto;
}

.semester-btn.is-pending:hover{
    transform: translateY(-1px);
    box-shadow: 0 4px 10px rgba(0,0,0,.12);
    color: #1f2937;
}

.semester-placeholder{
    min-height: 52px;
    border-radius: 10px;
    background: transparent;
    border: 1px solid transparent;
}

.plan-card-divider{
    height: 3px;
    background: rgba(0, 0, 0, 0.18);
    margin: 22px 0 18px;
    border-radius: 999px;
}

.listado-titulo{
    font-size: 34px;
    font-weight: 600;
    color: #004a98;
}

.listado-subtitulo{
    font-size: 16px;
    color: #475569;
    font-weight: 600;
}

.schedule-update-note{
    margin-top: 6px;
    font-size: 13px;
    line-height: 1.35;
    color: #315d86;
    font-weight: 700;
}

.listado-table{
    background: #fff;
    min-width: 1280px;
    border-collapse: separate;
    border-spacing: 0;
}

.listado-table th{
    position: sticky;
    top: 0;
    z-index: 20;
    white-space: nowrap;
    background: #eef3f8;
    font-weight: 700;
    box-shadow: 0 2px 0 rgba(0, 74, 152, .16);
}

.listado-table-wrap{
    overflow:visible;
    overflow-y:visible;
}

.listado-table td{
    font-size: 14px;
    vertical-align: top;
}

.listado-col-grupo{
    width: 118px;
}

.listado-col-dias{
    width: 82px;
}

.listado-col-horario{
    width: 122px;
}

.listado-cell-dias,
.listado-cell-horario{
    white-space: nowrap;
}

.listado-grupo-wrap{
    display:flex;
    flex-direction:column;
    align-items:flex-start;
    gap:6px;
}

.listado-cell-dias,
.listado-cell-horario{
    font-size: 13px;
}

.listado-saturado-badge,
.mapa-group-badge,
.cupo-badge{
    display: inline-flex;
    align-items: center;
    gap:5px;
    border-radius: 999px;
    padding: 3px 8px;
    font-size: 12px;
    font-weight: 700;
    line-height: 1;
    white-space: nowrap;
}

.cupo-dot{
    width:8px;
    height:8px;
    flex:0 0 auto;
    border-radius:50%;
    border:1px solid rgba(15,23,42,.25);
}

.cupo-verde{
    background:#dcfce7;
    color:#166534;
}

.cupo-verde .cupo-dot{
    background:#16a34a;
}

.cupo-amarillo{
    background:#fef3c7;
    color:#92400e;
}

.cupo-amarillo .cupo-dot{
    background:#f59e0b;
}

.cupo-rojo{
    background:#fee2e2;
    color:#991b1b;
}

.cupo-rojo .cupo-dot{
    background:#dc2626;
}

.cupo-negro,
.listado-saturado-badge,
.mapa-group-badge{
    background:#e5e7eb;
    color:#111827;
}

.cupo-negro .cupo-dot{
    background:#111827;
}

.cupo-blanco{
    background:#f8fafc;
    color:#475569;
    border:1px solid #cbd5e1;
}

.cupo-blanco .cupo-dot{
    background:#fff;
    border-color:#94a3b8;
}

.listado-table tr.row-saturado td{
    background: #e5e7eb;
    color: #5b6470;
}

.mapa-layout{
    display:grid;
    grid-template-columns:320px minmax(0, 1fr);
    gap:20px;
    align-items:start;
}

.mapa-toolbar{
    display:flex;
    align-items:center;
    gap:10px;
}

.mapa-toolbar-label{
    font-size:15px;
    font-weight:700;
    color:#334155;
    margin:0;
}

.mapa-toolbar-select{
    width:min(280px, 100%);
    border-radius:10px;
    border-color:#cbd5e1;
    box-shadow:none !important;
}

.mapa-side,
.mapa-main{
    background:#f8fafc;
    border:1px solid #dbe3ec;
    border-radius:12px;
    padding:16px;
}

.mapa-side-title{
    font-size:24px;
    margin:0 0 12px 0;
    color:#0f172a;
}

.mapa-group-list{
    display:flex;
    flex-direction:column;
    gap:10px;
    max-height:calc(100vh - 320px);
    overflow:auto;
    padding-right:4px;
}

.mapa-group-card{
    border:2px solid color-mix(in srgb, var(--subject-color) 85%, white 15%);
    background:color-mix(in srgb, var(--subject-color) 62%, white 38%);
    border-radius:10px;
    padding:10px 12px;
}

.mapa-group-card.is-saturated{
    background:#e5e7eb;
    border-color:#cbd5e1;
    color:#5b6470;
}

.mapa-group-name{
    font-size:15px;
    font-weight:700;
    line-height:1.2;
    margin-bottom:4px;
    color:#0f172a;
}

.mapa-group-card.is-saturated .mapa-group-name{
    color:#4b5563;
}

.mapa-group-meta{
    font-size:13px;
    line-height:1.35;
    color:#334155;
}

.mapa-group-card.is-saturated .mapa-group-meta{
    color:#6b7280;
}

.mapa-special-tags{
    display:flex;
    flex-wrap:wrap;
    gap:6px;
    margin-top:8px;
}

.mapa-special-tag{
    display:inline-flex;
    align-items:center;
    width:max-content;
    max-width:100%;
    border-radius:999px;
    padding:3px 8px;
    font-size:12px;
    font-weight:800;
    line-height:1.15;
}

.mapa-special-tag.tag-idioma{
    background:#dbeafe;
    color:#1e3a8a;
}

.mapa-special-tag.tag-modalidad{
    background:#f3e8ff;
    color:#6b21a8;
}

.mapa-group-badge{
    margin-top:8px;
    display:inline-flex;
    align-items:center;
    border-radius:999px;
    padding:3px 8px;
    background:#94a3b8;
    color:#fff;
    font-size:12px;
    font-weight:700;
}

.mapa-scroll{
    overflow:auto;
    border:1px solid #dbe3ec;
    border-radius:10px;
    background:#e5e7eb;
}

.mapa-grid{
    --mapa-top: 48px;
    position:relative;
    min-width:920px;
    height:calc(var(--mapa-top) + 15 * 78px);
    background:#fff;
}

.mapa-grid-header{
    position:sticky;
    top:0;
    z-index:3;
    display:grid;
    grid-template-columns:80px repeat(6, 1fr);
    height:48px;
    background:#f2f2f2;
    border-bottom:1px solid #d8dee6;
}

.mapa-grid-header div{
    display:flex;
    align-items:center;
    justify-content:center;
    font-weight:700;
    border-right:1px solid #d8dee6;
}

.mapa-grid-header div:first-child{
    justify-content:flex-start;
    padding-left:12px;
}

.mapa-hours{
    position:absolute;
    left:0;
    top:48px;
    bottom:0;
    width:80px;
    border-right:1px solid #d8dee6;
    background:#fff;
}

.mapa-hour{
    padding:8px 10px;
    font-size:14px;
    color:#475569;
    border-bottom:1px solid #e5e7eb;
}

.mapa-cols{
    position:absolute;
    left:80px;
    right:0;
    top:48px;
    bottom:0;
    display:grid;
    grid-template-columns:repeat(6, 1fr);
}

.mapa-col{
    position:relative;
    border-right:1px solid #d8dee6;
}

.mapa-slot{
    border-bottom:1px solid #e5e7eb;
}

.mapa-block{
    position:absolute;
    z-index:2;
    border:1px solid rgba(15, 23, 42, 0.14);
    border-radius:8px;
    padding:8px 10px;
    overflow:hidden;
    box-shadow:0 1px 2px rgba(0,0,0,.06);
}

.mapa-block.row-saturado{
    background:#e5e7eb !important;
    color:#5b6470;
    border-color:#cbd5e1;
}

.mapa-block-title{
    font-size:13px;
    font-weight:700;
    line-height:1.15;
    color:#111827;
}

.mapa-block.row-saturado .mapa-block-title{
    color:#4b5563;
}

.mapa-block-sub{
    margin-top:3px;
    font-size:12px;
    line-height:1.15;
    color:#334155;
}

.mapa-block.row-saturado .mapa-block-sub{
    color:#6b7280;
}

.mapa-empty{
    padding:20px;
    border:1px dashed #cbd5e1;
    border-radius:10px;
    background:#fff;
    color:#64748b;
    text-align:center;
    font-weight:600;
}

@media (max-width: 991px){
    .mapa-layout{
        grid-template-columns:1fr;
    }

    .mapa-group-list{
        max-height:none;
    }
}

@media (max-width: 767px){
    header .container,
    main.container{
        max-width:100%;
    }

    main.container{
        padding-left:12px;
        padding-right:12px;
    }

    .navbar-personalizado{
        font-size:18px;
    }

    .listado-titulo{
        font-size:26px;
        line-height:1.1;
    }

    .listado-subtitulo{
        font-size:14px;
        line-height:1.25;
    }

    main.container > .d-flex:first-child{
        align-items:flex-start !important;
    }

    main.container > .d-flex:first-child > div:first-child{
        min-width:0;
        flex:1 1 100%;
    }

    main.container > .d-flex:first-child .btn{
        width:100%;
    }

    main.container > .d-flex:first-child > .d-flex{
        width:100%;
    }

    .alert{
        font-size:14px;
        line-height:1.3;
        padding:10px 12px;
    }

    .mapa-toolbar{
        align-items:stretch;
        flex-direction:column;
        gap:6px;
    }

    .mapa-toolbar-select{
        width:100%;
    }

    .table-responsive{
        overflow:visible;
    }

    .listado-table{
        min-width:0;
        border:0;
        background:transparent;
    }

    .listado-table colgroup,
    .listado-table thead{
        display:none;
    }

    .listado-table,
    .listado-table tbody,
    .listado-table tr,
    .listado-table td{
        display:block;
        width:100%;
    }

    .listado-table tbody{
        display:flex;
        flex-direction:column;
        gap:12px;
    }

    .listado-table tr{
        border:1px solid #dbe3ec;
        border-radius:10px;
        overflow:hidden;
        background:#fff;
        box-shadow:0 2px 7px rgba(15,23,42,.08);
    }

    .listado-table tr.row-saturado{
        background:#e5e7eb;
    }

    .listado-table td{
        display:grid;
        grid-template-columns:minmax(96px, 34%) minmax(0, 1fr);
        gap:10px;
        border:0;
        border-bottom:1px solid #edf1f5;
        padding:9px 11px;
        font-size:13px;
        line-height:1.25;
        word-break:break-word;
    }

    .listado-table td:last-child{
        border-bottom:0;
    }

    .listado-table td::before{
        content:attr(data-label);
        color:#475569;
        font-weight:700;
    }

    .listado-cell-grupo{
        display:grid;
        grid-template-columns:minmax(96px, 34%) minmax(0, 1fr);
        align-items:start;
        white-space:normal;
    }

    .listado-cell-grupo::before{
        grid-column:1;
        grid-row:1 / span 2;
    }

    .listado-cell-grupo .listado-grupo-wrap{
        grid-column:2;
    }

    .listado-cell-dias,
    .listado-cell-horario{
        white-space:normal;
        font-size:13px;
    }

    .cupo-badge{
        width:max-content;
        max-width:100%;
        margin-top:5px;
    }

    .mapa-layout{
        gap:12px;
    }

    .mapa-side,
    .mapa-main{
        border-radius:10px;
        padding:12px;
    }

    .mapa-side-title{
        font-size:20px;
    }

    .mapa-group-list{
        display:grid;
        grid-template-columns:1fr;
        max-height:none;
        overflow:visible;
        padding-right:0;
    }

    .mapa-group-card{
        padding:9px 10px;
    }

    .mapa-group-name{
        font-size:14px;
    }

    .mapa-group-meta{
        font-size:12px;
    }

    .mapa-main{
        min-width:0;
    }

    .mapa-scroll{
        width:100%;
        max-width:100%;
        overflow-x:auto;
        overflow-y:hidden;
        -webkit-overflow-scrolling:touch;
        border-radius:8px;
    }

    .mapa-scroll::after{
        content:"Desliza para ver todos los dias";
        position:sticky;
        left:0;
        bottom:0;
        display:block;
        padding:7px 10px;
        background:#f8fafc;
        border-top:1px solid #dbe3ec;
        color:#475569;
        font-size:12px;
        font-weight:700;
    }

    .mapa-grid{
        min-width:840px;
    }

    .mapa-grid-header div{
        font-size:13px;
    }

    .mapa-hour{
        font-size:12px;
    }

    .mapa-block{
        padding:6px 7px;
        border-radius:7px;
    }

    .mapa-block-title{
        font-size:11px;
    }

    .mapa-block-sub{
        font-size:10px;
    }
}
