.icon {
    display: inline-block;
    color: #111;
    height: 1em;
    width: 1em
}

.icon use {
    fill: #7ea6f6
}

.icon.icon-outline use {
    stroke: #7ea6f6
}

.icon-xs {
    height: .5em;
    width: .5em
}

.icon-sm {
    height: .8em;
    width: .8em
}

.icon-lg {
    height: 1.6em;
    width: 1.6em
}

.icon-xl {
    height: 2em;
    width: 2em
}

.icon-text-aligner {
    display: flex;
    align-items: center
}

.icon-text-aligner .icon {
    color: inherit;
    margin-right: .4em
}

.icon-text-aligner .icon use {
    color: inherit;
    fill: currentColor
}

.icon-text-aligner .icon.icon-outline use {
    stroke: currentColor
}

.icon {
    fill: currentColor;
    stroke: none
}

.icon.icon-outline {
    fill: none;
    stroke: currentColor
}

.icon use {
    stroke: none
}

.icon.icon-outline use {
    fill: none
}

.icon-outline.icon-stroke-1 {
    stroke-width: 1px
}

.icon-outline.icon-stroke-2 {
    stroke-width: 2px
}

.icon-outline.icon-stroke-3 {
    stroke-width: 3px
}

.icon-outline.icon-stroke-4 {
    stroke-width: 4px
}

.icon-outline.icon-stroke-1 use,
.icon-outline.icon-stroke-3 use {
    -webkit-transform: translateX(0.5px) translateY(0.5px);
    -moz-transform: translateX(0.5px) translateY(0.5px);
    -ms-transform: translateX(0.5px) translateY(0.5px);
    -o-transform: translateX(0.5px) translateY(0.5px);
    transform: translateX(0.5px) translateY(0.5px)
}