.wr-checkout {
    --wr-checkout-accent: #ff4081;
    --wr-checkout-line: #f7dbe7;
    --wr-checkout-border: #dedede;
    --wr-checkout-left-text: #171717;
    --wr-checkout-right-text: #171717;
    width: calc(100% - 40px);
    max-width: 1140px;
    margin: 0 auto;
    padding: 36px 0 32px;
    color: #171717;
    font-family: Inter, Arial, sans-serif;
}

.wr-checkout *, .wr-checkout *::before, .wr-checkout *::after { box-sizing: border-box; }

.wr-checkout__title {
    margin: 0 0 32px;
    color: #222;
    font: 400 34px/1.15 Inter, Arial, sans-serif;
    letter-spacing: -.02em;
}

.wr-checkout__preview {
    padding: 32px;
    border: 1px solid var(--wr-checkout-border);
    border-radius: 8px;
    background: #fff;
}

.wr-checkout .woocommerce-checkout-header {
    width: 100%;
    margin: 0 0 32px;
    padding: 0 0 20px;
    border-bottom: 1px solid var(--wr-checkout-line);
}

.wr-checkout .woocommerce-checkout-header-login {
    width: 100%;
    margin: 0 0 28px !important;
}

.wr-checkout .woocommerce-form-login-toggle,
.wr-checkout .woocommerce-form-login-toggle .woocommerce-info {
    width: 100%;
    margin: 0 !important;
}

.wr-checkout form.checkout.woocommerce-checkout {
    display: grid !important;
    grid-template-columns: minmax(0, 1fr) minmax(396px, 460px);
    gap: 48px;
    align-items: start;
    width: 100% !important;
    margin: 0 !important;
}

.wr-checkout #customer_details,
.wr-checkout #customer_details .col-1,
.wr-checkout #customer_details .col-2,
.wr-checkout .woocommerce-checkout-order-review-wrap,
.wr-checkout #order_review {
    float: none !important;
    width: 100% !important;
    max-width: none !important;
}

.wr-checkout #customer_details {
    grid-column: 1;
    margin: 0;
    color: var(--wr-checkout-left-text);
}

.wr-checkout #customer_details .col-1,
.wr-checkout #customer_details .col-2 {
    padding: 0 !important;
}

.wr-checkout #customer_details .col-2 { margin-top: 10px; }

.wr-checkout .woocommerce-checkout-order-review-wrap {
    grid-column: 2;
    display: flex;
    flex-direction: column;
    gap: 28px;
    padding: 0;
    border: 0;
    border-radius: 0;
    background: transparent;
    color: var(--wr-checkout-right-text);
}

.wr-checkout h3,
.wr-checkout .woocommerce-billing-fields > h3,
.wr-checkout .woocommerce-additional-fields > h3,
.wr-checkout #order_review_heading {
    margin: 0 0 22px;
    padding: 0 0 14px;
    border-bottom: 1px solid var(--wr-checkout-line);
    color: #202025;
    font: 400 22px/1.2 Inter, Arial, sans-serif;
    letter-spacing: -.02em;
    text-transform: uppercase;
}

.wr-checkout .form-row {
    margin: 0 0 14px !important;
    padding: 0 !important;
}

.wr-checkout .woocommerce-billing-fields__field-wrapper,
.wr-checkout .woocommerce-shipping-fields__field-wrapper {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 0 16px;
}

.wr-checkout .form-row-first,
.wr-checkout .form-row-last {
    float: none !important;
    width: auto !important;
}

.wr-checkout .form-row-wide,
.wr-checkout .form-row:not(.form-row-first):not(.form-row-last) {
    grid-column: 1 / -1;
}

.wr-checkout label {
    display: block;
    margin: 0 0 7px;
    color: #252525;
    font-size: 14px;
    font-weight: 400;
    line-height: 1.4;
}

.wr-checkout .required { color: var(--wr-checkout-accent); }

.wr-checkout input.input-text,
.wr-checkout textarea,
.wr-checkout select,
.wr-checkout .select2-container .select2-selection--single {
    width: 100%;
    min-height: 48px;
    margin: 0;
    padding: 12px 20px;
    border: 1px solid #d3d3d3;
    border-radius: 6px;
    background: #fff;
    color: #222;
    font: 400 14px/22px Inter, Arial, sans-serif;
    box-shadow: none;
}

.wr-checkout textarea { min-height: 128px; resize: vertical; }
.wr-checkout .select2-container { width: 100% !important; }
.wr-checkout .select2-container .select2-selection--single { padding-top: 8px; }
.wr-checkout .select2-container .select2-selection__rendered { padding: 0; line-height: 30px; }
.wr-checkout .select2-container .select2-selection__arrow { top: 10px; right: 10px; }

.wr-checkout input.input-text:focus,
.wr-checkout textarea:focus,
.wr-checkout select:focus {
    border-color: var(--wr-checkout-accent);
    outline: 0;
}

/* Formularz danych zamówienia. */
.wr-checkout #customer_details {
    padding: 0 !important;
    border: 0 !important;
    background: transparent !important;
}

.wr-checkout #customer_details .col-1,
.wr-checkout #customer_details .col-2 {
    border: 0 !important;
    background: transparent !important;
}

.wr-checkout #customer_details h3 { color: var(--wr-checkout-left-text); }

.wr-checkout .woocommerce-billing-fields > h3 {
    margin: 0 0 16px;
    padding: 0 0 14px;
    border-bottom: 1px solid var(--wr-checkout-line);
    color: var(--wr-checkout-left-text);
    font: 400 20px/1.2 Inter, Arial, sans-serif;
    letter-spacing: -.02em;
    text-transform: uppercase;
}

.wr-checkout #customer_details .woocommerce-billing-fields__field-wrapper,
.wr-checkout #customer_details .woocommerce-shipping-fields__field-wrapper {
    gap: 0 20px;
}

.wr-checkout #customer_details .form-row {
    margin-bottom: 15px !important;
}

.wr-checkout #customer_details .form-row > label,
.wr-checkout #customer_details .woocommerce-additional-fields label {
    margin: 0 0 7px;
    color: var(--wr-checkout-left-text);
    font-size: 12px;
    font-weight: 400;
    line-height: 1.35;
}

