.abf-wrap {
    border-style: solid;
    border-width: 1px 1px 1px 1px;
    border-color: rgba(0,0,0,0.15);
    border-radius: 5px 5px 5px 5px;
    transition: background 0.3s, border 0.3s, border-radius 0.3s, box-shadow 0.3s;
    margin-top: 10px;
    margin-bottom: 0px;
    padding: 5px;
}

    .abf-wrap select,
    .abf-wrap textarea,
    .abf-wrap input {
        padding: 5px;
        border-radius: 3px;
        border: 1px solid;
        border-color: rgba(0,0,0,0.15);
    }

    .abf-wrap hr {
        margin-top: 5px;
    }

.abf-circle {
    border-radius: 50%;
    width: 37px;
    height: 36px;
    padding: 8px;
    border: 2px solid #fff;
    color: #fff;
    text-align: center;
    font: 16px Arial,sans-serif;
    line-height: normal;
    margin-top: 8px;
    line-height: 16px;
    background: rgba(0,0,0,0.15);
    display: inline-block;
}

.abf-doing {
    background: #F5BE58;
}

.abf-done {
    background: #37988E;
}

.abf-step {
    display: inline-block;
}

.abf-row {
    margin: 5px 0 5px 0;
}

#abf-type {
    width: 54px;
}

#abf-firstname {
    width: 101px;
}

#abf-lastname {
    width: 101px;
}

#abf-weight {
    width: 35px;
}

#abf-notes {
    width: 100%;
}

#abf-amount {
    width: 100px;
}

#abf-couponcode {
    width: 151px;
}

#abf-discount {
    width: 100px;
}

#abf-cardfee {
    width: 70px;
}

#abf-total {
    width: 100px;
}

#abf-cardname {
    width: 159px;
}

#abf-cardnumber {
    width: 159px;
}

#abf-cardmonth {
    width: 85px;
}

#abf-cardyear {
    width: 85px;
}

#abf-cardcvv {
    width: 50px;
}

.pika-single {
    border-radius: 3px;
}

.pika-lendar {
    width: 95% !important;
}

.pika-button {
    line-height: 25px !important;
    text-align: center !important;
}

span.abf-labelpurch {
    width: 111px;
    display: inline-block;
}

span.abf-labelpurchwide {
    width: 160px;
    display: inline-block;
}

span.abf-labelpurchwider {
    width: 193px;
    display: inline-block;
}

.abf-100purch {
    width: 206px;
}

span.abf-label {
    width: 158px;
    display: inline-block;
}

span#abf-labeltc {
    width: 260px;
    display: inline-block;
}

#abf-xx-small {
    font-size: xx-small;
    display: inline-block;
    width: 55px;
    margin-left: 4px;
    line-height: 10px;
}

.buttons {
    overflow: hidden;
}

.button-left {
    float: left;
}

.button-right {
    float: right;
}

.abf-error {
    background-color: #F57058;
}

.abf-success {
    background-color: #64CA87;
}

#abf-calendar {
    min-height: 255px;
}

#abf-timedisplay {
    margin-top: 6px;
    text-align: center;
    display: block;
}

.abf-errormsg {
    margin-top: -4px;
    color: #F57058;
    font-size: smaller;
    text-align: center;
}

#abf-loading {
    margin: 55px;
}

.abf-or-right {
    text-align: right;
    padding-right: 50px;
}

.abf-small-label {
    font-size: small;
    display: inline-block;
    margin-top: 8px;
    color: #DEA233;
}

table#abf-summary, table#abf-result-success {
    font-size: smaller;
}

table#abf-summary th, table#abf-summary td, table#abf-result-success th, table#abf-result-success td {
    border: 1px solid lightgray;
    padding: 5px;
}

.abf-loader {
    background-image: url(loader.gif);
    background-size: contain;
    background-repeat: no-repeat;
    background-position: center;
}

#abf-processPurchase {
    min-width: 100px;
}

.abf-tooltip {
    position: relative;
    display: inline-block;
    border-bottom: 1px dotted black;
    font-size: 0.6em;
    margin-left: 5px;
    top: -2px;
}
.abf-tooltip .abf-tooltiptext {
    visibility: hidden;
    width: 185px;
    background-color: lightsteelblue;
    color: #fff;
    text-align: center;
    padding: 5px 0;
    border-radius: 6px;
    position: absolute;
    z-index: 1;
    font-size: small;
    padding: 3px;
}
.abf-tooltip:hover .abf-tooltiptext {
    visibility: visible;
}
div.abf-section input, div.abf-section select, div.abf-section textarea {
    font-size: smaller;
}
#abf-vouchercode {
    width: 136px;
}
#abf-voucherlabel {
    font-size: small;
    line-height: 1;
    position: relative;
    top: 9px;
}

#abf-vouchermessage {
    font-size: x-small;
    text-align: center;
    color: #DEA233;
}

#abf-purchservice {
    font-size: x-small;
    min-height: 32px;
}

#abf-next-table {
    width: 100%;
    margin-top: 20px;
}
#abf-next-cell-l {
    width: 40%;
    text-align: center;
}
#abf-next-cell-c {
    width: 20%;
    text-align: center;
}
#abf-next-cell-r {
    width: 40%;
    text-align: center;
}
.abf-row-spaced {
    margin: 15px 0 15px 0;
}
