﻿/*----------------------------------------------------------------
 Default style formatting for when custom values are not assigned 
----------------------------------------------------------------*/

.SponsorComponent label {
    float: left;
}

    .SponsorComponent label span {
        /*float: right; */
        white-space: nowrap;
    }

.SponsorComponent input {
    float: left;
}

/* Qualifying Questions */
.BdayTravelQuestionDefault {
    width: 75px;
}

.QualifyingQuestionTextDefault {
    font-weight: bold;
}

.errorText {
    font-weight: bold;
    color: #FF0000;
}

/*Modal Popup*/
.modalBackground {
    background-color: Gray;
    filter: alpha(opacity=70);
    opacity: 0.7;
}

.modalPopup {
    background-color: #deeaf6;
    border-width: 3px;
    border-style: solid;
    border-color: #3a4b68;
    padding: 3px;
    width: 250px;
}

.modalPopupNoSize {
    background-color: #deeaf6;
    border-width: 3px;
    border-style: solid;
    border-color: #3a4b68;
    padding: 15px;
    max-height: 600px;
    max-width: 1000px;
    overflow: auto;
}

.modalPopupHeader {
    background-color: #DDDDDD;
    cursor: move;
    border-width: 1px;
    border-style: solid;
    color: Black;
    text-align: center;
    font-weight: bold;
    border-color: #3a4b68;
}


.costAmount {
    font-weight: bold;
}

.sessionCost {
    margin-left: 200px;
}

/* BEGIN Payment Summary Styling Defaults*/
.paymentTable {
    width: 600px;
    border-collapse: collapse;
}

    .paymentTable td {
        margin: 0;
        padding: .1em .2em;
    }

.paymentTitle {
    font-weight: bold;
    text-decoration: underline;
    padding: .75em 0 .25em 0;
    font-size: 110%;
}

.paymentsPast {
}

.paymentsPresent {
}

td.paymentHeader {
    font-weight: bold;
    padding: .5em .2em 0 .2em;
}

.paymentAmount, .paymentBalanceAmount {
    text-align: right;
}

.paymentBalanceLabel, .paymentBalanceAmount {
    font-weight: bold;
    border-style: solid;
    border-color: #000000;
    border-width: 1px 0 0 0;
}
/* END Payment Summary Styling Defaults*/

/*END OPUS AJAX Extension Styles*/

/*Image Upload Styles*/
.imageBox {
    border: 1px solid #DDDDDD;
    text-align: center
}

.image {
    vertical-align: middle;
    border: none;
    text-align: center
}
/*End Image Upload Styles*/

/* DEFAULT REG COMPONENT DIV STYLES */

/*
        regComponent
    header
    requiredText
    requiredErrorText
    regComponentRow
    regInputItem
    inputError
    inputLabel
    inputAnswer
    inputAfterText

*/
.regComponent {
}

    .regComponent .header {
        font-size: 16pt;
        border-bottom: 1px solid #ccc;
        padding-top: 10px;
    }

    .regComponent .requiredText {
    }

    .regComponent .requiredErrorText {
        font-weight: bold;
        color: rgb(255,0,0);
    }

    .regComponent .regComponentRow {
        vertical-align: top;
        display: block;
        border-bottom: 0px dotted #ccc;
        margin: 0 0 .25em 0;
    }

    .regComponent .regInputItem {
        vertical-align: top;
        display: inline-block;
        margin: 0 0 .25em 0;
        width: 350px;
    }

    .regComponent .inputLabel {
        display: inline-block;
        font-weight: normal;
        vertical-align: top;
        width: 45%;
        text-align: left;
    }

    .regComponent .inputAnswer {
        display: inline-block;
        vertical-align: top;
        font-weight: bold;
        width: 45%;
        margin: 0 0 0 .25em;
    }

        .regComponent .inputAnswer ul {
            margin: 0;
            padding: 0;
            list-style-type: none;
        }

        .regComponent .inputAnswer li {
        }

    .regComponent .inputError {
        font-weight: bold;
        color: rgb(255,0,0);
    }

    .regComponent .inputAfterText {
    }

    .regComponent .sessionTime {
        margin: 0 .5em;
    }

    .regComponent .headerText {
        margin-left: 50px;
    }

