/*
 * Encart « Applicable Advisories and Service Bulletins » de la fiche produit.
 *
 * Styles autonomes : aucune dépendance aux variables LESS du thème Olegnax, pour rester
 * utilisable si le thème change. Le picto est un SVG inline, donc rien à déployer.
 *
 * Rouge Beringer #E31D27, en accent uniquement : l'encart signale une information technique,
 * il ne doit pas hurler au-dessus du reste de la fiche.
 */
.kalpy-advsd {
    margin: 48px 0;
}

.kalpy-advsd-box {
    padding: 24px 28px 28px;
    background: #fff;
    border: 1px solid #e4e4e4;
    border-left: 4px solid #E31D27;
    border-radius: 3px;
    box-shadow: 0 1px 3px rgba(0, 0, 0, 0.07);
}

.kalpy-advsd-head {
    display: flex;
    align-items: center;
    gap: 16px;
    margin-bottom: 18px;
}

.kalpy-advsd-icon {
    flex: 0 0 auto;
    color: #E31D27;
    line-height: 0;
}

.kalpy-advsd-title {
    margin: 0;
    font-size: 1.8rem;
    font-weight: 700;
    line-height: 1.25;
    color: #1a1a1a;
}

/*
 * Le défilement est porté par l'enveloppe, pas par la table : un `display: block` sur <table>
 * la ramènerait à la largeur de son contenu au lieu de remplir l'encart.
 */
.kalpy-advsd-scroll {
    overflow-x: auto;
    -webkit-overflow-scrolling: touch;
}

.kalpy-advsd-table {
    width: 100%;
    border-collapse: collapse;
    font-size: 1.4rem;
}

.kalpy-advsd-col-ref {
    width: 15%;
}

.kalpy-advsd-col-rev {
    width: 10%;
}

.kalpy-advsd-col-date {
    width: 15%;
}

.kalpy-advsd-table thead th {
    padding: 11px 16px;
    background: #1a1a1a;
    color: #fff;
    font-size: 1.15rem;
    font-weight: 600;
    text-align: left;
    text-transform: uppercase;
    letter-spacing: 0.06em;
    white-space: nowrap;
}

.kalpy-advsd-table tbody td {
    padding: 13px 16px;
    border-bottom: 1px solid #ededed;
    vertical-align: top;
    color: #333;
}

.kalpy-advsd-table tbody tr:last-child td {
    border-bottom: none;
}

.kalpy-advsd-table tbody tr:nth-child(even) {
    background: #fafafa;
}

.kalpy-advsd-table tbody tr:hover {
    background: #f3f3f3;
}

.kalpy-advsd-ref {
    white-space: nowrap;
}

.kalpy-advsd-ref a {
    font-weight: 700;
    color: #E31D27;
    text-decoration: none;
    border-bottom: 1px solid rgba(227, 29, 39, 0.4);
}

.kalpy-advsd-ref a:hover,
.kalpy-advsd-ref a:focus {
    color: #1a1a1a;
    border-bottom-color: #1a1a1a;
}

/* Aéronefs concernés : information de contexte, volontairement discrète. */
.kalpy-advsd-aircrafts {
    display: block;
    margin-top: 5px;
    font-size: 1.2rem;
    line-height: 1.45;
    color: #767676;
}

.kalpy-advsd-rev {
    text-align: center;
}

.kalpy-advsd-badge {
    display: inline-block;
    min-width: 24px;
    padding: 2px 8px;
    background: #f0f0f0;
    border-radius: 11px;
    font-size: 1.25rem;
    font-weight: 600;
    color: #1a1a1a;
}

.kalpy-advsd-date {
    white-space: nowrap;
}

.kalpy-advsd-empty {
    color: #b0b0b0;
}

/* Sous 768 px, chaque ligne devient une carte étiquetée : un tableau à quatre colonnes
   ne tient pas, et un défilement horizontal se rate facilement au doigt. */
@media (max-width: 767px) {
    .kalpy-advsd {
        margin: 32px 0;
    }

    .kalpy-advsd-box {
        padding: 20px;
    }

    .kalpy-advsd-title {
        font-size: 1.6rem;
    }

    .kalpy-advsd-icon svg {
        width: 28px;
        height: 33px;
    }

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

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

    .kalpy-advsd-table tbody tr,
    .kalpy-advsd-table tbody tr:nth-child(even),
    .kalpy-advsd-table tbody tr:hover {
        margin-bottom: 14px;
        padding: 4px 0;
        background: #fff;
        border: 1px solid #e6e6e6;
        border-radius: 3px;
    }

    .kalpy-advsd-table tbody tr:last-child {
        margin-bottom: 0;
    }

    .kalpy-advsd-table tbody td {
        padding: 8px 14px;
        border-bottom: none;
    }

    .kalpy-advsd-table tbody td[data-label]::before {
        content: attr(data-label);
        display: block;
        margin-bottom: 2px;
        font-size: 1.05rem;
        text-transform: uppercase;
        letter-spacing: 0.06em;
        color: #8c8c8c;
    }

    .kalpy-advsd-rev {
        text-align: left;
    }
}
