.info-button {
    padding: .1rem .325rem;
    font-size: 1rem;
    max-height: 2rem;
    color: var(--buttonTextColor);
    border: .0625rem solid var(--inputBorderColor);
    border-radius: var(--defaultBorderRadius);
    background-color: var(--infoBgColor);
    cursor: pointer;
}
.info-button:hover, .info-button:focus {
    outline: .125rem solid var(--accentLighterColor075);
    outline-offset: .1875rem;
    z-index: 2;
    border-color: var(--accentColor);
    box-shadow: inset 0 .0625rem .0625rem var(--shadowColor0075), 0 0 .5rem var(--accentColor);
}
.field-info {
    padding: .2rem .4rem;
    position: absolute;
    left: 0;
    z-index: 100;
    color: var(--buttonTextColor);
    background-color: var(--infoBgColor);
    border: .0625rem solid var(--inputItemBorderColor);
    border-radius: var(--defaultBorderRadius);

}
input + .info-button + .field-info {
    top: 2rem;
}
textarea + .info-button + .field-info {
    top: 3rem;
}
.field-info::before {
    content: " ";
    position: absolute;
    top: -.9rem;
    left: 20%;
    margin-left: -.5rem;
    border-width: .5rem;
    border-style: solid;
    border-color: transparent transparent var(--infoBgColor) transparent;
}