.wr-checkout #customer_details input.input-text,
.wr-checkout #customer_details textarea,
.wr-checkout #customer_details select,
.wr-checkout #customer_details .select2-container .select2-selection--single {
    min-height: 42px;
    padding: 9px 16px;
    border: 1px solid #d3d3d3 !important;
    border-radius: 6px !important;
    background: #fff !important;
    color: var(--wr-checkout-left-text);
    font: 400 12px/22px Inter, Arial, sans-serif;
    box-shadow: none !important;
}

.wr-checkout #customer_details input.input-text:focus,
.wr-checkout #customer_details textarea:focus,
.wr-checkout #customer_details select:focus,
.wr-checkout #customer_details .select2-container--open .select2-selection--single {
    border-color: var(--wr-checkout-accent) !important;
    outline: 0 !important;
    outline-offset: 0 !important;
    box-shadow: none !important;
}

.wr-checkout #customer_details .select2-container .select2-selection--single { padding-top: 5px; }
.wr-checkout #customer_details .select2-container .select2-selection__rendered { line-height: 30px; }
.wr-checkout #customer_details .select2-container .select2-selection__arrow { top: 5px; }
.wr-checkout #customer_details .select2-container .select2-selection__arrow b { border-top-color: var(--wr-checkout-accent); }

.wr-checkout #customer_details .required { color: var(--wr-checkout-accent); }
.wr-checkout #customer_details .optional { display: none; }
.wr-checkout #billing_first_name_field .required,
.wr-checkout #billing_last_name_field .required { display: none; }

.wr-checkout #billing_invoice_field {
    grid-column: 1 / -1;
    margin-bottom: 15px !important;
    padding: 0 0 12px !important;
    border-bottom: 1px solid var(--wr-checkout-line);
}

.wr-checkout #billing_invoice_field > label {
    display: block;
    margin-bottom: 10px;
}

.wr-checkout #billing_invoice_field .woocommerce-input-wrapper {
    display: flex;
    align-items: center;
    justify-content: flex-start;
    gap: 10px;
    min-height: 24px;
}

.wr-checkout #billing_invoice_field input[type="radio"] {
    position: static !important;
    flex: 0 0 24px;
    display: inline-block !important;
    width: 24px !important;
    min-width: 24px !important;
    height: 24px !important;
    margin: 0 !important;
    padding: 0 !important;
    border: 2px solid #aaa !important;
    border-radius: 50% !important;
    background: #fff !important;
    opacity: 1 !important;
    appearance: none;
    -webkit-appearance: none;
    box-shadow: none !important;
    cursor: pointer;
}

.wr-checkout #billing_invoice_field input[type="radio"]:checked {
    border-color: var(--wr-checkout-accent) !important;
    background: radial-gradient(circle, var(--wr-checkout-accent) 0 7px, #fff 8px) !important;
}

.wr-checkout #billing_invoice_field input[type="radio"]:focus-visible {
    outline: 2px solid var(--wr-checkout-accent);
    outline-offset: 3px;
}

.wr-checkout #billing_invoice_field label.radio {
    flex: 0 0 auto;
    display: inline-flex;
    align-items: center;
    width: auto !important;
    max-width: none !important;
    margin: 0 8px 0 0;
    color: var(--wr-checkout-left-text);
    font-size: 16px;
    line-height: 1.2;
    cursor: pointer;
}

.wr-checkout .wr-checkout-nip-field { display: none !important; }
.wr-checkout .wr-checkout-nip-field.is-visible { display: block !important; }
.wr-checkout .wr-checkout-nip-field.is-required > label::after {
    margin-left: 2px;
    color: var(--wr-checkout-accent);
    content: "*";
}

.wr-checkout .woocommerce-account-fields,
.wr-checkout .woocommerce-shipping-fields {
    display: block !important;
    visibility: visible !important;
    width: 100% !important;
    opacity: 1 !important;
}

.wr-checkout .woocommerce-account-fields {
    margin: 0 !important;
}

.wr-checkout .woocommerce-account-fields .form-row {
    margin: 0 !important;
}

.wr-checkout .woocommerce-shipping-fields {
    margin: 8px 0 0 !important;
}

.wr-checkout #ship-to-different-address {
    display: block !important;
    margin: 0 !important;
    padding: 0 !important;
    border: 0 !important;
    font: inherit;
    text-transform: none;
}

.wr-checkout .woocommerce-account-fields label.checkbox,
.wr-checkout #ship-to-different-address label.checkbox {
    display: inline-flex;
    align-items: center;
    gap: 10px;
    margin: 0 !important;
    color: var(--wr-checkout-left-text);
    font: 400 12px/20px Inter, Arial, sans-serif;
    text-transform: none;
    cursor: pointer;
}

.wr-checkout .woocommerce-account-fields label.checkbox > span,
.wr-checkout #ship-to-different-address label.checkbox > span {
    position: static !important;
    margin: 0 !important;
    color: inherit;
    font: inherit !important;
    letter-spacing: normal;
    text-transform: none !important;
}

.wr-checkout .woocommerce-account-fields label.checkbox > span::before,
.wr-checkout #ship-to-different-address label.checkbox > span::before { display: none !important; }

.wr-checkout .shipping_address {
    display: none;
    margin-top: 16px;
}
.wr-checkout .woocommerce-shipping-fields.is-shipping-address-open .shipping_address { display: block !important; }
.wr-checkout .woocommerce-additional-fields { margin-top: 14px !important; }
.wr-checkout #order_comments_field { margin-bottom: 0 !important; }
.wr-checkout #customer_details textarea#order_comments {
    min-height: 134px;
    resize: vertical;
}

.wr-checkout table.shop_table {
    width: 100%;
    margin: 0 0 20px;
    border: 0;
    border-collapse: collapse;
    border-radius: 0;
    font-size: 13px;
}

.wr-checkout table.shop_table th,
.wr-checkout table.shop_table td {
    padding: 12px 0;
    border: 0;
    border-bottom: 1px solid #ececec;
    vertical-align: middle;
}

