/* CheckoutDesign v3: graphite buyer forms and totals; maps keep their native rendering. */
.checkout-index-index,
.checkout-cart-index {
    --klb-design-bg: #131313;
    --klb-design-text: #f1f3f3;
    --klb-design-muted: #bdc4c4;
    --klb-design-line: #3d4847;
    --klb-design-accent: #78cbc4;
    --klb-design-button: #286d68;
    --klb-design-selected: #1c302e;
    --klb-design-surface: #191d1c;
    --klb-design-input-bg: #202726;
    --klb-design-input-line: #667a76;
    --klb-design-error: #ff9696;
}

.checkout-index-index [hidden],
.checkout-cart-index [hidden] {
    display: none !important;
}

.checkout-index-index .opc-wrapper,
.checkout-index-index .checkout-payment-method,
.checkout-index-index .opc-block-shipping-information,
.checkout-cart-index .form-cart {
    color: var(--klb-design-text);
    font-size: 15px;
    line-height: 1.45;
}

.checkout-index-index .step-title,
.checkout-cart-index .page-title,
.checkout-index-index .opc-wrapper .field > .label,
.checkout-index-index .payment-method-title > .label,
.checkout-index-index .shipping-address-item,
.checkout-index-index .opc-block-shipping-information .shipping-information-content,
.checkout-cart-index .cart.table-wrapper .product-item-name,
.checkout-cart-index .cart.table-wrapper .product-item-name a,
.checkout-cart-index .cart.table-wrapper .price {
    color: var(--klb-design-text) !important;
}

.checkout-index-index .opc-wrapper .field > .label,
.checkout-index-index .payment-method-content .field > .label {
    font-size: 14px !important;
    line-height: 1.4 !important;
    margin: 0 0 6px !important;
}

.checkout-index-index .opc-wrapper .field,
.checkout-index-index .payment-method-content .field {
    margin-bottom: 16px !important;
}

.checkout-index-index #co-shipping-form .input-text,
.checkout-index-index #co-shipping-form select,
.checkout-index-index .form-login .input-text,
.checkout-index-index .payment-method-content .input-text,
.checkout-index-index .payment-method-content select,
.checkout-cart-index .cart-summary .input-text,
.checkout-cart-index .cart-summary select,
.checkout-cart-index .cart-discount .input-text {
    box-sizing: border-box;
    font-size: 16px !important;
    line-height: 1.4 !important;
    min-height: 48px !important;
    height: auto !important;
    padding: 11px 12px !important;
    border: 1px solid var(--klb-design-input-line) !important;
    border-radius: 4px;
    background: var(--klb-design-input-bg) !important;
    color: var(--klb-design-text) !important;
    caret-color: var(--klb-design-accent);
    color-scheme: dark;
}

.checkout-index-index #co-shipping-form textarea.input-text,
.checkout-index-index .payment-method-content textarea.input-text {
    min-height: 84px !important;
    resize: vertical;
}

