/* Styles généraux pour le mode lecture (inchangé) */
body {
    font-family: 'Inter', -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Helvetica, Arial, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol";
    line-height: 1.7;
    background-color: #f8f9fa;
    color: #343a40;
    margin: 0;
    padding: 2rem 1rem;
    font-weight: 400;
    -webkit-font-smoothing: antialiased;
    -moz-osx-font-smoothing: grayscale;
}

main#text-container {
    font-family: 'Inter', sans-serif;
    max-width: 75ch;
    margin: 2rem auto;
    padding: 2rem 3rem;
    background-color: #ffffff;
    box-shadow: 0 4px 12px rgba(0, 0, 0, 0.08);
    border-radius: 8px;
    font-size: 1.1rem;
    text-align: left;
    hyphens: auto;
    white-space: pre-wrap;
    overflow-wrap: break-word;
    color: #212529; /* Couleur de base du texte */
}

.loading-message {
    text-align: center;
    color: #6c757d;
    white-space: normal;
    font-family: 'Inter', sans-serif;
}

/* Style de base pour les mots (inchangé) */
.word {
    transition: background-color 0.2s ease-in-out, color 0.3s ease-out; /* Ajouter transition pour la couleur de retour */
    border-radius: 3px;
    padding: 0 1px;
    margin: 0 -1px;
    display: inline-block;
    vertical-align: baseline;
}

.word.has-synonyms:hover {
    background-color: #e9ecef;
    cursor: pointer;
}

.synonyms {
    color: #0077cc;
    font-size: 0.9em;
    margin-left: 0.4em;
    font-family: 'Inter', sans-serif;
    font-weight: 500;
    white-space: nowrap;
    user-select: none;
    -webkit-user-select: none;
    -moz-user-select: none;
    -ms-user-select: none;
}

/* --- NOUVEAU : Animations de scintillement en couleurs pastel --- */

/* Définition des couleurs pastel (variables pour facilité) */
:root {
    --pastel-pink: #ffb3ba;
    --pastel-blue: #b3e0ff;
    --pastel-green: #baffc9;
    --pastel-yellow: #ffffba;
    --pastel-purple: #e0b3ff;
    --base-text-color: #212529; /* Rappel de la couleur de texte normale */
}

/* Keyframes pour différentes séquences de couleurs */
@keyframes shimmer-color-1 {
    0%, 100% { color: var(--base-text-color); }
    25% { color: var(--pastel-pink); }
    50% { color: var(--pastel-blue); }
    75% { color: var(--pastel-green); }
}

@keyframes shimmer-color-2 {
    0%, 100% { color: var(--base-text-color); }
    25% { color: var(--pastel-blue); }
    50% { color: var(--pastel-yellow); }
    75% { color: var(--pastel-purple); }
}

@keyframes shimmer-color-3 {
    0%, 100% { color: var(--base-text-color); }
    25% { color: var(--pastel-green); }
    50% { color: var(--pastel-purple); }
    75% { color: var(--pastel-pink); }
}

@keyframes shimmer-color-4 {
    0%, 100% { color: var(--base-text-color); }
    25% { color: var(--pastel-yellow); }
    50% { color: var(--pastel-pink); }
    75% { color: var(--pastel-blue); }
}

/* Classe de base pour les propriétés communes d'animation */
/* On l'appliquera en plus de la classe spécifique à la couleur */
.shimmering {
    animation-duration: 1.5s; /* Durée d'un cycle de couleur (ajustez si besoin) */
    animation-iteration-count: infinite;
    animation-timing-function: linear; /* Changement de couleur plus direct */
}

/* Classes spécifiques pour chaque animation (seront ajoutées par JS) */
.shimmer-1 { animation-name: shimmer-color-1; }
.shimmer-2 { animation-name: shimmer-color-2; }
.shimmer-3 { animation-name: shimmer-color-3; }
.shimmer-4 { animation-name: shimmer-color-4; }

/* --- FIN NOUVEAU --- */

@media (max-width: 768px) {
    body {
        padding: 1rem 0.5rem;
    }
    main#text-container {
        max-width: 95%;
        padding: 1.5rem;
        font-size: 1rem;
        margin: 1rem auto;
    }
}