/* Style product options table like variations table */

.woocommerce div.product form.cart .options,
.woocommerce div.single-product form.cart .options,
.woocommerce #content div.product form.cart .options,
.woocommerce #content div.single-product form.cart .options {
    margin: 0;
    width: 100%;
    table-layout: fixed;
}
.woocommerce div.product form.cart .options .seldiv,
.woocommerce div.single-product form.cart .options .seldiv,
.woocommerce #content div.product form.cart .options .seldiv,
.woocommerce #content div.single-product form.cart .options .seldiv {
    margin: 0px 0px 0px 0px;
}
.woocommerce div.product form.cart .options select,
.woocommerce div.single-product form.cart .options select,
.woocommerce #content div.product form.cart .options select,
.woocommerce #content div.single-product form.cart .options select {
    width: 100%;
    margin: 0px 0px 0px 0px;
}
.woocommerce div.product form.cart .options td.label,
.woocommerce div.single-product form.cart .options td.label,
.woocommerce #content div.product form.cart .options td.label,
.woocommerce #content div.single-product form.cart .options td.label {
    padding: 0px 18px 0px 0px;
}
.woocommerce div.product form.cart .options td.label label,
.woocommerce div.single-product form.cart .options td.label label,
.woocommerce #content div.product form.cart .options td.label label,
.woocommerce #content div.single-product form.cart .options td.label label {
    font-weight: 600;
    margin-bottom: 9px;
    display: inline-block;
}
.woocommerce div.product form.cart .options tr:not(:first-child) td.label,
.woocommerce div.single-product form.cart .options tr:not(:first-child) td.label,
.woocommerce #content div.product form.cart .options tr:not(:first-child) td.label,
.woocommerce #content div.single-product form.cart .options tr:not(:first-child) td.label {
    padding-top: 18px;
}
.woocommerce div.product form.cart .options td,
.woocommerce div.single-product form.cart .options td,
.woocommerce #content div.product form.cart .options td,
.woocommerce #content div.single-product form.cart .options td {
    vertical-align: top;
    padding: 0;
}
.woocommerce div.product form.cart .options .reset_variations,
.woocommerce div.single-product form.cart .options .reset_variations,
.woocommerce #content div.product form.cart .options .reset_variations,
.woocommerce #content div.single-product form.cart .options .reset_variations {
    font-size: 12px;
    line-height: 1.75;
    margin: 18px 0 0;
    display: inline-block;
    margin-top: 9px;
}

/* Hide option set dropdown when there is a swatch */

body #swan-ajax-options { margin-top: 20px; }
#swan-ajax-options-loading-div-container{width:100%; margin-bottom: 27px;margin-top: 20px;}
#swan-ajax-options-loading-div{float: left; margin-left:-5px}
#swan-ajax-options-loading-text{line-height: 35px; margin-left: 2.5rem;}

.swan-woo-more-swatches-link { display: block; width: 100%; background: #eaeaea; padding: 5px; text-align: center; cursor: pointer !important; }
.swan-woo-more-swatches { display: none; }


/* Checkout consent checkboxes */

.woocommerce form .form-row label.consent-pref + label.consent-pref { margin-left: 10px; }
.woocommerce-account form .form-row label.consent-pref { margin-left: 10px; }
html .consent-pref input[type=checkbox] { margin-right: 0; }
html .woocommerce-checkout .consent-row,
html .woocommerce-account .consent-row { margin-top: 20px !important; padding: 0 !important; display: none; }
#third-party-wrapper { display: none; }

/* Delivery/Collection product page styling */

#swan-woo-stock-indicator { display: block; width: 100%; margin-bottom: 10px; }
#swan-woo-stock-indicator .swan-woo-stock-inner { float: left; width: 49.5%; border: 1px solid #ddd; padding: 2%; min-height: 100px; }
#swan-woo-stock-indicator .swan-woo-stock-inner + .swan-woo-stock-inner { margin-left: 1%; }
#swan-woo-stock-indicator .swan-woo-stock-inner.available { border-color: #000; }
#swan-woo-stock-indicator .swan-woo-stock-inner.available.selected { border-color: #62B959; background: #f5fff4; }
#swan-woo-stock-indicator .swan-woo-stock-inner.available i { color: #62B959 !important; }
#swan-woo-stock-indicator .swan-woo-stock-inner.unavailable i { color: #E23327 !important; }
#swan-woo-stock-indicator .swan-woo-stock-inner.available label { font-weight: bold; }
#swan-woo-stock-indicator .swan-woo-stock-inner span { display: block; }

/*
 * Loyalty styles ------------------------------------------------------------------------------------------------------
 */

#swan_woo_progress_container{
    border-radius: 5px;
    padding: 10px 15px;
    box-shadow: 0 4px 8px 0 rgba(0,0,0,0.2);
    align-items: center;
    margin-bottom: 1.5rem;
    display: flex;
    background: #36353f;
    color: #fff;
}