.guestParticipantInfo .delete {
    position: relative;
    display: block;
    float: right;
    background-image: url('../images/delete.gif');
    background-repeat: no-repeat;
    border-style: none;
    border-width: 0px;
    width: 16px;
    height: 16px;
    vertical-align: top;
    cursor: pointer;
}
/* SUMMARY COMPONENT */
.summaryComponent {
}

    .summaryComponent div {
        border: 0 dotted #f00;
        border-collapse: collapse;
        padding: 0;
        /*
		background-color: rgba(128,128,128,0);
		background-color: rgba(128,128,128,.1);
		*/
        vertical-align: top;
        margin: 0 0 0 0;
        margin-bottom: .2em;
    }

    .summaryComponent table, .summaryComponent tr, .summaryComponent td {
        border: 0 solid #888;
        border-collapse: collapse;
    }

    .summaryComponent td {
        padding: .2em 0;
    }

    .summaryComponent .component, .summaryComponent .summaryHeader {
        width: 100%;
        margin: .5em auto 1em auto;
    }

    .summaryComponent .summaryHeader {
        font-weight: bold;
        Font-size: 18pt;
    }

    .summaryComponent .header {
        font-size: 16pt;
        border-bottom: 1px solid #ccc;
        padding-top: 10px;
    }

    .summaryComponent .answerItem {
        margin: 0 0 .25em 0;
        border-bottom: 1px dotted #ccc;
    }

.answerItem:last-child {
    border-bottom: 0px dotted #ccc;
}

.summaryComponent .label {
    display: inline-block;
    font-weight: normal;
    vertical-align: top;
    width: 45%;
}

.summaryComponent .answer {
    display: inline-block;
    vertical-align: top;
    font-weight: bold;
    /*
		background-color: rgba(128,128,128,0);
		background-color: rgba(128,128,128,.2);
		*/
    width: 45%;
}

    .summaryComponent .answer ul {
        margin: 0;
        padding: 0;
        list-style-type: none;
    }

    .summaryComponent .answer li {
    }

.summaryComponent .sessionTime {
    margin: 0 .5em;
}

.summaryComponent .headerText {
    margin-left: 50px;
}

.summaryComponent .header a {
    float: left;
}

.summaryComponent .sessions .label, .summaryComponent .sessionGrid .label, .summaryComponent .sessionsGuest .label {
    width: 45%;
}

.summaryComponent .sessions .answer, .summaryComponent .sessionGrid .answer, .summaryComponent .sessionsGuest .answer {
    width: 45%;
}

/*sessions component*/
.sessions .sessionStatus {
    font-weight: bolder;
    color: rgb(68,68,255);
}

.sessions .sessionCost {
    margin: 0;
}

.DES_DateTextBox {
    vertical-align: text-top;
}

.regComponent .byCategory .regComponentRow .inputLabel {
    display: block;
    width: auto;
}

.regComponent .byCategory .regComponentRow .inputAnswer {
    display: block;
    width: auto;
    font-weight: normal;
}
/*guest personal component*/
.guestPersonalInfo {
    display: table;
    padding-right: 20px;
}


/*Add the below to the existing rule for this (css line 212)*/
.guestParticipantInfo .delete {
    width: 100%;
    background-position: right;
    background-color: transparent;
}

.privacyAgreement .scrollBox {
    height: 16em;
    overflow: auto;
    display: block;
    margin: 0 1em;
    border-width: 1px;
    border-style: solid;
    border-color: rgba(0,0,0,.25);
    padding: 0 .25em;
}

.privacyAgreement .AgreementLabel {
    font-weight: bold;
}

/* PRIVACY COMPONENT */
.privacyAgreement a {
    word-wrap: break-word;
}

.privacyAgreement .scrollBox::-webkit-scrollbar {
    width: 15px;
}

.privacyAgreement .scrollBox::-webkit-scrollbar-track {
    background-color: #9C9C9C;
}
/* the new scrollbar will have a flat appearance with the set background color */

.privacyAgreement .scrollBox::-webkit-scrollbar-thumb {
    background-color: rgba(0, 0, 0, 0.2);
}
/* this will style the thumb, ignoring the track */

.privacyAgreement .scrollBox::-webkit-scrollbar-button {
    background-color: #323232;
}
/* optionally, you can style the top and the bottom buttons (left and right for horizontal bars) */

.privacyAgreement .scrollBox::-webkit-scrollbar-corner {
    background-color: black;
}

.privacyAgreement .scrollBox {
    border-left: 3px solid #2ac3d7;
    border-top: 1px solid rgba(0,0,0,.25);
    padding: 0;
}