.wr-checkout table.shop_table th:last-child,
.wr-checkout table.shop_table td:last-child { text-align: right; }
.wr-checkout table.shop_table .product-name { text-align: left; }
.wr-checkout table.shop_table img { width: 56px; height: 56px; margin-right: 10px; object-fit: contain; }
.wr-checkout .order-total th, .wr-checkout .order-total td { font-weight: 700; }

.wr-checkout ul#shipping_method,
.wr-checkout .wc_payment_methods {
    margin: 0;
    padding: 0;
    list-style: none;
}

.wr-checkout ul#shipping_method li,
.wr-checkout .wc_payment_method {
    margin: 0;
    padding: 12px 0;
    border-bottom: 1px solid #ececec;
}

.wr-checkout .woocommerce-checkout-payment {
    border-radius: 0 !important;
    background: transparent !important;
}

.wr-checkout .payment_box {
    margin: 8px 0 0 !important;
    padding: 12px !important;
    border-radius: 6px;
    background: #f8f8f8 !important;
    font-size: 12px;
}

/* Pola wyboru w podsumowaniu zamówienia. Motyw bazowy ukrywa natywne
   kontrolki i zastępuje je cienkim znakiem przy etykiecie. W checkout KALA
   używamy spójnych, dobrze widocznych pól w kolorze akcentu. */
.wr-checkout #payment .wc_payment_method {
    display: grid;
    grid-template-columns: 20px minmax(0, 1fr);
    column-gap: 10px;
    align-items: center;
}

.wr-checkout #payment .wc_payment_method > input[type="radio"] {
    position: static !important;
    grid-column: 1;
    display: block !important;
    width: 20px !important;
    min-width: 20px !important;
    height: 20px !important;
    margin: 0 !important;
    padding: 0 !important;
    border: 2px solid #b8b8b8 !important;
    border-radius: 50% !important;
    background: #fff !important;
    opacity: 1 !important;
    appearance: none;
    -webkit-appearance: none;
    box-shadow: none !important;
    cursor: pointer;
    transition: border-color .18s ease, box-shadow .18s ease;
}

.wr-checkout #payment .wc_payment_method > input[type="radio"]:checked {
    border-color: var(--wr-checkout-accent) !important;
    background: radial-gradient(circle, var(--wr-checkout-accent) 0 5px, #fff 6px) !important;
}

.wr-checkout #payment .wc_payment_method > input[type="radio"]:hover {
    border-color: var(--wr-checkout-accent) !important;
}

.wr-checkout #payment .wc_payment_method > input[type="radio"]:focus-visible {
    outline: 2px solid rgba(255, 64, 129, .28) !important;
    outline-offset: 3px;
}

.wr-checkout #payment .wc_payment_method > label {
    grid-column: 2;
    width: fit-content;
    margin: 0 !important;
    padding-left: 0 !important;
    line-height: 20px !important;
    cursor: pointer;
}

.wr-checkout #payment .wc_payment_method > label::before {
    display: none !important;
    content: none !important;
}

.wr-checkout #payment .wc_payment_method > .payment_box {
    grid-column: 1 / -1;
}

.wr-checkout .woocommerce-account-fields label.checkbox > span::before,
.wr-checkout #ship-to-different-address label.checkbox > span::before,
.wr-checkout .woocommerce-terms-and-conditions-wrapper label.checkbox > span::before {
    display: none !important;
    content: none !important;
}

.wr-checkout .woocommerce-account-fields input[type="checkbox"],
.wr-checkout #ship-to-different-address input[type="checkbox"],
.wr-checkout .woocommerce-terms-and-conditions-wrapper input[type="checkbox"] {
    position: static !important;
    display: block !important;
    flex: 0 0 20px;
    width: 20px !important;
    min-width: 20px !important;
    height: 20px !important;
    margin: 0 !important;
    padding: 0 !important;
    border: 1.5px solid #b8b8b8 !important;
    border-radius: 4px !important;
    background: #fff !important;
    opacity: 1 !important;
    appearance: none !important;
    -webkit-appearance: none !important;
    box-shadow: none !important;
    cursor: pointer;
    transition: border-color .18s ease, background-color .18s ease, box-shadow .18s ease;
}

.wr-checkout .woocommerce-account-fields input[type="checkbox"]:checked,
.wr-checkout #ship-to-different-address input[type="checkbox"]:checked,
.wr-checkout .woocommerce-terms-and-conditions-wrapper input[type="checkbox"]:checked {
    border-color: var(--wr-checkout-accent) !important;
    background: var(--wr-checkout-accent) url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16'%3E%3Cpath fill='none' stroke='white' stroke-linecap='round' stroke-linejoin='round' stroke-width='2.2' d='m3.2 8.2 3 3 6.6-6.5'/%3E%3C/svg%3E") center / 14px 14px no-repeat !important;
}

.wr-checkout .woocommerce-account-fields input[type="checkbox"]:hover,
.wr-checkout #ship-to-different-address input[type="checkbox"]:hover,
.wr-checkout .woocommerce-terms-and-conditions-wrapper input[type="checkbox"]:hover {
    border-color: var(--wr-checkout-accent) !important;
}

.wr-checkout .woocommerce-account-fields input[type="checkbox"]:focus-visible,
.wr-checkout #ship-to-different-address input[type="checkbox"]:focus-visible,
.wr-checkout .woocommerce-terms-and-conditions-wrapper input[type="checkbox"]:focus-visible {
    outline: 2px solid rgba(255, 64, 129, .28) !important;
    outline-offset: 3px;
}

.wr-checkout .woocommerce-terms-and-conditions-wrapper .form-row {
    margin: 0 0 16px !important;
}

.wr-checkout .woocommerce-terms-and-conditions-wrapper label.checkbox {
    display: flex !important;
    align-items: flex-start;
    gap: 10px;
    margin: 0 !important;
    line-height: 20px !important;
    cursor: pointer;
}

.wr-checkout .woocommerce-terms-and-conditions-checkbox-text {
    flex: 1 1 auto;
    line-height: 20px;
}

