#fr-nice-food {
    --nice-ink: #243444;
    --nice-terracotta: #a94c2f;
    --nice-cream: #fff8ec;
    --nice-sun: #f0bc54;
    color: var(--nice-ink);
}

#fr-nice-food h2 {
    margin-top: 2rem;
}

#fr-nice-food .fr-nice-food__quick-guide,
#fr-nice-food .fr-nice-food__reader-bridge,
#fr-nice-food .fr-nice-food__sources {
    padding: 1.25rem;
    border-left: 4px solid var(--nice-terracotta);
    background: var(--nice-cream);
}

#fr-nice-food .fr-nice-food__trail {
    margin: 2rem 0;
    padding: 1.25rem;
    border: 1px solid #e1c797;
    border-radius: 14px;
    background: linear-gradient(145deg, #fffdf8, #fff3d9);
}

#fr-nice-food .fr-nice-food__eyebrow {
    margin: 0;
    color: var(--nice-terracotta);
    font-size: 0.82rem;
    font-weight: 700;
    letter-spacing: 0.08em;
    text-transform: uppercase;
}

#fr-nice-food .fr-nice-food__choices {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(150px, 1fr));
    gap: 0.7rem;
    margin: 1.25rem 0;
}

#fr-nice-food .fr-nice-food__choice,
#fr-nice-food .fr-nice-food__audio-row button,
#fr-nice-food .fr-nice-food__scene-audio {
    min-height: 44px;
    border: 1px solid #a75a40;
    border-radius: 8px;
    background: #fff;
    color: #642c1c;
    cursor: pointer;
    font: inherit;
    font-weight: 700;
}

#fr-nice-food .fr-nice-food__choice {
    padding: 0.75rem;
    text-align: left;
}

#fr-nice-food .fr-nice-food__choice span {
    display: block;
    margin-top: 0.2rem;
    font-size: 0.84rem;
    font-weight: 400;
}

#fr-nice-food .fr-nice-food__choice.is-selected,
#fr-nice-food .fr-nice-food__choice:hover {
    background: var(--nice-terracotta);
    color: #fff;
}

#fr-nice-food .fr-nice-food__choice:focus-visible,
#fr-nice-food button:focus-visible,
#fr-nice-food a:focus-visible {
    outline: 3px solid #195f91;
    outline-offset: 3px;
}

#fr-nice-food .fr-nice-food__status {
    margin: 0 0 1rem;
    font-size: 0.92rem;
}

#fr-nice-food .fr-nice-food__result {
    padding: 1rem;
    border-radius: 10px;
    background: #fff;
    box-shadow: 0 3px 12px rgba(66, 39, 15, 0.12);
}

#fr-nice-food .fr-nice-food__result[hidden] {
    display: none;
}

#fr-nice-food .fr-nice-food__exchange,
#fr-nice-food .fr-nice-food__scene {
    padding: 1rem;
    border-left: 3px solid var(--nice-sun);
    background: #fff9ed;
    line-height: 1.7;
}

#fr-nice-food .fr-nice-food__exchange span:nth-child(even) {
    color: #5d5d5d;
}

#fr-nice-food .fr-nice-food__audio-row {
    display: flex;
    flex-wrap: wrap;
    gap: 0.65rem;
    margin-top: 1rem;
}

#fr-nice-food .fr-nice-food__audio-row button,
#fr-nice-food .fr-nice-food__scene-audio {
    padding: 0.55rem 0.8rem;
}

#fr-nice-food .fr-nice-food__audio-row button:hover,
#fr-nice-food .fr-nice-food__scene-audio:hover {
    background: #f8e1bc;
}

#fr-nice-food .fr-nice-food__vocabulary {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(150px, 1fr));
    gap: 0.75rem;
}

#fr-nice-food .fr-nice-food__vocabulary div {
    padding: 0.8rem;
    border: 1px solid #e4d7c4;
    border-radius: 8px;
}

#fr-nice-food .fr-nice-food__vocabulary dt {
    font-weight: 700;
}

#fr-nice-food .fr-nice-food__vocabulary dd {
    margin: 0.25rem 0 0;
}

@media (max-width: 480px) {
    #fr-nice-food .fr-nice-food__trail,
    #fr-nice-food .fr-nice-food__quick-guide,
    #fr-nice-food .fr-nice-food__reader-bridge,
    #fr-nice-food .fr-nice-food__sources {
        padding: 1rem;
    }
}

@media (prefers-reduced-motion: reduce) {
    #fr-nice-food * {
        scroll-behavior: auto;
        transition: none;
    }
}
