/* /Components/Layout/MainLayout.razor.rz.scp.css */
.entete[b-jq823w4x6m] {
    position: relative;
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 0.6rem;
    padding: 1.1rem 1rem;
    border-bottom: 1px solid var(--bordure);
    background: var(--fond-carte);
}

.coeur[b-jq823w4x6m] {
    color: var(--mauve);
    font-size: 1.6rem;
    line-height: 1;
    text-decoration: none;
    cursor: default;
}

.nom-jeu[b-jq823w4x6m] {
    font-size: 1.35rem;
    font-weight: 700;
    letter-spacing: 0.02em;
}

.compte[b-jq823w4x6m] {
    position: absolute;
    right: 1rem;
    top: 50%;
    transform: translateY(-50%);
    display: flex;
    align-items: center;
    gap: 0.8rem;
    font-size: 0.85rem;
}

.prenom[b-jq823w4x6m] {
    font-weight: 600;
}

.lien-entete[b-jq823w4x6m] {
    border: none;
    background: none;
    padding: 0;
    color: #e3c6f0;
    font: inherit;
    text-decoration: none;
    cursor: pointer;
}

    .lien-entete:hover[b-jq823w4x6m] {
        color: white;
        text-decoration: underline;
    }

.deconnexion[b-jq823w4x6m] {
    margin: 0;
}

.version[b-jq823w4x6m] {
    color: var(--texte-doux);
    font-size: 0.8rem;
    font-variant-numeric: tabular-nums;
    text-decoration: none;
    cursor: default;
}

.contenu[b-jq823w4x6m] {
    padding: 1.25rem 1rem 1.5rem;
}

#blazor-error-ui[b-jq823w4x6m] {
    background: #5a1a1a;
    color: white;
    bottom: 0;
    box-sizing: border-box;
    display: none;
    left: 0;
    padding: 0.6rem 1.25rem 0.7rem 1.25rem;
    position: fixed;
    width: 100%;
    z-index: 1000;
}

    #blazor-error-ui a[b-jq823w4x6m] {
        color: white;
    }

    #blazor-error-ui .dismiss[b-jq823w4x6m] {
        cursor: pointer;
        position: absolute;
        right: 0.75rem;
        top: 0.5rem;
    }
/* /Components/Layout/ReconnectModal.razor.rz.scp.css */
.components-reconnect-first-attempt-visible[b-edh1zfzdtp],
.components-reconnect-repeated-attempt-visible[b-edh1zfzdtp],
.components-reconnect-failed-visible[b-edh1zfzdtp],
.components-pause-visible[b-edh1zfzdtp],
.components-resume-failed-visible[b-edh1zfzdtp],
.components-rejoining-animation[b-edh1zfzdtp] {
    display: none;
}

#components-reconnect-modal.components-reconnect-show .components-reconnect-first-attempt-visible[b-edh1zfzdtp],
#components-reconnect-modal.components-reconnect-show .components-rejoining-animation[b-edh1zfzdtp],
#components-reconnect-modal.components-reconnect-paused .components-pause-visible[b-edh1zfzdtp],
#components-reconnect-modal.components-reconnect-resume-failed .components-resume-failed-visible[b-edh1zfzdtp],
#components-reconnect-modal.components-reconnect-retrying[b-edh1zfzdtp],
#components-reconnect-modal.components-reconnect-retrying .components-reconnect-repeated-attempt-visible[b-edh1zfzdtp],
#components-reconnect-modal.components-reconnect-retrying .components-rejoining-animation[b-edh1zfzdtp],
#components-reconnect-modal.components-reconnect-failed[b-edh1zfzdtp],
#components-reconnect-modal.components-reconnect-failed .components-reconnect-failed-visible[b-edh1zfzdtp] {
    display: block;
}


#components-reconnect-modal[b-edh1zfzdtp] {
    background-color: white;
    width: 20rem;
    margin: 20vh auto;
    padding: 2rem;
    border: 0;
    border-radius: 0.5rem;
    box-shadow: 0 3px 6px 2px rgba(0, 0, 0, 0.3);
    opacity: 0;
    transition: display 0.5s allow-discrete, overlay 0.5s allow-discrete;
    animation: components-reconnect-modal-fadeOutOpacity-b-edh1zfzdtp 0.5s both;
    &[open]

{
    animation: components-reconnect-modal-slideUp-b-edh1zfzdtp 1.5s cubic-bezier(.05, .89, .25, 1.02) 0.3s, components-reconnect-modal-fadeInOpacity-b-edh1zfzdtp 0.5s ease-in-out 0.3s;
    animation-fill-mode: both;
}

}

#components-reconnect-modal[b-edh1zfzdtp]::backdrop {
    background-color: rgba(0, 0, 0, 0.4);
    animation: components-reconnect-modal-fadeInOpacity-b-edh1zfzdtp 0.5s ease-in-out;
    opacity: 1;
}

@keyframes components-reconnect-modal-slideUp-b-edh1zfzdtp {
    0% {
        transform: translateY(30px) scale(0.95);
    }

    100% {
        transform: translateY(0);
    }
}

@keyframes components-reconnect-modal-fadeInOpacity-b-edh1zfzdtp {
    0% {
        opacity: 0;
    }

    100% {
        opacity: 1;
    }
}

@keyframes components-reconnect-modal-fadeOutOpacity-b-edh1zfzdtp {
    0% {
        opacity: 1;
    }

    100% {
        opacity: 0;
    }
}

.components-reconnect-container[b-edh1zfzdtp] {
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: 1rem;
}

#components-reconnect-modal p[b-edh1zfzdtp] {
    margin: 0;
    text-align: center;
}

#components-reconnect-modal button[b-edh1zfzdtp] {
    border: 0;
    background-color: #6b9ed2;
    color: white;
    padding: 4px 24px;
    border-radius: 4px;
}

    #components-reconnect-modal button:hover[b-edh1zfzdtp] {
        background-color: #3b6ea2;
    }

    #components-reconnect-modal button:active[b-edh1zfzdtp] {
        background-color: #6b9ed2;
    }

.components-rejoining-animation[b-edh1zfzdtp] {
    position: relative;
    width: 80px;
    height: 80px;
}

    .components-rejoining-animation div[b-edh1zfzdtp] {
        position: absolute;
        border: 3px solid #0087ff;
        opacity: 1;
        border-radius: 50%;
        animation: components-rejoining-animation-b-edh1zfzdtp 1.5s cubic-bezier(0, 0.2, 0.8, 1) infinite;
    }

        .components-rejoining-animation div:nth-child(2)[b-edh1zfzdtp] {
            animation-delay: -0.5s;
        }