.privacyAgreement h2 {
    background-color: #2ac3d7;
    color: #ffffff;
    margin: 0;
    padding: .5em;
}

.privacyAgreement p, .privacyAgreement h3 {
    padding: 0 15px;
    margin-bottom: 0;
    margin-top: 15px;
}

.privacyInstructions {
    margin: 0 15px !important;
    padding-top: 15px;
}

.privacyCheckbox {
    margin: 0 15px !important;
    padding-top: 10px;
}

.AgreementLabel {
    margin: 0 5px;
    padding-top: .5em;
}



@media (max-width: 1024px) {
    .privacyAgreement p, .privacyAgreement li, .privacyInstructions, .AgreementLabel {
        line-height: 1.5em;
    }

    .AgreementLabel {
        margin-left: 10px;
    }

    input[type=checkbox] {
        -ms-transform: scale(1.25); /* IE */
        -moz-transform: scale(1.25); /* FF */
        -webkit-transform: scale(1.25); /* Safari and Chrome */
        -o-transform: scale(1.25); /* Opera */
    }

    .privacyAgreement .scrollBox::-webkit-scrollbar {
        width: 20px;
    }
}

@media (max-width: 601px) {
    .privacyAgreement .scrollBox {
        height: 20em;
    }
}

@media (max-width: 720px) and (orientation:landscape) and (-webkit-min-device-pixel-ratio:0) and (min-color-index:0) {
    .privacyInstructions, .AgreementLabel {
        font-size: 12pt !important;
    }
}

#paymentAgreement, .secureCertification {
    margin-top: 5px;
}

/*Payment Summary Styles*/
/*General Styles*/

.payment, .summaryComponent {
    font-family: calibri, arial, sans-serif;
    max-width: 1220px;
    margin: 0 auto;
}

    .payment select, .payment input[type="text"] {
        height: 30px;
        width: 350px;
        box-sizing: border-box;
    }

    .payment textarea {
        height: 70px;
        width: 350px;
        box-sizing: border-box;
    }

    .payment input, .payment button, .payment select, .payment textarea {
        padding-left: 8px;
        border: 1px solid #ccc;
        border-radius: 4px;
        margin: 3px 5px 5px 0;
        vertical-align: text-top;
    }

        .payment input:focus, .payment button:focus, .payment select:focus, .payment textarea:focus {
            border-color: #66afe9;
            outline: 0;
            -webkit-box-shadow: inset 0 1px 1px rgba(0,0,0,.075), 0 0 8px rgba(102, 175, 233, .6);
            box-shadow: inset 0 1px 1px rgba(0,0,0,.075), 0 0 8px rgba(102, 175, 233, .6);
        }

    .payment .regComponentRow {
        vertical-align: top;
        display: block;
        border-bottom: 0px dotted #ccc;
        margin: 0 0 .25em 0;
    }

    .payment .regInputItem {
        vertical-align: top;
        display: block;
        width: initial;
        width: auto;
    }

    .payment .inputLabel {
        display: block;
        vertical-align: top;
    }

    .payment .inputAnswer {
        vertical-align: top;
        margin: 0;
    }

    .payment .headerText {
        margin-left: 50px;
    }

#paymentAgreement, .secureCertification {
    margin-top: 5px;
}

.total {
    border-top: 1px solid black;
}

.agreementCompanyName {
    font-weight: bold;
}

.discount .inputLabel {
    width: 100%;
}

.paymentSummary, .paymentInformation, .billingInformation {
    max-width: 1170px;
    margin: 0 auto;
    border: 1px solid #A9B2BD;
    margin-bottom: 50px;
    border-radius: .15em;
    padding-bottom: 1em;
}

    .paymentSummary .mainHeader, .paymentInformation .header, .billingInformation .header, .paymentSummary .header {
        font-size: 16pt;
        padding: 11px 15px;
        background-color: #2ac3d7;
        color: #FFFFFF;
        margin-bottom: .75em;
    }

#costHeader {
    background-color: transparent;
    color: initial;
    color: auto;
    margin: 0;
    padding: 0;
    font-size: 13pt;
    text-decoration: none;
    padding-top: 10px;
    font-weight: bold;
    border-bottom: none;
}

.costs {
    margin-left: .65em;
}

#costItems {
    width: 500px;
}

.costRow div {
    display: inline-block;
}

.costs .costAmount {
    float: right;
}

.payment .header {
    font-size: 13pt;
}

.discount .inputLabel {
    font-weight: bold;
    font-size: 13pt;
}

