/* ==========================================================================
   Pine Research Instrumentation
   
   WOOCOMMERCE CHECKOUT

   Author: Tim Paschkewitz
   ========================================================================== */

/* CART AND CHECKOUT (Shared) */
.woocommerce-checkout .order-summary .pri-grid.pri-grid-header {
    font-weight: 700;
    align-items: center;
    color: var(--mid-blue-2);
    border-bottom: 2px solid var(--mid-blue-2);
    padding: 10px;
    font-size: 1.1em;
    background-color: unset;
}

.woocommerce-checkout .order-summary .pri-grid:not(.pri-grid-header) {
    color: var(--white);
    font-size: 0.9em;
    padding: 10px;
}

.woocommerce-checkout .order-summary .pri-grid:not(.pri-grid-header):nth-child(even) {
    border-top: 1px solid var(--mid-blue-2);
    border-bottom: 1px solid var(--mid-blue-2);
    background-color: unset;
}

.woocommerce-cart .pri-grid-header .product-price,
.woocommerce-cart .pri-grid-header .product-quantity,
.woocommerce-cart .cart-item .product-quantity {
    text-align: center;
}

.woocommerce-cart .pri-grid-header .product-subtotal,
.woocommerce-cart .cart-item .product-subtotal {
    text-align: right;
}

.woocommerce-cart .cart-item {
    padding: 10px;
}

.woocommerce-cart .product-remove,
.woocommerce-cart .product-thumbnail {
    align-content: center;
}

.woocommerce-cart .quote-request-outer-wrap {
    border-top: 1px solid var(--mid-blue-1);
}

.woocommerce-cart .update-cart-button:disabled,
.woocommerce-cart .update-cart-button[disabled] {
    opacity: 0.5;
    cursor: not-allowed;
    box-shadow: none;
    filter: grayscale(100%);
    transition: opacity 0.3s ease;
}

.woocommerce-cart .update-cart-button.et_pb_custom_button_icon.et_pb_button {
    padding: 8px 12px !important;
    border-radius: 5px !important;
    line-height: unset !important;
}

.woocommerce-cart .update-cart-button.et_pb_custom_button_icon.et_pb_button:hover {
    border: 1px solid var(--pri-blue) !important;
    color: var(--pri-blue) !important;
}

.woocommerce-cart .cart-summary {
    color: var(--white);
}

.woocommerce a.remove:hover {
    background-color: var(--pink);
}

/* CHECKOUT (General) */
input#payment_method_paypal_pro_payflow.input-radio {
    margin: 0 0 0 1em !important;
}

label[for="payment_method_paypal_pro_payflow"] img {
    margin-left: 1em !important;
}

#main-content>form>div.woocommerce-NoticeGroup.woocommerce-NoticeGroup-checkout {
    padding: 16px !important;
}

#main-content>form>div.woocommerce-NoticeGroup.woocommerce-NoticeGroup-checkout>div>ul.woocommerce-error {
    margin: 0 !important;
    background-color: var(--light-orange) !important;
    color: var(--orange) !important;
    font-weight: 700 !important;
    font-size: 1em !important;
}

#payment>ul>li.wc_payment_method.payment_method_paypal_pro_payflow label {
    display: block;
    text-align: center;
    margin: auto auto;
}

#payment>ul>li.wc_payment_method.payment_method_paypal_pro_payflow div.payment_box.payment_method_paypal_pro_payflow>p {
    display: none;
}

.shop_table .product-subtotal {
    text-align: right;
}

.cart-sku {
    display: flex;
    flex-flow: row nowrap;
    align-items: center;
    border-radius: 5px;
    width: fit-content;
    background-color: var(--mid-blue-1);
    padding: 0.2em 0.6em;
    color: var(--white);
    text-decoration: none;
    transition: background-color 0.2s, color 0.2s;
}

.woocommerce-checkout .variation-data,
.woocommerce-cart .variation-data {
    font-size: 0.85em;
}

.woocommerce-checkout #order_review .totals {
    font-size: 1.2em;
    font-weight: 700;
    color: var(--dark-pri-blue);
    background-color: var(--mid-blue-2);
}

.woocommerce-checkout .shipping .options {
    border: 1px solid var(--mid-blue-1);
    border-radius: 5px;
    padding: 0.5em;
}

