.link {
    cursor: pointer;
    white-space: nowrap;
    color: var(--color-dark-brown);
}

.link svg {
    transition: all 300ms ease-in-out;
    height: 16px;
}

/* Primary link */
.link--primary {
    display: flex;
    flex-flow: row nowrap;
    gap: 20px;
    align-items: center;
    color: var(--color-dark-brown);
    transition: color 300ms ease-in-out;
}

.link--primary:hover {
    color: var(--color-light-brown);
}

/* Secondary link */
.link--secondary {
    display: flex;
    flex-flow: row nowrap;
    gap: 8px;
    align-items: center;
    color: var(--color-dark-brown);
    transition: color 300ms ease-in-out;
}

.link--secondary:hover {
    color: var(--color-brown);
}

.link--secondary:hover svg {
    transform: translateX(10px);
}

/* Selected link */
.link--selected {
    border: 2px solid var(--color-green);
    padding: 4px 10px;
    border-radius: calc(2 * var(--border-radius));
    display: flex;
    align-items: center;
    gap: 5px;
}

.link--selected svg {
    height: 13px;
}

/* Icons before & after */
.link--icon-before,
.link--icon-after {
    display: flex;
    flex-flow: row nowrap;
    align-items: center;
    gap: 5px;
    transition: all 300ms ease-in-out;
    width: fit-content;
}

.link--icon-before:hover svg {
    transform: translateX(-5px);
}

.link--icon-after:hover svg {
    transform: translateX(5px);
}