#applyDiscount {
    padding: 6px 33px;
    background-color: #ccc;
    margin-top: 5px;
    display: block;
}

    #applyDiscount:hover {
        cursor: pointer;
    }

#costPayments {
    height: auto;
}

#costItemHeader {
    height: auto;
}

/*Payment Information Styles*/
.paymentTypeCredit, .paymentTypeCheck, .paymentTypeWire, .paymentTypeIFT, .billingInfoChoice {
    margin-left: 1em;
}

.paymentTypeLabel {
    font-size: 13pt;
}

.costItems, .secureCertification {
    text-decoration: none;
}

#cardExpirationMonth {
    width: 90px;
    margin-right: 5px;
}

#cardExpirationYear {
    width: 80px;
    margin-right: 5px;
}

#costPayments {
    font-weight: bold;
    font-size: 13pt;
}

/*Billing Information Styles*/
#billingHeader {
    padding-top: 20px;
}

.billingInformation {
    border-top: 1px solid #A9B2BD;
}

.paymentSummary .error, .paymentInformation .error, .paymentSummary .requiredText, .paymentInformation .requiredText, .regComponent .inputError, .regComponent .requiredErrorText {
    color: red;
    font-weight: bold !important;
}

.paymentSummary .requiredErrorText, .paymentSummary .error {
    margin-left: 1em;
}

.paymentSummary .regInputItem, .billingInformation .regInputItem, .instructions {
    margin: 0 1.3em .25em 1.3em;
}

.paymentTypeLabel {
    font-weight: bold;
}

.paymentTypeCreditInfo .inputAnswer {
    width: 100%;
}

.cardTypeDisplay {
    background: transparent url("../images/acceptedCreditCards.png");
    margin: 0;
    padding: 0 0 0 150px;
    width: 0;
    height: 23px;
    overflow: hidden;
}

.paymentInfo {
    margin-left: 0 !important;
}

.cardInvalidMessage, .cardExpiredMessage {
    display: inline-block;
}

#costSecurityInfo {
    width: 50px;
    height: 50px;
    padding: 10px 0;
}

    #costSecurityInfo img {
        width: 100%;
    }

@media (max-width: 500px) {
    .paymentSummary .regInputItem, .billingInformation .regInputItem {
        margin: 0 1.25em;
    }

    .payment .costDescription {
        width: 150px;
    }

    select, input[type="text"] {
        width: 300px;
    }
}

@media (max-width: 992px) {
    input, button, select, textarea {
        vertical-align: top;
    }
}
/* Progress Indicator */
/* Super simple mobile version */
@media all and (max-width: 699px) {
    .progress-bar ol {
        margin: 10px 0;
        padding: 0;
    }

        .progress-bar ol li {
            display: inline-block;
        }

            .progress-bar ol li a {
                display: block;
                padding: 4px 0px 4px 8px;
                font-size: 13px;
                color: #000;
            }

                .progress-bar ol li a:hover {
                    text-decoration: none;
                }

            .progress-bar ol li.step-visited:not(.step-current) a {
                color: #929292;
            }

            .progress-bar ol li:last-child a {
                padding-right: 8px;
            }

            .progress-bar ol li a:after {
                content: "\00bb";
                padding-left: 8px;
            }

            .progress-bar ol li:last-child a:after {
                content: none;
            }

            .progress-bar ol li.step-current a {
                font-weight: bold;
            }
}

/* Super Simple Desktop Version */
@media all and (min-width: 700px) {
    .progress-bar ol {
        background-color: #efefef;
        border-radius: 2px;
        text-align: left;
        margin: 0;
        display: table; /* Fallback for IE */
        display: -webkit-flex;
        display: flex;
        -webkit-flex-wrap: wrap;
        flex-wrap: wrap;
        padding: 0;
    }

        .progress-bar ol li {
            text-align: center;
            display: inline-block;
            list-style-type: none;
            flex: 1;
            margin: 0;
            white-space: nowrap;
        }

            .progress-bar ol li a {
                padding: 8px 15px;
                display: block;
                color: #000;
            }

                .progress-bar ol li a:hover {
                    text-decoration: none;
                }

    .progress-bar .step-visited:not(.step-current) a {
        background-color: rgb(84,100,98);
        color: #ffffff;
    }

    .progress-bar ol li.step-current a {
        font-weight: bold;
        color: #ffffff;
    }

    .progress-bar ol li.step-current {
        background-color: rgb(66,196,221);
    }
}