@keyframes components-rejoining-animation-b-edh1zfzdtp {
    0% {
        top: 40px;
        left: 40px;
        width: 0;
        height: 0;
        opacity: 0;
    }

    4.9% {
        top: 40px;
        left: 40px;
        width: 0;
        height: 0;
        opacity: 0;
    }

    5% {
        top: 40px;
        left: 40px;
        width: 0;
        height: 0;
        opacity: 1;
    }

    100% {
        top: 0px;
        left: 0px;
        width: 80px;
        height: 80px;
        opacity: 0;
    }
}
/* /Components/Pages/AdminComptes.razor.rz.scp.css */
.carte-admin[b-ul4j4wm7n7] {
    max-width: 820px;
    margin: 0 auto;
    padding: 2rem;
    background: var(--fond-carte);
    border: 2px solid var(--mauve);
    border-radius: 18px;
}

h1[b-ul4j4wm7n7] {
    margin: 0 0 1rem;
    text-align: center;
    font-size: 1.8rem;
}

h2[b-ul4j4wm7n7] {
    margin: 1.5rem 0 0.6rem;
    font-size: 1.1rem;
    color: #e3c6f0;
}

.invitation[b-ul4j4wm7n7] {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    gap: 0.5rem;
}

.champ[b-ul4j4wm7n7] {
    flex: 1 1 12rem;
    min-width: 0;
    padding: 0.55rem 0.9rem;
    border: 1.5px solid var(--bordure);
    border-radius: 10px;
    background: var(--fond-champ);
    color: white;
    font: inherit;
}

    .champ:focus[b-ul4j4wm7n7] {
        outline: none;
        border-color: var(--mauve);
    }

.case[b-ul4j4wm7n7] {
    color: var(--texte-doux);
    white-space: nowrap;
}

.succes[b-ul4j4wm7n7], .erreur[b-ul4j4wm7n7] {
    margin: 0.75rem 0 0;
    padding: 0.6rem 0.9rem;
    border-radius: 10px;
}

.succes[b-ul4j4wm7n7] {
    background: rgba(46, 204, 113, 0.15);
    border: 1px solid #2ecc71;
}

.erreur[b-ul4j4wm7n7] {
    background: rgba(200, 40, 60, 0.18);
    border: 1px solid #c8283c;
    color: #ffd0d6;
}

.vide[b-ul4j4wm7n7] {
    color: var(--texte-doux);
}

.liste[b-ul4j4wm7n7] {
    list-style: none;
    margin: 0;
    padding: 0;
    display: flex;
    flex-direction: column;
    gap: 0.5rem;
}

    .liste li[b-ul4j4wm7n7] {
        display: flex;
        flex-wrap: wrap;
        align-items: center;
        justify-content: space-between;
        gap: 0.5rem;
        padding: 0.65rem 0.9rem;
        border-radius: 12px;
        background: var(--fond-champ);
    }

        .liste li.bloque[b-ul4j4wm7n7] {
            opacity: 0.6;
        }

.details[b-ul4j4wm7n7] {
    color: var(--texte-doux);
    font-size: 0.85rem;
}

.actions[b-ul4j4wm7n7] {
    display: flex;
    gap: 0.4rem;
}

.bouton.petit[b-ul4j4wm7n7] {
    padding: 0.4rem 0.9rem;
    font-size: 0.85rem;
}

.boutons[b-ul4j4wm7n7] {
    display: flex;
    justify-content: center;
    gap: 0.75rem;
    margin-top: 1.5rem;
}

.voile[b-ul4j4wm7n7] {
    position: fixed;
    inset: 0;
    z-index: 50;
    display: grid;
    place-items: center;
    padding: 1rem;
    background: rgba(10, 6, 14, 0.72);
}

.confirmation[b-ul4j4wm7n7] {
    width: min(460px, 100%);
    padding: 1.5rem;
    border-radius: 16px;
    background: var(--fond-carte);
    border: 2px solid var(--mauve);
    text-align: center;
}

    .confirmation p[b-ul4j4wm7n7] {
        margin: 0;
    }
/* /Components/Pages/Editeur.razor.rz.scp.css */
/* Éditeur de gages : liste à gauche, détail à droite (l'un sous l'autre sur un écran étroit) */
.editeur[b-8pmhp3gwlj] {
    display: grid;
    grid-template-columns: minmax(0, 55fr) minmax(0, 45fr);
    gap: 1rem;
    height: calc(100vh - 7rem);
}

@media (max-width: 1000px) {
    .editeur[b-8pmhp3gwlj] {
        grid-template-columns: minmax(0, 1fr);
        height: auto;
    }

    .tableau[b-8pmhp3gwlj] {
        height: 55vh;
    }
}

.liste[b-8pmhp3gwlj], .detail[b-8pmhp3gwlj] {
    display: flex;
    flex-direction: column;
    min-height: 0;
    padding: 0.75rem;
    background: var(--fond-carte);
    border-radius: 14px;
}

.detail[b-8pmhp3gwlj] {
    overflow-y: auto;
    gap: 0.6rem;
}

.champ[b-8pmhp3gwlj], select[b-8pmhp3gwlj], textarea[b-8pmhp3gwlj] {
    background: var(--fond-champ);
    color: var(--texte);
    border: 1.5px solid var(--bordure);
    border-radius: 8px;
    padding: 0.4rem 0.6rem;
    font: inherit;
}

    .champ:focus[b-8pmhp3gwlj], select:focus[b-8pmhp3gwlj], textarea:focus[b-8pmhp3gwlj] {
        outline: none;
        border-color: var(--mauve);
    }

/* ---------- Liste ---------- */

.filtres[b-8pmhp3gwlj] {
    display: flex;
    flex-wrap: wrap;
    gap: 0.4rem 0.8rem;
    align-items: center;
    margin-bottom: 0.6rem;
    color: var(--texte-doux);
    font-size: 0.9rem;
}

    .filtres label[b-8pmhp3gwlj] {
        display: flex;
        align-items: center;
        gap: 0.35rem;
    }

    .filtres select[b-8pmhp3gwlj] {
        max-width: 16rem;
    }

.recherche[b-8pmhp3gwlj] {
    flex: 1 1 14rem;
}

