/*
    Buy Tokens Form
*/

/* Info Messages */

.buy-form-wrapper .woocommerce-error a {
    color: inherit;
}

/* Token Details Layout */

.buy-form-wrapper #validate-number {
    background-color: #fff;
    padding: 30px 30px 40px;
    border-radius: 8px;
    box-shadow: 0px 2px 8px rgba(0, 0, 0, .06);
    margin-bottom: 20px;
}

.buy-form-wrapper #validate-number::before {
    content: '1. Token Details';
    color: #000;
    font-size: 18px;
    font-weight: 700;
    line-height: 1.2;
    text-transform: uppercase;
    display: block;
    margin-bottom: 20px;
}

@media (max-width: 980px) {
    .buy-form-wrapper #validate-number {
        padding: 20px;
    }
}

.buy-form-wrapper #validation-form .form-group:nth-last-child(n+2) {
    margin-bottom: 20px;
}

.buy-form-wrapper #validation-form .form-group-inner {
    display: flex;
}

.buy-form-wrapper #validation-form .form-group-main {
    width: 185px;
    max-width: 50%;
}

.buy-form-wrapper #validation-form .form-group-aside {
    flex-grow: 1;
    display: flex;
    align-items: center;
    padding-left: 20px;
}

.buy-form-wrapper #validation-form .position-relative {
    position: relative;
}

.buy-form-wrapper #validation-form label {
    color: #666;
    font-size: 16px;
    font-weight: 500;
    line-height: 1.3;
    display: inline-block;
    margin-bottom: 10px;
}

.buy-form-wrapper #validation-form label abbr.required {
    color: #c02b0a;
    font-weight: 700;
    text-decoration: none;
}

.buy-form-wrapper #validation-form .form-control {
    color: #000;
    font-size: 16px;
    display: block;
    height: 52px;
    width: 100%;
    padding: 0 15px;
    border: 1px solid #e2e2ea;
    border-radius: 8px;
    outline: none;
}
.buy-form-wrapper #validation-form .form-control::placeholder {
    color: #666;
}
.buy-form-wrapper #validation-form .form-control::-webkit-inner-spin-button,
.buy-form-wrapper #validation-form .form-control::-webkit-outer-spin-button {
    opacity: 1;
}

.buy-form-wrapper #validation-form .form-amount {
    color: #666;
    font-size: 16px;
    font-weight: 700;
    white-space: nowrap;
}

@media (max-width: 980px) {
    .buy-form-wrapper #validation-form .form-group-aside {
        padding-left: 10px;
    }

    .buy-form-wrapper #validation-form .form-amount {
        font-size: 14px;
    }
}

.buy-form-wrapper #inspector-results {
    background-color: #fff;
    display: none;
    border: 1px solid #e2e2ea;
    border-radius: 8px;
    overflow: hidden;
    box-shadow: 0 5px 15px rgba(0, 0, 0, .1);
    position: absolute;
    z-index: 100;
}
.buy-form-wrapper #inspector-results.show {
    display: block;
}

.buy-form-wrapper #inspector-results .dropdown-item {
    background-color: #fff;
    color: #000;
    font-size: 16px;
    display: block;
    min-height: 52px;
    padding: 10px 15px;
    transition: all 300ms ease 0ms;
}
.buy-form-wrapper #inspector-results .dropdown-item:nth-last-child(n+2) {
    border-bottom: 1px solid #e2e2ea;
}
.buy-form-wrapper #inspector-results .dropdown-item:hover {
    background-color: #006847;
    color: #fff;
}
.buy-form-wrapper #inspector-results .dropdown-item.text-danger {
    color: #c02b0a;
}
.buy-form-wrapper #inspector-results .dropdown-item.text-danger:hover {
    background-color: #c02b0a;
    color: #fff;
}

.buy-form-wrapper #token-input-wrapper {
    animation: fadeIn 0.3s ease-in;
}
@keyframes fadeIn {
    from {
        opacity: 0;
        transform: translateY(-10px);
    }
    to {
        opacity: 1;
        transform: translateY(0);
    }
}

/* Billing and Payment Layout */

.buy-form-wrapper .inspector-checkout-section > h2 {
    display: none;
}

.buy-form-wrapper .checkout {
    display: flex;
    flex-wrap: wrap;
}
.buy-form-wrapper .checkout > * {
    width: 100%;
}

.buy-form-wrapper #customer_details {
    background-color: #fff;
    width: calc(50% - 10px);
    padding: 30px 30px 40px;
    border-radius: 8px;
    box-shadow: 0px 2px 8px rgba(0, 0, 0, .06);
    margin-right: 20px;
}

.buy-form-wrapper #customer_details::before {
    content: '2. Billing Information';
    color: #000;
    font-size: 18px;
    font-weight: 700;
    line-height: 1.2;
    text-transform: uppercase;
    display: block;
    margin-bottom: 20px;
}

