.elementor-15447 .elementor-element.elementor-element-df96861{--display:flex;--overlay-opacity:1;--margin-top:-20px;--margin-bottom:0px;--margin-left:0px;--margin-right:0px;--padding-top:0px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}.elementor-15447 .elementor-element.elementor-element-df96861::before, .elementor-15447 .elementor-element.elementor-element-df96861 > .elementor-background-video-container::before, .elementor-15447 .elementor-element.elementor-element-df96861 > .e-con-inner > .elementor-background-video-container::before, .elementor-15447 .elementor-element.elementor-element-df96861 > .elementor-background-slideshow::before, .elementor-15447 .elementor-element.elementor-element-df96861 > .e-con-inner > .elementor-background-slideshow::before, .elementor-15447 .elementor-element.elementor-element-df96861 > .elementor-motion-effects-container > .elementor-motion-effects-layer::before{--background-overlay:'';}.elementor-15447 .elementor-element.elementor-element-ad9d686{--display:flex;--justify-content:space-evenly;--gap:20px 20px;--row-gap:20px;--column-gap:20px;--overlay-opacity:0.5;--border-radius:25px 25px 25px 25px;--margin-top:0px;--margin-bottom:05px;--margin-left:20px;--margin-right:0px;--padding-top:0px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}.elementor-15447 .elementor-element.elementor-element-ad9d686::before, .elementor-15447 .elementor-element.elementor-element-ad9d686 > .elementor-background-video-container::before, .elementor-15447 .elementor-element.elementor-element-ad9d686 > .e-con-inner > .elementor-background-video-container::before, .elementor-15447 .elementor-element.elementor-element-ad9d686 > .elementor-background-slideshow::before, .elementor-15447 .elementor-element.elementor-element-ad9d686 > .e-con-inner > .elementor-background-slideshow::before, .elementor-15447 .elementor-element.elementor-element-ad9d686 > .elementor-motion-effects-container > .elementor-motion-effects-layer::before{--background-overlay:'';}.elementor-15447 .elementor-element.elementor-element-ad9d686.e-con{--flex-grow:0;--flex-shrink:0;}.elementor-15447 .elementor-element.elementor-element-dfc793d{margin:-120px 0px calc(var(--kit-widget-spacing, 0px) + 0px) 0px;padding:0px 0px 0px 0px;}.elementor-15447 .elementor-element.elementor-element-dfc793d img{width:20%;}.elementor-15447 .elementor-element.elementor-element-7f6ce8d{padding:0px 20px 0px 20px;}.elementor-15447 .elementor-element.elementor-element-5719862{width:var( --container-widget-width, 100% );max-width:100%;--container-widget-width:100%;--container-widget-flex-grow:0;}.elementor-15447 .elementor-element.elementor-element-5719862.elementor-element{--flex-grow:0;--flex-shrink:0;}.elementor-15447 .elementor-element.elementor-element-afcf150{width:100%;max-width:100%;margin:0px 0px calc(var(--kit-widget-spacing, 0px) + 0px) 0px;padding:0px 0px 0px 0px;}.elementor-15447 .elementor-element.elementor-element-43f13ca{--display:flex;--flex-direction:column;--container-widget-width:100%;--container-widget-height:initial;--container-widget-flex-grow:0;--container-widget-align-self:initial;--flex-wrap-mobile:wrap;}.elementor-15447 .elementor-element.elementor-element-8564dee .eael-event-calendar-table{background-color:#000000;}.elementor-15447 .elementor-element.elementor-element-8564dee .eael-event-calendar-table tbody tr:nth-child(even) td{background-color:#DADADA;color:#000000;}.elementor-15447 .elementor-element.elementor-element-8564dee .eael-event-calendar-table tbody tr:nth-child(odd) td{background-color:#FFFFFF;color:#000000;}.elementor-15447 .elementor-element.elementor-element-8564dee .ea-ec-search-wrap{text-align:right;}.elementor-15447 .elementor-element.elementor-element-8564dee .eael-event-calendar-pagination{text-align:left;}.elementor-15447 .elementor-element.elementor-element-8564dee .ea-ec-search-wrap input{width:200px;font-family:"Baloo 2", Sans-serif;}.elementor-15447 .elementor-element.elementor-element-8564dee .eael-event-calendar-table thead tr th{font-family:"Baloo 2", Sans-serif;color:#FFFFFF;}.elementor-15447 .elementor-element.elementor-element-8564dee .eael-event-calendar-table thead tr th a{color:#FFFFFF;}.elementor-15447 .elementor-element.elementor-element-8564dee .eael-event-calendar-table tbody tr td{font-family:"Baloo 2", Sans-serif;text-transform:uppercase;}.elementor-15447 .elementor-element.elementor-element-8564dee .eael-event-calendar-table tbody tr:nth-child(even) td a{color:#000000;}.elementor-15447 .elementor-element.elementor-element-8564dee .eael-event-calendar-table tbody tr:nth-child(odd) td a{color:#000000;}.elementor-15447 .elementor-element.elementor-element-8564dee .eael-event-calendar-table tbody tr td .eael-see-more{color:#FF7676;}.elementor-15447 .elementor-element.elementor-element-8564dee .eael-event-calendar-pagination a{color:#000000;}.elementor-15447 .elementor-element.elementor-element-8564dee .eael-event-calendar-pagination span{color:#000000;}.eael-reading-progress-wrap .eael-reading-progress .eael-reading-progress-fill{background-color:#FF0000;}@media(min-width:768px){.elementor-15447 .elementor-element.elementor-element-df96861{--content-width:1300px;}.elementor-15447 .elementor-element.elementor-element-ad9d686{--width:97%;}}@media(max-width:1366px) and (min-width:768px){.elementor-15447 .elementor-element.elementor-element-df96861{--content-width:1000px;}}@media(max-width:1366px){.elementor-15447 .elementor-element.elementor-element-df96861{--overlay-opacity:1;--margin-top:-20px;--margin-bottom:0px;--margin-left:0px;--margin-right:0px;--padding-top:0px;--padding-bottom:0px;--padding-left:40px;--padding-right:40px;}.elementor-15447 .elementor-element.elementor-element-dfc793d{margin:-100px 0px calc(var(--kit-widget-spacing, 0px) + 20px) 0px;padding:0px 0px 0px 0px;}.elementor-15447 .elementor-element.elementor-element-7f6ce8d{padding:0px 20px 0px 20px;}}@media(max-width:1200px){.elementor-15447 .elementor-element.elementor-element-df96861{--padding-top:160px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}.elementor-15447 .elementor-element.elementor-element-7f6ce8d{padding:0px 20px 0px 20px;}}@media(max-width:1024px){.elementor-15447 .elementor-element.elementor-element-df96861{--padding-top:100px;--padding-bottom:0px;--padding-left:20px;--padding-right:20px;}.elementor-15447 .elementor-element.elementor-element-7f6ce8d{padding:0px 20px 0px 20px;}}@media(max-width:880px){.elementor-15447 .elementor-element.elementor-element-df96861{--margin-top:-100px;--margin-bottom:0px;--margin-left:0px;--margin-right:0px;--padding-top:0px;--padding-bottom:0px;--padding-left:20px;--padding-right:20px;}.elementor-15447 .elementor-element.elementor-element-7f6ce8d{padding:0px 20px 0px 20px;}}@media(max-width:767px){.elementor-15447 .elementor-element.elementor-element-df96861::before, .elementor-15447 .elementor-element.elementor-element-df96861 > .elementor-background-video-container::before, .elementor-15447 .elementor-element.elementor-element-df96861 > .e-con-inner > .elementor-background-video-container::before, .elementor-15447 .elementor-element.elementor-element-df96861 > .elementor-background-slideshow::before, .elementor-15447 .elementor-element.elementor-element-df96861 > .e-con-inner > .elementor-background-slideshow::before, .elementor-15447 .elementor-element.elementor-element-df96861 > .elementor-motion-effects-container > .elementor-motion-effects-layer::before{background-image:url("https://botafocs.org/wp-content/uploads/2026/02/IMG_1357.jpg");background-position:top center;background-size:auto;}.elementor-15447 .elementor-element.elementor-element-df96861{--content-width:600px;--overlay-opacity:0;--margin-top:-165px;--margin-bottom:0px;--margin-left:0px;--margin-right:0px;--padding-top:0px;--padding-bottom:20px;--padding-left:10px;--padding-right:10px;}.elementor-15447 .elementor-element.elementor-element-ad9d686{--margin-top:0px;--margin-bottom:20px;--margin-left:0px;--margin-right:0px;--padding-top:0px;--padding-bottom:0px;--padding-left:20px;--padding-right:20px;}.elementor-15447 .elementor-element.elementor-element-7f6ce8d{padding:0px 20px 0px 20px;}}/* Start custom CSS for html, class: .elementor-element-9c2ee56 *//*==================================================
=            ETIQUETES BOTAFOCS
==================================================*/

.badge-botafocs{
    padding:2px 10px;
    border-radius:12px;
    font-size:10px;
    font-weight:700;
    text-transform:uppercase;
    margin-left:10px;
    margin-right:20px;
    display:inline-block;
    vertical-align:middle;
    line-height:1.2;
    white-space:nowrap;
    font-family:-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,Helvetica,Arial,sans-serif;
}

/* COMPLETA */
.badge-completa{
    background:#dcfce7;
    color:#166534;
    border:1px solid #166534;
}

/* PROPERA */
.badge-propera{
    background:#ffedd5;
    color:#ea580c;
    border:1px solid #ea580c;
    box-shadow:0 0 10px rgba(234,88,12,.35);
}

/* PENDENT */
.badge-pendent{
    background:#eff6ff;
    color:#3b82f6;
    border:1px solid #3b82f6;
}

/* PREVISIÓ */
.badge-previsio{
    background:#f0f9ff;
    color:#0ea5e9;
    border:1px solid #0ea5e9;
}

/* SUSPESA */
.badge-suspesa{
    background:#fef2f2;
    color:#ef4444;
    border:1px solid #ef4444;
}

.badge-ajornada{
    background:#fef9c3;
    color:#ca8a04;
    border:1px solid #ca8a04;
}/* End custom CSS */
/* Start custom CSS for html, class: .elementor-element-54e5ecb */.btn-calendar{
    background:rgba(255,255,255,0.08);
    color:#fff;
    border:1px solid rgba(255,255,255,0.15);
    border-radius:20px;
    padding:4px 10px;
    font-size:11px;
    font-weight:500;
    cursor:pointer;
    backdrop-filter:blur(6px);
}

.calendar-wrapper{
    position:absolute;
    bottom:8px;
    right:10px;
}

.calendar-dropdown{
    min-width:140px;
    font-size:12px;
}

/* SOLO EN MÓVILES */
@media (max-width:767px){

    .calendar-wrapper{
        top:10px;
        right:10px;
        bottom:auto;
    }

}/* End custom CSS */
/* Start custom CSS for html, class: .elementor-element-14fb477 *//* ==================================================
   LIVE INDICATOR
================================================== */

.live-indicator{

    position:absolute !important;

    top:14px !important;
    right:18px !important;

    width:14px !important;
    height:14px !important;

    background:#ff1a1a !important;
    border-radius:50% !important;

    z-index:9999 !important;

    pointer-events:none !important;

    box-shadow:0 0 0 rgba(255,0,0,.7);

    animation:livePulse 1.6s infinite;

}

@keyframes livePulse{

    0%{
        transform:scale(1);
        box-shadow:0 0 0 0 rgba(255,0,0,.7);
    }

    70%{
        transform:scale(1.15);
        box-shadow:0 0 0 10px rgba(255,0,0,0);
    }

    100%{
        transform:scale(1);
        box-shadow:0 0 0 0 rgba(255,0,0,0);
    }

}

@media (max-width:1024px){

    .live-indicator{

        top:auto !important;
        bottom:18px !important;
        right:18px !important;

    }

}/* End custom CSS */
/* Start custom CSS for shortcode, class: .elementor-element-c0daeaf */.elementor-15447 .elementor-element.elementor-element-c0daeaf tbody tr:hover {
    transform: scale(1.05);
    transition: transform 0.3s ease;
    z-index: 1;
}/* End custom CSS */
/* Start custom CSS for shortcode, class: .elementor-element-202c7ec */.elementor-15447 .elementor-element.elementor-element-202c7ec tbody tr:hover {
    transform: scale(1.05);
    transition: transform 0.3s ease;
    z-index: 1;
}/* End custom CSS */
/* Start custom CSS for shortcode, class: .elementor-element-79b46dc */.elementor-15447 .elementor-element.elementor-element-79b46dc tbody tr:hover {
    transform: scale(1.05);
    transition: transform 0.3s ease;
    z-index: 1;
}/* End custom CSS */
/* Start custom CSS for shortcode, class: .elementor-element-1cf412a */.elementor-15447 .elementor-element.elementor-element-1cf412a tbody tr:hover {
    transform: scale(1.05);
    transition: transform 0.3s ease;
    z-index: 1;
}/* End custom CSS */
/* Start custom CSS for shortcode, class: .elementor-element-2a580e6 */.elementor-15447 .elementor-element.elementor-element-2a580e6 tbody tr:hover {
    transform: scale(1.05);
    transition: transform 0.3s ease;
    z-index: 1;
}/* End custom CSS */
/* Start custom CSS for shortcode, class: .elementor-element-cb6f038 */.elementor-15447 .elementor-element.elementor-element-cb6f038 tbody tr:hover {
    transform: scale(1.05);
    transition: transform 0.3s ease;
    z-index: 1;
}/* End custom CSS */
/* Start custom CSS for shortcode, class: .elementor-element-7d2034e */.elementor-15447 .elementor-element.elementor-element-7d2034e tbody tr:hover {
    transform: scale(1.05);
    transition: transform 0.3s ease;
    z-index: 1;
}/* End custom CSS */
/* Start custom CSS for shortcode, class: .elementor-element-2b51d20 */.elementor-15447 .elementor-element.elementor-element-2b51d20 tbody tr:hover {
    transform: scale(1.05);
    transition: transform 0.3s ease;
    z-index: 1;
}/* End custom CSS */
/* Start custom CSS for shortcode, class: .elementor-element-3644162 */.elementor-15447 .elementor-element.elementor-element-3644162 tbody tr:hover {
    transform: scale(1.05);
    transition: transform 0.3s ease;
    z-index: 1;
}/* End custom CSS */
/* Start custom CSS for shortcode, class: .elementor-element-89f2beb */.elementor-15447 .elementor-element.elementor-element-89f2beb tbody tr:hover {
    transform: scale(1.05);
    transition: transform 0.3s ease;
    z-index: 1;
}/* End custom CSS */
/* Start custom CSS for shortcode, class: .elementor-element-2e0b339 */.elementor-15447 .elementor-element.elementor-element-2e0b339 tbody tr:hover {
    transform: scale(1.05);
    transition: transform 0.3s ease;
    z-index: 1;
}/* End custom CSS */
/* Start custom CSS for shortcode, class: .elementor-element-f0b7d4e */.elementor-15447 .elementor-element.elementor-element-f0b7d4e tbody tr:hover {
    transform: scale(1.05);
    transition: transform 0.3s ease;
    z-index: 1;
}/* End custom CSS */
/* Start custom CSS for shortcode, class: .elementor-element-1fae85d */.elementor-15447 .elementor-element.elementor-element-1fae85d tbody tr:hover {
    transform: scale(1.05);
    transition: transform 0.3s ease;
    z-index: 1;
}/* End custom CSS */
/* Start custom CSS for shortcode, class: .elementor-element-9168303 */.elementor-15447 .elementor-element.elementor-element-9168303 tbody tr:hover {
    transform: scale(1.05);
    transition: transform 0.3s ease;
    z-index: 1;
}/* End custom CSS */
/* Start custom CSS for shortcode, class: .elementor-element-aee14b4 */.elementor-15447 .elementor-element.elementor-element-aee14b4 tbody tr:hover {
    transform: scale(1.05);
    transition: transform 0.3s ease;
    z-index: 1;
}/* End custom CSS */
/* Start custom CSS for shortcode, class: .elementor-element-4a65cea */.elementor-15447 .elementor-element.elementor-element-4a65cea tbody tr:hover {
    transform: scale(1.05);
    transition: transform 0.3s ease;
    z-index: 1;
}/* End custom CSS */
/* Start custom CSS for shortcode, class: .elementor-element-051d09c */.elementor-15447 .elementor-element.elementor-element-051d09c tbody tr:hover {
    transform: scale(1.05);
    transition: transform 0.3s ease;
    z-index: 1;
}/* End custom CSS */
/* Start custom CSS for shortcode, class: .elementor-element-0213ba7 */.elementor-15447 .elementor-element.elementor-element-0213ba7 tbody tr:hover {
    transform: scale(1.05);
    transition: transform 0.3s ease;
    z-index: 1;
}/* End custom CSS */
/* Start custom CSS for shortcode, class: .elementor-element-355baa8 */.elementor-15447 .elementor-element.elementor-element-355baa8 tbody tr:hover {
    transform: scale(1.05);
    transition: transform 0.3s ease;
    z-index: 1;
}/* End custom CSS */
/* Start custom CSS for shortcode, class: .elementor-element-907c642 */.elementor-15447 .elementor-element.elementor-element-907c642 tbody tr:hover {
    transform: scale(1.05);
    transition: transform 0.3s ease;
    z-index: 1;
}/* End custom CSS */
/* Start custom CSS for shortcode, class: .elementor-element-73e137c */.elementor-15447 .elementor-element.elementor-element-73e137c tbody tr:hover {
    transform: scale(1.05);
    transition: transform 0.3s ease;
    z-index: 1;
}/* End custom CSS */
/* Start custom CSS for shortcode, class: .elementor-element-a6492ae */.elementor-15447 .elementor-element.elementor-element-a6492ae tbody tr:hover {
    transform: scale(1.05);
    transition: transform 0.3s ease;
    z-index: 1;
}/* End custom CSS */
/* Start custom CSS for shortcode, class: .elementor-element-b9f2690 */.elementor-15447 .elementor-element.elementor-element-b9f2690 tbody tr:hover {
    transform: scale(1.05);
    transition: transform 0.3s ease;
    z-index: 1;
}/* End custom CSS */
/* Start custom CSS for shortcode, class: .elementor-element-37d1c9d */.elementor-15447 .elementor-element.elementor-element-37d1c9d tbody tr:hover {
    transform: scale(1.05);
    transition: transform 0.3s ease;
    z-index: 1;
}/* End custom CSS */
/* Start custom CSS for shortcode, class: .elementor-element-5719862 */.elementor-15447 .elementor-element.elementor-element-5719862 tbody tr:hover {
    transform: scale(1.05);
    transition: transform 0.3s ease;
    z-index: 1;
}/* End custom CSS */
/* Start custom CSS for shortcode, class: .elementor-element-14d4b55 */.elementor-15447 .elementor-element.elementor-element-14d4b55 tbody tr:hover {
    transform: scale(1.05);
    transition: transform 0.3s ease;
    z-index: 1;
}/* End custom CSS */
/* Start custom CSS for shortcode, class: .elementor-element-433e898 */.elementor-15447 .elementor-element.elementor-element-433e898 tbody tr:hover {
    transform: scale(1.05);
    transition: transform 0.3s ease;
    z-index: 1;
}/* End custom CSS */
/* Start custom CSS for shortcode, class: .elementor-element-18efe58 */.elementor-15447 .elementor-element.elementor-element-18efe58 tbody tr:hover {
    transform: scale(1.05);
    transition: transform 0.3s ease;
    z-index: 1;
}/* End custom CSS */
/* Start custom CSS for shortcode, class: .elementor-element-15fff6f */.elementor-15447 .elementor-element.elementor-element-15fff6f tbody tr:hover {
    transform: scale(1.05);
    transition: transform 0.3s ease;
    z-index: 1;
}/* End custom CSS */
/* Start custom CSS for shortcode, class: .elementor-element-957fc49 */.elementor-15447 .elementor-element.elementor-element-957fc49 tbody tr:hover {
    transform: scale(1.05);
    transition: transform 0.3s ease;
    z-index: 1;
}/* End custom CSS */
/* Start custom CSS for shortcode, class: .elementor-element-804f04a */.elementor-15447 .elementor-element.elementor-element-804f04a tbody tr:hover {
    transform: scale(1.05);
    transition: transform 0.3s ease;
    z-index: 1;
}/* End custom CSS */
/* Start custom CSS for shortcode, class: .elementor-element-827c12d */.elementor-15447 .elementor-element.elementor-element-827c12d tbody tr:hover {
    transform: scale(1.05);
    transition: transform 0.3s ease;
    z-index: 1;
}/* End custom CSS */
/* Start custom CSS for shortcode, class: .elementor-element-17c3465 */.elementor-15447 .elementor-element.elementor-element-17c3465 tbody tr:hover {
    transform: scale(1.05);
    transition: transform 0.3s ease;
    z-index: 1;
}/* End custom CSS */
/* Start custom CSS for shortcode, class: .elementor-element-c9d307c */.elementor-15447 .elementor-element.elementor-element-c9d307c tbody tr:hover {
    transform: scale(1.05);
    transition: transform 0.3s ease;
    z-index: 1;
}/* End custom CSS */
/* Start custom CSS for shortcode, class: .elementor-element-652b97f */.elementor-15447 .elementor-element.elementor-element-652b97f tbody tr:hover {
    transform: scale(1.05);
    transition: transform 0.3s ease;
    z-index: 1;
}/* End custom CSS */
/* Start custom CSS for shortcode, class: .elementor-element-afcf150 */.elementor-15447 .elementor-element.elementor-element-afcf150 tbody tr:hover {
    transform: scale(1.05);
    transition: transform 0.3s ease;
    z-index: 1;
}/* End custom CSS */
/* Start custom CSS for container, class: .elementor-element-df96861 *//* ==============================================================
   BOTAFOCS — AGENDA LISTADO
   Diseño final
================================================================ */


/* ==============================================================
   FUENTES
================================================================ */

@import url(
    'https://fonts.googleapis.com/css2?family=Inter:wght@400;500;600;700;800;900&family=Oswald:wght@600;700&display=swap'
);


/* ==============================================================
   COLORES
================================================================ */

:root{

    --color-propera:#FF9F0A;

    --color-pendent:#3B82F6;

    --color-completa:#22C55E;

    --color-suspesa:#EF4444;

    --color-ajornada:#FFD60A;

    --color-card:#1A1A1A;

    --color-card-hover:#202020;

    --color-text:#FFFFFF;

    --color-secundari:#AFAFAF;

}


/* ==============================================================
   TABLA
================================================================ */

.elementor-shortcode table{

    width:100% !important;

    margin:0 !important;

    padding:0 !important;

    border:none !important;

    border-collapse:separate !important;

    border-spacing:0 20px !important;

    background:transparent !important;

    table-layout:fixed !important;

}


/* Ocultar cabecera */

.elementor-shortcode table thead{

    display:none !important;

}


/* Cuerpo */

.elementor-shortcode table tbody{

    width:100% !important;

    margin:0 !important;

    padding:0 !important;

    border:none !important;

    background:transparent !important;

    display:table-row-group !important;

    font-family:'Inter',sans-serif !important;

}


/* ==============================================================
   TARJETAS
================================================================ */

.elementor-shortcode table tbody tr{

    position:relative !important;

    display:grid !important;

    /*
     * FECHA | CONTENIDO
     */
    grid-template-columns:
        160px
        minmax(0,1fr) !important;

    grid-template-rows:
        auto
        auto !important;

    width:100% !important;

    min-height:165px !important;

    margin:0 !important;

    padding:0 !important;

    box-sizing:border-box !important;

    background:var(--color-card) !important;

    border:1px solid rgba(255,255,255,.07) !important;

    /*
     * ELIMINADO EL REDONDEADO
     */
    border-radius:0 !important;

    border-left-width:6px !important;

    border-left-style:solid !important;

    border-left-color:#3B82F6 !important;

    overflow:visible !important;

    transition:

        transform .25s ease,

        background .25s ease,

        box-shadow .25s ease,

        opacity .25s ease !important;

}


/* ==============================================================
   COLOR DE FONDO SEGÚN ESTADO
================================================================ */


/* PROPERA */

.elementor-shortcode table tbody tr.fila-propera-destacada{

    background:

        linear-gradient(
            90deg,
            rgba(255,159,10,.10) 0%,
            rgba(255,159,10,.035) 32%,
            var(--color-card) 72%
        ) !important;

}


/* PENDENT */

.elementor-shortcode table tbody tr.fila-pendent{

    background:

        linear-gradient(
            90deg,
            rgba(59,130,246,.075) 0%,
            rgba(59,130,246,.025) 32%,
            var(--color-card) 72%
        ) !important;

}


/* COMPLETA */

.elementor-shortcode table tbody tr.fila-completa{

    background:

        linear-gradient(
            90deg,
            rgba(34,197,94,.055) 0%,
            rgba(34,197,94,.018) 32%,
            var(--color-card) 72%
        ) !important;

    opacity:.80 !important;

}


/* SUSPESA */

.elementor-shortcode table tbody tr:has(.activity-suspesa){

    background:

        linear-gradient(
            90deg,
            rgba(239,68,68,.075) 0%,
            rgba(239,68,68,.025) 32%,
            var(--color-card) 72%
        ) !important;

    opacity:.80 !important;

}


/* AJORNADA */

.elementor-shortcode table tbody tr:has(.activity-ajornada){

    background:

        linear-gradient(
            90deg,
            rgba(255,214,10,.075) 0%,
            rgba(255,214,10,.025) 32%,
            var(--color-card) 72%
        ) !important;

    opacity:.80 !important;

}


/* ==============================================================
   HOVER
================================================================ */

.elementor-shortcode table tbody tr:hover{

    transform:translateY(-3px) !important;

    filter:brightness(1.05) !important;

    box-shadow:
        0 18px 42px rgba(0,0,0,.30) !important;

}


.elementor-shortcode table tbody tr.fila-completa:hover,
.elementor-shortcode table tbody tr:has(.activity-suspesa):hover,
.elementor-shortcode table tbody tr:has(.activity-ajornada):hover{

    opacity:1 !important;

}


/* ==============================================================
   CELDAS
================================================================ */

.elementor-shortcode table tbody td{

    display:block !important;

    min-width:0 !important;

    margin:0 !important;

    border:none !important;

    background:transparent !important;

    padding:0 !important;

    box-sizing:border-box !important;

}


/* ==============================================================
   FECHA
================================================================ */

.elementor-shortcode table tbody td:nth-child(1){

    grid-column:1 !important;

    grid-row:1 / span 2 !important;

    display:flex !important;

    align-items:center !important;

    justify-content:center !important;

    width:100% !important;

    min-height:165px !important;

    padding:18px 18px !important;

    text-align:center !important;

    border-right:
        1px solid rgba(255,255,255,.09) !important;

}


/* Contenedor */

.elementor-shortcode table tbody td:nth-child(1) .date-box{

    display:flex !important;

    flex-direction:column !important;

    align-items:center !important;

    justify-content:center !important;

    width:100% !important;

    line-height:1 !important;

}


/* ==============================================================
   DÍA
================================================================ */

.elementor-shortcode table tbody td:nth-child(1) .date-day{

    display:block !important;

    font-family:'Oswald',sans-serif !important;

    font-size:62px !important;

    font-weight:700 !important;

    line-height:.86 !important;

    letter-spacing:-1.5px !important;

    color:var(--agenda-state-color,#3B82F6) !important;

}


/* ==============================================================
   MES
================================================================ */

.elementor-shortcode table tbody td:nth-child(1) .date-month{

    display:block !important;

    margin-top:9px !important;

    font-family:'Inter',sans-serif !important;

    font-size:13px !important;

    font-weight:900 !important;

    line-height:1 !important;

    letter-spacing:1.3px !important;

    text-transform:uppercase !important;

    color:var(--agenda-state-color,#3B82F6) !important;

}


/* ==============================================================
   AÑO
================================================================ */

.elementor-shortcode table tbody td:nth-child(1) .date-year{

    display:block !important;

    margin-top:7px !important;

    font-family:'Inter',sans-serif !important;

    font-size:13px !important;

    font-weight:600 !important;

    line-height:1 !important;

    letter-spacing:.5px !important;

    color:#FFFFFF !important;

}


/* ==============================================================
   TÍTULO + BADGE
================================================================ */

.elementor-shortcode table tbody td:nth-child(2){

    grid-column:2 !important;

    grid-row:1 !important;

    display:flex !important;

    flex-direction:column !important;

    align-items:flex-start !important;

    justify-content:flex-end !important;

    min-width:0 !important;

    padding:
        28px 32px 8px !important;

    font-family:'Inter',sans-serif !important;

    color:#FFFFFF !important;

}


/* ==============================================================
   BADGE
================================================================ */

.elementor-shortcode .badge-botafocs{

    position:static !important;

    display:inline-flex !important;

    align-items:center !important;

    justify-content:center !important;

    align-self:flex-start !important;

    width:auto !important;

    margin:0 0 10px 0 !important;

    padding:5px 9px !important;

    border-radius:3px !important;

    font-family:'Inter',sans-serif !important;

    font-size:10px !important;

    font-weight:900 !important;

    line-height:1 !important;

    letter-spacing:1px !important;

    text-transform:uppercase !important;

}


/* PROPERA */

.elementor-shortcode .badge-propera{

    color:var(--color-propera) !important;

    background:rgba(255,159,10,.13) !important;

    border:1px solid rgba(255,159,10,.22) !important;

}


/* PENDENT */

.elementor-shortcode .badge-pendent{

    color:var(--color-pendent) !important;

    background:rgba(59,130,246,.13) !important;

    border:1px solid rgba(59,130,246,.22) !important;

}


/* COMPLETA */

.elementor-shortcode .badge-completa{

    color:var(--color-completa) !important;

    background:rgba(34,197,94,.13) !important;

    border:1px solid rgba(34,197,94,.22) !important;

}


/* SUSPESA */

.elementor-shortcode .badge-suspesa{

    color:var(--color-suspesa) !important;

    background:rgba(239,68,68,.13) !important;

    border:1px solid rgba(239,68,68,.22) !important;

}


/* AJORNADA */

.elementor-shortcode .badge-ajornada{

    color:var(--color-ajornada) !important;

    background:rgba(255,214,10,.13) !important;

    border:1px solid rgba(255,214,10,.22) !important;

}


/* ==============================================================
   TÍTULO
================================================================ */

.elementor-shortcode table tbody td:nth-child(2) p{

    margin:0 !important;

    padding:0 !important;

    font-size:23px !important;

    line-height:1.22 !important;

    font-weight:900 !important;

    letter-spacing:-.2px !important;

    text-transform:uppercase !important;

    color:#FFFFFF !important;

}


/* ==============================================================
   ENLACES DE LOS TÍTULOS
================================================================= */

.elementor-shortcode table tbody td:nth-child(2) a{

    color:#FFFFFF !important;

    text-decoration:none !important;

    transition:
        color .18s ease !important;

}


/*
 * Cuando el cursor está sobre un título que es enlace,
 * se vuelve amarillo.
 */

.elementor-shortcode table tbody tr:hover td:nth-child(2) a:hover{

    color:#FFD60A !important;

}


/*
 * Por si Elementor mete <span>, <strong>, etc.
 * dentro del enlace.
 */

.elementor-shortcode table tbody tr:hover td:nth-child(2) a:hover,
.elementor-shortcode table tbody tr:hover td:nth-child(2) a:hover span,
.elementor-shortcode table tbody tr:hover td:nth-child(2) a:hover strong{

    color:#FFD60A !important;

}


/* ==============================================================
   UBICACIÓN
================================================================ */

.elementor-shortcode table tbody td:nth-child(3){

    grid-column:2 !important;

    grid-row:2 !important;

    display:flex !important;

    align-items:flex-start !important;

    min-width:0 !important;

    padding:
        4px 32px 27px !important;

    font-family:'Inter',sans-serif !important;

    font-size:14px !important;

    line-height:1.35 !important;

    font-weight:600 !important;

    letter-spacing:.2px !important;

    text-transform:uppercase !important;

    color:var(--color-secundari) !important;

    border:none !important;

}


/* Clase específica de ubicación */

.elementor-shortcode .activity-location{

    display:block !important;

    width:100% !important;

    margin:0 !important;

    padding:0 !important;

    color:var(--color-secundari) !important;

    font-size:inherit !important;

    line-height:inherit !important;

}


/* P */

.elementor-shortcode table tbody td:nth-child(3) p{

    margin:0 !important;

    padding:0 !important;

    color:inherit !important;

}


/* Ocultar iconos antiguos */

.elementor-shortcode table tbody td:nth-child(3) img,
.elementor-shortcode table tbody td:nth-child(3) i,
.elementor-shortcode table tbody td:nth-child(3) svg,
.elementor-shortcode table tbody td:nth-child(3) .elementor-icon{

    display:none !important;

}


/* ==============================================================
   CALENDARIO
================================================================ */

.elementor-shortcode .calendar-wrapper{

    position:absolute !important;

    right:18px !important;

    bottom:12px !important;

}


.elementor-shortcode .btn-calendar{

    background:rgba(255,255,255,.06) !important;

    color:#FFFFFF !important;

    border:
        1px solid rgba(255,255,255,.12) !important;

    border-radius:3px !important;

    padding:5px 9px !important;

    font-family:'Inter',sans-serif !important;

    font-size:10px !important;

    font-weight:700 !important;

    cursor:pointer !important;

}


.elementor-shortcode .btn-calendar:hover{

    background:rgba(255,255,255,.12) !important;

}


/* ==============================================================
   PROPERA DESTACADA
================================================================ */

.elementor-shortcode table tbody tr.fila-propera-destacada{

    box-shadow:
        0 18px 40px rgba(0,0,0,.30) !important;

    transform:scale(1.012) !important;

}


/*
 * IMPORTANTE:
 * Anulamos el fondo blanco del CSS antiguo
 * del Script 7/8.
 */

.elementor-shortcode table tbody tr.fila-propera-destacada{

    background:

        linear-gradient(
            90deg,
            rgba(255,159,10,.10) 0%,
            rgba(255,159,10,.035) 32%,
            var(--color-card) 72%
        ) !important;

    border-radius:0 !important;

}


/* ==============================================================
   TABLET
================================================================ */

@media (max-width:1024px){

    .elementor-shortcode table{

        border-spacing:0 17px !important;

    }


    .elementor-shortcode table tbody tr{

        grid-template-columns:
            125px
            minmax(0,1fr) !important;

        grid-template-rows:
            auto
            auto !important;

        min-height:145px !important;

        border-radius:0 !important;

    }


    .elementor-shortcode table tbody td:nth-child(1){

        min-height:145px !important;

        padding:15px 12px !important;

    }


    .elementor-shortcode table tbody td:nth-child(1) .date-day{

        font-size:51px !important;

    }


    .elementor-shortcode table tbody td:nth-child(1) .date-month{

        font-size:11px !important;

        margin-top:8px !important;

    }


    .elementor-shortcode table tbody td:nth-child(1) .date-year{

        font-size:12px !important;

        margin-top:6px !important;

    }


    .elementor-shortcode table tbody td:nth-child(2){

        padding:
            24px 24px 7px !important;

    }


    .elementor-shortcode table tbody td:nth-child(2) p{

        font-size:19px !important;

        line-height:1.2 !important;

    }


    .elementor-shortcode .badge-botafocs{

        font-size:9px !important;

        padding:5px 8px !important;

        margin-bottom:8px !important;

    }


    .elementor-shortcode table tbody td:nth-child(3){

        padding:
            3px 24px 23px !important;

        font-size:12px !important;

    }


    .elementor-shortcode table tbody tr.fila-propera-destacada{

        transform:none !important;

    }

}


/* ==============================================================
   MÓVIL
================================================================ */

@media (max-width:600px){

    .elementor-shortcode table{

        border-spacing:0 15px !important;

    }


    .elementor-shortcode table tbody tr{

        grid-template-columns:
            92px
            minmax(0,1fr) !important;

        grid-template-rows:
            auto
            auto !important;

        min-height:130px !important;

        border-radius:0 !important;

        border-left-width:5px !important;

    }


    .elementor-shortcode table tbody td:nth-child(1){

        min-height:130px !important;

        padding:12px 8px !important;

    }


    .elementor-shortcode table tbody td:nth-child(1) .date-day{

        font-size:43px !important;

    }


    .elementor-shortcode table tbody td:nth-child(1) .date-month{

        font-size:10px !important;

        letter-spacing:.8px !important;

        margin-top:7px !important;

    }


    .elementor-shortcode table tbody td:nth-child(1) .date-year{

        font-size:11px !important;

        margin-top:6px !important;

    }


    .elementor-shortcode table tbody td:nth-child(2){

        padding:
            20px 16px 6px !important;

    }


    .elementor-shortcode table tbody td:nth-child(2) p{

        font-size:17px !important;

        line-height:1.22 !important;

    }


    .elementor-shortcode .badge-botafocs{

        font-size:8px !important;

        padding:5px 7px !important;

        letter-spacing:.8px !important;

        margin-bottom:7px !important;

    }


    .elementor-shortcode table tbody td:nth-child(3){

        padding:
            2px 16px 19px !important;

        font-size:11px !important;

        line-height:1.3 !important;

    }


    .elementor-shortcode .calendar-wrapper{

        position:relative !important;

        right:auto !important;

        bottom:auto !important;

        margin-top:4px !important;

    }


    .elementor-shortcode .btn-calendar{

        font-size:9px !important;

        padding:5px 8px !important;

    }


    .elementor-shortcode table tbody tr.fila-propera-destacada{

        transform:none !important;

        box-shadow:none !important;

    }


    .elementor-shortcode table tbody tr:hover{

        transform:none !important;

        filter:none !important;

    }

}

/* ==============================================================
   NUEVOS AJUSTES DE AGENDA
================================================================= */


/* ==============================================================
   TÍTULOS CON ENLACE
   Amarillo solamente cuando realmente hay enlace
================================================================= */

.elementor-shortcode table tbody td:nth-child(2) a:hover,
.elementor-shortcode table tbody td:nth-child(2) a:focus-visible{

    color:#FFD60A !important;

    text-decoration:none !important;

}


/* ==============================================================
   BLOQUE PROPERA + PENDENT
================================================================= */

/*
 * Dejamos un poco más de aire entre las actividades
 * del bloque superior.
 */

.elementor-shortcode table tbody tr.agenda-futura{

    position:relative !important;

}


/* ==============================================================
   SEPARACIÓN ENTRE BLOQUES
================================================================= */

/*
 * Aumentamos el hueco antes de la primera actividad
 * histórica.
 */

.elementor-shortcode table tbody tr.agenda-separador{

    margin-top:28px !important;

}


/*
 * Línea separadora dentro del hueco.
 */

.elementor-shortcode table tbody tr.agenda-separador::before{

    content:"" !important;

    position:absolute !important;

    left:10% !important;

    right:10% !important;

    top:-15px !important;

    height:1px !important;

    background:

        linear-gradient(
            0deg,
            transparent 0%,
            rgba(255,255,255,0.8) 0%,
            rgba(255,255,255,0.8) 100%,
            transparent 0%
        ) !important;

    pointer-events:none !important;

}


/* ==============================================================
   UN POCO MÁS DE SEPARACIÓN GENERAL
================================================================= */

.elementor-shortcode table{

    border-spacing:0 18px !important;

}


/* ==============================================================
   TABLET
================================================================= */

@media (max-width:1024px){

    .elementor-shortcode table{

        border-spacing:0 16px !important;

    }


    .elementor-shortcode table tbody tr.agenda-separador{

        margin-top:24px !important;

    }


    .elementor-shortcode table tbody tr.agenda-separador::before{

        left:8% !important;

        right:8% !important;

        top:-13px !important;

    }

}


/* ==============================================================
   MÓVIL
================================================================= */

@media (max-width:600px){

    .elementor-shortcode table{

        border-spacing:0 15px !important;

    }


    .elementor-shortcode table tbody tr.agenda-separador{

        margin-top:22px !important;

    }


    .elementor-shortcode table tbody tr.agenda-separador::before{

        left:5% !important;

        right:5% !important;

        top:-12px !important;

    }


    /*
     * El amarillo del enlace sigue siendo visible
     * también en móvil.
     */

    .elementor-shortcode table tbody td:nth-child(2) a:hover{

        color:#FFD60A !important;

    }

}

/* ==============================================================
   BOTAFOCS — DÍA DE LA SEMANA
================================================================= */

.elementor-shortcode table tbody td:nth-child(1) .date-weekday{

    display:block !important;

    margin-top:6px !important;

    font-family:'Inter',sans-serif !important;

    font-size:10px !important;

    line-height:1 !important;

    font-weight:700 !important;

    letter-spacing:.7px !important;

    text-transform:uppercase !important;

    color:#FFFFFF !important;

    text-align:center !important;

}


/* ==============================================================
   MESES DESPLEGABLES
================================================================= */

.elementor-shortcode table tbody tr.agenda-month-header{

    display:block !important;

    width:100% !important;

    min-height:0 !important;

    height:auto !important;

    margin:18px 0 0 0 !important;

    padding:0 !important;

    background:transparent !important;

    border:none !important;

    border-left:0 !important;

    border-radius:0 !important;

    box-shadow:none !important;

    transform:none !important;

    opacity:1 !important;

}


/* Primer mes */

.elementor-shortcode table tbody tr.agenda-month-header:first-child{

    margin-top:0 !important;

}


/* Celda */

.elementor-shortcode table tbody tr.agenda-month-header td{

    display:block !important;

    width:100% !important;

    min-height:0 !important;

    margin:0 !important;

    padding:0 !important;

    border:none !important;

    background:transparent !important;

}


/* Botón */

.elementor-shortcode .agenda-month-toggle{

    position:relative !important;

    display:flex !important;

    align-items:center !important;

    justify-content:space-between !important;

    width:100% !important;

    min-height:58px !important;

    margin:0 !important;

    padding:0 22px !important;

    box-sizing:border-box !important;

    cursor:pointer !important;

    font-family:'Inter',sans-serif !important;

    font-size:17px !important;

    font-weight:900 !important;

    letter-spacing:.5px !important;

    text-transform:uppercase !important;

    color:#FFFFFF !important;

    text-align:left !important;

    background:#151515 !important;

    border:1px solid rgba(255,255,255,.10) !important;

    border-left:4px solid rgba(255,159,10,.70) !important;

    border-radius:0 !important;

    outline:none !important;

    transition:
        background .20s ease,
        border-color .20s ease,
        color .20s ease !important;

}


/* Hover */

.elementor-shortcode .agenda-month-toggle:hover{

    background:#1D1D1D !important;

    color:#FFD60A !important;

}


/* Mes */

.elementor-shortcode .agenda-month-name{

    display:block !important;

}


/* Flecha */

.elementor-shortcode .agenda-month-arrow{

    position:relative !important;

    flex:0 0 auto !important;

    width:12px !important;

    height:12px !important;

    margin-left:15px !important;

}


/*
 * Cerrado = flecha hacia la derecha
 */

.elementor-shortcode .agenda-month-toggle[aria-expanded="false"] .agenda-month-arrow::before{

    content:"" !important;

    position:absolute !important;

    left:2px !important;

    top:1px !important;

    width:8px !important;

    height:8px !important;

    border-right:2px solid #FFFFFF !important;

    border-bottom:2px solid #FFFFFF !important;

    transform:rotate(-45deg) !important;

}


/*
 * Abierto = flecha hacia abajo
 */

.elementor-shortcode .agenda-month-toggle[aria-expanded="true"] .agenda-month-arrow::before{

    content:"" !important;

    position:absolute !important;

    left:2px !important;

    top:-1px !important;

    width:8px !important;

    height:8px !important;

    border-right:2px solid #FFD60A !important;

    border-bottom:2px solid #FFD60A !important;

    transform:rotate(45deg) !important;

}


/* ==============================================================
   ACTIVIDADES OCULTAS
================================================================= */

.elementor-shortcode table tbody tr.agenda-month-hidden{

    display:none !important;

}


/* ==============================================================
   SEPARADOR ENTRE PROPERA/PENDENT Y HISTORIAL
================================================================= */

.elementor-shortcode table tbody tr.agenda-history-start{

    position:relative !important;

    margin-top:18px !important;

}


/*
 * Línea en el hueco
 */

.elementor-shortcode table tbody tr.agenda-history-start::before{

    content:"" !important;

    position:absolute !important;

    left:8% !important;

    right:8% !important;

    top:-11px !important;

    height:1px !important;

    background:

        linear-gradient(
            90deg,
            transparent,
            rgba(255,255,255,.18),
            transparent
        ) !important;

    pointer-events:none !important;

}


/* ==============================================================
   MÓVIL — MISMA ESTRUCTURA QUE PC
================================================================= */

@media (max-width:1024px){

    /*
     * No convertimos las tarjetas en una lista diferente.
     * Mantienen exactamente la misma estructura:
     *
     * FECHA | CONTENIDO
     */

    .elementor-shortcode table{

        border-spacing:0 18px !important;

    }


    .elementor-shortcode table tbody tr{

        display:grid !important;

        grid-template-columns:
            150px
            minmax(0,1fr) !important;

        grid-template-rows:
            auto
            auto !important;

        column-gap:0 !important;

        row-gap:0 !important;

        min-height:165px !important;

        height:auto !important;

        padding:0 !important;

        border-radius:0 !important;

        border-left-width:6px !important;

    }


    /* Fecha */

    .elementor-shortcode table tbody td:nth-child(1){

        grid-column:1 !important;

        grid-row:1 / span 2 !important;

        min-height:165px !important;

        padding:18px !important;

    }


    .elementor-shortcode table tbody td:nth-child(1) .date-day{

        font-size:58px !important;

    }


    .elementor-shortcode table tbody td:nth-child(1) .date-month{

        font-size:13px !important;

        margin-top:9px !important;

    }


    .elementor-shortcode table tbody td:nth-child(1) .date-weekday{

        font-size:9px !important;

        margin-top:6px !important;

    }


    .elementor-shortcode table tbody td:nth-child(1) .date-year{

        font-size:12px !important;

        margin-top:7px !important;

        color:#FFFFFF !important;

    }


    /* Título */

    .elementor-shortcode table tbody td:nth-child(2){

        grid-column:2 !important;

        grid-row:1 !important;

        padding:28px 28px 8px !important;

        font-size:21px !important;

    }


    .elementor-shortcode table tbody td:nth-child(2) p{

        font-size:21px !important;

        line-height:1.22 !important;

    }


    /* Ubicación */

    .elementor-shortcode table tbody td:nth-child(3){

        grid-column:2 !important;

        grid-row:2 !important;

        padding:4px 28px 27px !important;

        font-size:13px !important;

    }


    /* Badge */

    .elementor-shortcode .badge-botafocs{

        position:static !important;

        font-size:9px !important;

        padding:5px 8px !important;

        margin-bottom:9px !important;

    }


    /* Calendario */

    .elementor-shortcode .calendar-wrapper{

        position:absolute !important;

        right:18px !important;

        bottom:12px !important;

        grid-column:auto !important;

        grid-row:auto !important;

        margin:0 !important;

    }


    /* PROPERA */

    .elementor-shortcode table tbody tr.fila-propera-destacada{

        transform:scale(1.012) !important;

        box-shadow:
            0 18px 40px rgba(0,0,0,.30) !important;

    }


    /* Mes */

    .elementor-shortcode .agenda-month-toggle{

        min-height:58px !important;

        font-size:16px !important;

        padding:0 18px !important;

    }

}


/* ==============================================================
   MÓVIL PEQUEÑO
================================================================= */

@media (max-width:600px){

    .elementor-shortcode table{

        border-spacing:0 18px !important;

    }


    /*
     * Mantener el formato de PC:
     * fecha izquierda + contenido derecha.
     */

    .elementor-shortcode table tbody tr{

        grid-template-columns:
            125px
            minmax(0,1fr) !important;

        min-height:165px !important;

        border-radius:0 !important;

        border-left-width:6px !important;

    }


    /* Fecha */

    .elementor-shortcode table tbody td:nth-child(1){

        min-height:165px !important;

        padding:15px !important;

    }


    .elementor-shortcode table tbody td:nth-child(1) .date-day{

        font-size:52px !important;

    }


    .elementor-shortcode table tbody td:nth-child(1) .date-month{

        font-size:11px !important;

        letter-spacing:1px !important;

        margin-top:8px !important;

    }


    .elementor-shortcode table tbody td:nth-child(1) .date-weekday{

        font-size:8px !important;

        letter-spacing:.5px !important;

        margin-top:6px !important;

    }


    .elementor-shortcode table tbody td:nth-child(1) .date-year{

        font-size:11px !important;

        margin-top:6px !important;

    }


    /* Título */

    .elementor-shortcode table tbody td:nth-child(2){

        padding:25px 18px 7px !important;

    }


    .elementor-shortcode table tbody td:nth-child(2) p{

        font-size:18px !important;

        line-height:1.22 !important;

    }


    /* Ubicación */

    .elementor-shortcode table tbody td:nth-child(3){

        padding:4px 18px 25px !important;

        font-size:12px !important;

        line-height:1.3 !important;

    }


    /* Badge */

    .elementor-shortcode .badge-botafocs{

        font-size:8px !important;

        padding:5px 7px !important;

        margin-bottom:8px !important;

    }


    /* Calendario */

    .elementor-shortcode .calendar-wrapper{

        position:absolute !important;

        right:12px !important;

        bottom:10px !important;

    }


    .elementor-shortcode .btn-calendar{

        font-size:9px !important;

        padding:5px 8px !important;

    }


    /* Meses */

    .elementor-shortcode table tbody tr.agenda-month-header{

        margin-top:14px !important;

    }


    .elementor-shortcode .agenda-month-toggle{

        min-height:54px !important;

        padding:0 15px !important;

        font-size:15px !important;

    }


    /* Separador */

    .elementor-shortcode table tbody tr.agenda-history-start{

        margin-top:18px !important;

    }

}

/* ==============================================================
   PRÓXIMAS ACTIVIDADES — BLOQUE DESTACADO
================================================================= */


/* Contenedor */

.elementor-shortcode .agenda-featured{

    width:100% !important;

    margin:0 0 28px 0 !important;

    padding:0 !important;

}


/* Ocultar completamente cuando no hay próximas */

.elementor-shortcode .agenda-featured-empty{

    display:none !important;

}


/* ==============================================================
   TÍTULO "PRÒXIMES ACTIVITATS"
================================================================= */

.elementor-shortcode .agenda-featured-title{

    display:flex !important;

    align-items:center !important;

    justify-content:center !important;

    gap:14px !important;

    width:100% !important;

    margin:0 0 18px 0 !important;

    padding:0 !important;

    font-family:'Inter',sans-serif !important;

    font-size:13px !important;

    font-weight:900 !important;

    line-height:1 !important;

    letter-spacing:1.5px !important;

    color:#FFFFFF !important;

    text-transform:uppercase !important;

}


/* Líneas decorativas */

.elementor-shortcode .agenda-featured-line{

    display:block !important;

    flex:1 1 auto !important;

    height:1px !important;

    background:

        linear-gradient(
            90deg,
            transparent,
            rgba(255,255,255,.18)
        ) !important;

}


.elementor-shortcode .agenda-featured-line:last-child{

    background:

        linear-gradient(
            90deg,
            rgba(255,255,255,.18),
            transparent
        ) !important;

}


/* ==============================================================
   TABLA DE DESTACADAS
================================================================= */

.elementor-shortcode .agenda-featured-table{

    width:100% !important;

    margin:0 !important;

    padding:0 !important;

    border-collapse:separate !important;

    border-spacing:0 14px !important;

    table-layout:fixed !important;

}


/* ==============================================================
   TARJETAS DESTACADAS
================================================================= */

.elementor-shortcode .agenda-featured-table tbody tr{

    min-height:165px !important;

    transform:scale(1) !important;

    box-shadow:
        0 12px 28px rgba(0,0,0,.20) !important;

}


/* PROPERA */

.elementor-shortcode .agenda-featured-table tbody tr.fila-propera-destacada{

    border-left-color:
        var(--color-propera) !important;

    background:

        linear-gradient(
            90deg,
            rgba(255,159,10,.13) 0%,
            rgba(255,159,10,.045) 32%,
            var(--color-card) 72%
        ) !important;

}


/* PENDENT */

.elementor-shortcode .agenda-featured-table tbody tr.fila-pendent{

    border-left-color:
        var(--color-pendent) !important;

    background:

        linear-gradient(
            90deg,
            rgba(59,130,246,.10) 0%,
            rgba(59,130,246,.035) 32%,
            var(--color-card) 72%
        ) !important;

}


/* Día */

.elementor-shortcode .agenda-featured-table tbody tr.fila-propera-destacada .date-day{

    color:
        var(--color-propera) !important;

}


.elementor-shortcode .agenda-featured-table tbody tr.fila-pendent .date-day{

    color:
        var(--color-pendent) !important;

}


/* Mes */

.elementor-shortcode .agenda-featured-table tbody tr.fila-propera-destacada .date-month{

    color:
        var(--color-propera) !important;

}


.elementor-shortcode .agenda-featured-table tbody tr.fila-pendent .date-month{

    color:
        var(--color-pendent) !important;

}


/* ==============================================================
   HOVER DESTACADAS
================================================================= */

.elementor-shortcode .agenda-featured-table tbody tr:hover{

    transform:translateY(-4px) !important;

    box-shadow:
        0 20px 42px rgba(0,0,0,.30) !important;

}


/* No cambiar el color del texto del título */
.elementor-shortcode .agenda-featured-table tbody tr:hover td:nth-child(2) a{

    color:#FFFFFF !important;

}


/* Pero sí amarillo cuando el cursor está
   exactamente sobre el enlace */

.elementor-shortcode .agenda-featured-table tbody tr:hover td:nth-child(2) a:hover{

    color:#FFD60A !important;

}


/* ==============================================================
   SEPARACIÓN ENTRE DESTACADAS Y MESES
================================================================= */

.elementor-shortcode .agenda-featured + table{

    margin-top:4px !important;

}


/* ==============================================================
   TABLET
================================================================= */

@media (max-width:1024px){

    .elementor-shortcode .agenda-featured{

        margin-bottom:26px !important;

    }


    .elementor-shortcode .agenda-featured-title{

        font-size:12px !important;

        gap:12px !important;

        margin-bottom:16px !important;

    }


    .elementor-shortcode .agenda-featured-table{

        border-spacing:0 14px !important;

    }


    .elementor-shortcode .agenda-featured-table tbody tr{

        min-height:165px !important;

    }

}


/* ==============================================================
   MÓVIL
================================================================= */

@media (max-width:600px){

    .elementor-shortcode .agenda-featured{

        margin-bottom:24px !important;

    }


    .elementor-shortcode .agenda-featured-title{

        font-size:10px !important;

        letter-spacing:1.2px !important;

        gap:9px !important;

        margin-bottom:14px !important;

    }


    .elementor-shortcode .agenda-featured-table{

        border-spacing:0 14px !important;

    }


    .elementor-shortcode .agenda-featured-table tbody tr{

        min-height:165px !important;

    }

}

/* ==============================================================
   UBICACIÓN — UNA DEBAJO DE OTRA
================================================================= */

/*
 * La celda de ubicación siempre funciona en vertical.
 */

.elementor-shortcode table tbody td:nth-child(3){

    display:flex !important;

    flex-direction:column !important;

    align-items:flex-start !important;

    justify-content:flex-start !important;

}


/*
 * Contenedor interno de Elementor/tabla.
 */

.elementor-shortcode table tbody td:nth-child(3) .td-content,
.elementor-shortcode table tbody td:nth-child(3) .td-content-wrapper{

    display:block !important;

    width:100% !important;

}


/*
 * Cada ubicación ocupa una línea completa.
 */

.elementor-shortcode table tbody td:nth-child(3) .activity-location{

    display:block !important;

    width:100% !important;

    max-width:100% !important;

    flex:none !important;

    white-space:normal !important;

    margin:0 !important;

    padding:0 !important;

}


/*
 * Si hay varias ubicaciones dentro del contenedor,
 * cada una queda debajo de la anterior.
 */

.elementor-shortcode table tbody td:nth-child(3) .activity-location + .activity-location{

    margin-top:2px !important;

}


/*
 * Por si la estructura usa spans/divs internos.
 */

.elementor-shortcode table tbody td:nth-child(3) .td-content > *,
.elementor-shortcode table tbody td:nth-child(3) .td-content-wrapper > *{

    max-width:100% !important;

}


/* ==============================================================
   MÓVIL — FORZAR APILADO
================================================================= */

@media (max-width:600px){

    .elementor-shortcode table tbody td:nth-child(3){

        display:flex !important;

        flex-direction:column !important;

        align-items:flex-start !important;

        justify-content:flex-start !important;

    }


    .elementor-shortcode table tbody td:nth-child(3) .td-content,
    .elementor-shortcode table tbody td:nth-child(3) .td-content-wrapper{

        display:block !important;

        width:100% !important;

    }


    .elementor-shortcode table tbody td:nth-child(3) .activity-location{

        display:block !important;

        width:100% !important;

        text-align:left !important;

    }

}

/* ==============================================================
   MÓVIL — CONTENIDO DE ACTIVIDAD SIEMPRE EN VERTICAL
================================================================= */

@media (max-width:600px){

    /*
     * La segunda celda debe contener:
     *
     * ETIQUETA
     * TÍTULO
     * HORA
     *
     * uno debajo de otro.
     */

    .elementor-shortcode table tbody td:nth-child(2){

        display:flex !important;

        flex-direction:column !important;

        align-items:flex-start !important;

        justify-content:flex-start !important;

        width:100% !important;

        min-width:0 !important;

    }


    /*
     * Forzar los contenedores internos de Elementor
     * a ocupar una sola columna.
     */

    .elementor-shortcode table tbody td:nth-child(2) .td-content,
    .elementor-shortcode table tbody td:nth-child(2) .td-content-wrapper{

        display:flex !important;

        flex-direction:column !important;

        align-items:flex-start !important;

        justify-content:flex-start !important;

        width:100% !important;

        max-width:100% !important;

        min-width:0 !important;

        gap:0 !important;

    }


    /*
     * Cada elemento interno ocupa toda la anchura.
     */

    .elementor-shortcode table tbody td:nth-child(2) .td-content > *,
    .elementor-shortcode table tbody td:nth-child(2) .td-content-wrapper > *{

        display:block !important;

        width:100% !important;

        max-width:100% !important;

        min-width:0 !important;

        margin-left:0 !important;

        margin-right:0 !important;

    }


    /*
     * Párrafos.
     */

    .elementor-shortcode table tbody td:nth-child(2) p{

        display:block !important;

        width:100% !important;

        margin-left:0 !important;

        margin-right:0 !important;

    }


    /*
     * Evitar que cualquier elemento interno
     * cree una segunda columna mediante grid.
     */

    .elementor-shortcode table tbody td:nth-child(2) [class*="grid"]{

        display:flex !important;

        flex-direction:column !important;

    }


    /*
     * Evitar que tiempo/actividad se comporten
     * como elementos inline.
     */

    .elementor-shortcode table tbody td:nth-child(2) span,
    .elementor-shortcode table tbody td:nth-child(2) strong{

        max-width:100% !important;

    }

}

/* ==============================================================
   HORA DE LA ACTIVIDAD
================================================================= */

.elementor-shortcode table tbody td:nth-child(2) .activity-time{

    display:block !important;

    width:100% !important;

    margin-top:7px !important;

    font-family:'Inter',sans-serif !important;

    font-size:18px !important;

    font-weight:800 !important;

    line-height:1.15 !important;

    color:#FFFFFF !important;

    white-space:nowrap !important;

}


/*
 * La hora nunca debe crear una segunda columna.
 */

.elementor-shortcode table tbody td:nth-child(2) .activity-time{

    grid-column:1 !important;

    grid-row:auto !important;

}


/* ==============================================================
   MÓVIL
================================================================= */

@media (max-width:600px){

    .elementor-shortcode table tbody td:nth-child(2) .activity-time{

        display:block !important;

        width:100% !important;

        margin-top:7px !important;

        font-size:15px !important;

        line-height:1.15 !important;

        white-space:normal !important;

    }

}

/* ==============================================================
   RANGO DE FECHAS
================================================================= */

.elementor-shortcode table tbody td:nth-child(1) .date-box.date-range{

    display:flex !important;

    flex-direction:column !important;

    align-items:center !important;

    justify-content:center !important;

    gap:0 !important;

}


/* Cada fecha */

.elementor-shortcode table tbody td:nth-child(1) .date-item{

    display:flex !important;

    flex-direction:column !important;

    align-items:center !important;

    justify-content:center !important;

    text-align:center !important;

}


/* Separador AL */

.elementor-shortcode table tbody td:nth-child(1) .date-range-separator{

    display:block !important;

    margin:6px 0 !important;

    font-family:'Inter',sans-serif !important;

    font-size:8px !important;

    font-weight:800 !important;

    line-height:1 !important;

    letter-spacing:1px !important;

    color:#FFFFFF !important;

}


/*
 * Reducimos ligeramente el tamaño cuando hay
 * dos fechas para que ambas quepan cómodamente.
 */

.elementor-shortcode table tbody td:nth-child(1) .date-range .date-day{

    font-size:38px !important;

}


.elementor-shortcode table tbody td:nth-child(1) .date-range .date-month{

    margin-top:5px !important;

    font-size:9px !important;

}


.elementor-shortcode table tbody td:nth-child(1) .date-range .date-weekday{

    margin-top:4px !important;

    font-size:8px !important;

}


.elementor-shortcode table tbody td:nth-child(1) .date-range .date-year{

    margin-top:4px !important;

    font-size:10px !important;

}


/* ==============================================================
   MÓVIL
================================================================= */

@media (max-width:600px){

    .elementor-shortcode table tbody td:nth-child(1) .date-box.date-range{

        justify-content:center !important;

    }


    .elementor-shortcode table tbody td:nth-child(1) .date-range .date-day{

        font-size:32px !important;

    }


    .elementor-shortcode table tbody td:nth-child(1) .date-range .date-month{

        font-size:8px !important;

        margin-top:4px !important;

        letter-spacing:.7px !important;

    }


    .elementor-shortcode table tbody td:nth-child(1) .date-range .date-weekday{

        font-size:7px !important;

        margin-top:4px !important;

        letter-spacing:.3px !important;

    }


    .elementor-shortcode table tbody td:nth-child(1) .date-range .date-year{

        font-size:9px !important;

        margin-top:4px !important;

    }


    .elementor-shortcode table tbody td:nth-child(1) .date-range-separator{

        margin:5px 0 !important;

        font-size:7px !important;

    }

}

/* ==============================================================
   MÓVIL Y TABLET — SIN DESTACADO EN FILA PROPERA
================================================================= */

@media (max-width:1024px){

    .elementor-shortcode table tbody tr.fila-propera-destacada{

        transform:none !important;

        box-shadow:none !important;

    }

}/* End custom CSS */