.woocommerce-checkout .shipping-package {
    display: flex;
    flex-flow: column nowrap;
    row-gap: 0.3em;
    font-size: 0.98em;
}

.shipping-method-option:has(input:checked) {
    font-weight: 700;
}

.shipping-method-option:not(:has(input:checked)) {
    font-weight: 400;
    opacity: 0.7;
}

.shipping-method-option {
    display: flex;
    flex-flow: row nowrap;
    align-items: center;
    column-gap: 1em;
}

.shipping-method-option input[type="radio"] {
    appearance: none;
    -webkit-appearance: none;
    -moz-appearance: none;
    width: 1.4em;
    height: 1.4em;
    border: 1px solid var(--mid-blue-2);
    border-radius: 50%;
    background-color: #fff;
    outline: none;
    cursor: pointer;
    position: relative;
    vertical-align: middle;
    transition: border-color 0.2s ease, box-shadow 0.2s ease;
    margin: 0;
}

.shipping-method-option input[type="radio"]:checked::before {
    content: "";
    display: block;
    width: 0.7em;
    height: 0.7em;
    background-color: var(--mid-blue-1);
    border-radius: 50%;
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
}

.method-label {
    flex-grow: 1;
}

.method-cost {
    text-align: right;
}

.woocommerce-checkout .select2-dropdown .select2-search input.select2-search__field {
    border-radius: 5px;
    border-width: 1px;
    border-color: #939598;
    background-color: #f9f9f9;
    padding: 8px;
    height: auto;
    line-height: 1.7em;
    font-size: 14px;
    color: var(--gray);
}

.woocommerce-checkout .select2-dropdown .select2-search input.select2-search__field:focus {
    border-color: var(--pri-blue);
    color: var(--pri-blue);
    background-color: var(--white);
}

.woocommerce-checkout .select2-container--default .select2-results__option--highlighted[aria-selected],
.woocommerce-checkout .select2-container--default .select2-results__option--highlighted[data-selected] {
    background-color: var(--pri-blue);
}

.woocommerce-checkout .select2-results__option {
    font-size: 14px;
    color: var(--gray);
    padding: 8px;
    line-height: 1.7;
}

#pri-checkout-section #pri-checkout-col-1 {
    width: 60%;
}

#pri-checkout-section #pri-checkout-col-2 {
    width: 40%;
}

#pri-checkout-section #order_comments_field>label {
    display: none;
}

.shipping-address-notice {
    font-size: 0.9em;
    color: var(--dark-pri-blue);
    padding: 1em;
    background-color: var(--mid-blue-2);
    margin-bottom: 0.5em;
    font-weight: 700;
    border-radius: 5px;
}

.woocommerce-checkout .cart-product-link {
    color: var(--white);
}

.woocommerce-checkout .cart-product-link:hover {
    color: var(--mid-blue-2);
    text-decoration: underline;
    cursor: pointer;
}

#order_comments {
    width: 100%;
    padding: 10px;
    border-radius: 5px;
    background-color: #f9f9f9;
}

#order_comments:focus {
    color: var(--pri-blue);
    background-color: var(--white);
}

body.woocommerce-order-received .hide-on-order-received {
    display: none;
}

body.woocommerce-checkout:not(.woocommerce-order-received) .hide-on-checkout {
    display: none;
}

/* CART */
.woocommerce-cart .input-text.qty {
    text-align: center;
}

.woocommerce-cart .cart-summary .subtotal,
.woocommerce-cart .cart-summary .shipping {
    border-bottom: 1px solid var(--mid-blue-2);
}

.woocommerce-cart .cart-summary>div:not(.tax-notice) {
    padding: 1em;
}

.woocommerce-cart .totals {
    font-size: 1.2em;
    color: var(--dark-pri-blue);
    background-color: var(--mid-blue-2);
}

.woocommerce-cart .totals bdi {
    font-size: 1.4em;
    color: var(--dark-pri-blue);
}

.woocommerce-cart .shipping-package {
    display: flex;
    flex-flow: column nowrap;
    row-gap: 0.5em;
    padding: 1em 0 1em 1em;
}

.woocommerce-cart .method-label {
    font-size: 0.9em;
}

/* ORDER ACKNOWLEDGEMENT */
.order-acknowledgement-wrapper .order-details {
    text-align: center;
}