.buy-form-wrapper #customer_details .col-1 {
    float: none;
    width: 100%;
    margin-bottom: 0 !important;
}

.buy-form-wrapper #customer_details .col-2 {
    display: none;
}

.buy-form-wrapper #order_review_heading {
    display: none;
}

.buy-form-wrapper #order_review {
    background-color: #fff;
    width: calc(50% - 10px);
    padding: 30px 30px 40px;
    border-radius: 8px;
    box-shadow: 0px 2px 8px rgba(0, 0, 0, .06);
}
.buy-form-wrapper #order_review::before {
    content: '3. Payment';
    color: #000;
    font-size: 18px;
    font-weight: 700;
    line-height: 1.2;
    text-transform: uppercase;
    display: block;
    margin-bottom: 20px;
}

@media (max-width: 980px) {
    .buy-form-wrapper #customer_details {
        width: 100%;
        padding: 20px;
        margin-bottom: 20px;
        margin-right: 0;
    }
    .buy-form-wrapper #order_review {
        width: 100%;
        padding: 20px;
    }
}

/* Billing Fields */

.buy-form-wrapper .woocommerce-billing-fields > h3 {
    display: none;
}

.buy-form-wrapper .woocommerce-billing-fields__field-wrapper {
    display: flex;
    flex-wrap: wrap;
}

.buy-form-wrapper .woocommerce-billing-fields__field-wrapper .form-row {
    width: 100% !important;
    padding: 0;
    margin-bottom: 20px;
}
.buy-form-wrapper .woocommerce-billing-fields__field-wrapper .form-row:nth-last-child(-n+2) {
    margin-bottom: 0;
}
.buy-form-wrapper .woocommerce-billing-fields__field-wrapper .form-row#billing_address_1_field {
    margin-bottom: 10px;
}

.buy-form-wrapper .woocommerce-billing-fields__field-wrapper .form-row-first,
.buy-form-wrapper .woocommerce-billing-fields__field-wrapper #billing_city_field,
.buy-form-wrapper .woocommerce-billing-fields__field-wrapper #billing_postcode_field {
    width: 50% !important;
    padding-right: 10px;
}
.buy-form-wrapper .woocommerce-billing-fields__field-wrapper .form-row-last,
.buy-form-wrapper .woocommerce-billing-fields__field-wrapper #billing_state_field,
.buy-form-wrapper .woocommerce-billing-fields__field-wrapper #billing_phone_field {
    width: 50% !important;
    padding-left: 10px;
}
@media (max-width: 980px) {
    .buy-form-wrapper .woocommerce-billing-fields__field-wrapper .form-row:nth-last-child(2) {
        margin-bottom: 20px;
    }

    .buy-form-wrapper .woocommerce-billing-fields__field-wrapper .form-row-first,
    .buy-form-wrapper .woocommerce-billing-fields__field-wrapper #billing_city_field,
    .buy-form-wrapper .woocommerce-billing-fields__field-wrapper #billing_postcode_field {
        width: 100% !important;
        padding-right: 0;
    }
    .buy-form-wrapper .woocommerce-billing-fields__field-wrapper .form-row-last,
    .buy-form-wrapper .woocommerce-billing-fields__field-wrapper #billing_state_field,
    .buy-form-wrapper .woocommerce-billing-fields__field-wrapper #billing_phone_field {
        width: 100% !important;
        padding-left: 0;
    }
}

.buy-form-wrapper .woocommerce-billing-fields__field-wrapper label {
    color: #666 !important;
    font-size: 16px;
    font-weight: 500;
    line-height: 1.3 !important;
    display: inline-block;
    margin-bottom: 10px;
}

.buy-form-wrapper .woocommerce-billing-fields__field-wrapper label .required {
    color: #c02b0a;
}

.buy-form-wrapper .woocommerce-billing-fields__field-wrapper .woocommerce-input-wrapper {
    display: block;
}

.buy-form-wrapper .woocommerce-billing-fields__field-wrapper .form-row .input-text {
    background-color: #fff;
    color: #000;
    font-size: 16px;
    display: block;
    height: 52px;
    width: 100%;
    padding: 0 15px;
    border: 1px solid #e2e2ea !important;
    border-radius: 8px;
    outline: none;
}
.buy-form-wrapper .woocommerce-billing-fields__field-wrapper .form-row .input-text::placeholder {
    color: #666;
}

.buy-form-wrapper .woocommerce-billing-fields__field-wrapper .select2-container {
    display: block;
}

.buy-form-wrapper .woocommerce-billing-fields__field-wrapper .select2-container .select2-selection--single {
    color: #000;
    font-size: 16px;
    line-height: 50px;
    height: 52px;
    width: 100%;
    padding: 0 35px 0 15px;
    border: 1px solid #e2e2ea !important;
    border-radius: 8px;
    outline: none;
}

