/* _content/FeastOnThePlanet.DesignSystem/Components/Badge.razor.rz.scp.css */
/* Components/Badges/Badge.razor.css */
.el-badge[b-u9p4h9huz1] {
    display: inline-block;
    padding: var(--el-spacing-xs) var(--el-spacing-sm);
    font-size: 0.75em; /* Plus petit que le texte normal */
    font-weight: var(--el-font-weight-bold);
    line-height: 1;
    color: var(--el-color-white); /* Défaut pour la plupart des fonds */
    text-align: center;
    white-space: nowrap;
    vertical-align: baseline;
    border-radius: var(--el-border-radius);
}

    /* S'assure que le contenu vide ne s'affiche pas bizarrement */
    .el-badge:empty[b-u9p4h9huz1] {
        display: none;
    }

/* Forme pillule */
.el-badge-pill[b-u9p4h9huz1] {
    border-radius: 10rem; /* Grande valeur pour assurer l'arrondi */
}

/* Types de badges */
.el-badge-primary[b-u9p4h9huz1] {
    background-color: var(--el-color-primary);
}

.el-badge-secondary[b-u9p4h9huz1] {
    background-color: var(--el-color-text-secondary);
}
/* Utiliser gris pour secondaire */
.el-badge-accent[b-u9p4h9huz1] {
    background-color: var(--el-color-accent);
    color: var(--el-color-text-primary);
}
/* Attention au contraste */
.el-badge-success[b-u9p4h9huz1] {
    background-color: var(--el-color-success);
}

.el-badge-warning[b-u9p4h9huz1] {
    background-color: var(--el-color-warning);
    color: var(--el-color-text-primary);
}
/* Attention au contraste */
.el-badge-error[b-u9p4h9huz1] {
    background-color: var(--el-color-error);
}

.el-badge-info[b-u9p4h9huz1] {
    background-color: var(--el-color-info);
}

.el-badge-light[b-u9p4h9huz1] {
    background-color: var(--el-color-background-light);
    color: var(--el-color-text-secondary);
    border: var(--el-border-width) solid var(--el-color-border);
}

.el-badge-dark[b-u9p4h9huz1] {
    background-color: var(--el-color-text-primary);
}
/* _content/FeastOnThePlanet.DesignSystem/Components/Button.razor.rz.scp.css */
/* Components/Buttons/Button.razor.css */

.el-button[b-aurt753709] {
    display: inline-block;
    font-family: var(--el-font-family-heading);
    font-weight: var(--el-font-weight-semibold);
    text-align: center;
    position:relative;
    vertical-align: middle;
    cursor: pointer;
    user-select: none;
    border: var(--el-border-width) solid transparent;
    padding: var(--el-spacing-sm) var(--el-spacing-md);
    font-size: var(--el-font-size-base);
    border-radius: var(--el-border-radius);
    transition: background-color 0.2s ease, border-color 0.2s ease, box-shadow 0.2s ease;
    text-decoration: none;
    box-shadow: var(--el-box-shadow-sm);
}
.el-button-loader[b-aurt753709],
.el-button-success-icon[b-aurt753709] {
    position: absolute;
    top: 50%;
    left: 1em;
    transform: translate(-50%, -50%);
    display: inline-block; /* ou flex pour centrer plus facilement */
}

/* --- Exemple de Loader (Spinner) --- */
.el-button-loader[b-aurt753709] {
    width: 1em; /* Ajuster taille */
    height: 1em;
    border: 2px solid currentColor; /* Utilise la couleur du texte du bouton */
    border-bottom-color: transparent; /* Trou dans le cercle */
    border-radius: 50%;
    animation: el-button-spin-b-aurt753709 0.75s linear infinite;
    opacity: 0.7; /* Légère transparence */
}
.el-button:has(> .el-button-loader)[b-aurt753709],
.el-button:has(> .el-button-success-icon)[b-aurt753709] {
    padding-left: 2em;
    
}
@keyframes el-button-spin-b-aurt753709 {
    from {
        transform: translate(-50%, -50%) rotate(0deg);
    }

    to {
        transform: translate(-50%, -50%) rotate(360deg);
    }
}

/* --- Exemple d'icône Succès (Checkmark CSS) --- */
.el-button-success-icon[b-aurt753709] {
    width: 0.6em; /* Ajuster taille */
    height: 1em;
    border: solid currentColor; /* Utilise la couleur du texte */
    border-width: 0 2px 2px 0;
    transform: translate(-50%, -60%) rotate(45deg); /* Ajustement fin pour centrage visuel */
    opacity: 0.9;
}