.case-a-cocher input[b-8pmhp3gwlj] {
    accent-color: var(--mauve);
}

.tableau[b-8pmhp3gwlj] {
    flex: 1;
    min-height: 0;
    overflow: auto;
    background: var(--fond-champ);
    border-radius: 8px;
}

table[b-8pmhp3gwlj] {
    width: 100%;
    border-collapse: collapse;
    font-size: 0.85rem;
    table-layout: fixed;
}

th[b-8pmhp3gwlj] {
    position: sticky;
    top: 0;
    z-index: 1;
    background: #232323;
    text-align: left;
    padding: 0.4rem;
}

    th:nth-child(1)[b-8pmhp3gwlj] { width: 3.5rem; }
    th:nth-child(2)[b-8pmhp3gwlj] { width: 3rem; }
    th:nth-child(3)[b-8pmhp3gwlj] { width: 2.8rem; }
    th:nth-child(4)[b-8pmhp3gwlj] { width: 5rem; }
    th:nth-child(5)[b-8pmhp3gwlj] { width: 22%; }
    th:nth-child(6)[b-8pmhp3gwlj] { width: 5.6rem; }

td[b-8pmhp3gwlj] {
    height: 34px;
    padding: 0 0.4rem;
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
    color: var(--texte-doux);
    border-top: 1px solid #3a3a3a;
}

tr[b-8pmhp3gwlj] {
    cursor: pointer;
}

    tr:hover td[b-8pmhp3gwlj] {
        background: #383838;
    }

    tr.choisi td[b-8pmhp3gwlj] {
        background: var(--mauve);
        color: white;
    }

.compte[b-8pmhp3gwlj] {
    margin: 0.5rem 0 0;
    color: var(--texte-doux);
    font-size: 0.85rem;
}

/* ---------- Détail ---------- */

.photo[b-8pmhp3gwlj] {
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: 0.3rem;
    color: var(--texte-doux);
    font-size: 0.85rem;
}

    .photo img[b-8pmhp3gwlj] {
        max-width: 100%;
        max-height: 30vh;
        border-radius: 8px;
    }

/* N° du gage puis les champs à la suite, chacun à la largeur de son contenu ; Pratique et Qui reçoit sur leur ligne */
.champs[b-8pmhp3gwlj] {
    display: flex;
    flex-wrap: wrap;
    align-items: flex-end;
    gap: 0.4rem 0.6rem;
}

    .champs label[b-8pmhp3gwlj] {
        display: flex;
        flex-direction: column;
        gap: 0.15rem;
        min-width: 0;
        color: var(--texte-doux);
        font-size: 0.8rem;
    }

    .champs select[b-8pmhp3gwlj], .champs .champ[b-8pmhp3gwlj] {
        padding: 0.25rem 0.4rem;
        font-size: 0.9rem;
    }

    .champs .large[b-8pmhp3gwlj] {
        flex-basis: 100%;
    }

        .champs .large select[b-8pmhp3gwlj] {
            align-self: flex-start;
            max-width: 100%;
        }

.numero[b-8pmhp3gwlj] {
    align-self: center;
    margin-right: 0.3rem;
    color: var(--texte-doux);
    font-size: 0.85rem;
    font-weight: 700;
    white-space: nowrap;
}

.photo-champ[b-8pmhp3gwlj] {
    display: flex;
    align-items: flex-end;
    gap: 0.4rem;
}

    .photo-champ .champ[b-8pmhp3gwlj] {
        width: 12rem;
    }

.envoi[b-8pmhp3gwlj] {
    flex-shrink: 0;
}

    .envoi[b-8pmhp3gwlj]  input {
        display: none;
    }

    .envoi .bouton[b-8pmhp3gwlj] {
        padding: 0.3rem 0.8rem;
        font-size: 0.8rem;
    }

.texte[b-8pmhp3gwlj] {
    width: 100%;
    resize: vertical;
    font-size: 1rem;
    field-sizing: content; /* s'agrandit avec le texte là où le navigateur le permet (sinon : nombre de lignes calculé) */
    min-height: 4.5rem;
}

.aide[b-8pmhp3gwlj] {
    margin: 0;
    color: var(--texte-doux);
    font-size: 0.85rem;
}

    .aide.vide[b-8pmhp3gwlj] {
        margin: 2rem 0 1rem;
        text-align: center;
    }

.apercus[b-8pmhp3gwlj] {
    display: flex;
    flex-direction: column;
    gap: 0.5rem;
}

.apercu[b-8pmhp3gwlj] {
    padding: 0.6rem 0.8rem;
    background: var(--fond-champ);
    border-left: 3px solid var(--mauve);
    border-radius: 8px;
}

    .apercu h3[b-8pmhp3gwlj] {
        margin: 0 0 0.3rem;
        font-size: 0.95rem;
    }

.accord[b-8pmhp3gwlj] {
    margin: 0.1rem 0;
    color: var(--texte-doux);
    font-size: 0.85rem;
}

.texte-apercu[b-8pmhp3gwlj] {
    margin: 0.4rem 0 0;
    white-space: pre-line;
}

.alerte[b-8pmhp3gwlj] {
    color: salmon;
    font-weight: 600;
}

td.alerte[b-8pmhp3gwlj] {
    color: salmon;
}

.lien[b-8pmhp3gwlj] {
    align-self: flex-start;
    border: none;
    background: none;
    padding: 0;
    color: var(--mauve-clair);
    font: inherit;
    font-size: 0.8rem;
    text-decoration: underline;
    cursor: pointer;
}

.boutons[b-8pmhp3gwlj] {
    display: flex;
    flex-wrap: wrap;
    justify-content: flex-end;
    gap: 0.5rem;
    margin-top: 0.4rem;
}

    .boutons .bouton[b-8pmhp3gwlj] {
        padding: 0.4rem 0.9rem;
        font-size: 0.85rem;
    }

.bouton.danger[b-8pmhp3gwlj] {
    background: #963030;
}

    .bouton.danger:hover[b-8pmhp3gwlj] {
        background: #b03a3a;
    }

/* ---------- Boîtes de confirmation ---------- */

.voile[b-8pmhp3gwlj] {
    position: fixed;
    inset: 0;
    z-index: 20;
    display: flex;
    align-items: center;
    justify-content: center;
    padding: 1rem;
    background: rgba(0, 0, 0, 0.6);
}

