/**
 * Structures de Recherche (Laboratoires) - Styles
 * Univ-Droit 2026
 *
 * Chargé dans: templates/simplesimon/positions/structures_de_recherche/content/mainbody.php
 */

/* =============================================
   SLIDER DANS CARD (Actualités)
   ============================================= */
.jl-card-body .jl-slider {
    max-width: min(900px, calc(100vw - 2rem));
    margin-inline: auto;
}

.jl-card-body .jl-slider > .jl-slider-container {
    width: 100%;
    overflow: hidden;
}

/* Éviter débordement dans les grids */
.jl-grid > [class*="jl-width-"],
.jl-card,
.jl-card-body {
    min-width: 0;
}

/* =============================================
   FORMATIONS (Liste accordéon)
   ============================================= */
.fm-title {
    font-weight: 600;
    text-decoration: none;
    font-size: 0.9rem;
}

.fm-title:hover {
    text-decoration: none;
}

.fm-meta {
    font-size: 0.8rem;
    color: #666;
    margin: 4px 0px !important;
}

.jl-label.jl-label-outline {
    background: #fff;
    border: 1px solid #ddd;
    color: #333;
    font-size: 0.8rem;
    margin-right: 6px;
}

/* =============================================
   EC CARDS (Membres)
   ============================================= */
.jl-ec-card {
    display: block;
}

.jl-ec-logo-wrap {
    padding: 8px;
    text-align: center;
}

.jl-ec-logo {
    max-height: 38px;
    max-width: 100%;
    object-fit: contain;
}

.jl-ec-body {
    text-align: center;
}

.jl-ec-photo {
    display: flex;
    justify-content: center;
}

.jl-ec-portrait {
    width: 88px;
    height: 88px;
    object-fit: cover;
    border-radius: 50%;
}

.jl-ec-name {
    font-weight: 600;
}

.jl-ec-grade,
.jl-ec-cnu {
    font-size: 12px;
    color: #666;
}

/* =============================================
   CAROUSEL ACTUALITÉS - Containment
   ============================================= */
.jl-card-body .jl-slider-container {
    overflow: hidden;
}

/* =============================================
   MOBILE OPTIMIZATIONS
   ============================================= */

/* Tablette */
@media (max-width: 959px) {
    /* Containeur principal des cartes */
    .jl-card-body .jl-slider {
        max-width: calc(100vw - 3rem);
    }
}

@media (max-width: 900px) {
    .jl-card-body .jl-slider {
        max-width: min(400px, calc(100vw - 2rem));
    }
}

/* ======================================================
   MOBILE : Désactiver le slider, afficher en liste verticale
   ====================================================== */
@media (max-width: 639px) {
    /* Désactiver le comportement slider */
    .jl-card-body [jl-slider] {
        /* Retirer le JS slider */
    }

    .jl-card-body .jl-slider-container {
        overflow: visible !important;
    }

    /* Transformer en liste verticale */
    .jl-card-body .jl-slider-items {
        display: flex !important;
        flex-direction: column !important;
        flex-wrap: nowrap !important;
        transform: none !important;
        width: 100% !important;
        max-width: 100% !important;
    }

    /* Chaque item en pleine largeur, empilé */
    .jl-card-body .jl-slider-items > li {
        width: 100% !important;
        max-width: 100% !important;
        min-width: 0 !important;
        flex: 0 0 auto !important;
        margin-bottom: 15px !important;
        transform: none !important;
    }

    /* Masquer la navigation du slider */
    .jl-card-body .jl-slidenav,
    .jl-card-body .jl-slider-nav,
    .jl-card-body .jl-dotnav {
        display: none !important;
    }

    /* Limiter le nombre d'items affichés (optionnel) */
    .jl-card-body .jl-slider-items > li:nth-child(n+4) {
        display: none !important;
    }
}

@media (max-width: 639px) {
    /* ======================================================
       FIX BLINKING MOBILE : Désactiver UIkit Grid JS
       ====================================================== */
    body {
        overflow-x: hidden !important;
    }

    /* Tous les grids UIkit de la page */
    .jl-section [jl-grid],
    .jl-section .jl-grid {
        display: flex !important;
        flex-direction: column !important;
        flex-wrap: nowrap !important;
        margin: 0 !important;
    }

    .jl-section .jl-grid > * {
        width: 100% !important;
        max-width: 100% !important;
        flex: 0 0 auto !important;
        margin: 10px 0 !important;
        padding-left: 0 !important;
    }

    .jl-section .jl-grid-stack {
        margin-left: 0 !important;
    }

    .jl-section .jl-first-column {
        margin-top: 0 !important;
    }

    .jl-section .jl-grid-margin {
        margin-top: 10px !important;
    }
}

/* =============================================
   LABO CARDS (extrait de custom.css — mars 2026)
   ============================================= */
.labo-card__logo { height: 110px; }
.labo-card__logo img { max-height: 80px; width: auto; object-fit: contain; display: block; padding: 10px; }
.labo-card__title {
  display: -webkit-box;
  -webkit-line-clamp: 2;
  -webkit-box-orient: vertical;
  overflow: hidden;
  min-height: calc(1em * 2.6);
}
@media (min-width: 960px) {
  .labo-card__logo { height: 120px; }
  .labo-card__logo img { max-height: 90px; }
}