.order-acknowledgement-wrapper .order-details.pri-grid:not(.pri-grid-header) {
    color: var(--white);
    font-weight: 700;
    padding: 10px;
}

.order-acknowledgement-wrapper .pri-grid-header,
.order-items-summary .pri-grid-header {
    font-weight: 700;
    align-items: center;
    color: var(--mid-blue-2);
    border-bottom: 2px solid var(--mid-blue-2);
    padding: 10px;
    font-size: 1.1em;
    background-color: unset;
    border-top: unset;
}

.order-totals .subtotal,
.order-totals .shipping,
.order-totals .tax,
.order-totals .totals {
    display: flex;
    flex-flow: row nowrap;
    justify-content: flex-end;
}

.order-totals .title {
    flex-grow: 1;
    text-align: right;
}

.order-totals .value {
    margin-left: 45px;
}

.order-acknowledgement-wrapper h2,
.acknowledgement-order-summary h2 {
    padding: 15px;
}

.order-acknowledgement-wrapper,
.order-summary {
    margin-bottom: 1em;
}

.checkout-item.pri-grid:not(.pri-grid-header) {
    padding: 10px;
}

.acknowledgement-order-summary .order-totals .pri-grid.subtotal,
.acknowledgement-order-summary .order-totals .pri-grid.tax,
.acknowledgement-order-summary .order-totals .pri-grid.shipping {
    background-color: var(--dark-pri-blue);
    color: var(--white);
    border-bottom: 1px solid var(--mid-blue-2);
    border-top: unset;
    padding: 10px;
}

.checkout-item.pri-grid:not(.pri-grid-header):nth-child(even) {
    background-color: var(--dark-pri-blue);
    color: var(--white);
    border-bottom: 1px solid var(--mid-blue-2);
    border-top: unset;
}

.acknowledgement-order-summary .totals {
    font-weight: 700;
    color: var(--dark-pri-blue);
    background-color: var(--mid-blue-2);
    padding: 10px;
}

/* ORDER DETAILS */
.et_pb_wc_checkout_payment_info_0_tb_body div.woocommerce-order {
    margin-top: 0 !important;
}

ul.woocommerce-order-overview.woocommerce-thankyou-order-details.order_details {
    margin: 0 !important;
    padding: 0 !important;
    display: flex;
    flex-flow: column nowrap;
    row-gap: 1em;
}

ul.woocommerce-order-overview.woocommerce-thankyou-order-details.order_details li {
    float: unset !important;
    margin-right: 0 !important;
    border-right: none !important;
    padding-right: 0 !important;
}

.woocommerce-order-received section.woocommerce-order-details,
.woocommerce-order-received section.woocommerce-order-details>*,
.woocommerce-order-received section.woocommerce-customer-details,
.woocommerce-order-received section.woocommerce-customer-details>*,
.woocommerce-order-received section.woocommerce-columns.addresses,
.woocommerce-order-received section.woocommerce-columns.addresses>* {
    color: var(--white);
}

.woocommerce-MyAccount-content .pri-my-account_order-details section.woocommerce-order-details {
    color: var(--gray);
}

section.woocommerce-order-details table.woocommerce-table.shop_table.order_details {
    border: 1px solid rgba(255, 255, 255, 0.8);
    font-size: 0.9em;
}

.woocommerce .woocommerce-customer-details address {
    border: 1px solid rgba(255, 255, 255, 0.8);
}

.woocommerce .col2-set .col-1,
.woocommerce-page .col2-set .col-1,
.woocommerce .col2-set .col-2,
.woocommerce-page .col2-set .col-2 {
    float: unset;
    width: unset;
}

.woocommerce-order-received section.woocommerce-columns.woocommerce-columns--2.woocommerce-columns--addresses.col2-set.addresses {
    display: flex;
    flex-flow: column nowrap;
    row-gap: 1em;
}

.woocommerce-order-received section.woocommerce-customer-details h2.woocommerce-column__title {
    color: var(--white);
}

.pri-my-account_order-details section.woocommerce-customer-details h2.woocommerce-column__title {
    color: var(--dark-pri-blue);
}

.pri-my-account_order-details section.woocommerce-columns.woocommerce-columns--2.woocommerce-columns--addresses.col2-set.addresses::before {
    content: none;
}