.boite[b-8pmhp3gwlj] {
    width: min(520px, 100%);
    max-height: 90vh;
    overflow-y: auto;
    padding: 1.25rem;
    background: var(--fond-carte);
    border: 2px solid var(--mauve);
    border-radius: 16px;
}

    .boite h2[b-8pmhp3gwlj] {
        margin: 0 0 0.6rem;
        font-size: 1.2rem;
    }

.miniature[b-8pmhp3gwlj] {
    display: block;
    max-width: 100%;
    max-height: 30vh;
    margin: 0 auto 0.5rem;
    border-radius: 8px;
}
/* /Components/Pages/FenetreJeu.razor.rz.scp.css */
.voile[b-80r7875jzl] {
    position: fixed;
    inset: 0;
    z-index: 50;
    display: grid;
    place-items: center;
    padding: 1rem;
    background: rgba(10, 6, 14, 0.72);
    backdrop-filter: blur(3px);
    animation: apparition-b-80r7875jzl 0.18s ease-out;
}

/* La fenêtre tient dans la hauteur visible (dvh : sans les barres de Safari sur iPad) ; si la place manque,
   c'est la photo qui rétrécit, pour que le texte et les boutons restent toujours visibles. Le défilement ne sert
   plus qu'en dernier recours (texte très long sur un petit écran). */
.fenetre[b-80r7875jzl] {
    width: min(760px, 100%);
    max-height: calc(100vh - 2rem);
    max-height: calc(100dvh - 2rem);
    overflow-y: auto;
    padding: 1.5rem 1.75rem 1.75rem;
    background: var(--fond-carte);
    border: 2px solid var(--mauve);
    border-radius: 18px;
    box-shadow: 0 20px 60px rgba(0, 0, 0, 0.55);
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: 0.9rem;
    text-align: center;
}

    .fenetre > *[b-80r7875jzl] {
        flex-shrink: 0;
    }

    .fenetre.message[b-80r7875jzl] {
        width: min(480px, 100%);
    }

.coeur[b-80r7875jzl] {
    color: var(--mauve);
    font-size: 2rem;
    line-height: 1;
}

h2[b-80r7875jzl] {
    margin: 0;
    font-size: 1.5rem;
}

.etiquettes[b-80r7875jzl] {
    display: flex;
    flex-wrap: wrap;
    justify-content: center;
    gap: 0.4rem;
}

.etiquette[b-80r7875jzl] {
    padding: 0.2rem 0.75rem;
    border-radius: 999px;
    background: var(--fond-champ);
    border: 1px solid var(--bordure);
    color: var(--texte-doux);
    font-size: 0.8rem;
    font-weight: 600;
}

.texte[b-80r7875jzl] {
    margin: 0;
    font-size: 1.3rem;
    line-height: 1.5;
    white-space: pre-line;
}

.message .texte[b-80r7875jzl] {
    font-size: 1.1rem;
    color: var(--texte-doux);
}

.photo[b-80r7875jzl] {
    flex-shrink: 1;
    min-height: 7rem;
    max-width: 100%;
    max-height: 48vh;
    border-radius: 12px;
    object-fit: contain;
}

.action[b-80r7875jzl] {
    margin: 0;
    padding: 0.5rem 1rem;
    border-radius: 10px;
    background: rgba(155, 89, 182, 0.18);
    color: #e9d6f2;
    font-style: italic;
}

.chrono[b-80r7875jzl] {
    display: flex;
    align-items: center;
    gap: 0.75rem;
    font-size: 1.6rem;
    font-weight: 700;
    font-variant-numeric: tabular-nums;
}

    .chrono.fini[b-80r7875jzl] {
        color: #ff9fb4;
        font-size: 1.2rem;
    }

.mini[b-80r7875jzl] {
    border: 1px solid var(--bordure);
    background: var(--fond-champ);
    color: var(--texte-doux);
    border-radius: 999px;
    padding: 0.25rem 0.75rem;
    font: inherit;
    font-size: 0.85rem;
    font-weight: 600;
    cursor: pointer;
}

.boutons[b-80r7875jzl] {
    display: flex;
    flex-wrap: wrap;
    justify-content: center;
    gap: 0.75rem;
    margin-top: 0.25rem;
}

.suite[b-80r7875jzl] {
    margin: 0;
    color: var(--texte-doux);
    font-size: 0.8rem;
}

@keyframes apparition-b-80r7875jzl {
    from {
        opacity: 0;
    }
}
/* /Components/Pages/Home.razor.rz.scp.css */
.accueil[b-iz38skjqpu] {
    max-width: 560px;
    margin: 6vh auto 0;
    padding: 2.5rem 2rem;
    background: var(--fond-carte);
    border: 2px solid var(--mauve);
    border-radius: 18px;
    text-align: center;
}

.coeur-accueil[b-iz38skjqpu] {
    color: var(--mauve);
    font-size: 3.5rem;
    line-height: 1;
}

h1[b-iz38skjqpu] {
    margin: 0.75rem 0 0.25rem;
    font-size: 2.1rem;
}

.accroche[b-iz38skjqpu] {
    margin: 0;
    color: var(--texte-doux);
    font-style: italic;
}

.actions[b-iz38skjqpu] {
    display: flex;
    flex-wrap: wrap;
    justify-content: center;
    gap: 0.75rem;
    margin-top: 2rem;
}

.pied[b-iz38skjqpu] {
    margin: 1.75rem 0 0;
    color: var(--texte-doux);
    font-size: 0.85rem;
}
/* /Components/Pages/IconeCase.razor.rz.scp.css */
/* Un peu plus grande que le texte, pour peser autant que « 69 » ou « +2 » */
svg[b-puwqvz813h] {
    display: inline-block;
    width: 1.15em;
    height: 1.15em;
    vertical-align: middle;
    filter: drop-shadow(0 1px 1px rgba(0, 0, 0, 0.35));
}
/* /Components/Pages/ListeParties.razor.rz.scp.css */
.carte-parties[b-629ejjw6cg] {
    max-width: 760px;
    margin: 0 auto;
    padding: 2rem;
    background: var(--fond-carte);
    border: 2px solid var(--mauve);
    border-radius: 18px;
}

h1[b-629ejjw6cg] {
    margin: 0 0 1.25rem;
    text-align: center;
    font-size: 1.8rem;
}

.vide[b-629ejjw6cg] {
    text-align: center;
    color: var(--texte-doux);
}

