.visualCaptcha * {
    -moz-box-sizing: border-box;
    -webkit-box-sizing: border-box;
    box-sizing: border-box
}

.visualCaptcha .audioField {
    -moz-border-radius: 4px;
    -webkit-border-radius: 4px;
    border: 1px solid #3bb6e4;
    border-radius: 4px;
    color: #495e62;
    font-size: 15px;
    font-weight: 100;
    height: 40px;
    padding: 5px;
    width: 100%;
}

@media only screen and (max-width: 360px) {
    .visualCaptcha .audioField { margin-bottom: 15px }
}

@media only screen and (min-width: 360px) {
    .visualCaptcha .audioField {
        float: left;
        width: 240px;
    }
}

.accessibility-description, .visualCaptcha-explanation, .status.valid {
    color: #000;
    display: inline-block;
    font-family: Arial;
    font-size: .9375em;
    font-weight: Bold;
    margin-bottom: 10px
}

@media only screen and (max-width: 360px) {
    .accessibility-description, .visualCaptcha-explanation, .status.valid { font-size: 16px }
}

.visualCaptcha-possibilities, .visualCaptcha-refresh-button, .visualCaptcha-accessibility-button, .visualCaptcha-button-group { display: inline-block }

.visualCaptcha-possibilities {
    margin-left: auto;
    margin-right: auto;
    /*text-align: center;*/
    vertical-align: middle;
    width: 100%;
}

@media only screen and (min-width: 750px) {
    .visualCaptcha-possibilities { margin-right: 15px }
}

.visualCaptcha-possibilities .img {
    border: 3px solid transparent;
    display: inline-block;
    padding: 4px;
}

@media only screen and (min-width: 750px) {
    .visualCaptcha-possibilities .img {
        border: 3px solid transparent;
        padding: 10px;
    }
}

.visualCaptcha-possibilities img {
    -webkit-transition: all 200ms;
    height: 32px;
    transition: all 200ms;
    width: 32px;
    z-index: 5;
}

.visualCaptcha-possibilities img:hover { cursor: pointer }

@media only screen and (max-width: 360px) {
    .visualCaptcha-possibilities .visualCaptcha-button-group {
        margin-top: 15px;
        text-align: center;
    }
}

@media only screen and (min-width: 750px) {
    .visualCaptcha-possibilities .visualCaptcha-button-group { float: right }
}

.visualCaptcha-possibilities .visualCaptcha-selected {
    -moz-border-radius: 4px;
    -webkit-border-radius: 4px;
    background-color: #c1f7e8;
    border: 1px dashed #099a9f;
    border-radius: 4px;
    padding: 4px;
}

@media only screen and (min-width: 750px) {
    .visualCaptcha-possibilities .visualCaptcha-selected {
        border: 3px dashed #099a9f;
        padding: 10px;
    }
}

.visualCaptcha-refresh-button {
    -moz-border-radius: 100px;
    -webkit-border-radius: 100px;
    background-color: #f87056;
    border: 1px solid #f87056;
    border-radius: 100px;
    margin: 0 5px;
    padding: 8px 10px;
}

.visualCaptcha-refresh-button img {
    height: 16px;
    width: 16px;
}

.visualCaptcha-refresh-button:hover { cursor: pointer }

.visualCaptcha-accessibility-button {
    -moz-border-radius: 100px;
    -webkit-border-radius: 100px;
    border: 1px solid #000;
    border-radius: 100px;
    padding: 8px 10px;
}

.visualCaptcha-accessibility-button img {
    height: 16px;
    width: 16px;
}

.visualCaptcha-accessibility-button:hover { cursor: pointer }

@-webkit-keyframes fadeIn {
    from { opacity: 0 }

    to { opacity: 1 }
}

@keyframes fadeIn {
    from { opacity: 0 }

    to { opacity: 1 }
}

@-webkit-keyframes fadeOut {
    from { opacity: 1 }

    to { opacity: 0 }
}

@keyframes fadeOut {
    from { opacity: 1 }

    to { opacity: 0 }
}

div.visualCaptcha .visualCaptcha-show {
    -webkit-animation: fadeIn 300ms;
    animation: fadeIn 300ms
}

div.visualCaptcha .visualCaptcha-hide {
    -webkit-animation: fadeOut 300ms;
    animation: fadeOut 300ms;
    display: none !important;
}