/* Primary */
.el-button-primary[b-aurt753709] {
    color: var(--el-color-white, #fff);
    background-color: var(--el-color-primary);
    border-color: var(--el-color-primary);
}

    .el-button-primary:hover:not(.el-button-disabled)[b-aurt753709] {
        background-color: var(--el-color-primary-dark);
        border-color: var(--el-color-primary-dark);
    }

/* Secondary */
.el-button-secondary[b-aurt753709] {
    color: var(--el-color-white, #fff);
    background-color: var(--el-color-secondary);
    border-color: var(--el-color-secondary);
}

    .el-button-secondary:hover:not(.el-button-disabled)[b-aurt753709] {
        background-color: var(--el-color-secondary-dark);
        border-color: var(--el-color-secondary-dark);
    }

/* Accent */
.el-button-accent[b-aurt753709] {
    color: var(--el-color-white, #fff);
    background-color: var(--el-color-accent);
    border-color: var(--el-color-accent);
}

    .el-button-accent:hover:not(.el-button-disabled)[b-aurt753709] {
        background-color: var(--el-color-accent-dark);
        border-color: var(--el-color-accent-dark);
    }

/* Link */
.el-button-link[b-aurt753709] {
    color: var(--el-color-primary);
    background-color: transparent;
    border-color: transparent;
    padding: 0;
    box-shadow: none;
    text-decoration: underline;
}

    .el-button-link:hover:not(.el-button-disabled)[b-aurt753709] {
        color: var(--el-color-primary-dark);
    }

/* Danger */
.el-button-danger[b-aurt753709] {
    color: var(--el-color-white, #fff);
    background-color: var(--el-color-error);
    border-color: var(--el-color-error);
}

    .el-button-danger:hover:not(.el-button-disabled)[b-aurt753709] {
        background-color: rgba(var(--el-color-error-rgb), 0.85);
    }

/* Outlined */
.el-button-outlined[b-aurt753709] {
    color: var(--el-color-primary);
    background-color: transparent;
    border-color: var(--el-color-primary);
    border:1px solid;
}

    .el-button-outlined:hover:not(.el-button-disabled)[b-aurt753709] {
        background-color: var(--el-color-primary-light);
        border-color: var(--el-color-primary-dark);
        color: var(--el-color-primary-dark);
    }

/* Sizes */
.el-button-small[b-aurt753709] {
    padding: var(--el-spacing-xs) var(--el-spacing-sm);
    font-size: var(--el-font-size-sm);
}

.el-button-large[b-aurt753709] {
    padding: var(--el-spacing-md) var(--el-spacing-lg);
    font-size: var(--el-font-size-lg);
}

/* Disabled */
.el-button-disabled[b-aurt753709] {
    cursor: not-allowed;
    opacity: 0.6;
    box-shadow: none;
}
/* _content/FeastOnThePlanet.DesignSystem/Components/Card.razor.rz.scp.css */
/* Components/Cards/Card.razor.css */
.el-card[b-fbw6lhmzre] {
    position: relative;
    display: flex;
    flex-direction: column;
    min-width: 0;
    word-wrap: break-word;
    background-color: var(--el-color-white);
    background-clip: border-box;
    border: var(--el-border-width) solid var(--el-color-border);
    border-radius: var(--el-border-radius);
    overflow: hidden; /* Pour que l'image respecte le border-radius */
    box-shadow: 0 1px 3px rgba(0,0,0,0.1);
    transition: box-shadow 0.2s ease-in-out;
}

    .el-card:hover[b-fbw6lhmzre] {
        box-shadow: 0 4px 8px rgba(0,0,0,0.15);
    }

.el-card-img-top[b-fbw6lhmzre] {
    width: 100%;
    height: auto; /* Ou une hauteur fixe si besoin */
    object-fit: cover; /* Assure que l'image couvre bien */
    border-top-left-radius: calc(var(--el-border-radius) - var(--el-border-width)); /* Ajuste pour la bordure */
    border-top-right-radius: calc(var(--el-border-radius) - var(--el-border-width));
}

.el-card-body[b-fbw6lhmzre] {
    flex: 1 1 auto; /* Permet au corps de grandir */
    padding: var(--el-spacing-md);
}

.el-card-title[b-fbw6lhmzre] {
    margin-top: 0; /* Reset h5 margin */
    margin-bottom: var(--el-spacing-sm);
    font-size: 1.25rem; /* Ajuster si besoin */
}

.el-card-header[b-fbw6lhmzre],
.el-card-footer[b-fbw6lhmzre] {
    padding: var(--el-spacing-sm) var(--el-spacing-md);
    background-color: var(--el-color-background-light);
    border-bottom: var(--el-border-width) solid var(--el-color-border); /* Pour header */
}

.el-card-footer[b-fbw6lhmzre] {
    border-top: var(--el-border-width) solid var(--el-color-border);
    border-bottom: none;
    margin-top: var(--el-spacing-md); /* Espacement avant le footer */
}

.el-card-content p:last-child[b-fbw6lhmzre] {
    margin-bottom: 0; /* Evite une marge excessive à la fin */
}
/* _content/FeastOnThePlanet.DesignSystem/Components/Table.razor.rz.scp.css */
/* Styles pour la table elle-même (elle a l'attribut de scope) */
.el-table[b-o3e1a06e5a] {
    width: 100%;
    margin-bottom: var(--el-spacing-md); /* Sera écrasé par la règle pour .el-table-responsive > .el-table */
    color: var(--el-color-text-primary);
    background-color: var(--el-color-background);
    border-collapse: collapse;
    border-spacing: 0;
    font-family: var(--el-font-family-base);
    font-size: var(--el-font-size-base);
    line-height: var(--el-line-height-base);
}

    /* Styles pour les enfants DANS la table (qui n'ont pas forcément le scope) */
    /* !! Utilisation de ::deep !! */
    .el-table[b-o3e1a06e5a]  th,
    .el-table[b-o3e1a06e5a]  td {
        padding: var(--el-spacing-sm) var(--el-spacing-md);
        text-align: left;
        vertical-align: top;
    }

    .el-table[b-o3e1a06e5a]  thead.el-table-header {
         background-color: var(--el-color-background-alt);   
    }

        .el-table[b-o3e1a06e5a]  thead.el-table-header th {
            vertical-align: bottom;
            border-bottom: 2px solid var(--el-color-border);
            font-weight: var(--el-font-weight-semibold);
            color: var(--el-color-text-secondary);
            font-family: var(--el-font-family-heading);
            font-size: var(--el-font-size-lg);
            border-top: 0;
        }

    .el-table[b-o3e1a06e5a]  tbody tr td {
        border-bottom: 1px solid var(--el-color-border);
    }

    .el-table[b-o3e1a06e5a]  tbody tr:last-child td {
        border-bottom: 0;
    }

    .el-table[b-o3e1a06e5a]  tfoot.el-table-footer td {
        border-top: 2px solid var(--el-color-border);
        font-weight: var(--el-font-weight-semibold);
        color: var(--el-color-text-secondary);
    }

/* Variations avec ::deep */
.el-table-striped[b-o3e1a06e5a]  tbody tr:nth-of-type(odd) {
    background-color: var(--el-color-background-alt);
}

.el-table-hover[b-o3e1a06e5a]  tbody tr:hover {
    background-color: var(--el-color-primary-light);
    cursor: pointer;
}

/* Style pour la table bordurée elle-même */
.el-table-bordered[b-o3e1a06e5a] {
    border: 1px solid var(--el-color-border);
}

    /* Styles pour les cellules DANS la table bordurée */
    .el-table-bordered[b-o3e1a06e5a]  th,
    .el-table-bordered[b-o3e1a06e5a]  td {
        border: 1px solid var(--el-color-border);
    }

    .el-table-bordered[b-o3e1a06e5a]  thead.el-table-header th {
        border-bottom-width: 2px;
    }

    .el-table-bordered[b-o3e1a06e5a]  tbody tr:last-child td {
        border-bottom: 1px solid var(--el-color-border); /* Conserver la bordure en mode bordered */
    }

/* Styles pour les cellules DANS la table small */
.el-table-sm[b-o3e1a06e5a]  th,
.el-table-sm[b-o3e1a06e5a]  td {
    padding: var(--el-spacing-xs) var(--el-spacing-sm);
    font-size: var(--el-font-size-sm);
}

/* Style pour le wrapper responsive (il a l'attribut de scope) */
.el-table-responsive[b-o3e1a06e5a] {
    display: block;
    width: 100%;
    overflow-x: auto;
    -webkit-overflow-scrolling: touch;
    margin-bottom: var(--el-spacing-md);
}

    /* Cible la table DANS le wrapper responsive */
    /* Pas besoin de ::deep ici si .el-table est toujours un enfant direct */
    /* Blazor tentera de scoper les deux côtés si possible */
    .el-table-responsive > .el-table[b-o3e1a06e5a] {
        margin-bottom: 0;
    }
