body.spacer-theme input[type="checkbox"],
body.spacer-theme input[type="radio"]{
    appearance:none;
    -webkit-appearance:none;
    width:20px;
    height:20px;
    min-height:20px;
    margin:0;
    padding:0;
    border:1px solid var(--control-border-color);
    background:var(--control-bg);
    box-shadow:none;
    box-sizing:border-box;
    display:inline-grid;
    place-content:center;
    vertical-align:middle;
    flex-shrink:0;
    cursor:pointer;
    transition:border-color var(--motion-base) var(--ease-standard), box-shadow var(--motion-base) var(--ease-standard), background-color var(--motion-base) var(--ease-standard), transform var(--motion-base) var(--ease-standard);
}

body.spacer-theme input[type="checkbox"]{
    border-radius:var(--control-radius-compact);
}

body.spacer-theme input[type="radio"]{
    border-radius:50%;
}

body.spacer-theme input[type="checkbox"]::before,
body.spacer-theme input[type="radio"]::before{
    content:"";
    display:block;
    transform:scale(0);
    transition:transform var(--motion-base) var(--ease-standard);
}

body.spacer-theme input[type="checkbox"]::before{
    width:5px;
    height:10px;
    border-right:2px solid #fff;
    border-bottom:2px solid #fff;
    transform:rotate(45deg) scale(0);
    transform-origin:center;
    margin-top:-var(--space-1);
}

body.spacer-theme input[type="radio"]::before{
    width:8px;
    height:8px;
    border-radius:50%;
    background:var(--brand-primary);
}

body.spacer-theme input[type="checkbox"]:checked,
body.spacer-theme input[type="radio"]:checked{
    border-color:var(--brand-primary);
    background:var(--brand-primary);
}

body.spacer-theme input[type="checkbox"]:checked::before{
    transform:rotate(45deg) scale(1);
}

body.spacer-theme input[type="radio"]:checked{
    background:var(--control-bg);
}

body.spacer-theme input[type="radio"]:checked::before{
    transform:scale(1);
}

body.spacer-theme input[type="checkbox"]:focus-visible,
body.spacer-theme input[type="radio"]:focus-visible{
    outline:none;
    border-color:var(--control-border-color-focus);
    box-shadow:var(--control-focus-shadow);
}

body.spacer-theme input[type="checkbox"][disabled],
body.spacer-theme input[type="radio"][disabled]{
    background:var(--surface-warm-soft);
    border-color:var(--border-light);
    cursor:not-allowed;
    opacity:0.72;
}

body.spacer-theme label.checkbox,
body.spacer-theme .woocommerce-form__label-for-checkbox,
body.spacer-theme .wc_payment_method label,
body.spacer-theme #shipping_method label,
body.spacer-theme .bundled_product_optional_checkbox{
    display:flex;
    align-items:flex-start;
    gap:var(--space-10);
}

body.spacer-theme .wc_payment_method,
body.spacer-theme #shipping_method li{
    margin:0 0 var(--space-12);
}

body.spacer-theme .payment_box{
    margin:var(--space-12) 0 0 calc(var(--space-20) + var(--space-10));
    padding:var(--space-16);
    border:1px solid var(--border-light);
    border-radius:var(--radius-md);
    background:var(--surface-warm-soft);
}

body.spacer-theme#top,
body.spacer-theme.woocommerce-checkout #payment div.payment_box,
body.spacer-theme.woocommerce-cart #payment div.payment_box,
body.spacer-theme.woocommerce #add_payment_method #payment div.payment_box,
body.spacer-theme #payment div.payment_box{
    margin:var(--space-12) 0 0 calc(var(--space-20) + var(--space-10));
    padding:var(--space-16);
    border:1px solid var(--border-light);
    border-radius:var(--radius-md);
    background:var(--surface-warm-soft);
    color:var(--text-primary);
    line-height:var(--lh-body);
}

body.spacer-theme.woocommerce-checkout #payment div.payment_box{
    width:auto;
    margin:var(--space-12) 0 0;
    box-sizing:border-box;
}

body.spacer-theme.woocommerce-checkout #payment div.payment_box::before{
    left:var(--space-36);
    margin:0;
}