.liste[b-629ejjw6cg] {
    list-style: none;
    margin: 0;
    padding: 0;
    display: flex;
    flex-direction: column;
    gap: 0.75rem;
}

.partie[b-629ejjw6cg] {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    justify-content: space-between;
    gap: 0.75rem;
    padding: 0.8rem 1rem;
    border-radius: 14px;
    background: var(--fond-champ);
    border: 1.5px solid transparent;
}

    .partie.appareil[b-629ejjw6cg] {
        border-color: var(--mauve);
    }

.infos[b-629ejjw6cg] {
    min-width: 0;
}

.joueurs[b-629ejjw6cg] {
    display: flex;
    flex-wrap: wrap;
    gap: 0.35rem 0.8rem;
    font-weight: 700;
    font-size: 1.05rem;
}

.joueur[b-629ejjw6cg] {
    display: inline-flex;
    align-items: center;
    gap: 0.35rem;
}

    .joueur[b-629ejjw6cg]::before {
        content: "";
        width: 0.6rem;
        height: 0.6rem;
        border-radius: 50%;
        background: var(--couleur);
    }

.details[b-629ejjw6cg] {
    margin-top: 0.25rem;
    color: var(--texte-doux);
    font-size: 0.88rem;
}

.puce[b-629ejjw6cg] {
    display: inline-block;
    margin-left: 0.3rem;
    padding: 0 0.5rem;
    border-radius: 999px;
    border: 1px solid var(--bordure);
    font-size: 0.8rem;
}

    .puce.ici[b-629ejjw6cg] {
        border-color: var(--mauve);
        color: #e3c6f0;
    }

.actions[b-629ejjw6cg] {
    display: flex;
    gap: 0.5rem;
}

    .actions .bouton[b-629ejjw6cg] {
        padding: 0.5rem 1.1rem;
        font-size: 0.92rem;
    }

.note[b-629ejjw6cg] {
    margin: 1.25rem 0 0;
    text-align: center;
    color: var(--texte-doux);
    font-size: 0.85rem;
}

.boutons[b-629ejjw6cg] {
    display: flex;
    justify-content: center;
    gap: 0.75rem;
    margin-top: 1.25rem;
}

.voile[b-629ejjw6cg] {
    position: fixed;
    inset: 0;
    z-index: 50;
    display: grid;
    place-items: center;
    padding: 1rem;
    background: rgba(10, 6, 14, 0.72);
}

.confirmation[b-629ejjw6cg] {
    width: min(460px, 100%);
    padding: 1.5rem;
    border-radius: 16px;
    background: var(--fond-carte);
    border: 2px solid var(--mauve);
    text-align: center;
}

    .confirmation p[b-629ejjw6cg] {
        margin: 0;
    }
/* /Components/Pages/NouvellePartie.razor.rz.scp.css */
.carte-config[b-iussa6j3sj] {
    max-width: 760px;
    margin: 0 auto;
    padding: 2rem;
    background: var(--fond-carte);
    border: 2px solid var(--mauve);
    border-radius: 18px;
}

h1[b-iussa6j3sj] {
    margin: 0 0 1.25rem;
    text-align: center;
    font-size: 1.8rem;
}

.nombre[b-iussa6j3sj] {
    display: flex;
    justify-content: center;
    gap: 0.5rem;
    margin-bottom: 1.5rem;
}

.choix[b-iussa6j3sj] {
    border: 1.5px solid var(--bordure);
    background: var(--fond-champ);
    color: var(--texte-doux);
    font: inherit;
    font-weight: 600;
    padding: 0.5rem 1rem;
    border-radius: 999px;
    cursor: pointer;
    transition: background 0.15s, border-color 0.15s, color 0.15s;
}

    .choix:hover[b-iussa6j3sj] {
        border-color: var(--mauve);
        color: white;
    }

    .choix.actif[b-iussa6j3sj] {
        background: var(--mauve);
        border-color: var(--mauve);
        color: white;
    }

.joueurs[b-iussa6j3sj] {
    display: flex;
    flex-direction: column;
    gap: 0.75rem;
}

/* ---------- Un joueur ---------- */

.bloc-joueur[b-iussa6j3sj] {
    padding: 0.75rem 0.9rem;
    border-radius: 14px;
    background: var(--fond-champ);
    border-left: 4px solid var(--couleur);
}

.ligne-joueur[b-iussa6j3sj] {
    display: grid;
    grid-template-columns: auto minmax(0, 1fr) auto auto;
    align-items: center;
    gap: 0.6rem;
}

.pion-choisi[b-iussa6j3sj] {
    position: relative;
    width: 3rem;
    height: 3rem;
    padding: 0;
    border-radius: 50%;
    border: 3px solid var(--couleur);
    background: #555;
    cursor: pointer;
    overflow: visible;
}

    .pion-choisi img[b-iussa6j3sj] {
        width: 100%;
        height: 100%;
        border-radius: 50%;
        object-fit: cover;
    }

    .pion-choisi:hover[b-iussa6j3sj] {
        box-shadow: 0 0 0 3px rgba(155, 89, 182, 0.55);
    }

.numero-pion[b-iussa6j3sj] {
    position: absolute;
    right: -6px;
    bottom: -6px;
    width: 1.3rem;
    height: 1.3rem;
    border-radius: 50%;
    background: var(--couleur);
    color: #1d1d1d;
    font-size: 0.75rem;
    font-weight: 800;
    display: grid;
    place-items: center;
}

.champ[b-iussa6j3sj] {
    min-width: 0;
    padding: 0.55rem 0.9rem;
    border: 1.5px solid var(--bordure);
    border-radius: 10px;
    background: var(--fond-carte);
    color: white;
    font: inherit;
    font-size: 1.05rem;
}

    .champ:focus[b-iussa6j3sj] {
        outline: none;
        border-color: var(--mauve);
    }

.sexe[b-iussa6j3sj] {
    display: flex;
    gap: 0.35rem;
}

    .sexe .choix[b-iussa6j3sj] {
        padding: 0.5rem 0.8rem;
    }

    .sexe .homme.actif[b-iussa6j3sj] {
        background: #3d78b8;
        border-color: #3d78b8;
    }

    .sexe .femme.actif[b-iussa6j3sj] {
        background: #c25a95;
        border-color: #c25a95;
    }