.wr-checkout .woocommerce-terms-and-conditions-wrapper abbr.required {
    flex: 0 0 auto;
    margin-left: 2px;
    text-decoration: none;
    line-height: 20px;
}

.wr-checkout .place-order { padding: 18px 0 0 !important; }
.wr-checkout #place_order,
.wr-checkout button[name="apply_coupon"] {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-height: 48px;
    padding: 12px 24px;
    border: 1px solid var(--wr-checkout-accent);
    border-radius: 8px;
    background: var(--wr-checkout-accent);
    color: #fff;
    font: 700 16px/24px Inter, Arial, sans-serif;
    letter-spacing: -.02em;
    text-transform: none;
}

.wr-checkout #place_order { width: 100%; }
.wr-checkout #place_order:hover,
.wr-checkout button[name="apply_coupon"]:hover { filter: brightness(.94); }

.wr-checkout .woocommerce-form-coupon {
    margin: 0 0 28px;
    padding: 20px;
    border: 1px solid var(--wr-checkout-border);
    border-radius: 8px;
}

.wr-checkout .woocommerce-error,
.wr-checkout .woocommerce-info,
.wr-checkout .woocommerce-message {
    margin: 0 0 24px;
    padding: 16px 20px 16px 48px;
    border-top-color: var(--wr-checkout-accent);
    background: #fff7fa;
}

/* Prawa kolumna zgodna z layoutem KALA. */
.wr-checkout #order_review_heading { display: none; }

.wr-checkout .woocommerce-checkout-order-review-wrap input.input-text,
.wr-checkout .woocommerce-checkout-order-review-wrap select,
.wr-checkout .woocommerce-checkout-order-review-wrap textarea,
.wr-checkout .woocommerce-checkout-order-review-wrap .wc_payment_method label,
.wr-checkout .woocommerce-checkout-order-review-wrap ul#shipping_method label {
    color: var(--wr-checkout-right-text) !important;
}

.wr-checkout .wr-checkout-review {
    display: flex;
    flex-direction: column;
    gap: 28px;
}

/* Płatność pozostaje w natywnym miejscu WooCommerce. Dzięki temu jej fragment
   może być bezpiecznie podmieniany przez checkout AJAX. */
.wr-checkout #order_review {
    display: flex;
    flex-direction: column;
    gap: 0;
}

.wr-checkout-products,
.wr-checkout-summary {
    overflow: hidden;
    border: 1px solid var(--wr-checkout-border) !important;
    border-radius: 8px !important;
    background: #fff !important;
    color: var(--wr-checkout-right-text);
    font: 400 16px/1.4 Inter, Arial, sans-serif;
}

.wr-checkout-products {
    gap: 10px;
    border-width: 1px !important;
    border-radius: 6px !important;
    opacity: 1;
}

.wr-checkout-products__toggle {
    position: relative;
    display: flex !important;
    align-items: center !important;
    justify-content: space-between !important;
    width: 100%;
    margin: 0;
    gap: 10px;
    padding: 25px !important;
    border: 0;
    background: #fff !important;
    color: var(--wr-checkout-right-text) !important;
    font: 400 18px/24px Inter, Arial, sans-serif !important;
    letter-spacing: -.02em;
    text-align: left;
    text-transform: none !important;
    cursor: pointer;
}

.wr-checkout-products__toggle > span:first-child {
    position: static;
    flex: 1 1 auto;
    width: auto;
    max-width: none;
    min-width: 0;
    text-align: left;
    text-transform: none !important;
    transform: none;
}

.wr-checkout-products__toggle:hover,
.wr-checkout-products__toggle:focus {
    background: #fff !important;
    color: var(--wr-checkout-right-text) !important;
}

.wr-checkout-products__chevron {
    position: relative;
    right: auto;
    flex: 0 0 14px;
    align-self: center;
    width: 14px;
    height: 14px;
    margin-left: auto;
    border: 0;
    transition: transform .2s ease;
}

.wr-checkout-products__chevron::before {
    position: absolute;
    top: 50%;
    left: 50%;
    width: 0;
    height: 0;
    border-top: 7px solid var(--wr-checkout-accent);
    border-right: 6px solid transparent;
    border-left: 6px solid transparent;
    content: "";
    transform: translate(-50%, -50%);
}

.wr-checkout-products.is-open .wr-checkout-products__chevron { transform: rotate(180deg); }

.wr-checkout-products__body {
    padding: 0 25px;
    border-top: 1px solid #ececec;
}

.wr-checkout-product {
    display: grid;
    grid-template-columns: 66px minmax(0, 1fr);
    gap: 10px;
    align-items: start;
    padding: 18px 0;
    border-bottom: 1px solid #d3d3d3;
    color: var(--wr-checkout-right-text);
}

.wr-checkout-product:last-child { border-bottom: 0; }
.wr-checkout-product__image img {
    display: block;
    width: 66px;
    height: 66px;
    object-fit: cover;
}

.wr-checkout-product__image > a {
    display: block;
    border-radius: 4px;
}

.wr-checkout-product__content,
.wr-checkout-product__details {
    display: flex;
    flex-direction: column;
    min-width: 0;
}

.wr-checkout-product__content { gap: 12px; }
.wr-checkout-product__details { gap: 7px; }

.wr-checkout-product__name {
    color: var(--wr-checkout-right-text);
    font-size: 16px;
    font-weight: 400;
    line-height: 1.35;
    text-transform: uppercase;
}

.wr-checkout-product__name a {
    color: inherit;
    text-decoration: none;
}

.wr-checkout-product__name a:hover { color: var(--wr-checkout-accent); }

.wr-checkout-product__meta {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    gap: 5px;
    color: var(--wr-checkout-right-text);
    font-size: 14px;
    line-height: 1.4;
}

.wr-checkout-product__variant { color: var(--wr-checkout-right-text); }
.wr-checkout-product__separator { color: var(--wr-checkout-right-text); }

.wr-checkout-product__unit-price,
.wr-checkout-product__unit-price .amount,
.wr-checkout-product__total,
.wr-checkout-product__total .amount {
    color: var(--wr-checkout-accent) !important;
}