#swan_woo_progress_title{
    font-size: 1.5rem;
    font-weight: 600;
}

#swan_woo_progress_text{
    font-size: 1rem;
}

.swan_woo_progress__svg {
    display: block;
    max-width: 80%;
    max-height: 250px;
    width: 150px;
}

.circle-bg {
    fill: none;
    stroke: #eee;
    stroke-width: 3.8;
}

.circle {
    fill: none;
    stroke-width: 2.8;
    stroke-linecap: round;
    animation: progress 1s ease-out forwards;
}

@keyframes progress {
    0% {
        stroke-dasharray: 0 100;
    }
}

.swan_woo_progress__svg.orange .circle {
    stroke: #ff9f00;
}

.percentage {
    fill: #666;
    font-family: sans-serif;
    font-size: 0.5em;
    text-anchor: middle;
}

.swan_woo_voucher{
    display: flex;
    border-radius: 5px;
    padding: 10px 15px;
    box-shadow: 0 4px 8px 0 rgba(0,0,0,0.2);
    align-items: center;
    margin-bottom: 1.5rem;
}

.swan_woo_voucher .swan_woo_voucher__icon{
    margin-right: 15px;
}

.swan_woo_voucher .swan_woo_voucher__info .swan_woo_voucher__info__title{
    font-size: 1.2rem;
}
.swan_woo_voucher .swan_woo_voucher__info .swan_woo_voucher__info__code{
    font-size: 1.5rem;
}
.swan_woo_voucher .swan_woo_voucher__info .swan_woo_voucher__info__info{
    font-size: .9rem;
}
.swan_woo_voucher .swan_woo_voucher__info .swan_woo_voucher__info__expiry{
    font-size: .9rem;
}

.swan_woo_loyalty_form_group {
    margin-bottom: .5rem;
    clear: both;
    overflow: auto;
}

.swan_woo_loyalty_form_group > *{
    display: block;
}

.swan_woo_loyalty_form_group > input, .swan_woo_loyalty_form_group > textarea{
    width: 100%;
}

.swan_woo_loyalty_sign_up_button{
    margin-top: .5rem;
}

#loyalty-sign-up {
    margin-top: 30px;
}

.woocommerce-MyAccount-content .woocommerce-message {
    margin: 0 0 30px 0;
}

.woocommerce-MyAccount-content label {
    margin-bottom: 8px;
}

.woocommerce-MyAccount-content h2 {
    font-size: 24px;
}

/* Loyalty form styling */
.swan_woo_field_type_checkbox {
    float: left;
    width: auto !important;
    margin: 0 8px 0 0;
}

.swan_woo_loyalty_form_group .swan_woo_field_type_date_dd,
.swan_woo_loyalty_form_group .swan_woo_field_type_date_mm,
.swan_woo_loyalty_form_group .swan_woo_field_type_date_yyyy {
    width: 120px;
    float: left;
}

.swan_woo_loyalty_form_group .swan_woo_field_type_date_mm,
.swan_woo_loyalty_form_group .swan_woo_field_type_date_yyyy {
    margin-left: 10px;
}

.woocommerce-terms-and-conditions-wrapper {
    margin-top: 20px;
    clear: both;
}

#swan-woo-loyalty-spend {
    border: 1px solid #000;
    margin-bottom: 40px;
    padding: 20px;
}

#remove-loyalty {
    color: #fff;
    text-decoration: underline;
    clear: both;
    width: 100%;
    display: block;
    float: none;
}

.swan-woo-remove-loyalty-spend {
    color: #fff;
    text-decoration: underline !important;
    display: block;
}

.swan-woo-remove-loyalty-spinner {
    width: 20px;
    fill: #000;
    float: left;
    margin-right: 5px;
}

/*
 * End loyalty styles --------------------------------------------------------------------------------------------------
 */
