.vdm-evento-ficha,.vdm-evento-participantes,.vdm-eventos-calendar{box-sizing:border-box;max-width:100%}.vdm-evento-ficha{display:grid;gap:22px}.vdm-evento-ficha__poster-image{display:block;width:100%;height:auto;border-radius:14px}.vdm-evento-ficha__badges,.vdm-evento-ficha__actions,.vdm-participant-socials,.vdm-eventos-calendar__actions,.vdm-eventos-calendar__meta{display:flex;flex-wrap:wrap;gap:8px 12px}.vdm-evento-badge{display:inline-flex;padding:5px 10px;border:1px solid currentColor;border-radius:999px;font-size:.82em}.vdm-evento-ficha__title{margin:8px 0 12px}.vdm-evento-ficha__meta{display:grid;gap:6px;margin-bottom:14px}.vdm-evento-ficha__description p:last-child,.vdm-participant-card__info p:last-child{margin-bottom:0}.vdm-evento-action,.vdm-evento-boletos,.vdm-participant-social,.vdm-eventos-calendar__actions a{display:inline-flex;align-items:center;justify-content:center;text-decoration:none;border:1px solid currentColor;border-radius:8px;padding:8px 12px}.vdm-evento-action--primary{font-weight:700}.vdm-evento-participantes--lista{display:grid;gap:18px}.vdm-participant-card{display:grid;grid-template-columns:minmax(180px,280px) minmax(0,1fr);gap:20px;padding:16px;border:1px solid rgba(0,0,0,.12);border-radius:14px}.vdm-participant-card__media{display:flex;align-items:flex-start;justify-content:center;width:100%;overflow:visible}.vdm-participant-card__image{display:block;width:100%;height:auto!important;max-height:none!important;aspect-ratio:auto!important;object-fit:contain!important;border-radius:10px}.vdm-participant-card__title{margin:0 0 6px}.vdm-participant-card__subtitle{font-weight:600;margin-bottom:10px}.vdm-participant-socials{margin-top:14px}.vdm-evento-participantes--tabs .vdm-participant-card{border:0;border-radius:0;padding:18px 0}.vdm-eventos-calendar{width:100%;max-width:980px;margin-inline:auto}.vdm-eventos-calendar__header{display:grid;grid-template-columns:auto 1fr auto;align-items:center;gap:12px;margin-bottom:14px}.vdm-eventos-calendar__title{margin:0;text-align:center;text-transform:capitalize}.vdm-eventos-calendar__nav{min-width:42px;min-height:42px;border:1px solid #d8d8d8;border-radius:10px;background:#fff;cursor:pointer;font-size:20px}.vdm-eventos-calendar__weekdays,.vdm-eventos-calendar__grid{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));gap:6px}.vdm-eventos-calendar__weekdays>div{padding:8px 4px;text-align:center;font-size:13px;font-weight:700}.vdm-eventos-calendar__day,.vdm-eventos-calendar__empty{min-height:72px;border-radius:10px}.vdm-eventos-calendar__day{position:relative;border:1px solid #e2e2e2;background:#fff;cursor:pointer;font:inherit}.vdm-eventos-calendar__day.is-today{outline:2px solid currentColor;outline-offset:-4px}.vdm-eventos-calendar__day.has-events:after{content:'';position:absolute;left:50%;bottom:10px;width:7px;height:7px;border-radius:50%;background:currentColor;transform:translateX(-50%)}.vdm-eventos-calendar__day.is-selected{font-weight:700;background:#f0f0f0}.vdm-eventos-calendar__results{margin-top:22px}.vdm-eventos-calendar__results[hidden]{display:none}.vdm-eventos-calendar__cards{display:grid;gap:14px}.vdm-eventos-calendar__card{display:grid;grid-template-columns:minmax(120px,220px) minmax(0,1fr);gap:16px;padding:14px;border:1px solid #e2e2e2;border-radius:14px;background:#fff}.vdm-eventos-calendar__image{display:block;width:100%;height:auto!important;max-height:none!important;object-fit:contain!important;border-radius:10px}.vdm-eventos-calendar__card-title{margin:0 0 8px}.vdm-eventos-calendar__description{white-space:pre-line}.vdm-eventos-calendar__participants{margin:8px 0;font-weight:600}@media(max-width:640px){.vdm-participant-card,.vdm-eventos-calendar__card{grid-template-columns:1fr}.vdm-eventos-calendar__day,.vdm-eventos-calendar__empty{min-height:52px}.vdm-eventos-calendar__image{height:auto!important}.vdm-participant-card__image{height:auto!important;aspect-ratio:auto!important;object-fit:contain!important}}

/* v1.1.0 - imágenes completas y colores configurables */
.vdm-evento-participantes,.vdm-evento-participantes *{box-sizing:border-box}.vdm-evento-participantes .vdm-panel{overflow:visible}.vdm-participant-card__media img{object-position:center center}.vdm-participant-card__content{min-width:0}.vdm-participant-card__info{color:inherit}.vdm-participant-social{transition:opacity .15s ease}.vdm-participant-social:hover{opacity:.85}


/* v1.1.1 - corregir espacio vertical excesivo de la imagen en tarjetas */
.vdm-evento-participantes--lista{
    align-items:start !important;
    align-content:start !important;
    grid-auto-rows:max-content !important;
}

.vdm-evento-participantes .vdm-participant-card{
    height:auto !important;
    min-height:0 !important;
    max-height:none !important;
    align-self:start !important;
    align-items:start !important;
    align-content:start !important;
    grid-auto-rows:max-content !important;
}

.vdm-evento-participantes .vdm-participant-card__media{
    width:100% !important;
    height:auto !important;
    min-height:0 !important;
    max-height:none !important;
    align-self:start !important;
    align-items:flex-start !important;
    justify-content:center !important;
    margin:0 !important;
    padding:0 !important;
}

.vdm-evento-participantes .vdm-participant-card__image{
    display:block !important;
    width:100% !important;
    height:auto !important;
    min-height:0 !important;
    max-height:none !important;
    aspect-ratio:auto !important;
    object-fit:contain !important;
    object-position:center top !important;
    align-self:start !important;
    margin:0 !important;
}

.vdm-evento-participantes .vdm-participant-card__content{
    height:auto !important;
    min-height:0 !important;
    max-height:none !important;
    align-self:start !important;
}

@media(max-width:640px){
    .vdm-evento-participantes .vdm-participant-card{
        grid-template-columns:minmax(0,1fr) !important;
        grid-template-rows:max-content max-content !important;
        grid-auto-rows:max-content !important;
    }

    .vdm-evento-participantes .vdm-participant-card__media,
    .vdm-evento-participantes .vdm-participant-card__content{
        grid-column:1 !important;
    }
}


/* v1.1.2 - móvil: quitar por completo el estiramiento de Grid en participantes.
 * En pantallas pequeñas usamos flujo de bloque normal para que la tarjeta termine
 * exactamente después de la imagen y su contenido. */
@media(max-width:640px){
    .vdm-evento-participantes--lista{
        display:block !important;
        height:auto !important;
        min-height:0 !important;
    }

    .vdm-evento-participantes--lista > .vdm-participant-card,
    .vdm-evento-participantes--tabs .vdm-panel > .vdm-participant-card{
        display:block !important;
        width:100% !important;
        height:auto !important;
        min-height:0 !important;
        max-height:none !important;
        margin:0 !important;
        align-self:auto !important;
        position:relative !important;
        overflow:visible !important;
    }

    .vdm-evento-participantes--lista > .vdm-participant-card + .vdm-participant-card{
        margin-top:18px !important;
    }

    .vdm-evento-participantes .vdm-participant-card__media{
        display:block !important;
        width:100% !important;
        height:auto !important;
        min-height:0 !important;
        max-height:none !important;
        margin:0 !important;
        padding:0 !important;
        line-height:0 !important;
        position:static !important;
        overflow:visible !important;
    }

    .vdm-evento-participantes .vdm-participant-card__image{
        display:block !important;
        width:100% !important;
        height:auto !important;
        min-height:0 !important;
        max-height:none !important;
        margin:0 !important;
        padding:0 !important;
        aspect-ratio:auto !important;
        object-fit:contain !important;
        object-position:center top !important;
        position:static !important;
        float:none !important;
        transform:none !important;
    }

    .vdm-evento-participantes .vdm-participant-card__content{
        display:block !important;
        width:100% !important;
        height:auto !important;
        min-height:0 !important;
        max-height:none !important;
        margin:16px 0 0 !important;
        padding:0 !important;
        position:static !important;
        float:none !important;
        transform:none !important;
        clear:both !important;
    }
}


/* v1.1.3 - Reducir el espacio reservado por WordPress para imágenes con sizes="auto".
 * WordPress puede aplicar contain-intrinsic-size: 3000px 1500px mientras la imagen
 * carga. Para las imágenes de este plugin usamos una reserva más razonable. */
.vdm-evento-participantes .vdm-participant-card__image,
.vdm-eventos-calendar .vdm-eventos-calendar__image{
    contain-intrinsic-size:500px 500px !important;
}


/* v1.1.4 - Banner / imagen principal del evento.
 * Evita que un cartel vertical ocupe casi toda la pantalla en móvil.
 * La imagen se reduce y centra, pero nunca se recorta. */
.vdm-evento-imagen,
.vdm-evento-ficha__poster-image{
    display:block !important;
    width:auto !important;
    height:auto !important;
    max-width:100% !important;
    max-height:650px !important;
    margin-left:auto !important;
    margin-right:auto !important;
    object-fit:contain !important;
    object-position:center center !important;
    contain-intrinsic-size:500px 500px !important;
    box-sizing:border-box !important;
}

@media(max-width:640px){
    .vdm-evento-imagen,
    .vdm-evento-ficha__poster-image{
        width:auto !important;
        max-width:calc(100% - 24px) !important;
        max-height:420px !important;
        margin-left:auto !important;
        margin-right:auto !important;
    }
}


/* v1.1.5 - texto centrado y banner principal ligeramente más grande. */
.vdm-evento-ficha,
.vdm-evento-ficha__title,
.vdm-evento-ficha__meta,
.vdm-evento-ficha__description,
.vdm-evento-participantes .vdm-participant-card__content{
    text-align:center !important;
}

.vdm-evento-ficha__badges,
.vdm-evento-ficha__actions,
.vdm-evento-participantes .vdm-participant-socials{
    justify-content:center !important;
}

/* Dar un poco más de presencia al cartel principal sin recortarlo. */
.vdm-evento-imagen,
.vdm-evento-ficha__poster-image{
    max-height:720px !important;
}

@media(max-width:640px){
    .vdm-evento-imagen,
    .vdm-evento-ficha__poster-image{
        max-width:calc(100% - 12px) !important;
        max-height:480px !important;
    }
}