.wr-checkout-product__unit-price {
    display: inline-flex;
    flex-wrap: wrap;
    align-items: baseline;
}

.wr-checkout-product__unit-price > .amount { order: 1; }
.wr-checkout-product__unit-suffix {
    order: 2;
    margin-left: 4px;
}

/* The Omnibus filter inserts its label immediately after the amount. Keep the
   unit next to the price visually and place the legal label on its own row. */
.wr-checkout-product__unit-price > .kala-omnibus {
    order: 3;
    flex: 0 0 100%;
}

.wr-checkout-product__quantity {
    display: inline-grid;
    grid-template-columns: 34px auto 34px;
    align-items: center;
    align-self: flex-start;
    width: max-content;
    max-width: 100%;
    min-height: 36px;
    overflow: hidden;
    border: 1px solid #cfcfcf;
    border-radius: 9px;
    background: #fff;
    color: var(--wr-checkout-right-text);
    font-size: 14px;
    line-height: 1;
    text-align: center;
}

.wr-checkout .wr-checkout-product__quantity input[type="number"] {
    width: 54px;
    min-width: 0;
    height: 34px;
    margin: 0;
    padding: 0;
    border: 0 !important;
    outline: 0 !important;
    background: transparent;
    color: var(--wr-checkout-right-text);
    font: inherit;
    line-height: 34px;
    text-align: center;
    appearance: textfield;
    -moz-appearance: textfield;
    box-shadow: none !important;
    animation: none !important;
    transition: none !important;
    transform: none !important;
}

.wr-checkout .wr-checkout-product__quantity input[type="number"]:focus-visible {
    outline: 0 !important;
    background: transparent;
    box-shadow: none !important;
}

.wr-checkout-product__quantity:focus-within { border-color: var(--wr-checkout-accent); }

.wr-checkout .wr-checkout-product__quantity input[type="number"]::-webkit-inner-spin-button,
.wr-checkout .wr-checkout-product__quantity input[type="number"]::-webkit-outer-spin-button {
    margin: 0;
    appearance: none;
    -webkit-appearance: none;
}

.wr-checkout-product__quantity button {
    width: 100%;
    height: 34px;
    margin: 0;
    padding: 0;
    border: 0 !important;
    background: #fff !important;
    color: var(--wr-checkout-accent) !important;
    font: 400 17px/34px Inter, Arial, sans-serif;
    box-shadow: none !important;
    cursor: pointer;
}

.wr-checkout-product__footer {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 16px;
}

.wr-checkout-product__remove {
    flex: 0 0 auto;
    margin: 0;
    padding: 0 0 2px;
    border: 0 !important;
    border-bottom: 1px solid currentColor !important;
    border-radius: 0 !important;
    background: transparent !important;
    color: var(--wr-checkout-right-text) !important;
    font: 400 14px/1.2 Inter, Arial, sans-serif;
    white-space: nowrap;
    text-transform: none;
    box-shadow: none !important;
    cursor: pointer;
}

.wr-checkout-product__total {
    min-width: 0;
    font-size: 14px;
    font-weight: 400;
    text-align: right;
    white-space: nowrap;
}

/* Omnibus is already rendered with the unit price above. Its subtotal filter
   also appends the same long label here; hide that duplicate so it cannot
   squeeze the remove button or overflow the checkout product card. */
.wr-checkout-product__total > .kala-omnibus--checkout {
    display: none !important;
}

.wr-checkout-product.is-loading { opacity: .55; }
.wr-checkout-product.is-loading button,
.wr-checkout-product.is-loading input { cursor: wait; }

.wr-checkout-summary {
    padding: 25px !important;
    border-bottom: 0 !important;
    border-radius: 8px 8px 0 0 !important;
}

.wr-checkout .wr-checkout-summary__title {
    margin: 0 0 18px;
    padding: 0 0 18px;
    border-bottom: 1px solid #ccc;
    color: var(--wr-checkout-right-text);
    font: 400 18px/24px Inter, Arial, sans-serif !important;
    letter-spacing: -.02em;
    text-transform: none;
}

.wr-checkout table.wr-checkout-summary__table {
    width: 100%;
    margin: 0;
    border: 0;
    border-collapse: collapse;
}

.wr-checkout table.wr-checkout-summary__table th,
.wr-checkout table.wr-checkout-summary__table td {
    padding: 10px 0;
    border: 0;
    background: #fff !important;
    color: var(--wr-checkout-right-text) !important;
    text-align: left;
    vertical-align: top;
}

.wr-checkout table.wr-checkout-summary__table td:last-child { text-align: right; }
.wr-checkout table.wr-checkout-summary__table .cart-subtotal th,
.wr-checkout table.wr-checkout-summary__table .cart-subtotal td { font-size: 17px; font-weight: 700; }

.wr-checkout table.wr-checkout-summary__table .cart-subtotal th {
    width: 55%;
    padding-right: 12px;
    white-space: nowrap;
}

.wr-checkout table.wr-checkout-summary__table .cart-subtotal td {
    width: 45%;
    white-space: nowrap;
}

.wr-checkout table.wr-checkout-summary__table .cart-subtotal td small {
    display: block;
    margin-top: 4px;
    color: var(--wr-checkout-right-text);
    font-size: 12px;
    font-weight: 400;
    line-height: 1.35;
    white-space: nowrap;
}

.wr-checkout table.wr-checkout-summary__table .cart-subtotal,
.wr-checkout table.wr-checkout-summary__table .order-total {
    background: #fff !important;
    color: var(--wr-checkout-right-text) !important;
}

.wr-checkout-coupon-row label {
    display: block;
    margin: 8px 0 8px;
    color: var(--wr-checkout-right-text);
    font-size: 14px;
}

.wr-checkout table.wr-checkout-summary__table .wr-checkout-coupon-row > td {
    width: 100%;
    text-align: left !important;
}

.wr-checkout-coupon {
    display: grid;
    grid-template-columns: minmax(0, 1fr) auto;
    gap: 14px;
}

.wr-checkout .wr-checkout-coupon input.input-text { min-width: 0; }

