
/* Outils d'accessibilité */
.accessibility-tools {
    position: fixed;
    top: 10px;
    right: 10px;
    z-index: 1000;
    display: flex;
    gap: 8px;
}

.accessibility-button {
    background-color: #4CAF50;
    color: white;
    border: none;
    border-radius: 50%;
    width: 40px;
    height: 40px;
    font-size: 18px;
    cursor: pointer;
    display: flex;
    align-items: center;
    justify-content: center;
    transition: background-color 0.3s, transform 0.2s;
    box-shadow: 0 2px 5px rgba(0, 0, 0, 0.2);
}

.accessibility-button:hover {
    background-color: #388E3C;
    transform: scale(1.1);
}

.accessibility-button:focus {
    outline: 3px solid #81C784;
    outline-offset: 2px;
}

/* Fil d'Ariane */
.breadcrumb {
    display: inline-block;
    background-color: rgba(255, 255, 255, 0.8);
    padding: 8px 15px;
    border-radius: 20px;
    margin: 10px 0;
    font-size: 14px;
    box-shadow: 0 1px 3px rgba(0, 0, 0, 0.1);
}

.breadcrumb a {
    text-decoration: none;
    color: #2E7D32;
    font-weight: bold;
}

.breadcrumb a:hover {
    text-decoration: underline;
}

/* Mode texte agrandi */
body.large-text {
    font-size: 120%;
    line-height: 1.5;
}

body.large-text p, 
body.large-text h1, 
body.large-text h2, 
body.large-text h3, 
body.large-text span, 
body.large-text li, 
body.large-text a {
    font-size: 120%;
    line-height: 1.5;
}

body.large-text .node span {
    font-size: 110%;
}

body.large-text #speech-bubble {
    font-size: 110%;
    max-width: 280px;
}

/* Mode contraste élevé */
body.high-contrast {
    background-color: #000;
    color: #FFF;
}

body.high-contrast a {
    color: #FFEB3B;
}

body.high-contrast h1, 
body.high-contrast h2, 
body.high-contrast h3 {
    color: #4FC3F7;
}

body.high-contrast .parcours-card {
    background-color: #333;
    border-color: #FFEB3B;
}

body.high-contrast .parcours-title {
    color: #4FC3F7;
}

body.high-contrast .parcours-description {
    color: #FFF;
}

body.high-contrast .subject-tag {
    background-color: #424242;
    border-color: #FFEB3B;
    color: #FFF;
}

body.high-contrast .parcours-button {
    background-color: #4FC3F7;
    color: #000;
}

body.high-contrast .node {
    background-color: #424242;
    border: 2px solid #FFEB3B;
}

body.high-contrast #speech-bubble {
    background-color: #333;
    color: #FFF;
    border: 2px solid #FFEB3B;
}

body.high-contrast .progress-section {
    background-color: #333;
}

body.high-contrast .progress-card {
    background-color: #424242;
}

body.high-contrast .section-name {
    color: #FFF;
}

body.high-contrast .progress-bar {
    background-color: #616161;
}

body.high-contrast .progress-fill {
    background-color: #4FC3F7;
}

body.high-contrast .progress-text {
    color: #FFF;
}