.bi[b-iussa6j3sj] {
    border: none;
    border-radius: 10px;
    background: transparent;
    color: var(--texte-doux);
    font: inherit;
    font-weight: 700;
    padding: 0.5rem 0.8rem;
    cursor: pointer;
}

    .bi:hover[b-iussa6j3sj] {
        background: rgba(155, 89, 182, 0.35);
    }

    .bi.actif[b-iussa6j3sj] {
        background: var(--mauve);
        color: white;
    }

.reglages[b-iussa6j3sj] {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    gap: 0.5rem;
    margin: 0.6rem 0 0 3.6rem;
}

.reglage[b-iussa6j3sj] {
    border: 1px solid var(--bordure);
    background: var(--fond-carte);
    color: white;
    font: inherit;
    font-size: 0.9rem;
    font-weight: 600;
    padding: 0.35rem 0.85rem;
    border-radius: 999px;
    cursor: pointer;
}

    .reglage:hover[b-iussa6j3sj] {
        border-color: var(--mauve);
    }

.compte[b-iussa6j3sj] {
    color: var(--texte-doux);
    font-weight: 400;
    margin-left: 0.25rem;
}

.retrouve[b-iussa6j3sj] {
    color: #d9b8ea;
    font-size: 0.82rem;
    font-style: italic;
}

/* Options de toute la partie, sous les joueurs */
.options[b-iussa6j3sj] {
    display: flex;
    flex-wrap: wrap;
    justify-content: center;
    gap: 0.5rem;
    margin-top: 1.25rem;
}

.erreur[b-iussa6j3sj] {
    margin: 1rem 0 0;
    padding: 0.7rem 1rem;
    border-radius: 10px;
    background: rgba(200, 40, 60, 0.18);
    border: 1px solid #c8283c;
    color: #ffd0d6;
    text-align: center;
}

.boutons[b-iussa6j3sj] {
    display: flex;
    justify-content: center;
    gap: 0.75rem;
    margin-top: 1.5rem;
}

/* ---------- Fenêtre de choix (pion, pratiques, vêtements) ---------- */

.voile[b-iussa6j3sj] {
    position: fixed;
    inset: 0;
    z-index: 50;
    display: grid;
    place-items: center;
    padding: 1rem;
    background: rgba(10, 6, 14, 0.72);
    backdrop-filter: blur(3px);
}

.panneau-choix[b-iussa6j3sj] {
    width: min(720px, 100%);
    max-height: calc(100vh - 2rem);
    overflow-y: auto;
    padding: 1.5rem 1.75rem;
    background: var(--fond-carte);
    border: 2px solid var(--mauve);
    border-radius: 18px;
    box-shadow: 0 20px 60px rgba(0, 0, 0, 0.55);
}

    .panneau-choix h2[b-iussa6j3sj] {
        margin: 0 0 0.75rem;
        text-align: center;
        font-size: 1.4rem;
    }

    .panneau-choix h3[b-iussa6j3sj] {
        margin: 1rem 0 0.5rem;
        font-size: 0.95rem;
        color: var(--texte-doux);
    }

.aide[b-iussa6j3sj] {
    margin: 0 0 0.5rem;
    color: var(--texte-doux);
    font-size: 0.9rem;
    text-align: center;
}

.grille-pions[b-iussa6j3sj] {
    display: grid;
    grid-template-columns: repeat(4, minmax(0, 1fr));
    gap: 0.75rem;
}

.pion-option[b-iussa6j3sj] {
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: 0.4rem;
    padding: 0.75rem 0.5rem;
    border-radius: 14px;
    border: 2px solid var(--bordure);
    background: var(--fond-champ);
    color: var(--texte-doux);
    font: inherit;
    font-size: 0.85rem;
    cursor: pointer;
}

    .pion-option img[b-iussa6j3sj] {
        width: 64px;
        height: 64px;
        object-fit: contain;
    }

    .pion-option:hover[b-iussa6j3sj] {
        border-color: var(--mauve);
        color: white;
    }

    .pion-option.actif[b-iussa6j3sj] {
        border-color: var(--mauve);
        background: rgba(155, 89, 182, 0.3);
        color: white;
    }

.puces[b-iussa6j3sj] {
    display: flex;
    flex-wrap: wrap;
    gap: 0.4rem;
}

.puce-choix[b-iussa6j3sj] {
    border: 1px solid var(--bordure);
    background: var(--fond-champ);
    color: var(--texte-doux);
    font: inherit;
    font-size: 0.88rem;
    padding: 0.35rem 0.8rem;
    border-radius: 999px;
    cursor: pointer;
    text-decoration: line-through;
    text-decoration-color: rgba(255, 255, 255, 0.35);
}

    .puce-choix.actif[b-iussa6j3sj] {
        background: rgba(155, 89, 182, 0.4);
        border-color: var(--mauve);
        color: white;
        text-decoration: none;
    }

.actions-panneau[b-iussa6j3sj] {
    display: flex;
    justify-content: center;
    gap: 1.25rem;
    margin-top: 1rem;
}

.lien[b-iussa6j3sj] {
    border: none;
    background: none;
    color: var(--texte-doux);
    font: inherit;
    font-size: 0.9rem;
    text-decoration: underline;
    cursor: pointer;
}

    .lien:hover[b-iussa6j3sj] {
        color: white;
    }

@media (max-width: 620px) {
    .ligne-joueur[b-iussa6j3sj] {
        grid-template-columns: auto minmax(0, 1fr);
    }

    .sexe[b-iussa6j3sj], .bi[b-iussa6j3sj] {
        grid-column: 2;
    }

    .reglages[b-iussa6j3sj] {
        margin-left: 0;
    }

    .grille-pions[b-iussa6j3sj] {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }
}
/* /Components/Pages/PartieJeu.razor.rz.scp.css */
.sans-partie[b-gvkvezazb3] {
    text-align: center;
    margin-top: 10vh;
    color: var(--texte-doux);
}

/* Le cadre du plateau : la plus grande taille qui tient dans la fenêtre, sous l'en-tête.
   --hors-du-jeu : la hauteur prise par l'en-tête et les marges (réduite en plein écran, voir app.css) */
.table-de-jeu[b-gvkvezazb3] {
    position: relative;
    width: min(100%, calc((100dvh - var(--hors-du-jeu, 100px) - 20px) * var(--proportion) + 20px));
    margin: 0 auto;
    padding: 10px;
    border-radius: 18px;
    border: 2px solid var(--mauve);
    overflow: hidden;
    background-color: #111;
    background-size: cover;
    background-position: center;
}

    .table-de-jeu[b-gvkvezazb3]::before {
        content: "";
        position: absolute;
        inset: 0;
        background: rgba(15, 10, 20, 0.6);
    }