.checkout-index-index #co-shipping-form select,
.checkout-index-index .payment-method-content select,
.checkout-cart-index .cart-summary select {
    padding-right: 32px !important;
    appearance: none;
    -webkit-appearance: none;
    background-image: linear-gradient(45deg, transparent 50%, #bdc4c4 50%), linear-gradient(135deg, #bdc4c4 50%, transparent 50%) !important;
    background-position: calc(100% - 18px) center, calc(100% - 13px) center !important;
    background-size: 5px 5px !important;
    background-repeat: no-repeat !important;
}

.checkout-index-index #co-shipping-form select option,
.checkout-index-index .payment-method-content select option,
.checkout-cart-index .cart-summary select option {
    background: var(--klb-design-input-bg);
    color: var(--klb-design-text);
}

.checkout-index-index #co-shipping-form .input-text:focus,
.checkout-index-index #co-shipping-form select:focus,
.checkout-index-index .form-login .input-text:focus,
.checkout-index-index .payment-method-content .input-text:focus,
.checkout-cart-index .cart-summary .input-text:focus,
.checkout-cart-index .cart-summary select:focus,
.checkout-cart-index .cart-discount .input-text:focus {
    border-color: var(--klb-design-accent) !important;
    outline: 2px solid var(--klb-design-accent);
    outline-offset: 2px;
    box-shadow: none !important;
}

/* Style only the buyer forms. CDEK/Ozon dialogs and map search controls stay native. */
.checkout-index-index :is(#co-shipping-form, .form-login, .payment-method-content) .input-text::placeholder,
.checkout-cart-index :is(.cart-summary, .cart-discount) .input-text::placeholder {
    color: #b1bcbb !important;
    opacity: 1;
}

.checkout-index-index :is(#co-shipping-form, .form-login, .payment-method-content) :is(.input-text, select):disabled,
.checkout-cart-index :is(.cart-summary, .cart-discount) :is(.input-text, select):disabled {
    border-color: #485954 !important;
    background-color: #1b211f !important;
    color: #9eaaa7 !important;
    -webkit-text-fill-color: #9eaaa7 !important;
    opacity: 1 !important;
    cursor: not-allowed;
}

.checkout-index-index :is(#co-shipping-form, .form-login, .payment-method-content) .input-text[readonly],
.checkout-cart-index :is(.cart-summary, .cart-discount) .input-text[readonly] {
    background-color: #1b211f !important;
    color: var(--klb-design-muted) !important;
}

.checkout-index-index :is(#co-shipping-form, .form-login, .payment-method-content) :is(.input-text, select).mage-error,
.checkout-index-index :is(#co-shipping-form, .form-login, .payment-method-content) :is(.input-text, select)[aria-invalid="true"],
.checkout-index-index :is(#co-shipping-form, .form-login, .payment-method-content) ._error :is(.input-text, select),
.checkout-cart-index :is(.cart-summary, .cart-discount) :is(.input-text, select).mage-error,
.checkout-cart-index :is(.cart-summary, .cart-discount) :is(.input-text, select)[aria-invalid="true"] {
    border-color: var(--klb-design-error) !important;
}

.checkout-index-index :is(#co-shipping-form, .form-login, .payment-method-content) :is(div.mage-error, .field-error),
.checkout-cart-index :is(.cart-summary, .cart-discount) :is(div.mage-error, .field-error) {
    margin-top: 6px;
    color: var(--klb-design-error) !important;
    font-size: 13px;
    line-height: 1.4;
}

.checkout-index-index :is(#co-shipping-form, .form-login, .payment-method-content) .input-text:-webkit-autofill,
.checkout-index-index :is(#co-shipping-form, .form-login, .payment-method-content) .input-text:-webkit-autofill:hover,
.checkout-index-index :is(#co-shipping-form, .form-login, .payment-method-content) .input-text:-webkit-autofill:focus,
.checkout-cart-index :is(.cart-summary, .cart-discount) .input-text:-webkit-autofill,
.checkout-cart-index :is(.cart-summary, .cart-discount) .input-text:-webkit-autofill:hover,
.checkout-cart-index :is(.cart-summary, .cart-discount) .input-text:-webkit-autofill:focus {
    -webkit-text-fill-color: var(--klb-design-text) !important;
    box-shadow: 0 0 0 1000px var(--klb-design-input-bg) inset !important;
    -webkit-box-shadow: 0 0 0 1000px var(--klb-design-input-bg) inset !important;
    caret-color: var(--klb-design-accent);
}

.checkout-index-index :is(#co-shipping-form, .form-login, .payment-method-content) .input-text:autofill,
.checkout-cart-index :is(.cart-summary, .cart-discount) .input-text:autofill {
    color: var(--klb-design-text) !important;
    background-color: var(--klb-design-input-bg) !important;
    box-shadow: 0 0 0 1000px var(--klb-design-input-bg) inset !important;
}

.checkout-index-index :is(#co-shipping-form, .form-login, .payment-method-content) .input-text:-webkit-autofill[readonly],
.checkout-cart-index :is(.cart-summary, .cart-discount) .input-text:-webkit-autofill[readonly] {
    -webkit-text-fill-color: var(--klb-design-muted) !important;
    box-shadow: 0 0 0 1000px #1b211f inset !important;
    -webkit-box-shadow: 0 0 0 1000px #1b211f inset !important;
}

.checkout-index-index :is(#co-shipping-form, .form-login, .payment-method-content) .input-text:-webkit-autofill:disabled,
.checkout-cart-index :is(.cart-summary, .cart-discount) .input-text:-webkit-autofill:disabled {
    -webkit-text-fill-color: #9eaaa7 !important;
    box-shadow: 0 0 0 1000px #1b211f inset !important;
    -webkit-box-shadow: 0 0 0 1000px #1b211f inset !important;
}

.checkout-index-index .opc-wrapper .form-shipping-address,
.checkout-index-index .opc-wrapper .form-login {
    width: 100% !important;
    max-width: 660px !important;
    margin-top: 16px !important;
    margin-bottom: 20px !important;
}

.checkout-index-index .opc-wrapper .fieldset,
.checkout-index-index .payment-method-content .fieldset {
    margin-bottom: 18px !important;
}

.checkout-index-index .step-title {
    font-size: 20px !important;
    font-weight: 600;
    line-height: 1.35 !important;
    margin: 0 0 14px !important;
    padding: 0 0 10px !important;
    border-color: var(--klb-design-line) !important;
}

.checkout-index-index .klb-street-label-redundant {
    position: absolute !important;
    width: 1px !important;
    height: 1px !important;
    padding: 0 !important;
    margin: -1px !important;
    overflow: hidden !important;
    clip: rect(0, 0, 0, 0) !important;
    clip-path: inset(50%) !important;
    white-space: nowrap !important;
    border: 0 !important;
}

.checkout-index-index .klb-registration-note {
    color: var(--klb-design-muted) !important;
    font-size: 13px !important;
    line-height: 1.4 !important;
    margin: 6px 0 12px !important;
}

.checkout-index-index .opc-wrapper button.action.klb-optional-reveal {
    display: inline-flex;
    align-items: center;
    justify-content: flex-start;
    min-height: 44px;
    margin: 0 0 8px;
    padding: 6px 0;
    border: 0;
    background: transparent !important;
    box-shadow: none;
    color: var(--klb-design-accent) !important;
    font: inherit;
    font-size: 14px;
    font-weight: 500;
    line-height: 1.4;
    text-align: left;
    white-space: normal;
    cursor: pointer;
}

.checkout-index-index .klb-optional-reveal:focus-visible,
.checkout-index-index .klb-checkout-bar button:focus-visible {
    outline: 2px solid var(--klb-design-accent);
    outline-offset: 3px;
}

/* Preserve Magento's own row/radio click handlers and rate objects. */
.checkout-index-index .table-checkout-shipping-method {
    display: block !important;
    width: 100% !important;
    min-width: 0 !important;
    max-width: 660px;
    margin: 0 0 16px !important;
    border: 0 !important;
    border-collapse: separate;
}

.checkout-index-index .table-checkout-shipping-method thead {
    display: none !important;
}

.checkout-index-index .table-checkout-shipping-method tbody {
    display: block !important;
    width: 100%;
}

.checkout-index-index .table-checkout-shipping-method tbody > tr {
    display: grid !important;
    grid-template-columns: 24px minmax(0, 1fr) auto;
    grid-template-areas: "radio carrier price" "radio method price";
    column-gap: 12px;
    row-gap: 3px;
    align-items: start;
    width: 100%;
    box-sizing: border-box;
    padding: 13px 12px !important;
    margin: 0 0 8px !important;
    border: 1px solid var(--klb-design-line) !important;
    border-radius: 6px;
    background: #191d1c;
    color: var(--klb-design-text);
    cursor: pointer;
}

.checkout-index-index .table-checkout-shipping-method tbody > tr > td {
    display: block !important;
    min-width: 0 !important;
    width: auto !important;
    padding: 0 !important;
    border: 0 !important;
    font-size: 14px !important;
    line-height: 1.45 !important;
    color: var(--klb-design-text) !important;
    white-space: normal !important;
    text-align: left !important;
    overflow-wrap: break-word;
}

.checkout-index-index .table-checkout-shipping-method tbody > tr > td:first-child {
    grid-area: radio;
    align-self: center;
}

.checkout-index-index .table-checkout-shipping-method tbody > tr > td.col-price {
    grid-area: price;
    justify-self: end;
    align-self: center;
    max-width: 132px;
    text-align: right !important;
    font-weight: 600;
}

.checkout-index-index .table-checkout-shipping-method tbody > tr > td.col-method:not(:first-child) {
    grid-area: method;
    color: var(--klb-design-muted) !important;
}

.checkout-index-index .table-checkout-shipping-method tbody > tr > td.col-carrier {
    grid-area: carrier;
    font-weight: 600;
}

.checkout-index-index .table-checkout-shipping-method input[type="radio"] {
    display: block;
    box-sizing: border-box;
    width: 22px !important;
    height: 22px !important;
    min-height: 0 !important;
    margin: 0 !important;
    accent-color: var(--klb-design-accent);
    color-scheme: dark;
    cursor: pointer;
}

.checkout-index-index .table-checkout-shipping-method .price {
    color: var(--klb-design-text) !important;
    font-size: 15px !important;
    font-weight: 600 !important;
    white-space: nowrap;
}

.checkout-index-index .table-checkout-shipping-method tbody > tr.klb-selected {
    border-color: var(--klb-design-accent) !important;
    background: var(--klb-design-selected) !important;
    box-shadow: inset 0 0 0 1px var(--klb-design-accent);
}

.checkout-index-index .table-checkout-shipping-method tbody > tr:focus-within {
    outline: 2px solid var(--klb-design-accent);
    outline-offset: 2px;
}

.checkout-index-index .table-checkout-shipping-method tbody > tr.row-error {
    display: block !important;
    cursor: default;
}

.checkout-index-index .table-checkout-shipping-method .row-error .col-error {
    width: 100% !important;
}

.checkout-index-index .table-checkout-shipping-method .row-error .message {
    margin: 0 !important;
    font-size: 14px !important;
    line-height: 1.45;
}

.checkout-index-index .table-checkout-shipping-method td.klb-shipping-price-pending > :not(.klb-price-hint),
.checkout-index-index .table-checkout-shipping-method tr.klb-shipping-price-pending > td.col-price > :not(.klb-price-hint) {
    display: none !important;
}

.checkout-index-index .table-checkout-shipping-method .klb-price-hint {
    display: block;
    max-width: 112px;
    color: var(--klb-design-muted);
    font-size: 12px;
    line-height: 1.35;
    font-weight: 400;
    white-space: normal;
}

.checkout-index-index .opc-wrapper .shipping-address-item {
    box-sizing: border-box;
    padding: 14px 36px 14px 14px !important;
    margin: 0 0 12px !important;
    border: 1px solid var(--klb-design-line) !important;
    border-radius: 6px;
    font-size: 14px !important;
    line-height: 1.55 !important;
    background: #191d1c;
}

.checkout-index-index .opc-wrapper .shipping-address-item.selected-item {
    border-color: var(--klb-design-accent) !important;
    background: var(--klb-design-selected) !important;
}

.checkout-index-index .opc-wrapper .shipping-address-item.selected-item::after {
    background: var(--klb-design-button) !important;
    color: #fff !important;
}

.checkout-index-index .shipping-address-item button.action,
.checkout-index-index .action-show-popup {
    min-height: 44px;
    padding: 10px 14px !important;
    margin-top: 10px !important;
    font-size: 14px !important;
    line-height: 1.4 !important;
    white-space: normal;
    border: 1px solid var(--klb-design-input-line) !important;
    border-radius: 4px;
    background: var(--klb-design-input-bg) !important;
    color: var(--klb-design-text) !important;
}

.checkout-index-index .shipping-address-item button.action:hover,
.checkout-index-index .action-show-popup:hover {
    border-color: var(--klb-design-accent) !important;
    background: var(--klb-design-selected) !important;
}

.checkout-index-index .shipping-address-item button.action:focus-visible,
.checkout-index-index .action-show-popup:focus-visible {
    outline: 2px solid var(--klb-design-accent);
    outline-offset: 2px;
}

.checkout-index-index .checkout-payment-method .payment-method-title {
    padding: 14px 0 !important;
    border-color: var(--klb-design-line) !important;
}

.checkout-index-index .checkout-payment-method .payment-method-title input[type="radio"] {
    width: 22px;
    height: 22px;
    margin: 0 8px 0 0;
    vertical-align: middle;
    accent-color: var(--klb-design-accent);
    color-scheme: dark;
}

.checkout-index-index .payment-method-content input[type="checkbox"] {
    accent-color: var(--klb-design-accent);
    color-scheme: dark;
}

.checkout-index-index .checkout-payment-method .payment-method-content {
    padding: 0 0 16px !important;
    font-size: 14px;
    line-height: 1.5;
}

.checkout-index-index .checkout-payment-method .payment-method-content p {
    color: var(--klb-design-muted);
    margin-bottom: 8px;
}

.checkout-index-index .checkout-payment-method .payment-option-title {
    padding: 13px 0 !important;
    border-color: var(--klb-design-line) !important;
}

.checkout-index-index .checkout-payment-method .payment-option-title .action-toggle {
    color: var(--klb-design-accent) !important;
    font-size: 14px;
}

.checkout-index-index .checkout-payment-method .payment-option-content {
    padding: 0 0 14px !important;
}

.checkout-index-index .opc-wrapper .actions-toolbar .action.primary,
.checkout-index-index .checkout-payment-method .action.primary,
.checkout-cart-index .action.primary,
.checkout-cart-index .checkout-methods-items .action.checkout {
    min-height: 48px;
    padding: 12px 18px;
    border-color: var(--klb-design-button) !important;
    background: var(--klb-design-button) !important;
    color: #fff !important;
    font-size: 15px !important;
    font-weight: 600;
    line-height: 1.4;
    white-space: normal;
}

.checkout-index-index .opc-wrapper .actions-toolbar .action.primary:hover,
.checkout-index-index .checkout-payment-method .action.primary:hover,
.checkout-cart-index .action.primary:hover,
.checkout-cart-index .checkout-methods-items .action.checkout:hover {
    background: #205d59 !important;
    border-color: #205d59 !important;
}

/* Totals use the same quiet graphite surfaces as the shipping cards. */
.checkout-index-index .opc-block-summary,
.checkout-cart-index .cart-summary {
    box-sizing: border-box;
    border: 1px solid var(--klb-design-line) !important;
    border-radius: 6px;
    background: var(--klb-design-surface) !important;
    color: var(--klb-design-text) !important;
    font-size: 14px;
    line-height: 1.45;
}

.checkout-index-index .opc-block-summary .price,
.checkout-index-index .opc-block-summary .title,
.checkout-index-index .opc-block-summary .product-item-name,
.checkout-index-index .opc-block-summary .details-qty,
.checkout-index-index .opc-block-summary .details-qty .label,
.checkout-index-index .opc-block-summary .details-qty .value,
.checkout-index-index .opc-block-summary .subtitle,
.checkout-index-index .opc-block-summary .totals,
.checkout-index-index .opc-block-summary .totals th,
.checkout-index-index .opc-block-summary .totals td,
.checkout-cart-index .cart-summary .price,
.checkout-cart-index .cart-summary .title,
.checkout-cart-index .cart-summary .subtitle,
.checkout-cart-index .cart-summary .field > .label,
.checkout-cart-index .cart-summary .totals,
.checkout-cart-index .cart-summary .totals th,
.checkout-cart-index .cart-summary .totals td {
    color: var(--klb-design-text) !important;
}

.checkout-index-index .opc-block-summary .product.options,
.checkout-index-index .opc-block-summary .product.options .toggle,
.checkout-cart-index .cart-summary .block .title strong {
    color: var(--klb-design-muted) !important;
}

.checkout-index-index .opc-block-summary .totals :is(th, td),
.checkout-index-index .opc-block-summary .items-in-cart > .title,
.checkout-cart-index .cart-summary .totals :is(th, td),
.checkout-cart-index .cart-summary .block > .title {
    border-color: var(--klb-design-line) !important;
}

.checkout-index-index .opc-block-summary a,
.checkout-cart-index .cart-summary a {
    color: var(--klb-design-accent) !important;
}

.checkout-cart-index .cart-summary .block .title,
.checkout-cart-index .cart-summary .block .content {
    padding: 12px 0 !important;
    background: transparent !important;
    color: var(--klb-design-text) !important;
}

.checkout-cart-index .cart-summary .fieldset .field {
    margin-bottom: 14px !important;
}

.checkout-cart-index .cart-summary .checkout-methods-items {
    margin: 14px 0 0 !important;
    padding: 0 !important;
}

.checkout-cart-index .cart.main.actions {
    margin: 12px 0 0 !important;
    padding: 0 !important;
    text-align: right;
}

.checkout-cart-index .cart.main.actions .action.update {
    min-height: 44px;
    margin: 0 !important;
    padding: 9px 12px !important;
    border: 1px solid var(--klb-design-line) !important;
    background: #202625 !important;
    color: var(--klb-design-text) !important;
    font-size: 13px !important;
    line-height: 1.4;
}

.checkout-index-index #totop,
.checkout-cart-index #totop {
    display: none !important;
}

.checkout-index-index .klb-checkout-progress {
    display: flex;
    flex-wrap: wrap;
    gap: 8px 18px;
    padding: 0;
    margin: 0 0 18px;
    list-style: none;
    color: var(--klb-design-muted);
    font-size: 14px;
    line-height: 1.4;
}

.checkout-index-index .klb-checkout-progress li {
    display: flex;
    align-items: center;
    gap: 7px;
    margin: 0;
}

.checkout-index-index .klb-checkout-progress [aria-current="step"] {
    color: var(--klb-design-accent);
    font-weight: 600;
}

.checkout-index-index .klb-checkout-bar,
.checkout-cart-index .klb-checkout-bar {
    display: none;
}

.checkout-index-index.klb-has-checkout-bar .opc-progress-bar,
.checkout-index-index .shipping-address-items.klb-addresses-collapsed .shipping-address-item:not(.selected-item) {
    display: none !important;
}

.checkout-index-index .klb-help-button,
.checkout-cart-index .klb-help-button {
    display: none;
}

.checkout-index-index .klb-field-guidance,
.checkout-cart-index .klb-field-guidance {
    box-sizing: border-box;
    margin: 8px 0 !important;
    padding: 10px 12px !important;
    border: 1px solid #486662 !important;
    border-radius: 4px;
    background: #20312f !important;
    color: #dce7e5 !important;
    font-size: 14px !important;
    line-height: 1.45 !important;
}

.checkout-index-index .klb-field-guidance::before,
.checkout-cart-index .klb-field-guidance::before,
.checkout-index-index .klb-field-guidance > :first-child::before,
.checkout-cart-index .klb-field-guidance > :first-child::before {
    display: none !important;
    content: none !important;
}

.checkout-cart-index .cart-summary .klb-field-guidance {
    border-color: #486662 !important;
    background: #20312f !important;
    color: #dce7e5 !important;
}

@media (max-width: 767px) {
    .checkout-cart-index.klb-cart-quantity-pending .cart-summary .checkout-methods-items .action.checkout {
        opacity: .6;
    }
    .checkout-index-index.klb-has-checkout-bar:not(.klb-keyboard-open) .klb-proxied-cta {
        display: none !important;
    }
    .checkout-index-index .page-main,
    .checkout-cart-index .page-main {
        padding: 16px 12px !important;
    }

    .checkout-index-index .columns,
    .checkout-cart-index .columns {
        margin: 0 !important;
    }

    .checkout-index-index .columns > .column.main,
    .checkout-cart-index .columns > .column.main {
        min-width: 0;
        padding: 0 !important;
    }

    .checkout-index-index .page-title-wrapper,
    .checkout-cart-index .page-title-wrapper {
        margin: 0 0 16px !important;
        padding: 0 !important;
    }

    .checkout-cart-index .page-title {
        margin: 0 !important;
        font-size: 24px !important;
        line-height: 1.35 !important;
    }

    .checkout-index-index .page-header,
    .checkout-cart-index .page-header {
        min-height: 0 !important;
        margin: 0 !important;
    }

    .checkout-index-index .page-header.type21 .header-main,
    .checkout-cart-index .page-header.type21 .header-main {
        height: auto !important;
        min-height: 0 !important;
        padding: 0 !important;
    }

    .checkout-index-index .page-header .header.content,
    .checkout-cart-index .page-header .header.content {
        box-sizing: border-box;
        height: 56px !important;
        min-height: 56px !important;
        padding-top: 6px !important;
        padding-bottom: 6px !important;
    }

    .checkout-index-index .page-header.type21 .header-row > .header-left,
    .checkout-cart-index .page-header.type21 .header-row > .header-left,
    .checkout-index-index .page-header.type21 .header-row > .header-center,
    .checkout-cart-index .page-header.type21 .header-row > .header-center,
    .checkout-index-index .page-header.type21 .header-row > .header-right,
    .checkout-cart-index .page-header.type21 .header-row > .header-right {
        min-height: 0 !important;
        height: auto !important;
        padding-top: 0 !important;
        padding-bottom: 0 !important;
        align-items: center;
    }

    .checkout-index-index .page-header .logo,
    .checkout-cart-index .page-header .logo {
        margin-top: 0 !important;
        margin-bottom: 0 !important;
    }

    .checkout-index-index .page-header .logo img,
    .checkout-cart-index .page-header .logo img {
        width: auto !important;
        max-height: 28px !important;
    }

    .checkout-index-index .page-header .block-search,
    .checkout-index-index .page-header .search-area,
    .checkout-index-index .page-header .search-toggle-icon,
    .checkout-index-index .page-header .wishlist,
    .checkout-index-index .page-header .top-link-wishlist,
    .checkout-index-index .page-header a[href*="/wishlist"] {
        display: none !important;
    }

    .checkout-index-index .kalimbatorium-mobile-address,
    .checkout-cart-index .kalimbatorium-mobile-address {
        box-sizing: border-box;
        min-height: 40px !important;
        padding: 7px 12px !important;
        margin: 0 !important;
        font-size: 13px !important;
        line-height: 1.35 !important;
    }

    .checkout-index-index .kalimbatorium-mobile-address__link,
    .checkout-cart-index .kalimbatorium-mobile-address__link {
        display: flex;
        align-items: center;
        justify-content: center;
        gap: 8px;
        min-width: 0;
        padding: 0 !important;
        margin: 0 !important;
        color: var(--klb-design-text);
        font-size: 13px !important;
        line-height: 1.35 !important;
    }

    .checkout-index-index .kalimbatorium-mobile-address__label,
    .checkout-cart-index .kalimbatorium-mobile-address__label {
        display: none !important;
    }

    .checkout-index-index .kalimbatorium-mobile-address__text,
    .checkout-cart-index .kalimbatorium-mobile-address__text {
        display: block !important;
        min-width: 0;
        margin: 0 !important;
        font-size: 13px !important;
        line-height: 1.35 !important;
    }

    .checkout-index-index .kalimbatorium-mobile-address__value,
    .checkout-cart-index .kalimbatorium-mobile-address__value {
        display: inline !important;
        color: var(--klb-design-text) !important;
        font-size: 13px !important;
        line-height: 1.35 !important;
        white-space: normal;
    }

    .checkout-index-index .opc-wrapper,
    .checkout-index-index .checkout-payment-method,
    .checkout-index-index .checkout-shipping-address {
        width: 100% !important;
        min-width: 0;
        padding: 0 !important;
        margin-left: 0 !important;
        margin-right: 0 !important;
    }

    .checkout-index-index .opc-wrapper .form-shipping-address,
    .checkout-index-index .opc-wrapper .form-login {
        max-width: none !important;
        padding: 0 !important;
        margin: 0 0 16px !important;
    }

    .checkout-index-index .opc-wrapper .form-login {
        margin-bottom: 12px !important;
        border: 0 !important;
    }

    .checkout-index-index #customer-email-fieldset,
    .checkout-index-index #co-shipping-form > .fieldset {
        margin: 0 !important;
        padding: 0 !important;
    }

    .checkout-index-index #customer-email-fieldset > .field,
    .checkout-index-index #co-shipping-form .field {
        margin: 0 0 12px !important;
        padding: 0 !important;
    }

    .checkout-index-index #customer-email-fieldset > .field:last-child {
        margin-bottom: 0 !important;
    }

    .checkout-index-index .form-login .control > .note {
        display: block;
        margin: 6px 0 0 !important;
        padding: 0 !important;
        font-size: 13px !important;
        line-height: 1.4 !important;
        color: var(--klb-design-muted) !important;
    }

    .checkout-index-index #co-shipping-form .field.street > .control > .klb-optional-reveal {
        margin-bottom: 0 !important;
    }

    .checkout-index-index .opc-wrapper > .opc,
    .checkout-index-index .opc-wrapper > .opc > li {
        margin: 0 !important;
        padding: 0 !important;
    }

    .checkout-index-index .opc-wrapper .step-content {
        margin: 0 !important;
        padding: 0 !important;
    }

    .checkout-index-index .checkout-shipping-address {
        margin-bottom: 18px !important;
    }

    .checkout-index-index .opc-wrapper .step-title {
        font-size: 18px !important;
        margin: 0 0 10px !important;
        padding: 0 0 8px !important;
    }

    .checkout-index-index #co-shipping-method-form,
    .checkout-index-index #checkout-shipping-method-load,
    .checkout-index-index .checkout-shipping-method .methods-shipping,
    .checkout-index-index .checkout-shipping-method .table-wrapper {
        margin: 0 !important;
        padding: 0 !important;
    }

    .checkout-index-index .checkout-shipping-method .table-checkout-shipping-method {
        margin: 0 0 12px !important;
    }

    .checkout-index-index .opc-estimated-wrapper {
        padding: 12px 0 !important;
        margin: 0 0 16px !important;
        border-color: var(--klb-design-line) !important;
    }

    .checkout-index-index .opc-estimated-wrapper .estimated-block {
        color: var(--klb-design-text);
        font-size: 16px;
    }

    .checkout-index-index .opc-estimated-wrapper .estimated-price {
        color: var(--klb-design-accent) !important;
    }

    .checkout-index-index .checkout-payment-method .payment-methods {
        margin: 0 !important;
    }

    .checkout-index-index .opc-wrapper .shipping-address-item {
        width: 100% !important;
    }

    .checkout-index-index .opc-block-shipping-information {
        margin-top: 16px !important;
        padding: 0 !important;
    }

    .checkout-index-index .opc-block-shipping-information .shipping-information-title {
        color: var(--klb-design-text) !important;
        font-size: 17px !important;
        padding-bottom: 8px;
        border-color: var(--klb-design-line) !important;
    }

    /* Products precede the estimate/summary; preserve the native form itself. */
    .checkout-cart-index .cart-container {
        display: flex !important;
        flex-direction: column;
        gap: 18px;
        width: 100%;
    }

    .checkout-cart-index .cart-container > .form-cart {
        order: 0;
        width: 100% !important;
        float: none !important;
        padding: 0 !important;
        margin: 0 !important;
    }

    .checkout-cart-index .cart-container > .cart-summary {
        position: static !important;
        order: 1;
        width: 100% !important;
        float: none !important;
        padding: 16px !important;
        margin: 0 !important;
    }

    .checkout-cart-index .cart-container > .cart-discount {
        order: 2;
        width: 100% !important;
        float: none !important;
        padding: 0 !important;
        margin: 0 !important;
    }

    .checkout-cart-index .cart.table-wrapper {
        overflow: visible !important;
        margin: 0 !important;
        border: 0 !important;
    }

    .checkout-cart-index .cart.table-wrapper .cart.items {
        display: block !important;
        width: 100% !important;
        margin: 0 !important;
    }

    .checkout-cart-index .cart.table-wrapper .cart.items > thead {
        display: none !important;
    }

    .checkout-cart-index .cart.table-wrapper tbody.item {
        display: block !important;
        box-sizing: border-box;
        width: 100% !important;
        padding: 12px;
        margin: 0 0 12px !important;
        border: 1px solid var(--klb-design-line) !important;
        border-radius: 6px;
        background: #191d1c;
    }

    .checkout-cart-index .cart.table-wrapper tbody.item > .item-info {
        display: grid !important;
        grid-template-columns: minmax(0, 1fr) auto;
        grid-template-areas: "item item" "qty subtotal";
        gap: 12px;
        align-items: center;
        width: 100% !important;
        border: 0 !important;
    }

    .checkout-cart-index .cart.table-wrapper tbody.item > .item-info > td {
        display: block !important;
        width: auto !important;
        min-width: 0;
        float: none !important;
        border: 0 !important;
        padding: 0 !important;
        text-align: left !important;
        white-space: normal !important;
    }

    .checkout-cart-index .cart.table-wrapper tbody.item > .item-info > td::before {
        display: none !important;
        content: none !important;
    }

    .checkout-cart-index .cart.table-wrapper tbody.item > .item-info > .col.item {
        display: flex !important;
        grid-area: item;
        align-items: flex-start;
        gap: 12px;
    }

    .checkout-cart-index .cart.table-wrapper .product-item-photo {
        display: block !important;
        position: static !important;
        flex: 0 0 80px;
        width: 80px !important;
        max-width: 80px !important;
        padding: 0 !important;
        margin: 0 !important;
    }

    .checkout-cart-index .cart.table-wrapper .product-image-container {
        display: block;
        width: 80px !important;
        max-width: 80px !important;
    }

    .checkout-cart-index .cart.table-wrapper .product-image-wrapper {
        display: block;
        position: relative;
        width: 80px !important;
        height: 80px !important;
        padding-bottom: 0 !important;
        margin: 0;
        overflow: hidden;
    }

    .checkout-cart-index .cart.table-wrapper .product-image-photo {
        position: absolute !important;
        inset: 0;
        width: 100% !important;
        height: 100% !important;
        max-width: 100% !important;
        max-height: 100% !important;
        object-fit: contain;
        margin: 0 !important;
        transform: none !important;
    }

    .checkout-cart-index .cart.table-wrapper .product-item-details {
        display: block !important;
        flex: 1 1 0;
        width: auto !important;
        min-width: 0;
        padding: 0 !important;
        margin: 0 !important;
        text-align: left !important;
    }

    .checkout-cart-index .cart.table-wrapper .product-item-name {
        margin: 0 0 6px !important;
        font-size: 15px !important;
        line-height: 1.4 !important;
        overflow-wrap: break-word;
    }

    .checkout-cart-index .cart.table-wrapper .item-options {
        display: block !important;
        color: var(--klb-design-muted);
        font-size: 13px !important;
        line-height: 1.4;
        margin: 0 !important;
    }

    .checkout-cart-index .cart.table-wrapper .item-options dt,
    .checkout-cart-index .cart.table-wrapper .item-options dd {
        display: inline;
        padding: 0;
        margin: 0 5px 0 0;
    }

    .checkout-cart-index .cart.table-wrapper .item-options dd::after {
        content: "";
        display: block;
    }

    .checkout-cart-index .cart.table-wrapper tbody.item > .item-info > .col.price {
        display: none !important;
    }

    .checkout-cart-index .cart.table-wrapper tbody.item > .item-info > .col.qty {
        grid-area: qty;
    }

    .checkout-cart-index .cart.table-wrapper tbody.item > .item-info > .col.subtotal {
        grid-area: subtotal;
        justify-self: end;
        text-align: right !important;
    }

    .checkout-cart-index .cart.table-wrapper .col.subtotal .price {
        font-size: 17px !important;
        font-weight: 600;
        white-space: nowrap;
    }

    .checkout-cart-index .cart.table-wrapper .col.qty .field.qty,
    .checkout-cart-index .cart.table-wrapper .col.qty .control {
        display: inline-flex;
        align-items: center;
        width: auto !important;
        margin: 0 !important;
        padding: 0 !important;
    }

    .checkout-cart-index .cart.table-wrapper .col.qty label > .label {
        position: absolute !important;
        width: 1px !important;
        height: 1px !important;
        padding: 0 !important;
        margin: -1px !important;
        overflow: hidden !important;
        clip: rect(0, 0, 0, 0) !important;
        clip-path: inset(50%) !important;
        white-space: nowrap !important;
        border: 0 !important;
    }

    .checkout-cart-index .cart.table-wrapper .col.qty .input-text.qty {
        box-sizing: border-box;
        width: 48px !important;
        min-width: 44px;
        height: 44px !important;
        min-height: 44px !important;
        padding: 8px 4px !important;
        margin: 0 !important;
        color: var(--klb-design-text) !important;
        background: #202625 !important;
        border-color: #71817e !important;
        font-size: 16px !important;
        line-height: 1.4;
        text-align: center;
    }

    .checkout-cart-index .cart.table-wrapper .col.qty .qty-changer > a,
    .checkout-cart-index .cart.table-wrapper .col.qty .qty-changer > button,
    .checkout-cart-index .cart.table-wrapper .col.qty .qty-up,
    .checkout-cart-index .cart.table-wrapper .col.qty .qty-down {
        box-sizing: border-box;
        display: inline-flex;
        align-items: center;
        justify-content: center;
        width: 44px !important;
        height: 44px !important;
        min-width: 44px;
        min-height: 44px;
        color: var(--klb-design-text) !important;
        border-color: #71817e !important;
        font-size: 18px;
    }

    .checkout-cart-index .cart.table-wrapper tbody.item > .item-actions,
    .checkout-cart-index .cart.table-wrapper tbody.item > .item-actions > td {
        display: block !important;
        width: 100% !important;
        padding: 0 !important;
        margin: 0 !important;
        border: 0 !important;
    }

    .checkout-cart-index .cart.table-wrapper .item-actions .actions-toolbar {
        display: flex;
        justify-content: flex-end;
        align-items: center;
        gap: 4px;
        padding: 4px 0 0 !important;
        margin: 0 !important;
    }

    .checkout-cart-index .cart.table-wrapper .item-actions .action {
        display: inline-flex;
        align-items: center;
        justify-content: center;
        min-width: 44px;
        min-height: 44px;
        margin: 0 !important;
        color: var(--klb-design-muted) !important;
    }

    .checkout-cart-index .cart.table-wrapper .item-actions .action:hover {
        color: var(--klb-design-text) !important;
    }

    .checkout-index-index .page-footer,
    .checkout-cart-index .page-footer {
        margin-top: 20px !important;
    }

    .checkout-index-index .page-footer .footer-top,
    .checkout-cart-index .page-footer .footer-top,
    .checkout-index-index .page-footer .footer-middle,
    .checkout-cart-index .page-footer .footer-middle {
        padding-top: 16px !important;
        padding-bottom: 16px !important;
    }

    .checkout-index-index .page-footer .footer-middle .row,
    .checkout-cart-index .page-footer .footer-middle .row {
        margin-left: 0 !important;
        margin-right: 0 !important;
    }

    .checkout-index-index .page-footer .footer-middle > .container,
    .checkout-cart-index .page-footer .footer-middle > .container {
        padding: 0 12px !important;
    }

    .checkout-index-index .page-footer .footer-bottom,
    .checkout-cart-index .page-footer .footer-bottom {
        padding: 10px 0 !important;
    }

    .checkout-index-index .page-footer .footer-bottom > .container,
    .checkout-cart-index .page-footer .footer-bottom > .container {
        padding-top: 0 !important;
        padding-bottom: 0 !important;
    }

    .checkout-index-index .page-footer .footer-middle .row > .col-lg-3,
    .checkout-cart-index .page-footer .footer-middle .row > .col-lg-3 {
        display: none !important;
    }

    .checkout-index-index .page-footer .footer-middle .row > .col-lg-3:first-child,
    .checkout-cart-index .page-footer .footer-middle .row > .col-lg-3:first-child {
        display: block !important;
        width: 100% !important;
        max-width: none;
        flex-basis: 100%;
        padding: 0 !important;
        margin: 0 !important;
    }

    .checkout-index-index .page-footer .footer-middle .row > .col-lg-3:first-child h4,
    .checkout-cart-index .page-footer .footer-middle .row > .col-lg-3:first-child h4,
    .checkout-index-index .page-footer .footer-middle .row > .col-lg-3:first-child .block-title,
    .checkout-cart-index .page-footer .footer-middle .row > .col-lg-3:first-child .block-title,
    .checkout-index-index .page-footer .footer-middle .row > .col-lg-3:first-child ul > li:nth-child(n + 5),
    .checkout-cart-index .page-footer .footer-middle .row > .col-lg-3:first-child ul > li:nth-child(n + 5) {
        display: none !important;
    }

    .checkout-index-index .page-footer .footer-middle .row > .col-lg-3:first-child ul,
    .checkout-cart-index .page-footer .footer-middle .row > .col-lg-3:first-child ul {
        display: flex;
        flex-wrap: wrap;
        justify-content: center;
        gap: 0 14px;
        padding: 0;
        margin: 0;
        list-style: none;
    }

    .checkout-index-index .page-footer .footer-middle .row > .col-lg-3:first-child li,
    .checkout-cart-index .page-footer .footer-middle .row > .col-lg-3:first-child li {
        margin: 0 !important;
        padding: 0 !important;
        font-size: 13px;
        line-height: 1.4;
    }

    .checkout-index-index .page-footer .footer-middle .row > .col-lg-3:first-child li::before,
    .checkout-cart-index .page-footer .footer-middle .row > .col-lg-3:first-child li::before {
        display: none;
    }

    .checkout-index-index .page-footer .footer-middle .row > .col-lg-3:first-child a,
    .checkout-cart-index .page-footer .footer-middle .row > .col-lg-3:first-child a {
        display: inline-flex;
        align-items: center;
        min-height: 44px;
        color: var(--klb-design-muted);
    }

    .checkout-index-index #supportTrigger,
    .checkout-cart-index #supportTrigger {
        display: none !important;
    }

    .checkout-index-index .klb-help-button,
    .checkout-cart-index .klb-help-button {
        display: flex;
        align-items: center;
        justify-content: center;
        box-sizing: border-box;
        width: fit-content;
        max-width: 100%;
        min-height: 44px;
        margin: 8px auto 0;
        padding: 8px 14px;
        border: 1px solid #486662;
        border-radius: 4px;
        background: transparent;
        color: var(--klb-design-accent);
        font: inherit;
        font-size: 14px;
        line-height: 1.4;
        white-space: normal;
        cursor: pointer;
    }

    .checkout-index-index .klb-help-button:focus-visible,
    .checkout-cart-index .klb-help-button:focus-visible {
        outline: 2px solid var(--klb-design-accent);
        outline-offset: 3px;
    }

    .checkout-index-index .klb-checkout-bar,
    .checkout-cart-index .klb-checkout-bar {
        position: fixed;
        z-index: 40;
        inset: auto 0 0;
        display: flex;
        align-items: center;
        justify-content: space-between;
        gap: 12px;
        box-sizing: border-box;
        width: 100%;
        padding: 10px max(12px, env(safe-area-inset-right)) max(10px, env(safe-area-inset-bottom)) max(12px, env(safe-area-inset-left));
        border-top: 1px solid var(--klb-design-line);
        background: #161c1b;
        color: var(--klb-design-text);
        box-shadow: 0 -3px 12px rgb(0 0 0 / 20%);
    }

    .checkout-index-index .klb-checkout-bar > :first-child,
    .checkout-cart-index .klb-checkout-bar > :first-child {
        flex: 1 1 0;
        min-width: 0;
    }

    .checkout-index-index .klb-bar-caption,
    .checkout-cart-index .klb-bar-caption,
    .checkout-index-index .klb-bar-note,
    .checkout-cart-index .klb-bar-note {
        display: block;
        margin: 0;
        color: var(--klb-design-muted);
        font-size: 12px;
        line-height: 1.35;
        overflow-wrap: break-word;
    }

    .checkout-index-index .klb-bar-amount,
    .checkout-cart-index .klb-bar-amount {
        display: block;
        margin: 1px 0;
        color: #fff;
        font-size: 18px;
        font-weight: 600;
        line-height: 1.35;
        white-space: nowrap;
    }

    .checkout-index-index .klb-checkout-bar button,
    .checkout-cart-index .klb-checkout-bar button {
        flex: 0 1 auto;
        width: auto !important;
        max-width: 58%;
        min-height: 48px;
        margin: 0 !important;
        padding: 11px 14px;
        border: 1px solid var(--klb-design-button);
        border-radius: 4px;
        background: var(--klb-design-button);
        color: #fff;
        font: inherit;
        font-size: 14px !important;
        font-weight: 600;
        line-height: 1.35;
        text-align: center;
        white-space: normal;
    }

    .checkout-index-index .klb-checkout-bar button:disabled,
    .checkout-cart-index .klb-checkout-bar button:disabled {
        opacity: .6;
        cursor: default;
    }

    .checkout-index-index.klb-has-checkout-bar .page-wrapper,
    .checkout-cart-index.klb-has-checkout-bar .page-wrapper {
        padding-bottom: calc(100px + env(safe-area-inset-bottom)) !important;
    }

    .checkout-index-index.klb-keyboard-open .klb-checkout-bar,
    .checkout-cart-index.klb-keyboard-open .klb-checkout-bar,
    .checkout-index-index._has-modal .klb-checkout-bar,
    .checkout-cart-index._has-modal .klb-checkout-bar {
        display: none !important;
    }
}