.wr-checkout .wr-checkout-coupon__button {
    min-width: 132px;
    min-height: 48px;
    margin: 0;
    padding: 12px 20px;
    border: 1px solid var(--wr-checkout-accent);
    border-radius: 8px;
    background: #fff;
    color: var(--wr-checkout-right-text);
    font: 700 14px/22px Inter, Arial, sans-serif;
    text-transform: uppercase;
    white-space: nowrap;
}

.wr-checkout .wr-checkout-coupon__button:hover { background: #fff7fa; color: var(--wr-checkout-right-text); }
.wr-checkout .wr-checkout-coupon__button.is-loading { opacity: .55; cursor: wait; }

.wr-checkout .wr-checkout-shipping-heading th {
    padding: 14px 0 8px;
    font-size: 17px;
    font-weight: 700;
}

.wr-checkout-free-shipping {
    margin: 2px 0 12px;
    padding: 18px;
    border-radius: 8px;
    background: var(--wr-checkout-accent);
    color: #fff;
}

.wr-checkout-free-shipping__lead {
    display: flex;
    gap: 13px;
    align-items: center;
    justify-content: flex-start;
    text-align: left !important;
}

.wr-checkout-free-shipping__lead > span:last-child {
    display: flex;
    flex-direction: column;
    align-items: flex-start;
    gap: 2px;
    text-align: left !important;
}
.wr-checkout-free-shipping__lead strong { font-size: 14px; line-height: 20px; }
.wr-checkout-free-shipping__lead small { font-size: 12px; line-height: 18px; }
.wr-checkout-free-shipping__icon { display: inline-flex; flex: 0 0 32px; align-items: center; justify-content: center; width: 32px; }
.wr-checkout-free-shipping__icon svg { display: block; width: 30px; height: 30px; }

.wr-checkout-free-shipping__progress {
    display: grid;
    grid-template-columns: auto minmax(40px, 1fr) auto;
    gap: 10px;
    align-items: center;
    margin-top: 14px;
    font-size: 11px;
    font-weight: 700;
}

.wr-checkout-free-shipping__progress .woocommerce-Price-currencySymbol { margin-left: 2px; }
.wr-checkout-free-shipping__progress i { overflow: hidden; height: 8px; border-radius: 99px; background: rgba(153, 0, 61, .45); }
.wr-checkout-free-shipping__progress b { display: block; height: 100%; border-radius: inherit; background: #fff; }

.wr-checkout table.wr-checkout-summary__table tr.woocommerce-shipping-totals > th { display: none; }
.wr-checkout table.wr-checkout-summary__table tr.woocommerce-shipping-totals > td {
    box-sizing: border-box;
    width: 100% !important;
    max-width: none !important;
    padding: 6px 0 12px;
    text-align: left !important;
}

.wr-checkout table.wr-checkout-summary__table tr.woocommerce-shipping-totals ul#shipping_method {
    width: 100%;
}

.wr-checkout .wr-checkout-summary ul#shipping_method li {
    display: flex;
    align-items: center;
    min-height: 54px;
    gap: 12px;
    padding: 8px 0;
    border: 0;
    text-align: left;
}

.wr-checkout ul#shipping_method input[type="radio"],
.wr-checkout .wc_payment_methods input[type="radio"] {
    flex: 0 0 auto;
    width: 24px;
    height: 24px;
    margin: 0 10px 0 0;
    accent-color: var(--wr-checkout-accent);
}

.wr-checkout .wr-checkout-summary ul#shipping_method label {
    display: flex;
    align-items: center;
    width: 100%;
    margin: 0;
    font-size: 14px;
}

.wr-checkout .wr-checkout-summary ul#shipping_method .amount { margin-left: auto; font-weight: 700; }
.wr-checkout table.wr-checkout-summary__table .order-total { border-top: 1px solid #ccc; }
.wr-checkout table.wr-checkout-summary__table .order-total th {
    width: 42%;
    padding-right: 12px;
    white-space: nowrap;
}
.wr-checkout table.wr-checkout-summary__table .order-total td {
    width: 58%;
    white-space: nowrap;
}
.wr-checkout table.wr-checkout-summary__table .order-total td > strong {
    display: block;
    white-space: nowrap;
}
.wr-checkout table.wr-checkout-summary__table .order-total .includes_tax {
    display: block !important;
    margin-top: 4px;
    color: var(--wr-checkout-right-text) !important;
    font-size: 12px !important;
    font-weight: 400 !important;
    line-height: 1.35;
    white-space: nowrap;
}

.wr-checkout #order_review > .woocommerce-checkout-payment {
    overflow: visible;
    margin: 0;
    padding: 0 32px 32px !important;
    border: 1px solid var(--wr-checkout-border) !important;
    border-top: 0 !important;
    border-radius: 0 0 8px 8px !important;
    background: #fff !important;
}

.wr-checkout .woocommerce-checkout-payment::before {
    display: block;
    content: "Płatność";
    margin: 0 0 14px;
    padding: 18px 0 0;
    border-top: 1px solid #ccc;
    border-bottom: 0;
    color: var(--wr-checkout-right-text);
    font: 700 17px/24px Inter, Arial, sans-serif;
}

.wr-checkout #order_review > .woocommerce-checkout-payment .wc_payment_method { border: 0; }
.wr-checkout .wc_payment_method > label {
    display: inline-flex;
    align-items: center;
    gap: 12px;
}
.wr-checkout .wc_payment_method label .wr-checkout__gateway-logo {
    display: inline-block;
    float: none;
    width: auto;
    max-width: 120px;
    max-height: 30px;
    margin: 0;
    vertical-align: middle;
    object-fit: contain;
}
.wr-checkout .wc_payment_method label .wr-checkout__gateway-logo--przelewy24 { height: 30px; }
.wr-checkout .wc_payment_method label .wr-checkout__gateway-logo--card { width: 25px; height: 25px; }
.wr-checkout .wc_payment_method label .wr-checkout__gateway-logo--bank-transfer { width: 27px; height: 27px; }
.wr-checkout .wc_payment_method label .wr-checkout__gateway-logo--google-pay { width: 40px; height: 28px; }
.wr-checkout .wc_payment_method label .wr-checkout__gateway-logo--apple-pay { width: 42px; height: 28px; }
.wr-checkout .wc_payment_method label .wr-checkout__gateway-logo--blik { width: 51px; height: 24px; }
.wr-checkout .woocommerce-checkout-payment .form-row { margin-bottom: 0 !important; }