/* Colonnes et lignes données par le composant. La grille sert de repère : --case est la largeur d'une case,
   et tout ce qui est posé dans les couloirs se règle sur elle */
.grille[b-gvkvezazb3] {
    position: relative;
    display: grid;
    width: 100%;
    container-type: inline-size;
    --case: calc(100cqw / 14);
}

/* Un couloir vide qui reçoit des commandes */
.zone[b-gvkvezazb3] {
    position: relative;
    z-index: 1;
    min-width: 0;
    min-height: 0;
    margin: calc(var(--case) * 0.08);
}

/* ---------- Couloir du haut : le joueur en cours ---------- */

.tour[b-gvkvezazb3] {
    display: flex;
    align-items: center;
    justify-content: center;
    gap: calc(var(--case) * 0.18);
    font-size: calc(var(--case) * 0.24);
}

.bandeau[b-gvkvezazb3] {
    flex: 0 1 auto;
    min-width: 0;
    height: calc(var(--case) * 0.74);
    display: flex;
    align-items: center;
    gap: 0.45em;
    padding: 0 1.1em;
    border-radius: 999px;
    background: var(--mauve);
    border: 3px solid var(--couleur);
    font-size: 1.15em;
    font-weight: 700;
    white-space: nowrap;
    overflow: hidden;
}

    .bandeau:has(img)[b-gvkvezazb3] {
        padding-left: calc(var(--case) * 0.06);
    }

.pion-en-cours[b-gvkvezazb3] {
    flex: none;
    width: calc(var(--case) * 0.58);
    height: calc(var(--case) * 0.58);
    border-radius: 50%;
    border: 2px solid white;
    background: #555;
    object-fit: cover;
}

.plein-ecran[b-gvkvezazb3] {
    flex: none;
    width: calc(var(--case) * 0.6);
    height: calc(var(--case) * 0.6);
    padding: 0;
    border-radius: 22%;
    border: 1px solid var(--bordure);
    background: rgba(40, 40, 40, 0.8);
    color: var(--texte-doux);
    font: inherit;
    font-size: 1.3em;
    line-height: 1;
    cursor: pointer;
}

    .plein-ecran:hover[b-gvkvezazb3] {
        color: white;
        border-color: var(--mauve);
    }

.commandes[b-gvkvezazb3] {
    flex: none;
    display: flex;
    gap: calc(var(--case) * 0.12);
}

.commande[b-gvkvezazb3] {
    display: inline-flex;
    align-items: center;
    height: calc(var(--case) * 0.6);
    padding: 0 0.9em;
    border-radius: 999px;
    border: 1px solid var(--bordure);
    background: rgba(40, 40, 40, 0.85);
    color: var(--texte-doux);
    font-weight: 600;
    text-decoration: none;
    white-space: nowrap;
}

    .commande:hover[b-gvkvezazb3] {
        color: white;
        border-color: var(--mauve);
    }

/* ---------- Couloir central : le dé ---------- */

.centre[b-gvkvezazb3] {
    display: flex;
    align-items: center;
    justify-content: center;
    gap: calc(var(--case) * 0.25);
    font-size: calc(var(--case) * 0.26);
}

/* Nom du jeu sur deux lignes, à gauche du dé : avec le dé et le bouton, il tient dans les 7 cases du couloir */
.titre-jeu[b-gvkvezazb3] {
    flex: 0 1 auto;
    min-width: 0;
    max-width: calc(var(--case) * 2.3);
    display: flex;
    flex-direction: column;
    align-items: flex-end;
    text-align: right;
    line-height: 1.15;
}

.nom-jeu[b-gvkvezazb3] {
    font-size: 0.95em;
    font-weight: 700;
    color: var(--mauve-clair);
}

.version-jeu[b-gvkvezazb3] {
    color: var(--texte-doux);
    text-decoration: none;
    cursor: default;
    font-size: 0.6em;
    font-variant-numeric: tabular-nums;
}

.de[b-gvkvezazb3] {
    flex: none;
    width: calc(var(--case) * 0.74);
    height: calc(var(--case) * 0.74);
    border-radius: 14%;
    background: white;
    color: #2b2b2b;
    display: grid;
    place-items: center;
    font-size: calc(var(--case) * 0.46);
    font-weight: 800;
    box-shadow: inset 0 -4px 0 rgba(0, 0, 0, 0.15);
}

    .de.roule[b-gvkvezazb3] {
        animation: roule-b-gvkvezazb3 0.45s ease-out;
    }

.lancer[b-gvkvezazb3] {
    flex: none;
    height: calc(var(--case) * 0.74);
    padding: 0 1.3em;
    font-size: 1.1em;
}

/* ---------- Couloir intérieur : ce qui vient de se passer ---------- */

.action[b-gvkvezazb3] {
    margin-inline: calc(var(--case) * 0.25);
    align-self: center;
    text-align: center;
    color: #e9d6f2;
    font-style: italic;
    font-size: calc(var(--case) * 0.24);
    line-height: 1.3;
    display: -webkit-box;
    -webkit-line-clamp: 2;
    -webkit-box-orient: vertical;
    overflow: hidden;
}

    .action:empty[b-gvkvezazb3] {
        visibility: hidden;
    }

/* ---------- Colonne au-dessus du départ : la légende ---------- */

.legende[b-gvkvezazb3] {
    list-style: none;
    padding: 0;
    display: flex;
    flex-direction: column;
    justify-content: space-evenly;
    color: var(--texte-doux);
    font-size: calc(var(--case) * 0.155);
    line-height: 1.1;
}

    .legende li[b-gvkvezazb3] {
        display: flex;
        align-items: center;
        gap: 0.35em;
        white-space: nowrap;
        cursor: help;
    }

.icone-legende[b-gvkvezazb3] {
    flex: none;
    width: 1.9em;
    text-align: center;
    font-size: 1.3em;
    font-weight: 800;
    color: white;
}

/* ---------- Le plateau ---------- */

