/* =========================================
   WOOCOMMERCE FULL RESET
   Inputs / Selects / Forms / Buttons
========================================= */

/* Remove default browser styles */
.woocommerce input,
.woocommerce select,
.woocommerce textarea,
.woocommerce button,
.woocommerce a.button,
.woocommerce input.button,
.woocommerce button.button {
    appearance: none;
    -webkit-appearance: none;
    -moz-appearance: none;

    margin: 0;
    padding: 0;
    border: none;
    background: none;
    box-shadow: none;
    outline: none;

    font: inherit;
    color: inherit;
    line-height: inherit;

    border-radius: 0;
    text-decoration: none;

    box-sizing: border-box;
}

/* Remove autofill styles */
.woocommerce input:-webkit-autofill,
.woocommerce input:-webkit-autofill:hover,
.woocommerce input:-webkit-autofill:focus {
    -webkit-box-shadow: 0 0 0px 1000px white inset !important;
    -webkit-text-fill-color: #000 !important;
    transition: background-color 9999s ease-in-out 0s;
}

/* Remove number arrows */
.woocommerce input[type="number"]::-webkit-inner-spin-button,
.woocommerce input[type="number"]::-webkit-outer-spin-button {
    -webkit-appearance: none;
    margin: 0;
}

.woocommerce input[type="number"] {
    -moz-appearance: textfield;
}

/* Remove search X */
.woocommerce input[type="search"]::-webkit-search-decoration,
.woocommerce input[type="search"]::-webkit-search-cancel-button,
.woocommerce input[type="search"]::-webkit-search-results-button,
.woocommerce input[type="search"]::-webkit-search-results-decoration {
    display: none;
}

/* Remove select arrow */
.woocommerce select::-ms-expand {
    display: none;
}

/* Reset forms */
.woocommerce form,
.woocommerce form.checkout,
.woocommerce form.login,
.woocommerce form.register,
.woocommerce form.cart {
    margin: 0;
    padding: 0;
    border: none;
    background: transparent;
    box-shadow: none;
}

/* Reset field rows */
.woocommerce form .form-row {
    margin: 0;
    padding: 0;
    width: 100%;
}

/* Reset labels */
.woocommerce form .form-row label {
    margin: 0;
    padding: 0;
    display: block;
    font-weight: inherit;
}

/* Reset inputs */
.woocommerce form .form-row input.input-text,
.woocommerce form .form-row textarea,
.woocommerce form .form-row select {
    width: 100%;
    min-height: auto;
}

/* Reset buttons */
.woocommerce a.button,
.woocommerce button.button,
.woocommerce input.button,
.woocommerce #respond input#submit,
.woocommerce #payment #place_order {
    cursor: pointer;
    display: inline-flex;
    align-items: center;
    justify-content: center;
}

/* Disabled buttons */
.woocommerce button.button:disabled,
.woocommerce button.button.disabled {
    opacity: 1;
}

/* Reset tables */
.woocommerce table,
.woocommerce table.shop_table {
    border-collapse: collapse;
    border-spacing: 0;
    background: transparent;
}

/* Reset lists */
.woocommerce ul,
.woocommerce ol {
    margin: 0;
    padding: 0;
    list-style: none;
}

/* Reset messages */
.woocommerce-message,
.woocommerce-error,
.woocommerce-info {
    margin: 0;
    border: none;
    box-shadow: none;
}

/* Reset coupon/login boxes */
.woocommerce form.checkout_coupon,
.woocommerce form.login,
.woocommerce form.register {
    border: none;
    padding: 0;
    margin: 0;
}

/* Reset payment area */
.woocommerce-checkout #payment {
    background: transparent;
    border: none;
    padding: 0;
}

/* Universal sizing */
.woocommerce *,
.woocommerce *::before,
.woocommerce *::after {
    box-sizing: border-box;
}