.buy-form-wrapper .select2-container .select2-selection--single .select2-selection__rendered {
    color: inherit;
    line-height: 50px;
    padding: 0;
}

.buy-form-wrapper .select2-container .select2-selection--single .select2-selection__arrow {
    height: 50px;
    right: 16px;
}

/* Select2 Dropdown */

body > .select2-container {
    width: auto;
}

body > .select2-container .select2-dropdown {
    border: 1px solid #e2e2ea !important;
    border-radius: 8px !important;
    overflow: hidden;
    box-shadow: 0 5px 15px rgba(0, 0, 0, .1);
    position: relative;
}

body > .select2-container .select2-search--dropdown {
    padding: 5px;
}

body > .select2-container .select2-search--dropdown .select2-search__field {
    color: #000;
    font-size: 16px;
    line-height: 42px;
    height: 42px;
    padding: 0 10px;
    border: 1px solid #e2e2ea !important;
    border-radius: 4px;
    outline: none;
}

body > .select2-container .select2-results__option {
    background-color: #fff;
    color: #000;
    font-size: 16px;
    display: block;
    min-height: 52px;
    padding: 10px 15px;
    transition: all 300ms ease 0ms;
}

body > .select2-container .select2-results__option:nth-last-child(n+2) {
    border-bottom: 1px solid #e2e2ea;
}
body > .select2-container .select2-results__option--highlighted[data-selected],
body > .select2-container .select2-results__option[data-selected=true] {
    background-color: #006847;
    color: #fff;
}

/* Payment Fields */

.buy-form-wrapper .woocommerce-checkout-review-order-table {
    background-color: #fff;
    border-color: #e2e2ea !important;
    border-radius: 8px !important;
    overflow: hidden;
}

.buy-form-wrapper .woocommerce-checkout-review-order-table thead {
    background-color: #f9fafb;
}

.buy-form-wrapper .woocommerce-checkout-review-order-table th,
.buy-form-wrapper .woocommerce-checkout-review-order-table td {
    color: #666;
    font-size: 16px;
    padding: 10px 15px !important;
    border-color: #e2e2ea;
}

.buy-form-wrapper .woocommerce-checkout-review-order-table tfoot {
    background-color: #f9fafb;
}

.buy-form-wrapper .woocommerce-checkout-review-order-table .order-total th,
.buy-form-wrapper .woocommerce-checkout-review-order-table .order-total td {
    color: #000;
    font-size: 18px;
    font-weight: 700;
    letter-spacing: 0.5px;
    text-transform: uppercase;
    padding: 16px;
}

.buy-form-wrapper .woocommerce-checkout-review-order-table .order-total .amount {
    color: #006847;
}

.woocommerce-checkout .buy-form-wrapper #payment {
    background-color: transparent;
    border-radius: 0;
}

.woocommerce-checkout .buy-form-wrapper #payment .payment_methods {
    padding: 0;
    border-bottom: 0;
    margin-bottom: 20px;
}

.woocommerce-checkout .buy-form-wrapper #payment .wc_payment_method:nth-last-child(n+2) {
    margin-bottom: 20px;
}

.woocommerce-checkout .buy-form-wrapper #payment .wc_payment_method > label {
    font-size: 16px;
    font-weight: 500;
    line-height: 1.3;
    display: inline-block;
    margin-bottom: 10px;
}

.woocommerce-checkout .buy-form-wrapper #payment .payment_box {
    background-color: #f9fafb;
    color: #000;
    font-size: 14px;
    line-height: 1.3;
    border-radius: 4px;
    padding: 20px 15px;
    margin: 0;
}

.woocommerce-checkout .buy-form-wrapper #payment .payment_box::before {
    display: none;
}

.woocommerce-checkout .buy-form-wrapper #payment .place-order {
    padding: 0;
    margin-bottom: 0;
}

.woocommerce-checkout .buy-form-wrapper #payment .woocommerce-terms-and-conditions-wrapper {
    color: #666;
    font-size: 16px;
    line-height: 1.3;
}

.woocommerce-checkout .buy-form-wrapper #payment .woocommerce-terms-and-conditions-wrapper:nth-last-child(n+2) {
    margin-bottom: 25px;
}

.woocommerce-checkout .buy-form-wrapper #payment #place_order {
    background-color: #006847;
    border-color: transparent;
    font-size: 18px;
    font-weight: 600;
    text-transform: capitalize;
    height: 60px;
    width: 100%;
    padding: 0 15px !important;
    border-radius: 8px;
    outline: none;
    margin-bottom: 0;
    transition: all 300ms ease 0ms;
}

.woocommerce-checkout .buy-form-wrapper #payment #place_order:hover {
    background-color: #015a3e;
}

.woocommerce-checkout .buy-form-wrapper #payment #place_order:disabled {
    background-color: #d0d5dd;
    color: #667085;
    cursor: not-allowed;
}