/* Le chemin : sous les cases, il se voit entre deux cases qui se suivent */
.chemin[b-gvkvezazb3] {
    position: absolute;
    inset: 0;
    width: 100%;
    height: 100%;
    overflow: visible;
}

    .chemin polyline[b-gvkvezazb3] {
        fill: none;
        stroke: rgba(190, 130, 220, 0.75);
        stroke-width: 0.1;
        stroke-linejoin: round;
        stroke-linecap: round;
    }

    .chemin .fleche[b-gvkvezazb3] {
        fill: none;
        stroke: white;
        stroke-width: 0.035;
        stroke-linecap: round;
        stroke-linejoin: round;
    }

/* Chaque case garde une marge autour d'elle : on voit le trait et la flèche vers la suivante */
.emplacement[b-gvkvezazb3] {
    position: relative;
    padding: calc(var(--case) * 0.07);
    min-width: 0;
    min-height: 0;
    /* Le numéro, l'icône et les pions suivent la taille de la case */
    container-type: size;
}

.case[b-gvkvezazb3] {
    position: relative;
    width: 100%;
    height: 100%;
    border-radius: 9px;
    background-color: #c38bec;
    border: 1px solid rgba(220, 180, 240, 0.28);
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    overflow: hidden;
}

.numero[b-gvkvezazb3] {
    position: absolute;
    top: 3px;
    left: 6px;
    font-size: clamp(9px, 19cqmin, 15px);
    font-weight: 700;
    line-height: 1.1;
    color: rgba(255, 255, 255, 0.72);
}

.icone[b-gvkvezazb3] {
    font-size: 44cqmin;
    font-weight: 800;
    line-height: 1;
    color: white;
}

/* Une teinte par niveau de gages, du lilas vif (cases 1 à 18) au violet presque noir (cases 60 à 68) */
.case.niveau-10[b-gvkvezazb3] {
    background-color: #8a44c2;
}

.case.niveau-20[b-gvkvezazb3] {
    background-color: #62299a;
}

.case.niveau-30[b-gvkvezazb3] {
    background-color: #451a75;
}

.case.niveau-40[b-gvkvezazb3] {
    background-color: #2a0f4a;
}

.case.donjon[b-gvkvezazb3] {
    background-color: rgba(150, 35, 55, 0.88);
    border-color: rgba(220, 90, 110, 0.55);
}

.case.reculetrois[b-gvkvezazb3] {
    background-color: rgba(140, 90, 40, 0.88);
    border-color: rgba(220, 160, 90, 0.5);
}

.case.depart[b-gvkvezazb3] {
    background-color: rgba(95, 55, 125, 0.9);
}

    .case.depart .numero[b-gvkvezazb3] {
        left: 0;
        right: 0;
        text-align: center;
        font-size: clamp(8px, 17cqmin, 13px);
    }

.case.arrivee[b-gvkvezazb3] {
    background: var(--mauve);
    border-color: white;
}

    .case.arrivee .icone[b-gvkvezazb3] {
        font-size: 60cqmin;
    }

.case.joueur-actif[b-gvkvezazb3] {
    box-shadow: 0 0 0 2px white, 0 0 14px rgba(255, 255, 255, 0.45);
}

.pions[b-gvkvezazb3] {
    position: absolute;
    bottom: 3px;
    right: 3px;
    left: 3px;
    display: flex;
    flex-wrap: wrap;
    justify-content: flex-end;
    gap: 2px;
}

.pion[b-gvkvezazb3] {
    width: clamp(14px, 34cqmin, 32px);
    height: clamp(14px, 34cqmin, 32px);
    border-radius: 50%;
    border: 2px solid white;
    background: #555;
    object-fit: cover;
    box-shadow: 0 1px 4px rgba(0, 0, 0, 0.7);
}

    .pion.a-son-tour[b-gvkvezazb3] {
        animation: pulsation-b-gvkvezazb3 1.2s ease-in-out infinite;
    }

/* ---------- Couloir du bas : les joueurs ---------- */

.joueurs[b-gvkvezazb3] {
    list-style: none;
    padding: 0;
    display: grid;
    grid-auto-flow: column;
    grid-auto-columns: minmax(0, 1fr);
    gap: calc(var(--case) * 0.16);
    font-size: calc(var(--case) * 0.2);
}

.joueur[b-gvkvezazb3] {
    display: flex;
    align-items: center;
    gap: 0.6em;
    padding: 0 0.7em;
    border-radius: 14px;
    background: rgba(62, 34, 84, 0.92);
    border: 2px solid transparent;
}

    .joueur.a-son-tour[b-gvkvezazb3] {
        border-color: var(--couleur);
    }

.pastille[b-gvkvezazb3] {
    position: relative;
    flex: none;
    width: calc(var(--case) * 0.56);
    height: calc(var(--case) * 0.56);
    border-radius: 50%;
    border: 3px solid var(--couleur);
    background: #555;
}

    .pastille img[b-gvkvezazb3] {
        width: 100%;
        height: 100%;
        border-radius: 50%;
        object-fit: cover;
    }

.numero-joueur[b-gvkvezazb3] {
    position: absolute;
    right: -0.45em;
    bottom: -0.45em;
    width: 1.3em;
    height: 1.3em;
    border-radius: 50%;
    background: var(--couleur);
    color: #1d1d1d;
    font-size: 0.8em;
    font-weight: 800;
    display: grid;
    place-items: center;
}

.infos[b-gvkvezazb3] {
    min-width: 0;
    flex: 1;
}

.nom[b-gvkvezazb3] {
    font-weight: 700;
    font-size: 1.1em;
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
}

.symbole[b-gvkvezazb3] {
    color: var(--texte-doux);
}

.etat[b-gvkvezazb3] {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    gap: 0.3em;
    color: var(--texte-doux);
    font-size: 0.85em;
}

.puce[b-gvkvezazb3] {
    padding: 0 0.5em;
    border-radius: 999px;
    background: rgba(40, 20, 55, 0.9);
    border: 1px solid rgba(200, 150, 225, 0.35);
    white-space: nowrap;
}

    .puce.donjon[b-gvkvezazb3] {
        border-color: #c84a5c;
        color: #ffc2cc;
    }

.message[b-gvkvezazb3] {
    font-size: 0.8em;
    font-style: italic;
    color: #e0cdea;
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
}

@keyframes pulsation-b-gvkvezazb3 {
    50% {
        transform: scale(1.18);
    }
}

@keyframes roule-b-gvkvezazb3 {
    0% {
        transform: rotate(-200deg) scale(0.6);
    }

    100% {
        transform: none;
    }
}