.wr-checkout .woocommerce-terms-and-conditions-wrapper {
    margin-top: 18px;
    color: var(--wr-checkout-right-text);
    font-size: 13px;
    line-height: 1.5;
}
.wr-checkout .woocommerce-terms-and-conditions-wrapper .validate-required { margin: 0 !important; }
.wr-checkout .woocommerce-terms-and-conditions-wrapper .checkout-inline-error-message {
    margin: 8px 0 0;
    color: #c62828 !important;
}
.wr-checkout .woocommerce-terms-and-conditions-wrapper a {
    color: var(--wr-checkout-accent);
    font-weight: 600;
    text-decoration: underline;
    text-underline-offset: 2px;
}

.wr-checkout #order_review #place_order {
    width: 100%;
    height: 48px;
    min-height: 48px;
    gap: 12px;
    margin: 18px 0 0;
    padding: 16px 24px;
    border-radius: 8px;
    line-height: 14px;
}

.wr-checkout #order_review #place_order::after {
    content: "";
    display: block;
    flex: 0 0 16px;
    width: 16px;
    height: 16px;
    background: url("../images/white-right-arrow.svg") center/contain no-repeat;
}

/* Motyw Beaux i bramki płatności nie mogą ukryć końcowej akcji checkoutu. */
.wr-checkout .woocommerce-checkout-payment .place-order {
    display: block !important;
    height: auto !important;
    margin-top: 18px !important;
    padding-top: 18px !important;
    border-top: 1px solid #ccc;
    opacity: 1 !important;
    overflow: visible !important;
    visibility: visible !important;
}

.wr-checkout .woocommerce-checkout-payment #place_order {
    align-items: center !important;
    display: inline-flex !important;
    justify-content: center !important;
    border-color: #ff4081 !important;
    background: #ff4081 !important;
    color: #fff !important;
    opacity: 1 !important;
    position: relative !important;
    visibility: visible !important;
}

.wr-checkout .woocommerce-checkout-payment #place_order:hover,
.wr-checkout .woocommerce-checkout-payment #place_order:focus-visible {
    border-color: #ff4081 !important;
    background: #ff4081 !important;
    color: #fff !important;
    filter: brightness(.94);
}

/* Thank you / order received. Checkout i widok podziękowania nie mogą
   dokładać swoich pionowych odstępów jeden na drugi. */
