/* Staging WooCommerce surfaces. Payment-provider iframe fields remain provider-owned. */
body.sdc-commerce-page { --sdc-ink:#f6f2fc; --sdc-muted:#c8bfd4; --sdc-line:#41354f; --sdc-panel:#15101e; }
body.sdc-commerce-page .woocommerce { color:var(--sdc-ink); max-width:1120px; margin:40px auto 72px; padding:0 24px; box-sizing:border-box; font-size:16px; line-height:1.65; }
body.sdc-commerce-page .woocommerce *,body.sdc-commerce-page .woocommerce *::before,body.sdc-commerce-page .woocommerce *::after { box-sizing:border-box; }
body.sdc-commerce-page .woocommerce :is(h2,h3,h4) { color:var(--sdc-ink)!important; background:transparent!important; line-height:1.2; letter-spacing:-.025em; }
body.sdc-commerce-page .woocommerce h2 { font-size:28px; margin:0 0 24px; }
body.sdc-commerce-page .woocommerce :is(p,td,th,address,label,legend) { color:var(--sdc-ink); }
body.sdc-commerce-page .woocommerce :is(a:not(.button),.woocommerce-privacy-policy-link) { color:#d5afff; text-underline-offset:4px; }
body.sdc-commerce-page .woocommerce :is(.woocommerce-MyAccount-content,.woocommerce-order-details,.woocommerce-customer-details,#order_review,#customer_details) { background:linear-gradient(145deg,#1d1429,#110e18); border:1px solid var(--sdc-line); border-radius:20px; padding:32px; margin-bottom:28px; box-shadow:0 18px 50px #0003; }
body.sdc-commerce-page .woocommerce form .form-row { padding:0; margin-bottom:22px; }
body.sdc-commerce-page .woocommerce form .form-row label { display:block; color:var(--sdc-ink)!important; font-size:15px; font-weight:600; margin-bottom:8px; }
body.sdc-commerce-page .woocommerce :is(input.input-text,textarea,select) { background:#fff!important; color:#241c2d!important; border:1px solid #a295b0!important; border-radius:10px; min-height:50px; padding:12px 14px; font-size:16px; width:100%; }
body.sdc-commerce-page .woocommerce :is(input,textarea)::placeholder { color:#6d6178!important; opacity:1; }
body.sdc-commerce-page .woocommerce .required { color:#ffa4b6!important; }
body.sdc-commerce-page .woocommerce :is(.optional,.description,small) { color:var(--sdc-muted); }
body.sdc-commerce-page .woocommerce :is(a,button,input,select,textarea):focus-visible { outline:3px solid #dfbbff!important; outline-offset:4px; }
body.sdc-commerce-page .woocommerce :is(a.button,button.button,input.button,#place_order) { display:inline-block; background:#7925c5!important; border:1px solid #bd7ef0!important; color:#fff!important; padding:15px 24px; border-radius:12px; min-height:52px; font-size:16px; line-height:1.4; font-weight:700; text-decoration:none; box-shadow:0 8px 24px #7823c42b; transition:background .15s ease; }
body.sdc-commerce-page .woocommerce :is(a.button,button.button,input.button,#place_order):hover { background:#6420a3!important; }
body.sdc-commerce-page .woocommerce :is(button,input):disabled { opacity:.55; cursor:not-allowed; }
body.sdc-commerce-page .woocommerce table.shop_table { width:100%; border:1px solid var(--sdc-line)!important; border-collapse:separate; border-spacing:0; border-radius:14px; overflow:hidden; background:#130f1b; margin-bottom:28px; }
body.sdc-commerce-page .woocommerce table.shop_table :is(th,td) { padding:17px 20px; border:0!important; border-bottom:1px solid var(--sdc-line)!important; color:var(--sdc-ink)!important; background:transparent!important; overflow-wrap:anywhere; }
body.sdc-commerce-page .woocommerce table.shop_table thead th { background:#251b32!important; color:#dcccE9!important; font-size:13px; text-transform:uppercase; letter-spacing:.06em; }
body.sdc-commerce-page .woocommerce table.shop_table tfoot tr:last-child :is(th,td) { background:#251b32!important; font-size:20px; font-weight:700; border-bottom:0!important; }
body.sdc-commerce-page .woocommerce #payment { background:transparent!important; border-radius:14px; }
body.sdc-commerce-page .woocommerce #payment ul.payment_methods { border:1px solid var(--sdc-line); border-radius:14px; padding:22px!important; background:#17111f; }
body.sdc-commerce-page .woocommerce #payment ul.payment_methods > li > label { color:var(--sdc-ink)!important; font-weight:600; }
body.sdc-commerce-page .woocommerce #payment div.payment_box { background:#f7f5fa!important; color:#241c2d!important; border-radius:12px; padding:22px; box-shadow:none; }
body.sdc-commerce-page .woocommerce #payment div.payment_box::before { border-bottom-color:#f7f5fa!important; }
body.sdc-commerce-page .woocommerce #payment div.payment_box :is(p,label,span,small,a) { color:#352342!important; }
body.sdc-commerce-page .woocommerce #payment div.payment_box a { text-decoration:underline; }
body.sdc-commerce-page .woocommerce #payment div.payment_box :is(code,mark) { color:#301248!important; background:#ead9ff!important; }
body.sdc-commerce-page .woocommerce #payment .place-order { padding:24px 0 0!important; }
body.sdc-commerce-page .woocommerce #place_order { width:100%; }
body.sdc-commerce-page .woocommerce .woocommerce-thankyou-order-received { color:#e9d6ff; font-size:26px; font-weight:600; margin-bottom:28px; }
body.sdc-commerce-page .woocommerce ul.order_details { display:grid; grid-template-columns:repeat(auto-fit,minmax(180px,1fr)); gap:20px; padding:24px; margin:0 0 32px; background:#1c1426; border:1px solid var(--sdc-line); border-radius:16px; }
body.sdc-commerce-page .woocommerce ul.order_details::before,body.sdc-commerce-page .woocommerce ul.order_details::after { display:none; }
body.sdc-commerce-page .woocommerce ul.order_details li { float:none; border:0; margin:0; padding:0; color:var(--sdc-muted); font-size:12px; letter-spacing:.04em; }
body.sdc-commerce-page .woocommerce ul.order_details li strong { display:block; color:var(--sdc-ink); font-size:16px; letter-spacing:0; overflow-wrap:anywhere; margin-top:5px; }
body.sdc-commerce-page .woocommerce .woocommerce-customer-details address { border:0; padding:0; font-style:normal; line-height:1.9; }
body.sdc-commerce-page .woocommerce :is(.woocommerce-error,.woocommerce-info,.woocommerce-message) { background:#241a31; border-top-color:#c28af3; color:#fff; border-radius:10px; }
@media(max-width:767px) {
body.sdc-commerce-page .woocommerce { padding:0 16px; margin:24px auto 40px; }
body.sdc-commerce-page .woocommerce :is(.woocommerce-MyAccount-content,.woocommerce-order-details,.woocommerce-customer-details,#order_review,#customer_details) { padding:20px 16px; border-radius:14px; }
body.sdc-commerce-page .woocommerce table.shop_table :is(th,td) { padding:12px 10px; font-size:14px; }
body.sdc-commerce-page .woocommerce form :is(.form-row-first,.form-row-last) { width:100%; float:none; }
body.sdc-commerce-page .woocommerce #payment :is(ul.payment_methods,div.payment_box) { padding:14px!important; }
body.sdc-commerce-page .woocommerce ul.order_details { grid-template-columns:1fr; }
}
/* Address cards: theme styles the header wrapper, not only its heading. */
body.sdc-commerce-page .woocommerce .woocommerce-Addresses { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:24px; }
body.sdc-commerce-page .woocommerce .woocommerce-Addresses::before,
body.sdc-commerce-page .woocommerce .woocommerce-Addresses::after { display:none; }
body.sdc-commerce-page .woocommerce .woocommerce-Addresses .woocommerce-Address { float:none!important; width:auto!important; min-width:0; margin:0; background:#130f1b; border:1px solid var(--sdc-line); border-radius:14px; overflow:hidden; }
body.sdc-commerce-page .woocommerce .woocommerce-Address header.woocommerce-Address-title { display:flex; flex-direction:column; align-items:flex-start; gap:16px; padding:22px; background:#251b32!important; color:#f6f2fc!important; border:0!important; border-bottom:1px solid var(--sdc-line)!important; }
body.sdc-commerce-page .woocommerce .woocommerce-Address header.woocommerce-Address-title::before,
body.sdc-commerce-page .woocommerce .woocommerce-Address header.woocommerce-Address-title::after { display:none; }
body.sdc-commerce-page .woocommerce .woocommerce-Address header.woocommerce-Address-title :is(h2,h3) { float:none!important; margin:0!important; padding:0!important; color:#f6f2fc!important; font-size:23px; line-height:1.3; }
body.sdc-commerce-page .woocommerce .woocommerce-Address header.woocommerce-Address-title a.edit { float:none!important; display:inline-block; background:#382047!important; color:#f0ddff!important; border:1px solid #8963a9; border-radius:8px; padding:10px 14px; min-height:44px; line-height:1.4; font-size:14px; font-weight:600; text-decoration:none; }
body.sdc-commerce-page .woocommerce .woocommerce-Address header.woocommerce-Address-title a.edit:hover { background:#4b2a60!important; }
body.sdc-commerce-page .woocommerce .woocommerce-Address address { background:transparent!important; color:#e0d8e9!important; border:0!important; padding:22px!important; margin:0!important; font-style:normal; line-height:1.8; overflow-wrap:anywhere; }
@media(max-width:767px) { body.sdc-commerce-page .woocommerce .woocommerce-Addresses { grid-template-columns:1fr; gap:16px; } }

/* Portal order-pay billing form; does not affect ordinary shop checkout. */
.sdc-checkout-billing{margin:28px 0;padding:clamp(18px,4vw,32px);border:1px solid #493458;border-radius:18px;background:#181020;color:#eee7f6}
.sdc-checkout-billing h3{color:#fff;margin:0 0 12px}
.sdc-checkout-billing>p{color:#c9bdd5;line-height:1.65}
.sdc-checkout-billing .woocommerce-billing-fields__field-wrapper{display:flow-root}
.sdc-checkout-billing label{color:#eee7f6}
.sdc-checkout-billing input.input-text,.sdc-checkout-billing select{width:100%;min-height:46px;padding:10px 12px;border:1px solid #635071;border-radius:8px;background:#fff;color:#24182c}
.sdc-checkout-billing :focus-visible{outline:2px solid #bd92ff;outline-offset:3px}
@media(max-width:600px){.sdc-checkout-billing .form-row-first,.sdc-checkout-billing .form-row-last{float:none;width:100%}}