body.woocommerce-order-received .wr-checkout {
    width: 100%;
    max-width: none !important;
    padding: 0;
}
body.woocommerce-order-received .wr-checkout > .wr-checkout__title { display: none; }
body.woocommerce-order-received .wr-checkout .wr-checkout__content { width: 100%; }
.wr-thankyou,
.wr-thankyou * { box-sizing: border-box; }
.wr-thankyou {
    --wr-thankyou-accent: var(--wr-checkout-accent, #ff4081);
    width: 100%;
    padding: 24px 20px 56px;
    color: #171717;
    font-family: Inter, Arial, sans-serif;
}
.wr-thankyou__custom-intro {
    width: 100%;
    margin: 0 0 24px;
}
.wr-thankyou__custom-intro > :first-child { margin-top: 0; }
.wr-thankyou__custom-intro > :last-child { margin-bottom: 0; }
.wr-thankyou__hero {
    position: relative;
    max-width: 760px;
    min-height: 170px;
    margin: 0 auto 34px;
    padding: 18px 20px 42px;
    text-align: center;
}
.wr-thankyou__hero h1 {
    position: relative;
    z-index: 2;
    margin: 0 !important;
    color: #171717;
    font: 400 clamp(27px, 3.2vw, 42px)/1.04 Inter, Arial, sans-serif;
    letter-spacing: -.045em;
    text-transform: uppercase;
}
.wr-thankyou__hero > span {
    position: absolute;
    z-index: 1;
    right: 50%;
    bottom: 0;
    color: #ffafd0;
    font: 400 clamp(58px, 8vw, 106px)/.75 cursive;
    transform: translateX(50%) rotate(-5deg);
    white-space: nowrap;
}
.wr-thankyou__content,
.wr-thankyou__gateway {
    width: min(100%, 920px);
    margin-right: auto;
    margin-left: auto;
}
.wr-thankyou__card {
    margin: 0 0 26px;
    padding: 28px 28px 30px;
    border: 1px solid #cfcfcf;
    border-radius: 8px;
    background: #fff;
}
.wr-thankyou__card h2,
.wr-thankyou__card h3 {
    margin: 0;
    color: #171717;
    font-weight: 400;
    text-transform: none;
}
.wr-thankyou__card h2 { margin-bottom: 26px; font-size: 24px; line-height: 1.2; }
.wr-thankyou__card h3 { margin: 24px 0 18px; font-size: 22px; line-height: 1.2; }
.wr-thankyou__products-head,
.wr-thankyou__product {
    display: grid;
    grid-template-columns: minmax(240px, 2.7fr) .9fr 1fr 1fr 1.15fr;
    align-items: center;
    gap: 18px;
}
.wr-thankyou__products-head {
    padding: 0 0 13px;
    border-bottom: 1px solid #d7d7d7;
    color: #666;
    font-size: 13px;
}
.wr-thankyou__products-head span:not(:first-child) { text-align: right; }
.wr-thankyou__product {
    min-height: 78px;
    padding: 12px 0;
    border-bottom: 1px solid #d7d7d7;
    font-size: 13px;
}
.wr-thankyou__product > span:not(.wr-thankyou__product-name),
.wr-thankyou__line-total { text-align: right; }
.wr-thankyou__product small { display: none; }
.wr-thankyou__product-name {
    display: grid;
    grid-template-columns: 54px minmax(0, 1fr);
    align-items: center;
    gap: 14px;
    min-width: 0;
}
.wr-thankyou__product-name strong { display: block; font-size: 13px; font-weight: 500; line-height: 1.3; }
.wr-thankyou__product-name .wc-item-meta { margin: 4px 0 0; padding: 0; list-style: none; color: #666; font-size: 11px; }
.wr-thankyou__product-name .wc-item-meta p { display: inline; margin: 0; }
.wr-thankyou__product-image,
.wr-thankyou__product-image img { display: block; width: 54px; height: 54px; }
.wr-thankyou__product-image img { margin: 0 !important; object-fit: contain; }
.wr-thankyou__quantity {
    padding: 11px 8px;
    border: 1px solid #d7d7d7;
    border-radius: 7px;
    text-align: center !important;
    white-space: nowrap;
}
.wr-thankyou__line-total { font-weight: 700; }
.wr-thankyou__summary dl,
.wr-thankyou__details dl { margin: 0; }
.wr-thankyou__summary dl > div,
.wr-thankyou__details dl > div {
    display: flex;
    align-items: flex-start;
    justify-content: space-between;
    gap: 24px;
    padding: 6px 0;
    font-size: 14px;
}
.wr-thankyou__summary dt,
.wr-thankyou__summary dd,
.wr-thankyou__details dt,
.wr-thankyou__details dd { margin: 0; }
.wr-thankyou__summary dd,
.wr-thankyou__details dd { max-width: 70%; font-weight: 700; text-align: right; }
.wr-thankyou__summary .is-total {
    margin-top: 7px;
    padding-top: 14px;
    border-top: 1px solid #d7d7d7;
}
.wr-thankyou__continue,
.wr-thankyou__button {
    align-items: center;
    justify-content: center;
    gap: 14px;
    min-height: 48px;
    border: 1px solid var(--wr-thankyou-accent);
    border-radius: 7px;
    background: var(--wr-thankyou-accent);
    color: #fff !important;
    font-size: 14px;
    font-weight: 700;
    line-height: 1.2;
    text-decoration: none !important;
}
.wr-thankyou__continue { display: flex; width: 100%; margin-top: 25px; }
.wr-thankyou__button { display: inline-flex; padding: 12px 24px; }
.wr-thankyou__button.is-secondary { background: #fff; color: #171717 !important; }
.wr-thankyou__continue:hover,
.wr-thankyou__button:hover { filter: brightness(.94); }
.wr-thankyou__gateway:not(:empty) {
    margin-top: 26px;
    padding: 22px 28px;
    border: 1px solid #cfcfcf;
    border-radius: 8px;
    background: #fff;
}
.wr-thankyou__gateway:empty { display: none; }
.wr-thankyou__gateway .woocommerce-order-details,
.wr-thankyou__gateway .woocommerce-customer-details { display: none !important; }
.wr-thankyou__status { width: min(100%, 760px); margin: 50px auto; text-align: center; }
.wr-thankyou__status h1 { margin: 0 0 16px; font-size: 34px; }
.wr-thankyou__status p { margin: 0 0 24px; }
.wr-thankyou__failed-actions { display: flex; justify-content: center; gap: 14px; }

@media (max-width: 767px) {
    .wr-thankyou { padding: 20px 14px 40px; }
    .wr-thankyou__hero { min-height: 145px; margin-bottom: 20px; padding-right: 0; padding-left: 0; }
    .wr-thankyou__card { padding: 22px 18px; }
    .wr-thankyou__card h2 { font-size: 21px; }
    .wr-thankyou__products-head { display: none; }
    .wr-thankyou__product {
        grid-template-columns: 1fr 1fr;
        gap: 12px 16px;
        padding: 18px 0;
    }
    .wr-thankyou__product-name { grid-column: 1 / -1; }
    .wr-thankyou__product > span:not(.wr-thankyou__product-name),
    .wr-thankyou__line-total { text-align: left; }
    .wr-thankyou__product small { display: block; margin-bottom: 5px; color: #777; font-size: 10px; font-weight: 400; }
    .wr-thankyou__quantity { text-align: left !important; }
    .wr-thankyou__summary dd,
    .wr-thankyou__details dd { max-width: 60%; }
    .wr-thankyou__failed-actions { flex-direction: column; }
}

/* Ukrywamy stary formularz kuponu z nagłówka – działa pole w podsumowaniu. */
.wr-checkout .woocommerce-checkout-header-coupon { display: none !important; }

@media (max-width: 900px) {
    .wr-checkout form.checkout.woocommerce-checkout {
        grid-template-columns: 1fr;
        gap: 32px;
    }

    .wr-checkout #customer_details,
    .wr-checkout .woocommerce-checkout-order-review-wrap { grid-column: 1; }
}

@media (max-width: 600px) {
    .wr-checkout { width: calc(100% - 32px); padding-top: 24px; }
    .wr-checkout__title { font-size: 28px; }
    .wr-checkout .woocommerce-billing-fields__field-wrapper,
    .wr-checkout .woocommerce-shipping-fields__field-wrapper { grid-template-columns: repeat(2, minmax(0, 1fr)); }
    .wr-checkout .form-row-first,
    .wr-checkout .form-row-last { grid-column: auto; }
    .wr-checkout .woocommerce-checkout-order-review-wrap { padding: 0; }
    .wr-checkout-products__toggle { padding: 25px !important; }
    .wr-checkout-products__chevron { right: auto; }
    .wr-checkout-products__body { padding: 0 25px; }
    .wr-checkout-summary { padding: 25px !important; }
    .wr-checkout #order_review > .woocommerce-checkout-payment { padding: 0 20px 22px !important; }
    .wr-checkout-coupon { grid-template-columns: minmax(0, 1fr) auto; }
    .wr-checkout .wr-checkout-coupon__button { width: auto; }
}

@media (max-width: 420px) {
    .wr-checkout .woocommerce-billing-fields__field-wrapper,
    .wr-checkout .woocommerce-shipping-fields__field-wrapper { grid-template-columns: 1fr; }
    .wr-checkout .form-row-first,
    .wr-checkout .form-row-last { grid-column: 1; }
    .wr-checkout-coupon { gap: 10px; }
    .wr-checkout .wr-checkout-coupon__button { min-width: 112px; padding-inline: 12px; }
}
